about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--ABOUT-NLS284
-rw-r--r--AUTHORS53
-rw-r--r--BUILD/VS2003/clean.bat27
-rw-r--r--BUILD/VS2003/develop.bat7
-rw-r--r--BUILD/VS2003/lynx/lynx.sln30
-rw-r--r--BUILD/VS2003/lynx/lynx.vcproj708
-rw-r--r--BUILD/VS2003/lynx/lynx_cfg.h68
-rw-r--r--BUILD/VS2003/makeuctb/makeuctb.sln21
-rw-r--r--BUILD/VS2003/makeuctb/makeuctb.vcproj179
-rw-r--r--BUILD/VS2005X/clean.bat31
-rw-r--r--BUILD/VS2005X/develop.bat7
-rw-r--r--BUILD/VS2005X/lynx/lynx.sln29
-rw-r--r--BUILD/VS2005X/lynx/lynx.vcproj950
-rw-r--r--BUILD/VS2005X/lynx/lynx_cfg.h70
-rw-r--r--BUILD/VS2005X/makeuctb/makeuctb.sln20
-rw-r--r--BUILD/VS2005X/makeuctb/makeuctb.vcproj227
-rw-r--r--BUILD/VS2008X/clean.bat31
-rw-r--r--BUILD/VS2008X/develop.bat7
-rw-r--r--BUILD/VS2008X/lynx/lynx.sln29
-rw-r--r--BUILD/VS2008X/lynx/lynx.vcproj950
-rw-r--r--BUILD/VS2008X/lynx/lynx_cfg.h70
-rw-r--r--BUILD/VS2008X/makeuctb/makeuctb.sln20
-rw-r--r--BUILD/VS2008X/makeuctb/makeuctb.vcproj227
-rw-r--r--BUILD/VS6/clean.bat27
-rw-r--r--BUILD/VS6/develop.bat7
-rw-r--r--BUILD/VS6/lynx/lynx.dsw44
-rw-r--r--BUILD/VS6/lynx/lynx/lynx.dsp849
-rw-r--r--BUILD/VS6/lynx/lynx/lynx.dsw29
-rw-r--r--BUILD/VS6/lynx/makeuctb/makeuctb.dsp420
-rw-r--r--CHANGES9156
-rw-r--r--COPYHEADER38
-rw-r--r--COPYHEADER.asc8
-rw-r--r--COPYING342
-rw-r--r--COPYING.asc8
-rw-r--r--INSTALLATION1390
-rw-r--r--LYHelp.hin26
-rw-r--r--LYMessages_en.h876
-rw-r--r--PACKAGE/debian/changelog35
-rw-r--r--PACKAGE/debian/compat1
-rw-r--r--PACKAGE/debian/control21
-rw-r--r--PACKAGE/debian/copyright124
-rw-r--r--PACKAGE/debian/doc-base10
-rw-r--r--PACKAGE/debian/menu2
-rw-r--r--PACKAGE/debian/mime2
-rw-r--r--PACKAGE/debian/postinst27
-rw-r--r--PACKAGE/debian/prerm12
-rwxr-xr-xPACKAGE/debian/rules183
-rw-r--r--PACKAGE/debian/source/format1
-rw-r--r--PACKAGE/debian/watch4
-rw-r--r--PACKAGE/lynx-curses.iss11
-rw-r--r--PACKAGE/lynx-slang.iss12
-rw-r--r--PACKAGE/lynx.iss409
-rw-r--r--PACKAGE/lynx.spec114
-rw-r--r--PACKAGE/version.iss9
-rw-r--r--PROBLEMS258
-rw-r--r--README148
-rw-r--r--VMSPrint.com15
-rw-r--r--WWW/FreeofCharge.html26
-rw-r--r--WWW/Library/Implementation/HTAABrow.c1284
-rw-r--r--WWW/Library/Implementation/HTAABrow.h137
-rw-r--r--WWW/Library/Implementation/HTAAProt.c742
-rw-r--r--WWW/Library/Implementation/HTAAProt.h226
-rw-r--r--WWW/Library/Implementation/HTAAUtil.c606
-rw-r--r--WWW/Library/Implementation/HTAAUtil.h318
-rw-r--r--WWW/Library/Implementation/HTAccess.c1447
-rw-r--r--WWW/Library/Implementation/HTAccess.h267
-rw-r--r--WWW/Library/Implementation/HTAnchor.c1468
-rw-r--r--WWW/Library/Implementation/HTAnchor.h408
-rw-r--r--WWW/Library/Implementation/HTAssoc.c84
-rw-r--r--WWW/Library/Implementation/HTAssoc.h35
-rw-r--r--WWW/Library/Implementation/HTAtom.c178
-rw-r--r--WWW/Library/Implementation/HTAtom.h54
-rw-r--r--WWW/Library/Implementation/HTBTree.c687
-rw-r--r--WWW/Library/Implementation/HTBTree.h104
-rw-r--r--WWW/Library/Implementation/HTCJK.h112
-rw-r--r--WWW/Library/Implementation/HTChunk.c336
-rw-r--r--WWW/Library/Implementation/HTChunk.h228
-rw-r--r--WWW/Library/Implementation/HTDOS.c241
-rw-r--r--WWW/Library/Implementation/HTDOS.h56
-rw-r--r--WWW/Library/Implementation/HTFTP.c4224
-rw-r--r--WWW/Library/Implementation/HTFTP.h70
-rw-r--r--WWW/Library/Implementation/HTFWriter.c361
-rw-r--r--WWW/Library/Implementation/HTFWriter.h30
-rw-r--r--WWW/Library/Implementation/HTFile.c3240
-rw-r--r--WWW/Library/Implementation/HTFile.h366
-rw-r--r--WWW/Library/Implementation/HTFinger.c422
-rw-r--r--WWW/Library/Implementation/HTFinger.h30
-rw-r--r--WWW/Library/Implementation/HTFormat.c1911
-rw-r--r--WWW/Library/Implementation/HTFormat.h548
-rw-r--r--WWW/Library/Implementation/HTGopher.c1973
-rw-r--r--WWW/Library/Implementation/HTGopher.h29
-rw-r--r--WWW/Library/Implementation/HTGroup.c766
-rw-r--r--WWW/Library/Implementation/HTGroup.h182
-rw-r--r--WWW/Library/Implementation/HTInit.h34
-rw-r--r--WWW/Library/Implementation/HTLex.c142
-rw-r--r--WWW/Library/Implementation/HTLex.h64
-rw-r--r--WWW/Library/Implementation/HTList.c408
-rw-r--r--WWW/Library/Implementation/HTList.h142
-rw-r--r--WWW/Library/Implementation/HTMIME.c2601
-rw-r--r--WWW/Library/Implementation/HTMIME.h84
-rw-r--r--WWW/Library/Implementation/HTMLDTD.c334
-rw-r--r--WWW/Library/Implementation/HTMLDTD.h97
-rw-r--r--WWW/Library/Implementation/HTMLGen.c740
-rw-r--r--WWW/Library/Implementation/HTMLGen.h26
-rw-r--r--WWW/Library/Implementation/HTNews.c3127
-rw-r--r--WWW/Library/Implementation/HTNews.h60
-rw-r--r--WWW/Library/Implementation/HTParse.c1348
-rw-r--r--WWW/Library/Implementation/HTParse.h202
-rw-r--r--WWW/Library/Implementation/HTPlain.c722
-rw-r--r--WWW/Library/Implementation/HTPlain.h21
-rw-r--r--WWW/Library/Implementation/HTRules.c705
-rw-r--r--WWW/Library/Implementation/HTRules.h169
-rw-r--r--WWW/Library/Implementation/HTStream.h69
-rw-r--r--WWW/Library/Implementation/HTString.c1403
-rw-r--r--WWW/Library/Implementation/HTString.h162
-rw-r--r--WWW/Library/Implementation/HTStyle.c378
-rw-r--r--WWW/Library/Implementation/HTStyle.h241
-rw-r--r--WWW/Library/Implementation/HTTCP.c2182
-rw-r--r--WWW/Library/Implementation/HTTCP.h110
-rw-r--r--WWW/Library/Implementation/HTTP.c2522
-rw-r--r--WWW/Library/Implementation/HTTP.h41
-rw-r--r--WWW/Library/Implementation/HTTelnet.c553
-rw-r--r--WWW/Library/Implementation/HTTelnet.h28
-rw-r--r--WWW/Library/Implementation/HTUU.c210
-rw-r--r--WWW/Library/Implementation/HTUU.h36
-rw-r--r--WWW/Library/Implementation/HTUtils.h790
-rw-r--r--WWW/Library/Implementation/HTVMSUtils.c1133
-rw-r--r--WWW/Library/Implementation/HTVMSUtils.h101
-rw-r--r--WWW/Library/Implementation/HTVMS_WaisProt.c2469
-rw-r--r--WWW/Library/Implementation/HTVMS_WaisProt.h425
-rw-r--r--WWW/Library/Implementation/HTVMS_WaisUI.c2280
-rw-r--r--WWW/Library/Implementation/HTVMS_WaisUI.h664
-rw-r--r--WWW/Library/Implementation/HTWAIS.c1082
-rw-r--r--WWW/Library/Implementation/HTWAIS.h43
-rw-r--r--WWW/Library/Implementation/HTWSRC.c487
-rw-r--r--WWW/Library/Implementation/HTWSRC.h43
-rw-r--r--WWW/Library/Implementation/HText.h219
-rw-r--r--WWW/Library/Implementation/HTioctl.h11
-rw-r--r--WWW/Library/Implementation/LYLeaks.h299
-rw-r--r--WWW/Library/Implementation/LYexit.h67
-rw-r--r--WWW/Library/Implementation/SGML.c4978
-rw-r--r--WWW/Library/Implementation/SGML.h286
-rw-r--r--WWW/Library/Implementation/UCAux.h77
-rw-r--r--WWW/Library/Implementation/UCDefs.h106
-rw-r--r--WWW/Library/Implementation/UCMap.h110
-rw-r--r--WWW/Library/Implementation/Version.make1
-rw-r--r--WWW/Library/Implementation/dtd_util.c1405
-rw-r--r--WWW/Library/Implementation/hdr_HTMLDTD.h980
-rw-r--r--WWW/Library/Implementation/makefile.in378
-rw-r--r--WWW/Library/Implementation/src0_HTMLDTD.h2422
-rw-r--r--WWW/Library/Implementation/src0_HTMLDTD.txt3664
-rw-r--r--WWW/Library/Implementation/src1_HTMLDTD.h2422
-rw-r--r--WWW/Library/Implementation/src1_HTMLDTD.txt3664
-rw-r--r--WWW/Library/Implementation/tidy_tls.h139
-rw-r--r--WWW/Library/Implementation/www_tcp.h983
-rw-r--r--WWW/Library/Implementation/www_wait.h34
-rw-r--r--WWW/Library/djgpp/CommonMakefile334
-rw-r--r--WWW/Library/djgpp/makefile59
-rw-r--r--WWW/Library/djgpp/makefile.sla40
-rw-r--r--WWW/Library/vms/COPYING.LIB481
-rw-r--r--WWW/Library/vms/descrip.mms206
-rw-r--r--WWW/Library/vms/libmake.com233
-rw-r--r--aclocal.m46840
-rw-r--r--build.com467
-rw-r--r--clean.com22
-rwxr-xr-xconfig.guess1511
-rw-r--r--config.hin382
-rwxr-xr-xconfig.sub1760
-rwxr-xr-xconfigure43190
-rw-r--r--configure.in1551
-rw-r--r--descrip.mms123
-rw-r--r--docs/CHANGES2.3458
-rw-r--r--docs/CHANGES2.4891
-rw-r--r--docs/CHANGES2.51696
-rw-r--r--docs/CHANGES2.6732
-rw-r--r--docs/CHANGES2.7831
-rw-r--r--docs/CHANGES2.83399
-rw-r--r--docs/CRAWL.announce131
-rw-r--r--docs/FM.announce72
-rw-r--r--docs/IBMPC-charsets.announce74
-rw-r--r--docs/OS-390.announce93
-rw-r--r--docs/README.TRST158
-rw-r--r--docs/README.chartrans164
-rw-r--r--docs/README.cookies60
-rw-r--r--docs/README.defines160
-rw-r--r--docs/README.jp130
-rw-r--r--docs/README.metrics174
-rw-r--r--docs/README.options81
-rw-r--r--docs/README.release14
-rw-r--r--docs/README.rootcerts308
-rw-r--r--docs/README.ssl69
-rw-r--r--docs/README.sslcerts265
-rw-r--r--docs/SOCKETSHR.announce67
-rw-r--r--docs/TCPWARE.announce30
-rw-r--r--docs/VMSWAIS.announce28
-rw-r--r--docs/djgpp.key214
-rw-r--r--docs/pdcurses.key123
-rw-r--r--docs/slang.key4
-rw-r--r--docs/win-386.announce40
-rw-r--r--fixed512.com54
-rwxr-xr-xinstall-sh294
-rw-r--r--lib/dirent.c293
-rw-r--r--lib/dirent.h53
-rw-r--r--lynx.cfg3650
-rw-r--r--lynx.hlp1114
-rw-r--r--lynx.man1224
-rw-r--r--lynx.rsp89
-rw-r--r--lynx_help/Lynx_users_guide.html4365
-rw-r--r--lynx_help/about_lynx.html108
-rw-r--r--lynx_help/help_files.txt38
-rw-r--r--lynx_help/keystrokes/alt_edit_help.html78
-rw-r--r--lynx_help/keystrokes/bashlike_edit_help.html237
-rw-r--r--lynx_help/keystrokes/bookmark_help.html38
-rw-r--r--lynx_help/keystrokes/cookie_help.html60
-rw-r--r--lynx_help/keystrokes/dired_help.html62
-rw-r--r--lynx_help/keystrokes/edit_help.html79
-rw-r--r--lynx_help/keystrokes/environments.html480
-rw-r--r--lynx_help/keystrokes/follow_help.html187
-rw-r--r--lynx_help/keystrokes/gopher_types_help.html83
-rw-r--r--lynx_help/keystrokes/history_help.html48
-rw-r--r--lynx_help/keystrokes/keystroke_help.html150
-rw-r--r--lynx_help/keystrokes/movement_help.html57
-rw-r--r--lynx_help/keystrokes/option_help.html531
-rw-r--r--lynx_help/keystrokes/other_help.html189
-rw-r--r--lynx_help/keystrokes/print_help.html49
-rw-r--r--lynx_help/keystrokes/scrolling_help.html74
-rw-r--r--lynx_help/keystrokes/test_display.html58
-rw-r--r--lynx_help/keystrokes/visited_help.html46
-rw-r--r--lynx_help/keystrokes/xterm_help.html43
-rw-r--r--lynx_help/lynx-dev.html99
-rw-r--r--lynx_help/lynx_help_main.html179
-rw-r--r--lynx_help/lynx_url_support.html700
-rw-r--r--make-msc.bat6
-rw-r--r--makefile.bcb697
-rw-r--r--makefile.in504
-rw-r--r--makefile.msc509
-rw-r--r--makelynx.bat352
-rw-r--r--makew32.bat7
-rw-r--r--po/POTFILES.in44
-rw-r--r--po/ca.po6025
-rw-r--r--po/cs.po6266
-rw-r--r--po/da.po6124
-rw-r--r--po/de.po6249
-rw-r--r--po/eo.po6186
-rw-r--r--po/et.po6162
-rw-r--r--po/fi.po5763
-rw-r--r--po/fr.po6211
-rw-r--r--po/hu.po6098
-rw-r--r--po/id.po6099
-rw-r--r--po/it.po6110
-rw-r--r--po/ja.po6143
-rw-r--r--po/lynx.pot5872
-rw-r--r--po/makefile.inn264
-rw-r--r--po/nl.po6111
-rw-r--r--po/pt_BR.po6310
-rw-r--r--po/readme21
-rw-r--r--po/ru.po6159
-rw-r--r--po/sl.po5999
-rw-r--r--po/sv.po6246
-rw-r--r--po/tr.po6186
-rw-r--r--po/uk.po6131
-rw-r--r--po/vi.po6140
-rw-r--r--po/zh_CN.po5764
-rw-r--r--po/zh_TW.po5869
-rw-r--r--samples/blue-background.lss95
-rw-r--r--samples/bright-blue.lss77
-rw-r--r--samples/cernrules.txt640
-rw-r--r--samples/home.htm31
-rw-r--r--samples/installdirs.html18
-rw-r--r--samples/jumps.htm9
-rw-r--r--samples/jumpsUnix.html56
-rw-r--r--samples/jumpsVMS.html28
-rwxr-xr-xsamples/keepviewer20
-rw-r--r--samples/lynx-demo.cfg35
-rw-r--r--samples/lynx-keymaps148
-rw-r--r--samples/lynx.bat10
-rw-r--r--samples/lynx.com59
-rw-r--r--samples/lynx.icobin0 -> 5174 bytes
-rw-r--r--samples/lynx.lss115
-rw-r--r--samples/lynx_bookmarks.htm13
-rwxr-xr-xsamples/lynxdump15
-rw-r--r--samples/mailcap99
-rwxr-xr-xsamples/mailto-form.pl280
-rw-r--r--samples/midnight.lss84
-rw-r--r--samples/mild-colors.lss59
-rw-r--r--samples/mime.types26
-rwxr-xr-xsamples/oldlynx20
-rw-r--r--samples/opaque.lss48
-rwxr-xr-xscripts/cfg2html.pl550
-rwxr-xr-xscripts/cfg_defs.sh48
-rwxr-xr-xscripts/cfg_edit.sh17
-rwxr-xr-xscripts/cfg_path.sh5
-rwxr-xr-xscripts/conf.mingw.sh32
-rwxr-xr-xscripts/config.djgpp.sh24
-rwxr-xr-xscripts/fixtext.sh10
-rwxr-xr-xscripts/indent.sh152
-rwxr-xr-xscripts/install-cfg.sh86
-rwxr-xr-xscripts/install-lss.sh38
-rwxr-xr-xscripts/man2hlp.sh22
-rwxr-xr-xscripts/tbl2html.pl364
-rw-r--r--test/ALT88592.html171
-rw-r--r--test/ISO_LATIN1_test.html83
-rw-r--r--test/README.txt8
-rw-r--r--test/TestComment.html50
-rw-r--r--test/bad-html.html46
-rw-r--r--test/c1.html63
-rw-r--r--test/cp-1252.html178
-rw-r--r--test/cp-1252a.html183
-rw-r--r--test/iso-8859-1.html241
-rw-r--r--test/iso-8859-1a.html275
-rw-r--r--test/iso-8859-2.html174
-rw-r--r--test/iso-8859-2a.html208
-rw-r--r--test/koi8-r.html321
-rw-r--r--test/quickbrown.html103
-rw-r--r--test/raw8bit.html38
-rw-r--r--test/sgml.html1081
-rw-r--r--test/spaces.html37
-rw-r--r--test/special_urls.html22
-rw-r--r--test/tabtest.html39
-rw-r--r--test/tags.html219
-rw-r--r--test/test-styles.html106
-rw-r--r--test/unicode.html915
-rw-r--r--test/utf-8-demo.html216
-rw-r--r--userdefs.h1830
324 files changed, 327623 insertions, 0 deletions
diff --git a/ABOUT-NLS b/ABOUT-NLS
new file mode 100644
index 00000000..92e0eef8
--- /dev/null
+++ b/ABOUT-NLS
@@ -0,0 +1,284 @@
+Some of this discussion is obsolete - lynx does not bundle the "intl"
+directory, and consequently the "--with-included-gettext" configure option is
+not supported.
+------------------------------------------------------------------------------
+
+Notes on the Free Translation Project
+*************************************
+
+   Free software is going international!  The Free Translation Project
+is a way to get maintainers of free software, translators, and users all
+together, so that will gradually become able to speak many languages.
+A few packages already provide translations for their messages.
+
+   If you found this `ABOUT-NLS' file inside a distribution, you may
+assume that the distributed package does use GNU `gettext' internally,
+itself available at your nearest GNU archive site.  But you do *not*
+need to install GNU `gettext' prior to configuring, installing or using
+this package with messages translated.
+
+   Installers will find here some useful hints.  These notes also
+explain how users should proceed for getting the programs to use the
+available translations.  They tell how people wanting to contribute and
+work at translations should contact the appropriate team.
+
+   When reporting bugs in the `intl/' directory or bugs which may be
+related to internationalization, you should tell about the version of
+`gettext' which is used.  The information can be found in the
+`intl/VERSION' file, in internationalized packages.
+
+One advise in advance
+=====================
+
+   If you want to exploit the full power of internationalization, you
+should configure it using
+
+     ./configure --with-included-gettext
+
+to force usage of internationalizing routines provided within this
+package, despite the existence of internationalizing capabilities in the
+operating system where this package is being installed.  So far, only
+the `gettext' implementation in the GNU C library version 2 provides as
+many features (such as locale alias or message inheritance) as the
+implementation here.  It is also not possible to offer this additional
+functionality on top of a `catgets' implementation.  Future versions of
+GNU `gettext' will very likely convey even more functionality.  So it
+might be a good idea to change to GNU `gettext' as soon as possible.
+
+   So you need not provide this option if you are using GNU libc 2 or
+you have installed a recent copy of the GNU gettext package with the
+included `libintl'.
+
+INSTALL Matters
+===============
+
+   Some packages are "localizable" when properly installed; the
+programs they contain can be made to speak your own native language.
+Most such packages use GNU `gettext'.  Other packages have their own
+ways to internationalization, predating GNU `gettext'.
+
+   By default, this package will be installed to allow translation of
+messages.  It will automatically detect whether the system provides
+usable `catgets' (if using this is selected by the installer) or
+`gettext' functions.  If neither is available, the GNU `gettext' own
+library will be used.  This library is wholly contained within this
+package, usually in the `intl/' subdirectory, so prior installation of
+the GNU `gettext' package is *not* required.  Installers may use
+special options at configuration time for changing the default
+behaviour.  The commands:
+
+     ./configure --with-included-gettext
+     ./configure --with-catgets
+     ./configure --disable-nls
+
+will respectively bypass any pre-existing `catgets' or `gettext' to use
+the internationalizing routines provided within this package, enable
+the use of the `catgets' functions (if found on the locale system), or
+else, *totally* disable translation of messages.
+
+   When you already have GNU `gettext' installed on your system and run
+configure without an option for your new package, `configure' will
+probably detect the previously built and installed `libintl.a' file and
+will decide to use this.  This might be not what is desirable.  You
+should use the more recent version of the GNU `gettext' library.  I.e.
+if the file `intl/VERSION' shows that the library which comes with this
+package is more recent, you should use
+
+     ./configure --with-included-gettext
+
+to prevent auto-detection.
+
+   By default the configuration process will not test for the `catgets'
+function and therefore they will not be used.  The reasons are already
+given above: the emulation on top of `catgets' cannot provide all the
+extensions provided by the GNU `gettext' library.  If you nevertheless
+want to use the `catgets' functions use
+
+     ./configure --with-catgets
+
+to enable the test for `catgets' (this causes no harm if `catgets' is
+not available on your system).  If you really select this option we
+would like to hear about the reasons because we cannot think of any
+good one ourself.
+
+   Internationalized packages have usually many `po/LL.po' files, where
+LL gives an ISO 639 two-letter code identifying the language.  Unless
+translations have been forbidden at `configure' time by using the
+`--disable-nls' switch, all available translations are installed
+together with the package.  However, the environment variable `LINGUAS'
+may be set, prior to configuration, to limit the installed set.
+`LINGUAS' should then contain a space separated list of two-letter
+codes, stating which languages are allowed.
+
+Using This Package
+==================
+
+   As a user, if your language has been installed for this package, you
+only have to set the `LANG' environment variable to the appropriate
+ISO 639 `LL' two-letter code prior to using the programs in the
+package.  For example, let's suppose that you speak German.  At the
+shell prompt, merely execute `setenv LANG de' (in `csh'),
+`export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash').  This
+can be done from your `.login' or `.profile' file, once and for all.
+
+   An operating system might already offer message localization for
+many of its programs, while other programs have been installed locally
+with the full capabilities of GNU `gettext'.  Just using `gettext'
+extended syntax for `LANG' would break proper localization of already
+available operating system programs.  In this case, users should set
+both `LANGUAGE' and `LANG' variables in their environment, as programs
+using GNU `gettext' give preference to `LANGUAGE'.  For example, some
+Swedish users would rather read translations in German than English for
+when Swedish is not available.  This is easily accomplished by setting
+`LANGUAGE' to `sv:de' while leaving `LANG' to `sv'.
+
+Translating Teams
+=================
+
+   For the Free Translation Project to be a success, we need interested
+people who like their own language and write it well, and who are also
+able to synergize with other translators speaking the same language.
+Each translation team has its own mailing list, courtesy of Linux
+International.  You may reach your translation team at the address
+`LL@li.org', replacing LL by the two-letter ISO 639 code for your
+language.  Language codes are *not* the same as the country codes given
+in ISO 3166.  The following translation teams exist, as of August 1998:
+
+     Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en',
+     Esperanto `eo', Finnish `fi', French `fr', German `de', Hungarian
+     `hu', Irish `ga', Italian `it', Indonesian `id', Japanese `ja',
+     Korean `ko', Latin `la', Norwegian `no', Persian `fa', Polish
+     `pl', Portuguese `pt', Russian `ru', Slovenian `sl', Spanish `es',
+     Swedish `sv', and Turkish `tr'.
+
+For example, you may reach the Chinese translation team by writing to
+`zh@li.org'.
+
+   If you'd like to volunteer to *work* at translating messages, you
+should become a member of the translating team for your own language.
+The subscribing address is *not* the same as the list itself, it has
+`-request' appended.  For example, speakers of Swedish can send a
+message to `sv-request@li.org', having this message body:
+
+     subscribe
+
+   Keep in mind that team members are expected to participate
+*actively* in translations, or at solving translational difficulties,
+rather than merely lurking around.  If your team does not exist yet and
+you want to start one, or if you are unsure about what to do or how to
+get started, please write to `translation@iro.umontreal.ca' to reach the
+coordinator for all translator teams.
+
+   The English team is special.  It works at improving and uniformizing
+the terminology in use.  Proven linguistic skill are praised more than
+programming skill, here.
+
+Available Packages
+==================
+
+   Languages are not equally supported in all packages.  The following
+matrix shows the current state of internationalization, as of August
+1998.  The matrix shows, in regard of each package, for which languages
+PO files have been submitted to translation coordination.
+
+     Ready PO files    cs da de el en es fi fr it
+                     .----------------------------.
+     bash            |       []             []    |
+     bison           |       []             []    |
+     clisp           |       []    [] []    []    |
+     cpio            |       []       []    []    |
+     diffutils       |       []       []    []    |
+     enscript        |       []       [] [] []    |
+     fileutils       | []    []       []    []    |
+     findutils       |       []       []    [] [] |
+     flex            |                []    []    |
+     gcal            |       []             []    |
+     gettext         |    [] [] []    []    []    |
+     grep            |       [] []    []    []    |
+     hello           |    [] []       []    [] [] |
+     id-utils        |       []             []    |
+     indent          |    [] []                   |
+     libc            |       []       []    []    |
+     m4              |       []             []    |
+     make            |       []       []    []    |
+     music           |                      []    |
+     ptx             |       []       []    []    |
+     recode          |    [] []       []    []    |
+     sed             |                            |
+     sh-utils        |       []       []    []    |
+     sharutils       | []    [] []    []    []    |
+     tar             | []    []             [] [] |
+     texinfo         | []    []             []    |
+     textutils       | []    []       []    []    |
+     wdiff           | []    []       []    []    |
+     wget            | []    [] []             [] |
+                     `----------------------------'
+                       cs da de el en es fi fr it
+                        7  4 26  4  1 18  1 26  4
+     
+                       ja ko nl no pl pt ru sl sv
+                     .----------------------------.
+     bash            |       []                   |  3
+     bison           |       []                   |  3
+     clisp           |                            |  4
+     cpio            |    [] []    []             |  6
+     diffutils       |             []          [] |  5
+     enscript        |       []             []    |  6
+     fileutils       |    [] []    [] [] [] [] [] | 11
+     findutils       |    [] []    []    []    [] |  9
+     flex            |    []                   [] |  4
+     gcal            |       []    []          [] |  5
+     gettext         |    [] [] [] [] []    [] [] | 13
+     grep            |    [] [] [] []    [] [] [] | 11
+     hello           |    [] [] [] [] []    [] [] | 12
+     id-utils        |             []             |  3
+     indent          |    []       []    []       |  5
+     libc            |    [] [] [] []          [] |  8
+     m4              | []    []          []    [] |  6
+     make            |    [] []    []             |  6
+     music           |             []             |  2
+     ptx             |       [] [] [] []       [] |  8
+     recode          |       []    [] []    [] [] |  9
+     sed             |                            |  0
+     sh-utils        |       [] [] [] []       [] |  8
+     sharutils       |       []                [] |  7
+     tar             |    [] [] [] [] []    [] [] | 11
+     texinfo         |       []                   |  4
+     textutils       |    [] [] [] []          [] |  9
+     wdiff           |       [] [] []          [] |  8
+     wget            |          []                |  5
+                     `----------------------------'
+       18 teams        ja ko nl no pl pt ru sl sv
+       29 domains       1 12 21 11 19  7  5  7 17  191
+
+   Some counters in the preceding matrix are higher than the number of
+visible blocks let us expect.  This is because a few extra PO files are
+used for implementing regional variants of languages, or language
+dialects.
+
+   For a PO file in the matrix above to be effective, the package to
+which it applies should also have been internationalized and
+distributed as such by its maintainer.  There might be an observable
+lag between the mere existence a PO file and its wide availability in a
+distribution.
+
+   If August 1998 seems to be old, you may fetch a more recent copy of
+this `ABOUT-NLS' file on most GNU archive sites.
+
+Using `gettext' in new packages
+===============================
+
+   If you are writing a freely available program and want to
+internationalize it you are welcome to use GNU `gettext' in your
+package.  Of course the GNU Public License applies to your sources from
+then if you include `gettext' directly in your distribution on but
+since you are writing free software anyway this is no restriction.
+
+   Once the sources are change appropriately and the setup can handle to
+use of `gettext' the only thing missing are the translations.  The Free
+Translation Project is also available for packages which are not
+developed inside the GNU project.  Therefore the information given above
+applies also for every other Free Software Project.  Contact
+`translation@iro.umontreal.ca' to make the `.pot' files available to
+the translation teams.
+
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 00000000..8baac8b0
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,53 @@
+-- $LynxId: AUTHORS,v 1.6 2008/04/11 22:36:11 tom Exp $
+-- vile:txtmode
+Most of the people who have contributed more than one patch to Lynx (as well as
+a few who have only one) are noted in the changelogs by their initials (to keep
+the changelog short).  Here is a summary of those initials and the
+corresponding full names:
+
+AAC	Andrey A Chernov
+BD	Binh Do
+BJP	Brian J Pardy
+BL	Bela Lubkin
+CK	Charles Karney
+DK	Doug Kaufman
+DSB	Scott Bigham
+DW	David Woolley
+FLWM	Frederic L W Meunier
+FM	Foteos Macrides
+GN	Glenn Nielsen
+GV	Gisle Vanem
+HL	Hiram Lester Jr
+HM	Hynek Med
+HN	Henry Nelson
+IC	Ismael Cordeiro
+IZ	Ilya Zakharevich
+JB	John Bley
+JED	John E Davis
+JES	James E Spath
+JKT	J Kevin Ternes
+JN	John Nowlin
+KED	Kim DeVaughn
+KW	Klaus Weide
+LE	Laura Eaves
+LP	Leonid Pauzner
+LV	Larry W Virden
+NSH	nsh@horae.dti.ne.jp
+PBM	Paul B Mahol
+PC	Peter Canning
+PDS	Paul D Smith
+PG	Paul Gilmartin
+PHDM	Philippe De Muyter
+PW	Philip Webb
+RN	Ryan Nielsen
+RS	Rado Smiljanic
+SC	Stefan Caunter
+SH	Hiroyuki Senshu
+SKY	Sinan Kaan Yerli
+SS	Sergey Svishchev
+TD	Thomas E Dickey
+TG	Thorsten Glaser
+TH	Hataguchi Takeshi
+VH	Vlad Harchev
+WB	Wayne Buttles
+WS	Bill Schiavo
diff --git a/BUILD/VS2003/clean.bat b/BUILD/VS2003/clean.bat
new file mode 100644
index 00000000..5920e4a6
--- /dev/null
+++ b/BUILD/VS2003/clean.bat
@@ -0,0 +1,27 @@
+@echo off

+@rem $LynxId: clean.bat,v 1.1 2007/06/30 14:17:02 tom Exp $

+@rem Remove all build-products in subdirectories, leaving only sources (and unrecognized types)

+

+del/f/s/q *.aps

+del/f/s/q *.bsc

+del/f/s/q *.exe

+del/f/s/q *.exp

+del/f/s/q *.idb

+del/f/s/q *.ilk

+del/f/s/q *.lib

+del/f/s/q *.ncb

+del/f/s/q *.obj

+del/f/s/q *.opt

+del/f/s/q *.pch

+del/f/s/q *.pdb

+del/f/s/q *.plg

+del/f/s/q *.res

+del/f/s/q *.sbr

+del/f/s/q *.suo

+

+del/f/s/q BuildLog.htm

+

+attrib +r *.h /s

+attrib +r *.bat /s

+attrib +r *.sln /s

+attrib +r *.vcproj /s

diff --git a/BUILD/VS2003/develop.bat b/BUILD/VS2003/develop.bat
new file mode 100644
index 00000000..93509a64
--- /dev/null
+++ b/BUILD/VS2003/develop.bat
@@ -0,0 +1,7 @@
+@echo off

+@rem $LynxId: develop.bat,v 1.2 2007/06/29 00:22:25 tom Exp $

+@rem ensure that all IDE files are writable

+

+attrib -r *.bat /s

+attrib -r *.sln /s

+attrib -r *.vcproj /s
\ No newline at end of file
diff --git a/BUILD/VS2003/lynx/lynx.sln b/BUILD/VS2003/lynx/lynx.sln
new file mode 100644
index 00000000..68ee5005
--- /dev/null
+++ b/BUILD/VS2003/lynx/lynx.sln
@@ -0,0 +1,30 @@
+Microsoft Visual Studio Solution File, Format Version 8.00

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lynx", "lynx.vcproj", "{0CC852D4-5C5A-475B-9BBB-41A33309B0E5}"

+	ProjectSection(ProjectDependencies) = postProject

+		{C6C72FCE-5049-4D45-A7B2-586A80B6CC20} = {C6C72FCE-5049-4D45-A7B2-586A80B6CC20}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "makeuctb", "..\makeuctb\makeuctb.vcproj", "{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}"

+	ProjectSection(ProjectDependencies) = postProject

+	EndProjectSection

+EndProject

+Global

+	GlobalSection(SolutionConfiguration) = preSolution

+		Debug = Debug

+		Release = Release

+	EndGlobalSection

+	GlobalSection(ProjectConfiguration) = postSolution

+		{0CC852D4-5C5A-475B-9BBB-41A33309B0E5}.Debug.ActiveCfg = Debug|Win32

+		{0CC852D4-5C5A-475B-9BBB-41A33309B0E5}.Debug.Build.0 = Debug|Win32

+		{0CC852D4-5C5A-475B-9BBB-41A33309B0E5}.Release.ActiveCfg = Release|Win32

+		{0CC852D4-5C5A-475B-9BBB-41A33309B0E5}.Release.Build.0 = Release|Win32

+		{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}.Debug.ActiveCfg = Debug|Win32

+		{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}.Debug.Build.0 = Debug|Win32

+		{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}.Release.ActiveCfg = Release|Win32

+		{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}.Release.Build.0 = Release|Win32

+	EndGlobalSection

+	GlobalSection(ExtensibilityGlobals) = postSolution

+	EndGlobalSection

+	GlobalSection(ExtensibilityAddIns) = postSolution

+	EndGlobalSection

+EndGlobal

diff --git a/BUILD/VS2003/lynx/lynx.vcproj b/BUILD/VS2003/lynx/lynx.vcproj
new file mode 100644
index 00000000..a75648f0
--- /dev/null
+++ b/BUILD/VS2003/lynx/lynx.vcproj
@@ -0,0 +1,708 @@
+<?xml version="1.0" encoding="Windows-1252"?>

+<VisualStudioProject

+	ProjectType="Visual C++"

+	Version="7.10"

+	Name="lynx"

+	ProjectGUID="{0CC852D4-5C5A-475B-9BBB-41A33309B0E5}"

+	Keyword="Win32Proj">

+	<Platforms>

+		<Platform

+			Name="Win32"/>

+	</Platforms>

+	<Configurations>

+		<Configuration

+			Name="Debug|Win32"

+			OutputDirectory="Debug"

+			IntermediateDirectory="Debug"

+			ConfigurationType="1"

+			CharacterSet="2">

+			<Tool

+				Name="VCCLCompilerTool"

+				Optimization="0"

+				AdditionalIncludeDirectories=".;..\..\..;..\..\..\lib;..\..\..\WWW\Library\Implementation;..\..\..\src\chrtrans;..\..\..\src"

+				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;HAVE_CONFIG_H;DONT_HAVE_TM_GMTOFF;_WIN_CC"

+				MinimalRebuild="TRUE"

+				BasicRuntimeChecks="3"

+				RuntimeLibrary="5"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="TRUE"

+				DebugInformationFormat="4"/>

+			<Tool

+				Name="VCCustomBuildTool"/>

+			<Tool

+				Name="VCLinkerTool"

+				AdditionalDependencies="pdcurses.lib zlib.lib wsock32.lib"

+				OutputFile="$(OutDir)/lynx.exe"

+				LinkIncremental="2"

+				AdditionalLibraryDirectories="..\..\..\lib"

+				IgnoreDefaultLibraryNames="libcmt;libc"

+				GenerateDebugInformation="TRUE"

+				ProgramDatabaseFile="$(OutDir)/lynx.pdb"

+				SubSystem="1"

+				TargetMachine="1"/>

+			<Tool

+				Name="VCMIDLTool"/>

+			<Tool

+				Name="VCPostBuildEventTool"/>

+			<Tool

+				Name="VCPreBuildEventTool"/>

+			<Tool

+				Name="VCPreLinkEventTool"/>

+			<Tool

+				Name="VCResourceCompilerTool"/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"/>

+			<Tool

+				Name="VCWebDeploymentTool"/>

+			<Tool

+				Name="VCManagedWrapperGeneratorTool"/>

+			<Tool

+				Name="VCAuxiliaryManagedWrapperGeneratorTool"/>

+		</Configuration>

+		<Configuration

+			Name="Release|Win32"

+			OutputDirectory="Release"

+			IntermediateDirectory="Release"

+			ConfigurationType="1"

+			CharacterSet="2">

+			<Tool

+				Name="VCCLCompilerTool"

+				AdditionalIncludeDirectories=".;..\..\..;..\..\..\lib;..\..\..\WWW\Library\Implementation;..\..\..\src\chrtrans;..\..\..\src"

+				PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;HAVE_CONFIG_H;DONT_HAVE_TM_GMTOFF;_WIN_CC"

+				RuntimeLibrary="4"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="TRUE"

+				DebugInformationFormat="3"/>

+			<Tool

+				Name="VCCustomBuildTool"/>

+			<Tool

+				Name="VCLinkerTool"

+				AdditionalDependencies="pdcurses.lib zlib.lib wsock32.lib"

+				OutputFile="$(OutDir)/lynx.exe"

+				LinkIncremental="1"

+				AdditionalLibraryDirectories="..\..\..\lib"

+				IgnoreAllDefaultLibraries="FALSE"

+				IgnoreDefaultLibraryNames="libcmt"

+				GenerateDebugInformation="TRUE"

+				SubSystem="1"

+				OptimizeReferences="2"

+				EnableCOMDATFolding="2"

+				TargetMachine="1"/>

+			<Tool

+				Name="VCMIDLTool"/>

+			<Tool

+				Name="VCPostBuildEventTool"/>

+			<Tool

+				Name="VCPreBuildEventTool"/>

+			<Tool

+				Name="VCPreLinkEventTool"/>

+			<Tool

+				Name="VCResourceCompilerTool"/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"/>

+			<Tool

+				Name="VCWebDeploymentTool"/>

+			<Tool

+				Name="VCManagedWrapperGeneratorTool"/>

+			<Tool

+				Name="VCAuxiliaryManagedWrapperGeneratorTool"/>

+		</Configuration>

+	</Configurations>

+	<References>

+	</References>

+	<Files>

+		<Filter

+			Name="Source Files"

+			Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"

+			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">

+			<File

+				RelativePath="..\..\..\src\DefaultStyle.c">

+			</File>

+			<File

+				RelativePath="..\..\..\lib\dirent.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\GridText.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAABrow.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAAProt.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAAUtil.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAccess.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTAlert.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAnchor.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAssoc.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAtom.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTBTree.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTChunk.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTDOS.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTFile.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTFinger.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTFormat.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTFTP.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTFWriter.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTGopher.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTGroup.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTInit.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTLex.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTList.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTMIME.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTML.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTMLDTD.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTMLGen.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTNews.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTParse.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTPlain.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTRules.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTString.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTStyle.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTTCP.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTTelnet.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTTP.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTUU.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTWSRC.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYBookmark.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCgi.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharSets.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharUtils.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYClean.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCookie.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCurses.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYDownload.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYEdit.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYEditmap.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYexit.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYExtern.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYForms.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGetFile.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHash.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHistory.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYJump.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYKeymap.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYLeaks.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYList.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYLocal.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMail.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMain.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMainLoop.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMap.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYmktime.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYNews.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYOptions.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrettySrc.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrint.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYrcFile.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYReadCFG.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSearch.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSession.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYShowInfo.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStrings.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStyle.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYTraversal.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUpload.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUtils.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\mktime.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\parsdate.c">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\SGML.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\strstr.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\TRSTable.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCAuto.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCAux.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCdomap.c">

+			</File>

+			<File

+				RelativePath="..\..\..\src\Xsystem.c">

+			</File>

+		</Filter>

+		<Filter

+			Name="Header Files"

+			Filter="h;hpp;hxx;hm;inl;inc;xsd"

+			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">

+			<File

+				RelativePath="..\..\..\src\AttrList.h">

+			</File>

+			<File

+				RelativePath="..\..\..\lib\dirent.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\GridText.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAABrow.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAAProt.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAAUtil.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAccess.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTAlert.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAnchor.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAssoc.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTAtom.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTBTree.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTChunk.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTCJK.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTDOS.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HText.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTFile.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTFinger.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTFont.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTFormat.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTForms.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTFTP.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTFWriter.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTGopher.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTGroup.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTInit.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTioctl.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTLex.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTList.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTMIME.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTML.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTMLDTD.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTMLGen.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTNestedList.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTNews.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTParse.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTPlain.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTRules.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTSaveToFile.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTStream.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTString.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTStyle.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTTCP.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTTelnet.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTTP.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\htutils.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTUU.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\HTWSRC.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYBookmark.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCgi.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharSets.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharUtils.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharVals.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYClean.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCookie.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCurses.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYDownload.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYEdit.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\LYexit.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYExtern.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGCurses.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGetFile.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGlobalDefs.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHash.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHistory.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYJump.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYJustify.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYKeymap.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\LYLeaks.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYList.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYLocal.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMail.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMainLoop.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMap.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYNews.h">

+			</File>

+			<File

+				RelativePath=".\lynx_cfg.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYOptions.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrettySrc.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrint.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYrcFile.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYReadCFG.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSearch.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSession.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYShowInfo.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSignal.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStrings.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStructs.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStyle.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYTraversal.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUpload.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUtils.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYVMSdef.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\SGML.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\structdump.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\TRSTable.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCAuto.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\UCAux.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\UCDefs.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCdomap.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\UCMap.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\www_tcp.h">

+			</File>

+			<File

+				RelativePath="..\..\..\Www\Library\Implementation\www_wait.h">

+			</File>

+		</Filter>

+		<Filter

+			Name="Resource Files"

+			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"

+			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}">

+		</Filter>

+	</Files>

+	<Globals>

+	</Globals>

+</VisualStudioProject>

diff --git a/BUILD/VS2003/lynx/lynx_cfg.h b/BUILD/VS2003/lynx/lynx_cfg.h
new file mode 100644
index 00000000..2861e1f1
--- /dev/null
+++ b/BUILD/VS2003/lynx/lynx_cfg.h
@@ -0,0 +1,68 @@
+// $LynxId: lynx_cfg.h,v 1.6 2011/05/28 13:07:55 tom Exp $
+// definitions abstracted from makefile.msc
+
+#ifndef LYNX_CFG_H
+#define LYNX_CFG_H 1
+
+#define __WIN32__
+#define _WINDOWS
+#define _WIN32_WINNT 0x0400
+
+#define ACCESS_AUTH 1
+#define CJK_EX 1
+#define DIRED_SUPPORT 1
+#define DISP_PARTIAL 1
+#define DOSPATH 1
+#define USE_ALT_BINDINGS 1
+#define EXP_NESTED_TABLES 1
+#define HAVE_KEYPAD 1
+#define HAVE_PUTENV 1
+#define LONG_LIST 1
+#define NDEBUG 1
+#define NOSIGHUP 1
+#define NOUSERS 1
+#define NO_CONFIG_INFO 1
+#define NO_CUSERID 1
+#define NO_FILIO_H 1
+#define NO_TTYTYPE 1
+#define NO_UNISTD_H 1
+#define NO_UTMP 1
+#define OK_OVERRIDE 1
+#define SH_EX 1
+#define USE_CMD_LOGGING 1
+#define USE_EXTERNALS 1
+#define USE_FILE_UPLOAD 1
+#define USE_JUSTIFY_ELTS 1
+#define USE_MULTIBYTE_CURSES 1
+#define USE_PERSISTENT_COOKIES 1
+#define USE_PRETTYSRC 1
+#define USE_READPROGRESS 1
+#define USE_SCROLLBAR 1
+#define USE_SOURCE_CACHE 1
+#define USE_ZLIB 1
+#define WIN_EX 1
+
+// definitions to account for using this file (see HTUtils.h, userdefs.h)
+#define ANSI_VARARGS 1
+#define HAVE_GETCWD 1
+#define HAVE_STDARG_H 1
+#define HAVE_STDLIB_H 1
+#define LYNX_CFG_FILE "./lynx.cfg"
+#define UNDERLINE_LINKS FALSE
+#define socklen_t int
+
+// configuration choices
+#define PDCURSES 1
+#define USE_WINSOCK2_H 1
+
+#ifdef PDCURSES
+#define USE_COLOR_STYLE 1
+#define COLOR_CURSES 1
+#define FANCY_CURSES 1
+#endif
+
+#pragma warning (disable : 4244)	/* conversion from 'xxx' to 'yyy', possible loss of data */
+#pragma warning (disable : 4267)	/* conversion from 'xxx' to 'yyy', possible loss of data */
+#pragma warning (disable : 4311)	/* 'type cast': pointer truncation from 'xxx' to 'yyy' FIXME */
+
+#endif /* LYNX_CFG_H */
diff --git a/BUILD/VS2003/makeuctb/makeuctb.sln b/BUILD/VS2003/makeuctb/makeuctb.sln
new file mode 100644
index 00000000..f8cfdbdd
--- /dev/null
+++ b/BUILD/VS2003/makeuctb/makeuctb.sln
@@ -0,0 +1,21 @@
+Microsoft Visual Studio Solution File, Format Version 8.00

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "makeuctb", "makeuctb.vcproj", "{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}"

+	ProjectSection(ProjectDependencies) = postProject

+	EndProjectSection

+EndProject

+Global

+	GlobalSection(SolutionConfiguration) = preSolution

+		Debug = Debug

+		Release = Release

+	EndGlobalSection

+	GlobalSection(ProjectConfiguration) = postSolution

+		{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}.Debug.ActiveCfg = Debug|Win32

+		{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}.Debug.Build.0 = Debug|Win32

+		{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}.Release.ActiveCfg = Release|Win32

+		{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}.Release.Build.0 = Release|Win32

+	EndGlobalSection

+	GlobalSection(ExtensibilityGlobals) = postSolution

+	EndGlobalSection

+	GlobalSection(ExtensibilityAddIns) = postSolution

+	EndGlobalSection

+EndGlobal

diff --git a/BUILD/VS2003/makeuctb/makeuctb.vcproj b/BUILD/VS2003/makeuctb/makeuctb.vcproj
new file mode 100644
index 00000000..f217c67a
--- /dev/null
+++ b/BUILD/VS2003/makeuctb/makeuctb.vcproj
@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="Windows-1252"?>

+<VisualStudioProject

+	ProjectType="Visual C++"

+	Version="7.10"

+	Name="makeuctb"

+	ProjectGUID="{C6C72FCE-5049-4D45-A7B2-586A80B6CC20}"

+	RootNamespace="makeuctb"

+	Keyword="Win32Proj">

+	<Platforms>

+		<Platform

+			Name="Win32"/>

+	</Platforms>

+	<Configurations>

+		<Configuration

+			Name="Debug|Win32"

+			OutputDirectory="Debug"

+			IntermediateDirectory="Debug"

+			ConfigurationType="1"

+			CharacterSet="2">

+			<Tool

+				Name="VCCLCompilerTool"

+				Optimization="0"

+				AdditionalIncludeDirectories="..\..\..;..\..\..\lib;..\..\..\WWW\Library\Implementation;..\..\..\src\chrtrans;..\..\..\src"

+				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_MBCS;NO_UNISTD_H;_WINDOWS;__WIN32__"

+				MinimalRebuild="TRUE"

+				BasicRuntimeChecks="3"

+				RuntimeLibrary="5"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="TRUE"

+				DebugInformationFormat="4"/>

+			<Tool

+				Name="VCCustomBuildTool"

+				CommandLine="setlocal

+set MYDST=..\..\..\src\chrtrans

+copy $(TargetPath) %MYDST%

+cd %MYDST%

+call makehdrs

+endlocal"

+				Outputs="..\..\..\src\chrtrans\makeuctb.exe;..\..\..\src\chrtrans\def7_uni.h;..\..\..\src\chrtrans\cp1250_uni.h;..\..\..\src\chrtrans\cp1251_uni.h;..\..\..\src\chrtrans\cp1252_uni.h;..\..\..\src\chrtrans\cp1253_uni.h;..\..\..\src\chrtrans\cp1255_uni.h;..\..\..\src\chrtrans\cp1256_uni.h;..\..\..\src\chrtrans\cp1257_uni.h;..\..\..\src\chrtrans\cp437_uni.h;..\..\..\src\chrtrans\cp737_uni.h;..\..\..\src\chrtrans\cp775_uni.h;..\..\..\src\chrtrans\cp850_uni.h;..\..\..\src\chrtrans\cp852_uni.h;..\..\..\src\chrtrans\cp857_uni.h;..\..\..\src\chrtrans\cp862_uni.h;..\..\..\src\chrtrans\cp864_uni.h;..\..\..\src\chrtrans\cp866_uni.h;..\..\..\src\chrtrans\cp866u_uni.h;..\..\..\src\chrtrans\cp869_uni.h;..\..\..\src\chrtrans\dmcs_uni.h;..\..\..\src\chrtrans\hp_uni.h;..\..\..\src\chrtrans\iso01_uni.h;..\..\..\src\chrtrans\iso02_uni.h;..\..\..\src\chrtrans\iso03_uni.h;..\..\..\src\chrtrans\iso04_uni.h;..\..\..\src\chrtrans\iso05_uni.h;..\..\..\src\chrtrans\iso06_uni.h;..\..\..\src\chrtrans\iso07_uni.h;..\..\..\src\chrtrans\iso08_uni.h;..\..\..\src\chrtrans\iso09_uni.h;..\..\..\src\chrtrans\iso10_uni.h;..\..\..\src\chrtrans\iso13_uni.h;..\..\..\src\chrtrans\iso14_uni.h;..\..\..\src\chrtrans\iso15_uni.h;..\..\..\src\chrtrans\koi8r_uni.h;..\..\..\src\chrtrans\koi8u_uni.h;..\..\..\src\chrtrans\mac_uni.h;..\..\..\src\chrtrans\mnem2_suni.h;..\..\..\src\chrtrans\mnem_suni.h;..\..\..\src\chrtrans\next_uni.h;..\..\..\src\chrtrans\pt154_uni.h;..\..\..\src\chrtrans\rfc_suni.h;..\..\..\src\chrtrans\utf8_uni.h;..\..\..\src\chrtrans\viscii_uni.h"/>

+			<Tool

+				Name="VCLinkerTool"

+				OutputFile="$(OutDir)/makeuctb.exe"

+				LinkIncremental="2"

+				GenerateDebugInformation="TRUE"

+				ProgramDatabaseFile="$(OutDir)/makeuctb.pdb"

+				SubSystem="1"

+				TargetMachine="1"/>

+			<Tool

+				Name="VCMIDLTool"/>

+			<Tool

+				Name="VCPostBuildEventTool"/>

+			<Tool

+				Name="VCPreBuildEventTool"/>

+			<Tool

+				Name="VCPreLinkEventTool"/>

+			<Tool

+				Name="VCResourceCompilerTool"/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"/>

+			<Tool

+				Name="VCWebDeploymentTool"/>

+			<Tool

+				Name="VCManagedWrapperGeneratorTool"/>

+			<Tool

+				Name="VCAuxiliaryManagedWrapperGeneratorTool"/>

+		</Configuration>

+		<Configuration

+			Name="Release|Win32"

+			OutputDirectory="Release"

+			IntermediateDirectory="Release"

+			ConfigurationType="1"

+			CharacterSet="2">

+			<Tool

+				Name="VCCLCompilerTool"

+				AdditionalIncludeDirectories="..\..\..;..\..\..\lib;..\..\..\WWW\Library\Implementation;..\..\..\src\chrtrans;..\..\..\src"

+				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_MBCS;NO_UNISTD_H;_WINDOWS;__WIN32__"

+				RuntimeLibrary="4"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="TRUE"

+				DebugInformationFormat="3"/>

+			<Tool

+				Name="VCCustomBuildTool"

+				CommandLine="setlocal

+set MYDST=..\..\..\src\chrtrans

+copy $(TargetPath) %MYDST%

+cd %MYDST%

+call makehdrs

+endlocal"

+				Outputs="..\..\..\src\chrtrans\makeuctb.exe;..\..\..\src\chrtrans\def7_uni.h;..\..\..\src\chrtrans\cp1250_uni.h;..\..\..\src\chrtrans\cp1251_uni.h;..\..\..\src\chrtrans\cp1252_uni.h;..\..\..\src\chrtrans\cp1253_uni.h;..\..\..\src\chrtrans\cp1255_uni.h;..\..\..\src\chrtrans\cp1256_uni.h;..\..\..\src\chrtrans\cp1257_uni.h;..\..\..\src\chrtrans\cp437_uni.h;..\..\..\src\chrtrans\cp737_uni.h;..\..\..\src\chrtrans\cp775_uni.h;..\..\..\src\chrtrans\cp850_uni.h;..\..\..\src\chrtrans\cp852_uni.h;..\..\..\src\chrtrans\cp857_uni.h;..\..\..\src\chrtrans\cp862_uni.h;..\..\..\src\chrtrans\cp864_uni.h;..\..\..\src\chrtrans\cp866_uni.h;..\..\..\src\chrtrans\cp866u_uni.h;..\..\..\src\chrtrans\cp869_uni.h;..\..\..\src\chrtrans\dmcs_uni.h;..\..\..\src\chrtrans\hp_uni.h;..\..\..\src\chrtrans\iso01_uni.h;..\..\..\src\chrtrans\iso02_uni.h;..\..\..\src\chrtrans\iso03_uni.h;..\..\..\src\chrtrans\iso04_uni.h;..\..\..\src\chrtrans\iso05_uni.h;..\..\..\src\chrtrans\iso06_uni.h;..\..\..\src\chrtrans\iso07_uni.h;..\..\..\src\chrtrans\iso08_uni.h;..\..\..\src\chrtrans\iso09_uni.h;..\..\..\src\chrtrans\iso10_uni.h;..\..\..\src\chrtrans\iso13_uni.h;..\..\..\src\chrtrans\iso14_uni.h;..\..\..\src\chrtrans\iso15_uni.h;..\..\..\src\chrtrans\koi8r_uni.h;..\..\..\src\chrtrans\koi8u_uni.h;..\..\..\src\chrtrans\mac_uni.h;..\..\..\src\chrtrans\mnem2_suni.h;..\..\..\src\chrtrans\mnem_suni.h;..\..\..\src\chrtrans\next_uni.h;..\..\..\src\chrtrans\pt154_uni.h;..\..\..\src\chrtrans\rfc_suni.h;..\..\..\src\chrtrans\utf8_uni.h;..\..\..\src\chrtrans\viscii_uni.h"/>

+			<Tool

+				Name="VCLinkerTool"

+				OutputFile="$(OutDir)/makeuctb.exe"

+				LinkIncremental="1"

+				GenerateDebugInformation="TRUE"

+				SubSystem="1"

+				OptimizeReferences="2"

+				EnableCOMDATFolding="2"

+				TargetMachine="1"/>

+			<Tool

+				Name="VCMIDLTool"/>

+			<Tool

+				Name="VCPostBuildEventTool"/>

+			<Tool

+				Name="VCPreBuildEventTool"/>

+			<Tool

+				Name="VCPreLinkEventTool"/>

+			<Tool

+				Name="VCResourceCompilerTool"/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"/>

+			<Tool

+				Name="VCWebDeploymentTool"/>

+			<Tool

+				Name="VCManagedWrapperGeneratorTool"/>

+			<Tool

+				Name="VCAuxiliaryManagedWrapperGeneratorTool"/>

+		</Configuration>

+	</Configurations>

+	<References>

+	</References>

+	<Files>

+		<Filter

+			Name="Source Files"

+			Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"

+			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">

+			<File

+				RelativePath="..\..\..\src\chrtrans\makeuctb.c">

+				<FileConfiguration

+					Name="Debug|Win32">

+					<Tool

+						Name="VCCLCompilerTool"

+						ObjectFile="$(IntDir)/$(InputName)1.obj"/>

+				</FileConfiguration>

+				<FileConfiguration

+					Name="Release|Win32">

+					<Tool

+						Name="VCCLCompilerTool"

+						ObjectFile="$(IntDir)/$(InputName)1.obj"/>

+				</FileConfiguration>

+			</File>

+		</Filter>

+		<Filter

+			Name="Header Files"

+			Filter="h;hpp;hxx;hm;inl;inc;xsd"

+			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">

+			<File

+				RelativePath="..\..\..\src\chrtrans\caselower.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\entities.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\jcuken_kb.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\rot13_kb.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\UCkd.h">

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\yawerty_kb.h">

+			</File>

+		</Filter>

+		<Filter

+			Name="Resource Files"

+			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"

+			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}">

+		</Filter>

+	</Files>

+	<Globals>

+	</Globals>

+</VisualStudioProject>

diff --git a/BUILD/VS2005X/clean.bat b/BUILD/VS2005X/clean.bat
new file mode 100644
index 00000000..84d35a15
--- /dev/null
+++ b/BUILD/VS2005X/clean.bat
@@ -0,0 +1,31 @@
+@echo off

+@rem $LynxId: clean.bat,v 1.1 2007/06/30 14:16:07 tom Exp $

+@rem Remove all build-products in subdirectories, leaving only sources (and unrecognized types)

+

+del/f/s/q *.aps

+del/f/s/q *.bsc

+del/f/s/q *.dep

+del/f/s/q *.exe

+del/f/s/q *.exp

+del/f/s/q *.i

+del/f/s/q *.idb

+del/f/s/q *.ilk

+del/f/s/q *.lib

+del/f/s/q *.ncb

+del/f/s/q *.obj

+del/f/s/q *.opt

+del/f/s/q *.pch

+del/f/s/q *.pdb

+del/f/s/q *.plg

+del/f/s/q *.res

+del/f/s/q *.sbr

+del/f/s/q *.suo

+

+del/f/s/q *.manifest

+del/f/s/q *.user

+del/f/s/q BuildLog.htm

+

+attrib +r *.h /s

+attrib +r *.bat /s

+attrib +r *.sln /s

+attrib +r *.vcproj /s

diff --git a/BUILD/VS2005X/develop.bat b/BUILD/VS2005X/develop.bat
new file mode 100644
index 00000000..93509a64
--- /dev/null
+++ b/BUILD/VS2005X/develop.bat
@@ -0,0 +1,7 @@
+@echo off

+@rem $LynxId: develop.bat,v 1.2 2007/06/29 00:22:25 tom Exp $

+@rem ensure that all IDE files are writable

+

+attrib -r *.bat /s

+attrib -r *.sln /s

+attrib -r *.vcproj /s
\ No newline at end of file
diff --git a/BUILD/VS2005X/lynx/lynx.sln b/BUILD/VS2005X/lynx/lynx.sln
new file mode 100644
index 00000000..b4d9bc41
--- /dev/null
+++ b/BUILD/VS2005X/lynx/lynx.sln
@@ -0,0 +1,29 @@
+

+Microsoft Visual Studio Solution File, Format Version 9.00

+# Visual C++ Express 2005

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lynx", "lynx.vcproj", "{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}"

+	ProjectSection(ProjectDependencies) = postProject

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E} = {3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "makeuctb", "..\makeuctb\makeuctb.vcproj", "{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}"

+EndProject

+Global

+	GlobalSection(SolutionConfigurationPlatforms) = preSolution

+		Debug|Win32 = Debug|Win32

+		Release|Win32 = Release|Win32

+	EndGlobalSection

+	GlobalSection(ProjectConfigurationPlatforms) = postSolution

+		{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}.Debug|Win32.ActiveCfg = Debug|Win32

+		{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}.Debug|Win32.Build.0 = Debug|Win32

+		{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}.Release|Win32.ActiveCfg = Release|Win32

+		{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}.Release|Win32.Build.0 = Release|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Debug|Win32.ActiveCfg = Debug|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Debug|Win32.Build.0 = Debug|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Release|Win32.ActiveCfg = Release|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Release|Win32.Build.0 = Release|Win32

+	EndGlobalSection

+	GlobalSection(SolutionProperties) = preSolution

+		HideSolutionNode = FALSE

+	EndGlobalSection

+EndGlobal

diff --git a/BUILD/VS2005X/lynx/lynx.vcproj b/BUILD/VS2005X/lynx/lynx.vcproj
new file mode 100644
index 00000000..032e3b73
--- /dev/null
+++ b/BUILD/VS2005X/lynx/lynx.vcproj
@@ -0,0 +1,950 @@
+<?xml version="1.0" encoding="Windows-1252"?>

+<VisualStudioProject

+	ProjectType="Visual C++"

+	Version="8.00"

+	Name="lynx"

+	ProjectGUID="{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}"

+	RootNamespace="lynx"

+	Keyword="Win32Proj"

+	>

+	<Platforms>

+		<Platform

+			Name="Win32"

+		/>

+	</Platforms>

+	<ToolFiles>

+	</ToolFiles>

+	<Configurations>

+		<Configuration

+			Name="Debug|Win32"

+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"

+			IntermediateDirectory="$(ConfigurationName)"

+			ConfigurationType="1"

+			CharacterSet="1"

+			>

+			<Tool

+				Name="VCPreBuildEventTool"

+			/>

+			<Tool

+				Name="VCCustomBuildTool"

+			/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"

+			/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"

+			/>

+			<Tool

+				Name="VCMIDLTool"

+			/>

+			<Tool

+				Name="VCCLCompilerTool"

+				Optimization="0"

+				AdditionalIncludeDirectories="..\lynx;&quot;$(SolutionDir)..\..\..&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;;&quot;$(SolutionDir)..\..\..\WWW\Library\Implementation&quot;;&quot;$(SolutionDir)..\..\..\src&quot;;&quot;$(SolutionDir)..\..\..\src\chrtrans&quot;"

+				PreprocessorDefinitions="WIN32;_CONSOLE;HAVE_CONFIG_H;DONT_HAVE_TM_GMTOFF;_WIN_CC"

+				GeneratePreprocessedFile="0"

+				MinimalRebuild="true"

+				BasicRuntimeChecks="3"

+				RuntimeLibrary="3"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="true"

+				DebugInformationFormat="4"

+			/>

+			<Tool

+				Name="VCManagedResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCPreLinkEventTool"

+			/>

+			<Tool

+				Name="VCLinkerTool"

+				AdditionalDependencies="pdcurses.lib zlib.lib wsock32.lib user32.lib advapi32.lib"

+				LinkIncremental="2"

+				AdditionalLibraryDirectories="&quot;$(VcInstallDir)lib&quot;;&quot;$(SolutionDir)\lib&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;"

+				IgnoreDefaultLibraryNames="libc;libcmt"

+				GenerateDebugInformation="true"

+				SubSystem="1"

+				TargetMachine="1"

+			/>

+			<Tool

+				Name="VCALinkTool"

+			/>

+			<Tool

+				Name="VCManifestTool"

+			/>

+			<Tool

+				Name="VCXDCMakeTool"

+			/>

+			<Tool

+				Name="VCBscMakeTool"

+			/>

+			<Tool

+				Name="VCFxCopTool"

+			/>

+			<Tool

+				Name="VCAppVerifierTool"

+			/>

+			<Tool

+				Name="VCWebDeploymentTool"

+			/>

+			<Tool

+				Name="VCPostBuildEventTool"

+			/>

+		</Configuration>

+		<Configuration

+			Name="Release|Win32"

+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"

+			IntermediateDirectory="$(ConfigurationName)"

+			ConfigurationType="1"

+			CharacterSet="1"

+			WholeProgramOptimization="1"

+			>

+			<Tool

+				Name="VCPreBuildEventTool"

+			/>

+			<Tool

+				Name="VCCustomBuildTool"

+			/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"

+			/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"

+			/>

+			<Tool

+				Name="VCMIDLTool"

+			/>

+			<Tool

+				Name="VCCLCompilerTool"

+				AdditionalIncludeDirectories="..\lynx;&quot;$(SolutionDir)..\..\..&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;;&quot;$(SolutionDir)..\..\..\WWW\Library\Implementation&quot;;&quot;$(SolutionDir)..\..\..\src&quot;;&quot;$(SolutionDir)..\..\..\src\chrtrans&quot;"

+				PreprocessorDefinitions="WIN32;_CONSOLE;_MBCS;HAVE_CONFIG_H;DONT_HAVE_TM_GMTOFF;_WIN_CC"

+				RuntimeLibrary="2"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="true"

+				DebugInformationFormat="3"

+			/>

+			<Tool

+				Name="VCManagedResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCPreLinkEventTool"

+			/>

+			<Tool

+				Name="VCLinkerTool"

+				AdditionalDependencies="pdcurses.lib zlib.lib wsock32.lib user32.lib advapi32.lib"

+				LinkIncremental="1"

+				AdditionalLibraryDirectories="&quot;$(VcInstallDir)lib&quot;;&quot;$(SolutionDir)\lib&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;"

+				IgnoreDefaultLibraryNames="libc;libcmt"

+				GenerateDebugInformation="true"

+				SubSystem="1"

+				OptimizeReferences="2"

+				EnableCOMDATFolding="2"

+				TargetMachine="1"

+			/>

+			<Tool

+				Name="VCALinkTool"

+			/>

+			<Tool

+				Name="VCManifestTool"

+			/>

+			<Tool

+				Name="VCXDCMakeTool"

+			/>

+			<Tool

+				Name="VCBscMakeTool"

+			/>

+			<Tool

+				Name="VCFxCopTool"

+			/>

+			<Tool

+				Name="VCAppVerifierTool"

+			/>

+			<Tool

+				Name="VCWebDeploymentTool"

+			/>

+			<Tool

+				Name="VCPostBuildEventTool"

+			/>

+		</Configuration>

+	</Configurations>

+	<References>

+	</References>

+	<Files>

+		<Filter

+			Name="Source Files"

+			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"

+			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"

+			>

+			<File

+				RelativePath="..\..\..\src\DefaultStyle.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\lib\dirent.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\GridText.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAABrow.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAAProt.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAAUtil.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAccess.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTAlert.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAnchor.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAssoc.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAtom.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTBTree.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTChunk.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTDOS.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFile.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFinger.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFormat.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFTP.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTFWriter.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTGopher.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTGroup.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTInit.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTLex.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTList.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMIME.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTML.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMLDTD.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMLGen.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTNews.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTParse.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTPlain.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTRules.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTString.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTStyle.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTCP.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTelnet.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTP.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTUU.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTWSRC.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYBookmark.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCgi.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharSets.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharUtils.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYClean.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCookie.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCurses.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYDownload.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYEdit.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYEditmap.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYexit.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYExtern.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYForms.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGetFile.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHash.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHistory.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYJump.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYKeymap.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYLeaks.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYList.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYLocal.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMail.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMain.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMainLoop.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMap.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYmktime.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYNews.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYOptions.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrettySrc.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrint.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYrcFile.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYReadCFG.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSearch.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSession.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYShowInfo.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStrings.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStyle.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYTraversal.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUpload.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUtils.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\parsdate.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\SGML.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\TRSTable.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCAuto.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCAux.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCdomap.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\Xsystem.c"

+				>

+			</File>

+		</Filter>

+		<Filter

+			Name="Header Files"

+			Filter="h;hpp;hxx;hm;inl;inc;xsd"

+			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"

+			>

+			<File

+				RelativePath="..\..\..\src\AttrList.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\GridText.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAABrow.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAAProt.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAAUtil.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAccess.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTAlert.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAnchor.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAssoc.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAtom.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTBTree.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTChunk.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTCJK.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTDOS.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HText.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFile.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFinger.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTFont.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFormat.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTForms.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFTP.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFWriter.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTGopher.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTGroup.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTInit.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTioctl.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTLex.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTList.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMIME.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTML.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMLDTD.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMLGen.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTNestedList.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTNews.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTParse.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTPlain.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTRules.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTSaveToFile.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTStream.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTString.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTStyle.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTCP.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTelnet.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTP.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\htutils.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTUU.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTWSRC.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYBookmark.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCgi.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharSets.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharUtils.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharVals.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYClean.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCookie.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCurses.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYDownload.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYEdit.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\LYexit.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYExtern.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGCurses.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGetFile.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGlobalDefs.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHash.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHistory.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYJump.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYJustify.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYKeymap.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\LYLeaks.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYList.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYLocal.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMail.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMainLoop.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMap.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYNews.h"

+				>

+			</File>

+			<File

+				RelativePath=".\lynx_cfg.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYOptions.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrettySrc.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrint.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYrcFile.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYReadCFG.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSearch.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSession.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYShowInfo.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSignal.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStrings.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStructs.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStyle.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYTraversal.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUpload.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUtils.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYVMSdef.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\SGML.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\structdump.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\TRSTable.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCAuto.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\UCAux.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\UCDefs.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCdomap.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\UCMap.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\www_tcp.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\www_wait.h"

+				>

+			</File>

+		</Filter>

+		<Filter

+			Name="Resource Files"

+			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"

+			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"

+			>

+		</Filter>

+	</Files>

+	<Globals>

+	</Globals>

+</VisualStudioProject>

diff --git a/BUILD/VS2005X/lynx/lynx_cfg.h b/BUILD/VS2005X/lynx/lynx_cfg.h
new file mode 100644
index 00000000..7059d496
--- /dev/null
+++ b/BUILD/VS2005X/lynx/lynx_cfg.h
@@ -0,0 +1,70 @@
+// $LynxId: lynx_cfg.h,v 1.5 2011/05/28 13:07:55 tom Exp $
+// definitions abstracted from makefile.msc
+
+#ifndef LYNX_CFG_H
+#define LYNX_CFG_H 1
+
+#define __WIN32__
+#define _WINDOWS
+#define _WIN32_WINNT 0x0400
+#define WIN32_LEAN_AND_MEAN 1	// fixes redefinition of winsock2.h
+
+#define ACCESS_AUTH 1
+#define CJK_EX 1
+#define DIRED_SUPPORT 1
+#define DISP_PARTIAL 1
+#define DOSPATH 1
+#define USE_ALT_BINDINGS 1
+#define EXP_NESTED_TABLES 1
+#define HAVE_KEYPAD 1
+#define HAVE_PUTENV 1
+#define LONG_LIST 1
+#define NDEBUG 1
+#define NOSIGHUP 1
+#define NOUSERS 1
+#define NO_CONFIG_INFO 1
+#define NO_CUSERID 1
+#define NO_FILIO_H 1
+#define NO_TTYTYPE 1
+#define NO_UNISTD_H 1
+#define NO_UTMP 1
+#define OK_OVERRIDE 1
+#define SH_EX 1
+#define USE_CMD_LOGGING 1
+#define USE_EXTERNALS 1
+#define USE_FILE_UPLOAD 1
+#define USE_JUSTIFY_ELTS 1
+#define USE_MULTIBYTE_CURSES 1
+#define USE_PERSISTENT_COOKIES 1
+#define USE_PRETTYSRC 1
+#define USE_READPROGRESS 1
+#define USE_SCROLLBAR 1
+#define USE_SOURCE_CACHE 1
+#define USE_ZLIB 1
+#define WIN_EX 1
+
+// definitions to account for using this file (see HTUtils.h, userdefs.h)
+#define ANSI_VARARGS 1
+#define HAVE_GETCWD 1
+#define HAVE_STDARG_H 1
+#define HAVE_STDLIB_H 1
+#define LYNX_CFG_FILE "./lynx.cfg"
+#define UNDERLINE_LINKS FALSE
+#define socklen_t int
+
+// configuration choices
+#define PDCURSES 1
+#define USE_WINSOCK2_H 1
+
+#ifdef PDCURSES
+#define USE_COLOR_STYLE 1
+#define COLOR_CURSES 1
+#define FANCY_CURSES 1
+#endif
+
+#pragma warning (disable : 4244)	/* conversion from 'xxx' to 'yyy', possible loss of data */
+#pragma warning (disable : 4267)	/* conversion from 'xxx' to 'yyy', possible loss of data */
+#pragma warning (disable : 4311)	/* 'type cast': pointer truncation from 'xxx' to 'yyy' FIXME */
+#pragma warning (disable : 4996)	/* 'xxx': This function or variable may be unsafe. Consider using yyy instead. */
+
+#endif /* LYNX_CFG_H */
diff --git a/BUILD/VS2005X/makeuctb/makeuctb.sln b/BUILD/VS2005X/makeuctb/makeuctb.sln
new file mode 100644
index 00000000..ebcb3e28
--- /dev/null
+++ b/BUILD/VS2005X/makeuctb/makeuctb.sln
@@ -0,0 +1,20 @@
+

+Microsoft Visual Studio Solution File, Format Version 9.00

+# Visual C++ Express 2005

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "makeuctb", "makeuctb.vcproj", "{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}"

+EndProject

+Global

+	GlobalSection(SolutionConfigurationPlatforms) = preSolution

+		Debug|Win32 = Debug|Win32

+		Release|Win32 = Release|Win32

+	EndGlobalSection

+	GlobalSection(ProjectConfigurationPlatforms) = postSolution

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Debug|Win32.ActiveCfg = Debug|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Debug|Win32.Build.0 = Debug|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Release|Win32.ActiveCfg = Release|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Release|Win32.Build.0 = Release|Win32

+	EndGlobalSection

+	GlobalSection(SolutionProperties) = preSolution

+		HideSolutionNode = FALSE

+	EndGlobalSection

+EndGlobal

diff --git a/BUILD/VS2005X/makeuctb/makeuctb.vcproj b/BUILD/VS2005X/makeuctb/makeuctb.vcproj
new file mode 100644
index 00000000..fce60eb9
--- /dev/null
+++ b/BUILD/VS2005X/makeuctb/makeuctb.vcproj
@@ -0,0 +1,227 @@
+<?xml version="1.0" encoding="Windows-1252"?>

+<VisualStudioProject

+	ProjectType="Visual C++"

+	Version="8.00"

+	Name="makeuctb"

+	ProjectGUID="{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}"

+	RootNamespace="makeuctb"

+	Keyword="Win32Proj"

+	>

+	<Platforms>

+		<Platform

+			Name="Win32"

+		/>

+	</Platforms>

+	<ToolFiles>

+	</ToolFiles>

+	<Configurations>

+		<Configuration

+			Name="Debug|Win32"

+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"

+			IntermediateDirectory="$(ConfigurationName)"

+			ConfigurationType="1"

+			CharacterSet="1"

+			>

+			<Tool

+				Name="VCPreBuildEventTool"

+			/>

+			<Tool

+				Name="VCCustomBuildTool"

+				CommandLine="setlocal&#x0D;&#x0A;set MYDST=..\..\..\src\chrtrans&#x0D;&#x0A;copy $(TargetPath) %MYDST%&#x0D;&#x0A;cd %MYDST%&#x0D;&#x0A;call makehdrs&#x0D;&#x0A;endlocal"

+				Outputs="..\..\..\src\chrtrans\makeuctb.exe;..\..\..\src\chrtrans\def7_uni.h;..\..\..\src\chrtrans\cp1250_uni.h;..\..\..\src\chrtrans\cp1251_uni.h;..\..\..\src\chrtrans\cp1252_uni.h;..\..\..\src\chrtrans\cp1253_uni.h;..\..\..\src\chrtrans\cp1255_uni.h;..\..\..\src\chrtrans\cp1256_uni.h;..\..\..\src\chrtrans\cp1257_uni.h;..\..\..\src\chrtrans\cp437_uni.h;..\..\..\src\chrtrans\cp737_uni.h;..\..\..\src\chrtrans\cp775_uni.h;..\..\..\src\chrtrans\cp850_uni.h;..\..\..\src\chrtrans\cp852_uni.h;..\..\..\src\chrtrans\cp857_uni.h;..\..\..\src\chrtrans\cp862_uni.h;..\..\..\src\chrtrans\cp864_uni.h;..\..\..\src\chrtrans\cp866_uni.h;..\..\..\src\chrtrans\cp866u_uni.h;..\..\..\src\chrtrans\cp869_uni.h;..\..\..\src\chrtrans\dmcs_uni.h;..\..\..\src\chrtrans\hp_uni.h;..\..\..\src\chrtrans\iso01_uni.h;..\..\..\src\chrtrans\iso02_uni.h;..\..\..\src\chrtrans\iso03_uni.h;..\..\..\src\chrtrans\iso04_uni.h;..\..\..\src\chrtrans\iso05_uni.h;..\..\..\src\chrtrans\iso06_uni.h;..\..\..\src\chrtrans\iso07_uni.h;..\..\..\src\chrtrans\iso08_uni.h;..\..\..\src\chrtrans\iso09_uni.h;..\..\..\src\chrtrans\iso10_uni.h;..\..\..\src\chrtrans\iso13_uni.h;..\..\..\src\chrtrans\iso14_uni.h;..\..\..\src\chrtrans\iso15_uni.h;..\..\..\src\chrtrans\koi8r_uni.h;..\..\..\src\chrtrans\koi8u_uni.h;..\..\..\src\chrtrans\mac_uni.h;..\..\..\src\chrtrans\mnem2_suni.h;..\..\..\src\chrtrans\mnem_suni.h;..\..\..\src\chrtrans\next_uni.h;..\..\..\src\chrtrans\pt154_uni.h;..\..\..\src\chrtrans\rfc_suni.h;..\..\..\src\chrtrans\utf8_uni.h;..\..\..\src\chrtrans\viscii_uni.h"

+			/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"

+			/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"

+			/>

+			<Tool

+				Name="VCMIDLTool"

+			/>

+			<Tool

+				Name="VCCLCompilerTool"

+				Optimization="0"

+				AdditionalIncludeDirectories="..\lynx;&quot;$(SolutionDir)..\..\..&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;;&quot;$(SolutionDir)..\..\..\WWW\Library\Implementation&quot;;&quot;$(SolutionDir)..\..\..\src&quot;;&quot;$(SolutionDir)..\..\..\src\chrtrans&quot;"

+				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_MBCS;HAVE_CONFIG_H"

+				MinimalRebuild="true"

+				BasicRuntimeChecks="3"

+				RuntimeLibrary="3"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="true"

+				DebugInformationFormat="4"

+			/>

+			<Tool

+				Name="VCManagedResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCPreLinkEventTool"

+			/>

+			<Tool

+				Name="VCLinkerTool"

+				LinkIncremental="2"

+				GenerateDebugInformation="true"

+				SubSystem="1"

+				TargetMachine="1"

+			/>

+			<Tool

+				Name="VCALinkTool"

+			/>

+			<Tool

+				Name="VCManifestTool"

+			/>

+			<Tool

+				Name="VCXDCMakeTool"

+			/>

+			<Tool

+				Name="VCBscMakeTool"

+			/>

+			<Tool

+				Name="VCFxCopTool"

+			/>

+			<Tool

+				Name="VCAppVerifierTool"

+			/>

+			<Tool

+				Name="VCWebDeploymentTool"

+			/>

+			<Tool

+				Name="VCPostBuildEventTool"

+			/>

+		</Configuration>

+		<Configuration

+			Name="Release|Win32"

+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"

+			IntermediateDirectory="$(ConfigurationName)"

+			ConfigurationType="1"

+			CharacterSet="1"

+			WholeProgramOptimization="1"

+			>

+			<Tool

+				Name="VCPreBuildEventTool"

+			/>

+			<Tool

+				Name="VCCustomBuildTool"

+				CommandLine="setlocal&#x0D;&#x0A;set MYDST=..\..\..\src\chrtrans&#x0D;&#x0A;copy $(TargetPath) %MYDST%&#x0D;&#x0A;cd %MYDST%&#x0D;&#x0A;call makehdrs&#x0D;&#x0A;endlocal"

+				Outputs="..\..\..\src\chrtrans\makeuctb.exe;..\..\..\src\chrtrans\def7_uni.h;..\..\..\src\chrtrans\cp1250_uni.h;..\..\..\src\chrtrans\cp1251_uni.h;..\..\..\src\chrtrans\cp1252_uni.h;..\..\..\src\chrtrans\cp1253_uni.h;..\..\..\src\chrtrans\cp1255_uni.h;..\..\..\src\chrtrans\cp1256_uni.h;..\..\..\src\chrtrans\cp1257_uni.h;..\..\..\src\chrtrans\cp437_uni.h;..\..\..\src\chrtrans\cp737_uni.h;..\..\..\src\chrtrans\cp775_uni.h;..\..\..\src\chrtrans\cp850_uni.h;..\..\..\src\chrtrans\cp852_uni.h;..\..\..\src\chrtrans\cp857_uni.h;..\..\..\src\chrtrans\cp862_uni.h;..\..\..\src\chrtrans\cp864_uni.h;..\..\..\src\chrtrans\cp866_uni.h;..\..\..\src\chrtrans\cp866u_uni.h;..\..\..\src\chrtrans\cp869_uni.h;..\..\..\src\chrtrans\dmcs_uni.h;..\..\..\src\chrtrans\hp_uni.h;..\..\..\src\chrtrans\iso01_uni.h;..\..\..\src\chrtrans\iso02_uni.h;..\..\..\src\chrtrans\iso03_uni.h;..\..\..\src\chrtrans\iso04_uni.h;..\..\..\src\chrtrans\iso05_uni.h;..\..\..\src\chrtrans\iso06_uni.h;..\..\..\src\chrtrans\iso07_uni.h;..\..\..\src\chrtrans\iso08_uni.h;..\..\..\src\chrtrans\iso09_uni.h;..\..\..\src\chrtrans\iso10_uni.h;..\..\..\src\chrtrans\iso13_uni.h;..\..\..\src\chrtrans\iso14_uni.h;..\..\..\src\chrtrans\iso15_uni.h;..\..\..\src\chrtrans\koi8r_uni.h;..\..\..\src\chrtrans\koi8u_uni.h;..\..\..\src\chrtrans\mac_uni.h;..\..\..\src\chrtrans\mnem2_suni.h;..\..\..\src\chrtrans\mnem_suni.h;..\..\..\src\chrtrans\next_uni.h;..\..\..\src\chrtrans\pt154_uni.h;..\..\..\src\chrtrans\rfc_suni.h;..\..\..\src\chrtrans\utf8_uni.h;..\..\..\src\chrtrans\viscii_uni.h"

+			/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"

+			/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"

+			/>

+			<Tool

+				Name="VCMIDLTool"

+			/>

+			<Tool

+				Name="VCCLCompilerTool"

+				AdditionalIncludeDirectories="..\lynx;&quot;$(SolutionDir)..\..\..&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;;&quot;$(SolutionDir)..\..\..\WWW\Library\Implementation&quot;;&quot;$(SolutionDir)..\..\..\src&quot;;&quot;$(SolutionDir)..\..\..\src\chrtrans&quot;"

+				PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;HAVE_CONFIG_H"

+				RuntimeLibrary="2"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="true"

+				DebugInformationFormat="3"

+			/>

+			<Tool

+				Name="VCManagedResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCPreLinkEventTool"

+			/>

+			<Tool

+				Name="VCLinkerTool"

+				LinkIncremental="1"

+				GenerateDebugInformation="true"

+				SubSystem="1"

+				OptimizeReferences="2"

+				EnableCOMDATFolding="2"

+				TargetMachine="1"

+			/>

+			<Tool

+				Name="VCALinkTool"

+			/>

+			<Tool

+				Name="VCManifestTool"

+			/>

+			<Tool

+				Name="VCXDCMakeTool"

+			/>

+			<Tool

+				Name="VCBscMakeTool"

+			/>

+			<Tool

+				Name="VCFxCopTool"

+			/>

+			<Tool

+				Name="VCAppVerifierTool"

+			/>

+			<Tool

+				Name="VCWebDeploymentTool"

+			/>

+			<Tool

+				Name="VCPostBuildEventTool"

+			/>

+		</Configuration>

+	</Configurations>

+	<References>

+	</References>

+	<Files>

+		<Filter

+			Name="Source Files"

+			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"

+			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"

+			>

+			<File

+				RelativePath="..\..\..\src\chrtrans\makeuctb.c"

+				>

+			</File>

+		</Filter>

+		<Filter

+			Name="Header Files"

+			Filter="h;hpp;hxx;hm;inl;inc;xsd"

+			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"

+			>

+			<File

+				RelativePath="..\..\..\src\chrtrans\caselower.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\entities.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\jcuken_kb.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\rot13_kb.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\UCkd.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\yawerty_kb.h"

+				>

+			</File>

+		</Filter>

+		<Filter

+			Name="Resource Files"

+			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"

+			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"

+			>

+		</Filter>

+	</Files>

+	<Globals>

+	</Globals>

+</VisualStudioProject>

diff --git a/BUILD/VS2008X/clean.bat b/BUILD/VS2008X/clean.bat
new file mode 100644
index 00000000..84d35a15
--- /dev/null
+++ b/BUILD/VS2008X/clean.bat
@@ -0,0 +1,31 @@
+@echo off

+@rem $LynxId: clean.bat,v 1.1 2007/06/30 14:16:07 tom Exp $

+@rem Remove all build-products in subdirectories, leaving only sources (and unrecognized types)

+

+del/f/s/q *.aps

+del/f/s/q *.bsc

+del/f/s/q *.dep

+del/f/s/q *.exe

+del/f/s/q *.exp

+del/f/s/q *.i

+del/f/s/q *.idb

+del/f/s/q *.ilk

+del/f/s/q *.lib

+del/f/s/q *.ncb

+del/f/s/q *.obj

+del/f/s/q *.opt

+del/f/s/q *.pch

+del/f/s/q *.pdb

+del/f/s/q *.plg

+del/f/s/q *.res

+del/f/s/q *.sbr

+del/f/s/q *.suo

+

+del/f/s/q *.manifest

+del/f/s/q *.user

+del/f/s/q BuildLog.htm

+

+attrib +r *.h /s

+attrib +r *.bat /s

+attrib +r *.sln /s

+attrib +r *.vcproj /s

diff --git a/BUILD/VS2008X/develop.bat b/BUILD/VS2008X/develop.bat
new file mode 100644
index 00000000..93509a64
--- /dev/null
+++ b/BUILD/VS2008X/develop.bat
@@ -0,0 +1,7 @@
+@echo off

+@rem $LynxId: develop.bat,v 1.2 2007/06/29 00:22:25 tom Exp $

+@rem ensure that all IDE files are writable

+

+attrib -r *.bat /s

+attrib -r *.sln /s

+attrib -r *.vcproj /s
\ No newline at end of file
diff --git a/BUILD/VS2008X/lynx/lynx.sln b/BUILD/VS2008X/lynx/lynx.sln
new file mode 100644
index 00000000..b4d9bc41
--- /dev/null
+++ b/BUILD/VS2008X/lynx/lynx.sln
@@ -0,0 +1,29 @@
+

+Microsoft Visual Studio Solution File, Format Version 9.00

+# Visual C++ Express 2005

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lynx", "lynx.vcproj", "{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}"

+	ProjectSection(ProjectDependencies) = postProject

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E} = {3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "makeuctb", "..\makeuctb\makeuctb.vcproj", "{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}"

+EndProject

+Global

+	GlobalSection(SolutionConfigurationPlatforms) = preSolution

+		Debug|Win32 = Debug|Win32

+		Release|Win32 = Release|Win32

+	EndGlobalSection

+	GlobalSection(ProjectConfigurationPlatforms) = postSolution

+		{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}.Debug|Win32.ActiveCfg = Debug|Win32

+		{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}.Debug|Win32.Build.0 = Debug|Win32

+		{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}.Release|Win32.ActiveCfg = Release|Win32

+		{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}.Release|Win32.Build.0 = Release|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Debug|Win32.ActiveCfg = Debug|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Debug|Win32.Build.0 = Debug|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Release|Win32.ActiveCfg = Release|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Release|Win32.Build.0 = Release|Win32

+	EndGlobalSection

+	GlobalSection(SolutionProperties) = preSolution

+		HideSolutionNode = FALSE

+	EndGlobalSection

+EndGlobal

diff --git a/BUILD/VS2008X/lynx/lynx.vcproj b/BUILD/VS2008X/lynx/lynx.vcproj
new file mode 100644
index 00000000..032e3b73
--- /dev/null
+++ b/BUILD/VS2008X/lynx/lynx.vcproj
@@ -0,0 +1,950 @@
+<?xml version="1.0" encoding="Windows-1252"?>

+<VisualStudioProject

+	ProjectType="Visual C++"

+	Version="8.00"

+	Name="lynx"

+	ProjectGUID="{77B6BED2-257D-4F7D-AA1B-D180875BD3BF}"

+	RootNamespace="lynx"

+	Keyword="Win32Proj"

+	>

+	<Platforms>

+		<Platform

+			Name="Win32"

+		/>

+	</Platforms>

+	<ToolFiles>

+	</ToolFiles>

+	<Configurations>

+		<Configuration

+			Name="Debug|Win32"

+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"

+			IntermediateDirectory="$(ConfigurationName)"

+			ConfigurationType="1"

+			CharacterSet="1"

+			>

+			<Tool

+				Name="VCPreBuildEventTool"

+			/>

+			<Tool

+				Name="VCCustomBuildTool"

+			/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"

+			/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"

+			/>

+			<Tool

+				Name="VCMIDLTool"

+			/>

+			<Tool

+				Name="VCCLCompilerTool"

+				Optimization="0"

+				AdditionalIncludeDirectories="..\lynx;&quot;$(SolutionDir)..\..\..&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;;&quot;$(SolutionDir)..\..\..\WWW\Library\Implementation&quot;;&quot;$(SolutionDir)..\..\..\src&quot;;&quot;$(SolutionDir)..\..\..\src\chrtrans&quot;"

+				PreprocessorDefinitions="WIN32;_CONSOLE;HAVE_CONFIG_H;DONT_HAVE_TM_GMTOFF;_WIN_CC"

+				GeneratePreprocessedFile="0"

+				MinimalRebuild="true"

+				BasicRuntimeChecks="3"

+				RuntimeLibrary="3"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="true"

+				DebugInformationFormat="4"

+			/>

+			<Tool

+				Name="VCManagedResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCPreLinkEventTool"

+			/>

+			<Tool

+				Name="VCLinkerTool"

+				AdditionalDependencies="pdcurses.lib zlib.lib wsock32.lib user32.lib advapi32.lib"

+				LinkIncremental="2"

+				AdditionalLibraryDirectories="&quot;$(VcInstallDir)lib&quot;;&quot;$(SolutionDir)\lib&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;"

+				IgnoreDefaultLibraryNames="libc;libcmt"

+				GenerateDebugInformation="true"

+				SubSystem="1"

+				TargetMachine="1"

+			/>

+			<Tool

+				Name="VCALinkTool"

+			/>

+			<Tool

+				Name="VCManifestTool"

+			/>

+			<Tool

+				Name="VCXDCMakeTool"

+			/>

+			<Tool

+				Name="VCBscMakeTool"

+			/>

+			<Tool

+				Name="VCFxCopTool"

+			/>

+			<Tool

+				Name="VCAppVerifierTool"

+			/>

+			<Tool

+				Name="VCWebDeploymentTool"

+			/>

+			<Tool

+				Name="VCPostBuildEventTool"

+			/>

+		</Configuration>

+		<Configuration

+			Name="Release|Win32"

+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"

+			IntermediateDirectory="$(ConfigurationName)"

+			ConfigurationType="1"

+			CharacterSet="1"

+			WholeProgramOptimization="1"

+			>

+			<Tool

+				Name="VCPreBuildEventTool"

+			/>

+			<Tool

+				Name="VCCustomBuildTool"

+			/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"

+			/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"

+			/>

+			<Tool

+				Name="VCMIDLTool"

+			/>

+			<Tool

+				Name="VCCLCompilerTool"

+				AdditionalIncludeDirectories="..\lynx;&quot;$(SolutionDir)..\..\..&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;;&quot;$(SolutionDir)..\..\..\WWW\Library\Implementation&quot;;&quot;$(SolutionDir)..\..\..\src&quot;;&quot;$(SolutionDir)..\..\..\src\chrtrans&quot;"

+				PreprocessorDefinitions="WIN32;_CONSOLE;_MBCS;HAVE_CONFIG_H;DONT_HAVE_TM_GMTOFF;_WIN_CC"

+				RuntimeLibrary="2"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="true"

+				DebugInformationFormat="3"

+			/>

+			<Tool

+				Name="VCManagedResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCPreLinkEventTool"

+			/>

+			<Tool

+				Name="VCLinkerTool"

+				AdditionalDependencies="pdcurses.lib zlib.lib wsock32.lib user32.lib advapi32.lib"

+				LinkIncremental="1"

+				AdditionalLibraryDirectories="&quot;$(VcInstallDir)lib&quot;;&quot;$(SolutionDir)\lib&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;"

+				IgnoreDefaultLibraryNames="libc;libcmt"

+				GenerateDebugInformation="true"

+				SubSystem="1"

+				OptimizeReferences="2"

+				EnableCOMDATFolding="2"

+				TargetMachine="1"

+			/>

+			<Tool

+				Name="VCALinkTool"

+			/>

+			<Tool

+				Name="VCManifestTool"

+			/>

+			<Tool

+				Name="VCXDCMakeTool"

+			/>

+			<Tool

+				Name="VCBscMakeTool"

+			/>

+			<Tool

+				Name="VCFxCopTool"

+			/>

+			<Tool

+				Name="VCAppVerifierTool"

+			/>

+			<Tool

+				Name="VCWebDeploymentTool"

+			/>

+			<Tool

+				Name="VCPostBuildEventTool"

+			/>

+		</Configuration>

+	</Configurations>

+	<References>

+	</References>

+	<Files>

+		<Filter

+			Name="Source Files"

+			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"

+			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"

+			>

+			<File

+				RelativePath="..\..\..\src\DefaultStyle.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\lib\dirent.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\GridText.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAABrow.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAAProt.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAAUtil.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAccess.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTAlert.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAnchor.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAssoc.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAtom.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTBTree.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTChunk.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTDOS.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFile.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFinger.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFormat.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFTP.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTFWriter.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTGopher.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTGroup.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTInit.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTLex.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTList.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMIME.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTML.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMLDTD.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMLGen.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTNews.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTParse.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTPlain.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTRules.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTString.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTStyle.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTCP.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTelnet.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTP.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTUU.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTWSRC.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYBookmark.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCgi.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharSets.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharUtils.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYClean.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCookie.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCurses.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYDownload.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYEdit.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYEditmap.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYexit.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYExtern.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYForms.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGetFile.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHash.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHistory.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYJump.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYKeymap.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYLeaks.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYList.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYLocal.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMail.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMain.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMainLoop.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMap.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYmktime.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYNews.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYOptions.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrettySrc.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrint.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYrcFile.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYReadCFG.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSearch.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSession.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYShowInfo.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStrings.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStyle.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYTraversal.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUpload.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUtils.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\parsdate.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\SGML.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\TRSTable.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCAuto.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCAux.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCdomap.c"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\Xsystem.c"

+				>

+			</File>

+		</Filter>

+		<Filter

+			Name="Header Files"

+			Filter="h;hpp;hxx;hm;inl;inc;xsd"

+			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"

+			>

+			<File

+				RelativePath="..\..\..\src\AttrList.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\GridText.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAABrow.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAAProt.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAAUtil.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAccess.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTAlert.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAnchor.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAssoc.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTAtom.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTBTree.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTChunk.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTCJK.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTDOS.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HText.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFile.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFinger.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTFont.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFormat.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTForms.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFTP.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTFWriter.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTGopher.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTGroup.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTInit.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTioctl.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTLex.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTList.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMIME.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTML.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMLDTD.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTMLGen.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTNestedList.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTNews.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTParse.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTPlain.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTRules.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\HTSaveToFile.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTStream.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTString.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTStyle.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTCP.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTelnet.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTTP.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\htutils.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTUU.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\HTWSRC.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYBookmark.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCgi.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharSets.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharUtils.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCharVals.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYClean.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCookie.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYCurses.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYDownload.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYEdit.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\LYexit.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYExtern.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGCurses.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGetFile.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYGlobalDefs.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHash.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYHistory.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYJump.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYJustify.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYKeymap.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\LYLeaks.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYList.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYLocal.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMail.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMainLoop.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYMap.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYNews.h"

+				>

+			</File>

+			<File

+				RelativePath=".\lynx_cfg.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYOptions.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrettySrc.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYPrint.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYrcFile.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYReadCFG.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSearch.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSession.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYShowInfo.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYSignal.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStrings.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStructs.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYStyle.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYTraversal.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUpload.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYUtils.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\LYVMSdef.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\SGML.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\structdump.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\TRSTable.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCAuto.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\UCAux.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\UCDefs.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\UCdomap.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\UCMap.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\www_tcp.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\WWW\Library\Implementation\www_wait.h"

+				>

+			</File>

+		</Filter>

+		<Filter

+			Name="Resource Files"

+			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"

+			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"

+			>

+		</Filter>

+	</Files>

+	<Globals>

+	</Globals>

+</VisualStudioProject>

diff --git a/BUILD/VS2008X/lynx/lynx_cfg.h b/BUILD/VS2008X/lynx/lynx_cfg.h
new file mode 100644
index 00000000..7059d496
--- /dev/null
+++ b/BUILD/VS2008X/lynx/lynx_cfg.h
@@ -0,0 +1,70 @@
+// $LynxId: lynx_cfg.h,v 1.5 2011/05/28 13:07:55 tom Exp $
+// definitions abstracted from makefile.msc
+
+#ifndef LYNX_CFG_H
+#define LYNX_CFG_H 1
+
+#define __WIN32__
+#define _WINDOWS
+#define _WIN32_WINNT 0x0400
+#define WIN32_LEAN_AND_MEAN 1	// fixes redefinition of winsock2.h
+
+#define ACCESS_AUTH 1
+#define CJK_EX 1
+#define DIRED_SUPPORT 1
+#define DISP_PARTIAL 1
+#define DOSPATH 1
+#define USE_ALT_BINDINGS 1
+#define EXP_NESTED_TABLES 1
+#define HAVE_KEYPAD 1
+#define HAVE_PUTENV 1
+#define LONG_LIST 1
+#define NDEBUG 1
+#define NOSIGHUP 1
+#define NOUSERS 1
+#define NO_CONFIG_INFO 1
+#define NO_CUSERID 1
+#define NO_FILIO_H 1
+#define NO_TTYTYPE 1
+#define NO_UNISTD_H 1
+#define NO_UTMP 1
+#define OK_OVERRIDE 1
+#define SH_EX 1
+#define USE_CMD_LOGGING 1
+#define USE_EXTERNALS 1
+#define USE_FILE_UPLOAD 1
+#define USE_JUSTIFY_ELTS 1
+#define USE_MULTIBYTE_CURSES 1
+#define USE_PERSISTENT_COOKIES 1
+#define USE_PRETTYSRC 1
+#define USE_READPROGRESS 1
+#define USE_SCROLLBAR 1
+#define USE_SOURCE_CACHE 1
+#define USE_ZLIB 1
+#define WIN_EX 1
+
+// definitions to account for using this file (see HTUtils.h, userdefs.h)
+#define ANSI_VARARGS 1
+#define HAVE_GETCWD 1
+#define HAVE_STDARG_H 1
+#define HAVE_STDLIB_H 1
+#define LYNX_CFG_FILE "./lynx.cfg"
+#define UNDERLINE_LINKS FALSE
+#define socklen_t int
+
+// configuration choices
+#define PDCURSES 1
+#define USE_WINSOCK2_H 1
+
+#ifdef PDCURSES
+#define USE_COLOR_STYLE 1
+#define COLOR_CURSES 1
+#define FANCY_CURSES 1
+#endif
+
+#pragma warning (disable : 4244)	/* conversion from 'xxx' to 'yyy', possible loss of data */
+#pragma warning (disable : 4267)	/* conversion from 'xxx' to 'yyy', possible loss of data */
+#pragma warning (disable : 4311)	/* 'type cast': pointer truncation from 'xxx' to 'yyy' FIXME */
+#pragma warning (disable : 4996)	/* 'xxx': This function or variable may be unsafe. Consider using yyy instead. */
+
+#endif /* LYNX_CFG_H */
diff --git a/BUILD/VS2008X/makeuctb/makeuctb.sln b/BUILD/VS2008X/makeuctb/makeuctb.sln
new file mode 100644
index 00000000..ebcb3e28
--- /dev/null
+++ b/BUILD/VS2008X/makeuctb/makeuctb.sln
@@ -0,0 +1,20 @@
+

+Microsoft Visual Studio Solution File, Format Version 9.00

+# Visual C++ Express 2005

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "makeuctb", "makeuctb.vcproj", "{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}"

+EndProject

+Global

+	GlobalSection(SolutionConfigurationPlatforms) = preSolution

+		Debug|Win32 = Debug|Win32

+		Release|Win32 = Release|Win32

+	EndGlobalSection

+	GlobalSection(ProjectConfigurationPlatforms) = postSolution

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Debug|Win32.ActiveCfg = Debug|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Debug|Win32.Build.0 = Debug|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Release|Win32.ActiveCfg = Release|Win32

+		{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}.Release|Win32.Build.0 = Release|Win32

+	EndGlobalSection

+	GlobalSection(SolutionProperties) = preSolution

+		HideSolutionNode = FALSE

+	EndGlobalSection

+EndGlobal

diff --git a/BUILD/VS2008X/makeuctb/makeuctb.vcproj b/BUILD/VS2008X/makeuctb/makeuctb.vcproj
new file mode 100644
index 00000000..fce60eb9
--- /dev/null
+++ b/BUILD/VS2008X/makeuctb/makeuctb.vcproj
@@ -0,0 +1,227 @@
+<?xml version="1.0" encoding="Windows-1252"?>

+<VisualStudioProject

+	ProjectType="Visual C++"

+	Version="8.00"

+	Name="makeuctb"

+	ProjectGUID="{3EF8C45C-FC77-47B8-A5B6-5F9034ECE06E}"

+	RootNamespace="makeuctb"

+	Keyword="Win32Proj"

+	>

+	<Platforms>

+		<Platform

+			Name="Win32"

+		/>

+	</Platforms>

+	<ToolFiles>

+	</ToolFiles>

+	<Configurations>

+		<Configuration

+			Name="Debug|Win32"

+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"

+			IntermediateDirectory="$(ConfigurationName)"

+			ConfigurationType="1"

+			CharacterSet="1"

+			>

+			<Tool

+				Name="VCPreBuildEventTool"

+			/>

+			<Tool

+				Name="VCCustomBuildTool"

+				CommandLine="setlocal&#x0D;&#x0A;set MYDST=..\..\..\src\chrtrans&#x0D;&#x0A;copy $(TargetPath) %MYDST%&#x0D;&#x0A;cd %MYDST%&#x0D;&#x0A;call makehdrs&#x0D;&#x0A;endlocal"

+				Outputs="..\..\..\src\chrtrans\makeuctb.exe;..\..\..\src\chrtrans\def7_uni.h;..\..\..\src\chrtrans\cp1250_uni.h;..\..\..\src\chrtrans\cp1251_uni.h;..\..\..\src\chrtrans\cp1252_uni.h;..\..\..\src\chrtrans\cp1253_uni.h;..\..\..\src\chrtrans\cp1255_uni.h;..\..\..\src\chrtrans\cp1256_uni.h;..\..\..\src\chrtrans\cp1257_uni.h;..\..\..\src\chrtrans\cp437_uni.h;..\..\..\src\chrtrans\cp737_uni.h;..\..\..\src\chrtrans\cp775_uni.h;..\..\..\src\chrtrans\cp850_uni.h;..\..\..\src\chrtrans\cp852_uni.h;..\..\..\src\chrtrans\cp857_uni.h;..\..\..\src\chrtrans\cp862_uni.h;..\..\..\src\chrtrans\cp864_uni.h;..\..\..\src\chrtrans\cp866_uni.h;..\..\..\src\chrtrans\cp866u_uni.h;..\..\..\src\chrtrans\cp869_uni.h;..\..\..\src\chrtrans\dmcs_uni.h;..\..\..\src\chrtrans\hp_uni.h;..\..\..\src\chrtrans\iso01_uni.h;..\..\..\src\chrtrans\iso02_uni.h;..\..\..\src\chrtrans\iso03_uni.h;..\..\..\src\chrtrans\iso04_uni.h;..\..\..\src\chrtrans\iso05_uni.h;..\..\..\src\chrtrans\iso06_uni.h;..\..\..\src\chrtrans\iso07_uni.h;..\..\..\src\chrtrans\iso08_uni.h;..\..\..\src\chrtrans\iso09_uni.h;..\..\..\src\chrtrans\iso10_uni.h;..\..\..\src\chrtrans\iso13_uni.h;..\..\..\src\chrtrans\iso14_uni.h;..\..\..\src\chrtrans\iso15_uni.h;..\..\..\src\chrtrans\koi8r_uni.h;..\..\..\src\chrtrans\koi8u_uni.h;..\..\..\src\chrtrans\mac_uni.h;..\..\..\src\chrtrans\mnem2_suni.h;..\..\..\src\chrtrans\mnem_suni.h;..\..\..\src\chrtrans\next_uni.h;..\..\..\src\chrtrans\pt154_uni.h;..\..\..\src\chrtrans\rfc_suni.h;..\..\..\src\chrtrans\utf8_uni.h;..\..\..\src\chrtrans\viscii_uni.h"

+			/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"

+			/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"

+			/>

+			<Tool

+				Name="VCMIDLTool"

+			/>

+			<Tool

+				Name="VCCLCompilerTool"

+				Optimization="0"

+				AdditionalIncludeDirectories="..\lynx;&quot;$(SolutionDir)..\..\..&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;;&quot;$(SolutionDir)..\..\..\WWW\Library\Implementation&quot;;&quot;$(SolutionDir)..\..\..\src&quot;;&quot;$(SolutionDir)..\..\..\src\chrtrans&quot;"

+				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_MBCS;HAVE_CONFIG_H"

+				MinimalRebuild="true"

+				BasicRuntimeChecks="3"

+				RuntimeLibrary="3"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="true"

+				DebugInformationFormat="4"

+			/>

+			<Tool

+				Name="VCManagedResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCPreLinkEventTool"

+			/>

+			<Tool

+				Name="VCLinkerTool"

+				LinkIncremental="2"

+				GenerateDebugInformation="true"

+				SubSystem="1"

+				TargetMachine="1"

+			/>

+			<Tool

+				Name="VCALinkTool"

+			/>

+			<Tool

+				Name="VCManifestTool"

+			/>

+			<Tool

+				Name="VCXDCMakeTool"

+			/>

+			<Tool

+				Name="VCBscMakeTool"

+			/>

+			<Tool

+				Name="VCFxCopTool"

+			/>

+			<Tool

+				Name="VCAppVerifierTool"

+			/>

+			<Tool

+				Name="VCWebDeploymentTool"

+			/>

+			<Tool

+				Name="VCPostBuildEventTool"

+			/>

+		</Configuration>

+		<Configuration

+			Name="Release|Win32"

+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"

+			IntermediateDirectory="$(ConfigurationName)"

+			ConfigurationType="1"

+			CharacterSet="1"

+			WholeProgramOptimization="1"

+			>

+			<Tool

+				Name="VCPreBuildEventTool"

+			/>

+			<Tool

+				Name="VCCustomBuildTool"

+				CommandLine="setlocal&#x0D;&#x0A;set MYDST=..\..\..\src\chrtrans&#x0D;&#x0A;copy $(TargetPath) %MYDST%&#x0D;&#x0A;cd %MYDST%&#x0D;&#x0A;call makehdrs&#x0D;&#x0A;endlocal"

+				Outputs="..\..\..\src\chrtrans\makeuctb.exe;..\..\..\src\chrtrans\def7_uni.h;..\..\..\src\chrtrans\cp1250_uni.h;..\..\..\src\chrtrans\cp1251_uni.h;..\..\..\src\chrtrans\cp1252_uni.h;..\..\..\src\chrtrans\cp1253_uni.h;..\..\..\src\chrtrans\cp1255_uni.h;..\..\..\src\chrtrans\cp1256_uni.h;..\..\..\src\chrtrans\cp1257_uni.h;..\..\..\src\chrtrans\cp437_uni.h;..\..\..\src\chrtrans\cp737_uni.h;..\..\..\src\chrtrans\cp775_uni.h;..\..\..\src\chrtrans\cp850_uni.h;..\..\..\src\chrtrans\cp852_uni.h;..\..\..\src\chrtrans\cp857_uni.h;..\..\..\src\chrtrans\cp862_uni.h;..\..\..\src\chrtrans\cp864_uni.h;..\..\..\src\chrtrans\cp866_uni.h;..\..\..\src\chrtrans\cp866u_uni.h;..\..\..\src\chrtrans\cp869_uni.h;..\..\..\src\chrtrans\dmcs_uni.h;..\..\..\src\chrtrans\hp_uni.h;..\..\..\src\chrtrans\iso01_uni.h;..\..\..\src\chrtrans\iso02_uni.h;..\..\..\src\chrtrans\iso03_uni.h;..\..\..\src\chrtrans\iso04_uni.h;..\..\..\src\chrtrans\iso05_uni.h;..\..\..\src\chrtrans\iso06_uni.h;..\..\..\src\chrtrans\iso07_uni.h;..\..\..\src\chrtrans\iso08_uni.h;..\..\..\src\chrtrans\iso09_uni.h;..\..\..\src\chrtrans\iso10_uni.h;..\..\..\src\chrtrans\iso13_uni.h;..\..\..\src\chrtrans\iso14_uni.h;..\..\..\src\chrtrans\iso15_uni.h;..\..\..\src\chrtrans\koi8r_uni.h;..\..\..\src\chrtrans\koi8u_uni.h;..\..\..\src\chrtrans\mac_uni.h;..\..\..\src\chrtrans\mnem2_suni.h;..\..\..\src\chrtrans\mnem_suni.h;..\..\..\src\chrtrans\next_uni.h;..\..\..\src\chrtrans\pt154_uni.h;..\..\..\src\chrtrans\rfc_suni.h;..\..\..\src\chrtrans\utf8_uni.h;..\..\..\src\chrtrans\viscii_uni.h"

+			/>

+			<Tool

+				Name="VCXMLDataGeneratorTool"

+			/>

+			<Tool

+				Name="VCWebServiceProxyGeneratorTool"

+			/>

+			<Tool

+				Name="VCMIDLTool"

+			/>

+			<Tool

+				Name="VCCLCompilerTool"

+				AdditionalIncludeDirectories="..\lynx;&quot;$(SolutionDir)..\..\..&quot;;&quot;$(SolutionDir)..\..\..\lib&quot;;&quot;$(SolutionDir)..\..\..\WWW\Library\Implementation&quot;;&quot;$(SolutionDir)..\..\..\src&quot;;&quot;$(SolutionDir)..\..\..\src\chrtrans&quot;"

+				PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;HAVE_CONFIG_H"

+				RuntimeLibrary="2"

+				UsePrecompiledHeader="0"

+				WarningLevel="3"

+				Detect64BitPortabilityProblems="true"

+				DebugInformationFormat="3"

+			/>

+			<Tool

+				Name="VCManagedResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCResourceCompilerTool"

+			/>

+			<Tool

+				Name="VCPreLinkEventTool"

+			/>

+			<Tool

+				Name="VCLinkerTool"

+				LinkIncremental="1"

+				GenerateDebugInformation="true"

+				SubSystem="1"

+				OptimizeReferences="2"

+				EnableCOMDATFolding="2"

+				TargetMachine="1"

+			/>

+			<Tool

+				Name="VCALinkTool"

+			/>

+			<Tool

+				Name="VCManifestTool"

+			/>

+			<Tool

+				Name="VCXDCMakeTool"

+			/>

+			<Tool

+				Name="VCBscMakeTool"

+			/>

+			<Tool

+				Name="VCFxCopTool"

+			/>

+			<Tool

+				Name="VCAppVerifierTool"

+			/>

+			<Tool

+				Name="VCWebDeploymentTool"

+			/>

+			<Tool

+				Name="VCPostBuildEventTool"

+			/>

+		</Configuration>

+	</Configurations>

+	<References>

+	</References>

+	<Files>

+		<Filter

+			Name="Source Files"

+			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"

+			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"

+			>

+			<File

+				RelativePath="..\..\..\src\chrtrans\makeuctb.c"

+				>

+			</File>

+		</Filter>

+		<Filter

+			Name="Header Files"

+			Filter="h;hpp;hxx;hm;inl;inc;xsd"

+			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"

+			>

+			<File

+				RelativePath="..\..\..\src\chrtrans\caselower.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\entities.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\jcuken_kb.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\rot13_kb.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\UCkd.h"

+				>

+			</File>

+			<File

+				RelativePath="..\..\..\src\chrtrans\yawerty_kb.h"

+				>

+			</File>

+		</Filter>

+		<Filter

+			Name="Resource Files"

+			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"

+			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"

+			>

+		</Filter>

+	</Files>

+	<Globals>

+	</Globals>

+</VisualStudioProject>

diff --git a/BUILD/VS6/clean.bat b/BUILD/VS6/clean.bat
new file mode 100644
index 00000000..a4b12477
--- /dev/null
+++ b/BUILD/VS6/clean.bat
@@ -0,0 +1,27 @@
+@echo off

+@rem $LynxId: clean.bat,v 1.2 2007/07/01 21:52:45 tom Exp $

+@rem Remove all build-products in subdirectories, leaving only sources (and unrecognized types)

+

+del/f/s/q *.aps

+del/f/s/q *.bsc

+del/f/s/q *.exe

+del/f/s/q *.exp

+del/f/s/q *.idb

+del/f/s/q *.ilk

+del/f/s/q *.lib

+del/f/s/q *.ncb

+del/f/s/q *.obj

+del/f/s/q *.opt

+del/f/s/q *.pch

+del/f/s/q *.pdb

+del/f/s/q *.plg

+del/f/s/q *.res

+del/f/s/q *.sbr

+del/f/s/q *.suo

+

+del/f/s/q ne*.h

+del/f/s/q BuildLog.htm

+

+attrib +r *.bat /s

+attrib +r *.dsp /s

+attrib +r *.dsw /s

diff --git a/BUILD/VS6/develop.bat b/BUILD/VS6/develop.bat
new file mode 100644
index 00000000..8fdf38c2
--- /dev/null
+++ b/BUILD/VS6/develop.bat
@@ -0,0 +1,7 @@
+@echo off

+@rem $LynxId: develop.bat,v 1.2 2007/07/01 21:52:50 tom Exp $

+@rem ensure that all IDE files are writable

+

+attrib -r *.bat /s

+attrib -r *.dsp /s

+attrib -r *.dsw /s
\ No newline at end of file
diff --git a/BUILD/VS6/lynx/lynx.dsw b/BUILD/VS6/lynx/lynx.dsw
new file mode 100644
index 00000000..3ef547db
--- /dev/null
+++ b/BUILD/VS6/lynx/lynx.dsw
@@ -0,0 +1,44 @@
+Microsoft Developer Studio Workspace File, Format Version 6.00

+# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!

+

+###############################################################################

+

+Project: "lynx"=".\lynx\lynx.dsp" - Package Owner=<4>

+

+Package=<5>

+{{{

+}}}

+

+Package=<4>

+{{{

+    Begin Project Dependency

+    Project_Dep_Name makeuctb

+    End Project Dependency

+}}}

+

+###############################################################################

+

+Project: "makeuctb"=".\makeuctb\makeuctb.dsp" - Package Owner=<4>

+

+Package=<5>

+{{{

+}}}

+

+Package=<4>

+{{{

+}}}

+

+###############################################################################

+

+Global:

+

+Package=<5>

+{{{

+}}}

+

+Package=<3>

+{{{

+}}}

+

+###############################################################################

+

diff --git a/BUILD/VS6/lynx/lynx/lynx.dsp b/BUILD/VS6/lynx/lynx/lynx.dsp
new file mode 100644
index 00000000..b7f56f9e
--- /dev/null
+++ b/BUILD/VS6/lynx/lynx/lynx.dsp
@@ -0,0 +1,849 @@
+# Microsoft Developer Studio Project File - Name="lynx" - Package Owner=<4>

+# Microsoft Developer Studio Generated Build File, Format Version 6.00

+# ** DO NOT EDIT **

+

+# TARGTYPE "Win32 (x86) Console Application" 0x0103

+

+CFG=lynx - Win32 Debug

+!MESSAGE This is not a valid makefile. To build this project using NMAKE,

+!MESSAGE use the Export Makefile command and run

+!MESSAGE 

+!MESSAGE NMAKE /f "lynx.mak".

+!MESSAGE 

+!MESSAGE You can specify a configuration when running NMAKE

+!MESSAGE by defining the macro CFG on the command line. For example:

+!MESSAGE 

+!MESSAGE NMAKE /f "lynx.mak" CFG="lynx - Win32 Debug"

+!MESSAGE 

+!MESSAGE Possible choices for configuration are:

+!MESSAGE 

+!MESSAGE "lynx - Win32 Release" (based on "Win32 (x86) Console Application")

+!MESSAGE "lynx - Win32 Debug" (based on "Win32 (x86) Console Application")

+!MESSAGE 

+

+# Begin Project

+# PROP AllowPerConfigDependencies 0

+# PROP Scc_ProjName ""

+# PROP Scc_LocalPath ""

+CPP=cl.exe

+RSC=rc.exe

+

+!IF  "$(CFG)" == "lynx - Win32 Release"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 0

+# PROP BASE Output_Dir "Release"

+# PROP BASE Intermediate_Dir "Release"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 0

+# PROP Output_Dir "Release"

+# PROP Intermediate_Dir "Release"

+# PROP Target_Dir ""

+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c

+# ADD CPP /nologo /W3 /GX /O2 /I "..\..\..\..\src" /I "..\..\..\..\src\chrtrans" /I "..\..\..\..\WWW\Library\Implementation" /I "..\..\..\..\lib" /I "..\..\..\.." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "DOSPATH" /D "NO_UNISTD_H" /D "__WIN32__" /D "WIN_EX" /D "NOUSERS" /D "DIRED_SUPPORT" /D "DISP_PARTIAL" /D "DONT_HAVE_TM_GMTOFF" /D "HAVE_KEYPAD" /D "NOSIGHUP" /D "NO_TTYTYPE" /D "NO_UTMP" /D "SH_EX" /D "USE_EXTERNALS" /D "USE_FILE_UPLOAD" /D "USE_MULTIBYTE_CURSES" /D "USE_PERSISTENT_COOKIES" /D "USE_PRETTYSRC" /D "USE_READPROGRESS" /D "USE_SCROLLBAR" /D "USE_SOURCE_CACHE" /D "USE_ZLIB" /D "PDCURSES" /D "COLOR_CURSES" /D "FANCY_CURSES" /D "USE_COLOR_STYLE" /D "USE_WINSOCK2_H" /D _WIN32_WINNT=0x0400 /YX /FD /c

+# ADD BASE RSC /l 0x409 /d "NDEBUG"

+# ADD RSC /l 0x409 /d "NDEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LINK32=link.exe

+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386

+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib pdcurses.lib zlib.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"..\..\..\..\lib"

+

+!ELSEIF  "$(CFG)" == "lynx - Win32 Debug"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 1

+# PROP BASE Output_Dir "Debug"

+# PROP BASE Intermediate_Dir "Debug"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 1

+# PROP Output_Dir "Debug"

+# PROP Intermediate_Dir "Debug"

+# PROP Ignore_Export_Lib 0

+# PROP Target_Dir ""

+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c

+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\..\..\..\src" /I "..\..\..\..\src\chrtrans" /I "..\..\..\..\WWW\Library\Implementation" /I "..\..\..\..\lib" /I "..\..\..\.." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "DOSPATH" /D "NO_UNISTD_H" /D "__WIN32__" /D "WIN_EX" /D "NOUSERS" /D "DIRED_SUPPORT" /D "DISP_PARTIAL" /D "DONT_HAVE_TM_GMTOFF" /D "HAVE_KEYPAD" /D "NOSIGHUP" /D "NO_TTYTYPE" /D "NO_UTMP" /D "SH_EX" /D "USE_EXTERNALS" /D "USE_FILE_UPLOAD" /D "USE_MULTIBYTE_CURSES" /D "USE_PERSISTENT_COOKIES" /D "USE_PRETTYSRC" /D "USE_READPROGRESS" /D "USE_SCROLLBAR" /D "USE_SOURCE_CACHE" /D "USE_ZLIB" /D "PDCURSES" /D "COLOR_CURSES" /D "FANCY_CURSES" /D "USE_COLOR_STYLE" /D "USE_WINSOCK2_H" /D _WIN32_WINNT=0x0400 /YX /FD /GZ /c

+# ADD BASE RSC /l 0x409 /d "_DEBUG"

+# ADD RSC /l 0x409 /d "_DEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LINK32=link.exe

+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept

+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib pdcurses.lib zlib.lib /nologo /subsystem:console /debug /machine:I386 /nodefaultlib:"libc" /nodefaultlib:"libcmt" /pdbtype:sept /libpath:"..\..\..\..\lib"

+

+!ENDIF 

+

+# Begin Target

+

+# Name "lynx - Win32 Release"

+# Name "lynx - Win32 Debug"

+# Begin Group "Source Files"

+

+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"

+# Begin Source File

+

+SOURCE=..\..\..\..\src\DefaultStyle.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\lib\dirent.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\GridText.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAABrow.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAAProt.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAAUtil.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAccess.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTAlert.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAnchor.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAssoc.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAtom.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTBTree.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTChunk.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTDOS.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTFile.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTFinger.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTFormat.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTFTP.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTFWriter.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTGopher.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTGroup.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTInit.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTLex.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTList.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTMIME.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTML.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTMLDTD.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTMLGen.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTNews.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTParse.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTPlain.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTRules.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTString.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTStyle.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTTCP.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTTelnet.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTTP.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTUU.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTWSRC.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYBookmark.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCgi.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCharSets.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCharUtils.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYClean.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCookie.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCurses.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYDownload.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYEdit.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYEditmap.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYexit.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYExtern.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYForms.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYGetFile.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYHash.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYHistory.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYJump.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYKeymap.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYLeaks.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYList.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYLocal.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYMail.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYMain.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYMainLoop.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYMap.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYmktime.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYNews.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYOptions.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYPrettySrc.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYPrint.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYrcFile.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYReadCFG.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYSearch.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYShowInfo.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYStrings.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYStyle.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYTraversal.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYUpload.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYUtils.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\mktime.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\parsdate.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\SGML.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\strstr.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\TRSTable.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\UCAuto.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\UCAux.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\UCdomap.c

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\Xsystem.c

+# End Source File

+# End Group

+# Begin Group "Header Files"

+

+# PROP Default_Filter "h;hpp;hxx;hm;inl"

+# Begin Source File

+

+SOURCE=..\..\..\..\src\AttrList.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\GridText.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAABrow.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAAProt.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAAUtil.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAccess.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTAlert.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAnchor.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAssoc.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTAtom.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTBTree.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTChunk.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTCJK.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTDOS.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HText.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTFile.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTFinger.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTFont.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTFormat.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTForms.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTFTP.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTFWriter.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTGopher.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTGroup.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTInit.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTioctl.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTLex.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTList.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTMIME.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTML.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTMLDTD.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTMLGen.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTNestedList.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTNews.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTParse.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTPlain.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTRules.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\HTSaveToFile.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTStream.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTString.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTStyle.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTTCP.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTTelnet.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTTP.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\htutils.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTUU.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\HTWSRC.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYBookmark.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCgi.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCharSets.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCharUtils.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCharVals.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYClean.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCookie.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYCurses.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYDownload.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYEdit.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\LYexit.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYExtern.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYGCurses.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYGetFile.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYGlobalDefs.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYHash.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYHistory.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYJump.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYJustify.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYKeymap.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\LYLeaks.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYList.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYLocal.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYMail.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYMainLoop.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYMap.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\LYMessages_en.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYNews.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYOptions.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYPrettySrc.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYPrint.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYrcFile.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYReadCFG.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYSearch.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYShowInfo.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYSignal.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYStrings.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYStructs.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYStyle.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYTraversal.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYUpload.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYUtils.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\LYVMSdef.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\SGML.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\structdump.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\TRSTable.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\UCAuto.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\UCAux.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\UCDefs.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\UCdomap.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\UCMap.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\userdefs.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\www_tcp.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\WWW\Library\Implementation\www_wait.h

+# End Source File

+# End Group

+# Begin Group "Resource Files"

+

+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"

+# End Group

+# End Target

+# End Project

diff --git a/BUILD/VS6/lynx/lynx/lynx.dsw b/BUILD/VS6/lynx/lynx/lynx.dsw
new file mode 100644
index 00000000..6b6364f2
--- /dev/null
+++ b/BUILD/VS6/lynx/lynx/lynx.dsw
@@ -0,0 +1,29 @@
+Microsoft Developer Studio Workspace File, Format Version 6.00

+# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!

+

+###############################################################################

+

+Project: "lynx"=".\lynx.dsp" - Package Owner=<4>

+

+Package=<5>

+{{{

+}}}

+

+Package=<4>

+{{{

+}}}

+

+###############################################################################

+

+Global:

+

+Package=<5>

+{{{

+}}}

+

+Package=<3>

+{{{

+}}}

+

+###############################################################################

+

diff --git a/BUILD/VS6/lynx/makeuctb/makeuctb.dsp b/BUILD/VS6/lynx/makeuctb/makeuctb.dsp
new file mode 100644
index 00000000..1964c313
--- /dev/null
+++ b/BUILD/VS6/lynx/makeuctb/makeuctb.dsp
@@ -0,0 +1,420 @@
+# Microsoft Developer Studio Project File - Name="makeuctb" - Package Owner=<4>

+# Microsoft Developer Studio Generated Build File, Format Version 6.00

+# ** DO NOT EDIT **

+

+# TARGTYPE "Win32 (x86) Console Application" 0x0103

+

+CFG=makeuctb - Win32 Debug

+!MESSAGE This is not a valid makefile. To build this project using NMAKE,

+!MESSAGE use the Export Makefile command and run

+!MESSAGE 

+!MESSAGE NMAKE /f "makeuctb.mak".

+!MESSAGE 

+!MESSAGE You can specify a configuration when running NMAKE

+!MESSAGE by defining the macro CFG on the command line. For example:

+!MESSAGE 

+!MESSAGE NMAKE /f "makeuctb.mak" CFG="makeuctb - Win32 Debug"

+!MESSAGE 

+!MESSAGE Possible choices for configuration are:

+!MESSAGE 

+!MESSAGE "makeuctb - Win32 Release" (based on "Win32 (x86) Console Application")

+!MESSAGE "makeuctb - Win32 Debug" (based on "Win32 (x86) Console Application")

+!MESSAGE 

+

+# Begin Project

+# PROP AllowPerConfigDependencies 0

+# PROP Scc_ProjName ""

+# PROP Scc_LocalPath ""

+CPP=cl.exe

+RSC=rc.exe

+

+!IF  "$(CFG)" == "makeuctb - Win32 Release"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 0

+# PROP BASE Output_Dir "Release"

+# PROP BASE Intermediate_Dir "Release"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 0

+# PROP Output_Dir "Release"

+# PROP Intermediate_Dir "Release"

+# PROP Target_Dir ""

+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c

+# ADD CPP /nologo /W3 /GX /O2 /I "..\..\..\..\src" /I "..\..\..\..\src\chrtrans" /I "..\..\..\..\WWW\Library\Implementation" /I "..\..\..\..\lib" /I "..\..\..\.." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /D "__WIN32__" /D "NO_UNISTD_H" /D "_WINDOWS" /YX /FD /c

+# ADD BASE RSC /l 0x409 /d "NDEBUG"

+# ADD RSC /l 0x409 /d "NDEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LINK32=link.exe

+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386

+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386

+# Begin Custom Build

+InputPath=.\Release\makeuctb.exe

+SOURCE="$(InputPath)"

+

+BuildCmds= \

+	setlocal \

+	set MYDST=..\..\..\..\src\chrtrans \

+	copy $(InputPath) %MYDST% \

+	cd %MYDST% \

+	call makehdrs \

+	endlocal \

+	

+

+"..\..\..\..\src\chrtrans\makeuctb.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\def7_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1250_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1251_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1252_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1253_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1255_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1256_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1257_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp437_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp737_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp775_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp850_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp852_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp857_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp862_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp864_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp866_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp866u_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp869_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\dmcs_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\hp_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso01_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso02_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso03_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso04_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso05_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso06_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso07_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso08_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso09_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso10_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso13_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso14_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso15_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\koi8r_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\koi8u_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\mac_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\mnem2_suni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\mnem_suni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\next_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\pt154_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\rfc_suni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\utf8_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\viscii_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+# End Custom Build

+

+!ELSEIF  "$(CFG)" == "makeuctb - Win32 Debug"

+

+# PROP BASE Use_MFC 0

+# PROP BASE Use_Debug_Libraries 1

+# PROP BASE Output_Dir "Debug"

+# PROP BASE Intermediate_Dir "Debug"

+# PROP BASE Target_Dir ""

+# PROP Use_MFC 0

+# PROP Use_Debug_Libraries 1

+# PROP Output_Dir "Debug"

+# PROP Intermediate_Dir "Debug"

+# PROP Target_Dir ""

+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c

+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\..\..\..\src" /I "..\..\..\..\src\chrtrans" /I "..\..\..\..\WWW\Library\Implementation" /I "..\..\..\..\lib" /I "..\..\..\.." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "__WIN32__" /D "NO_UNISTD_H" /D "_WINDOWS" /YX /FD /GZ /c

+# ADD BASE RSC /l 0x409 /d "_DEBUG"

+# ADD RSC /l 0x409 /d "_DEBUG"

+BSC32=bscmake.exe

+# ADD BASE BSC32 /nologo

+# ADD BSC32 /nologo

+LINK32=link.exe

+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept

+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept

+# Begin Custom Build

+InputPath=.\Debug\makeuctb.exe

+SOURCE="$(InputPath)"

+

+BuildCmds= \

+	setlocal \

+	set MYDST=..\..\..\..\src\chrtrans \

+	copy $(InputPath) %MYDST% \

+	cd %MYDST% \

+	call makehdrs \

+	endlocal \

+	

+

+"..\..\..\..\src\chrtrans\makeuctb.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\def7_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1250_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1251_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1252_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1253_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1255_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1256_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp1257_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp437_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp737_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp775_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp850_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp852_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp857_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp862_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp864_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp866_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp866u_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\cp869_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\dmcs_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\hp_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso01_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso02_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso03_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso04_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso05_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso06_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso07_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso08_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso09_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso10_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso13_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso14_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\iso15_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\koi8r_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\koi8u_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\mac_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\mnem2_suni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\mnem_suni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\next_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\pt154_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\rfc_suni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\utf8_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+

+"..\..\..\..\src\chrtrans\viscii_uni.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"

+   $(BuildCmds)

+# End Custom Build

+

+!ENDIF 

+

+# Begin Target

+

+# Name "makeuctb - Win32 Release"

+# Name "makeuctb - Win32 Debug"

+# Begin Group "Source Files"

+

+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"

+# Begin Source File

+

+SOURCE=..\..\..\..\src\chrtrans\makeuctb.c

+# End Source File

+# End Group

+# Begin Group "Header Files"

+

+# PROP Default_Filter "h;hpp;hxx;hm;inl"

+# Begin Source File

+

+SOURCE=..\..\..\..\src\chrtrans\caselower.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\chrtrans\entities.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\chrtrans\jcuken_kb.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\chrtrans\rot13_kb.h

+# End Source File

+# Begin Source File

+

+SOURCE=..\..\..\..\src\chrtrans\UCkd.h

+# End Source File

+# Begin Source File

+

+SOURCE=....\..\..\src\chrtrans\yawerty_kb.h

+# End Source File

+# End Group

+# Begin Group "Resource Files"

+

+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"

+# End Group

+# End Target

+# End Project

diff --git a/CHANGES b/CHANGES
new file mode 100644
index 00000000..6df62485
--- /dev/null
+++ b/CHANGES
@@ -0,0 +1,9156 @@
+-- $LynxId: CHANGES,v 1.593 2012/02/20 01:34:18 tom Exp $
+===============================================================================
+Changes since Lynx 2.8 release
+===============================================================================
+
+2012-02-19 (2.8.8dev.11)
+* correct help-message for -html5_charset option -Kihara Hideto
+* correct a typo in strtol change from dev.10 which caused hexadecimal numeric
+  entities to be misrendered -TG
+* update eo.po, et.po and tr.po from
+    http://translationproject.org/latest/lynx
+* correct dll name for bzip2 in lynx.iss package script -TD
+
+2012-02-12 (2.8.8dev.10)
+* updated po/lynx.pot; there are a few new messages -TD
+* add "submit" and "reset" commands (Debian #603645) -TD
+* add "pwd" command, to show current working directory in the statusline -TD
+* modify check in HText_endForm() when a form contains only a single input
+  field, to allow a return in any text-like field other than textarea to cause
+  the form to be submitted (Debian #603648) -TD
+* add bzlib to win32 makefile.msc -TD
+* define WIN32_LEAN_AND_MEAN in makefile.msc to accommodate naming conflict
+  in recent Win32 SDKs, which otherwise include winsock.h in windows.h -TD
+* fixes for the dev.9 Win32 feature to toggle between normal/fullscreen,
+  by checking the actual screensize after maximizing the display -TD
+* use ASCII apostrophe for 7-bit approximation to U+02bd as well -TD
+* use ASCII apostrophe 0x27 for 7-bit approximation to Unicode apostrophe
+  U+02bc (suggested by Ralph Babel)
+* update LYLeaks.c / LYLeaks.h to include the bstring allocation, copy and free
+  functions -TD
+* several fixes for the -find-leaks option, e.g., include LYLeaks.h in a few
+  modules, modify the StrAllocVsprintf function to update the bookkeeping,
+  etc -TD
+* move call to LYCanWriteFile into LYValidateOutput, to make prompts for
+  download, print and upload more alike -TD
+* correct an old bug in send_file_to_file(), used when printing a page to a
+  file, which prevented its check for appending to an existing file -TD
+* modify LYValidateFilename to use LYTildeExpand -TD
+* modify LYConvertToURL to use LYTildeExpand for Unix, and further modify
+  LYTildeExpand to lookup given user's home directory, thereby making commands
+  such as "g ~root/tmp" work as expected -TD
+* replaced most LYgetStr calls with LYgetBString, except for LYMail.c and
+  LYNews.c since those do use LYgetStr's limits as it was designed.  Other
+  calls generally did not need those limits -TD
+* modify finish_ExtEditForm to eliminate wrapping when an edited line is longer
+  than MAX_LINE.  The user is still offered the choice of wrapping to the
+  displayed size of a TEXTAREA, but if declined, the TEXTAREA's content will
+  not be wrapped -TD
+* modify LYgetstr, making it call revised function LYgetBString which handles
+  bstring's, and allows editing fields which can grow without fixed buffer
+  limits.  In particular, forms all use the same calls, which means that
+  their result is no longer limited by MAX_LINE -TD
+* extend ^X-e editing of textarea's to include single-line fields -TD
+* modify comparison for splitting lines to allow for long preformatted lines,
+  e.g., using &nbsp;'s to not wrap when the line-wrap mode is disabled -TD
+* modify cfg2html.pl to handle options which contain a digit, e.g.,
+  HTML5_CHARSETS whose default value was not marked properly -TD
+* modify HTLoadDocument() to not retain a cached document if user is explicitly
+  doing a refresh.  This fixes the case for a #fragment url, which was
+  otherwise treated as the same as the address without the #fragment -TD
+* clarify version of GPL used in README (request by Paul Menzel) -TD
+* modify HTLoad() to discard charset information before reloading a document,
+  in case the server changes the content-type information between loads
+  (report by Stanislav Brabec) -TD
+* use tidy to indent html documentation -TD
+* provide a way to substitute parameters in URLs for jumpfiles (adapted from
+  patch by Mark Skilbeck -TD
+* ensure that button/input tags have a value for display, in case the tag is
+  improperly terminated (report by Aki Helin) -TD
+* work around glibc bug in sscanf in SGML_character() using strtol() (report by
+  Aki Helin) -TD
+* add check for charset attribute on meta element -Kihara Hideto
+* eliminate ON/OFF macros, using TRUE/FALSE both to work around breakage from
+  zlib 1.2.5.1 changes as well as because they were unnecessary (GenToo
+  #383113) -Nikos Chantziaras, TD
+* updated several configure script macros (TD):
+  CF_ANSI_CC_CHECK, CF_CURSES_LIBS, CF_LD_RPATH_OPT, CF_NETLIBS,
+  CF_XOPEN_SOURCE, CF_X_ATHENA_LIBS
+
+2011-06-12 (2.8.8dev.9)
+* modfy cfg2html to add ".url" directive for referencing RFC's etc -TD
+* document blat/blatj usage in lynx.cfg -TD
+* add/use WriteStreamTitle(), to provide doctype for cookie-jar page, used to
+  help validate the page -TD
+* improve readability of cookie-jar page by showing the unescaped cookie
+  values, other minor formatting changes -TD
+* modify cookie domain-matching to accommodate RFC 6265, which states that a
+  leading dot on a domain attribute should be discarded (report by Sebastien
+  Hinderer) -TD
+* integrate most of the changes from patch in 2.8.6rel.4 package at
+	http://en.sourceforge.jp/project/lynx-win32-pata -TH, TD
+  + provide toggle between normal/fullscreen
+  + ifdef'd changes for FEP.
+  + correct a message translation in ja.po
+  + modify Xsystem.c to not use MinGW's system() call.
+  + add three items to lynx.cfg
+	conv_jisx0201kana
+	message_language
+	wait_viewer_termination
+  + replace ifdef's for CONV_JISX0201KANA_JISX0208KANA with configuration
+    variable conv_jisx0201kana
+  + modify makefile.bcb and lynx.rsp to use openssl and intl libraries.
+  + add feature ifdef'd with USE_PROGRAM_DIR which adds fallback definitions
+    for pathnames to use the directory of lynx.exe
+  + add check for unsafe filenames in DOS/Windows, e.g., those that correspond
+    to a device.
+* update command-line syntax for the blat mailer, to work with blat 2.6.2 -TD
+* change default in makelynx.bat to assume blat rather than blatj, because
+  the latter does not provide a way to authenticate user/password on a mail
+  server -TD
+* change #define's for addrlist-page and alt-bindings to reflect their
+  non-experimental status -TD
+* change default for --enable-addrlist-page configure option to enabled -TD
+* modify blat/blatj configuration so that support for both is compiled-in
+  for DOSPATH configurations.  Add "-altblat" option to select blat vs blatj.
+  Define USE_ALT_BLAT_MAILER to specify which is the default (prompted by
+  report by LarryL) -TD
+* correct an interaction between LYCloseOutput() and LYRemoveTemp() as used in
+  send_file_to_mail(), to allow a temporary file to be closed and used by
+  external program before removing it -TD
+* modify lkcstring_to_lkc() to accept hex/octal values, allowing those in the
+  KEYMAP configuration as suggested by the commented lines in lynx.cfg (report
+  by Richie Wood) -TD
+* build-fix for DEC C 5.x with _DECC_V4_SOURCE defined, i.e., missing
+  declaration of "off_t" (report/analysis by Rod Reiger) -TD
+* build-fixes for Alpha VMS V8.3 with C V7.1-015, based on lynx 2.8.7
+  development snapshot (report/analysis by Scott Harrod) -TD
+* improve scripts/tbl2html.pl, to handle translation of octal escapes in the
+  approximation comments -TD
+* amend implementation of "readonly" attribute from 2.8.7dev.10 to distinguish
+  it from "disabled" (report by David Paschal) -TD
+* amend change to cookie prefix matching from Debian #460108.  The discussion
+  overlooked this definition from RFC 2109:
+   Path   Defaults to the path of the request URL that generated the
+          Set-Cookie response, up to, but not including, the
+          right-most /.
+  In that context, lynx was correct to extract the default "path" attribute
+  of
+    http://jukebox/cgi-bin/disorder
+  as
+    /cgi-bin
+  rather than
+    /cgi-bin/disorder
+  as asserted in the report.  However, lynx warned unnecessarily (according to
+  the bug report) about the given path attribute.  Deciding whether to suppress
+  this warning is under control of the user via the lynx.cfg setting
+  COOKIE_QUERY_INVALID_DOMAINS since 2.8.2dev.16 (report by Owen Leibman) -TD
+* add eo.po (Esperanto) from
+    http://translationproject.org/latest/lynx
+* modify format of ADVANCED_COOKIE_CONFIRMATION message in nl.po per guideline
+  to allow localized single-letter responses to prompt (report by Jurgen
+  Gaeremy) -TD
+* add configure check for <bsd/random.h>, used in Debian package -TD
+* modify src/tidy_tls.c to use gnutls_priority_set_direct() in preference to
+  various access functions, to eliminate deprecation warnings (report by
+  Andreas Metzler) -TD
+* updated several configure script macros (TD):
+  CF_CURSES_CPPFLAGS, CF_CURSES_FUNCS, CF_CURSES_HEADER, CF_CURSES_LIBS,
+  CF_CURSES_TERM_H, CF_DISABLE_RPATH_HACK, CF_PDCURSES_X11, CF_PKG_CONFIG,
+  CF_RPATH_HACK, CF_STRUCT_TERMIOS, CF_XOPEN_CURSES, CF_XOPEN_SOURCE,
+  CF_X_ATHENA_LIBS
+* update config.guess (2011-01-01), config.sub (2011-04-01)
+
+2011-01-10 (2.8.8dev.8)
+* correct sense of menu-name parameter in add_item_to_list() from dev.7
+  changes (report by Larry Hart) -TD
+* remove duplicate copy of CF_TRY_PKG_CONFIG added to aclocal.m4 in 2.8.8dev.4,
+  which caused autoconf-2.13 to emit weird error messages about undefined
+  symbols (report by TG) -TD
+
+2010-12-11 (2.8.8dev.7)
+* add PERSONAL_MAIL_NAME to options menu and .lynxrc (Debian #603647) -TD
+* remind user how to cancel message (Debian #292787) -TD
+* add HTML5_CHARSETS feature, which allows the user to choose whether to
+  interpret pages without an explicit charset according to the HTML5
+  "compatibility" feature (Debian #604466, #514897) -TD
+* add EXTERNAL_MENU feature to lynx.cfg, which allows the user to customize the
+  menu-entry shown, e.g., to suppress the display of the URL
+  (Debian #603646) -TD
+* cleanup URLs in lynx documentation -DK
+* add check in getfile() when handling a "mailto:" url, to prevent it when the
+  user has requested a dump (Debian #563308) -TD
+* improve configure check for IDNA library, which may depend upon intllib,
+  e.g., building with mingw on cygwin -DK
+* modify autoconf macros which look for X libraries, e.g., for PDCurses, to
+  accommodate ongoing changes in xorg package scripts -TD
+* reorganize autoconf macro CF_WITH_CURSES_DIR, to make it usable for both
+  curses and ncurses -TD
+* several changes to autoconf macros to lessen use of legacy shell feature
+  "${name-value}" in favor of "${name:-value}", since the former is broken in
+  recent versions of bash -TD
+* apply overlooked patch from pre-2.8.5, makes RMDIR_PATH configurable
+  (report/patch by Frank Heckenbach).
+* correct one of the places where link-number is formatted, for form input
+  anchors.  This was broken in dev.6 by the -unique_urls changes (report by
+  DK) -TD
+* undo a cleanup change to link-types from dev.6 which broke some uses of
+  input-anchors (report by FLWM) -TD
+* minor formatting improvements to sources using cindent 2.0-20101107 -TD
+* restore \r to \n conversion in HTML_put_character(), broken in gcc warning
+  cleanup (report by FLWM) -TD
+* fix a double-free in make_argv() (report by FLWM) -TD
+* add a memset in RestoreSession(), fixes uninitialized memory reference for
+  the VLINK section -PBM
+* update config.guess (2010-09-24), config.sub (2010-09-11)
+
+2010-10-04 (2.8.8dev.6)
+* amend change for Debian #514897 to exclude XML documents (Debian #592883) -TD
+* use HTParsePort() in a few places, e.g., HTFinger.c, to allow for IPv6
+  addresses with colons (Debian #587330) -TD
+* modify option -dump so it is parsed in the first pass, using that to suppress
+  requirement for lss file if lynx is used only to dump output -TD
+* add option -unique-urls (Debian #586762) -TD
+* fix most gcc type-conversion warnings -TD
+* add configure check for ctags/etags programs, needed for some BSD ports -TD
+* add configure --with-textdomain option to allow overriding the "lynx"
+  NLS textdomain, to help ensure that Lynx's build-script does not conflict
+  with alternative packages -TD
+* use AC_ARG_PROGRAM in configure script, to support --program-suffix, etc.,
+  to help with packaging -TD
+* add Debian build script, for testing (adapted from lynx-cur package) -TD
+* add RPM build script, for testing -TD
+
+2010-08-25 (2.8.8dev.5)
+* modify convert_to_idna() to check for malformed urls (Debian #594300 reports
+  this as CVE-2010-2810) -TD
+* correct typo in po/makefile.inn from removal of mkdirs.sh in dev.4 (Debian
+  #592078) -TD
+* correct a sign-extension error in UpdateBoundary(), used for MIME boundary
+  computation, broken in dev.4 compiler-warning fixes -TD
+
+2010-06-21 (2.8.8dev.4)
+* check for SSL error when reading response from "GET".  This incidentally
+  exposes a longstanding bug in GNUTLS:
+    https://savannah.gnu.org/support/index.php?106987
+  (google the message "A TLS packet with unexpected length was received")
+  which prevents connection to
+    https://www.mynortonaccount.com/amsweb/default.do
+  (report by Ignac Vucko) -TD
+* fix ifdef/define's in LYMain.c to show GNUTLS version in user-agent when
+  built with tidy_tls.c -TD
+* improve format of X509_NAME_oneline() in tidy_tls.c, making it compatible
+  with the OpenSSL function so that no post-processing is needed -TD
+* correct typo in configure --enable-gnutls-compat option, which sometimes made
+  it enabled as a side-effect of setting --with-gnutls -TD
+* add configure option --enable-wais, for test-compiles with freeWAIS -TD
+* fixes to build with VMS -Christoph J Gartmann
+  + created [.src]multinet_ucx.opt with a single line
+    multinet_root:[multinet.library]ucx$ipc/LIBRARY
+  + modified build.com to have an additional option "Multinet with
+    UCX emulation"
+  + modified libmake.com for the same reason
+  + modified [.www.library.implementation]www_tcp.h for the same reason
+  + provide definition of IS_CJK_TTY for HTWAIS.c by adding include of
+    LYStrings.h
+* fix typo in users's guide -PBM
+* drop mkdirs.sh and MKINSTALLDIRS symbol from makefiles, using "mkdir -p" -TD
+* limit parsed URIs with new config parameter MAX_URI_SIZE, default 8192
+  (RedHat #605286, forwarded by Vincent Danen). For arbitrarily long URIs,
+  alloca() could run out of stack space -TD
+* several changes to configure script, from ongoing work on xterm, etc -TD
+  + workaround for broken ".pc" file for X Toolkit, which omits the ICE
+    library.
+  + modify CF_NCURSES_CONFIG to use CF_CURSES_HEADER to pick out the particular
+    flavor of ncurses.h, e.g., <ncursesw/curses.h>
+  + add parameter to CF_CURSES_HEADER to allow looking for specific
+    subdirectory ncurses/ncursesw/etc + restructured CF_X_ATHENA to use
+    pkg-config, if available.
+  + use CF_ADD_LIB/CF_ADD_LIBS
+  + CF_GNUTLS eliminates duplicate libraries when configuring with pkg-config
+  + modified several macros to quote params of ifelse()
+  + CF_AR_FLAGS allows $ARFLAGS to override the choice of ar-flags, in
+    particular check if a given choice is part of the current $ARFLAGS
+  + workaround CF_XOPEN_CURSES for (temporary) problem with ncurses headers,
+    which did not account for the fact that _XOPEN_SOURCE_EXTENDED may be
+    defined in a system header.
+* remove redundant updates for CFLAGS and LIBS in configure script which are
+  now done in CF_FIND_LINKAGE macro -TD
+* fix a problem with configure script which broke "--with-gnutls=/usr" (report
+  by Atsuhito Kohda) -TD
+* resolve warnings from "clang --analyze", tested with Fedora 12 and clang
+  2.6-0.5.pre1.fc12, 2.7-1.fc12 -TD
+* further improvements to print_wwwfile_to_fd() -TD
+  + corrected length used for radio/checkboxes.
+  + fill in wrapped fields.
+
+2010-04-25 (2.8.8dev.3)
+* modify print_wwwfile_to_fd() to add field values to the printed form (Debian
+  #574940) -TD
+* add check for magic (header bytes) before trying to decompress, since zlib
+  does not provide this check (Redhat #503921) -TD
+* add workaround in CF_SSL configure macro for broken openssl pkg-config script
+  on Redhat, CentOS -TD
+* add configure option --disable-rpath-hack -TD
+* allow IPv6 addresses without "http://" prefix (Redhat #425879, patch by Kamil
+  Dudka)
+* build-fixes for OpenSolaris aka Solaris 11 -TD
+* add/use CF_RPATH_HACK, for constructing rpath references to libraries in
+  nonstandard locations -TD
+* improve configure macros CF_CURSES_TERM_H and CF_FIND_LINKAGE -TD
+* add synopsis entries for -get_data and -post_data options to lynx.man
+  (report by Dallas E. Legan II) -TD
+* fix a possible conflict between CF_HEADER_PATH and CF_LIBRARY_PATH by setting
+  their respective target variables, not appending -TD
+* improve configure macro CF_XOPEN_SOURCE by removing rather than undefining
+  preexisting symbols as they are added to the definitions -TD
+* add configure check for -lnetwork, from tin -TD
+* when renaming/copying a bookmark file, e.g., to delete a bookmark, modify
+  its permissions for compatibility with IsOurFile() (Redhat #486070) -TD
+* fix most gcc writable-strings warnings -TD
+* update config.guess (2009-12-30), config.sub (2009-12-31)
+
+2009-11-25 (2.8.8dev.2)
+* modify trimming of URI in LYSetCookie() to eliminate trimming of final leaf
+  (Debian #460108) -TD
+* document the various xxx_PATH settings in lynx.cfg -TD
+* modify cfg2html.pl to improve formatting of cattoc.html -TD
+* split-up top-level makefile install-html rule to allow generating the
+  htmlized cfg without doing an install -TD
+* suppress positioning for editor when using it to edit files via dired -TD
+* modify samples/lynx-demo.cfg to suppress external file-utilities, since the
+  intent is to make the installer work standalone, but allow extension -TD
+* add traces for builtin dired operations -TD
+* modify built-in "touch" for dired to use binary mode when opening file -TD
+* remove check from 2.8.5dev.11 which prevents user from moving a directory in
+  dired unless the external program "mv" is provided -TD
+* regularize use of isEmpty(), non_empty() -BL
+* match built-in "positionable" editor names more liberally -BL
+* promote some experimental options to normal, tidy up related EXP_xxx vs
+  USE_xxx symbols -TD
+  EXP_ASCII_CTYPES is now USE_ASCII_CTYPES
+  EXP_JUSTIFY_ELTS is now USE_JUSTIFY_ELTS 
+  EXP_CHARSET_CHOICE is now USE_CHARSET_CHOICE
+  The scrollbar, progressbar, sessions and session-cache options are now
+  enabled by default.
+* modify scanning in HTRules.c to only trim comments where '#' is either at
+  the beginning of a line, or follows whitespace (patch by Kihara Hideto).
+* correct a place where LYStrExtent2 was used where byte-count is needed
+  (patch by Bake Timmons).
+* modify LYExecv() in LYLocal.c to allow win32 applications to use this
+  function -TD
+* modify ok_stat() in LYLocal.c to retry with "." appended when the path syntax
+  indicates that it is probably a directory name -TD
+* fix an old typo in configure macro CF_CHECK_FUNCDECL -TD
+* change library dependency for gnutls from crypt to gcrypt, originally in
+  2.8.5dev.15 (Debian #555579) -TD
+* update de.po from
+    http://translationproject.org/latest/lynx
+* fix some tidy- and linklint-warnings in help-files -TD
+* amend change from 2.8.7dev.14 to not use clrscr() function in stop_curses()
+  if using PDCurses, since clrscr() is not in the win32 api -TD
+* modify configure script to check if linkage for bzlib and zlib succeeded,
+  before defining symbol which makes the compiler uses these libraries -TD
+* update lynx_help_main.html to point to "release/lynx2-8-7" documentation -TD
+
+2009-08-28 (2.8.8dev.1)
+* add <sys/types.h> include in socklen_t configure check (from OpenBSD CVS)
+* eliminate UCPutUtf8ToBuffer() - redundant -TD
+* use memset's to simplify some initialization in HTML.c, extending a change
+  made in 2.8.7dev.10 (prompted by issue in OpenBSD) -TD 
+* add optional support for IDNA using GNU libidn (Debian #352596) -TD
+* ignore LEFT-TO-RIGHT-MARK (U+200E) in HTML files (Debian #408835) -TD
+* correct check for return-value from gnutls_certificate_verify_peers2(), which
+  in conjunction with unclean internals of gnutls caused caused some sites to
+  be treated as if they were version-1 X.509 CAs (Debian #231609,
+  Ubuntu 293708) -TD
+* revise dired-mode's modify_tagged() function, correcting and extending the
+  source-paths to validate against the target path.  Before, lynx's current
+  working directory was used to validate against target path, i.e., when moving
+  all tagged files to a new location.  Lynx's check to ensure that
+  source/target paths are distinct prevented users from moving tagged files to
+  the current directory (report by Jasper) -TD
+* change compiled-in default for SYSLOG_REQUESTED_URLS to false (prompted by
+  Debian #537907) -TD
+* adjust ifdef in change_sug_filename() so that paths containing square
+  brackets are trimmed on VMS only (report by Gaute Strokkenes) -TD
+* amend change to ifdef in LYMain.c (from 2.8.7dev.14), since it prevents build
+  on NetBSD, whose libintl.h does not include locale.h (report by Thomas
+  Klausner) -TD
+* modify configure macro CF_GCC_ATTRIBUTES to make it more self-contained -TD
+* improve configure check for _XOPEN_SOURCE for HPUX 11 to ensure mbstate_t is
+  declared -TD
+* update config.guess (2009-08-19), config.sub (2009-08-19)
+
+2009-07-05 (2.8.7rel.1)
+* update metrics for 2.8.7 release -TD
+* fix ifdef'ing for cfg_bad_html (report by Gabor Z Papp) -TD
+
+2009-06-23 (2.8.7pre.6)
+* update lynx.pot file -TD
+* add "Bad HTML messages" to Options menu, letting the user disable the
+  warning message, write the detailed messages to the LYNXMESSAGES: status
+  buffer (suggested by BL) -TD
+* finish checkbox for send-useragent from pre.3 changes -TD
+* make the size of LYNXMESSAGES configurable in lynx.cfg with
+  STATUS_BUFFER_SIZE -TD
+
+2009-06-06 (2.8.7pre.5)
+* add missing ctrl_chars_on_previous_line when computing 'spare' value in
+  split_line() for the wide-curses configuration.  The justified line was
+  shorter than expected when justifying text -TD
+* fix a special case of trailing whitespace not shown in pretty source, at the
+  end of a closing tag -TD
+* remove "Bad HTML" warning for buttons outside a form, since those can be
+  inline, according to the HTML 4 DTD -TD
+* provide navigation to script-buttons, to make them more visible, showing
+  their name -TD
+* change default for send_useragent option to true (prompted by discussion on
+  lynx-dev) -TD
+* correct check for default type of HTML BUTTON, which is "submit".  The code
+  treated this as "button" (prompted by discussion on lynx-dev) -TD
+
+2009-05-25 (2.8.7pre.4)
+* update lynx.pot file -TD
+* fix a typo in change for Debian #388622 -TD
+
+2009-05-25 (2.8.7pre.3)
+* suppress check for "disabled" attribute in a select, as a workaround
+  (Debian #525934) -TD
+* accommodate (in)compatibility "feature" in HTML5 draft which replaces
+  ISO-8859-1 with Windows-1252, as indicated here:
+    http://www.whatwg.org/specs/web-apps/current-work/multipage/infrastructure.html#character-encodings-0
+  (Debian #514897) -TD
+* remove check for -dump option from HTHandleAuthInfo(), allowing Lynx to -dump
+  or -source NNTP urls (report by Dallas E Legan II) -TD
+* amend fix for Debian #388622 to allow the user to save names to the home
+  directory, e.g., ~/foo -TD
+* add an Options menu checkbox to tell if Lynx should send a user-agent string.
+  Unless the useragent restriction is set, the default for this checkbox is
+  off, so that Lynx will not send the string.  The corresponding setting,
+  send_useragent, may be saved to ~/.lynxrc, but normally is not -TD
+* correct type for HTNewsGetCharacter() in HTNews.c, which could return a
+  sign-extended character mistaken for EOF (report by Dallas E Legan II) -TD
+
+2009-04-26 (2.8.7pre.2)
+* update it.po from
+    http://translationproject.org/latest/lynx/
+* update lynx user's guide section on Options Menu -TD
+* modify prompt in LYLoadCGI() from 2.8.6dev.15 to always prompt user (from
+  FEDORA-2008-9597), and modify compiled-in configuration default for
+  consistency with other lynx.cfg settings to require that lynx.cfg be set to
+  permit use of lynxcgi scripts -TD
+* correct parsing of "--" command-line parameter (Redhat #311031) -TD
+* check for malformed select before adding last-option (Redhat #152146) -TD
+* change default for --enable-ascii-ctypes to true -TD
+* modify Lynx's DTD information to allow it to display form-related tags that
+  are inline, even without being in a form as indicated in
+    http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
+  for %inline.forms and %misc.inline (Debian #398986) -TD
+* finish dtd_util, making it able to load and save data from a flat file that
+  can be edited -TD
+* correct length of padding with underscores in LYhighlight, which used the
+  wrong variable based on glyph count rather than cells (Debian #519199) -TD
+* fix a few cases where PUTC's intended for pretty-src would display in the
+  HTML view (Debian #521489) -TD
+* fix some mismatched BOOL vs BOOLEAN from compiler warnings due to dev.13
+  change to LYStructs.h -TD
+* add TNS SNI support for the OpenSSL configuration -Phil Pennock
+* add docs/README.cookies and docs/README.options -Stefan Caunter
+* update docs/README.sslcerts -Stefan Caunter
+* add NO_PAUSE setting to lynx.cfg, .lynxrc and Options menu (request by
+  Stefan Caunter) -TD
+
+2009-03-17 (2.8.7pre.1)
+2009-03-17 (2.8.7dev.14)
+* modify command-passing for Win32/DOS to use double-quotes -TD
+* adapt features from vile's install-script to set registry variables, etc. -TD
+* modify LYgetenv() for Win32 platforms to check also in the system registry
+  for settings, adapted from vile -TD
+* modify SGML_write() to check for UCS-2 BOMs, to provide support for UCS-2
+  pages (prompted by comment by TG) -TD
+* modify SGML_write() to check for UTF-8 BOM, using that as a hint to set the
+  default document charset to UTF-8 (prompted by mailing list comments) -TD
+* modify stop_curses() function to fix missing DJGPP and MinGW code -DK, TD
+* modify config.hin to fix prototype for getttimeofday() with MinGW -DK
+* ifdef to avoid conflicting definition of set_timeout() in DJGPP -DK
+* modify ifdef in LYMain.c to avoid possible conflict between libintl.h and
+  locale.h -DK
+* modify configure script to avoid using symbolic links for MinGW, in case
+  the script is run in Cygwin -DK
+* modify makefile.msc to add LYIcon object -TD
+* modify configure script to add LYIcon object for MinGW -DK
+* add sample scripts for configuring MinGW version using Cygwin -DK
+
+2009-02-01 (2.8.7dev.13)
+* modify definitions in LYStructs.h for union to cast to a void* rather than
+  a long, to help with 64-bit ports -TD
+* modify CF_SSL configure macro to check for -ldl needed for recent OpenSSL
+  versions -TD
+* modify CF_SSL configure macro to build with MSYS for MinGW configuration -TD
+* modify scanning of floats from lynx.cfg to allow Lynx to read POSIX values
+  in non-POSIX locales -TD
+* modify configure script to check for msginit, needed to generate "en" po
+  file, and omit that target if msginit is not available, letting lynx build
+  with older gettext versions -TD
+* improve drawing of menus for multibyte characters by changing the way the
+  number of fill-characters is computed in LYpaddstr -TD
+* fix some uses of gettext in options menu and info page where a translated
+  string might contain angle-brackets or ampersand -TD
+* modify AM_WITH_NLS configure macro to add the iconv library dependency for
+  intl library when checking for the latter -DK
+* fix breakage of display of UTF-8 in UCTransUniChar() from cleanup in dev.12
+  (report by TG) -TD
+* rename variable defined by CF_PATHSP to PATH_SEPARATOR, use this consistently
+  to ease use in later autoconf versions (prompted by patch by DK) -TD
+* fix a typo in CF_ADD_LIBDIR which broke check for libintl (report by
+  Jose H Espinosa) -TD
+* modify configure script to append to CFLAGS or CPPFLAGS rather than prepend,
+  to better match the user's intent -DK, TD
+* modify UCSetBoxChars() to let line-drawing work with PDCurses, as well as
+  any fancy-curses implementation that is running in ASCII or Latin-1 -TD
+* add a configure check for curses type "chtype" -TD
+* fix for an ASCII dependency in LYKeymap.c -PG
+* update fr.po, id.po, nl.pl, sv.po, tr.po, vi.po from
+    http://translationproject.org/latest/lynx/
+* change configure script to check for "ar" archiver options, from tin bug
+  report for FreeBSD 8.0 which requires a "-" before the options -TD
+* update config.guess (2008-12-19), config.sub (2008-12-11)
+* use putenv() in preference to unsetenv() in LYReadCFG.c, noting that it is
+  a deprecated BSD interface -TD
+* miscellaneous fixes for gcc type-conversion warnings -TD
+* remove trailing comma from enumeration UCStatus which causes strict-compiler
+  warning -TD
+
+2008-12-31 (2.8.7dev.12)
+* add configure option --enable-ascii-ctypes to enable EXP_ASCII_CTYPES -TD
+* move EBCDIC tables to separate file LYebcdic.c to simplify building test
+  driver for parsdate.c on z/OS -PG
+* fix an off-by-one difference between UTF-8/non-UTF-8 comparisons in
+  HText_appendCharacter() which would leave an extra character wrapped in some
+  cases, e.g., in the options menu when field-numbering was turned on -TD
+* remove logic in GridText.c for ignoring "excess" characters in a field when
+  fields are numbered, since highlighting of wrapped multiline links works,
+  and this feature is incompatible with it -TD
+* remove obsolete CF_VARARGS configure check -TD
+* modify configure script to build with MinGW and MSYS -TD
+* modify configure macro CF_XOPEN_SOURCE to define _ALL_SOURCE for AIX 6.x -TD
+* implement a LONG_LIST equivalent for ftp, configurable as FTP_FORMAT -TD
+* adapt some of the SH_EX ifdef'd features (TD):
+  + extra keypad conversions in LYgetch_for() are for PDCurses.
+  + add -show_cfg option.
+  + entify embedded blanks in HTDOS_wwwName().
+  + treat null file-pointer in HTParseFile(HTFormat() as end-of-file.
+* change the phase during which "-help" option is processed, to allow it to
+  reflect the configured values of the options in the help-message (prompted
+  by discussion with Dan Jacobson regarding Debian #507083) -TD
+* modify havevisible() and UCTransToUni() functions to process UTF-8 input,
+  fixing a problem saving bookmarks whose title is UTF-8 (prompted by patch by
+  Takao Fujiwara) -TD
+* restore logic in HTLoadHTTP() to strip matching square brackets from host
+  name and certificate host (comments by TG) -TD
+* modify UCdomap.c to work with Solaris iconv and handle additional encodings:
+  + if "TRANSLIT" feature (an extension of glibc) does not succeed, retry
+    the call to iconv_open without "TRANSLIT"
+  + add check for any MIME name beginning "iso8859", mapping to "iso-8859"
+  + recognize "eucjp" MIME name as alias for "euc-jp"
+  + recognize "pck" MIME name as alias for "shift_jis"
+  + recognize "ansi-1251" MIME name as alias for "windows-1251"
+  (patch by Takao Fujiwara)
+* add "*.dbg" to suffixes to ignore in autoconf script when checking for
+  executables and objects produced by C compile (report by PG, for z/OS) -TD
+* modify parsdate.y to convert between EBCDIC/ASCII to work on z/OS -PG, -TD
+* modify src/makefile.in to make it simple for a build script running in a
+  separate directory to regenerate parsdate.c (prompted by discussion with PG
+  regarding building on z/OS which uses EBCDIC) -TD
+* add configure check for yacc (report by PG) -TD
+* fixes to make configure --help agree with INSTALLATION (report by PW) -TD
+* add id.po from
+    http://translationproject.org/latest/lynx/
+* add a null-pointer check for content type, fix for dev.11 changes (Debian
+  #509321) -TD
+* improve configurability with regard to pkg-config by adding --with-pkg-config
+  option, which can be used to enable/disable use of the program as well as
+  specify the pathname used (prompted by comments by TG) -TD
+* correct handling of --with-ssl option when pkg-config is not found -TD
+
+2008-12-14 (2.8.7dev.11)
+* add support for HTML5 rel=author in link (mailing list comments) -TD
+* modify cookie-writing to not write if no cookies were read from the file
+  and none are available (Debian #354282) -TD
+* fix src/tidy_tls.c X509_get_issuer_name to actually take the issuer DN of the
+  present certificate and not hope that it is the same as taking the subject DN
+  of the "next" certificate which may or may not exist (Debian #499945, patch
+  by Thomas Viehmann)
+* modify exit code when doing a "-dump" to exit with error if the server
+  returned an error status for the page (Debian #299711) -TD
+* fix ipv6 literal command-line parsing (Debian #180654, analysis by Fabio
+  Massimo Di Nitto) -TD
+* extend configure macros CF_SSL and CF_GNUTLS to check for pkg-config, using
+  that for the default if the corresponding openssl or gnutls packages are
+  installed (suggested by PGNet) -TD
+* add fi.po from
+    http://translationproject.org/latest/lynx/
+* update fr.po from
+    http://translationproject.org/latest/lynx/
+* correct handling of the option value from configure "--with-ssl", which was
+  not being used in the search-list (report by PGNet) -TD
+* update configure script macros -TD
+  CF_CURSES_LIBS - add "pdcurses", e.g., to link with MinGW
+  CF_UTF8_LIB - use CF_FIND_LINKAGE to better work with BSD ports.
+  CF_XOPEN_SOURCE - add case for dragonfly
+* document width-limitation in manpage, fix a few stray 1024's still in the
+  source (report by Barry Haddow) -TD
+* add "read_timeout" to lynx.cfg, and -read_timeout option to command-line
+  (prompted by Dries De Moor report on mailing list) -TD
+* modify to handle a special case where the content-type is given as one of the
+  compressed types, to check if the address (after stripping the file suffix
+  for that compression) has a suffix that lynx could present -TD
+  For example:
+	http://foo/bar.html.gz
+  would display the uncompressed "bar.html" rather than offering to download
+  the file.  This also allows one to add SUFFIX commands to lynx.cfg to display
+  the corresponding plain files.
+  For example:
+	SUFFIX:CHANGES.*:text/plain:8bit
+	SUFFIX:CHANGES:text/plain:8bit
+  for
+	http://foo/CHANGES.tmp.gz
+	http://foo/CHANGES.gz
+* workaround for STRING redefinition in parsdate.c on DJGPP -GV
+* improve configure-check to determine proper fallback when no long-long
+  printing format is available -TD
+* update win32 makefiles/build scripts to add LYmktime, parsdate modules -TD
+* update config.guess (2008-04-14), config.sub (2008-06-16)
+
+2008-09-21 (2.8.7dev.10)
+* remove rw.po, since the translation project no longer supplies it -TD
+* implement "readonly" attribute for TEXTAREA and TEXT fields -TD
+* update Lynx's tables of HTML attributes to cover (except for events) the
+  keywords from HTML 4.01 -TD
+* modify initial active link in download-page to be the first download
+  action rather than the "help" link which is provided in Novice mode
+  (Debian #376259) -PBM, TD
+* implement "chunked" transfer-encoding to work with servers that ignore the
+  version number in HTTP get's -TD
+* change initialization of trace file, handing this during the first part of
+  argument parsing along with -help and -version, to show steps done for
+  initialization of presentors, etc -TD
+* minor fix to LYstartPopup() to handle a case where the popup menu was too
+  large for the screen -TD
+* fixes for srcdir!=objdir (report by FLWM) -TD
+* modify man2hlp.sh to work from subdirectory, e.g., its parameter would be
+  "../lynx.man" -TD
+* set POSIX locale for install-cfg.sh and man2hlp.sh since they use character
+  ranges -TD
+* add switch -xhtml-parsing and lynx.cfg XHTML_PARSING setting to control
+  whether the extensions for XHTML 1.0 are used (prompted by bug report by
+  FLWM, as well as discussion on lynx-dev) -TD
+* modify external editing of TEXTAREA to not do tab-conversion -TD
+* modify LYhighlight() to limit display of multicolumn characters -TD
+* rewrite LYRefreshEdit(), to display multibyte/multicolumn characters properly
+  when using wide-character curses -TD
+* revise introductory comment written to ".lynxrc" (Debian #461158) -TD
+* discard anchor's post_data field in HTLoadDocument() if Lynx is about to
+  reload a document.  That would happen if the result of the form includes a
+  link back to the form.  Removing the data causes Lynx to prompt the user,
+  e.g.,
+    Resubmit POST content to http://localhost/cgi-bin/lynxtest.pl ? (y/n)
+  to offer the user the choice between revisiting form or re-POST'ing the
+  data that was on the form (report by Andreas K Foerster) -TD
+* fixes for LYHighlight() when the highlighted text is empty -TD
+* translate named entities, etc., for "content" field of refresh-URL, cf:
+  2.8.5dev.13 (report by Ivan Shmakov) -TD
+* suppress computation in TrimmedLength() for source-view, which is not needed
+  for Debian #204515 (patch by Mike Knight)
+* add check-po rule to po/makefile -TD
+* modify top-level makefile to work with configure --srcdir -TD
+* add update-po rule to top-level makefile -TD
+* update fr.po, nl.po, tr.po, vi.po, zh_TW.po,sv.po from
+    http://translationproject.org/latest/lynx/
+* parse doctype for xhtml, to tell when empty tags such as "<textarea />" can
+  be discarded (report by Nils Dagsson Moskopp) -TD
+* parse xml processing-instruction to turn on UTF-8 decoding, as well as
+  disable upper/lower case transforming in source view (discussion on
+  lynx-dev) -TD
+* fix typo in Lynx_users_guide.html (report by Kristof Zelechovski)
+* minor fix to documentation in lynx.cfg -PW
+* use off_t rather than long for representing file sizes, e.g., when used to
+  print progress messages (reports by LP, Tomas Liska, TG, PG) -TD
+* use dtd_util to replace most of HTMLDTD.h and HTMLDTD.c with source generated
+  from the existing tables in those files -TD
+* add program dtd_util which can be used to dump the SGML tables in readable
+  form -TD
+* change calls to LYhandlePopupList() to turn on (or off) numbering when
+  keypad_mode is not NUMBERS_AS_ARROWS -PBM
+* move close of session-file outside ifdef for VLINK_IN_SESSION, closing
+  session file properly if that ifdef is disabled.  Add a null-pointer check
+  for visited links that are saved -PBM
+* make auto_session and session_file configurable with ENABLE_LYNXRC -PBM
+* separate configure "--enable-sessions" option from "--enable-session-cache"
+  option -PBM
+* add ncurses scroll-wheel support, which requires the extended-mouse configure
+  option of ncurses (Debian #476394) -TD
+  Caveat:  if running on a local terminal, setting the ESCDELAY environment
+  variable to 0 (zero) helps, since the event rate is rather high.  That would
+  not help on a network with delays (this is true of all text applications that
+  use xterm's mouse protocol, such as gpm and ncurses).
+* adapt/extend parsdate.y from tin to improve parsing of cookie expiration
+  times (Debian #480144) -TD
+* update de.po (patch by Fabian Fingerle)
+
+2008-04-27 (2.8.7dev.9)
+* update nl.po, vi.po from
+    http://translationproject.org/latest/lynx/
+* additional def7_uni.tbl conversions (patch by Tim Larson).
+* update config.guess (2008-03-12), config.sub (2008-03-08)
+* add --enable-gnutls-compat option and associated files to configure with
+  GNU TLS without its gnutls-openssl library, whose newer versions are
+  available only under a restrictive license (reports by Andreas Metzler,
+  Atsuhito Kohda) -TD
+* update README.sslcerts -SC
+* add POSITIONAL_EDITOR setting to configure editors which accept a "+line"
+  parameter -PBM
+* pass a newline after the start of PRE-section in HTGopher.c to force the
+  first newline between records to be seen and cause the lines to split
+  (report by Ciprian Dorin Craciun) -TD
+* use TRST_MAXROWSPAN and TRST_MAXCOLSPAN limits in Stbl_reserveCellsInTable(),
+  to help the non-color-style version work with table using rowspan/colspan
+  set to "0", as well as correcting limits from original 2.8.3dev.14 changes
+  (report by George Sigletos) -TD, PBM
+* modify behavior of "-nonumbers" option for -dump so it can be combined with
+  -listonly to obtain a list of the URLs without reference numbers (Debian
+  #398283) -TD
+* typo in description of SESSION_FILE in lynx.cfg -PBM
+* build-fix for WWW version on Windows -TD
+
+2008-02-17 (2.8.7dev.8)
+* add "nano" to list of editors accepting +number option (patch by Tim Chase)
+* add configure --with-nss-compat option, for building with NSS library's
+  OpenSSL-compatible interface (patch by Zdenek Prikryl)
+* minor fix for version message to ensure WWW version shows when not building
+  with OpenSSL -GV
+* make "--more--" message configuable -PBM
+* improve multibyte editing (patch by Sergej Kvachonok)
+* add XWINDOWS / NON_XWINDOWS environment-variable field to DOWNLOAD, etc., in
+  lynx.cfg to specify whether a downloader (printer, etc) is enabled when
+  the X display variable is set -PBM
+* add configure script options --enable-session-cache and --enable-progressbar
+  for PBM's experimental session and progressbar features -TD
+* add session save/restore feature -PBM
+  + bind ^X to toggle view of page showing session information
+  + add binding for ^U to previous-document (outside of line-editing).
+  + documented command-line options and configuration data for this feature.
+  + document -child_relaxed option in Lynx users's guide.
+* use vasprintf() if available, fixes Fedora #462449 -TD
+* several small changes to configure script to work with MirBSD build
+  environment -TG
+* show progress message in X509 callback -TG
+* modify definition of lynxrc and cookies files in LYMain.c and LYrcFile.c to
+  make it simpler for build script to override -TD
+* reviewed patches at
+    http://www.mirbsd.org/cvs.cgi/ports/www/lynx/patches/
+  improved buffer allocation limits in makeuctb.c -TD
+* add support for the X.509 extension subjectAltName using GNUTLS -Joey Schulze
+* add SSL_CERT_FILE to lynx.cfg -Joey Schulze
+* fix spelling error in HTAccess.h comment (report by Paul de Weerd) -TD
+* add null-pointer checks to cover a special case of exit on error while
+  reading from the standard input (report by Pascal Terjan) -TD
+
+2007-08-02 (2.8.7dev.7)
+* restore top-level descrip.mms due to error in patch -TD
+
+2007-08-02 (2.8.7dev.6)
+* update cs.po from
+    http://translationproject.org/latest/lynx/
+* add a script for Inno Setup, incorporate/adapt configuration files from
+  an installer created by Claudio Santambrogio -TD
+* use struct dirent64 when it is declared via configure script -TD
+* additional def7_uni.tbl conversions (patch by Tim Larson).
+* quiet a message in HTFWriter.c -RS
+* improve IsOurSymlink() from 2.8.7dev.5 changes, allowing the symbolic link
+  to be relative to the directory -RS, TD
+* rewrote several autoconf macros to use extended searches in non-system
+  locations, i.e., AM_ICONV, AM_WITH_NLS, CF_GNUTLS, CF_SSL, CF_WITH_BZLIB
+  and CF_WITH_ZLIB (prompted by LV comments) -TD
+* modify popup for externals added in 2.8.4dev.20 to number the entries if
+  keypad mode is set to one of the numbered forms -PBM
+* free leaks of LYLeaks.c, to make it simpler to check it with a second
+  tool such as valgrind -TD
+* rewrote cached_styles[][] to use memory allocated to match screen size
+  (report by RS) -TD
+* fix typo in SGML.C -RS
+* correct display_lines when -notitle is used while in novice mode -PBM, TD
+* add -child_relaxed option (patch by Andrew Belov).
+* minor typos from OpenBSD (patch by Daniel Dickman).
+* modify VMS build-scripts to accept "TCPIP" parameter, for TCPIP Services
+  (discussion with Dominic Stephens) -TD
+* add IDE-files for building with Visual Studio 6, 2003 and 2005 Express.
+  These are respectively the files in BUILD-VS6, BUILD-VS2003 and
+  BUILD-VS2005X -TD
+* modify def7_uni.tbl to display U+2212 without a leading blank
+  (Debian #428536) -TD
+* add definition for _FILE_OFFSET_BITS in CF_LARGEFILE, needed for Solaris
+  64-bit compiles (from ncurses) -TD
+* change order of includes (-I options) in makefiles so build-tree is found
+  first (report by PBM) -TD
+* ensure MIME_LIBDIR has a trailing "/" -TD
+* add new -trace-mask codes to cleanup the trace file a little -TD
+* remove redundant call to show_cert_issuer() -TG
+* correct typo in Lynx_users_guide.html (prompted by TG's patch) -TD
+* modify HTDoRead() to add elapsed time to its debug trace -TD
+* fix a case in LYGetfile.c which was broken by 2.8.7dev.3 changes to use
+  LYTildeExpand() to expand embedded "~" -TG
+* update config.guess (2007-05-17), config.sub (2007-06-28)
+
+2007-05-17 (2.8.7dev.5)
+* build/install "en" po file so that GNU gettext LANGUAGE environment variable
+  can find the corresponding English message file (request by Chuck Houpt) -TD
+* add LYNX_HELPFILE environment variable to allow override of location of the
+  help-file -Chuck Houpt
+* make install-bin and install-lss makefile rules a little quieter (prompted
+  by discussion by Chuck Houpt and TG) -TD
+* fix an off-by-one in HText_canScrollDown() and total_pages in GridText.c -TH
+* rewrite strcasecomp_asterisk() to support wildcards as in RFC 2818 (prompted
+  by less-complete Debian patch for #401447, see also #268102) -TD
+* improve X.509 certificate validation -TG
+  This is tested for OpenSSL, ifdef'd to not break gnutls.  Changes:
+  + peer certificate is cached, no need to call SSL_get_peer_certificate()
+    twice
+  + support foo.domain:port and [ip.add.re.ss] and [ip.add.re.ss]:port and
+    [i:p:v:6:ad:dr:es:s] and [i:p:v:6:ad:dr:es:s]:port
+  + add support for checking X.509v3 SubjectAltName extensions (of type DNS -
+    tested - and IP - untested) when the X.509 commonName check fails.
+  + when displaying a list of failed CNs, change format from foo:bar:baz to
+    CN<foo>:CN<bar>:CN<baz>:SAN<DNS=foo>:SAN<IP=1.2.3.4> so that we know where
+    what comes from (in "Your recent statusline messages")
+  + if the peer certificate can *NOT* be verified, output a message to the log
+    as well
+  + fix a possible use of an uninitialised value ssl_all_cns
+  + output certificate issuer to the logs as well (so that you can, before
+    entering your online banking PIN, see if the certificate has been issued
+    not only _to_ your bank but also _from_ a place you trust, in case
+    /etc/ssl/certs/ contains a lot of Root CA certs)
+* quiet a gcc warning regarding do_system() -TG
+* if iconv_open() using transliteration fails, retry without the
+  transliteration feature -TG
+* change keymap for "CHANGE_KCODE" from CTRL-L to "J" -TG
+* remove "local" section from lynx manpage -TG
+* log SSL/TLS (HTTPS connection) X.509 certificate issuer information into the
+  "recent statusline messages" (accessible via the backspace key) -TG
+* modify po/makefile.inn to use DESTDIR -Thomas Klausner, TD
+* add --with-destdir configure option to set a default value for the DESTDIR
+  variable in makefiles, and modified makefiles to ensure that setting
+  DESTDIR in the top-level makefile propagates to lower levels (prompted by
+  NetBSD patch for port) -TD
+* correct two places in HTML.c which compared element_number to HTML_H6
+  twice rather also to HTML_H5 (report by hsv@tbbs.net) -TD
+* improve change for UCSetBoxChars() from 2.8.6dev.16 for
+  EXP_CHARTRANS_AUTOSWITCH which assumed that the line-drawing character set
+  was always different from the display character set.  If both are US_ASCII
+  for example, ASCII lines would be drawn, which is not good -TD
+* change exit's in configure script test-programs to return's to reduce
+  problems with declaration of exit() -TD
+* use "install-sh" rather than "install.sh" to reduce problems with Sun make
+  program -TD
+* add configure-check for ncurses functions _nc_freeall() and
+  _nc_free_and_exit(), to help with memory-leak checking -TD
+* change a few options such as --enable-locale-charset option to
+  non-experimental -TD
+* correct lynx.cfg parsing of SYSLOG_TEXT which is miscoded as a boolean -TD
+* add --enable-local-docs option to link doc-directory from help-page
+  (request by PW) -TD
+* change default for MIME_LIBDIR from /usr/local/lib/mosaic to /etc -TD
+* add --with-mime-libdir option to set MIME_LIBDIR in userdefs.h file -TD
+* remove "lynxstuff" from help-page, it no longer exists (report by PW) -TD
+* correct loop-limit in print_crawl_to_fd(), which broke
+  "lynx -crawl -dump" from 2.8.6dev.9 changes (Mandriva #29785) -TD
+* replace BROKEN_PROFTPD and BROKEN_WU_FTPD logic with configurable list of
+  strings in lynx.cfg, i.e., BROKEN_FTP_RETR and BROKEN_FTP_EPSV, and add
+  "spftp/" to the predefined values for the former.  Prompted by report by
+  Fred Kasner for
+	ftp.symantec.com/AVDEFS/norton_antivirus
+  which has a broken RETR command -TD
+* add -passive-ftp option -TD
+* ifdef'd -ftp option in case ftp is disabled, for consistency -TD
+* ifdef'd options menu so that if ftp is disabled, the corresponding options
+  are not shown -TD
+* improve pretty-src in a few places by passing-through whitespace as
+  demonstrated by
+	http://www.w3.org/TR/html401/index/elements.html
+  (report by Rado Smiljanic) -TD
+* change user-messages in HTFWriter.c to info-messages, which are generally
+  faster (prompted by patch by Rado Smiljanic) -TD
+* fix pretty-src for "attribute without value" case (patch by Rado Smiljanic)
+* correct tab "abbr", was "abbrev" (patch by Rado Smiljanic)
+* modify ifdef's in HTTCP.c to allow building Cygwin configuration without
+  NSL_FORK, broken in 2.8.5dev.5 (report by Holger Lange) -TD
+* modify IsOurFile() to allow its parameter to be a symbolic link to one of
+  the user's files (report by Rado Smiljanic) -TD
+* check if there is piped-in data when starting without "-" or "-stdin"
+  options, warn about the ignored input data in that case (prompted by report
+  by Toralf Foerster) -TD
+* use POSIX macros for decoding system() return value in UCAuto.c -TD
+* use POSIX macros for decoding system() return value in LYEdit.c
+  (adapted from an incomplete change in OpenBSD CVS) -TD
+* modify CF_SRAND to recognize the asymmetric variant of arc4random() -TD
+* updated configure script macros CF_SUBDIR_PATH, CF_XOPEN_SOURCE,
+  CF_X_ATHENA_LIBS, CF_X_TOOLKIT -TD
+* update config.guess (2006-12-22), config.sub (2006-12-08)
+
+2006-11-14 (2.8.7dev.4)
+* use RFC-822 encoding for filenames passed via file-upload forms (Debian
+  #181165) -TD
+* correct check of return-value from FindLeadingTilde() in dev.3 cleanup of
+  "~" parsing -TD
+
+2006-11-12 (2.8.7dev.3)
+* change the default HELPFILE to the 2.8.6 release directory since the
+  page on subir.com contains obsolete information -TD
+* eliminate references to obsolete url
+	http://www.hippo.ru/%7Ehvv/
+  using the 2.8.6 release directory instead, e.g.,
+	http://lynx.isc.org/release/lynx2-8-6/lynx_help/
+  This is useful mainly for platforms which do not use the configure script -TD
+* update et.po from
+    http://www.iro.umontreal.ca/translation/maint/lynx/
+* modify CF_PDCURSES_X11 to use xcurses-config script if available -TD
+* improve parsing for embedded "~", ensuring that it is interpreted as a
+  user's home directory only if it follows a pathname separator (Debian
+  #388622) -TD
+* ensure that PERSONAL_EXTENSION_MAP and PERSONAL_MAILCAP are absolute
+  pathnames, performing tilde expansion as needed.  Pathnames that are not
+  given in absolute form will be sought under the user's home directory as if
+  they began with "~/" -TD
+
+2006-11-06 (2.8.7dev.2)
+* ensure that the configured values for GLOBAL_EXTENSION_MAP and GLOBAL_MAILCAP
+  are absolute pathnames -TD
+* modify logic for reading PERSONAL_EXTENSION_MAP and PERSONAL_MAILCAP to
+  ensure that they are files that are controlled only by the user.  The
+  default values for these allow lynx to read configuration information
+  from the user's current directory at lynx's startup (Debian #396949) -TD
+* use CF_NCURSES_CONFIG to simplify linking against rpath'd library -TD
+* fix CF_LARGEFILE so --disable-largefile works (from ncurses) -TD
+
+2006-10-12 (2.8.7dev.1)
+* update embedded version numbers for starting 2.8.7 development -TD
+* setup locale before writing version-message -TD
+* update version message to reflect the fact that most of Lynx is copyright
+  the Lynx Developers Group (this would have altered message files) -TD
+* update the ".po" files line-numbers (not done during the release cycle since
+  no new messages were added) -TD
+
+2006-10-12 (2.8.6rel.2)
+* update version numbers in documentation -TD
+* change embedded URL for HTML'ized lynx.cfg to point to example in current
+  release -TD
+
+2006-10-10 (2.8.6rel.1)
+
+2006-10-10 (2.8.6pre.6)
+* minor formatting fixes to CHANGES and CHANGES2.8 to facilitate scripted
+  analysis of contributions -TD
+* predefine _XOPEN_SOURCE_EXTENDED on HPUX to make color-style build -TD
+* broaden the conditions on which to reload the color-style information to
+  cover any (re)initialization of the screen, e.g., when resizing using
+  ordinary curses (report by PG) -TD
+
+2006-10-02 (2.8.6pre.5)
+* modify cfg2html.pl to use "use vars" rather than "our", to allow it to work
+  with perl version 5.5 -TD
+* use curses nodelay() function for BeOS to make HTCheckForInterrupt() work
+  on that platform -TD
+* filter out obsolete URLs from the customizations saved during install of
+  lynx.cfg -TD
+* add a configure check for zError() to allow using old zlib's -TD
+* fix configure --disable-largefile (from ncurses changes) -TD
+* applied lynx's changes to updated files from ftp.unicode.org to take
+  advantage of less restrictive copyright (report by Klaus Singvogel) -TD
+* workaround for PDCurses versus color-style; reload color style information
+  in start_curses() since PDCurses discards that information in endwin()
+  (report by Lawrence Armstrong) -TD
+
+2006-09-18 (2.8.6pre.4)
+* updated link in user's guide to HTML 3.0 reference (report by TH) -TD
+* remove coloring for lh- and high-tags from LYStyle.c and sample ".lss" files
+  since that tag is nonstandard (report by TH) -TD
+* update da.po from
+    http://www.iro.umontreal.ca/translation/maint/lynx/
+* add script samples/oldlynx, which gives the non-color-style scheme using
+  an executable built for color-style -TD
+* add DEFAULT_COLORS item to lynx.cfg to allow disabling the default colors
+  feature at runtime, allowing better matching of old color scheme via a
+  script -TD
+* update VMS descrip.mms files, adding the ability to build with slang -TD
+
+2006-09-10 (2.8.6pre.3)
+* add NESTED_TABLES setting to lynx.cfg to allow site override of the built-in
+  default (see 2001-08-15 comments by TH) -TD
+* update tr.po from
+    http://www.iro.umontreal.ca/translation/maint/lynx/
+* fix a different aspect of Debian #171312, ensuring that if the side-effect
+  of getfile() is unneeded, we restore the link number as well as the line
+  number (Debian #386561) -TD
+* modify makefile.msc to allow building with slang configuration -TD
+* fixes for keyboard input of slang configuration in win32 (not MinGW) which
+  was broken in 2.8.3dev.5 -TD
+* fix LYgetTableString(), making the monochome appearance with an empty ".lss"
+  file for color-style look like the non-color-style (Debian #386216) -TD
+* fix change made to LYwaddnstr() which did not update the position in LYwin
+  after writing text to a subwindow.  This caused some cases where the status
+  line would be cleared by the filler color -TD
+* modify noviceline() function to account for trailing newlines in the message
+  text which caused the message to be displayed on the wrong lines (report
+  by Atsuhito Kohda) -TD
+* make "lynx -version" work in the absence of ".cfg" or ".lss" files -TD
+* add docs/README.metrics to support the changes to COPYHEADER -TD
+* update COPYHEADER to reflect the ten years of development after release
+  of Lynx 2.4.2 -TD
+
+2006-09-03 (2.8.6pre.2)
+* change configure script to put the ".cfg" and ".lss" files by default in the
+  --sysconfdir, e.g., $prefix/etc, and the help-files in lynx_doc and lynx_help
+  directories under --datadir, e.g., $prefix/share/lynx_doc,
+  $prefix/share/lynx_doc.  To obtain the old behavior, use
+	configure --sysconfdir=/usr/local/lib --datadir=/usr/local/lib
+  (patch by Rado Smiljanic).
+* simplified stop_curses(), ensuring that it does what it claims (report by
+  William McBrine) -TD
+* corrected placement of statements used for quiet compiler warnings for unused
+  variables in fancy_mouse() (reported by Rado Smiljanic, Nelson Beebe) -TD
+* simplify ifdef's in HTCheckForInterrupt() to make it clearer that the win32
+  PDCurses configuration uses nodelay() as an alternative to select() -TD
+* correct fix for PDCurses on win32, i.e., the workaround in LYStrings.c
+  myGetChar() (report by William McBrine) -TD
+* replace a couple of wmove(LYwin,y,x) calls with LYmove(y,x) -TD
+* modify configure macro CF_PATH_SYNTAX to account for the --prefix and
+  --exec-prefix options, making the --with-cfg-file and --with-lss-file options
+  have the expected behavior of using the given prefix (reported by PG) -TD
+* modify ifdef's for Current_Attr variable to allow scrollbar feature to build
+  with slang configuration on Windows (report by Gisle Vanem) -TD
+
+2006-08-31 (2.8.6pre.1)
+2006-08-31 (2.8.6dev.19)
+* add --enable-widec configure option to allow building lynx without wide
+  character support using ncursesw, to accommodate users with older releases
+  of ncurses (request by Emanuele Giaquinta) -TD
+* add -stderr option to write error messages when doing a -dump -or -source.
+  Normally these are written to the status line but that does not exist when
+  dumping to standard output (Debian #375736) -TD
+* fixes for GNU TLS configuration (also addresses Debian #231609) -TG, TH
+* add check for failure to write to disk, e.g., on disk full, and report
+  error condition via HTAlert() -PG
+* updated README.sslcerts -SC
+* add example of -source in manpage to explain how HREF's are constructed
+  (Debian #347989) -TD
+* fixes to make redraw_part_of_line() to work with double-width characters.
+  This is used in color-style to repaint an inactive hyperlink -TD
+* ensure the number of "extra" blanks in a line is greater than zero before
+  attempting to perform text-justification (Debian #363538) -TD
+* improve wrapping logic in LYwaddnstr() by using a derived window.  This fixes
+  a problem with wrapping of multibyte character links -TD
+* repair fix for Debian #171312 by ensuring that it is only invoked if the
+  document was not being reloaded, or popped off the history stack.  See logic
+  for popped_doc vs LYSetNewline() in LYMainLoop.c (report by TH) -TD
+* add error-reporting for the PRETTYSRC_SPEC data in lynx.cfg
+  (prompted by discussion by OpenMacNews and Thorsten Glaser) -TD
+* add a carriage-return in stop_curses() to work around PDCurses leaving the
+  cursor position other places than lower-level when stopping curses (report
+  by DK) -TD
+* add an explicit wmove() in display_line() to accommodate some wide-character
+  pages which are not handled well by the nested-table logic, resulting in
+  unexpected wrapping (report by Dan Jacobson) -TD
+* modify limit for CJK double-byte characters in display_line() to accommodate
+  a test-case rightSideEdgeTest.html provided by TH -TD
+* add a workaround in LYStrings.c myGetChar() for PDCurses, which may return an
+  ERR value which is not -1 (reports by DK, William McBrine) -TD
+* remove ifdef from 2.8.2dev.14 which omitted bindtextdomain() call from DJGPP
+  NLS configuration -DK
+* modify autoconf macro AM_PATH_PROG_WITH_TEST to account for executable suffix
+  in win32 environment -DK
+* correct a mistyped parameter to CreateThread() (report by DK) -TD
+* do not use LIBOBJS symbol directly in configure script except to support
+  AC_REPLACE_FUNCS, since the autoconf macros dealing with that symbol changed
+  incompatibly in autoconf 2.54 (report by DK) -TD
+* fixes to work with BeOS 5.0 -Nigel Horne
+* use portable TXT_R rather than "rt" for popen() mode in clip_grab() (reported
+  by Antonio Maria Borneo) -TD
+* modify makeutcb.c to avoid compile-time dependency upon gettext, in case it
+  is used in cross-compiling -TD
+* modify expression for ws_read_per_sec in ws_netread() to avoid potential
+  divide-by-zero on a network error
+  (reported by David Potter) -Hataguchi Takeshi, -TD
+* modify fix for Debian #335593 to ensure that only image maps for the current
+  page are listed (report by DK) -TD
+* correct URL for HTML'ized description of all settings in lynx.cfg (report
+  by DK) -TD
+* use configure macro CF_SIGWINCH to work around special case on Mac OS X
+  which leaves SIGWINCH undefined -TD
+* add configure options --with-cfg-file and --with-lss-file to allow one to
+  specify the names and paths of the default configuration and color-style
+  files -TD
+* change configure script --enable-color-style so it is enabled by default
+  (prompted by request by Jason Spiro) -TD
+* add COLOR_STYLE setting to lynx.cfg -TD
+* change default initialization of color-style code when no lss file is given
+  to simulate the non-color-style code.  There are some visual differences,
+  e.g., links that contain a mixture of styles will display with mixed colors,
+  but overall the visual effect matches the non-color-style code well enough
+  to change the default configuration.
+  If an empty string is given for the lss filename, this is treated as an
+  empty style file, and lynx will not use its built-in default color style.
+  To make the behavior easier to diagnose, lynx will now exit with an error
+  if it cannot find the lss file.  cf: 2000-07-16 (2.8.4dev.5) -TD
+* fix a sign-extension in alignment case-statement in split_line() which could
+  cause a large indent for lines which are wider than the display (Debian
+  #360832, #372670) -TD
+* fix ifdef's in LYOptions.c to make --disable-menu-options work (report by
+  PW) -TD
+
+2006-05-29 (2.8.6dev.18)
+* suppress OpenSSL URL from version message if it happens to be built using
+  GNU TLS -TD
+* change default for DEFAULT_INDEX_FILE in lynx.cfg to http://lynx.isc.org/
+  since the Mosaic MetaIndex file is defunct (suggested by SC)
+* update makelynx.bat (report by FLWM) -TD
+* add presentation for text/css, to allow browsing ".css" files -SC
+* modify LYPrint.c suggested_filename() to strip bzip2's ".bz2" suffixes as
+  well as ".zz" suffixes -TD
+* modify configure script macro AM_PATH_PROG_WITH_TEST to allow for DOS device
+  letter, and to override $PATHSEP with $PATH_SEPARATOR if the latter is
+  set -DK
+* modify ifdef in LYCurses.c to avoid using nonfunctional PDCurses 2.7
+  newterm() -DK
+* update config.guess (2006-04-26) and config.sub (2006-05-13)
+* improvements to configure script macros -TD
+  + don't use curses_colr on HPUX 11
+  + split-out CF_CURSES_HEADER to simplify comparison with CF_NCURSES_HEADER
+  + modify AM_WITH_NLS	to make it look in non-system locations, e.g., to
+    work with FreeBSD ports system
+* modify HTLoadHTTP() to interpret leading asterisks in common name fields as
+  wildcards -Thorsten Glaser
+* remove SH_EX hardcoded Latin-1 table for strcasecomp() -TD
+* fixes for compiling in Cygwin environment -TH
+  + modify not to check d_ino when __CYGWIN__ is defined because it
+    does not seem to be supported by Cygwin now.
+  + modify to use fill_rehostent to avoid segfault in _fork_func,
+    which is used in Win32 environment (includes Cygwin).
+* fix some printf formats -Thorsten Glaser
+* fix some non-POSIX syntax in scripts/cfg_path.sh -PG
+* modify makefile.in to ensure that scripts are prefixed with $(SHELL), in
+  case packager has stripped executable permissions from scripts, e.g., by
+  using CVS (report by Atsuhito Kohda) -TD
+* add a null-pointer check in handle_LYK_HEAD() to cover a case where doing
+  a HEAD on a link failed because there was no submit action associated with
+  the link (report by Walter Ian Kaye, SC) -TD
+* improve tbl2html.pl script to cover the ranges and approximations used in
+  def7_uni.tbl -TD
+* additional def7_uni.tbl conversions (patch by Tim Larson).
+* fix ifdef's for repeated-include of winsock.h for Visual Studio 6 -TD
+
+2006-01-22 (2.8.6dev.17)
+* improve EXP_JAPANESEUTF8_SUPPORT -TH
+  + correct an ifdef in HTMIME.c
+  + correct the behavior of encoding a text in input element,
+    when the type is hidden and the text is japanese encoded utf-8.
+  + correct "//TRANSLIT" position in iconv_open() parameter.
+* remove redundant size-check in change for HText_trimHightext() in 2.8.5dev.8
+  to fix highlighting for this case:
+    <a href>Line 1<p>Line 2<p>Line 3</a>
+  (report by Andrew Belov) -TD
+* add U+213B FAX to def7_uni.tbl (Debian #344275) -TD
+* adjust anchor extent to discount trailing blank which is trimmed when
+  rendering.  If the blank is not trimmed, link highlighting in color-style
+  will show a spurious character (report by Karl-Heinz Weirich) -TD
+* fixes to source-view of ftp:// and file:// URLs, i.e., eliminate redundant
+  PRE's, add DOCTYPE and meta tags (Debian #347989) -TD
+* modify makefile.msc to ease scripted building of various configurations
+  without needing to edit that file -TD
+* fixes to allow building with Visual C++ .NET 2003 -TD
+* modify configure script checks for gettext to supply include- and lib-paths,
+  e.g., to work on partly broken platforms such as FreeBSD -TD
+* modify parsing of filename from Content-Disposition so that the name is not
+  truncated on embedded whitespace.  For most systems, the blanks will be
+  retained.  For VMS and MSDOS, the blanks are translated to underscores
+  (Debian #291716) -TD
+* add a range-check for references to the style cache -Andrew Belov
+* modify fmt_tempname() to avoid the possibility of long random sequences that
+  do not yield an unused filename (report by FLWM) -TD
+* modify install rules for lynx.cfg to allow for pathnames on OS/2 EMX that
+  begin with a drive letter rather than a slash -TD
+* move scripts that are not part of the configure script into scripts
+  subdirectory: cfg_defs.sh, cfg_edit, fixtext.sh -TD
+* improve workaround for line-drawing characters with font-switching by
+  checking if the loaded font has line-drawing characters in the same positions
+  as the terminal description, rather than simply ignoring line-drawing when
+  the codeset differs (report by Karl-Heinz Weirich) -TD
+* fix some ifdef's that did not work when disabling all features -TD
+* fix a typo in LYMap.c from Debian #335593 changes (report by Jens
+  Schleusener) -TD
+* really remove pointer to moxienet (report by SC) -TD
+
+2005-12-18 (2.8.6dev.16)
+* change configure option default for --enable-justify-elts to true -TD
+* change default for JUSTIFY to "false" (suggested by Bela Lubkin) -TD
+* update config.guess (2005-11-11) and config.sub (2005-11-13)
+* print the contents of image maps, if any, at the end of a dump (Debian
+  #335593) -TD
+* fix off-by-one line calculation that allowed the last page to be blank
+  (Debian #330413) -TD
+* modify statusline() to retain one trailing blank if the given string has a
+  trailing blank.  This makes prompts easier to read (report by Karl-Heinz
+  Weirich) -TD
+* modify pipe read in LYGetHostByName() to retry until either the pipe closes
+  or the struct passed back from the child process completes.  This is needed
+  for OS/2 EMX (report by Karl-Heinz Weirich) -TD
+* strip unneeded "&nbsp;" from translation when building info page using
+  wide curses (Debian #342877) -TD
+* add scripts/tbl2html.pl, which can be used to generate test pages for the
+  charsets from src/chrtrans/*.tbl -TD
+* add ISO-8859-13 and ISO-8859-14 chrtrans tables, revise ISO-8859-10
+  based on
+    http://czyborra.com/charsets/iso8859.html
+  Change display name for ISO-8859-10 to indicate the region -TD
+* add codepage 857 (DOSTurkish), since console-tools package provides a
+  suitable font -TD
+* improve UCSetBoxChars(), checking if the current character set does not
+  match the character set inferred from the locale.  This reduces the number
+  of cases where line-drawing in the options menu does not work -TD
+* rename test/iso8859-1.html and test/iso88592.html to test/iso-8859-1.html
+  and test/isoi-8859-2.html, corresponding to the proper MIME names to
+  simplify test-scripts -TD
+* update Linux console font support to use console-tools package (tested on
+  Debian).  The configure script checks for consolechars and setfont programs
+  (must find at least one).  The corresponding SETFONT_PATH can be set in
+  lynx.cfg to provide a choice between the two -TD
+* strip special characters such as '%' from parameters passed to external
+  programs for EXTERNAL mechanism on Windows platform.  This is ifdef'd
+  with WIN_EX (Hataguchi Takeshi).
+* modify definition of addch_raw() to allow scrollbar to work with slang2
+  (this only works on the Windows platform) -GV
+* modify LYSysShell() to use $COMSPEC if $SHELL is not defined -GV
+* workaround for codepage support on OS/2 by changing the effect of unctrl().
+  Add/use new preferred function use_legacy_coding() to ncurses which provides
+  the same effect with the wide-character ncursesw (report by Karl-Heinz
+  Weirich) -TD
+* fixes for de.po (Debian #313789, patch by Jens Seidel).
+* add a null pointer check for HTCurSelectedOptionValue in HText_setLastOptionValue()
+  to improve handling of this fragment:
+    <FORM><SELECT><OPTION><FORM><SELECT>
+  (Alexey Dobriyan).
+* add a null pointer check in HTML_TAB case of HTML_start_element() to handle
+  this fragment:
+    <TAB INDENT=1 TO>
+  (Alexey Dobriyan).
+* remove pointer to
+     http://www.moxienet.com/lynx/
+  since it no longer has useful information about SSL for Lynx (Crouton).
+* add description of configure --with-build-cc, etc., to INSTALLATION -TD
+* modify Switch_Display_Charset() so the font-switching feature can be turned
+  off at runtime, rather than silently re-enabling it every time a new page is
+  viewed.  The automatic switching is enabled if the user has configured lynx
+  to use one of the automatically-detected fonts -TD
+* fix ifdef's to allow building --without-font-switch with OS/2 EMX -TD
+* work around bug in PDCurses wrapping by adjusting LYcolLimit macro.  The
+  dev.14 change to HText_appendCharacter() exposed this bug in the Options menu
+  (report by Hataguchi Takeshi) -TD
+* fix change to lynx_default_colors() from dev.14 change to work with the
+  bright-blue.lss file (report by FLWM) -TD
+* add a configure test for ctermid(), needed for OS/2 EMX (report by
+  YANAGIHARA Nobuyuki) -TD
+
+2005-10-30 (2.8.6dev.15)
+* update URL for VMS server information in LYCgi.c -TD
+* modify LYLoadCGI() to prompt user, displaying the command that would be
+  executed, to confirm that it should be.  This makes it easier to notice when
+  a local program would be run by activating a lynxcgi link.  This is not done
+  in advanced mode, since the URL is already visible in the status line (report
+  by vade79, comments by Greg MacManus) -TD
+
+2005-10-17 (2.8.6dev.14)
+* add configure script support for large files; some changes made be needed to
+  the C code in dev.15 to exploit this -TD
+* work around part of the forms-menu extra wrapping from dev.12 by adjusting
+  text-field maximum size in HText_beginInput().  There is still wrapping of
+  options lists, which has to be treated differently.  The cause for this
+  is the fix made to HText_appendCharacter() in dev.12 -TD
+* extend experimental option --enable-japanese-utf8, allowing lynx to convert
+  EUC-JP and Shift_JIS strings to UTF-8 -TH
+* modify CF_BUILD_CC to avoid clobbering environment variable $BUILD_CC
+  (from ncurses changes) -TD
+* remove special case in CF_XOPEN_SOURCE which suppresses _XOPEN_SOURCE
+  definition for Darwin (request by Emanuele Giaquinta)
+* fix an off-by-one error in comparison in HText_appendCharacter(), from dev.12
+  changes which showed up as wrapped lines in the options menu -TD
+* use h_addr_list[0] rather than h_addr in HTTCP.c for POSIX compatibility
+  (Emanuele Giaquinta)
+* remove references to LIBCMU in HTTCP.c, since it is long obsolete -TD
+* force a newline in HTML_end_element() after a </pre>, which causes lines
+  containing only whitespace before the </pre> to display a new line, rather
+  than putting that whitespace before text that follows the </pre> (report by
+  Thorsten Glaser for http://gcc.gnu.org/gcc-4.1/changes.html) -TD
+* improve fix for LYstartPopup() in dev.6 by keeping the menu width as-is and
+  adjusting its position rather than simply using the full screen-width when
+  the first try fails (report by Gene Small) -TD
+* correct logic in lynx_default_colors() so the color-style configuration does
+  not attempt to use default colors on a terminal which does not support it
+  (report by Bryan Henderson) -TD
+* add/improve limit checks in HTLex.c -Ulf Harnhammar, TD
+* ifdef'd out unused code in HTGroup.c -TD
+* eliminate fixed-size buffers in LYExpandHostForURL() to guard against
+  buffer overflow resulting from too-long domain prefix/suffix data from
+  lynx.cfg (report by Ulf Harnhammar) -TD
+* add a check for missing ':' in gopher response, to recover from the error
+  (patch by Ulf Harnhammar)
+* eliminate fixed-size buffers in HTrjis() and related functions to avoid
+  potential buffer overflow in nntp pages (report by Ulf Harnhammar,
+  CAN-2005-3120) -TD
+* correct "escape" character used in HTMake822Word, which was literally an
+  ASCII escape character rather than the RFC-822 backslash from 2.8.2dev.3
+  changes (report by Frederic Briere, Debian #318034) -TD
+* fix:  when first "option" element of "select" had "disabled" attribute, Lynx
+  turned the entire "option/choice list" UNMODIFIABLE.  The "disabled"
+  attribute of later "option" elements within the same "select" did not have
+  this effect.  If the "disabled" attribute is honored, it should disable only
+  that element, not parent element or sibling elements (report by Paavo
+  Hartikainen) -TD
+* make CF_TAR_OPTIONS configure macro work with DJGPP by using $EXEEXT -DK
+* update config.guess (2005-09-19) and config.sub (2005-07-08)
+* configure script updates from tin and ncurses -TD
+* modify LYwaddnstr() to avoid sign-extension from changes in dev.12 (report
+  by FLWM) -TD
+* modify initialization so that
+	cat options.txt | lynx -
+  will allow interactive use (report by Arne Kowallik) -TD
+* add NO_MARGINS and NO_TITLE to lynx.cfg (request by SC) -TD
+* adjust line-position for form fields when -notitle option is used (report by
+  Arne Kowallik) -TD
+
+2005-06-07 (2.8.6dev.13)
+* add a check in LYnormalColor() to ensure that the color value is really
+  a color, i.e., do not do anything for monochrome displays (reports by
+  OpenMacNews and Jens Schleusener) -TD
+* make -nomargins option apply to Options menu layout -TD
+* changes to LYwaddnstr() in dev.12 exposed a case from dev.6 where the title
+  string was not truncated to avoid wrapping (report by PG) -TD
+* changes to LYwaddnstr() in dev.12 allowed recursion in a case that was only
+  designed for iteration (report by OpenMacNews) -TD
+
+2005-06-02 (2.8.6dev.12)
+* add rw.po, vi.po from
+    http://www.iro.umontreal.ca/translation/maint/lynx/
+* modify ".lss" files to work equally well on terminals setup with white text
+  on black background, or the reverse.  This also required fixing a few places
+  in LYsubwindow() and curses_w_style() to make window backgrounds use the
+  colors given in the ".lss" default- and normal-colors lines -TD
+* make ".lss" example files somewhat readable by modifying parser to remove
+  blanks from the color description lines and modifying the example files to
+  use this feature -TD
+* modify scripts/cfg2html.pl to use strict variable checking, Getopt::Std
+  to eliminate a uninitialized variable warning -TD
+* modified fix for slang 2.0 which makes it clearer that the last parameter
+  of SLexpand_escaped_string is for UTF-8 -JED
+* when SOURCE_CACHE_MEMORY is used, avoid repeated realloc's of the same
+  memory chunk (really annoying for a long document) -LP
+* HTChunk extended to a linked list of chunks, additional put methods added.
+  Useful for pool infrastructure -LP
+* add ".h" to .SUFFIXES rule in src/chrtrans/makefile.in to work around change
+  made in NetBSD "make" late in 2003, incorporated into the 2.0 release.
+  The CVS change notes:
+	  Trim .SUFFIXES to only contain those used in this file.
+  (reported by SC, comments by Klaus Klein and Martin Husemann) -TD
+* modify LYhighlight() to allow for the case where a form link extends for
+  several lines.  It was not providing enough padding to fill in the "_"
+  characters past the first line of the link -TD
+* modify LYwaddnstr() to account for the case where LYhighlight calls it to
+  display a link which extends beyond the current line, i.e., it should be
+  wrapped.  When lynx is built to use curses-pads, the highlighting was instead
+  truncated since it was computed according to the pad's limits.  Fixing this
+  exposes some related problems with off-by-one's in GridText.c -TD
+* correct parsing of "key 0xNN" lines in command-scripts, had omitted a "!"
+  to invert a check (report by Silvio Moioli) -TD
+* correct off-by-one in expression for LYHideCursor(), since dev.6 changes
+  modified the LYcolLimit variable, changing it from the last usable column
+  value to the number of columns (report by DK) -TD
+* correct expression in HText_appendCharacter() which was simplified in
+  2.8.5dev.4, but broke a comparison used for text-justification -TD
+* adjust wide-character offset computation in HText_trimHightext() to account
+  for soft newlines, i.e., the cell reserved to show continuation lines -TD
+* modify source-view toggle to keep the current anchor visible.  Toggling
+  source view may change the line number on which the anchor is found,
+  requiring some adjustment.  This feature is implemented only for source
+  cached pages -TD
+* remove obsolete ifdef in LYwaddnstr() for ncurses 5.1's experimental UTF-8
+  support -TD
+* modify HTConfirmCookie() and statusline() to allow cookie prompt message in
+  Japanese to not be truncated when using wide-curses -TD
+* modify logic for locale_charset configuration variable so it is not modified
+  simply by saving the .lynxrc while in running in a non-locale configuration.
+  That does not alter the display charset used by lynx -TD
+* correct calculation of extra space available for justification in
+  split_line() for the wide-curses configuration.  Changes from dev.6
+  made this count formatting control characters twice, resulting in some
+  lines too long when justification was enabled -TD
+* improve description of command-line option syntax in the manpage, including
+  noting how to find the default values for most options (Debian #292393) -TD
+* modify is_true/is_false macros for processing command-line options to accept
+  "true" and "false" strings for consistency with the lynx.cfg parser, and to
+  ignore case of the boolean option values -TD
+* add -notitle option to suppress title line and following blank line to
+  maximize screen use for small displays (request by Daniele Baggio) -TD
+* add -nomargins option to suppress left/right margins to maximize screen use
+  for small displays (request by Daniele Baggio) -TD
+* add null-pointer checks in HText_setLastOptionValue() to guard against empty
+  <select> (report by Al Viro) -TD
+* fixes to allow compiling with slang 2.0 prerelease 5 -GV
+* fix to avoid divide-by-zero in ws_netread() -GV
+* modify ifdef for popup_choice() to work with handle_LYK_LINEWRAP_TOGGLE() on
+  NetBSD 2.0 (report by Gabor Z Papp) -TD
+
+2005-01-05 (2.8.6dev.11)
+* add presentation type for application/xml and text/xml mime types as per
+    http://www.w3.org/TR/xhtml-media-types/
+    http://www.w3.org/TR/2002/NOTE-xhtml-media-types-20020801
+  which states that they may be used, though application/xhtml+xml is the
+  preferred media type (Debian #184482) -TD
+* remove an extra free() introduced in fixes from dev.10 for leak-checking
+  (reports by Thorsten Glaser, FLWM) -TD
+
+2005-01-02 (2.8.6dev.10)
+* correct final sed command in help_files.sed which was not a basic regular
+  expression, left some links ending with .gz.gz -TD
+* update config.guess, config.sub
+* modify configure script to check for Intel compiler 8.0 -TD
+* modify ifdef's for USE_DEFAULT_COLORS, disabling it if the
+  use_default_colors() function is not found -TD
+* modify to allow compiling with C++ compiler, e.g., rename conflicting
+  keywords such as new, class, template (suggested by Nelson Beebe) -TD
+* remove leading/trailing blanks from suggested title string for ADD_BOOKMARK
+  (request by Walter Ian Kaye) -TD
+* add tags rules to makefile.in's -TD
+* repair fix for Debian #171312 by ensuring that it is only invoked if a URL
+  fragment was found in the getfile() call (report by PG) -TD
+* correct leak-checking for result of LYAddHilite(), which was not freeing
+  the associated strings -TD
+* correct leak-checking for result of LYcommandList(), which was not freeing
+  the associated strings -TD
+* correct pointer initialization in LYCheckForProxyURL() broken by fix for
+  Debian #240237 (reported by GV, SC) -TD
+
+2004-12-30 (2.8.6dev.9)
+* remove fixed limit on history[] array (report by Richard Eyre) -TD
+* improve logic for highlighting links which extend to multiple lines by
+  ensuring that if they cover a blank line that the following lines of the
+  link will be highlighted rather than the blank line (report by Hataguchi
+  Takeshi) -TD
+* replace most instances of exit() by exit_immediately(), except those needed
+  for the leak-checking code, to add an ifdef'd call to _nc_freeall() which
+  simplifies testing with valgrind -TD
+* fix definition of put_clip(), to compile in Windows environment (Hataguchi
+  Takeshi).
+* update da.po, et.po, hu.po, nl.po, sv.po, tr.po from
+    http://www.iro.umontreal.ca/translation/maint/lynx/
+* fix for mouse versus network I/O -GV
+  Building the djgpp version with S-Lang and mouse-support causes network I/O
+  to stop when Lynx is idle waiting for key/mouse events.  This patch adds a
+  djgpp_idle_loop() function that does what getxkey() used to do; calls
+  tcp_tick() to finish off closed sockets and reply to pings etc.  Tested with
+  PD-curses 2.6 too, but I couldn't get mouse to work under DOS.  Not sure
+  that's possible at all.
+* add "Anonymous FTP Password" to Options menu, to allow user to override use
+  of personal email address as the anonymous ftp password (Debian #137480) -TD
+* modify LYCheckForProxyURL() to check if a colon follows a slash, which would
+  make the colon not part of a URL (report/patch by Matt Kraal (Debian
+  #240237)).
+* add test/special_urls.html -TD
+* update test/iso8859-1.html (minor fixes) from
+	http://www.ramsch.org/martin/uni/fmi-hp/iso8859-1.html
+* add check for broken WU_FTPD 2.6.2-12, e.g., at ftp://ftp.pppl.gov/, and
+  disable EPSV.  This is ifdef'd with BROKEN_WU_FTPD and checks version (Debian
+  #66560, as well as April 2003 reports by HN, PW) -TD
+* modify getfile(), etc., to ensure that following a link consisting of a
+  fragment will move the cursor to the link containing the target rather than
+  simply ensuring that it is visible (Debian #171312) -TD
+* modify ShowInfo() to list the rendered size in bytes if the Content-Length
+  is not available (Debian #61085) -TD
+* modify print_wwwfile_to_fd() and void print_crawl_to_fd() to ensure that no
+  trailing blanks are written (Debian #204515) -TD
+* modify behavior when user attempts to toggle a radiobutton off, to make the
+  message that one radio button must be selected only in novice mode (Debian
+  #121520) -TD
+* make the maximum number of cookies configurable in lynx.cfg, added
+  MAX_COOKIES_DOMAIN, MAX_COOKIES_GLOBAL and MAX_COOKIES_BUFFER (Debian
+  #152810) -TD
+* reduce embedded blanks in button labels to single blanks -TD
+* reduce embedded blanks in title strings to single blanks (Debian #284679) -TD
+* add command-line option (-syslog-urls) and lynx.cfg settings (SYSLOG_TEXT,
+  SYSLOG_REQUESTED_URLS) to allow syslog'ing of URLs to be optional.  This
+  cannot be set from the options menu (Debian #282739) -TD
+* modify HTParse() to restore a slash which may be removed during
+  simplification of URLs such as "file://localhost/tmp/..".  The
+  LYFillLocalFileURL() function would then append the current directory to the
+  URL rather than the expected "/".  This case which happens in DIRED, was
+  caused by 2.8.5dev.15 changes (Debian #285140) -TD
+
+2004-11-07 (2.8.6dev.8)
+* improve def7_uni.tbl substitutions for the symbols beginning at U+2600
+  (patch by Tim Larson <Tim.Larson@conagrafoods.com>).
+* update nl.po, sv.po from
+    http://www.iro.umontreal.ca/translation/maint/lynx/
+* add clean.com -TD
+* scripting fixes to make OpenVMS/IA64 platform build/work -TD
+* several changes to use const, prompted by VMS compiler warnings -TD
+* remove build-slang.com -TD
+* simplify libmake.com -TD
+* modify build.com, making its second parameter a comma-separated list of the
+  special libraries which may be used, e.g., bzlib, slang, ssl and zlib -TD
+* some cleanup using non_empty() macro -TD
+* limit TEXTAREA columns to the screen width, and rows to 3 times the screen
+  height (report by FLWM) -TD
+
+2004-10-17 (2.8.6dev.7)
+* update de.po, et.po from
+    http://www.iro.umontreal.ca/translation/maint/lynx
+* clarification in manpage description of "-pseudo_inlines" option (Dan
+  Jacobson).
+* correct parsing of embedded URLs which have parameters but no path, e.g.,
+  base
+    http://wj55.org/Minutes.php
+  and embedded
+    ?date_meeting=2004-08-31
+  (Debian #274619, report/analysis by Liam K Morland) -TD
+* improve description of --assume-local-charset option (Debian #270915) -TD
+* revise configure script check whether _POSIX_C_SOURCE should be defined,
+  taking into account the _POSIX_SOURCE definition (report by PG) -TD
+* add --with-system-type option to configure script to simplify testing the
+  case-statements involving $host_os -TD
+* fix a memory leak in IPv6 version of HTGetAddrInfo() -TD
+* modify HTCompressed() to choose the last viewer in the list with the best
+  quality.  User-defined viewers appear after the built-in viewers, and by
+  choosing the last, lynx allows one to override the built-in defaults -TD
+* add "deflate" to the encoding types which lynx implements.  This consists
+  of several parts (report by Thorsten Glaser) -TD
+  + adapted logic from w3m's inflate.c to construct an internal "deflate"
+    decompressor.  Tested this with
+      http://carsten.codimi.de/gzip.yaws/
+  + simplify VMS-specific logic for trimming version in HTLoadFile().
+  + combined VMS- and Unix logic for decompression in HTLoadFile() as a new
+    function decompressAndParse() to eliminate clutter.  As a side-effect,
+    eliminate some memory leaks in cases where the file is not loaded properly.
+  + add/use new function HTEncodingToCompressType() to eliminate clutter.
+  + add "deflate" to the options menu.
+  + modify logic that builds "Accept-Encoding" value to omit encodings which
+    have no external decompressor associated.  The effect of this change is to
+    allow lynx to behave as it did before adding the (possibly incomplete)
+    "inflate" support.
+  + add INFLATE_PATH to lynx.cfg, to optionally specify an external program
+    which can be used to decompress deflated files.  For testing, a shell
+    script using w3m's utility, e.g., /usr/lib/w3m/inflate, sufficed.
+    NOTE: As currently implemented, lynx requires the external decompression
+    programs to be specified even if it can decompress using library calls.
+  + use ".zz" for suffix of downloaded (but not inflated) deflated files,
+    mapped to application/deflate and application/x-deflate.
+* fix LYSetConfigValue(), which did not properly handle the CONF_PRG case which
+  is used to allow user configuring the program paths -TD
+* fix content_is_compressed() function, which was checking for the absence only
+  of some nonstandard encodings (8bit, 7bit, binary) rather than for the
+  presence of the encodings as specified in RFC 2068 (gzip, compress, etc).
+  This makes lynx able to view a site
+  which puts the charset as the Content-Type (report by FLWM) -TD
+* fix configure script:  top-level makefile uses $(TAR), which was not defined
+  if --without-dired option was used (report by Gabor Z Papp) -TD
+
+2004-10-10 (2.8.6dev.6)
+* highlight the target and pause for 20 milliseconds when selecting a link with
+  the mouse -GV
+* improve layout of options-menu and info-page for multibyte character sets by
+  computing the extent of the labels.  This works only for wide-character
+  curses (this addresses part of Debian #240069) -TD
+* improve check in LYstartPopup() for case where a window would be created too
+  far right to be entirely visible.  ncurses changes in 20040417 to allow
+  windows to extend beyond the terminal limits exposed this problem (which may
+  have occurred with other versions of curses).  Older versions of ncurses
+  would return an error in this case (forcing lynx to do the proper layout),
+  obscuring the actual problem.  Noticed that the same problem applies to slang
+  configuration, and applied a comparable fix there too -TD
+* modify HTConfirmCookie() to ensure the translator's note is copied into the
+  lynx.pot file, by adding a gettext("Y/N/A/V") call after the comment -TD
+* remove references in makefile.in to the "intl" subdirectory since that is no
+  longer packaged with lynx -TD
+* modify column limits, allowing text to be written to the last column on the
+  screen.  This allows users to view text which is formatted for 80 columns
+  without the last character of each line wrapping to the next line -TD
+* minor fixes to fr.po (Debian #119751, and aspell) -TD
+* remove newline from format in lookup_reject(), fixes a bug introduced in
+  2.8.5dev.2 which caused traversal reject-lookups to fail -TD
+* minor fixes to fr.po, cs.po and pt_BR.po to eliminate fatal errors as
+  reported by "msgfmt -c -v" -TD
+* minor fix to fr.po (Debian #271048, report/patch by Arnaud Giersch).
+* update URL for "HTML Quick Reference Guide" in lynx_help_main.html (report
+  by Jim Jackson) -TD
+* update hu.po from
+	http://www.iro.umontreal.ca/translation/maint/lynx
+* remove a "defined(gettext)" from the ifdef's in HTConfirmCookie(), since
+  recent GNU gettext, e.g., 0.13.1, introduced an incompatible/undocumented
+  change to make the function a macro which is defined in terms of dgettext()
+  (Debian #204994, report by Mattias Ostergren) -TD
+* modify pumpData() in HTMIME.c to improve recovery when a charset is found
+  that cannot be translated.  Before this change, the charset was not stripped
+  from the format string, e.g.,
+	text/html; charset=big5
+  and since there would be no match for the format, lynx would offer to simply
+  download the page (if interactive), or refuse to format (for dumps).
+  Although the content of the page is unusable, the user can still navigate
+  the page using the links which may be there (Debian #254603) -TD
+* add -nonumbers option, which modifies the output of -dump to suppress the
+  link-numbering (Debian #255571) -TD
+* add -listonly option, which modifies the output of -dump to show only the
+  list of links (Debian #255571) -TD
+* modify treatment of symbolic links for ftp-URLs to show the link target, as
+  with the local directory editor -TD
+* correct sort-order of local directory listing, using the target of a symbolic
+  link to determine whether it is grouped with files or directories (adapted
+  from patch by Kees Cook) -TD
+* modify template for temporary-directory name, adding "lynx" prefix (Debian
+  #267356) -TD
+* fixes for configure script macros used for --enable-nls when --srcdir is
+  used (from bug report for dialog by Mike Castle) -TD
+* improve configure script macro CF_XOPEN_SOURCE, ensuring that _POSIX_C_SOURCE
+  is defined with a value (comment on comp.sys.stratus newsgroup) -TD
+* reduce TRST_MAXROWSPAN and TRST_MAXCOLSPAN to 200, which is more plausible
+  than 10000 by 1000 (discussion on lynx-dev related to report by Edgard
+  Pineda) -TD
+* modify LYShowInfo.c to entify most strings, and provide for alignment of
+  fields in different locales -TD
+
+2004-06-30 (2.8.6dev.5)
+* use LYEnsureAbsoluteURL() on the value passed to handle_LYK_HELP() in case
+  it is of the form file:///path rather than file://localhost/path -DK
+* add configure check for ncurses' curses_version() function, using that in
+  the "-version" output.  Add comparable ifdef's for PDCurses and slang -TD
+* Some patches to enable IPv6 on Windows (tested with MingW and MSVC6).  Some
+  minor cleanups also -GV
+  + LYutils.c; fixed extraction of module/system error strings.
+  + Xsystem.c; use <io.h> for mktemp() prototype.
+  + HTTCP.c; don't use global host[], fixed call-convention of thread- function
+    (must be __stdcall).  Sets pending WSAHOST_NOT_FOUND error status.
+  + HTTP.c; _thread_func() wasn't __stdcall.
+  + LYexit.c; avoid redeclaring error of exit() in <process.h>.  IMHO it's very
+    bad to shadow ANSI functions like this.  Should call LYexit() explicitly.
+  + www_tcp.h; cleanup for MSVC and IPv6 headers and macros.  Increase
+    MAXHOSTNAMELEN to 128.
+* updated po files (da.po, et.po, hu.po, sv.po, tr.po) from
+  http://www.iro.umontreal.ca/translation/domains/
+* change HTDOS_wwwName() and HTVMS_wwwName() to return a const value (report
+  by Serge B) -TD
+* update configure script macros CF_XOPEN_SOURCE (fixes Debian #238057) and
+  CF_X_ATHENA (from xterm) -TD
+* update config.guess (2004-06-24) and config.sub (2004-06-24)
+* modified mailcap command and testcommand substitutions to provide for
+  running the testcommand's after program initialization (prompted by review
+  of Debian #167200, which gave as example a mailcap using %{charset} in the
+  test commands) -TD
+* add (ifdef'd with EXP_HTTP_HEADERS) code in HTMIME.c to collect and in
+  LYShowInfo.c to display the full text of the HTTP headers -TD
+* correct command-line options table for "-get_data" and "-post_data" which
+  were processed twice, thereby discarding the value (Debian #132674) -TD
+* lynx accepts multiple URLs on the command line; all are added to G)oto
+  history.  Documented this in manpage (Debian #177062) -TD
+* modify logic for -dump so it can dump all pages listed on the command line
+  (Debian #199131) -TD
+* add presentation type for application/xhtml+xml mime type as per RFC 3236
+  (report by Elimar Riesebieter) -TD
+
+2004-05-23 (2.8.6dev.4)
+* use puts() rather than printf() in some messages to avoid chance of "%" in
+  the translation -TD
+* add experimental option --enable-japanese-utf8 for using libiconv for
+  Japanese and UTF-8 -TH, TD
+* update makelynx.bat -Victor Schneider
+* modify configure script CF_ADD_CFLAGS to put definitions of quoted strings
+  in EXTRA_CPPFLAGS -TD
+* fixes from Thorsten Glaser:
+  + check for arc4random as a possible random function.
+  + modify configure script CF_CHECK_CACHE to look for config.guess in
+    $ac_aux_dir if it is not in the source directory.
+* fix naming conflict with AS_cmp() function when NOT_ASCII is defined -PG
+* read user's ".newsauth" file for news-server authentication information
+  (prompted by A R Vener request) -TD
+* modify HTSaveAndExecute() to check first for result from HTFileSuffix()
+  before choosing between BIN_SUFFIX and HTML_SUFFIX.  This allows the PDF
+  viewer on OS X to get the proper suffix (.pdf) rather than .bin -PG, TD
+* filter out extra screen-repainting when a charset change is made -IZ
+* update README and other documentation to reflect new mailing list -TD
+* add PREFERRED_ENCODING to lynx.cfg, along with an options-menu selection for
+  this, to set "Accept-Encoding:" string -TD
+* add PREFERRED_MEDIA_TYPES to lynx.cfg, corresponding to the option for
+  HTFilterPresentations().  A minimal set of media types is used by default,
+  though the old behavior can be selected -TD
+* modify HTFilterPresentations() to use new option menu entry for specifying
+  what parts of the user- and system-mailcap data to use in Accept's.  The
+  intent is to provide easily managed subsets of the Accept string, to work
+  with servers that do not accept long Accept strings (prompted by discussion
+  on lynx-dev mailing list) -TD
+* Remove logic from HTFilterPresentations() which reduced the Accept strings
+  based on wildcards since RFC 2616 says wildcards are lower precedance than
+  other settings -TD
+* improve matching for mailcap test-commands in HTInit.c by eliminating
+  unnecessary whitespace with TrimCommand() -TD
+* remove obsolete note about SSL patches in lynx_url_support.html -TD
+
+2004-05-06 (2.8.6dev.3)
+* add scripts/indent.sh, use this to reindent C source files -TD
+* bump version in makefile.in to 2.8.6 -TD
+
+2004-04-27 (2.8.6dev.2)
+* modify CF_NCURSES_LIBS to only look for -lmytinfo when building with ncurses.
+  This works around FreeBSD's broken linker semantics when configuring for
+  ncursesw -TD
+* update CF_GNUTLS macro to look for -lgnutls-openssl as well as the older
+  -lgnutls-extra library -TD
+* fix a spurious match of <openssl/ssl.h> when --with-ssl=path option provides
+  enough information to ensure that the test would be incorrect -TD
+* update config.guess (2004-02-16), config.sub (2004-02-23)
+* fixes to src/chrtrans/makefile.in, e.g., for building PDCurses version,
+  broken by dev.1 changes for cross-compiling -TD
+* remove macros such as ARGS1, NOPARM which supported K&R compilers -TD
+
+2004-04-19 (2.8.6dev.1)
+* correct ifdef in LYgetattrs() to ensure that getattrs() is used only if the
+  configure script actually found it (report/patch by Paul Gilmartin).
+* correct LYcommandList() to allocate data passed to HTList_addObject(), since
+  LYRemoveFromCloset() may free it (report by FLWM) -TD
+* modify configure-script check for use_default_colors() to allow it to find
+  NetBSD's implementation of that function (report/patch by Julian Coleman)
+* check for non-null file pointer in cleanup of makeuctb to work properly when
+  it is invoked without command-line parameters (report by FLWM) -TD
+* add a null-pointer check to parameter of HTQuoteParameter(), fixes bug
+  introduced in 2.8.5pre.4 (report by FLWM) -TD
+* correct units shown by HTReadProgress() for very low rates - bug from
+  2.8.5pre.3 changes (report by PG) -TD
+* use symbol USE_VERTRACE in HTUtils.h to allow makefiles that do not use the
+  configure script to turn on the equivalent --enable vertrace feature (request
+  by FLWM) -TD
+* modify configure script and makefiles to allow cross-compiling -TD
+* make ANSI C required, drop support for K&R C -TD
+* update current-version in README -LP
+* updated po files (da.po, de.po, et.po, hu.po, tr.po) from
+  http://www.iro.umontreal.ca/contrib/po/maint/lynx/
+* use autoconf 2.52 (plus patches), to simplify use in cross-compiling -TD
+* escape "From " when it appears in a page which is mailed, to avoid confusing
+  mail clients -TD
+
+2004-02-04 (2.8.5rel.1)
+* build fixes for MINGW32 -DK
+* build fixes for OS/2 (reported by IZ) -TD
+
+2004-02-02 (2.8.5pre.5)
+* MINGW32-specific changes to build with that configuration using the configure
+  script in Cygwin and "-mno-cygwin" option -DK
+* move Cygwin defines for WIN_EX, _WINDOWS_NSL out of www_tcp.h, to the
+  configure script to fix a definition-order problem with CAN_CUT_AND_PASTE
+  (report by DK) -TD
+* improve workaround for ncurses to build with pre-4.0 versions that do not
+  declare attr_t -TD
+
+2004-01-28 (2.8.5pre.4)
+* workaround to build with ncurses 4.2 -TD
+* fixes from Thorsten Glaser:
+  + use ${GNUSYSTEM_AUX_DIR}/mkinstalldirs if it exists.
+  + use $ac_config_sub variable in CF_CHECK_CACHE macro.
+  + add case in CF_XOPEN_SOURCE macro to prevent defining _XOPEN_SOURCE
+  + use $(MKINSTALLDIRS) variable in generated makefile.
+  + correct comment in lynx.cfg for the default value of FTP_PASSIVE
+  + increase pattern length for mkdtemp() call.
+* add command-line & menu option/config variables to replace the compile-time
+  UNDERLINE_LINKS definition (suggested by BL) -TD
+* correct ownership of installed lynx_doc directory (report by FLWM, PG) -TD
+* modify configure check for tar to test several common variants including
+  star, modify makefile.in to use the configured 'tar' program (request by
+  FLWM) -TD
+* compiler ifdef-fixes -BL
+* documentation updates for DJGPP and OpenSSL -DK
+* fixes/updates for DJGPP makefiles -DK
+* modify po/makefile.inn to substitute the PACKAGE and VERSION strings into
+  lynx.pot automatically, and to remove the unused boilerplate header comment
+  (suggested by LP) -TD
+* fixes for substituted project-version in configure script -TD
+
+2004-01-24 (2.8.5pre.3)
+* update documentation's version numbers for release -TD
+* modify configure check for libbz2 to allow for older headers which do not
+  include <stdio.h> -TD
+* add configure option --enable-locale-charset, which adds configure settings
+  and an option-menu checkbox telling lynx if it should use the function call
+  nl_langinfo(CODESET) to find the display character set rather than rely on
+  the user to set it via lynx.cfg or the options menu (discussion with Andreas
+  Metzler) -TD
+* remove intl subdirectory (gettext-0.10.35), since some of the ".po" files
+  have been modified to rely upon newer features of gettext.  Modified
+  configure script macro to report this properly -TD
+* add SSL_CERT_DIR, SSL_CERT_FILE to lynx.man (suggested by SC) -TD
+* documentation updates for DJGPP -DK, LP, FLWM
+* update address for Free Software Foundation in COPYHEADER and COPYING
+  (Atsuhito Kohda).
+* change CF_CHECK_IPV6 to warn rather than error-out if a working getaddrinfo()
+  function cannot be found.  The previous behavior would warn on Linux and
+  error-out on other systems (report by RobertM) -TD
+* localized displayed strings used for popups in options menu -TD
+* add SHOW_KB_NAME to allow user to decide whether to display "KB" or "Kib"
+  or even "Kilobytes" for the progress message (discussion on lynx-dev) -TD
+* correct form generated to select Visited Links page in LYHistory.c to match
+  the values used in LYOptions.c with new function LYMenuVisitedLinks, and
+  corrected ifdef to ensure that menu is generated when the forms-based option
+  menu is configured (report by TH) -TD
+* modify configure check for ranlib to use AC_CHECK_TOOL, since AC_PROG_RANLIB
+  does not do proper cross-compiling checks.  This actually applies to autoconf
+  2.5x -- autoconf 2.13 does less in that area -TD
+* update config.guess (2004-01-05) and config.sub (2004-01-05).
+* ensure that freeaddrinfo() is only called if lynx has initialized its
+  parameter, fixes a core-dump on IRIX6.5 -TD
+* change remaining references for lynx.browser.org to lynx.isc.org (reported by
+  Frederic L W Meunier) -TD
+
+2004-01-19 (2.8.5pre.2)
+* update URLs in docs/README.ssl (SC, DK).
+* use http://search.lycos.com rather than the messy http://www.lycos.com -DK
+* update some URLs in lynx_help -FLWM (Frederic L W Meunier)
+* remove a few unnecessary #include's (reported by Frederic L W Meunier) -TD
+* fix some compiler warnings with casts -PG
+* add docs/ directory to "make install-doc" rule.  If the help-files are
+  compressed, the same will apply to the non-README files in that directory
+  (reported by Frederic L W Meunier) -TD
+* minor fixes to allow compiling with K&R compiler, e.g.,SunOS 4.x with the
+  5lib curses -TD
+* split up remove_file() in LYLocal.c so directory removal is performed in a
+  separate function remove_directory().  Neither will perform an "rm -rf",
+  but only single operations "rm" and "rmdir".  The original behavior can be
+  obtained by setting RMDIR_PATH to point to a script which does "rm -rf"
+  in lynx.cfg (suggested by Pat Walsh).
+* modify configure script so NetBSD does not define _XOPEN_SOURCE, since that
+  makes the IPv6 code not compile -TD
+* modify configure script to prefer _SGI_SOURCE on IRIX6.5 to allow it to
+  compile IPv6 support (report by RobertM) -TD
+* replace fixed-buffer Style_className[] with a dynamically-allocated buffer,
+  needed for large pages which lack correctly-nested tags, e.g.,
+    http://www.aspas-nature.org/petitions/petition2.html
+  (reported by Frederic L W Meunier) -TD
+* move OMIT_SCN_KEEPING definition to LYHash.h, to avoid mismatch between the
+  LYCurses.c and HTML.c -TD
+* remove obsolete OPT_SCN ifdef from HTML.c since the inactive side does not
+  compile -TD
+* fix a few out-of-bounds errors in LYSetHiText() and related functions,
+  which were found by valgrind -TD
+
+2004-01-07 (2.8.5pre.1)
+This version has been test-built on
+  * Linux (ncurses, ncursesw, PDCurses, slang),
+  * FreeBSD 4.9, 5.1 (ncurses, ncursesw),
+  * Tru64 4.0d, 5.1 (cc, curses),
+  * OpenVMS,
+  * OS/2 EMX,
+  * win32 (Visual C++ 6.0 and Borland C++, Cygwin),
+  * AIX 4.3, 5.1,
+  * HPUX 11,
+  * Solaris 8, 9.
+Other recent builds include IRIX 6.5 (cc and gcc, curses/ncurses),
+FreeBSD 4.1, 4.8, NetBSD 1.5, 1.6 and OpenBSD 2.8 (curses/ncurses).
+
+2004-01-07 (2.8.5dev.17)
+* fix initialization of LYlines and LYcols for curses configurations other than
+  ncurses which implement pads -TD
+* fix ifdef's for alloca(), e.g., on AIX 4 -TD
+* fix misspelled LYGetEnv/LYgetenv in DJGPP configuration -DK
+* a few portability fixes to allow building on OS/2, AIX, Tru64 and HPUX -TD
+* add docs/README.rootcerts -IZ, SC, Johannes Hromadka
+* update po files (ca.po, da.po, de.po, et.po, hu.po, ru.po, sv.po, tr.po and
+  zh_CN.po) from
+  http://www.iro.umontreal.ca/contrib/po/maint/lynx/
+* correct some mismatches between INSTALLATION and "configure --help" (prompted
+  by discussion with SC) -TD
+* undef conflicting symbols "small" and FILE_DOES_NOT_EXIST which are
+  misdefined in Cygwin's w32api headers (report by Frederic L W Meunier) -TD
+* amend check for refresh-URL to ensure it only prepends a link for text/html
+  content type (report by Carlton Anderson) -TD
+* do not strip parameters from refresh-URL (report by Carlton Anderson gave an
+  example of their use) -TD
+* correct logic for resetting count of leading/trailing spaces in S_litteral
+  case (report by TH) -TD
+* remove obsolete XMOSAIC_HACK defines -TD
+* adapted patch by Bjoern Jacke <bjoern@j3e.de> to ensure that toupper(),
+  tolower() and isupper() macros are interpreted in POSIX locale.  This is
+  ifdef'd with EXP_ASCII_CTYPES -TD
+* improve check for Unix-style shell given in $SHELL by limiting the check to
+  the base-name (discussion with GV, DK) -TD
+* modify increment_tagged_htline() to reallocate its HTLine parameter if the
+  result would be larger than the allocation.  This can happen when a large
+  textarea is adjusted (report by Thorsten Glaser)  -TD
+* add ifdef'd logic to change HTLine to calloc() rather than memory pools,
+  making it possible to use valgrind, etc., for debugging -LP
+* modify version shown for SSL to be derived from runtime SSLeay_version()
+  function if linked with OpenSSL or SSLeay.  Add corresponding definition
+  for GNU TLS (discussion by Frederic L W Meunier, GV) -TD
+* add check for broken ProFTPD 1.2.5rc1, e.g., at ftp://ftp.oldskool.org/pub,
+  and force a reconnection if an error 550 is detected when doing RETR.  This
+  is ifdef'd with BROKEN_PROFTPD and checks version (reports by GV, DK) -TD
+* modify file-upload to not print a warning message if the form-field is empty
+  (Frank Heckenbach).
+* add a few null-pointer checks to GridText.c (addresses symptoms reported by
+  Frederic L W Meunier when nested-tables are toggled off) -TD
+* modify LYTrimNewline() to trim carriage-returns as well as line-feeds, making
+  it possible to share cookie files between platforms that have different
+  line-terminations (report by Frederic L W Meunier) -TD
+* rename EXP_PERSISTENT_COOKIES ifdef to USE_PERSISTENT_COOKIES -TD
+* rename EXP_READPROGRESS ifdef to USE_READPROGRESS -TD
+* rename SOURCE_CACHE ifdef to USE_SOURCE_CACHE -TD
+* change a few configure script defaults to "enable":  source-cache, prettysrc
+  and read-eta.  Also change default for read-eta configuration flag to "Show
+  KB/Sec" (requests by LP, Frederic L W Meunier) -TD
+* modify generated help_files.sed script to fix a couple of cases where the
+  intermediate result had more than 2 ".gz" substrings to reduce (reported by
+  IZ) -TD
+* change configure script to compile-in file-upload by default, change its
+  corresponding ifdef to USE_FILE_UPLOAD -TD
+* use EXEEXT, OBJEXT substitutions in makefile.in -TD
+* update configure script check for getbegx(), etc -TD
+* revert table-layout changes from dev.15/dev.16 because of unresolved
+  issues -TD
+* add configure option --with-bzlib -TD
+* modify bzip2/zlib ifdef's to make them independent -TD
+* implement support for bzip compression by internal calls to libbz2 -IZ
+* make usage of EDIT_A_PREV_SHORTCUT and EDIT_THE_PREV_SHORTCUT consistent
+  (report by LP) -TD
+* if a document is in the cache (the rendering is in memory), on reload it
+  should not be cleared from the cache until the connection to the server is
+  opened; if the connection fails, the user will reuse the old version (request
+  by IZ) -LP
+* for DJGPP, escape all backslashes in commands given to LYSystem() when
+  a Unix-style shell is given in $SHELL -DK, TD
+* correct strings in LYOptions.c so ENABLE_LYNXRC works for bookmark_file
+  and run_all_execution_links -DK
+* modify comparison in USE_CURSES_PAIR_0 ifdef of parse_attributes() to take
+  into account the mono-attributes as well.  This fixes a case where a color
+  style might have the same color-attributes as the background, and would
+  incorrectly fall-through to use the mono-attributes (report by DK) -TD
+* rewrote lynx_chg_color() to handle a COLORS value of 16 (report by TH) -TD
+* redefine PDCurses' COLORS value to 16, since it incorrectly uses 8 -TD
+* add -scrsize option and corresponding SCREEN_SIZE value to lynx.cfg to allow
+  lynx's screensize to be specified.  To display background color properly,
+  this also requires a patch to PDCurses:
+    http://www.t3.rim.or.jp/~patakuti/tmp/lynx/PDCurses-2.5.patch.resize
+  This requires PDCurses 2.5 and higher -TH
+* add a clean-rule to src/chrtrans/makefile.bcb -TD
+* fix pathname generated for "View temporary file" in LYDownload.c using new
+  function LYAddPathToSave() (report by P.J.Walsh) -TD
+* comment-out --enable-libjs option since it is not used -TD
+* change code to match lynx.cfg description for FORCE_COOKIE_PROMPT and
+  FORCE_SSL_PROMPT, making "prompt" rather than "default" the keyword to use
+  when telling lynx to prompt (report by DK) -TD
+* really add FORCE_COOKIE_PROMPT setting to lynx.cfg (report by DK) -TD
+* change default of configure script options --enable-source-cache and
+  --enable-prettysrc to non-experimental to "yes", so they will normally
+  be compiled-in, but normally disabled in lynx.cfg (suggested by LP).
+* modify configure script and related ifdef's to build with gnutls 0.8.9
+  (report by Atsuhito Kohda) -TD
+* modify ifdef's to use mkdtemp() if it is available (prompted by MirBSD
+  patch) -TD
+* several fixes from (TG) (Thorsten Glaser - MirBSD):
+  + workaround for invoking shell scripts when executable permissions are
+    discarded as a result from using CVS.
+  + adjust buffer-size used in a readlink() call in case the result is too
+    long to include trailing null.
+  + change default ftp mode to passive.
+  + if ftp connection fails, automatically retry, switching between passive
+    and active modes.  Do this retry switching only when connecting to a
+    different host.  A new variable ftp_local_passive distinguishes this
+    from the user preference in ftp_passive.
+  + improved certificate handling (case-insensitive domain-comparison, strip
+    port-numbers from comparison).
+  + fix a few typos & compiler-warnings.
+* add PT154 charset support.  See
+  http://www.iana.org/assignments/charset-reg/PTCP154 for more information.
+  (patch by Timur Birsh <birsh@mail.kz>)
+* integrate some improvements for configure script in CF_BUNDLED_INTL and
+  CF_OUR_MESSAGES from tin and dialog -TD
+* remove #undef for UTF8 from UCMap.h, rename UTF8 variable, modify configure
+  check for slang to test-compile with with the Debian slang-utf8 package -TD
+* modify configure script to not use "head -1", which does not work for some
+  platforms when POSIXLY_CORRECT (sic) is set -TD
+* fix configure script check for term.h, which may be <ncursesw/term.h> -TD
+* modify an ifdef in HTCheckForInterrupt() to allow compile with DJGPP -GV
+* add docs/README.sslcerts (Stefan Caunter <cauntes@mail.mohawkc.on.ca>).
+* modify LYLocalFileToURL() to allow for CurrentDir() returning a value that
+  does not begin with a slash, e.g., with DJGPP which returns a drive-letter
+  first -DK
+* amend change in dev.15 to HTParse() to escape spaces, to exclude non-URL
+  strings such as absolute filenames (report by Patrick Ash) -TD
+* modify LYParseTagParam() (added in dev.13) to not stop on ';' (fixes a bug
+  reported by LV which broke complicated refresh-URL containing "&amp;") -TD
+* change default start page to lynx.isc.org, since lynx.browser.org is not
+  maintained -TD
+* modify HTML_start_element() to work with a case where there is an HREF
+  attribute without a value, fixes bug introduced after dev.9, e.g., for
+        X-URL: http://bankr.tsr.ru/tv-6.shtml
+  (also reported by Frederic L W Meunier for http://www.jacotei.com.br/) -LP
+* correct construction of link to temporary filename in download options, did
+  not port to DOS-pathnames (report by LP) -TD
+
+2003-06-01 (2.8.5dev.16)
+* add zh_CN.po from
+  http://www.iro.umontreal.ca/contrib/po/maint/lynx/
+* updated obsolete link for nntp in users's guide -TD
+* add F_FILE_TYPE to F_TEXTLIKE() macro, and use it consistently in a few more
+  places, making editing in filename fields consistent with other text input
+  fields -TD
+* add LYAdjHiTextPos() to modify the behavior of color-style code, so leading
+  blanks are not highlighted (reported by Frederic L W Meunier) -TD
+* modify CacheThru_new() to accept "https:" URLs for source-caching (report
+  by Chuck Martin) -TD
+* adapt some of the SH_EX ifdef'd features (TD):
+  + add -delay option, to make progress messages slow, along with corresponding
+    code for lynx.cfg
+  + show build date/time for systems that do not use a configure script.
+  + use LYK_CHG_CENTER keycode bound to ^Q to control whether table cells are
+    centered.  The command-line -center option also controls this behavior.
+* add BIN_SUFFIX, TEXT_SUFFIX to userdefs.h -TD
+* modify BeginInternalPage(), adding a doctype to generated internal pages
+  to allow validating them -TD
+* modify HTFWriter.c to use binary suffix for any file with an application
+  presentation type, to better distinguish it from text and html.  Use text
+  suffix for any "text/" file other than "text/html".  These changes cover the
+  most common cases needed to make a link to view the temporary file useful in
+  the download page -TD
+* modify LYdownload_options(), adding a link to view the temporary file if the
+  downloaded file is text or html -TD
+* modify LYwouldPush(), omitting the download page from list of user-interface
+  pages which should not be pushed onto the history stack when visiting another
+  page, such as info or help.  Otherwise the downloaded file is discarded
+  (report by BL) -TD
+* simplify set_vi_keys() and related functions using table-driven
+  set_any_keys() and reset_any_keys() -TD
+* HTAnchor_findAddress now returns HTParentAnchor, avoid casting -LP
+* change select timeout in HTCheckForInterrupt() to zero, allowing immediate
+  return rather than waiting (DJGPP otherwise blocks for 50msec).  For Unix
+  platforms, the DontCheck() function limits the amount of polling which
+  otherwise would be too much CPU usage -LP
+* modify configure check for gcc -Winline warning to work around defect in
+  gcc 3.3 -TD
+* fix bug introduced recently in forms-submitting for TEXTAREA; the "%0d%0a"
+  was put after each line rather than before, making the first and second lines
+  joined (report by LV) -TD
+* reset the leading/trailing space counts in error-recovery logic added in
+  2.8.5dev.15 for S_litteral case in SGML_character().  Otherwise a mismatch,
+  e.g., due to a stray "<" or ">" in <script>...</script>, prevented a match
+  on the </script> -TD
+* do not free adult_table[] atexit - it should be perfectly empty after
+  free'ing all HText's.  (There is an error if it is not empty at exit) -LP
+* unnamed child anchors (`children_notag' list) now use HText memory pool.
+  Links properly deleted when reparsing the document -LP
+* Use less memory for documents with many anchors:  most anchors are never
+  visited, just stored for the reference.  So fill in adult_table[] with
+  HTParentAnchor0 (36 bytes size) instead of full HTParentAnchor (~200 bytes).
+  HTParentAnchor now allocated on demand, nearly 1:1 to HText.  [more comments
+  in HTAnchor.h, changes located in HTAnchor.c] -LP
+* HTParentAnchor0 stores its hash value, to avoid calling HASH_FUNCTION twice
+  on the same anchor (Re:  HTAnchor_delete()) -LP
+* fix a potential out-of-bounds bug in HTBEquivalent() -LP
+* change strrchr() calls to strchr() in a few src/*.c file when parsing
+  "#fragment" left-to-right -LP
+* modify HTFWriter_abort() to remove file on error -IZ
+* added hot.paste style which puts a right-arrow at the UR corner (which is
+  currently unused).  Clicking on it initiates a GOTO to the current selection
+  (same as PASTE_URL action).  The hot.paste style is disabled unless STYLES
+  and CUT_AND_PASTE are both enabled.  Disabled and the user defines hot.paste
+  in the ".lss" file -IZ
+* modify LYK_PASTE_URL case in LYMainLoop.c to allow pasting URLs of the form
+  <address> and "<URL:address>" to lynx.  This is useful when it is not easy to
+  choose address without the surrounding "<>" or "<URL:>" -IZ
+* make a minor memory saving (circa 15%) for table processing, improve yet
+  another case of "ladder" (as in the top of google results), and fixes one
+  case of "wrong indentation" (elements of a table which contained <center>
+  were made too wide) -IZ
+* modify Stbl_trimFakeRows() to compensate for 2.8.5dev.15 changes to
+  Stbl_addRowToTable() from 2.8.5dev.15 which caches shrinking cell arrays in a
+  pool.  It did not take into account reallocation of the same data, e.g., in
+  Stbl_reserveCellsInRow().  For example:
+    http://camden-sbc.rutgers.edu/FacultyStaff/Directory/default.htm
+  (report by Patrick Ash) -IZ
+* add FORCE_COOKIE_PROMPT setting to lynx.cfg, allowing for manipulation in the
+  options menu and (if LYNXRC_ENABLE is set) via the .lynxrc file.  This lets
+  the user decide whether to ignore prompting for cookies with invalid syntax.
+  If the prompts are ignored, a corresponding message is displayed -TD
+* add FORCE_SSL_PROMPT setting to lynx.cfg, allowing for manipulation in the
+  options menu and (if LYNXRC_ENABLE is set) via the .lynxrc file.  This lets
+  the user decide whether to ignore prompting for questionable aspects of
+  an SSL connection.  If the prompts are ignored, a corresponding message is
+  displayed -TD
+* change select() calls to use the expected 1+descriptor value documented for
+  that function rather than FD_SETSIZE.  It is possible that some very old
+  or unique platform would not work, but this is more efficient (discussion on
+  lynx-dev) -TD
+* modify logic for S_litteral case in SGML_character() to recover from spaces
+  between the '<', '>' and the corresponding end of the tag, e.g.,
+	<style >
+	< style >
+	< style >
+  match "<style>", and
+	</style >
+	< /style >
+	< /style >
+  match "</style>" (report by TH) -TD
+* correct a check in HText_trimHightext() for the last line of the display,
+  which left unhighlighted the portion of a multi-line anchor which fell in
+  that place (report by TH) -TD
+* correct an off-by-one in redraw_lines_of_link() which left the link on the
+  last line on a page highlighted when moving the cursor up (reported by Morten
+  Bo Johansen) -TD
+
+2003-04-27 (2.8.5dev.15)
+* change definition of docdir1, helpdir1 to avoid using ksh-semantics (see
+  2.8.5dev.2) -TD
+* update ja.po, uk.po, zh_TW.po from
+  http://www.iro.umontreal.ca/contrib/po/maint/lynx/
+* improve layout of TRSTable.c, reducing "laddering" effect, where cells in
+  different columns do not overlap by lines -IZ
+* modify SGML_new() to allow display charset-switching when reloading a
+  document -IZ
+* fix a buffer-size in LYK_PASTE_URL case in LYMainLoop.c -IZ
+* various improvements to load-time for TRSTable.c -IZ
+  As a test:
+   <URL:ilyaz.org/software/tmp/table_2col_bold_it_500000.html.gz>.
+  This is a simple table with 2 columns, one with bold contents, another with
+  italic one.  The total number of rows is 500K.  With the patch and an
+  acceptable malloc(), lynx should use the working set of about 110M to show
+  the table.  On my system with 128M memory, this leads to only 4M of the
+  process space swapped.
+* add case LYK_TO_CLIPBOARD to HTCheckForInterrupt (not a good place), to allow
+  COPY command to work during download (copying the location to clipboard).
+  The best thing would be to get the location *after* redirects, but this will
+  require some additional work -IZ
+* add popen-based support for cut/paste.  This is a slightly reworked patch to
+  GNU readline.  If RL_PASTE_CMD and RL_CLCOPY_CMD are defined in the
+  environment, lynx will use them as commands to do cut&paste.  The simplest
+  such commands could just store/retrieve things from
+  /tmp/.clipboard_user-name; more advanced ones could use X clipboard -IZ
+* modify yawerty_kb.h to map U+0411 and U+0431 to 'B' and 'W' positions
+  respectively.  The map contained U+0412 and U+0432 at those positions,
+  which are duplicated at other positons -IZ
+* fix HTLoadFinger() which was miscasting const data -TD
+* update Subir Grewal's Lynx links URL to the newest location
+  http://www.subir.com/lynx.html -TD
+* add configure option --with-gnutls, to allow lynx to be built with gnutls.
+  Used gnutls 0.8.6 on Redhat 8.0 to login at yahoo (gnutls is not very
+  portable, so this is an experimental option) -TD
+* modify loop in HTInitProgramPaths() to convert enum ProgramPaths to an
+  integer, to accommodate HPUX 11.22 compiler (report by JES) -TD
+* amend change in dev.13 to HTParse() to escape spaces, to exclude lynx's
+  internal URL types such as lynxprog (report by P.J.Walsh) -TD
+* modified ifdef's to enable -connect_timeout option for DJGPP -GV
+  In particular, in LYUtils.c, undef "select" in case Lynx is compiled with
+  curses (and not S-Lang).  Watt-32's select_s cannot be used on a
+  stdin handle, so one must undef it and use DJGPP's select().
+* modify ifdef in HTCheckForInterrupt() to work with MingW and PDcurses -GV
+* add version information for the macros in aclocal.m4 (request by Lars
+  Hecking) -TD
+* modify file-upload to use actual binary-data rather than base64-format -TD
+* generate unique boundary for multipart data in HText_SubmitForm() -TD
+* reorganize HText_SubmitForm(), maintaining post data using bstring's -TD
+* modify HText_SubmitForm() to add field name for the fake coordinate pair
+  when formatting a multipart submit (report by Peter Pilsl
+  <pilsl_@goldfisch.at>) -TD
+* change post_data to a bstring; implement functions and macros for
+  manipulating bstring data.  This allows post_data to maintain embedded nulls,
+  e.g., for file-upload -TD
+* fix ifdef's for <ncursesw/term.h> -TD
+* fixes for file upload -IZ
+  + modify logic for headers use write them even if MultipartContentType was
+    not set.
+  + change logic for base64 to be used ONLY if \0 was found.
+    If a "strange" char is found, only change "text/plain" to
+    "application/octet-stream".
+* change a couple of _user_message() calls to HTUserMsg2() calls so their
+  content is saved in the "Messages" buffer -IZ, TD
+* undo 2002-11-11 SGMLFindTag optimization (problem with color styles,
+  reported by IZ). Optimize the function by storing the previously found tags.
+  Also use my_casecomp() to decrease AS_casecomp() calls by testing the
+  first character manually -LP
+* optimize HTStyle comparison:  just compare numbers from enum.
+  It was previously implemented as a strcmp comparison with a fixed string.
+  Used in a very inner loop, in HTML_put_character() -LP
+* LYEnsureAbsoluteURL() now absorbs LYFillLocalFileURL() call -LP
+* optimize LYLegitimizeHREF() -LP
+* in HTML.c, revise href resolving logic.  HTAnchor_findChildAndLink now
+  resolves href with respect to BASE internally; HTParse incorporates
+  LYFillLocalFileURL call (after the parsing, and only when the related string
+  is not empty and parse includes access, host, path and punctuation).  This
+  removes all LYFillLocalFileURL and most HTParse calls from HTML.c and makes
+  code more consistent. (Previously, functions were called in a different order
+  for document with/without BASE, which had the side effect in some cases,
+  e.g., href="c:" on a DOS machine was resolved properly with _any_ base, and
+  badly broken without:) -LP
+* add/use HTParseALL macro to simplify coding -LP
+* revise "internal links" logic (read KW 1997-11-03 notes, before v2.8).
+  In HTML.c and HTAnchor.c, internal links code affects only parent lookup
+  in the adults table (more correct in case of post data), now a mainline:
+  we omit "#ifndef DONT_TRACK_INTERNAL_LINKS" condition in the two files.
+  In HTML.c, avoid using internal links for unrelated `src=' attributes
+  (BGSOUND_SRC, FRAME_SRC, IFRAME_SRC, OVERLAY_SRC, EMBED_SRC links:) -LP
+* refine HTAnchor_delete() vs deleteLinks() mutual recursion logic - LP
+* change ALIGN_SIZE in GridText.c to sizeof(double), which is probably more
+  portable than "8" -LP
+* modify a syslog() call to guard against possible '%' in its parameter -TD
+* remove extra quotes from calling HTMake822Word() for form boundary names
+  (addresses bug report for fastmail.fm by P.J.Walsh) -TD
+
+2003-02-04 (2.8.5dev.14)
+* correct a missing ">" at the beginning of page sent as response to mailto -TD
+* simplify (clarify) anchor structure:  links now moved from HTAnchor to
+  HTChildAnchor (the only place they were used).  By this we avoid unneeded
+  casting in calls to HTAnchor_followMainLink, HTAnchor_followTypedLink,
+  deleteLinks. [GridText.c, HTML.c, LYList.c, HTAnchor.c] -LP
+* as of 1998-11-21 "workaround for multiple anchors in the same (invalid) HTML
+  document with the same NAME and different destinations (HTAnchor.c) - KW",
+  along with skipping HTAnchor_link() call in this case now, we realize that
+  HTChildAnchor may have only a single link.  (Previously implemented by
+  mainLink and links list).  This simplifies HTAnchor.c -LP
+* simplify HTChunk.c -LP
+* optimize LYRemoveNewlines() and LYRemoveBlanks() -LP
+* check for no common name (CN) in certificate when connecting via SSL, fixes
+  a SIGSEGV with
+    https://web-shokai.tokyo-denwa.net/
+  (patch by Hataguchi Takeshi)
+* add uk.po (Ukranian) from
+  http://www.iro.umontreal.ca/contrib/po/maint/lynx/
+* modify HTList_linkObject to avoid an infinite loop in HTList_unlinkObject due
+  to relinking some node several times, corrupting the previous list chain -LP
+* increase ATEXITSIZE to 50, 40 was not enough -TD
+* ifdef-out call to Cygwin_Shell() in LYMainLoop.c, which does not work
+  properly for some environments (report by Corinna Vinschen
+  <vinschen@redhat.com>, forwarded by Frederic L W Meunier) -TD
+* correct a bug in HTAnchor_findChildAndLink() introduced in dev.13 handling
+  USEMAP, e.g.,
+    http://www.sendas-delivery.com.br/topo_sendas.asp
+  (reported by Frederic L W Meunier) -LP
+* minor fixes for K&R compiler on SunOS: prototype of HTDOS_slashes(),
+  definition of LYLeakSequence -TD
+
+2003-01-22 (2.8.5dev.13)
+* change new memory-allocation in HTString.c and GridText.c to provide pointers
+  to data aligned to the host's pointer-size, to work on Tru64 where this
+  happens to be 8 -TD
+* resync ".po" files using msgmerge -TD
+* remove quadratic complexity from insert_blanks_in_line() usage with large
+  tables (Stbl).  It occasionally cleans up split_line() a bit.  CPU load
+  anomaly reported by BL -LP
+* ALLOC_IN_POOL, POOL_NEW, POOL_FREE macros now became functions, suggested by
+  BL -LP
+* define HAVE_ALLOCA for djgpp fixed-configuration -LP
+* add command-line option (--nested-tables) to help in testing this feature -TD
+* add command-line option (--find-leaks) to disable the memory leak checking
+  code, allowing one to build an executable which is useful for both normal
+  and leak-checking (request by Frederic L W Meunier) -TD
+* improve performance of HTParse() for very long strings -LP
+* fix memory leak in HTFileSaveStream() -LP
+* further optimization in HTAnchor.c - save 3 mallocs per HTChildAnchor by
+  using new HTList_ functions:  HTList_linkObject(), HTList_unlinkObject(),
+  HTList_unlinkLastObject() which utilize external memory, no malloc/free -LP
+* modify "make install-help" rule to avoid warning message about keystrokes
+  subdirectory (report by Martin Mokrejs) -TD
+* optimize !HText_TrueLineSize() expressions as HText_TrueEmptyLine() -LP
+* optimize is_url(), rewriting it as case-statements to avoid unnecesary
+  comparisons, make similar optimization in HTParse() -LP, TD
+* corrected logic in is_url() where the "://" was not necessarily checked in
+  the proper position - TD
+* for color-style configuration, add a link to lynx.lss from LYNXCFG: -TD
+* simplify setup of internal pages with new function InternalPageFP() -TD
+* modify parsing of refresh-URL to strip single quotes, to handle
+    http://tovar.yandex.ru/
+  (reported by LP) -TD
+* investigated conflict between NSL_FORK and _WINDOWS_NSL ifdef's for Cygwin
+  configuration in HTTCP.c; left them as-is since #undef'ing _WINDOWS_NSL in
+  that case causes problems connecting (feedback by Frederic L W Meunier) -TD
+* corrected an off-by-one error in computing the location of the bottom line
+  for mouse input in PDCurses configuration which made that area ignore mouse
+  clicks.  Merged almost-identical cases for mouse-input for NT/Windows95 -TD
+* ifdef'd out (USE_CURSES_PAIR_0) the ASSUMED_COLORS logic for the PDCurses
+  configuration (reports by DK) -TD
+* LYSetHiText(), LYAddHiText(), and LYClearHiText() use HText memory pool -TD
+* add atexit-cleanup for history stack, removed incomplete code for this from
+  cleanup(), since that gave misleading results in leak-checking.  Fix a few
+  small leaks as well (reported by LP) -TD
+* modify cleanup() to leave the trace file open if checking for leaks -TD
+* add some simple statistics to summary in Lynx.leaks report -TD
+* add malloc-sequence number to Lynx.leaks report, to help with debugging -TD
+* fix memory leaks in nested-tables logic, which did not free subtable data
+  if there was an enclosing table (reports by Frederic L W Meunier) -TD
+* adapted change by LP to allocate HTLine's from memory pool -TD
+* move fallback definition of MAXHOSTNAMELEN from HTFTP.c to www_tcp.h so it
+  can be used in HTTCP.c (Debian #140682) -TD
+* improved configure script checks for ncurses -TD
+* correct description of XLOADIMAGE_COMMAND in lynx.cfg (report by Mats
+  Peterson <mats@alicja.dyns.cx>) -TD
+* fix configure script so it does not compute basename of system mailer when
+  none was found.  Add check in LYMail.c, LYPrint.c to avoid using system
+  mailer when it is not configured (report by Frederic L W Meunier) -TD
+* update several po files (da.po, de.po, et.po, hu.po, sv.po, tr.po) from
+  http://www.iro.umontreal.ca/contrib/po/maint/lynx/
+* correct logic in recent HTAnchor_findChildAndLink() changes around internal
+  links and fragments; avoid unneeded reallocations by using HTParseAnchor()
+  instead of HTParse() -LP
+* trim some fat from HTML_start_element(), case HTML_A -LP
+* add optimized string functions StrAllocCopy_extra() [and paired FREE_extra()]
+  which store string size and never shrink; for heavily reallocated strings in
+  temp objects.  Used in SGML.c for value[] fields currently -LP
+* in HTUtils.h, FREE macro was unsafe if happen before 'else' -LP
+* modify HTParse() to escape any spaces which remain from LYLegitimizeHREF() or
+  other sources (report by Peter Rasmussen <plr@udgaard.com>) -TD
+
+2002-12-18 (2.8.5dev.12)
+* remove a check in LYMain.c for Cygwin's console, which does not work with
+  screen (report by Frederic L W Meunier) -TD
+* undo line/pool logic, fixing a memory leak -LP
+* changes proposed by Bela Lubkin, to optimize ALLOC_IN_POOL macro
+  substitution, pack bitfields in HTStyleChanges to make them more compact on
+  some systems -LP
+* correct logic of do_check_recall(), broken in dev.9 cleanup of pathname
+  constants with LYIsDosDrive() (report by Frederic L W Meunier) -TD
+* update makelynx.bat, built with slang configuration -TD
+* turn on file-upload in makefile.msc -TD
+
+2002-12-01 (2.8.5dev.11)
+* fix a typo in changelog date -TD
+* add project version & date to lynx.cfg -TD
+* document xxx_PATH variables in lynx.cfg -TD
+
+2002-11-11 (2.8.5dev.10)
+* modify file-upload to provide content-type based on file-suffix.  This is
+  needed to validate local html files with current the W3C validation service
+  webpage -TD
+* modify file-upload to warn but permit the filename or file contents to be
+  missing (report by Clemens Fisher) -TD
+* workaround for compiler bug in fix_httplike_urls() -BL
+* change enumShowColor so SHOW_COLOR_NEVER is zero as in 2.8.3, which makes the
+  result from LYChoosePopup() match the enum values.  This fixes a bug which
+  would make the slang configuration toggle back to color when accepting an
+  options screen (report by Sean McGuire <smcguire@soc.lib.md.us> and Carlton
+  Anderson) -TD
+* add a null-pointer check in content_is_compressed() -TD
+* in partial mode, load document with #fragment on the fly. Long awaited fix.
+  LYMainLoop_pageDisplay() now returns BOOL -LP
+* calculate WWW_SOURCE once, it is now a constant, not a define -LP
+* use malloc instead of calloc in several places, particularly in HTList
+  operations (each field initialized explicitely) -LP
+* fix a few typos in samples/mailcap (Carlton Anderson
+  <canderson1776@yahoo.com>).
+* ifdef'd default_fg and default_bg for PDCURSES to be 15, since that agrees
+  with lynx's use of color names, and works around a bug exposed by the
+  ASSUMED_COLORS change from 2.8.5dev.9 (report by DK) -TD
+* simplify pretty-source code in SGML.c using PUTS(), put_pretty_entity() and
+  put_pretty_number() -TD
+* refine S_attr test in SGML.c to make pretty-source code handle the case where
+  a blank precedes the '='.  The misplaced markers made lynx omit newlines from
+  the pretty-source view (report by LP) -TD
+* rewrote HTStat() to ensure that it does stat() for files on Windows -TD
+* HTTCP.c patch to make DJGPP/Watt-32 non-blocking connect in HTDoConnect().
+  This allows pressing 'z' to abort connections.  Removed extra _HTProgress()
+  for INET6; it overwrote previous progress message -GV, DK
+* in SGML.c, element stack now use a pool of 10 elements to avoid most of
+  malloc/free calls -LP
+* in HTParse(), use single alloca instead of three malloc/free pairs -LP
+* in HTParse.c, avoid most strcasecomp calls in scan() - LP
+* modify GridText.c to store lines, anchors, and forms in the same HText memory
+  pool as styles.  This will optimize memory allocation/deallocation by 8Kb
+  units.  The down side:  lines in TRST mode will be stored twice.  Some
+  structs are made a bit more compact -LP
+* add DJGPP to SINGLE_USER_UNIX special cases -DK
+* modify configure script to not strip the -g option from $CFLAGS if it was
+  present in the user's environment rather than autoconf adding it (report by
+  DK) -TD
+* add --with-curses-dir configure script option -TD
+* in SGMLFindTag, we translate string uppercase in-place and launch case
+  insensitive search, add SGMLFindUprTag() to cover the cases where the string
+  is readonly - LP, TD
+* DJGPP build restored.  MV_PATH was undefined long ago by mistake.  Fix recent
+  DJGPP changes in HTTCP.c:  move _resolve_hook few lines below, it will not
+  compile otherwise.  Remove minor warnings -LP
+* optimize parsing html with many relative links, href="#fragment" -
+  HTAnchor_findChildAndLink() and HTML_start_element(), case HTML_A:  now avoid
+  significant overhead when link == HTInternalLink (e.g., resolving against
+  base, lots of reallocations, parent lookup, etc., all are useless).  Two
+  functions affected.  [HTAnchor.c, HTML.c].  The code works both with and
+  without DONT_TRACK_INTERNAL_LINKS symbol -LP
+* optimize parsing of large html files - with thousands of anchors - LP
+  + remove quadratic complexity from split_line() usage [GridText.c].
+    Because of some work with anchors on the last(=split) line,
+    the anchors list was traversed from the beginning for each output line.
+    Now we store last_anchor_before_split  explicitly.
+    [According to gprof, split_line() weight decreased from 33% down to 4%,
+    with the following test file: 13,000 output lines, 3,100 anchors, ~800Kb]
+  + remove quadratic complexity from HTAnchor_findChild() usage [HTAnchor.c].
+    HTParentAnchor::children list was traversed zillion times, now we
+    split it into a tree (named anchors <a name=...>, fast search required)
+    and a list (just a storage for the rest anchors, no search required).
+    [The same file, gprof shows HTAnchor_findChild() weight decreased
+    from 11% down to 0.1%]
+  + remove quadratic complexity when generating a 'l'ist page,
+    now traverse anchors list only once [LYList.c, GridText.c].
+* add a search method to HTBTree implementation - LP
+* amend check for refresh-URL to avoid adding a link if the retrieved page is
+  compressed, since the link would be added to the compressed file, corrupting
+  it (reported by Michel SUCH and Karl-Heinz Weirich <weirich@de.ibm.com>) -TD
+* strip parameters from refresh-URL -TD
+* correct misspelled $LYNX_LOCALEDIR variable in LYMain.c (reported by Michel
+  Such) -TD
+* change the install procedure for lynx.cfg to attempt to update the file with
+  the user's customizations if any, and to save the old configuration
+  information in a series, e.g., lynx.cfg-1, lynx.cfg-2, etc. -TD
+* re-fix the problem with config.cache not being removed at the beginning of
+  the configure script - see 2.8.5dev.3 (report by Clemens Fisher) -TD
+
+2002-10-06 (2.8.5dev.9)
+* improve ETA data shown in experimental read-progress (adapted from Debian
+  #117476) -TD
+* modify -dump, -source and related options which set dump mode to also set
+  -nopause (report by Benjamin Pflugmann <benjamin-mutt@pflugmann.de>) -TD
+* correct indexing in LYStyle.c our_pairs[] array, which did not allow for use
+  of default colors -TD
+* make ASSUMED_COLORS in lynx.cfg apply to normal curses implementations which
+  do not implement assume_default_colors() (prompted by discussion with
+  Bela Lubkin) -TD
+* make permanent an ifdef from SH which provides for truncating a too-long
+  title with an ellipsis -HN
+* gettext'ify a few overlooked strings in LYOptions.c -HN
+* modify LYGetHostByName() for MSDOS/DJGPP/Watt-32 to enable terminating it by
+  pressing 'z' (patch by Gisle Vanem)
+* update configure script macros for NLS to gettext 0.10.40 -TD
+* add PRCS version/date to lynx.cfg -TD
+* setup ifdef's for Unix-specific permissions checks to exclude single-user
+  systems such as OS/2 EMX, Cygwin and BeOS, which otherwise act like Unix
+  since we can run the configure script on those platforms -TD
+* re-order some tests in the configure script to allow pdcurses' X11 port to
+  be recognized as supporting color and line-drawing characters -TD
+* work around a Cygwin bug which causes subprocesses of a full-screen program
+  to dump core (perhaps reported by Frederic L W Meunier, but observed in
+  running lynx in a bash shell spawned from my directory editor) -TD
+* fix an inequality in HTDirTitles() which made the "Up to" link omitted for
+  the first level of an ftp listing, making it awkward to visit the parent
+  directory if one first visited a subdirectory -TD
+* change HTURLPath_toFile() to keep local URLs distinct from remote ones, so
+  win32 version will not display misleading drive letter on ftp listings -TD
+* rewrote Home_Dir(), adding checks for "My Documents" on Windows 2000, and
+  ensuring that the resulting directory actually exists -TD
+* change ifdef's in LYwaddnstr() to use waddstr() consistently, since
+  wide-character curses implementation treat the string in the given locale
+  anyway, just like the waddnwstr() call -TD
+* reduce clutter with new macro LYIsDosDrive() -TD
+* add ifdef's for OS/2 EMX to existing DOSPATH code which checks for drive
+  letter (Michel Such)
+* modify definitions of IsOurFile() and OpenHiddenFile() to allow trace file
+  to be written when one already exists -TD
+* use new macros LYSameFilename(), LYSameHostname(), LYIsNullDevice() to hide
+  platform-specific filename comparisons -TD
+* change sed delimiter in configure script to use '%' consistently, to avoid
+  using '@', which may appear in AFS pathnames (report by Martin Mokrejs) -TD
+* narrowed accommodation for paths with embedded blanks in LYLegitimizeHREF()
+  to exclude those containing newlines or tabs (report by Leslie Fairall for
+  http://www.realtor.com) -TD
+* modified VMS build scripts to allow linking with OpenSSL, tested with
+  OpenSSL-0.9.6g using UCX network libraries.  It is reported (by
+  <grant@rigel.cc.wmich.edu>) that one can modify the scripts to also build
+  with Multinet's UCX emulation, but the machine I used for testing has only
+  UCX (comp.os.vms discussion with Christoph Gartmann
+  <gartmann@immunbio.mpg.de>) -TD
+* modify UCSetBoxChars() to assume wide-character curses implementations can
+  draw boxes -TD
+* reduce the number of strncasecomp() calls with associated constants by making
+  macros for the lynx internal URL types, e.g., isLYNXCGI() -TD
+* modify logic that handles goto-fragment (e.g., G #foo) to update the URL
+  shown in the info page (Debian #113734) -TD
+* reduce clutter using new macros findPoundSelector(),
+  restorePoundSelector() and function trimPoundSelector() -TD
+* reduce clutter using functions for updating the strings in DocInfo, mainly in
+  LYMainLoop.c -TD
+* renamed 'document' to 'DocInfo' -TD
+* reduce clutter by using NonNull() macro consistently -TD
+* define HistInfo struct in terms of document, to make it clearer -TD
+* add verification of SSL server certificates.  It requires a "cert.pem" file
+  or cert files in the "certs" subdirectory in your OpenSSL directory for CA
+  verification.  The mod_ssl distribution includes a "ca-bundle.crt" that has a
+  good set of root certifying authority certs and works well for "cert.pem".
+  Adding custom CA root certs can be done by either putting them in the server
+  "cert.pem", or (for a normal user) copying "cert.pem", adding the cert, and
+  setting the SSL_CERT_FILE environment variable before running Lynx (Chris
+  Adams <cmadams@hiwaay.net>).
+* add REPLAYSECS config value to allow slowing command scripts down, for
+  testing -TD
+* implement a "set" command for command-scripts, allowing the script writer
+  to manipulate the sleep-times for messages (prompted by discussion with
+  Ville Herva) -TD
+* implement an "exit" command for command-scripts (Ville Herva)
+* modify logic for -cmd_script to stop reading from the command script when
+  an end-of-file is detected (patch by Ville Herva <vherva@niksula.hut.fi>).
+* fill in a few descriptions of restrictions for the help message, as well
+  as showing the on/off state of the "goto_xxx" restrictions -TD
+* correct inverted logic of restrictions table which made "-restrict=default"
+  provide incorrect values for several items.  This was broken in 2.8.4dev.19
+  (reported by Jeff Long <long@ukans.edu> and RobertM <robm@bob.bofh.org>) -TD
+* add environment variable LYNX_TRACE_FILE which, if given, overrides the
+  compiled-in value of Lynx.trace (or LY-TRACE.LOG).  This specifies the
+  name of the trace file relative to the home directory -TD
+* treat empty string for most environment variables, e.g., those specifying
+  a pathname, as null -TD
+* add environment variable LYNX_LOCALEDIR to simplify configuration on OS/2
+  EMX (from discussion with Michel Such) -TD
+* add alias for charsets "ISO-8859-8-I" and "ISO-8859-8-E" to "iso-8859-8"
+  (Debian #152441, request by Atsuhito Kohda) -TD
+* modify handling of HTML_SUP to always append '^'.  It was checking if the
+  preceding character was a valid hexadecimal code (reported by HN and Steve
+  White <swhite@zipcon.net>) -TD
+* correct check for calling endwin() to allow for curses implementations
+  without newterm (report/patch by Brett Lymn).
+* add koi8-r.html as a test for non-ANSI 8-bit displays -TD
+* construct "Accept-Encoding" gzip/compress parameters based on whether lynx is
+  built with zlib and/or gzip/compress paths are defined.  The latter is
+  assumed on Unix (by the configure script), though non-Unix environments may
+  lack those utilities (report by Roy Langford <rlnopicnodl@geeklife.com>,
+  analysis by Frederic L W Meunier) -TD
+* modify mouse support in slang configuration (Eduardo Chappa):
+  + Middle button takes you to the bookmarks file.
+  + Clicking on empty parts of the screen makes the screen scroll. This is
+    not 100% true, here are the caveats related to this:
+    + When you click in the first line of the screen pine goes back one screen,
+      the same happens when you click in the last line (this is normal Lynx
+      behavior, I did nothing in this respect).  With this patch, intermediate
+      scrolling is enabled, which means that left clicking in different (empty
+      parts) of the screen may move you half a screen or two lines.  The idea
+      is that close to the top you scroll more, close to the center you scroll
+      less and you scroll in the direction up or down according to which half
+      of the screen you click on.
+    + If you click on an empty part of the screen, Lynx changed its behavior
+      from doing nothing to moving the active link to the closest link near the
+      click.  This is not disabled by this patch, instead, if a closest link is
+      not found, the screen will scroll, according to the position of the link.
+* improve check in LYgetEnum() for ambiguous/abbreviated names in the lynx.cfg
+  file, e.g., to match the string "visited_links=first" without confusing it
+  with "visited_links=first_reversed" (report by vortex5 <vortex5@24i.net>,
+  analysis by TH) -TD
+* use StrAllocCopy() rather than strdup() in parse_style() (LYStyle.c) to
+  avoid false report from leak-checking (from report by Martin Mokrejs) -TD
+* share SSL handle between HTTP.c and HTAAUtil.c so that call of
+  HTAA_shouldRetryWithAuth() from HTLoadHTTP() updates the handle used in that
+  function.  This makes lynx able to get the user/password prompt for
+  https://enter.nifty.com/iw/ -TH
+* fix a highlighting problem in view-source mode, which left the final
+  character of the target unhighlighted -TH
+* modify LYStringToKeycode(), which is used by -cmd_script option to decode
+  characters, to handle hexadecimal codes written with -cmd_log option from
+  dev.8 changes (reported by Gleb V Kotelnitskyy <kiz@pth.ntu-kpi.kiev.ua>) -TD
+* modify ifdef's in LYCurses.h to implement underline-links for slang
+  configuration (report by TH) -TD
+* modify checks with WEXITSTATUS() and similar "result" macros to ensure that
+  they consistently use corresponding "test" macros such as WIFEXITED() -TD
+* add a null-pointer check in GridText.c to cover a problem with
+	http://209.1.58.86/store/
+  (reported by Walter Ian Kaye) -TD
+* add some more CTRACE's to LYCookie.c to help diagnose LV problem report -TD
+* updated nl.po (patch by Pieter-Paul Spiertz <pspiertz@sci.kun.nl>) -JES
+* new (cs.po, hu.po, tr.po) and updated (da.po, et.po, it.po, ru.po, sv.po) po
+  files from http://www.iro.umontreal.ca/contrib/po/maint/lynx/, used msgmerge
+  to align with 2.8.4's lynx.pot and corrected some minor issues highlighted by
+  check_po.  Checking for a newer version of check_po (to handle patterns
+  such as "%1$s") found none, but noticed a comment in gettext mailing list
+  stating that msgfmt does checking.  Comparing with "msgfmt -c -v", found
+  that it does useful checks, but misses about 1/4 of what check_po finds.
+  Will use both -TD
+* escape blanks and other non-7bit graphic characters in startfile and similar
+  addresses to guard against interpreting the address as multiple lines
+  during a GET, etc (report by Ulf Harnhammar <ulfh@Update.UU.SE>) -TD
+
+2002-05-28 (2.8.5dev.8)
+* updated makelynx.bat (Victor Schneider).
+* recognize charset value in meta description even if content-type is not
+  given, in  LYHandleMETA() -VH
+* remove ifdef that disabled home/end keys with Cygwin configuration -DK
+* fix a problem when whereis target string, which includes Japanese and is top
+  of the second line in the link string, is in the current link (patch by
+  Hataguchi Takeshi).
+* fix a problem with highlighting Japanese string (patch by Hataguchi Takeshi).
+* modify LYDownload() to ensure that local addresses under DJGPP using the
+  special form of path beginning "/dev/" are passed to external programs
+  without stripping the initial slash from the path.  This special form of path
+  will be understood only by other DJGPP programs.  Addresses of the form
+  "/dev/x/" are equivalent to the DOS path "x:\".  Addresses of the form
+  "/dev/env/VARI" are equivalent to the environment variable "VARI" -DK
+* modify remove_bookmark_link() to assume that OS/2 EMX does not allow rename
+  of a file overwriting an existing one -IZ
+* recognize local .php files as HTML files (patch by Karl Eichwalder
+  <ke@suse.de>).
+* change LYCurses.c to not redefine gettext(), and use ScreenClear() instead
+  of clrscr() for DJGPP -DK
+* the DJGPP port of Lynx once used to compile with DJ Delorie's tcp/ip library.
+  It is no longer the case; Watt-32 is required.  Changed to assume WATT32 is
+  defined when DJGPP (or __DJGPP__) is defined (patch by Gisle Vanem).
+* change LYKeycodeToString() to provide a default translation for characters
+  which are not key-symbols, etc., so they may be used in command scripts
+  with the -cmd_script option (reported by Christoph Fabianek) -TD
+* new po files (ca.po, et.po, it.po, zh_TW.po) and updated de.po from
+  http://www.iro.umontreal.ca/contrib/po/maint/lynx/, used msgmerge to align
+  with 2.8.4's lynx.pot and corrected some minor issues highlighted by
+  check_po script by Stefan Hundhammer <sh@suse.de> -TD
+* some cleanup/restructuring of HText_SubmitForm(), incomplete - toward
+  implementing correct MIME boundary -TD
+* revalidate user's guide and related files using W3C validator via file-upload
+  facility -TD
+* simplify some loops in GridText.c using new function next_anchor() -TD
+* quote field-names used when submitting form-data as suggested in RFC 2068
+  (report by Lieven Tomme <lieven@itopia.com>) -TD
+* remove configure-check for mkstemp(), which is redundant given that lynx
+  writes temporary files in a directory which is not readable by other users.
+  On more than one system (e.g., Solaris), mkstemp() is not usable in the
+  manner we attempted, since it does not necessarily choose a distinct name if
+  the previously-chosen filename no longer exists (report/analysis by PG) -TD
+* correct a typo in configure macro CF_HEADER_PATH which told the script to
+  look for header files in the user's $HOME/lib rather than $HOME/include
+  directory -TD
+* update config.guess, config.sub -TD
+* add check for HTTP headers using Netscape extension "Refresh", and if found,
+  add a corresponding refresh-URL at the beginning of the document.  Fixes
+  Debian #126723 -TD
+* strip username from URLs used in an HTTP GET, and warn about this condition.
+  The example given was
+    "http://www.microsoft.com&item%3dq209354@212.254.206.213/1338825GHU_98.asp"
+  the text of which could mislead a user into believe it was an official site
+  (reported by Frederic L W Meunier) -TD
+* add limit checks in HText_trimHightext() to fix an infinite loop visiting
+  this site (which contains a form with only hidden input fields):
+  1- http://www.ibazar.com.br/
+  2- Click "Cadastro" and accept all cookies
+  3- Click "[accepte.gif]"
+  (reported by Frederic L W Meunier) -TD
+
+2002-01-06 (2.8.5dev.7)
+* ifdef'd new directory-sorting code to compile when configure --disable-dired
+  is specified -TD
+* add (commented-out) definitions for building with OpenSSL in makefile.msc,
+  tested with OpenSSL 0.9.6c and Visual C++ 5.0 -TD
+* correct call to HTGetLinkInfo() in follow_link_number() from 2.8.5dev.6
+  changes to fix uninitialized pointer (report by PW) -TD
+
+2002-01-01 (2.8.5dev.6)
+* add configure options to link with dbmalloc and dmalloc debugging libraries
+  which offer different features than --enable-find-leaks -TD
+* restructured LYhighlight() and logic related to highlighted text using new
+  functions LYSetHilite(), LYAddHilite(), LYGetHiliteStr() and LYGetHilitePos()
+  to allow more than two lines to be highlighted in links (Debian #114062) -TD
+* simplified some of LYCookie.c with new functions find_domain_entry(),
+  alloc_attr_value() and parse_attribute() -TD
+* modify expansion of %s for WIN_EX EXTERN commands so that short names (used
+  when the command begins with an uppercase character) are not quoted, and use
+  backslashes.  The normal %s expansion uses forward slashes and may quote the
+  name if it contains a blank -TD
+* modify local directory sort by type to ignore leading '.' characters when
+  looking for filetype -TD
+* modify logic of HTDirEntry() to avoid storing a trailing backslash (DOS-style
+  path separator) in the anchor URL for local directory entries (from report
+  by Hataguchi Takeshi) -TD
+* amend change in 2.8.5dev.2 to HTLoadHTTP() to omit "Accept-Encoding:  gzip"
+  ensuring that also -source or -dump option is used.  Retesting excite.com
+  shows that it no longer matters, since the page was replaced by a short
+  javascript which is not sent compressed (request by Hataguchi Takeshi) -TD
+* correct a missing definition for COMPRESS_PROG in the configure script
+  introduced by 2.8.5dev.5 changes (also noted by Stepan Kasal) -TD
+* several fixes from Stepan Kasal <kasal@math.cas.cz>:
+  + remove code in LYCurses.c which checks ttytype variable for "dec-vt"
+    prefix.  EWAN, a decent telnet program for M$ Windows, sets $TERM to
+    dec-vt100.  This is similar to vt102 but it is not appropriate to use vt100
+    settings for it.  ncurses has in its terminfo database an entry for
+	"dec-vt100|EWAN telnet's terminal"
+    The terminfo file is successfully opened when ncurses is initialised and
+    ttytype is set to the name mentioned above.  After stripping "dec-" from
+    it, lynx ends up searching for
+	"/usr/share/terminfo/v/vt100|EWAN telnet's terminal"
+    which cannot cannot be found and lynx crashes.
+  + compress installed html files with the -9 option of gzip.
+  + improved install-help makefile rule
+* fix some longstanding problems with the DOS port -DK
+  + fix inability to break out of a hung nameserver lookup or hung connection
+    attempt without aborting lynx entirely.  Using the WATT-32 signal handler
+    for this seems to work well.  Change the default compile option for DJGPP
+    to -DIGNORE_CTRL_C, causing lynx to ignore SIGINT, so CTRL-BREAK is
+    completely disabled.  With this patch CTRL-C stops current actions without
+    quitting lynx.  To have a way to abort lynx when necessary, bind ALT-X to
+    SIGQUIT.  (The unix default of CTRL-\ is not bound to the same scan code on
+    different international keyboards, while ALT-X is familiar to DOS users for
+    existing programs).  Because the WATT-32 signal handler was not available
+    to external programs, a patch to WATT-32 is necessary for the new lynx code
+    to work.  The patch for WATT-32 is shown in the INSTALLATION documentation.
+  + added some fixes for "/" vs "\" handling in pathnames so that non-DJGPP
+    programs will see standard DOS pathnames when called.  The mailer code was
+    ignoring the environment variable SHELL when calling the mailer, leading to
+    a lack of environment space for the mailer to work -DK
+  + add calls to _eth_release() and _eth_init(), which Gisle Vanem says should
+    not be necessary in this part of lynx.  But this seems to fix get
+    intermittent hung nameserver lookup sessions after using CTRL-C.
+* simplified a loop in HTConfirmCookie() and added CTRACE's to demonstrate that
+  this is working properly (addresses Debian #119751) -TD
+* add some CTRACE's to curses screen initialization and resizing to provide
+  better diagnosis of problem reported by David Balazic
+  <david.balazic@uni-mb.si> on HP-UX 11.00) -PG
+* modify configure.in and aclocal.m4 to work with autoconf 2.52 patched with
+    ftp://invisible-island.net/autoconf/autoconf-2.52-20011227.patch.gz
+  (TD).
+* modify configure macros CF_CURSES_CPPFLAGS and CF_NCURSES_CPPFLAGS to ensure
+  that the (n)curses.h header file is actually found, in case someone tries to
+  build lynx without having installed the development files (based on anonymous
+  posting on comp.os.linux.networking newsgroup) -TD
+* update config.guess, config.sub from
+    http://subversions.gnu.org/cgi-bin/viewcvs/config/config/
+
+2001-11-18 (2.8.5dev.5)
+* modify prompt for file- or directory-name in rename/move operation to provide
+  a default based on the selected file/directory -TD
+* add -DOK_OVERRIDE to makefile.msc, to allow rename/move of files in the local
+  directory editor -TD
+* correct delay time for win32's HTAlert, etc., which was in milliseconds
+  rather than seconds -TD
+* modify check for mbstate_t in CF_WIDEC_CURSES to define HAVE_MBSTATE_T if
+  that type is found, use this ifdef in LYwaddnstr() to make that compile
+  properly on Solaris 2.6 (report by PG) -TD
+* disable SUPPORT_MULTIBYTE_EDIT ifdef for EBCDIC (i.e., NOT_ASCII) -PG
+* collect names of lynx.cfg and .lynxrc variables into LYrcFile.h, to simplify
+  checks for matching spelling, e.g., against the values used in
+  LYOptions.c -TD
+* modify dired support to allow sorting by a variety of things in addition to
+  the existing sort into files versus directories.  This is saved in ~/lynxrc
+  as dir_sort_order -TD
+* if --disable-full-paths is specified, do not use full path for SYSTEM_MAIL
+  (report by IZ) -TD
+* modify configure script to reduce the number of xxx_PATH definitions compiled
+  into the code if --disable-dired was specified.  Change configure script so
+  that dired support for chmod, copy, mkdir, and touch to use built-in
+  functions rather than external programs -TD
+* modify configure script tests for program pathnames so that if full pathnames
+  are specified and the program is not found, no corresponding xxx_PATH symbol
+  is defined -TD
+* eliminate duplicate LYGetEnum() in LYrcFile.c, using the variant from
+  LYReadCFG.c which allows abbreviations -TD
+* change handling of tagsoup option in LYrcFile.c to invoke the corresponding
+  HTSwitchDTD() function, so saved tagsoup initializes properly from ~/.lynxrc
+  (report by Michel Such) -TD
+* modify some tag-names in LYOptions.c to correspond to the names used in
+  lynx.cfg to make the corresponding names work properly when used in ~/.lynxrc
+  via ENABLE_LYNXRC settings (report by Michel Such) -TD
+    old             new
+    ----------------------------
+    assume_char_set -> assume_charset
+    show_scrollbar  -> scrollbar
+    DTD_recovery    -> tagsoup
+    show_rate       -> show_kb_rate
+    user_agent      -> useragent
+    ----------------------------
+* correct length passed by LYpaddstr() to LYwaddnstr(), which could be larger
+  than allowed -TD
+
+2001-11-08 (2.8.5dev.4)
+* if file-upload code is configured, suppress message that indicates it is not
+  implemented, i.e., "[FILE Input] (not implemented)" -TD
+* modify file-upload submission to send plain text if the file is entirely
+  printable text.  Mime encoding is needed if the file contains nulls, etc.,
+  but reportedly may confuse some hosts -TD
+* suppress "charset=" clause on form submission if it is iso-8859-1 -TD
+* move case for F_FILE_TYPE in HText_SubmitForm() to obtain original behavior
+  of fallthrough for F_SUBMIT_TYPE, F_TEXT_SUBMIT_TYPE, F_IMAGE_SUBMIT_TYPE to
+  translate their character set, etc.  (report by KW) -TD
+* revert 2.8.4dev.21 change to avoid truncating cookie path in LYSetCookie().
+  The server that wouldn't work with the current lynx behavior is
+  identified as "Oracle_Web_Listener/4.0.8.2.3EnterpriseEdition"  -DK
+* modify LYLegitimizeHREF() change from 2.8.4dev.21 to eliminate newlines from
+  the HREF rather than converting them to spaces.  This fixes a problem with
+  www.ebay.com which splits up HREFs with newlines.  Changing the newlines to
+  spaces made the HREF no longer match, e.g., when it was built up from
+  a CGI script (report by Morten Bo Johansen) -TD
+* add two test files for testing UTF-8, based on Markus Kuhn's demos
+  (quickbrown.html and utf-8-demo.html).  These work with ncurses 20011103
+  patch, for wide-characters except for combining characters (more work is
+  needed in ncurses).  Tested with XFree86 xterm (patch #163) -TD
+* modify select_multi_bookmarks() check for interrupt character to limit it to
+  "hard" interrupt characters such as ^G.  This fixes a case where "z" would
+  have been treated as an interrupt character in advanced multibookmark mode
+  (reports by Michael Warner, HN, as well as Debian #111463) -TD
+* modify SUPPORT_MULTIBYTE_EDIT logic in LYUpperCase() and LYLowerCase() to
+  check for a null character following an upper-128 code.  This is more likely
+  to occur in EBCDIC, though the multibyte strings should not have a null at
+  this position in any case (report by PG) -TD
+* for wide-character curses configuration, do not force repainting at the end
+  of display_page() -TD
+* modify configure test for mkstemp() to check if that function returns
+  distinct values (report by Fr3dY indicates that AmigaOS has a broken version
+  of mkstemp() which always returns the same value) -TD
+* modify LYwaddstr() to use wide-character curses functions to make UTF-8
+  output work without relying upon side-effects of narrow-character functions.
+  Note that this relies on the user having set a UTF-8 locale, e.g.,
+  en_US.UTF-8 -TD
+* modify HText_appendCharacter() to not use utfxtra_on_this_line when compiling
+  with WIDEC_CURSES, since the curses library already does this adjustment -TD
+* correct the following names in LYrcFile.c which were added to allow
+  ENABLE_LYNXRC lines in lynx.cfg to enable them to be saved in ~/.lynxrc
+    old           new          where-used
+    -------------------------------------
+    DTD_recovery  tagsoup      (command-line option and lynx.cfg)
+    show_rate     show_kb_rate (lynx.cfg)
+    user_agent    useragent    (command-line option)
+    -------------------------------------
+  (report by Michel Such <msuch@free.fr>) -TD
+* modify LYRefreshEdit() to clear field before repainting (patch by Hataguchi
+  Takeshi)
+* for CJK configuration, force clearing/repainting in HTUserMsg() (patch by
+  Hataguchi Takeshi)
+* make HTInfoMsg() sleep condition consistent with other messages by using
+  LYSleepInfo() -TD
+* reduce clutter with new function utf8_length() -TD
+* replace !isascii(ch) with new macro is8bits(ch), to reduce clutter, fix some
+  sign-extensions and make it more portable -TD
+* change some of the "#if" statements to "#ifdef", to work around broken
+  versions (2.96, 3.0.1) of gcc distributed with Mandrake 8.1 (though
+  reportedly this is due to Redhat):  the -C option passes through comments as
+  usual, but some comments expand on preprocessor lines, which causes the
+  preprocessor to report an expression error.  This prevented "make
+  install-help" from running, though the -C option is not needed for that.
+  However, lacking a working -C option makes the C preprocessor useless for
+  analyzing bugs -TD
+* modify configure script to accept --with-screen=ncursesw, to build with the
+  wide-character version of ncurses -TD
+* modify configure script to look for mkdtemp(), to quiet another bogus linker
+  message -TD
+
+2001-10-06 (2.8.5dev.3)
+* add CF_MKSTEMP configure macro, from vile, to check for a working mkstemp().
+  This will quiet some bogus warning messages in recent runtime support, but
+  (see 2.8.3) does not affect the security of temporary files in lynx -TD
+* updated CF_PATH_SYNTAX configure macro, from vile, to handle leading "\\" in
+  a win32 pathname -TD
+* for configurations that provide scrollbar, add a checkbox to the Options menu
+  to enable or disable it -TD
+* modify LYGetHostByName() in HTTCP.c to use the threaded _WINDOWS_NSL code for
+  all Cygwin machines.  The ability to interrupt nameserver lookup has not
+  worked in Win98 using the Cygwin port, despite defining _WINDOWS_NSL.  It
+  looks like the threaded code was only for WinNT.  At least under Cygwin, that
+  code also seems to work fine under Win98 -DK
+* add FIELDS_ARE_NUMBERED as a possible value for DEFAULT_KEYPAD_MODE in
+  lynx.cfg as well as keypad_mode in .lynxrc -TD
+* add NUMBER_FIELDS_ON_LEFT and NUMBER_LINKS_ON_LEFT to lynx.cfg, use these to
+  control where field- and link-numbering is placed.  Caveat:  there are some
+  cases where fields that do popup's are truncated, e.g., in the Options menu,
+  when right-alignment is used -TD
+* support for DJGPP's two forms of file addressing, [a-zA-Z]:[/\\] and
+  /dev/[a-zA-z]/ -DK
+* add samples/lynxdump script, to illustrate how to use lynx -dump with no
+  link references (prompted by discussion with LV) -TD
+* add samples/keepviewer script, to illustrate how to retain a temporary file
+  for use in an external viewer -TD
+* add ifdef's in is_url() to avoid recognizing URLs if they are disabled in the
+  given configuration, i.e., bibp, finger, ftp, gopher, news (report by
+  Frederic L W Meunier) -TD
+* modify LYrefresh() to take into account whether a popup window exists, so
+  that a search prompt will not overwrite a popup.  This bug was introduced by
+  the curses pads (reported by Felicia Neff <neff@panix.com> and Fr3dY
+  <fr3dy@retemail.es>) -TD
+* add note in keystroke_help.html about CTRL-V as literal-next (lnext) for
+  users who are unfamiliar with stty -TD
+* add NcFTP-style ftp-URLs which are supported by Netscape and wget (request
+  by Martin Mokrejs) -TD
+* add traces in LYReadCFG.c and LYrcFile.c to report lines which are not found
+  in the symbol table, to help diagnose when a user adds lynx.cfg information
+  to .lynxrc -TD
+* define additional -trace-mask option, 8=config -TD
+* modify LYtouchline() to avoid using wredrawln() for ncurses, since the
+  LYwin variable may be a pad much wider than the screen, which is not handled
+  properly (report by Karl Eichwalder <keichwa@gmx.net>) -TD
+* correct beginning of configure script, which was supposed to remove
+  config.cache, but did not, due to a misplaced line when it was added
+  1998-06-04 (prompted by a report by Fr3dY <fr3dy@retemail.es> that the
+  checks for srand/rand did not work) -TD
+
+2001-08-15 (2.8.5dev.2)
+* several small fixes to HTFile.c to make directory listings work properly on
+  win32, e.g., stat'ing a directory with a trailing slash fails (reported by
+  Hataguchi Takeshi) -TD
+* adjust definitions in LYCurses.h to get rid of slang-ifdef's for getyx() and
+  wmove() -TD
+* change order of srandom/random versus srand48/lrand48 -DK
+* patch to get the DJGPP port to use the configure script -DK
+  It seems to work well in the variations I have tried, including both PDCurses
+  and SLang.  revised INSTALLATION for DOS, giving a URL for my DOS patch to
+  openssl.  I dropped the reference to goto URL of the form
+  file:///dev/c/path/filename, since this only works in certain parts of lynx
+  (such as lynx.cfg).  I'll try to get this working in the future.  In fixing
+  makefile.in, I patched the sed script for converting the path to docdir.  As
+  far as I can tell, however, from my examination of lynx.cfg, this isn't used
+  for any platform.  Does this part of the sed script do anything?
+  Things still needing fixing for DOS:
+  + support for both forms of file addressing, [a-zA-Z]:[/\\] and
+    /dev/[a-zA-z]/.
+  + support for gzipped help files.  This works with long file names in a DOS
+    box under Windows, but not in plain DOS, which doesn't allow double
+    extensions.
+  + better handling of local files in root directory.  "file:///c:/" takes a
+    long time to work, but "file:///c:/." works fine.  I haven't really looked
+    to see why.
+  + no ability to break out of hung nameserver lookups or http requests without
+    closing lynx with SIGINT.  This is the biggest complaint I get by email.
+* modify ifdef for myGetChar() in LYStrings.c to build with PDCurses 2.3 e.g.,
+  to use a version which is modified for Japanese input (patch by Hataguchi
+  Takeshi)
+* review LYSafeGets() calls, stripping newlines from a few places where they
+  were overlooked, and simplifying some places where LYSafeGets() would
+  normally return a buffer ended with a newline (prompted by a report by Brian
+  S Queen <bqueen@nas.nasa.gov> for LYTraversal.c) -TD
+* correct reallocation-size in ProcessMailcapEntry() -TD
+* modify HTLoadHTTP() to omit "Accept-Encoding: gzip" if command-line "-base"
+  option is given.  This makes
+	lynx -base -source excite.com
+  work as expected.  Otherwise, excite.com will transmit the document gzip'd,
+  and the ensuing logic in HTSaveToFile() would see the mime-type as gzip
+  rather than text/html, and not prepend the base URL (report by Kai Shih
+  <kai@mit.edu>) -TD
+* work around defect in move_anchors_in_region() and related logic by changing
+  default for nested-tables to FALSE when Lynx is not configured for
+  color-style.  The problem is that when an anchor is shifted right by
+  nested-table logic, if it has a <BR> near the beginning of a table cell and
+  it happens to be split across a line, its size will not be adjusted properly
+  (report by Hataguchi Takeshi) -TD
+* correct logic used for trimming TEXTAREA introduced in 2.8.4pre.3, which did
+  not trim carriage-return characters if TRIM_INPUT_FIELDS was false.
+  (report by Hataguchi Takeshi) -TD
+* correct a bug in search logic which happens with pages shorter than the
+  screen, due to improper starting-line value sent to search function.  Fixed
+  by adding checks in www_search_backward() and www_search_foreward(), (report
+  by -Frederic L W Meunier) -TD
+
+2001-07-24 (2.8.5dev.1)
+* modify GetChar() definition for PDCurses to ignore key-modifiers which are
+  passed back from getch() as if they were key codes.  Those interfere with
+  shifted commands such as 'Q' -TD
+* modify parse_style() function to operate on a copy of its parameter, to avoid
+  changing it.  Otherwise, when parse_style() is executed as a side effect of
+  start_curses(), its data is modified and not valid on successive calls.
+  This bug existed prior to 2.8.4dev.17 -TD
+* set return value of edit_current_file() to true if the file is edited.  This
+  forces a reload for example if one edits the current html file, and is needed
+  to make PDCurses repaint the screen as well (report by Victor Schneider,
+  bug introduced in 2.8.4dev.21) -TD
+* add ifdef for wresize() to accommodate FreeBSD 3.x which has resizeterm() but
+  not wresize().  Also, use a 'long' rather than 'attr_t'.  These changes are
+  needed to build with the 1.8.6ache patches to ncurses (report by Matt
+  <matt@greenviolet.net>) -TD
+
+2001-07-17 (2.8.4rel.1)
+* remove comment in README.ssl directing people to
+  http://www.moxienet.com/lynx/, since that page is moot with 2.8.4 -DK
+* add an ifdef in CF_CURSES_FUNCS configure macro to avoid confusing ncurses'
+  term.h with other versions -TD
+* update URL for zlib -Frederic L W Meunier
+
+2001-07-14 (2.8.4pre.5)
+* document CHARSETS_DIRECTORY and CHARSET_SWITCH_RULES in lynx.cfg -IZ
+* add a fallback in _Switch_Display_Charset() if no CHARSETS_DIRECTORY was
+  specified -IZ
+* ensure that config variable names in LYReadCFG.c are in alphabetic order,
+  though only the first character matters (report by IZ) -TD
+* updated notes on DOS in INSTALLATION -DK
+* modify ifdef in HTTP.c to build with configure --with-ssl --disable-news
+  (report by Frederic L W Meunier) -TD
+
+2001-07-10 (2.8.4pre.4)
+* correct red/blue color swapping for PDCurses when built on Unix, which uses
+  X11 -TD
+* correct order of checks for wrapping in www_search_forward() and
+  www_search_backward(), which would allow an infinite loop if there were no
+  anchors on the current page (report by Frederic L W Meunier) -TD
+* add a missing chunk to reverted change of SGML_character() -NSH
+  <nsh@horae.dti.ne.jp>
+
+2001-07-07 (2.8.4pre.3)
+* review/add descriptions of new command-line options in lynx.man, lynx.hlp and
+  Lynx_users_guide.html -TD
+* update da.po, ja.po, ru.po, sv.po from
+    http://www.iro.umontreal.ca/contrib/po/maint/lynx/
+  (report by JES) -TD
+* add command-line option -curses-pads which can be used to disable the
+  left/right scrolling logic.  This is used for testing, e.g., the repaint
+  bug reported below -TD
+* remove logic in lynx_force_repaint() which reset the window background, since
+  it does not work with the logic used to implement left/right scrolling.
+  Retested older versions of ncurses and did not find a case where this was
+  needed after all (report by IZ) -TD
+* revert dev.21 change to SGML_character() S_equals case, which has undesirable
+  side effects regarding spacing around '=' (report by
+  <nsh@horae.dti.ne.jp>) -TD
+* define additional -trace-mask option, 1=SGML -TD
+* add -trim_input_fields command-line option and corresponding
+  TRIM_INPUT_FIELDS to lynx.cfg to suppress trimming of TEXT and TEXTAREA
+  fields in forms.  This does not retain trailing blank lines in a TEXTAREA;
+  more work would be needed to do that (reported by VH, most browsers appear to
+  retain trailing blanks) -TD
+* modify parsing of "<script>...</script>" to allow "<!-- ... -->" comments
+  in SGML_character().  Though the HTML 4.0 spec is fairly clear, other
+  browsers (and some webpages) assume that "</" does not have to be escaped
+  when it appears in a script which is commented to avoid confusion with older
+  browsers.  This change doesn't ensure that the comment is at the beginning
+  of a line, since that's awkward to do with SGML_character(), and also leaves
+  the script in a comment which works for lynx since lynx does not interpret
+  it anyway -TD
+* remove redundant enum identifiers in typedefs -TD
+* modify parse_attributes() in LYStyle.c to allow video attributes such as bold
+  and reverse to be combined with colors, used this to debug problem with
+  <script> and comment -TD
+* improve logic for nested-tables to handle cases such as www.tin.org -IZ
+  TRST ignores the horizontal alignment *inside* a multi-line cell of a table.
+  This limitation, in conjunction with the nested-tables modifications does not
+  work well when text with a horizontal alignment (e.g., <ul>) is put in a
+  table cell.  This patch introduces a *limited* logic to take this info into
+  account.  It should work OK as far as the last non-empty line of the cell is
+  ended by a "line-end" command, not by a </td> (this is often the case with
+  contents using horizontal formatting).
+* updated URLs for ncurses (report by DK) -TD
+* updated samples/bright-blue.lss -IZ
+* make definition of $(SHELL) in makefile.in's consistent, in terms of
+  CONFIG_SHELL, since the configure script no longer uses 'include', and
+  this creates some problem with nonstandard shells (report by IZ) -TD
+* update/extend lists in lynx_help_main.html -Frederic L W Meunier
+* add note about lynx.cfg mouse and color configuration to user's guide -PW
+* document -cmd_log and -cmd_script options in user's guide (Michael Warner).
+
+2001-06-10 (2.8.4pre.2)
+* corrected order of parameters of is_prefix() function in the
+  scan_cookie_sublist() function, broken in dev.21 changes (report by Ken Scott
+  <admin@shellworld.net>) -TD
+* add a fallback definition for SA_LEN(), to build with glibc 2.2 (report by
+  Mark Sutton <mes@lazo.ca>, from
+  http://cvs.pld.org.pl/SOURCES/lynx-SA_LEN.patch?rev=1.1) -Arkadiusz
+  Miskiewicz
+* modify ifdef in HTCheckForInterrupt() to build with DJGPP -DK
+* remove include for <pdcurses.h>, use <curses.h> which is the default for
+  PDCurses - DK
+* reviewed/reverted some changes from dev.20 which changed explicit "r", "w",
+  and "a+" fopen modes to TXT_R, TXT_W and TXT_A, where they relied on the
+  default mode set via SetDefaultMode().  With DJGPP, files containing special
+  graphics such as README's might not otherwise display, for example (report by
+  DK) -TD
+
+2001-06-03 (2.8.4pre.1)
+This version has been test-built on Linux (BSD curses, ncurses,
+slang), Tru64 5.1 (cc, curses/ncurses/slang), OpenVMS, OS/2 EMX, win32
+(both Visual C++ 4.1 and 5.0 as well as Borland C++), AIX 4, HPUX 11,
+Solaris 8.  Recent builds include SunOS 4.1.4 (cc and gcc,
+curses/ncurses/slang), Solaris 2.5.1 (cc and gcc,
+curses/ncurses/slang) and IRIX 6.5 (cc and gcc, curses/ncurses).  Less
+recently, FreeBSD 4.1, NetBSD 1.5 and OpenBSD 2.8 (curses/ncurses).
+
+2001-06-02 (2.8.4dev.21)
+* regenerated lynx.pot and resync'd the .po files against it with msgmerge,
+  formatted to 132 columns to minimize line-breaks, for ease of comparison -TD
+* add a few more #undef's to work with glibc 2.1.3 -TD
+* include <signal.h> before <curses.h> to work around bug in glibc 2.1.3, which
+  apparently was not used to build a system before release.  Note that the
+  preferred solution is to patch /usr/include/sys/ucontext.h to avoid defining
+  ERR, which is defined by all versions of curses.h (report by Karl Eichwalder
+  <ke@suse.de>) -TD
+* change lynx.cfg entry for COLOR #6 to brightred/black, which is what
+  Slackware uses, to make links more visible -TD
+* remove several chunks of dead (#if 0) or commented-out code, especially in
+  TRSTable.c, except a few used for debugging -TD
+* add checks for potential buffer overflow in increment_tagged_htline() -TD
+* consolidate scattered calls to editor with function edit_temporary_file(),
+  which fixes terminal modes when editing TEXTAREA -TD
+* modify LYisNonAlnumKeyname(), etc., using new functions LYindex2MBM() and
+  LBMBM2index() so that it should work with EBCDIC, as well as similar case of
+  translation in LYBookmarks.c which assume that there are no gaps in the
+  coding for the alphabet -TD
+* workaround in lynx_nl2crlf() for ncurses, which did not refrain from using
+  cursor-down if it was set to a newline when nonl() was specified -TD
+* replace permissions[] array in LYLocal.c because Cygwin (mis)implements the
+  S_xxx values as a function -TD
+* add ENABLE_LYNXRC setting to lynx.cfg, which allows one to modify the list
+  of values which are visible on the O'ptions form which can be saved to the
+  .lynxrc file -TD
+* check the width of entries displayed by LYOptions.c non-forms
+  boolean_choice(), to pad shorter ones with spaces -TD
+* change type of LYMultiBookmarks to integer, combine with LYMBMAdvanced, to
+  use enumMultiBookmarks to set it, making its configuration more easily
+  table-driven -TD
+* make the style of menu border/bg/entry/number/active-entry and scroll
+  indicator settable -IZ
+  The names in lynx.lss are
+    menu.frame menu.bg menu.n menu.entry menu.active menu.sb
+* modify cookie path prefix-comparison to ignore a trailing slash, e.g.,
+  /group/sftvnews/ versus /group/sftvnews (workaround for LV visiting
+  http://groups.yahoo.com/group/sftvnews) -TD
+* cookie path= should be a prefix of the request-URI path, so do not truncate
+  request-URI path in LYSetCookie() [we got mistaken "invalid cookie path=..."
+  prompt in some cases previously] -LP
+* parameterized the logic around URL_edit_history to add MAIL_edit_history,
+  used to store addresses for Printing Options, mail file to user (request by
+  LV) -TD
+* check, fix minor problems with some .po files based on check_po script
+  (mentioned on mutt-dev mailing list by Bjorn Jacke <bjacke@suse.de>) -TD
+* fixes to build with U/Win -TD
+* check width in LYpaddstr(), truncate the string if needed.  This fixes a
+  case where items in very wide popup menus would wrap, e.g., the EXTERN_LINK
+  menu -TD
+* add a configure checks for term.h, to work around broken package for ncurses
+  on Cygwin -TD
+* combine checks for useragent into one function LYCheckUserAgent() -TD
+* add runtime toggle for EXP_NESTED_TABLES, bind this to "~" (see www.tin.org
+  for comparison) -TD
+* regenerate ja.po from lynx-2.8.3rel1.ja.po using gettext 0.10.37 and libiconv
+  1.6.1 (updated by Masayuki Hatta <mhatta@po.airs.net>)
+* changed -DNCURSES in DOS makefile to -DPDCURSES -TD
+* changes for DOS makefiles with DJGPP -DK
+  These changes are for DOS under DJGPP with Internationalization and SSL.  The
+  openssl port for DOS is dependent on WATT32, so the link order for libraries
+  has to be set appropriately.  Made EXP_NESTED_TABLES the default and changed
+  the default locations for WATT-32 and PDCURSES to top-level directories.  The
+  DOS port of gettext is now dependent on libiconv.a to convert character sets
+  as the .mo file is read.  The format for the makefile in WWW/Library/DJGPP
+  now reflects the changes previously made in the src makefile.
+* improve definition of CTRACE, making it an expression again as it was before
+  dev.20 -PG
+* move logic for cookie_domain_flag_set() out of LYReadCFG.c into LYCookie.c
+  rewriting it to make it table-driven, where it is now shared with
+  LYrcFile.c -TD
+* rewrote LYrcFile.c, making it table-driven as is LYReadCFG.c -TD
+* reviewed/corrected several pointer-mismatches in PARSE_xxx() macro usage -TD
+* corrected return-types of several functions in LYLocal.c, which were given as
+  BOOLEAN though they return a signed integer -TD
+* add DIRED support to makefile.bcb -TD
+* filter the list of mime types sent in "Accept:" header for GET, to eliminate
+  repeated or shadowed types, using new function HTFilterPresentations()
+  (addresses Debian bug report #41594) -TD
+* fix several typos in Lynx help-files -LV
+* change most configure script C-preprocessor assignments to $CFLAGS to
+  $CPPFLAGS, and modify logic of $TRY_CFLAGS to use CF_ADD_CFLAGS, which
+  does the same thing -TD
+* enable scroll indicators on the menus - shown if there is a part of menu
+  before/after the visible area -IZ
+* modify the context-sensitive mouse-menu, making it easier to to configure by
+  reorganizing the tables used to generate the popup menu -IZ
+* correct a couple of places in form_getstr() when keys were "generated"
+  instead of actions, which broke mouse-navigation in input fields -IZ
+* fix return value of Stbl_finishTABLE(), retesting curpos whose value may have
+  been altered, e.g,.  in split_line(), causing a cell to overflow to the right
+  of the visible area (even if line wrap is requested) -IZ
+* change the logic of -display-charset:  before it was sometimes descriptive
+  (here is the charset, behave as if it was used for display), sometimes
+  prescriptive (make the display to use charset if you can).  Now it is only
+  descriptive.  One is forced to use the 'O'ptions to manually load a different
+  font -IZ
+* move $(DEFS) and $(CHARSET_DEFS) into $(CPP_OPTS) in src/makefile.in -TD
+* renamed -blink_is_boldbg command-line option to -blink, corrected ifdef's -TD
+* implement -blink_is_boldbg option for OS/2 EMX and ncurses, then integrated
+  some ifdef's to merge with equivalent slang code -IZ
+* rewrote hardcoded if/then/else chains in handle_LYK_SHIFT_LEFT()
+  handle_LYK_SHIFT_RIGHT() to repeat_to_delta() function -TD
+* implement a key-accelerator for shift-left/right commands, i.e., repeating
+  the shift command increases the amount by which the screen is shifted -IZ
+* modify ifdef in handle_LYK_LINEWRAP_TOGGLE() to use popup menus for each
+  configuration rather than limit it only to mouse-supported ones such as
+  ncurses or PDCurses -TD
+* changes to left/right scrolling to limit its effect to tables (IZ):
+  + rename LYlineWrap variable (used to denote the column at which content is
+    wrapped) to LYwideLines (used to denote the opposite sense:  true if
+    wrapping is disabled).
+  + add global variable LYtableCols to control the column-limit for tables.
+    The two variables LYLineWrap and LYtableCols have the same effect as did
+    altering LYlineWrap and LYcols, but are limited to table layout.
+  + modify handle_LYK_LINEWRAP_TOGGLE(), use a popup menu to set LYwideLines
+    and LYtableCols.  The latter is set to a positive integer, in units of
+    1/12 of the physical screen width.
+  + modify GridText.c, replacing LYcols with new macros DISPLAY_COLS and
+    WRAP_COLS.
+  + keep scrollbar on the right margin of the screen when the contents are
+    shifted left or right.
+* modify makefile.bcb, add (tested) commented-out lines for building with
+  color-styles -TD
+* modify makefile.msc and makefile.bcb, add (tested) commented-out lines for
+  building with winsock2 -TD
+* add a configure check for napms(), use this if available to support subsecond
+  delay times for INFOSECS, MESSAGESECS, ALERTSECS -TD
+* rewrote www_user_search() to support both forward and backward search.
+  Bound backward-search to 'N' -TD
+* split-out anchor_has_target() and link_has_target() to separate the search
+  loops from the search comparisons -TD
+* reduce some clutter with LYno_attr_strstr() and LYno_attr_mb_strstr() macros,
+  which combine the caseless/case-sensitive functions -TD
+* modify S_equals in SGML_character() to recover when no attribute value
+  is given, e.g., if "alt=" is followed by whitespace.  Before, the next
+  attribute was used for the missing value -TD
+* replace call to LYRemoveBlanks() from LYLegitimizeHREF(), which had the
+  effect of removing all blanks from HREFs, with the less drastic step of
+  reducing newlines and tabs to spaces and trimming leading/trailing blanks.
+  Though they do not belong there, it is more likely that the HREF will work
+  with embedded blanks retained -TD
+* add a configure check for BSD- and SYSV-style curses touchline function,
+  needed to build with NetBSD 1.5 curses which has a partial implementation
+  of X/Open curses (report by JES) -TD
+* correct insert_blanks_in_line(), which did not copy trailing style codes
+  such as stop-underline, causing "lynx -dump -with_backspaces" to produce
+  some odd effects -TD
+* modify configure script macro CF_NCURSES_VERSION to define NCURSES, in case
+  it is used in the default screen setting, since lynx uses this definition in
+  some places rather than NCURSES_VERSION to distinguish it from other curses
+  implementations -TD
+* modify configure script macro CF_NCURSES_CPPFLAGS to check for ncurses.h
+  before curses.h, and to specifically check for <ncurses/ncurses.h>, to avoid
+  spurious matches against a /usr/include/ncurses.h, to workaround problems
+  with obsolete versions of ncurses on FreeBSD and NetBSD where the current
+  version is often available only as a "port" (reports by Jim Spath,
+  Michael Warner) -TD
+* add fallback definition for SLSMG_xxx_CHAR symbols which may be missing in
+  older versions of slang (reported by Eduardo Chappa) -TD
+* update config.guess, config.sub
+
+2001-04-01 (2.8.4dev.20)
+* rename KEYMAP 'EXTERN' to 'EXTERN_LINK', adding 'EXTERN_PAGE'.  Existing
+  keymaps should work since 'EXTERN_LINK' matches first.  EXTERN_PAGE runs the
+  external command on the current page.  Map comma (,) to EXTERN_PAGE -TD
+* replace most calloc calls with typecalloc or typecallocn -TD
+* modify LYExtern.c to recognize if more than one EXTERN command has been
+  defined in lynx.cfg for a given name, and allow the user to select one
+  command from a popup menu -TD
+* split-out code that opens lynx.cfg and lynx.lss as LYOpenCFG() function,
+  making that check if the given pathname is absolute.  If not, it attempts
+  to look in the same directory as the parent file (when processing includes),
+  or the directory of the default config file -TD
+* replace some explicit "r", "w", and "a+" fopen modes with TXT_R, TXT_W and
+  TXT_A, add/use corresponding BIN_R, BIN_W, BIN_A definitions.  Correction to
+  OpenHiddenFile(), which would have appended text to a binary file -TD
+* combined lynx_html_item_type and lynx_printer_item_type structs as
+  lynx_list_item_type to simplify LYReadCFG.c and incidentally fixing a bug in
+  add_printer_to_list by merging it with add_item_to_list -TD
+* implement a simple workaround for staircased messages from running xli as an
+  external viewer, with lynx_nl2crlf() function -TD
+* add bright-blue.lss sample (from IZ) -TD
+* modify makefile.in's to use symbol _O for object suffix to allow simple
+  override for OS/2 EMX -Zomf compiler option (request by IZ) -TD
+* add HAVE_LYHELP_H definition in config.hin and use that in LYGlobalDefs.h
+  to workaround misuse of HAVE_CONFIG_H in makelynx.bat -TD
+* work-around in LYrefresh() when curses pads are used, for special case where
+  cursor is not set properly when prompting with long subject line for mailto
+  URL -TD
+* eliminate some pointer mismatch compiler warnings in LYEditInsert() for
+  EXP_KEYBOARD_LAYOUT configuration -TD
+* improve handling of tables with respect to bad HTML.  Also took an
+  opportunity to macroize a couple of places which missed in
+  unobfuscation-of-faking <td></td> (this faking happens when line break
+  happens in a non-first column of a table) -IZ
+  For example:
+    <TR>
+      <TD>
+             <FORM ACTION="FrameWork.class" METHOD="post">
+          y
+      </TD>
+      <TD>
+         <DIV>
+              x
+         </DIV></FORM>
+      </TD>
+    </TR>
+  Note FORM which spans cells.  -trace'ing it gives very unintuitive
+  results: it skips </TD> inside FORM, but not <TD>.  Then it supplied
+  </TD> when the FORM ends.
+* repair treatment of colspans in TRST, making it work again in one of the
+  special cases it worked before.  Another bug was in interaction of
+  justification and tables -IZ
+* marked more TRACEs in TRST as "BUG"s -IZ
+* TRST would sometimes produce non-intuitive results if <td> follows </tr>.
+  Add error recovery for this case -IZ
+* corrections for nested-table configuration -IZ
+  + make trailing <BR> in table cells "behave well" again (the following cell
+    would not be horizontally offset).
+  + fix highlighting of multiline links inside tables, and a "80M tracelog" bug
+    (due to a misprint update of the enclosing table was performed once-per-row
+    instead of once-per-table).  Extra updates would not hurt, but led to
+    slowdowns and quadratic-size logs.
+  + fix a special case with table-in-table for partial-display
+* resizing a window on a console may lead to a switch of the character-cell
+  size.  The "downloaded font" loaded during an auto-switch of display-charset
+  may be no longer valid.  In this case, force a re-download of the suitable
+  font for the current charcell size -IZ
+* add reverse-video style for forwbackw.arrow to lynx.lss -TD
+* while an error in .lynx-keymaps is fatal, but a more or less equivalent error
+  in the KEYMAP section of lynx.cfg is benign.  Make them both benign -IZ
+* change remaining uses of lookup_keymap(LYK_xxx) to LAC_TO_LKC0(LYK_xxx) -TD
+* modify set_clicked_link() to return lynx keycodes rather than character
+  values -IZ
+* remove line_for_char() function since it is used for HTLine.start
+  computations -TD
+* several changes to GridText.c -IZ
+  + '#' (shown at the UL corner when there is a toolbar) is shown even at the
+    beginning-of-the document.
+  + with mouse enabled, the first 6 chars in the UL corner were "always"
+    sensitive to Click-1, behaving as PREV_DOC (usually on Left).  This patch
+    changes this logic (for color-style):
+       If '#' is shown there, clicking on it behaves as pressing #;
+       Clicking on the next 6 chars behaves as PREV_DOC/NEXT_DOC (3+3);
+  + if you define a style for forwbackw.arrow, then suitable arrows are shown
+    in these 3+3 positions; in fact they are shown only if it makes sense to do
+    PREV_DOC/NEXT_DOC, providing additional feedback.
+  + remove the first empty line shown on any HTML document.
+  + correct an off-by-one error in the removal-of-zero-length-markup logic.
+    Due to this bug, zero-length markup was never removed, which led to
+    accumulation of style change entries, eventually to a buffer overflow.  At
+    this moment lynx color-style engine would give up, resulting in
+    incomprehensible ocean of colors on the display.  To demonstrate, make a
+    select entry with more than 46 entries.  [My auto-display-charset logic
+    added 2 new encodings to the table of Lynx, bringing the number to 46 on
+    the 'o'ption form.  ;-]
+  + fixes a bug with incorrectly calculated width of a numeric tag [12]
+    as far as 12 is 10 or more (still fixes Debian #68542).
+  + remove unused members from HTLine struct.
+  + make variables underline_on and bold_on private.
+  + rewrote insert_blanks_in_line(), splitting out move_anchors_in_region().
+  + make split_line() easier to maintain by adding variables to represent
+    common subexpressions, e.g., s_post, s_pre.
+  + use set_style_by_embedded_chars() in split_line() to simplify/improve test
+    for whether lynx should add a bold/underline control.
+  + recode to eliminate HTLine.start
+  + recode to eliminate HTLine.chars
+  + several changes to split_line(), using pointers to HTChangeStyle structs
+    rather than array indices.
+* adjust some ifdef's to make configure --disable-trace compile -TD
+* correct allocation size in mailcap_substitute(), which did not count the
+  trailing null -TD
+* add configure --enable-vertrace option, to put __FILE__ and __LINE__ into
+  trace log -PG
+* improve description of USE_MOUSE in lynx.cfg -PW
+* fix a few warnings from antic (unreached statements due to quirks of ifdef's,
+  incorrectly-indented code) -TD
+* eliminate a few references to USE_HASH and LINKEDSTYLES in documentation -TD
+* fix a couple of compiler warnings for SCO -BL
+* fix a comparison in HTChunkPutUtf8Char() to work with EBCDIC -PG
+* fix a typo in LYCharUtils.c CTRACE macro, amend tracing to avoid suppressing
+  a related user message -PG
+* change CF_TERMCAP_LIBS configure macro to warn rather than exit with an error
+  if it cannot find the libraries it is looking for.  This allows one to
+  configure with the slang library on systems without a termcap library (report
+  by Atsuhito Kohda) -TD
+
+2001-02-26 (2.8.4dev.19)
+* add experimental configure option for post-dev.16 TRST changes by IZ
+  (--enable-nested-tables), ifdef'd with EXP_NESTED_TABLES -TD
+* correct a couple of places that used attrset() rather than wattrset(), which
+  caused the status line to lose color when configured for curses pads but not
+  using color-style (report by Fr3dY <fr3dy@retemail.es>) -TD
+* add a restriction for the chdir command, so it is not normally enabled in
+  anonymous mode -TD
+* reduce putenv logic for presetting $LINES and $COLUMNS to a special case
+  for MVS -PG
+* enable pasting an URL into Lynx (similar to 'g'), and improves the code to
+  copy an URL from Lynx -IZ
+* remove arbitrary restrictions on the size of text to be pasted.  It also
+  makes a quadratic algorithm into a linear one.  Also, it may remove many bugs
+  when the text to paste contains non-printable chars.  Not tested with Unicode
+  and on Win* -IZ
+* implement an action NEXT_DOC, which undoes what PREV_DOC (usually on the
+  Left-arrow key) does -IZ
+  Possible enhancements:
+  a) make HISTORY show the position on the (no more!) "stack".
+  b) several places in the source use the value of nhist (they scan
+     history?).  Make nhist_extra public, and check whether these
+     places want nhist + nhist_extra instead.
+  c) Currently LYpop() and (some) LYpush() erases "the tail" of the
+     stack.  Maybe some callers would prefer a different semantic...
+* correct some logic related to EXP_READPROGRESS -IZ
+* change LYE_xxx symbols to an enum LYEditCodes -TD
+* replace some WIN_EX ifdef's by CAN_CUT_AND_PASTE.  Enable cut and paste on
+  OS/2 -IZ
+  For example, in the keymap file:
+    setkey "\200\4"		LAC:DO_NOTHING:PASTE	# S-insert
+    setkey "^(kIC)"		LAC:DO_NOTHING:PASTE	# S-insert
+* enable automatic switching of display charsets -IZ
+  Currently, it is supported under OS/2 only.  A couple of lines should make it
+  work in LINUX too:  express the semantic of _Switch_Display_Charset() in
+  terms of the existing UCChangeTerminalCodepage.
+  For example, in lynx.cfg:
+    CHARSETS_DIRECTORY:I:/get/tfont10/dir1
+    CHARSET_SWITCH_RULES: koi8-r ISO-8859-5 windows-1251 cp866u KOI8-U :cp866, iso-8859-1 windows-1252:cp850
+  The first variable may be not needed outside of OS/2 (the directory which
+  contains glyph tables, as generated/usable with tfont).  [Used for
+  full-screen sessions only.] The second variables may go at the future, when
+  Lynx knows how to auto-deduce it itself.  Format of CHARSET_SWITCH_RULES
+    source1 source2 source3 : dest1, source4 source5 : dest2
+* move a call for _scrsize() from LYSystem() to size_change(), to fix problem
+  with OS/2 EMX related to screen-size changes -IZ
+* correct a bug in TRSTable.c which left a pointer into a chunk which was
+  reallocated elsewhere (report by Robert Mognet <rmgnt@surfree.com>) -TD
+* make parse_restrictions() warn about keywords it does not recognize -TD
+* rewrote restrictions_fun() in LYMain.c, making it use print_help_strings(),
+  to show the actual restriction values, and listing restrictions that are not
+  documented in the -restrictions message -TD
+* if find-leaks if enabled, free the 'line' variable in HTReadProgress() -TD
+* if find-leaks is enabled, undefine SAVE_TIME_NOT_SPACE in HTString.c to avoid
+  seeing spurious leaks in HTSprintf/HTSprintf0 -TD
+* add command-line option -trace-mask to specify optional traces.  Defined
+  these: 2=color-style, 4=TRST -TD
+* improve ifdef's for --disable-trace configure option, eliminating more unused
+  code when NO_LYNX_TRACE is defined -TD
+* make ifdef's for NCURSES and resizeterm consistent -TD
+* add a call to wresize() after resizeterm() in case user resizes screen in
+  ncurses pad configuration (report by IZ) -TD
+* change entry for "bibp" restriction to "goto_bibp" for consistency with the
+  other goto_xxx restrictions, and use CAN_ANONYMOUS_GOTO_BIBP (report by
+  Robert Cameron) -TD
+* add table entries for goto_xxx restrictions, which replace assignments
+  overlooked in conversion to table in dev.18 (report by Robert Cameron) -TD
+
+2001-02-12 (2.8.4dev.18)
+* change LYLineEditors[] to unsigned char since values are out of range for
+  signed chars on Solaris -TD
+* correct a memory leak in HTStat() from mis-patch for Win32 -TD
+* modify fancy_mouse() logic for ncurses to allow the user to quit a menu by
+  clicking outside the menu -IZ
+* allow a different approach to the problem:  how to enter a keyboard
+  navigation command when you are in an editing mode.  A new EDIT-time action
+  is introduced:  LYE_STOP.  Use it like this:
+	KEYMAP:^[:INTERRUPT:STOP
+  The action behaves as if -tna is temporarily switched on:  your edit is
+  committed, and you go into the non-edit mode - until you press Enter on an
+  edit field again (or switch to a different document), when this temporary
+  switch to -tna is terminated.  If the "current" edit field has a different
+  style than the "active" edit field, you get an additional feedback.  Anyway,
+  the status line shows a correct info about the current mode.
+  In -tna mode this behaves as the usual end-of-edit action -IZ
+* make bindings for C-w and C-x C-w do not work for form input fields -IZ
+* add etags target to top-level makefile.in -IZ
+* add some traces to make color style code easier to debug -TD
+* restore commented-out call to HText_cancelStbl() in HTML_TABLE case in
+  HTML_start_element() from IZ's changes, which is needed for nested table
+  alignment.  The colors shown in deja-news are incorrect however because color
+  styles are not picking up the </tr> and </table> tags properly, and a few
+  tables are misaligned relative to dev.16, more analysis needed -TD
+* change LYHash.c to use const, eliminate redundant unsigned's and casts -TD
+* add a limit check for rand()/etc., result in LYUtils.c, which worked for
+  Linux lrand48() but was not portable (report by PG) -TD
+* add missing definitions to make srand/rand code build for non-autoconf'd
+  configurations such as win32 -TD
+* ifdef'd the mkdir() for lynx_temp_space in LYMain.c to make it apply only to
+  Unix, to avoid prototype conflict with non-POSIX compilers (report by Mike
+  Bledig <mikegb@mweb.co.zw>) -TD
+* adapt patch for FTP_PASSIVE from NetBSD CVS, to make it work with INET6 (from
+  comp.unix.bsd.netbsd.misc newsgroup posting which stated that the patch had
+  been forwarded to lynx-dev) -TD
+* remove unused code of HTParseInet() for INET6 from HTTCP.c -TD
+* updated some translations in fr.po and ru.po (report by JES) -TD
+
+2001-02-08 (2.8.4dev.17)
+* implement left/right scrolling and line-wrap toggle using '{', '}' and '|'
+  characters, respectively.  This uses SVr4 curses/ncurses pads to make the
+  whole screen treated as a viewport into a very wide screen -TD
+* make do_check_goto_URL() table-driven to simplify it as well as combine the
+  related messages into GOTO_XXXX_DISALLOWED -TD
+* combine restrict_name[] and restrict_flag[] arrays to eliminate possibile
+  ifdef mismatches, as well as to simplify the treatment of "default"
+  restrictions -TD
+* eliminate redundant symbols for color-style ifdefs (USE_HASH and
+  LINKEDSTYLES), using only USE_COLOR_STYLE -TD
+* simplify parse_style() by making most of it a table -TD
+* correct logic in arg_eqs_parse() for OPTNAME_ALLOW_DASHES ifdef which made
+  incorrect match for -display if -display-charset were given
+  (report by IZ) -TD
+* revert a commented-out call to HText_cancelStbl() in HTML_TABLE case in
+  HTML_start_element() from IZ's changes, which had the effect of changing the
+  article color in deja-news for color-style configuration -TD
+* fix off-by-one error in the END key handling (an empty line was shown at the
+  end) -IZ
+* makes END key always show a full last page of the document.  That is, even if
+  the last line is already shown, it is moved to become the last line of the
+  screen, so that as much as possible of the document is on the screen -IZ
+* add -display_chars cmdline option, and additionally allows autodetection of
+  the charset on the system which allow it.  This provides a way to switch the
+  display charset other than via obscure manipulation with 'O'ptions.  (.lynxrc
+  is not viable if you have different charsets in different windows.) -IZ
+  The logic:
+  (1) first autodetect;
+  (2) then read cfg file, and if it is not "AutoDetect ..." (as the saved
+      version says), grant the cfg file charset;
+  (3) then read the cmdline, if it is present, but not "auto", then
+      grant it, otherwise switch back to the autodetected one.
+* allow TRST code to handle table-in-table.  There are now two cases only
+  (modulo bugs) when Lynx will not show a table in a table form no matter what
+  is the screen width:  when TABLE is inside PRE, and when there is a TAB
+  inside a TABLE.  Both look like deliberate decisions, so I did not change
+  these places in HTML.c.  But one may need to reconsider this at some
+  moment...  Example of usage:  to process (my old copy of) DejaNews Power
+  Search form (which has TABLE-in-TABLE, and multiline cells) you need screen
+  width of 112 chars -IZ
+* enable <BR> and <P> in TRSTables.  The table still needs to fit into the
+  screen width without line wrapping.  A tiny bit of additional work may be
+  needed to allow tables-inside-tables too; then any table should be rendable
+  as a table after an appropriate screen resizing.  This patch also should make
+  around 70% of TRSTable.c unreachable.  A lot of simplification can be made,
+  and most of the current convoluted hackery may be removed.  Since this
+  algorithm tries to align *all* the display lines of the table, in some rare
+  cases it may need larger screen width than the old algorithm (the old
+  algorithm ignores all but one of the display lines corresponding to the given
+  <TR></TR> - and in most cases just gives up for the whole table if a
+  multiline cell is but of the simplest form) -IZ
+* add several traces and comments to TRSTable.c -IZ
+* enable interrupting LYNX by any char bound to INTERRUPT -IZ
+* add configure check for srand()/rand() functions, or alternatives with
+  similar interfaces.  These are used in the SSL and experimental temporary
+  file options -TD
+* allow binding ESC to perform some action (such as INTERRUPT:ABORT, or
+  something else).  It is useful only if the curses (or similar) package remaps
+  all the reasonable escape sequences, so Lynx internal escape-sequence
+  processing is not needed -IZ
+* enable showing the region between mark and point in the edit areas in a
+  different style.  The style names are edit.active.marked and
+  edit.prompt.marked -IZ
+* add visible feedback for special case of unactive current text area which may
+  exist with -tna.  The corresponding style is edit.current -IZ
+* add FORW_RL and BACK_LL to edit bindings support to allow cursor forward and
+  backward respectively to move to the next/previous link if done at the end of
+  the edit-field -IZ
+* update several configure script macros to smooth over incompatibilities
+  in autoconf 2.49c (alpha).  In particular, this eliminates support for
+  changequote(), and adds limited support for OS/2 -TD
+* add google to list of search engines in lynx_help_main.html -LP
+* minor formatting of help message -Michael Warner
+* modify GetStdin() function in LYMain.c to allow -stdin option to read past
+  a line consisting of "---" (reported by Michael Warner) -TD
+* ifdef'd bibp: support, added configure option --disable-bibp-urls -TD
+* add experimental support for bibp: URLs as described in
+  http://www.ietf.org/internet-drafts/draft-cameron-tatu-bibp-02.txt
+  (patch by Rob Cameron <cameron@cs.sfu.ca>).
+* change sed delimiters in makefile.in to avoid using '@', which may appear
+  in AFS pathnames (report by Martin Mokrejs <mmokrejs@natur.cuni.cz>) -TD
+* fix missing call to LYCloseTempFP() in LYPrint.c, which caused attempt to
+  mail a file from the PRINT menu to send an email with a blank body.  It looks
+  like this would happen for any platform not using LYPipeToMailer() -DK
+* change pointers for RFC's from ds.internic.net to rfc-editor.org, since
+  the former appears outdated -Michael Warner
+* add undef for HAVE_DELSCREEN to config.hin, so the delscreen() ifdef from
+  dev.16 works as intended -PG
+* workaround in CF_CURSES_FUNCS for overzealous compiler that optimized away
+  the test code -TD
+* change order of checks by CF_NETLIBS and CF_SSL macros in configure script,
+  since SSL libraries depend on network libraries (reports by Martin McCormick
+  <martin@dc.cis.okstate.edu>, IZ) -TD
+
+2001-01-01 (2.8.4dev.16)
+* add ja.po message file (overlooked in dev.15) -Atsuhito Kohda
+  <kohda@nsx.pm.tokushima-u.ac.jp>
+* use C preprocessor at build-time to replace CF_EBCDIC configure macro -PG
+* integrated SSL patch from http://www.moxienet.com/lynx/ as a configure
+  option, --with-ssl -TD
+* add configure check for delscreen(), which is not available in some older
+  SVr3 curses libraries -TD
+* add configure check for socks5p.h, to allow socks5 build to use function
+  prototypes -TD
+* updated config.sub, config.guess -TD
+* modify some configure macros to use CF_PATHSEP, for path-separator which is
+  usually colon on Unix, and semicolon on MSDOS, etc.  -TD
+* modify several configure macros to use $CFLAGS consistently for compiler
+  options and $CPPFLAGS for C preprocessor options -TD
+
+2000-12-21 (2.8.4dev.15)
+* add .po files to main distribution, remove stubs for files that were not
+  implemented, use msgmerge to resync against the current lynx.pot
+  (prompted by discussion with Morten Bo Johansen <mojo@image.dk>) -TD
+* corrected dev.13 changes for EXP_READPROGRESS, to make the
+  non-EXP_READPROGRESS configuration build and work with .lynxrc settings -DK
+* use EXIT_SUCCESS/EXIT_FAILURE in exit() and exit_immediately() calls -TD
+* improve check for lynx_temp_space by ensuring that the directory actually
+  exists; attempt to create the directory if it does not, e.g., ~/tmp/, to
+  resolve problem introduced by Mandrake's patch -TD
+* modify SetOutputMode() to flush stdout to work around buffering problem with
+  Cygwin on error exit from Lynx (reported by Brad Town <btown@ceddec.com>) -TD
+* change definitions for LYCharINTERRUPT1 and LYCharINTERRUPT2 to not use
+  FROMASCII() in the EBCDIC configuration, since those symbols are used in case
+  statements which otherwise would not compile -PG
+
+2000-11-03 (2.8.4dev.14)
+* restore initialization of LYlines, LYcols in setup() which was lost in dev.12
+  changes (reported by DK) -TD
+* modify logic for -stdin option to redirect keyboard input to null device
+  if lynx is not connected to a terminal, e.g., running under cron -TD
+* check in DontCheck() if Lynx is reading from a command-script, to avoid
+  using those characters to interrupt the application -TD
+* add a cleanup handler for win32, since UNIX-style signal handlers do not
+  work on that platform -TD
+
+2000-10-25 (2.8.4dev.13)
+* fix missing ifdef for EXP_READPROGRESS in LYOptions.c (reported by
+  Atsuhito Kohda) -TD
+
+2000-10-25 (2.8.4dev.12)
+* add a configure check for video library on OS/2 EMX, needed to link with
+  slang.  Arrow keys do not work -TD
+* use macro UCH to fix gcc's char-used-as-subscript warnings, and to replace
+  existing casts to unsigned char, making the code more readable -TD
+* merge variants of HTReadProgress() -TD
+* modify SHOW_KB_RATE in lynx.cfg to allow disabling logic that
+  shows transfer rate during download.  If EXP_READPROGRESS is defined, make
+  this alterable from the command line and options menu as well (from
+  discussion by Karen Lewellen <klewellen@delphi.com>) -TD
+* add the pathname that caused a problem to the error message in
+  CF_PATH_SYNTAX, lest someone be confused when tilde is not expanded
+  (addresses a problem reported by Lawrence Kwan <lawrence@interlog.com>) -TD
+* remove redundant leading newlines in "lynx -version" output (reported by Sven
+  Guckes) -TD
+* add dependency in src/makefile.in for building chrtrans/makeuctb$x, used by
+  UCdomap.o -IZ
+* fix CF_PATH_SYNTAX square brackets for OS/2 EMX case, lost by not disabling
+  m4's quotes for that line (report by IZ) -TD
+* remove older/unused variant of code to set screen size in LYCurses.c by
+  setting environment variables -PG
+* one of the ".po" files is zipped as type binary rather than ASCII, so it does
+  not unzip on OS/390 with the "-a" option.  The "-aa" works better since it
+  forces text conversion regardless of the type of the archived file -PG
+* change definitions of LYCharINTERRUPT1 and LYCharINTERRUPT2 to accommodate
+  EBCDIC -PG
+> the remainder (most of the functional changes in this patch) from IZ:
+* add "typeless" notion to color style logic:
+  a) reverts to the style "foo" (from "foo.classname") if the style
+     "foo.classname" was not configured;
+  b) For input elements of type=typename uses style
+     "input.type.typename" if this style is configured (but
+     "input.classname" is not!);
+  c) Same for typeless elements, with typename="".
+  This allows the following:
+    input.type.submit:normal:blue:black
+    # match "link":
+    input:normal:green
+    textarea:normal:white:cyan
+    # type-less input is the same as type=text (similar to textarea)
+    input.type.:normal:white:cyan
+    input.type.text:normal:white:cyan
+  If your "link" is configured as normal:green, then input elements of types
+  other than typeless, text, or submit will be shown in the same style as link.
+  The textareas and text input elements are shown in the same style (but
+  different from "link" style), and submit "buttons" are shown yet in another
+  style.
+* implement styles in "dynamic areas" of documents.  Three flavors of them are
+  active text-edit fields, non-active ones, and links/radiobuttons, etc.
+  This patch is concerned with the first flavor only.  Two subflavors are
+  document's text-edit areas, and Lynx's ones (such as where you input the URL
+  after `g').  Each one of them has 3 elements:  scroll symbols ("arrows"),
+  after-the-end padding, and the actual input string.
+  The patch
+    a) makes styles for these 2*3 elements customizable;
+    b) uses ACS chars (if available) for the arrows (instead of `{'/`}').
+  [It would be nice to make non-active text-areas to have customizable
+   styles for padding, and have scroll arrows too...]
+  Here is my customization for testing:
+    edit.active:normal:red:cyan
+    edit.prompt:normal:green:cyan
+    edit.active.arrow:normal:yellow:cyan
+    edit.prompt.arrow:normal:yellow:gray
+    edit.active.pad:normal:gray:cyan
+    edit.prompt.pad:normal:white:black
+* modify LYSystem() to allow changing size of lynx window with OS/2 EMX
+  at runtime.  Example:
+    !mode 110,30;exit
+* use new macros LYCharINTERRUPT1, LYCharINTERRUPT2 and LYCharIsINTERRUPT() to
+  make it simpler to find uses of ^C and ^G
+* modify key mappings so the keymap file overrides the terminfo/termcap
+  description rather than the reverse
+* make unrecognized keynames emit diagnostic when tracing (but ignores them the
+  same way the older code did).  Trace info about each keycode received
+* provide better tracing of style choices, both when styles are assigned into
+  text-lines, and when lss directives are converted to "numeric colors"
+* add similar tracing for links and contents of user-editable stuff
+* slightly expand the cache of colors to better accomodate 16-color terminals,
+  and fixes a misprint in handling background-color == maxcolor
+* modify logic in color styles initialization using flag default_color_reset to
+  override ncurses use_default_colors() logic if the "default" color style tag
+  is found in lynx.lss
+
+2000-10-18 (2.8.4dev.11)
+* include LYLeaks.h in LYPrettySrc.c to allow leak-checking -TD
+* modify configure script macro CF_RECHECK_FUNC to ensure that we add a given
+  library only once to the resulting list.  This fixes a longstanding bug which
+  caused the nsl library to be repeated on some platforms (reported by BL for
+  one of the SCO configurations, and Urs JanBen <urs@tin.org> for SINIX-L 5.41
+  (i386-sni-sysv4)) -TD
+* modify "make install-doc" rule to first remove targets.  Otherwise "ln -s"
+  and "cp" fail to create the targets when installing with normal user
+  permissions (reported by LV) -TD
+* fix for handle_LYK_DWIMEDIT() to ensure it does not dereference a null
+  pointer, when trying to edit a text file with no links within it (report by
+  Harri Tuominen) -DK
+* add fallback definitions to accommodate renaming of UCX$xxx symbols to
+  TCPIP$xxx in recent versions of OpenVMS UCX (reported by Horst Drechsel
+  <ai05@sternwarte.uni-erlangen.de>) -TD
+* add TRSTable.obj to src/descrip.mms objects -TD
+* modify configure script to omit LYExtern.o and LYLocal.o if the corresponding
+  options (externs and dired) are disabled -TD
+* correct a typo that made configure script always define USE_EXTERNALS -TD
+* interpret ftp server type for VMS if a URL is given with "/~name", as a
+  Unix-style server.  This works for the following, at least:
+    VMS V6.2 AlphaServer 2100 4/233 MadGoat System type.
+  (reported by Rick Dyson <dyson@iowasp.physics.uiowa.edu>) -TD
+* make configure check for getaddrinfo() less strict, needed with --enable-ipv6
+  on IPv4-only system (patch by Munechika Sumikawa)
+
+2000-09-21 (2.8.4dev.10)
+* modified www_tcp.h and makefile.msc to allow compile with winsock2 if
+  USE_WINSOCK2_H is defined -TD
+* fix:  the recently added code to enable external programs to replace normal
+  lynx handling of individual URL types was not refreshing the screen after the
+  external program finished (EXTERNAL set TRUE:TRUE) -DK
+* fixed two URLs in lynx_help_main.html -DK
+* add symbol USE_VMS_MAILER, use to distinguish VMS mail ifdef's for test
+  compiles -TD
+* use new function LYSendMailFile() to consolidate details of non-VMS/non-piped
+  email, e.g., DOS or Win32, and eliminate some minor inconsistencies in that
+  area -TD
+* correct order of ifdef's in send_file_to_mail() which could leave unsent
+  email on some systems without popen/pclose -TD
+* add some checks in LYhandlePopupList() to prevent popup of an empty list -TD
+* change a few messages written to stderr to end lines with \r\n rather than
+  \n, since Lynx may already be in screen mode when they are written -TD
+* treat .Z, .gz and .bz2 suffixes more symmetrically using new function
+  HTCompressFileType() for parsing them -TD
+* change mime type for bzip2 files to bzip2, x-bzip2 -HN
+* move IPV6 definitions in www_tcp.h to the end, to build on FreeBSD 4.1, since
+  SIN6_LEN must not be checked before including netinet/in.h (patch by
+  Munechika Sumikawa (KAME Project <sumikawa@ebina.hitachi.co.jp>))
+* make HTParseInet() private, simplify some ifdef's -TD
+* change shell expression used to process stdin for mailcap to "(command)<file"
+  form, which is a little more robust than "cat file|command" (suggested by
+  PG) -TD
+* update URLs in about_lynx.html -DK
+* remove spurious 'FREE(leaf);' from LYLocalFileToURL() introduced in dev.5 -DK
+
+2000-09-01 (2.8.4dev.9)
+* improve ifdef's for endwin/newterm logic, making a fallback for LYscreen
+  variable -PG
+* modify CF_CURSES_LIBS to check if both initscr() and tgoto() are in the
+  $LIBS list before deciding not to try to look for them -TD
+* add %s substitution to mailcap_substitute(), overlooked when implementing
+  the logic to read from stdin when %s is omitted (reported by IC) -TD
+* restore endwin/newterm code for ncurses (as PG notes it really is needed) -TD
+
+2000-08-24 (2.8.4dev.8)
+* refine CJK-related suppress of refresh() in statusline() to do this only
+  when the status line does not contain CJK characters (Hataguchi Takeshi)
+* add po/da.po placeholder (request by JES)
+* implement %s, %t, %{charset} and %{encoding} substitutions for mailcap
+  commands in HTFWriter.c (addresses Debian #21096) -TD
+* use new function AnchorsOnThisLine() to obtain count of anchors on the
+  current line for correct computation of length required to fix Debian #68542:
+  Text entry field on http://lists.debian.org/ is hidden when "form fields are
+  numbered" (reported by H.Nanosecond) -TD
+* add OS/2 cases to config.guess, config.sub -TD
+* modify CF_FUNC_GETADDRINFO to supply missing definitions for
+  HAVE_GAI_STRERROR and HAVE_GETADDRINFO, needed to make IPV6 build (reported
+  by Wesley Morgan) -TD
+* reset recent_sizechange after reading KEY_RESIZE from ncurses to work around
+  a case with Linux libc5 which would be treated as an EOF, causing an exit -TD
+* suppress PG's endwin/newterm code for ncurses because it is not needed -TD
+* modify start_curses() function to preset environment variables $LINES and
+  $COLUMNS to make the curses library see the proper screen size.  After
+  calling endwin(), delete the current SCREEN object, to force curses library
+  to discard its cached values of LINES and COLS.  This requires using
+  newterm(), which may not be present in all versions of curses, so we check
+  for and ifdef accordingly.  Tested on os390 and Solaris -PG
+* cleanup IPV6 ifdef's using SOCKETADDR_LEN macro -TD
+* add error checks to LYCopyFile() and other places to report problems copying
+  the downloaded file, using new functions LYCloseOutput(), LYCanWriteFile()
+  (reported by H.Nanosecond <aldomel@ix.netcom.com> as Debian bug #63391) -TD
+* correct logic used to check for "Too many tempfiles", which resulted in
+  occasional misfires -TD
+* add configure checks for touchline() and touchwin(), use this info to work
+  with Ultrix V4.5 (report by Bernhard Simon <bs@bsws.zid.tuwien.ac.at>) -TD
+* reorganized CF_SIZECHANGE macro to work with autoconf 2.49a -TD
+* cleanup definitions for wait-status macros, moving them into www_wait.h -TD
+
+2000-08-03 (2.8.4dev.7)
+* add sample mailto-form.pl script to illustrate handling mailto URLs -KW
+* modify HTTCP.c to build on AIX 4.3 using HAVE_TYPE_UNIONWAIT as in LYLocal.c
+  (Georg Drenkhahn <georg@MPA-Garching.MPG.DE>)
+* change $host_os special case for 'os390' to 'openedition' in configure.in,
+  make corresponding changes for config.guess and config.sub -PG
+* integrate KAME patch for IPV6 (Wesley Morgan <morganw@chemicals.tacorp.com>)
+* add configure script macros for checking IPV6 from tin -TD
+* small fixes for configure script macros CF_BUNDLED_INTL, CF_CURSES_LIBS,
+  CF_UPPER, CF_X_ATHENA -TD
+* fix for multibyte characters in status line (Hataguchi Takeshi)
+* align/merge logic in LYOptions.c and LYForms.c which handles navigation in a
+  popup list, for reuse in name-completion -TD
+* restore check for ^G to cancel in HTSaveToFile() lost in dev.4 changes -VH
+* remove duplicate entries in sortedList() which are used for name-completion
+  (Frederic L W Meunier) -TD
+* fix compiler warning about const in LYpaddstr() using LYwaddnstr(), and
+  fix a potential buffer overflow in the latter (report by PG) -TD
+* correct logic in LYsubwindow(), which called delwin() with a null WINDOW
+  pointer -PG, TD
+
+2000-07-17 (2.8.4dev.6)
+* move special case statement for os390 compiler before AC_PROG_CC macro in
+  configure.in and regenerate configure script (reported by PG) -TD
+* correct check for return values of check_color() in parse_color() for slang
+  configuration, which prevented use of "default" color.  This applies to
+  2.8.3rel.1 as well -TD
+* correct draw_option() functions in LYForms.c and LYStrings.c for slang
+  configuration broken in dev.5 by wrong cut/paste (report by IC) -TD
+
+2000-07-16 (2.8.4dev.5)
+* remove "*:OS/390:*:*" item from config.guess -PG
+* add os390 item to $host_os case-statement in configure.in -PG
+* move $host_os case-statement in configure.in before some configuration tests
+  such as CF_BUNDLED_INTL which might perform compile-time tests -TD
+* use LYLocalFileToURL() in handle_LYK_CHDIR() to ensure that DOSPATH is
+  handled properly, inserting a '/' (reported by DK) -TD
+* correct loop condition in HTSaveToFile(), from dev.4 changes for -cmd_script
+  option which left it ignoring 'c' for cancel -TD
+* speed up local directory access for DJGPP by setting _djstat_flags (Gisle
+  Vanem)
+* updates for makelynx.bat, and improved call on the blat mailer (note -f field
+  not needed or wanted) -Victor Schneider
+* fix Debian bug #65151:  "<> in javascript causes premature </script>"
+  (reported by H Nanosecond <aldomel@ix.netcom.com>) -KW
+* replaced all occurences of 'black' with 'default' in /samples/mild-colors.lss
+  to make it more reasonable on terminals with non-black background -VH
+* modify color-style initialization to avoid passing -1's as attribute codes
+  which would happen if the lynx.lss file was not found, or if not all styles
+  were set in that file.  Also if lynx.lss is not found, initialize the
+  predefined styles to match those in samples/lynx.lss -TD
+* modify handling of empty values for radio and checkbox fields to avoid
+  sending "on" as the value (reported by Janne Peltonen <jkhp@cc.hut.fi>) -KW
+* don't double backslash characters in HTQuoteParameter(), since that changes
+  the string a program invoked through system will see.  Note this assumes UNIX
+  or POSIX interpretation of single-quoted strings by the shell -KW
+* implement first draft of command-completion using popup menu for selection.
+  Pressing tab twice in the prompt for command or URLs will display a sorted
+  list of the choices -TD
+* implement a simple parser for Lynx commands which are normally bound to keys
+  using KEYMAP.  This is bound to ':', so you can for instance type ":quit" to
+  exit.  The parser allows unique abbreviations, so ":q" is equivalent to
+  ":quit" -TD
+* consolidate/simplify logic for displaying popup menus -TD
+* rewrote tab-completion to use an HTList -TD
+* move related logic into LYSubwindow() to reduce clutter - TD
+* make $(DESTDIR) variable work for po directory -TD
+* update bundled intl directory to match gettext-0.10.35 (except for fixes to
+  build scripts) -TD
+* modify configure macro CF_CURSES_LIBS to use a different order for library
+  checks if it has found ncurses header files (i.e., they are installed as
+  /usr/include/curses.h).  This is done to fix an problem where there are two
+  versions of the curses/ncurses libraries installed, and the "curses" library
+  is not ncurses (from a report by Sergei Pokrovsky <pok@nbsp.nsk.su>) -TD
+* fix for configure script from dialog:  If we really do not use included intl,
+  suppress the command that would attempt to symlink the two copies of its
+  header -TD
+* updates for config.guess, config.sub from tin -TD
+
+2000-06-23 (2.8.4dev.4)
+* modify handling to EXTERNAL settings by adding a new field in lynx.cfg.  When
+  TRUE, then activating (using arrow-right for example) the link with URL
+  matching the one specified by 'prefix' field will be equal to pressing '.' on
+  it -VH
+* restore commented-out "clearok(curscr, TRUE)" in display_page() in GridText.c
+  to workaround problem repainting multibyte characters (reported by Takuya
+  ASADA <asada@isoternet.org>) -KW
+* add HIDDEN_LINK_MARKER entry to lynx.cfg, allowing user to specify string to
+  mark hidden links with (thus hidden links become non-hidden, thus they won't
+  be listed as hidden in the 'l' page) - the name of the setting is
+  hidden_link_marker.  If the string to mark with is empty, then old behaviour
+  is restored -VH
+* implement "change directory" command.  This is tested only on linux.  It's
+  bound to 'C' in both modes (before this in normal modem COMMENT command was
+  bound to 'c' and 'C' in normal mode, and CREATE was bound to 'c' and 'C' in
+  dired mode).  The main purpose of this command is not to type the name of the
+  directory when 'p'rinting to files and 'd'ownloading.  If this command is
+  invoked in dired mode, the listing of destination directory will be
+  automatically loaded.  Dired file operations menu lists this command too as
+  the first item.  To disable it, comment the line
+      #define SUPPORT_CHDIR
+  in userdefs.h -VH
+* add definitions to allow slang configuration to implement scrollbars.  This
+  will not work for any termcap/terminfo-based systems, appears specific to
+  MS-DOS (patch by Gisle Vanem)
+* updates for config.guess, config.sub from tin -TD
+* fix typo in CF_CHECK_ERRNO configure macro (reported by John Coyne
+  <John.Coyne@ctbto.org>) -TD
+* add <html> and </html> around generated HTML in HTGopher.c, LYKeymap.c,
+  LYCookie.c and LYCgi.c to make them more-correct.  Did not modify
+  LYBookmark.c because the logic there relies on appending to the bookmark file
+  (report by Patrick Boylan <pboylan@island.net>) -TD
+* make pretty_html() in LYKeymap.c quote ampersand and quote, simplified logic
+  as well with LYKeycodeToString() implemented for command-logging -TD
+* add command-line options -cmd_log and -cmd_script, to provide a simple
+  command logging and scripting facility -TD
+* minor correction to -stdin option, add newline at the end of each line
+  copied -TD
+
+2000-06-02 (2.8.4dev.3)
+* initial support for SOURCE_CACHE_FOR_ABORTED -VH
+* change default_keypad_mode_fun() to use config_enum() -TD
+* modify config_enum() to check if the given name in lynx.cfg is ambiguous,
+  matching more than one name -TD
+* in passive ftp mode (FTP_PASSIVE:TRUE), use the IP address from the server's
+  response for the data connection, rather than doing another lookup of the
+  hostname -KW
+* correct bug introduced in dev.2 for leading whitespace in mailcap (reported
+  by Andrey Chernov) -VH, TD
+* change server types in HTFTP.c to an enum -TD
+* handle a "215 Windows2000" response from "SYST" command (Gisle Vanem)
+* change return value of parse_arg() when processing non-option data to make
+  URL in stdin (after '-') treated in the second pass, restoring behavior lost
+  in cleanup (reported by Gisle Vanem) -TD
+* allow blank as a separator in arg_eqs_parse() in addition to ':' and '=',
+  to restore behavior lost in cleanup of argument parsing -TD
+* make -stdin option a little more flexible by ifdef'ing primarily based on
+  ttyname(), and adding fallback definitions for Win32 and VMS -TD
+* for slang configurations past 1.3.6, call SLsmg_touch_screen() in
+  start_curses to ensure that the screen is properly initialized for non-bce
+  terminals -JED (John E Davis)
+* move call on lynx_initialize_keymaps() for slang configuration into the
+  start_curses() function, avoiding premature reference to $TERM, especially
+  when Lynx is running in dump mode, e.g., via cron (report by Hamish Moffatt
+  <hamish@rising.com.au>, analysis by KW) -TD
+* correct logic for ^ and $ commands (FIRST_LINK and LAST_LINK) when the
+  current line happens to be the first or last line on the screen (reported
+  by KW) -TD
+* remove unused fragments of backspace logic from print_crawl_to_fd() -TD
+* modify print_wwwfile_to_fd() and print_crawl_to_fd() to refrain from emitting
+  an offset for empty lines -TD
+* modify print_wwwfile_to_fd() to refrain from emitting backspaces when
+  the is_reply parameter is true -TD
+* add traces for argument parsing, as well as an environment variable
+  LYNX_TRACE which has the effect of the -trace option -TD
+* add configure check for ttyname, used in ifdef's for -stdin option -TD
+
+2000-05-21 (2.8.4dev.2)
+* minor changes to HTInit.c to make it more tolerant of leading whitespace
+  in mailcap entries (reported by Sven Guckes <guckes@math.fu-berlin.de>) -TD
+* add option -stdin, which tells Lynx to read the startfile from standard
+  input -TD
+* simplify argument parsing in LYMain.c, moving the special cases into the
+  table-driven logic by adding a flag that denotes the argument parsing phase
+  that applies -TD
+* correct duplicate description of JUMPFILE in lynx.cfg -TD
+* refine cfg2html.pl changes to use command-line options to control the
+  sorting and marking features, as well as make the script work properly if
+  the markup data is not given -TD
+* moved entry for lynx.cfg setting "viewer" according to the alphabet in
+  LYReadCFG.c:Config_Table -VH
+* modify cfg2html.pl to mark unavailable options, and to provide for sorting
+  the options in body.html -VH
+* update NLS configure script macros using CF_BUNDLED_INTL from tin, etc. -TD
+* update utmp configure script macros from xterm -TD
+* fix (from tin) to autoconf macro AM_WITH_NLS to fix a case where it would
+  refuse to build with non-GNU gettext -TD
+* modified autoconf macros CF_HEADER_PATH and CF_LIBRARY_PATH, to look in more
+  places for the specified files, including $HOME -TD
+* remove intl/libintl.h since it is overwritten by a symbolic link (reported
+  by Atsuhito Kohda <kohda@pm.tokushima-u.ac.jp>) -TD
+* correct a few tests in configure script which must allow inclusion of either
+  ncurses.h or curses.h, otherwise color-style cannot be configured (reported
+  by Frederick Bruckman <fb@enteract.com>) -TD
+* move logic that makes subdirectory for more-secure temporary files into
+  LYOpenTemp() where it can perform that action on demand rather than for all
+  invocations of lynx.  Further refine this logic by ensuring that the umask is
+  set to allow execution permissions on the subdirectory (fixes problems
+  reported by Michael Abraham Shulman <mas@kurukshetra.cjb.net> and KW) -TD
+
+2000-05-05 (2.8.4dev.1)
+* use built-in LYCopyFile logic for CYGWIN rather than external cp program -DK
+* minor refinement to  LYValidateFilename() to avoid prepending a drive
+  letter when saving files via the PRINT command on DOS systems -DK
+* update URLs in lynx_help_main.html (Frederic L W Meunier)
+* update description in INSTALLATION dealing with passive ftp (report by
+  Frederic L W Meunier) -TD
+* correct ifdef'ing in LYtouchline() for VMS curses versus slang (report by
+  Jerome Lauret) -TD
+* correct an overlooked change of ifdef's from
+  CONV_JISX0201KANA_TO_JISX0208KANA to CONV_JISX0201KANA_JISX0208KANA -TH
+* move include of LYClean.h in LYexit.c to ensure that cleanup_files() is
+  prototyped on VMS (report by Jerome Lauret) -TD
+* move assignment of HadVMSInterrupt in cleanup_sig() to avoid interaction with
+  logic in HTConfirmDefault() on VMS (reported/tested by Jerome Lauret) -KW
+* minor fixes to lynx.man / lynx.hlp for descriptions of -get_data, -post_data,
+  -short_url -KW
+* avoid invalid memory access that can result from redirection messages
+  that include a fragment in the new URL -KW
+* change sed delimiter in makefile.in from '%' to '"', to work around SINIX
+  v5.43 (SYSV4) sed which becomes confused by nested '%' in expression for
+  htmlized cfg install (reported by Shishakov Vjacheslav
+  <shishako@avn.skiftel.ru>) -TD
+
+2000-04-23 (2.8.3rel.1)
+* replace LYNX_RELEASE variable in userdefs.h by functions LYVersionIsRelease()
+  and LYVersionStatus() in LYShowInfo.c -TD
+* remove symbol LYNX_RELEASE_DATE, use same format for both development and
+  release dates -LP
+* remove po/ChangeLog -LP
+
+2000-04-22 (2.8.3pre.8)
+* update option_help.html to describe the Visited Pages settings -TD
+* correct order of body_attr[] and button_attr[] in HTMLDTD.c -TD
+* correction for IMG attributes in HTMLDTD.c -KW
+* tweak form-based options menu:  General Preferencies now has User Mode,
+  Editor, Searching type and Cookies (suggested by PW).  Correct misspelled
+  gettext'ed message, introduced in pre.7 -LP, DK
+* note in configure --help and INSTALLATION that color-style is implemented
+  for various curses libraries but not slang -TD
+* add a note to INSTALLATION describing how to disable the telnet application
+  when configuring Lynx -TD
+2000-04-19 (2.8.3pre.7)
+* move initialization of WATT-32 "sock_init()" code in LYMain.c so it precedes
+  Lynx's code to setup SIGINT handler, since WATT-32 installs a SIGINT handler
+  as well.  This makes Lynx's handler the default again -DK
+* correct handling of CHARSET attributes on LINK and A.  Basically this reverts
+  back to original 2.7.2ac logic -KW
+* enable handling of CHARSET attributes on LINK - it was disabled, probably
+  accidentally -KW
+* prevent CHARSET attributes from modifying the charset assumption for the
+  _current_ document -KW
+* correct errors in HTML.c that could result in infinite loop (iteration
+  counter was not incremented) -KW
+* revert one strcpy -> StrAllocCopy change - see added comment in LYCgi.c -KW
+* correct limit of formatted string in status_link() -KW
+* change NO_FILE_REFERER default to TRUE (i.e., do not send local file name
+  in the referer field unless explicitly specified by the user) -LP, KW
+* implement a workaround for gettext'd ADVANCED_COOKIE_CONFIRMATION to make
+  it consistent with HTConfirmDefault(), fixes Debian #62105 -TD
+* clarify/expand notes in lynx.cfg dealing with USE_MOUSE (from comments by
+  Morten Bo Johansen <mojo@image.dk>) -TD
+* noted glibc 2.1.3 bug in PROBLEMS -TD
+* reorganize forms-based options menu:  options are now grouped by sections in
+  a more logical way (design by KW).  (BTW, it is now more aligned with
+  htmlized-cfg cattoc.html).  Help files changed accordingly.  A few gettext'ed
+  messages were changed -LP
+* add ifdef's (USE_BLAT_MAILER and USE_ALT_BLAT_MAILER) and corresponding code
+  for blat vs blatj mailer (request by Victor Schneider) -TD
+* update Lynx FAQ locations -JES
+
+2000-04-17 (2.8.3pre.6)
+* change version number in remaining documentation to 2.8.3 -TD
+* remove redundant defines for SUPPORT_MULTIBYTE_EDIT and COLOR_TABLE from
+  DOS/Win32 makefiles -TD
+* small change to configure test for REAL_UNIX_SYSTEM to accommodate linkers
+  that allow assignment from a nonexistent extern.  Also, change a few UNIX
+  symbols in LYCurses.c and LYUtils.c to REAL_UNIX_SYSTEM to build on platforms
+  that do not define this symbol -TD
+* update notes in LYMain.c and LYReadCFG.c regarding the options and config
+  variable tables, which no longer need to be sorted -TD
+* htmlized lynx.cfg: add .h2 RULESFILE, remove confusing .h1 header -LP
+* define SUPPORT_MULTIBYTE_EDIT in userdefs.h -TH
+
+2000-04-13 (2.8.3pre.5)
+* fix printing of Last-Modified field in downloaded/printed source -LP
+* update URL for RFC 1942 -LV, DK
+* update Subir Grewal's Lynx links URL to the newest location
+  http://www.trill-home.com/lynx.html -LV, TD
+* move assignment to donelookup in LYGetHostByName() to avoid race with
+  CreateThread() -Alexei Anatski
+* modify LYexecv() in LYLocal.c for MINGW32 -SH, Victor Schneider
+* re-correct logic for .h1 comments in cattoc.html by cfg2html.pl (reported
+  by LP) -TD
+* move call to cleanup_files() into LYexit(), to fix stray temporary directory
+  left, e.g,. when doing "lynx -version" -TD
+
+2000-04-11 (2.8.3pre.4)
+* add to logic of --with-charsets configure option, checking for charset names
+  that happen to be built-into UCdomap.c rather than defined via .tbl files
+  in src/charsets (reported by HN) -TD
+* correct missing extern in CF_SLANG_UNIX compile-test -TD
+
+2000-04-06 (2.8.3pre.3)
+* remove definitions for NCURSES and NCURSES_VERSION from top-level makefiles
+  that really use PDCurses -TD
+* add USE_MOUSE symbol: cleanup/simplify ifdef'ing of mouse code,
+  replace USE_SLANG_MOUSE / NCURSES_MOUSE_VERSION / PDCURSES_MOUSE_VERSION
+  with USE_MOUSE (and modifier when necessary) -LP
+* windows makefiles: add new symbols SOURCE_CACHE and USE_PRETTYSRC,
+  remove obsolete EXP_CHARTRANS and unused EXP_CHARTRANS_AUTOSWITCH -LP
+* fixed a bug with psrcview on lss-enabled lynx. Code such as <a blah href=.>
+  (i.e. unknown attribute and then some other attribute) was causing calls to
+  PSRCSTOP(barattr) twice (and lynx was switched to "non-preformatted" mode
+  losing all white spaces of the document after that piece of code) -VH
+* add configure option --with-screen=pdcurses, mainly for checking ifdef
+  conflicts between ncurses and pdcurses.  This builds/runs with the PDCurses
+  X11 library, but is not recommended for general use -TD
+* remove test-artifact in configure check for zlib.h -TD
+* add CF_SLANG_UNIX configure macro, to allow slang configuration to build on
+  AIX, etc., (reported by Jens Schleusener <Jens.Schleusener@dlr.de>) -TD
+* update CF_CURSES_LIBS macro from CDK fixes, adds a special check for HPUX
+  11.x -lcur_colr library -TD
+
+2000-04-02 (2.8.3pre.2)
+* fixed problem with charset handling for SOURCE_CACHE:MEMORY - if the charset
+  was specified by Content-Type http header it won't be lost (as it was) when
+  reparsing from source cache (applies to toggling DTD, switching to srcview,
+  and other stuff like *,' etc) -VH
+* add ifdef'd call for creat() for Borland C configuration in LYExecv(), as per
+  JES report -TD
+* remove definition of NCURSES_MOUSE_VERSION from makefile.bcb and
+  makelynx.bat, which should fix compile problem reported by JES -TD
+* move a small number of gettext definitions into LYMessages_en.h to allow
+  removing the associated files from POTFILES.in, which must not be larger
+  than 1023 for Solaris (reported by JES) -TD
+* improve ifdef's for fallback definitions of getattrs(), getbegx(), getbegy()
+  and getbkgd() in LYCurses.h since they may be functions rather than macros
+  (reported by PG on os390) -TD
+* further restrict tildeExpand() so it allows embedded "~" only if it follows
+  a slash, or is the first character -TD
+* add check for "~" as the path to be expanded in tildeExpand() (fixes problem
+  reported by Frederic L W Meunier when TEMP_SPACE was defined to "~") -TD
+
+2000-03-31 (2.8.3pre.1)
+* remove annoying trailing period from two statusline messages ending with host
+  name ("Looking up host.foo:81." and "Making HTTP connection to foo.bar.") -LP
+* lynx.cfg: use two lines to separate options description in this
+  configuration file (it looks more readable, for such a huge text) -LP
+* lynx.cfg:  make a few corrections to reorganize .h1 sections to improve
+  htmlized cattoc.html logic.  More corrections welcome -LP
+* fix some compiler warnings for DECC dealing with time_t being unsigned in
+  that environment (reported by Jerome Lauret) -TD
+* suppress Multinet prototypes in socket.h, to work around some places where
+  Multinet declares parameters a void* while DECC uses char* (patch by Jerome
+  Lauret <JLAURET@mail.chem.sunysb.edu>).
+* undo side-effect of config_enum() function in LYReadCFG.c from cleanup in
+  dev.22 which made default_user_mode and source_cache values not set properly
+  (reported by Alexei Anatski <alexei.anatski@srm.ru>) -TD
+* correct ifdef's in LYStrings.c for NCURSES_MOUSE_VERSION versus PDCURSES
+  adding new PDCURSES_MOUSE_VERSION to cover special case of DJGPP (reported by
+  LP, DK) -TD
+* add PRETTYSRC to lynx.cfg, supplementing -prettysrc commandline option -TD
+* add call to LYStoreCookies() from HTFWriter.c to save cookies when -source is
+  used (patch by KW)
+* remove const from LYGetHostByName() parameter -TD
+* modify makefile.in to ensure links within htmlized lynx.cfg are updated
+  if gzip-help is configured (reported by Ari Moisio) -TD
+* remove -DEXP_CHARTRANS from makefile.msc, makefile.bcb (reported by LP) -TD
+* trim trailing path-separator from lynx_temp_space before removing that
+  directory, on exit -TD
+* ifdef'd IsOurFile() to perform only an ownership check on single-user DOS
+  and OS/2 systems, so user can overwrite files -TD
+* simplified some initialization in LYMain.c with tildeExpand() -TD
+* change prototypes of HTSetPresentation(), HTSetSuffix5() to use double rather
+  than float, since this is the default promotion, working better with some
+  compilers -TD
+* add comments to makefile.msc to show how to build color-style version -TD
+* add fallback definition for getattrs(), move fallback definitions for
+  getbegy() and getbegx() in LYCurses.h to allow building color-style version
+  with PDCurses -TD
+* correct a call on lib$find_file() in HTVMSUtils.c which broke by not
+  supplying it with a fixed-size buffer, from dev.23 changes -TD
+* correct an out-of-range indexing error in LYstatusline_messages_on_exit(),
+  and add a check in to_stack() for a similar problem -TD
+* add definitions and description of USE_TH_JP_AUTO_DETECT,
+  CONV_JISX0201KANA_JISX0208KANA, and KANJI_CODE_OVERRIDE to userdefs.h, along
+  with a new file README.jp -TH
+
+2000-03-26 (2.8.3dev.23)
+* make -nounderline option apply to overloading of colors 4 & 5 with
+  underlines, in slang configuration -TD
+* on initialization, check if the LYNX_TEMP_SPACE denotes a directory which
+  we cannot easily determine if someone could alter our temp-files.  If so,
+  make a subdirectory of that, with appropriate permissions -TD
+* disable setuid on initialization -TD
+* add a definition USE_MKSTEMP in userdefs.h which supersedes EXP_RAND_TEMPNAME
+  for sys-admins who believe in mkstemp() -TD
+* change logic for EXP_RAND_TEMPNAME to avoid allowing fmt_tempname() to return
+  the same name during a session.  Define EXP_NAME_TEMPNAME in userdefs.h -TD
+* add Last-Modified header into the printed/downloaded source, in addition to
+  the Date header (it is there for years).  (Last-Modified field will not be
+  printed if it is not present, or equal to the Date header or equal to
+  "Thu, 01 Jan 1970 00:00:01 GMT", a common mistake in scripts) -LP
+* defined DIRED_SUPPORT in makefile.msc -TD
+* several small fixes in LYLocal.c for dired support, mostly win32-specific -TD
+* modify PDCurses mouse logic to use BUTTON_PRESSED mask rather than
+  BUTTON_CLICKED, since the latter appears to not work in PDCurses 2.4 -TD
+* modify HTDirTitles() to fix a couple of cases for device-only pathnames,
+  e.g., for DOS -TD
+* modify HTDOS_name() to put a trailing '\' on the result if only a device
+  is given.  Fix a memory leak in HTDOS_name() -TD
+* simplify local_dired() using new function match_op(), adding DOSPATH
+  and __EMX__ to special case of stripping a leading '/' from parameter so
+  dired mode works properly on Win32 and OS/2 EMX -TD
+* minor cleanup using new function LYformTitle() -TD
+* modify LYUCPushAssumed to push original assume_charset insted of
+  anchor_UCI->MIMEname when HTCJK is JAPANESE.  If this modification isn't
+  done, Japanese strings may be mishandled when charset is not specified or
+  assumed as Japanese charset.  On the other hand, if this modification IS
+  done, the specified charset is ignored when HTCJK is JAPANESE.
+  # I think it's long way to improve this completely. It rarely
+  # causes small problem in source view mode for Japanese document.
+  # I think it can be ignored -TH
+* improve handling of Japanese titles in List Page, LYNXIMGMAP Page and
+  ShowInfo Page -TH
+* remove spurious backslashes in sed script for adjusting link to htmlized
+  lynx.cfg -Michael Warner
+* add -luser32 library for Cygwin configuration, needed for WIN_EX ifdefs -DK
+* correct some screen handling problems when built with SLang -DK
+* updated the INSTALLATION file to reflect building under Cygwin -DK
+* define WIN_EX and _WINDOWS_NSL for Cygwin configuration -DK
+* use select_s() from WATT-32 for the DJGPP port, rather than select() from
+  DJGPP (suggested by Gisle Vanem, to make it faster) -DK
+* add a configure check CF_SET_ERRNO to check if we really can set errno,
+  even if it has been #define'd -TD
+* remove a redundant call to HTQuoteParameter() from LYExtern.c, which resulted
+  in quoted-quotes (reported by Michael Warner) -TD
+* add configure check for syslog.h, in case --enable-syslog is given for a
+  machine that doesn't support it -TD
+* add ASSUMED_COLOR variable to lynx.cfg, making the use of
+  assume_default_colors() optional (addresses reports by LV, IC) -TD
+* add a configure check for the compiler option needed to find zlib.h, e.g.,
+  if it is in /usr/local/include and the compiler is not gcc -TD
+* disentangle some of the PDCurses ifdef's from ncurses, including the mouse
+  handling.  The symbol PDCURSES should be used for PDCurses, not NCURSES*
+  or DOSPATH -TD
+* remove unused getline.c, getpass.c, crypt.c and crypt_util.c -TD
+* change ifdef's in LYisAbsPath() and LYisRootPath to make OS/2 EMX treated the
+  same as DOSPATH -TD
+* review use of strcat/strcpy, changing as needed to avoid buffer overflows -TD
+
+2000-03-12 (2.8.3dev.22)
+* modify Home_Dir() so that on DOS & Windows, if the $HOMEDRIVE variable is
+  set, it may be used to specify the drive on which $HOME is located -TD
+* add configure option --enable-htmlized-cfg to install the htmlized lynx.cfg
+  in the help directory (request by LP) -TD
+* suppress sleep's in crawl or traversal mode (request by LV) -TD
+* cleanup LYReadCFG.c, LYrcFile.c a little, using new functions putBool,
+  getBool, putEnum and getEnum -TD
+* change default mode for visited-links-page to match original behavior, add
+  visited_links to .lynxrc file (requests by KD, LP) -TD
+* update documentation to reflect move from sol.slcc.edu to lynx.isc.org -PG
+* remove obsolete files:  WWW/Copyright.txt (replaced by FreeOfCharge.html) and
+  WWW/README.txt (recommended by DK) -TD
+* clean up some of the loose ends, primarily in documentation.  A Russian user
+  pointed out that the DOS binary was ignoring character 0xe0.  This turned out
+  to be a bug in the PDCurses code for DOS.  I modified the INSTALLATION file
+  to reflect the patch to PDCurses.  Also include the file for the public
+  domain release of the CERN wwwlib code (FreeOfCharge.html).  Other changes
+  fix dead links, Y2K changes, and reflect newer versions of other programs -DK
+* comment-out/disable NO_ANONYMOUS_EMAIL definition in userdefs.h -DK
+* change optimization level to -O1 in makefile.dos -DK
+* use macro set_errno() to hide some of the clutter in HTTCP.c as well as make
+  it simpler to build with threaded libraries -TD
+* ifdef'd out a "QUIT" command sent to the FTP server immediately after opening
+  a data connection in HTFTPLoad(), since this makes the ftp.wku.edu server
+  close the connection prematurely -TD
+* combine redundant HTMake_VMS_name() with HTVMS_name() -TD
+* review use of "%s" in sprintf, to guard against buffer overflows, modified
+  some to use HTSprintf0 or StrAllocCopy, others to use specific lengths
+  (KW noted a related problem in HTTP.c) -TD
+
+2000-02-25 (2.8.3dev.21)
+* modify check for empty news-posting to warn but allow user to override if
+  it contains nonspace characters -TD
+* add FTP_PASSIVE option to lynx.cfg, allowing installer to defer decision
+  of whether lynx uses passive ftp connection (adapted from patch by
+  Bernhard Rosenkraenzer <bero@redhat.de>) -TD
+* remove duplicate definitions of HT_NON_BREAK_SPACE, HT_EN_SPACE leaving them
+  in HTFont.h -TD
+* lynx.cfg option CONNECT_TIMEOUT and commandline option "connect_timeout" were
+  added (not available for DOS port) -VH
+* don't perform submission of the content of disabled form fields -VH
+* add bindings for ^ and $ (like vi) to move the cursor to the first and last
+  link on the current line (prompted by complaint by DH that < and > used to
+  allow movement to the ends of a line) -TD
+* remove --enable-kanji option (request by TH) -TD
+* replace 3 CONV_JISX0201KANA_ISX0208KANA to CONV_JISX0201KANA_JISX0208KANA -TH
+* enable the routines to change kanji code which is used for overriding,
+  since my last change disabled this -TH
+* remove redundant/conflicting definitions of ON/OFF from HTVMS_WaisUI.h -TD
+* fixes for K&R build on SunOS -TD
+
+2000-02-15 (2.8.3dev.20)
+* ifdef fixes for CYGWIN, broken in dev.19 -TD
+* add make-msc.bat script, and update src/chrtrans/makefile.msc to add rules
+  for generating header files -TD
+
+2000-02-14 (2.8.3dev.19)
+* use HTAddParam/HTEndParam rather than HTSprintf0 for building external
+  commands, protecting against badly-formatted string with more than one %s
+  (reported by PW) -TD
+* update placeholder po/nl.po -JES
+* add configure option --enable-kanji for defining symbols related to TH's
+  patch -TD
+* improved handling of Japanese text (patch by TH (Hataguchi Takeshi)):
+  + if Japanese document's charset is specified explicitly by the MIME tag or
+    HTTP responses, Lynx will assume the charset as that value.
+  + change the Japanese charset detection strategy when charset is not
+    specified explicitly.
+  + wrap a long text which includes only CJK characters in source mode.
+  + avoid writing CJK characters at the 80th column.
+  + improve kanji code override routine
+    # My change seems to have broken this
+  + change the phrase "half width kana" to "JIS x0201 Kana" in comments.
+    # The latter has been used originally.
+  + enable assume_charset when display charset and assume charset
+    are Japanese. assume_charset acts like charset by META tag
+    only when charset isn't specified by META nor HTTP responses.
+  + change the behavior of the option menu.
+    For example, when display charset is Japanese (EUC-JP) and
+    CJK mode is on, changing assume_charset from iso-8859-1 to
+    shift_jis using the option menu,
+        old behavior:
+            assume_charset won't be changed.
+            CJK mode will turn off.
+        new behavior:
+            assume_charset will be changed to shift_jis
+            CJK mode won't be changed.
+  + improve handling Japanese in Visited Links Page, History Page
+    and pages with FORM.
+  New macros are:
+    USE_TH_JP_AUTO_DETECT
+        enable (2)
+    CONV_JISX0201KANA_JISX0208KANA
+        convert JIS X0201 Kana to JIS X0208 Kana,
+        i.e. convert half width kana to full width.
+        I've not tested the case not to define this well.
+    KANJI_CODE_OVERRIDE
+        enable kanji code override routine.
+        The code can be changed by ^L.
+        More precisely, this enables us to change the assumption kanji
+        code for the document. This assumption overrides the charaset
+        by META tag and HTTP responses.
+* ensure lynx_doc is writable when doing install, since it is not necessarily
+  done as root -TD
+* simplify/correct ifdef'ing in reply_by_mail() -TD
+* add ifdef CANNOT_PIPE_MAIL to simplify ifdef'ing for systems having mailers
+  that we can pipe to versus those that we cannot -TD
+* add ifdef USE_BLAT_MAILER to simplify & make consistent ifdef'ing for
+  blat mail program -TD
+* correct ifdef'ing in mailform() for Unix (report by LV, analysis by KW) -TD
+* tweak lynx.cfg for better cfg2html.pl output -LP
+* fix DOS makefiles for recent renaming USE_PSRC -> USE_PRETTYSRC.
+  Also, change optimization flag to -O1: having experience with slow
+  386 machine I see no visible difference in speed at run time, but this
+  makes compilation much faster and takes less memory. Tweak INSTALLATION
+  file accordingly -LP
+* ifdef'd feature for generating random temporary filenames with
+  EXP_RAND_TEMPNAME -TD
+* remove duplicate S_xxx definitions from LYLocal.h, already in www_tcp.h -TD
+* add note about building with Visual C++ -TD
+* ifdef'd reference to current_codepage in LYCurses.c with PDCURSES_EXP
+  rather than PDCURSES, since this variable is not found in any release
+  version of PDCurses -TD
+* several small fixes/adjustments to reduce warnings from lint-like program
+  'antic' -TD
+* fixes to compile on VMS with UCX -TD
+* change LYRemoveTemp() to return a value, needed for VMS -TD
+* rename intl/po2tbl.sed.in to intl/po2tbl.sed_in, to allow unzip on VMS -TD
+* correct HTSetSuffix/HTSetSuffix5 for VMS build (reported by Dan W Olds
+  <oldsdw@wofford.edu>) -TD
+* resync autoconf macros, from tin -TD
+
+2000-01-06 (2.8.3dev.18)
+* correction to LYCookieSavefile so tilde expansion is done (reported by Larry
+  Virden) -BJP
+* now it's guaranteed that LY_SOFT_NEWLINE could be only 0th character in
+  line->data (it could be preceded by LY_*_START_CHAR). Bug that caused
+  empty lines to disappear when printing files was fixed -VH
+* comments are now correctly converted to display charset in prettysrc mode -VH
+* fix "Please see" array initialization in cfg2html.pl (reported by VH, LP) -TD
+* small userdefs.h typo fixed -VH
+* added lynx.cfg setting that controls justification - maximum value for
+  ratio of 'spaces to spread'/'max width of a line' when justification can
+  take place -VH
+* change "PSRC" to "PRETTYSRC" in configuration (suggested by KW) -TD
+* combine a dozen of HTMLSRC_ lynx.cfg settings into PSRCSPEC setting.  Old
+  "HTMLSRC_foo:bar1:bar2" should be written as "PSRCSPEC:foo:bar1:bar2" -VH
+* use assume_default_colors() extension from upcoming ncurses 5.1 and related
+  support to provide more flexible coloring.  If the user's configuration files
+  do not specify "default", the default-color support is suppressed, and the
+  displayed colors default to white/black.  The original behavior matches
+  SVr4 curses, which assumes the default colors of the screen but does not
+  ensure that they match the assumption -TD
+* modify LYsetXDisplay() to permit $DISPLAY to have an empty value, and reuse
+  logic in forms-options from menu-options as validate_x_display() and
+  summarize_x_display().  The forms-options will not display a warning since it
+  exits too early, but at least one may now reset $DISPLAY to an empty string
+  (reported by KW) -TD
+* add note in INSTALLATION pointing to aclocal.m4 for details of regenerating
+  configure script -TD
+* add stub "po" gettext for Czech language, update other stubs -JES
+* undo dev.16 change to print_wwwfile_to_fd() logic for LY_SOFT_NEWLINE which
+  resulted in dropping blank lines from printed files -TD
+* make off by one correction in HTDisplayPartial line counting (as discussed
+  with LP) -KW
+* one invalid memory free (only reached in some (rare?) error case), two
+  memory leaks removed in LYLocal.c -KW
+* date calculations for file times in FTP directory listings used cached values
+  for the current day and year that never got reset.  This could cause wrong
+  ordering when sorting by date, and possibly other errors, especially in
+  long-running lynx sessions.  Now recalculate them for each new directory
+  request if they are needed -KW
+* be slightly more tolerant about FTP directory listing file times that appear
+  to lie in the future:  allow today plus one day without assuming that it must
+  mean a year ago, to account for possible timezone differences -KW
+* add comment to reload_read_cfg() listing things that are/aren't done -LP
+* minor lynx.cfg corections for better cfg2html.pl output -LP
+* restore 'from_source_cache' PRIVATE to LYMainLoop.c, add comments -LP
+* amend dev.16 feature for generating random temporary filenames to ensure that
+  Lynx does not currently have the generated name open as a temporary file -TD
+
+1999-12-15 (2.8.3dev.17)
+* add a caution to jumpsUnix.html -PW
+* ifdef LYEditKeyForAction() to compile when EXP_ALT_BINDINGS is not defined
+  (reported by VH) -TD
+* add 3-valued DEFAULT_KEYPAD_MODE to lynx.cfg -TD
+* revert DEFAULT_KEYPAD_MODE to NUMBERS_AS_ARROWS (consensus) -TD
+* add COOKIE_SAVE_FILE lynx.cfg and corresponding command-line option, default
+  it to /dev/null, which is recognized on all systems -BJP
+* correct typo in declaration of LYLeakSAVsprintf() -Michael Warner
+* remove from_source_cache_p parameters in LYMainLoop.c (request by LP) -TD
+* documentation updates covering the Options Menu & other changes omitted
+  previously -PW
+* small correction in TRSTable.c:  One of my previous changes for TRST broke
+  inheritance of alignment for cell contents from TR elements -KW
+* new functions for keeping track of temp files (and some other files) for user
+  interface pages:  LYRegisterUIPage(), LYIsUIPage().  Most checks that look at
+  the loaded document's title have been replaced by this mechanism.  This also
+  replaces various mechanism that were implemented for some specific pages -KW
+* also replaced some more checks that looked at the document's title by checks
+  of the address, for pages that are always identified by a special URL scheme
+  (LYNXCOOKIE:, LYNXKEYMAP:, LYNXMESSAGES:) -KW
+* now check directly in postoptions() whether the loaded document is one from
+  which submission of option changes can be accepted, using the new tracking
+  mechanism.  Only the form-based Options Menu and Visited Links are allowed.
+  Relying on a good random generator to prevent spoofing is not necessary.
+  Kept the secure_string check, but it should be only regarded as an aid to the
+  user, it prevents changing options from an instance of the form-based Options
+  Menu that is not the most recent one (this can happen if an Options Menu page
+  is pushed on the history stack and later returned to) -KW
+* honor REUSE_TEMPFILES for some more user interface pages -KW
+* prevent an obscure LYNXOPTIONS://MBM_MENU crash -KW
+* other minor additions and corrections to checks for special pages -KW
+* changed INSTALLATION text for --enable-internal-links -KW, HN
+* changes to build dev16 with color styles on DJGPP/PDCurses 2.3
+  (you must uncomment a line in makefiles to build lynx that way) -LP
+* correct a missing check in HTML.c HTML_A case against force_empty_hrefless_a
+  (reported by KW) -VH
+* changed lines -> disp_lines, cols -> disp_cols in GridText.c -KW
+* don't reparse with SOURCE_CACHE if screen size changed only
+  vertically (disp_lines).  Also don't reparse unnecessarily in
+  some cases of LYK_MINIMAL -KW
+* don't append (HEAD) to title for INFO screen if already present -KW
+* set newdoc.title to curdoc.title in LYMainLoop.c for SOURCE command.
+  Otherwise INFO could show the wrong document's title -KW
+* made global from_source_cache PRIVATE to mainloop -KW
+* reset DIRED_MENU item list when lynx.cfg is reloaded -KW
+* new lynx.cfg option AUTO_UNCACHE_DIRLISTS for Dired mode, see lynx.cfg -KW
+* prevent file descriptor and inode leak in HTFWriter.c that occurred if
+  the same resource is repeatedly downloaded (for 'd' or for passing to
+  a viewer) -KW
+* corrected logic for suppressing last HTDisplayPartial call at end of file,
+  after discussion with LP -KW
+* corrected line counting in HTDisplayPartial, taking into account offsets used
+  for the various variables being compared -KW
+* added confirmation prompt for reloading non-safe post_data documents in
+  form-based Options Menu change handling.  Before this change, the prompt
+  would be issued after returning to mainloop() instead, with different
+  behavior if confirmation was denied:  The document would be popped instead of
+  keeping the current instance -KW
+* function confirm_post_resub made PUBLIC and moved to HTAlert.c.  New function
+  srcmode_for_next_retrieval in LYGetFile.c.  Both used for the above and in
+  LYMainLoop.c -KW
+* fixed behavior for various post_data confirmation prompts in connection with
+  SOURCE_CACHE in LYMainLoop.c.  Before this change, the user would be prompted
+  to confirm reloading, yet on confirmation reparsing from the source cache
+  would be attempted.  So prompts were unnecessary and misleading -KW
+* try to handle some failures of errors in source cache reparsing better.  Try
+  to make sure that unsafe post_data documents don't get reloaded accidentally
+  without confirmation if source cache reparsing fails.  Treat partial data
+  (i.e.  loading from source cache probably 'z'apped by user) as successful, as
+  HTLoadDocument does.  (Various error conditions are currently only passed on
+  to the caller by HTParseFile, not by HTParseMem.  I left this apparent design
+  decision unchanged.) -KW
+* source cache reparsing did not rewrite a previous cache copy when the
+  document was reloaded from the net.  This means that e.g. NOCACHE or RELOAD
+  would force reloading from the network, but then on the next non-forced
+  loading of the document (e.g.  by toggling to SOURCE view) the old (and
+  possibly stale) copy would again be used.  Now the newer copy replaces the
+  old copy if loading is successful (and not interrupted or aborted with 'z').
+  (Note that RELOAD while in source view, at least in the normal one without
+  -preparsed or -prettysrc, does not have this effect since the document does
+  not get pushed through the cache writer at all in that case.) -KW
+* if a source cache copy for a document exists, we need a way to ensure that
+  reparsing from that copy does not try to rewrite that same copy "under our
+  feet" while still reading from it.  Previously that was done by just never
+  rewriting an existing source cache.  After changing that (see previous item),
+  a different approach is needed to prevent such collisions.  This is now
+  solved in two ways:  (a) Base a temporary new file or memory chunk for
+  writing, and only commit it to the doc's ParentAnchor object (replacing the
+  previous copy) at the end of the incoming data stream.  This is done in
+  CacheThru_free(), but not in CacheThru_abort(), meaning that an interrupted
+  or otherwise aborted transmission will not replace an existing cached copy
+  with a truncated now version - as long as such interruption gets detected and
+  properly indicated, which is not the case for reading from the source cache
+  with SOURCE_CACHE:MEMORY in effect, see above.  (b) Change the
+  HTParentAnchor's protocol field to indicate a non-HTTP protocol, before
+  starting to load from source cache in HTreparse_document().  Normally, as
+  long as DEBUG_SOURCE_CACHE is not defined, this prevents the cache writer
+  from (re)generating a cache copy.  Mechanism (b) isn't necessary (everything
+  still works when DEBUG_SOURCE_CACHE is defined), it just avoids unnecessary
+  work -KW
+* source cache files and chunks were not always being removed when they should,
+  probably since change of 1999-06-18.  A large number of cache copies could be
+  kept around unnecessarily wasting disk or memory space.  Now make sure that
+  the source cache copy gets removed when a document is removed from the cache
+  of rendered docs.  They would never be reused anyway.  New function
+  HTAnchor_clearSourceCache.  Note to other developers:  HTAnchor_delete()
+  doesn't always remove the HTParentAnchor object, see its implementation -KW
+* detect errors during appending to the cache copy.  Previously, memory
+  allocation errors (for SOURCE_CACHE:MEMORY) would cause program exit, and
+  file write errors (SOURCE_CACHE:FILE, e.g. if the temp disk space was full)
+  would go undetected and leave the cache file corrupt or truncated.  Now allow
+  the program to continue normally, just cancel the source cache generation for
+  the current document (which may free up enough memory or disk space to remedy
+  the immediate problem).  Produce an alert message.  In the case of a file
+  error, produce the alert only once until a possibly re-reading of lynx.cfg,
+  since Lynx should remain otherwise functional in the face of cache file
+  writing errors -KW
+* extended HTChunk: added a variant for which memory allocation errors
+  are not fatal.  Used for changes described in previous item -KW
+* don't write raw escape sequences to trace output for lynx-keymaps if
+  not using trace log file -KW
+* protect echo() in stop_curses, it could crash if stop_curses gets called
+  without preceding start_curses -KW
+* save size for regular files in anchor structure (we do the stat() anyway).
+  It shows up on INFO page as Content-Length.  Also use it in partial display
+  mode to prevent the last call to HTDisplayPartial from HTFileCopy, since a
+  call to HText_pageDisplay will follow immediately.  (But note that nothing
+  important depends on the correct size; should it be wrong, we lose at most
+  one partial display screen update.  An equivalent suppression of the last
+  partial update for network protocols is not recommended, since (a) the size
+  is more unreliable and (b) the socket FIN may be delayed by the network.) -KW
+* split HTMIME_put_character into three functions -KW
+* made HTMIME.c handle folded header lines correctly (long-standing bug,
+  reported in February by Devid Coles) -KW
+  [ reference: http://www.flora.org/lynx-dev/html/month0299/msg00135.html ]
+* changed how HTTP redirection messages are handled.  Don't read full message
+  and parse buffer for some header fields in HTLoadHTTP.  Use common HTMIME.c
+  header parsing instead.  Functions added/modified in HTMIME.c for storing
+  away the Location URL (if requested and found) and for stopping after the
+  headers.  New private MIME types "message/x-http-redirection" and "www/debug"
+  to control this via HTStreamStack.  Basic approach taken from newer W3C
+  libwww.  Benefits:
+  - Removes actual bug that was reported: "Content-Location:" was falsely
+    recognized as "Location:". (long-standing bug)
+  [ reference: http://www.flora.org/lynx-dev/html/month1199/msg00370.html ]
+  - Removes potential other bugs caused by inferior header parsing in HTTP.c
+    (including Set-Cookie/Set-Cookie2).
+  - Should more header fields be needed in the future (also) for redirection
+    messages, we now get them automatically instead of having to add extra
+    code.
+  - Trace output now shows the same kind of info as for other responses.
+    In particular, Set-Cookie/Set-Cookie2 header fields will normally be
+    visible.
+  - Statusline progress messages now actually show the HTTP response line
+    as intended, and it is recorded for LYNXMESSAGES:. (Long-standing error,
+    previously what was shown could be an empty string, or arbitrary parts
+    of the response, including HTML markup from the message body.)
+  - Adding redirection support for lynxcgi would now be simpler (although
+    currently not done) -KW
+* HTErrorStream(), similar to W3C libwww, used in some cases for the above -KW
+* remove check in HTParse() dated 98/09/08 which prevented unescaping of 8-bit
+  data (reported by KW) -TD
+* refresh screen for TRST changes in partial display mode as early as possible.
+  This fixes a problem when the table finished below the screen bottom -LP
+* remove global Newline_partial, use LYGetNewline() instead -LP
+* adapt idea by VH as a Perl script cfg-html.pl which generates HTML form of
+  the lynx.cfg documentation -TD
+
+1999-11-30 (2.8.3dev.16)
+* added -nozap command line option -KW
+  - In its basic form, it disables all checks for 'z' or ^G or other
+  "immediate" keys that otherwise happen while processing a request (for name
+  lookups, before or during loading of a document).  Note that it also disables
+  paging through an incompletely loaded document during "partial display".
+  Normally, i.e. without this option, key input gets "swallowed" or "used up"
+  by the quasi-asynchronous checks even if they are not 'z' etc.  or keys that
+  have meaning during partial display (meaningless keys just get ignored).
+  With this option, key input only gets read when lynx is ready to act on it.
+  - This can be used (a) by people who like to always have predictable
+  type-ahead (and don't care for 'z'apping and partial display scrolling), (b)
+  to achieve predictable reaction to keys if lynx is used under some scripting
+  environment that feeds it input like expect, and (c) for scripting a lynx
+  session by feeding it keyboard-like character input via input redirection
+  from a file or pipe (a simpler alternative to b, without the need for expect
+  or similar).
+  - Point (c) could be called "poor man's scripting".  Note that the input has
+  to be provided in a raw form (as lynx would see it when it is actually sent
+  by keys), including raw control characters and escape sequences if necessary.
+  This patch does not change anything in the way such input is read and parsed,
+  other that what is explicitly described here.  (This paragraph is only here
+  to explain the context, it does not describe new features.) P.m.s.  will only
+  work as expected if lynx, on a given platform and with the display library
+  chosen, uses standard input for reading keyboard input.  This is the case
+  with ncurses and possibly other curses implementations, but not with slang,
+  on Unix-like platforms, and cannot work on platforms where lynx gets keyboard
+  input in the form of platform- or implementation-specific keycodes (DOS,
+  Windows - except with Cygwin?) instead of as an octet stream.
+  - The -nozap option takes an argument.  The basic functionality as already
+  described gets invoked if the argument is not a specially recognized keyword
+  (it is suggested that -nozap=full or -nozap=all be used).  The only
+  recognized keyword is "initially".  With -nozap=initially, additional special
+  behavior is invoked the first time (and *only* the first time) when lynx
+  encounters an error or EOF when reading key input.  (Currently this will not
+  get detected if slang with USE_KEYMAPS is used.) In this, case, -nozap
+  reverts to the default state ('z' will be checked for again).  Under some
+  conditions are true (key input was taken from stdin, and stdin was not
+  connected to a terminal), lynx will then attempt to reopen stdin, connecting
+  it to a terminal (stdout, stderr, and the process's controlling tty are
+  tried, in that order - this is subject to change if something would be more
+  reasonable).
+  - The -nozap=initially special behavior will get triggered if input comes
+  from a file or pipe (p.m.s.  above) when the provided characters are "used
+  up".  Normally lynx should then just exit.  The special behavior hands
+  control of the session to the interactive user instead at that point.  All
+  code for -nozap is only compiled in if preprocessor symbol MISC_EXP is
+  explicitly defined.
+* ifdef'd some places for MINGW32 (diffs from Victor Schneider)
+* remove 'host' variable in LYGetHostByName() that obscured module-level
+  'host[]' array in HTTCP.c for _WINDOWS_NSL configuration (patch by SH,
+  discussion by KW) -TD
+* the Newline variable is now PRIVATE except the mouse code in LYStrings.c -LP
+* modify HTDOS.c for Wattcp targets (Watt-32 and original wattcp).  When Lynx
+  is sitting idle in getxkey() waiting for a keypress, no network functions are
+  called.  Hence no sockets are processed, "ICMP Echo replies" is sent etc.
+  This patch has been tested with SLang and '-DDJGPP_KEYHANDLER' I'm not sure
+  how to hook into 'SLkp_getkey()' or keyboard polling in performed under raw
+  PDCurses (Gisle Vanem <gvanem@eunet.no>)
+* update docs for -tna instead of --sticky_inputs -KW
+* document extended KEYMAP syntax in lynx.cfg -KW
+* update Users Guide for KEYMAP changes, especially the TEXTAREA-related
+  sections -KW
+* move text on ^V a bit to better place, provide a couple links to it -KW
+* add blurb about TRST to Users Guide.  Also mention external scripts for table
+  handling -KW
+* revise section in Supported URLs on internal schemes.  Toned down, provide
+  rationale, give examples -KW
+* fix a few typos in README.TRST -LP
+* use 'rand()' in NewSecureValue() -TD
+* use a random number rather than a counter to name temporary files -TD
+* change LYReadCFG.c to accept any leading punctuation in lynx.cfg as a comment
+  delimiter -TD
+* eliminate some clutter with typecalloc/typecallocn macros -TD
+* eliminate some clutter with new function LYBadHTML() -TD
+* add checks for null pointers in CTRACE statements in HTML.c (based on report
+  by LV) -TD
+* change realloc calls in SAVE_TIME_NOT_SPACE ifdef in StrAllocVsprintf() to
+  HTalloc, since older machines (e.g., SunOS 4.x) do not necessarily handle a
+  null pointer parameter to realloc -TD
+* correct ordering of command-line options in LYMain.c -TD
+* updates for files in lynx_help & keystrokes -PW
+* clarify `General Configuration Instructions (all ports)' in INSTALLATION -PW
+* remove "your lynx.cfg"/"compiletime settings" from '='Info Page -LP
+* add a note to Lynx_Users_Guide.html#lynx.cfg on "g lynxcfg:" -LP,HN
+* change LYNXCOMPILEOPTS: to a link from LYNXCFG:  -LP
+* slightly reorganize partial mode logic:  'display_partial' variable is now
+  initialized directly in HText_new(), no need for specialized semaphore any
+  more -LP
+* Allow KEYMAP directives in lynx.cfg of extended form
+  KEYMAP:lynxkey:lynxaction:editaction[:sel], where lynxkey and lynxaction are
+  as before, editaction is a line-editor action like FORW, BACK, ERASE etc.
+  and sel selects the line-editor style to be affected (as a number, starting
+  with 1 for the Default Binding; or 0 for all styles (the default); or a
+  negative number -n meaning "all line-editor styles except n").  See Line
+  Editor Help pages for keywords to use as editaction.  This includes PASS
+  (which was already implemented), for "passing" on the key when line-editing
+  form fields so that the normal lynxaction will be invoked.
+  (KEYMAP:lynxkey:lynxaction:DIRED is also still possible for defining a Dired
+  mode binding).
+  This is based on a patch from IZ which introduced combined definitions
+  in a .lynx-keymaps file in the form:
+     setkey "\200s" LAC:LEFT_LINK/BACKW     # C-left
+     setkey "\200t" LAC:RIGHT_LINK/FORWW    # C-right
+  Combined definitions in .lynx-keymaps are also supported in this patch, but
+  the syntax was changed to use another ':' instead of '/' as separator.  Note
+  that there is no need to support .lynx-keymaps (i.e., compile with
+  USE_KEYMAPS defined) for using the extended KEYMAP lynx.cfg directive with
+  this patch -KW
+* avoid access to uninitialized members in TRSTable.c -KW
+* limit span values accepted for TRST with TRST_MAXCOLSPAN and TRST_MAXROWSPAN,
+  which can be changed in userdefs.h.  Without imposing a limit, attempts to
+  trick lynx into allocating huge blocks of memory (which might cause thrashing
+  without apparent reason) with something like ROWSPAN=10000000 are just too
+  easy -KW
+* moved definition of SAVE_TIME_NOT_SPACE to userdefs.h.  You may want to
+  undefine it for a platform where running out of memory is a frequent problem
+  (DOS?), although the effect won't be very pronounced.  Used in TRST code to
+  affect size of some allocations (also used as before for
+  HTSprintf0/HTSprintf) -KW
+* implement COLSPAN=0 and ROWSPAN=0 according to HTML 4.01 (not HTML 4.0).  The
+  span extends until the end of the current column group and row group (i.e.
+  next THEAD/TFOOT/TBODY), respectively; or until the end of the row or table,
+  respectively, if there is no containing group (thus acting as per HTML 4.0).
+  Also cancel effect of all ROWSPANs at a THEAD/TFOOT/TBODY boundary (problem
+  with other browser described and behavior proposed by G James Berigan in
+  <http://www.war-of-the-worlds.org/html/span-vs-group.html>) -KW
+* 'prev_target' is now PRIVATE to LYMainLoop.c [defined outside of mainloop()];
+  this undoes some dev.15 changes.  -LP, KW
+* replace HText_pageDisplay() calls from partial mode (LYUtils.c and
+  HTFormat.c) with LYMainLoop_pageDisplay() function implemented in
+  LYMainLoop.c, it simply calls HText_pageDisplay() but has access to
+  LYMainLoop.c PRIVATE variables.  -LP, KW
+* make ^X a prefix key in all Line Edit styles.  That means ^V should never be
+  needed any more to invoke the special textarea commands (but it's still
+  supported).  Updates to help files to reflect this change -KW
+* don't produce a link from the KEYMAP page to a help file.  The one we used to
+  use doesn't really help -KW
+* correction in code executed after textarea external editing (that determines
+  when to prompt for re-wrapping):  use start_anchor not anchor_ptr.  Without
+  this correction, invalid memory access could occur.  (This was probably also
+  responsible for producing the prompt when it shouldn't be produced in some
+  cases, as has been reported.) -KW
+* some tweaks of Novice mode help lines:  don't show wrong key "to delete all
+  text in field" (FORM_NOVICELINE_TWO); replaced an occurrence of <delete> with
+  <backspace>.  In some cases (e.g., disabled fields), prefer no info to wrong
+  info -KW
+* extended KEYMAP option:  additional field can specify DIRED to request
+  mapping in the Dired mode key_override table rather than the normal keymap
+  table.  Documented the DIRED field and default override mapping in
+  lynx.cfg -KW
+* corrected KEYMAP display for dired mode.  It could display the normal binding
+  when that wouldn't actually be used, for example if a key is bound to
+  DO_NOTHING for DIRED.  The logic deciding whether to show a separate line for
+  uppercase letters was only looking at the normal keymap -KW
+* reset the edit_mode flag (indication of Dired mode) in various places, so the
+  flag doesn't stat TRUE after a new page has been loaded.  For example,
+  invoking the forms based 'O'ptions page from a Dired directory view would
+  leave the Dired key bindings enabled within the Options page -KW
+* for LYNXMESSAGES:  page of recent statusline messages, removed setting of the
+  LYforce_no_cache flag in getfile().  Set the flag in LYMainLoop.c instead,
+  but only for following a link.  This makes the page act more like a normal
+  no-cache document, for example returning to it via PREV_DOC does not cause an
+  automatic update.  The special handling in LYMainLoop.c is necessary because
+  the link to LYNXMESSAGES:  appears on the History Page, and following a link
+  from the History Page (as well as some other generated user interface pages)
+  normally implies overriding of no-cache behavior which we don't want in this
+  case -KW
+* in LYNXMESSAGES:  page, number recent statusline messages in historic order,
+  starting with 1 for the oldest.  This should make it more obvious that they
+  are listed latest-first.  Add "(No messages yet)" text if there are no
+  messages.  Removed generation of invalid <pre> -KW
+* use a temporary file instead of the normal .lynxrc file for saving and
+  restoring current settings in reload_read_cfg().  This avoids unexpected side
+  effects of lynx.cfg reloading (LYNXCFG://reload action), i.e.  silent
+  modification or first-time generation of .lynxrc contents.  In principle this
+  should make reloading of lynx.cfg usable for accounts that don't allow saving
+  of personal settings (i.e.  option_save restriction, implied by -anonymous)
+  if other restrictions don't forbid it; but currently the option_save
+  restriction is still obeyed for saving to the temporary file (so that
+  reloading of lynx.cfg is prevented) -KW
+* tweaks for LYNXCFG:  and LYNXCOMPILEOPTS:  pages:  honor REUSE_TEMPFILES
+  setting if pages need to be regenerated, and clean up the memory for holding
+  the file URLs in free_lynx_cfg().  Recover if the tempfile has unexpectedly
+  disappeared, by regenerating it.  Also regenerate tempfile if NOCACHE key
+  ('x') is used.  Added extra checks before doing automatic uncaching of
+  previous page in LYNXCFG://reload code, to test whether the previous page is
+  really a LYNXCFG:  view -KW
+* corrected problems with "show color" in forms Options page.  Omit "ON" choice
+  if color is not possible (but saving allowed).  When option_save restriction
+  was in effect, the ON/OFF initialization was wrong (resulting in unwanted
+  toggling of color each time options were changed in an anonymous account) -KW
+* tweaks of reload_read_cfg() for retaining "show color" setting and for
+  updating display_lines (user_mode may have changed) -KW
+* change for HTParse: if there is a hostname part, recognize a '?' as ending
+  it if there are no further slash characters -KW
+* tweaks in configure.in and INSTALLATION: describe correctly what
+  --disable-dired-override does.  Rename --disable-dired-archive to
+  --disable-dired-dearchive.  Clarified INSTALLATION text for
+  --disable-full-paths.  Changed some "define" to "prevent defining" -KW
+* don't try to put cursor in last screen position for hiding in
+  show_main_statusline if -show_cursor/SHOW_CURSOR is on.  The show_cursor
+  behavior may have been turned on to avoid problems with curses libs or
+  terminal types that cannot deal with it correctly.  On pages with no links,
+  for example SOURCE display, this may leave the cursor at the end of the
+  statusline message if show_cursor is on.  This just restores previous
+  versions' behavior in that case.  On pages with links, the movement is
+  unnecessary anyway since the cursor will move again to the current link -KW
+* removed a bug in automatic textarea growing.  Textarea would grow by
+  one line unnecessarily if enter was used on the last input line on a
+  screen (if that was not actually the last line in the textarea).  New
+  function HText_TAHasMoreLines() to help with this -KW
+* revision of "nonsticky" behavior / options.  Got rid of "sticky" terminology.
+  Renamed the controlling option to TEXTFIELDS_NEED_ACTIVATION and command line
+  flag -tna.
+  Compiling in of this mode can be disabled, see in userdefs.h under
+  TEXTFIELDS_MAY_NEED_ACTIVATION.  Two versions of "Textfields Need
+  Activation" mode are provided.  The default mode (simpler yet better IMO)
+  highlights an inactive selected text input fields like a current normal
+  anchor.  The alternative variant (may go away later?) behaves like VH's
+  previous implementation and gets used when compiling with
+  -DINACTIVE_INPUT_STYLE_VH.
+  Many bugs that would occur in somewhat unusual circumstances are fixed, for
+  both variants.  (Action of various commands on TEXT_SUBMIT_TYPE fields,
+  interaction with mouse selection, ...) Selecting an inactive input field with
+  the mouse will activate it.  Various tweaks to make sure selecting a field in
+  this way will put the editing cursor at the right position (even if the line
+  had been scrolled / might be scrolled on entering the line editor), at least
+  with NCURSES mouse support.  Also, -show_cursor now in general works as
+  expected.  (In the INACTIVE_INPUT_STYLE_VH variant, cursor may sometimes end
+  up on the statusline after error messages.) -KW
+* treat input lines of the same textarea more like one entity, as far as
+  "Textfields Need Activation" is concerned, as long as movement among those
+  lines is with PREV_LINK/UP_LINK/LPOS_PREV_LINK/NEXT_LINK/DOWN_LINK/
+  LPOS_NEXT_LINK or ACTIVATE keys (the last one only if TEXTAREA_AUTOGROW is
+  defined, for consistency with line-appending behavior).  I.e.  moving among
+  textarea lines with those keys automatically activates ('enters') the new
+  field for line editing if the previous one was activated -KW
+* modified statusline messages to be more appropriate and specific on non-
+  activated form fields.  (The additional messages are not used or compiled
+  in if TEXTFIELDS_MAY_NEED_ACTIVATION isn't defined.)  Avoid unnecessary
+  repainting/refreshing of the physical statusline in many cases of moving
+  among fields and links.  Make sure the additional lines shown in Novice
+  mode are also appropriate -KW
+* modified line editor behavior on "disabled" form text fields:  instead of
+  disabling all non-terminating edit keys, allow those that never modify the
+  field contents.  The user can now scroll through a long value in a disabled
+  field with the arrow keys, rather than being stuck at the end -KW
+* the ncurses mouse popup window would overlap the statusline in Novice mode.
+  Limit the overlap to border area (so at least no significant text gets
+  corrupted) -KW
+* modified code for stickiness of the second kind (ex-STICKY_FIELDS) according
+  to preliminary proposal from Vlad.  Named LEFTARROW_IN_TEXTFIELD_PROMPT.
+  Does not depend on any conditional compilation symbols, and is now unrelated
+  to the other kind of "stickiness" discussed above.  See lynx.cfg.  This isn't
+  optimal yet (LAKABOFTIF discussion etc..), but better than leaving it as it
+  was -KW
+* made default width of textarea fields (if no COLS attribute given) depend on
+  window or screen width, instead of using a fixed default of "60".  I.e.  for
+  wider windows make better use of available space, and for narrows windows
+  avoid wrapped textarea lines.  Take the usual left/right margins (depending
+  on current block style) into account.  But for -dump don't make fields longer
+  than 60 anyway (they will just show up as blocks of underscores anyway, not
+  showing text content) -KW
+* changes in code used to create new bookmark file after a bookmark has been
+  'R'emoved.  Change should only affect Unix.  Basically, revert back to
+  behavior used before 2.8.1dev.8 for "normal" files (no symlinks or extra
+  hard links).  I.e. use rename / maybe try "mv" instead of "cp", then change
+  permission bits explicitly.  Using "cp" means running the risk of losing or
+  truncating the user's bookmark file if for example the disk became full
+  (although these occasions should be rare - the scratch file we are trying
+  to copy or rename was written just before without error, usually on the
+  same filesystem).  Some more comments in LYBookmark.c.  Note: if you like
+  your bookmark files, make backup copies of them anyway... -KW
+* changed F1 key bindings so it always invokes DWIMHELP, also in the Line
+  Editor (for all three Binding tables).  This means that pressing F1 (if you
+  have it, and it is correctly mapped and recognized) while in a text form
+  field will now bring up the Line Editor Help Page for the currently selected
+  line edit style.  Other keys bound to HELP by default ('?', 'h') remain
+  unchanged, they still always go to the main Help Page -KW
+* don't let DWIMHELP show Line Editor help for a text input field that is
+  disabled -KW
+* don't mangle a -cookie_file like /home/user/.lynx_cookies.~1~, only interpret
+  the '~' as reference to HOME if it's right at the beginning and followed by
+  '/' and then some more.  There are probably other instances where '~' gets
+  mistreated (in addition to the intentional dropping of "user" from something
+  like "~user/" in file URLs etc.) -KW
+* changed type of EXP_KEYBOARD_LAYOUT tables to LYKbLayout_t.  They hold
+  Unicode values, any similarity to LYKeymap_t is just accidental -KW
+* changed EXP_KEYBOARD_LAYOUT logic so that input characters that are
+  unrepresentable in the current display character set (unless it is UTF-8) get
+  transformed into '?' instead of some accidentally chosen 8-bit character.
+  For UTF-8, convert to UTF-8 encoding instead.  Note the Line Editor isn't yet
+  UTF-8 aware; with some care it is possible to enter UTF-8 text, but the
+  display will be messed up, esp.  the cursor position will be shown wrong -KW
+* some corrections for TPOS, YANK enhanced lineedit functions -KW
+* added back in a block in LYmbcsstrlen that got lost somehow -KW
+* fix an array boundary accident in GridText.c -JB
+* reiterate that LYNXCGI_LINKS is set by the configure script -PW
+* note that patches should be generated by "diff -u" -PG
+* modify HTReadProgress so that setting SHOW_KB_RATE false will let the
+  amount read be shown in bytes/sec -DK
+* modify mkdirs.sh to ignore DOS-style device -IZ
+* modify CF_PATH_SYNTAX configure macro to accept DOS-style path syntax, for
+  use in OS/2 EMX port -IZ
+* fix some memory leaks in visited-pages tree -IZ
+* correct recent change to LYEditmap.c for EBCDIC -PG
+* change 'elf32ppc' to 'elf32ppc*' in config.guess to work on MkLinux DR3
+  (reported by Christopher Conrade Zseleghovski (kkz@MIMUW.EDU.PL>) -TD
+* add check to HTConfirmDefault() to ensure that NLS form of "yes" and "no"
+  are distinct in the first character, revert to English if not -TD
+* add configure test for wredrawln, and use CF_CURSES_FUNCS -TD
+* improve CF_TERMCAP_LIBS configure test -TD
+
+1999-11-17 (2.8.3dev.15)
+* add popup in options menu to control alternate organizations of the
+  visited links page -IZ
+* reformatted src/makefile.dos and src/makefile.dsl to make them simpler to
+  modify -TD
+* add -DOK_OVERRIDE to DIRED_DEFS for DJGPP -LP
+* change the samples in "URL Schemes Supported in Lynx" so they would appear
+  without //user:passw@ but //user@ with the explanation of yet another
+  possibility added in words...  So user will not get a wrong impression if
+  reading that document not so carefully (you know, samples are so easy
+  remembered without details), -KW, LP
+* ifdef bkgd() call in force_repaint that accommodated pre-ncurses 4.1 bugfix,
+  from early 1997.  With current code, a ^L when a popup is displayed causes
+  the screen colors to be reset (reported by KW) -TD
+* undo recent no_color_video check for A_BOLD, A_UNDERLINE since this did not
+  have the intended effect (reported by KW) -TD
+* add note to lynx_url_support.html about lynxcgi -PW
+* add user search in partial mode (while loading of the document is in
+  progress).  Scrolling to the string in question is not working properly yet
+  if you repeat 'n' next time.  More work required -LP
+* improved makelynx.bat (Victor Schneider)
+* fixed bug that corrupted memory (resulting in crashes) in situations when
+  line ends with LY_SOFT_HYPHEN -VH
+* correct comment in userdefs.h regarding renaming of
+  LINKS_AND_FORM_FIELDS_ARE_NUMBERED to LINKS_AND_FIELDS_ARE_NUMBERED and
+  change DEFAULT_KEYPAD_MODE to LINKS_AND_FIELDS_ARE_NUMBERED -PW
+* fix bug that caused lss-enabled lynx to crash on growing textarea or
+  inserting file into it -VH
+* new lynx.cfg option REFERER_WITH_QUERY:[SEND|PARTIAL|DROP] -KW
+* don't send Referer if we have to load a document again that we got
+  from the history stack.  Lynx would send the URL of the current
+  document (the one "later" in history) which could only accidentally
+  be right -KW
+* changed default for PERSISTENT_COOKIES from TRUE to FALSE, since
+  persistent cookie support is now configured in by default -KW
+* new functions (key_for_func_ext) to return a "best" key (or key pair) to
+  invoke a given lynx  action, either in the Line Editor or in normal mode.
+  Currently only used for a couple of statusline messages (those that had ^V
+  hardcoded).  The statusline info while in a textarea now gives the right
+  key(s) for invoking external editing, or omits the info if appropriate
+  (no key bound, or no editor defined or allowed) -KW
+* doc updates for TEXTAREA special functions -KW
+* moved #defines for TEXTAREA_EXPAND_SIZE, AUTOGROW, AUTOEXTEDIT from
+  LYMainLoop.h to userdefs.h, the latter two renamed to TEXTAREA_AUTOGROW
+  and TEXTAREA_AUTOEXTEDIT, added description -KW
+* minor tweaks: -accept_all_cookies help string, some formatting changes,
+  minor text additions and corrections -KW
+* set $(PROG_EXT) variable in makefiles for Cygwin -TD
+* define __CYGWIN__ if needed, e.g., for betas that define __CYGWIN32__ -TD
+* workaround Cygwin b19.1 problem generating cfg_defs.h because it did not
+  properly export $PATH -TD
+
+1999-11-03 (2.8.3dev.14)
+* modify no_color_video check for A_UNDERLINE so it is active for any
+  combination that uses underlining (reported by KW) -TD
+* modified HTML.c so configure --enable-internal-links builds -TD
+* improved 'lynx.patch' rule in makefile.in -PG
+* add rough version of makelynx.bat for use with Khan's MingW32 (from Victor
+  Schneider <vtailor@gte.net>)
+* update dependencies in makefile.bcb for src/TRSTable.c -SH
+* fix PDCurses ifdef's in LYCurses.c to work with WATT-32 -DK
+* correct ifdef's in LYPrint.c so that send_file_to_mail() works with DJGPP -DK
+* modify DOS makefiles for PDCURSES for watt-32 and some of the other recent
+  changes to lynx.  Included some of the EXP_ defines that DOS users may want.
+  Changed the -O3 back to -O2, since -O3 has no advantage under DJGPP -DK
+* remove a useless ';', use FREE() instead of free() - JB
+* correct spelling lexem/lexeme (reported by KW) -TD
+* split-out function check_history() in LYMainLoop.c -TD
+* add configure check for vasprintf -TD
+* add configure check for _GNU_SOURCE -TD
+* minor fixes for configure script macros CF_TERMCAP_LIBS, CF_DISABLE_ECHO,
+  CF_GCC_ATTRIBUTES, CF_GCC_WARNINGS -TD
+* fixed bug in psrcmode code.  Now htmlsrc_tag encloses only tagname, not
+  everything in generalized brackets <,>,</,/> (reported by KW) -VH
+* fixed a bug with 'g' command (reported by KW) -VH
+* default value for 'OPT' in SGML.c made '1', removed alternatives to code
+  surrounded by #if OPT1 -VH
+* notes (VH):
+  + Seems that 'OPT' stuff doesn't contain errors. Let's enable it for several
+    releases, and then remove alternative code.
+  + Added comments about pools.
+  + Docs updated to reflect new functionality of -dont-wrap-pre
+* old psrcview bug fixed  - markup was unbalanced in some situations -VH
+* content of SAMP tag made justifiable -VH
+* implemented HTStyleChange pooling - sizeof(HTStyleChange) is 4 times smaller
+  than before, and only necessary number of stylechanges is allocated now,
+  instead of some constant (1024 by default) -VH
+* functionality of dont-wrap-pre improved and extended. Now it's possible to
+  avoid wrapping the document being dumped completely (size of the non-wrapped
+  line before the patch was limited by MAX_LINE = 1024 by default). Specifying
+  -dont-wrap-pre with interactive session enables wrapped lines (in PRE) to
+  be marked as in source view - with '+' in normal view -VH
+* functionality of -force-empty-hrefless-a was cleaned up,
+  #ifndefs NO_EMPTY_HREFLESS_A and endif's were removed -VH
+* colorstyle changes are not emitted in HTML_end_element if me->skip_stack was
+  >0 on entry to this function. This caused some glitches if
+  -force-empty-hrefless-a was enabled -VH
+* LYPrettySrc.c was slightly cleaned up, added support for lynx.cfg reloading,
+  memory deallocation -VH
+* possible bug in print_wwwfile_to_fd fixed - when quoting the page, seems that
+  several '>'s could be emitted on the long line formed by concatenating lines
+  with LY_SOFT_NEWLINEs at the begining of them -VH
+* general notes (VH):
+  + users of lss-enabled lynx should consider on upgrading the lynx - at least
+    those who use lynx for viewing huge files.  By default, each line on the
+    screen took 1K for colorstyles (on x86).  With new approach colorstyle
+    changes take 24 bytes (on x86) per line in average document.  Old lynx with
+    900K html file loaded as startfile occupied 30M of virtual memory, lynx
+    with patch applied occupied 5 Mb on the same file.  Old code is still
+    accessible by defining OLD_STYLECHANGE.
+  + I spent 4 hours debugging attempting to write/fix code that cleans up the
+    memory allocated in LYPrettySrc.c, but Lynx.leaks shows that I didn't
+    succeeded.  I fear that leak detection stuff is broken - I checked/traced
+    the code very carefully several times.
+> the remainder (most) of this patch from KW:
+* for confirmation prompts (HTConfirm), also accept English letters 'Y', 'y',
+  'N', 'n' as responses.  If characters different from those are derived from
+  the first letters of the translation of "yes" and "no" in a localized lynx,
+  the latter will still be the ones that appear in the prompt text and will
+  have precedence.  Message translations using multibyte character sets should
+  continue to *not* translate "yes" and "no".  Added a note to that effect.
+* small update for some chartrans tables, minor comment changes.
+* for Unix, use LYSystem instead of system for invoking telnet, rlogin,
+  rtn3270 commands.
+  [ For some non-Unix systems, LYSystem messes around with the passed command
+    string in various ways, and does some other stuff for DJGPP.  So no change
+    for those, since I assume it worked before.  For Unix the change prevents
+    the following occurring with ncurses (at least if USE_SIGACTION is
+    defined):
+     - access some (valid) telnet://some.host URL.
+     - within telnet client, escape to command level (usually '^]')
+     - suspend (usually 'z' or ^Z)
+     - resume (fg).  Lynx process gets woken up, redraws lynx screen,
+       screen & tty state get messed up. ]
+* another tweak for display refreshing when text previously displayed
+  had UTF-8 (for ncurses) - a check in display_page was missing.
+* corrected stupid problem in LYGetFileInfo - invalid memory access.
+* corrected and extended handling for textarea INSERTFILE and EDITTEXTAREA
+  (or DWIMEDIT), the previous patch wasn't quite right:
+  - now really truncate very long lines as intended for INSERTFILE, instead of
+    wrapping with loss of one character.
+  - for EDITTEXTAREA (DWIMEDIT), implement wrapping instead of truncation
+    (Rationale for the difference:  user's editing work shouldn't be lost if we
+    can avoid it; it is only temporarily stored in a file which may be
+    unrecoverable, different from the typical INSERTFILE case.) If, upon
+    returning from the external editor, lines are encountered that don't fit in
+    the displayed width of the textarea fields, the user may be given the
+    option to wrap to that width.  (This prompt may not be given when the first
+    such line has no suitable spaces for breaking - the file may be binary
+    garbage after all, not worth fixing up too much.) Line breaking is
+    attempted at spaces if possible (using isspace() for checking), but not if
+    the only available spaces are close to the beginning of a line.  An attempt
+    is made to join the wrapped part of a line (if not too long) with the next
+    line if it is not indented, by suppressing the next line break (if not too
+    far away).  Some other heuristics are used that work reasonably well for
+    normal text paragraphs.
+    If the above mechanisms fail, or the user did not confirm wrapping when
+    prompted, very long lines will still be wrapped to fit into the buffer size
+    (around 1024 chars).
+  [ The wrapping works quite nicely in "normal" cases - please try it! ]
+* mouse action in popups would lead to call of fancy_mouse() with wrong row
+  number, which could lead to messed-up display as well as invalid memory
+  access.
+* The previous changes in link redrawing made things worse instead of better
+  for UTF-8 display with ncurses (without color style).  This time (using
+  wredrawln, not touchline) it should really get better...
+  [ The UTF-8 related changes would need testing with non-ncurses curses libs,
+    if anyone has one of those AND a working UTF-8 environment - late xterm
+    betas(?) from Tom's site should do.  If the functions used for ncurses are
+    available in other curses libs, the code should probably look the same as
+    for ncurses.  ]
+* SGML.c to compile without --enable-prettysrc (reported by HN) -KW
+* fixes an invalid memory problem from previous patch
+* adds alignment inheritance from COLGROUP / COL / THEAD / TFOOT / TBODY.
+* remove some logic from LYmbcsstrlen() that gave an incorrect count for
+  the number of cells displaying multibyte characters, resulting in too-few
+  cells being highlighted (reported by HN, SH) -KW
+* added support for ROWSPAN attribute of TD and TH to TRST.  This only
+  reserves the appropriate amount of space in subsequent lines.
+  [ Pages that show off ROWSPAN nicely:
+    <http://www.iro.umontreal.ca/contrib/po/HTML/domain-hello.html>
+    and related ones for other "domain"s.  (Verify that there really
+    is a ROWSPAN= in the current version.)  View with a screen width
+    of 100.  With 80 there is some kind of problem, compare both
+    ^V settings... ]
+* some corrections in TRST code.
+* change initialization order of key escape sequence mappings for slang, so
+  that terminfo/termcap information always overrides defaults that may
+  conflict.
+* minimal memory cleanup / leak prevention for EXP_FILE_UPLOAD error
+  cases in GridText.c.
+* in HText_SubmitForm, don't change the post_content_type of the
+  passed in newdoc structure unless that is really wanted.
+* tweaked UTF-8 prevention of display library wrapping/truncation to make
+  better use of available width for centered text, and to not apply if dumping
+  to stdout.
+* for UTF-8 output with ncurses, do a clearok in display_page also if the page
+  that was *previously* displayed had UTF-8 characters.  Without this there
+  were still display glitches.
+* made previous changes to SGML.c and HTMLDTD for handling OBJECT more generic.
+* minor tweaks, cleanups, glitch removal in previous changes.
+* better tracking of HTSprintf0/HTSprintf with --enable-find-leaks
+  (-DLY_FIND_LEAKS).  This can be disabled in LYLeaks.h by removing the
+  definition of LY_FIND_LEAKS_EXTENDED.
+* added variant behavior in StrAllocVsprintf to make HTSprintf0/HTSprintf use
+  less memory allocation calls and keep its temporary string buffers across
+  calls.  The buffers then only grow and never get cleaned up.  This is enabled
+  by defining SAVE_TIME_NOT_SPACE in HTString.c, disable the definition there
+  in case of problems.
+* added code so HTSprintf0/HTSprintf can use vasprintf() in some situations,
+  which should be more efficient.  It also works with --enable-find-leaks
+  (EXTENDED or not).  This only comes into play if USE_VASPRINTF is defined
+  (not defined automatically anywhere).
+  [ For me (some Debian glibc version), the prototype for this function
+    is in stdio.h but only gets included with an explicit -D_GNU_SOURCE. ]
+  [ Which of the four combinations with/without vasprintf, with/without
+    SAVE_TIME_NOT_SPACE is better (if any) remains to be tested.  I have seen
+    drastic differences under leak tracking, but that's just too much
+    different from a normal situation to count for anything. ]
+* Some minor leaks fixed. (LYMainLoop.c)
+
+[ Had to make owner_address and ownerS_address file-wide PRIVATE's
+ instead of auto to unleak them.  Could be taken out of more
+ argument lists now. ]
+
+* HTFile.c: correction in FormatNum (could duplicate fields for some
+  LIST_FORMAT settings), avoid some HTSprintf0 calls in FormatStr.
+* replaced calls to HTSprintf with calls to HTSprintf0 in various files.
+* added missing include of LYLeaks.h in LYPrettySrc.c.  But disabled memory
+  tracking there, too many allocations show up as leaks.
+* allow digits in tagspec for -prettysrc.
+* the 'fixit' change of 1999-05-16 didn't really let LYConvertToURL() revert to
+  the right old behavior in the non-'g' use.  Now return a file URL for the
+  nonexisting file in the relevant situation again, as before 1998-03-25,
+  instead of an erroneous "file://localhost" which (on Unix-like systems at
+  least) would result in access to the root directory.  This change (like the
+  changes of 1999-05-16 and 1998-03-25) only matters for strings that aren't
+  already in absolute URL form, don't start with a slash (or, for DOSPATH
+  systems, other path separator) either, and don't get turned into remote URLs
+  by successful 'guessing' and DNS lookup.  None of the changes affect VMS.
+* protect INSERTFILE and EDITTEXTAREA from generating memory access violations
+  if the inserted file has lines that are too long for the buffer used.  An
+  alert message is issued and the long lines are truncated.  Also don't exit if
+  memory allocation fails for the buffer to hold the whole file, since the only
+  reason for the failure may be that the file is too huge when otherwise lynx
+  has enough memory.
+* improved handling of some invalid constructs in SGML, especially
+  '<' followed by various characters; don't lose those characters from
+  what gets displayed for -prettysrc.
+* a pre-filled TEXTAREA text that needed charset translation could cause
+  use of an invalid pointer when building the page, resulting in garbage
+  data being displayed (or worse).  The problem was in HTML.c, not related
+  to TEXTAREA editing or other related new functions.
+  [ preceding three were partially already in previous patch ]
+* recognize '<?' as introducing an SGML PI.  Within most elements' content (or
+  outside of any elements) this makes no effective difference except for TRACE
+  messages and -prettysrc, the input is still junked up to the next '>' as for
+  a completely invalid tag.  Within PCDATA elements the PI is now also ignored
+  instead of being treated as character data, this makes a difference for
+  example in a TEXTAREA in SortaSGML mode.  (PI's aren't really expected to
+  occur in the middle of HTML, but are used at the beginning of XHTML documents
+  and other XML documents.)
+* the earlier change of TEXTAREA handling (treating as SGML_PCDATA, SortaSGML
+  only) created a problem, some lynx special characters were passed on as data
+  characters in the field contents and would mess up line editing and possibly
+  the submitted form data.  Actually the problem also existed before, but only
+  for non break space, soft hyphen etc.  encoded directly as character data
+  (not NCRs or entities).  Resolved by telling SGML.c not to generate lynx
+  special chars for some element contents (currently only TEXTAREA), with new
+  flag Tgf_nolyspcl.
+* corrected some logic errors in LYUCFullyTranslateString.  Special attribute
+  characters are now more often translated to real characters when 'Back' flag
+  is set, and should now be translated to the *right* characters for the target
+  charset.  (They were sometimes converted to ISO-8859-1 values when the 'to'
+  charset was different.)
+* added a missing significant cast in UCReverseTransChar.
+* for scrollbar mouse clicking, use codes that work independent of current
+  line-editor key bindings.
+* better calculation of "subjective distance" from next anchor for mouse.
+  Change of 1999-07-30 had various problems, it wasn't quite intuitive.  Use
+  scaled numbers for finer granularity.  Don't make "basin of attraction" too
+  wide, or it becomes hard to find a "background" spot to click on that doesn't
+  affect a link if a page has a high density of links.
+  [ For example with a pair of fields:
+         Submit Reset
+                xxx
+  clicking in any of the positions marked 'x' on the next line would
+  select the first field, not the second. That was not an improvement. ]
+* functions LYmbcsstrlen, LYno_attr_mbcs_case_strstr, and LYno_attr_mbcs_strstr
+  in LYStrings.c where unclear about the concept of 'printable' or 'physical'
+  used for some returned values in the CJK case.  Callers expected number of
+  display cells, implemented was number of 'characters' counting full-width
+  characters as 1 instead of 2.  Now these functions take an additional
+  argument 'count_gcells' that tells them how to count.
+  This removes some long-standing, somewhat obscure problems with search target
+  highlighting under CJK display character sets, as well as new (and less
+  obscure) CJK problems introduces by the latest changes for highlighting.
+  Also fixed some details in the *strstr functions.  The positioning of the
+  highlighting in CJK mode should now be correct and work as expected (as for
+  other display character sets) for anchors, search targets, and combinations
+  of both.
+* reorganized LYOpenTempRewrite.  It should finally make sense for systems
+  without HAVE_TRUNCATE defined.
+* corrected SNACat (was unused).
+* changes for SUP and SUB:  Render SUP visibly as a '^' character if it needs
+  to be separated from a preceding character in order to prevent
+  misinterpretation.  The test currently used is isxdigit for the the preceding
+  character.  Render <SUB> and </SUB> always as brackets '[' and ']'
+  respectively.  SUB is mostly used in technical material while SUP occurs
+  frequently in pages of general nature where it is not essential, therefore
+  the different treatment.
+
+1999-10-21 (2.8.3dev.13)
+* revert a change from dev.4 which disabled getbkgd support in PDCurses -DK
+* modify ifdef for USE_QUOTED_PARAMETER to include __CYGWIN__, else names such
+  as "telnet.sh" are translated to "telnet" -DK
+* improve/simplify scrollbar support -IZ
+* implement LYNXMESSAGES:/ page using non-tempfile approach -LP
+* correct an assignment to last_kcode, broken by restructuring of LYMainLoop.c
+  in dev.11 -SH
+* tweak LYExecv() to exclude SH_EX conditional (dired commands didn't work
+  on non-Windows platforms when SH_EX defined) -LP
+* fix a potential out-of-range pointer in HTParse - JB
+* fix a small leak in the statusline history page - JB
+* restore DELEL lineedit key binding in the Alternate map (which apparently was
+  changed in -dev.4 to the DELNW function) to the ^K key -KED
+* LYMainLoop.c:  remove a dozen of unnecessary `refresh_screen' flags from
+  LYK_HISTORY, LYK_PRINT, LYK_LIST, LYK_ADDRLIST, LYK_VLINKS where a new html
+  page is generated (any document update that may be displayed in "partial
+  display" mode need not set `refresh_screen' flag) -LP
+* correct some typos in cernrules.txt -VH
+* move declaration of LastDisplayChar to make GridText.c compile with DJGPP -LP
+> the remainder (most) of this patch from KW:
+* HTFTP.c: (already sent w/o description - this is updated to dev.10)
+  - interrupted_in_next_data_char was not being reset.  That could make all
+    subsequent FTP directory listings fail (by showing an empty directory)
+    after receipt of one directory listing had been interrupted.
+  - be nice, send quit before closing at least in the normal (non-interrupted
+    and successful) case.  Some servers (wu-ftpd at least) otherwise complain
+    with "You could at least say goodbye" which in turn causes unnecessary RST
+    packets.  To minimize round-trip delays, the QUIT is sent before we start
+    reading the returned data (but after the initial response to our retrieval
+    command).
+  - always close data connection immediately after we are done reading from it,
+    also for directory requests.  This was already the case for file requests.
+    Some servers (including recent wu-ftpd beta) wait for indication that we
+    closed before proceeding.
+  - keep better track of closed sockets.  Some more trace messages.
+    Some comments corrected.
+* tabular representation for simple tables.  See included file README.TRST.
+* made User-Agent warning more friendly, and more specific.  Tell the user what
+  lynx expects in order to avoid the warning.  On the other hand, issue an
+  equivalent warning when -useragent is used.  Change documentation
+  accordingly.
+* don't send User-Agent header at all if it somehow would be blank.
+* indicate on forms 'O'ptions Screen which options are not saved to .lynxrc.
+* disable the form fields in the 'O'ptions Screen if the screen is generated
+  when FORMS_OPTIONS code is compiled in but not actually active.
+* LYPrint.c: In subject_translate8bit (see OUTGOING_MAIL_CHARSET
+  option), use higher level function to charset-translate mail Subject
+  line, rather than low-level UCTransCharStr.
+* UPPER8, UCForce8bitTOUPPER:  was severely broken for UTF-8 display, making
+  WHEREIS search for strings containing non-ASCII characters impossible (and
+  probably with other bad effects).  Now case mapping may still be wrong, but
+  at least identical strings compare as equal.
+* LYHistory.c:  Entification for saved statusline messages happened twice by
+  mistake.
+* HTFWriter.c:  Made code for automatic decompression of bzip2 files
+  conditional on BZIP2_PATH.  Such files should be treated as normal binary
+  files on systems without bzip2.  The configure seems to always define
+  BZIP2_PATH, but it could be undefined manually.
+* HTFWriter.c:  Use LYRemoveTemp instead of remove in some cases, to avoid
+  keeping those files in the temp file list after they are long gone.
+* HTTCP.c: Check whether port numbers in URLs are really numbers.
+* HTPlain.c:
+  - deal with backspace formatting as used in formatted man pages.
+    (No highlighting, only avoid double output of characters)
+  - pass on 0xAD (soft hyphen) character in more cases.
+* HTNews.c:  Prevent some ways that could trick lynx into treating a regular
+  "news:" or "nntp:" URL as something else, like snewspost.  Extra check in
+  LYNews.c whether posing is allowed.  Return with an error message in some
+  cases of URLs that are too long, instead of silently truncating.  Make HEAD
+  work again on news articles.  Some memory leaks in error path removed.  A
+  message tweak.
+* HTFormat.c:  HTStreamStack:  avoid some unnecessary work, add a trace message
+  to show what is returned.
+* SGML.c:  some cleanup of ugly ifdefs, and of unnecessary abuse of global
+  variables.  (still a lot left!)
+* handle INCLUDE and CDDATA marked sections: output the contents.
+* parse various elements differently that had/have special requirements or
+  hacks.  Extend meaning of Tgf_strict for literal-like content modes.  Use
+  SGML_CDATA in some cases (and treat it similar to SGML_LITTERAL), use
+  SGML_PCDATA for literal-like parsing (but if modified by Tgf_strict it's
+  more like regular SGML_MIXED).  A '<' that would start a tag gets displayed
+  (since not element content is allowed that's just error recovery).  Comments
+  now work in TEXTAREA instead of getting displayed as text (SortaSGML mode
+  only).
+* minor tweak of sorta SGML handling for invalid end tag if start tag could be
+  validly omitted.
+* more consistent and correct recognition of element names.  The characters
+  "_-.:" don't end tag names.
+* improved handling of '/' after element name in a tag:  "<foo/>" is treated as
+  an empty element (as in XML).  If we recognize "foo" as an empty element, do
+  nothing special; and if we recognize "foo" as a non-empty element; convert to
+  "<foo></foo>".  "<foo/bar/" is treated as a shortref construct, by converting
+  to "<foo>bar</foo>" (for non-empty and recognized "foo").  This is not
+  general as it would have to be for or real SGML parser, in particular '/' is
+  only treated this way if it directly follows the element name, and it may not
+  even be quite right.  It is better than the recovery lynx previously did in
+  these cases though.
+* changed handling of include buffer which is used to pass back data
+  from HTML.c to SGML.c.  Passing data upstream now works without strange
+  reordering effects even when SGML_character was already parsing data from
+  a previous include buffer.
+  Character set translation would happen several times on data passed back
+  to SGML_character in the include buffer for re-parsing.  This is now
+  avoided.  Well at least in most cases, and for characters that *can* be
+  translated, there are likely combinations of input and output character
+  sets where the assumptions made are still wrong.
+* the start_element and end_element methods of structured stream class now
+  return a status code.  Currently only used for the OBJECT stuff below.
+* mostly HTML.c, SGML.c: Changed handling of OBJECT and MAP.
+  - avoid using the include buffer mechanism as much as possible.  This
+    involves introducing some new special handling in SGML.c to change parsing
+    mode for element contents, and a way for HTML_{start,end}_element to signal
+    to SGML_character what it should do.  In most cases when the OBJECT element
+    content should be parsed and displayed, SGML_character now only needs one
+    pass through the data.
+  - don't lose content when several OBJECTs are nested.
+  - in HTML 4, an OBJECT with USEMAP attribute can refer to a MAP within the
+    OBJECT's content, possibly within nested inner OBJECTs.  Lynx would fail to
+    find the MAP in that case, now it doesn't.
+  - in HTML 4, MAP can contain arbitrary block elements in addition to AREA.
+    Lynx now shows such block content, even if it occurs within (possibly
+    nested) OBJECTs with USEMAP whose contents we would otherwise skip.
+    Sometimes we may show too much now, by generating a LYNXIMGMAP link as well
+    as showing block content or by showing more of the OBJECT content than what
+    is within a MAP, but that is preferable to losing data.
+  - treat an A tag with COORDS attribute as equivalent to an AREA when it is
+    within MAP, for the purpose of collecting links for LYNXIMGMAP.
+  - as a fallback, internally redirect a LYNXIMGMAP request to the position of
+    the MAP element in the normally rendered text of the document containing
+    the MAP, if it is known that the MAP element exists and just doesn't
+    contain any AREA (or equivalent A-with-COORDS) links.  It is assumed that
+    in such a case there is some block content within the MAP that is rendered
+    normally.
+* HTFile.c: new function LYGetFileInfo.
+* HTAnchor.c: new function HTAnchor_findSimpleAddress.
+* new function HTStartAnchor5.
+* modified the way link text is (re-)drawn by function highlight.  The bulk of
+  processing now happens in new function LYMoveToLink.  The data of the
+  containing line is now scanned from the beginning, using the same logic as in
+  display_line to make sure that lynx and the display library have the same
+  idea of where in the line the link starts.  In UTF-8 output mode, parts of
+  the line preceding the link are also repainted if this is necessary.
+  Refreshing of the physical line is forced if necessary in UTF-8 mode.  For
+  anchors split across lines, the new approach is currently only used for the
+  first line.
+  This change is not in effect for lynx with color style.  In that case
+  highlighting already is sometimes done in a similar similar, but not quite
+  the same, separate function.
+* modified WHEREIS target highlighting for hypertext links.  Now this is done
+  in the same pass as drawing the normal link text, in LYMoveToLink.  This
+  avoids problems in UTF-8 display mode.  It also avoids a lot of complicated
+  and extremely hard to understand older code in highlight(), but that code is
+  still there for use by lynx with color style and for other remaining cases
+  (non-hypertext anchors, second line highlighting).
+* modified WHEREIS target highlighting for general text.  Instead of first
+  writing each line's characters in display_line, then scanning again through
+  the line's data for portions to highlight and repainting those parts after in
+  display_page, this is now done in one pass within display_line.  However,
+  this isn't (yet?) done for lynx with color style which still uses the old
+  code.
+* these last three changes reduce problems that occur when using UTF-8 display
+  character set (in an appropriate terminal environment that understands it, of
+  course).  Most of them don't apply with color style lynx, so it continues to
+  have more UTF-8 problems.  Pages with mostly ASCII characters should be more
+  or less ok.  Problems that otherwise are not visible become apparent in
+  search highlighting, and after ^Z / fg.
+* GridText.c:  More changes to deal with problems caused by using UTF-8 output
+  with a display library that isn't aware of it.  Break line with UTF-8 before
+  curses does it.  This causes lines that are too short, effectively the
+  rightmost part of a line cannot be used if there are UTF-8 encoded
+  characters.  The alternative, letting curses wrap the line when it thinks it
+  got too long, is worse, so do it in lynx code instead.
+* avoid memory overrun for very long lines in UTF-8 mode.  Avoid splitting line
+  in the middle of a multibyte UTF-8 character.
+* test for SHOW_WHEREIS_TARGETS instead of 'defined(FANCY_CURSES) ||
+  defined(USE_SLANG)'.
+* initialize new textarea lines created by insert_new_textarea_anchor with
+  current display character set for value_cs.  (The "cloned" value can be stale
+  in some cases if the user changed the display character set after the
+  document was last loaded - normally that should not happen).  For a file
+  inserted into a textarea with INSERTFILE use new function LYGetFileInfo
+  instead to determine the file content's charset.  Thus -assume_local_charset
+  and conventions based on file suffix should be honored.
+* for Unix, added more specific error message if calling external editor for
+  textarea failed, based on the status returned by system().
+* it is possible to require an additional prompt before Enter in
+  an input field causes form submission: define TEXT_SUBMIT_CONFIRM_WANTED,
+  explained in userdefs.h.
+* some small changes to prevent overstepping string boundary (HTParse.c)
+* extended SUFFIX option, added SUFFIX_ORDER option, see documentation in
+  lynx.cfg.  The long list of built-in file suffix rules in HTInit.c can now be
+  disabled, either at compile time - see userdefs.h - or at run time.  The
+  equivalent functionality is now available in lynx.cfg for those who want it.
+  Added comments, see HTFileInit in HTInit.c.
+* various tweaks of built-in file suffix rules.
+* allow XLOADIMAGE_COMMAND to be empty (in lynx.cfg) or NULL (in userdefs.h),
+  just don't use a default X viewer for image types in that case.
+* moved UCGetUniFromUtf8String from LYCharUtils.c to UCAux.c.
+* renamed LYUCFullyTranslateString -> LYUCTranslateHTMLString, and
+  LYUCFullyTranslateString_1 -> LYUCFullyTranslateString.
+* tweaks for special chars in (what is now) LYUCFullyTranslateString, in
+  obscure cases (input fields of type password prefilled with unusual content)
+  lynx would pass text back to the server with special characters (soft hyphen
+  or non-break space) expressed as lynx-internal code values.
+* added some replacement characters or strings to various chartrans tables.
+* experimental command line option -convert_to, only compiled in if new
+  MISC_EXP symbol is defined.  This takes a string in the form of a MIME type,
+  which can also be combined with an appended ";charset=" parameter.  (This
+  needs shell quoting of course).  The charset value can be used to set the
+  display character set from the command line.  The MIME type can be one of the
+  non-official types used internally, for some interesting effects (crashing
+  lynx not excluded).  Try www/download, www/source, www/dump, or some
+  unrecognized string.
+* fixed HTMainText_Get_UCLYhndl, it was returning the wrong kind of charset
+  handle (a "UChndl", which is different from a "LYhndl" or "UCLYhndl" etc.,
+  and shouldn't be directly accessed by arbitrary bits of lynx code - it should
+  be regarded as private to the chartrans mechanism).
+* protect various printf-like calls against crashes from strings with '%':
+  LYSyslog.
+* LYDownload.c: made parsing of LYNXDOWNLOAD: URL slightly more robust.
+* disabled some broken pieces.
+
+1999-10-14 (2.8.3dev.12)
+* fixes for restructured LYMainLoop.c (reported by PG, LP) -TD
+* minor fix for makeutcb, to compile with K&R C -TD
+
+1999-10-13 (2.8.3dev.11)
+* restructured LYMainLoop.c, so the main switch statement calls functions
+  rather than doing everything inline.  This greatly reduces memory required
+  to compile that module, as well as making the compile 3-4 times faster -TD
+* tweak CJK_EX code for incorrect x-transparent charset handler - it now
+  depends on --with-charsets= configure flag -LP
+* tweak comments in UCDomap.c to be consistent with KW changes as of
+  2.8.3dev7 -LP
+* define DECL_ERRNO for Borland compiler, so errno will be declared (report
+  by JES) -TD
+* add definition for DJGPP so truncate() function is used there, needed for
+  LYOpenTempRewrite() function -LP
+* correct character set for lines added in an external editor (Marek Kubita
+  <kubitovi@mbox.lantanet.cz>, KW, KED)
+* remove a couple more duplicate includes -LP
+* remove a couple of duplicate includes -JB (John Bley <jbley@cs.cmu.edu>)
+* fix some missing ifdef's for win32 versus DOS, as well as change calls to
+  strcasecomp() to strncasecmp() -SH
+* undo spurious change from win32 integration in dev.5 to HTSprint0() which
+  causes a memory leak (reported by John Bley, analysis KW) -TD
+* prevent embedded "%s" in generated messages from causing a core dump in
+  exit_immediately_with_error_message by using fputs rather than fprintf/printf
+  (reported by KW) -TD
+* Changes in UCAuto.c for --enable-font-switch:  Support some more code pages
+  if available.  Check return code from setfont invocation, and use it to
+  determine whether font and/or translation map loading was successful.
+  Warning, this is not based on any documented interface but on
+  experimentation, so may not work for long or for anyone but me; it shouldn't
+  be worse than before though.  Better logic for keeping track of state, some
+  parts just didn't work right.  Workaround for wrong data in some distributed
+  font files.  Minor memory leak removed -KW
+* modify test/c1.html to use tabs for better formatting, added comments -KW
+* modify HTFTP.c for better conformance with RFC959.  Among other things, one
+  major purpose was ending the control conversation cleanly, at least in the
+  normal case, to get rid of the "221 You could at least say goodbye.."
+  responses from wu-ftpd servers and resulting RST traffic.  In response to the
+  problem with ftp.wu-ftpd.org, made one small change to when the data_soc is
+  closed.  This was done early for some specially code server types, apparently
+  those that has caused the same type of problem in the past; just changed it
+  to close data_soc at that point independent of server type -KW
+* set CDPATH to . in the makefile.in's that use cd, in case user has set
+  CDPATH without . at the beginning -TD
+
+1999-09-29 (2.8.3dev.10)
+* change CTRACE macro to double-parenthesis form, to allow ifdef'ing most
+  trace statements -TD
+* fix the creation of a new bookmark file and takes care that older bookmarks
+  files do not fall into the same bug anymore by making sure the <ol> tag is in
+  a line by itself.  This correction will only be activated when the first
+  bookmark is attempted to be erased (patch by Eduardo Chappa)
+* change a trace/error message in HTInit.c to say "Lynx" rather than
+  "metamail", to avoid confusion -HN
+* change <tab> formatting in user's guide, etc., to <pre> sections, thereby
+  appeasing Dave Raggett's "tidy" program -TD
+
+1999-09-13 (2.8.3dev.9)
+* add -nobold, -noreverse, -nounderline options to disable corresponding
+  video attributes (based on a patch by John Hawkinson <jhawk@MIT.EDU>) -TD
+* add STICKEY_FIELDS to lynx.cfg, which tells lynx whether to activate the
+  previous document when an extra key-left is given -VH,TD
+* minor cleanup of run_external(), use single return, HTSprintf0 -TD
+* for WATT32 configuration, call _eth_release() and _eth_init() in HTTelnet.c
+  to make telnet work properly -DK
+* correct redefinition of u_long for WATT32 -LP
+* modify syslog change to make it more specific, based on comments by KW -TD
+* fix potential security problem with SYSLOG_REQUESTED_URLS, which would let
+  syslog() send sensitive information as broadcast to any syslog daemon that
+  care to listen.
+  E.g. URLs with embedded passwords are sent to syslog:
+    Sep 11 12:26:06 lynx[16177]: ftp://joe:password@host/~joe
+  The patch masks the password by breaking up the URL and replacing
+  the password with "******" (Gisle Vanem <giva@bryggen.bgnett.no>).
+* fix mismatch of const's from call of map_string_to_keysym() in
+  lkcstring_to_lkc() -TD
+* supply trailing slash for protocol_proxy settings (whether environment
+  variables or lynx.cfg) in HTAccess.c if the slash was omitted and if the
+  content otherwise looks normal (starts with http, no superfluous slashes) -KW
+* add links for "Free WWW E-mail services" to online help -PW
+* add links in online help to FAQ-o-matic -JES
+* more fixes to build with slang under cygwin32 - DK
+* add/use LYwaddstr(), etc to fix more const-casts (reported by PG) -TD
+* modify HTTCP.c to prevent telnet and similar applications from inadvertently
+  using hostname tokens which look like command-line options -KW
+* modify configure script's --with-charsets option so that if the option
+  --without-charsets is selected, then it will use a 'minimal' set.  The
+  keyword 'minimal' is recognized as the list us-ascii,iso-8859-1,utf-8
+  (request by KW, HN) -TD
+* ifdef'd recursive calls on UCGetLYhndl_byMIME() for charsets that may be not
+  present (--with-charsets), and add getLYhndl_byCP() to cover a special case
+  of recursion which was also a preexisting hole (reported by Frederic L W
+  Meunier, analysis by KW) -TD
+* replace fr.po with a placeholder.  Add placeholders for ru.po, pt_BR.po -JES
+* review/modify HTNews.c to avoid potential buffer overflows, as well as reduce
+  the number of embedded constants that make it difficult to adjust fixed
+  buffer sizes -TD
+
+1999-08-28 (2.8.3dev.8)
+* correct ifdef's combining HAVE_POPEN and __CYGWIN__ in LYPrint.c, which would
+  link popen() code when it was not available -TD
+* correct order of ifdef's for __CYGWIN__ in LYGlobalDefs.h, which would result
+  in a syntax error if the symbol __CYGWIN__ were undefined when __CYGWIN32__
+  was defined -TD
+* change hardcoded ifdef for <arpa/inet.h> include to autoconf'd form -TD
+* modify makeuctb to add ifdef's allowing most charsets to be suppressed at
+  compile time.  Use similar ifdef's in UCdomap.h to suppress registration
+  of non-uctb charsets.  Add configure option --with-charsets to specify list
+  of charsets which are not suppressed (def7_uni is always active) -TD
+* change makeuctb to generate the name of the output file, simplifying all of
+  the build scripts in chartrans -TD
+* correct a syntax error in crypt_util.c from dev.7 and an ifdef in LYCurses.c
+  that sets the codepath -SH
+* use macro TABLESIZE throughout for consistency -TD
+* revert use of TYPECAST for parameter of 'FREE()' macro, since that puts a
+  cast on the parameter as an lvalue (reported by LV) -PG
+* correct improperly-nested ifdef EXP_CHARSET_CHOICE in ifdef for USE_PSRC
+  in LYReadCFG.c -TD
+
+1999-08-26 (2.8.3dev.7)
+* tweak ifdef'ing of `debug_delay' (only available with SH_EX _and_ WIN_EX) -LP
+* tweak src/Xsystem.c (extern system_is_NT is now ifdef'ed with WIN_EX) so
+  exec_command() can also be used with DJGPP when compiled with _WIN_CC symbol
+  (though choice of _WIN_CC is questionable) -LP
+* simplified ifdef'ing for resolv() vs LYGetHostByName() for DJGPP -TD
+* DJGPP with WATT32 now does DNS lookup via LYGetHostByName()/gethostbyname()
+  like other lynx ports so we get reasonable error recovery when DNS lookup
+  fails.  (For example, we now avoid a hang when wattcp.cfg is not configured
+  properly - a typical situation when playing with nullpkt.com).  Build with
+  -DNSL_FORK (in both src and WWW makefiles) is recommended:  this will prevent
+  unexpected 1 second curses delay when alerting a wrongly configured tcp.  (No
+  real fork() in DJGPP, unfortunately:  this function always returns -1 and set
+  'errno' to ENOMEM, as MS-DOS does not support multiple processes.  It exists
+  only to assist in porting Unix programs) -LP
+* alternative patch (replaces HN's) for UCdomap.c -KW
+* modify initialization of lynx_temp_space in case the given name has
+  embedded "~", ifdef'd for WIN_EX -SH
+* fix a problem hanging caused by allowing some unknown entities in an ALT
+  string.  The "hang" problem was caused by a combination of removing too much
+  under 'case S_check_name' in 'LYUCFullyTranslateString_1', _and_ having
+  having some Latin 1 character codes that are untranslatable to the display
+  character set -KW
+* added lynx.cfg setting PSRCVIEW_NO_ANCHOR_NUMBERING that inhibits link
+  numbering when in psrc mode if set to TRUE (default is FALSE) -VH
+* fixes for justification code (anchor position recalculation) and the
+  GridText.c:*TrimHightext (it was not designed to support LY_SOFT_NEWLINES),
+  correcting rendering of links on wrapped lines in psrc mode -VH
+* fixes to www_tcp.h, LYUtils.c and UCdomap.c to build on BeOS 4.5 -TD
+* fixes for CYGWIN with Slang, mainly due to platform differences in Slang -DK
+* fixes for DJGPP, missing headers and declarations -DK
+* let CJK charsets default to 7 Bit Approximations.  Needed to display entities
+  in the decimal 160-255 range.  (Restore behavior before the changes made to
+  declarations of charsets on 1999-03-04) -HN
+* rename -number_links_forms to -number_fields -TD
+* add the -number_links_forms command line option (John Hawkinson
+  <jhawk@MIT.EDU>).
+* modify configure script so --enable-change-exec sets default for
+  the --enable-exec-links and --enable-exec-scripts options -TD
+* modify ifdef's for ENABLE_OPTS_CHANGE_EXEC since one or both of EXEC_LINKS
+  and EXEC_SCRIPTS must also be defined to make this effective (reported by
+  KED) -TD
+* add explanations of the various choices for revealing/not images, to Users
+  Guide, Options Help & lynx.cfg -PW
+* fix LYgetstr() to disable saving of input text on LYE_ENTER state when the
+  input is supposed to be hidden -KW
+* add/use LYaddstr() to fix some const-casts -TD
+* move dependency of "lynx$x" from "install" to
+  "install-bin:" in top-level makefile.in -PG
+* corrected display of SGML_LITTERAL content -VH
+* now LY_SOFT_NEWLINE is used in psrc mode to denote wrapped lines (as in plain
+  source mode) -VH
+* add configure option --enable-scrollbar -TD
+* make the charset-choice code lynx.cfg-reloading-safe -VH
+* add experimental code to allow users to specify that a subset of the
+  compiled-in charset definitions are available for selection for display
+  (ifdef'd with EXP_CHARSET_CHOICE, added configure option
+  --enable-charset-choice -TD) -VH
+* add/use ANSI_PREPRO symbol to simplify ifdef's concerning preprocessor token
+  substitution/concatenation -TD
+* modify ifdef of code that shows current CJK code in the title area under
+  SH_EX as well as CJK_EX -TD
+* modify HTMLDTD.c to set canclose for <Hn> inside <PRE></PRE> -VH
+* correct ifdef'ing of set_ws_title(), which should be applied only on win32
+  (reported by Frederic L W Meunier) -LP, TD
+* reduce compiler warnings from Borland C++Builder.  Most of these are casts,
+  with boolean constructs dominating -JES
+
+1999-08-13 (2.8.3dev.6)
+* workarounds in LYMain.c and LYMainLoop.c for excessive compiler warnings due
+  to defective design of glibc2 -TD
+* modify logic for EXP_JUSTIFY_ELTS in GridText.c to change a raw
+  LY_NONBREAK_SPACE to ' ', to work better for tables -VH
+* add/clarify user's guide for command line option syntax -DK, KW
+* add a new command line toggle for DOS to control debugging of packets under
+  WATTCP and WATT-32.  Under WATT-32, once dbug_init is called, debugging
+  cannot be turned off (although output can be sent to /dev/null).  This new
+  option "-wdebug" controls whether debugging is active, is off by default -DK,
+  Gisle Vanem
+* allow ':' as a separator between the option and its value -DK
+* corrected install rule using symbolic link for copyright files (reported by
+  HN, KED) -TD
+* reset "stalled for xxx" counter from IZ's ETA change in dev.5 between ftp
+  requests -VH
+* add support for scrollbars, ifdef'd with USE_SCROLLBAR.  Use command-line
+  options -scrollbar and -scrollbar_arrow or corresponding lynx.cfg to enable
+  it.  Requires ncurses; may be further tuned if color-style configuration
+  is used -IZ
+* LYCopyFile():  Thanks to Hiroyuki Senshu, DOS-based systems need no cp.exe
+  binary any more.  The code was originally ifdef'ed with SH_EX; now defined
+  with DOSPATH so is used automatically by any dos/windows port, not used for
+  UNIXes (permissions?) -LP
+* a few includes labeled with _WIN_CC now tweaked with WIN_EX as should be -LP
+* adjustments to SH_EX, CJK_EX ifdef's in LYMainLoop.c and LYUtils.c to aid in
+  porting -LP
+* improved logic in status_link() for -short_url option (patches from
+  NSH <nsh@itjit.ne.jp>, Eduardo Chappa)
+* modify display_page() to not necessarily call lynx_force_repaint() to make
+  highlighting work when displaying UTF-8 -Christian Weisgerber, KW
+* add check in read_directory() if transfer was interrupted -KED
+
+1999-07-30 (2.8.3dev.5)
+* add/use LYHideCursor() macro to accommodate position in older curses -TD
+* add configure option --enable-cjk to compile-in CJK_EX logic -TD
+* add -short_url option and associated logic to elide middle of long urls
+  (adapted from patch by Eduardo Chappa <chappa@math.washington.edu>) -TD
+* ifdef'd read-progress changes with EXP_READPROGRESS, add configure option
+  --enable-read-eta to turn this on -TD
+* enhanced read-progress logic (Ilya Zakharevich):
+  a) makes size/transfer rate reports use format "8.3 KB" (instead
+     of "8 KB") if numbers are below 10 KB and reports are in KB;
+  b) makes transferred/expected/transfer-rate use bytes/KB independently
+     so "236 bytes of 56 KB" is possible, as is
+     "8.3 of 56 KB, 456 bytes/sec";
+  c) adds "ETA 23 sec" info if available;
+  d) adds " (stalled for 75 sec)" info if available (updated each 5
+     sec or so);
+  e) uses gettimeofday() if present (instead of current hacks) to get more
+     frequent updates.
+* fixes for OS/2 and ncurses from Ilya Zakharevich:
+  a) Makes lynx ignore mouse events which are not clicks (filtering through
+     ncurses does not work as expected).
+  b) Makes mouse-clicks "basin of attraction" of a link wider (the area where
+     clicks make the link a current link).  It was 2 units vertically and
+     horizontally, make it 2 units vertically, and 6 units horizontally.  This
+     leads to "more intuitive selection".
+  c) Make processing of .lynx-keymap write messages to trace buffer;
+  d) LAC-keybindings were not working;
+  e) Allow .lss files include one another via INCLUDE:/file/name
+  g) Allow a change of default color in .lss files (not the color of attributes
+     text, but colors for a style if "default" is specified); This (together
+     with "e") allows for a simple modification of a color scheme
+     Here is an example of a .lss file with a changed default
+     foreground/background and a handful of other declarations fine-tuned for
+     this change.  (It implements "Commander" style).  "Overriding"
+     declarations should be put before INCLUDE:, and the "default:" declaration
+     should be the last one.
+		status:reverse:yellow:black
+		h1:bold:yellow:black
+		em.a:reverse:black:blue
+		em.b:reverse:white:black
+		font.letter:normal:default:black
+		link.blue:bold:white:brightblue
+		link.blue.prev:bold:yellow:brightblue
+		title:normal:magenta:black
+		i:bold:white
+		table:normal:white
+		blockquote:normal:white
+		li.blue:bold:blue:black
+		link.blue.next:bold:blue:black
+		normal:normal:default:default
+		INCLUDE:F:/emx.add/lib/lynx.lss
+		default:normal:brightcyan:blue
+  h) Improve algorithm for allocation of color-pairs;
+  i) Lynx was not recognizing HOME directory on EMX;
+  j) UP_LINK and DOWN_LINK now actually move along a vertical line (as far as
+     it is possible), including an arbitrary sequence of such keypresses.
+* modify LYIsPathSep() macro to include '\' for OS/2 EMX -TD
+* correct a problem with spurious cookie names when reloading lynx.cfg (Michael
+  Warner, KW)
+* add check for too-long line in HText_ExtEditForm(), splitting it if needed
+  (reported by <yury.burkatovsky@telrad.co.il>) -TD
+* move NO_GROUPS definitions from HTFile.c to HTFile.h to make them available
+  for use in LYUtils.c on DOS -LP
+* correct several minor problems with integration of SH's changes in
+  GridText.h, HTAlert.c and LYPrint.c (reported by LP) -TD
+* restore dev.3 interface to LYLowerCase and LYUpperCase and do casts
+  internally to work on unsigned chars -PG
+* corrected typos in some messages (reported by Dmitry Sivachenko
+  <demon@gpad.ac.ru>) -TD
+* changes for win32 -SH
+  + added ifdef's using _WIN_CC (for Borland C) to some places in prettysrc
+    definitions which use the __STDC__ symbol.
+  + renamed makefile.w32 to makefile.bcb
+  + renamed src/chrtrans/makefile.w32 to src/chrtrans/makefile.bcb
+* the DOS port compiled with WATT-32 now works in a DOS window under Windows
+  3.11 and Windows for Workgroups 3.11.  It still needs its own packet driver
+  and does not use any native winsocks and  has only been tested with Toni
+  Lopez's DOSPPP.  This does fill a void for those running Win3.x, who
+  previously had to close Windows and go back to plain DOS before they could
+  run lynx.  Updated the help files, reflecting current platform support -DK
+* corrected definitions in HTTP.c and HTDOS.h to build with old TCP library -LP
+* When keypad_mode was changed from forms options menu
+  set_numbers_as_arrows()/reset_numbers_as_arrows() was not reinitialized
+  (reported by KED) - LP
+* SOURCE_CACHE: add one more parse setting member (keypad_mode)
+  to HText structure -LP
+* SOURCE_CACHE:  fix updating the document when "display charset" was changed
+  from Options Menu by user:  FREE(anchor->UCStages) call from
+  HTuncache_current_document() now duplicated in HTreparse_document().
+  (problem reported by KW) - LP
+* tweak trace message in scan_cookie_sublist():  limit trace output by trying
+  LYstrstr() as a first approximation before host_matches() -LP
+* open temp-file in LYNewsPost() in binary mode for DJGPP to avoid translation
+  of \r\n vs \n -DK
+* add note about potential conflicts with cookie files to description of
+  --disable-persistent-cookies -BJP
+* added status message to indicate state of text inputs -VH
+* added ability to make text inputs non-sticky (i.e., user will have to
+  activate them explicitly via an LYK_ACTIVATE action) - seems useful for
+  people navigating with alphanumeric keys.  Default is 'sticky' - i.e., old
+  behavior.  Behavior is controlled via command line option '--sticky-inputs'
+  and STICKY_INPUTS in lynx.cfg -VH
+* added conditionals to 'userdefs.h' that disable support for
+  force-empty-hrefless-a mode if lynx is configured without lss (it's not
+  useful for such setup) -VH
+* minor change to prettysrc mode, writing comments one character at a time
+  to avoid translation of \r\n to \n\n in HText_appendText() -VH
+* correct rendering of DL in EXP_JUSTIFY_ELTS, will inhibit justification of
+  DT's content -VH
+* other modifications to EXP_JUSTIFY_ELTS logic, to use information associated
+  with each element that indicates whether it can be justified -VH
+* modify HTMLDTD.c so that "center" is not treated with EXP_JUSTIFY_ELTS -VH
+* fix for core-dump in EXP_JUSTIFY_ELTS -VH
+* modify signal handling in LYSystem to workaround competing SIGTSTP handlers
+  when a subprocess is active.  This adds a new function LYToggleSigDfl(),
+  using sigaction as an alternative to signal to save/restore as much of the
+  signal state as possible -KW
+* add configure option --enable-justify-elts (request by VH) -TD
+* add configure test for sigaction function and related structs -TD
+* restore hardcoded escape sequences on Unix in setup_vtXXX_keymap()
+  inadvertently dropped in dev.4, to accommodate users of slang library who
+  have their $TERM set incorrectly -TD
+* correct ifdef's for resizeterm() call to allow Lynx to build with old
+  versions of ncurses -TD
+
+1999-07-14 (2.8.3dev.4)
+* minor fixes to build with SunOS K&R compiler -TD
+* cleanup unbalanced curly braces from other recent experimental options -TD
+* rename internal definition for LINKS_AND_FORM_FIELDS_ARE_NUMBERED to
+  LINKS_AND_FIELDS_ARE_NUMBERED to keep it shorter than 32 characters -TD
+* change ifndef's for NO_JUSTIFY to ifdef EXP_JUSTIFY_ELTS since something in
+  VH's recent code causes core dumps, by crosslinking the state of two parts of
+  the parser -TD
+* modify slang code to recognize F1 from terminfo/termcap on Unix (John E Davis)
+* changes to use the WATT-32 tcp library, making a DOS port that does http,
+  ftp, news, mailto, and telnet -DK
+  Remaining work includes:
+  * This has been tested only with slang and the djgpp_keyhandler code.  There
+    will probably need to be more changes to have this work properly with
+    PDCurses.
+  * There is at least one bug.  When set to use http_proxy, there seems to be a
+    long wait between socket connect and write if the proxy is accessed too
+    rapidly in succession.  It seems that if it is accessed more frequently
+    than about 20 seconds, there is a timeout of up to about 85 seconds.
+  * some problems with ctrl-break handling, will report to the watt-32 list.
+* rename tcp.h to www_tcp.h -DK
+* fix typo in manpage description of -color (Christian Hudon
+  <chrish@debian.org>).
+* add $(LDFLAGS) to chrtrans/makefile.in, for NetBSD -JES
+* use symbolic link rather than hard link for installing copyright files -TD
+* now dashes and underscores can be intermixed in commandline options, and in
+  -restriction option, ifdef'd with OPTNAME_ALLOW_DASHES -VH
+* added commandline switch '-dont_wrap_pre' that will inhibit line wrapping in
+  <pre> when -dump'ing and -crawl'ing.  (But maximal length of line on output
+  can't exceed MAX_LINE (1023 by default)) -VH
+* lynx.man updated to reflect new option -dont_wrap_pre and to note that gnu
+  style of options (with two dashes) is also supported -VH
+* some small developer's docs tweaks -VH
+* added text justification (controlled by commandline switch '-justify' and
+  from lynx.cfg too), ifdef'd with NO_JUSTIFY -VH
+* added support for emitting backspaces (a-la man) - commandline option is
+  '-with-backspaces', ifdef'd with NO_DUMP_WITH_BACKSPACES -VH
+* added support for forcing-empty-HREFless-As - ie A element that doesn't
+  contain HREF will be closed after it was seen (without waiting for </a>) -
+  this fixes rendering of documentation, produced by broken translators that
+  don't emit balanced 'A's (eg RedHat docs produced by 'dlh', Sybase docs) -
+  commandline option is --force-empty-hrefless-a, and force_empty_hrefless_a in
+  lynx.cfg, ifdef'd with NO_EMPTY_HREFLESS_A -VH
+* changes for win32 by Hiroyuki Senshu <senshu@shonai-cit.ac.jp> SH:
+  from
+    ftp://crab.it.osha.sut.ac.jp/pub/Win32/develope/senshu/Lynx/
+  based on his patch against 2.8.2pre.6
+  Most changes are ifdef'd
+    #define _WIN_CC=    .... for Windows C Compiler
+    #define CJK_EX      .... CJK EXtension
+    #define SH_EX       .... Senshu Hiroyuki EXtension
+    #define WIN_EX      .... Windows EXtension
+* add missing null-pointer check in MakeNewMapValue(), for verbose-images
+  (from Debian bug report #39596) -TD
+* test/build with gettext-0.10.35 -TD
+* renamed uppercase makefiles and .bat files to lowercase, change the makefiles
+  consistently to Unix-style format -TD
+
+1999-06-29 (2.8.3dev.3)
+* move HTAlert call so we don't get it each time we run the options menu -TD
+* entify messages in LYshow_statusline_messages() -LP
+* add -DNO_PORT to WWW/*/djgpp makefiles -DK
+  This is to make ftp work with new version of the WATTCP library as revised by
+  Igor Poretsky for building lynx with DJGPP.  The old version has been renamed
+  to "tcplibdj-old.zip".  For the new package, go to:
+    "http://www.rahul.net/dkaufman/tcplibdj.zip" or
+    "ftp://ftp.rahul.net/pub/dkaufman/tcplibdj.zip"
+* new option REUSE_TEMPFILES, see comments in lynx.cfg -KW
+* use P instead of invalid TR for right-aligned "LYNXMESSAGES:" link in HISTORY
+  page -KW
+* better support for accessing FTP directory listings on Windows NT FTP
+  servers:  try to switch MSDOS-like directory output off with SITE DIRSTYLE.
+  The price to pay for this is one or (probably more often) two more command/
+  response round trips -KW
+* added support for accessing FTP directory listings in "dls" style sent by
+  some OS/2 servers.  Only one server was known and used for testing, so the
+  heuristics used may not be quite general enough.  File date/time is not shown
+  since it doesn't seem to be part of the basic format -KW
+* in lynx.man removed bogus "ID:" for -assume_charset,
+  -assume_local_charset -KW
+* in a list, render a <DIV> that doesn't have an ALIGN="center" or
+  ALIGN="right" attribute like a <P> in that situation:  break the line if
+  necessary but don't create an empty line, an keep list indentation.  This
+  addresses Debian bug #21331 -KW
+* other changes for DIV:  it's a block element, so make sure its contents
+  doesn't get rendered inline, even for nested DIVs that don't change text
+  alignment.  Try to avoid improperly kept change of DIV styles' alignment by a
+  <P> or </P> in its content -KW
+* make "treating H# in a list as an LH" work also for SortaSGML parsing,
+  previously it only worked with TagSoup -KW
+* removed special handling for empty last field from LYstrsep(), which made it
+  act differently from (GNU) C library's strsep() -KW
+* macro DEFAULT_INVCHECK_BV for default invalid cookie checking behavior, can
+  be changed at top of LYCookie.c for those who really want that -KW
+* reorganize code for invalid cookie checking / prompting somewhat, it is
+  hopefully easier to follow now, and should result in more logical prompting
+  (or not) if a cookie is invalid for more than one reason -KW
+* change invalid cookie confirmation prompts to default to "no" answer.  This
+  can prevent the impression that Lynx hangs because the prompt is not
+  completely visible.  There should be a better way to ensure that all prompts
+  are recognizable as such (at least with "normal" screen widths) -KW
+* use more of the available statusline width for showing cookie name and value
+  in normal cookie prompts -KW
+* handle \" in quoted cookie values, so that the quote char doesn't end the
+  value string -KW
+* write quoted cookie values to cookie file with the quotes ('"' chars).  When
+  the cookie file is read, assume that quoted strings are quoted cookie values.
+  It would be better to have a separate flag stored, but we are limited by the
+  choice of the Netscape-compatible file format.  This should resolve Debian
+  bug #35523 -KW
+* handle empty value strings like any other cookie values:  they can be kept in
+  the cookie jar (in memory), and can be written to and read from the cookie
+  file -KW
+* more checking whether a line read from a cookie file is complete -KW
+* write out second field in cookie file lines a TRUE or FALSE depending on
+  whether the domain can be used for suffix matching or has to match
+  completely.  This seems to be how Netscape uses it.  We don't actually use
+  this field when reading a file (presence of a leading dot in the domain value
+  tells us what we need to know), but this should improve behavior for people
+  sharing a cookie file between Lynx and a Netscape browser (although such
+  sharing shouldn't be recommended) -KW
+* treat case as insignificant in cookie domains more consistently -KW
+* remove remnants of FROM_FILE domain behavior, it was unused -KW
+* add some clarifications in lynx.cfg regarding cookies -KW
+* entify strings when adding them to LYNXMESSAGES: stack -KW
+* save HTAlwaysAlert messages for LYNXMESSAGES: page -KW
+* generate TRACE output for prompts that use HTConfirm() or
+  HTConfirmDefault() -KW
+* make sure force_old_UCLYhndl_on_reload is initialized and reset properly -KW
+* minor tweaks (LYCharUtils.c, LYMain.c, LYPrint.c) -KW
+* flush Lynx.leaks file after writing each memory leak record but before
+  freeing the memory block, to ensure the info is on disk if something goes
+  seriously wrong (i.e., FREE causes a signal) -KW
+* more general checking in postoptions - `lynx LYNXOPTIONS:foo' now doesn't
+  crash -KW
+* revived dired "install" functionality, more or less as it was (apparently)
+  originally meant to be used, but with various checks added.  Compilation is
+  now conditional on new symbol OK_INSTALL.  The "install" function is the
+  closest we have to a "copy file" function, and could be used instead; the
+  actual command executed depends on macros INSTALL_PATH and possibly
+  INSTALL_ARGS, one can define INSTALL_PATH for example to "/bin/cp" before
+  compilation to effectively get something like a dired "copy" function.  Note
+  the the "install" function requires a special file in the home directory,
+  which can be customized, see samples/installdirs.html -KW
+* new function HTURLPath_toFile in HTFile.c.  Use it if we don't have a full
+  URL where HTnameOfFile_WWW was used previously, this avoids misparsing of
+  some unusual URL forms for files -KW
+* other changes for dired support (KW):
+  - various corrections with respect to URL-unescaping: don't escape
+    too often or too little, dired operations could fail on filenames
+    with special characters
+  - avoid some unnecessary copying and allocation for filenames
+  - avoid some more static buffers
+  - add some buffer overflow checks
+* make local directory display somewhat interruptible even without
+  partial page display -KW
+* make do_readme in HTFile.c 8-bit clean -KW
+* tweak in HTTP.c to avoid doing strlen() on received data that are to be
+  passed on raw; raw NUL bytes within the first block read could lead to data
+  loss -KW
+* change newly introduced CAN_ANONYMOUS_* at end of userdefs.h to be FALSE by
+  default, to get behavior with -anonymous that is equivalent to 2.8.2 -KW
+* handle some more common forms of mailcap $DISPLAY tests internally in
+  HTInit.c -KW
+* correct a problem which appears when the curses library causes FANCY_CURSES
+  to be defined but not COLOR_CURSES:  the code can call attrset() twice for
+  the same characters, thus replacing the original attribute with the new one.
+  Fix by using attron() instead (patch by Julian Coleman
+  <J.D.Coleman@newcastle.ac.uk>)
+* modify LYonedot() so it does not change its parameter, avoiding corrupting
+  the name to be zipped (reported by DK) -TD
+* modify LYDownload.c to skip over delimiter for file://localhost to avoid
+  treating it as part of the DOS filename -DK
+* alter LYExecv() to only do an HTAlert if the return-code is zero, i.e., an
+  error was reported.  This lets us reuse (and free) memory pointed to by
+  tmpbuf (reported by DK) -TD
+* remove redefinition of lstat() and change test of stat() function with DJGPP,
+  which returns nonzero rather than negative on failure -DK
+
+1999-06-18 (2.8.3dev.2)
+* move some of the path-manipulation from the DJGPP dired change into new
+  functions LYisAbsPath, LYisRootPath and LYLastPathSep -TD
+* dired support with DJDPP -Igor B Poretsky, DK, TD
+  (patch adapted by DK from Igor B Poretsky, (Some corrections/rework by TD
+  also - must retest).
+  Some notes from DK:
+  + since this is DJGPP based, it may be incompatible with a called program
+    that uses a WATCOM DOS extender.  I think I had this problem with a
+    precompiled binary for zip.  The current zip binary doesn't have this
+    problem.
+  + The key to making this work with DJGPP is the __sysflags = 0x501d in
+    LYMain.c, since this lets the system() call handle multiple commands on one
+    line and allows the cd command to work across disks.
+  + I didn't look at Igor's changes to LYMainLoop.c as regards to the HTUncache
+    calls.  He said he wasn't sure about this.
+  + This was tested with Info-Zip's zip and unzip, GNU tar, gzip, comp430d,
+    PKZIP, and PKUNZIP.  This was only tested when built with slang.  I don't
+    see where PDCurses is likely to cause a problem, however.
+  Problems:
+  + To make this work, I made lynx_edit_mode = TRUE in LYMainLoop.c.  This does
+    not seem to be the correct solution.  It seems that this should be handled
+    by the code in HTAccess.c, but I don't understand how this works.  If
+    lynx_edit_mode isn't true, the dired menu doesn't appear with the "f"
+    invocation of LYK_DIRED_MENU.
+  + I'll try to explain this briefly, but this bug is very reproducible.  If a
+    program is invoked from the dired menu which needs to interact with the
+    user, the system sometimes freezes and has to be rebooted.  For example, a
+    call to unzip a zip archive where the files already exist has zip ask if
+    the file should be overwritten.  If done initially after lynx is started,
+    no keystrokes are accepted and the system always hangs.  If, however, any
+    file has been moved or had its name changed via the dired menu, then the
+    above problem doesn't occur.  I have tried to see what changes after the
+    name change that fixes this problem, but I am stumped.  Gzip and unzip seem
+    to have this problem, but PKUNZIP doesn't.
+* correct most-recent LYNX_RELEASE_DATE (reported by KW) -TD
+* change touchline() call in LYOptions.c to touchwin() in case anyone wants to
+  compile with BSD 4.4 curses (reported by IC) -TD
+* modified ifdef for DECL_ERRNO to allow for errno to be a macro -TD
+* ifdef'd the extern declaration of h_errno in HTTCP.c in case that name is
+  also a macro, e.g., for threaded code (reported by Mike Gravitz
+  <ddavid@lamar.ColoState.EDU> on AIX 4.3.1.0) -TD
+* rename ALLOW_USERS_TO_CHANGE_EXEC_WITHIN_OPTIONS to keep the names less than
+  31 characters, and add configure option --enable-change-exec to set the
+  ENABLE_OPTS_CHANGE_EXEC ifdef -TD
+* correct syntax of popup_choices() within
+  ALLOW_USERS_TO_CHANGE_EXEC_WITHIN_OPTIONS ifdef (reported by IC) -KW
+* modified some message texts, mostly for consistency -KW
+* correct display of local file times in INFO screen -KW
+* add null-pointer checks for buf2 variable in
+  exit_immediately_with_error_message().  Invalid memory access happens if
+  access to startfile fails but first_file is not true -KW
+* change all ifdef's except on for VAX Ultrix that use the presumed predefined
+  symbol 'unix' to 'UNIX', which the configure script sets.  Not all Unix
+  systems define this in their compiler -TD
+  From compiler warning on NetBSD 1.4 (report by JES):
+    deprecated symbol "unix" is no longer predefined
+* add experimental file-upload, ifdef'd with EXP_FILE_UPLOAD and configured
+  with --with-file-upload (adapted from patch by RP) -TD
+* document use of '|' pipes in PRINTER commands in lynx.cfg -TD
+* add shell script man2hlp.sh, used that to generate lynx.hlp from lynx.man -TD
+* SOURCE_CACHE:  source_cache_file and source_cache_chunk are now members of
+  HTParentAnchor (where they should belong, not HText nor mutable globals).
+  Add one more parse setting member (verbose_img) to HText structure -LP
+* correct spelling of ifdef for reload_read_cfg() (reported by KW) -LP
+* minor docs tweaks -LP
+* test/{sgml.html, unicode.html} files were badly broken for tagsoup mode
+  (incorrect html: extra <pre>..</pre> were added inside PRE mode in dev26) -LP
+* fix back-slashes conversion for DOSPATH systems when expanding ~ to local
+  path (mostly affects information screen) -LP
+* correct default value for --disable-persistent-cookies configure option
+  (reported by HenSiong Tan <tan@stat.psu.edu>) -TD
+* uncomment --with-libjs configure option -TD
+
+1999-06-11 (2.8.3dev.1)
+> minor corrections by TD, patch from KW:
+* Key handling changes:
+  - Extended lynxkeycodes:  a bit flag is used to indicate that the lower bits
+    of the value already are a lynxactioncode and need not be looked up again.
+    Reduces need for back and forth forward and reverse binding lookups;
+    currently only used in some places.
+  - Extended lynxkeycodes:  several (currently three) bit flags are used to
+    indicate key modifiers.
+  - Added some macros for manipulating and mapping of these codes, see
+    especially LYKeymap.h, LKC_TO_LAC() etc.  Added some comments about the
+    various kinds of codes.
+  - Added several editaction codes and flags for setting key modifier on next
+    key (i.e.  for declaring keys as prefix keys, for the purposes of line
+    editing); for flagging a key for different action if same key is repeated;
+    for exiting input field line editing and passing a specific lynxactioncode
+    on; and for undoing 8-bit C1 -> 7-bit replacement transformation for some
+    chars.  Added code to line-editor implementation to react to these new
+    editactions.  Note that the mapping of lynxkeycode to lynxactioncode
+    outside of line editing, i.e.  KEYMAP in lynx.cfg etc., ignores the
+    modifiers.  The main loop just drops modifier flags or ignores the modified
+    key; modifier flags cannot be used in lynx.cfg KEYMAP 'keystroke' values.
+  - An ESC not recognized as part of an escape sequence can set the appropriate
+    modifier flag in LYgetch(), except for SLANG which normally uses a
+    different LYgetch() implementation.  Interpreting an ESC prefix as modifier
+    is very useful for situations where a held-down Alt key (or some other key)
+    is encoded this way:  linux console, kermit with emacs key mappings,
+    possibly xterm with '*eightBitInput:  false'.  OTOH it doesn't work for all
+    characters or in all situations.
+  - Extended syntax recognized in .lynx-keymaps file (which is only used if
+    compiling with USE_KEYMAPS defined, which in turn depends on slang and
+    ncurses version):
+    (a) Meta-foo can be used to map an escape sequence to a key + modifier.
+    (b) LAC:foo can be used to map an escape sequence directly to a
+        lynxactioncode (actually, to an extended lynxkeycode that
+        encapsulates a lynxactioncode).
+    See examples added to samples/lynx-keymaps.
+  - Extended syntax of KEYMAP option, additional field can override line-editor
+    behavior.  PASS documented in lynx.cfg.
+  - Extended syntax that can be used for specifying key in KEYMAP, some of the
+    forms allowed in .lynx-keymaps file are now additionally recognized, but
+    only if compiling with USE_KEYMAPS defined.  Left undocumented in lynx.cfg
+    (maybe subject to change).
+  - New "Bash-like" Line Editor binding.  Adds several new emacs-like editing
+    functions.  Adds tables for keys with modifiers (actually the same table is
+    currently used for all modifiers, to save some space).  Most notably, ^X is
+    a prefix key to set a modifier flag.  Keys with second function when
+    pressed twice are ^E^E and ^K^K.  ESC is also recognized as setting a
+    modifier flag, in case it gets through without been having been handled in
+    LYgetch().  See new file keystrokes/bashlike_edit_help.html for more info.
+    The Bash-like Line Editor Bindings are only compiled in if compiled with
+    -DEXP_ALT_BINDINGS / configured with --enable-alt-bindings (but not subject
+    to a new macro).  Implementation code for the new emacs-like functions
+    additionally ifdef'd with ENHANCED_LINEEDIT.
+  - Avoid dependency on DNARROW key binding when form field line-editing is
+    ended with Enter or Return key.
+  - Take setting of real_c/old_c into consideration after return from form
+    field line-editing.  Previously there were some strange effects:
+    statusline messages would sometimes not appear when they should, the KEYMAP
+    command would sometimes not work when invoked with ^Vk while in a form
+    field.
+  - Make NOCACHE ('x') work for TEXT_SUBMIT_TYPE form fields (i.e.  forms with
+    a single text input field where Enter automatically submits).  Of course
+    'x' has to be typed as ^Vx while line-editing the field (or NOCACHE mapped
+    to a different key).  Similarly allow DOWNLOAD, and HEAD to work for such
+    fields.  Try to ensure that all permission checks that apply to other form
+    submissions are also done for TEXT_SUBMIT_TYPE fields, this wasn't the case
+    before.
+  - New key actions LPOS_PREV_LINK and LPOS_NEXT_LINK.  They are like PREV_LINK
+    and NEXT_LINK, with the difference that, when moving to a form input or
+    textarea line, the last column position (relative to the field) is
+    remembered.  They are not mapped by default, but mentioned in lynx.cfg.
+  - New key action DWIMHELP.  It should give some context-sensitive help.
+    Currently the appropriate Line Editor Binding help page is shown if a form
+    input field is selected, otherwise it defaults to the main HELP page.
+  - New key action DWIMEDIT.  Revert meaning of EDIT back to previous meaning:
+    always edit document file, not textarea content.  DWIMEDIT acts like
+    EDITTEXTAREA if the current link is a form textarea or input field and
+    AUTOEXTEDIT was defined, and like EDIT otherwise.  Also added slightly
+    different statusline message if form field external editing cannot be done
+    because editing is disabled:  it shouldn't refer to "The 'e'dit command".
+  - Summary of reasonable ways to invoke external texarea editing (assuming
+    that it is desired to keep the action of 'e' to edit files at least outside
+    of input fields):
+    1) KEYMAP 'e' to DWIMEDIT, invoke ^Ve.  (if AUTOEXTEDIT is defined,
+       which is the case by default.)
+    1a) KEYMAP <some other key> to DWIMEDIT, invoke ^V<some other key>.
+    1b) KEYMAP <some other key> to EDITTEXTAREA, invoke ^V<some other key>.
+    2) KEYMAP a key (function or control, not printable!) to EDITTEXTAREA
+       or DWIMEDIT, using PASS in the KEYMAP line.
+    2a) Find some key whose LineEdit binding is already LYE_FORM_PASS, and
+        KEYMAP it to EDITTEXTAREA or DWIMEDIT.
+    3) compile with EXP_ALT_BINDINGS defined (--enable-alt-bindings),
+       select Bash-like Bindings,
+       invoke ^E^E or ^X^E (or ESC ^E aka M-C-e), or
+       invoke ^Xe (or ESC e aka M-e), or
+    3a) compile with EXP_ALT_BINDINGS defined (--enable-alt-bindings),
+        and without selecting Bash-like Bindings
+        (invoke ESC ^E aka M-C-e or ESC e aka M-e).
+    Bindings in parentheses under 3/3a may not work with slang unless a
+    tweaked .lynx-keymaps file is used.
+* Other changes related to textarea handling:
+  - More appropriate message statusline message if GROWTEXTAREA or INSERTFILE
+    cannot be done because a textarea is not selected:  it shouldn't refer to
+    "external editor".
+  - Check whether an editor is defined before trying to use it for textarea
+    editing.  Generate message if spawning of external textarea editor failed.
+  - Allow INSERTFILE only if file access is not restricted.
+  - Enforce dotfiles restriction and "show dot files" setting for INSERTFILE.
+* Mouse handling changes, mostly only if mouse support comes via ncurses:
+  - Re-enabled changing link by clicking in area *near* a link (but not on the
+    link text), but limit max.  distance to 2 character positions.
+  - Make mouse popup menu disappear when it should, by applying the right magic
+    touchline() in popup_choice().
+  - Lots of small tweaks to remove glitches in mouse handling, among them:  No
+    left scrolling of long input fields on entering with mouse.  Try to ensure
+    statusline is updated after mouse menu.  Make menu actions work as
+    expected.  Avoid acting on mouse events, especially invoking mouse menu, in
+    wrong context (e.g.  while at a prompt), at least in many places.
+  - Clicking on left or right border of mouse menu now only moves selection.
+  - At right end of top/bottom line, where single click causes HISTORY action,
+    double click now causes VLINKS action.
+  - Allow to distinguish between submitting and just positioning into a
+    TEXT_SUBMIT_TYPE input field.  Single click positions, double click
+    submits, 'activate' from menu also submits.
+  - When initializing ncurses mouse, call mousemask() with only those bits set
+    that we may actually be interested in.
+* Changes relevant for handling window size changes:
+  - For ncurses, changed the way how mainloop() notifies the curses library
+    about a window size change.  The approach taken previously, and still used
+    if we are not using ncurses, has more overhead, can unnecessarily switch
+    out of the alternative screen buffer (and back) under xterm, and didn't
+    really make ncurses update the WINDOW structures for the new size in time.
+  - Other tweaks for size change:  make sure curdoc.link is valid after
+    refresh.
+  - Detection of size changes in more situations:  tolerate EOF from GetChar in
+    the (non-SLANG) LYgetch_for() in more cases if errno is EINTR, if this
+    happens check for a size change and generate trace output.  Recognize
+    KEY_RESIZE from ncurses, check for a size change and generate trace output
+    when it occurs.
+  - Added NONRESTARTING_SIGWINCH lynx.cfg option and -nonrestarting_sigwinch
+    flag.  If set, lynx *may* react more immediately to window size changes
+    when running under xterm or similar.  Whether this actually has an effect
+    depends on the implementation of sigaction() and on the behavior of the
+    curses (or similar) library when a read() (or other system call) is
+    interrupted by signals.
+    Depends on '#if HAVE_SIGACTION', which currently has to be defined by hand,
+    for example by 'make SITE_DEFS="-DHAVE_SIGACTION"'.  The command line flag
+    is only available on systems with HAVE_SIGACTION and SIGWINCH.
+  - Tweaks so that lynx in an xterm can survive when the window size is made
+    (probably temporarily) very small, for example 1x1.  Avoid display_page's
+    work if it wouldn't be displayable anyway.  Make display_title handle very
+    small screen widths, at least to the degree that it doesn't crash.
+* Except for VMS or when DOSPATH is defined, set restore_sigpipe_for_children.
+  Fixes Debian bug #33853, maybe not really a bug but let's be nice.
+* Changes in HTTCP.c:
+  - Added a CTRACE_FLUSH before creation of NSL_FORK child process.
+  - Block certain signals during creation of NSL_FORK child process, if
+    sigprocmask() and friends are available.  This should prevent a rare
+    problem where sometimes the child process could be killed before it has a
+    chance to modify its signal handlers, resulting in screen corruption, a
+    seemingly hanging lynx, and/or other problems.  It is assumed that
+    sigprocmask() etc.  are available if HAVE_SIGACTION is true.  It currently
+    has to be defined by hand, for example by 'make
+    SITE_LYDEFS="-DHAVE_SIGACTION"'.
+  - Generate diagnostic messages for some failures of forked lookup.  Depends
+    on HAVE_H_ERRNO.  In particular, try to detect whether the child process
+    failed because of memory problems, and also fake a 'z' in that case to
+    short-circuit a URL guessing cycle.
+  - For most systems, generate more trace output for connection attempts, close
+    to the actual connect() and select() calls to prevent clobbering errno.
+    See SOCKET_DEBUG_TRACE.  This should help diagnose some obscure
+    system-dependent problems that have occasionally been reported.
+* Added some missing stuff for color handling to forms Option Menu code.
+* Printing to screen sometimes didn't show anything for short texts, if screen
+  output was buffered (and ncurses makes stdout buffered).  Added another
+  fflush(stdout) in send_file_to_screen().
+* Some checks for specific URLs (helpfilepath, lynxlistfile, and lynxjumpfile)
+  in LYGetFile.c were inappropriately case-insensitive for Unix.  The
+  comparison is now case-sensitive except for VMS.  This may need tweaking for
+  DOS and similar systems.
+* Added additional LYNoRefererForThis check in getfile(), the one in mainloop()
+  could be missed for TEXT_SUBMIT_TYPE form fields.  Also moved other check for
+  whether to send Referer header earlier, and made it apply for URL types that
+  might be proxied.
+* LYAddVisitedLink tried to regard documents with the same address but a
+  different title string as different documents, but this was coded wrong.
+  Removed ineffective comparison, but keep old title string if new title string
+  is empty.
+* Correct long-standing logic error in MAIL_SYSTEM_ERROR_LOGGING handling.
+  Apparently not many people are using it...
+* Fix for traversal code to put the right address into the TRAVERSE_REJECT_FILE
+  if a request fails after popping a document from the history stack (this can
+  only occur if a previous request for the same document had succeeded).  Also
+  don't try to send mail in such a case if MAIL_SYSTEM_ERROR_LOGGING is on.
+  Also prevent possible history stack underflow if this occurs on return to the
+  first document.
+* According to lynx.cfg, error logging mail may be sent to ALERTMAIL if no
+  document owner is known, but this was not implemented; now it is.  ALERTMAIL
+  is used if it is defined non-empty in userdefs.h.  Of course normally it
+  should be left undefined.
+* Fix for traversal code to reject form fields a bit earlier.  This prevents
+  unnecessary lookups as well as adding of an empty line to the
+  TRAVERSE_REJECT_FILE for each form field encountered.
+* Format -crawl output as was documented in CRAWL.announce:  with this switch,
+  link numbering is always off by default (userdefs.h and lynx.cfg defaults und
+  saved user preference are ignored) unless -number_links is given, and -crawl
+  -traversal format is now consistent with -crawl -dump with respect to link
+  numbering.  As a side effect, -crawl without either -traversal or -dump now
+  also turns link numbering off unless -number_links is used (the meaning of
+  -crawl without either of these was undocumented), so it then acts effectively
+  as a (less powerful) negation of the -number_links switch.
+* For -crawl -dump, the list of links was appended twice.  Fixed.
+* Check URL as well as title before deciding that a document should not be
+  pushed on the history stack because it looks like a generated special page.
+* Made "Don't waste the cache" optimization in historytarget() subject to
+  additional checks, to avoid uncaching of the wrong document in some cases.
+* LYSafeGets() would drop the last line from a file if it was not terminated.
+  Changed to return the unterminated line like fgets().
+* Clarifications on restrictions.  "download" does not imply "disk_save" while
+  "print" does, this doesn't seem to make much sense but has been the behavior
+  for a long time.
+* Restrictions inside_news, outside_news now apply to reading as well as
+  posting.  The documentation (except for the corresponding comments in
+  userdefs.h) said that they apply to posting, while in fact they were
+  implemented for reading only.  [Does nobody read this stuff???] Also, the
+  implementation only checked the flag for news:  URLs, but not for nntp:
+  URLs, which doesn't make much sense given that the latter provide an
+  alternative way for most (if not all) purposes of the first.  So now these
+  restrictions apply to news:, nntp:, newspost:, and newsreply:  (but not to
+  snews:, snewspost:, or snewsreply:).
+* Document -restrictions=externals.
+* Some of the restriction stuff not added to VMS lynx.hlp file, since I'm not
+  quite sure whether the corresponding features work there at all.
+* Changed restriction parsing so that "all" and "default" don't get ignored if
+  they appear as one of several items in the same list.
+* Implement listing of current restrictions to stdout with new -restrictions=?
+  option.  This should appear as the last command line option, otherwise the
+  effect of options appearing later may not be shown.  The '?' may require
+  quoting.
+* Made -restrictions= (without any option flags) act like -restrictions
+  (without equal sign either) as implied by documentation, i.e.  list
+  recognized restriction options.
+* LYRestricted has been greatly abused.  Once upon a time it was a PRIVATE flag
+  in LYMain.c (then called anon_restrictions_set), used only to get the
+  precedence of various command line options right.  Recently it has been
+  misused as a check (and as the only one) whether "anonymous restrictions" are
+  in effect.  This undermines various assumptions:
+  - that -anonymous is basically an aggregate set of restrictions which could
+    be specified individually with -restrictions=.
+  - that individually listed restrictions (-restrictions=...) act as expected,
+    and can be used to restrict various aspects in a useful manner.
+  - that -validate implies the strongest restrictions, except for what is
+    explicitly exempted (i.e. 'g'oto for http/https URLs).
+  Use specific restrictions instead:
+  - new "compileopts_info" for LYNXCOMPILEOPTS:  - for anonymous default see
+    userdefs.h
+  - new "lynxcfg_info" for LYNXCFG: - for anonymous default see userdefs.h
+  - new "lynxcfg_xinfo" for extended LYNXCFG: - for anonymous default see
+    userdefs.h
+  - new invisible "goto_configinfo" for LYNXCOMPILEOPTS: & LYNXCFG: for
+    anonymous default, see userdefs.h
+  - additionally check existing "option_save" for LYNXCFG://reload/ -
+    always restricted by anonymous default
+  ("invisible" means that this restriction cannot be explicitly listed in a
+  -restrictions=...  list, but has a value derived from userdefs.h that is used
+  with -anonymous and -restrictions=default.)
+* Forms options menu can now be used with -validate.
+* Allow following local help file links, even if "file_url" restriction is set,
+  from LYNXKEYMAP, LYNXCOOKIES.  (Possibly more need to be added.)
+* Apparently realm checking (with -realm option) is bypassed for URLs from
+  (some) form submissions (it seems to be intentional, but why?).  Made sure
+  this at least doesn't weaken -validate restrictions.
+* Apply -localhost check in getfile for news URLs that include a hostname,
+  i.e., that begin with with "news://".
+* Add '&' to nonalphanumeric characters forbidden by exec_ok() for lynxexec and
+  lynxprog URLs, but keep allowing it for lynxcgi.  There's not much point in
+  excluding ';' and so on if '&' is acceptable!
+* Tweaked LYNXMESSAGES:  handling slightly:  don't bypass normal getfile
+  handling.
+* Reset LYforce_no_cache flag in mainloop() after failed access, before popping
+  the previous (or, actually, probably currently still displayed) document.
+* Tweak for 'no data' handling:  it isn't always an error, but was sometimes
+  treated as such.  It mostly doesn't make a difference, except for the message
+  printed when the startfile cannot be accessed and for traversal and mail
+  error logging.  This needs to be revised to apply for all protocols.
+* Added new functionality for rules:  Redirect, UseProxy, various others.  See
+  cernrules.txt in samples directory for details.
+* Prevent crashes in HTNews.c with HEAD.
+* Allow HEAD requests for proxied URLs (checking whether any applicable proxy
+  begins with http:  or lynxcgi:), as far as this can be determined based on
+  regular environment settings (i.e.  unaware of proxying by rules).
+* Modified add_item_to_list() so that if the restriction flag is omitted from a
+  DOWNLOADER/UPLOADER/EXTERNAL line in lynx.cfg, it is assumed FALSE.  This
+  modifies the change of 1998-10-17 to be on the safer side, it is more
+  consistent with how PRINTER lines or lines with the colon separator present
+  but the flag value absent are handled, and it only makes a difference when a
+  -restriction command line option or its equivalent is in effect anyway.
+* Deal with unusual cases where telnet and similar protocols are proxied, or
+  possibly changed to a different type of protocol by rules.  Normally such
+  protocols should never be proxied, but there was no protection against it,
+  and lynx could crash.  The approach now taken does not disallow it, but just
+  tries to deal with the situation in a way that avoids crashing; it is
+  conceivable that one may want to direct e.g.  telnet or rlogin URLs to a HTTP
+  page that explains why theses types are not supported.  A similar problem
+  that occurred when e.g.  telnet was forbidden by a rule is also dealt with.
+* Protect start_curses calls in getfile against being executed if
+  dump_output_immediately is in effect.  Maybe access to telnet, rlogin,
+  lynxexec URLs should be completely disabled for this case; skipping the
+  start_curses at least avoids being left with non-restored tty settings after
+  the program exits, is someone attempts to use -dump or -source with such a
+  URL (the -dump or -source flags is then effectively more or less ignored).
+* Tweaks in fix_http_urls, renamed fix_httplike_urls.
+* Moved LYStrerror from LYStrings.{h,c} to HTAlert.{h,c}, so that it can be
+  used in HT*.c files without pulling in yet more LY*.h headers.
+* Reset 'safe' flag in anchor on parsing "Safe: no" and "Safe: false" headers.
+* The top makefile.in had some 'rm -rf' for whole directories $(helpdir) and
+  $(docdir) in install targets that could potentially wipe out unrelated files;
+  added checks to make sure the directories haven't been changed to something
+  not lynx-specific (they are regarded as lynx-specific if the last component
+  is lynx_help and lynx_doc, respectively).
+* Various doc tweaks.
+* Updated README.defines.  Other contributors should please add their stuff
+  there, too.
+* Additional non-option args (before the last one), i.e.  URLs or filenames,
+  are made available for 'g'oto recall.  If unwanted, this can be disabled by
+  changing EXTENDED_STARTFILE_RECALL in LYMain.c -KW
+* In UCChangeTerminalCodepage() used for --enable-font-switch with linux:  use
+  LYOpenTemp() etc.  instead of tempnam(), this avoids "Invalid pointer" with
+  LY_FIND_LEAKS and avoids leaving old temporary files hanging around in some
+  situations.  Also added some error checking -KW
+
+1999-06-01 (2.8.2rel.1)
+-----------------------
+1999-06-01 (2.8.2pre.11)
+* minor fixes from W3C HTML validation -TD
+* update links to HTML'ized lynxcfg in users' guide -VH
+
+1999-05-31 (2.8.2pre.10)
+* add links to HTML'ized lynxcfg to users' guide -LP
+* cleanup temporary files left by
+     lynx -dump LYNXCFG:// > /dev/null
+  (analysis by LP) -VH
+* add comments to lynx.cfg describing effect of restricting configuration
+  settings in nested includes -VH
+* delineate URL's in README with "<URL:" and ">", with space in lynx.man -LV
+* add some comments to lynx.lss -TD
+* minor improvements to configure script:  use newer config.guess and
+  config.sub from xterm, which adds case for HP 9000/800 (fix problem reported
+  by Peter Jones <jones.peter@uqam.ca>) -TD
+
+1999-05-29 (2.8.2pre.9)
+* use StrAllocCopy rather than HTSprintf in LYstore_message() because no
+  formatting is done there; the message may contain formatting controls such as
+  %s (related to bug report by Frederic L W Meunier <fredlwm@urbi.com.br>) -TD
+* add/use function LYRenamedTemp() to update our record of temporary filename
+  when using external decompression program, so we will remove the decompressed
+  file correctly on exit.  This is the usual case if we do not link with zlib
+  (reported by HN) -TD
+* modify LYValidateFilename() to derive original directory preferably from
+  Current_Dir() rather than environment variable $PWD, since the $PWD directory
+  may not be writable if Lynx is invoked from another application rather than
+  directly from the command line -TD
+* add/use function Current_Dir(), to check for failure in getcwd/getwd -TD
+* change ALL_LINGUAS assignment in configure script to use the .po file which
+  actually reside in the po directory, making it simpler to drop/add message
+  files from a distribution of Lynx.  Also, make the assignment contigent on
+  ALL_LINGUAS not being set externally, making it simple to override -TD
+
+1999-05-28 (2.8.2pre.8)
+* when reloading/reparsing the document with forms, issue a warning only when
+  user input is detected (forms content is changed from its default so
+  information will be lost).  New function HText_HaveUserChangedForms() is
+  called from HTReparse_document() and HTuncache_current_document() -LP
+* fix exit from postoptions() when need_reload is set but no source_cache,
+  was broken in dev23 -LP
+* remove unneeded float from integer calculations -LP
+* move comment for 'const' off the definition line, to simplify debugging
+  configure problem on HPUX for David Eaton -TD
+* move LYGetYX() out of conditional expression, just in case it cannot be
+  evaluated as a function, i.e., return a value (from bug report by David
+  Eaton) -TD
+* make install for COPYHEADER and COPYING work when the build directory is not
+  the top source directory -PG
+* add check to FastTrimColorClass() to avoid updating stylename and pointer
+  into it when the tag to be trimmed is not found (fixes a core dump reported
+  by VH) -TD
+
+1999-05-25 (2.8.2pre.7)
+* update illustration of forms options menu in Lynx User Guide according to
+  current lynx output -LP
+* old-style options menu:  hot key for "local e(X)ecution links" is now
+  displayed in bold (call addlbl() instead of addstr() like the other options
+  do), adapted from Hiroyuki diffs -LP
+* fix handling of incorrect html in psrc mode.  If a piece of html matched the
+  pattern "<known_tag_name unknown_attr_name any_attr_name>", then styles of
+  internal markup were unbalanced - resulted in cluttered colors -VH
+* comment-out (for release) configure option --enable-libjs -TD
+* change configure script defaults for --enable-persistent-cookies and
+  --enable-alt-bindings to 'yes' -TD
+* add DESTDIR variable to top-level makefile to facilitate packaging releases
+  with compiled-in pathnames -TD
+* further correction to VMS pathname in HFTPLoad.c, to translate /vms/fileserv/
+  to [vms.fileserv], for example.  The wku fileserver gives back a Unix-style
+  listing rather than VMS-style when given a Unix-style CWD, which confuses
+  Lynx into discarding the listing (reported by Andy Harper) -TD
+* modify LYCookies.c to append new items to the end of the list rather than
+  at the start, so cookies will be written and read from .lynx_cookies in
+  consistent order (reported by KED) -TD
+
+1999-05-24 (2.8.2pre.6)
+* fix for problem reported by LP -VH
+  Load an html file with META charset and switch "\" to source mode.  Now press
+  ^R to reload:
+  (1) In -prettysrc case you got a broken document (charset will be assumed by
+    lynx from assume_charset or assume_local_charset, not from a META charset
+    which was previously pushed with LYPushAssumed() so you get a problem with
+    8bit documents when assume_charset != META charset).
+  (2) Without -prettysrc you got a document handled properly via META charset
+    assumption.  Now if you press ^R again you will get a broken document.
+* LYK_SOURCE & HTreparse_document():  when using SOURCE_CACHE_MEMORY fix tiny
+  charset problem when switching to the source mode and the original document
+  have its charset specified.  Now aligned with SOURCE_CACHE_NONE and
+  SOURCE_CACHE_FILE.  More LYK_SOURCE fixes that might affect next coming
+  document in come cases (mainly Info page and Options menu, which now show
+  correct charset information) -LP
+* add CTRACE_FLUSH call before fork() in NSL_FORK logic so child's messages
+  will not mess parent ones -LP
+* add a few trace messages -LP
+* HTReadProgress message now display statusline properly in TRACE mode
+  (was always broken since early HTReadProgress days) -LP
+* install COPYING and COPYRIGHT for install-help rule as well as install-doc,
+  so we can refer to local copies of those files -TD
+* tweak HTParse trace message -LP
+* minor formatting change for Lynx_users_guide.html -SH
+* correct a few mismatches between variable declarations (char vs BOOLEAN)
+  (adapted from win32 version by Hiroyuki Senshu <senshu@shonai-cit.ac.jp>) -TD
+
+1999-05-20 (2.8.2pre.5)
+* correct links to COPYHEADER and COPYING in about_lynx.html, by pointing to
+  author's URLs, rather than to files which are not installed anyway -PG
+* shorten a couple of identifiers to keep with 31-character limit, i.e.,
+  hash_code_aggregate_lower_on_fly -> hash_code_aggregate_lower_str
+  LYprint_statusline_messages_on_exit -> LYstatusline_messages_on_exit
+  (reported by Andy Harper) -TD
+* correct VMS pathname in HTFTPLoad(), allowing connect to
+  ftp://ftp.wku.edu/vms/fileserv (reported by Andy Harper) -TD
+* chartrans:  cpXXXX Microsoft codepages verified against ftp.unicode.org -
+  apparently cp1256 (Arabic) was updated recently.  Although Arabic letters are
+  hardly useful for lynx (no right-to-left support) this codepage is supported
+  under chrtrans.  So update, just for fun -LP
+* fix core dump when starting "lynx LYNXOPTIONS:" command.  All phases of forms
+  options logic now handled by postoptions():  LYNXOPTIONS:/ without post_data
+  create a page (gen_options() now PRIVATE), LYNXOPTIONS:/ with post_data do
+  proccess changes as before.  Also LYK_ADD_BOOKMARK fixed:  forms options page
+  will not be added to bookmarks file -LP
+* modify HTGetRelLinkNum(), removing increment of HText_getTopOfScreen() value
+  so checks for line number begin at the very top of the screen, fixing a
+  problem reported when processing the 123[g][+-] command -LE
+* minor change to LYReadCFG.c to combine similar gettext'd strings -HN
+
+1999-05-16 (2.8.2pre.4)
+* add 'fixit' parameter to LYEnsureAbsoluteURL() to suppress logic in
+  LYConvertToURL() that was changed in 2.8.1dev.4, to re-offer the original
+  string after an invalid URL is entered at a 'g' prompt.  The calls to support
+  'g' are unmodified; other calls revert to the older behavior (recommended by
+  KW) -TD
+* add/use string functions that make EBCDIC comparisons sort in the ASCII
+  collating sequence, eliminating some special ifdef's in HTMLDTD.c -PG
+* when STARTFILE cannot not be loaded, lynx now exits with more understandable
+  status messages:  all important statusline messages are now printed to
+  stderr/stdout -LP
+* add definition for _DECC_V4_SOURCE for VMS SOCKETSHR_TCP configuration to
+  top-level and ./src build*.com files (reported by Andy Harper) -TD
+* change UNKNOWN_URL_TYPE to 1, to keep it distinct from NOT_A_URL_TYPE, fixes
+  an error introduced when changing UrlTypes to an enum (reported by KW) -TD
+
+1999-05-12 (2.8.2pre.3)
+* add DEBUG_SOURCE_CACHE makefile flag so all documents will be cached in
+  SOURCE_CACHE mode, including local files.  Normally undef'ed so only http
+  served documents cached with sources -LP
+* in LYK_HISTORY, set newdoc.link = 1 so position at link #2 bypassing "recent
+  statusline messages" link -LP
+* comment out "partial_thres=" option in .lynxrc (it was coded so the changes
+  from lynx.cfg file could not be activated) -LP
+* add a sanity check to LYCurses.h to point out problems with the FANCY_CURSES
+  configure checks -TD
+* fix uninitialized pointer used in decoding of -term switch (patch by Sergey
+  Svishchev)
+* define _DECC_V4_SOURCE for VMS SOCKETSHR_TCP configuration, to fix conflict
+  with unistd.h versus non-POSIX prototypes in the other headers (report by
+  Andy Harper) -TD
+* ifdef'd includes for HTUtils.h to limit size of preprocessor listings with
+  DEC C; verify that all header files include definitions needed for their
+  contents -TD
+* add docs/OS-390.announce (Paul Gilmartin)
+* add fallback extern declaration for h_errno to HTTCP.c for systems that have
+  that variable but do not declare it (reported by Jean-Pierre Radley
+  <jpr@jpr.com> for SCO OpenServer 5.0.5) -BL
+* correct SortaSGML element info: SPAN can contain SPAN -KW
+* fix several small memory leaks (John Bley):
+  + minor (~ 7 bytes) leak in LYCookie.c
+  + leak in the warning message about invalid cookies
+  + obvious leak in do_readme
+  + small leak in dired_options (LYLocal.c)
+  + leak with -selective option in HTFile.c
+  + a few leaks and a minor cleanup in local_dired
+
+1999-05-08 (2.8.2pre.2)
+* substitute a few more free()s with FREE()s in files HTString.c and
+  LYReadCFG.c -John Bley
+* fix buffer problems with long filenames and custom DOWNLOADERs -John Bley
+* fix typical alloc-fail-return-error-without-free leakage in
+  save_bookmark_link (LYBookmark.c) -John Bley
+* modify generated WWW/*/makefile and src/chrtrans/makefile to omit include
+  from intl directory if it is not used (report by LP) -TD
+* add configure test for h_errno, by splitting CF_ERRNO macro and reusing
+  test for external data.  Noticed that DECL_ERRNO was not defined/used,
+  added that as well.  The h_errno symbol is provided in some network
+  libraries, e.g., on SCO and Linux, but may/may not be declared (report
+  by BL) -TD
+* fix some serious lossage in lookup_reject (LYTraversal.c): memory and
+  logic errors.  This (replaced) line is one for the record books:
+      frag = strlen(buffer) - 1; /* real length, minus trailing null */
+  Previously, this code caused a read before an array boundary as well as
+  failing to compare the right number of characters in a pattern -John Bley
+* fix some minor leakage in the cookie jar -John Bley
+* fix up some casts and mode_t types in HTAAProt.c, HTFile.c, LYLocal.c,
+  LYUtils.c -John Bley
+
+1999-05-05 (2.8.2dev.26 - 2.8.2pre.1)
+* remove some weird cruft from HTAAUtil.h (yeah, "/home2/luotonen" is a good
+  default path) -John Bley
+* correct a buffer overflow in LYDownload.c (reported by John Bley) -TD
+* 8bit attribute values are now translated in psrc view (reported by LP) -VH
+* trailing ';' now is shown after HTML entities (reported by LP) -VH
+* split-up/correct typo in text at top of generated bookmark file -JES, -TD
+* allow anchors as input for commands 'g','G','E' -VH
+* correct off-by-one error in pointer to filename in DOSPATH configuration for
+  LYPathLeaf() -DK
+* fix infinite recursion bug in lynx.cfg includes, from dev.25 integration
+  (reported by LP) -VH
+* implement the following separators in lynx.cfg "include" commands
+  ":" on Unix
+  " for " on all OS's -VH
+* fixes for LYList.c,  adding title info to the (mostly unused) HTLinkType -KW
+* change remaining <banner>'s to <blockquote> in other html files, fix
+  a few escapes that tidy (15-apr-99) reports.  Leaving <tab>'s alone for the
+  moment because there appears to be no standard equivalent -TD
+* change <banner> in lynx-dev.html to <blockquote> since the latter is
+  standard, correct IEFT version and supply <p>'s as needed (Karl Eichwalder)
+* correct a couple of two documentation inconsistencies in the sources for
+  USE_PSRC and -prettysrc (Karl Eichwalder <ke@gnu.franken.de>)
+* register free_messages_stack with atexit to fix some statusline leakage,
+  explicitly fill out a struct initializer -John Bley
+* fix a few html nits in the docs -John Bley
+* cleanup some gcc -Wundef warnings -TD
+* add logic to free_lynx_cfg() to unset environment variables (requested by
+  LP) -TD
+* modify SafeHTUnEscape() to work with EBCDIC (Paul Gilmartin)
+* remove dangling comma in UrlTypes enum (reported by Paul Gilmartin) -TD
+* make description of STARTFILE in userdefs.h agree with lynx.cfg -TD
+* fix:  newline position when we come from the history stack and cached HText
+  is used (say, return from 'p'rint menu), was broken in dev23 -LP
+* remove numerous HTMLSetCharacterHandling() calls from getfile(), use single
+  call in mainloop instead -LP
+* #define PUTS() in LYCookie.c and LYMap.c to make code more readable -LP
+* fix:  LYmouse_menu() in LYStrings.c calls popup_choice(), which is #ifdef'd
+  out when --disable-menu-options is used (patch by Sergey Svishchev)
+* modify generated src/makefile to omit include from intl directory if it is
+  not used.  This in turn required fixing a redefinition of gettext on Solaris
+  when using cc, since the locale.h file includes Sun's libintl.h file which
+  prototypes gettext.  Successfully built/ran using Sun's msgfmt utility, (had
+  to manually add -lintl to src/makefile) though the generated message objects
+  are incompatible, resulting in a core dump if not reinstalled (unnecessary
+  include reported by LP) -TD
+* change VMS WWW descrip.mms file to use prefix=all rather than prefix=ansi, so
+  that POSIX functions such as 'read()' are linked properly (reported by Andy
+  Harper) this is a detail I overlooked in dev.18 -TD
+* fixes to compile with SunOS K&R cc -TD
+
+1999-04-27 (2.8.2dev.25)
+* updates to INSTALLATION -HN
+* undo some redundant dev23 changes, in particular PSRC_TEST in HText_new
+  was responsible for a wrong line breaking in -prettysrc mode
+  (try "lynx .  -prettysrc" and press "\" to see wrapping with altered
+  define).  Also fix Visited Links for internal pages -LP
+* restore links in lynx-dev.html to original form, to make redirection work
+  properly -TD
+* add to MAKEFILE.W32 (untested - suggested by LP) -TD
+  * definitions for DISP_PARTIAL;SOURCE_CACHE;USE_PSRC
+  * lypretty.obj to the list of objects.
+* remove CF_MAKE_INCLUDE from configure script, since it is not needed -TD
+* merge WWW/Library/Implementation/CommonMakefile into WWW/.../makefile.in -TD
+* corrections/simplification of LYSafeGets(), and remove sizeof(buf) from
+  related code in LYCookie.c (analysis by KW) -TD
+
+1999-04-23 (2.8.2dev.24)
+* added overlooked WWW/Library/Implementation/makefile.in -TD
+1999-04-23 (2.8.2dev.23)
+* add/use new function LYSafeGets to replace reads into fixed-size buffers -TD
+* change xxxx_URL_TYPE definitions in LYUtils.h to a enum -TD
+* use HTSprintf0 in LYCurses.c, LYReadCFG.c -TD
+* implement restrictions on options that can be set via the lynx.cfg "include"
+  directive -VH
+  For example, admins may specify
+    include:~/.lynx/colors:COLOR
+    include:~/.lynx/keymap:KEYMAP
+    include:~/.lynx/viewers:VIEWER
+  safely - and be sure that no critical options were altered by those files.
+  The syntax is
+    include:<filename>[:[<OPTNAME>* ] ]
+  More samples:
+    include:~/.lynx/rc:COLOR KEYMAP VIEWER SUFFIX
+    include:/usr/local/lib/lynx-cfg.part: #all settings can be changed
+  The patch does this:
+  * It prints warnings to stderr about unknown options specified in the list of
+    allowed options in include command.  When 'o'->'lynx.cfg'->'RELOAD THE
+    CHANGES' is activated, these warnings are also printed on stderr - so the
+    screen will be corrupted if lynx.cfg and included are incorrect.
+  * Only options, allowed for a given file are printed in
+    'o'->'lynx.cfg'->'RELOAD THE CHANGES'.
+  * Fully backward compatible - lines of the form
+	include:filename
+    will work as they did(i.e., if the list of allowed options is not
+    specified, then the included file can use the same set of options, as the
+    file that contained that 'include' command).
+  * If you wish to allow an included file to
+    include others, you must specify 'include' in the list of allowed options.
+    Sample:
+	  include:~/.lynx/suffixes:INCLUDE SUFFIX
+    so that users will be able to use 'include' command in '~/.lynx/suffixes'
+    (otherwise included file will be unable to include anything).
+  * Option sets are ANDed. If file lynx.cfg contains:
+  	  include:/usr/lib/lynx.cfg.0:COLOR SUFFIX VIEWER INCLUDE
+    and /usr/lib/lynx.cfg.0 contains
+        include:/usr/lib/lynx.cfg.1:SUFFIX VIEWER INCLUDE STARTFILE HELPFILE
+    then /usr/lib/lynx.cfg.1 can use the following options:
+	SUFFIX VIEWER INCLUDE
+* change the STARTFILE description in lynx.cfg to offer the user's home
+  directory as an alternative to lynx.browser.org (amended this to reflect
+  consensus that l.b.o should be the default) -TD
+* move a big chunk of code into print_status_message() -LP
+* also add numerous HTProgress messages to LYNXMESSAGES:/ page (but not
+  HTReadProgress) -LP
+* HTAlert, HTUserMsg and HTInfoMsg statusline messages are now stored in a
+  cycled buffer and accessible from the History Page as LYNXMESSAGES:/ link.
+  This allows us to decrease the messages delay in lynx.cfg when we feel
+  messages too annoying, but have a nice history list for diagnostic purposes.
+  Uses a 40-line buffer (suggested by Bela Lubkin) -LP
+* fix reloading with HTreparse_document() for LYK_MINIMAL, LYK_HISTORICAL,
+  LYK_SOFT_DQUOTES, LYK_SWITCH_DTD mainloop events (hope we work around replies
+  from POST properly) -LP
+* elaborate description in Lynx_users_guide.html for "comments" (Michael
+  Sobolev <mss@transas.com>)
+* fix --disable-trace (by making the ifdef's directly depend on NO_LYNX_TRACE
+  rather than DEBUG), chop more unneeded #includes -John Bley
+* combine WWW/Library/unix and WWW/Library/Implementation to simplify make
+  dependencies, drop Makefile.old -TD
+* fixes for DOS port - DK
+  (a) When exiting with interrupt, the message was printed in binary mode,
+      leaving the cursor in the middle of the screen
+  (b) In the PDCurses build, the keypad enter key only worked when LYK_ACTIVATE
+      was utilized, but not in GOTOLINK or GOTOPAGE.  This maps the keypad
+      enter to '\n', so it works in all situations, but keypad enter will no
+      longer be able to be mapped separately.  CTRL-PADENTER and ALT-PADENTER
+      can still be separately mapped.
+* various changes to userdefs.h and lynx.cfg explanatory text -KW
+* corrected placement of "partial_thres" code in LYrcFile.c, removed an unused
+  prototype in LYUtils.h -KW
+* add a note about LYNX_SAVE_SPACE to INSTALLATION -JES
+* remove docs/*.old (request by HN) -TD
+* update INSTALLATION notes for DJGPP with PDCurses; a suggested patch is
+  no longer applicable -DK
+* fixes for control/C and control/BREAK handling on DJGPP -DK
+* tweak in HTML_start_element case HTML_DT:  prevent generation of empty line
+  between multiple simple DT elements without intervening DD elements (Debian
+  bug #3846) -KW
+* add list of downloaders to lynx_help_main.html -PW
+* add attributes for {bq,blockquote}.cite,{frame,iframe,img}.longdesc,
+  {table,td}.background, td.{height,width} -VH
+* define DISP_PARTIAL for VMS (request by Andy Harper) -TD
+* include <unistd.h> for DEC C, to prototype sleep() and alarm().  Ifdef'd
+  include of HTString.h by HTUtils.h, but keep include as general rule for
+  making headers standalone (report by Andy Harper) -TD
+* modified LYrcFile.c to avoid putting '#' characters at the beginning of
+  lines, since that confuses VAX C (report by Tony Bolton) -TD
+* fix redefinition of h_errno (report by Tony Bolton) -TD
+* ifdef'd print_local_dir in HTFile.c since this function does not compile on
+  VMS (report by Andy Harper, Tony Bolton) -TD
+* fix reload_read_cfg() to avoid persistent cookies mode changing at run time;
+  reload printers list, downloaders list, environments - as expected - LP
+* fixes for SOURCE_CACHE!=NONE mode, trying to accommodate HTreparse_document()
+  for mainloop() events:
+  - add/use flag "from_source_cache" for better mainloop maintenance
+  - add partial display mode for HTreparse_document() operations
+  - add warning when the reparsed document may lose its forms content
+  - fix options menu stuff to use HTreparse_document() when possible - LP
+* fix exit from postoptions() when the reloaded document was in source mode -LP
+* update flags to correct behavior with SOURCE_CACHE!=NONE:  the length of the
+  re-rendered text may vary so the scrolling down is broken (especially nice
+  when switching to source).  ("more" updated, "lines_in_file" inlined) -LP
+* use configure script macro CF_CHECK_CACHE to compile-in Unix SYSTEM_NAME,
+  for info screen (request by LP) -TD
+* minor fixes for uncaching document, other items missed in dev.22 -LP
+* merge the two versions of start_curses() function -LP
+* add -DSOURCE_CACHE and -DUSE_PSRC to djgpp makefiles -LP
+* add a few words for CHANGES and INSTALLATION -LP
+* add a configure option for prettysrc -TD
+* separate ifdef's for prettysrc from color-style -LP
+* fix for -prettysrc:  when pressing '\' on non-local files, the prettysrc view
+  is shown, but there is no way out of this mode -VH
+* change all PUTS() with a string of length 1 to PUTC(), fix a uid_t/int
+  assumption in LYLocal.c, remove some unneeded #includes, remove some spurious
+  semicolons -John Bley
+* fix typo in configure --help for --disable-direct (reported by LV) -TD
+* update user's guide and lynx.cfg descriptions of jumps files - PW
+* fixes for related bugs tweaked by going to an internal page while viewing
+  source, and a few blurbs in the documentation -DSB
+* fixes to separate RAW_MODE from internal variable LYRawMode by adding new
+  variable LYUseDefaultRawMode -LP
+* add a missing null-pointer check in expand_tiname() (from report by KW) -TD
+
+1999-04-13 (2.8.2dev.22)
+* correct a missing include for LYLeaks.h in UCAuto.c -TD
+* implement HTML source caching.  In this implementation, each document kept in
+  cache has associated with it a temporary file containing the HTML source for
+  the document (well, not all of them -- only those using the HTTP protocol, on
+  the premise that file:// documents are probably local and ftp:// documents
+  are probably not HTML).  The temporary file is deleted when the document is
+  uncached.  For certain operations, instead of reloading the document via
+  HTLoad<mumble>(), the source file is reparsed with HTParseFile().  The cached
+  document also remembers certain parser settings (screen size, historical vs.
+  minimal vs.  valid comment parsing, and the like), and is regenerated from
+  source if it is fetched out of cache under different settings.  This behavior
+  is selectable by a configure option --enable-source-cache and by a lynx.cfg
+  option SOURCE_CACHE; I didn't add a command-line argument or an options menu
+  entry, as this didn't seem to be the sort of thing one would want to change
+  You had to challenge me, didn't you?  ;) Okay, after some pfutzing around
+  with HTChunks, I think I've got a working version of memory caching of
+  source.  The SOURCE_CACHE option now has settings FILE, MEMORY and NONE, with
+  the obvious meanings, defaulting to NONE.  (DSB - Scott Bigham
+  <dsb@cs.duke.edu>)
+* amend HTConfirmDefault() logic so that a second character will cause the
+  default response to be returned, e.g,. so that pressing "qq" will make
+  Lynx exit (reported by John Bley) - TD
+* change the PUTS("\n") calls in HTFile.c to PUTC('\n') since that would be
+  a little more efficient (noted by KW) - TD
+* minor cleanup: remove obsolete parameters from command-line parsing functions
+  in LYMain.c, add newlines in HTFile.c for readability of html - LP
+* change default STARTFILE to the current directory, "." - PW
+* revised lynx-dev.html - PW
+* lynx.cfg and further included cfg files can be edited from LYNXCFG:/ page
+  with the default editor and changes can be activated for the same lynx
+  session.  NOT allowed for restricted users (LYRestricted) and occasionally
+  for user mode other than ADVANCED.  This is an *experimental* code
+  (reload_read_cfg() in LYMain.c - more work required):  currently command-line
+  switches may be lost when overridden by lynx.cfg changes, file paths like
+  lynx_save_space and LYCookieFile should not be changed (unwanted results) -LP
+* retest PARSE_DEBUG ifdef's (LYMain.c, LYReadCFG.c), minor corrections
+  but found no specific reason for LP's problem with tables, except possibly
+  different effect from "&(value)" versus "(&value)" - TD
+* fix the problem of reading included lynx.cfg files by changing LYReadCFG.c
+  table signature (now it is more close to one in LYMain.c).  The problem was
+  the ignoring of *some* values got from the included cfg file (at least for
+  DJGPP2.02/gcc2.8.1 build).  Probably we calculate the addresses of variables
+  on a later stage now.  - LP
+* DOSPATH changes: local directory style now configurable from lynx.cfg
+  (LONG_LIST defined).  Unlike UNIX it is not "ls -l" by default
+  but a more compact form (date and size present, from lynx.cfg example) - LP
+* cookies:  domains now match case insensitively (reported by Paul Wagner
+  <paul.wagner@mci.com>) - LP
+* correct an ifdef in LYGetFile.c for config-page - LP
+* reading of long local directories now benefits from partial mode and fully
+  interruptible.  Split out print_local_dir() function from HTLoadFile() - LP
+* behave sanely if NSL_FORK fork() fails -BL
+* NSL_FORK try for dns_patience *seconds*, not dns_patience select() calls,
+  which might have been shortened by keyboard input  -BL
+* fix some screwy comment indentation -BL
+* add section on editing TEXTAREA to user's guide - PW
+* add a null-pointer check in LYCookie.c (Bill Nottingham <notting@redhat.com>)
+* revise changes ifdef'ing LY_FIND_LEAKS by making atexit a no-op function
+  since the DOS port depends on atexit to keep the DOS BREAK function properly
+  set on exit.  Put back atexit, and ifdef's each place where atexit isn't
+  needed except when finding leaks - DK
+* modify LYMain.c on DOS, fixing the determination of BREAK status to be
+  independent of SLANG or PDCurses - DK
+* spawn a new function, www_user_search_internals, to begin canceling the
+  effects of cut-n-paste coding in www_user_search.  The body of
+  www_user_search_internals used to be duplicated at two points in
+  www_user_search.  See comment in GridText.c for more details -John Bley
+* big pile of unneeded #includes removed -John Bley
+* remove obsolete files from the distribution -John Bley
+  WWW/Library/Implementation/HTWriter.*
+* one malloc check, fix --disable-ftp -John Bley
+* fixes for compiler warnings when building for OpenVMS 6.2 using DEC C and the
+  SOCKETSHR library (reported by Andy Harper) - TD
+* add cpp -H option for HPUX bundled C compiler, which otherwise does not
+  have enough symbol table space (reported by JES).  Also, modify ifdef's
+  for <stdarg.h> vs <varargs.h> to avoid including the former when ANSI_VARARGS
+  is not defined since HPUX had a broken <stdarg.h> - TD
+* changed OMIT_SCN_KEEPING ifdef to 0 (inactive) in LYCurses.c and in HTML.c,
+  still enabling the Style_className:HTML.c keeping and making lynx with lss
+  slightly slower than it could be (though faster then dev21).  If somebody
+  wishes to fix a bug, here is a description:  If contents of some tag that has
+  corresponding color style occupies more than 2 screens, after navigating to
+  the page, on which the content of that block starts, and then pressing PGDN
+  PGDN PGUP, the effect (color style) of that tag will be lost.  The same
+  (loosing style) happens when jumping to the anchor that is in such block and
+  is located not on the 1st page.  IMO this is something with style stack.  If
+  this will be fixed, then keeping of Style_className:HTML.c can be omitted
+  again -VH
+* fixed the bug in lynx with lss support -when displaying html pieces such as
+  <b> A <b> B </b> C </b>, only 'AB' was drawn in style corresponding to
+  <b> -VH
+* added HTML source syntax highlighting (when option -prettysrc that is added
+  is given to lynx). It's available for lynx compiled with and without lss
+  support (it can be much more beautiful when compiled with lss support - read
+  lynx.cfg for description). The code is ifdef'ed with USE_PSRC.
+  This functionality coexists with old source view and with -preparsed logic
+  (ie different commandline options make source view logic different) -VH
+* HTChunkPutc was inlined in SGML.c for better performance -VH
+* keeping of Style_className was omitted in HTML.c to increase performance of
+  lynx compiled with lss support -VH
+* performance of lynx compiled with lss support is increased ~ by 15-20% for
+  normal documents, and by up to 50% for documents with a lot of tags -VH
+* fixed bug in lynx compiled with lss support  that caused it to load local CSS
+  stylesheets - lynx didn't understand their syntax so it was exiting -VH
+* added type information for attributes in HTMLDTD.c (it's used in source
+  syntax highlighting mode) -VH
+* sample .lss files are updated to support source syntax highlighting -VH
+
+1999-03-30 (2.8.2dev.21)
+* disable LYatexit if memory-leak testing is not configured -TD
+* fixes for unhighlighting problems with color-style support (Vlad Harchev)
+* remove '(default: on)' and '(default: off)' strings from configure script
+  help message (much lynx-dev discussion) - TD
+* remove outdated link to the WebTechs HTML Validation Service from help menu
+  and change link to more suitable location for rfc1945 - PW
+* correct logic of --disable-full-paths configure option (reported by Georg
+  Schwarz) - TD
+* fix problems building on OpenVMS with DECC 6.2 -TD
+  (reported by Andy Harper <Andy.Harper@kcl.ac.uk>)
+  + remove 'DEBUG' definition from build scripts since it is defined in
+    the source code.
+  + turn off code that tries to use getpwuid(), by defining NOUSERS, since
+    those functions are not present on VMS.
+  + provide a dummy location for h_errno for systems without that symbol.
+  + correct string syntax in VMSexit function
+  + ifdef'd use of lynx_version_putenv_command in LYMain.c
+  + correct spurious parenthesis in mailform function
+  + correct missing COPY_PATH definition for LYUtils.c
+* check for 'z' user interrupt in HTLoadHTTP before setting up the output
+  stream.  This avoids doing unnecessary work, including possible creation of a
+  new HText structure that most likely is never displayed but still pushes
+  another document out of the.  cache.  Most commonly this occurs when a HTTP
+  error response is received and the user presses 'z' while the resulting alert
+  message is shown - KW
+* fix of HTUnEscapeSome in HTParse.c for non-ASCII - KW, PG
+* tidy up around ed_offset initialization in GridText.c - KED
+  (the patch as given did not compile on a non-ANSI compiler because it used
+  aggregate initialization - TD)
+* add samples/mild-colors.lss (Vlad Harchev)
+* add samples/blue-background.lss (from Sergey Svishchev <svs@ropnet.ru>)
+* documentation updates for INSTALLATION and PROBLEMS - PW
+* use HTConfirm and HTConfirmDefault to gettext'ify CONFIRM_BOOKMARK_DELETE,
+  CONFIRM_COMMENT, CONFIRM_LONG_PAGE_PRINT, CONFIRM_LONG_SCREEN_PRINT,
+  CONFIRM_MAIL_SOURCE_PREPARSED, CONFIRM_MAIN_SCREEN, FILE_EXISTS_HPROMPT,
+  FILE_EXISTS_OPROMPT, NO_OWNER_USE, PREV_DOC_QUERY, REALLY_EXIT_N,
+  REALLY_EXIT_Y, REALLY_QUIT_N, REALLY_QUIT_Y (based on report by LP) - TD
+* at LYNXCFG:/ page, add links for every included configuration file so we can
+  read and edit them (no, currently the changes will be active the next session
+  only.  Minor reorganization of LYMain.c done, more required) - LP
+* correct test/spaces.html - it should not be in a <PRE> mode by default - LP
+* undo recent &emsp; changes so it is a single space as before (suggested by
+  KW) - LP
+* add ETag anchor element (currently not used, only for information) - LP
+* assign LYNXCFG:/ and LYNXCOMPILEOPTS:/ for internal pages of parsed lynx.cfg
+  and compile-time info.  Now we will not see a temp file link name in a
+  statusline in advanced mode, also kill overhead since pages created only when
+  really accessed - LP
+* form-based options menu:  the bug described in 1999-03-17 changes now finally
+  fixed - LP
+* fix expanding entities for x-transparent display charset
+  (was broken from 1999-03-04 changes) - LP
+* trimmed trailing blanks from *.tbl, fixed chrtrans/def7_uni.tbl and
+  chrtrans/viscii_uni.tbl, ensure that it produces correct result - TD
+* chrtrans/def7_uni.tbl - entries with trailing spaces now explicitly enclosed
+  in quotes to avoid problems with integrating the patches sent by e-mail,
+  more comments added - LP
+* attempt to implement --disable-ftp -John Bley
+* fix tiny memory leak in HTAAUtil.c -John Bley
+* chop useless #includes from LYHash.c, LYExtern.c, LYCurses.h -John Bley
+* --disable-news was also disabling ftp, --disable-finger without
+  --disable-gopher wasn't right -John Bley
+* remove a duplicate #include from HTFTP.c -John Bley
+* remove several obsolete files from the source distribution -John Bley
+  WWW/Library/Implementation/HTAAServ.*
+  WWW/Library/Implementation/HTAAFile.*
+  WWW/Library/Implementation/HTAuth.*
+  WWW/Library/Implementation/HTACL.*
+  WWW/Library/Implementation/HTPasswd.*
+  WWW/Library/Implementation/HTHistory.*
+* --disable-partial wasn't compiling because of a suppressed #include, replace
+  one more free() with FREE() -John Bley
+* correct typo LIsListpageTitle vs LYIsListpageTitle
+  (reported by Artur Frysiak <wiget@usa.net> and KED) -TD
+* don't append sed expression to help_files.sed if the $(COMPRESS_EXT)
+  variable is empty - TD
+
+1999-03-17 (2.8.2dev.20)
+* protect a couple of spaces with quotes in def7_uni.tbl (suggested by KW) - TD
+* add ifdef's for NO_RULES to HTAAServ.c - HN
+* add configure --disable-news option - JES
+* add configure --disable-finger option - JES
+* add malloc checks, remove some #includes that don't need to exist, and
+  cleanup where somebody decided to waste instructions setting fields to 0 when
+  he already memset()ed the whole struct to 0 -John Bley
+* remove obsolete/unmaintained SHORT_NAMES ifdef's -John Bley
+* add/use LYTrimStartfile function (suggested by LP) - TD
+* correct missing null-pointer check in add_printer_to_list function (forwarded
+  by BJP from Debian bug-reports) - TD
+* add notes about $CC variable to INSTALLATION and PROBLEMS - JES, PW
+* tweak for TABLE formatting: break line at </TR> end tag (don't wait
+  for next <TR> start tag), effective in SortaSGML mode only - KW
+* lots of color style changes, only effective if compiled with USE_COLOR_STYLE;
+  together they seem to make color styles act much more reliably and
+  consistently - KW
+  - Moved some extern definitions and declarations.
+  - Made extra handling for LINK REL (or TITLE) attributes consistent
+    with example lynx.lss file.
+  - More complete (and hopefully more consistent) setting of "normal"
+    attributes, especially background color, on screen refresh and after
+    statusline messages.  Set normal attributes for statusline prompts.
+  - Various other small tweaks, mostly to not lose color changes in a
+    document and to avoid color leaking.
+  - Attributes for highlighting WHEREIS search targets can be controlled
+    by setting style for "whereis" in lynx.lss.
+  - Allow mono attribute field in lynx.lss to be a combination of several
+    attributes separated by '+' characters.
+  - Changes of example lynx.lss file: more logical ordering, added some
+    comments, document new stuff.  Changed a few styles for demonstration
+    purposes or because text was really hard to read.
+* apply color styles to HTML source display, using the same methods as
+  for displaying the rendered version.  This is done if and only if
+  the -preparsed flag is used (and lynx is compiled with -DUSE_COLOR_STYLE,
+  of course).  Please remember that the source displayed with -preparsed
+  is *not* the same as the original text/html document, it has been
+  mangled by lynx (as the name implies) and may itself not be a valid
+  HTML document even if the original was - KW
+* changed some slightly suspicious casts in HText_endAnchor's casting hell;
+  prefer to cast a line's size element to (int), rather than various int
+  variables to (unsigned) - KW
+* remove some unnecessary use of dynamic buffers where there is no apparent
+  benefit for using them, for the sake of performance or to avoid a minor
+  memory leak - KW
+* stuffed small memory leak (MultipartContentType) - KW
+* absorb 'len' parameter into logic of argncmp, so it still achieves its
+  purpose of comparing prefixes of options without undue maintenance effort -TD
+* retain logic that uses final URL on command-line (request by KW) - TD
+* add/use new functions argcmp and argncmp to allow the use of '--' prefix as
+  well as '-' for commandline options.  This means that '-localhost' and
+  '--localhost' mean the same thing for lynx.  If EXTENDED_OPTION_LOGIC is
+  defined then the extended commandline option logic will be used.  It means
+  that '--' will be accepted and will be treated as an end of options.
+  Anything after it will be treated as URL even if begins with '-' or '--'
+  (Vlad Harchev)
+* correct some typos in docs and in scripts (Vlad Harchev <hvv@hippo.ru>)
+* modify generated sed script to handle special case of alt_edit_help.html,
+  which was being rendered in --enable-gzip-help as alt_edit_help.html.gz.gz
+  (reported by KED) - TD
+* modify lynx_help/help_files.txt to update links to gzip'd versions of
+  alt_edit_help.html, environments.html, test_display.html - KED
+* tweak for SGML_LITTERAL (sic) parsing, so that the first nonmatching
+  character after the beginning of a putative end tag goes through character
+  translation - KW
+* add some more pieces of info (if available) to '=' page in advanced user
+  mode.  Also show mode as "source" instead of "normal" if viewing SOURCE, in
+  all user modes - KW
+* minor FASTBACKW_LINK / FASTFORW_LINK tweaks - KW
+* removed documentation for nonimplemented chargen URLs - KW
+* remove num_n256 hack introduced in dev18 UCDomap.* - LP
+* forms-based options menu: fix reloading of previous document *only* when
+  necessary (was always, since early forms-based options menu days).  Still
+  have a bug - while submitting the options menu lynx reload menu again, but
+  this is much faster to load small local file twice than fetch previous
+  (possible large) document over the net.  - LP
+* &mdash; (&#x2014) now display as "--" (popular requests) - LP
+* &emsp; are now displayed as two &ensp; (popular requests),
+  previous definition of HT_EM_SPACE now renamed to HT_EN_SPACE - LP
+* minor tweaks in postoptions(), new flag added - LP
+* minor changes to make this build with SunOS K&R cc - TD
+* entities.h:  clean HTML4.0 entities table added, it is #ifdef'ed with
+  ENTITIES_HTML40_ONLY (may be useful for page validation), file entities.h
+  moved to src/chrtrans directory - LP
+* save few KB of static memory by storing unicodes as 'u16' (was 'long') - LP
+* trace log toggle now really interruptible - LP
+* move entities.h to src/chrtrans - LP
+* fix display of -help output: (on/off) info was wrong for UNSET_ARG case - LP
+* ifdef'd recent changes to LYPrint.c to build with djgpp - LP
+* remove redundant -DDEBUG from djgpp makefiles - LP
+* remove nonstandard ISO-9945-2 - LP
+* eliminate a duplicate --enable-included-msgs in configure --help, (reported
+  by LV) - TD
+* redefine LY_BOLD_START_CHAR for EBCDIC platforms to avoid conflict, adjust
+  IsSpecialAttrChar() to take this into account - PG
+* rewrite LYKeymapCodes with leading commas to avoid accidental/illegal
+  use of trailing comma in an enum list - PG
+* modify UCdomap.h to avoid gcc-specific construct using cast to struct of
+  data aggregate - PG
+* modify makefiles to allow .c.i rule to work with --srcdir - PG
+* add a rule to makefile.in to generate patches - PG
+* correction to LYCookie.c, to get it to eat all cookies (reported by LV) - BJP
+* corrections/updates to entities.h (Jacob Poon):
+  HTML 4.0 compliance:
+  - Added support for Euro currency symbol.
+  - Fixed duplicated &loz; definitions.
+  Fixes:
+  - Fixed some typos in the old references. (fixed: b.delta)
+* update follow_help.html for LE's 123g changes - PW
+* further correction to 123g logic - LE
+
+1999-03-04 (2.8.2dev.19)
+* forgot to update PRCS when renaming src/chrtrans/iso9945uni.tbl - TD
+1999-03-04 (2.8.2dev.18)
+* modify configure script to recover if the intl and po directories are
+  missing, allow experimentation with --enable-nls --disable-included-msgs
+  --without-included-gettext options (request by HN) - TD
+* add sanity-check for EBCDIC FixCharacters() in LYMain.c - PG
+* ifdef'd the ADDRLIST code with EXP_ADDRLIST_PAGE, making this available as
+  a configure script option --enable-addrlist-page - TD
+* create a new command called ADDRLIST, which behaves exactly the same as LIST,
+  but which *should* always show only the URL's.  Rather than make it a config
+  option (which would have taken me quite a bit longer to do), I've bound it to
+  the "A" key (that's a capital "A").  Why not "L" you ask?  Because of the "vi
+  keys" option, whereby "l" is used for cursor movement, and "L" stays reserved
+  for L(ist) - KED
+* change the LYK_xxx keymap definitions to an enum, to simplify ifdef's - TD
+* add configure options --disable-gopher, to remove GOPHER code, and
+  --disable-trace to remove TRACE code - JES
+* modify trace log header to always inform us if anonymous restrictions are
+  set - LP
+* chartrans: old-style declarations of charsets which do not have Unicode
+  tables (CJK, x-transparent, also UTF-8) now moved from LYCharSets.c to
+  UCdomap.h and now included with UCInit() in UCdomap.c in a standard way - LP
+  (Please re-test CJK and UTF-8)
+* add configure --enable-libjs option (Lalo Martins <lalo@webcom.com>)
+* add checks for some more LINK tags as listed in "6.12 Link types" of the HTML
+  4.0 Specification (Masayasu Ishikawa <mimasa@isoternet.org>)
+* changed the effect of some LINK tags with REL attribute of a very relative
+  character (Up, Next, Prev, ...) on titles as they appear e.g.  on the LIST
+  page:  the title of the target HTParentAnchor isn't being set when such a
+  LINK tag is parsed, but the relation is now stored as a property of the
+  link itself rather than its destination.  The LIST page shows the relation
+  as additional info, not superseding a URL or title string obtained
+  otherwise - KW
+* move commands in top-level makefile.in which clean *.rej and *.orig from
+  'distclean' rule to 'maintainer-clean', make distinct from the @SRCDIR_CLEAN@
+  substitution which is intended for use with the configure --srcdir option
+  (from reports by Glenn E Thobe <thobe@lafn.org> and BL) - TD
+* correct LYRemoveTemp() to close file before attempting to remove it; else
+  the remove fails on some platforms, e.g., DOS/Windows (report by KW) - TD
+* improved documentation for the new cookie options, e.g,.
+  COOKIE_ACCEPT_DOMAINS, in lynx.cfg - BJP
+* fix some memory leaks in LYCookie.c - BJP
+* modify 123g (and similar movement) commands to allow for relative links,
+  e.g., by using a '+' or '-' after the 'g' - LE
+* modify help_files.sed to include '$', making regular expressions work for
+  HP-UX (Jens Schmalzing <jens@stat.physik.uni-muenchen.de>)
+* add a comment to aclocal.m4 to show where patches for autoconf, needed for
+  this configure script, can be found - JES
+* add toggling trace log on/off in partial mode, when the downloading is still
+  in progress - LP
+* more consistent docs for debugging of invalidly nested HTML:  important trace
+  messages from actions on invalid tags now have '***' prefix such as "SGML:
+  ...  ***ignored" (well:  illegal, forced, assumed, etc.), -preparsed mode now
+  better documented - LP
+* minor code cleanup: remove redundant includes, fill in 0's for some static
+  data initialization -John Bley
+* add 'joe' editor, and variants, to list of those editors that are assumed to
+  position the file to a given line number using the "+line" command-line
+  option - IC
+* remove redundant "(y/n)" substrings from LYMessages_en.h - LV
+* add new command named GROWTEXTAREA which adds 5 new blank lines to the bottom
+  of a TEXTAREA when executed.  It does not have a default binding, so you need
+  to add a KEYMAP for it in your lynx.cfg.  The number of lines added is fixed
+  by a #define, but 5 seems to be a "reasonable" increment to use - KED
+* add new command named INSERTFILE, which (obviously) inserts a file's contents
+  into a TEXTAREA, just above the line the cursor is on when invoked (which
+  means you cannot insert a file *below* the final existing TEXTAREA line ...
+  but see 1) and 3) for easy ways to over- come this limitation).  It too, has
+  no default binding, so a KEYMAP entry is also needed for it - KED
+* by default, when the cursor is on the last line of a TEXTAREA, if you hit the
+  ENTER key, a new line will be added to the TEXTAREA, with the cursor
+  positioned on it.  If that should happen at the bottom of the screen, a
+  DOWN_HALF scroll operation is (effectively) performed - KED
+* ifdef'd this feature (since at least one person objected to this automatic
+  behavior when it was discussed awhile back - BL?), for easy disabling (and to
+  make adding a ./configure option easier).  The symbol is AUTOGROW is
+  #define'd in LYMainLoop.h - KED
+* added an ifdef for the code that causes the external editor to be
+  invoked "automatically" on the TEXTAREA contents when ^Ve (or whatever
+  the EDIT binding is), rather than attempting to invoke it on the .html
+  source file.  This should allow adding a ./configure option to control
+  this behavior, until we come up with a different binding/mechanism to
+  do the job, that we can all agree on.  The symbol AUTOEXTEDIT is also
+  #define'd in LYMainLoop.h.   The command EDITTEXTAREA is still available
+  for separate KEYMAP binding, per KW's suggestion - KED
+* check the range of chars between 0x80 and LYlowest_eightbit[current_char_set]
+  for validity against the charset in use.  If such chars are detected in
+  edited or inserted data, a "." char is substituted for them, as with normal
+  control chars.  (Suggested by LP) - KED
+* added KW's LYCloseTempFP bugfix - KED
+* add/use function GetFileName(), e.g., by INSERTFILE.  It is fairly general
+  purpose, and can be used whenever the name of an existing file needs to be
+  input.  It uses the same mechanism for filename expansion and "history" as
+  does the PRINT function - KED
+* reorganized a lot of the code into subroutines to provide for 1) and 2);
+  still need to do a bit more cleanup of some other (nearly) common code - KED
+* rename iso9945_uni.tbl to iso9945uni.tbl to accommodate 'make' programs on
+  old systems (such as CLIX 3.1) whose suffix rules fail for filenames longer
+  than 14 characters - TD
+* change VMS WWW build-script to use prefix=all rather than prefix=ansi,
+  so that POSIX functions such as 'stat()' are linked properly (reported by
+  Morris D Cox <coxmd@appstate.edu>) - TD
+* modify configure macro CF_EBCDIC to avoid using #error, since that is not
+  recognized by all compilers - TD
+* include <sys/types.h> in CF_INET_ADDR macro, to accommodate systems which
+  require that to compile test program with the socket.h, other network
+  headers - TD
+* removed a cast in free_lynx_cfg, on FREE's argument, which caused some
+  compilers to report that an rvalue was being modified (reported by PW) - TD
+
+1999-02-16 (2.8.2dev.17)
+* modify LYReadCFG.c to avoid duplicating data for cookies - BJP
+* modify HTConfirm to use gettext values for yes/no.  Use HTConfirm in a few
+  more places, though completing this will require more work - TD
+* add note about resolv library to PROBLEMS - PW
+* minor clarification about DOS/Windows binaries in README - PW
+* modify ./makefile.in so that portions which are commented-out will be done
+  without a leading tab, since that confuses the make program on Digital Unix
+  3.2 - TD
+* Unix: Don't accept HOME variable as valid if it does not begin with
+  a slash - KW
+* changed HTGetCharacter to be 8-bit clean, it could not distinguish between a
+  character value 255 and EOF.  Changes affect several protocols:  nntp,
+  gopher, finger, ftp.  Most notably, news articles containing byte value 255
+  could not be completely read - KW
+* removed a memory leak in HTFTP.c for some directory data, added a few gettext
+  calls - KW
+* added ability to show file type description in local Unix directory listings.
+  New format codes for use in LIST_FORMAT %t, %T are not used by default - KW
+* modify "clean" makefile rule to allow for FreeBSD, which generates core
+  files such as lynx.core - KED, TD
+* correct sign-extension when converting characters after edit of TEXTAREA
+  (upper-128 characters were being translated to dots, reported by IC) - KED
+* worked with some pathological/boundary-case pages, and fixed some some edges
+  that could fail (eg, last line of document is also last line of a TEXTAREA,
+  and lines are being added; page containing *only* a one-line TEXTAREA field;
+  etc).  While it was unlikely one would run into such beasts in real life,
+  they all work correctly now.  Thanks to Greg Marr and Serge Munhov for
+  providing some very basic pages that I was able to easily modify for various
+  test cases - KED
+* added a few flags to the TextAnchor and HTLine struct's, to indicate an
+  expansion line.  These were added to allow for line deletion when a TEXTAREA
+  is "reset" or shrinks (when we get around to tackling those tasks) - KED
+* the editor's cursor is now positioned on the same line in the edit file, as
+  it was on when the editor was invoked (relative to the beginning of the
+  TEXTAREA).  At least for those editors that lynx knows support initial
+  positioning (emacs, vi, pico, jove, and jed for non-VMS platforms; sedt for
+  VMS) - KED
+* cleaned up and corrected a few comments; simplified a few small bits of
+  code - KED
+* added cookie_domain_flags enum to LYCookie.h, usage should be apparent with
+  patch applied - BJP
+* updated free_lynx_globals() for cookie variables - BJP
+* replaced cookie_add_acceptlist, cookie_add_rejectlist and
+  cookie_set_invcheck functions with cookie_domain_flag_set - BJP
+* saved a bit of memory by dropping useless pointer memory initialization
+  (exactly WHAT was I thinking?)  - BJP
+* changed LYrcFile.c, LYReadCFG.c to call cookie_domain_flag_set  - BJP
+* new lynxkeycode BACKTAB_KEY with value 0x10F.  DO_NOTHING is and shall remain
+  0x10E, as documented in lynx.cfg.  Moved MOUSE_KEY out of the way - does it
+  need to be in the tables at all?  BACKTAB_KEY will be recognized if the
+  (n)curses keypad() input handling returns KEY_BTAB, which happens if the
+  terminal description has the right kB or kcbt capability string and the
+  terminal actually generates that string (often "^[[Z", generated for
+  shift+tab).  May also work with lynx-keymaps mechanism.  Not tested with
+  slang, maybe this has to be added to some more of the various tables in
+  LYStrings.c - KW
+* new user-visible key commands FASTFORW_LINK and FASTBACKW_LINK, with
+  lynxactionscodes LYK_FASTFORW_LINK and LYK_FASTBACKW_LINK.  By default mapped
+  from <tab> key (^I) and new BACKTAB_KEY, respectively.  Previously <tab> was
+  mapped from NEXT_LINK, which has some special handling if the invoking key
+  was <tab> (and if FASTTAB was defined in LYMainLoop.c, which was the case by
+  default).  The old behavior of <tab> is still available if it is mapped with
+  KEYMAP to NEXT_LINK in lynx.cfg - KW
+* these commands always go to a previous (or next) link if there is one,
+  and skip multiple lines that are part of the same textarea - KW
+* recognize the new key actions also during partial file display, for some
+  roughly corresponding movement - KW
+* new lynxeditactioncode LYE_FORM_PASS, to allow any lynxkeycode to end the
+  editing of a form field and be passed up to the caller - it will then
+  normally be mapped to a lynxactioncode.  LYE_FORM_PASS keys are generally
+  ignored in non-forms line editing.  This is used for BACKTAB_KEY, as well as
+  several other keys that were previously handled specially in form_getstr - KW
+* extended the maps in LYEditmap.c to cover the same range of lynxkeycodes as
+  the LYKeymap.c tables.  Yes, this uses more space, but the tables need to be
+  consistent - KW
+* map lynxkeycode 0x00 to LYK_DO_NOTHING, as lynx.cfg said all the time - KW
+* some tweaks of displayed strings in 'K'ey Map page.  Don't show CHANGE_LINK
+  binding if mouse not enabled (it may not be useful even when -use_mouse is
+  on) - KW
+* function expand_substring used with NCURSES for user-defined mapping keysyms
+  to byte sequences was parsing the "^(...)" construct wrong - KW
+* other small tweaks in key handling code - KW
+* changes to lynx.cfg to better reflect reality - KW
+* terminology note:  lynxkeycode = what's between the colons in lynx.cfg
+  KEYMAP:...:..., lynxactioncode = LYK_* code for what's right of the second
+  colon, lynxeditactioncode = what's assigned in LYEditmap.c (and which may
+  differ between lineedit_mode Default Binding and alternative bindings) - KW
+* formatting tweak in HTML.c for <DD> not preceded by <DT>:  Don't use wrong
+  indentation in that case - KW
+* changes from DK for DOS up to 1999-02-14 - KW
+* minor documentation tweaks - LP
+* replace most uses of free with FREE -John Bley
+* correct HTEndParam so that if fewer command-parameters are given than
+  expected, we still terminate the command properly (reported by
+  Michael Warner) - TD
+
+1999-02-08 (2.8.2dev.16)
+* minor documentation tweaks for EDITTEXTAREA - LP
+* correct uninitialized buffer variable in send_file_to_mail() which caused
+  core dump (reported by LV) - KW
+* recognize Subject and Message-Id in embedded comments in HTML documents, in
+  the form generated by MHonArc for mailing list archives (including lynx-dev).
+  Use these to generate a default Subject and an In-Reply-To header (currently
+  not for VMS) when replying by mail (sending a 'C'omment, or following a
+  mailto link) from such a page.  The old methods to get a title other than the
+  fallback (the URL) still are there and have precedence, by in reality seem to
+  apply very rarely.  If no suitable comment strings are found or they are
+  regarded as invalid (bad characters, not exactly right format) they are not
+  used, and the fallback (URL as Subject, no In-Reply-To) applies - KW
+* use the Message-Id of a news article to generate a References header when
+  posting a reply.  Lynx's new article listing doesn't understand threading,
+  but this is nicer for other newsreader that do.  The References header of the
+  referenced article is not used, so there will be only one message-id in the
+  generated References header, but this is better than nothing.  The article's
+  message-id is appended as a parameter to the URL of the generated newsreply
+  link, in the form ";ref=...", so this extends the syntax of Lynx's newsreply:
+  URL scheme.  Nothing should have changed for snews:  and other s-versions of
+  the various URL schemes for news access - KW
+* Message-Id and Subject of a news article are also made available for replying
+  by mail - KW
+* LYNews.c: Don't post a message that is empty or has only '>'-quoted text - KW
+* HTNews.c:  got rid of some suspicious fixed length buffers.  Fixed minor
+  memory leaks.  Added abort of the target stream which was missing in some
+  cases.  Create mailto:  hrefs in URL-escaped form if necessary, they will be
+  unescaped in LYMail.c.  (News URLs still don't use escaping the right way,
+  especially for message-ids.) Recognize special meaning of "Followup-to:
+  poster" (don't treat "poster" as a newsgroup name).  Other small tweaks - KW
+* add samples/cernrules.txt - KW
+* except for DJGPP, move lookup code for domain names (not dotted-quad IP
+  addresses) from HTParseInet into a new function:  LYGetHostByName acts like
+  the normal gethostbyname, but includes the NSL_FORK logic.  Interruption is
+  indicated in global variable lynx_nsl_status - KW
+* use LYGetHostByName instead of HTParseInet for URL guessing - KW
+* select on tty file descriptor in NSL_FORK loop also if compiled with slang.
+  This should make 'z' during lookup more responsive - KW
+* don't compile in the rules implementation code if NO_RULES is defined
+  (suggested by BL) - KW
+* fix special case of EDITTEXTAREA where the returned file is empty - BJP
+* write to .lynxrc values for COOKIE_ACCEPT_DOMAINS and COOKIE_REJECT_DOMAIN
+  when options screen is used - BJP
+* add lynx.cfg and .lynxrc support for a few new options (BJP):
+    COOKIE_STRICT_INVALID_DOMAINS,
+    COOKIE_LOOSE_INVALID_DOMAINS,
+    COOKIE_QUERY_INVALID_DOMAINS
+  They're the same sort as COOKIE_ACCEPT_DOMAINS, comma-delimited lists.
+* modify LYOpenTemp() to report unusual errors, i.e., other than if the
+  temporary file could not be created because it already exists - PG
+* more fixes to CF_INET_ADDR - TD
+* modify README to indicate where win32 binaries are found - JES
+* add chrtrans tables for Ukrainian Cyrillic: koi8-u, cp866u, iso-9945-2
+  (patch by Serhii Hlodin <hlodin@lutsk.bank.gov.ua>)
+* patch for TEXTAREA edit feature - KED
+  1. Handles the renumbering of link number tags [nnn], when the tag itself is
+     split across two lines (see below).
+  2. Scrolling down, going to the bottom of the document, etc, now work
+     properly, when the TEXTAREA is expanded beyond the bottom of the
+     (original) screen display.
+  3. Hitting the reset button is now handled properly WRT the "old" text in
+     expansion lines (now *always* empty).
+  4. Attempting to edit (^Ve) a TEXT field (not a TEXTAREA), is now blocked,
+     with the user getting an error msg.
+  5. The function call now returns the number of lines that the cursor should
+     be moved from its current position, to end up on the first blank line of
+     any trailing empty lines in the TEXTAREA (there will always be one).
+* bug fixes for TEXTAREA edit feature - KED
+  1. Thanks to a suggestion by Bela, your regular EDIT keybinding ("e" by
+     default), will now bring up the editor within a TEXTAREA, so there's no
+     need to "waste" a separate keybinding (though you can still additionally
+     bind the function separately, if desired).
+  2. Converts any tab chars in the edited file, to spaces in the TEXTAREA
+     anchor line.  The tabstop is currently #define'd to the quasi-standard
+     value of 8.  (If anyone thinks that needs to be user configurable, feel
+     free to add that to the o(ptions) form/menu,
+     cmd-line-arg/lynx.cfg/.lynxrc/userdefs.h, whatever ...
+     I recommend against doing so though, as tabstops that are not set at 8,
+     are a PITA to deal with, generally speaking.  I dunno if tab chars in a
+     TEXTAREA form are prohibited "by spec", or if it is just a "lynxism" that
+     they cause rendering problems (as well as downstream problems with
+     submit/etc, I think), but I felt I needed to do something to make lynx
+     behave rationally if they are present in the edited data (quite possibly
+     from an arbitrary file that one pulled into the editor).  Filtering them
+     to spaces, seemed the most reasonable thing to do.
+  3. Replaces any embedded control chars with something printable (I chose a
+     "." char, since it is less "intrusive" than some other choices, like "*",
+     "+", "#", etc).  As with tabs, when some of these chars *are* rendered
+     into the TEXTAREA, strange things may happen.  This shouldn't be much of a
+     limitation, since many of these chars perform line-editing or
+     system/job-control functions, when entered directly while one is in the
+     TEXTAREA.  They currently cannot be "escaped" and entered as actual text
+     chars, so far as I can tell.  Anyway ...  I don't know of any "legitimate"
+     reason for them to be used as TEXTAREA data, so for now, you get "dots" in
+     their place.
+  4. Cleans up a few comments, and such.
+* update some linked in lynx_help_main.html (Heikki Kantola <hezu@iki.fi>)
+* add checks for null return from malloc to HTInit.c, LYMain.c, LYReadCFG.c,
+  LYUtils.c -John Bley
+* add telnet, tn3270 and rlogin program paths to configure script
+  (patch by George Lindholm <George.Lindholm@ubc.ca>).
+
+1999-01-28 (2.8.2dev.15)
+* correct calls to HTAddParam() in LYDownLoad.c to handle optional second
+  parameter (reported by KW) - TD
+* change HTAddXpand() to assume its parameter (an environment variable) is
+  already expanded and simply is not quoted (reported by Ryan Hung
+  <rhung@vcn.bc.ca>) - TD
+* add configure --disable-included-msgs option to allow suppressing of bundled
+  ./po directory for the NLS message library contents.  If no ./po directory
+  is found, the configure script assumes it is preinstalled anyway (request
+  by HN) - TD
+* add pattern to script which customizes pathnames in lynx.cfg to support
+    GLOBAL_MAILCAP:/PATH_TO/lynx_doc/samples/mailcap
+  (request by PG) - TD
+* export $PATH when calling cfg_defs.sh - PG
+* add a simple test to check if the temporary directory is actually writable
+  if we cannot create a temporary file in LYOpenTemp (reported by PG) - TD
+* miscellaneous DOS/DJGPP compile/build fixes - LP
+* enabled CERN-style rules, there are two new lynx.cfg options, RULESFILE and
+  RULE.  No example file or documentation yet beyond comments in lynx.cfg.  The
+  rules mechanism itself is unchanged from what was present for a long time
+  (but never used), except for some memory cleanup.  Use -DNO_RULES at compile
+  time to disable - KW
+* add changes to invoke external editor on textarea, can be invoked by adding a
+  KEYMAP entry for EDITTEXTAREA area to lynx.cfg (originally from
+  aldomel@ix.netcom.com, but much rework) - KED
+* use HTSprintf0 in HTTCP.c - TD
+* added PARSE_STRICTPATH and PARSE_QUERY to interface of HTParse(), for
+  requesting only the relevant part of what is returned for PARSE_PATH.  This
+  isn't yet used anywhere - KW
+* changes to StrAllocVsprintf() to take width and precision in most format
+  specifications into account, and to correct the memory allocation logic.
+  This was tested by setting GROW_SIZE to a small value of 8, so far no
+  crashes, but it is certainly not right for all possible formats, especially
+  involving floating point conversions - KW
+* changed HTSprintf0() to pass a string already existing in its output buffer
+  on, this should save a few realloc's in StrAllocVsprintf() - KW
+* changes to code handling LIST_FORMAT to avoid some unnecessary reallocations,
+  to recognize some more format flags, and to treat invalid formats somewhat
+  better - KW
+* corrected recent HTFile.c change for systems without S_ISVTX - KW
+* added memory cleanup for uid/gid cache functions in HTAAProt.c - KW
+* increased ATEXITSIZE to 40 - KW
+* added TRACE output to HTAnchor.c's free_adult_table.  If this shows anything
+  at program exit (if TRACE is on then), it means that HTAnchor structures have
+  been missed by the normal automatic cleanup (walking the history list and
+  following links) - KW
+* changed more status codes in HTUtils.h to libwww5-like values - KW
+* added new function to check for a valid Internet hostname - KW
+  Use it before actually trying to resolve an address, it should
+  a. avoid the overhead of NSL_FORK if it would fail anyway,
+  b. prevent DNS queries for invalid names, which may unnecessarily
+     consume time, bandwidth, and DNS server cache memory, and
+     may confuse some resolver libraries and servers,
+  c. speed up address guessing sometimes if something was mistyped,
+  d. thwart some attempts to crash Lynx with invalid URLs.
+* this time really make "Alert" statusline prefix localizable - KW
+* new function HTAlwaysAlert(), which can be called even when LYCursesON isn't
+  true and should always produce a visible message - KW
+* use new valid_hostname to also check telnet, tn3270, and rlogin hostnames
+  before calling the external program (after most invalid character have
+  already been stripped).  Added a fflush(stdout) to make sure messages are
+  visible before external program is called - KW
+* made changes equivalent to the 1998-12-31 HTSACopy and HTSACat modification
+  to the LY_FIND_LEAKS versions of those functions.  Having source and target
+  string for StrAllocCopy or StrAllocCat overlap (or being equal) should be
+  considered a programming error, but at least one place in LYEdit.c currently
+  seems to do it and rely on the new behavior.  (Editing current file sometimes
+  didn't work with LY_FIND_LEAKS) - KW
+* closed memory leaks in LYKeymap.c, provided for memory cleanup at exit of
+  LYCgi.c environment strings - KW
+* explicitly put HTTP_ACCEPT_LANGUAGE and HTTP_ACCEPT_CHARSET strings into
+  lynxcgi environment only if they are non-empty, i.e., set to something in
+  lynx.cfg or the personal configuration or Options screen.  This makes the
+  environment a lynxcgi scripts sees resemble more closely that of a remote CGI
+  script handling a request from Lynx with the same configuration - HTTP.c also
+  only sends Accept-{Language,Charset} headers if preferred language and
+  preferred charset (respectively) have been set to non-empty strings.
+  (Strictly speaking, an empty Accept-* header has a different meaning from a
+  non-existing one, but it doesn't make much sense to generate empty Accept-*
+  headers, since they mean "nothing is accepted".) There are other differences
+  in the lynxcgi environment (e.g.  HTTP_ACCEPT isn't set, ",iso-8859-1;q=0.01"
+  etc.  isn't appended to HTTP_ACCEPT_CHARSET, apart from missing
+  redirections), but apparently nobody has needed a more exact CGI emulation
+  for real scripts - KW
+* removed sending of "Negotiate: trans" in HTTP.c since it violates transparent
+  content negotiation specs, added comments - KW
+* correct error handling in CF_INET_ADDR, which did not restore $LIBS when no
+  applicable library was found for inet_addr (reported by IC) - TD
+* correction to CF_TERMCAP_LIBS, which used inconsistent spelling for the cache
+  variable, so predefined termcap/terminfo library was not necessarily
+  detected - TD
+* resolved autoconf 2.13 problem, resync configure script with patched
+  autoconf 2.13 - TD
+
+1999-01-18 (2.8.2dev.14)
+* use HTSprint0 in LYCurses.c, LYForms.c, LYGetFile.c, LYJump.c - TD
+* modify LYCheckMail so it does not continue to report new mail when the mail
+  file's modification time differs from its access time (reported by LV) - TD
+* add check for inet_addr function, and (preferred) inet_aton.  The first
+  function is reported to be sometimes in -lresolv, or -lbind when it is not
+  present in the conventional network libraries (from report by
+  mattack@area.com and comments by HN) - TD
+* resync config.sub, config.guess with autoconf 2.13.19990117 (not yet
+  configure, since autoconf 2.13 contains some new bugs) - TD
+* modified handling of untranslatable charsets, after noticing that a page
+  with charset=ISO-2022-JP produced an alert message with a truncated
+  "iso-2022-j".  Looking more closely, the code could also result in memory
+  corruption in some cases.  Compared with older versions, then changed the
+  code to something somewhat like what was intended there.  But we don't have
+  an "Other ISO Latin" display character set any more; maybe those `else'
+  blocks should just have disappeared completely - KW
+* minor changes to SortaSGML DTD for PARAM, THEAD - KW
+* make "Alert" statusline prefix localizable - KW
+* extend fixtext.sh to also change continued lines - KW
+* changed LYCheckForProxyURL to act more like it appears to have been indented,
+  and clarify comment.  Minor change in is_url - KW
+* prevent removal of hidden link number from bookmark document in a very
+  obscure case of a bookmarked ISMAP link - KW
+* HText_SubmitForm:  make sure query is always allocated, even if the set of
+  form fields to be sent turned out to be empty - KW
+* some comments corrected in HTML.c, LYCharSets.c - KW
+* tweak in curses_w_style for display without color - KW
+* remove minor memory leak in LYDownload.c - KW
+* changed error handling in LYTraversal.c to make sure terminal gets restored
+  to sane mode before showing error message and exiting - KW
+* increased VALUE_SIZE for buffer in HTMIME.c from 1024 to 5120.  Someone
+  needed increase for long Set-Cookie headers - KW
+* two new functions in HTList.c to reverse and to combine lists - KW
+* Lynx was using the wrong precedence for entries within a mailcap (relative to
+  other entries from the same file):  RFC 1524 says "The configuration
+  information will be obtained from the FIRST matching entry in a mailcap
+  file[...]", but Lynx effectively gave precedence to the last match.  Recent
+  Debian packages of lynx have had a patch applied to change this, but that
+  patch also seems to affect the precedence order relative to viewers defined
+  in other places, i.e., lynx.cfg and HTInit.c.  The patch here instead changes
+  the precedence of mailcap entries form the same files to RFC-like behavior,
+  by reordering the list generated from a mailcap file after we have finished
+  reading it in.  It leaves the order relative to viewers from other sources
+  unchanged.  Maybe it should be made configurable whether Lynx's traditional
+  precedence or the new one is used; currently there is just a #define in
+  HTInit.c which could be changed to revert to traditional behavior - KW
+* add checks for null return from malloc to LYCurses.c, LYStrings.c,
+  (patch by John Bley)
+* add support for HP Roman8 as a display character set.  HP Roman8 is used by
+  Hewlett-Packard terminals and hpterm, HP's version of xterm.  The character
+  repertoire is largely similar to ISO Latin 1 but the code points are all
+  mixed up (patch by Christian Weisgerber)
+* modify WWW/Library/Implementation/HTAAUtil.c::HTAA_setupReader():  to use
+  malloc'd buffer rather than static buffer, to avoid overflow (patch by Thomas
+  Braun <Thomas.Braun@link-up.de>)
+* modifications to allow building the DOS lynx port with support of gettext for
+  producing messages in various languages.  The DOS port of the gettext package
+  still needs minor tweaking to get it to function properly, but this shouldn't
+  be a problem for most people trying to compile lynx for DOS themselves.
+  Rather than put yet more DOS-specific makefiles in the distribution, I put
+  the changes to the makefiles within comments, which can easily be removed to
+  enable the changes - DK
+* add a comment about LYUCcharset struct "UChndl" field.  Tweak trace
+  messages - LP
+* fix parsing of ALT=value attribute when the value is not quoted.  When the
+  first character is not us-ascii it was corrupted by chartrans in all versions
+  of lynx.  Fix case S_equals in SGML_character() - LP
+* chartrans:  ignore RAW_TOGGLE key and do not change LYUseDefaultRawMode if
+  current document's charset specified explicitly, add status message.  (Let
+  user switch toggle only when necessary, to avoid future problems :-) - LP
+* chartrans: change the default value of PREPEND_CHARSET_TO_SOURCE in lynx.cfg
+  from FALSE to TRUE (better safe than sorry) - LP
+* reorder forms-based options menu (cosmetic):  rename "HTML error tolerance"
+  to "HTML error recovery", reorganize "Character Set Options" section -
+  "Display character set" went to "Personal preferences" section, "Assume
+  character set" and "Raw 8-bit or CJK mode" went to "Document Layout" section;
+  "Execution Links" went to "File management" section.  (Hope this helps to
+  reduce confusion) - LP
+* remove "environment variables" section from INSTALLATION, change references
+  to Lynx User Guide in all docs.  Minor tweaks on help files - LP
+* add a comment to mime.types and lynx.cfg on SUFFIX definition:  "This has an
+  effect for ftp and local files only, http server does specify MIME type in
+  the Content-Type header" - LP
+
+1999-01-13 (2.8.2dev.13)
+* correct a missing trailing newline in caselower.h (this may be a problem
+  patching since 'diff' does not like that) - TD
+* fix off-by-one alignment download options (reported by LV) - IC
+* use HTSprintf/HTSprintf0 in UCAuto.c - TD
+* remove stop/start curses calls around UCChangeTerminalCodepage() in
+  GridText.c, since they are not necessary, and are a little distracting
+  when running Lynx in xterm - TD
+* correct handling in getfile() of ~/ expansion - KW
+* modify NSL_FORK logic to prevent child process from running any signal
+  handlers the parent may have installed - KW
+* the logic added to display_page for avoiding unnecessary screen redraw with
+  partial display (see 1998-12-03) is now disabled if enable_scrollback is set.
+  Otherwise displayed pages could appear as empty (or with only the current
+  link drawn) - KW
+* modify conditions under which screen style cache is reset (only relevant for
+  color style in combination with partial display) - KW
+* update the INSTALLATION file, reflecting the changes between the two DJGPP
+  versions of GCC in use.  Also, change optimization to -O2 in the other two
+  DOS makefiles - DK
+* add support for ISO 8859-15, i.e., "Latin 9", make corrections to DEC
+  Multinational character translations (patch by Christian Weisgerber
+  <naddy@mips.rhein-neckar.de>)
+* modify po/makefile.inn to use mkdirs.sh rather than mkinstalldirs script
+  (reported by LV) - TD
+* modify print_help_and_exit() to print values for the simple options, i.e.,
+  toggle, integer and string, as part of "lynx -help" (request by
+  mattack@area.com) - TD
+* correct sense shown for Old_DTD variable in LYOptions.c (reported by DK) -TD
+* correct order of params for non-Unix use of HTAddParam in LYBookmark.c
+  (reported by DK) -TD
+
+1998-12-31
+* delete unused 'PREVAIL' color-style code from HTML.c, merge a couple of
+  sections of logic with TrimColorClass, and change Style_className to
+  a dynamically-allocated string - TD
+* modify fmt_tempname() to check for buffer overflow - TD
+* check/modify for potential buffer overflows:  HTAlert.c, LYBookMark.c,
+  LYKeymap.c, LYPrint.c (including splitting it up into functions) - TD
+* change GetOptValues to return status separately from the decoded value, in
+  case the options form is damaged (suggested by LP) - TD
+* add new function HTAddXpand to use in special case where Lynx is building
+  shell command using data from user's configuration, which should not be
+  quoted.  Use this in LYEdit.c to allow $EDITOR to be given as the editor
+  name (request by PG) - TD
+* add new function LYOpenTraceLog, to combine logic in LYMain.c and
+  LYMainLoop.c, including Lynx's version message - TD
+* fix some discrepancies between the code and the documentation (help files),
+  for the alternate line edit keybindings, that were first included in the
+  distribution somewhere around -dev.3, or so - KED
+* added a delete-to-beginning-of-line (for the alt bindings only), and a help
+  page that describes the alternate bindings - KED
+* improved description of "HTML error tolerance" - KW
+* changes for handling lynxcgi:  handle failure of execve(), by showing the
+  system error and then _exit()ing the child process.  Make sure REQUEST_METHOD
+  is always set.  Added checks for EINTR and other errors from read() - KW
+* DOSPATH or EMX:  remove strange code dealing with root of local drive from
+  is_url() and HTDOS_name()/HTDOS_wwwname(), add right code at the earlier
+  stage in LYFillLocalFileURL() - LP (thanks KW)
+* relax warning from HTAlert to HTUserMsg on REFRESH_URL_NOT_ABSOLUTE - LP
+* more tweaks on transfer rate calculation - LP
+* modify HTSACopy and HTSACat in case the source and destination are the same
+  pointer - TD
+* tested/removed redundant OS/2 EMX adjustment to filename from LYEdit.c - TD
+* optimized LYEdit.c by moving calls on HTSYS_name(filename) to a single place
+  near the top - LP
+* forms-based options menu:  prevent spoofing attempts from possible overruns
+  (e.g., user can doing 'e'dit in 'o'ptions and get core dump if
+  display_char_set gets an illegal number such as 50, or hang the keyboard with
+  illegal Line edit style) - LP
+* forms-based options menu:  add new logical section - Document Layout,
+  currently with "HTML error tolerance" (TagSoup/SortaSGML), "Pop-up for select
+  fields", "Show images" (no_alt/labels/links) and "Verbose images".  New
+  switches added for information purposes mostly, they duplicate hot keys but
+  not so hidden from user's view.  Documentation updated also.  (Oh yes, "Line
+  edit style" option is now available when we have a real choice >1) - LP
+* split cfg_defs.sh into two script based on revised script from PG - TD
+* minor fixes for top-level makefile.in - PG
+* fixes for makefiles with gcc 2.8.1 using DJGPP 2.02 (do not use "-c -o"
+  combination, strip trailing blanks from makefile.sla, change optimization
+  level to -O2) - DK
+* rename New_DTD variable to Old_DTD, change logic for -tagsoup option to be
+  consistent with sense in lynx.cfg (reported by LP) -TD
+
+1998-12-26 (2.8.2dev.12)
+* use HTSprintf0 in LYCgi.c - TD
+* add tab-completion on URL's, by using previously-entered strings for
+  matching (patch by Kari Davidsson <karid@isholf.is>) - TD
+* add version number to trace log (patch by IC)
+* modify HTDOS_name to be consistent with HTVMS_name, which does not modify
+  its parameter (reported by LP).  Also, modify HTDOS_name and HTDOS_wwwName
+  so they allocate space for the result rather than using a static buffer - TD
+* modify LYEdit.c to use HTAddParam - TD
+* make HREF/NAME for "Environment" consistent in Lynx_users_guide.html
+  (reported by LP) -TD
+* correct DOS/EMX logic in LYEdit.c which incremented 'filename' pointer when
+  its length was greater than 1 rather than recopying the string, causing a
+  core dump when 'filename' was freed (reported by LP, this applies to
+  2.8.1rel.2) - TD
+* correct sense of 'already_exists()' function from dev.11, which caused
+  various file-menu operations to stop working (reported by IC) - TD
+
+1998-12-24 (2.8.2dev.11)
+* use HTSprintf/HTSprintf0 in about half of the WWW library files where
+  applicable:  HTAABrow.c HTAAServ.c HTAAUtil.c HTAccess.c HTAnchor.c HTDOS.c
+  HTFTP.c HTFWriter.c HTFile.c HTFinger.c HTFormat.c HTGopher.c - TD
+* eliminate most duplicate gettext parameters, reduced the number of files
+  listed in po/POTFILES.in to a size that may allow build with the Solaris
+  xgettext utility - TD
+* correct rule for remaking po/makefile - TD
+* workaround for HPUX sed program, providing '$' anchors for ".*" expressions,
+  which is redundant, but should be harmless (suggested by Jean-Yves Levesque
+  <Jean-Yves.Levesque.jyves@nortelnetworks.com>)
+* add new help file, keystrokes/environments.html - LP
+* fix HTReadProgress():  more accurate transfer rate calculation - LP
+* update slang makefile.dos, and corresponding INSTALLATION notes - DK
+* correct my integration of IZ's LY_CHANGE_LINK code, which resulted in an
+  out-of-bounds index into revmap (reported by LP, LV) - TD
+* add note about sendmail for Win32 to lynx.cfg - JES
+* add note for successful build on NeXT to INSTALLATION (Christian Jensen
+  <cejensen@winternet.com>)
+* add checks for null return from malloc to HTInit.c, LYMainLoop.c, LYUtils.c,
+  (patch by John Bley)
+* remove reference to 'persistent_cookies' in LYCookie.c which prevented
+  compile when persistent cookies configure option was disabled (report
+  by PG) - KW
+* move assignment to SHELL back from WWW/Library/makefile.in to CommonMakefile,
+  and revert use of $CONFIG_SHELL in configure script, since this appears to
+  stop auto-configure from finding working include feature of 'make' on CLIX
+  (reported by Alex Matulich) - TD
+
+1998-12-16 (2.8.2dev.10)
+* FROM_FILE is not used any more for a domain (although it is currently still
+  defined.  Renamed COOKIE_FLAG_PERSISTENT to COOKIE_FLAG_FROM_FILE.  Don't
+  change a domain's "behavior" (ACCEPT_ALWAYS, REJECT_ALWAYS, or QUERY_USER)
+  just because there was a persistent cookie for it.  Users who want to always
+  accept cookies from a domain without prompting should use
+  COOKIE_ACCEPT_DOMAINS - KW
+* FREE domain_entry objects when they are not used any more.  Other minor leak
+  removed - KW
+* some (few) changes for draft-ietf-http-state-man-mec-10.txt.  Don't accept
+  invalid port lists (this may need more tweaking).  Added some comments - KW
+* try to preserve cookies (within a domain) in the same order in which they
+  were received, although this is probably not necessary after all.  There is
+  no difference any more w.r.t.  insertion into the list between cookies from
+  the file and cookies from response headers - KW
+* use <= instead of < comparison when checking whether a cookie has expired -KW
+* don't write expired cookies, cookies with discard attribute, or cookies
+  without expiration date to persistent file - KW
+* don't call HTConfirmCookie for cookies read from file.  This doesn't change
+  the logic since previously HTConfirmCookie allowed all file cookies
+  anyway - KW
+* don't delete the domain_list if it becomes empty.  Doing this could result in
+  unnecessary multiple atexit()'s - KW
+* write the cookie file even if we now have no cookies, if we have previously
+  read cookies from the file.  The file should be updated if all cookies that
+  were in it are expired or superseded or deleted - KW
+* when reading file cookies, set attributes in a way that (hopefully) makes
+  more sense than just ignoring them.  See comments in LYLoadCookies.
+  We are restricted a lot by the choice of a Netscape-compatible cookie file
+  format, some version 1 properties just cannot be stored in it AFAIK.  Some
+  more tweaking in LYLoadCookies - KW
+* setting a domains behavior to accept "A)lways" didn't actually work, it had
+  the same effect as "P)rompt".  Corrected this simple (probably cut-and-paste)
+  error - KW
+* some changes in what is displayed on Cookie Jar page:  FROM_FILE is a
+  property of individual cookies, not of domains as previously.  Cookies from
+  file (which haven't been updated) are shown as "(from a previous session)".
+  Show expiration time ("Max.  Gobble Date") whenever we have one.  The state
+  of the "discard" attribute is already displayed separately - KW
+* made color styles code work much better with TagSoup parsing mode.  A new
+  flag bit is set for some tags in HTMLDTD which indicates that, even though
+  they may be otherwise handled as SGML_EMPTY, this emptiness is fake.  This
+  can only work reasonably for elements that require an end tag (not for LI,
+  for example) - KW
+* added SUMMARY attribute for TABLE element to HTMLDTD (but we don't do
+  anything with it) - KW
+* split_line:  Try to account for changes in anchor position and extent in all
+  possible cases.  This improves some cases where the selectable text could
+  become too short and, in extreme cases, a link could become erroneously
+  "hidden" - KW
+* split_line:  color style changes after the split position are moved to the
+  correct position in the new line - KW
+* set TextAnchor's line_num in HText_beginInput, so that split_line can adjust
+  the input field's position properly if a split moves it to the next line.
+  Should solve problem reported for www.lycos.com - KW
+* don't refuse to read from file-descriptor 0 in HTDoRead for Unix if it is not
+  a tty.  The socket fd from HTDoConnect can be 0 if fd 0 was not open when
+  lynx was started non-interactively - KW
+* increase INIT_LINE_SIZE in HTTP.c slightly from 1024 to 1536, so that for a
+  typical ethernet MTU the first packet of a response can more often be read in
+  with a single read() - KW
+* add a missing FREE() in HTTP.c - KW
+* use case mapping from ftp.unicode.org /Public/UNIDATA for case-insensitive
+  user search (thanks "Kari E Hurtta" <Kari.Hurtta@ozone.FMI.FI>), new file
+  src/chrtrans/caselower.h added.  This is used instead of UPPER8 assumption
+  introduced in 2.8 release (see 1998-02-27).  There is no difference in speed
+  though - LP
+* fix links in History/Visited Links page for documents with blank
+  <TITLE></TITLE>, also remove leading spaces from titles to make output a
+  little better - LP
+* use djgpp's <sys/config.h> file, which contains default values for autoconf
+  style definitions - LP
+* updated lynx.man, lynx.hlp for "SEE ALSO" sections - KED, JES
+* optimize the test commands specified in the mailcap file by remembering which
+  tests have been run already.  (patch by Marc Huber <marc@sixpack.de>)
+* add lint rule to makefile.in, as well as corresponding rule in WWW/... - LV
+* update version in makefile.in to 2-8-2 - PG
+* fix makefiles to build with DJGPP (problem introduced in dev8) - LP
+* use new symbol KEYMAP_SIZE to get rid of various constants relating to the
+  size of keymap[] array, e.g, 0x293, 659 - TD
+* add new mouse and keymap functionality to lynx (IZ):
+  a) If one clicks mouse *near* a link, the "point/focus" is moved to this link
+     (without actual activation);
+  b) One can bind keys with ordinals larger than DO_NOTHING;
+  c) Primitive context sensitive menu added to the middle button of a mouse
+     (currently ncurses only);
+  Current micro-problem with "c" is that I do not know how to refresh a screen
+  before triggering the action, so if the action chosen from the menu would
+  not redraw the screen, the menu outline is left on the screen.
+* modify LYKeymap.c so that it can show internal keymaps above 0400 as
+  hexadecimal codes even if they do not appear in the function-key table -IZ
+* add HTOptParam to avoid spurious quoting of blanks in rlogin URLs by
+  HTAddParam - TD
+* correct missing assignment in remote_session(), from dev.9 changes for
+  HTAddParam, which broke telnet/rlogin URLs (reported by IC) - TD
+
+1998-12-12 (2.8.2dev.9)
+* change location-not-absolute message from an alert to user-message - TD
+* check for EINTR from read() call in HTDoRead, and retry if necessary.  This
+  change only for Unix.  Interrupted read() system calls should be rare (or
+  impossible, depending on the system implementation?) since the read() is only
+  done after a successful select(), but checking can't hurt - KW
+* check for read read() errors in HTDoRead and HTCopy, and generate alert
+  messages for unexpected errors.  HTCopy still returns HT_LOADED to indicate
+  success if any data have been received before an unexpected error or
+  disconnection.  Previously this happened without any indication to the user
+  that something was wrong and a document or file might be incomplete.  These
+  changes currently only for Unix - KW
+* added/enhanced comments in HTFormat.c to document current behavior of HTCopy,
+  HTFileCopy, HTGzFileCopy, HTParseSocket, HTParseFile, and HTParseGzFile - KW
+* moved definition of HT_NO_DATA to HTUtils.h, changed value of some status
+  codes to libwww5-like values while we're at it - KW
+* correct uninitialized de variable in LYCookie.c when dump_output_immediately
+  is set.  Also, made a slight change to this mode in LYMain.c, so that cookies
+  received will also be written to the cookie file; cleanup() is not called in
+  -dump mode (reported by Elwin Oost) - BJP
+* correct include-path for chrtrans makefile to allow builds outside the
+  source tree (Masashi Fujita)
+* minor cleanup of LYCookie.c, add some traces - BJP
+* add support for content encoding for x-bzip2, bzip2 for suffix "bz2" - HN
+* add po directory to install-bin and uninstall rules - TD
+* modify the environment variable logic to avoid freeing string given to putenv
+  until after giving it a new string - TD
+* add several environment variables to LYPrint.c - KED
+* add ENVIRONMENT section to lynx.man and lynx.hlp - KED
+* add installation note about --enable-gzip-help - KED
+* update installation notes for WAIS - DK
+* add/use new functions for building up command-string for shell commands,
+  which quote parameters as needed:  HTAddParam(), HTEndParam().  Moved the
+  logic in quote_pathname to HTQuoteParameter, extending that function to quote
+  the parameter only if it contains characters which are problems with various
+  shells (e.g., wildcards), and to escape backslashes.  In particular, use
+  these functions to ensure that the user and port strings in HTTelnet.c are
+  quoted (fixes a hole reported by Art Mulder <art@openbsd.org> - TD
+* modify print-to-file logic to permit writing to pipe, provided that the
+  user does not have no-shell restriction - TD
+* split-out logic for LYValidateFilename() from printfile() and LYDownload - TD
+* whitespace fixes - BJP
+* add configure option --with-nls-datadir, to allow installer to specify
+  alternate locale data directory.  A separate option from --datadir is
+  required because the GNU gettext code is usually installed under
+  $(prefix)/share rather $(prefix)/lib - TD
+* add configure check for gettimeofday, to implement 0.1 second interval
+  for skipping HTCheckForInterrupt() - TD
+* modify configure script to generate references to $CONFIG_SHELL rather than
+  /bin/sh, to allow some testing with alternate shells.  Autoconf uses this
+  variable for a similar purpose - TD
+* correct missing case for 'o', octal in StrAllocVsprintf (reported by IC) - TD
+* fix -restrictions=bookmark check in forms-based options menu (reported by KW
+  & Rodiger Geys) - LP
+* fix memory leaks in LYPrint.c and UCdomap.c - KW
+* when printing HEAD to email use URL in the subject, was title.  (it was
+  especially annoying when we have 8bit title being sent as 7bit:  no charset
+  information is supplied for letters with 7bit message body) - LP
+* remove "temp fix for HText_trimHightext side effect from partial mode by
+  introducing a flag in HText_beginInput()" from 1998-09-12 since it is now not
+  needed after KW's changes in HText_trimHightext.  - LP
+
+1998-12-03 (2.8.2dev.8)
+* use HTSprintf/HTSprintf0 in LYCookie.c, LYLocal.c - TD
+* correct logic in OpenHiddenFile, which did not check if a failure to open a
+  file for append was due to the file's not existing and hence causing
+  IsOurFile to return failure.  This caused the -traversal option to fail
+  (reported by Francis Irving <francis@ncgraphics.co.uk>, applies to
+  2.8.1rel.2) - TD
+* fixed line number removal code in HText_endAnchor in several places, it was
+  modifying the wrong line which could lead to memory corruption - KW
+* tweaks in HText_startAnchor and HText_endAnchor for handling link numbers.
+  Don't swallow space after number if line was split. Find link number on
+  previous line even it it is at the very end. Adjust line split position after
+  number removal.  Generate TRACE output in interesting cases - KW
+* prevent havoc (access to already freed memory etc.) caused by multiple
+  recursive invocations of HTAnchor_delete on the same HTParentAnchor.  This
+  does not seem to actually happen normally during a session, but can occur
+  when the HTAnchor structures are cleaned up while handling a terminating
+  signal or outofmem condition - KW
+* reset the HTAnchor "underway" flag during final cleanup, so structures are
+  not prevented from being freed.  This also should only make a difference when
+  handling a terminating signal or outofmem condition - KW
+* show sticky-bit in directory listings - LV
+* correct options-message on Print page - IC
+* update installation note about freewais library (reported by Chris Maden
+  <crism@oreilly.com>) - TD
+* improvements to mouse code, ncurses-based, from IZ (Ilya Zakharevich):
+  a) Mouse navigation inside text entry fields;
+  b) Mouse navigation to a text entry field (including an empty one)
+  c) Mouse navigation to a specific position of a text field (since I do not
+     know which fields are text fields, I implemented "b" and "c" for
+     F_TEXTAREA_TYPE and F_TEXT_TYPE only, search for these symbols in the
+     patch);
+  d) Mouse navigation in menus:  To scroll, one can click on top/bottom border
+     (single=byline, double=bypage, triple=beg/end), or above/below menu
+     (single=bypage, double=beg/end)) mouse-3 ==> quit;
+  e) Double-click-1 on the first and last row are interpreted as goto-
+     start/end/main-window (depending on the location of the click).
+  Other Changes:
+  a) Ask ncurses for all mouse events, but increase mouseinterval() to simulate
+     current behavior (which is effectively an infinite mouseinterval() +
+     masking of repeated clicks);
+  b) Earlier clicking to the left of a link would activate the link.  I see no
+     use for this, so consider this a bug.
+* HText_trimHightext (GridText.c):  don't apply final adjustment repeatedly to
+  an anchor that has already been handled by this function; the function may be
+  called repeatedly if partial display is enabled.  Some other changes in this
+  function, to interact better with the other GridText.c functions, especially
+  for partial display mode.  We don't have to handle all anchors if the new
+  parameter "final" is not set.
+  Also empty anchors should now generally not any more move down over empty
+  lines, if they happen at a line end.  Made some trace messages give more
+  information - KW
+* color styles:  reset screen style cache to avoid random coloring when a link
+  is unhighlighted - KW
+* tweak in HText_setLastOptionValue:  if an OPTION tag was directly followed by
+  several newlines, characters could be dropped - KW
+* tweak havevisible() function in LYBookmark.c to compare against Unicode
+  value rather than ASCII when checking for blanks - LP
+* ifdef user/group function caching calls so that this builds with djgpp, which
+  doesn't need/support this (patch by Gisle Vanem)
+* documentation updates for NLS - HN
+* separate some html from gettext in LYCgi.c, LYHistory.c, LYLocal.c - JES
+* avoid setting recent_sizechange during the very first start_curses call for
+  ncurses.  This would result in an unnecessary refresh after loading the first
+  document - KW
+* added logic to display_page to avoid repainting the full screen contents in a
+  specific situation:  if it has been called before (for the same lines in the
+  same document) during partial display, and is now being called normally (not
+  during partial display).  If this applies, the normal line content is not
+  redrawn, but the title line and form fields are still repainted, and updating
+  of the links structures is always done.  There are additional checks for
+  recent_sizechange and a text->stale flag (which was already implemented but
+  unused) to do the full redraw if that may be needed.  This should avoid
+  unnecessary screen 'blinking' with curses when partial display is used (which
+  didn't seem to happen with slang) - KW
+* modify SGML.c to check for SGML_ELEMENT tag contents, fixing a case where an
+  entity that appears within a TABLE but outside of any table row TR will be
+  displayed by Lynx _without_ its entities being interpreted (analysis by Alan
+  J Flavell <flavell@a5.ph.gla.ac.uk>, applies to 2.8.1rel.2) - KW
+* check that stdin is really a tty before trying to select from it in the
+  NSL-FORK logic in HTParseInet(), file HTTCP.c (reported by Kim DeVaughn, for
+  someone who was unable to run lynx -dump in a cron job, applies to
+  2.8.1rel.2) - TD, BL
+* updates for lynx_help_main.html (JES, IC).
+* change fopen for write in LYCookie.c to LYNewTxtFile so that the resulting
+  file will be readable by only the owner (Bill Nottingham <wen2@po.cwru.edu>
+  suggested using umask, but that may not be portable enough) - TD
+* use CONST in some places in UCdomap.c and makeuctb, to make more tables
+  sharable (suggested by LP) - TD
+* fixes for SunOS K&R compiler with/without unproto wrapper, i.e., definition
+  of 'const' - TD
+
+1998-11-23 (2.8.2dev.7)
+* convert KEY_ENTER to newline in LYgetch() to make Lynx work with IRIX's
+  iris-ansi terminfo description, which equates the kent capability with
+  carriage return.  Doing this will allow lynx to use the keypad "enter" key as
+  an alias for carriage return on most terminals - KW
+* correct a few missing ifdef's for disabling the partial-display logic - TD
+* add/use new functions HTAA_UidToName(), HTAA_NameToUid(), HTAA_GidToName()
+  and HTAA_NameToGid() to hide details of code which uses pwd.h and grp.h,
+  as well as to cache the returned user/group names, improving performance
+  in the dired screen - TD
+* modify HTCheckForInterrupt() to check for interrupt no more than one per
+  second, since this check is comparatively slow - TD
+* modify ANSI_VARARGS case for HTSprintf() and HTSprintf0() to always use
+  ANSI prototypes, since __STDC__ may not necessarily be defined on some
+  systems, resulting in an inconsistent definition - PG
+* add install-full rule to makefile.in - LV
+* modify PutDefs macro in LYShowInfo.c to check for nonnull table[N].value,
+  which may be null due to limitations of cfg_defs.sh script on some
+  platforms where an empty string was intended (reported by LV, PG, applies
+  to 2.8.1rel.2) - TD
+* correct typo in 'make distclean' rule; an extra '-' prevented removal of
+  .orig and .rej files (patch by LV).
+
+1998-11-21 (2.8.2dev.6)
+* add call on dbug_init to LYMain.c, allowing use of the debugging code built
+  into the WATTCP code which is included in the DJGPP port of lynx.  This is
+  activated by placing lines in the WATTCP.CFG file for:
+    DEBUG.MODE= (choices are HEADERS, DUMP, or ALL)
+    DEBUG.PROTO= (choices are TCP, UDP, or  ALL)
+    DEBUG.FILE= (name of log file.  Defaults to WATTCP.DBG)
+  This adds about 2K to the size of the stripped, compressed executable.  You
+  get a log of the headers and/or a binary dump of the packets sent and
+  received.  Maybe this will help in determining where ftp is failing in this
+  port - DK
+* correct definitions for ANSI_VARARGS, HAVE_STDARG_H in HTUtils.h (reported
+  by LP, for djgpp) - TD
+* correct logic in StrAllocVsprintf(), remove spurious test on dst_len
+  (analysis by LV) - TD
+
+1998-11-21 (2.8.2dev.5)
+* modify HTLoadFile() to make compressed files work with OS/2 EMX and
+  LYSystem() to convert forward slashes in pathnames to backslashes, also for
+  EMX (patches by Ilya Zakharevich).
+* documentation nits (apostrophes) in lynx.cfg and userdefs.h - LV
+* fix inconsistent newlines in po/it.po (report by Irving_Wolfe@Wolfe.net) - TD
+* modify config.guess, added Intergraph 2430 CLIX machines (reported by Alex
+  Matulich <matuli_a@marlin.navsea.navy.mil>) - TD
+* minor fix in LYCharSets.c according to recent changes in UCDefs.h introduced
+  by IBM OS/2 codepage number - LP
+* modify configure script to work with --enable-nls built into a subdirectory
+  of the source tree (reported by PG) - TD
+* disable regeneration of intl/po2tbl.sed and po/POTFILES if --disable-nls
+  configure option is specified - TD
+* add configure test for stdarg.h vs varargs.h - TD
+* fixes to work with SunOS K&R compiler - TD
+* don't trim trailing and leading spaces from unformatted text lines in some
+  cases (split_line in GridText.c).  Prevents corruption of some uuencoded
+  files when they are displayed and then 'P'rinted (although 'D'ownload should
+  be used instead) - KW
+* some changes in HText_appendCharacter (GridText.c).  Splitting of long SOURCE
+  lines now works with color styles - KW
+* workaround for multiple anchors in the same (invalid) HTML document with the
+  same NAME and different destinations (HTAnchor.c) - KW
+* check for 'z'ap while constructing local directory listings (non-VMS only, in
+  HTFile.c) - KW
+* added a couple outofmem checks (HTAnchor.c).  Minor TRACE message change in
+  GridText.c for -tlog / USE_TRACE_LOG disabled - KW
+* when adding bookmark entries, don't accept a title string which appears to
+  consist only of blank characters (LYBookmark.c).  When rendering a bookmark
+  file, use hiddenlinks=merge counting, so that numbers after entries with
+  empty titles don't get out of whack (GridText.c).  This should prevent 'R'
+  from removing the wrong bookmark entry - KW
+* prevent generation of some unnecessary temp files when constructing mailcap
+  file test commands (HTInit.c) - KW
+* include LYLeaks.h in UCdomap.c for memory leak detection - KW
+* fixed various memory leaks (UCdomap.c, LYShowInfo.c, LYReadCFG.c, LYMain.c,
+  LYDownload.c, LYBookmark.c, HTML.c, DefaultStyle.c) - KW
+* escape '&' and '<' in HTML generated to display current lynx.cfg option
+  values (LYReadCFG.c) - KW
+* revert logic in split_line.  Emphasis highlighting that should extend over
+  several lines was being lost at line breaks (GridText.c).  (IsSpecialAttrChar
+  probably shouldn't return true for LY_SOFT_NEWLINE since in most places it
+  tests whether to skip a character position, but as long as this special char
+  is only used in SOURCE mode it cannot mess up any anchor positions so it
+  should be ok.  - KW
+* correct character counting in SOURCE display continuation lines.  A
+  highlighted search target would be shown shifted left by one character
+  position because the LY_SOFT_NEWLINE special was displayed as '+' but not
+  counted (GridText.c) - KW
+* prevent generation of invalid/unparseable comments if
+  UCSaveBookmarksInUnicode is in effect, other minor changes in
+  LYBookmark.c - KW
+* correction for color styles in HText_appendCharacter (GridText.c).  At some
+  point a memmove was replaced by a for loop, but source and destination were
+  reversed and the counter was wrong - KW
+* modify HTSprintf/HTSprintf0 to use a more generic approach to varargs by
+  using only va_alist in the parameter list - TD
+* correct html expression in LYShowInfo.c of dev.3 which did not allow the temp
+  file with the lynx.cfg settings to be accessed from the Configuration
+  Definitions page (patch by IC (Ismael Cordeiro)).
+* correct "Exiting" message format in cleanup_sig(), which had unexpanded %d
+  (reported by BJP) - TD
+* add to config.hin the definitions set by AM_GNU_GETTEXT macro (PG pointed
+  out that this also sets 'inline', needed for GNU gettext) - TD
+* modify MakeNewTitle() to check for null pointer, fixing core dump with
+  verbose images when value[src_type] is null (reported by John Bley
+  <jbb6@acpub.duke.edu> for 2.8.1rel.2) - TD
+
+1998-11-18 (2.8.2dev.4)
+* change default for configure option of NLS (gettext) to disabled until we
+  finish porting it to implementations other than GNU gettext.  Also,
+  change default for include-gettext configure option to "with" - TD
+* suppress cookie-storing if the value is null - BJP
+* ifdef'd alternative set of line-edit bindings with EXP_ALT_BINDINGS, add
+  configure option --enable-alt-bindings, rename DELEOL to DELEL, remove
+  binding of DELEL to '\' - TD
+* add alternative set of line-edit bindings to change the behavior of the ^B
+  and ^F line editor bindings to provide emacs/tcsh like behavior (cursor
+  left/right), instead of "word" deletes.  Corrected a bug in the ^R (LYE_DELN)
+  function, which is described as "delete next character", but was in fact
+  performing identically to ^D (LYE_DELC) "delete current character".  Added a
+  function called LYE_DELEL, which does the expected thing, and deletes
+  from the current cursor position, to the EOL.
+  New bindings:
+    ^B = LYE_BACK   cursor backwards
+    ^F = LYE_FORW   cursor forwards
+    ^K = LYE_DELEOL delete to end-of-line
+    ^T = LYE_DELNW  delete next word
+    ^X = LYE_DELPW  delete previous word
+    ^^ = LYE_UPPER  upper case line (not active when kbd-layout binding is)
+    ^_ = LYE_LOWER  lower case line
+  KED (Kim DeVaughn <kimdv@best.com>).
+* modify to show address to submit to on the statusline when in advanced user
+  mode.  Also fixes one small typo in LYMainLoop.c.  (suggested by
+  <erisson@sw-tech.com>) - BJP
+* modify HTParseInet() so that it works if stdin has been redirected to
+  /dev/null, e.g., when running a cron job (reported by John H DuBois III
+  <spcecdt@armory.com>) - BL
+* minor documentation updates to lynx.cfg (Larry Virden).
+* change some character constants from '\hex' and '\octal' form to decimal,
+  to persuade compilers that upper-128 compares are legal - TD
+* ifdef'd KEYBOARD_LAYOUT with EXP_KEYBOARD_LAYOUT, add configure option
+  --enable-kbd-layout - TD
+* implement EXP_CHARTRANS_AUTOSWITCH for OS/2 EMX (Sergey Svishchev).
+* add 'a' response when printing a file to allow append rather than overwrite
+  (Sergey Svishchev).
+* add KEYBOARD_LAYOUT to lynx.cfg, to support character-translation on input,
+  add missing line editing style selection to Options form.  This is enabled
+  and disabled by the line edit control/uparrow (Sergey Svishchev
+  <svs@ropnet.ru>).
+* use exit_immediately() to reduce some signal-function clutter - LP
+* correct dependency in src/makefile.in for cfg_defs.h (Masashi Fujita
+  <objectx@bandit.co.jp>)
+* change quoted includes in intl directory to bracketed includes - TD
+
+1998-11-16 (2.8.2dev.3)
+* misc documentation updates for the gettext/internationalization - LP
+* rename po/makefile.in.in to po/makefile.inn, and modify distclean rule to
+  remove the remaining generated files - TD
+* preliminary changes to support port to OS/390, some ifdef'd with __MVS__,
+  some with EBCDIC and NOT_ASCII -PG
+* modify LYCookie.c to accept cookies with no value, in case the site resets a
+  cookie by nulling out the value (reported by Larry Virden) - BJP
+* modify cookie parsing to ignore comment lines beginning with a '#' (reported
+  by Jonathan Bobin indicates that Netscape adds comments back, confusing
+  Lynx) - BJP
+* highlight option letters in old options screen (adapted from patch by Ismael
+  Cordeiro) - TD
+* use HTSprintf functions in HText_SubmitForm(), user_message(),
+  LYLoadIMGmap(), HTTelnet.c.  (The HTTelnet.c modifications fix a security
+  hole reported by Martin Mokrejs) - TD
+* add HTSprintf, HTSprintf0 functions, to use in resolving potential buffer
+  overflows - TD
+* modify HTVMS_purge() to rename the remaining file to version 1 unless a
+  permissions problem was encountered - TD
+
+1998-11-10 (2.8.2dev.2)
+* some testing against Solaris gettext implementation, enough to see that it is
+  not really compatible either source or binary with GNU gettext.  For the time
+  being, I recommend building NLS support only with GNU gettext (and
+  --with-included-gettext to avoid conflict with Solaris' gettext in the
+  standard library).  Otherwise use the --disable-nls configure option - TD
+* various changes to configure script and makefiles to make this build with and
+  without NLS - TD
+* undo spurious substitutions such as gettext("") - TD
+* modify some gettext() expressions to avoid embedding HTML in them - TD
+* restore definitions in LYMessages_en.h - TD
+* first cut of integrating Jim Spath's changes to incorporate message library
+  support - JES, TD
+
+1998-09-20
+* edited files for language hooks (JES):
+  src/HTAlert.c src/HTInit.c src/HTML.c src/LYBookmark.c src/LYCgi.c
+  src/LYClean.c src/LYCookie.c src/LYCurses.c src/LYDownload.c src/LYEdit.c
+  src/LYForms.c src/LYGetFile.c src/LYMail.c src/LYMain.c src/LYMainLoop.c
+  src/LYMap.c src/LYNews.c src/LYPrint.c src/LYUpload.c src/LYUtils.c
+  src/LYexit.c
+  WWW/Library/Implementation/HTAABrow.c WWW/Library/Implementation/HTAAProt.c
+  WWW/Library/Implementation/HTAccess.c WWW/Library/Implementation/HTFTP.c
+  WWW/Library/Implementation/HTFWriter.c WWW/Library/Implementation/HTFinger.c
+  WWW/Library/Implementation/HTFormat.c WWW/Library/Implementation/HTGopher.c
+  WWW/Library/Implementation/HTMIME.c WWW/Library/Implementation/HTNews.c
+  WWW/Library/Implementation/HTRules.c WWW/Library/Implementation/HTStyle.c
+  WWW/Library/Implementation/HTTCP.c WWW/Library/Implementation/HTTP.c
+  WWW/Library/Implementation/HTVMSUtils.c WWW/Library/Implementation/HTWAIS.c
+  WWW/Library/Implementation/HTWSRC.c
+
+1998-09-08 (2.8.1dev25-intl)
+* Resynch with dev tree - JES
+
+1998-09-07 (2.8.1dev.21-intl)
+* About half through language hooks in WWW/Lib... - JES
+  Integrated part of Chebucto's French translations - JES
+* Included latest ABOUT-NLS from GNU project,
+
+1998-08-27 (2.8.1dev.21-intl)
+* Tested language hooks using src/LYNews.c and Italian messages file
+  provided by Sabato De Rosa <sabato.derosa@usa.net>.  Made changes to
+  LYMain.c, LYMainLoop.c, LYNews.c and HTNews.c - JES
+1998-08-27 (2.8.1dev.21-intl)
+* add hooks to GNU gettext for international language support - JES
+  (This is an experimental modification that will be patched into
+  the main Lynx release after other platform testing.  I've only done
+  NetBSD.)
+
+1998-11-05 (2.8.2dev.1)
+* relax the cookie sanity checking for version 0 (old) cookies _only when_ the
+  user has accept_all_cookies set (patch by Risto Widenius
+  <widenius@ling.helsinki.fi>)
+* modify get_listen_socket() to check if master_socket is set before attempting
+  to use it in FD_CLR (patch by Karl-Andre Skevik <karls@kosmo.inet.no>)
+* minor documentation fixes - DK
+* use $(LIBS) symbol in src/chrtrans/makefile.in (reported by Alois Maier
+  <m9235159@grz08u.unileoben.ac.at>) -TD
+* Fix core dump which may happen after printing-to-email - LP
+* Move read_rc() before parsing any command-line arguments (except -help)
+  so the latter will override any .lynxrc settings.  In particular, the problem
+  was detected with -cookie_file= which was ignored after saving values
+  from Options menu - LP
+* Chartrans bug: LYNXIMGMAP now shows the text in right charset.
+  (The page was converted twice, fixed by adding META charset to this internal
+  page.  The bug was in all versions of Lynx starting from 2.7.1ac) - LP
+* Oops, my typo from pre3 back to 27-09-98: windows-1252 appears twice
+  in the list of character sets in options menu, was also typo in docs - LP
+* modify HTDOS.c to permit compile with K&R compiler - TD
+
+1998-10-27 (2.8.1rel.2)
+* tidy up version numbers - TD
+* modify HTDOS.h to permit compile with K&R compiler - TD
+
+1998-10-24 (2.8.1rel.1)
+-----------------------
+* reorganize lynx_help_main.html - PW
+* minor change to WWW/.../tcp.h to eliminate redefinition warning by DEC C - TD
+* move checking for command-line "-head" and related options before curses
+  initialization so that program exits with correct terminal settings
+  (report by LV) -BL
+* correct uninitialized index into id_append in makeuctb, which causes problems
+  with def7_uni.tbl (analysis by LP)
+* add TAGSOUP flag to lynx.cfg to set initial state of Tag Soup vs SortaSGML
+  (request by LP) - TD
+* add PERSISTENT_COOKIES flag to lynx.cfg to allow disabling the persistent
+  cookies feature in a Lynx executable (request by BJP) - TD
+* modify read_cfg so that it does not display included-file information when
+  NO_CONFIG_INFO is defined (reported by LP) - TD
+* minor/cosmetic fixes for comments and documentation - LP
+* revised patch for nsl-fork, which does not rely on WNOWAIT definition - BL
+* include termio.h in LYCurses.c only #ifdef TERMIO_AND_CURSES (Philippe
+  De Muyter <phdm@macqel.be>)
+* modify cfg_defs.sh to work when the 'set' command emits double-quotes
+  (Paul Gilmartin)
+* update obsolete copy of HTFWriter.c to add content-encoding for HTFileSuffix
+  (reported by David Helder <dhelder@umich.edu) - TD
+
+1998-10-17 (2.8.1pre.11)
+* add dependency on cfg_defs.h to src/makefile.in for LYShowInfo.o
+  PG (Paul Gilmartin <pg@sweng.stortek.com>)
+* modify add_item_to_list() so that if the restriction flag is omitted from
+  a download/upload/extern line in lynx.cfg, it is assumed true.  Also check
+  for null command string in LYExtern.c (bug report by HN) - TD
+* modify logic in forms-options menu so that assume_char_set now works
+  correctly for any LYRawMode value by synchronizing gen_options() and
+  postoptions() via rawmode memory - LP
+* correct ifdef'ing in LYShowInfo.c for non-Unix platforms - LP
+* modify nsl_fork logic to handle a case where child exits successfully
+  right after parent's select timed out (reported by Serge Munhoven) - BL
+* small updates to lynx_help files and other documentation (BJP, PW, LV).
+* add #define's for later work to simplify configuring the maximum number
+  of cookies (suggested by BJP) - TD
+* flush output in makeuctb, as possible fix for build problems on systems that
+  do not implement POSIX 'exit()' call (reported by Serge Munhoven
+  <munhoven@mema.ucl.ac.be> and Jan Hlavacek) - TD
+* put GOTOBUFFER, JUMPBUFFER and QUIT_DEFAULT_YES back the way they used to be
+  (majority decision) - TD
+
+1998-10-14 (2.8.1pre.10)
+* add/use HTSYS_purge and HTSYS_remove functions (based on report by Tony
+  Bolton and patch by BJP dealing with removing older versions of cookie
+  files) - TD
+* add --disable-config-info option - TD
+* change configure script --enable-forms-options to --disable-forms-options,
+  add --disable-menu-options - TD
+* comment-out FM's code to fold cookie headers and force cookies to be
+  presented in the same order that they were received - BJP
+* use full "Implementation" directory name in include path in WWW djgpp
+  makefile - DK
+* use HTDOS_name() to force DOS temporary-directory into consistent form - DK
+* include HTVMSUtils.h and HTDOS.h from LYUtils.h, consolidate some ifdef's
+  using macro HTSYS_name - TD
+* another fix for HTTCP.c, for lookups with Lynx/32 - WB
+* add fallback to $TMPDIR for Lynx temporary directory on Unix - TD
+* remove verbose_links variable due to popular demand - TD
+
+1998-10-10 (2.8.1pre.9)
+* add verbose_links variable to lynx.cfg and userdefs.h to control whether Lynx
+  should show "(LINK)" before links (request/patch by Moshe Zadka
+  <moshez@math.huji.ac.il>) - TD
+* change defaults in lynx.cfg and userdefs.h, add comments - PW
+  (a) defaults are stated for `verbose' & `KB';
+  (b) GOTOBUFFER & JUMPBUFFER defaults to TRUE;
+  (c) QUIT_DEFAULT_YES defaults to FALSE
+* restore suggested file name in download menu:  it is really useful for other
+  download methods which should be available in menu when `save to disk' is
+  disabled.  Remove local_path/ prefix (LYNX_SAVE_SPACE if any) from visible
+  suggested file name string near the top instead - LP
+* restore newline position when toggling comments parsing (at least we could
+  return to previous screen to try comments toggling twice) - LP
+* add a link from keystrokes help for edit_help.html (input line keys) - LP
+* corrected to make -nostatus command-line option override HTReadProgress - TD
+* updates to lynx-dev.html (Al Gilman).
+* modify NSL-fork support in HTTCP.c to use waitpid call to reap child
+  processes which may otherwise become orphaned.  The new variable
+  "dns_patience" represents how many seconds we're willing to wait for DNS to
+  respond (should later make it configurable) - BL
+* modify PutTextInput and PutDefs macros in LYOptions.c and LYShowInfo.c to
+  avoid pre-ANSI compilers attempting to substitute macro parameters in
+  coincidental matches within quoted strings - BL
+  gcc -Wtraditional reports the first, but not the second, which is "n"
+  substituted into "\n" - TD
+* add an error-check for fg/bg values to lynx_chg_color function in case
+  lynx.cfg specifies color names not in Lynx's table - BL
+* modify IsOurFile function to accommodate links-to-links, so that users whose
+  home directory is reached by that type of path can save .lynxrc file
+  (reported by PW) - TD
+
+1998-10-04 (2.8.1pre.8)
+* modify HTTCP.c to copy soc_in from phost in HTParseInet, making Lynx/32 do
+  lookups again - WB
+* modify LYCurses.c to compile mouse-code with Borland C and PDCURSES 2.3 - WB
+* correct backward logic in CF_TERMIOS_AND_CURSES (reported by LE) - TD
+
+1998-10-04 (2.8.1pre.7)
+* add special-case CF_TERMIOS_AND_CURSES configure macro (fixes problem
+  reported by Philippe De Muyter) - TD
+* update/reorganize option_help.html - PW
+* restore newline position when return from the Print menu or follow a link
+  from History page (was broken for partial display mode only):  LYPop() and
+  LYPop_num now reinitialize Newline_partial if it happens on getfile stage.
+  Also remove changes from 1998-06-11 (case LYK_DOWNLOAD) since this is now
+  protected by HText_new() which never starts.  - LP
+* tweak suggested filename for download menu: now it we have URL
+  terminated with "/" (e.g., a directory or possibly root) do one more try -
+  remove terminating "/" - LP
+* download menu: do not show "Suggested file name" when "save to disk disabled"
+  (requested by HN) - LP
+* more tweaks on LYshow_kb_rate - LP
+* move fallback definitions for POSIX S_ISLNK, etc., to allow build with
+  VAX C (reported by Tony Bolton) - TD
+* add parentheses to eval-expression in CF_MAKE_INCLUDE configure test to
+  accommodate bash2 (Tadayoshi Okuma <tad@pht.co.jp>)
+
+1998-10-01 (2.8.1pre.6)
+* add EMX to special cases for SetOutputMode, to force stdout to O_BINARY mode
+  so that downloading binary files will not corrupt them (reported by Ilya
+  Zakharevich <ilya@math.ohio-state.edu>) - TD
+* correct missing "\n\" in change to LYrcFile.c for pre.4 (reported by David
+  Eaton) - TD
+* reorder HTCheckForInterrupt() so that partial display mode will work for
+  VMS (reported by LP) - TD
+* fix LYK_DOWNLOAD to restrict downloading remote links for local_host_only,
+  like it was done for mailto: links recently, see comments where in - LP
+* replace few statusline messages with ones from LYMessages.en.h -LP
+
+1998-09-30 (2.8.1pre.5)
+* force compile on VMS to use stdarg.h; it was ifdef'd for __STDC__ which
+  VAX C does not define, though it does support stdarg.h (reported by Tony
+  Bolton).  Test-compile HTVMS_WaisUI.c on Linux to check... - TD
+* update url for tcplib in INSTALLATION - DK
+* fix HTDOS_name trace massage - LP
+* expand "~" in include-statements in lynx.cfg (reported by LP) - TD
+* remove some obsolete stuff from INSTALLATION - HN
+* DOSPATH fix: user input URL like c:/path/file.ext (begins with drive letter)
+  now resolved as local path and will not be passed to DNS search in any case
+  (was running URL guessing process for host "c:" if file.ext not found...)
+  fix LYFillLocalFileURL() - LP
+* fix HTUserMsg2 trace massage - LP
+* add user's guide documentation for COOKIE_ACCEPT_DOMAINS and
+  COOKIE_REJECT_DOMAINS - BJP
+* change default Unix cookie-file name to "~/.lynx_cookies" - BJP
+* customize incremental rendering (Eric Brun <erbrun@bellatlantic.net>):
+  - add -partial_thres[=NUMBER] option to set the number of lines
+  - add PARTIAL_THRES config variable in lynx.cfg to set the number of lines
+  - add partial_thres variable in .lynxrc to set the number of lines.
+    Selecting save to disk and hitting Accept Changes in options menu will save
+    this variable to the current value.  Haven't looked into making a form
+    entry for this yet.  With -partial_thres command line option, probably not
+    necessary.
+* fix some text in lynx.man and Lynx_user_guide.html.  The man change includes
+  changes to "h" and "k" so they work whether or not vi keys are on - DK
+* workaround for inconsistency between slang ports to DOS and other platforms
+  by suppressing test of SLtt_Use_Ansi_Colors.  This fixes a problem where
+  colors change in the slang DOS port when the forms_based option menu is
+  accepted - DK
+
+1998-09-28 (2.8.1pre.4)
+* tentative fix for HPUX sed problems (reported by jones.peter@uqam.ca) - TD
+* update lynx.man and lynx.hlp to reflect new command-line options - TD
+* minor documentation fix - LP
+* miscellaneous fixes for build on VMS (reported by Tony Bolton) - TD
+* tweak 'const' assignment for VMS (in LYReadCFG.c and LYPrint.c) - LP
+* clarify discussion of download in Lynx user's guide (Al Gilman).
+* trim trailing newline from lines read from cookie file so that Lynx does
+  not send embedded newlines in the cookie list - BJP
+
+1998-09-27 (2.8.1pre.3)
+* fix a place in cookie_add{accept,reject}list() where cookies would be deleted
+  from memory if a persistent cookie had the same domain as an entry in
+  COOKIE_{ACCEPT,REJECT}_DOMAINS - BJP
+* move Lynx's writing of persistent cookies to COOKIE_FILE from happening when
+  you enter the Cookie Jar page to quit time, before cleaning up temporary
+  files - BJP
+* Lynx_user_guide.html: add text about lynx.cfg - LP
+* forms-options: options names moved 2 columns to the right (is it good?) - LP
+* fix reading .lynxrc "character_set" (trim trailing spaces in fullname) - LP
+* fix ReadProgress message for LYshow_kb_rate (while <1024 bytes received
+  we showed byte-transfer rate even in KB mode), extra dot removed - LP
+* DOS text files: opening text mode switch now incorporated in LYNewTxtFile/
+  LYAppendToTxtFile and hope for the best - LP
+
+1998-09-25 (2.8.1pre.2)
+* fixed forms submission charset: was broken by me in dev26 (HText_SubmitForm()
+  in GridText.c) - LP
+* documentation updates for verbose images - LP
+* minor fix for trace message in TrimHightext() -LP
+* add compatibility with 2.8/2.7.2 lynx.cfg and (especially) .lynxrc - old
+  "character_set" parameter now acceptable - LP
+* add OUTGOING_MAIL_CHARSET symbol to lynx.cfg to make mail more recognizable
+  by remote recipient, it may be "US-ASCII" for 7 bit approximation as the
+  safest case or any other value.  If blank, use display character set
+  (default, compatibility).  Currently implemented only for "subject" in
+  "print-to-email" - LP
+* fix SGML.c so invalid characters are not dispalayed in hex UHHHH but just
+  omitted as already done for plain/text mode - LP
+* fix download' suggested file name (8bit) - LP
+* correct logic error in "Change Location" command, and allow "~" there in
+  addition to the existing "~/" prefix (reported by Ismael Cordeiro) - TD
+* ifdef'd out "don't replace '\n' with ' ' if Chinese or Japanese" from dev.23,
+  with symbol EXP_JAPANESE_SPACES, FIX_JAPANESE_SPACES based on discussion with
+  HN, LP - TD
+* correct missing '\' in generated sed-script for "make install-help" rule,
+  which changed a couple of "/html" substrings to ".html" (reported by BL) - TD
+* modify cfg_defs.sh script to handle empty token in config.cache, e.g., a line
+  such as "foo=${foo=}" (reported by Philip Chong <pchong@boopsie.ml.org>) - TD
+* modify so that lynx_cfg_infopage() and lynx_compile_opts() pages are not
+  invoked when Lynx is running -anonymous - TD
+
+1998-09-22 (2.8.1pre.1)
+* correct logic error in parse_restrictions() which caused infinite loop,
+  probably from changes in dev.8 (reported by HN) - TD
+* add SHOW_KB_RATE symbol to lynx.cfg to allow user to control whether
+  HTReadProgress should show KB/sec or bytes/sec - TD
+* modify HTReadProgress to allow user to display KB/sec or bytes/sec - BL
+* add/use new function LYstyles(), to force initialization of styles[] array
+  when it is used outside HTML.c; fixes a problem with Lynx not using styles
+  for files listed on the command line - TD
+* correct keymap strings for F1 and DO_KEY - TD
+* add keymap table entries for F1, to accommodate slang which appears to ignore
+  terminal description when keymaps are defined - TD
+
+1998-09-20 (2.8.1dev.29)
+* add checks/warnings for user agent string in forms-options menu - TD
+* change render_item to force a '/' before substituted path or directory
+  strings if (as in OS/2 EMX) absolute filenames do not normally begin with a
+  '/' -TD
+* modify HTnameOfFile_WWW() to interpret an empty acc_method as a local file,
+  allowing its use in permit_location(), making OS/2 EMX dired-mode change
+  permissions work - TD
+* make download and print menus a little more compact in intermediate/advanced
+  user modes - TD
+* correct filename shown in download menu - LP
+* change behavior of configure --enable-forms-options switch.  By default, both
+  old and new options menu are available via a command-line toggle
+  "-forms_options" or lynx.cfg statement "FORMS_OPTIONS:TRUE/FALSE".  Configure
+  --enable-forms-options now _disables_ old-style code, which is
+  ifdef'ed with "#ifndef EXP_FORMS_OPTIONS" - LP
+* add more pointer-checks in GridText.c so that "lynx LYNXDOWNLOAD://" does
+  not crash (reported by Wilson Cheung) - TD
+* add special case to handle NNTPSERVER environment variable, which had been
+  lowercased as part of LYReadCFG.c cleanup (reported by Wilson Cheung
+  <wcheung@netcom.com>) - TD
+* modify info-page to add link to new internal page showing the noncomment
+  lines from lynx.cfg - LP, TD
+* use function wwwName to reduce clutter - LP
+* create "lynx.cfg Information" page, comments skipped, "include" OK.
+  The link is available from '='InfoPage and 'O'ptions menu.
+  Since DJGPP/Win32 binary have no built-in absolute path for distributions
+  lynx.cfg those ports will look for a copy of lynx.cfg in lynx_help/
+  for most advanced info/comments (if you made http:// depository for lynx help
+  please care of it) - LP
+* tweak helpfilepath URL (for DOSPATH only) - LP
+* some cleanup of cp852, cp850, cp775 - LP
+
+1998-09-17 (2.8.1dev.28)
+* minor fix to make PRCS ProjectDate print in "dd mmm yyyy" form - TD
+1998-09-17 (2.8.1dev.27)
+* minor fixes for recent (dev24 and dev25) chartrans changes - LP
+* add LYNX_DATE definitions in userdefs.h; Info Page now shows the date of your
+  lynx along with version number and a link to the latest sources.  - LP
+* use ECHO_CC symbol in install-help rule to control whether the sed commands
+  are echoed - TD
+* corrected install-help rule to avoid getting compress-suffix repeated in
+  the generated/updated files - TD
+* documentation nit for COLLAPSE_BR_TAGS (Michael Warner)
+* use getsockname_s rather than getsockname for djgpp (from patch by Gisle
+  Vanem) - DK
+* add .bz2 suffix to lynx.cfg and HTInit.c, for bzip2 utility - DK
+* modify store_cookie to suppress warning message for invalid domain if Lynx is
+  setup to accept all cookies - LV
+* modify/expand LYLocalFileToURL() function, getting rid of most places where
+  inline concatenation is used for "file://localhost/<filename>", as well
+  as eliminating a number of static buffers - TD
+* move fallback definitions for POSIX S_ISLNK, etc., out of NeXT ifdef's, to
+  make this compile on Apollo (reported by David Eaton) - TD
+* restructured pathname-tests in LYLocal.c, using common utility functions
+  ok_stat, ok_lstat, ok_file_or_dir to simplify freeing pointer allocated
+  by HTfullURL_toFile - TD
+* modify HTLocalName, making it a macro around a more flexible function
+  HTnameOfFile_WWW, to reuse logic for stripping off "file://localhost" and
+  "file:" prefixes, fixing some places where a spurious '/' would be left in
+  EMX local filenames (other macros: HTfullURL_toFile, HTpartURL_toFile) - TD
+* modify configure script macro CF_PATH_PROGS for OS/2 EMX, so that compiled-in
+  utility pathnames work - TD
+* use HTDOS.c module for OS/2 EMX, since it has similar device syntax - TD
+* correct logic for wrapping long lines, to not use the rightmost column of the
+  screen, fixes a problem with duplicated character (reported by LP) - TD
+* correct logic for dumping screen to file, so that blank lines are retained,
+  not counted in the logic for pruning soft-newlines which supports wrapped
+  lines - TD
+* add info and user messages to traces - TD
+
+1998-09-12 (2.8.1dev.26)
+* change behavior of NSL_FORK and related I/O (BL):
+  - Make URL guessing (www.huh.com?  www.huh.org?  www.huh.net?) interruptible.
+  - Make URL guessing from the command line interruptible.
+  - Use select() instead of FIONREAD.  This makes it work on OSes where
+    previously it only *looked* like it was working.
+  - select() on stdin as well as the child pipe, when using [n]curses (not
+    SLANG).  This allows interrupt to be processed instantly, without
+    up-to-1-second delay.
+  - While looping, 1 second at a time, bail out after "too many" (currently 50)
+    loops:  just in case something weird happens, like select() returning some
+    unexpected error that we ignore.
+  - Make sure child processes are always killed and reaped.
+  - Close pipe ends as soon as possible.
+  - Now write the length down the pipe (using a known-to-the-program length of
+    sizeof(int)) first -- this both helps workaround old CMU TCP bugs and the
+    fact that select() doesn't let us get number of bytes ready, like FIONREAD
+    does.
+* change default for NO_ANONYMOUS_EMAIL to TRUE (patch by HN)
+* use url for "W3C HTML Validation Service" rather than "A Kinder, Gentler HTML
+  Validator" -TD
+* update url for HTML Quick Reference Guide (report by LE) - TD
+* modify verbose images to show ISMAPs and USEMAPs (patch by LE).
+* fix typos in AttrList.h, LYStrings.h (reported by LV & HN) - TD
+* Chartrans recovery and cleanup:  by introducing an invariant
+  "current_char_set and UCLYhndl_for_unspec always valid charsets" we solve
+  possible problems with invalid/undeclared charsets.  Use
+  'safeUCGetLYhndl_byMIME()' for reading charset information from
+  lynx.cfg/userdefs.h/command line switches to recover possible typos by
+  fallback to ISO-8859-1; If UCLYhndl_for_unrec or UCLYhndl_HTFile_for_unspec
+  not set explicitely - now fallback to UCLYhndl_for_unspec (was before, but
+  not clear in certain places).  Add comments to UCMap.h, add comments on
+  chartrans initialization in LYMain.c.  UCAssume_localMIMEcharset and
+  UCAssume_unrecMIMEcharset now removed (UCLYhandl_* do all the stuff).  - LP
+* LYCharSets.c:  LYRawMode code simplified and comments added.  It was realized
+  that UCAssume_MIMEcharset may differ from its handler as LYRawMode history.
+  Also:  HTMLSetRawModeDefault() moved into HTMLUseCharacterSet() to reduce
+  clutter, declare HTMLSetCJKCharacterSet() as PRIVATE.  - LP
+* more "big5" bugs fixed (in HTMIME.c and HTFile.c); function Set_HTCJK() added
+  to LYCharSets.c - LP
+* LYCharUtils.c:  META charset code corrected against 2.7.2, obsolete code
+  removed - LP
+* partial mode now repaint the screen in one stage with a complete display
+  ('display_lines' received, fix in HTPartialDisplay()).  Incremental rendering
+  of the first page may be annoying on slow connection (reported by Nelson
+  Henry Eric <nelsonhe@nara.kindai.ac.jp>) - LP
+* temp fix for HText_trimHightext side effect from partial mode by introducing
+  a flag in HText_beginInput(), so this side effect still only happens for long
+  documents with forms input mixed with normal href= link.  - LP
+* print menu: fixed document URL near the top (was temp file name) - LP
+* forms-options menu: fixed screen size in Novice mode - LP
+* limit length of strings copied via tok_values[] in LYCookie.c - TD
+* clean up a few memory leaks in cookie_add_acceptlist() and
+  cookie_add_rejectlist() in LYCookie.c.  These were leaking 4 bytes for each
+  entry in COOKIE_ACCEPT_DOMAINS - BJP
+* fix to LYLoadCookies() which was causing duplicate invalid cookies to be
+  loaded - BJP
+* split out install-doc rule in top-level makefile to install extra
+  documentation files in $(libdir)/lynx_doc (request by HN) - TD
+* improved algorithm to set 'secure_value', used in forms-options to circumvent
+  spoofing (based on comments from Mike Castle) - TD
+* integrate WB's mouse changes (see 1997-04-24) for page-up/down into the Unix
+  flavors of mouse support (e.g., ncurses and slang) - TD
+* use ncurses define_key to implement lynx-keymaps (see dev.10) - TD
+* modify slang keymap code to work with slang 0.99-38 - TD
+* replace several ifdef'd pathname constructions to use LYAddPathToHome() - TD
+* make keymaps file consistently named on Unix and VMS - TD
+* remove redundant "Lynx" from internal-page titles (suggested by LP) - TD
+* remove install-log makefile target, generate cfg_defs.h file directly from
+  lynx_cfg.h and config.cache, to compile-in the configuration-definitions
+  rather than rely on external file lynx_site.txt - TD
+
+1998-09-06 (2.8.1dev.25)
+* corrected compiled-in path for lynx_site.txt - TD
+* implement logic for exec-links in forms-options page - TD
+* add configure options --enable-exec-links and --enable-exec-scripts - TD
+* correct logic for show-color in forms-options page (reported by DK) - TD
+* implement logic to set $DISPLAY in forms-options page - TD
+* add/use functions LYsetXDisplay() and LYgetXDisplay() to reduce clutter - TD
+* retain help-link on internal pages only for those where the pages would be
+  pushed onto the history stack, and only in novice mode - TD
+* absorb LYSystem.h into LYUtils.h, adding LYSystem() and LYSysShell functions
+  to LYUtils.c to hide djgpp clutter - TD
+* limit strings passed to mailer in LYMail.c to 7-bit ASCII, converting other
+  characters to '?'.  This guards against trash on the end of the mailing
+  address in a mailto link (from Duncan Simpson <dps@io.stargate.co.uk>).
+* add fallback definitions for <sys/stat.h> S_xxx macros to tcp.h (from report
+  by Francisco A Tomei Torres <fatomei@sandburg.unm.edu> that OpenStep 4.0
+  lacks definition for S_IWOTH) - TD
+* modify quote_pathname() so that for DJGPP it does not put single-quotes
+  around the result - DK
+* correct a missing assignment to turn bold off in split_line (GridText.c) - LE
+* Fixed: forms input in display_partial mode!  Previously hightext was printed
+  at wrong positions while loading was in process (try -debug_partial to see
+  the bug).  Fix made in HText_pageDisplay:  we call HText_trimHightext() which
+  was the main part of HText_endAppend() before.  Seems no more problems
+  reported from incremental rendering mode!  - LP
+* set PARTIAL mode ON by default, unless it disabled in lynx.cfg or by
+  configure --disable-partial option - LP
+* restore temporary -debug_partial switch, broken in dev.23 - LP
+* made trace in HText_appendCharacter() a little more readable
+  for lynx special characters - LP
+* chartrans:  human-readable character set names in Options Menu now changed
+  according to Netscape 4.x style - "language (MIMEname)", it looks more useful
+  and reduce chaos in people's heads.  Documentation corrected
+  (option_help.html/Lynx_User_guide.html).  Minor tip:  "Central and Eastern
+  European" was truncated to "Eastern European" because of space limitation in
+  popup menu.  (Changes in chrtrans/*.tbl, LYCharSets.c, also docs including
+  userdefs.h/lynx.cfg).  Since names were changed, users on display other than
+  iso-8859-1 should go to options menu and resave .lynxrc (and probably correct
+  lynx.cfg - character_set now uses MIME notation in sync with other charset
+  settings, although complete name string is still acceptable for this
+  field) - LP
+* an attempt made to tweak the code replacing lynx internal 'main' charset '0'
+  (iso-8859-1 in fact) with its MIME name - LP
+* rename ifdef EXP_8BIT_TOUPPER in favor of lynx.cfg switch
+  FORCE_8BIT_TOUPPER - LP
+* remove a lot of "(char **)" casts from HTML.c which obscured some type
+  mismatches - TD
+* add/use functions LYIsHtmlSep, LYAddHtmlSep, LYTrimHtmlSep, LYIsPathSep,
+  LYAddPathSep, LYTrimPathSep to reduce clutter - TD
+* fix a bug, present at least since dev.17, where lynx can't download files if
+  it is started from one of the root directories of a disk drive, since it is
+  trying to write to "c:\\file.ext", rather than "c:\file.ext" - DK
+* correct a comment in userdefs.h; commercial Japanese sites are named with
+  co.jp, not com.jp (LV).
+* correct some debug messages in LYCookie.c - BJP
+* fix a missing </h1> in ShowInfo.c - SKY
+* modified '+'->' ' conversion to allow Unix commands to have '+' beginning
+  options - TD
+* sorted all option items (i.e., static variables, postoptions(),
+  gen_options()) according to the sections they are in - SKY
+* added '+'->' ' conversion for forms-options values - SKY
+* centered 'save to disk' and put a dash between 'accept' and 'reset' for
+  clarity - SKY
+* add "-cookie_file=" commandline option to specify cookie file - BJP
+* add "cookie_file=" option to .lynxrc - BJP
+* add "cookie_file:" option to lynx.cfg - BJP
+* change default cookie file to "Home_Dir()/cookies" (or sys$login:cookies
+  for VMS, which may or may not work, DOS also needs to be checked) - BJP
+* add cookies switch to options menu - LP
+* Security considerations and form-based options:  items restricted in
+  gen_options() should be ALSO restricted under the same conditions in
+  postoptions() to prevent a limited access user to edit option's HTML code
+  manually and submit a restricted items.  This may be not a good idea to have
+  two functions in sync but those functions are synchronized anyway.  Please
+  read comments inside the functions if change something!  - LP
+* add new functions BeginInternalPage and EndInternalPage to reduce clutter in
+  code that sets up internal pages (email from LP).
+* change version in makefile.in to 2-8-1 -DK
+* the code in GridText that adds control characters to the current line
+  does not test for buffer overflow.  Normally Lynx gets away with this because
+  it will wrap the current line as soon as the line exceeds the display width,
+  but if you have a file with nothing but control characters with no
+  displayable text in-between (a few thousand hidden links will do), then Lynx
+  bombs.  Modified to silently ignore excess control characters as well as add
+  a few extra bytes when allocating the line buffer to allow for a bunch of
+  control characters followed by a kanji or utf-8 sequence.  (patch by Dick
+  Wesseling <ftu@fi.uu.nl>)
+* remove WWW/Library/Implementation/HTInit.c, which is not used, since
+  src/HTInit.c has this functionality - TD
+* change ID="<number>" in Lynx_users_guide.html to ID="<name>" to appease
+  weblint; tested with IE&NS - TD
+* Al's convention of '#<number>' into '#<id name>' in Lynx_users_guide.html is
+  included - SKY
+
+1998-08-31 (2.8.1dev.24)
+* re-correct DH's patch for COLLAPSE_BR_TAGS (reported by LV) - TD
+
+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
+* 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 - SKY
+* '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
+* modify treatment of COLLAPSE_BR_TAGS, so that if it is 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 (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, 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
+* 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
+  MakeNewTitle() - LE
+* reviewed the INSTALLATION file as it relates to DOS and updated it for the
+  newly released version of PDCurses 2.3.  Added the HAVE_GETBKGD define to
+  makefile.dos, fixes some of the unusual background color handling that was
+  present in the PDCurses DOS port - DK
+* correct ifdef:  LYOptions.c fails to build with -DEXP_FORMS_OPTIONS but
+  _without_ -DDIRED_SUPPORT (e.g., djgpp) - LP
+* redesigned cookie_add_{accept,reject}list in LYCookie.c -- they work now -BJP
+* added COOKIE_{ACCEPT,REJECT}_DOMAINS in .lynxrc handling to LYrcFile.c - BJP
+* slight spacing fix in lynx.cfg - BJP
+* 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
+  annoying (request by Philip Webb, Jason F 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 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
+* make most of the alert messages use HTAlert, for consistency - TD
+* exclude forms-options pages from Visited Links page - LP
+* The current keymapping for the DOS Slang ports maps the keys directly to lynx
+  actions via keymap.c.  There are several places in the code that test for
+  arrow keys, page up or down, home and end for special handling that depend on
+  the lynx definition of the keys.  Hence, the keys in the DOS Slang ports were
+  failing the tests and not working as expected.  The following patch now maps
+  these special keys.  They can no longer be mapped individually via the KEYMAP
+  mechanism in lynx.cfg.  Arrows should now work in GOTO fields.  Tested the
+  patch against the binaries maade by makefile.dos, makefile.dsl, and
+  makefile.wsl - DK
+* The wsl port seems to be working well with DISP_PARTIAL, make this the
+  default - DK
+* correct spelling in lynx.cfg - DK
+* modify HText_appendCharacter to wrap long lines when displaying HTML document
+  source - TD
+* add configure option --enable-cgi-links - TD
+* clarify discussion of no_proxy in lynx.cfg (Al Gilman).
+* Multilingual bookmarks:  now we store characters >127 in bookmark titles with
+  a more consistent and independent way, by keeping in unicode as &#UUUU
+  (NCR=numeric character reference).  The idea belongs to Klaus Weide & Andrey
+  Chernov (long ago).  It may be useful if we need switching display charset
+  frequently.  This is the case when you use lynx on different platforms, e.g.
+  on UNIX and from remote PC, but want to keep common bookmarks file valid.
+  Compatibility:  NCR as part of I18N and HTML4.0 specifications supported
+  starting with Lynx 2.7.2, Netscape 4.0 and MSIE 4.0.  New option to lynx.cfg
+  added:  NCR_IN_BOOKMARKS which is FALSE by default.  - LP
+* Tweak "print options menu" to exclude choises which are not available under
+  the certain conditions (print to the screen and lpansi on DOS/WINDOWS, print
+  to e-mail for local_host_only).  - LP
+* Forms options menu:  add a link on option_help.html; synchronize
+  option_help.html against Lynx_User_guide.html and lynx.cfg.  Rename label
+  "raw 8-bit or CJK Mode" with "CJK Mode" for CJK people and "raw 8-bit" for
+  others.  Cleanup postoptions() by introducing flags - LP
+* Force HTuncache_current_document if gen_options() invoked. This is a
+  dirty fix until we uncache previous document only when necessary.  - LP
+* Add time/date in addition to X-URL and BASE (PrependBaseToSource), (request
+  by Hans-Joachim Gurt <gurt@nacamar.net>) - LP
+* Turn partial_display off if we are not interactive (reported by Ari Moisio
+  <armoi@sci.fi>) - LP
+* more fixes/refinements for auto-configuring socks5 on AIX (report by Brian
+  Hauber) - TD
+
+1998-08-06 (2.8.1dev.20)
+* rename eat_all_cookies to accept_all_cookies everywhere - BJP
+* added ACCEPT_ALL_COOKIES lines to the dist lynx.cfg with the appropriate
+  description - BJP
+* added COOKIE_ACCEPT_DOMAINS and COOKIE_REJECT_DOMAINS to lynx.cfg.  These are
+  comma delimited lists of the domains to handle - BJP
+* added cookie_add_acceptlist and cookie_add_rejectlist to LYCookie.c, which
+  are passed the list of domains from lynx.cfg and add them to the global
+  cookie list.  These may be subject to change, as I might not be handling the
+  LYstrsep() right -- it works with dev19's LYstrsep(), but hasn't been tested
+  with Bela's...  - BJP
+* added a big ugly ifdef'd out section to LYrcFile.c with what I have so far on
+  the .lynxrc handling of COOKIE_{ACCEPT,REJECT}_DOMAINS.  Don't use it.  Makes
+  nasty segfaults - BJP (Brian J Pardy)
+* fix a bug where the DJGPP_KEYHANDLER version doesn't allow movement by arrow
+  keys within a text area.  Undo previous patch to LYGetFile.c, with LYgetch
+  now changed where it is defined in LYStrings.c, rather than at each place
+  where it is used.  The patch in LYStrings.c regarding Windows should fix the
+  problem with keymapping that occurred when we got rid of RAWDOSKEYHACK - DK
+* turn on DISP_PARTIAL in makefile.dos - DK
+* correct typo in LYOptions.c - BL
+* corrected logic of LYstrsep - BL
+* Few minor typos and forgotten notes in man/hlp/cfg files; also quote Bela's
+  note on lynx.cfg INCLUDE facility - LP
+* correct typos in makefile.wsl, makefile.dsl - LP
+* correct typos, fix character set problems in recent changes of
+  LYOptions.c - LP
+* move include for socks.h past tcp.h, to allow for redefinition of some
+  symbols on AIX (report by Brian Hauber) - TD
+* adjust headers so that each can be compiled separately, eliminating order
+  dependencies - TD
+* include tcp.h always from within HTUtils.h, to enforce ordering of headers
+  needed for socks5 definitions - TD
+* use S_ISREG, S_ISDIR macros to reduce clutter - TD
+* make test for OpenHiddenFile to overwrite user's file more stringent by
+  ensuring that the given pathname is not a link from a world-writable
+  directory (reported by BL, with suggested patch) - TD
+* add/use LYPathLeaf() function to reduce clutter of pathname-leaf parsing - TD
+* eliminate redundant definition of 'FREE() - TD
+* ifdef'd LYOptions.c to reduce unneeded code wrt --enable-forms-options - TD
+* check in OpenHiddenFile to ensure that we overwrite only regular files,
+  since we also force the file's permissions to 0600 - TD
+
+1998-07-31 (2.8.1dev.19)
+* modify OpenHiddenFile so that it can overwrite files owned by the real
+  user if the O_EXCL open fails because the file already exists - TD
+* add experimental forms-based options screen (Mike Castle):
+  This is ifdef'd with EXP_FORMS_OPTIONS and configured with
+  --enable-forms-options.
+* add option -eat_all_cookies and corresponding config variable
+  EAT_ALL_COOKIES - BJP (Brian J Pardy <posterkid@psnw.com>)
+* correct spurious 'Content' string versus newline after X-URL in LYMail.c
+  (Bela Lubkin, LV).
+* updated versions of config.guess and config.sub based on automake 1.3 - TD
+* updated experimental persistent-cookie support based on RP's patch:  Replaced
+  the call to strsep with a home-rolled one for those people who don't have it.
+  (Reported by Bela Lubkin, Mon, 27 Jul 1998 16:51:14 -0700 on the mailing
+  list.) Bela's modification to make some character arrays static is also
+  included -TD
+* nits/spelling in LYPrint.c, LYUtils.c (reported by Mike Castle) -TD
+* changed LYGetFile.c to build lynx2.8.1dev.18 with SLANG and the
+  DJGPP_KEYHANDLER for DOS - DK
+* fix a couple of places where the return-value of calloc was not checked
+  (reported by Mike Castle <dalgoda@ix.netcom.com>) - TD
+* correct typo in command-line parsing of -lss option (reported by Chris
+  Kottaridis <chrisk@BSDI.COM>) -TD
+* define _AIX if needed for socks5 (request by Brian Hauber) - TD
+* improved configure test for getgroups array type - TD
+
+1998-07-24 (2.8.1dev.18)
+* improved test for socks5, to account for special cases on AIX (reported by
+  Brian Hauber) - TD
+* several changes to reduce the number of gcc cast-qual warnings, by adding
+  CONST, removing casts - TD
+* add configure option --enable-syslog to enable system logging of requested
+  URL's - TD
+* add RP's experimental persistent-cookie support, and configure option
+  --enable-persistent-cookies, ifdef'd with EXP_PERSISTENT_COOKIES - TD
+* removed references to DOSRAWKEYHACK, which is no longer used.  Modified the
+  dos makefile for libwww and makefile.dsl to default to using display_partial.
+  Modified INSTALLATION to reflect the successful use of slang with the dos
+  port and the now confusing alternatives when compiling the dos port, along
+  with some other updates - DK
+* modify lynx_enable_mouse() for pdcurses configuration so that mouse support
+  is disabled unless -use_mouse is specified.  This is ifdef'd with
+  __BORLANDC__ for the time being (WB).
+* resync build-slang.com, against build.com - TD
+* add $(MMSQUALIFIERS) to top-level descrip.mms, e.g., to use options such as
+  /FROM, /IGNORE, /NOACTION, etc., and $(INCLUDES) definitions to lower-level
+  descrip.mms files.  Improve error-recovery in build.com (patches by Liam
+  Davis <ld@stian.demon.co.uk>)
+* use memset to clear soc_in fields before doing a connect, needed for BSD/OS
+  (patch by Jeffrey C Honig <jch@bsdi.com>).
+* remove spurious sprintf params when using FIXED_RECORD_COMMAND_MASK which has
+  only one parameter, change VMSsignal from void* to void (report by Mike Xun
+  Ma <mike@mira.concordia.ca> ) - TD
+* use open(O_CREAT|O_EXCL) to open new hidden files - TD
+* eliminate_*putenv_cmd variables used by LYReadCFG.c as placeholders for
+  putenv calls - TD
+* disable include of <sys/filio.h> for VMS, from report by Chris Doran) - TD
+* fixes for VMS: mismatched curly brace, etc., from CTRACE and buffer-overflow
+  changes (reported by chris.doran@gblis.mail.abb.com) - TD
+* correct a loop in HTML_start_element that strips 7 leading characters from
+  an href, fixes a core-dump in traversing ".." to "/" - TD
+* use new macro SetOutputMode to reduce some clutter - TD
+* modify interface of LYCachedTemp so fileCache member is reset to null, fixes
+  bug in my recent cleanup of temp-files, which caused a core-dump - TD
+* add kb/sec rate to HTReadProgress message - TD
+* modify computation in HTReadProgress to interpolate rate - LP
+* One more fix for DISP_PARTIAL: to avoid blinking while reloading document
+  with Newline_partial > 1 (say, we press '*' and noproxy) we repaint the page
+  only when Newline_partial <= HText_getNumOfLines() - LP
+* add "-verbose" command-line switch - LP
+* DOS fix: open stdout in TEXT mode for -help and startup error message - LP
+* correct use of $mapname variable in CF_ALT_CHAR_SET (Tomas Vanhala)
+
+1998-06-25 (2.8.1dev.17)
+* add configure option --with-socks5 (request by Brian Hauber
+  <bhauber@frenzy.com>) - TD
+* define symbols HAVE_CURSESX_H, HAVE_JCURSES_H (report by Georg Schwarz
+  <schwarz@physik.tu-berlin.de>) - TD
+* modify logic that reports progress of download to update screen no more than
+  once per second, fix an overrun problem (reported by Jacob Poon
+  <a324poon@cdf.toronto.edu>) - TD
+
+1998-06-11 (2.8.1dev.16)
+* modify configure script to check for special compiler options which are
+  assumed for particular platforms (suggested by BL) - TD
+* modify display_page in GridText.c so that TRACE does not cause a repaint,
+  since that causes colors to be incorrectly rendered when tracing - TD
+* fix a few of the signed/unsigned mismatch warnings in GridText.c - TD
+* correct pathname in LYOpenScratch call for bookmarks (reported by DK) - TD
+* DISP_PARTIAL:  fix initialization of newdoc.line (case LYK_DOWNLOAD,
+  mainloop) to correct display while 'd'ownloading files (it was initialized
+  _after_ the download completed and was good enough without display_partial
+  mode).  - LP
+* correct some ifdef's for DISP_PARTIAL - LP
+
+1998-06-04 (2.8.1dev.14)
+* minor formatting fixes and documentation for upload screen - LP
+* remove config.cache at beginning of configure script - TD
+* eliminate cast for GetChar in LYStrings.c (from bug report by Michael Warner,
+  analysis by BL) - TD
+* shorten logs from WWW/* by disabling echo of compiler options as in src/* -TD
+* add configure test for types pid_t and uid_t - TD
+* add configure test for array type used in getgroups call, to distinguish
+  between BSD and POSIX variations which use different sizes - TD
+* modify configure script to compile DISP_PARTIAL code by default - TD
+* fix compiler warnings dealing with unreached statements - TD
+* change 'keymap[] array to unsigned char, move logic that relies on its size
+  into LYKeymap.c - TD
+* make LYOpenScratch() work properly for 8.3 names (reported by DK) - TD
+* DISP_PARTIAL:  introduce separate variables Newline_partial and
+  NumOfLines_partial, initialize them in mainloop and synchronize with Newline
+  later when the reload completes (case NORMAL).  To reduce the CPU usage while
+  downloading, call HText_pageDisplay only if NumOfLines_partial is in the
+  current display page or any Scroll key pressed by the user.  We disable
+  partial_display if requested URL have #fragment, otherwise user will see the
+  top page first (yes, s/he will be moved to #fragment when the download
+  completed, but only if no scroll keys were pressed before!).  Processing of
+  "END" key changed from MAXINT to real number of lines in the document
+  (important for display_partial mode) - LP
+* correct problem that caused DGJPP version built with slang 1.2.2 to lose its
+  socket whenever the rendering of a http URL is interrupted with "z".  This is
+  in HTCheckForInterrupt in LYUtils.c (reported by John Lewis) - DK
+* add files pdcurses.key, slang.key, djgpp.key to document the keybindings
+  used for DJGPP version - DK
+* allow mapping of ALT and Function keys with the DOS port for both the
+  PDCurses version and the SLANG version with the DJGPP keyhandler.  The
+  extended keys to be mapped have to be specified numerically according to the
+  definitions in curses.h (for PDCurses) or in keys.h (for SLANG with DJGPP
+  keyhandler).  DJGPP maps keys up to 0x293, while PDCurses maps keys up to
+  0x1c0 - DK
+* don't try to use -std1 option for gcc on Digital Unix (reported by Michael
+  Warner <warner@wsu.edu>) - TD
+
+1998-05-23 (2.8.1dev.13)
+* use new function LYLocalFileToUrl to cleanup some pathname references - TD
+* eliminate 'tempname()' function, using LYNewTxtFile, etc., with new functions
+  LYOpenTemp, LYCloseTemp, etc., so that temporary files are opened with
+  appropriate permissions - TD
+* correct use of cache variable in CF_ALT_CHAR_SET (reported by BL) - TD
+* spell out the logic in HTPlain.c against 2.7.2:  there was a certain problem
+  with chartrans in text/plain mode (LYRawMode was wrongly interferring,
+  problem reported by Jacob Poon & FM).  - LP
+* modify logic for zero-width spaces in conv_uni_to_pc to exclude 0x200a - LP
+* supply missing "break", which was forcing raw utf-8 output in URLs (NOT hex
+  escaped) - LP
+
+1998-05-14 (2.8.1dev.12)
+* remove unneeded definition used in testing dev.11 from config.hin) - TD
+1998-05-14 (2.8.1dev.11)
+* fixes for function-keys with slang configuration on DOS (patch by DK).
+* correct missing '&' in command-line options entry for syslog (reported by
+  HN) - TD
+* correct initial value for NoColorvideo with PDCurses, from my error in
+  1998-05-10 integration (reported by DK) - TD
+
+1998-05-10 (2.8.1dev.10)
+* eliminate assignment to stderr for trace-file by making tfp a function - TD
+* added keymaps/keysym patch (it really should be integrated with the normal
+  lynx.cfg file (John E Davis).
+* tweak chartrans, "Convert the octet to Unicode":  incoming symbols >127 but <
+  LYlowest_eightbit[IN-charset] now ignored, previously displayed as UFFFD.
+  (SGML.c, HTPlain.c, LYCharUtils.c) - LP
+* removed conflicting/unused declaration of 'bzero()' from tcp.h (from report
+  by Ashraf Zorkani <zorkani@aucegypt.edu>) - TD
+* modify the set/unset/toggle options to allow "on" and "off" values also - TD
+* apply the "partial display" patch, modified from
+      http://www.flora.org/lynx-dev/html/month0398/msg00993.html
+  The behavior is controlled by a compile-time option (DISP_PARTIAL), by a
+  command-line argument (-partial), and by a lynx.cfg option (PARTIAL).  - BL
+* extend command-line option processing of set/unset/toggle options
+      -toggle-     (set that toggle to FALSE)
+      -toggle+     (set that toggle to TRUE)
+  e.g.,
+      lynx -show_cursor+ -case-
+  or with explicit 1/0 values, e.g.,
+      -toggle=0     (set that toggle to FALSE)
+      -toggle=1     (set that toggle to TRUE)
+  NOTE:  this allows you to change a few flags that would previously have been
+  controlled by lynx.cfg, and are security-related, such as -locexec or
+  -telnet.  I believe there is no issue, because if the user can control the
+  command line to Lynx, he could have run `lynx -cfg my_cfg_file` and
+  circumvented those settings anyway.  - BL
+* fix for buffer-overrun in LYMail.c when processing a mailto:very-long-address
+  URL - BL
+* correct, for OS/2 EMX, a place in LYConvertToURL() which must not use
+  HTDOS_wwwName() (patch by Jason F McBrayer <jmcbray@mailhost.tcs.tulane.edu>)
+* similar changes to LYCurses.c, LYMain.c, LYStrings.c, add src/makefile.wsl,
+  for building DOS version with slang - Bill Schiavo
+* modify LYCurses.c, LYMain.c, LYStrings.c, add src/makefile.dsl, for building
+  DOS version with slang - DK
+* fix to improve reloading if user changed assume_charset in options menu
+  using ^A, which sometimes did not work - LP
+* add several chartrans-related files to test/ directory:  spaces.html,
+  c1.html, raw8bit.html - LP
+* fixes to compile on SunOS with K&R compiler - TD
+
+1998-05-03 (2.8.1dev.9)
+* correct missing counter increment in tempname(), from cleanup - TD
+
+1998-05-02 (2.8.1dev.8)
+* Fix for CGI-related URLs processing (syntax:  ?x=1&yz=2).  To avoid interfere
+  with SGML we restrict '=' as terminator for a named entity, this only applied
+  for HREF= attribute translation (LYCharUtils.c).  (reported by Alex Matulich
+  alex@unicorn.us.com & FM).  - LP
+* restore information in the INSTALLATION file for the DOS port on patching
+  tcplib.  Also, clarifies the location of nullpkt.  It also clarifies
+  that the PDCurses beta has incorporated some of the patches we made for
+  the lynx DOS port - DK
+* modify logic that updates bookmark file after removing a link to use copy
+  rather than rename, to solve file-ownership problems (patch by Paul
+  Gilmartin, though I kept the permissions check) - TD
+* reduce a little of the clutter in tempname() with fmt_tempname, and
+  bad_tempname functions.  Though this doesn't address the security problems it
+  does fix the problem with signed getpid values.  - TD
+* simplify LYUtils.c with compare_type() function - TD
+* add/use string functions LYLowerCase, LYUpperCase, LYRemoveBlanks (replaces
+  collapse_spaces), LYTrimLeading, LYTrimTrailing (incidentally fixes core-dump
+  in LYCookie.c) - TD
+* rewrite read_cfg function to make it more table-driven (reworked from a
+  patch by John E Davis) - TD
+* rewrite parse_arg function to make it more table-driven (reworked from a
+  patch by John E Davis) - TD
+* omit -Olimit compiler option on Digital UNIX 4.0 (patch by Tomas Vanhala).
+* modify configure test for acs_map[] array to work on Digital UNIX 4.0
+  (reported by Jim Spath and Tomas Vanhala <vanhala@ling.helsinki.fi>).  - TD
+
+1998-04-23 (2.8.1dev.7)
+* fix core-dump when pressing '.' on a page with no links (patch by
+  Jan Hlavacek <lahvak@math.ohio-state.edu>).
+* initial changes to use macros CTRACE and tfp to replace explicit use of
+  stderr for the trace log.  Remaining work is required for some complex
+  expressions, switching file pointers and for perror-substitute - TD
+* ifdef's for OS/2 EMX, mostly pathname tweaks (patch by Jason F McBrayer
+  <jmcbray@mailhost.tcs.tulane.edu>).
+
+1998-04-18 (2.8.1dev.6)
+* correct misplaced ifdef in LYMail.c, which caused Cc to not work (patch
+  by LE).
+* convert \x escapes to octal form (reported by Claude Soma) - TD
+* modify configure script to check for cursesX before curses library, for
+  ultrix 4.3 (reported by Claude Soma <soma_c@decus.fr>) - TD
+* incorporate lpansi into LYPrint.c (patch by HN).
+* modify top-level makefile to use INSTALL_PROGRAM and INSTALL_DATA
+  consistently, rather than installbin and installdoc (reported by
+  <karl@deas.harvard.edu>).  - TD
+* modify treatment of -auth and -pauth options to allow setting a blank
+  password, e.g., -pauth=user:  specifies a blank password, and -pauth=user
+  leaves the password unspecified (patch by Frederick P Herrmann
+  <fph@tiac.net>).
+* Change documentation to indicate "Lynx.trace" file rather than
+  "lynx.trace" -TD
+* Change default for USE_TRACE_LOG in userdefs.h to TRUE, to make behavior
+  consistent with 2.7.2 - TD
+* Rename no_color_video symbol in LYCurses.c to NoColorVideo, to avoid conflict
+  with term.h, which is included by curses.h on some systems (reported by Paul
+  Gilmartin) - TD
+* modify include-path in djgpp makefile to avoid conflicting tcp.h - DK
+* Add -tagsoup option, for initializing parser directly to TagSoup - TD
+* Modify HTML.c, ifdef'ing some of the logic involved in unstacking tags.  It
+  appears to be not completely necessary:  makes Lynx a little faster, at the
+  cost of making the tagsoup parser do the wrong thing.  Some entries in the
+  tagsoup DTD table versus the sortasgml table have SGML_EMPTY versus
+  SGML_MIXED.  This information is used to control unstacking (in the
+  color-style configuration as well).  There is still a problem evidenced
+  when toggling between the two parsers in the Lynx main help page, but that
+  appears to be missing logic in 2.8's version of the tagsoup parser.  - TD
+* Modify HTTCP.c to check the length returned from gethostbyname(), which
+  returns 0 on error on a SunOS 4 system (reported by Paul Gilmartin) - TD
+
+1998-03-29 (2.8.1dev.5)
+* Fixed my typo for FNAMES_8_3 define - WB
+* Added SYSTEM_MAIL and SYSTEM_MAIL_FLAGS defines for DOSPATH target - WB
+* Better kluge to set terminal type for DOSPATH - WB
+* Restored DOSPATH kludge to get to root of directory - WB
+* Added a bit of missing _WINDOWS_NSL ifdef'ing - WB
+* Minor DOS dirent mod to work with Tom's rearrangements - WB
+* Changed #if XYZ to #ifdef XYZ in tcp.h for dumb (?) compilers - WB
+
+1998-03-25 (2.8.1dev.4)
+* restore original string in LYUtils.c when user enters a badly formed or
+  nonexistent URL when prompted for Goto/history list.  Otherwise Lynx would
+  always attempt to load a local file if the original string omits scheme://
+  prefix but guessing fails (patch by Randall <hezekiah@may98.rahul.net>).
+* tweak formatting of .message in HTFTP.c so it has leading/trailing blank
+  lines (patch by Ismael Cordeiro <ismael@CAM.ORG>)
+* retested 'make depend' rule (for LV (Larry Virden)) - TD
+* eliminate (except for absolute pathnames, as in VMS) quoted includes - TD
+* remove WWW/Library/Implementation/HTAlert.[ch], since they conflict with
+  src/HTAlert.[ch], and are not used - TD
+* replace the [LINK], [INLINE] and [IMAGE] comments (for images without ALT)
+  with filenames of these images.  This feature can be enabled or disabled by
+  setting VERBOSE_IMAGES in lynx.cfg and/or userdefs.h (patches by
+  Helen Sommer <helen@voland.cc.huji.ac.il>,
+  Bill Schiavo <wschiavo@concentric.net>)
+* consistently use ${cf_cv_ncurses_header-curses.h} rather than
+  $cf_cv_ncurses_header in configure script, as noted by JES - TD
+* tweak include of HTML.h in HTFile.h to fix compile problem on VMS (we really
+  should not use quote-style includes) - TD
+* fixes to LYStyle.c to make color-style code work on Digital Unix 4.0 - TD
+
+1998-03-20 (2.8.1dev.3)
+* Added death for Win/DOS clients that don't have a TMP space defined - WB
+* Added _WINDOWS_NSL to provide interruptable lookups in Win32 per a
+  patch from afn06760@afn.org. (modified hopefully for borland AND Cygwin and
+  hard defined in tcp.h).  I had to recompile everything in multithread
+  mode for borland, including my zlib library - WB
+* Added _WINDOWS as a target for FNAMES_8_3 in userdefs.h to allow for 16
+  bit helper apps that can't handle LFN's. (report by afn06760@afn.org) - WB
+
+1998-03-18 (2.8.1dev.1)
+* correct an ifdef that caused inconsistent pathname separators on Windows
+  (reported by afn) -DK
+* correct a missing AC_MSG_RESULT in configure.in (also MM) - TD
+* guard against illegal (e.g., zero) value for DEFAULT_CACHE_SIZE, when it is
+  read from lynx.cfg (reported by Martin Mokrejs
+  <mmokrejs@prfdec.natur.cuni.cz>) - TD
+* implement simple 'include' facility for lynx.cfg - BL
+* change TagClass and TagFlags to #define's to accommodate older compilers
+  which do not accept initialization of enums from data that do not correspond
+  to the declared values, e.g., CLIX (which complains) and Apollo (which fails
+  to compile, reported by Dave Eaton).  - TD
+* remove some obsolete definitions from userdefs.h, tcp.h and HTUtils.h - TD
+* remove obsolete files from WWW/Library - TD
+
+1998-03-12
+* UPPER8: a separate function HTMLSetDisplayCharsetMatchLocale() introduced
+  (LYCharSets.c). Locale mismatch assumed for DOS/WINDOWS display charsets. -LP
diff --git a/COPYHEADER b/COPYHEADER
new file mode 100644
index 00000000..a3d300e9
--- /dev/null
+++ b/COPYHEADER
@@ -0,0 +1,38 @@
+Most of the content of the lynx release (and corresponding copyright) is
+the work of developers on the lynx-dev mailing list, who have agreed to
+distribute their work under the terms and conditions of the GNU Public
+License (Version 2).  Note that the License text after the terms and
+conditions is advisory in nature, and contains neither terms nor
+conditions.  You may choose to follow that advice.
+
+Any licensing questions should be directed to the mailing list:
+
+	lynx-dev@nongnu.org
+
+or to the maintainer (Thomas E. Dickey):
+
+	dickey@invisible-island.net
+
+For reference, below is the original copyright notice for Lynx (2.4.2).
+------------------------------------------------------------------------------
+/* Copyright (C) 1995 University of Kansas.
+
+   This file is part of Lynx, a text-based WWW browser. 
+
+   Lynx is free software; you can redistribute it and/or modify it
+   under the terms of the GNU General Public License, version 2, as
+   published by the Free Software Foundation.
+
+   Lynx is distributed in the hope that it will be useful, but WITHOUT
+   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+   or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
+   License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with Lynx; see the file COPYING.  If not, write to the Free
+   Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+   02111-1307, USA.
+
+   Any licensing or usage questions should be directed to Michael
+   Grobe <grobe@ukans.edu>.
+*/
diff --git a/COPYHEADER.asc b/COPYHEADER.asc
new file mode 100644
index 00000000..df5cdade
--- /dev/null
+++ b/COPYHEADER.asc
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.5 (GNU/Linux)
+Comment: See http://invisible-island.net/public/public.html for info
+
+iD8DBQBFJtEJcCNT4PfkjtsRAnytAKC3rO7DVxVNHICFIKX+vgCCtFjc8wCfUnye
+cUEFsCqkOK7Xf7APdEsTc+k=
+=p72x
+-----END PGP SIGNATURE-----
diff --git a/COPYING b/COPYING
new file mode 100644
index 00000000..ccbfd0d9
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,342 @@
+See the COPYHEADER file which gives copyright information for Lynx.
+------------------------------------------------------------------------------
+		    GNU GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+                       59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+		    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+			    NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
+
+	    How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/COPYING.asc b/COPYING.asc
new file mode 100644
index 00000000..4c107899
--- /dev/null
+++ b/COPYING.asc
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.5 (GNU/Linux)
+Comment: See http://invisible-island.net/public/public.html for info
+
+iD8DBQBFJtJ/cCNT4PfkjtsRArLIAJ4gKHdikok6gCcKfizm9T3HdEEP+wCfUj+N
+9sC1gLEOekFUgKVqYsSTP+w=
+=aDfb
+-----END PGP SIGNATURE-----
diff --git a/INSTALLATION b/INSTALLATION
new file mode 100644
index 00000000..3dcc566d
--- /dev/null
+++ b/INSTALLATION
@@ -0,0 +1,1390 @@
+
+                      Lynx Installation Guide
+
+This file describes how to compile and install Lynx.  A description of Lynx
+can be found in the README file.  Lynx has been ported to UN*X, VMS, Win32
+and 386DOS.  The procedures for compiling these ports are quite divergent
+and are detailed respectively in Sections II, III, IV and V.  General
+installation, problem solving and environment variables are covered in
+Sections VI and VII.  There is also a PROBLEMS file in the same directory
+as INSTALLATION which contains advice for special problems people have
+encountered, especially for particular machines and operating systems.
+
+If you still have difficulties, send an e-mail message to the Lynx-Dev mailing
+list (see the README file).  Try to include information about your system,
+the name and version of your compiler, which curses library you are using
+and the compile-time errors.  Be sure to say what version and image-number
+of Lynx you are trying to build (alternately the top date of the CHANGES file).
+
+If you don't understand what one of the defines means, try the README.defines
+and *.announce files in the docs subdirectory.  The docs/CHANGES* files record
+the entire development history of Lynx and are an invaluable resource for
+understanding how Lynx should perform.
+
+First, you must configure Lynx for your system regardless of the port you use.
+Follow the instructions given immediately below to configure for your system,
+and then go to the respective section concerning the port you wish to compile.
+
+I. General configuration instructions (all ports).
+
+Step 1.  Compile-time Variables.
+
+  There are a few variables that MUST be defined if Lynx is to build
+  and there are others you may want to change.
+
+  Lynx MUST be able to find lynx.cfg at start-up: using configure
+  (e.g. with UNIX or Cygwin), its location is best set with --sysconfdir ;
+  you can check in lynx_cfg.h after configure has run, if you wish.
+  otherwise, you can use LYNX_CFG_FILE in userdefs.h ,
+  environment variable LYNX_CFG or the -cfg command-line option.
+
+  If you are using configure, you need not make any changes in userdefs.h .
+  There are a few variables you can't define with configure --options
+  but can define in userdefs.h , e.g. numbering fields as well as links.
+  Many variables which can be defined with configure or  userdefs.h
+  can also be defined in lynx.cfg or via the Options Menu.
+
+  Lynx implements Native Language Support.  Read "ABOUT-NLS", if you want
+  to build an international version of Lynx or tailor status-line prompts,
+  messages and warnings to the requirements of your site.
+
+Step 2.  Run-time Variables.
+
+  Read  lynx.cfg  thoroughly, as many Lynx features and how to use them
+  are explained there, in some cases ONLY there.  Set up local printers,
+  downloaders, assumed character set, key mapping and colors in  lynx.cfg .
+  Also see the sample mime.types, mailcap and jumps files
+  in the samples subdirectory.
+
+Step 3.  Alternative Character Sets.
+
+  You may skip this, if you are not interested in special characters
+  and all local files or WWW pages you will view will use the ISO-8859-1
+  "ISO Latin 1" Western European character set.
+
+  If you will be running Lynx in an environment with different incompatible
+  character sets, configure CHARACTER_SET (the Display character set)
+  and ASSUME_LOCAL_CHARSET to work correctly before creating bookmark files
+  and other such items: read lynx.cfg for detailed instructions.
+  Additional character sets and their properties may be defined with tables
+  in the src/chrtrans directory: see the README.* files therein.
+
+Step 4.  News.
+
+  Set NNTPSERVER in lynx.cfg to your site's NNTP server
+  or set the environment variable externally.  For posting to be enabled,
+  NEWS_POSTING must be TRUE in userdefs.h or lynx.cfg.
+  Also define LYNX_SIG_FILE in userdefs.h or lynx.cfg ,
+  so that it points to users' signature files for appending to messages.
+
+Step 5.  Anonymous Accounts *** VERY IMPORTANT!!!!! ***
+
+  If you are building Lynx for personal use only, you can skip this.
+
+  If you are setting up anonymous accounts to use Lynx captively,
+  i.e. making Web access publicly available to users who should not
+  be allowed any other type of access to your system,
+  you are STRONGLY advised to use the -anonymous command-line option:
+  if you do not use this option, users may be able to gain access
+  to all readable files on your machine!
+
+  Many implementations of telnetd allow passing of environment variables,
+  which might be used to modify the environment in anonymous accounts,
+  allowing mischief or damage by malicious users, so make sure the wrapper
+  uses the -cfg and -homepage switches to specify  lynx.cfg  and start-file,
+  rather than relying on variables LYNX_CFG, LYNX_CFG_FILE and WWW_HOME.
+
+II. Compile instructions -- UNIX
+
+1a. Auto-configure.  The auto-configure script uses autoconf2.13 to generate a
+    Bourne shell script, configure, which creates "makefile" and "lynx_cfg.h".
+
+    If you are on a UNIX platform, the easiest way to build Lynx is to type:
+
+	    ./configure
+    and
+	    make
+
+    NOTE:  Configure has a number of useful options.  Please see below.
+
+    NOTE:  The 'configure' script generates auxiliary files "config.status"
+    "config.cache" and "config.log".  Normally you will not notice these;
+    they are created automatically and removed by a "make distclean".
+
+	+ If you wish to rebuild Lynx with a new host, or change ANY of the
+	  parameters which are stored in config.cache, you MUST first remove
+	  the config.cache file before running configure; its options do NOT
+	  override the settings in that file.
+
+	+ The config.status file is a script which creates (or regenerates)
+	  the files created by the configure script.
+
+    Please report problems in the configure/make process by including a copy
+    of config.status, config.cache and config.log, as well as the pertinent
+    compiler diagnostics.
+
+    See the note in aclocal.m4 for special instructions if you must modify the
+    configure script.
+
+    NOTE:  Lynx is a curses-based application, so you must have a curses
+    library available to link to.  Native curses (on the system when it was
+    installed) are often broken, so you may get superior performance if you
+    have either "ncurses" ("ftp://invisible-island.net/ncurses") or "slang"
+    ("ftp://space.mit.edu/pub/davis/slang").  If you install these libraries
+    in your home directory or a non-default location, you may need to set the
+    CPPFLAGS (full path to include files) and LIBS (full path to library files)
+    environment variables BEFORE running configure.  See "1d. Environment".
+    Use the "--with-screen=ncurses" or "--with-screen=slang" option.
+
+    Note that while lynx will build with a variety of versions of curses and
+    ncurses, some will be less satisfactory.  Versions of ncurses before
+    1.9.9g will not render color properly.  Some other versions of curses do
+    not display color at all.  Likewise, lynx may not build with old versions
+    of slang, e.g., before 0.99-38, because slang's interfaces change
+    periodically.
+
+    Note compiler/system specific problems below.  See also:
+	http://invisible-island.net/ncurses/ncurses.faq.html
+
+1b. Platforms.  Configure should work properly on any Unix-style system.
+    It has been tested on the following platforms.
+
+	AIX 3.2.5 (cc w/ curses)	BeOS 4.5 (gcc w/ ncurses)
+	CLIX (cc w/ curses & ncurses)	DGUX
+	Digital Unix 3.2C and 4.0 (gcc & cc w/ curses, ncurses & slang)
+	FreeBSD 2.1.5, 3.1 (gcc 2.6.3 w/ curses & ncurses)
+	HP-UX (K&R and ANSI cc, gcc w/ curses, ncurses & slang)
+	IRIX 5.2 and 6.2 (cc & gcc w/ curses, ncurses & slang)
+	Linux 2.0.0 (gcc 2.7.2 w/ curses, ncurses & slang)
+	MkLinux 2.1.5 (gcc 2.7.2.1)	NetBSD
+	NEXTSTEP 3.3 (gcc 2.7.2.3 w/ curses)
+	OS/2 EMX 0.9c (ncurses) 	SCO OpenServer (cc w/ curses)
+	Solaris 2.5, 2.6 & 2.7 (cc & gcc w/ curses, ncurses & slang)
+	SunOS 4.1 (cc w/ curses, gcc w/ ncurses & slang)
+	OS390 and BS2000.
+
+    NOTE:  SunOS and HP-UX come with a bundled K&R compiler, which is only
+    useful for compiling with the bundled curses.  Both ncurses and slang
+    require a compiler that recognizes prototypes.
+
+1c. Options
+    To get a list of the configure script's options, type "./configure --help".
+    Below is an alphabetical listing of the Lynx-specific options.  The actual
+    order shown by the -help option is different.  See "docs/README.defines"
+    for information on defines for which there are no option switches.
+
+  --datadir
+	Defines the location where you want the documentation files installed. 
+	The configure script constructs makefile actions to install lynx.cfg
+	modified to reflect this in the HELPFILE setting.  (For platforms which
+	do not support a configure script, such as MS-DOS, Win32 and VMS, you
+	must edit lynx.cfg).
+
+  --disable-addrlist-page		(prevent defining USE_ADDRLIST_PAGE)
+	Turn off code that displays an alternative list-page, bound to 'A'
+	rather than 'l', which always lists URLs rather than titles.
+
+  --disable-alt-bindings 		(prevent defining USE_ALT_BINDINGS)
+	Compiles-in an alternative set of line-edit bindings, in addition
+	to the default bindings.
+
+  --disable-bibp-urls			(define DISABLE_BIBP)
+	Disable (do not compile code) support for bibp: URLs.
+
+  --disable-color-style			(define USE_COLOR_STYLE)
+	Use this option to disable optional color style.  This is implemented
+	for modern curses implementations, e.g., those that support color.
+
+	Before lynx 2.8.6dev.18, this option was disabled by default.
+	You can achieve a similar color effect to match the non-color-style
+	(but still allowing users to use color-style) by using the
+	--without-lss-file option.
+
+  --disable-config-info			(define NO_CONFIG_INFO)
+  	Use this option to disable extended browsable configuration information
+	(a screen that shows the result of the configuration script, as well
+	as extended lynx.cfg viewing with a pointer to the lynx.cfg file and
+	additional functionality).
+
+  --disable-dired			(prevent defining DIRED_SUPPORT)
+	Use this option to disable the optional directory-editor.
+
+	Lynx supports directory editing (DirEd) for local directories.
+	This allows users to do things like view, copy and remove files
+	using a tabular display of the directory and single-keystroke
+	commands instead of using the command line.  From inside Lynx, the
+	keystroke sequence "g.<enter>" switches Lynx to DirEd mode on the
+	current directory.  If you're building a Lynx that is to be used as
+	a kind of restricted shell for users who do not have access to the
+	command line and should not have access to equivalent capabilities,
+	you probably want to disable DirEd with this option.  You can also
+	disable some DirEd functions while allowing others.  If you have
+	disabled DirEd completely, you can ignore all the more specific
+	DirEd options.
+
+	All DirEd menu functions that were enabled on compilation can be
+	disabled or modified at run time via DIRED_MENU symbols in lynx.cfg.
+
+  --disable-dired-dearchive		(define ARCHIVE_ONLY)
+	Use this option to prevent DirEd from extracting files from an
+	archive file.
+
+  --disable-dired-gzip			(prevent defining OK_GZIP)
+	Use this option to prevent DirEd from using gzip and gunzip.
+
+  --disable-dired-override		(prevent defining OK_OVERRIDE)
+	Normally, in DirEd directory viewing mode some key mappings are
+	overridden.  Use this option to disable DirEd keymap overriding.
+
+  --disable-dired-permit		(prevent defining OK_PERMIT)
+	Use this option to prevent DirEd from changing the permissions
+	on directories or files (i.e., from doing what the Unix chmod
+	command or the DOS attrib command does).
+
+  --disable-dired-tar			(prevent defining OK_TAR)
+	Use this option to prevent DirEd from using the tar program.
+
+  --disable-dired-uudecode		(prevent defining OK_UUDECODE)
+	Use this option to prevent DirEd from using uudecode.
+
+  --disable-dired-xpermit		(define NO_CHANGE_EXECUTE_PERMS)
+	Use this option if you do not disable out the dired-permit
+	option, but want to restrict changes of the eXecute permission
+	to directories (i.e., not allow it to be changed for files).  If
+	you don't do this, you can still block changes of the eXecute
+	permission for files but not directories via the
+	"change_exec_perms" command line restriction.
+
+  --disable-dired-zip			(prevent defining OK_ZIP)
+	Use this option to prevent DirEd from using zip and unzip.
+
+  --disable-echo
+  	Use this option to suppress the "compiling" commands during a build.
+	Doing this makes it easier to find and read warning messages.
+
+  --disable-extended-dtd		(define NO_EXTENDED_HTMLDTD)
+	disable extended HTML DTD logic.  This should revert to old-style
+	(2.7.1/2.7.2) behavior, but is not well-tested.
+
+  --disable-file-upload			(define USE_FILE_UPLOAD)
+	Compile-in support for form-based file-upload.
+
+  --disable-finger			(define DISABLE_FINGER)
+	Do not compile-in code used to connect to "finger" URLs.
+
+  --disable-forms-options		(define NO_OPTION_FORMS)
+	Disable the Form-based Options Menu (see --disable-menu-options).
+	The default is to compile key-based & form-based Options Menu code,
+	allowing users the final choice via FORMS_OPTIONS in lynx.cfg
+	or the -forms_options command-line switch.
+
+  --disable-ftp				(define DISABLE_FTP)
+	Do not compile-in code used to connect to FTP servers.
+
+  --disable-full-paths
+  	Use this option to control whether full pathnames are compiled in for
+	various utilities invoked by lynx as external commands.  By default,
+	full pathnames are compiled in for the the locations where configure
+	finds these commands at configure time.  Affected commands are chmod,
+	compress, cp, gzip, install, mkdir, mv, rm, tar, touch, gunzip, unzip,
+	bzip2, uudecode, zcat, zip, telnet, tn3270, rlogin.  (Not all of them
+	are used on all systems or in all configurations.)
+
+	This option makes Lynx simpler to install, but potentially less secure,
+	since the commands are then set in the user's $PATH.  All of these
+	commands may also be overridden individually by setting environment
+	variables before configuring.  For example, you can disable the telnet
+	command by doing this:
+
+		setenv TELNET /bin/false
+
+  --disable-gopher			(define DISABLE_GOPHER)
+	Do not compile-in code used to connect to GOPHER servers.
+
+  --disable-idna
+	By default, the configure script searches for the GNU idn library,
+	which lets lynx translated URLs which are in UTF-8 to ASCII.  The
+	latter is needed for most network accesses.  Use this option to
+	suppress the feature, e.g., to reduce size.
+
+  --disable-included-msgs
+	Do not use included messages, for i18n support.  If NLS support is
+	requested, the configure script will otherwise use the messages in the
+	./po subdirectory.
+
+  --disable-justify-elts		(define USE_JUSTIFY_ELTS)
+	Do not use element-justification logic.
+
+  --disable-largefile			(prevent defining LONG_LIST)
+
+	Use this option to disable the compiler and linker options that
+	provide largefile interfaces.
+
+  --disable-long-list			(prevent defining LONG_LIST)
+	Use this option to disable long "ls -l" directory listings (when
+	enabled, the actual directory style is configurable from lynx.cfg).
+
+  --disable-menu-options		(define NO_OPTION_MENU)
+	Disable the Key-based Options Menu.
+	See --disable-forms-options (above) for further details.
+
+  --disable-news			(define DISABLE_NEWS)
+	Do not compile-in code used to connect to NNTP (netnews) servers.
+
+  --disable-parent-dir-refs		(define NO_PARENT_DIR_REFERENCE)
+  	Use this option to disable "Up-to" parent-links in directory listings.
+
+  --disable-partial			(prevent defining DISP_PARTIAL)
+	Turn off code that lets Lynx display parts of a long page while loading
+	it.
+
+  --disable-persistent-cookies		(prevent defining USE_PERSISTENT_COOKIES)
+	Turn off support for saving cookies to a file, for subsequent reuse. 
+	Persistent cookie support will use (or create) the file specified by
+	the 'COOKIE_FILE' option, or default to ".lynx_cookies" in the home
+	directory.  (Currently there is no protection against conflict if
+	several lynx sessions are active from the same account).
+
+  --disable-prettysrc			(define USE_PRETTYSRC)
+	Turn off support for colorizing the source view of HTML pages.  If
+	compiled-in, new source view mode is available with -prettysrc command
+	line option.
+
+  --disable-progressbar			(define USE_PROGRESSBAR)
+	Turn off support for a "progress bar" which displays at the bottom
+	of the screen when doing downloads and other time-consuming (but
+	interruptible) processes.  This feature can be selected in the
+	options menu.
+
+  --disable-read-eta			(define USE_READPROGRESS)
+	Turn off enhanced read-progress message showing ETA (estimated time to
+	completion), as well as the amount of time stalled without any data
+	transferred.
+
+  --disable-rpath-hack
+	The rpath-hack makes it simpler to build programs, particularly with
+	the *BSD ports which may have essential libraries in unusual places. 
+	But it can interfere with building an executable for the base system. 
+	Use this option in that case.
+
+  --disable-scrollbar			(define USE_SCROLLBAR)
+	Turn off support for scrollbar on the right-margin of the screen. 
+	If you configure with ncurses, this works with the mouse on xterm,
+	etc.
+
+  --disable-session-cache		(define USE_CACHE_JAR)
+	Turn off support for saving/restoring session information in files. 
+	Configurable from lynx.cfg
+
+  --disable-sessions			(define USE_SESSIONS)
+	Turn off support for sessions, which allows the user to automatically
+	save and restore history information.
+
+  --disable-source-cache		(define USE_SOURCE_CACHE)
+	Turn off support for caching HTML pages locally,
+	in files or in memory.	Configurable from lynx.cfg
+
+  --disable-trace			(define NO_LYNX_TRACE)
+	Turn off code that lets you trace internal details of Lynx's operation.
+	We recommend that you leave this enabled, since we need this
+	information to diagnose problems with either Lynx or the sites to which
+	you connect.
+
+  --enable-ascii-ctypes			(define USE_ASCII_CTYPES)
+	Compiles-in alternative case-conversion functions which ensure that
+	configuration names, etc., are compared in POSIX locale.  This is
+	important for operating in some locale such as Turkish.
+
+  --enable-cgi-links			(define LYNXCGI_LINKS)
+	Allows lynx to access a cgi script directly without the need for
+	a http daemon.
+
+  --enable-change-exec			(define ENABLE_OPTS_CHANGE_EXEC)
+  	Allow users to change the execution status within the options screen.
+	See EXEC_LINKS and EXEC_SCRIPTS.
+
+  --enable-charset-choice		(define USE_CHARSET_CHOICE)
+	Add logic for ASSUMED_DOC_CHARSET_CHOICE and DISPLAY_CHARSET_CHOICE in
+	lynx.cfg, allowing user to configure a subset of the compiled-in
+	charsets for normal use.
+
+  --enable-cjk				(define CJK_EX)
+	Add experimental logic for supporting CJK documents.  (This is not
+	necessary for CJK support and may go away in a future release.)
+
+  --enable-debug			(The symbol DEBUG is always defined.)
+        Use this option to compile-in support for debugging.
+        Note that this flag is ignored if the CFLAGS environment
+        variable is set, in that case "-g" (or whatever) has to
+        be included in the CFLAGS value to get debugging.
+	Autoconf normally adds -g and -O options to CFLAGS if CFLAGS
+	was not set, and if the compiler supports those options.
+
+  --enable-default-colors		(define USE_DEFAULT_COLORS)
+  	Enable use of default-color background (ncurses/slang).  Either
+	configuration supports the use of 'default' for colors even without
+	this option.  That is, 'default' is interpreted as white (foreground)
+	or black (background) according to the context.  When the default
+	colors configuration is built, the actual values for foreground and
+	background colors are determined by the terminal.
+
+  --enable-exec-links			(define EXEC_LINKS)
+	Allows lynx to execute programs by accessing a link.
+
+  --enable-exec-scripts 		(define EXEC_SCRIPTS)
+	Allows lynx to execute programs inferred from a link.
+
+  --enable-externs			(define USE_EXTERNALS)
+	Use this option to enable external application support. (See lynx.cfg.)
+
+  --enable-find-leaks			(define LY_FIND_LEAKS)
+	Use this option to compile-in logic for testing memory leaks.
+
+  --enable-font-switch			(define EXP_CHARTRANS_AUTOSWITCH)
+	Allow Lynx to automatically change the Linux console state (switch
+	fonts) according to the current Display Character Set.  (Linux console
+	only.  *Use with discretion.*  See docs/README.chartrans.)
+
+  --enable-gnutls-compat		(define USE_GNUTLS_FUNCS)
+	When --with-gnutls is used, tell whether to use GNUTLS's OpenSSL
+	compatibility library or use GNUTLS's low-level API directly.
+
+  --enable-gzip-help
+	Install the lynx help files in gzip'd format [*.gz] to save space.
+
+  --enable-htmlized-cfg
+	generate an HTMLized copy of lynx.cfg which will be installed with
+	the other help files.
+
+  --enable-internal-links		(prevent defining DONT_TRACK_INTERNAL_LINKS)
+        With `internal links' (links within a document to a location within
+        the same document) enabled, Lynx will distinguish between, for example,
+        `<A HREF="foo#frag">' and `<A HREF="#frag">' within a document whose
+        URL is `foo'.  It may handle such links differently, although practical
+        differences would appear only if the document containing them resulted
+        from a POST request or had a no-cache flag set.  This feature attempts
+        to interpret URL-references as suggested by RFC 2396, and to prevent
+        mistaken resubmissions of form content with the POST method.  An
+        alternate opinion asserts that the feature could actually result in
+        inappropriate resubmission of form content.
+
+  --enable-ipv6         		(define ENABLE_IPV6)
+	use IPV6 (with IPV4) logic.
+
+  --enable-japanese-utf8		(define EXP_JAPANESEUTF8_SUPPORT)
+	use experimental Japanese UTF-8 logic.
+
+  --enable-kbd-layout			(define EXP_KEYBOARD_LAYOUT)
+	Disabled by default, this option allows you to use translation
+	tables on the input keystrokes.  Current tables include
+		ROT13'd keyboard layout
+		JCUKEN Cyrillic, for AT 101-key kbd
+		YAWERTY Cyrillic, for DEC LK201 kbd
+
+  --enable-local-docs
+	On install, modify link from help-page to point to the local
+	doc-directory, e.g., with README files.  Normally this points
+	to the current release directory.
+
+  --enable-locale-charset		(define USE_LOCALE_CHARSET)
+  	Use nl_langinfo(CODESET) to determine initial value for display
+	charset, overrides character_set value in .lynxrc file.
+
+  --enable-nested-tables		(define EXP_NESTED_TABLES)
+	Extends TRST to format nested tables, as well as be smarter about
+	<BR> and <P> tags in table cells.
+
+  --enable-nls				(several definitions)
+	use Native Language Support (i.e., gettext).
+
+  --enable-nsl-fork			(define NSL_FORK)
+	Disabled by default, this allows interruption of NSL requests,
+	so that `z' will stop the `look-up' phase of a connection.
+
+  --enable-syslog			(define SYSLOG_REQUESTED_URLS)
+	Use this option to log NSL requests via syslog().
+
+  --enable-underlines			(define UNDERLINE_LINKS)
+	Use this option to underline links rather than using boldface.
+
+  --enable-vertrace			(define LY_TRACELINE)
+	Turn on code that prefixes trace output lines with source filename
+	and line number.
+
+  --enable-warnings
+	Use this option to turn on GCC compiler warnings.
+
+  --enable-wais
+	Use this option to turn on configure check for freeWAIS library.
+
+  --enable-widec
+	Use this option to allow the configure script to look for wide-curses
+	features.  If you do not specify the option, the configure script
+	will look for these features if --with-screen=ncursesw is given.
+	For this release of Lynx, we recommend the ncursew library built from
+	ncurses 5.5.
+
+  --sysconfdir				(affect LYNX_CFG_FILE)
+	Defines the location where you want the lynx.cfg file installed.
+	The configure script defines the symbol LYNX_CFG_FILE to correspond
+	with the $sysconfdir environment variable.  (For platforms which do not
+	support a configure script, such as MS-DOS, Win32 and VMS, you must
+	edit userdefs.h if you wish to specify the location of lynx.cfg).
+
+  --with-Xaw3d
+	This option allows you to specify the X libraries used if you
+	are configuring lynx to use PDCurses on a Unix platform.
+
+  --with-XawPlus
+	This option allows you to specify the X libraries used if you
+	are configuring lynx to use PDCurses on a Unix platform.
+
+  --with-build-cc=XXX
+	If cross-compiling, specify a host C compiler, which is needed to
+	compile a utility which generates tables for lynx.
+	If you do not give this option, the configure script checks if the
+	$BUILD_CC variable is set, and otherwise defaults to gcc or cc.
+
+  --with-build-cpp=XXX
+	This is unused by lynx.
+
+  --with-build-cflags=XXX
+	If cross-compiling, specify the host C compiler-flags.  You might need
+	to do this if the target compiler has unusual flags which confuse the
+	host compiler.
+
+  --with-build-cppflags=XXX
+	If cross-compiling, specify the host C preprocessor-flags.  You might
+	need to do this if the target compiler has unusual flags which confuse
+	the host compiler.
+
+  --with-build-ldflags=XXX
+	If cross-compiling, specify the host linker-flags.  You might need to
+	do this if the target linker has unusual flags which confuse the host
+	compiler.
+
+  --with-build-libs=XXX
+	If cross-compiling, the host libraries.  You might need to do this if
+	the target environment requires unusual libraries.
+
+  --with-bzlib[=XXX]			(define USE_BZLIB)
+	Use libbz2 for decompression of some bzip2 files.
+
+	The optional value XXX specifies the directory in which the library
+	can be found, and may be either the path of the "lib" directory,
+	or one level above.  In either case, the corresponding header files
+	are assumed to be in the parallel "include" directory.
+
+  --with-charsets=list			(define ALL_CHARSETS)
+ 	Limit the number of charsets that are compiled-in to the specified
+	list of comma-separated MIME names.
+
+  --with-cfg-file			(define LYNX_CFG_FILE)
+	Specify the default configuration file's name.  Use --without-cfg-file
+	to force the user to specify the configuration file on the command
+	line.
+
+  --with-curses-dir
+	Specify directory under which curses/ncurses is installed.  This
+	assumes a standard install, e.g., with an include and lib subdirectory.
+
+  --with-dbmalloc
+	use Conor Cahill's dbmalloc library
+
+  --with-destdir=XXX
+	set DESTDIR variable in makefiles.  This is prefixed to all directories
+	in the actual install, but is not really part of the compiled-in or
+	configured directory names.  It is convenient for packaging the
+	installed files.  If you do not provide the option, the configure
+	script uses your $DESTDIR environment variable.
+
+  --with-dmalloc
+	use Gray Watson's dmalloc library
+
+  --with-gnutls[=XXX]			(define USE_SSL, USE_GNUTLS_INCL)
+	Use this option to configure with the GNU TLS library.
+	See docs/README.ssl for additional information.
+
+	The optional value XXX specifies the directory in which the library
+	can be found, and may be either the path of the "lib" directory,
+	or one level above.  In either case, the corresponding header files
+	are assumed to be in the parallel "include" directory.  The default
+	is /usr/local/gnutls.
+
+	See the "--enable-gnutls-compat" option.
+
+  --with-included-gettext
+	not supported in this package.  The configure script uses macros which
+	are bundled together with more useful features.
+
+	See the "--enable-nls" option.
+
+  --with-libiconv-prefix=DIR
+	search for libiconv in DIR/include and DIR/lib
+
+  --with-lss-file{=path}		(define LYNX_LSS_FILE)
+	Specify the default style-sheet file's name.  Use --without-lss-file
+	to make the default behavior match the non-color-style (if no --lss
+	option is given, and no COLOR_STYLE setting is in lynx.cfg).
+
+  --with-mime-libdir=list		(define MIME_LIBDIR)
+	Use this option to specify the system directory containing the
+	mime.types and mailcap files.
+
+  --with-neXtaw
+	This option allows you to specify the X libraries used if you
+	are configuring lynx to use PDCurses on a Unix platform.
+
+  --with-nls-datadir=DIR
+	Use this option to override the configure script's NLS data directory,
+	under which the locale (i.e., language) files are installed.  The
+	default value is derived at configure time, and depends on whether GNU
+	or native gettext is used.
+
+  --with-nss-compat[=XXX]		(define USE_NSS_COMPAT_INCL)
+	Use this option to configure with the NSS library's OpenSSL-compatible
+	interface.
+	See docs/README.ssl for additional information.
+
+	The optional value XXX specifies the directory in which the library
+	can be found, and may be either the path of the "lib" directory,
+	or one level above.  In either case, the corresponding header files
+	are assumed to be in the parallel "include" directory.
+
+  --with-pkg-config[=XXX]
+	Use pkg-config, if available, to tell how to build with certain
+	libraries, e.g., openssl and gnutls.  If pkg-config is not used,
+	or if those libraries are not known to pkg-config, then the configure
+	script will search for the libraries as described in the --with-ssl
+	and --with-gnutls options.
+
+	The optional value XXX specifies the pathname for pkg-config, e.g.,
+	"/usr/local/bin/pkg-config".
+
+	Note: The pkg-config program is used only if no explicit directory
+	parameter is provided for the --with-ssl or --with-gnutls options.
+
+  --with-screen=XXX
+	Use this option to select the screen type.  The option value, XXX
+	must be one of curses (the default), ncurses, ncursesw, pdcurses or
+	slang.  Specifying a screen type causes the configure script to
+	look in standard locations for the associated header and library
+	files, unless you have preset the $CFLAGS and $LIBS variables.
+
+	--with-screen=ncursesw		(define NCURSES, WIDEC_CURSES)
+	--with-screen=ncurses		(define NCURSES)
+	--with-screen=pdcurses		(define PDCURSES)
+	--with-screen=slang		(define USE_SLANG)
+
+	Note that some systems may have a default curses library which
+	does not support color, while on others, ncurses is installed as
+	the curses library.  The variant ncursesw is the wide-character
+	version of ncurses.  See also the --enable-widec option.
+
+	The pdcurses selection supported by the configure script is a UNIX-only
+	library which uses X11.  If you are configuring with DJGPP, the likely
+	choice is "curses", since that is how PDCurses is normally installed.
+
+  --with-socks[=XXX]			(define SOCKS)
+	Use this option to configure with the socks library.
+
+	The optional value XXX specifies the directory in which the library
+	can be found, and may be either the path of the "lib" directory,
+	or one level above.  In either case, the corresponding header files
+	are assumed to be in the parallel "include" directory.
+
+  --with-socks5[=XXX]			(define USE_SOCKS5, SOCKS)
+	Use this option to configure with the socks5 library.
+
+	The optional value XXX specifies the directory in which the library
+	can be found, and may be either the path of the "lib" directory,
+	or one level above.  In either case, the corresponding header files
+	are assumed to be in the parallel "include" directory.
+
+	If you make a SOCKSified lynx, you may have trouble accessing FTP
+	servers.  Also, instead of SOCKSifying lynx for use behind a firewall,
+	you are better off if you make it normally, and set it up to use a
+	proxy server.  You can SOCKSify the proxy server, and it will handle
+	all clients, not just Lynx.  If your SOCKS server was compiled to use
+	the short version of Rbind, also include -DSHORTENED_RBIND in your
+	SITE_LYDEFS and SITE_DEFS.  If you do SOCKSify lynx, you can turn off
+	SOCKS proxy usage via a -nosocks command line switch.
+
+  --with-ssl[=XXX]			(define USE_SSL)
+	Use this option to configure with the OpenSSL library, or SSLeay.
+	See docs/README.ssl for additional information.
+
+	The optional value XXX specifies the directory in which the library
+	can be found, and may be either the path of the "lib" directory,
+	or one level above.  In either case, the corresponding header files
+	are assumed to be in the parallel "include" directory.
+
+  --with-system-type=XXX
+	For testing, override the derived host system-type which is used to
+	decide things such as special compiler options.  This is normally
+	chosen automatically based on the type of system which you are
+	building on.  We use it for testing the configure script.
+
+  --with-textdomain[=XXX]		(define NLS_TEXTDOMAIN)
+	Set the NLS textdomain to the given value.  This is normally "lynx".
+
+  --with-zlib[=XXX]			(define USE_ZLIB)
+	Use zlib for decompression of some gzip files.
+
+	The optional value XXX specifies the directory in which the library
+	can be found, and may be either the path of the "lib" directory,
+	or one level above.  In either case, the corresponding header files
+	are assumed to be in the parallel "include" directory.
+
+1d. Environment variables
+    The configure script looks for programs and libraries in known/standard
+    locations.  You can override the behavior of the script by presetting
+    environment variables.  If they are set, the script will try to use these
+    values rather than computing new ones.  Useful variables include:
+
+	CC - the C compiler.  If you do not override this, configure
+		will try to use gcc. For instance, setting CC=cc and
+		exporting this value will cause configure to use cc instead.
+
+	CFLAGS - the C compiler options.  These also include C
+		preprocessor options (such as -I), since the $CFLAGS and
+		$CPPFLAGS variables are maintained separately.
+
+	CPPFLAGS - the C preprocessor options.  For some configuration
+		tests, you may need to set both $CFLAGS and $CPPFLAGS if
+		you are compiling against header files in nonstandard
+		locations.
+
+	LDFLAGS - linker/loader options.
+
+	LIBS - the libraries to be linked, with -L and -l options.  If
+		you are linking against libraries in nonstandard locations
+		unrelated to the install prefix (that you can specify in
+		the configure script) you may have to specify these via
+		the $LIBS variable.
+
+    Lynx has compiled-in the pathnames of various programs which it executes.
+    Normally the full pathnames are given, rather than the program name
+    alone.  These may be preset in the environment by the capitalized version,
+    e.g., INSTALL for "install".  The corresponding internal definitions
+    are suffixed "_PATH", e.g., "INSTALL_PATH".
+
+
+-- 1997/7/27 - T. Dickey <dickey@clark.net>
+
+1e. Examples
+    If you are compiling Lynx for your personal use and are restricted to your
+    home directory, a simple method for building would be to choose some
+    directory, say ".lynx", and then type:
+
+	./configure --prefix=~/.lynx --exec-prefix=~/.lynx
+    and
+	make install
+
+    Now you only need to add "~/.lynx/bin" to your PATH and edit "~/.lynx/lib/
+    lynx.cfg" as described above.
+
+    I personally use the following csh shell script to set environment
+    variables and configure options rather than type them each time.
+	#!/bin/csh -f
+	setenv CPPFLAGS "-I$HOME/slang -I$HOME/.usr/include"
+	setenv LIBS "-L$HOME/.slang/lib -L$HOME/.usr/lib"
+	./configure --exec-prefix=$HOME --bindir=$HOME/.lynx \
+		--mandir=$HOME/.usr/man --sysconfdir=$HOME/.usr/lib \
+		--with-screen=slang --with-zlib
+
+    CPPFLAGS in this example defines the full path to the slang and zlib
+    header files, which are not kept in standard directories.  Likewise, LIBS
+    defines the nonstandard locations of libslang.a and libz.a.  Setting the
+    option --bindir tells the configure script where I want to install the
+    lynx binary; setting --mandir tells it where to put the lynx.1 man page,
+    and setting --sysconfdir tells it (while at the same time defining
+    LYNX_CFG_FILE) where to put the configuration file "lynx.cfg", when I type
+    "make install".  The --with-screen=slang and --with-zlib options are
+    explained above.
+
+2. Wais support (optional)
+    To add direct WAIS support, get the freeWAIS distribution from
+    "ftp://ftp.cnidr.org/pub/NIDR.tools/freewais", and compile it.  The
+    compile process will create the libraries you will need, wais.a and
+    client.a.  Edit the Makefile in the top level directory and add the
+    library locations under the DIRECT WAIS ACCESS heading.  Edit the Makefile
+    for the WWW Library in "WWW/Library/Implementation/makefile" to point to
+    the include directory for the freewais distribution.  Precompiled
+    libraries are available for many platforms if you don't wish to compile
+    one yourself.
+
+
+III. Compile instructions -- VMS
+
+Step 1.  Downloading binary files.
+    Lynx must handle all IO as streams, and on VMS, output files are always
+    created with Stream_LF format via the C RTL's fopen().  The file headers
+    indicate Implied Carriage Control, even when the transfer was in binary
+    mode, which can confuse downloading software and cause corruption of
+    the file contents.  To deal with this, you should define the symbol
+    USE_FIXED_RECORDS as TRUE in userdefs.h and/or lynx.cfg.  This will
+    instruct Lynx to correct the header information to indicate FIXED 512
+    records, with No Implied Carriage Control.  If Lynx fails to do the
+    conversion (because the file wasn't mapped to a binary MIME type) you can
+    execute FIXED512.COM externally to correct the header information.  The
+    command file uses Joe Meadow's FILE utility, or the SET FILE/ATTRIBUTES
+    command on current versions of VMS, to modify the headers.  See the
+    comments in FIXED512.COM, userdefs.h and lynx.cfg for more information.
+
+Step 2.  Passive FTP
+    If your system requires the PASV FTP code instead of the standard PORT FTP
+    code (e.g., to deal with a firewall) then set the FTP_PASSIVE option in
+    lynx.cfg
+
+Step 3a.
+    Lynx uses the VMS port of gzip for uncompressing streams which have
+    Content-Encoding headers indicated compression with gzip or the
+    Unix compress.  If you do not have gzip installed on your system
+    you can get it from "ftp://ftp.wku.edu/" in the fileserv directory.
+    The command Lynx uses to uncompress on VMS is "gzip -d".
+
+    If you are using the SOCKETSHR library, read SOCKETSHR.announce and
+    make sure you have defined SOCKETSHR and SOCKETSHR_LIBRARY as explained
+    therein.
+
+    A "build.com" and "build-slang.com" script for building Lynx with curses
+    or slang is in the top level directory.  All you have to do is type
+    "@build" or "@build-slang" and answer its prompt for your system's TCP-IP
+    software.  Current choices are:
+	   MULTINET (default)
+	   UCX
+	   WIN_TCP
+	   CMU_TCP
+	   SOCKETSHR_TCP
+	   TCPWARE
+    It will autosense whether you have VAXC, DECC or GNUC on VAX or AXP and
+    build appropriately.  If a WWWLib already exists for that TCP-IP software,
+    it will prompt you for whether you want to rebuild it.  If you want to
+    build a WWWLib separately, you can type "@libmake.com" with your default
+    directory set to [.WWW.Library.vms] instead doing it via "build.com" in
+    the top directory.  You may need to modify "build-slang.com", as described
+    in its header, so that it can find slang.olb on your system.  If you have
+    both DECC and VAXC, it will use DECC to benefit from the newer and more
+    efficient memory management functions.
+
+Step 3b.  (optional compilation method)
+    If you have and want to use MMS, read the header of descrip.mms in the
+    top directory and be sure you include the appropriate macro definitions
+    when you invoke it:
+
+	$ MMS /Macro = (MULTINET=1)		for VAXC - MultiNet
+	$ MMS /Macro = (WIN_TCP=1)		for VAXC - Wollongong TCP/IP
+	$ MMS /Macro = (UCX=1)			for VAXC - UCX
+	$ MMS /Macro = (CMU_TCP=1)		for VAXC - OpenCMU TCP/IP
+	$ MMS /Macro = (SOCKETSHR_TCP=1)	for VAXC - SOCKETSHR/NETLIB
+	$ MMS /Macro = (TCPWARE=1)		for VAXC - TCPWare TCP/IP
+
+	$ MMS /Macro = (MULTINET=1, DEC_C=1)	for DECC - MultiNet
+	$ MMS /Macro = (WIN_TCP=1, DEC_C=1)	for DECC - Wollongong TCP/IP
+	$ MMS /Macro = (UCX=1, DEC_C=1)		for DECC - UCX
+	$ MMS /Macro = (CMU_TCP=1, DEC_C=1)	for DECC - OpenCMU TCP/IP
+	$ MMS /Macro = (SOCKETSHR_TCP=1,DEC_C=1) for DECC - SOCKETSHR/NETLIB
+	$ MMS /Macro = (TCPWARE=1, DEC_C=1)	for DECC - TCPWare TCP/IP
+
+	$ MMS /Macro = (MULTINET=1, GNU_C=1)	for GNUC - MultiNet
+	$ MMS /Macro = (WIN_TCP=1, GNU_C=1)	for GNUC - Wollongong TCP/IP
+	$ MMS /Macro = (UCX=1, GNU_C=1)		for GNUC - UCX
+	$ MMS /Macro = (CMU_TCP=1, GNU_C=1)	for GNUC - OpenCMU TCP/IP
+	$ MMS /Macro = (SOCKETSHR_TCP=1,GNU_C=1) for GNUC - SOCKETSHR/NETLIB
+	$ MMS /Macro = (TCPWARE=1, GNU_C=1)	for GNUC - TCPWare TCP/IP
+
+    If you just type "MMS" it will default to the MULTINET and VAXC
+    configuration.  MMS will build the WWW library and Lynx sources, and
+    link the executable.  However, not all of the header dependencies are
+    specified.  If you are not a developer, and need a clean build, you
+    should use build.com instead of the MMS utility.
+
+    If you want SOCKS support on VMS, you must add SOCKS as a compilation
+    definition, and the SOCKS library to the link command.  However, instead
+    of SOCKSifying Lynx for use behind a firewall, you are better off if you
+    build Lynx normally, and set up Lynx to use a proxy server (see below).
+    You instead can SOCKSify the proxy server, and it will handle all clients,
+    not just Lynx.
+
+
+IV. Compile instructions -- Win32 (Windows95/98/NT)
+
+Borland C:
+
+    The original Win32 port was built with Borland C++ 4.52, but later
+    versions reportedly can be used.  Before compiling the Lynx sources, you
+    need a curses library, and it is recommended that you have the zlib
+    library.  Get pdcurses2.3 from "http://pdcurses.sourceforge.net/".  I
+    have modified it so that mouse support is no longer broken for Lynx (see
+    "http://www.fdisk.com/doslynx/").  You will want to get zlib from
+    "http://www.zlib.net/ ".  Compile these libraries, and
+    put them in a convenient place (pdcurses inside the Lynx directory).
+
+    Unpack the latest Lynx source distribution, and make an obj directory
+    under the source root to contain the compile output.  Copy in your
+    IDE file.  A sample IDE file and helper libraries are available at
+    "http://www.fdisk.com/doslynx/wlynx/source/".
+
+    First build the .h files in src\chrtrans using "makew32.bat".  Double
+    check for new .tbl files; hand edit in any new ones, and then do "makew32".
+    Jump into Borland C++, load the project (IDE file) and compile Lynx.
+    Alternately, after compiling the chartrans tables, you can come back to
+    the top directory and compile manually, i.e., do "make -f makefile.bcb".
+
+    I also have a binary available at "http://www.fdisk.com/doslynx/".  This
+    binary was compiled with pdcurses 2.3, hacked so win32 mouse support works,
+    and with zlib, so Lynx can do gzip routines internally.  More hints and
+    information can be found in "http://www.fdisk.com/doslynx/lynxport.htm".
+
+-- 1997/10/12 - W. Buttles <lynx-port@fdisk.com>
+-- 2010/11/27 - URL's updated by Doug Kaufman <dkaufman@rahul.net>
+
+Cygwin:
+    It is possible to compile under the cygwin system, which will allow you to
+    use the configure script described above for Unix.  Type, for example,
+    "./configure --with-screen=ncurses --with-libz" in a Dos window running the
+    cygwin bash$ shell.  You also have the choice of using either pdcurses or
+    slang.  You will need a launch program such as sh.exe to call helper
+    applications.  Paths may need to be in cygwin style, rather than Windows
+    style (e.g., TMPDIR=/cygdrive/d/cygwin/tmp, rather than
+    TMPDIR=d:\cygwin\tmp).
+
+Visual C++:
+    You must have compiled zlib and PDCurses with the -MT (threaded code)
+    option.  This is not the default with zlib (see Makefile.msc).
+
+    Copy into lib the following
+	zconf.h
+	zlib.h
+	zlib.lib
+
+    from the zlib build-tree, and
+	curses.h
+	pdcurses.lib
+
+    from the PDCurses build-tree.
+
+    Then
+	make-msc
+
+    to build lynx.
+
+V. Compile instructions -- 386 DOS
+
+    Compiling for DOS with DJGPP has traditionally been a multistep
+    procedure. Now, if you have a full installation of DJGPP you can
+    also install using the configure script, just as in the UNIX
+    section. This needs to be done under a BASH shell. Use a shell
+    script to run configure as in the example at the end of this
+    section. Otherwise you can follow the below instructions. The
+    multistep procedure for DOS may not be supported in the future
+    and use of the configure script is recommended. The information
+    about required libraries and unpacking applies to both methods of
+    compiling.
+
+    First install the C compiler and its libraries (see readme.1st from
+    DJGPP distribution).
+
+    Originally, lynx makefiles come with the initial -O2 optimization
+    level. If you experience compilation process too slow due to paging
+    to the disk (DPMI server provide virtual memory, when in lack of
+    RAM), you may change optimization to -O1 or turn the optimization
+    off entirely.
+
+    If using optimization level -O2 or -O3 with older versions of DJGPP
+    and GCC, you may need to "stubedit" your "cc1.exe" file to enlarge
+    compiler stack size. For instance, if using DJGPP 2.02 and GCC 2.8.1,
+    to compile with -O3 optimization, the stub needs to be edited to give
+    a larger stack. To do this go into djgpp\lib\gcc-lib\djgpp\2.81 and
+    either type the command:
+   	 "stubedit cc1.exe bufsize=63k minstack=2M",
+    or edit interactively with: "stubedit cc1.exe". Current versions of
+    DJGPP and GCC generally work with the standard stack.
+
+    Unpack the source code using a DOS program like UNZIP386.  If you are
+    using PKUNZIP to unpack the .zip archive, you must use the -d command
+    line switch to restore the directory structure contained in the archive,
+    i.e., do "pkunzip -d lynx-cur.zip".  No switch is required if you use
+    unzip386 or unzip.  If you are trying to compile the 386DOS port under a
+    WinNT DOS shell, be sure to unpack the source with a DOS program so
+    that all directories will be adjusted to the DOS 8.3 file format necessary
+    for compiling with DJGPP.  Do NOT use Winzip, because that will create
+    long filenames that will not be recognized by DJGPP tools.
+
+    If you wish to compile with "USE_ZLIB" (recommended), you must have the
+    zlib library.  Get the source from
+	    http://www.zlib.net
+    and compile it.  Put libz.a in the lib subdirectory of DJGPP, and put
+    zlib.h and zconf.h in the include subdirectory.
+
+    In addition to the files in the Lynx distribution, you will need a curses
+    package and a TCP package.  You can use PDCurses (available at
+    "http://pdcurses.sourceforge.net/") and the DJGPP port of WATTCP.  The
+    updated version of WATTCP is known as WATT-32, and is available at
+    "http://home.broadpark.no/~gvanem/".  You can also use slang (available at
+    "http://www.jedsoft.org/slang/") as your screen library.  You must
+    compile these before you go any further.  If you wish to use PDCurses 2.6,
+    you need to first apply the following patch:
+
+--- dos/gccdos.mak.ori	2002-01-11 20:11:18.000000000 -0800
++++ dos/gccdos.mak	2003-12-13 21:29:28.000000000 -0800
+@@ -40,11 +40,11 @@
+ 	CFLAGS  = -c -g -Wall -DPDCDEBUG
+ 	LDFLAGS = -g
+ else
+-	CFLAGS  = -c -O -Wall
++	CFLAGS  = -c -O2 -Wall
+ 	LDFLAGS =
+ endif
+
+-CPPFLAGS	= -I$(PDCURSES_HOME) -I$(CCINCDIR) -D_NAIVE_DOS_REGS
++CPPFLAGS	= -I$(PDCURSES_HOME) -I$(CCINCDIR) -D_NAIVE_DOS_REGS -DHAVE_STRING_H
+
+ CCFLAGS		= $(CFLAGS) $(CPPFLAGS)
+
+@@ -64,10 +64,10 @@
+ all:	$(PDCLIBS) $(DEMOS)
+
+ clean:
+ 	-del *.o
+-	-del curses.lib
+-	-del panel.lib
++	-del pdcurses.a
++	-del panel.a
+
+ demos:	$(DEMOS)
+
+@@ -287,33 +287,27 @@
+ #------------------------------------------------------------------------
+
+ firework.exe:	firework.o $(LIBCURSES)
+-	$(LINK) $(LDFLAGS) -o firework firework.o $(LIBCURSES)
+-	$(COFF2EXE) firework
++	$(LINK) $(LDFLAGS) -o firework.exe firework.o $(LIBCURSES)
+ 	strip $@
+
+ newdemo.exe:	newdemo.o $(LIBCURSES)
+-	$(LINK) $(LDFLAGS) -o newdemo newdemo.o $(LIBCURSES)
+-	$(COFF2EXE) newdemo
++	$(LINK) $(LDFLAGS) -o newdemo.exe newdemo.o $(LIBCURSES)
+ 	strip $@
+
+ ptest.exe:	ptest.o $(LIBCURSES) $(LIBPANEL)
+-	$(LINK) $(LDFLAGS) -o ptest ptest.o $(LIBCURSES) $(LIBPANEL)
+-	$(COFF2EXE) ptest
++	$(LINK) $(LDFLAGS) -o ptest.exe ptest.o $(LIBCURSES) $(LIBPANEL)
+ 	strip $@
+
+ testcurs.exe:	testcurs.o $(LIBCURSES)
+-	$(LINK) $(LDFLAGS) -o testcurs testcurs.o $(LIBCURSES)
+-	$(COFF2EXE) testcurs
++	$(LINK) $(LDFLAGS) -o testcurs.exe testcurs.o $(LIBCURSES)
+ 	strip $@
+
+ tuidemo.exe:	tuidemo.o tui.o $(LIBCURSES)
+-	$(LINK) $(LDFLAGS) -o tuidemo tuidemo.o tui.o $(LIBCURSES)
+-	$(COFF2EXE) tuidemo
++	$(LINK) $(LDFLAGS) -o tuidemo.exe tuidemo.o tui.o $(LIBCURSES)
+ 	strip $@
+
+ xmas.exe:	xmas.o $(LIBCURSES)
+-	$(LINK) $(LDFLAGS) -o xmas xmas.o $(LIBCURSES)
+-	$(COFF2EXE) xmas
++	$(LINK) $(LDFLAGS) -o xmas.exe xmas.o $(LIBCURSES)
+ 	strip $@
+
+
+--- dos/pdckbd.c.ori	2002-09-01 00:13:30.000000000 -0800
++++ dos/pdckbd.c	2004-01-19 20:30:02.000000000 -0800
+@@ -362,7 +362,7 @@
+ 		return ((int) (0xb8 << 8));
+ 	if (ascii == 0xe0 && scan == 0x53 && pdc_key_modifiers & PDC_KEY_MODIFIER_SHIFT) /* Shift Del */
+ 		return ((int) (0xb9 << 8));
+-	if (ascii == 0x00 || ascii == 0xe0)
++	if (ascii == 0x00 || (ascii == 0xe0 && scan != 0x00))
+ 		return ((int) (scan << 8));
+ 	return ((int) (ascii));
+ }
+@@ -522,7 +522,7 @@
+ 		_watch_breaks();
+ #else
+ # ifdef GO32
+-	(void*)signal(SIGINT,(setting ? SIG_DFL : SIG_IGN));
++/*	(void*)signal(SIGINT,(setting ? SIG_DFL : SIG_IGN)); */
+ /*	__djgpp_set_ctrl_c(setting);*/
+ 	setcbrk(setting);
+ # else
+--- pdcurses/kernel.c.ori	2002-11-27 03:24:32.000000000 -0800
++++ pdcurses/kernel.c	2003-12-13 21:22:38.000000000 -0800
+@@ -27,6 +27,10 @@
+ #include <memory.h>
+ #endif
+
++#ifdef HAVE_STRING_H
++#include <string.h>
++#endif
++
+ #ifdef UNIX
+ #include <defs.h>
+ #include <term.h>
+--- pdcurses/pdcutil.c.ori	2001-01-10 00:27:22.000000000 -0800
++++ pdcurses/pdcutil.c	2003-12-13 21:24:58.000000000 -0800
+@@ -49,7 +49,7 @@
+ #  include <limits.h>
+ #endif
+
+-#ifdef STDC_HEADERS
++#if defined(STDC_HEADERS) || defined(HAVE_STRING_H)
+ #  include <string.h>
+ #endif
+
+--- pdcurses/pdcwin.c.ori	2002-05-25 17:13:32.000000000 -0800
++++ pdcurses/pdcwin.c	2003-12-13 21:26:02.000000000 -0800
+@@ -27,6 +27,10 @@
+ # include <memory.h>
+ #endif
+
++#ifdef HAVE_STRING_H
++#include <string.h>
++#endif
++
+ #ifndef HAVE_MEMMOVE
+ # define memmove PDC_memmove
+ #endif
+
+    If you wish to compile with SSL enabled, you need to get and compile
+    OpenSSL. The DJGPP port has been successfully compiled with the
+    development version of OpenSSL. DJGPP can compile OpenSSL from the
+    standard source distribution (http://www.openssl.org/). See the file
+    "INSTALL.DJGPP" in the OpenSSL distribution.
+
+
+    If you have trouble applying the patches, try using the "patch" program,
+    ("http://www.delorie.com/pub/djgpp/current/v2gnu/pat261b.zip").
+    To read the Unix man style documentation, use, for example, "less"
+    ("http://www.delorie.com/pub/djgpp/current/v2gnu/lss374b.zip").
+    Compile or place your compiled PDCurses library in /djgpp/pdcur26, and
+    compile or place your compiled WATT-32 library in /djgpp/watt32.  If
+    using the SLANG library, put libslang.a in your DJGPP/lib directory and put
+    slang.h in your DJGPP/include directory, or in the appropriate directories
+    specified by LIBRARY_PATH and INCLUDE_PATH in your DJGPP.ENV file.
+
+    Move to the "lynx2-*/WWW/Library/djgpp" directory.  If compiling with
+    PDCurses, do "make".  If using SLANG, do "make -f makefile.sla".  This
+    should compile libwww.a.  Next move to the "lynx2-*/src/chrtrans" directory
+    and do "make -f makefile.dos" to compile the character tables.  Then move
+    to the "lynx2-*/src" directory.  There are three choices for compiling at
+    this point.  You can do "make -f makefile.dos" to compile with PDCurses,
+    "make -f makefile.wsl" to compile with SLANG, or "make -f makefile.dsl" to
+    compile with SLANG and the DJGPP keyhandler.  At the time of this writing,
+    it is not clear what the advantages and disadvantages of each version are.
+    The PDCurses version has the most experience and allows remapping of ALT
+    and Function keys.  The SLANG version seems to have better screen handling.
+    It allows mapping of function keys, but not ALT keys.  The SLANG with DJGPP
+    keyhandler allows mapping of ALT and Function keys, but has the risk of
+    incompatibilities from mixing different programs.
+
+    If you wish to compile with support for internationalization of messages,
+    you first need to install the DOS ports of the GNU gettext and libiconv
+    packages, available from any DJGPP mirror site.  Then uncomment the lines
+    for INTLFLAGS in src/makefile.dsl and in WWW/Library/djgpp/makefile.sla,
+    and remove the "#" from the LIBS line in src/makefile.dsl.  Make similar
+    changes if using one of the other DOS makefiles.  See the gettext
+    documentation for information on creating and using message files for
+    different languages.
+
+    If all goes well, you will have a lynx.exe file.  If you have trouble,
+    check to be sure djgpp.env is the way it came in the original package.
+
+    To test Lynx_386 you must have a packet driver installed. The simplest
+    method is to use a null packet driver that just allows Lynx to start
+    up, but doesn't do anything else. One such executable driver has been
+    posted, uuencoded, to the lynx-dev mailing list in January 1998,
+    but is corrupted in the mailing list archive. You can get this at
+    "http://www.ncf.ca/ncf/pda/computer/dos/net/nullpkt.zip". Start the
+    dummy packet driver with "nullpkt 0x60", and take it out of memory with
+    "nullpkt -u". You can also use slip8250.com. See the CRYNWR package
+    "ftp://ftp.simtel.net/pub/simtelnet/msdos/pktdrvr/pktd11.zip". Usage
+    is "slip8250 0x60", but you may have to invoke it as, for example,
+    "slip8250 0x60 6 3 0x2F8" so that it uses COM2 and IRQ 3, in order to
+    avoid an IRQ conflict with a mouse or some other device. Another packet
+    driver is slipper.exe, which is available from many sites, including
+    "http://www.cavazza.it/file/bbs/intsoft/slippr15.zip". To remove it from
+    memory use termin.com (usage "termin 0x60"), available in the CRYNWR
+    package. To connect over a dialup PPP connection you need dosppp or klos'
+    pppshare. (Find at:
+    "http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/net/dosppp/dosppp06.zip"
+    "http://www.ncf.carleton.ca/ncf/pda/computer/dos/net/dosppp06.zip"
+    "http://www.cavazza.it/file/bbs/intsoft/dosppp06.zip"
+    "http://www.cavazza.it/file/bbs/intsoft/pppshare.exe")
+
+    File access looks like this:
+
+    file:///c:/
+    file:///c:/dos
+    file:///c:/dos/command.com
+    file://localhost/c:/
+    file://localhost/c:/dos
+    file://localhost/c:/dos/command.com
+
+    See "http://www.fdisk.com/doslynx/lynxport.htm" for more hints and
+    some precompiled libraries. One problem you can encounter is editing
+    userdefs.h and lynx.cfg, which have unix-style end of lines. You would
+    be well advised to use an editor that can handle end of lines terminated
+    with a single LF character. You can also unpack the source code using
+    unzip386 or unzip with the -a or -aa switch to convert unix LF to dos CRLF.
+    That will make texts more readable under DOS. If you compile lynx
+    regularly, you may automate the procedure by creating a batch file such
+    as the following.
+
+	cd djgpp\watt32\src
+	configur djgpp
+	make -f djgpp.mak
+	cd ..\..\..\www\library\djgpp
+	make
+	cd ..\..\..\src\chrtrans
+	make -f makefile.dos
+	cd ..\..\src
+	make -f makefile.dos
+	strip lynx.exe
+	cd ..
+
+    This batch file expects the DJGPP port of WATT-32 to be installed in the
+    lynx2-* directory.  Place a copy of this batch file, named "djgpp.bat",
+    in the lynx2-* directory, move to that directory and type "djgpp".  A more
+    complete batch file with error checking and annotation can be found at:
+    "http://lists.nongnu.org/archive/html/lynx-dev/1997-11/msg00250.html".
+
+    If you use the configure method, remember that if you configure with
+    the option "--enable-nls", you also need to set LIBS="-liconv". A
+    sample shell script to run configure using PDCurses follows. If you
+    compile to use SLANG, note that the DJGPP keyhandler will be used
+    instead of the SLANG keyhandler unless you define "NO_DJ_KEYHANDLER".
+
+    #!/bin/sh
+    CFLAGS="-O2 -I/djgpp/pdcur26 -I/djgpp/watt32/inc" \
+    LIBS="-L/djgpp/pdcur26/lib -L/djgpp/watt32/lib -liconv" \
+    ./configure --prefix=d:/djgpp/lynx-rel/lynx-cnf \
+    --with-screen=curses \
+    --disable-full-paths \
+    --enable-addrlist-page \
+    --enable-change-exec \
+    --enable-cgi-links \
+    --enable-charset-choice \
+    --enable-color-style \
+    --enable-exec-links \
+    --enable-externs \
+    --enable-file-upload \
+    --enable-nested-tables \
+    --enable-nls \
+    --sysconfdir=d:/djgpp/lynx-rel/lynx-cnf \
+    --with-bzlib \
+    --with-zlib \
+    --with-ssl
+
+-- 1997/9/29 - D. Kaufman <dkaufman@rahul.net>
+-- 1997/10/3 - B. Schiavo <Wschiavo@concentric.net>
+-- Last update - 2010/11/27
+
+
+VI. General installation instructions
+
+    Once you have compiled Lynx, test it out first on a local file.  Be sure
+    Lynx can find lynx.cfg.  A _sample_ test command line would be:
+    'lynx -cfg=/usr/local/lib/lynx.cfg .'.  Once you are satisfied that
+    Lynx works, go ahead and install it.  For Unix, type "make install".
+
+    For VMS, you need to have the executable in a public place, make it
+    accessible, define it as a foreign command, and copy lynx.cfg to
+    "Lynx_Dir".  Look at lynx.com in the samples directory as a model for
+    installing Lynx.  To include lynx.hlp in the system HELP library, use
+    the command: "$ library/replace sys$help:helplib.hlb lynx.hlp".
+
+    Local copies of the Lynx online help should be made accessible in response
+    to the Lynx 'h'elp command by defining HELPFILE in userdefs.h and/or
+    lynx.cfg to an appropriate file://localhost/path URL.  On Unix, all you
+    need to do is type "make install-help."  If you are installing manually,
+    copy the files "COPYHEADER" and "COPYING" into the lynx_help directory
+    BEFORE moving the lynx_help tree to its final location.  These files are
+    referenced hypertextually from help documents.
+
+    If you have old, pre-existing bookmark files from earlier versions of
+    Lynx, those files may have to be updated.  Conversion may just consist
+    of adding one META line near the top, or may require creating new book-
+    mark files and editing in bookmarks from outdated files.
+
+    IMPORTANT!  Be sure you have read the warnings about setting up an
+    anonymous account with Lynx if you plan to give public access to Lynx.
+
+    After applying patches or editing files to correct for an unsuccessful
+    build, be certain to do a "make clean" (or "make distclean" for those
+    using auto-configure) before attempting to compile again.
+
+
+VII. Setting environment variables before running Lynx (optional)
+
+1. All ports
+
+   The Lynx Users Guide describes all of the environment variables used by
+   Lynx.  This should be checked later along with reading lynx.cfg after you
+   have installed Lynx.
+
+2. Win32 (95/98/NT) and 386 DOS
+
+    These ports cannot start before setting certain environment variables.
+    Here are some environment variables that should be set, usually in a
+    batch file that runs the lynx executable.  Make sure that you have enough
+    room left in your environment.  You may need to change your "SHELL="
+    setting in config.sys.  In addition, lynx looks for a "SHELL" environment
+    variable when shelling to DOS.  If  you wish to preserve the environment
+    space when shelling, put a line like this in your AUTOEXEC.BAT file also
+    "SET SHELL=C:\COMMAND.COM /E:4096".  It should match CONFIG.SYS.
+
+    HOME         Where to keep the bookmark file and personal config files.
+    TEMP or TMP  Bookmarks are kept here with no HOME.  Temp files here.
+    USER         Set to your login name (optional)
+    LYNX_CFG     Set to the full path and filename for lynx.cfg
+    LYNX_LSS     Set to the full path and filename for lynx.lss
+    LYNX_SAVE_SPACE  The (modifiable) location for downloaded file storage.
+    SSL_CERT_FILE Set to the full path and filename for your file of trusted
+                  certificates
+
+    386 version only:
+    WATTCP.CFG   Set to the full path for the WATTCP.CFG directory
+    RL_CLCOPY_CMD Command to copy a URL to a "clipboard" file
+    RL_PASTE_CMD  Command to go to a URL in your "clipboard" file
+
+    Define these in your batch file for running Lynx.  For example, if your
+    application line is "D:\win32\lynx.bat", lynx.bat for Win32 may look like:
+	@ECHO OFF
+	set home=d:\win32
+	set temp=d:\tmp
+	set lynx_cfg=d:\win32\lynx.cfg
+	set lynx_save_space=d:\download
+	d:\win32\lynx.exe %1 %2 %3 %4 %5
+
+    For lynx_386, a typical batch file might look like:
+
+	@echo off
+	set HOME=f:/lynx2-8
+	set USER=your_login_name
+	set LYNX_CFG=%HOME%/lynx.cfg
+	set WATTCP.CFG=%HOME%
+	f:\lynx2-8\lynx %1 %2 %3 %4 %5 %6 %7 %8 %9
+
+    You need to make sure that the WATTCP.CFG file has the correct information
+    for IP number, Gateway, Netmask, and Domain Name Server.  This can also be
+    automated in the batch file.
+
+    Adapted from "readme.txt" by Wayne Buttles and "readme.dos" by Doug
+    Kaufman.
+
+VIII. Acknowledgment
+
+   Thanks to the many volunteers who offered suggestions for making this
+   installation manual as accurate and complete as possible.
+
+-- 1999/04/24 - H. Nelson <lynx-admin@irm.nara.kindai.ac.jp>
+-- vile:txtmode
+-- $LynxId: INSTALLATION,v 1.117 2012/02/03 22:29:17 tom Exp $
diff --git a/LYHelp.hin b/LYHelp.hin
new file mode 100644
index 00000000..6e7a7f51
--- /dev/null
+++ b/LYHelp.hin
@@ -0,0 +1,26 @@
+/*
+ * $LynxId: LYHelp.hin,v 1.4 2008/01/10 23:26:53 tom Exp $
+ * vile:cmode
+ */
+/* definitions for help files */
+
+#ifndef LYHELP_H
+#define LYHELP_H
+
+#define ALT_EDIT_HELP		"keystrokes/@ALT_EDIT_HELP@"
+#define BASHLIKE_EDIT_HELP	"keystrokes/@BASHLIKE_EDIT_HELP@"
+#define COOKIE_JAR_HELP		"@LYNX_USERS_GUIDE@#Cookies"
+#define CACHE_JAR_HELP		"@LYNX_USERS_GUIDE@#Cache"
+#define CURRENT_KEYMAP_HELP	"keystrokes/@KEYSTROKE_HELP@"
+#define DIRED_MENU_HELP		"keystrokes/@DIRED_HELP@"
+#define EDIT_HELP		"keystrokes/@EDIT_HELP@"
+#define DOWNLOAD_OPTIONS_HELP	"@LYNX_USERS_GUIDE@#RemoteSource"
+#define HISTORY_PAGE_HELP	"keystrokes/@HISTORY_HELP@"
+#define LIST_PAGE_HELP		"keystrokes/@FOLLOW_HELP@"
+#define LYNXCFG_HELP		"lynx.cfg"
+#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
new file mode 100644
index 00000000..893a3b35
--- /dev/null
+++ b/LYMessages_en.h
@@ -0,0 +1,876 @@
+/*
+ * $LynxId: LYMessages_en.h,v 1.73 2012/02/12 23:59:14 tom Exp $
+ *
+ * Lynx - Hypertext navigation system
+ *
+ *   (c) Copyright 1992, 1993, 1994 University of Kansas
+ *	 1995-1999: GNU General Public License
+ */
+
+#ifndef LYMESSAGES_EN_H
+#define LYMESSAGES_EN_H
+
+/*******************************************************************
+ * 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 your site.  We recommend that
+ * you extend these definitions to other languages using the gettext
+ * library.  There are also scattered uses of 'gettext()' throughout the
+ * Lynx source, covering all but those messages which (a) are used for
+ * debugging (CTRACE) or (b) are constants used in interaction with
+ * other programs.
+ *
+ * See ABOUT-NLS and po/readme for details and location of contributed
+ * translations.  When no translation is available, the English default is
+ * used.
+ */
+#define ALERT_FORMAT gettext("Alert!: %s")
+#define WELCOME_MSG gettext("Welcome")
+#define REALLY_QUIT gettext("Are you sure you want to quit?")
+#ifdef VMS
+#define REALLY_EXIT gettext("Really exit from Lynx?")
+#endif /* VMS */
+#define CONNECTION_INTERRUPTED gettext("Connection interrupted.")
+#define TRANSFER_INTERRUPTED gettext("Data transfer interrupted.")
+#define CANCELLED gettext("Cancelled!!!")
+#define CANCELLING gettext("Cancelling!")
+#define NO_CANCEL gettext("Excellent!!!")
+#define OPERATION_OK gettext("OK")
+#define OPERATION_DONE gettext("Done!")
+#define BAD_REQUEST gettext("Bad request!")
+#define PREVIOUS gettext("previous")
+#define NEXT_SCREEN gettext("next screen")
+#define TO_HELP gettext("HELP!")
+#define HELP_ON_SEGMENT gettext(", help on ")
+#define HELP \
+ gettext("Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back.")
+#define MOREHELP \
+ gettext("-- press space for more, use arrow keys to move, '?' for help, 'q' to quit.")
+#define MORE gettext("-- press space for next page --")
+#define URL_TOO_LONG gettext("URL too long")
+
+/* Forms messages */
+#ifdef TEXTFIELDS_MAY_NEED_ACTIVATION
+/* Inactive input fields, messages used with -tna option - kw */
+#define FORM_LINK_TEXT_MESSAGE_INA \
+ gettext("(Text entry field) Inactive.  Press <return> to activate.")
+#define FORM_LINK_TEXTAREA_MESSAGE_INA \
+ gettext("(Textarea) Inactive.  Press <return> to activate.")
+#define FORM_LINK_TEXTAREA_MESSAGE_INA_E \
+ gettext("(Textarea) Inactive.  Press <return> to activate (%s for editor).")
+#define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA \
+ gettext("(Form field) Inactive.  Use <return> to edit.")
+#define FORM_TEXT_SUBMIT_MESSAGE_INA_X \
+ gettext("(Form field) Inactive.  Use <return> to edit (%s to submit with no cache).")
+#define FORM_TEXT_RESUBMIT_MESSAGE_INA \
+ gettext("(Form field) Inactive. Press <return> to edit, press <return> twice to submit.")
+#define FORM_TEXT_SUBMIT_MAILTO_MSG_INA \
+ gettext("(mailto form field) Inactive.  Press <return> to change.")
+#define FORM_LINK_PASSWORD_MESSAGE_INA \
+ gettext("(Password entry field) Inactive.  Press <return> to activate.")
+#endif
+#define FORM_LINK_FILE_UNM_MSG \
+ gettext("UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_FILE_MESSAGE \
+ gettext("(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_TEXT_MESSAGE \
+ gettext("(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_TEXTAREA_MESSAGE \
+ gettext("(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off.")
+#define FORM_LINK_TEXTAREA_MESSAGE_E \
+ gettext("(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor).")
+#define FORM_LINK_TEXT_UNM_MSG \
+ gettext("UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_TEXT_SUBMIT_MESSAGE \
+ gettext("(Form field) Enter text.  Use <return> to submit.")
+#define FORM_LINK_TEXT_SUBMIT_MESSAGE_X \
+ gettext("(Form field) Enter text.  Use <return> to submit (%s for no cache).")
+#define FORM_LINK_TEXT_RESUBMIT_MESSAGE \
+ gettext("(Form field) Enter text.  Use <return> to submit, arrows or tab to move off.")
+#define FORM_LINK_TEXT_SUBMIT_UNM_MSG \
+ gettext("UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG \
+ gettext("(mailto form field) Enter text.  Use <return> to submit, arrows to move off.")
+#define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG \
+ gettext("(mailto form field) Mail is disallowed so you cannot submit.")
+#define FORM_LINK_PASSWORD_MESSAGE \
+ gettext("(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_PASSWORD_UNM_MSG \
+ gettext("UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_CHECKBOX_MESSAGE \
+ gettext("(Checkbox Field)   Use right-arrow or <return> to toggle.")
+#define FORM_LINK_CHECKBOX_UNM_MSG \
+ gettext("UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_RADIO_MESSAGE \
+ gettext("(Radio Button)   Use right-arrow or <return> to toggle.")
+#define FORM_LINK_RADIO_UNM_MSG \
+ gettext("UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_SUBMIT_PREFIX \
+ gettext("Submit ('x' for no cache) to ")
+#define FORM_LINK_RESUBMIT_PREFIX \
+ gettext("Submit to ")
+#define FORM_LINK_SUBMIT_MESSAGE \
+ gettext("(Form submit button) Use right-arrow or <return> to submit ('x' for no cache).")
+#define FORM_LINK_RESUBMIT_MESSAGE \
+ gettext("(Form submit button) Use right-arrow or <return> to submit.")
+#define FORM_LINK_SUBMIT_DIS_MSG \
+ gettext("DISABLED form submit button.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_SUBMIT_MAILTO_PREFIX \
+ gettext("Submit mailto form to ")
+#define FORM_LINK_SUBMIT_MAILTO_MSG \
+ gettext("(mailto form submit button) Use right-arrow or <return> to submit.")
+#define FORM_LINK_SUBMIT_MAILTO_DIS_MSG \
+ gettext("(mailto form submit button) Mail is disallowed so you cannot submit.")
+#define FORM_LINK_RESET_MESSAGE \
+ gettext("(Form reset button)   Use right-arrow or <return> to reset form to defaults.")
+#define FORM_LINK_RESET_DIS_MSG \
+ gettext("DISABLED form reset button.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_BUTTON_MESSAGE \
+ gettext("(Script button)   Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_BUTTON_DIS_MSG \
+ gettext("DISABLED Script button.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_OPTION_LIST_MESSAGE \
+ gettext("(Option list) Hit return and use arrow keys and return to select option.")
+#define CHOICE_LIST_MESSAGE \
+ gettext("(Choice list) Hit return and use arrow keys and return to select option.")
+#define FORM_LINK_OPTION_LIST_UNM_MSG \
+ gettext("UNMODIFIABLE option list.  Use return or arrow keys to review or leave.")
+#define CHOICE_LIST_UNM_MSG \
+ gettext("UNMODIFIABLE choice list.  Use return or arrow keys to review or leave.")
+#define SUBMITTING_FORM gettext("Submitting form...")
+#define RESETTING_FORM gettext("Resetting form...")
+#define RELOADING_FORM \
+ gettext("Reloading document.  Any form entries will be lost!")
+#define LINK_NOT_IN_FORM \
+ gettext("The current link is not in a FORM")
+#define CANNOT_TRANSCODE_FORM gettext("Warning: Cannot transcode form data to charset %s!")
+
+#define NORMAL_LINK_MESSAGE \
+ gettext("(NORMAL LINK)   Use right-arrow or <return> to activate.")
+#define LINK_NOT_FOUND gettext("The resource requested is not available at this time.")
+#define ENTER_LYNX_COMMAND gettext("Enter Lynx keystroke command: ")
+#define WWW_FIND_MESSAGE gettext("Looking up ")
+#define WWW_WAIT_MESSAGE gettext("Getting %s")
+#define WWW_SKIP_MESSAGE gettext("Skipping %s")
+#define WWW_USING_MESSAGE gettext("Using %s")
+#define WWW_ILLEGAL_URL_MESSAGE gettext("Illegal URL: %s")
+#define WWW_BAD_ADDR_MESSAGE gettext("Badly formed address %s")
+#define ADVANCED_URL_MESSAGE gettext("URL: %s")
+#define WWW_FAIL_MESSAGE gettext("Unable to access WWW file!!!")
+#define WWW_INDEX_MESSAGE gettext("This is a searchable index.  Use %s to search.")
+#define WWW_INDEX_MORE_MESSAGE \
+ gettext("--More--  This is a searchable index.  Use %s to search.")
+#define BAD_LINK_NUM_ENTERED gettext("You have entered an invalid link number.")
+#define SOURCE_HELP \
+ gettext("Currently viewing document source.  Press '\\' to return to rendered version.")
+#define NOVICE_LINE_ONE \
+ gettext("  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n")
+#define NOVICE_LINE_TWO \
+ gettext(" H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n")
+#define NOVICE_LINE_TWO_A \
+ gettext("  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n")
+#define NOVICE_LINE_TWO_B \
+ gettext("  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n")
+#define NOVICE_LINE_TWO_C \
+ gettext("O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n")
+#define FORM_NOVICELINE_ONE \
+ gettext("            Enter text into the field by typing on the keyboard              ")
+#define FORM_NOVICELINE_TWO \
+ gettext("    Ctrl-U to delete all text in field, [Backspace] to delete a character    ")
+#define FORM_NOVICELINE_TWO_DELBL \
+ gettext("      Ctrl-U to delete text in field, [Backspace] to delete a character    ")
+#define FORM_NOVICELINE_TWO_VAR \
+ gettext("    %s to delete all text in field, [Backspace] to delete a character    ")
+#define FORM_NOVICELINE_TWO_DELBL_VAR \
+ gettext("      %s to delete text in field, [Backspace] to delete a character    ")
+
+/* mailto */
+#define BAD_FORM_MAILTO gettext("Malformed mailto form submission!  Cancelled!")
+#define MAILTO_SQUASH_CTL gettext("Warning!  Control codes in mail address replaced by ?")
+#define FORM_MAILTO_DISALLOWED gettext("Mail disallowed!  Cannot submit.")
+#define FORM_MAILTO_FAILED gettext("Mailto form submission failed!")
+#define FORM_MAILTO_CANCELLED gettext("Mailto form submission Cancelled!!!")
+#define SENDING_FORM_CONTENT gettext("Sending form content...")
+#define NO_ADDRESS_IN_MAILTO_URL gettext("No email address is present in mailto URL!")
+#define MAILTO_URL_TEMPOPEN_FAILED \
+ gettext("Unable to open temporary file for mailto URL!")
+#define INC_ORIG_MSG_PROMPT \
+ gettext("Do you wish to include the original message?")
+#define INC_PREPARSED_MSG_PROMPT \
+ gettext("Do you wish to include the preparsed source?")
+#define SPAWNING_EDITOR_FOR_MAIL \
+ gettext("Spawning your selected editor to edit mail message")
+#define ERROR_SPAWNING_EDITOR \
+ gettext("Error spawning editor, check your editor definition in the options menu")
+#define SEND_COMMENT_PROMPT gettext("Send this comment?")
+#define SEND_MESSAGE_PROMPT gettext("Send this message?")
+#define SENDING_YOUR_MSG gettext("Sending your message...")
+#define SENDING_COMMENT gettext("Sending your comment:")
+
+/* textarea */
+#define NOT_IN_TEXTAREA_NOEDIT gettext("Not in a TEXTAREA; cannot use external editor.")
+#define NOT_IN_TEXTAREA gettext("Not in a TEXTAREA; cannot use command.")
+
+#define FILE_ACTIONS_DISALLOWED gettext("file: ACTIONs are disallowed!")
+#define FILE_SERVED_LINKS_DISALLOWED \
+ gettext("file: URLs via served links are disallowed!")
+#define NOAUTH_TO_ACCESS_FILES gettext("Access to local files denied.")
+#define FILE_BOOKMARKS_DISALLOWED gettext("file: URLs via bookmarks are disallowed!")
+#define SPECIAL_VIA_EXTERNAL_DISALLOWED \
+ gettext("This special URL is not allowed in external documents!")
+#define RETURN_TO_LYNX gettext("Press <return> to return to Lynx.")
+#ifdef VMS
+#define SPAWNING_MSG \
+ gettext("Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n")
+#else
+#ifdef DOSPATH
+#define SPAWNING_MSG \
+ gettext("Type EXIT to return to Lynx.\n")
+#else /* UNIX */
+#define SPAWNING_MSG \
+ gettext("Spawning your default shell.  Use 'exit' to return to Lynx.\n")
+#endif
+#endif /* VMS */
+#define SPAWNING_DISABLED gettext("Spawning is currently disabled.")
+#define DOWNLOAD_DISABLED gettext("The 'd'ownload command is currently disabled.")
+#define NO_DOWNLOAD_INPUT gettext("You cannot download an input field.")
+#define NO_DOWNLOAD_MAILTO_ACTION gettext("Form has a mailto action!  Cannot download.")
+#define NO_DOWNLOAD_MAILTO_LINK gettext("You cannot download a mailto: link.")
+#define NO_DOWNLOAD_COOKIES gettext("You cannot download cookies.")
+#define NO_DOWNLOAD_PRINT_OP gettext("You cannot download a printing option.")
+#define NO_DOWNLOAD_UPLOAD_OP gettext("You cannot download an upload option.")
+#define NO_DOWNLOAD_PERMIT_OP gettext("You cannot download an permit option.")
+#define NO_DOWNLOAD_SPECIAL gettext("This special URL cannot be downloaded!")
+#define NO_DOWNLOAD_CHOICE gettext("Nothing to download.")
+#define TRACE_ON gettext("Trace ON!")
+#define TRACE_OFF gettext("Trace OFF!")
+#define CLICKABLE_IMAGES_ON \
+ gettext("Links will be included for all images!  Reloading...")
+#define CLICKABLE_IMAGES_OFF \
+ gettext("Standard image handling restored!  Reloading...")
+#define PSEUDO_INLINE_ALTS_ON \
+ gettext("Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading...")
+#define PSEUDO_INLINE_ALTS_OFF \
+ gettext("Inlines without an ALT string specified will be ignored!  Reloading...")
+#define RAWMODE_OFF gettext("Raw 8-bit or CJK mode toggled OFF!  Reloading...")
+#define RAWMODE_ON gettext("Raw 8-bit or CJK mode toggled ON!  Reloading...")
+#define HEAD_D_L_OR_CANCEL \
+ gettext("Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): ")
+#define HEAD_D_OR_CANCEL \
+ gettext("Send HEAD request for D)ocument, or C)ancel? (d,c): ")
+#define DOC_NOT_HTTP_URL gettext("Sorry, the document is not an http URL.")
+#define LINK_NOT_HTTP_URL gettext("Sorry, the link is not an http URL.")
+#define FORM_ACTION_DISABLED gettext("Sorry, the ACTION for this form is disabled.")
+#define FORM_ACTION_NOT_HTTP_URL \
+ gettext("Sorry, the ACTION for this form is not an http URL.")
+#define NOT_HTTP_URL_OR_ACTION gettext("Not an http URL or form ACTION!")
+#define SPECIAL_ACTION_DISALLOWED gettext("This special URL cannot be a form ACTION!")
+#define NOT_IN_STARTING_REALM gettext("URL is not in starting realm!")
+#define NEWSPOSTING_DISABLED gettext("News posting is disabled!")
+#define DIRED_DISABLED gettext("File management support is disabled!")
+#define NO_JUMPFILE gettext("No jump file is currently available.")
+#define JUMP_PROMPT gettext("Jump to (use '?' for list): ")
+#define JUMP_DISALLOWED gettext("Jumping to a shortcut URL is disallowed!")
+#define RANDOM_URL_DISALLOWED gettext("Random URL is disallowed!  Use a shortcut.")
+#define NO_RANDOM_URLS_YET gettext("No random URLs have been used thus far.")
+#define BOOKMARKS_DISABLED gettext("Bookmark features are currently disabled.")
+#define BOOKMARK_EXEC_DISABLED gettext("Execution via bookmarks is disabled.")
+#define BOOKMARK_FILE_NOT_DEFINED \
+ gettext("Bookmark file is not defined. Use %s to see options.")
+#define NO_TEMP_FOR_HOTLIST \
+ gettext("Unable to open tempfile for X Mosaic hotlist conversion.")
+#define BOOKMARK_OPEN_FAILED gettext("ERROR - unable to open bookmark file.")
+#define BOOKMARK_OPEN_FAILED_FOR_DEL \
+ gettext("Unable to open bookmark file for deletion of link.")
+#define BOOKSCRA_OPEN_FAILED_FOR_DEL \
+ gettext("Unable to open scratch file for deletion of link.")
+#ifdef VMS
+#define ERROR_RENAMING_SCRA gettext("Error renaming scratch file.")
+#else
+#define ERROR_RENAMING_TEMP gettext("Error renaming temporary file.")
+#define BOOKTEMP_COPY_FAIL \
+ gettext("Unable to copy temporary file for deletion of link.")
+#define BOOKTEMP_REOPEN_FAIL_FOR_DEL \
+ gettext("Unable to reopen temporary file for deletion of link.")
+#endif /* VMS */
+#define BOOKMARK_LINK_NOT_ONE_LINE \
+ gettext("Link is not by itself all on one line in bookmark file.")
+#define BOOKMARK_DEL_FAILED gettext("Bookmark deletion failed.")
+#define BOOKMARKS_NOT_TRAVERSED \
+ gettext("Bookmark files cannot be traversed (only http URLs).")
+#define BOOKMARKS_NOT_OPEN \
+ gettext("Unable to open bookmark file, use 'a' to save a link first")
+#define BOOKMARKS_NOLINKS gettext("There are no links in this bookmark file!")
+#define CACHE_D_OR_CANCEL \
+ gettext("D)elete cached document or C)ancel? (d,c): ")
+#define BOOK_D_L_OR_CANCEL \
+ gettext("Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): ")
+#define BOOK_D_OR_CANCEL gettext("Save D)ocument to bookmark file or C)ancel? (d,c): ")
+#define BOOK_L_OR_CANCEL gettext("Save L)ink to bookmark file or C)ancel? (l,c): ")
+#define NOBOOK_POST_FORM \
+ gettext("Documents from forms with POST content cannot be saved as bookmarks.")
+#define NOBOOK_FORM_FIELD gettext("Cannot save form fields/links")
+#define NOBOOK_HSML \
+ gettext("History, showinfo, menu and list files cannot be saved as bookmarks.")
+#define CONFIRM_BOOKMARK_DELETE \
+ gettext("Do you really want to delete this link from your bookmark file?")
+#define MALFORMED_ADDRESS gettext("Malformed address.")
+#define HISTORICAL_ON_MINIMAL_OFF \
+ gettext("Historical comment parsing ON (Minimal is overridden)!")
+#define HISTORICAL_OFF_MINIMAL_ON \
+ gettext("Historical comment parsing OFF (Minimal is in effect)!")
+#define HISTORICAL_ON_VALID_OFF \
+ gettext("Historical comment parsing ON (Valid is overridden)!")
+#define HISTORICAL_OFF_VALID_ON \
+ gettext("Historical comment parsing OFF (Valid is in effect)!")
+#define MINIMAL_ON_IN_EFFECT \
+ gettext("Minimal comment parsing ON (and in effect)!")
+#define MINIMAL_OFF_VALID_ON \
+ gettext("Minimal comment parsing OFF (Valid is in effect)!")
+#define MINIMAL_ON_BUT_HISTORICAL \
+ gettext("Minimal comment parsing ON (but Historical is in effect)!")
+#define MINIMAL_OFF_HISTORICAL_ON \
+ gettext("Minimal comment parsing OFF (Historical is in effect)!")
+#define SOFT_DOUBLE_QUOTE_ON gettext("Soft double-quote parsing ON!")
+#define SOFT_DOUBLE_QUOTE_OFF gettext("Soft double-quote parsing OFF!")
+#define USING_DTD_0 gettext("Now using TagSoup parsing of HTML.")
+#define USING_DTD_1 gettext("Now using SortaSGML parsing of HTML!")
+#define ALREADY_AT_END gettext("You are already at the end of this document.")
+#define ALREADY_AT_BEGIN gettext("You are already at the beginning of this document.")
+#define ALREADY_AT_PAGE gettext("You are already at page %d of this document.")
+#define LINK_ALREADY_CURRENT gettext("Link number %d already is current.")
+#define ALREADY_AT_FIRST gettext("You are already at the first document")
+#define NO_LINKS_ABOVE gettext("There are no links above this line of the document.")
+#define NO_LINKS_BELOW gettext("There are no links below this line of the document.")
+#define MAXLEN_REACHED_DEL_OR_MOV \
+ gettext("Maximum length reached!  Delete text or move off field.")
+#define NOT_ON_SUBMIT_OR_LINK \
+ gettext("You are not on a form submission button or normal link.")
+#define NEED_CHECKED_RADIO_BUTTON \
+ gettext("One radio button must be checked at all times!")
+#define NO_SUBMIT_BUTTON_QUERY gettext("No submit button for this form, submit single text field?")
+#define PREV_DOC_QUERY gettext("Do you want to go back to the previous document?")
+#define ARROWS_OR_TAB_TO_MOVE gettext("Use arrows or tab to move off of field.")
+#define ENTER_TEXT_ARROWS_OR_TAB \
+ gettext("Enter text.  Use arrows or tab to move off of field.")
+#define NO_FORM_ACTION gettext("** Bad HTML!!  No form action defined. **")
+#define BAD_HTML_NO_POPUP gettext("Bad HTML!!  Unable to create popup window!")
+#define POPUP_FAILED gettext("Unable to create popup window!")
+#define GOTO_DISALLOWED gettext("Goto a random URL is disallowed!")
+#define GOTO_NON_HTTP_DISALLOWED gettext("Goto a non-http URL is disallowed!")
+#define GOTO_XXXX_DISALLOWED gettext("You are not allowed to goto \"%s\" URLs")
+#define URL_TO_OPEN gettext("URL to open: ")
+#define EDIT_CURRENT_GOTO gettext("Edit the current Goto URL: ")
+#define EDIT_THE_PREV_GOTO gettext("Edit the previous Goto URL: ")
+#define EDIT_A_PREV_GOTO gettext("Edit a previous Goto URL: ")
+#define CURRENT_DOC_HAS_POST_DATA gettext("Current document has POST data.")
+#define EDIT_CURDOC_URL gettext("Edit this document's URL: ")
+#define EDIT_CURLINK_URL gettext("Edit the current link's URL: ")
+#define EDIT_SUBMIT_URL gettext("Edit the form's submit-URL: ")
+#define EDIT_FM_MENU_URLS_DISALLOWED gettext("You cannot edit File Management URLs")
+#define ENTER_DATABASE_QUERY gettext("Enter a database query: ")
+#define ENTER_WHEREIS_QUERY gettext("Enter a whereis query: ")
+#define EDIT_CURRENT_QUERY gettext("Edit the current query: ")
+#define EDIT_THE_PREV_QUERY gettext("Edit the previous query: ")
+#define EDIT_A_PREV_QUERY gettext("Edit a previous query: ")
+#define USE_C_R_TO_RESUB_CUR_QUERY \
+ gettext("Use Control-R to resubmit the current query.")
+#define EDIT_CURRENT_SHORTCUT gettext("Edit the current shortcut: ")
+#define EDIT_THE_PREV_SHORTCUT gettext("Edit the previous shortcut: ")
+#define EDIT_A_PREV_SHORTCUT gettext("Edit a previous shortcut: ")
+#define KEY_NOT_MAPPED_TO_JUMP_FILE gettext("Key '%c' is not mapped to a jump file!")
+#define CANNOT_LOCATE_JUMP_FILE gettext("Cannot locate jump file!")
+#define CANNOT_OPEN_JUMP_FILE gettext("Cannot open jump file!")
+#define ERROR_READING_JUMP_FILE gettext("Error reading jump file!")
+#define OUTOF_MEM_FOR_JUMP_FILE gettext("Out of memory reading jump file!")
+#define OUTOF_MEM_FOR_JUMP_TABLE gettext("Out of memory reading jump table!")
+#define NO_INDEX_FILE gettext("No index is currently available.")
+#define CONFIRM_MAIN_SCREEN \
+ gettext("Do you really want to go to the Main screen?")
+#define IN_MAIN_SCREEN gettext("You are already at main screen!")
+#define NOT_ISINDEX \
+ gettext("Not a searchable indexed document -- press '/' to search for a text string")
+#define NO_OWNER \
+ gettext("No owner is defined for this file so you cannot send a comment")
+#define NO_OWNER_USE gettext("No owner is defined. Use %s?")
+#define CONFIRM_COMMENT gettext("Do you wish to send a comment?")
+#define MAIL_DISALLOWED gettext("Mail is disallowed so you cannot send a comment")
+#define EDIT_DISABLED gettext("The 'e'dit command is currently disabled.")
+#define ANYEDIT_DISABLED gettext("External editing is currently disabled.")
+#define NO_STATUS gettext("System error - failure to get status.")
+#define NO_EDITOR gettext("No editor is defined!")
+#define PRINT_DISABLED gettext("The 'p'rint command is currently disabled.")
+#define NO_TOOLBAR gettext("Document has no Toolbar links or Banner.")
+#define CANNOT_OPEN_TRAV_FILE gettext("Unable to open traversal file.")
+#define CANNOT_OPEN_TRAF_FILE gettext("Unable to open traversal found file.")
+#define CANNOT_OPEN_REJ_FILE gettext("Unable to open reject file.")
+#define NOOPEN_TRAV_ERR_FILE gettext("Unable to open traversal errors output file")
+#define TRAV_WAS_INTERRUPTED gettext("TRAVERSAL WAS INTERRUPTED")
+#define FOLLOW_LINK_NUMBER gettext("Follow link (or goto link or page) number: ")
+#define SELECT_OPTION_NUMBER gettext("Select option (or page) number: ")
+#define OPTION_ALREADY_CURRENT gettext("Option number %d already is current.")
+#define ALREADY_AT_OPTION_END \
+ gettext("You are already at the end of this option list.")
+#define ALREADY_AT_OPTION_BEGIN \
+ gettext("You are already at the beginning of this option list.")
+#define ALREADY_AT_OPTION_PAGE \
+ gettext("You are already at page %d of this option list.")
+#define BAD_OPTION_NUM_ENTERED gettext("You have entered an invalid option number.")
+#define BAD_HTML_USE_TRACE gettext("** Bad HTML!!  Use -trace to diagnose. **")
+#define GIVE_FILENAME gettext("Give name of file to save in")
+#define CANNOT_SAVE_REMOTE gettext("Can't save data to file -- please run WWW locally")
+#define CANNOT_OPEN_TEMP gettext("Can't open temporary file!")
+#define CANNOT_OPEN_OUTPUT gettext("Can't open output file!  Cancelling!")
+#define EXECUTION_DISABLED gettext("Execution is disabled.")
+#define EXECUTION_DISABLED_FOR_FILE \
+ gettext("Execution is not enabled for this file.  See the Options menu (use %s).")
+#define EXECUTION_NOT_COMPILED \
+ gettext("Execution capabilities are not compiled into this version.")
+#define CANNOT_DISPLAY_FILE gettext("This file cannot be displayed on this terminal.")
+#define CANNOT_DISPLAY_FILE_D_OR_C \
+ gettext("This file cannot be displayed on this terminal:  D)ownload, or C)ancel")
+#define MSG_DOWNLOAD_OR_CANCEL gettext("%s  D)ownload, or C)ancel")
+#define CANCELLING_FILE gettext("Cancelling file.")
+#define RETRIEVING_FILE gettext("Retrieving file.  - PLEASE WAIT -")
+#define FILENAME_PROMPT gettext("Enter a filename: ")
+#define EDIT_THE_PREV_FILENAME gettext("Edit the previous filename: ")
+#define EDIT_A_PREV_FILENAME gettext("Edit a previous filename: ")
+#define NEW_FILENAME_PROMPT gettext("Enter a new filename: ")
+#define FILENAME_CANNOT_BE_DOT gettext("File name may not begin with a dot.")
+#ifdef VMS
+#define FILE_EXISTS_HPROMPT gettext("File exists.  Create higher version?")
+#else
+#define FILE_EXISTS_OPROMPT gettext("File exists.  Overwrite?")
+#endif /* VMS */
+#define CANNOT_WRITE_TO_FILE gettext("Cannot write to file.")
+#define MISCONF_DOWNLOAD_COMMAND gettext("ERROR! - download command is misconfigured.")
+#define CANNOT_DOWNLOAD_FILE gettext("Unable to download file.")
+#define READING_DIRECTORY gettext("Reading directory...")
+#define BUILDING_DIR_LIST gettext("Building directory listing...")
+#define SAVING gettext("Saving...")
+#define COULD_NOT_EDIT_FILE gettext("Could not edit file '%s'.")
+#define COULD_NOT_ACCESS_DOCUMENT gettext("Unable to access document!")
+#define COULD_NOT_ACCESS_FILE gettext("Could not access file.")
+#define COULD_NOT_ACCESS_DIR gettext("Could not access directory.")
+#define COULD_NOT_LOAD_DATA gettext("Could not load data.")
+#define CANNOT_EDIT_REMOTE_FILES \
+ gettext("Lynx cannot currently (e)dit remote WWW files.")
+#define CANNOT_EDIT_FIELD \
+ gettext("This field cannot be (e)dited with an external editor.")
+#define RULE_INCORRECT gettext("Bad rule")
+#define RULE_NEEDS_DATA gettext("Insufficient operands:")
+#define NOAUTH_TO_EDIT_FILE gettext("You are not authorized to edit this file.")
+#define TITLE_PROMPT gettext("Title: ")
+#define SUBJECT_PROMPT gettext("Subject: ")
+#define USERNAME_PROMPT gettext("Username: ")
+#define PASSWORD_PROMPT gettext("Password: ")
+#define USERNAME_PASSWORD_REQUIRED gettext("lynx: Username and Password required!!!")
+#define PASSWORD_REQUIRED gettext("lynx: Password required!!!")
+#define CLEAR_ALL_AUTH_INFO gettext("Clear all authorization info for this session?")
+#define AUTH_INFO_CLEARED gettext("Authorization info cleared.")
+#define AUTH_FAILED_PROMPT gettext("Authorization failed.  Retry?")
+#define CGI_DISABLED gettext("cgi support has been disabled.")
+#define CGI_NOT_COMPILED \
+ gettext("Lynxcgi capabilities are not compiled into this version.")
+#define CANNOT_CONVERT_I_TO_O gettext("Sorry, no known way of converting %s to %s.")
+#define CONNECT_SET_FAILED gettext("Unable to set up connection.")
+#define CONNECT_FAILED gettext("Unable to make connection")
+#define MALFORMED_EXEC_REQUEST \
+ gettext("Executable link rejected due to malformed request.")
+#define BADCHAR_IN_EXEC_LINK \
+ gettext("Executable link rejected due to `%c' character.")
+#define RELPATH_IN_EXEC_LINK \
+ gettext("Executable link rejected due to relative path string ('../').")
+#define BADLOCPATH_IN_EXEC_LINK \
+ gettext("Executable link rejected due to location or path.")
+#define MAIL_DISABLED gettext("Mail access is disabled!")
+#define ACCESS_ONLY_LOCALHOST \
+ gettext("Only files and servers on the local host can be accessed.")
+#define TELNET_DISABLED gettext("Telnet access is disabled!")
+#define TELNET_PORT_SPECS_DISABLED \
+ gettext("Telnet port specifications are disabled.")
+#define NEWS_DISABLED gettext("USENET news access is disabled!")
+#define RLOGIN_DISABLED gettext("Rlogin access is disabled!")
+#define FTP_DISABLED gettext("Ftp access is disabled!")
+#define NO_REFS_FROM_DOC gettext("There are no references from this document.")
+#define NO_VISIBLE_REFS_FROM_DOC gettext("There are only hidden links from this document.")
+#ifdef VMS
+#define CANNOT_OPEN_COMFILE gettext("Unable to open command file.")
+#endif /* VMS */
+#define NEWS_POST_CANCELLED gettext("News Post Cancelled!!!")
+#define SPAWNING_EDITOR_FOR_NEWS \
+ gettext("Spawning your selected editor to edit news message")
+#define POST_MSG_PROMPT gettext("Post this message?")
+#define APPEND_SIG_FILE gettext("Append '%s'?")
+#define POSTING_TO_NEWS gettext("Posting to newsgroup(s)...")
+#ifdef VMS
+#define HAVE_UNREAD_MAIL_MSG gettext("*** You have unread mail. ***")
+#else
+#define HAVE_MAIL_MSG gettext("*** You have mail. ***")
+#endif /* VMS */
+#define HAVE_NEW_MAIL_MSG gettext("*** You have new mail. ***")
+#define FILE_INSERT_CANCELLED gettext("File insert cancelled!!!")
+#define MEMORY_EXHAUSTED_FILE gettext("Not enough memory for file!")
+#define FILE_CANNOT_OPEN_R gettext("Can't open file for reading.")
+#define FILE_DOES_NOT_EXIST gettext("File does not exist.")
+#define FILE_DOES_NOT_EXIST_RE gettext("File does not exist - reenter or cancel:")
+#define FILE_NOT_READABLE gettext("File is not readable.")
+#define FILE_NOT_READABLE_RE gettext("File is not readable - reenter or cancel:")
+#define FILE_INSERT_0_LENGTH gettext("Nothing to insert - file is 0-length.")
+#define SAVE_REQUEST_CANCELLED gettext("Save request cancelled!!!")
+#define MAIL_REQUEST_CANCELLED gettext("Mail request cancelled!!!")
+#define CONFIRM_MAIL_SOURCE_PREPARSED \
+ gettext("Viewing preparsed source.  Are you sure you want to mail it?")
+#define PLEASE_WAIT gettext("Please wait...")
+#define MAILING_FILE gettext("Mailing file.  Please wait...")
+#define MAIL_REQUEST_FAILED gettext("ERROR - Unable to mail file")
+#define CONFIRM_LONG_SCREEN_PRINT \
+ gettext("File is %d screens long.  Are you sure you want to print?")
+#define PRINT_REQUEST_CANCELLED gettext("Print request cancelled!!!")
+#define PRESS_RETURN_TO_BEGIN gettext("Press <return> to begin: ")
+#define PRESS_RETURN_TO_FINISH gettext("Press <return> to finish: ")
+#define CONFIRM_LONG_PAGE_PRINT \
+ gettext("File is %d pages long.  Are you sure you want to print?")
+#define CHECK_PRINTER \
+ gettext("Be sure your printer is on-line.  Press <return> to start printing:")
+#define FILE_ALLOC_FAILED gettext("ERROR - Unable to allocate file space!!!")
+#define UNABLE_TO_OPEN_TEMPFILE gettext("Unable to open tempfile")
+#define UNABLE_TO_OPEN_PRINTOP_FILE gettext("Unable to open print options file")
+#define PRINTING_FILE gettext("Printing file.  Please wait...")
+#define MAIL_ADDRESS_PROMPT gettext("Please enter a valid internet mail address: ")
+#define PRINTER_MISCONF_ERROR gettext("ERROR! - printer is misconfigured!")
+#define FAILED_MAP_POST_REQUEST gettext("Image map from POST response not available!")
+#define MISDIRECTED_MAP_REQUEST gettext("Misdirected client-side image MAP request!")
+#define MAP_NOT_ACCESSIBLE gettext("Client-side image MAP is not accessible!")
+#define MAPS_NOT_AVAILABLE gettext("No client-side image MAPs are available!")
+#define MAP_NOT_AVAILABLE gettext("Client-side image MAP is not available!")
+#ifndef NO_OPTION_MENU
+#define OPTION_SCREEN_NEEDS_24 \
+ gettext("Screen height must be at least 24 lines for the Options menu!")
+#define OPTION_SCREEN_NEEDS_23 \
+ gettext("Screen height must be at least 23 lines for the Options menu!")
+#define OPTION_SCREEN_NEEDS_22 \
+ gettext("Screen height must be at least 22 lines for the Options menu!")
+#endif /* !NO_OPTION_MENU */
+#define NEED_ADVANCED_USER_MODE gettext("That key requires Advanced User mode.")
+#define CONTENT_TYPE_MSG gettext("Content-type: %s")
+#define COMMAND_PROMPT gettext("Command: ")
+#define COMMAND_UNKNOWN gettext("Unknown or ambiguous command")
+#define VERSION_SEGMENT gettext(" Version ")
+#define FIRST_SEGMENT gettext(" first")
+#define GUESSING_SEGMENT gettext(", guessing...")
+#define PERMISSIONS_SEGMENT gettext("Permissions for ")
+#define SELECT_SEGMENT gettext("Select ")
+#define CAP_LETT_SEGMENT gettext("capital letter")
+#define OF_OPT_LINE_SEGMENT gettext(" of option line,")
+#define TO_SAVE_SEGMENT gettext(" to save,")
+#define TO_SEGMENT gettext(" to ")
+#define OR_SEGMENT gettext(" or ")
+#define INDEX_SEGMENT gettext(" index")
+#define TO_RETURN_SEGMENT gettext(" to return to Lynx.")
+#define ACCEPT_CHANGES gettext("Accept Changes")
+#define RESET_CHANGES gettext("Reset Changes")
+#define CANCEL_CHANGES gettext("Left Arrow cancels changes")
+#define SAVE_OPTIONS gettext("Save options to disk")
+#define ACCEPT_DATA gettext("Hit RETURN to accept entered data.")
+#define ACCEPT_DATA_OR_DEFAULT \
+ gettext("Hit RETURN to accept entered data.  Delete data to invoke the default.")
+#define VALUE_ACCEPTED gettext("Value accepted!")
+#define VALUE_ACCEPTED_WARNING_X \
+ gettext("Value accepted! -- WARNING: Lynx is configured for XWINDOWS!")
+#define VALUE_ACCEPTED_WARNING_NONX \
+ gettext("Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!")
+#define EDITOR_LOCKED gettext("You are not allowed to change which editor to use!")
+#define FAILED_TO_SET_DISPLAY gettext("Failed to set DISPLAY variable!")
+#define FAILED_CLEAR_SET_DISPLAY gettext("Failed to clear DISPLAY variable!")
+#define BOOKMARK_CHANGE_DISALLOWED \
+ gettext("You are not allowed to change the bookmark file!")
+#define COLOR_TOGGLE_DISABLED gettext("Terminal does not support color")
+#define COLOR_TOGGLE_DISABLED_FOR_TERM gettext("Your '%s' terminal does not support color.")
+#define DOTFILE_ACCESS_DISABLED gettext("Access to dot files is disabled!")
+#define UA_NO_LYNX_WARNING \
+ gettext("User-Agent string does not contain \"Lynx\" or \"L_y_n_x\"")
+#define UA_PLEASE_USE_LYNX \
+ gettext("Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!")
+#define UA_CHANGE_DISABLED \
+ gettext("Changing of the User-Agent string is disabled!")
+#define CHANGE_OF_SETTING_DISALLOWED \
+ gettext("You are not allowed to change this setting.")
+#define SAVING_OPTIONS gettext("Saving Options...")
+#define OPTIONS_SAVED gettext("Options saved!")
+#define OPTIONS_NOT_SAVED gettext("Unable to save Options!")
+#define R_TO_RETURN_TO_LYNX gettext(" 'r' to return to Lynx ")
+#define SAVE_OR_R_TO_RETURN_TO_LYNX gettext(" '>' to save, or 'r' to return to Lynx ")
+#define ANY_KEY_CHANGE_RET_ACCEPT \
+ gettext("Hit any key to change value; RETURN to accept.")
+#define ERROR_UNCOMPRESSING_TEMP gettext("Error uncompressing temporary file!")
+#define UNSUPPORTED_URL_SCHEME gettext("Unsupported URL scheme!")
+#define UNSUPPORTED_DATA_URL gettext("Unsupported data: URL!  Use SHOWINFO, for now.")
+#define TOO_MANY_REDIRECTIONS gettext("Redirection limit of 10 URL's reached.")
+#define ILLEGAL_REDIRECTION_URL gettext("Illegal redirection URL received from server!")
+#define	SERVER_ASKED_FOR_REDIRECTION \
+ gettext("Server asked for %d redirection of POST content to")
+#define REDIRECTION_WITH_BAD_LOCATION "Got redirection with a bad Location header."
+#define REDIRECTION_WITH_NO_LOCATION "Got redirection with no Location header."
+#define	PROCEED_GET_CANCEL gettext("P)roceed, use G)ET or C)ancel ")
+#define	PROCEED_OR_CANCEL gettext("P)roceed, or C)ancel ")
+#define	ADVANCED_POST_GET_REDIRECT \
+ gettext("Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel")
+#define	ADVANCED_POST_REDIRECT \
+ gettext("Redirection of POST content.  P)roceed, see U)RL, or C)ancel")
+#define CONFIRM_POST_RESUBMISSION \
+ gettext("Document from Form with POST content.  Resubmit?")
+#define CONFIRM_POST_RESUBMISSION_TO \
+ gettext("Resubmit POST content to %s ?")
+#define CONFIRM_POST_LIST_RELOAD \
+ gettext("List from document with POST data.  Reload %s ?")
+#define CONFIRM_POST_DOC_HEAD \
+ gettext("Document from POST action, HEAD may not be understood.  Proceed?")
+#define CONFIRM_POST_LINK_HEAD \
+ gettext("Form submit action is POST, HEAD may not be understood.  Proceed?")
+#define CONFIRM_WO_PASSWORD gettext("Proceed without a username and password?")
+#define CONFIRM_PROCEED gettext("Proceed (%s)?")
+#define CANNOT_POST gettext("Cannot POST to this host.")
+#define IGNORED_POST gettext("POST not supported for this URL - ignoring POST data!")
+#define DISCARDING_POST_DATA gettext("Discarding POST data...")
+#define WILL_NOT_RELOAD_DOC gettext("Document will not be reloaded!")
+#define	LOCATION_HEADER gettext("Location: ")
+#define STRING_NOT_FOUND gettext("'%s' not found!")
+#define MULTIBOOKMARKS_DEFAULT gettext("Default Bookmark File")
+#define MULTIBOOKMARKS_SMALL gettext("Screen too small! (8x35 min)")
+#define MULTIBOOKMARKS_SAVE gettext("Select destination or ^G to Cancel: ")
+#define MULTIBOOKMARKS_SELECT \
+ gettext("Select subbookmark, '=' for menu, or ^G to cancel: ")
+#define MULTIBOOKMARKS_SELF \
+ gettext("Reproduce L)ink in this bookmark file or C)ancel? (l,c): ")
+#define MULTIBOOKMARKS_DISALLOWED gettext("Multiple bookmark support is not available.")
+#define MULTIBOOKMARKS_SHEAD_MASK gettext(" Select Bookmark (screen %d of %d)")
+#define MULTIBOOKMARKS_SHEAD gettext("       Select Bookmark")
+#define MULTIBOOKMARKS_EHEAD_MASK \
+ gettext("Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)")
+#define MULTIBOOKMARKS_EHEAD \
+ gettext("         Editing Bookmark DESCRIPTION and FILEPATH")
+#define MULTIBOOKMARKS_LETTER gettext("Letter: ")
+#ifdef VMS
+#define USE_PATH_OFF_HOME \
+ gettext("Use a filepath off your login directory in SHELL syntax!")
+#else
+#define USE_PATH_OFF_HOME gettext("Use a filepath off your home directory!")
+#endif /* VMS */
+#define MAXLINKS_REACHED \
+ gettext("Maximum links per page exceeded!  Use half-page or two-line scrolling.")
+#define VISITED_LINKS_EMPTY gettext("No previously visited links available!")
+#define MEMORY_EXHAUSTED_ABORT gettext("Memory exhausted!  Program aborted!")
+#define MEMORY_EXHAUSTED_ABORTING gettext("Memory exhausted!  Aborting...")
+#define NOT_ENOUGH_MEMORY gettext("Not enough memory!")
+#define DFM_NOT_AVAILABLE gettext("Directory/File Manager not available")
+#define BASE_NOT_ABSOLUTE gettext("HREF in BASE tag is not an absolute URL.")
+#define LOCATION_NOT_ABSOLUTE gettext("Location URL is not absolute.")
+#define REFRESH_URL_NOT_ABSOLUTE gettext("Refresh URL is not absolute.")
+#define SENDING_MESSAGE_WITH_BODY_TO \
+ gettext("You are sending a message with body to:\n  ")
+#define SENDING_COMMENT_TO gettext("You are sending a comment to:\n  ")
+#define WITH_COPY_TO gettext("\n With copy to:\n  ")
+#define WITH_COPIES_TO gettext("\n With copies to:\n  ")
+#define CTRL_G_TO_CANCEL_SEND \
+ gettext("\n\nUse Ctrl-G to cancel if you do not want to send a message\n")
+#define ENTER_NAME_OR_BLANK \
+ gettext("\n Please enter your name, or leave it blank to remain anonymous\n")
+#define ENTER_MAIL_ADDRESS_OR_OTHER \
+ gettext("\n Please enter a mail address or some other\n")
+#define MEANS_TO_CONTACT_FOR_RESPONSE \
+ gettext(" means to contact you, if you desire a response.\n")
+#define ENTER_SUBJECT_LINE gettext("\n Please enter a subject line.\n")
+#define ENTER_ADDRESS_FOR_CC \
+ gettext("\n Enter a mail address for a CC of your message.\n")
+#define BLANK_FOR_NO_COPY gettext(" (Leave blank if you don't want a copy.)\n")
+#define REVIEW_MESSAGE_BODY gettext("\n Please review the message body:\n\n")
+#define RETURN_TO_CONTINUE gettext("\nPress RETURN to continue: ")
+#define RETURN_TO_CLEANUP gettext("\nPress RETURN to clean up: ")
+#define CTRL_U_TO_ERASE gettext(" Use Control-U to erase the default.\n")
+#define ENTER_MESSAGE_BELOW gettext("\n Please enter your message below.")
+#define ENTER_PERIOD_WHEN_DONE_A \
+ gettext("\n When you are done, press enter and put a single period (.)")
+#define ENTER_PERIOD_WHEN_DONE_B \
+ gettext("\n on a line and press enter again.")
+
+/* Cookies messages */
+#define ADVANCED_COOKIE_CONFIRMATION \
+ gettext("%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)")
+#define INVALID_COOKIE_DOMAIN_CONFIRMATION \
+ gettext("Accept invalid cookie domain=%s for '%s'?")
+#define INVALID_COOKIE_PATH_CONFIRMATION \
+ gettext("Accept invalid cookie path=%s as a prefix of '%s'?")
+#define ALLOWING_COOKIE gettext("Allowing this cookie.")
+#define REJECTING_COOKIE gettext("Rejecting this cookie.")
+#define COOKIE_JAR_IS_EMPTY gettext("The Cookie Jar is empty.")
+#define CACHE_JAR_IS_EMPTY gettext("The Cache Jar is empty.")
+#define ACTIVATE_TO_GOBBLE \
+ gettext("Activate links to gobble up cookies or entire domains,")
+#define OR_CHANGE_ALLOW gettext("or to change a domain's 'allow' setting.")
+#define COOKIES_NEVER_ALLOWED gettext("(Cookies never allowed.)")
+#define COOKIES_ALWAYS_ALLOWED gettext("(Cookies always allowed.)")
+#define COOKIES_ALLOWED_VIA_PROMPT gettext("(Cookies allowed via prompt.)")
+#define COOKIES_READ_FROM_FILE gettext("(Persistent Cookies.)")
+#define NO_TITLE gettext("(No title.)")
+#define NO_NAME gettext("(No name.)")
+#define NO_VALUE gettext("(No value.)")
+#define NO_NOTHING gettext("None")
+#define END_OF_SESSION gettext("(End of session.)")
+#define DELETE_COOKIE_CONFIRMATION gettext("Delete this cookie?")
+#define COOKIE_EATEN gettext("The cookie has been eaten!")
+#define DELETE_EMPTY_DOMAIN_CONFIRMATION gettext("Delete this empty domain?")
+#define DOMAIN_EATEN gettext("The domain has been eaten!")
+#define DELETE_COOKIES_SET_ALLOW_OR_CANCEL \
+ gettext("D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? ")
+#define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL \
+ gettext("D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? ")
+#define DOMAIN_COOKIES_EATEN gettext("All cookies in the domain have been eaten!")
+#define ALWAYS_ALLOWING_COOKIES gettext("'A'lways allowing from domain '%s'.")
+#define NEVER_ALLOWING_COOKIES gettext("ne'V'er allowing from domain '%s'.")
+#define PROMPTING_TO_ALLOW_COOKIES gettext("'P'rompting to allow from domain '%s'.")
+#define DELETE_ALL_COOKIES_IN_DOMAIN gettext("Delete all cookies in this domain?")
+#define ALL_COOKIES_EATEN gettext("All of the cookies in the jar have been eaten!")
+
+#define PORT_NINETEEN_INVALID gettext("Port 19 not permitted in URLs.")
+#define PORT_TWENTYFIVE_INVALID gettext("Port 25 not permitted in URLs.")
+#define PORT_INVALID gettext("Port %lu not permitted in URLs.")
+#define URL_PORT_BAD gettext("URL has a bad port field.")
+#define HTML_STACK_OVERRUN gettext("Maximum nesting of HTML elements exceeded.")
+#define BAD_PARTIAL_REFERENCE gettext("Bad partial reference!  Stripping lead dots.")
+#define TRACELOG_OPEN_FAILED gettext("Trace Log open failed.  Trace off!")
+#define LYNX_TRACELOG_TITLE gettext("Lynx Trace Log")
+#define NO_TRACELOG_STARTED gettext("No trace log has been started for this session.")
+#define MAX_TEMPCOUNT_REACHED \
+ gettext("The maximum temporary file count has been reached!")
+#define FORM_VALUE_TOO_LONG \
+ gettext("Form field value exceeds buffer length!  Trim the tail.")
+#define FORM_TAIL_COMBINED_WITH_HEAD \
+ gettext("Modified tail combined with head of form field value.")
+
+/* HTFile.c */
+#define ENTRY_IS_DIRECTORY      gettext("Directory")
+#define DISALLOWED_DIR_SCAN     gettext("Directory browsing is not allowed.")
+#define DISALLOWED_SELECTIVE_ACCESS gettext("Selective access is not enabled for this directory")
+#define FAILED_DIR_SCAN         gettext("Multiformat: directory scan failed.")
+#define FAILED_DIR_UNREADABLE   gettext("This directory is not readable.")
+#define FAILED_FILE_UNREADABLE  gettext("Can't access requested file.")
+#define FAILED_NO_REPRESENTATION gettext("Could not find suitable representation for transmission.")
+#define FAILED_OPEN_COMPRESSED_FILE gettext("Could not open file for decompression!")
+#define LABEL_FILES             gettext("Files:")
+#define LABEL_SUBDIRECTORIES    gettext("Subdirectories:")
+#define SEGMENT_DIRECTORY       gettext(" directory")
+#define SEGMENT_UP_TO           gettext("Up to ")
+#define SEGMENT_CURRENT_DIR     gettext("Current directory is ")
+
+/* HTFTP.c */
+#define ENTRY_IS_SYMBOLIC_LINK  gettext("Symbolic Link")
+
+/* HTGopher.c */
+#define FAILED_NO_RESPONSE      gettext("No response from server!")
+#define GOPHER_CSO_INDEX        gettext("CSO index")
+#define GOPHER_CSO_INDEX_SUBTITLE gettext("\nThis is a searchable index of a CSO database.\n")
+#define GOPHER_CSO_SEARCH_RESULTS gettext("CSO Search Results")
+#define GOPHER_CSO_SEEK_FAILED  gettext("Seek fail on %s\n")
+#define GOPHER_CSO_SOLICIT_KEYWORDS gettext("\nPress the 's' key and enter search keywords.\n")
+#define GOPHER_INDEX_SUBTITLE   gettext("\nThis is a searchable Gopher index.\n")
+#define GOPHER_INDEX_TITLE      gettext("Gopher index")
+#define GOPHER_MENU_TITLE       gettext("Gopher Menu")
+#define GOPHER_SEARCH_RESULTS   gettext(" Search Results")
+#define GOPHER_SENDING_CSO_REQUEST gettext("Sending CSO/PH request.")
+#define GOPHER_SENDING_REQUEST  gettext("Sending Gopher request.")
+#define GOPHER_SENT_CSO_REQUEST gettext("CSO/PH request sent; waiting for response.")
+#define GOPHER_SENT_REQUEST     gettext("Gopher request sent; waiting for response.")
+#define GOPHER_SOLICIT_KEYWORDS gettext("\nPlease enter search keywords.\n")
+#define SEGMENT_KEYWORDS_WILL   gettext("\nThe keywords that you enter will allow you to search on a")
+#define SEGMENT_PERSONS_DB_NAME gettext(" person's name in the database.\n")
+
+/* HTNews.c */
+#define FAILED_CONNECTION_CLOSED gettext("Connection closed ???")
+#define FAILED_CANNOT_OPEN_POST gettext("Cannot open temporary file for news POST.")
+#define FAILED_CANNOT_POST_SSL  gettext("This client does not contain support for posting to news with SSL.")
+
+/* HTStyle.c */
+#define STYLE_DUMP_FONT         gettext("Style %d `%s' SGML:%s.  Font %s %.1f point.\n")
+#define STYLE_DUMP_INDENT       gettext("\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+#define STYLE_DUMP_ALIGN        gettext("\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n")
+#define STYLE_DUMP_TAB          gettext("\t\tTab kind=%d at %.0f\n")
+
+/* HTTP.c */
+#define FAILED_NEED_PASSWD      gettext("Can't proceed without a username and password.")
+#define FAILED_RETRY_WITH_AUTH  gettext("Can't retry with authorization!  Contact the server's WebMaster.")
+#define FAILED_RETRY_WITH_PROXY gettext("Can't retry with proxy authorization!  Contact the server's WebMaster.")
+#define HTTP_RETRY_WITH_PROXY   gettext("Retrying with proxy authorization information.")
+#define SSL_FORCED_PROMPT	gettext("SSL error:%s-Continue?")
+
+/* HTWAIS.c */
+#define HTWAIS_MESSAGE_TOO_BIG  gettext("HTWAIS: Return message too large.")
+#define HTWAIS_SOLICIT_QUERY    gettext("Enter WAIS query: ")
+
+/* Miscellaneous status */
+#define RETRYING_AS_HTTP0       gettext("Retrying as HTTP0 request.")
+#define TRANSFERRED_X_BYTES     gettext("Transferred %d bytes")
+#define TRANSFER_COMPLETE       gettext("Data transfer complete")
+#define FAILED_READING_KEYMAP   gettext("Error processing line %d of %s\n")
+
+/* Lynx internal page titles */
+#define ADDRLIST_PAGE_TITLE	gettext("Address List Page")
+#define BOOKMARK_TITLE		gettext("Bookmark file")
+#define CONFIG_DEF_TITLE	gettext("Configuration Definitions")
+#define COOKIE_JAR_TITLE	gettext("Cookie Jar")
+#define CURRENT_KEYMAP_TITLE	gettext("Current Key Map")
+#define DIRED_MENU_TITLE	gettext("File Management Options")
+#define DOWNLOAD_OPTIONS_TITLE	gettext("Download Options")
+#define HISTORY_PAGE_TITLE	gettext("History Page")
+#define CACHE_JAR_TITLE		gettext("Cache Jar")
+#define LIST_PAGE_TITLE		gettext("List Page")
+#define LYNXCFG_TITLE		gettext("Lynx.cfg Information")
+#define MOSAIC_BOOKMARK_TITLE	gettext("Converted Mosaic Hotlist")
+#define OPTIONS_TITLE		gettext("Options Menu")
+#define PERMIT_OPTIONS_TITLE	gettext("File Permission Options")
+#define PRINT_OPTIONS_TITLE	gettext("Printing Options")
+#define SHOWINFO_TITLE		gettext("Information about the current document")
+#define STATUSLINES_TITLE	gettext("Your recent statusline messages")
+#define UPLOAD_OPTIONS_TITLE	gettext("Upload Options")
+#define VISITED_LINKS_TITLE	gettext("Visited Links Page")
+
+/* CONFIG_DEF_TITLE subtitles */
+#define SEE_ALSO gettext("See also")
+#define YOUR_SEGMENT gettext("your")
+#define RUNTIME_OPT_SEGMENT gettext("for runtime options")
+#define COMPILE_OPT_SEGMENT gettext("compile time options")
+#define COLOR_STYLE_SEGMENT gettext("color-style configuration")
+#define REL_VERSION gettext("latest release")
+#define PRE_VERSION gettext("pre-release version")
+#define DEV_VERSION gettext("development version")
+#define AUTOCONF_CONFIG_CACHE \
+ gettext("The following data were derived during the automatic configuration/build\n\
+process of this copy of Lynx.  When reporting a bug, please include a copy\n\
+of this page.")
+#define AUTOCONF_LYNXCFG_H \
+ gettext("The following data were used as automatically-configured compile-time\n\
+definitions when this copy of Lynx was built.")
+
+#ifdef DIRED_SUPPORT
+#define DIRED_NOVICELINE \
+ gettext("  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n")
+#define CURRENT_LINK_STATUS_FAILED gettext("Failed to obtain status of current link!")
+
+#define INVALID_PERMIT_URL \
+ gettext("Special URL only valid from current File Permission menu!")
+#endif /* DIRED_SUPPORT */
+
+#ifdef USE_EXTERNALS
+#define EXTERNALS_DISABLED gettext("External support is currently disabled.")
+#endif /* USE_EXTERNALS */
+
+/* new with 2.8.4dev.21 */
+#define CHDIR_DISABLED gettext("Changing working-directory is currently disabled.")
+#define LINEWRAP_OFF gettext("Linewrap OFF!")
+#define LINEWRAP_ON gettext("Linewrap ON!")
+#define NESTED_TABLES_OFF gettext("Parsing nested-tables toggled OFF!  Reloading...")
+#define NESTED_TABLES_ON gettext("Parsing nested-tables toggled ON!  Reloading...")
+#define SHIFT_VS_LINEWRAP gettext("Shifting is disabled while line-wrap is in effect")
+#define TRACE_DISABLED gettext("Trace not supported")
+
+#endif /* LYMESSAGES_EN_H */
diff --git a/PACKAGE/debian/changelog b/PACKAGE/debian/changelog
new file mode 100644
index 00000000..a52c63a5
--- /dev/null
+++ b/PACKAGE/debian/changelog
@@ -0,0 +1,35 @@
+lynx-dev (2.8.8dev.11) unstable; urgency=low
+
+  * changes for dev.11
+
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Wed, 15 Feb 2012 18:43:49 -0500
+
+lynx-dev (2.8.8dev.10) unstable; urgency=low
+
+  * changes for dev.10
+
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Thu, 06 Oct 2011 18:19:01 -0400
+
+lynx-dev (2.8.8dev.9) unstable; urgency=low
+
+  * changes for dev.9
+
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Wed, 27 Apr 2011 19:38:05 -0400
+
+lynx-dev (2.8.8dev.8) unstable; urgency=low
+
+  * changes for dev.8
+
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 19 Dec 2010 18:49:04 -0500
+
+lynx-dev (2.8.8dev.7) unstable; urgency=low
+
+  * changes for dev.7
+
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Mon, 01 Nov 2010 17:32:06 -0400
+
+lynx-dev (2.8.8dev.6) unstable; urgency=low
+
+  * add build-script for testing, adapted from Debian lynx-cur package.
+
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 18 Sep 2010 07:14:46 -0400
diff --git a/PACKAGE/debian/compat b/PACKAGE/debian/compat
new file mode 100644
index 00000000..7ed6ff82
--- /dev/null
+++ b/PACKAGE/debian/compat
@@ -0,0 +1 @@
+5
diff --git a/PACKAGE/debian/control b/PACKAGE/debian/control
new file mode 100644
index 00000000..a8a99d16
--- /dev/null
+++ b/PACKAGE/debian/control
@@ -0,0 +1,21 @@
+Source: lynx-dev
+Section: web
+Priority: extra
+Maintainer: Thomas E. Dickey <dickey@invisible-island.net>
+Homepage: http://lynx.isc.org/
+Build-Depends: debhelper (>= 7), dpatch, po-debconf, libncursesw5-dev, zlib1g-dev, gettext, libgnutls-dev, sharutils, telnet, openssh-client, libbsd-dev, libidn11-dev
+Standards-Version: 3.8.2
+
+Package: lynx-dev
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Provides: www-browser, news-reader
+Recommends: mime-support
+Description: Text-mode WWW Browser with NLS support (development version)
+ Lynx is a fully-featured World Wide Web (WWW) client for users running
+ cursor-addressable, character-cell display devices.  It is very fast and easy
+ to use.  It will display HTML documents containing links to files residing on
+ the local system, as well as files residing on remote systems running Gopher,
+ HTTP, FTP, WAIS, and NNTP servers.
+ .
+ This package contains a development version of lynx.
diff --git a/PACKAGE/debian/copyright b/PACKAGE/debian/copyright
new file mode 100644
index 00000000..3df77a17
--- /dev/null
+++ b/PACKAGE/debian/copyright
@@ -0,0 +1,124 @@
+Upstream source http://lynx.isc.org/current/
+
+Current maintainer: Thomas Dickey <dickey@invisible-island.net>
+
+-------------------------------------------------------------------------------
+
+Most of the content of the lynx release (and corresponding copyright) is
+the work of developers on the lynx-dev mailing list, who have agreed to
+distribute their work under the terms and conditions of the GNU Public
+License (Version 2).  Note that the License text after the terms and
+conditions is advisory in nature, and contains neither terms nor
+conditions.  You may choose to follow that advice.
+
+Any licensing questions should be directed to the mailing list:
+
+	lynx-dev@nongnu.org
+
+or to the maintainer (Thomas E. Dickey):
+
+	dickey@invisible-island.net
+
+For reference, below is the original copyright notice for Lynx (2.4.2).
+------------------------------------------------------------------------------
+/* Copyright (C) 1995 University of Kansas.
+
+   This file is part of Lynx, a text-based WWW browser.
+
+   Lynx is free software; you can redistribute it and/or modify it
+   under the terms of the GNU General Public License, version 2, as
+   published by the Free Software Foundation.
+
+   Lynx is distributed in the hope that it will be useful, but WITHOUT
+   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+   or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
+   License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with Lynx; see the file COPYING.  If not, write to the Free
+   Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+   02111-1307, USA.
+
+   Any licensing or usage questions should be directed to Michael
+   Grobe <grobe@ukans.edu>.
+*/
+
+-------------------------------------------------------------------------------
+
+Files: aclocal.m4
+Licence: other-BSD
+Copyright: 1997-2009,2010 by Thomas E. Dickey
+    Permission to use, copy, modify, and distribute this software and its
+    documentation for any purpose and without fee is hereby granted,
+    provided that the above copyright notice appear in all copies and that
+    both that copyright notice and this permission notice appear in
+    supporting documentation, and that the name of the above listed
+    copyright holder(s) not be used in advertising or publicity pertaining
+    to distribution of the software without specific, written prior
+    permission.
+
+    THE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD
+    TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+    AND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE
+    LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+    WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+    ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+    OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+Files: install-sh
+Copyright:  1994 X Consortium
+Licence: other-BSD
+    Permission is hereby granted, free of charge, to any person obtaining a copy
+    of this software and associated documentation files (the "Software"), to
+    deal in the Software without restriction, including without limitation the
+    rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+    sell copies of the Software, and to permit persons to whom the Software is
+    furnished to do so, subject to the following conditions:
+
+    The above copyright notice and this permission notice shall be included in
+    all copies or substantial portions of the Software.
+
+    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+    X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+    AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
+    TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+    Except as contained in this notice, the name of the X Consortium shall not
+    be used in advertising or otherwise to promote the sale, use or other deal-
+    ings in this Software without prior written authorization from the X Consor-
+    tium.
+
+    FSF changes to this file are in the public domain.
+
+    Calling this script install-sh is preferred over install.sh, to prevent
+    `make' implicit rules from creating a file called install from it
+    when there is no Makefile.
+
+    This script is compatible with the BSD install script, but was written
+    from scratch.  It can only install one file at a time, a restriction
+    shared with many OS's install programs.
+
+Files: debian/*
+Copyright:  2010 Thomas E. Dickey
+Licence: other-BSD
+    Permission to use, copy, modify, and distribute this software and its
+    documentation for any purpose and without fee is hereby granted,
+    provided that the above copyright notice appear in all copies and that
+    both that copyright notice and this permission notice appear in
+    supporting documentation, and that the name of the above listed
+    copyright holder(s) not be used in advertising or publicity pertaining
+    to distribution of the software without specific, written prior
+    permission.
+
+    THE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD
+    TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+    AND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE
+    LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+    WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+    ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+    OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+On Debian systems, the complete text of the GNU General
+Public License can be found in '/usr/share/common-licenses/GPL-2'
diff --git a/PACKAGE/debian/doc-base b/PACKAGE/debian/doc-base
new file mode 100644
index 00000000..e77e7c2c
--- /dev/null
+++ b/PACKAGE/debian/doc-base
@@ -0,0 +1,10 @@
+Document: lynx-dev
+Title: Debian Lynx Manual
+Author: Michael Grobe <grobe@ukans.edu> et al.
+Abstract: This manual describes what lynx-dev is
+ and how it can be used on Debian systems.
+Section: Network/Web Browsing
+
+Format: HTML
+Index: /usr/share/doc/lynx-dev/lynx_help/lynx_help_main.html.gz
+Files: /usr/share/doc/lynx-dev/lynx_help/*.html.gz
diff --git a/PACKAGE/debian/menu b/PACKAGE/debian/menu
new file mode 100644
index 00000000..1df6ef8d
--- /dev/null
+++ b/PACKAGE/debian/menu
@@ -0,0 +1,2 @@
+?package(lynx-dev):needs="text" section="Applications/Network/Web Browsing"\
+  title="Lynx-dev" command="lynx"
diff --git a/PACKAGE/debian/mime b/PACKAGE/debian/mime
new file mode 100644
index 00000000..47779568
--- /dev/null
+++ b/PACKAGE/debian/mime
@@ -0,0 +1,2 @@
+text/html; /usr/bin/lynx -force_html %s; needsterminal; description=HTML Text; nametemplate=%s.html; priority=3
+text/html; /usr/bin/lynx -dump -force_html %s; copiousoutput; description=HTML Text; nametemplate=%s.html; priority=2
diff --git a/PACKAGE/debian/postinst b/PACKAGE/debian/postinst
new file mode 100644
index 00000000..89955d4a
--- /dev/null
+++ b/PACKAGE/debian/postinst
@@ -0,0 +1,27 @@
+#! /bin/sh
+# postinst script for lynx
+
+set -e
+
+PRI=50
+ALT=lynx
+PKG=lynx-dev
+
+BINDIR=/usr/bin
+MANDIR=/usr/share/man/man1
+
+if [ $1 != "upgrade" ]
+then
+
+	update-alternatives \
+		--install \
+			$BINDIR/$ALT $ALT \
+			$BINDIR/$PKG $PRI \
+		--slave $MANDIR/$ALT.1.gz $ALT.1.gz \
+			$MANDIR/$PKG.1.gz
+
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/PACKAGE/debian/prerm b/PACKAGE/debian/prerm
new file mode 100644
index 00000000..a79bf385
--- /dev/null
+++ b/PACKAGE/debian/prerm
@@ -0,0 +1,12 @@
+#! /bin/sh
+# prerm script for lynx
+
+set -e
+
+if [ $1 != "upgrade" ]; then
+	update-alternatives --remove lynx /usr/bin/lynx-dev
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/PACKAGE/debian/rules b/PACKAGE/debian/rules
new file mode 100755
index 00000000..ceb4e199
--- /dev/null
+++ b/PACKAGE/debian/rules
@@ -0,0 +1,183 @@
+#!/usr/bin/make -f
+# Made with the aid of dh_make, by Craig Small
+# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess.
+# Some lines taken from debmake, by Cristoph Lameter.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+PKG_SUFFIX	= -dev
+
+PACKAGE		:= $(shell dpkg-parsechangelog| \
+			sed -n 's/^Source: \(.*\)$$/\1/p')
+
+docdir		:= /usr/share/doc/$(PACKAGE)
+helpdir		:= $(docdir)/help_dir
+
+DSTDIR		:= $(CURDIR)/debian/$(PACKAGE)
+DOCDIR		:= $(DSTDIR)$(docdir)
+
+CFLAGS =
+
+ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
+DEBOP=--enable-debug
+else
+DEBOP=
+endif
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+        CFLAGS += -O0
+else
+        CFLAGS += -O2
+endif
+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
+        INSTALL_PROGRAM += -s
+endif
+
+# This package adds the following not in Debian lynx-cur:
+# --enable-htmlized-cfg
+# --enable-local-docs
+
+configure: configure-stamp
+configure-stamp:
+	dh_testdir
+
+	env cf_cv_SYSTEM_MAIL=/usr/sbin/sendmail \
+		COMPRESS=/usr/bin/compress \
+		BZIP2=/bin/bzip2 \
+		UNZIP=/usr/bin/unzip \
+		ZIP=/usr/bin/zip \
+		LIBS="-lbsd" \
+	./configure \
+		--host=$(DEB_HOST_GNU_TYPE) \
+		--build=$(DEB_BUILD_GNU_TYPE) \
+		--program-suffix=$(PKG_SUFFIX) \
+		--prefix=/usr \
+		--libexecdir=\$${prefix}/lib \
+		--mandir=\$${prefix}/share/man \
+		--sysconfdir=/etc/$(PACKAGE) \
+		--localstatedir=/var \
+		--libdir=/etc/$(PACKAGE) \
+		--enable-8bit-toupper \
+		--enable-cgi-links \
+		--enable-cjk \
+		--enable-default-colors \
+		--enable-exec-links \
+		--enable-exec-scripts \
+		--enable-externs \
+		--enable-forms-options \
+		--enable-gzip-help \
+		--enable-htmlized-cfg \
+		--enable-ipv6 \
+		--enable-japanese-utf8 \
+		--enable-justify-elts \
+		--enable-local-docs \
+		--enable-nested-tables \
+		--enable-nls \
+		--enable-nsl-fork \
+		--enable-partial \
+		--enable-persistent-cookies \
+		--enable-prettysrc \
+		--enable-read-eta \
+		--enable-scrollbar \
+		--enable-source-cache \
+		--enable-syslog \
+		--with-gnutls=/usr \
+		--with-screen=ncursesw \
+		--with-textdomain=$(PACKAGE) \
+		--with-zlib \
+		--without-included-gettext \
+		${DEBOP}
+
+	$(MAKE) preinstall \
+		docdir=$(docdir) \
+		helpdir=$(helpdir)
+
+	touch configure-stamp
+
+build: build-stamp
+build-stamp: configure-stamp
+	dh_testdir
+
+	$(MAKE) \
+		docdir=$(docdir) \
+		helpdir=$(helpdir)
+
+	touch build-stamp
+
+clean:
+	dh_testdir
+	dh_testroot
+
+	[ ! -f Makefile ] || $(MAKE) clean
+
+	rm -f configure-stamp build-stamp install-stamp \
+		config.cache config.h config.status config.log makefile
+
+	rm -f *.o lynx
+
+	dh_clean
+
+install: install-stamp
+install-stamp: build-stamp
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+	dh_installdirs
+
+	$(MAKE) install \
+		DESTDIR=$(CURDIR)/debian/$(PACKAGE) \
+		docdir=$(docdir) \
+		helpdir=$(helpdir)
+
+	touch install-stamp
+
+install: install-indep install-arch
+install-indep:
+
+install-arch:
+	dh_testdir
+	dh_testroot
+	dh_prep -s 
+	dh_installdirs -s
+
+	$(MAKE) install-full \
+		DESTDIR=$(DSTDIR) \
+		docdir=$(docdir) \
+		helpdir=$(helpdir)
+
+	cd $(DOCDIR) && rm -rf samples test
+	cd $(DOCDIR) && rm -f COPY*.asc CHANGES 
+
+# Build architecture-independent files here.
+binary-indep: build install
+# No binary-indep target.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+	dh_testdir
+	dh_testroot
+	dh_installdebconf
+	dh_installdocs
+	dh_installmenu
+	dh_installmime
+	dh_installexamples
+	dh_installchangelogs CHANGES
+	dh_install
+	dh_link
+	dh_strip
+	dh_compress
+	dh_fixperms
+	dh_installdeb
+	dh_shlibdeps
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install install-stamp
diff --git a/PACKAGE/debian/source/format b/PACKAGE/debian/source/format
new file mode 100644
index 00000000..89ae9db8
--- /dev/null
+++ b/PACKAGE/debian/source/format
@@ -0,0 +1 @@
+3.0 (native)
diff --git a/PACKAGE/debian/watch b/PACKAGE/debian/watch
new file mode 100644
index 00000000..4c0c7a8d
--- /dev/null
+++ b/PACKAGE/debian/watch
@@ -0,0 +1,4 @@
+version=3
+
+opts=passive ftp://lynx.isc.org/current/lynx-cur\.tgz \
+ debian  uupdate
diff --git a/PACKAGE/lynx-curses.iss b/PACKAGE/lynx-curses.iss
new file mode 100644
index 00000000..dbc950d6
--- /dev/null
+++ b/PACKAGE/lynx-curses.iss
@@ -0,0 +1,11 @@
+; $LynxId: lynx-curses.iss,v 1.5 2008/12/29 13:21:17 tom Exp $

+;

+; This is an installer for the "color-style" flavor of Lynx.

+;

+; The script assumes environment variables have been set, e.g., to point to

+; data which is used by the installer (see "lynx.lss" for details).

+

+#define SetupBaseName "lynx-cs"

+#define SourceExeName "lynx-cs.exe"

+

+#include "lynx.iss"

diff --git a/PACKAGE/lynx-slang.iss b/PACKAGE/lynx-slang.iss
new file mode 100644
index 00000000..9f42316e
--- /dev/null
+++ b/PACKAGE/lynx-slang.iss
@@ -0,0 +1,12 @@
+; $LynxId: lynx-slang.iss,v 1.1 2008/12/29 13:28:38 tom Exp $

+;

+; This is an installer for the "color-style" flavor of Lynx.

+;

+; The script assumes environment variables have been set, e.g., to point to

+; data which is used by the installer (see "lynx.lss" for details).

+

+#define SetupBaseName "lynx-sl"

+#define SourceExeName "lynx-slang.exe"

+#define NoScreenDll

+

+#include "lynx.iss"

diff --git a/PACKAGE/lynx.iss b/PACKAGE/lynx.iss
new file mode 100644
index 00000000..583905aa
--- /dev/null
+++ b/PACKAGE/lynx.iss
@@ -0,0 +1,409 @@
+; $LynxId: lynx.iss,v 1.6 2012/02/13 22:17:17 tom Exp $

+; vile:ts=2 sw=2 notabinsert

+;

+; This is the BASE script for different flavors of the installer for Lynx.

+; It can be overridden to select different source-executables (and their associated

+; screen library, e.g., pdcurses or slang).

+;

+; The script assumes environment variables have been set, e.g., to point to

+; data which is used by the installer:

+;

+; LYNX_BINDIR - directory containing lynx.exe (or different names)

+; LYNX_DLLSDIR - directory containing curses or slang dlls.

+; LYNX_DOCSDIR - files and subdirectories installed from Unix with "make install-doc"

+; LYNX_HELPDIR - files and subdirectories installed from Unix with "make install-help"

+

+#include "version.iss"

+

+#ifndef MyAppExeName

+#define MyAppExeName "lynx.exe"

+#endif

+

+#define MySendTo '{sendto}\' + myAppName + '.lnk'

+#define MyQuickLaunch '{userappdata}\Microsoft\Internet Explorer\Quick Launch\' + myAppName + '.lnk'

+

+#ifndef SourceExeName

+#define SourceExeName "lynx.exe"

+#endif

+

+#ifndef NoScreenDll

+#ifndef ScreenDllName

+#define ScreenDllName "pdcurses.dll"

+#endif

+#endif

+

+#ifndef BzipDllName

+#define BzipDllName "libbz2.dll"

+#endif

+

+#ifndef ZlibDllName

+#define ZlibDllName "zlib.dll"

+#endif

+

+#ifndef BzipExeName

+#define BzipExeName "bzip2.exe"

+#endif

+

+#ifndef GzipExeName

+#define GzipExeName "gzip.exe"

+#endif

+

+#ifndef SetupBaseName

+#define SetupBaseName "lynx"

+#endif

+

+#ifndef BinsSrcDir

+#define BinsSrcDir GetEnv("LYNX_BINDIR")

+#if BinsSrcDir == ""

+#define BinsSrcDir "..\bin"

+#endif

+#endif

+

+#ifndef DllsSrcDir

+#define DllsSrcDir GetEnv("LYNX_DLLSDIR")

+#if DllsSrcDir == ""

+#define DllsSrcDir "..\dlls"

+#endif

+#endif

+

+#ifndef DocsSrcDir

+#define DocsSrcDir GetEnv("LYNX_DOCSDIR")

+#if DocsSrcDir == ""

+#define DocsSrcDir "..\docs"

+#endif

+#endif

+

+#ifndef HelpSrcDir

+#define HelpSrcDir GetEnv("LYNX_HELPDIR")

+#if HelpSrcDir == ""

+#define HelpSrcDir "..\lynx_help"

+#endif

+#endif

+

+[Setup]

+AppName={#MyAppName}

+AppVerName={#MyAppVerName}

+AppPublisher={#MyAppPublisher}

+AppPublisherURL={#MyAppURL}

+AppSupportURL={#MyAppURL}

+AppUpdatesURL={#MyAppURL}

+DefaultDirName={pf}\{#MyAppName}

+DefaultGroupName={#MyAppName}

+AllowNoIcons=yes

+LicenseFile=..\COPYHEADER

+InfoBeforeFile=..\README

+OutputDir=..\PACKAGE\lynx-setup

+#emit 'OutputBaseFilename=' + SetupBaseName + LYNX_VERSION + '-setup'

+Compression=lzma

+SolidCompression=yes

+

+[Languages]

+Name: "english"; MessagesFile: "compiler:Default.isl"

+

+[Components]

+Name: main; Description: The Lynx executable; types: full custom compact

+Name: explorer; Description: Windows Explorer integration; types: full custom

+

+[Tasks]

+Name: for_all_users; Description: Install for all users on this machine; GroupDescription: Configuration Settings; Components: main; Check: isGuru; Flags: unchecked

+Name: register_vars; Description: Use registry for environment variables; GroupDescription: Configuration Settings; Components: main; Flags: unchecked

+Name: use_sendto; Description: Add Send To Entry; GroupDescription: Windows Explorer; Components: explorer; Flags: unchecked

+Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; Components: main; Flags: unchecked

+Name: quicklaunchicon; Description: {cm:CreateQuickLaunchIcon}; GroupDescription: {cm:AdditionalIcons}; Components: main; Flags: unchecked

+

+

+[Dirs]

+Name: "{app}\doc"

+Name: "{app}\doc\samples"

+Name: "{app}\doc\test"

+Name: "{app}\help"

+Name: "{app}\help\keystrokes"

+Name: "{app}\icon"

+Name: "{app}\tmp"

+

+[Files]

+#emit 'Source: "' + BinsSrcDir + '\' + SourceExeName + '"; DestDir: "{app}"; DestName: ' + MyAppExeName + '; AfterInstall: myPostExecutable; Flags: ignoreversion'

+#ifndef NoScreenDll

+#emit 'Source: "' + DllsSrcDir + '\' + ScreenDllName + '"; DestDir: "{app}"; DestName: ' + ScreenDllName + '; Flags: ignoreversion'

+#endif

+#emit 'Source: "' + DllsSrcDir + '\' + ZlibDllName + '"; DestDir: "{app}"; DestName: ' + ZlibDllName + '; Flags: ignoreversion'

+#emit 'Source: "' + DllsSrcDir + '\' + BzipDllName + '"; DestDir: "{app}"; DestName: ' + BzipDllName + '; Flags: ignoreversion'

+#emit 'Source: "' + DllsSrcDir + '\' + BzipExeName + '"; DestDir: "{app}"; DestName: ' + BzipExeName + '; Flags: ignoreversion'

+#emit 'Source: "' + DllsSrcDir + '\' + GzipExeName + '"; DestDir: "{app}"; DestName: ' + GzipExeName + '; Flags: ignoreversion'

+#emit 'Source: "' + DocsSrcDir + '\*.*"; DestDir: "{app}\doc"; Flags: '

+#emit 'Source: "' + DocsSrcDir + '\samples\*.*"; DestDir: "{app}\doc\samples"; Flags: '

+#emit 'Source: "' + DocsSrcDir + '\test\*.*"; DestDir: "{app}\doc\test"; Flags: '

+#emit 'Source: "' + HelpSrcDir + '\*.*"; DestDir: "{app}\help"; Flags: '

+#emit 'Source: "' + HelpSrcDir + '\keystrokes\*.*"; DestDir: "{app}\help\keystrokes"; Flags: '

+

+; some of these data files are from an earlier installer by Claudio Santambrogio

+Source: "..\samples\lynx.ico"; DestDir: "{app}\icon"

+Source: "..\samples\lynx.bat"; DestDir: "{app}"

+Source: "..\samples\jumps.htm"; DestDir: "{app}"

+Source: "..\samples\home.htm"; DestDir: "{app}"

+Source: "..\samples\lynx_bookmarks.htm"; DestDir: "{app}"

+Source: "..\samples\*.lss"; DestDir: "{app}"

+Source: "..\samples\lynx.bat"; DestDir: "{app}"

+Source: "..\samples\lynx-demo.cfg"; DestDir: "{app}"

+Source: "..\lynx.man"; DestDir: "{app}"

+Source: "..\lynx.cfg"; DestDir: "{app}" ; AfterInstall: myCustomCfg; Flags: ignoreversion

+; NOTE: Don't use "Flags: ignoreversion" on any shared system files

+

+[Icons]

+Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"

+Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"

+Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon

+

+[Run]

+Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#MyAppName}}"; Flags: nowait postinstall skipifsilent

+

+[UninstallDelete]

+Type: files; Name: {app}\.lynx_cookies

+Type: dirifempty; Name: {app}

+#emit 'Type: files; Name: ' + mySendTo

+#emit 'Type: files; Name: ' + myQuickLaunch

+

+[Code]

+#emit 'const MY_APP_NAME = ''{app}\' + myAppName + '.exe'';'

+

+function isGuru(): Boolean;

+begin

+    Result := isAdminLoggedOn();

+end;

+

+function environRootKey(): Integer;

+begin

+    Result := HKEY_CURRENT_USER;

+end;

+

+function appKey(): string;

+begin

+    Result := 'Software\Lynx';

+end;

+

+function envSubKey(): string;

+begin

+    Result := 'Environment';

+end;

+

+function appSubKey(): string;

+begin

+    Result := appKey() + '\' + envSubKey();

+end;

+

+function envSysKey(): string;

+begin

+    Result := 'System\CurrentControlSet\Control\Session Manager\Environment';

+end;

+

+// Set the environment variable ValueName.

+procedure addVarToEnv(const RootKey: Integer; const SubKeyName, ValueName, toAdd: String);

+var

+    Updated : string;

+begin

+    Updated := ExpandConstant(toAdd);

+    RegWriteStringValue(RootKey, SubKeyName, ValueName, Updated);

+    Log('Added ' + toAdd + ' to ' + ValueName);

+    // MsgBox('addVarToEnv: ' #13#13 + ValueName + '="' + Updated + '"', mbInformation, MB_OK)

+end;

+

+// Remove the given environment variable ValueName.

+function removeVarFromEnv(const RootKey: Integer; const SubKeyName, ValueName: String): Boolean;

+var

+    Current : string;

+begin

+    Result := False;

+    if RegQueryStringValue(RootKey, SubKeyName, ValueName, Current) then

+    begin

+        RegDeleteValue(RootKey, SubKeyName, ValueName);

+        Result := True;

+        Log('Removed ' + ValueName);

+        // MsgBox('removeVarFromEnv: ' #13#13 + ValueName + '="' + Current + '"', mbInformation, MB_OK)

+    end;

+end;

+

+function selectedVarsRootKey(): Integer;

+begin

+    if isTaskSelected('for_all_users') then

+        Result := HKEY_LOCAL_MACHINE

+    else

+        Result := HKEY_CURRENT_USER;

+end;

+

+function selectedVarsSubKey(): String;

+begin

+    if isTaskSelected('for_all_users') then

+    begin

+        if isTaskSelected('register_vars') then

+            Result := appSubKey()

+        else

+            Result := envSysKey();

+    end else

+    begin

+        if isTaskSelected('register_vars') then

+            Result := appSubKey()

+        else

+            Result := envSubKey();

+    end;

+end;

+

+procedure addAnyVariable(const ValueName, newValue: String);

+begin

+    addVarToEnv(selectedVarsRootKey(), selectedVarsSubKey(), ValueName, NewValue);

+end;

+

+// FIXME: should only remove if it matches the installer's value

+procedure removeAnyVariable(const ValueName: String);

+begin

+    removeVarFromEnv(HKEY_CURRENT_USER, envSubKey(), ValueName);

+    removeVarFromEnv(HKEY_CURRENT_USER, appSubKey(), ValueName);

+    removeVarFromEnv(HKEY_LOCAL_MACHINE, appSubKey(), ValueName);

+    removeVarFromEnv(HKEY_LOCAL_MACHINE, envSysKey(), ValueName);

+end;

+

+// http://www.delphidabbler.com/articles?article=12

+procedure AddSendTo();

+begin

+  CreateShellLink(

+#emit 'ExpandConstant(''' + MySendTo + '''),'

+#emit '''SendTo link for ' + myAppName + ''','

+    ExpandConstant(MY_APP_NAME),      // program

+    '',                               // option(s) will be followed by pathname

+    '',                               // no target directory

+    '',                               // no icon filename

+    -1,                               // no icon index

+    SW_SHOWNORMAL);

+end;

+

+procedure AddQuickLaunch();

+begin

+  CreateShellLink(

+#emit 'ExpandConstant(''' + MyQuickLaunch + '''),'

+#emit '''SendTo link for ' + myAppName + ''','

+    ExpandConstant(MY_APP_NAME),      // program

+    '',                               // option(s) will be followed by pathname

+    '',                               // no target directory

+    '',                               // no icon filename

+    -1,                               // no icon index

+    SW_SHOWNORMAL);

+end;

+

+// This is called after installing the executable.

+procedure myPostExecutable();

+var

+  Keypath : String;

+  AppDir  : String;

+begin

+  Keypath := appKey();

+  AppDir := ExpandConstant('{app}');

+  Log('Setting registry key "' + Keypath + '" to "' + AppDir + '"');

+  if not RegWriteStringValue(selectedVarsRootKey(), Keypath, '', AppDir) then

+    Log('Failed to set key');

+

+  if isTaskSelected('use_sendto') then

+    begin

+    AddSendTo();

+    Log('** added Send-To link');

+    end;

+

+  if isTaskSelected('quicklaunchicon') then

+    begin

+    AddQuickLaunch();

+    Log('** added Quick-launch link');

+    end;

+end;

+

+// This is called after installing the lynx.cfg file.

+procedure myCustomCfg();

+var

+  AppDir  : String;

+  CfgFile : String;

+begin

+  AppDir := ExpandConstant('{app}');

+  CfgFile := AppDir + '\lynx.cfg';

+

+  addAnyVariable('LYNX_CFG', CfgFile);

+  Log('** set LYNX_CFG=' + CfgFile);

+

+  SaveStringToFile(CfgFile, 'HELPFILE:' + AppDir + '/help/Lynx_help_main.html.gz' + #10, True);

+  SaveStringToFile(CfgFile, 'COLOR_STYLE:' + AppDir + '/opaque.lss' + #10, True);

+

+  SaveStringToFile(CfgFile, 'CHMOD_PATH:' + #10, True);

+  SaveStringToFile(CfgFile, 'COPY_PATH:' + #10, True);

+  SaveStringToFile(CfgFile, 'MKDIR_PATH:' + #10, True);

+  SaveStringToFile(CfgFile, 'MV_PATH:' + #10, True);

+  SaveStringToFile(CfgFile, 'RMDIR_PATH:' + #10, True);

+  SaveStringToFile(CfgFile, 'RM_PATH:' + #10, True);

+  SaveStringToFile(CfgFile, 'TOUCH_PATH:' + #10, True);

+

+  Log('** customized ' + CfgFile);

+

+  if isTaskSelected('use_sendto') then

+    begin

+    AddSendTo();

+    Log('** added Send-To link');

+    end;

+end;

+

+function CleanupMyKey(const theRootKey: Integer): Boolean;

+var

+  Path : String;

+  Value : String;

+begin

+  Result := False;

+  if RegQueryStringValue(theRootKey, appKey(), '', Value) then

+    begin

+      if Value <> '' then

+        begin

+        Result := True;

+        Log('Deleting value of "' + appKey() + '" = "' + Value + '"');

+        if not RegDeleteValue(theRootKey, appKey(), '') then

+          Log('Failed to delete value');

+

+        Path := appKey() + '\Environment';

+        Log('Checking for subkey "' + Path + '"');

+        if RegValueExists(theRootKey, Path, '') then

+          begin

+          if RegDeleteKeyIncludingSubkeys(theRootKey, Path) then

+            Log('Deleted key "' + Path + '"')

+          else

+            Log('Failed to delete key "' + Path + '"');

+          end;

+

+        if RegDeleteKeyIfEmpty(theRootKey, appKey()) then

+          Log('Deleted key "' + appKey() + '"')

+        else

+          Log('Failed to delete key "' + appKey() + '"');

+        end

+    end

+end;

+      

+// On uninstall, we do not know which registry setting was selected during install, so we remove all.

+procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);

+begin

+  case CurUninstallStep of

+    usUninstall:

+      begin

+        // MsgBox('CurUninstallStepChanged:' #13#13 'Uninstall is about to start.', mbInformation, MB_OK)

+        // ...insert code to perform pre-uninstall tasks here...

+      end;

+    usPostUninstall:

+      begin

+        removeAnyVariable('LYNX_CFG');

+

+      {

+        If we don't find the settings in the current user, try the local machine.

+        The setup program cannot pass the all-users flag to the uninstaller, so we

+        have to try both.

+      }

+      Log('Checking current-user registry key');

+      if not CleanupMyKey(HKEY_CURRENT_USER) then

+        begin

+        Log('Checking local-machine registry key');

+        CleanupMyKey(HKEY_LOCAL_MACHINE);

+        end;

+    

+        // MsgBox('CurUninstallStepChanged:' #13#13 'Uninstall just finished.', mbInformation, MB_OK);

+      end;

+  end;

+end;

diff --git a/PACKAGE/lynx.spec b/PACKAGE/lynx.spec
new file mode 100644
index 00000000..9ddc19f4
--- /dev/null
+++ b/PACKAGE/lynx.spec
@@ -0,0 +1,114 @@
+# $LynxId: lynx.spec,v 1.11 2012/02/15 23:43:12 tom Exp $
+Summary: A text-based Web browser
+Name: lynx
+Version: 2.8.8
+Release: dev.11
+License: GPLv2
+Group: Applications/Internet
+Source: lynx%{version}%{release}.tgz
+# URL: http://lynx.isc.org/
+Provides: webclient
+Provides: text-www-browser
+# BuildRequires: openssl-devel, pkgconfig, ncurses-devel >= 5.3-5,
+# BuildRequires: zlib-devel, gettext, rsh, telnet, zip, unzip
+# Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+%description
+Lynx is a fully-featured World Wide Web (WWW) client for users running
+cursor-addressable, character-cell display devices.  It is very fast and easy
+to use.  It will display HTML documents containing links to files residing on
+the local system, as well as files residing on remote systems running Gopher,
+HTTP, FTP, WAIS, and NNTP servers.
+
+%define lynx_doc %{_defaultdocdir}/lynx
+%define lynx_etc %{_sysconfdir}/lynx
+
+%prep
+%setup -q -n lynx%{version}%{release}
+
+%build
+CPPFLAGS="-DMISC_EXP -DEXP_HTTP_HEADERS" \
+%configure \
+	--target %{_target_platform} \
+	--prefix=%{_prefix} \
+	--bindir=%{_bindir} \
+	--datadir=%{lynx_doc} \
+	--libdir=%{lynx_etc} \
+	--mandir=%{_mandir} \
+	--sysconfdir=%{lynx_etc} \
+	--disable-font-switch \
+	--disable-internal-links \
+	--enable-8bit-toupper \
+	--enable-addrlist-page \
+	--enable-alt-bindings \
+	--enable-ascii-ctypes \
+	--enable-cgi-links \
+	--enable-change-exec \
+	--enable-charset-choice \
+	--enable-cjk \
+	--enable-default-colors \
+	--enable-exec-links \
+	--enable-exec-scripts \
+	--enable-externs \
+	--enable-file-upload \
+	--enable-font-switch \
+	--enable-forms-options \
+	--enable-gzip-help \
+	--enable-htmlized-cfg \
+	--enable-internal-links \
+	--enable-ipv6 \
+	--enable-japanese-utf8 \
+	--enable-justify-elts \
+	--enable-kbd-layout \
+	--enable-local-docs \
+	--enable-locale-charset \
+	--enable-nested-tables \
+	--enable-nls \
+	--enable-nsl-fork \
+	--enable-partial \
+	--enable-persistent-cookies \
+	--enable-prettysrc \
+	--enable-progressbar \
+	--enable-read-eta \
+	--enable-scrollbar \
+	--enable-session-cache \
+	--enable-sessions \
+	--enable-source-cache \
+	--enable-syslog \
+	--enable-warnings \
+	--with-bzlib \
+	--with-screen=ncursesw \
+	--with-ssl \
+	--with-zlib
+make \
+	docdir=%{lynx_doc}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+chmod -x samples/mailto-form.pl
+
+make install-full \
+	DESTDIR=$RPM_BUILD_ROOT \
+	docdir=%{lynx_doc}
+
+cat >>$RPM_BUILD_ROOT%{lynx_etc}/lynx.cfg <<EOF
+DEFAULT_INDEX_FILE:http://www.google.com/
+LOCALE_CHARSET:TRUE
+EOF
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(-,root,root,-)
+%{_bindir}/lynx
+%{_mandir}/*/*
+%{_datadir}/locale/*
+%{lynx_doc}/*
+%config %{lynx_etc}/lynx.cfg
+%config %{lynx_etc}/lynx.lss
+
+%changelog
+
+* Fri Sep 17 2010 Thomas E. Dickey
+- initial version.
diff --git a/PACKAGE/version.iss b/PACKAGE/version.iss
new file mode 100644
index 00000000..255ff217
--- /dev/null
+++ b/PACKAGE/version.iss
@@ -0,0 +1,9 @@
+; version used for Inno Setup files.

+

+; $Format: "#define LYNX_VERSION \"$ProjectVersion$\""$

+#define LYNX_VERSION "2.8.8dev.11"
+

+#define MyAppName "Lynx"

+#define MyAppPublisher "Thomas E Dickey"

+#define MyAppURL "http://lynx.isc.org"

+#define MyAppVerName "Lynx " + LYNX_VERSION

diff --git a/PROBLEMS b/PROBLEMS
new file mode 100644
index 00000000..ddfcb9c0
--- /dev/null
+++ b/PROBLEMS
@@ -0,0 +1,258 @@
+Lynx PROBLEMS file.
+
+Ideally you would never have to read this, but inevitably problems
+do arise.  As implementation and installation problems become known
+they will be outlined in this file.
+
+---------
+
+    The install script will attempt to preserve your current settings in the
+    lynx.cfg file.  You should review these (at the end of lynx.cfg) after
+    install.  For instance references to lynx.browser.org for a startfile can
+    be removed, since that site is no longer maintained.
+
+---------
+
+    Some customized installs of OpenSSL are not detected by the configure
+    script.  For example, with Redhat9, we did this to work around:
+
+	#!/bin/sh
+	KRB=/usr/kerberos
+	export LIBS="-L$KRB/lib -lssl -lcrypto -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err"
+	export CPPFLAGS="-I$KRB/include -I/usr/include/openssl"
+	export CFLAGS="-O -g $CPPFLAGS"
+	./configure --with-ssl $*
+
+---------
+
+    The configure script check for IPv6 (--enable-ipv6) assumes that your build
+    machine can listen for IPv6 connections.  It cannot determine if you want
+    to use it only for outgoing connections.  If the configure script is
+    otherwise successful, it will warn about a nonfunctioning getaddrinfo()
+    function, and does not define these symbols needed to successfully compile
+    IPv6 support.  You can work around this by by editing lynx_cfg.h:
+
+	HAVE_GAI_STRERROR
+	HAVE_GETADDRINFO
+
+---------
+
+    Control-Z on Unix can cause aberrant behavior.  If you encounter
+    problems, use -restrictions=suspend to disable it, and only '!'
+    for escapes to shell (on VMS control-Z is unconditional 'Q'uit,
+    with no attempt to suspend the Lynx process only temporarily).
+    Control-Z on Unix often works better with slang.
+
+---------
+
+    Screen resizing can be a bit funny.  If you resize the screen,
+    documents that have been cached will be out of whack.  Any further
+    documents will look fine.  You can reload documents to the current
+    window size with CTRL-R
+
+---------
+
+    If the configure script dies when it discovers that gcc is broken,
+    despite the fact there is a perfectly good ANSI cc in the PATH,
+    try setting the CC environment variable to your working cc compiler
+    before running configure: e.g.
+
+      setenv CC cc   (or   set CC=cc; export CC  , depending on the shell)
+      ./configure
+
+---------
+
+    If you run into a problem compiling GridText.c, try omitting -O from the
+    compiler flags; it is a very big file and may not compile successfully
+    if you include optimization.
+
+---------
+
+    On a Sun system, the message:
+	"Alert!:  Unable to connect to remote host"
+    will be displayed every time an attempt is made to access a host
+    other than localhost if Lynx has been built without the resolv
+    library and needed it, or with it and shouldn't have been.
+    Unfortunately, there's no way to check in the Makefile whether
+    -lresolv should be included in the LIBS="" list.  What's necessary
+    depends on how that Sun is configured.  To get the build right for
+    your SUN 3 or 4 OS, if you didn't have RESOLVLIB defined in the
+    Makefile define it and build Lynx again, or vice versa.  Also, if
+    you have upgraded to the bind-8.1 or later library, you should try
+    changing -lresolv to -lbind.
+
+---------
+
+    On Sun systems when accessing sites that use multiple IPs for one URL,
+    you may experience a core dump.  It's a bug in the resolver library,
+    which can be fixed by downloading & installing Sun's jumbo patch:
+    search Sun support information, e.g., Solaris newsgroups,
+    or see the following Lynx Archive items:
+
+      http://www.flora.org/lynx-dev/lynx-dev/9606/0422.html
+      http://www.flora.org/lynx-dev/html/month0497/msg01018.html
+      http://www.flora.org/lynx-dev/html/month0497/msg01064.html
+
+    The Sun `shelltool' and `cmdtool' terminals are stupid by default.
+    In order to get bold text to appear differently than inverse video,
+    the user should put this line in ~/.Xdefaults:
+
+	Term*boldStyle:		Offset_X
+
+    From the `shelltool' man page, it seems that an analogous line
+    in ~/.defaults
+
+	/Tty/Bold_style "Offset_X"
+
+    ought to work just as well, but you may not get the desired
+    behavior until you modify your .Xdefaults file (and run `xrdb
+    ~/.Xdefaults').  Note also that there are other supported values
+    for the boldStyle resource/Bold_style default, all of which begin
+    with "Offset_". (helpful hint from kevin@traffic.den.mmc.com)
+
+---------
+
+    Directory browsing has been implemented for VMS, but there are no
+    plans to port additional DIRED support, because Lynx must handle files
+    as streams, and this precludes "serious" Directory/File Management on
+    VMS.  Use a jumps file link to CSwing (sources or executables are
+    available from ftp://narnia.memst.edu), or define CSWING_PATH in
+    userdefs.h or lynx.cfg to invoke CSwing via the DIRED_MENU command.
+
+---------
+
+    If one switches between K)eypad "Numbers act as arrows" versus "Links
+    are numbered" in the 'o'ptions menu when the current document is a
+    DIRED menu in which links have been tagged, the tagging can be trashed
+    (so don't switch at such times 8-).
+
+---------
+
+    When "Links are numbered" is on, if a line is split on an anchor (to
+    obey right margin restrictions), and there is no space in the bolded
+    string such that the entire "[#]string" must be moved down, the "[#]"
+    becomes bolded, instead on only "string".
+
+---------
+
+    The Mosaic v2.5 hostlist uses HTML similar to that of Lynx's bookmark
+    file, but with </UL></HTML> at the bottom, such that it is not fully
+    compatible with Lynx's file.  If you try to use the Mosaic file as if
+    it were a Lynx bookmark file, the </UL></HTML> will not be taken into
+    account and new links will be added below rather than above those end
+    tags.  Instead, add a link to the Mosaic file in your Lynx file, and
+    to the Lynx file in your Mosaic file, so that you can access both files
+    with both clients.
+
+---------
+
+    SOCKSification and the -socks switch have not yet been integrated with
+    the slang library support.
+
+---------
+
+    There is an apparently broken version of select() in libcurses.a
+    of HP/UX 10.10.  It also breaks tn3270, ncftp, emacs, and xemacs.
+    Using:
+    		LIBS="-lc -lcurses -ltermcap \
+		      ^^^
+    (i.e, adding -lc *before* the -lcurses) in the snake3 and snake3-slang
+    targets of the top level Makefile yields a usable image, but with
+    inappropriate video attributes on the Lynx displays (reverse video and
+    underscores on everything).  Using "-lc -lHcurses" instead fixes the
+                                            ^^^^^^^^^
+    video attributes but then the arrow keys are messed up. - Donald S.
+    Teiser (dsteis01@homer.louisville.edu)
+    NOTE: If HP fixes the problem or you come up with a better workaround,
+          notify the lynx-dev@nongnu.org list.
+    Updated NOTE (1996-09-02):  A patch reportedly is available from HP to
+          fix the select() problem, so that "-lc" is no longer needed, but
+	  the curses glitch is not yet fixed, and you should still include
+	  "-lHcurses".
+    Updated NOTE (1997-02-03): The problems reportedly are fixed with
+	  patches PHCO_8086 and PHCO_8947 from HP.
+    Updated NOTE (1997-12-15): PHCO_8086 & PHCO_8947 are very old and are
+	  no longer available.  The current patch to install if running
+	  under HP-UX 10.20 is PHCO_11342.
+
+---------
+
+    Lynx juggles variable abilities of curses packages or emulations to
+    display bolding and underlining simultaneously.  This may fail if
+    Lynx thinks that your terminal, in connection with the curses package,
+    supports a capability which the terminal hardware or emulation does not
+    in fact support.  Setting the right TERM environment variable, tweaking
+    terminfo or termcap files, or compiling with a newer version of ncurses
+    or slang may solve problems with missing highlighting or strange
+    characters appearing on the screen.  Also, for a mono terminal,
+    make sure "show color" is not set to ON in the Options Menu.
+
+    The Wyse 50 and older TeleVideo terminals, among others, are
+    "magic cookie" terminals.  This means that display attributes like
+    reverse, blink, underline, etc. work in a bizarre way that makes them
+    difficult to program.  You may see extra spaces scattered around your
+    screen (separating different sorts of highlight); or sections of the
+    screen may be unexpectedly highlighted.
+    There is a workaround which works by restricting the terminal to a
+    single standout attribute (e.g., normal and reverse, but no others).
+    Implementing the workaround is specific to your curses implementation.
+    Most versions of curses use one of two terminal databases, called
+    "termcap" and "terminfo".  Updating these databases is system-specific.
+    New databases should be available from the vendor or other sources.
+    For the Wyse 50, try
+       <URL: http://www.wyse.com/text/custserv/faq/wy50faq.htm>;
+    extract the "wy50" (NOT "wy50-mc") entry and use that in place of the
+    existing one.  See `terminfo', `infocmp', `tic' etc. man pages if
+    necessary.
+    Alternatively, compiling Lynx with the slang library may avoid problems
+    with theses terminals.
+
+    The Sun console driver (aka wscons(7)) implements "reverse" and "bold"
+    as "reverse", causing confusion where Lynx uses the distinction between
+    the two to convey information. Lynx tries to detect this automatically,
+    but if it fails (for instance, you are running under "screen"), try
+    setting the -noreverse commandline option.
+
+---------
+
+    On VMS, Lynx, and other TCP-IP software, have been experiencing chronic
+    problems of incompatibilities between DECC and MultiNet headers whenever
+    new versions of either DECC or MultiNet are released.  The Lynx build
+    procedure for VMS and a maze of spaghetti #ifdef-ing in tcp.h of the
+    libwww-FM had previously been successful in dealing with this problem
+    across all versions of MultiNet and of DECC, VAXC, and Pat Rankin's
+    VMS port of GNUC, but are now not 100% successful.  If you get compiler
+    messages about "struct timeval timeout" having no linkage, add that
+    declaration immediately below the inclusion of ioctl.h for MultiNet in
+    tcp.h (by deleting the "#ifdef NOT_DEFINED" and "#endif /* NOT_DEFINED */"
+    lines):
+    [...]
+    #include "multinet_root:[multinet.include.sys]ioctl.h"
+    struct timeval {
+        long tv_sec;		/* seconds since Jan. 1, 1970 */
+        long tv_usec;		/* microseconds */
+    };
+    [...]
+    If you get compiler warnings about incompatible multinet_foo()
+    declarations, delete those where indicated in tcp.h.  For the most
+    current versions of MultiNet, you can modify tcp.h to use the DECC
+    socket and related headers.
+
+    On VMS, the ftp function does not work with SOCKETSHR 0.9D and NETLIB
+    2 (NETLIB 1 may work).  This is because the functions getsockname()
+    and getpeername() within SOCKETSHR make incorrect calls to the NETLIB
+    functions.  This results in zeroes being returned for part of the local
+    IP address.  Since ftp sends this IP address to the remote end, the
+    remote server ends up sending a file back to a non-existent address.
+    Andy Harper (A.HARPER@kcl.ac.uk) has fixed these problems in the
+    SOCKETSHR 0.9D sources and offers the fixes as:
+       http://alder.cc.kcl.ac.uk/fileserv/zip/socketshr_src_09d-2.zip
+       ftp://ftp2.kcl.ac.uk/zip/socketshr_src_09d-2.zip
+
+---------
+
+    On VMS, to build an SSL-capable version, lynx and the ssl library
+    e.g., OpenSSL, must be built using the same network library.  If you
+    build OpenSSL without specifying the network library (the 5th parameter
+    of the makevms.com script), it will guess, possibly not the one you
+    intended.  We have tested only the UCX configuration -TD (2002/9/15).
diff --git a/README b/README
new file mode 100644
index 00000000..739dc5cb
--- /dev/null
+++ b/README
@@ -0,0 +1,148 @@
+
+                             Lynx README file
+
+Lynx Version 2.8.7 is the latest release (July 2009).
+See the CHANGES file for a complete record of all changes and bug fixes.
+New releases are announced on the lynx-dev mailing list (see below).
+
+FOR REAL NOVICES
+
+To use this package, you need a compiler & a bit of experience
+at very simple programming.  If you just want something which will work
+`out-of-the-box', you can get pre-compiled versions of Lynx
+by following the links from  <URL: http://lynx.isc.org/> ;
+for DOS or Windows, goto <URL: http://www.fdisk.com/doslynx/lynxport.htm>.
+
+WHAT IS LYNX?
+
+   Lynx is a fully-featured World Wide Web (WWW) client for users running
+   cursor-addressable, character-cell display devices such as vt100 terminals,
+   vt100 emulators running on Windows 95/NT or Macintoshes, or any other
+   character-cell display.  It will display Hypertext Markup Language (HTML)
+   documents containing links to files on the local system, as well as files on
+   remote systems running http, gopher, ftp, wais, nntp, finger, or cso/ph/qi
+   servers, and services accessible via logins to telnet, tn3270 or rlogin
+   accounts.  Current versions of Lynx run on Unix, VMS, Windows95/NT, 386DOS
+   and OS/2 EMX.
+
+   Lynx can be used to access information on the WWW, or to establish
+   information systems intended primarily for local access.  Lynx has been
+   used to build several Campus Wide Information Systems (CWIS).  Lynx can
+   also be used to build systems isolated within a single LAN.
+
+HOW TO GET LYNX
+
+   For the latest release of Lynx goto:
+       <URL: http://lynx.isc.org/release>;
+       <URL: ftp://lynx.isc.org/release>;
+   the latest development version is at:
+       <URL: http://lynx.isc.org/current>.
+   The Lynx homepage is <URL: http://lynx.isc.org/>.
+   The on-line help page (enter `h') has links to many useful things.
+
+LICENSE
+
+   Lynx is distributed under the GNU General Public License, version 2 (GPLv2)
+   without restrictions on usage or redistribution.  The Lynx copyright
+   statement, "COPYHEADER", and GNU GPL, "COPYING", are included in the
+   top-level directory of the distribution.  Lynx is supported by the Lynx
+   user community, an entirely volunteer (and unofficial) organization.
+
+   Certain portions of the Lynx source distribution were originally
+   created by CERN and have been modified during the development of
+   Lynx.  See WWW/FreeofCharge.html for copyright info regarding CERN
+   products used in Lynx.
+
+   Note that Lynx is not self-contained; typically it is built with a
+   variety of add-on libraries, including those for compression, IPv6,
+   SOCKS and SSL support.
+
+YEAR 2000 COMPLIANCE
+
+   We believe Lynx works properly for the Year 2000 issues, since it does
+   not store dates in 2-digit form.  Since it must communicate with a wide
+   range of web servers, it interprets dates in a variety of formats.  In
+   particular, if Lynx receives a date with a 2-digit year, it assumes that
+   values less than 70 are in the range 2000-2069.
+
+INSTALLING LYNX
+
+   To install Lynx, follow the steps in the INSTALLATION file, which is
+   located in the top directory of the source distribution.
+
+DOCUMENTATION
+
+   A users guide is included in this distribution along with a man page
+   for Unix systems and a help file for VMS systems.  All documentation is
+   contained in the top directory and the docs, samples and lynx_help
+   subdirectories.
+
+   While running Lynx, type 'h', 'H', or '?' to invoke the help menu
+   system.  From the help menu you may access several useful documents
+   pertaining to Lynx and the World Wide Web.  The most important of
+   these is the Lynx Users Guide.  By default, Lynx will use the Lynx
+   Enhanced Pages, which includes http links for help and FAQs concerning
+   Lynx.  It is recommended that you install your own help menu system at
+   your site in order to lessen the load on http servers.  This also will
+   allow you to customize the help menu system for your site and greatly
+   speed up access for those using Lynx over a slow connection.
+
+INSTALLING THE DOCUMENTATION
+
+   For Unix and related systems which support the autoconf configure script,
+   the help menu system is installed by the "make install-help" command.
+
+   For other systems (such as VMS), copy COPYHEADER and COPYING into the
+   lynx_help/ subdirectory.  Then copy the lynx_help subdirectory to a public
+   place on your system, or into your $HOME directory if you are a single
+   user.  Finally, edit the lynx.cfg file  so that the HELPFILE line is
+   defined as follows:
+
+      HELPFILE:file://localhost/[public_path]/lynx_help/lynx_help_main.html
+
+   where [public_path] is the absolute path to the lynx_help directory.
+   Customizing the help menu system is just a matter of editing a set of
+   HTML files.  Additional information about installing and customizing
+   the help file set is available at <URL:http://www.irm.nara.kindai.ac.jp/
+   lynxdev/README.help>.
+
+INSTALLING LYNX
+
+   To install Lynx, follow the steps in the INSTALLATION file, which is
+   located in the top directory of the source distribution.  Win32 users
+   who need pre-compiled distributions should visit the site
+   <URL:http://www.fdisk.com/doslynx/lynxport.htm>.
+
+PROBLEMS
+
+   If you experience problems configuring, compiling or installing Lynx,
+   please read Section VI. "General installation instructions" in the
+   INSTALLATION file.  Instructions are given there for reporting your
+   problem to the "lynx-dev" mailing list, which is frequented by experienced
+   Lynx users.
+
+LYNX-DEV MAILING LIST
+
+   To subscribe to lynx-dev, send email to
+   <URL: mailto:lynx-dev-request@nongnu.org>
+   with "subscribe" for a subject line.
+
+   If you wish to unsubscribe from lynx-dev, send email to
+   <URL: mailto:lynx-dev-request@nongnu.org> 
+   with "unsubscribe" for a subject line.
+
+   Any messages you wish to post should be sent to
+   <URL: mailto:lynx-dev@nongnu.org>.
+   PLEASE use the lynx-dev list, NOT private email to the developers,
+   for questions or discussion about Lynx, or contributions of patches.
+   Patches should use the unified diff format (diff -u), which can be
+   generated by building the target, "make lynx.patch" after unpacking
+   a pristine copy of the source into a subdirectory called "orig".
+
+   You need not be subscribed to the lynx-dev list in order to post.  If
+   you post without subscribing, though, you should read replies to your
+   questions or comments in the archive since more often than not nobody
+   will send a carbon copy to you.  View the archives at:
+
+		    "lynx-dev Mailing list archives"
+		<URL:http://mail.gnu.org/mailman/listinfo/lynx-dev/>
diff --git a/VMSPrint.com b/VMSPrint.com
new file mode 100644
index 00000000..d1e2c936
--- /dev/null
+++ b/VMSPrint.com
@@ -0,0 +1,15 @@
+$!
+$! Lynx_Dir:VMSPrint.com  -  Alan J. Hirsh (hirsh@atuk.aspentec.com)
+$! ---------------------
+$!	Lynx deletes temporary files on exit.  If your printer queue
+$!	is very busy such that Lynx is deleting the files before they
+$!	have been queued for printing, use PRINTER commands in lynx.cfg
+$!	which invoke this script.
+$!
+$! PRINTER:description for menu:@Lynx_Dir\:VMSPrint queue_name %s:FALSE:58
+$!
+$! P1 = queue_name (e.g., sys$print)  P2 = temporary Lynx file (%s)
+$! ---------------------------------  -----------------------------
+$ copy 'P2' 'P2'_temp_print
+$ print/queue='P1'/delete 'P2'_temp_print
+$ exit
diff --git a/WWW/FreeofCharge.html b/WWW/FreeofCharge.html
new file mode 100644
index 00000000..67cb3f20
--- /dev/null
+++ b/WWW/FreeofCharge.html
@@ -0,0 +1,26 @@
+<!-- X-URL: http://www.w3.org/History/1993/WWW/Conditions/old/FreeofCharge.html -->
+<BASE HREF="http://www.w3.org/History/1993/WWW/Conditions/old/FreeofCharge.html">
+
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+
+<HTML><HEAD><TITLE>
+CERN WWW software freely available</TITLE><NEXTID N="z9"></HEAD><BODY><H1>
+Software freely available</H1>The following CERN software is hereby put into
+the public domain.
+<UL>
+<LI>WWW basic ("line-mode") client <LI>WWW basic server <LI>WWW Library of
+common code.</UL>CERN relinquishes all intellectual property rights to this
+code, both source and binary form and permission is granted for anyone to use,
+duplicate,
+modify and redistribute it.<P>CERN provides absolutely NO WARRANTY OF ANY KIND
+with respect to this software.
+The entire risk as to the quality and performance of this software is with the
+user.
+IN NO EVENT WILL CERN BE LIABLE TO ANYONE FOR ANY DAMAGES ARISING OUT THE USE
+OF THIS SOFTWARE, INCLUDING, WITHOUT LIMITATION,
+DAMAGES RESULTING FROM LOST DATA OR LOST PROFITS, OR FOR ANY SPECIAL,
+INCIDENTAL OR CONSEQUENTIAL DAMAGES.<P>This is part of the <A
+HREF="Introduction.html" NAME="z8">
+CERN WWW</A> distribution condidtions.<P>Declaration to this effect signed by
+the CERN directors of Administration (H. Weber) and Research (W.
+Hoogland), May 1993.</BODY></HTML>
diff --git a/WWW/Library/Implementation/HTAABrow.c b/WWW/Library/Implementation/HTAABrow.c
new file mode 100644
index 00000000..3e25deaf
--- /dev/null
+++ b/WWW/Library/Implementation/HTAABrow.c
@@ -0,0 +1,1284 @@
+/*
+ * $LynxId: HTAABrow.c,v 1.34 2010/09/24 08:27:42 tom Exp $
+ *
+ * MODULE							HTAABrow.c
+ *		BROWSER SIDE ACCESS AUTHORIZATION MODULE
+ *
+ *	Contains the code for keeping track on server hostnames,
+ *	port numbers, scheme names, usernames, passwords
+ *	(and servers' public keys).
+ *
+ * IMPORTANT:
+ *	Routines in this module use dynamic allocation, but free
+ *	automatically all the memory reserved by them.
+ *
+ *	Therefore the caller never has to (and never should)
+ *	free() any object returned by these functions.
+ *
+ *	Therefore also all the strings returned by this package
+ *	are only valid until the next call to the same function
+ *	is made.  This approach is selected, because of the nature
+ *	of access authorization: no string returned by the package
+ *	needs to be valid longer than until the next call.
+ *
+ *	This also makes it easy to plug the AA package in:
+ *	you don't have to ponder whether to free() something
+ *	here or is it done somewhere else (because it is always
+ *	done somewhere else).
+ *
+ *	The strings that the package needs to store are copied
+ *	so the original strings given as parameters to AA
+ *	functions may be freed or modified with no side effects.
+ *
+ *	The AA package does not free() anything else than what
+ *	it has itself allocated.
+ *
+ * AUTHORS:
+ *	AL	Ari Luotonen	luotonen@dxcern.cern.ch
+ *
+ * HISTORY:
+ *	Oct 17	AL	Made corrections suggested by marca:
+ *			Added  if (!realm->username) return NULL;
+ *			Changed some ""s to NULLs.
+ *			Now doing calloc() to init uuencode source;
+ *			otherwise HTUU_encode() reads uninitialized memory
+ *			every now and then (not a real bug but not pretty).
+ *			Corrected the formula for uuencode destination size.
+ *
+ * 28 Apr 1997	AJL	Do Proxy Authorisation.
+ *
+ * BUGS:
+ *
+ *
+ */
+
+#include <HTUtils.h>
+#include <HTString.h>
+#include <HTParse.h>		/* URL parsing function         */
+#include <HTList.h>		/* HTList object                */
+#include <HTAlert.h>		/* HTConfirm(), HTPrompt()      */
+#include <HTAAUtil.h>		/* AA common to both sides      */
+#include <HTAssoc.h>		/* Assoc list                   */
+#include <HTAccess.h>		/* Are we using an HTTP gateway? */
+#include <HTAABrow.h>		/* Implemented here             */
+#include <HTUU.h>		/* Uuencoding and uudecoding    */
+
+#include <LYLeaks.h>
+
+/*
+ *  Local datatype definitions
+ *
+ *  HTAAServer contains all the information about one server.
+ */
+typedef struct {
+
+    char *hostname;		/* Host's name                  */
+    int portnumber;		/* Port number                  */
+    BOOL IsProxy;		/* Is it a proxy?               */
+    HTList *setups;		/* List of protection setups 
+				   on this server; i.e., valid
+				   authentication schemes and
+				   templates when to use them.
+				   This is actually a list of
+				   HTAASetup objects.           */
+    HTList *realms;		/* Information about passwords  */
+} HTAAServer;
+
+/*
+ *  HTAASetup contains information about one server's one
+ *  protected tree of documents.
+ */
+typedef struct {
+    HTAAServer *server;		/* Which server serves this tree             */
+    char *ctemplate;		/* Template for this tree                    */
+    HTList *valid_schemes;	/* Valid authentic.schemes                   */
+    HTAssocList **scheme_specifics;	/* Scheme specific params                  */
+    BOOL retry;			/* Failed last time -- reprompt (or whatever) */
+} HTAASetup;
+
+/*
+ *  Information about usernames and passwords in
+ *  Basic and Pubkey authentication schemes;
+ */
+typedef struct {
+    char *realmname;		/* Password domain name         */
+    char *username;		/* Username in that domain      */
+    char *password;		/* Corresponding password       */
+} HTAARealm;
+
+/*
+ *  To free off all globals. - FM
+ */
+static void free_HTAAGlobals(void);
+static BOOL free_HTAAGlobalsSet = FALSE;
+static char *HTAA_composeAuthResult = NULL;
+static char *compose_auth_stringResult = NULL;	/* Uuencoded presentation */
+
+/*
+ *  Module-wide global variables
+ */
+static HTList *server_table = NULL;	/* Browser's info about servers      */
+static char *secret_key = NULL;	/* Browser's latest secret key       */
+static HTAASetup *current_setup = NULL;		/* The server setup we are currently */
+
+					/* talking to                        */
+static char *current_hostname = NULL;	/* The server's name and portnumber  */
+static int current_portnumber = 80;	/* where we are currently trying to  */
+
+					/* connect.                          */
+static char *current_docname = NULL;	/* The document's name we are        */
+
+					/* trying to access.                 */
+static char *HTAAForwardAuth = NULL;	/* Authorization: line to forward    */
+
+					/* (used by gateway httpds)          */
+static HTAASetup *proxy_setup = NULL;	/* Same as above, but for Proxy -AJL */
+static char *proxy_hostname = NULL;
+static char *proxy_docname = NULL;
+static int proxy_portnumber = 80;
+
+/*** HTAAForwardAuth for enabling gateway-httpds to forward Authorization ***/
+
+void HTAAForwardAuth_set(const char *scheme_name,
+			 const char *scheme_specifics)
+{
+    size_t len = (20
+		  + (scheme_name ? strlen(scheme_name) : 0)
+		  + (scheme_specifics ? strlen(scheme_specifics) : 0));
+
+    FREE(HTAAForwardAuth);
+    if ((HTAAForwardAuth = typecallocn(char, len)) == 0)
+	  outofmem(__FILE__, "HTAAForwardAuth_set");
+
+    assert(HTAAForwardAuth != 0);
+
+    strcpy(HTAAForwardAuth, "Authorization: ");
+    if (scheme_name) {
+	strcat(HTAAForwardAuth, scheme_name);
+	strcat(HTAAForwardAuth, " ");
+	if (scheme_specifics) {
+	    strcat(HTAAForwardAuth, scheme_specifics);
+	}
+    }
+}
+
+void HTAAForwardAuth_reset(void)
+{
+    FREE(HTAAForwardAuth);
+}
+
+/**************************** HTAAServer ***********************************/
+
+static void HTAASetup_delete(HTAASetup * killme);	/* Forward */
+
+/* static						HTAAServer_new()
+ *		ALLOCATE A NEW NODE TO HOLD SERVER INFO
+ *		AND ADD IT TO THE LIST OF SERVERS
+ * ON ENTRY:
+ *	hostname	is the name of the host that the server
+ *			is running in.
+ *	portnumber	is the portnumber which the server listens.
+ *	IsProxy		should be TRUE if this is a proxy.
+ *
+ * ON EXIT:
+ *	returns		the newly-allocated node with all the strings
+ *			duplicated.
+ *			Strings will be automatically freed by
+ *			the function HTAAServer_delete(), which also
+ *			frees the node itself.
+ */
+static HTAAServer *HTAAServer_new(const char *hostname,
+				  int portnumber,
+				  int IsProxy)
+{
+    HTAAServer *server;
+
+    if ((server = typecalloc(HTAAServer)) == 0)
+	  outofmem(__FILE__, "HTAAServer_new");
+
+    assert(server != NULL);
+
+    server->hostname = NULL;
+    server->portnumber = (portnumber > 0 ? portnumber : 80);
+    server->IsProxy = (BOOLEAN) IsProxy;
+    server->setups = HTList_new();
+    server->realms = HTList_new();
+
+    if (hostname)
+	StrAllocCopy(server->hostname, hostname);
+
+    if (!server_table)
+	server_table = HTList_new();
+
+    HTList_addObject(server_table, (void *) server);
+
+    return server;
+}
+
+/* static						HTAAServer_delete()
+ *
+ *	DELETE THE ENTRY FOR THE SERVER FROM THE HOST TABLE,
+ *	AND FREE THE MEMORY USED BY IT.
+ *
+ * ON ENTRY:
+ *	killme		points to the HTAAServer to be freed.
+ *
+ * ON EXIT:
+ *	returns		nothing.
+ */
+static void HTAAServer_delete(HTAAServer *killme)
+{
+    int n, i;
+    HTAASetup *setup;
+    HTAARealm *realm;
+    HTList *cur;
+
+    if (killme) {
+	if (killme->setups != NULL) {
+	    n = HTList_count(killme->setups);
+	    for (i = (n - 1); i >= 0; i--) {
+		if ((setup = (HTAASetup *) HTList_objectAt(killme->setups,
+							   i)) != NULL) {
+		    HTAASetup_delete(setup);
+		    setup = NULL;
+		}
+	    }
+	    HTList_delete(killme->setups);
+	    killme->setups = NULL;
+	}
+
+	cur = killme->realms;
+	while (NULL != (realm = (HTAARealm *) HTList_nextObject(cur))) {
+	    FREE(realm->realmname);
+	    FREE(realm->username);
+	    FREE(realm->password);
+	    FREE(realm);
+	}
+	HTList_delete(killme->realms);
+	killme->realms = NULL;
+
+	FREE(killme->hostname);
+
+	HTList_removeObject(server_table, (void *) killme);
+	FREE(killme);
+    }
+}
+
+/* static						HTAAServer_lookup()
+ *		LOOK UP SERVER BY HOSTNAME AND PORTNUMBER
+ * ON ENTRY:
+ *	hostname	obvious.
+ *	portnumber	if non-positive defaults to 80.
+ *	IsProxy		should be TRUE if this is a proxy.
+ *
+ *	Looks up the server in the module-global server_table.
+ *
+ * ON EXIT:
+ *	returns		pointer to a HTAAServer structure
+ *			representing the looked-up server.
+ *			NULL, if not found.
+ */
+static HTAAServer *HTAAServer_lookup(const char *hostname,
+				     int portnumber,
+				     int IsProxy)
+{
+    if (hostname) {
+	HTList *cur = server_table;
+	HTAAServer *server;
+
+	if (portnumber <= 0)
+	    portnumber = 80;
+
+	while (NULL != (server = (HTAAServer *) HTList_nextObject(cur))) {
+	    if (server->portnumber == portnumber &&
+		0 == strcmp(server->hostname, hostname) &&
+		server->IsProxy == IsProxy)
+		return server;
+	}
+    }
+    return NULL;		/* NULL parameter, or not found */
+}
+
+/*************************** HTAASetup *******************************/
+
+/* static						HTAASetup_lookup()
+ *	FIGURE OUT WHICH AUTHENTICATION SETUP THE SERVER
+ *	IS USING FOR A GIVEN FILE ON A GIVEN HOST AND PORT
+ *
+ * ON ENTRY:
+ *	hostname	is the name of the server host machine.
+ *	portnumber	is the port that the server is running in.
+ *	docname		is the (URL-)pathname of the document we
+ *			are trying to access.
+ *	IsProxy		should be TRUE if this is a proxy.
+ *
+ *	This function goes through the information known about
+ *	all the setups of the server, and finds out if the given
+ *	filename resides in one of the protected directories.
+ *
+ * ON EXIT:
+ *	returns		NULL if no match.
+ *			Otherwise, a HTAASetup structure representing
+ *			the protected server setup on the corresponding
+ *			document tree.
+ *
+ */
+static HTAASetup *HTAASetup_lookup(const char *hostname,
+				   int portnumber,
+				   const char *docname,
+				   int IsProxy)
+{
+    HTAAServer *server;
+    HTAASetup *setup;
+
+    if (portnumber <= 0)
+	portnumber = 80;
+
+    if (hostname && docname && *hostname && *docname &&
+	NULL != (server = HTAAServer_lookup(hostname,
+					    portnumber,
+					    IsProxy))) {
+
+	HTList *cur = server->setups;
+
+	CTRACE((tfp, "%s %s (%s:%d:%s)\n",
+		"HTAASetup_lookup: resolving setup for",
+		(IsProxy ? "proxy" : "server"),
+		hostname, portnumber, docname));
+
+	while (NULL != (setup = (HTAASetup *) HTList_nextObject(cur))) {
+	    if (HTAA_templateMatch(setup->ctemplate, docname)) {
+		CTRACE((tfp, "%s `%s' %s `%s'\n",
+			"HTAASetup_lookup:", docname,
+			"matched template", setup->ctemplate));
+		return setup;
+	    } else {
+		CTRACE((tfp, "%s `%s' %s `%s'\n",
+			"HTAASetup_lookup:", docname,
+			"did NOT match template", setup->ctemplate));
+	    }
+	}			/* while setups remain */
+    }
+    /* if valid parameters and server found */
+    CTRACE((tfp, "%s `%s' %s\n",
+	    "HTAASetup_lookup: No template matched",
+	    NONNULL(docname),
+	    "(so probably not protected)"));
+
+    return NULL;		/* NULL in parameters, or not found */
+}
+
+/* static						HTAASetup_new()
+ *			CREATE A NEW SETUP NODE
+ * ON ENTRY:
+ *	server		is a pointer to a HTAAServer structure
+ *			to which this setup belongs.
+ *	ctemplate	documents matching this template
+ *			are protected according to this setup.
+ *	valid_schemes	a list containing all valid authentication
+ *			schemes for this setup.
+ *			If NULL, all schemes are disallowed.
+ *	scheme_specifics is an array of assoc lists, which
+ *			contain scheme specific parameters given
+ *			by server in Authenticate: fields.
+ *			If NULL, all scheme specifics are
+ *			set to NULL.
+ * ON EXIT:
+ *	returns		a new HTAASetup node, and also adds it as
+ *			part of the HTAAServer given as parameter.
+ */
+static HTAASetup *HTAASetup_new(HTAAServer *server, char *ctemplate,
+				HTList *valid_schemes,
+				HTAssocList **scheme_specifics)
+{
+    HTAASetup *setup;
+
+    if (!server || isEmpty(ctemplate))
+	return NULL;
+
+    if ((setup = typecalloc(HTAASetup)) == 0)
+	outofmem(__FILE__, "HTAASetup_new");
+
+    assert(setup != NULL);
+
+    setup->retry = NO;
+    setup->server = server;
+    setup->ctemplate = NULL;
+    if (ctemplate)
+	StrAllocCopy(setup->ctemplate, ctemplate);
+    setup->valid_schemes = valid_schemes;
+    setup->scheme_specifics = scheme_specifics;
+
+    HTList_addObject(server->setups, (void *) setup);
+
+    return setup;
+}
+
+/* static						HTAASetup_delete()
+ *			FREE A HTAASetup STRUCTURE
+ * ON ENTRY:
+ *	killme		is a pointer to the structure to free().
+ *
+ * ON EXIT:
+ *	returns		nothing.
+ */
+static void HTAASetup_delete(HTAASetup * killme)
+{
+    int scheme;
+
+    if (killme) {
+	FREE(killme->ctemplate);
+	if (killme->valid_schemes) {
+	    HTList_delete(killme->valid_schemes);
+	    killme->valid_schemes = NULL;
+	}
+	for (scheme = 0; scheme < HTAA_MAX_SCHEMES; scheme++)
+	    if (killme->scheme_specifics[scheme])
+		HTAssocList_delete(killme->scheme_specifics[scheme]);
+	FREE(killme->scheme_specifics);
+	FREE(killme);
+    }
+}
+
+/* static					HTAASetup_updateSpecifics()
+ *		COPY SCHEME SPECIFIC PARAMETERS
+ *		TO HTAASetup STRUCTURE
+ * ON ENTRY:
+ *	setup		destination setup structure.
+ *	specifics	string array containing scheme
+ *			specific parameters for each scheme.
+ *			If NULL, all the scheme specific
+ *			parameters are set to NULL.
+ *
+ * ON EXIT:
+ *	returns		nothing.
+ */
+static void HTAASetup_updateSpecifics(HTAASetup * setup, HTAssocList **specifics)
+{
+    int scheme;
+
+    if (setup) {
+	if (setup->scheme_specifics) {
+	    for (scheme = 0; scheme < HTAA_MAX_SCHEMES; scheme++) {
+		if (setup->scheme_specifics[scheme])
+		    HTAssocList_delete(setup->scheme_specifics[scheme]);
+	    }
+	    FREE(setup->scheme_specifics);
+	}
+	setup->scheme_specifics = specifics;
+    }
+}
+
+/*************************** HTAARealm **********************************/
+
+/* static						HTAARealm_lookup()
+ *		LOOKUP HTAARealm STRUCTURE BY REALM NAME
+ * ON ENTRY:
+ *	realm_table	a list of realm objects.
+ *	realmname	is the name of realm to look for.
+ *
+ * ON EXIT:
+ *	returns		the realm.  NULL, if not found.
+ */
+static HTAARealm *HTAARealm_lookup(HTList *realm_table,
+				   const char *realmname)
+{
+    if (realm_table && realmname) {
+	HTList *cur = realm_table;
+	HTAARealm *realm;
+
+	while (NULL != (realm = (HTAARealm *) HTList_nextObject(cur))) {
+	    if (0 == strcmp(realm->realmname, realmname))
+		return realm;
+	}
+    }
+    return NULL;		/* No table, NULL param, or not found */
+}
+
+/* static						HTAARealm_new()
+ *		CREATE A NODE CONTAINING USERNAME AND
+ *		PASSWORD USED FOR THE GIVEN REALM.
+ *		IF REALM ALREADY EXISTS, CHANGE
+ *		USERNAME/PASSWORD.
+ * ON ENTRY:
+ *	realm_table	a list of realms to where to add
+ *			the new one, too.
+ *	realmname	is the name of the password domain.
+ *	username	and
+ *	password	are what you can expect them to be.
+ *
+ * ON EXIT:
+ *	returns		the created realm.
+ */
+static HTAARealm *HTAARealm_new(HTList *realm_table,
+				const char *realmname,
+				const char *username,
+				const char *password)
+{
+    HTAARealm *realm;
+
+    realm = HTAARealm_lookup(realm_table, realmname);
+
+    if (!realm) {
+	if ((realm = typecalloc(HTAARealm)) == 0)
+	      outofmem(__FILE__, "HTAARealm_new");
+
+	assert(realm != NULL);
+
+	realm->realmname = NULL;
+	realm->username = NULL;
+	realm->password = NULL;
+	StrAllocCopy(realm->realmname, realmname);
+	if (realm_table)
+	    HTList_addObject(realm_table, (void *) realm);
+    }
+    if (username)
+	StrAllocCopy(realm->username, username);
+    if (password)
+	StrAllocCopy(realm->password, password);
+
+    return realm;
+}
+
+/***************** Basic and Pubkey Authentication ************************/
+
+/* static						compose_auth_string()
+ *
+ *		COMPOSE Basic OR Pubkey AUTHENTICATION STRING;
+ *		PROMPTS FOR USERNAME AND PASSWORD IF NEEDED
+ *
+ * ON ENTRY:
+ *	scheme		is either HTAA_BASIC or HTAA_PUBKEY.
+ *	setup		is the current server setup.
+ *	IsProxy		should be TRUE if this is a proxy.
+ *
+ * ON EXIT:
+ *	returns		a newly composed authorization string,
+ *			(with, of course, a newly generated secret
+ *			key and fresh timestamp, if Pubkey-scheme
+ *			is being used).
+ *			NULL, if something fails.
+ * NOTE:
+ *	Like throughout the entire AA package, no string or structure
+ *	returned by AA package needs to (or should) be freed.
+ *
+ */
+static char *compose_auth_string(HTAAScheme scheme, HTAASetup * setup, int IsProxy)
+{
+    char *cleartext = NULL;	/* Cleartext presentation */
+    char *ciphertext = NULL;	/* Encrypted presentation */
+    size_t len;
+    char *msg = NULL;
+    char *username = NULL;
+    char *password = NULL;
+    char *realmname = NULL;
+    char *theHost = NULL;
+    char *proxiedHost = NULL;
+    char *thePort = NULL;
+    HTAARealm *realm;
+    const char *i_net_addr = "0.0.0.0";		/* Change... @@@@ */
+    const char *timestamp = "42";	/* ... these @@@@ */
+
+    FREE(compose_auth_stringResult);	/* From previous call */
+
+    if ((scheme != HTAA_BASIC && scheme != HTAA_PUBKEY) || !setup ||
+	!setup->scheme_specifics || !setup->scheme_specifics[scheme] ||
+	!setup->server || !setup->server->realms)
+	return NULL;
+
+    realmname = HTAssocList_lookup(setup->scheme_specifics[scheme], "realm");
+    if (!realmname)
+	return NULL;
+
+    realm = HTAARealm_lookup(setup->server->realms, realmname);
+    if (!(realm &&
+	  realm->username && *realm->username &&
+	  realm->password) || setup->retry) {
+	if (!realm) {
+	    CTRACE((tfp, "%s `%s' %s\n",
+		    "compose_auth_string: realm:", realmname,
+		    "not found -- creating"));
+	    realm = HTAARealm_new(setup->server->realms,
+				  realmname, NULL, NULL);
+	}
+	/*
+	 * The template should be either the '*' global for everything on the
+	 * server (always true for proxy authorization setups), or a path for
+	 * the start of a protected limb, with no host field, but we'll check
+	 * for a host anyway in case a WWW-Protection-Template header set an
+	 * absolute URL instead of a path.  If we do get a host from this, it
+	 * will include the port.  - FM
+	 */
+	if ((!IsProxy) && using_proxy && setup->ctemplate) {
+	    proxiedHost = HTParse(setup->ctemplate, "", PARSE_HOST);
+	    if (proxiedHost && *proxiedHost != '\0') {
+		theHost = proxiedHost;
+	    }
+	}
+	/*
+	 * If we didn't get a host field from the template, set up the host
+	 * name and port from the setup->server elements.  - FM
+	 */
+	if (!theHost)
+	    theHost = setup->server->hostname;
+	if (setup->server->portnumber > 0 &&
+	    setup->server->portnumber != 80) {
+	    HTSprintf0(&thePort, ":%d", setup->server->portnumber);
+	}
+	/*
+	 * Set up the message for the username prompt, and then issue the
+	 * prompt.  The default username is included in the call to the
+	 * prompting function, but the password is NULL-ed and always replaced. 
+	 * - FM
+	 */
+	HTSprintf0(&msg, gettext("Username for '%s' at %s '%s%s':"),
+		   realm->realmname,
+		   (IsProxy ? "proxy" : "server"),
+		   (theHost ? theHost : "??"),
+		   NonNull(thePort));
+	FREE(proxiedHost);
+	FREE(thePort);
+	username = realm->username;
+	password = NULL;
+	HTPromptUsernameAndPassword(msg, &username, &password, IsProxy);
+
+	FREE(msg);
+	FREE(realm->username);
+	FREE(realm->password);
+	realm->username = username;
+	realm->password = password;
+
+	if (!realm->username || !realm->password) {
+	    /*
+	     * Signals to retry.  - FM
+	     */
+	    return NULL;
+	} else if (*realm->username == '\0') {
+	    /*
+	     * Signals to abort.  - FM
+	     */
+	    StrAllocCopy(compose_auth_stringResult, "");
+	    return compose_auth_stringResult;
+	}
+    }
+
+    len = (strlen(NonNull(realm->username)) +
+	   strlen(NonNull(realm->password)) + 3);
+
+    if (scheme == HTAA_PUBKEY) {
+#ifdef PUBKEY
+	/* Generate new secret key */
+	StrAllocCopy(secret_key, HTAA_generateRandomKey());
+#endif /* PUBKEY */
+	/* Room for secret key, timestamp and inet address */
+	len += strlen(NonNull(secret_key)) + 30;
+    } else {
+	FREE(secret_key);
+    }
+
+    if ((cleartext = typecallocn(char, len)) == 0)
+	  outofmem(__FILE__, "compose_auth_string");
+
+    assert(cleartext != NULL);
+
+    if (realm->username)
+	strcpy(cleartext, realm->username);
+    else
+	*cleartext = '\0';
+
+    strcat(cleartext, ":");
+
+    if (realm->password)
+	strcat(cleartext, realm->password);
+
+    if (scheme == HTAA_PUBKEY) {
+	strcat(cleartext, ":");
+	strcat(cleartext, i_net_addr);
+	strcat(cleartext, ":");
+	strcat(cleartext, timestamp);
+	strcat(cleartext, ":");
+	if (secret_key)
+	    strcat(cleartext, secret_key);
+
+	if (!((ciphertext = typecallocn(char, 2 * len)) &&
+	        (compose_auth_stringResult = typecallocn(char, 3 * len))))
+	      outofmem(__FILE__, "compose_auth_string");
+
+#ifdef PUBKEY
+	HTPK_encrypt(cleartext, ciphertext, server->public_key);
+	HTUU_encode((unsigned char *) ciphertext, strlen(ciphertext),
+		    compose_auth_stringResult);
+#endif /* PUBKEY */
+	FREE(cleartext);
+	FREE(ciphertext);
+    } else {			/* scheme == HTAA_BASIC */
+	if (!(compose_auth_stringResult =
+	      typecallocn(char, (4 * ((len + 2) / 3)) + 1)))
+	      outofmem(__FILE__, "compose_auth_string");
+
+	HTUU_encode((unsigned char *) cleartext, strlen(cleartext),
+		    compose_auth_stringResult);
+	FREE(cleartext);
+    }
+    return compose_auth_stringResult;
+}
+
+/* BROWSER static					HTAA_selectScheme()
+ *		SELECT THE AUTHENTICATION SCHEME TO USE
+ * ON ENTRY:
+ *	setup	is the server setup structure which can
+ *		be used to make the decision about the
+ *		used scheme.
+ *
+ *	When new authentication methods are added to library
+ *	this function makes the decision about which one to
+ *	use at a given time.  This can be done by inspecting
+ *	environment variables etc.
+ *
+ *	Currently only searches for the first valid scheme,
+ *	and if nothing found suggests Basic scheme;
+ *
+ * ON EXIT:
+ *	returns	the authentication scheme to use.
+ */
+static HTAAScheme HTAA_selectScheme(HTAASetup * setup)
+{
+    int scheme;
+
+    if (setup && setup->valid_schemes) {
+	for (scheme = HTAA_BASIC; scheme < HTAA_MAX_SCHEMES; scheme++) {
+	    void *object = (void *) scheme;
+
+	    if (-1 < HTList_indexOf(setup->valid_schemes, object))
+		return (HTAAScheme) scheme;
+	}
+    }
+    return HTAA_BASIC;
+}
+
+/*
+ *  Purpose:	Free off all module globals.
+ *  Arguments:	void
+ *  Return Value:	void
+ *  Remarks/Portability/Dependencies/Restrictions:
+ *	To be used at program exit.
+ *  Revision History:
+ *	06-19-96	created - FM
+ */
+static void free_HTAAGlobals(void)
+{
+    HTAAServer *server;
+    int n, i;
+
+    if (server_table != NULL) {
+	n = HTList_count(server_table);
+	for (i = (n - 1); i >= 0; i--) {
+	    if ((server = (HTAAServer *) HTList_objectAt(server_table,
+							 i)) != NULL) {
+		HTAAServer_delete(server);
+		server = NULL;
+	    }
+	}
+	HTList_delete(server_table);
+	server_table = NULL;
+    }
+
+    HTAAForwardAuth_reset();
+    FREE(HTAA_composeAuthResult);
+    FREE(current_hostname);
+    FREE(current_docname);
+    FREE(proxy_hostname);
+    FREE(proxy_docname);
+    FREE(compose_auth_stringResult);
+    FREE(secret_key);
+}
+
+/* BROWSER PUBLIC					HTAA_composeAuth()
+ *
+ *	SELECT THE AUTHENTICATION SCHEME AND
+ *	COMPOSE THE ENTIRE AUTHORIZATION HEADER LINE
+ *	IF WE ALREADY KNOW THAT THE HOST REQUIRES AUTHENTICATION
+ *
+ * ON ENTRY:
+ *	hostname	is the hostname of the server.
+ *	portnumber	is the portnumber in which the server runs.
+ *	docname		is the pathname of the document (as in URL)
+ *	IsProxy		should be TRUE if this is a proxy.
+ *
+ * ON EXIT:
+ *	returns	NULL, if no authorization seems to be needed, or
+ *		if it is the entire Authorization: line, e.g.
+ *
+ *		   "Authorization: Basic username:password"
+ *
+ *		As usual, this string is automatically freed.
+ */
+char *HTAA_composeAuth(const char *hostname,
+		       const int portnumber,
+		       const char *docname,
+		       int IsProxy)
+{
+    char *auth_string;
+    BOOL retry;
+    HTAAScheme scheme;
+    size_t len;
+
+    /*
+     * Setup atexit() freeing if not done already.  - FM
+     */
+    if (!free_HTAAGlobalsSet) {
+#ifdef LY_FIND_LEAKS
+	atexit(free_HTAAGlobals);
+#endif
+	free_HTAAGlobalsSet = TRUE;
+    }
+
+    /*
+     * Make gateway httpds pass authorization field as it was received.  (This
+     * still doesn't really work because Authenticate:  headers from remote
+     * server are not forwarded to client yet so it cannot really know that it
+     * should send authorization; I will not implement it yet because I feel we
+     * will soon change radically the way requests are represented to allow
+     * multithreading on server-side.  Life is hard.)
+     */
+    if (HTAAForwardAuth) {
+	CTRACE((tfp, "HTAA_composeAuth: %s\n",
+		"Forwarding received authorization"));
+	StrAllocCopy(HTAA_composeAuthResult, HTAAForwardAuth);
+	HTAAForwardAuth_reset();	/* Just a precaution */
+	return HTAA_composeAuthResult;
+    }
+
+    FREE(HTAA_composeAuthResult);	/* From previous call */
+
+    if (IsProxy) {
+	/*
+	 * Proxy Authorization required.  - AJL
+	 */
+
+	CTRACE((tfp, "Composing Proxy Authorization for %s:%d/%s\n",
+		hostname, portnumber, docname));
+
+	if (proxy_portnumber != portnumber ||
+	    !proxy_hostname || !proxy_docname ||
+	    !hostname || !docname ||
+	    0 != strcmp(proxy_hostname, hostname) ||
+	    0 != strcmp(proxy_docname, docname)) {
+
+	    retry = NO;
+
+	    proxy_portnumber = portnumber;
+
+	    if (hostname)
+		StrAllocCopy(proxy_hostname, hostname);
+	    else
+		FREE(proxy_hostname);
+
+	    if (docname)
+		StrAllocCopy(proxy_docname, docname);
+	    else
+		FREE(proxy_docname);
+	} else {
+	    retry = YES;
+	}
+
+	if (!proxy_setup || !retry)
+	    proxy_setup = HTAASetup_lookup(hostname, portnumber,
+					   docname, IsProxy);
+
+	if (!proxy_setup)
+	    return NULL;
+
+	switch (scheme = HTAA_selectScheme(proxy_setup)) {
+	case HTAA_BASIC:
+	case HTAA_PUBKEY:
+	    auth_string = compose_auth_string(scheme, proxy_setup, IsProxy);
+	    break;
+	case HTAA_KERBEROS_V4:
+	    /* OTHER AUTHENTICATION ROUTINES ARE CALLED HERE */
+	default:
+	    {
+		char *msg = NULL;
+
+		HTSprintf0(&msg, "%s `%s'",
+			   gettext("This client doesn't know how to compose proxy authorization information for scheme"),
+			   HTAAScheme_name(scheme));
+		HTAlert(msg);
+		FREE(msg);
+		auth_string = NULL;
+	    }
+	}			/* switch scheme */
+
+	proxy_setup->retry = NO;
+
+	if (!auth_string)
+	    /*
+	     * Signal a failure.  - FM
+	     */
+	    return NULL;	/* Added by marca. */
+	if (*auth_string == '\0') {
+	    /*
+	     * Signal an abort.  - FM
+	     */
+	    StrAllocCopy(HTAA_composeAuthResult, "");
+	    return (HTAA_composeAuthResult);
+	}
+	len = strlen(auth_string) + strlen(HTAAScheme_name(scheme)) + 26;
+	if ((HTAA_composeAuthResult = typecallocn(char, len)) == 0)
+	      outofmem(__FILE__, "HTAA_composeAuth");
+
+	assert(HTAA_composeAuthResult != NULL);
+
+	strcpy(HTAA_composeAuthResult, "Proxy-Authorization: ");
+
+    } else {
+	/*
+	 * Normal WWW authorization.
+	 */
+	CTRACE((tfp, "Composing Authorization for %s:%d/%s\n",
+		hostname, portnumber, docname));
+
+	if (current_portnumber != portnumber ||
+	    !current_hostname || !current_docname ||
+	    !hostname || !docname ||
+	    0 != strcmp(current_hostname, hostname) ||
+	    0 != strcmp(current_docname, docname)) {
+
+	    retry = NO;
+
+	    current_portnumber = portnumber;
+
+	    if (hostname)
+		StrAllocCopy(current_hostname, hostname);
+	    else
+		FREE(current_hostname);
+
+	    if (docname)
+		StrAllocCopy(current_docname, docname);
+	    else
+		FREE(current_docname);
+	} else {
+	    retry = YES;
+	}
+
+	if (!current_setup || !retry)
+	    current_setup = HTAASetup_lookup(hostname, portnumber,
+					     docname, IsProxy);
+
+	if (!current_setup)
+	    return NULL;
+
+	switch (scheme = HTAA_selectScheme(current_setup)) {
+	case HTAA_BASIC:
+	case HTAA_PUBKEY:
+	    auth_string = compose_auth_string(scheme, current_setup, IsProxy);
+	    break;
+	case HTAA_KERBEROS_V4:
+	    /* OTHER AUTHENTICATION ROUTINES ARE CALLED HERE */
+	default:
+	    {
+		char *msg = 0;
+
+		HTSprintf0(&msg, "%s `%s'",
+			   gettext("This client doesn't know how to compose authorization information for scheme"),
+			   HTAAScheme_name(scheme));
+		HTAlert(msg);
+		FREE(msg);
+		auth_string = NULL;
+	    }
+	}			/* switch scheme */
+
+	current_setup->retry = NO;
+
+	if (!auth_string)
+	    /*
+	     * Signal a failure.  - FM
+	     */
+	    return NULL;	/* Added by marca. */
+	if (*auth_string == '\0') {
+	    /*
+	     * Signal an abort.  - FM
+	     */
+	    StrAllocCopy(HTAA_composeAuthResult, "");
+	    return (HTAA_composeAuthResult);
+	}
+
+	len = strlen(auth_string) + strlen(HTAAScheme_name(scheme)) + 20;
+	if ((HTAA_composeAuthResult = typecallocn(char, len)) == 0)
+	      outofmem(__FILE__, "HTAA_composeAuth");
+
+	assert(HTAA_composeAuthResult != NULL);
+
+	strcpy(HTAA_composeAuthResult, "Authorization: ");
+    }
+
+    strcat(HTAA_composeAuthResult, HTAAScheme_name(scheme));
+    strcat(HTAA_composeAuthResult, " ");
+    strcat(HTAA_composeAuthResult, auth_string);
+    return HTAA_composeAuthResult;
+}
+
+/* BROWSER PUBLIC				HTAA_shouldRetryWithAuth()
+ *
+ *		DETERMINES IF WE SHOULD RETRY THE SERVER
+ *		WITH AUTHORIZATION
+ *		(OR IF ALREADY RETRIED, WITH A DIFFERENT
+ *		USERNAME AND/OR PASSWORD (IF MISSPELLED))
+ * ON ENTRY:
+ *	start_of_headers is the first block already read from socket,
+ *			but status line skipped; i.e., points to the
+ *			start of the header section.
+ *	length		is the remaining length of the first block.
+ *	soc		is the socket to read the rest of server reply.
+ *	IsProxy		should be TRUE if this is a proxy.
+ *
+ *			This function should only be called when
+ *			server has replied with a 401 (Unauthorized)
+ *			status code.
+ * ON EXIT:
+ *	returns		YES, if connection should be retried.
+ *			     The node containing all the necessary
+ *			     information is
+ *				* either constructed if it does not exist
+ *				* or password is reset to NULL to indicate
+ *				  that username and password should be
+ *				  reprompted when composing Authorization:
+ *				  field (in function HTAA_composeAuth()).
+ *			NO, otherwise.
+ */
+BOOL HTAA_shouldRetryWithAuth(char *start_of_headers,
+			      size_t length,
+			      int soc,
+			      int IsProxy)
+{
+    HTAAScheme scheme;
+    char *line = NULL;
+    int num_schemes = 0;
+    HTList *valid_schemes = HTList_new();
+    HTAssocList **scheme_specifics = NULL;
+    char *ctemplate = NULL;
+    char *temp = NULL;
+
+    /*
+     * Setup atexit() freeing if not done already.  - FM
+     */
+    if (!free_HTAAGlobalsSet) {
+#ifdef LY_FIND_LEAKS
+	atexit(free_HTAAGlobals);
+#endif
+	free_HTAAGlobalsSet = TRUE;
+    }
+
+    /*
+     * Read server reply header lines
+     */
+    CTRACE((tfp, "Server reply header lines:\n"));
+
+    HTAA_setupReader(start_of_headers, length, soc);
+    while (NULL != (line = HTAA_getUnfoldedLine()) && *line != '\0') {
+	CTRACE((tfp, "%s\n", line));
+
+	if (strchr(line, ':')) {	/* Valid header line */
+
+	    char *p = line;
+	    char *fieldname = HTNextField(&p);
+	    char *arg1 = HTNextField(&p);
+	    char *args = p;
+
+	    if ((IsProxy &&
+		 0 == strcasecomp(fieldname, "Proxy-Authenticate:")) ||
+		(!IsProxy &&
+		 0 == strcasecomp(fieldname, "WWW-Authenticate:"))) {
+		if (isEmpty(arg1) || isEmpty(args)) {
+		    HTSprintf0(&temp, gettext("Invalid header '%s%s%s%s%s'"), line,
+			       (non_empty(arg1) ? " " : ""),
+			       NonNull(arg1),
+			       (non_empty(args) ? " " : ""),
+			       NonNull(args));
+		    HTAlert(temp);
+		    FREE(temp);
+		} else if (HTAA_UNKNOWN != (scheme = HTAAScheme_enum(arg1))) {
+		    HTList_addObject(valid_schemes, (void *) scheme);
+		    if (!scheme_specifics) {
+			int i;
+
+			scheme_specifics =
+			    typecallocn(HTAssocList *, HTAA_MAX_SCHEMES);
+
+			if (!scheme_specifics)
+			    outofmem(__FILE__, "HTAA_shouldRetryWithAuth");
+
+			assert(scheme_specifics != NULL);
+
+			for (i = 0; i < HTAA_MAX_SCHEMES; i++)
+			    scheme_specifics[i] = NULL;
+		    }
+		    scheme_specifics[scheme] = HTAA_parseArgList(args);
+		    num_schemes++;
+		} else {
+		    CTRACE((tfp, "Unknown scheme `%s' %s\n",
+			    NONNULL(arg1),
+			    (IsProxy ?
+			     "in Proxy-Authenticate: field" :
+			     "in WWW-Authenticate: field")));
+		}
+	    }
+
+	    else if (!IsProxy &&
+		     0 == strcasecomp(fieldname, "WWW-Protection-Template:")) {
+		CTRACE((tfp, "Protection template set to `%s'\n", arg1));
+		StrAllocCopy(ctemplate, arg1);
+	    }
+
+	} else {
+	    CTRACE((tfp, "Invalid header line `%s' ignored\n", line));
+	}
+
+	FREE(line);
+    }				/* while header lines remain */
+    FREE(line);
+
+    /*
+     * So should we retry with authorization?
+     */
+    if (IsProxy) {
+	if (num_schemes == 0) {
+	    /*
+	     * No proxy authorization valid
+	     */
+	    proxy_setup = NULL;
+	    return NO;
+	}
+	/*
+	 * Doing it for proxy.  -AJL
+	 */
+	if (proxy_setup && proxy_setup->server) {
+	    /*
+	     * We have already tried with proxy authorization.  Either we don't
+	     * have access or username or password was misspelled.
+	     *
+	     * Update scheme-specific parameters (in case they have expired by
+	     * chance).
+	     */
+	    HTAASetup_updateSpecifics(proxy_setup, scheme_specifics);
+
+	    if (NO == HTConfirm(AUTH_FAILED_PROMPT)) {
+		proxy_setup = NULL;
+		return NO;
+	    } else {
+		/*
+		 * Re-ask username+password (if misspelled).
+		 */
+		proxy_setup->retry = YES;
+		return YES;
+	    }
+	} else {
+	    /*
+	     * proxy_setup == NULL, i.e., we have a first connection to a
+	     * protected server or the server serves a wider set of documents
+	     * than we expected so far.
+	     */
+	    HTAAServer *server = HTAAServer_lookup(proxy_hostname,
+						   proxy_portnumber,
+						   IsProxy);
+
+	    if (!server) {
+		server = HTAAServer_new(proxy_hostname,
+					proxy_portnumber,
+					IsProxy);
+	    }
+	    if (!ctemplate)	/* Proxy matches everything  -AJL */
+		StrAllocCopy(ctemplate, "*");
+	    proxy_setup = HTAASetup_new(server,
+					ctemplate,
+					valid_schemes,
+					scheme_specifics);
+	    FREE(ctemplate);
+
+	    HTAlert(gettext("Proxy authorization required -- retrying"));
+	    return YES;
+	}
+	/* Never reached */
+    }
+    /*
+     * Normal WWW authorization.
+     */
+    if (num_schemes == 0) {
+	/*
+	 * No authorization valid.
+	 */
+	current_setup = NULL;
+	return NO;
+    }
+    if (current_setup && current_setup->server) {
+	/*
+	 * So we have already tried with WWW authorization.  Either we don't
+	 * have access or username or password was misspelled.
+	 *
+	 * Update scheme-specific parameters (in case they have expired by
+	 * chance).
+	 */
+	HTAASetup_updateSpecifics(current_setup, scheme_specifics);
+
+	if (NO == HTConfirm(AUTH_FAILED_PROMPT)) {
+	    current_setup = NULL;
+	    return NO;
+	} else {
+	    /*
+	     * Re-ask username+password (if misspelled).
+	     */
+	    current_setup->retry = YES;
+	    return YES;
+	}
+    } else {
+	/*
+	 * current_setup == NULL, i.e., we have a first connection to a
+	 * protected server or the server serves a wider set of documents than
+	 * we expected so far.
+	 */
+	HTAAServer *server = HTAAServer_lookup(current_hostname,
+					       current_portnumber,
+					       IsProxy);
+
+	if (!server) {
+	    server = HTAAServer_new(current_hostname,
+				    current_portnumber,
+				    IsProxy);
+	}
+	if (!ctemplate)
+	    ctemplate = HTAA_makeProtectionTemplate(current_docname);
+	current_setup = HTAASetup_new(server,
+				      ctemplate,
+				      valid_schemes,
+				      scheme_specifics);
+	FREE(ctemplate);
+
+	HTAlert(gettext("Access without authorization denied -- retrying"));
+	return YES;
+    }
+    /* Never reached */
+}
+
+/*
+ *  This function clears all authorization information by
+ *  invoking the free_HTAAGlobals() function, which normally
+ *  is invoked at exit.  It allows a browser command to do
+ *  this at any time, for example, if the user is leaving
+ *  the terminal for a period of time, but does not want
+ *  to end the current session.  - FM
+ */
+void HTClearHTTPAuthInfo(void)
+{
+    /*
+     * Need code to check cached documents against the protection templates,
+     * and do something to ensure that any protected documents no longer can be
+     * accessed without a new retrieval.  - FM
+     */
+
+    /*
+     * Now free all of the authorization info, and reset the
+     * free_HTAAGlobalsSet flag.  - FM
+     */
+    free_HTAAGlobals();
+    free_HTAAGlobalsSet = FALSE;
+}
diff --git a/WWW/Library/Implementation/HTAABrow.h b/WWW/Library/Implementation/HTAABrow.h
new file mode 100644
index 00000000..064f11e3
--- /dev/null
+++ b/WWW/Library/Implementation/HTAABrow.h
@@ -0,0 +1,137 @@
+/*
+ * $LynxId: HTAABrow.h,v 1.16 2010/10/27 00:13:53 tom Exp $
+ *
+ *                          BROWSER SIDE ACCESS AUTHORIZATION MODULE
+
+   This module is the browser side interface to Access Authorization (AA) package.  It
+   contains code only for browser.
+
+   Important to know about memory allocation:
+
+   Routines in this module use dynamic allocation, but free automatically all the memory
+   reserved by them.
+
+   Therefore the caller never has to (and never should) free() any object returned by
+   these functions.
+
+   Therefore also all the strings returned by this package are only valid until the next
+   call to the same function is made.  This approach is selected, because of the nature of
+   access authorization: no string returned by the package needs to be valid longer than
+   until the next call.
+
+   This also makes it easy to plug the AA package in: you don't have to ponder whether to
+   free()something here or is it done somewhere else (because it is always done somewhere
+   else).
+
+   The strings that the package needs to store are copied so the original strings given as
+   parameters to AA functions may be freed or modified with no side effects.
+
+   Also note:The AA package does not free() anything else than what it has itself
+   allocated.
+
+ */
+
+#ifndef HTAABROW_H
+#define HTAABROW_H
+
+#include <HTAAUtil.h>		/* Common parts of AA */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+   Routines for Browser Side Recording of AA Info
+
+   Most of the browser-side AA is done by the following two functions (which are called
+   from file HTTP.c so the browsers using libwww only need to be linked with the new
+   library and not be changed at all):
+
+      HTAA_composeAuth() composes the Authorization: line contents, if the AA package
+      thinks that the given document is protected. Otherwise this function returns NULL.
+      This function also calls the functions HTPrompt(),HTPromptPassword() and HTConfirm()
+      to get the username, password and some confirmation from the user.
+
+      HTAA_shouldRetryWithAuth() determines whether to retry the request with AA or with a
+      new AA (in case username or password was misspelled).
+
+ */
+/* PUBLIC                                               HTAA_composeAuth()
+ *
+ *      COMPOSE THE ENTIRE AUTHORIZATION HEADER LINE IF WE
+ *      ALREADY KNOW, THAT THE HOST MIGHT REQUIRE AUTHORIZATION
+ *
+ * ON ENTRY:
+ *      hostname        is the hostname of the server.
+ *      portnumber      is the portnumber in which the server runs.
+ *      docname         is the pathname of the document (as in URL)
+ *
+ * ON EXIT:
+ *      returns NULL, if no authorization seems to be needed, or
+ *              if it is the entire Authorization: line, e.g.
+ *
+ *                 "Authorization: basic username:password"
+ *
+ *              As usual, this string is automatically freed.
+ */
+    extern char *HTAA_composeAuth(const char *hostname,
+				  const int portnumber,
+				  const char *docname,
+				  int IsProxy);
+
+/* BROWSER PUBLIC                               HTAA_shouldRetryWithAuth()
+ *
+ *              DETERMINES IF WE SHOULD RETRY THE SERVER
+ *              WITH AUTHORIZATION
+ *              (OR IF ALREADY RETRIED, WITH A DIFFERENT
+ *              USERNAME AND/OR PASSWORD (IF MISSPELLED))
+ * ON ENTRY:
+ *      start_of_headers is the first block already read from socket,
+ *                      but status line skipped; i.e., points to the
+ *                      start of the header section.
+ *      length          is the remaining length of the first block.
+ *      soc             is the socket to read the rest of server reply.
+ *
+ *                      This function should only be called when
+ *                      server has replied with a 401 (Unauthorized)
+ *                      status code.
+ * ON EXIT:
+ *      returns         YES, if connection should be retried.
+ *                           The node containing all the necessary
+ *                           information is
+ *                              * either constructed if it does not exist
+ *                              * or password is reset to NULL to indicate
+ *                                that username and password should be
+ *                                reprompted when composing Authorization:
+ *                                field (in function HTAA_composeAuth()).
+ *                      NO, otherwise.
+ */
+    extern BOOL HTAA_shouldRetryWithAuth(char *start_of_headers,
+					 size_t length,
+					 int soc,
+					 int IsProxy);
+
+/*
+ *  Function to allow clearing of all Authorization info
+ *  via a browser command. - FM
+ */
+    extern void HTClearHTTPAuthInfo(void);
+
+/*
+
+Enabling Gateway httpds to Forward Authorization
+
+   These functions should only be called from daemon code, and HTAAForwardAuth_reset()
+   must be called before the next request is handled to make sure that authorization
+   string isn't cached in daemon so that other people can access private files using
+   somebody else's previous authorization information.
+
+ */
+
+    extern void HTAAForwardAuth_set(const char *scheme_name,
+				    const char *scheme_specifics);
+    extern void HTAAForwardAuth_reset(void);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* NOT HTAABROW_H */
diff --git a/WWW/Library/Implementation/HTAAProt.c b/WWW/Library/Implementation/HTAAProt.c
new file mode 100644
index 00000000..45f654a3
--- /dev/null
+++ b/WWW/Library/Implementation/HTAAProt.c
@@ -0,0 +1,742 @@
+/*
+ * $LynxId: HTAAProt.c,v 1.32 2010/04/29 09:30:57 tom Exp $
+ *
+ * MODULE							HTAAProt.c
+ *		PROTECTION FILE PARSING MODULE
+ *
+ * AUTHORS:
+ *	AL	Ari Luotonen	luotonen@dxcern.cern.ch
+ *	MD	Mark Donszelmann    duns@vxdeop.cern.ch
+ *
+ * HISTORY:
+ *	20 Oct 93  AL	Now finds uid/gid for nobody/nogroup by name
+ *			(doesn't use default 65534 right away).
+ *			Also understands negative uids/gids.
+ *	14 Nov 93  MD	Added VMS compatibility
+ *
+ * BUGS:
+ *
+ *
+ */
+
+#include <HTUtils.h>
+
+#ifndef VMS
+#ifndef NOUSERS
+#include <pwd.h>		/* Unix password file routine: getpwnam()       */
+#include <grp.h>		/* Unix group file routine: getgrnam()          */
+#endif /* NOUSERS */
+#endif /* not VMS */
+
+#include <HTAAUtil.h>
+#include <HTLex.h>		/* Lexical analysor     */
+#include <HTAAProt.h>		/* Implemented here     */
+
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+#define NOBODY    65534		/* -2 in 16-bit environment */
+#define NONESUCH  65533		/* -3 in 16-bit environment */
+
+/*
+ * Protection setup caching
+ */
+typedef struct {
+    char *prot_filename;
+    HTAAProt *prot;
+} HTAAProtCache;
+
+static HTList *prot_cache = NULL;	/* Protection setup cache.      */
+static HTAAProt *default_prot = NULL;	/* Default protection.          */
+static HTAAProt *current_prot = NULL;	/* Current protection mode      */
+
+					/* which is set up by callbacks */
+					/* from the rule system when    */
+					/* a "protect" rule is matched. */
+
+#ifndef NOUSERS
+/* static							isNumber()
+ *		DOES A CHARACTER STRING REPRESENT A NUMBER
+ */
+static BOOL isNumber(const char *s)
+{
+    const char *cur = s;
+
+    if (isEmpty(s))
+	return NO;
+
+    if (*cur == '-')
+	cur++;			/* Allow initial minus sign in a number */
+
+    while (*cur) {
+	if (*cur < '0' || *cur > '9')
+	    return NO;
+	cur++;
+    }
+    return YES;
+}
+
+/* PUBLIC							HTAA_getUid()
+ *		GET THE USER ID TO CHANGE THE PROCESS UID TO
+ * ON ENTRY:
+ *	No arguments.
+ *
+ * ON EXIT:
+ *	returns	the uid number to give to setuid() system call.
+ *		Default is 65534 (nobody).
+ */
+int HTAA_getUid(void)
+{
+    int uid;
+
+    if (current_prot && current_prot->uid_name) {
+	if (isNumber(current_prot->uid_name)) {
+	    uid = atoi(current_prot->uid_name);
+	    if ((*HTAA_UidToName(uid)) != '\0') {
+		return uid;
+	    }
+	} else {		/* User name (not a number) */
+	    if ((uid = HTAA_NameToUid(current_prot->uid_name)) != NONESUCH) {
+		return uid;
+	    }
+	}
+    }
+    /*
+     * Ok, then let's get uid for nobody.
+     */
+    if ((uid = HTAA_NameToUid("nobody")) != NONESUCH) {
+	return uid;
+    }
+    /*
+     * Ok, then use default.
+     */
+    return NOBODY;		/* nobody */
+}
+
+/* PUBLIC							HTAA_getGid()
+ *		GET THE GROUP ID TO CHANGE THE PROCESS GID TO
+ * ON ENTRY:
+ *	No arguments.
+ *
+ * ON EXIT:
+ *	returns	the uid number to give to setgid() system call.
+ *		Default is 65534 (nogroup).
+ */
+int HTAA_getGid(void)
+{
+    int gid;
+
+    if (current_prot && current_prot->gid_name) {
+	if (isNumber(current_prot->gid_name)) {
+	    gid = atoi(current_prot->gid_name);
+	    if (*HTAA_GidToName(gid) != '\0') {
+		return gid;
+	    }
+	} else {		/* Group name (not number) */
+	    if ((gid = HTAA_NameToGid(current_prot->gid_name)) != NONESUCH) {
+		return gid;
+	    }
+	}
+    }
+    /*
+     * Ok, then let's get gid for nogroup.
+     */
+    if ((gid = HTAA_NameToGid("nogroup")) != NONESUCH) {
+	return gid;
+    }
+    /*
+     * Ok, then use default.
+     */
+    return NOBODY;		/* nogroup */
+}
+#endif /* !NOUSERS */
+
+/* static							HTAA_setIds()
+ *		SET UID AND GID (AS NAMES OR NUMBERS)
+ *		TO HTAAProt STRUCTURE
+ * ON ENTRY:
+ *	prot		destination.
+ *	ids		is a string like "james.www" or "1422.69" etc.
+ *			giving uid and gid.
+ *
+ * ON EXIT:
+ *	returns		nothing.
+ */
+static void HTAA_setIds(HTAAProt *prot, const char *ids)
+{
+    if (ids) {
+	char *local_copy = NULL;
+	char *point;
+
+	StrAllocCopy(local_copy, ids);
+	point = strchr(local_copy, '.');
+	if (point) {
+	    *(point++) = (char) 0;
+	    StrAllocCopy(prot->gid_name, point);
+	} else {
+	    StrAllocCopy(prot->gid_name, "nogroup");
+	}
+	StrAllocCopy(prot->uid_name, local_copy);
+	FREE(local_copy);
+    } else {
+	StrAllocCopy(prot->uid_name, "nobody");
+	StrAllocCopy(prot->gid_name, "nogroup");
+    }
+}
+
+/* static						HTAA_parseProtFile()
+ *		PARSE A PROTECTION SETUP FILE AND
+ *		PUT THE RESULT IN A HTAAProt STRUCTURE
+ * ON ENTRY:
+ *	prot		destination structure.
+ *	fp		open protection file.
+ *
+ * ON EXIT:
+ *	returns		nothing.
+ */
+static void HTAA_parseProtFile(HTAAProt *prot, FILE *fp)
+{
+    if (prot && fp) {
+	LexItem lex_item;
+	char *fieldname = NULL;
+
+	while (LEX_EOF != (lex_item = lex(fp))) {
+
+	    while (lex_item == LEX_REC_SEP)	/* Ignore empty lines */
+		lex_item = lex(fp);
+
+	    if (lex_item == LEX_EOF)	/* End of file */
+		break;
+
+	    if (lex_item == LEX_ALPH_STR) {	/* Valid setup record */
+
+		StrAllocCopy(fieldname, HTlex_buffer);
+
+		if (LEX_FIELD_SEP != (lex_item = lex(fp)))
+		    unlex(lex_item);	/* If someone wants to use colon */
+		/* after field name it's ok, but */
+		/* not required. Here we read it. */
+
+		if (0 == strncasecomp(fieldname, "Auth", 4)) {
+		    lex_item = lex(fp);
+		    while (lex_item == LEX_ALPH_STR) {
+			HTAAScheme scheme = HTAAScheme_enum(HTlex_buffer);
+
+			if (scheme != HTAA_UNKNOWN) {
+			    if (!prot->valid_schemes)
+				prot->valid_schemes = HTList_new();
+			    HTList_addObject(prot->valid_schemes, (void *) scheme);
+			    CTRACE((tfp, "%s %s `%s'\n",
+				    "HTAA_parseProtFile: valid",
+				    "authentication scheme:",
+				    HTAAScheme_name(scheme)));
+			} else {
+			    CTRACE((tfp, "%s %s `%s'\n",
+				    "HTAA_parseProtFile: unknown",
+				    "authentication scheme:",
+				    HTlex_buffer));
+			}
+
+			if (LEX_ITEM_SEP != (lex_item = lex(fp)))
+			    break;
+			/*
+			 * Here lex_item == LEX_ITEM_SEP; after item separator
+			 * it is ok to have one or more newlines (LEX_REC_SEP)
+			 * and they are ignored (continuation line).
+			 */
+			do {
+			    lex_item = lex(fp);
+			} while (lex_item == LEX_REC_SEP);
+		    }		/* while items in list */
+		}
+		/* if "Authenticate" */
+		else if (0 == strncasecomp(fieldname, "mask", 4)) {
+		    prot->mask_group = HTAA_parseGroupDef(fp);
+		    lex_item = LEX_REC_SEP;	/*groupdef parser read this already */
+		    if (TRACE) {
+			if (prot->mask_group) {
+			    fprintf(tfp,
+				    "HTAA_parseProtFile: Mask group:\n");
+			    HTAA_printGroupDef(prot->mask_group);
+			} else
+			    fprintf(tfp,
+				    "HTAA_parseProtFile: Mask group syntax error\n");
+		    }
+		}
+		/* if "Mask" */
+		else {		/* Just a name-value pair, put it to assoclist */
+
+		    if (LEX_ALPH_STR == (lex_item = lex(fp))) {
+			if (!prot->values)
+			    prot->values = HTAssocList_new();
+			HTAssocList_add(prot->values, fieldname, HTlex_buffer);
+			lex_item = lex(fp);	/* Read record separator */
+			CTRACE((tfp, "%s `%s' bound to value `%s'\n",
+				"HTAA_parseProtFile: Name",
+				fieldname, HTlex_buffer));
+		    }
+		}		/* else name-value pair */
+
+	    }
+	    /* if valid field */
+	    if (lex_item != LEX_EOF && lex_item != LEX_REC_SEP) {
+		CTRACE((tfp, "%s %s %d (that line ignored)\n",
+			"HTAA_parseProtFile: Syntax error",
+			"in protection setup file at line",
+			HTlex_line));
+		do {
+		    lex_item = lex(fp);
+		} while (lex_item != LEX_EOF && lex_item != LEX_REC_SEP);
+	    }			/* if syntax error */
+	}			/* while not end-of-file */
+	FREE(fieldname);
+    }				/* if valid parameters */
+}
+
+/* static						HTAAProt_new()
+ *		ALLOCATE A NEW HTAAProt STRUCTURE AND
+ *		INITIALIZE IT FROM PROTECTION SETUP FILE
+ * ON ENTRY:
+ *	cur_docname	current filename after rule translations.
+ *	prot_filename	protection setup file name.
+ *			If NULL, not an error.
+ *	ids		Uid and gid names or numbers,
+ *			examples:
+ *				james	( <=> james.nogroup)
+ *				.www	( <=> nobody.www)
+ *				james.www
+ *				james.69
+ *				1422.69
+ *				1422.www
+ *
+ *			May be NULL, defaults to nobody.nogroup.
+ *			Should be NULL, if prot_file is NULL.
+ *
+ * ON EXIT:
+ *	returns		returns a new and initialized protection
+ *			setup structure.
+ *			If setup file is already read in (found
+ *			in cache), only sets uid_name and gid
+ *			fields, and returns that.
+ */
+static HTAAProt *HTAAProt_new(const char *cur_docname,
+			      const char *prot_filename,
+			      const char *ids)
+{
+    HTList *cur = prot_cache;
+    HTAAProtCache *cache_item = NULL;
+    HTAAProt *prot;
+    FILE *fp;
+
+    if (!prot_cache)
+	prot_cache = HTList_new();
+
+    while (NULL != (cache_item = (HTAAProtCache *) HTList_nextObject(cur))) {
+	if (!strcmp(cache_item->prot_filename, prot_filename))
+	    break;
+    }
+    if (cache_item) {
+	prot = cache_item->prot;
+	CTRACE((tfp, "%s `%s' already in cache\n",
+		"HTAAProt_new: Protection file", prot_filename));
+    } else {
+	CTRACE((tfp, "HTAAProt_new: Loading protection file `%s'\n",
+		prot_filename));
+
+	if ((prot = typecalloc(HTAAProt)) == 0)
+	      outofmem(__FILE__, "HTAAProt_new");
+
+	assert(prot != NULL);
+
+	prot->ctemplate = NULL;
+	prot->filename = NULL;
+	prot->uid_name = NULL;
+	prot->gid_name = NULL;
+	prot->valid_schemes = HTList_new();
+	prot->mask_group = NULL;	/* Masking disabled by defaults */
+	prot->values = HTAssocList_new();
+
+	if (prot_filename && NULL != (fp = fopen(prot_filename, TXT_R))) {
+	    HTAA_parseProtFile(prot, fp);
+	    fclose(fp);
+	    if ((cache_item = typecalloc(HTAAProtCache)) == 0)
+		outofmem(__FILE__, "HTAAProt_new");
+
+	    assert(cache_item != NULL);
+
+	    cache_item->prot = prot;
+	    cache_item->prot_filename = NULL;
+	    StrAllocCopy(cache_item->prot_filename, prot_filename);
+	    HTList_addObject(prot_cache, (void *) cache_item);
+	} else {
+	    CTRACE((tfp, "HTAAProt_new: %s `%s'\n",
+		    "Unable to open protection setup file",
+		    NONNULL(prot_filename)));
+	}
+    }
+
+    if (cur_docname)
+	StrAllocCopy(prot->filename, cur_docname);
+    HTAA_setIds(prot, ids);
+
+    return prot;
+}
+
+/* PUBLIC					HTAA_setDefaultProtection()
+ *		SET THE DEFAULT PROTECTION MODE
+ *		(called by rule system when a
+ *		"defprot" rule is matched)
+ * ON ENTRY:
+ *	cur_docname	is the current result of rule translations.
+ *	prot_filename	is the protection setup file (second argument
+ *			for "defprot" rule, optional)
+ *	ids		contains user and group names separated by
+ *			a dot, corresponding to the uid
+ *			gid under which the server should run,
+ *			default is "nobody.nogroup" (third argument
+ *			for "defprot" rule, optional; can be given
+ *			only if protection setup file is also given).
+ *
+ * ON EXIT:
+ *	returns		nothing.
+ *			Sets the module-wide variable default_prot.
+ */
+void HTAA_setDefaultProtection(const char *cur_docname,
+			       const char *prot_filename,
+			       const char *ids)
+{
+    default_prot = NULL;	/* Not free()'d because this is in cache */
+
+    if (prot_filename) {
+	default_prot = HTAAProt_new(cur_docname, prot_filename, ids);
+    } else {
+	CTRACE((tfp, "%s %s\n",
+		"HTAA_setDefaultProtection: ERROR: Protection file",
+		"not specified (obligatory for DefProt rule)!!\n"));
+    }
+}
+
+/* PUBLIC					HTAA_setCurrentProtection()
+ *		SET THE CURRENT PROTECTION MODE
+ *		(called by rule system when a
+ *		"protect" rule is matched)
+ * ON ENTRY:
+ *	cur_docname	is the current result of rule translations.
+ *	prot_filename	is the protection setup file (second argument
+ *			for "protect" rule, optional)
+ *	ids		contains user and group names separated by
+ *			a dot, corresponding to the uid
+ *			gid under which the server should run,
+ *			default is "nobody.nogroup" (third argument
+ *			for "protect" rule, optional; can be given
+ *			only if protection setup file is also given).
+ *
+ * ON EXIT:
+ *	returns		nothing.
+ *			Sets the module-wide variable current_prot.
+ */
+void HTAA_setCurrentProtection(const char *cur_docname,
+			       const char *prot_filename,
+			       const char *ids)
+{
+    current_prot = NULL;	/* Not free()'d because this is in cache */
+
+    if (prot_filename) {
+	current_prot = HTAAProt_new(cur_docname, prot_filename, ids);
+    } else {
+	if (default_prot) {
+	    current_prot = default_prot;
+	    HTAA_setIds(current_prot, ids);
+	    CTRACE((tfp, "%s %s %s\n",
+		    "HTAA_setCurrentProtection: Protection file",
+		    "not specified for Protect rule",
+		    "-- using default protection"));
+	} else {
+	    CTRACE((tfp, "%s %s %s\n",
+		    "HTAA_setCurrentProtection: ERROR: Protection",
+		    "file not specified for Protect rule, and",
+		    "default protection is not set!!"));
+	}
+    }
+}
+
+/* PUBLIC					HTAA_getCurrentProtection()
+ *		GET CURRENT PROTECTION SETUP STRUCTURE
+ *		(this is set up by callbacks made from
+ *		 the rule system when matching "protect"
+ *		 (and "defprot") rules)
+ * ON ENTRY:
+ *	HTTranslate() must have been called before calling
+ *	this function.
+ *
+ * ON EXIT:
+ *	returns	a HTAAProt structure representing the
+ *		protection setup of the HTTranslate()'d file.
+ *		This must not be free()'d.
+ */
+HTAAProt *HTAA_getCurrentProtection(void)
+{
+    return current_prot;
+}
+
+/* PUBLIC					HTAA_getDefaultProtection()
+ *		GET DEFAULT PROTECTION SETUP STRUCTURE
+ *		AND SET IT TO CURRENT PROTECTION
+ *		(this is set up by callbacks made from
+ *		 the rule system when matching "defprot"
+ *		 rules)
+ * ON ENTRY:
+ *	HTTranslate() must have been called before calling
+ *	this function.
+ *
+ * ON EXIT:
+ *	returns	a HTAAProt structure representing the
+ *		default protection setup of the HTTranslate()'d
+ *		file (if HTAA_getCurrentProtection() returned
+ *		NULL, i.e., if there is no "protect" rule
+ *		but ACL exists, and we need to know default
+ *		protection settings).
+ *		This must not be free()'d.
+ * IMPORTANT:
+ *	As a side-effect this tells the protection system that
+ *	the file is in fact protected and sets the current
+ *	protection mode to default.
+ */
+HTAAProt *HTAA_getDefaultProtection(void)
+{
+    if (!current_prot) {
+	current_prot = default_prot;
+	default_prot = NULL;
+    }
+    return current_prot;
+}
+
+/* SERVER INTERNAL					HTAA_clearProtections()
+ *		CLEAR DOCUMENT PROTECTION MODE
+ *		(ALSO DEFAULT PROTECTION)
+ *		(called by the rule system)
+ * ON ENTRY:
+ *	No arguments.
+ *
+ * ON EXIT:
+ *	returns	nothing.
+ *		Frees the memory used by protection information.
+ */
+void HTAA_clearProtections(void)
+{
+    current_prot = NULL;	/* These are not freed because  */
+    default_prot = NULL;	/* they are actually in cache.  */
+}
+
+typedef struct {
+    char *name;
+    int user;
+} USER_DATA;
+
+#ifndef NOUSERS
+static HTList *known_grp = NULL;
+static HTList *known_pwd = NULL;
+static BOOL uidgid_cache_inited = NO;
+#endif
+
+#ifdef LY_FIND_LEAKS
+static void clear_uidgid_cache(void)
+{
+#ifndef NOUSERS
+    USER_DATA *data;
+
+    if (known_grp) {
+	while ((data = HTList_removeLastObject(known_grp)) != NULL) {
+	    FREE(data->name);
+	    FREE(data);
+	}
+	FREE(known_grp);
+    }
+    if (known_pwd) {
+	while ((data = HTList_removeLastObject(known_pwd)) != NULL) {
+	    FREE(data->name);
+	    FREE(data);
+	}
+	FREE(known_pwd);
+    }
+#endif
+}
+#endif /* LY_FIND_LEAKS */
+
+#ifndef NOUSERS
+static void save_gid_info(const char *name, int user)
+{
+    USER_DATA *data = typecalloc(USER_DATA);
+
+    if (!data)
+	return;
+    if (!known_grp) {
+	known_grp = HTList_new();
+	if (!uidgid_cache_inited) {
+#ifdef LY_FIND_LEAKS
+	    atexit(clear_uidgid_cache);
+#endif
+	    uidgid_cache_inited = YES;
+	}
+    }
+    StrAllocCopy(data->name, name);
+    data->user = user;
+    HTList_addObject(known_grp, data);
+}
+#endif /* NOUSERS */
+
+#ifndef NOUSERS
+static void save_uid_info(const char *name, int user)
+{
+    USER_DATA *data = typecalloc(USER_DATA);
+
+    if (!data)
+	return;
+    if (!known_pwd) {
+	known_pwd = HTList_new();
+	if (!uidgid_cache_inited) {
+#ifdef LY_FIND_LEAKS
+	    atexit(clear_uidgid_cache);
+#endif
+	    uidgid_cache_inited = YES;
+	}
+    }
+    StrAllocCopy(data->name, name);
+    data->user = user;
+    HTList_addObject(known_pwd, data);
+}
+#endif /* !NOUSERS */
+
+/* PUBLIC							HTAA_UidToName
+ *		GET THE USER NAME
+ * ON ENTRY:
+ *      The user-id
+ *
+ * ON EXIT:
+ *      returns the user name, or an empty string if not found.
+ */
+const char *HTAA_UidToName(int uid GCC_UNUSED)
+{
+#ifndef NOUSERS
+    struct passwd *pw;
+    HTList *me = known_pwd;
+
+    while (HTList_nextObject(me)) {
+	USER_DATA *data = (USER_DATA *) (me->object);
+
+	if (uid == data->user)
+	    return data->name;
+    }
+
+    if ((pw = getpwuid((uid_t) uid)) != 0
+	&& pw->pw_name != 0) {
+	CTRACE((tfp, "%s(%d) returned (%s:%d:...)\n",
+		"HTAA_UidToName: getpwuid",
+		uid,
+		pw->pw_name, (int) pw->pw_uid));
+	save_uid_info(pw->pw_name, (int) pw->pw_uid);
+	return pw->pw_name;
+    }
+#endif
+    return "";
+}
+
+/* PUBLIC							HTAA_NameToUid
+ *		GET THE USER ID
+ * ON ENTRY:
+ *      The user-name
+ *
+ * ON EXIT:
+ *      returns the user id, or NONESUCH if not found.
+ */
+int HTAA_NameToUid(const char *name GCC_UNUSED)
+{
+#ifndef NOUSERS
+    struct passwd *pw;
+    HTList *me = known_pwd;
+
+    while (HTList_nextObject(me)) {
+	USER_DATA *data = (USER_DATA *) (me->object);
+
+	if (!strcmp(name, data->name))
+	    return data->user;
+    }
+
+    if ((pw = getpwnam(name)) != 0) {
+	CTRACE((tfp, "%s(%s) returned (%s:%d:...)\n",
+		"HTAA_NameToUid: getpwnam",
+		name,
+		pw->pw_name, (int) pw->pw_uid));
+	save_uid_info(pw->pw_name, (int) pw->pw_uid);
+	return (int) pw->pw_uid;
+    }
+#endif
+    return NONESUCH;
+}
+
+/* PUBLIC							HTAA_GidToName
+ *		GET THE GROUP NAME
+ * ON ENTRY:
+ *      The group-id
+ *
+ * ON EXIT:
+ *      returns the group name, or an empty string if not found.
+ */
+const char *HTAA_GidToName(int gid GCC_UNUSED)
+{
+#ifndef NOUSERS
+    struct group *gr;
+    HTList *me = known_grp;
+
+    while (HTList_nextObject(me)) {
+	USER_DATA *data = (USER_DATA *) (me->object);
+
+	if (gid == data->user)
+	    return data->name;
+    }
+
+    if ((gr = getgrgid((gid_t) gid)) != 0
+	&& gr->gr_name != 0) {
+	CTRACE((tfp, "%s(%d) returned (%s:%d:...)\n",
+		"HTAA_GidToName: getgrgid",
+		gid,
+		gr->gr_name, (int) gr->gr_gid));
+	save_gid_info(gr->gr_name, (int) gr->gr_gid);
+	return gr->gr_name;
+    }
+#endif
+    return "";
+}
+
+/* PUBLIC							HTAA_NameToGid
+ *		GET THE GROUP ID
+ * ON ENTRY:
+ *      The group-name
+ *
+ * ON EXIT:
+ *      returns the group id, or NONESUCH if not found.
+ */
+int HTAA_NameToGid(const char *name GCC_UNUSED)
+{
+#ifndef NOUSERS
+    struct group *gr;
+    HTList *me = known_grp;
+
+    while (HTList_nextObject(me)) {
+	USER_DATA *data = (USER_DATA *) (me->object);
+
+	if (!strcmp(name, data->name))
+	    return data->user;
+    }
+
+    if ((gr = getgrnam(name)) != 0) {
+	CTRACE((tfp, "%s(%s) returned (%s:%d:...)\n",
+		"HTAA_NameToGid: getgrnam",
+		name,
+		gr->gr_name, (int) gr->gr_gid));
+	save_gid_info(gr->gr_name, (int) gr->gr_gid);
+	return (int) gr->gr_gid;
+    }
+#endif
+    return NONESUCH;
+}
diff --git a/WWW/Library/Implementation/HTAAProt.h b/WWW/Library/Implementation/HTAAProt.h
new file mode 100644
index 00000000..22e3d928
--- /dev/null
+++ b/WWW/Library/Implementation/HTAAProt.h
@@ -0,0 +1,226 @@
+/*                                   PROTECTION SETUP FILE
+
+ */
+
+#ifndef HTAAPROT_H
+#define HTAAPROT_H
+
+#include <HTGroup.h>
+#include <HTAssoc.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+
+Server's Representation of Document (Tree) Protections
+
+ */ typedef struct {
+	char *ctemplate;	/* Template for this protection         */
+	char *filename;		/* Current document file                */
+	char *uid_name;		/* Effective uid (name of it)           */
+	char *gid_name;		/* Effective gid (name of it)           */
+	GroupDef *mask_group;	/* Allowed users and IP addresses       */
+	HTList *valid_schemes;	/* Valid authentication schemes         */
+	HTAssocList *values;	/* Association list for scheme specific */
+	/* parameters.                          */
+    } HTAAProt;
+
+/*
+
+Callbacks for rule system
+
+   The following three functioncs are called by the rule system:
+
+      HTAA_clearProtections() when starting to translate a filename
+
+      HTAA_setDefaultProtection() when "defprot" rule is matched
+
+      HTAA_setCurrentProtection() when "protect" rule is matched
+
+   Protection setup files are cached by these functions.
+
+ */
+
+/* PUBLIC                                       HTAA_setDefaultProtection()
+ *              SET THE DEFAULT PROTECTION MODE
+ *              (called by rule system when a
+ *              "defprot" rule is matched)
+ * ON ENTRY:
+ *      cur_docname     is the current result of rule translations.
+ *      prot_filename   is the protection setup file (second argument
+ *                      for "defprot" rule, optional)
+ *      eff_ids         contains user and group names separated by
+ *                      a dot, corresponding to the effective uid
+ *                      gid under which the server should run,
+ *                      default is "nobody.nogroup" (third argument
+ *                      for "defprot" rule, optional; can be given
+ *                      only if protection setup file is also given).
+ *
+ * ON EXIT:
+ *      returns         nothing.
+ *                      Sets the module-wide variable default_prot.
+ */
+    extern void HTAA_setDefaultProtection(const char *cur_docname,
+					  const char *prot_filename,
+					  const char *eff_ids);
+
+/* PUBLIC                                       HTAA_setCurrentProtection()
+ *              SET THE CURRENT PROTECTION MODE
+ *              (called by rule system when a
+ *              "protect" rule is matched)
+ * ON ENTRY:
+ *      cur_docname     is the current result of rule translations.
+ *      prot_filename   is the protection setup file (second argument
+ *                      for "protect" rule, optional)
+ *      eff_ids         contains user and group names separated by
+ *                      a dot, corresponding to the effective uid
+ *                      gid under which the server should run,
+ *                      default is "nobody.nogroup" (third argument
+ *                      for "protect" rule, optional; can be given
+ *                      only if protection setup file is also given).
+ *
+ * ON EXIT:
+ *      returns         nothing.
+ *                      Sets the module-wide variable current_prot.
+ */
+    extern void HTAA_setCurrentProtection(const char *cur_docname,
+					  const char *prot_filename,
+					  const char *eff_ids);
+
+/* SERVER INTERNAL                                      HTAA_clearProtections()
+ *              CLEAR DOCUMENT PROTECTION MODE
+ *              (ALSO DEFAULT PROTECTION)
+ *              (called by the rule system)
+ * ON ENTRY:
+ *      No arguments.
+ *
+ * ON EXIT:
+ *      returns nothing.
+ *              Frees the memory used by protection information.
+ */
+    extern void HTAA_clearProtections(void);
+
+/*
+
+Getting Protection Settings
+
+      HTAA_getCurrentProtection() returns the current protection mode (if there was a
+      "protect" rule). NULL, if no "protect" rule has been matched.
+
+      HTAA_getDefaultProtection() sets the current protection mode to what it was set to
+      by "defprot" rule and also returns it (therefore after this call also
+      HTAA_getCurrentProtection() returns the same structure.
+
+ */
+
+/* PUBLIC                                       HTAA_getCurrentProtection()
+ *              GET CURRENT PROTECTION SETUP STRUCTURE
+ *              (this is set up by callbacks made from
+ *               the rule system when matching "protect"
+ *               (and "defprot") rules)
+ * ON ENTRY:
+ *      HTTranslate() must have been called before calling
+ *      this function.
+ *
+ * ON EXIT:
+ *      returns a HTAAProt structure representing the
+ *              protection setup of the HTTranslate()'d file.
+ *              This must not be free()'d.
+ */
+    extern HTAAProt *HTAA_getCurrentProtection(void);
+
+/* PUBLIC                                       HTAA_getDefaultProtection()
+ *              GET DEFAULT PROTECTION SETUP STRUCTURE
+ *              (this is set up by callbacks made from
+ *               the rule system when matching "defprot"
+ *               rules)
+ * ON ENTRY:
+ *      HTTranslate() must have been called before calling
+ *      this function.
+ *
+ * ON EXIT:
+ *      returns a HTAAProt structure representing the
+ *              default protection setup of the HTTranslate()'d
+ *              file (if HTAA_getCurrentProtection() returned
+ *              NULL, i.e., if there is no "protect" rule
+ *              but ACL exists, and we need to know default
+ *              protection settings).
+ *              This must not be free()'d.
+ */
+    extern HTAAProt *HTAA_getDefaultProtection(void);
+
+/*
+
+Get User and Group IDs to Which Set to
+
+ */
+
+#ifndef NOUSERS
+/* PUBLIC                                                       HTAA_getUid()
+ *              GET THE USER ID TO CHANGE THE PROCESS UID TO
+ * ON ENTRY:
+ *      No arguments.
+ *
+ * ON EXIT:
+ *      returns the uid number to give to setuid() system call.
+ *              Default is 65534 (nobody).
+ */
+    extern int HTAA_getUid(void);
+
+/* PUBLIC                                                       HTAA_getGid()
+ *              GET THE GROUP ID TO CHANGE THE PROCESS GID TO
+ * ON ENTRY:
+ *      No arguments.
+ *
+ * ON EXIT:
+ *      returns the uid number to give to setgid() system call.
+ *              Default is 65534 (nogroup).
+ */
+    extern int HTAA_getGid(void);
+#endif				/* !NOUSERS */
+
+/* PUBLIC                                                       HTAA_UidToName
+ *              GET THE USER NAME
+ * ON ENTRY:
+ *      The user-id
+ *
+ * ON EXIT:
+ *      returns the user name
+ */
+    extern const char *HTAA_UidToName(int uid);
+
+/* PUBLIC                                                       HTAA_NameToUid
+ *              GET THE USER ID
+ * ON ENTRY:
+ *      The user-name
+ *
+ * ON EXIT:
+ *      returns the user id
+ */
+    extern int HTAA_NameToUid(const char *name);
+
+/* PUBLIC                                                       HTAA_GidToName
+ *              GET THE GROUP NAME
+ * ON ENTRY:
+ *      The group-id
+ *
+ * ON EXIT:
+ *      returns the group name
+ */
+    extern const char *HTAA_GidToName(int gid);
+
+/* PUBLIC                                                       HTAA_NameToGid
+ *              GET THE GROUP ID
+ * ON ENTRY:
+ *      The group-name
+ *
+ * ON EXIT:
+ *      returns the group id
+ */
+    extern int HTAA_NameToGid(const char *name);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* not HTAAPROT_H */
diff --git a/WWW/Library/Implementation/HTAAUtil.c b/WWW/Library/Implementation/HTAAUtil.c
new file mode 100644
index 00000000..8a6caab6
--- /dev/null
+++ b/WWW/Library/Implementation/HTAAUtil.c
@@ -0,0 +1,606 @@
+/*
+ * $LynxId: HTAAUtil.c,v 1.31 2010/09/24 23:51:22 tom Exp $
+ *
+ * MODULE							HTAAUtil.c
+ *		COMMON PARTS OF ACCESS AUTHORIZATION MODULE
+ *			FOR BOTH SERVER AND BROWSER
+ *
+ * IMPORTANT:
+ *	Routines in this module use dynamic allocation, but free
+ *	automatically all the memory reserved by them.
+ *
+ *	Therefore the caller never has to (and never should)
+ *	free() any object returned by these functions.
+ *
+ *	Therefore also all the strings returned by this package
+ *	are only valid until the next call to the same function
+ *	is made.  This approach is selected, because of the nature
+ *	of access authorization: no string returned by the package
+ *	needs to be valid longer than until the next call.
+ *
+ *	This also makes it easy to plug the AA package in:
+ *	you don't have to ponder whether to free() something
+ *	here or is it done somewhere else (because it is always
+ *	done somewhere else).
+ *
+ *	The strings that the package needs to store are copied
+ *	so the original strings given as parameters to AA
+ *	functions may be freed or modified with no side effects.
+ *
+ *	The AA package does not free() anything else than what
+ *	it has itself allocated.
+ *
+ *	AA (Access Authorization) package means modules which
+ *	names start with HTAA.
+ *
+ * AUTHORS:
+ *	AL	Ari Luotonen	luotonen@dxcern.cern.ch
+ *	MD	Mark Donszelmann    duns@vxdeop.cern.ch
+ *
+ * HISTORY:
+ *	 8 Nov 93  MD	(VMS only) Added case insensitive comparison in HTAA_templateCaseMatch
+ *
+ *
+ * BUGS:
+ *
+ *
+ */
+
+#include <HTUtils.h>
+
+#include <HTAAUtil.h>		/* Implemented here     */
+#include <HTAssoc.h>		/* Assoc list           */
+#include <HTTCP.h>
+#include <HTTP.h>
+
+#include <LYStrings.h>
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+/* PUBLIC						HTAAScheme_enum()
+ *		TRANSLATE SCHEME NAME INTO
+ *		A SCHEME ENUMERATION
+ *
+ * ON ENTRY:
+ *	name		is a string representing the scheme name.
+ *
+ * ON EXIT:
+ *	returns		the enumerated constant for that scheme.
+ */
+HTAAScheme HTAAScheme_enum(const char *name)
+{
+    char *upcased = NULL;
+
+    if (!name)
+	return HTAA_UNKNOWN;
+
+    StrAllocCopy(upcased, name);
+    LYUpperCase(upcased);
+
+    if (!StrNCmp(upcased, "NONE", 4)) {
+	FREE(upcased);
+	return HTAA_NONE;
+    } else if (!StrNCmp(upcased, "BASIC", 5)) {
+	FREE(upcased);
+	return HTAA_BASIC;
+    } else if (!StrNCmp(upcased, "PUBKEY", 6)) {
+	FREE(upcased);
+	return HTAA_PUBKEY;
+    } else if (!StrNCmp(upcased, "KERBEROSV4", 10)) {
+	FREE(upcased);
+	return HTAA_KERBEROS_V4;
+    } else if (!StrNCmp(upcased, "KERBEROSV5", 10)) {
+	FREE(upcased);
+	return HTAA_KERBEROS_V5;
+    } else {
+	FREE(upcased);
+	return HTAA_UNKNOWN;
+    }
+}
+
+/* PUBLIC						HTAAScheme_name()
+ *			GET THE NAME OF A GIVEN SCHEME
+ * ON ENTRY:
+ *	scheme		is one of the scheme enum values:
+ *			HTAA_NONE, HTAA_BASIC, HTAA_PUBKEY, ...
+ *
+ * ON EXIT:
+ *	returns		the name of the scheme, i.e.
+ *			"None", "Basic", "Pubkey", ...
+ */
+const char *HTAAScheme_name(HTAAScheme scheme)
+{
+    switch (scheme) {
+    case HTAA_NONE:
+	return "None";
+    case HTAA_BASIC:
+	return "Basic";
+    case HTAA_PUBKEY:
+	return "Pubkey";
+    case HTAA_KERBEROS_V4:
+	return "KerberosV4";
+    case HTAA_KERBEROS_V5:
+	return "KerberosV5";
+    case HTAA_UNKNOWN:
+	return "UNKNOWN";
+    default:
+	return "THIS-IS-A-BUG";
+    }
+}
+
+/* PUBLIC						    HTAAMethod_enum()
+ *		TRANSLATE METHOD NAME INTO AN ENUMERATED VALUE
+ * ON ENTRY:
+ *	name		is the method name to translate.
+ *
+ * ON EXIT:
+ *	returns		HTAAMethod enumerated value corresponding
+ *			to the given name.
+ */
+HTAAMethod HTAAMethod_enum(const char *name)
+{
+    if (!name)
+	return METHOD_UNKNOWN;
+
+    if (0 == strcasecomp(name, "GET"))
+	return METHOD_GET;
+    else if (0 == strcasecomp(name, "PUT"))
+	return METHOD_PUT;
+    else
+	return METHOD_UNKNOWN;
+}
+
+/* PUBLIC						HTAAMethod_name()
+ *			GET THE NAME OF A GIVEN METHOD
+ * ON ENTRY:
+ *	method		is one of the method enum values:
+ *			METHOD_GET, METHOD_PUT, ...
+ *
+ * ON EXIT:
+ *	returns		the name of the scheme, i.e.
+ *			"GET", "PUT", ...
+ */
+const char *HTAAMethod_name(HTAAMethod method)
+{
+    switch (method) {
+    case METHOD_GET:
+	return "GET";
+    case METHOD_PUT:
+	return "PUT";
+    case METHOD_UNKNOWN:
+	return "UNKNOWN";
+    default:
+	return "THIS-IS-A-BUG";
+    }
+}
+
+/* PUBLIC						HTAAMethod_inList()
+ *		IS A METHOD IN A LIST OF METHOD NAMES
+ * ON ENTRY:
+ *	method		is the method to look for.
+ *	list		is a list of method names.
+ *
+ * ON EXIT:
+ *	returns		YES, if method was found.
+ *			NO, if not found.
+ */
+BOOL HTAAMethod_inList(HTAAMethod method, HTList *list)
+{
+    HTList *cur = list;
+    char *item;
+
+    while (NULL != (item = (char *) HTList_nextObject(cur))) {
+	CTRACE((tfp, " %s", item));
+	if (method == HTAAMethod_enum(item))
+	    return YES;
+    }
+
+    return NO;			/* Not found */
+}
+
+/* PUBLIC						HTAA_templateMatch()
+ *		STRING COMPARISON FUNCTION FOR FILE NAMES
+ *		   WITH ONE WILDCARD * IN THE TEMPLATE
+ * NOTE:
+ *	This is essentially the same code as in HTRules.c, but it
+ *	cannot be used because it is embedded in between other code.
+ *	(In fact, HTRules.c should use this routine, but then this
+ *	 routine would have to be more sophisticated... why is life
+ *	 sometimes so hard...)
+ *
+ * ON ENTRY:
+ *	ctemplate	is a template string to match the file name
+ *			against, may contain a single wildcard
+ *			character * which matches zero or more
+ *			arbitrary characters.
+ *	filename	is the filename (or pathname) to be matched
+ *			against the template.
+ *
+ * ON EXIT:
+ *	returns		YES, if filename matches the template.
+ *			NO, otherwise.
+ */
+BOOL HTAA_templateMatch(const char *ctemplate,
+			const char *filename)
+{
+    const char *p = ctemplate;
+    const char *q = filename;
+    int m;
+
+    for (; *p && *q && *p == *q; p++, q++)	/* Find first mismatch */
+	;			/* do nothing else */
+
+    if (!*p && !*q)
+	return YES;		/* Equally long equal strings */
+    else if ('*' == *p) {	/* Wildcard */
+	p++;			/* Skip wildcard character */
+	m = (int) (strlen(q) - strlen(p));	/* Amount to match to wildcard */
+	if (m < 0)
+	    return NO;		/* No match, filename too short */
+	else {			/* Skip the matched characters and compare */
+	    if (strcmp(p, q + m))
+		return NO;	/* Tail mismatch */
+	    else
+		return YES;	/* Tail match */
+	}
+	/* if wildcard */
+    } else
+	return NO;		/* Length or character mismatch */
+}
+
+/* PUBLIC						HTAA_templateCaseMatch()
+ *		STRING COMPARISON FUNCTION FOR FILE NAMES
+ *		   WITH ONE WILDCARD * IN THE TEMPLATE (Case Insensitive)
+ * NOTE:
+ *	This is essentially the same code as in HTAA_templateMatch, but
+ *	it compares case insensitive (for VMS). Reason for this routine
+ *	is that HTAA_templateMatch gets called from several places, also
+ *	there where a case sensitive match is needed, so one cannot just
+ *	change the HTAA_templateMatch routine for VMS.
+ *
+ * ON ENTRY:
+ *	template	is a template string to match the file name
+ *			against, may contain a single wildcard
+ *			character * which matches zero or more
+ *			arbitrary characters.
+ *	filename	is the filename (or pathname) to be matched
+ *			against the template.
+ *
+ * ON EXIT:
+ *	returns		YES, if filename matches the template.
+ *			NO, otherwise.
+ */
+BOOL HTAA_templateCaseMatch(const char *ctemplate,
+			    const char *filename)
+{
+    const char *p = ctemplate;
+    const char *q = filename;
+    int m;
+
+    /* Find first mismatch */
+    for (; *p && *q && TOUPPER(*p) == TOUPPER(*q); p++, q++) ;	/* do nothing else */
+
+    if (!*p && !*q)
+	return YES;		/* Equally long equal strings */
+    else if ('*' == *p) {	/* Wildcard */
+	p++;			/* Skip wildcard character */
+	m = (int) (strlen(q) - strlen(p));	/* Amount to match to wildcard */
+	if (m < 0)
+	    return NO;		/* No match, filename too short */
+	else {			/* Skip the matched characters and compare */
+	    if (strcasecomp(p, q + m))
+		return NO;	/* Tail mismatch */
+	    else
+		return YES;	/* Tail match */
+	}
+	/* if wildcard */
+    } else
+	return NO;		/* Length or character mismatch */
+}
+
+/* PUBLIC					HTAA_makeProtectionTemplate()
+ *		CREATE A PROTECTION TEMPLATE FOR THE FILES
+ *		IN THE SAME DIRECTORY AS THE GIVEN FILE
+ *		(Used by server if there is no fancier way for
+ *		it to tell the client, and by browser if server
+ *		didn't send WWW-ProtectionTemplate: field)
+ * ON ENTRY:
+ *	docname is the document pathname (from URL).
+ *
+ * ON EXIT:
+ *	returns a template matching docname, and other files
+ *		files in that directory.
+ *
+ *		E.g.  /foo/bar/x.html  =>  /foo/bar/ *
+ *						    ^
+ *				Space only to prevent it from
+ *				being a comment marker here,
+ *				there really isn't any space.
+ */
+char *HTAA_makeProtectionTemplate(const char *docname)
+{
+    char *ctemplate = NULL;
+    char *slash = NULL;
+
+    if (docname) {
+	StrAllocCopy(ctemplate, docname);
+	slash = strrchr(ctemplate, '/');
+	if (slash)
+	    slash++;
+	else
+	    slash = ctemplate;
+	*slash = '\0';
+	StrAllocCat(ctemplate, "*");
+    } else
+	StrAllocCopy(ctemplate, "*");
+
+    CTRACE((tfp, "make_template: made template `%s' for file `%s'\n",
+	    ctemplate, docname));
+
+    return ctemplate;
+}
+
+/*
+ * Skip leading whitespace from *s forward
+ */
+#define SKIPWS(s) while (*s==' ' || *s=='\t') s++;
+
+/*
+ * Kill trailing whitespace starting from *(s-1) backwards
+ */
+#define KILLWS(s) {char *c=s-1; while (*c==' ' || *c=='\t') *(c--)='\0';}
+
+/* PUBLIC						HTAA_parseArgList()
+ *		PARSE AN ARGUMENT LIST GIVEN IN A HEADER FIELD
+ * ON ENTRY:
+ *	str	is a comma-separated list:
+ *
+ *			item, item, item
+ *		where
+ *			item ::= value
+ *			       | name=value
+ *			       | name="value"
+ *
+ *		Leading and trailing whitespace is ignored
+ *		everywhere except inside quotes, so the following
+ *		examples are equal:
+ *
+ *			name=value,foo=bar
+ *			 name="value",foo="bar"
+ *			  name = value ,  foo = bar
+ *			   name = "value" ,  foo = "bar"
+ *
+ * ON EXIT:
+ *	returns a list of name-value pairs (actually HTAssocList*).
+ *		For items with no name, just value, the name is
+ *		the number of order number of that item. E.g.
+ *		"1" for the first, etc.
+ */
+HTAssocList *HTAA_parseArgList(char *str)
+{
+    HTAssocList *assoc_list = HTAssocList_new();
+    char *cur = NULL;
+    char *name = NULL;
+    int n = 0;
+
+    if (!str)
+	return assoc_list;
+
+    while (*str) {
+	SKIPWS(str);		/* Skip leading whitespace */
+	cur = str;
+	n++;
+
+	while (*cur && *cur != '=' && *cur != ',')
+	    cur++;		/* Find end of name (or lonely value without a name) */
+	KILLWS(cur);		/* Kill trailing whitespace */
+
+	if (*cur == '=') {	/* Name followed by a value */
+	    *(cur++) = '\0';	/* Terminate name */
+	    StrAllocCopy(name, str);
+	    SKIPWS(cur);	/* Skip WS leading the value */
+	    str = cur;
+	    if (*str == '"') {	/* Quoted value */
+		str++;
+		cur = str;
+		while (*cur && *cur != '"')
+		    cur++;
+		if (*cur == '"')
+		    *(cur++) = '\0';	/* Terminate value */
+		/* else it is lacking terminating quote */
+		SKIPWS(cur);	/* Skip WS leading comma */
+		if (*cur == ',')
+		    cur++;	/* Skip separating colon */
+	    } else {		/* Unquoted value */
+		while (*cur && *cur != ',')
+		    cur++;
+		KILLWS(cur);	/* Kill trailing whitespace */
+		if (*cur == ',')
+		    *(cur++) = '\0';
+		/* else *cur already NULL */
+	    }
+	} else {		/* No name, just a value */
+	    if (*cur == ',')
+		*(cur++) = '\0';	/* Terminate value */
+	    /* else last value on line (already terminated by NULL) */
+	    HTSprintf0(&name, "%d", n);		/* Item order number for name */
+	}
+	HTAssocList_add(assoc_list, name, str);
+	str = cur;
+    }				/* while *str */
+
+    FREE(name);
+    return assoc_list;
+}
+
+/************** HEADER LINE READER -- DOES UNFOLDING *************************/
+
+#define BUFFER_SIZE	1024
+
+static size_t buffer_length;
+static char *buffer = 0;
+static char *start_pointer;
+static char *end_pointer;
+static int in_soc = -1;
+
+#ifdef LY_FIND_LEAKS
+static void FreeHTAAUtil(void)
+{
+    FREE(buffer);
+}
+#endif /* LY_FIND_LEAKS */
+
+/* PUBLIC						HTAA_setupReader()
+ *		SET UP HEADER LINE READER, i.e., give
+ *		the already-read-but-not-yet-processed
+ *		buffer of text to be read before more
+ *		is read from the socket.
+ * ON ENTRY:
+ *	start_of_headers is a pointer to a buffer containing
+ *			the beginning of the header lines
+ *			(rest will be read from a socket).
+ *	length		is the number of valid characters in
+ *			'start_of_headers' buffer.
+ *	soc		is the socket to use when start_of_headers
+ *			buffer is used up.
+ * ON EXIT:
+ *	returns		nothing.
+ *			Subsequent calls to HTAA_getUnfoldedLine()
+ *			will use this buffer first and then
+ *			proceed to read from socket.
+ */
+void HTAA_setupReader(char *start_of_headers,
+		      size_t length,
+		      int soc)
+{
+    if (!start_of_headers)
+	length = 0;		/* initialize length (is this reached at all?) */
+    if (buffer == NULL) {	/* first call? */
+	buffer_length = length;
+	if (buffer_length < BUFFER_SIZE)	/* would fall below BUFFER_SIZE? */
+	    buffer_length = BUFFER_SIZE;
+	buffer = (char *) malloc((size_t) (sizeof(char) * (buffer_length + 1)));
+    } else if (length > buffer_length) {	/* need more space? */
+	buffer_length = length;
+	buffer = (char *) realloc((char *) buffer,
+				  (size_t) (sizeof(char) * (buffer_length + 1)));
+    }
+    if (buffer == NULL)
+	outofmem(__FILE__, "HTAA_setupReader");
+
+    assert(buffer != NULL);
+
+#ifdef LY_FIND_LEAKS
+    atexit(FreeHTAAUtil);
+#endif
+    start_pointer = buffer;
+    if (start_of_headers) {
+	StrNCpy(buffer, start_of_headers, length);
+	buffer[length] = '\0';
+	end_pointer = buffer + length;
+    } else {
+	*start_pointer = '\0';
+	end_pointer = start_pointer;
+    }
+    in_soc = soc;
+}
+
+/* PUBLIC						HTAA_getUnfoldedLine()
+ *		READ AN UNFOLDED HEADER LINE FROM SOCKET
+ * ON ENTRY:
+ *	HTAA_setupReader must absolutely be called before
+ *	this function to set up internal buffer.
+ *
+ * ON EXIT:
+ *	returns a newly-allocated character string representing
+ *		the read line.	The line is unfolded, i.e.
+ *		lines that begin with whitespace are appended
+ *		to current line.  E.g.
+ *
+ *			Field-Name: Blaa-Blaa
+ *			 This-Is-A-Continuation-Line
+ *			 Here-Is_Another
+ *
+ *		is seen by the caller as:
+ *
+ *	Field-Name: Blaa-Blaa This-Is-A-Continuation-Line Here-Is_Another
+ *
+ */
+char *HTAA_getUnfoldedLine(void)
+{
+    char *line = NULL;
+    char *cur;
+    int count;
+    BOOL peek_for_folding = NO;
+
+    if (in_soc < 0) {
+	CTRACE((tfp, "%s %s\n",
+		"HTAA_getUnfoldedLine: buffer not initialized",
+		"with function HTAA_setupReader()"));
+	return NULL;
+    }
+
+    for (;;) {
+
+	/* Reading from socket */
+
+	if (start_pointer >= end_pointer) {	/*Read the next block and continue */
+#ifdef USE_SSL
+	    if (SSL_handle)
+		count = SSL_read(SSL_handle, buffer, BUFFER_SIZE);
+	    else
+		count = NETREAD(in_soc, buffer, BUFFER_SIZE);
+#else
+	    count = NETREAD(in_soc, buffer, BUFFER_SIZE);
+#endif /* USE_SSL */
+	    if (count <= 0) {
+		in_soc = -1;
+		return line;
+	    }
+	    start_pointer = buffer;
+	    end_pointer = buffer + count;
+	    *end_pointer = '\0';
+#ifdef NOT_ASCII
+	    cur = start_pointer;
+	    while (cur < end_pointer) {
+		*cur = TOASCII(*cur);
+		cur++;
+	    }
+#endif /*NOT_ASCII */
+	}
+	cur = start_pointer;
+
+	/* Unfolding */
+
+	if (peek_for_folding) {
+	    if (*cur != ' ' && *cur != '\t')
+		return line;	/* Ok, no continuation line */
+	    else		/* So this is a continuation line, continue */
+		peek_for_folding = NO;
+	}
+
+	/* Finding end-of-line */
+
+	while (cur < end_pointer && *cur != '\n')	/* Find the end-of-line */
+	    cur++;		/* (or end-of-buffer).  */
+
+	/* Terminating line */
+
+	if (cur < end_pointer) {	/* So *cur==LF, terminate line */
+	    *cur = '\0';	/* Overwrite LF */
+	    if (*(cur - 1) == '\r')
+		*(cur - 1) = '\0';	/* Overwrite CR */
+	    peek_for_folding = YES;	/* Check for a continuation line */
+	}
+
+	/* Copying the result */
+
+	if (line)
+	    StrAllocCat(line, start_pointer);	/* Append */
+	else
+	    StrAllocCopy(line, start_pointer);	/* A new line */
+
+	start_pointer = cur + 1;	/* Skip the read line */
+
+    }				/* forever */
+}
diff --git a/WWW/Library/Implementation/HTAAUtil.h b/WWW/Library/Implementation/HTAAUtil.h
new file mode 100644
index 00000000..33a8ee30
--- /dev/null
+++ b/WWW/Library/Implementation/HTAAUtil.h
@@ -0,0 +1,318 @@
+/*
+ * $LynxId: HTAAUtil.h,v 1.13 2010/10/27 00:09:52 tom Exp $
+ *
+ *                                            Utilities for the Authorization parts of libwww
+ *           COMMON PARTS OF AUTHORIZATION MODULE TO BOTH SERVER AND BROWSER
+ *
+ * This module is the interface to the common parts of Access Authorization (AA) package
+ * for both server and browser.  Important to know about memory allocation:
+ *
+ * Routines in this module use dynamic allocation, but free automatically all the memory
+ * reserved by them.
+ *
+ * Therefore the caller never has to (and never should) free() any object returned by
+ * these functions.
+ *
+ * Therefore also all the strings returned by this package are only valid until the next
+ * call to the same function is made. This approach is selected, because of the nature of
+ * access authorization: no string returned by the package needs to be valid longer than
+ * until the next call.
+ *
+ * This also makes it easy to plug the AA package in: you don't have to ponder whether to
+ * free() something here or is it done somewhere else (because it is always done somewhere
+ * else).
+ *
+ * The strings that the package needs to store are copied so the original strings given as
+ * parameters to AA functions may be freed or modified with no side effects.
+ *
+ * Also note: The AA package does not free() anything else than what it has itself
+ * allocated.
+ *
+ */
+
+#ifndef HTAAUTIL_H
+#define HTAAUTIL_H
+
+#include <HTList.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Numeric constants
+ */
+#define MAX_USERNAME_LEN        16	/* @@ Longest allowed username    */
+#define MAX_PASSWORD_LEN        3*13	/* @@ Longest allowed password    */
+    /* (encrypted, so really only 3*8) */
+#define MAX_METHODNAME_LEN      12	/* @@ Longest allowed method name */
+#define MAX_FIELDNAME_LEN       16	/* @@ Longest field name in       */
+    /* protection setup file          */
+#define MAX_PATHNAME_LEN        80	/* @@ Longest passwd/group file   */
+/* pathname to allow               */
+/*
+
+   Datatype definitions
+
+   HTAASCHEME
+
+   The enumeration HTAAScheme represents the possible authentication schemes used by the
+   WWW Access Authorization.
+
+ */ typedef enum {
+	HTAA_UNKNOWN,
+	HTAA_NONE,
+	HTAA_BASIC,
+	HTAA_PUBKEY,
+	HTAA_KERBEROS_V4,
+	HTAA_KERBEROS_V5,
+	HTAA_MAX_SCHEMES	/* THIS MUST ALWAYS BE LAST! Number of schemes */
+    } HTAAScheme;
+
+/*
+
+  ENUMERATION TO REPRESENT HTTP METHODS
+
+ */
+
+    typedef enum {
+	METHOD_UNKNOWN,
+	METHOD_GET,
+	METHOD_PUT
+    } HTAAMethod;
+
+/*
+
+Authentication Schemes
+
+ */
+
+/* PUBLIC                                               HTAAScheme_enum()
+ *              TRANSLATE SCHEME NAME TO A SCHEME ENUMERATION
+ * ON ENTRY:
+ *      name            is a string representing the scheme name.
+ *
+ * ON EXIT:
+ *      returns         the enumerated constant for that scheme.
+ */
+    extern HTAAScheme HTAAScheme_enum(const char *name);
+
+/* PUBLIC                                               HTAAScheme_name()
+ *                      GET THE NAME OF A GIVEN SCHEME
+ * ON ENTRY:
+ *      scheme          is one of the scheme enum values:
+ *                      HTAA_NONE, HTAA_BASIC, HTAA_PUBKEY, ...
+ *
+ * ON EXIT:
+ *      returns         the name of the scheme, i.e.
+ *                      "none", "basic", "pubkey", ...
+ */
+    extern const char *HTAAScheme_name(HTAAScheme scheme);
+
+/*
+
+Methods
+
+ */
+
+/* PUBLIC                                                   HTAAMethod_enum()
+ *              TRANSLATE METHOD NAME INTO AN ENUMERATED VALUE
+ * ON ENTRY:
+ *      name            is the method name to translate.
+ *
+ * ON EXIT:
+ *      returns         HTAAMethod enumerated value corresponding
+ *                      to the given name.
+ */
+    extern HTAAMethod HTAAMethod_enum(const char *name);
+
+/* PUBLIC                                               HTAAMethod_name()
+ *                      GET THE NAME OF A GIVEN METHOD
+ * ON ENTRY:
+ *      method          is one of the method enum values:
+ *                      METHOD_GET, METHOD_PUT, ...
+ *
+ * ON EXIT:
+ *      returns         the name of the scheme, i.e.
+ *                      "GET", "PUT", ...
+ */
+    extern const char *HTAAMethod_name(HTAAMethod method);
+
+/* PUBLIC                                               HTAAMethod_inList()
+ *              IS A METHOD IN A LIST OF METHOD NAMES
+ * ON ENTRY:
+ *      method          is the method to look for.
+ *      list            is a list of method names.
+ *
+ * ON EXIT:
+ *      returns         YES, if method was found.
+ *                      NO, if not found.
+ */
+    extern BOOL HTAAMethod_inList(HTAAMethod method, HTList *list);
+
+/*
+
+Match Template Against Filename
+
+ */
+
+/* PUBLIC                                               HTAA_templateMatch()
+ *              STRING COMPARISON FUNCTION FOR FILE NAMES
+ *                 WITH ONE WILDCARD * IN THE TEMPLATE
+ * NOTE:
+ *      This is essentially the same code as in HTRules.c, but it
+ *      cannot be used because it is embedded in between other code.
+ *      (In fact, HTRules.c should use this routine, but then this
+ *       routine would have to be more sophisticated... why is life
+ *       sometimes so hard...)
+ *
+ * ON ENTRY:
+ *      ctemplate       is a template string to match the file name
+ *                      against, may contain a single wildcard
+ *                      character * which matches zero or more
+ *                      arbitrary characters.
+ *      filename        is the filename (or pathname) to be matched
+ *                      against the template.
+ *
+ * ON EXIT:
+ *      returns         YES, if filename matches the template.
+ *                      NO, otherwise.
+ */
+    extern BOOL HTAA_templateMatch(const char *ctemplate,
+				   const char *filename);
+
+/* PUBLIC                                               HTAA_templateCaseMatch()
+ *              STRING COMPARISON FUNCTION FOR FILE NAMES
+ *                 WITH ONE WILDCARD * IN THE TEMPLATE (Case Insensitive)
+ * NOTE:
+ *      This is essentially the same code as in HTAA_templateMatch, but
+ *      it compares case insensitive (for VMS). Reason for this routine
+ *      is that HTAA_templateMatch gets called from several places, also
+ *      there where a case sensitive match is needed, so one cannot just
+ *      change the HTAA_templateMatch routine for VMS.
+ *
+ * ON ENTRY:
+ *      ctemplate       is a template string to match the file name
+ *                      against, may contain a single wildcard
+ *                      character * which matches zero or more
+ *                      arbitrary characters.
+ *      filename        is the filename (or pathname) to be matched
+ *                      against the template.
+ *
+ * ON EXIT:
+ *      returns         YES, if filename matches the template.
+ *                      NO, otherwise.
+ */
+    extern BOOL HTAA_templateCaseMatch(const char *ctemplate,
+				       const char *filename);
+
+/* PUBLIC                                       HTAA_makeProtectionTemplate()
+ *              CREATE A PROTECTION TEMPLATE FOR THE FILES
+ *              IN THE SAME DIRECTORY AS THE GIVEN FILE
+ *              (Used by server if there is no fancier way for
+ *              it to tell the client, and by browser if server
+ *              didn't send WWW-ProtectionTemplate: field)
+ * ON ENTRY:
+ *      docname is the document pathname (from URL).
+ *
+ * ON EXIT:
+ *      returns a template matching docname, and other files
+ *              files in that directory.
+ *
+ *              E.g.  /foo/bar/x.html  =>  /foo/bar/ *
+ *                                                  ^
+ *                              Space only to prevent it from
+ *                              being a comment marker here,
+ *                              there really isn't any space.
+ */
+    extern char *HTAA_makeProtectionTemplate(const char *docname);
+
+/*
+
+MIME Argument List Parser
+
+ */
+
+/* PUBLIC                                               HTAA_parseArgList()
+ *              PARSE AN ARGUMENT LIST GIVEN IN A HEADER FIELD
+ * ON ENTRY:
+ *      str     is a comma-separated list:
+ *
+ *                      item, item, item
+ *              where
+ *                      item ::= value
+ *                             | name=value
+ *                             | name="value"
+ *
+ *              Leading and trailing whitespace is ignored
+ *              everywhere except inside quotes, so the following
+ *              examples are equal:
+ *
+ *                      name=value,foo=bar
+ *                       name="value",foo="bar"
+ *                        name = value ,  foo = bar
+ *                         name = "value" ,  foo = "bar"
+ *
+ * ON EXIT:
+ *      returns a list of name-value pairs (actually HTAssocList*).
+ *              For items with no name, just value, the name is
+ *              the number of order number of that item. E.g.
+ *              "1" for the first, etc.
+ */
+    extern HTList *HTAA_parseArgList(char *str);
+
+/*
+
+Header Line Reader
+
+ */
+
+/* PUBLIC                                               HTAA_setupReader()
+ *              SET UP HEADER LINE READER, i.e., give
+ *              the already-read-but-not-yet-processed
+ *              buffer of text to be read before more
+ *              is read from the socket.
+ * ON ENTRY:
+ *      start_of_headers is a pointer to a buffer containing
+ *                      the beginning of the header lines
+ *                      (rest will be read from a socket).
+ *      length          is the number of valid characters in
+ *                      'start_of_headers' buffer.
+ *      soc             is the socket to use when start_of_headers
+ *                      buffer is used up.
+ * ON EXIT:
+ *      returns         nothing.
+ *                      Subsequent calls to HTAA_getUnfoldedLine()
+ *                      will use this buffer first and then
+ *                      proceed to read from socket.
+ */
+    extern void HTAA_setupReader(char *start_of_headers,
+				 size_t length,
+				 int soc);
+
+/* PUBLIC                                               HTAA_getUnfoldedLine()
+ *              READ AN UNFOLDED HEADER LINE FROM SOCKET
+ * ON ENTRY:
+ *      HTAA_setupReader must absolutely be called before
+ *      this function to set up internal buffer.
+ *
+ * ON EXIT:
+ *      returns a newly-allocated character string representing
+ *              the read line.  The line is unfolded, i.e.
+ *              lines that begin with whitespace are appended
+ *              to current line.  E.g.
+ *
+ *                      Field-Name: Blaa-Blaa
+ *                       This-Is-A-Continuation-Line
+ *                       Here-Is_Another
+ *
+ *              is seen by the caller as:
+ *
+ *      Field-Name: Blaa-Blaa This-Is-A-Continuation-Line Here-Is_Another
+ *
+ */
+    extern char *HTAA_getUnfoldedLine(void);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* NOT HTAAUTIL_H */
diff --git a/WWW/Library/Implementation/HTAccess.c b/WWW/Library/Implementation/HTAccess.c
new file mode 100644
index 00000000..2b287e9d
--- /dev/null
+++ b/WWW/Library/Implementation/HTAccess.c
@@ -0,0 +1,1447 @@
+/*
+ * $LynxId: HTAccess.c,v 1.76 2012/02/04 00:15:53 tom Exp $
+ *
+ *		Access Manager					HTAccess.c
+ *		==============
+ *
+ *  Authors
+ *	TBL	Tim Berners-Lee timbl@info.cern.ch
+ *	JFG	Jean-Francois Groff jfg@dxcern.cern.ch
+ *	DD	Denis DeLaRoca (310) 825-4580  <CSP1DWD@mvs.oac.ucla.edu>
+ *	FM	Foteos Macrides macrides@sci.wfeb.edu
+ *	PDM	Danny Mayer mayer@ljo.dec.com
+ *
+ *  History
+ *	 8 Jun 92 Telnet hopping prohibited as telnet is not secure TBL
+ *	26 Jun 92 When over DECnet, suppressed FTP, Gopher and News. JFG
+ *	 6 Oct 92 Moved HTClientHost and logfile into here. TBL
+ *	17 Dec 92 Tn3270 added, bug fix. DD
+ *	 4 Feb 93 Access registration, Search escapes bad chars TBL
+ *		  PARAMETERS TO HTSEARCH AND HTLOADRELATIVE CHANGED
+ *	28 May 93 WAIS gateway explicit if no WAIS library linked in.
+ *	31 May 94 Added DIRECT_WAIS support for VMS. FM
+ *	27 Jan 95 Fixed proxy support to use NNTPSERVER for checking
+ *		  whether or not to use the proxy server. PDM
+ *	27 Jan 95 Ensured that proxy service will be overridden for files
+ *		  on the local host (because HTLoadFile() doesn't try ftp
+ *		  for those) and will substitute ftp for remote files. FM
+ *	28 Jan 95 Tweaked PDM's proxy override mods to handle port info
+ *		  for news and wais URL's. FM
+ *
+ *  Bugs
+ *	This module assumes that that the graphic object is hypertext, as it
+ *	needs to select it when it has been loaded.  A superclass needs to be
+ *	defined which accepts select and select_anchor.
+ */
+
+#ifdef VMS
+#define DIRECT_WAIS
+#endif /* VMS */
+
+#include <HTUtils.h>
+#include <HTTP.h>
+#include <HTAlert.h>
+/*
+ *  Implements:
+ */
+#include <HTAccess.h>
+
+/*
+ *  Uses:
+ */
+#include <HTParse.h>
+#include <HTML.h>		/* SCW */
+
+#ifndef NO_RULES
+#include <HTRules.h>
+#endif
+
+#include <HTList.h>
+#include <HText.h>		/* See bugs above */
+#include <HTCJK.h>
+#include <UCMap.h>
+#include <GridText.h>
+
+#include <LYGlobalDefs.h>
+#include <LYexit.h>
+#include <LYStrings.h>
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+/*
+ *  These flags may be set to modify the operation of this module
+ */
+char *HTClientHost = NULL;	/* Name of remote login host if any */
+FILE *HTlogfile = NULL;		/* File to which to output one-liners */
+BOOL HTSecure = NO;		/* Disable access for telnet users? */
+BOOL HTPermitRedir = NO;	/* Always allow redirection in getfile()? */
+
+BOOL using_proxy = NO;		/* are we using a proxy gateway? */
+
+/*
+ *  To generate other things, play with these:
+ */
+HTFormat HTOutputFormat = NULL;
+HTStream *HTOutputStream = NULL;	/* For non-interactive, set this */
+
+static HTList *protocols = NULL;	/* List of registered protocol descriptors */
+
+char *use_this_url_instead = NULL;
+
+static int pushed_assume_LYhndl = -1;	/* see LYUC* functions below - kw */
+static char *pushed_assume_MIMEname = NULL;
+
+#ifdef LY_FIND_LEAKS
+static void free_protocols(void)
+{
+    HTList_delete(protocols);
+    protocols = NULL;
+    FREE(pushed_assume_MIMEname);	/* shouldn't happen, just in case - kw */
+}
+#endif /* LY_FIND_LEAKS */
+
+/*	Register a Protocol.				HTRegisterProtocol()
+ *	--------------------
+ */
+BOOL HTRegisterProtocol(HTProtocol * protocol)
+{
+    if (!protocols) {
+	protocols = HTList_new();
+#ifdef LY_FIND_LEAKS
+	atexit(free_protocols);
+#endif
+    }
+    HTList_addObject(protocols, protocol);
+    return YES;
+}
+
+/*	Register all known protocols.			HTAccessInit()
+ *	-----------------------------
+ *
+ *	Add to or subtract from this list if you add or remove protocol
+ *	modules.  This routine is called the first time the protocol list
+ *	is needed, unless any protocols are already registered, in which
+ *	case it is not called.	Therefore the application can override
+ *	this list.
+ *
+ *	Compiling with NO_INIT prevents all known protocols from being
+ *	forced in at link time.
+ */
+#ifndef NO_INIT
+#ifdef GLOBALREF_IS_MACRO
+extern GLOBALREF (HTProtocol, HTTP);
+extern GLOBALREF (HTProtocol, HTTPS);
+extern GLOBALREF (HTProtocol, HTFile);
+extern GLOBALREF (HTProtocol, HTTelnet);
+extern GLOBALREF (HTProtocol, HTTn3270);
+extern GLOBALREF (HTProtocol, HTRlogin);
+
+#ifndef DECNET
+#ifndef DISABLE_FTP
+extern GLOBALREF (HTProtocol, HTFTP);
+#endif /* DISABLE_FTP */
+#ifndef DISABLE_NEWS
+extern GLOBALREF (HTProtocol, HTNews);
+extern GLOBALREF (HTProtocol, HTNNTP);
+extern GLOBALREF (HTProtocol, HTNewsPost);
+extern GLOBALREF (HTProtocol, HTNewsReply);
+extern GLOBALREF (HTProtocol, HTSNews);
+extern GLOBALREF (HTProtocol, HTSNewsPost);
+extern GLOBALREF (HTProtocol, HTSNewsReply);
+#endif /* not DISABLE_NEWS */
+#ifndef DISABLE_GOPHER
+extern GLOBALREF (HTProtocol, HTGopher);
+extern GLOBALREF (HTProtocol, HTCSO);
+#endif /* not DISABLE_GOPHER */
+#ifndef DISABLE_FINGER
+extern GLOBALREF (HTProtocol, HTFinger);
+#endif /* not DISABLE_FINGER */
+#ifdef DIRECT_WAIS
+extern GLOBALREF (HTProtocol, HTWAIS);
+#endif /* DIRECT_WAIS */
+#endif /* !DECNET */
+#else
+GLOBALREF HTProtocol HTTP, HTTPS, HTFile, HTTelnet, HTTn3270, HTRlogin;
+
+#ifndef DECNET
+#ifndef DISABLE_FTP
+GLOBALREF HTProtocol HTFTP;
+#endif /* DISABLE_FTP */
+#ifndef DISABLE_NEWS
+GLOBALREF HTProtocol HTNews, HTNNTP, HTNewsPost, HTNewsReply;
+GLOBALREF HTProtocol HTSNews, HTSNewsPost, HTSNewsReply;
+#endif /* not DISABLE_NEWS */
+#ifndef DISABLE_GOPHER
+GLOBALREF HTProtocol HTGopher, HTCSO;
+#endif /* not DISABLE_GOPHER */
+#ifndef DISABLE_FINGER
+GLOBALREF HTProtocol HTFinger;
+#endif /* not DISABLE_FINGER */
+#ifdef DIRECT_WAIS
+GLOBALREF HTProtocol HTWAIS;
+#endif /* DIRECT_WAIS */
+#endif /* !DECNET */
+#endif /* GLOBALREF_IS_MACRO */
+
+static void HTAccessInit(void)	/* Call me once */
+{
+    HTRegisterProtocol(&HTTP);
+    HTRegisterProtocol(&HTTPS);
+    HTRegisterProtocol(&HTFile);
+    HTRegisterProtocol(&HTTelnet);
+    HTRegisterProtocol(&HTTn3270);
+    HTRegisterProtocol(&HTRlogin);
+#ifndef DECNET
+#ifndef DISABLE_FTP
+    HTRegisterProtocol(&HTFTP);
+#endif /* DISABLE_FTP */
+#ifndef DISABLE_NEWS
+    HTRegisterProtocol(&HTNews);
+    HTRegisterProtocol(&HTNNTP);
+    HTRegisterProtocol(&HTNewsPost);
+    HTRegisterProtocol(&HTNewsReply);
+    HTRegisterProtocol(&HTSNews);
+    HTRegisterProtocol(&HTSNewsPost);
+    HTRegisterProtocol(&HTSNewsReply);
+#endif /* not DISABLE_NEWS */
+#ifndef DISABLE_GOPHER
+    HTRegisterProtocol(&HTGopher);
+    HTRegisterProtocol(&HTCSO);
+#endif /* not DISABLE_GOPHER */
+#ifndef DISABLE_FINGER
+    HTRegisterProtocol(&HTFinger);
+#endif /* not DISABLE_FINGER */
+#ifdef DIRECT_WAIS
+    HTRegisterProtocol(&HTWAIS);
+#endif /* DIRECT_WAIS */
+#endif /* !DECNET */
+    LYRegisterLynxProtocols();
+}
+#endif /* !NO_INIT */
+
+/*	Check for proxy override.			override_proxy()
+ *	-------------------------
+ *
+ *	Check the no_proxy environment variable to get the list
+ *	of hosts for which proxy server is not consulted.
+ *
+ *	no_proxy is a comma- or space-separated list of machine
+ *	or domain names, with optional :port part.  If no :port
+ *	part is present, it applies to all ports on that domain.
+ *
+ *  Example:
+ *	    no_proxy="cern.ch,some.domain:8001"
+ *
+ *  Use "*" to override all proxy service:
+ *	     no_proxy="*"
+ */
+BOOL override_proxy(const char *addr)
+{
+    const char *no_proxy = getenv("no_proxy");
+    char *p = NULL;
+    char *at = NULL;
+    char *host = NULL;
+    char *Host = NULL;
+    char *acc_method = NULL;
+    int port = 0;
+    int h_len = 0;
+
+    /*
+     * Check for global override.
+     */
+    if (no_proxy) {
+	if (!strcmp(no_proxy, "*"))
+	    return YES;
+    }
+
+    /*
+     * Never proxy file:// URLs if they are on the local host.  HTLoadFile()
+     * will not attempt ftp for those if direct access fails.  We'll check that
+     * first, in case no_proxy hasn't been defined.  - FM
+     */
+    if (!addr)
+	return NO;
+    if (!(host = HTParse(addr, "", PARSE_HOST)))
+	return NO;
+    if (!*host) {
+	FREE(host);
+	return NO;
+    }
+    Host = (((at = strchr(host, '@')) != NULL) ? (at + 1) : host);
+
+    if ((acc_method = HTParse(addr, "", PARSE_ACCESS))) {
+	if (!strcmp("file", acc_method) &&
+	    (LYSameHostname(Host, "localhost") ||
+	     LYSameHostname(Host, HTHostName()))) {
+	    FREE(host);
+	    FREE(acc_method);
+	    return YES;
+	}
+	FREE(acc_method);
+    }
+
+    if (!no_proxy) {
+	FREE(host);
+	return NO;
+    }
+
+    if (NULL != (p = HTParsePort(Host, &port))) {	/* Port specified */
+	*p = 0;			/* Chop off port */
+    } else {			/* Use default port */
+	acc_method = HTParse(addr, "", PARSE_ACCESS);
+	if (acc_method != NULL) {
+	    /* *INDENT-OFF* */
+	    if	    (!strcmp(acc_method, "http"))	port = 80;
+	    else if (!strcmp(acc_method, "https"))	port = 443;
+	    else if (!strcmp(acc_method, "ftp"))	port = 21;
+#ifndef DISABLE_GOPHER
+	    else if (!strcmp(acc_method, "gopher"))	port = 70;
+#endif
+	    else if (!strcmp(acc_method, "cso"))	port = 105;
+#ifndef DISABLE_NEWS
+	    else if (!strcmp(acc_method, "news"))	port = 119;
+	    else if (!strcmp(acc_method, "nntp"))	port = 119;
+	    else if (!strcmp(acc_method, "newspost"))	port = 119;
+	    else if (!strcmp(acc_method, "newsreply"))	port = 119;
+	    else if (!strcmp(acc_method, "snews"))	port = 563;
+	    else if (!strcmp(acc_method, "snewspost"))	port = 563;
+	    else if (!strcmp(acc_method, "snewsreply")) port = 563;
+#endif
+	    else if (!strcmp(acc_method, "wais"))	port = 210;
+#ifndef DISABLE_FINGER
+	    else if (!strcmp(acc_method, "finger"))	port = 79;
+#endif
+	    else if (!strcmp(acc_method, "telnet"))	port = 23;
+	    else if (!strcmp(acc_method, "tn3270"))	port = 23;
+	    else if (!strcmp(acc_method, "rlogin"))	port = 513;
+	    /* *INDENT-ON* */
+
+	    FREE(acc_method);
+	}
+    }
+    if (!port)
+	port = 80;		/* Default */
+    h_len = (int) strlen(Host);
+
+    while (*no_proxy) {
+	const char *end;
+	const char *colon = NULL;
+	int templ_port = 0;
+	int t_len;
+	int brackets = 0;
+
+	while (*no_proxy && (WHITE(*no_proxy) || *no_proxy == ','))
+	    no_proxy++;		/* Skip whitespace and separators */
+
+	end = no_proxy;
+	while (*end && !WHITE(*end) && *end != ',') {	/* Find separator */
+	    if (!brackets && (*end == ':'))
+		colon = end;	/* Port number given */
+	    else if (*end == '[')
+		++brackets;
+	    else if (*end == ']')
+		--brackets;
+	    end++;
+	}
+
+	if (colon) {
+	    /* unlike HTParsePort(), this may be followed by non-digits */
+	    templ_port = atoi(colon + 1);
+	    t_len = (int) (colon - no_proxy);
+	} else {
+	    t_len = (int) (end - no_proxy);
+	}
+
+	if ((!templ_port || templ_port == port) &&
+	    (t_len > 0 && t_len <= h_len &&
+	     !strncasecomp(Host + h_len - t_len, no_proxy, t_len))) {
+	    FREE(host);
+	    return YES;
+	}
+#ifdef CJK_EX			/* ASATAKU PROXY HACK */
+	if ((!templ_port || templ_port == port) &&
+	    (t_len > 0 && t_len <= h_len &&
+	     isdigit(UCH(*no_proxy)) &&
+	     !StrNCmp(host, no_proxy, t_len))) {
+	    FREE(host);
+	    return YES;
+	}
+#endif /* ASATAKU PROXY HACK */
+
+	if (*end)
+	    no_proxy = (end + 1);
+	else
+	    break;
+    }
+
+    FREE(host);
+    return NO;
+}
+
+/*	Find physical name and access protocol		get_physical()
+ *	--------------------------------------
+ *
+ *  On entry,
+ *	addr		must point to the fully qualified hypertext reference.
+ *	anchor		a parent anchor with whose address is addr
+ *
+ *  On exit,
+ *	returns		HT_NO_ACCESS		Error has occurred.
+ *			HT_OK			Success
+ */
+static int get_physical(const char *addr,
+			HTParentAnchor *anchor)
+{
+    int result;
+    char *acc_method = NULL;	/* Name of access method */
+    char *physical = NULL;
+    char *Server_addr = NULL;
+    BOOL override_flag = NO;
+
+    CTRACE((tfp, "get_physical %s\n", addr));
+
+    /*
+     * Make sure the using_proxy variable is FALSE.
+     */
+    using_proxy = NO;
+
+#ifndef NO_RULES
+    if ((physical = HTTranslate(addr)) == 0) {
+	if (redirecting_url) {
+	    return HT_REDIRECTING;
+	}
+	return HT_FORBIDDEN;
+    }
+    if (anchor->isISMAPScript == TRUE) {
+	StrAllocCat(physical, "?0,0");
+	CTRACE((tfp, "HTAccess: Appending '?0,0' coordinate pair.\n"));
+    }
+    if (!StrNCmp(physical, "Proxied=", 8)) {
+	HTAnchor_setPhysical(anchor, physical + 8);
+	using_proxy = YES;
+    } else if (!StrNCmp(physical, "NoProxy=", 8)) {
+	HTAnchor_setPhysical(anchor, physical + 8);
+	override_flag = YES;
+    } else {
+	HTAnchor_setPhysical(anchor, physical);
+    }
+    FREE(physical);		/* free our copy */
+#else
+    if (anchor->isISMAPScript == TRUE) {
+	StrAllocCopy(physical, addr);
+	StrAllocCat(physical, "?0,0");
+	CTRACE((tfp, "HTAccess: Appending '?0,0' coordinate pair.\n"));
+	HTAnchor_setPhysical(anchor, physical);
+	FREE(physical);		/* free our copy */
+    } else {
+	HTAnchor_setPhysical(anchor, addr);
+    }
+#endif /* NO_RULES */
+
+    acc_method = HTParse(HTAnchor_physical(anchor), STR_FILE_URL, PARSE_ACCESS);
+
+    /*
+     * Check whether gateway access has been set up for this.
+     *
+     * This function can be replaced by the rule system above.
+     *
+     * If the rule system has already determined that we should use a proxy, or
+     * that we shouldn't, ignore proxy-related settings, don't use no_proxy
+     * either.
+     */
+#define USE_GATEWAYS
+#ifdef USE_GATEWAYS
+
+    if (!override_flag && !using_proxy) {	/* else ignore no_proxy env var */
+	char *host = NULL;
+	int port;
+
+	if (!strcasecomp(acc_method, "news")) {
+	    /*
+	     * News is different, so we need to check the name of the server,
+	     * as well as the default port for selective exclusions.
+	     */
+	    if ((host = HTParse(addr, "", PARSE_HOST))) {
+		if (HTParsePort(host, &port) == NULL) {
+		    StrAllocCopy(Server_addr, "news://");
+		    StrAllocCat(Server_addr, host);
+		    StrAllocCat(Server_addr, ":119/");
+		}
+		FREE(host);
+	    } else if (LYGetEnv("NNTPSERVER") != NULL) {
+		StrAllocCopy(Server_addr, "news://");
+		StrAllocCat(Server_addr, LYGetEnv("NNTPSERVER"));
+		StrAllocCat(Server_addr, ":119/");
+	    }
+	} else if (!strcasecomp(acc_method, "wais")) {
+	    /*
+	     * Wais also needs checking of the default port for selective
+	     * exclusions.
+	     */
+	    if ((host = HTParse(addr, "", PARSE_HOST))) {
+		if (!(HTParsePort(host, &port))) {
+		    StrAllocCopy(Server_addr, "wais://");
+		    StrAllocCat(Server_addr, host);
+		    StrAllocCat(Server_addr, ":210/");
+		}
+		FREE(host);
+	    } else
+		StrAllocCopy(Server_addr, addr);
+	} else {
+	    StrAllocCopy(Server_addr, addr);
+	}
+	override_flag = override_proxy(Server_addr);
+    }
+
+    if (!override_flag && !using_proxy) {
+	char *gateway_parameter = NULL, *gateway, *proxy;
+
+	/*
+	 * Search for gateways.
+	 */
+	HTSprintf0(&gateway_parameter, "WWW_%s_GATEWAY", acc_method);
+	gateway = LYGetEnv(gateway_parameter);	/* coerce for decstation */
+
+	/*
+	 * Search for proxy servers.
+	 */
+	if (!strcmp(acc_method, "file"))
+	    /*
+	     * If we got to here, a file URL is for ftp on a remote host. - FM
+	     */
+	    strcpy(gateway_parameter, "ftp_proxy");
+	else
+	    sprintf(gateway_parameter, "%s_proxy", acc_method);
+	proxy = LYGetEnv(gateway_parameter);
+	FREE(gateway_parameter);
+
+	if (gateway)
+	    CTRACE((tfp, "Gateway found: %s\n", gateway));
+	if (proxy)
+	    CTRACE((tfp, "proxy server found: %s\n", proxy));
+
+	/*
+	 * Proxy servers have precedence over gateway servers.
+	 */
+	if (proxy) {
+	    char *gatewayed = NULL;
+
+	    StrAllocCopy(gatewayed, proxy);
+	    if (!StrNCmp(gatewayed, "http", 4)) {
+		char *cp = strrchr(gatewayed, '/');
+
+		/* Append a slash to the proxy specification if it doesn't
+		 * end in one but otherwise looks normal (starts with "http",
+		 * has no '/' other than ones before the hostname). - kw */
+		if (cp && (cp - gatewayed) <= 7)
+		    LYAddHtmlSep(&gatewayed);
+	    }
+	    /*
+	     * Ensure that the proxy server uses ftp for file URLs. - FM
+	     */
+	    if (!StrNCmp(addr, "file", 4)) {
+		StrAllocCat(gatewayed, "ftp");
+		StrAllocCat(gatewayed, (addr + 4));
+	    } else
+		StrAllocCat(gatewayed, addr);
+	    using_proxy = YES;
+	    if (anchor->isISMAPScript == TRUE)
+		StrAllocCat(gatewayed, "?0,0");
+	    HTAnchor_setPhysical(anchor, gatewayed);
+	    FREE(gatewayed);
+	    FREE(acc_method);
+
+	    acc_method = HTParse(HTAnchor_physical(anchor),
+				 STR_HTTP_URL, PARSE_ACCESS);
+
+	} else if (gateway) {
+	    char *path = HTParse(addr, "",
+				 PARSE_HOST + PARSE_PATH + PARSE_PUNCTUATION);
+
+	    /* Chop leading / off to make host into part of path */
+	    char *gatewayed = HTParse(path + 1, gateway, PARSE_ALL);
+
+	    FREE(path);
+	    HTAnchor_setPhysical(anchor, gatewayed);
+	    FREE(gatewayed);
+	    FREE(acc_method);
+
+	    acc_method = HTParse(HTAnchor_physical(anchor),
+				 STR_HTTP_URL, PARSE_ACCESS);
+	}
+    }
+    FREE(Server_addr);
+#endif /* use gateways */
+
+    /*
+     * Search registered protocols to find suitable one.
+     */
+    result = HT_NO_ACCESS;
+    {
+	int i, n;
+
+#ifndef NO_INIT
+	if (!protocols)
+	    HTAccessInit();
+#endif
+	n = HTList_count(protocols);
+	for (i = 0; i < n; i++) {
+	    HTProtocol *p = (HTProtocol *) HTList_objectAt(protocols, i);
+
+	    if (!strcmp(p->name, acc_method)) {
+		HTAnchor_setProtocol(anchor, p);
+		FREE(acc_method);
+		result = HT_OK;
+		break;
+	    }
+	}
+    }
+
+    FREE(acc_method);
+    return result;
+}
+
+/*
+ * Temporarily set the int UCLYhndl_for_unspec and string UCLYhndl_for_unspec
+ * used for charset "assuming" to the values implied by a HTParentAnchor's
+ * UCStages, after saving the current values for later restoration.  - kw @@@
+ * These functions may not really belong here, but where else?  I want the
+ * "pop" to occur as soon as possible after loading has finished.  - kw @@@
+ */
+void LYUCPushAssumed(HTParentAnchor *anchor)
+{
+    int anchor_LYhndl = -1;
+    LYUCcharset *anchor_UCI = NULL;
+
+    if (anchor) {
+	anchor_LYhndl = HTAnchor_getUCLYhndl(anchor, UCT_STAGE_PARSER);
+	if (anchor_LYhndl >= 0)
+	    anchor_UCI = HTAnchor_getUCInfoStage(anchor,
+						 UCT_STAGE_PARSER);
+	if (anchor_UCI && anchor_UCI->MIMEname) {
+	    pushed_assume_MIMEname = UCAssume_MIMEcharset;
+	    UCAssume_MIMEcharset = NULL;
+	    if (HTCJK == JAPANESE)
+		StrAllocCopy(UCAssume_MIMEcharset, pushed_assume_MIMEname);
+	    else
+		StrAllocCopy(UCAssume_MIMEcharset, anchor_UCI->MIMEname);
+	    pushed_assume_LYhndl = anchor_LYhndl;
+	    /* some diagnostics */
+	    if (UCLYhndl_for_unspec != anchor_LYhndl)
+		CTRACE((tfp,
+			"LYUCPushAssumed: UCLYhndl_for_unspec changed %d -> %d\n",
+			UCLYhndl_for_unspec,
+			anchor_LYhndl));
+	    UCLYhndl_for_unspec = anchor_LYhndl;
+	    return;
+	}
+    }
+    pushed_assume_LYhndl = -1;
+    FREE(pushed_assume_MIMEname);
+}
+
+/*
+ * Restore the int UCLYhndl_for_unspec and string UCLYhndl_for_unspec used for
+ * charset "assuming" from the values saved by LYUCPushAssumed, if any.  - kw
+ */
+int LYUCPopAssumed(void)
+{
+    if (pushed_assume_LYhndl >= 0) {
+	/* some diagnostics */
+	if (UCLYhndl_for_unspec != pushed_assume_LYhndl)
+	    CTRACE((tfp,
+		    "LYUCPopAssumed: UCLYhndl_for_unspec changed %d -> %d\n",
+		    UCLYhndl_for_unspec,
+		    pushed_assume_LYhndl));
+	UCLYhndl_for_unspec = pushed_assume_LYhndl;
+	pushed_assume_LYhndl = -1;
+	FREE(UCAssume_MIMEcharset);
+	UCAssume_MIMEcharset = pushed_assume_MIMEname;
+	pushed_assume_MIMEname = NULL;
+	return UCLYhndl_for_unspec;
+    }
+    return -1;
+}
+
+/*	Load a document					HTLoad()
+ *	---------------
+ *
+ *	This is an internal routine, which has an address AND a matching
+ *	anchor.  (The public routines are called with one OR the other.)
+ *
+ *  On entry,
+ *	addr		must point to the fully qualified hypertext reference.
+ *	anchor		a parent anchor with whose address is addr
+ *
+ *  On exit,
+ *	returns		<0		Error has occurred.
+ *			HT_LOADED	Success
+ *			HT_NO_DATA	Success, but no document loaded.
+ *					(telnet session started etc)
+ */
+static int HTLoad(const char *addr,
+		  HTParentAnchor *anchor,
+		  HTFormat format_out,
+		  HTStream *sink)
+{
+    HTProtocol *p;
+    int status = get_physical(addr, anchor);
+
+    if (reloading) {
+	FREE(anchor->charset);
+	FREE(anchor->UCStages);
+    }
+
+    if (status == HT_FORBIDDEN) {
+	/* prevent crash if telnet or similar was forbidden by rule. - kw */
+	LYFixCursesOn("show alert:");
+	status = HTLoadError(sink, 500, gettext("Access forbidden by rule"));
+    } else if (status == HT_REDIRECTING) {
+	;			/* fake redirection by rule, to redirecting_url */
+    } else if (status >= 0) {
+	/* prevent crash if telnet or similar mapped or proxied by rule. - kw */
+	LYFixCursesOnForAccess(addr, HTAnchor_physical(anchor));
+	p = (HTProtocol *) HTAnchor_protocol(anchor);
+	anchor->parent->underway = TRUE;	/* Hack to deal with caching */
+	status = p->load(HTAnchor_physical(anchor),
+			 anchor, format_out, sink);
+	anchor->parent->underway = FALSE;
+	LYUCPopAssumed();
+    }
+    return status;
+}
+
+/*	Get a save stream for a document		HTSaveStream()
+ *	--------------------------------
+ */
+HTStream *HTSaveStream(HTParentAnchor *anchor)
+{
+    HTProtocol *p = (HTProtocol *) HTAnchor_protocol(anchor);
+
+    if (!p)
+	return NULL;
+
+    return p->saveStream(anchor);
+}
+
+int redirection_attempts = 0;	/* counter in HTLoadDocument */
+
+/*	Load a document - with logging etc		HTLoadDocument()
+ *	----------------------------------
+ *
+ *	- Checks or documents already loaded
+ *	- Logs the access
+ *	- Allows stdin filter option
+ *	- Trace output and error messages
+ *
+ *  On Entry,
+ *	  anchor	    is the node_anchor for the document
+ *	  full_address	    The address of the document to be accessed.
+ *	  filter	    if YES, treat stdin as HTML
+ *
+ *  On Exit,
+ *	  returns    YES     Success in opening document
+ *		     NO      Failure
+ */
+static BOOL HTLoadDocument(const char *full_address,	/* may include #fragment */
+			   HTParentAnchor *anchor,
+			   HTFormat format_out,
+			   HTStream *sink)
+{
+    int status;
+    HText *text;
+    const char *address_to_load = full_address;
+    char *cp;
+    BOOL ForcingNoCache = LYforce_no_cache;
+
+    CTRACE((tfp, "HTAccess: loading document %s\n", address_to_load));
+
+    /*
+     * Free use_this_url_instead and reset permanent_redirection if not done
+     * elsewhere.  - FM
+     */
+    FREE(use_this_url_instead);
+    permanent_redirection = FALSE;
+
+    /*
+     * Make sure some yoyo doesn't send us 'round in circles with redirecting
+     * URLs that point back to themselves.  We'll set the original Lynx limit
+     * of 10 redirections per requested URL from a user, because the HTTP/1.1
+     * will no longer specify a restriction to 5, but will leave it up to the
+     * browser's discretion, in deference to Microsoft.  - FM
+     */
+    if (redirection_attempts > 10) {
+	redirection_attempts = 0;
+	HTAlert(TOO_MANY_REDIRECTIONS);
+	return NO;
+    }
+
+    /*
+     * If this is marked as an internal link but we don't have the document
+     * loaded any more, and we haven't explicitly flagged that we want to
+     * reload with LYforce_no_cache, then something has disappeared from the
+     * cache when we expected it to be still there.  The user probably doesn't
+     * expect a new network access.  So if we have POST data and safe is not
+     * set in the anchor, ask for confirmation, and fail if not granted.  The
+     * exception are LYNXIMGMAP documents, for which we defer to LYLoadIMGmap
+     * for prompting if necessary.  - kw
+     */
+    text = (HText *) HTAnchor_document(anchor);
+    if (LYinternal_flag && !text && !LYforce_no_cache &&
+	anchor->post_data && !anchor->safe &&
+	!isLYNXIMGMAP(full_address) &&
+	HTConfirm(gettext("Document with POST content not found in cache.  Resubmit?"))
+	!= TRUE) {
+	return NO;
+    }
+
+    /*
+     * If we don't have POST content, check whether this is a previous
+     * redirecting URL, and keep re-checking until we get to the final
+     * destination or redirection limit.  If we do have POST content, we didn't
+     * allow permanent redirection, and an interactive user will be deciding
+     * whether to keep redirecting.  - FM
+     */
+    if (!anchor->post_data) {
+	while ((cp = HTAnchor_physical(anchor)) != NULL &&
+	       !StrNCmp(cp, "Location=", 9)) {
+	    DocAddress NewDoc;
+
+	    CTRACE((tfp, "HTAccess: '%s' is a redirection URL.\n",
+		    anchor->address));
+	    CTRACE((tfp, "HTAccess: Redirecting to '%s'\n", cp + 9));
+
+	    /*
+	     * Don't exceed the redirection_attempts limit.  - FM
+	     */
+	    if (++redirection_attempts > 10) {
+		HTAlert(TOO_MANY_REDIRECTIONS);
+		redirection_attempts = 0;
+		FREE(use_this_url_instead);
+		return NO;
+	    }
+
+	    /*
+	     * Set up the redirection. - FM
+	     */
+	    StrAllocCopy(use_this_url_instead, cp + 9);
+	    NewDoc.address = use_this_url_instead;
+	    NewDoc.post_data = NULL;
+	    NewDoc.post_content_type = NULL;
+	    NewDoc.bookmark = anchor->bookmark;
+	    NewDoc.isHEAD = anchor->isHEAD;
+	    NewDoc.safe = anchor->safe;
+	    anchor = HTAnchor_findAddress(&NewDoc);
+	}
+    }
+    /*
+     * If we had previous redirection, go back and check out that the URL under
+     * the current restrictions.  - FM
+     */
+    if (use_this_url_instead) {
+	FREE(redirecting_url);
+	return (NO);
+    }
+
+    /*
+     * See if we can use an already loaded document.
+     */
+    text = (HText *) HTAnchor_document(anchor);
+    if (text && !LYforce_no_cache) {
+	/*
+	 * We have a cached rendition of the target document.  Check if it's OK
+	 * to re-use it.  We consider it OK if:
+	 * (1) the anchor does not have the no_cache element set, or
+	 * (2) we've overridden it, e.g., because we are acting on a PREV_DOC
+	 * command or a link in the History Page and it's not a reply from a
+	 * POST with the LYresubmit_posts flag set, or
+	 * (3) we are repositioning within the currently loaded document based
+	 * on the target anchor's address (URL_Reference).
+	 *
+	 * If DONT_TRACK_INTERNAL_LINKS is defined, HText_AreDifferent() is
+	 * used to determine whether (3) applies.  If the target address
+	 * differs from that of the current document only by a fragment and the
+	 * target address has an appended fragment, repositioning without
+	 * reloading is always assumed.  Note that HText_AreDifferent()
+	 * currently always returns TRUE if the target has a LYNXIMGMAP URL, so
+	 * that an internally generated pseudo-document will normally not be
+	 * re-used unless condition (2) applies.  (Condition (1) cannot apply
+	 * since in LYMap.c, no_cache is always set in the anchor object). 
+	 * This doesn't guarantee that the resource from which the MAP element
+	 * is taken will be read again (reloaded) when the list of links for a
+	 * client-side image map is regenerated, when in some cases it should
+	 * (e.g., user requested RELOAD, or HTTP response with no-cache header
+	 * and we are not overriding).
+	 *
+	 * If DONT_TRACK_INTERNAL_LINKS is undefined, a target address that
+	 * points to the same URL as the current document may still result in
+	 * reloading, depending on whether the original URL-Reference was given
+	 * as an internal link in the context of the previously loaded
+	 * document.  HText_AreDifferent() is not used here for testing whether
+	 * we are just repositioning.  For an internal link, the potential
+	 * callers of this function from mainloop() down will either avoid
+	 * making the call (and do the repositioning differently) or set
+	 * LYinternal_flag (or LYoverride_no_cache).  Note that (a) LYNXIMGMAP
+	 * pseudo-documents and (b) The "List Page" document are treated
+	 * logically as being part of the document on which they are based, for
+	 * the purpose of whether to treat a link as internal, but the logic
+	 * for this (by setting LYinternal_flag as necessary) is implemented
+	 * elsewhere.  There is a specific test for LYNXIMGMAP here so that the
+	 * generated pseudo-document will not be re-used unless
+	 * LYoverride_no_cache is set.  The same caveat as above applies w.r.t. 
+	 * reloading of the underlying resource.
+	 *
+	 * We also should be checking other aspects of cache regulation (e.g.,
+	 * based on an If-Modified-Since check, etc.) but the code for doing
+	 * those other things isn't available yet.
+	 */
+	if (!reloading &&
+	    (LYoverride_no_cache ||
+#ifdef DONT_TRACK_INTERNAL_LINKS
+	     !HText_hasNoCacheSet(text) ||
+	     !HText_AreDifferent(anchor, full_address)
+#else
+	     ((LYinternal_flag || !HText_hasNoCacheSet(text)) &&
+	      !isLYNXIMGMAP(full_address))
+#endif /* TRACK_INTERNAL_LINKS */
+	    )) {
+	    CTRACE((tfp, "HTAccess: Document already in memory.\n"));
+	    HText_select(text);
+
+#ifdef DIRED_SUPPORT
+	    if (HTAnchor_format(anchor) == WWW_DIRED)
+		lynx_edit_mode = TRUE;
+#endif
+	    redirection_attempts = 0;
+	    return YES;
+	} else {
+	    ForcingNoCache = YES;
+	    BStrFree(anchor->post_data);
+	    CTRACE((tfp, "HTAccess: Auto-reloading document.\n"));
+	}
+    }
+
+    if (HText_HaveUserChangedForms(text)) {
+	/*
+	 * Issue a warning.  User forms content will be lost.
+	 * Will not restore changed forms, currently.
+	 */
+	HTAlert(RELOADING_FORM);
+    }
+
+    /*
+     * Get the document from the net.  If we are auto-reloading, the mutable
+     * anchor elements from the previous rendition should be freed in
+     * conjunction with loading of the new rendition.  - FM
+     */
+    LYforce_no_cache = NO;	/* reset after each time through */
+    if (ForcingNoCache) {
+	FREE(anchor->title);	/* ??? */
+    }
+    status = HTLoad(address_to_load, anchor, format_out, sink);
+    CTRACE((tfp, "HTAccess:  status=%d\n", status));
+
+    /*
+     * RECOVERY:  if the loading failed, and we had a cached HText copy, and no
+     * new HText created - use a previous copy, issue a warning.
+     */
+    if (text && status < 0 && (HText *) HTAnchor_document(anchor) == text) {
+	HTAlert(gettext("Loading failed, use a previous copy."));
+	CTRACE((tfp, "HTAccess: Loading failed, use a previous copy.\n"));
+	HText_select(text);
+
+#ifdef DIRED_SUPPORT
+	if (HTAnchor_format(anchor) == WWW_DIRED)
+	    lynx_edit_mode = TRUE;
+#endif
+	redirection_attempts = 0;
+	return YES;
+    }
+
+    /*
+     * Log the access if necessary.
+     */
+    if (HTlogfile) {
+	time_t theTime;
+
+	time(&theTime);
+	fprintf(HTlogfile, "%24.24s %s %s %s\n",
+		ctime(&theTime),
+		HTClientHost ? HTClientHost : "local",
+		status < 0 ? "FAIL" : "GET",
+		full_address);
+	fflush(HTlogfile);	/* Actually update it on disk */
+	CTRACE((tfp, "Log: %24.24s %s %s %s\n",
+		ctime(&theTime),
+		HTClientHost ? HTClientHost : "local",
+		status < 0 ? "FAIL" : "GET",
+		full_address));
+    }
+
+    /*
+     * Check out what we received from the net.
+     */
+    if (status == HT_REDIRECTING) {
+	/* Exported from HTMIME.c, of all places.  */
+	/* NO!! - FM */
+	/*
+	 * Doing this via HTMIME.c meant that the redirection cover page was
+	 * already loaded before we learned that we want a different URL. 
+	 * Also, changing anchor->address, as Lynx was doing, meant we could
+	 * never again access its hash table entry, creating an insolvable
+	 * memory leak.  Instead, if we had a 301 status and set
+	 * permanent_redirection, we'll load the new URL in anchor->physical,
+	 * preceded by a token, which we can check to make replacements on
+	 * subsequent access attempts.  We'll check recursively, and retrieve
+	 * the final URL if we had multiple redirections to it.  If we just
+	 * went to HTLoad now, as Lou originally had this, we couldn't do
+	 * Lynx's security checks and alternate handling of some URL types. 
+	 * So, instead, we'll go all the way back to the top of getfile in
+	 * LYGetFile.c when the status is HT_REDIRECTING.  This may seem
+	 * bizarre, but it works like a charm!  - FM
+	 *
+	 * Actually, the location header for redirections is now again picked
+	 * up in HTMIME.c.  But that's an internal matter between HTTP.c and
+	 * HTMIME.c, is still under control of HTLoadHTTP for http URLs, is
+	 * done in a way that doesn't load the redirection response's body
+	 * (except when wanted as an error fallback), and thus need not concern
+	 * us here.  - kw 1999-12-02
+	 */
+	CTRACE((tfp, "HTAccess: '%s' is a redirection URL.\n",
+		address_to_load));
+	CTRACE((tfp, "HTAccess: Redirecting to '%s'\n",
+		redirecting_url));
+	/*
+	 * Prevent circular references.
+	 */
+	if (strcmp(address_to_load, redirecting_url)) {		/* if different */
+	    /*
+	     * Load token and redirecting url into anchor->physical if we had
+	     * 301 Permanent redirection.  HTTP.c does not allow this if we
+	     * have POST content.  - FM
+	     */
+	    if (permanent_redirection) {
+		StrAllocCopy(anchor->physical, "Location=");
+		StrAllocCat(anchor->physical, redirecting_url);
+	    }
+
+	    /*
+	     * Set up flags before return to getfile.  - FM
+	     */
+	    StrAllocCopy(use_this_url_instead, redirecting_url);
+	    if (ForcingNoCache)
+		LYforce_no_cache = YES;
+	    ++redirection_attempts;
+	    FREE(redirecting_url);
+	    permanent_redirection = FALSE;
+	    return (NO);
+	}
+	++redirection_attempts;
+	FREE(redirecting_url);
+	permanent_redirection = FALSE;
+	return (YES);
+    }
+
+    /*
+     * We did not receive a redirecting URL.  - FM
+     */
+    redirection_attempts = 0;
+    FREE(redirecting_url);
+    permanent_redirection = FALSE;
+
+    if (status == HT_LOADED) {
+	CTRACE((tfp, "HTAccess: `%s' has been accessed.\n",
+		full_address));
+	return YES;
+    }
+    if (status == HT_PARTIAL_CONTENT) {
+	HTAlert(gettext("Loading incomplete."));
+	CTRACE((tfp, "HTAccess: `%s' has been accessed, partial content.\n",
+		full_address));
+	return YES;
+    }
+
+    if (status == HT_NO_DATA) {
+	CTRACE((tfp, "HTAccess: `%s' has been accessed, No data left.\n",
+		full_address));
+	return NO;
+    }
+
+    if (status == HT_NOT_LOADED) {
+	CTRACE((tfp, "HTAccess: `%s' has been accessed, No data loaded.\n",
+		full_address));
+	return NO;
+    }
+
+    if (status == HT_INTERRUPTED) {
+	CTRACE((tfp,
+		"HTAccess: `%s' has been accessed, transfer interrupted.\n",
+		full_address));
+	return NO;
+    }
+
+    if (status > 0) {
+	/*
+	 * If you get this, then please find which routine is returning a
+	 * positive unrecognized error code!
+	 */
+	fprintf(stderr,
+		gettext("**** HTAccess: socket or file number returned by obsolete load routine!\n"));
+	fprintf(stderr,
+		gettext("**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"));
+	fprintf(stderr, gettext("**** HTAccess: Status returned was: %d\n"), status);
+	exit_immediately(EXIT_FAILURE);
+    }
+
+    /* Failure in accessing a document */
+    cp = NULL;
+    StrAllocCopy(cp, gettext("Can't Access"));
+    StrAllocCat(cp, " `");
+    StrAllocCat(cp, full_address);
+    StrAllocCat(cp, "'");
+    _HTProgress(cp);
+    FREE(cp);
+
+    CTRACE((tfp, "HTAccess: Can't access `%s'\n", full_address));
+    HTLoadError(sink, 500, gettext("Unable to access document."));
+    return NO;
+}				/* HTLoadDocument */
+
+/*	Load a document from absolute name.		HTLoadAbsolute()
+ *	-----------------------------------
+ *
+ *  On Entry,
+ *	  addr	   The absolute address of the document to be accessed.
+ *	  filter   if YES, treat document as HTML
+ *
+ *  On Exit,
+ *	  returns    YES     Success in opening document
+ *		     NO      Failure
+ */
+BOOL HTLoadAbsolute(const DocAddress *docaddr)
+{
+    return HTLoadDocument(docaddr->address,
+			  HTAnchor_findAddress(docaddr),
+			  (HTOutputFormat ? HTOutputFormat : WWW_PRESENT),
+			  HTOutputStream);
+}
+
+#ifdef NOT_USED_CODE
+/*	Load a document from absolute name to stream.	HTLoadToStream()
+ *	---------------------------------------------
+ *
+ *  On Entry,
+ *	  addr	   The absolute address of the document to be accessed.
+ *	  sink	   if non-NULL, send data down this stream
+ *
+ *  On Exit,
+ *	  returns    YES     Success in opening document
+ *		     NO      Failure
+ */
+BOOL HTLoadToStream(const char *addr,
+		    BOOL filter,
+		    HTStream *sink)
+{
+    return HTLoadDocument(addr,
+			  HTAnchor_findSimpleAddress(addr),
+			  (HTOutputFormat ? HTOutputFormat : WWW_PRESENT),
+			  sink);
+}
+#endif /* NOT_USED_CODE */
+
+/*	Load a document from relative name.		HTLoadRelative()
+ *	-----------------------------------
+ *
+ *  On Entry,
+ *	  relative_name     The relative address of the document
+ *			    to be accessed.
+ *
+ *  On Exit,
+ *	  returns    YES     Success in opening document
+ *		     NO      Failure
+ */
+BOOL HTLoadRelative(const char *relative_name,
+		    HTParentAnchor *here)
+{
+    DocAddress full_address;
+    BOOL result;
+    char *mycopy = NULL;
+    char *stripped = NULL;
+
+    full_address.address = NULL;
+    full_address.post_data = NULL;
+    full_address.post_content_type = NULL;
+    full_address.bookmark = NULL;
+    full_address.isHEAD = FALSE;
+    full_address.safe = FALSE;
+
+    StrAllocCopy(mycopy, relative_name);
+
+    stripped = HTStrip(mycopy);
+    full_address.address =
+	HTParse(stripped,
+		here->address,
+		PARSE_ALL_WITHOUT_ANCHOR);
+    result = HTLoadAbsolute(&full_address);
+    /*
+     * If we got redirection, result will be NO, but use_this_url_instead will
+     * be set.  The calling routine should check both and do whatever is
+     * appropriate.  - FM
+     */
+    FREE(full_address.address);
+    FREE(mycopy);		/* Memory leak fixed 10/7/92 -- JFG */
+    return result;
+}
+
+/*	Load if necessary, and select an anchor.	HTLoadAnchor()
+ *	----------------------------------------
+ *
+ *  On Entry,
+ *	  destination		    The child or parent anchor to be loaded.
+ *
+ *  On Exit,
+ *	  returns    YES     Success
+ *		     NO      Failure
+ */
+BOOL HTLoadAnchor(HTAnchor * destination)
+{
+    HTParentAnchor *parent;
+    BOOL loaded = NO;
+
+    if (!destination)
+	return NO;		/* No link */
+
+    parent = HTAnchor_parent(destination);
+
+    if (HTAnchor_document(parent) == NULL) {	/* If not already loaded */
+	/* TBL 921202 */
+	BOOL result;
+
+	result = HTLoadDocument(parent->address,
+				parent,
+				HTOutputFormat ?
+				HTOutputFormat : WWW_PRESENT,
+				HTOutputStream);
+	if (!result)
+	    return NO;
+	loaded = YES;
+    } {
+	HText *text = (HText *) HTAnchor_document(parent);
+
+	if ((destination != (HTAnchor *) parent) &&
+	    (destination != (HTAnchor *) (parent->parent))) {
+	    /* If child anchor */
+	    HText_selectAnchor(text,	/* Double display? @@ */
+			       (HTChildAnchor *) destination);
+	} else {
+	    if (!loaded)
+		HText_select(text);
+	}
+    }
+    return YES;
+
+}				/* HTLoadAnchor */
+
+/*	Search.						HTSearch()
+ *	-------
+ *
+ *	Performs a keyword search on word given by the user.  Adds the
+ *	keyword to the end of the current address and attempts to open
+ *	the new address.
+ *
+ *  On Entry,
+ *	 *keywords	space-separated keyword list or similar search list
+ *	here		is anchor search is to be done on.
+ */
+static char hex(int i)
+{
+    const char *hexchars = "0123456789ABCDEF";
+
+    return hexchars[i];
+}
+
+BOOL HTSearch(const char *keywords,
+	      HTParentAnchor *here)
+{
+#define acceptable \
+"1234567890abcdefghijlkmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-_"
+
+    char *q, *u;
+    const char *p, *s, *e;	/* Pointers into keywords */
+    char *address = NULL;
+    BOOL result;
+    char *escaped = typecallocn(char, (strlen(keywords) * 3) + 1);
+    static const BOOL isAcceptable[96] =
+    /* *INDENT-OFF* */
+    /*	 0 1 2 3 4 5 6 7 8 9 A B C D E F */
+    {	 0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,	/* 2x	!"#$%&'()*+,-./  */
+	 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,	/* 3x  0123456789:;<=>?  */
+	 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,	/* 4x  @ABCDEFGHIJKLMNO  */
+	 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,	/* 5X  PQRSTUVWXYZ[\]^_  */
+	 0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,	/* 6x  `abcdefghijklmno  */
+	 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0 };	/* 7X  pqrstuvwxyz{\}~	DEL */
+    /* *INDENT-ON* */
+
+    if (escaped == NULL)
+	outofmem(__FILE__, "HTSearch");
+
+    assert(escaped != NULL);
+
+    StrAllocCopy(address, here->isIndexAction);
+
+    /*
+     * Convert spaces to + and hex escape unacceptable characters.
+     */
+    for (s = keywords; *s && WHITE(*s); s++)	/* Scan */
+	;			/* Skip white space */
+    for (e = s + strlen(s); e > s && WHITE(*(e - 1)); e--)	/* Scan */
+	;			/* Skip trailers */
+    for (q = escaped, p = s; p < e; p++) {	/* Scan stripped field */
+	unsigned char c = UCH(TOASCII(*p));
+
+	if (WHITE(*p)) {
+	    *q++ = '+';
+	} else if (IS_CJK_TTY) {
+	    *q++ = *p;
+	} else if (c >= 32 && c <= UCH(127) && isAcceptable[c - 32]) {
+	    *q++ = *p;		/* 930706 TBL for MVS bug */
+	} else {
+	    *q++ = '%';
+	    *q++ = hex((int) (c >> 4));
+	    *q++ = hex((int) (c & 15));
+	}
+    }				/* Loop over string */
+    *q = '\0';			/* Terminate escaped string */
+    u = strchr(address, '?');	/* Find old search string */
+    if (u != NULL)
+	*u = '\0';		/* Chop old search off */
+
+    StrAllocCat(address, "?");
+    StrAllocCat(address, escaped);
+    FREE(escaped);
+    result = HTLoadRelative(address, here);
+    FREE(address);
+
+    /*
+     * If we got redirection, result will be NO, but use_this_url_instead will
+     * be set.  The calling routine should check both and do whatever is
+     * appropriate.  Only an http server (not a gopher or wais server) could
+     * return redirection.  Lynx will go all the way back to its mainloop() and
+     * subject a redirecting URL to all of its security and restrictions
+     * checks.  - FM
+     */
+    return result;
+}
+
+/*	Search Given Indexname.			HTSearchAbsolute()
+ *	-----------------------
+ *
+ *	Performs a keyword search on word given by the user.  Adds the
+ *	keyword to the end of the current address and attempts to open
+ *	the new address.
+ *
+ *  On Entry,
+ *	*keywords	space-separated keyword list or similar search list
+ *	*indexname	is name of object search is to be done on.
+ */
+BOOL HTSearchAbsolute(const char *keywords,
+		      char *indexname)
+{
+    DocAddress abs_doc;
+    HTParentAnchor *anchor;
+
+    abs_doc.address = indexname;
+    abs_doc.post_data = NULL;
+    abs_doc.post_content_type = NULL;
+    abs_doc.bookmark = NULL;
+    abs_doc.isHEAD = FALSE;
+    abs_doc.safe = FALSE;
+
+    anchor = HTAnchor_findAddress(&abs_doc);
+    return HTSearch(keywords, anchor);
+}
+
+#ifdef NOT_USED_CODE
+/*	Generate the anchor for the home page.		HTHomeAnchor()
+ *	--------------------------------------
+ *
+ *	As it involves file access, this should only be done once
+ *	when the program first runs.
+ *	This is a default algorithm -- browser don't HAVE to use this.
+ *	But consistency between browsers is STRONGLY recommended!
+ *
+ *  Priority order is:
+ *		1	WWW_HOME environment variable (logical name, etc)
+ *		2	~/WWW/default.html
+ *		3	/usr/local/bin/default.html
+ *		4	http://www.w3.org/default.html
+ */
+HTParentAnchor *HTHomeAnchor(void)
+{
+    char *my_home_document = NULL;
+    char *home = LYGetEnv(LOGICAL_DEFAULT);
+    char *ref;
+    HTParentAnchor *anchor;
+
+    if (home) {
+	StrAllocCopy(my_home_document, home);
+#define MAX_FILE_NAME 1024	/* @@@ */
+    } else if (HTClientHost) {	/* Telnet server */
+	/*
+	 * Someone telnets in, they get a special home.
+	 */
+	FILE *fp = fopen(REMOTE_POINTER, "r");
+	char *status;
+
+	if (fp) {
+	    my_home_document = typecallocn(char, MAX_FILE_NAME);
+
+	    if (my_home_document == NULL)
+		outofmem(__FILE__, "HTHomeAnchor");
+	    status = fgets(my_home_document, MAX_FILE_NAME, fp);
+	    if (!status) {
+		FREE(my_home_document);
+	    }
+	    fclose(fp);
+	}
+	if (my_home_document == NULL)
+	    StrAllocCopy(my_home_document, REMOTE_ADDRESS);
+    }
+#ifdef UNIX
+    if (my_home_document == NULL) {
+	FILE *fp = NULL;
+	char *home = LYGetEnv("HOME");
+
+	if (home != 0) {
+	    HTSprintf0(&my_home_document, "%s/%s", home, PERSONAL_DEFAULT);
+	    fp = fopen(my_home_document, "r");
+	}
+
+	if (!fp) {
+	    StrAllocCopy(my_home_document, LOCAL_DEFAULT_FILE);
+	    fp = fopen(my_home_document, "r");
+	}
+	if (fp) {
+	    fclose(fp);
+	} else {
+	    CTRACE((tfp, "HTBrowse: No local home document ~/%s or %s\n",
+		    PERSONAL_DEFAULT, LOCAL_DEFAULT_FILE));
+	    FREE(my_home_document);
+	}
+    }
+#endif /* UNIX */
+    ref = HTParse((my_home_document ?
+		   my_home_document : (HTClientHost ?
+				       REMOTE_ADDRESS : LAST_RESORT)),
+		  STR_FILE_URL,
+		  PARSE_ALL_WITHOUT_ANCHOR);
+    if (my_home_document) {
+	CTRACE((tfp, "HTAccess: Using custom home page %s i.e., address %s\n",
+		my_home_document, ref));
+	FREE(my_home_document);
+    }
+    anchor = HTAnchor_findSimpleAddress(ref);
+    FREE(ref);
+    return anchor;
+}
+#endif /* NOT_USED_CODE */
diff --git a/WWW/Library/Implementation/HTAccess.h b/WWW/Library/Implementation/HTAccess.h
new file mode 100644
index 00000000..3aa9c6d9
--- /dev/null
+++ b/WWW/Library/Implementation/HTAccess.h
@@ -0,0 +1,267 @@
+/*
+ * $LynxId: HTAccess.h,v 1.20 2008/01/03 00:24:16 tom Exp $
+ *					HTAccess:  Access manager for libwww
+ *			ACCESS MANAGER
+ *
+ * This module keeps a list of valid protocol (naming scheme) specifiers with
+ * associated access code.  It allows documents to be loaded given various
+ * combinations of parameters.  New access protocols may be registered at any
+ * time.
+ *
+ * Part of the libwww library .
+ *
+ */
+#ifndef HTACCESS_H
+#define HTACCESS_H
+
+/*      Definition uses:
+*/
+#include <HTAnchor.h>
+#include <HTFormat.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern char *use_this_url_instead;
+
+    extern int redirection_attempts;
+
+/*      Return codes from load routines:
+ *
+ *      These codes may be returned by the protocol modules,
+ *      and by the HTLoad routines.
+ *      In general, positive codes are OK and negative ones are bad.
+ */
+
+/*
+
+Default Addresses
+
+   These control the home page selection.  To mess with these for normal browses is asking
+   for user confusion.
+
+ */
+#define LOGICAL_DEFAULT "WWW_HOME"	/* Defined to be the home page */
+
+#ifndef PERSONAL_DEFAULT
+#define PERSONAL_DEFAULT "WWW/default.html"	/* in home directory */
+#endif
+#ifndef LOCAL_DEFAULT_FILE
+#define LOCAL_DEFAULT_FILE "/usr/local/lib/WWW/default.html"
+#endif
+/*  If one telnets to a www access point,
+    it will look in this file for home page */
+#ifndef REMOTE_POINTER
+#define REMOTE_POINTER  "/etc/www-remote.url"	/* can't be file */
+#endif
+/* and if that fails it will use this. */
+#ifndef REMOTE_ADDRESS
+#define REMOTE_ADDRESS  "http://www.w3.org/remote.html"		/* can't be file */
+#endif
+
+/* If run from telnet daemon and no -l specified, use this file:
+*/
+#ifndef DEFAULT_LOGFILE
+#define DEFAULT_LOGFILE "/usr/adm/www-log/www-log"
+#endif
+
+/*      If the home page isn't found, use this file:
+*/
+#ifndef LAST_RESORT
+#define LAST_RESORT     "http://www.w3.org/default.html"
+#endif
+
+/*
+
+Flags which may be set to control this module
+
+ */
+#ifdef NOT
+    extern int HTDiag;		/* Flag: load source as plain text */
+#endif				/* NOT */
+    extern char *HTClientHost;	/* Name or number of telnetting host */
+    extern FILE *HTlogfile;	/* File to output one-liners to */
+    extern BOOL HTSecure;	/* Disable security holes? */
+    extern BOOL HTPermitRedir;	/* Special flag for getfile() */
+    extern HTStream *HTOutputStream;	/* For non-interactive, set this */
+    extern HTFormat HTOutputFormat;	/* To convert on load, set this */
+
+/*	Check for proxy override.			override_proxy()
+ *
+ *	Check the no_proxy environment variable to get the list
+ *	of hosts for which proxy server is not consulted.
+ *
+ *	no_proxy is a comma- or space-separated list of machine
+ *	or domain names, with optional :port part.  If no :port
+ *	part is present, it applies to all ports on that domain.
+ *
+ *  Example:
+ *          no_proxy="cern.ch,some.domain:8001"
+ *
+ *  Use "*" to override all proxy service:
+ *	     no_proxy="*"
+ */
+    extern BOOL override_proxy(const char *addr);
+
+/*
+
+Load a document from relative name
+
+  ON ENTRY,
+  relative_name           The relative address of the file to be accessed.
+  here                    The anchor of the object being searched
+
+  ON EXIT,
+  returns    YES          Success in opening file
+  NO                      Failure
+
+ */
+    extern BOOL HTLoadRelative(const char *relative_name,
+			       HTParentAnchor *here);
+
+/*
+
+Load a document from absolute name
+
+  ON ENTRY,
+  addr                    The absolute address of the document to be accessed.
+  filter_it               if YES, treat document as HTML
+
+  ON EXIT,
+  returns YES             Success in opening document
+  NO                      Failure
+
+ */
+    extern BOOL HTLoadAbsolute(const DocAddress *addr);
+
+/*
+
+Load a document from absolute name to a stream
+
+  ON ENTRY,
+  addr                    The absolute address of the document to be accessed.
+  filter_it               if YES, treat document as HTML
+
+  ON EXIT,
+  returns YES             Success in opening document
+  NO                      Failure
+
+   Note: This is equivalent to HTLoadDocument
+
+ */
+    extern BOOL HTLoadToStream(const char *addr, BOOL filter_it,
+			       HTStream *sink);
+
+/*
+
+Load if necessary, and select an anchor
+
+  ON ENTRY,
+  destination                The child or parent anchor to be loaded.
+
+  ON EXIT,
+  returns YES             Success
+  returns NO              Failure
+
+ */
+    extern BOOL HTLoadAnchor(HTAnchor * destination);
+
+/*
+
+Make a stream for Saving object back
+
+  ON ENTRY,
+  anchor                  is valid anchor which has previously been loaded
+
+  ON EXIT,
+  returns                 0 if error else a stream to save the object to.
+
+ */
+    extern HTStream *HTSaveStream(HTParentAnchor *anchor);
+
+/*
+
+Search
+
+   Performs a search on word given by the user.  Adds the search words to the end of the
+   current address and attempts to open the new address.
+
+  ON ENTRY,
+  *keywords               space-separated keyword list or similar search list
+  here                    The anchor of the object being searched
+
+ */
+    extern BOOL HTSearch(const char *keywords, HTParentAnchor *here);
+
+/*
+
+Search Given Indexname
+
+   Performs a keyword search on word given by the user.  Adds the keyword to  the end of
+   the current address and attempts to open the new address.
+
+  ON ENTRY,
+  *keywords               space-separated keyword list or similar search list
+  *indexname              is name of object search is to be done on.
+
+ */
+    extern BOOL HTSearchAbsolute(const char *keywords,
+				 char *indexname);
+
+/*
+
+Register an access method
+
+ */
+
+    typedef struct _HTProtocol {
+	const char *name;
+
+	int (*load) (const char *full_address,
+		     HTParentAnchor *anchor,
+		     HTFormat format_out,
+		     HTStream *sink);
+
+	HTStream *(*saveStream) (HTParentAnchor *anchor);
+
+    } HTProtocol;
+
+    extern BOOL HTRegisterProtocol(HTProtocol * protocol);
+
+/*
+
+Generate the anchor for the home page
+
+ */
+
+/*
+
+   As it involves file access, this should only be done once when the program first runs.
+   This is a default algorithm -- browser don't HAVE to use this.
+
+ */
+    extern HTParentAnchor *HTHomeAnchor(void);
+
+/*
+
+Return Host Name
+
+ */
+    extern const char *HTHostName(void);
+
+/*
+
+For registering protocols supported by Lynx
+
+*/
+    extern void LYRegisterLynxProtocols(void);
+
+    extern void LYUCPushAssumed(HTParentAnchor *anchor);
+    extern int LYUCPopAssumed(void);
+
+    extern BOOL using_proxy;	/* Are we using an NNTP proxy? */
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTACCESS_H */
diff --git a/WWW/Library/Implementation/HTAnchor.c b/WWW/Library/Implementation/HTAnchor.c
new file mode 100644
index 00000000..a3ebaeb7
--- /dev/null
+++ b/WWW/Library/Implementation/HTAnchor.c
@@ -0,0 +1,1468 @@
+/*
+ * $LynxId: HTAnchor.c,v 1.71 2012/02/03 01:52:50 tom Exp $
+ *
+ *	Hypertext "Anchor" Object				HTAnchor.c
+ *	==========================
+ *
+ * An anchor represents a region of a hypertext document which is linked to
+ * another anchor in the same or a different document.
+ *
+ * History
+ *
+ *	   Nov 1990  Written in Objective-C for the NeXT browser (TBL)
+ *	24-Oct-1991 (JFG), written in C, browser-independent
+ *	21-Nov-1991 (JFG), first complete version
+ *
+ *	(c) Copyright CERN 1991 - See Copyright.html
+ */
+
+#define HASH_SIZE 1001		/* Arbitrary prime.  Memory/speed tradeoff */
+
+#include <HTUtils.h>
+#include <HTAnchor.h>
+#include <HTParse.h>
+#include <HTString.h>
+#include <UCAux.h>
+#include <UCMap.h>
+
+#include <GridText.h>
+#include <LYUtils.h>
+#include <LYCharSets.h>
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+#define HASH_TYPE unsigned short
+
+#ifdef NOT_DEFINED
+/*
+ *	This is the hashing function used to determine which list in the
+ *		adult_table a parent anchor should be put in.  This is a
+ *		much simpler function than the original used.
+ */
+#define HASH_FUNCTION(cp_address) \
+	( (HASH_TYPE)strlen(cp_address) *\
+	  (HASH_TYPE)TOUPPER(*cp_address) % HASH_SIZE )
+#endif /* NOT_DEFINED */
+
+/*
+ *	This is the original function.	We'll use it again. - FM
+ */
+static HASH_TYPE HASH_FUNCTION(const char *cp_address)
+{
+    HASH_TYPE hash;
+    const unsigned char *p;
+
+    for (p = (const unsigned char *) cp_address, hash = 0; *p; p++)
+	hash = (HASH_TYPE) (hash * 3 + (*(const unsigned char *) p)) % HASH_SIZE;
+
+    return (hash);
+}
+
+typedef struct _HyperDoc Hyperdoc;
+
+#ifdef VMS
+struct _HyperDoc {
+    int junk;			/* VMS cannot handle pointers to undefined structs */
+};
+#endif /* VMS */
+
+/* Table of lists of all parents */
+static HTList adult_table[HASH_SIZE] =
+{
+    {NULL, NULL}};
+
+/*				Creation Methods
+ *				================
+ *
+ *	Do not use "new" by itself outside this module.  In order to enforce
+ *	consistency, we insist that you furnish more information about the
+ *	anchor you are creating : use newWithParent or newWithAddress.
+ */
+static HTParentAnchor0 *HTParentAnchor0_new(const char *address,
+					    unsigned hash)
+{
+    HTParentAnchor0 *newAnchor = typecalloc(HTParentAnchor0);
+
+    if (newAnchor == NULL)
+	outofmem(__FILE__, "HTParentAnchor0_new");
+
+    assert(newAnchor != NULL);
+
+    newAnchor->parent = newAnchor;	/* self */
+    StrAllocCopy(newAnchor->address, address);
+    newAnchor->adult_hash = (HASH_TYPE) hash;
+
+    return (newAnchor);
+}
+
+static HTParentAnchor *HTParentAnchor_new(HTParentAnchor0 *parent)
+{
+    HTParentAnchor *newAnchor = typecalloc(HTParentAnchor);
+
+    if (newAnchor == NULL)
+	outofmem(__FILE__, "HTParentAnchor_new");
+
+    assert(newAnchor != NULL);
+
+    newAnchor->parent = parent;	/* cross reference */
+    parent->info = newAnchor;	/* cross reference */
+    newAnchor->address = parent->address;	/* copy pointer */
+
+    newAnchor->isISMAPScript = FALSE;	/* Lynx appends ?0,0 if TRUE. - FM */
+    newAnchor->isHEAD = FALSE;	/* HEAD request if TRUE. - FM */
+    newAnchor->safe = FALSE;	/* Safe. - FM */
+    newAnchor->no_cache = FALSE;	/* no-cache? - FM */
+    newAnchor->inBASE = FALSE;	/* duplicated from HTML.c/h */
+    newAnchor->content_length = 0;	/* Content-Length. - FM */
+    return (newAnchor);
+}
+
+static HTChildAnchor *HTChildAnchor_new(HTParentAnchor0 *parent)
+{
+    HTChildAnchor *p = typecalloc(HTChildAnchor);
+
+    if (p == NULL)
+	outofmem(__FILE__, "HTChildAnchor_new");
+
+    assert(p != NULL);
+
+    p->parent = parent;		/* parent reference */
+    return p;
+}
+
+static HTChildAnchor *HText_pool_ChildAnchor_new(HTParentAnchor *parent)
+{
+    HTChildAnchor *p = (HTChildAnchor *) HText_pool_calloc((HText *) (parent->document),
+							   (unsigned) sizeof(HTChildAnchor));
+
+    if (p == NULL)
+	outofmem(__FILE__, "HText_pool_ChildAnchor_new");
+
+    assert(p != NULL);
+
+    p->parent = parent->parent;	/* parent reference */
+    return p;
+}
+
+#ifdef CASE_INSENSITIVE_ANCHORS
+/* Case insensitive string comparison */
+#define HT_EQUIV(a,b) (TOUPPER(a) == TOUPPER(b))
+#else
+/* Case sensitive string comparison */
+#define HT_EQUIV(a,b) ((a) == (b))
+#endif
+
+/*	Null-terminated string comparison
+ *	---------------------------------
+ * On entry,
+ *	s	Points to one string, null terminated
+ *	t	points to the other.
+ * On exit,
+ *	returns YES if the strings are equivalent
+ *		NO if they differ.
+ */
+static BOOL HTSEquivalent(const char *s,
+			  const char *t)
+{
+    if (s && t) {		/* Make sure they point to something */
+	for (; *s && *t; s++, t++) {
+	    if (!HT_EQUIV(*s, *t)) {
+		return (NO);
+	    }
+	}
+	return (BOOL) (HT_EQUIV(*s, *t));
+    } else {
+	return (BOOL) (s == t);	/* Two NULLs are equivalent, aren't they ? */
+    }
+}
+
+/*	Binary string comparison
+ *	------------------------
+ * On entry,
+ *	s	Points to one bstring
+ *	t	points to the other.
+ * On exit,
+ *	returns YES if the strings are equivalent
+ *		NO if they differ.
+ */
+static BOOL HTBEquivalent(const bstring *s,
+			  const bstring *t)
+{
+    if (s && t && BStrLen(s) == BStrLen(t)) {
+	int j;
+	int len = BStrLen(s);
+
+	for (j = 0; j < len; ++j) {
+	    if (!HT_EQUIV(BStrData(s)[j], BStrData(t)[j])) {
+		return (NO);
+	    }
+	}
+	return (YES);
+    } else {
+	return (BOOL) (s == t);	/* Two NULLs are equivalent, aren't they ? */
+    }
+}
+
+/*
+ * Three-way compare function
+ */
+static int compare_anchors(void *l,
+			   void *r)
+{
+    const char *a = ((HTChildAnchor *) l)->tag;
+    const char *b = ((HTChildAnchor *) r)->tag;
+
+    /* both tags are not NULL */
+
+#ifdef CASE_INSENSITIVE_ANCHORS
+    return strcasecomp(a, b);	/* Case insensitive */
+#else
+    return strcmp(a, b);	/* Case sensitive - FM */
+#endif /* CASE_INSENSITIVE_ANCHORS */
+}
+
+/*	Create new or find old sub-anchor
+ *	---------------------------------
+ *
+ *	This one is for a named child.
+ *	The parent anchor must already exist.
+ */
+static HTChildAnchor *HTAnchor_findNamedChild(HTParentAnchor0 *parent,
+					      const char *tag)
+{
+    HTChildAnchor *child;
+
+    if (parent && tag && *tag) {	/* TBL */
+	if (parent->children) {
+	    /*
+	     * Parent has children.  Search them.
+	     */
+	    HTChildAnchor sample;
+
+	    sample.tag = (char *) tag;	/* for compare_anchors() only */
+
+	    child = (HTChildAnchor *) HTBTree_search(parent->children, &sample);
+	    if (child != NULL) {
+		CTRACE((tfp,
+			"Child anchor %p of parent %p with name `%s' already exists.\n",
+			(void *) child, (void *) parent, tag));
+		return (child);
+	    }
+	} else {		/* parent doesn't have any children yet : create family */
+	    parent->children = HTBTree_new(compare_anchors);
+	}
+
+	child = HTChildAnchor_new(parent);
+	CTRACE((tfp, "HTAnchor: New Anchor %p named `%s' is child of %p\n",
+		(void *) child,
+		NonNull(tag),
+		(void *) child->parent));
+
+	StrAllocCopy(child->tag, tag);	/* should be set before HTBTree_add */
+	HTBTree_add(parent->children, child);
+	return (child);
+
+    } else {
+	CTRACE((tfp, "HTAnchor_findNamedChild called with NULL parent.\n"));
+	return (NULL);
+    }
+
+}
+
+/*
+ *	This one is for a new unnamed child being edited into an existing
+ *	document.  The parent anchor and the document must already exist.
+ *	(Just add new unnamed child).
+ */
+static HTChildAnchor *HTAnchor_addChild(HTParentAnchor *parent)
+{
+    HTChildAnchor *child;
+
+    if (!parent) {
+	CTRACE((tfp, "HTAnchor_addChild called with NULL parent.\n"));
+	return (NULL);
+    }
+
+    child = HText_pool_ChildAnchor_new(parent);
+    CTRACE((tfp, "HTAnchor: New unnamed Anchor %p is child of %p\n",
+	    (void *) child,
+	    (void *) child->parent));
+
+    child->tag = 0;
+    HTList_linkObject(&parent->children_notag, child, &child->_add_children_notag);
+
+    return (child);
+}
+
+static HTParentAnchor0 *HTAnchor_findAddress_in_adult_table(const DocAddress *newdoc);
+
+static BOOL HTAnchor_link(HTChildAnchor *child,
+			  HTAnchor * destination,
+			  HTLinkType *type);
+
+/*	Create or find a child anchor with a possible link
+ *	--------------------------------------------------
+ *
+ *	Create new anchor with a given parent and possibly
+ *	a name, and possibly a link to a _relatively_ named anchor.
+ *	(Code originally in ParseHTML.h)
+ */
+HTChildAnchor *HTAnchor_findChildAndLink(HTParentAnchor *parent,	/* May not be 0   */
+					 const char *tag,	/* May be "" or 0 */
+					 const char *href,	/* May be "" or 0 */
+					 HTLinkType *ltype)	/* May be 0       */
+{
+    HTChildAnchor *child;
+
+    CTRACE((tfp, "Entered HTAnchor_findChildAndLink:  tag=`%s',%s href=`%s'\n",
+	    NonNull(tag),
+	    (ltype == HTInternalLink) ? " (internal link)" : "",
+	    NonNull(href)));
+
+    if (tag && *tag) {
+	child = HTAnchor_findNamedChild(parent->parent, tag);
+    } else {
+	child = HTAnchor_addChild(parent);
+    }
+
+    if (href && *href) {
+	const char *fragment = NULL;
+	HTParentAnchor0 *dest;
+
+	if (ltype == HTInternalLink && *href == '#') {
+	    dest = parent->parent;
+	} else {
+	    const char *relative_to = ((parent->inBASE && *href != '#')
+				       ? parent->content_base
+				       : parent->address);
+	    DocAddress parsed_doc;
+
+	    parsed_doc.address = HTParse(href, relative_to,
+					 PARSE_ALL_WITHOUT_ANCHOR);
+
+	    parsed_doc.post_data = NULL;
+	    parsed_doc.post_content_type = NULL;
+	    if (ltype && parent->post_data && ltype == HTInternalLink) {
+		/* for internal links, find a destination with the same
+		   post data if the source of the link has post data. - kw
+		   Example: LYNXIMGMAP: */
+		parsed_doc.post_data = parent->post_data;
+		parsed_doc.post_content_type = parent->post_content_type;
+	    }
+	    parsed_doc.bookmark = NULL;
+	    parsed_doc.isHEAD = FALSE;
+	    parsed_doc.safe = FALSE;
+
+	    dest = HTAnchor_findAddress_in_adult_table(&parsed_doc);
+	    FREE(parsed_doc.address);
+	}
+
+	/*
+	 * [from HTAnchor_findAddress()]
+	 * If the address represents a sub-anchor, we load its parent (above),
+	 * then we create a named child anchor within that parent.
+	 */
+	fragment = (*href == '#') ? href + 1 : HTParseAnchor(href);
+
+	if (*fragment)
+	    dest = (HTParentAnchor0 *) HTAnchor_findNamedChild(dest, fragment);
+
+	if (tag && *tag) {
+	    if (child->dest) {	/* DUPLICATE_ANCHOR_NAME_WORKAROUND  - kw */
+		CTRACE((tfp,
+			"*** Duplicate ChildAnchor %p named `%s'",
+			(void *) child, tag));
+		if ((HTAnchor *) dest != child->dest || ltype != child->type) {
+		    CTRACE((tfp,
+			    ", different dest %p or type, creating unnamed child\n",
+			    (void *) child->dest));
+		    child = HTAnchor_addChild(parent);
+		}
+	    }
+	}
+	HTAnchor_link(child, (HTAnchor *) dest, ltype);
+    }
+    return child;
+}
+
+/*	Create new or find old parent anchor
+ *	------------------------------------
+ *
+ *	Me one is for a reference which is found in a document, and might
+ *	not be already loaded.
+ *	Note: You are not guaranteed a new anchor -- you might get an old one,
+ *	like with fonts.
+ */
+HTParentAnchor *HTAnchor_findAddress(const DocAddress *newdoc)
+{
+    /* Anchor tag specified ? */
+    const char *tag = HTParseAnchor(newdoc->address);
+
+    CTRACE((tfp, "Entered HTAnchor_findAddress\n"));
+
+    /*
+     * If the address represents a sub-anchor, we load its parent, then we
+     * create a named child anchor within that parent.
+     */
+    if (*tag) {
+	DocAddress parsed_doc;
+	HTParentAnchor0 *foundParent;
+
+	parsed_doc.address = HTParse(newdoc->address, "",
+				     PARSE_ALL_WITHOUT_ANCHOR);
+	parsed_doc.post_data = newdoc->post_data;
+	parsed_doc.post_content_type = newdoc->post_content_type;
+	parsed_doc.bookmark = newdoc->bookmark;
+	parsed_doc.isHEAD = newdoc->isHEAD;
+	parsed_doc.safe = newdoc->safe;
+
+	foundParent = HTAnchor_findAddress_in_adult_table(&parsed_doc);
+	(void) HTAnchor_findNamedChild(foundParent, tag);
+	FREE(parsed_doc.address);
+	return HTAnchor_parent((HTAnchor *) foundParent);
+    }
+    return HTAnchor_parent((HTAnchor *) HTAnchor_findAddress_in_adult_table(newdoc));
+}
+
+/*  The address has no anchor tag, for sure.
+ */
+static HTParentAnchor0 *HTAnchor_findAddress_in_adult_table(const DocAddress *newdoc)
+{
+    /*
+     * Check whether we have this node.
+     */
+    HASH_TYPE hash;
+    HTList *adults;
+    HTList *grownups;
+    HTParentAnchor0 *foundAnchor;
+    BOOL need_extra_info = (BOOL) (newdoc->post_data ||
+				   newdoc->post_content_type ||
+				   newdoc->bookmark ||
+				   newdoc->isHEAD ||
+				   newdoc->safe);
+
+    /*
+     * We need not free adult_table[] atexit - it should be perfectly empty
+     * after free'ing all HText's.  (There is an error if it is not empty at
+     * exit).  -LP
+     */
+
+    /*
+     * Select list from hash table,
+     */
+    hash = HASH_FUNCTION(newdoc->address);
+    adults = &(adult_table[hash]);
+
+    /*
+     * Search list for anchor.
+     */
+    grownups = adults;
+    while (NULL != (foundAnchor =
+		    (HTParentAnchor0 *) HTList_nextObject(grownups))) {
+	if (HTSEquivalent(foundAnchor->address, newdoc->address) &&
+
+	    ((!foundAnchor->info && !need_extra_info) ||
+	     (foundAnchor->info &&
+	      HTBEquivalent(foundAnchor->info->post_data, newdoc->post_data) &&
+	      foundAnchor->info->isHEAD == newdoc->isHEAD))) {
+	    CTRACE((tfp, "Anchor %p with address `%s' already exists.\n",
+		    (void *) foundAnchor, newdoc->address));
+	    return foundAnchor;
+	}
+    }
+
+    /*
+     * Node not found:  create new anchor.
+     */
+    foundAnchor = HTParentAnchor0_new(newdoc->address, hash);
+    CTRACE((tfp, "New anchor %p has hash %d and address `%s'\n",
+	    (void *) foundAnchor, hash, newdoc->address));
+
+    if (need_extra_info) {
+	/* rare case, create a big structure */
+	HTParentAnchor *p = HTParentAnchor_new(foundAnchor);
+
+	if (newdoc->post_data)
+	    BStrCopy(p->post_data, newdoc->post_data);
+	if (newdoc->post_content_type)
+	    StrAllocCopy(p->post_content_type,
+			 newdoc->post_content_type);
+	if (newdoc->bookmark)
+	    StrAllocCopy(p->bookmark, newdoc->bookmark);
+	p->isHEAD = newdoc->isHEAD;
+	p->safe = newdoc->safe;
+    }
+    HTList_linkObject(adults, foundAnchor, &foundAnchor->_add_adult);
+
+    return foundAnchor;
+}
+
+/*	Create new or find old named anchor - simple form
+ *	-------------------------------------------------
+ *
+ *     Like HTAnchor_findAddress, but simpler to use for simple cases.
+ *	No post data etc. can be supplied. - kw
+ */
+HTParentAnchor *HTAnchor_findSimpleAddress(const char *url)
+{
+    DocAddress urldoc;
+
+    urldoc.address = (char *) url;	/* ignore warning, it IS treated like const - kw */
+    urldoc.post_data = NULL;
+    urldoc.post_content_type = NULL;
+    urldoc.bookmark = NULL;
+    urldoc.isHEAD = FALSE;
+    urldoc.safe = FALSE;
+    return HTAnchor_findAddress(&urldoc);
+}
+
+/*	Link me Anchor to another given one
+ *	-------------------------------------
+ */
+static BOOL HTAnchor_link(HTChildAnchor *child,
+			  HTAnchor * destination,
+			  HTLinkType *type)
+{
+    if (!(child && destination))
+	return (NO);		/* Can't link to/from non-existing anchor */
+
+    CTRACE((tfp, "Linking child %p to anchor %p\n", (void *) child, (void *) destination));
+    if (child->dest) {
+	CTRACE((tfp, "*** child anchor already has destination, exiting!\n"));
+	return (NO);
+    }
+
+    child->dest = destination;
+    child->type = type;
+
+    if (child->parent != destination->parent)
+	/* link only foreign children */
+	HTList_linkObject(&destination->parent->sources, child, &child->_add_sources);
+
+    return (YES);		/* Success */
+}
+
+/*	Delete an anchor and possibly related things (auto garbage collection)
+ *	--------------------------------------------
+ *
+ *	The anchor is only deleted if the corresponding document is not loaded.
+ *	All outgoing links from children are deleted, and children are
+ *	removed from the sources lists of theirs targets.
+ *	We also try to delete the targets whose documents are not loaded.
+ *	If this anchor's sources list is empty, we delete it and its children.
+ */
+
+/*
+ *	Recursively try to delete destination anchor of this child.
+ *	In any event, this will tell destination anchor that we
+ *	no longer consider it a destination.
+ */
+static void deleteLinks(HTChildAnchor *me)
+{
+    /*
+     * Unregister me with our destination anchor's parent.
+     */
+    if (me->dest) {
+	HTParentAnchor0 *parent = me->dest->parent;
+
+	/*
+	 * Start.  Set the dest pointer to zero.
+	 */
+	me->dest = NULL;
+
+	/*
+	 * Remove me from the parent's sources so that the parent knows one
+	 * less anchor is its dest.
+	 */
+	if ((me->parent != parent) && !HTList_isEmpty(&parent->sources)) {
+	    /*
+	     * Really should only need to deregister once.
+	     */
+	    HTList_unlinkObject(&parent->sources, (void *) me);
+	}
+
+	/*
+	 * Recursive call.  Test here to avoid calling overhead.  Don't delete
+	 * if document is loaded or being loaded.
+	 */
+	if ((me->parent != parent) &&
+	    parent != NULL &&
+	    !parent->underway &&
+	    (!parent->info || !parent->info->document)) {
+	    HTAnchor_delete(parent);
+	}
+
+	/*
+	 * At this point, we haven't a destination.  Set it to be so.  Leave
+	 * the HTAtom pointed to by type up to other code to handle (reusable,
+	 * near static).
+	 */
+	me->type = NULL;
+    }
+}
+
+static void HTParentAnchor_free(HTParentAnchor *me);
+
+BOOL HTAnchor_delete(HTParentAnchor0 *me)
+{
+    /*
+     * Memory leaks fixed.
+     * 05-27-94 Lynx 2-3-1 Garrett Arch Blythe
+     */
+    HTBTElement *ele;
+    HTChildAnchor *child;
+
+    /*
+     * Do nothing if nothing to do.
+     */
+    if (!me) {
+	return (NO);
+    }
+
+    /*
+     * Don't delete if document is loaded or being loaded.
+     */
+    if (me->underway || (me->info && me->info->document)) {
+	return (NO);
+    }
+
+    /*
+     * Mark ourselves busy, so that recursive calls of this function on this
+     * HTParentAnchor0 will not free it from under our feet.  - kw
+     */
+    me->underway = TRUE;
+
+    {
+	/*
+	 * Delete all outgoing links from named children.  Do not delete named
+	 * children itself (may have incoming links).
+	 */
+	if (me->children) {
+	    ele = HTBTree_next(me->children, NULL);
+	    while (ele != NULL) {
+		child = (HTChildAnchor *) HTBTree_object(ele);
+		if (child->dest)
+		    deleteLinks(child);
+		ele = HTBTree_next(me->children, ele);
+	    }
+	}
+    }
+    me->underway = FALSE;
+
+    /*
+     * There are still incoming links to this one (we are the
+     * destination of another anchor).
+     */
+    if (!HTList_isEmpty(&me->sources)) {
+	/*
+	 * Can't delete parent, still have sources.
+	 */
+	return (NO);
+    }
+
+    /*
+     * No more incoming and outgoing links :  kill everything First, delete
+     * named children.
+     */
+    if (me->children) {
+	ele = HTBTree_next(me->children, NULL);
+	while (ele != NULL) {
+	    child = (HTChildAnchor *) HTBTree_object(ele);
+	    FREE(child->tag);
+	    FREE(child);
+	    ele = HTBTree_next(me->children, ele);
+	}
+	HTBTree_free(me->children);
+    }
+
+    /*
+     * Delete the ParentAnchor, if any.  (Document was already deleted).
+     */
+    if (me->info) {
+	HTParentAnchor_free(me->info);
+	FREE(me->info);
+    }
+
+    /*
+     * Remove ourselves from the hash table's list.
+     */
+    HTList_unlinkObject(&(adult_table[me->adult_hash]), (void *) me);
+
+    /*
+     * Free the address.
+     */
+    FREE(me->address);
+
+    /*
+     * Finally, kill the parent anchor passed in.
+     */
+    FREE(me);
+
+    return (YES);
+}
+
+/*
+ * Unnamed children (children_notag) have no sence without HText - delete them
+ * and their links if we are about to free HText.  Document currently exists. 
+ * Called within HText_free().
+ */
+void HTAnchor_delete_links(HTParentAnchor *me)
+{
+    HTList *cur;
+    HTChildAnchor *child;
+
+    /*
+     * Do nothing if nothing to do.
+     */
+    if (!me || !me->document) {
+	return;
+    }
+
+    /*
+     * Mark ourselves busy, so that recursive calls on this HTParentAnchor0
+     * will not free it from under our feet.  - kw
+     */
+    me->parent->underway = TRUE;
+
+    /*
+     * Delete all outgoing links from unnamed children.
+     */
+    if (!HTList_isEmpty(&me->children_notag)) {
+	cur = &me->children_notag;
+	while ((child =
+		(HTChildAnchor *) HTList_unlinkLastObject(cur)) != 0) {
+	    deleteLinks(child);
+	    /* child allocated in HText pool, HText_free() will free it later */
+	}
+    }
+    me->parent->underway = FALSE;
+}
+
+static void HTParentAnchor_free(HTParentAnchor *me)
+{
+    /*
+     * Delete the methods list.
+     */
+    if (me->methods) {
+	/*
+	 * Leave what the methods point to up in memory for other code (near
+	 * static stuff).
+	 */
+	HTList_delete(me->methods);
+	me->methods = NULL;
+    }
+
+    /*
+     * Free up all allocated members.
+     */
+    FREE(me->charset);
+    FREE(me->isIndexAction);
+    FREE(me->isIndexPrompt);
+    FREE(me->title);
+    FREE(me->physical);
+    BStrFree(me->post_data);
+    FREE(me->post_content_type);
+    FREE(me->bookmark);
+    FREE(me->owner);
+    FREE(me->RevTitle);
+    FREE(me->citehost);
+#ifdef USE_SOURCE_CACHE
+    HTAnchor_clearSourceCache(me);
+#endif
+    if (me->FileCache) {
+	FILE *fd;
+
+	if ((fd = fopen(me->FileCache, "r")) != NULL) {
+	    fclose(fd);
+	    remove(me->FileCache);
+	}
+	FREE(me->FileCache);
+    }
+    FREE(me->SugFname);
+    FREE(me->cache_control);
+#ifdef EXP_HTTP_HEADERS
+    HTChunkClear(&(me->http_headers));
+#endif
+    FREE(me->content_type_params);
+    FREE(me->content_type);
+    FREE(me->content_language);
+    FREE(me->content_encoding);
+    FREE(me->content_base);
+    FREE(me->content_disposition);
+    FREE(me->content_location);
+    FREE(me->content_md5);
+    FREE(me->message_id);
+    FREE(me->subject);
+    FREE(me->date);
+    FREE(me->expires);
+
+    FREE(me->last_modified);
+    FREE(me->ETag);
+    FREE(me->server);
+#ifdef USE_COLOR_STYLE
+    FREE(me->style);
+#endif
+
+    /*
+     * Original code wanted a way to clean out the HTFormat if no longer needed
+     * (ref count?).  I'll leave it alone since those HTAtom objects are a
+     * little harder to know where they are being referenced all at one time. 
+     * (near static)
+     */
+
+    FREE(me->UCStages);
+    ImageMapList_free(me->imaps);
+}
+
+#ifdef USE_SOURCE_CACHE
+void HTAnchor_clearSourceCache(HTParentAnchor *me)
+{
+    /*
+     * Clean up the source cache, if any.
+     */
+    if (me->source_cache_file) {
+	CTRACE((tfp, "SourceCache: Removing file %s\n",
+		me->source_cache_file));
+	LYRemoveTemp(me->source_cache_file);
+	FREE(me->source_cache_file);
+    }
+    if (me->source_cache_chunk) {
+	CTRACE((tfp, "SourceCache: Removing memory chunk %p\n",
+		(void *) me->source_cache_chunk));
+	HTChunkFree(me->source_cache_chunk);
+	me->source_cache_chunk = NULL;
+    }
+}
+#endif /* USE_SOURCE_CACHE */
+
+/*	Data access functions
+ *	---------------------
+ */
+HTParentAnchor *HTAnchor_parent(HTAnchor * me)
+{
+    if (!me)
+	return NULL;
+
+    if (me->parent->info)
+	return me->parent->info;
+
+    /* else: create a new structure */
+    return HTParentAnchor_new(me->parent);
+}
+
+void HTAnchor_setDocument(HTParentAnchor *me,
+			  HyperDoc *doc)
+{
+    if (me)
+	me->document = doc;
+}
+
+HyperDoc *HTAnchor_document(HTParentAnchor *me)
+{
+    return (me ? me->document : NULL);
+}
+
+char *HTAnchor_address(HTAnchor * me)
+{
+    char *addr = NULL;
+
+    if (me) {
+	if (((HTParentAnchor0 *) me == me->parent) ||
+	    ((HTParentAnchor *) me == me->parent->info) ||
+	    !((HTChildAnchor *) me)->tag) {	/* it's an adult or no tag */
+	    StrAllocCopy(addr, me->parent->address);
+	} else {		/* it's a named child */
+	    HTSprintf0(&addr, "%s#%s",
+		       me->parent->address, ((HTChildAnchor *) me)->tag);
+	}
+    }
+    return (addr);
+}
+
+void HTAnchor_setFormat(HTParentAnchor *me,
+			HTFormat form)
+{
+    if (me)
+	me->format = form;
+}
+
+HTFormat HTAnchor_format(HTParentAnchor *me)
+{
+    return (me ? me->format : NULL);
+}
+
+void HTAnchor_setIndex(HTParentAnchor *me,
+		       const char *address)
+{
+    if (me) {
+	me->isIndex = YES;
+	StrAllocCopy(me->isIndexAction, address);
+    }
+}
+
+void HTAnchor_setPrompt(HTParentAnchor *me,
+			const char *prompt)
+{
+    if (me) {
+	StrAllocCopy(me->isIndexPrompt, prompt);
+    }
+}
+
+BOOL HTAnchor_isIndex(HTParentAnchor *me)
+{
+    return (BOOL) (me
+		   ? me->isIndex
+		   : NO);
+}
+
+/*	Whether Anchor has been designated as an ISMAP link
+ *	(normally by presence of an ISMAP attribute on A or IMG) - KW
+ */
+BOOL HTAnchor_isISMAPScript(HTAnchor * me)
+{
+    return (BOOL) ((me && me->parent->info)
+		   ? me->parent->info->isISMAPScript
+		   : NO);
+}
+
+#if defined(USE_COLOR_STYLE)
+/*	Style handling.
+*/
+const char *HTAnchor_style(HTParentAnchor *me)
+{
+    return (me ? me->style : NULL);
+}
+
+void HTAnchor_setStyle(HTParentAnchor *me,
+		       const char *style)
+{
+    if (me) {
+	StrAllocCopy(me->style, style);
+    }
+}
+#endif
+
+/*	Title handling.
+*/
+const char *HTAnchor_title(HTParentAnchor *me)
+{
+    return (me ? me->title : NULL);
+}
+
+void HTAnchor_setTitle(HTParentAnchor *me,
+		       const char *title)
+{
+    int i;
+
+    if (me) {
+	if (title) {
+	    StrAllocCopy(me->title, title);
+	    for (i = 0; me->title[i]; i++) {
+		if (UCH(me->title[i]) == 1 ||
+		    UCH(me->title[i]) == 2) {
+		    me->title[i] = ' ';
+		}
+	    }
+	} else {
+	    CTRACE((tfp, "HTAnchor_setTitle: New title is NULL! "));
+	    if (me->title) {
+		CTRACE((tfp, "Old title was \"%s\".\n", me->title));
+		FREE(me->title);
+	    } else {
+		CTRACE((tfp, "Old title was NULL.\n"));
+	    }
+	}
+    }
+}
+
+void HTAnchor_appendTitle(HTParentAnchor *me,
+			  const char *title)
+{
+    int i;
+
+    if (me) {
+	StrAllocCat(me->title, title);
+	for (i = 0; me->title[i]; i++) {
+	    if (UCH(me->title[i]) == 1 ||
+		UCH(me->title[i]) == 2) {
+		me->title[i] = ' ';
+	    }
+	}
+    }
+}
+
+/*	Bookmark handling.
+*/
+const char *HTAnchor_bookmark(HTParentAnchor *me)
+{
+    return (me ? me->bookmark : NULL);
+}
+
+void HTAnchor_setBookmark(HTParentAnchor *me,
+			  const char *bookmark)
+{
+    if (me)
+	StrAllocCopy(me->bookmark, bookmark);
+}
+
+/*	Owner handling.
+*/
+const char *HTAnchor_owner(HTParentAnchor *me)
+{
+    return (me ? me->owner : NULL);
+}
+
+void HTAnchor_setOwner(HTParentAnchor *me,
+		       const char *owner)
+{
+    if (me) {
+	StrAllocCopy(me->owner, owner);
+    }
+}
+
+/*	TITLE handling in LINKs with REV="made" or REV="owner". - FM
+*/
+const char *HTAnchor_RevTitle(HTParentAnchor *me)
+{
+    return (me ? me->RevTitle : NULL);
+}
+
+void HTAnchor_setRevTitle(HTParentAnchor *me,
+			  const char *title)
+{
+    int i;
+
+    if (me) {
+	StrAllocCopy(me->RevTitle, title);
+	for (i = 0; me->RevTitle[i]; i++) {
+	    if (UCH(me->RevTitle[i]) == 1 ||
+		UCH(me->RevTitle[i]) == 2) {
+		me->RevTitle[i] = ' ';
+	    }
+	}
+    }
+}
+
+#ifndef DISABLE_BIBP
+/*	Citehost for bibp links from LINKs with REL="citehost". - RDC
+*/
+const char *HTAnchor_citehost(HTParentAnchor *me)
+{
+    return (me ? me->citehost : NULL);
+}
+
+void HTAnchor_setCitehost(HTParentAnchor *me,
+			  const char *citehost)
+{
+    if (me) {
+	StrAllocCopy(me->citehost, citehost);
+    }
+}
+#endif /* !DISABLE_BIBP */
+
+/*	Suggested filename handling. - FM
+ *	(will be loaded if we had a Content-Disposition
+ *	 header or META element with filename=name.suffix)
+ */
+const char *HTAnchor_SugFname(HTParentAnchor *me)
+{
+    return (me ? me->SugFname : NULL);
+}
+
+#ifdef EXP_HTTP_HEADERS
+/*	HTTP Headers.
+*/
+const char *HTAnchor_http_headers(HTParentAnchor *me)
+{
+    return (me ? me->http_headers.data : NULL);
+}
+#endif
+
+/*	Content-Type handling (parameter list).
+*/
+const char *HTAnchor_content_type_params(HTParentAnchor *me)
+{
+    return (me ? me->content_type_params : NULL);
+}
+
+/*	Content-Encoding handling. - FM
+ *	(will be loaded if we had a Content-Encoding
+ *	 header.)
+ */
+const char *HTAnchor_content_encoding(HTParentAnchor *me)
+{
+    return (me ? me->content_encoding : NULL);
+}
+
+/*	Content-Type handling. - FM
+*/
+const char *HTAnchor_content_type(HTParentAnchor *me)
+{
+    return (me ? me->content_type : NULL);
+}
+
+/*	Last-Modified header handling. - FM
+*/
+const char *HTAnchor_last_modified(HTParentAnchor *me)
+{
+    return (me ? me->last_modified : NULL);
+}
+
+/*	Date header handling. - FM
+*/
+const char *HTAnchor_date(HTParentAnchor *me)
+{
+    return (me ? me->date : NULL);
+}
+
+/*	Server header handling. - FM
+*/
+const char *HTAnchor_server(HTParentAnchor *me)
+{
+    return (me ? me->server : NULL);
+}
+
+/*	Safe header handling. - FM
+*/
+BOOL HTAnchor_safe(HTParentAnchor *me)
+{
+    return (BOOL) (me ? me->safe : FALSE);
+}
+
+/*	Content-Base header handling. - FM
+*/
+const char *HTAnchor_content_base(HTParentAnchor *me)
+{
+    return (me ? me->content_base : NULL);
+}
+
+/*	Content-Location header handling. - FM
+*/
+const char *HTAnchor_content_location(HTParentAnchor *me)
+{
+    return (me ? me->content_location : NULL);
+}
+
+/*	Message-ID, used for mail replies - kw
+*/
+const char *HTAnchor_messageID(HTParentAnchor *me)
+{
+    return (me ? me->message_id : NULL);
+}
+
+BOOL HTAnchor_setMessageID(HTParentAnchor *me,
+			   const char *messageid)
+{
+    if (!(me && messageid && *messageid)) {
+	return FALSE;
+    }
+    StrAllocCopy(me->message_id, messageid);
+    return TRUE;
+}
+
+/*	Subject, used for mail replies - kw
+*/
+const char *HTAnchor_subject(HTParentAnchor *me)
+{
+    return (me ? me->subject : NULL);
+}
+
+BOOL HTAnchor_setSubject(HTParentAnchor *me,
+			 const char *subject)
+{
+    if (!(me && subject && *subject)) {
+	return FALSE;
+    }
+    StrAllocCopy(me->subject, subject);
+    return TRUE;
+}
+
+/*	Manipulation of links
+ *	---------------------
+ */
+HTAnchor *HTAnchor_followLink(HTChildAnchor *me)
+{
+    return (me->dest);
+}
+
+HTAnchor *HTAnchor_followTypedLink(HTChildAnchor *me,
+				   HTLinkType *type)
+{
+    if (me->type == type)
+	return (me->dest);
+    return (NULL);		/* No link of me type */
+}
+
+/*	Methods List
+ *	------------
+ */
+HTList *HTAnchor_methods(HTParentAnchor *me)
+{
+    if (!me->methods) {
+	me->methods = HTList_new();
+    }
+    return (me->methods);
+}
+
+/*	Protocol
+ *	--------
+ */
+void *HTAnchor_protocol(HTParentAnchor *me)
+{
+    return (me->protocol);
+}
+
+void HTAnchor_setProtocol(HTParentAnchor *me,
+			  void *protocol)
+{
+    me->protocol = protocol;
+}
+
+/*	Physical Address
+ *	----------------
+ */
+char *HTAnchor_physical(HTParentAnchor *me)
+{
+    return (me->physical);
+}
+
+void HTAnchor_setPhysical(HTParentAnchor *me,
+			  char *physical)
+{
+    if (me) {
+	StrAllocCopy(me->physical, physical);
+    }
+}
+
+#ifdef DEBUG
+static void show_stages(HTParentAnchor *me, const char *tag, int which_stage)
+{
+    int j;
+
+    CTRACE((tfp, "Stages %s*%s", NonNull(me->charset), tag));
+    for (j = 0; j < UCT_STAGEMAX; j++) {
+	CTRACE((tfp, " "));
+	if (j == which_stage)
+	    CTRACE((tfp, "("));
+	CTRACE((tfp, "%d:%d:%s",
+		j,
+		me->UCStages->s[j].LYhndl,
+		NonNull(me->UCStages->s[j].C.MIMEname)));
+	if (j == which_stage)
+	    CTRACE((tfp, ")"));
+    }
+    CTRACE((tfp, "\n"));
+}
+#else
+#define show_stages(me,tag,which_stage)		/* nothing */
+#endif
+
+/*
+ *  We store charset info in the HTParentAnchor object, for several
+ *  "stages".  (See UCDefs.h)
+ *  A stream method is supposed to know what stage in the model it is.
+ *
+ *  General model	MIME	 ->  parser  ->  structured  ->  HText
+ *  e.g., text/html
+ *	from HTTP:	HTMIME.c ->  SGML.c  ->  HTML.c      ->  GridText.c
+ *     text/plain
+ *	from file:	HTFile.c ->  HTPlain.c		     ->  GridText.c
+ *
+ *  The lock/set_by is used to lock e.g. a charset set by an explicit
+ *  HTTP MIME header against overriding by a HTML META tag - the MIME
+ *  header has higher priority.  Defaults (from -assume_.. options etc.)
+ *  will not override charset explicitly given by server.
+ *
+ *  Some advantages of keeping this in the HTAnchor:
+ *  - Global variables are bad.
+ *  - Can remember a charset given by META tag when toggling to SOURCE view.
+ *  - Can remember a charset given by <A CHARSET=...> href in another doc.
+ *
+ *  We don't modify the HTParentAnchor's charset element
+ *  here, that one will only be set when explicitly given.
+ */
+LYUCcharset *HTAnchor_getUCInfoStage(HTParentAnchor *me,
+				     int which_stage)
+{
+    LYUCcharset *result = NULL;
+
+    if (me) {
+	if (!me->UCStages) {
+	    int i;
+	    int chndl = UCLYhndl_for_unspec;	/* always >= 0 */
+	    UCAnchorInfo *stages = typecalloc(UCAnchorInfo);
+
+	    if (stages == NULL)
+		outofmem(__FILE__, "HTAnchor_getUCInfoStage");
+
+	    assert(stages != NULL);
+
+	    for (i = 0; i < UCT_STAGEMAX; i++) {
+		stages->s[i].C.MIMEname = "";
+		stages->s[i].LYhndl = -1;
+	    }
+	    if (me->charset) {
+		chndl = UCGetLYhndl_byMIME(me->charset);
+		if (chndl < 0)
+		    chndl = UCLYhndl_for_unrec;
+		if (chndl < 0)
+		    /*
+		     * UCLYhndl_for_unrec not defined :-(
+		     * fallback to UCLYhndl_for_unspec which always valid.
+		     */
+		    chndl = UCLYhndl_for_unspec;	/* always >= 0 */
+	    }
+	    MemCpy(&stages->s[UCT_STAGE_MIME].C, &LYCharSet_UC[chndl],
+		   sizeof(LYUCcharset));
+
+	    stages->s[UCT_STAGE_MIME].lock = UCT_SETBY_DEFAULT;
+	    stages->s[UCT_STAGE_MIME].LYhndl = chndl;
+	    me->UCStages = stages;
+	}
+	result = (&me->UCStages->s[which_stage].C);
+	show_stages(me, "_getUCInfoStage", which_stage);
+    }
+    return (result);
+}
+
+int HTAnchor_getUCLYhndl(HTParentAnchor *me,
+			 int which_stage)
+{
+    if (me) {
+	if (!me->UCStages) {
+	    /*
+	     * This will allocate and initialize, if not yet done.
+	     */
+	    (void) HTAnchor_getUCInfoStage(me, which_stage);
+	}
+	if (me->UCStages->s[which_stage].lock > UCT_SETBY_NONE) {
+	    return (me->UCStages->s[which_stage].LYhndl);
+	}
+    }
+    return (-1);
+}
+
+#ifdef CAN_SWITCH_DISPLAY_CHARSET
+static void setup_switch_display_charset(HTParentAnchor *me, int h)
+{
+    if (!Switch_Display_Charset(h, SWITCH_DISPLAY_CHARSET_MAYBE))
+	return;
+    HTAnchor_setUCInfoStage(me, current_char_set,
+			    UCT_STAGE_HTEXT, UCT_SETBY_MIME);	/* highest priorty! */
+    HTAnchor_setUCInfoStage(me, current_char_set,
+			    UCT_STAGE_STRUCTURED, UCT_SETBY_MIME);	/* highest priorty! */
+    CTRACE((tfp,
+	    "changing UCInfoStage: HTEXT/STRUCTURED stages charset='%s'.\n",
+	    LYCharSet_UC[current_char_set].MIMEname));
+}
+#endif
+
+LYUCcharset *HTAnchor_setUCInfoStage(HTParentAnchor *me,
+				     int LYhndl,
+				     int which_stage,
+				     int set_by)
+{
+    if (me) {
+	/*
+	 * This will allocate and initialize, if not yet done.
+	 */
+	LYUCcharset *p = HTAnchor_getUCInfoStage(me, which_stage);
+
+	/*
+	 * Can we override?
+	 */
+	if (set_by >= me->UCStages->s[which_stage].lock) {
+#ifdef CAN_SWITCH_DISPLAY_CHARSET
+	    int ohandle = me->UCStages->s[which_stage].LYhndl;
+#endif
+	    me->UCStages->s[which_stage].lock = set_by;
+	    me->UCStages->s[which_stage].LYhndl = LYhndl;
+	    if (LYhndl >= 0) {
+		MemCpy(p, &LYCharSet_UC[LYhndl], sizeof(LYUCcharset));
+
+#ifdef CAN_SWITCH_DISPLAY_CHARSET
+		/* Allow a switch to a more suitable display charset */
+		if (LYhndl != ohandle && which_stage == UCT_STAGE_PARSER)
+		    setup_switch_display_charset(me, LYhndl);
+#endif
+	    } else {
+		p->UChndl = -1;
+	    }
+	    show_stages(me, "_setUCInfoStage", which_stage);
+	    return (p);
+	}
+    }
+    return (NULL);
+}
+
+LYUCcharset *HTAnchor_resetUCInfoStage(HTParentAnchor *me,
+				       int LYhndl,
+				       int which_stage,
+				       int set_by)
+{
+    LYUCcharset *result = NULL;
+    int ohandle;
+
+    if (me && me->UCStages) {
+	me->UCStages->s[which_stage].lock = set_by;
+	ohandle = me->UCStages->s[which_stage].LYhndl;
+	me->UCStages->s[which_stage].LYhndl = LYhndl;
+#ifdef CAN_SWITCH_DISPLAY_CHARSET
+	/* Allow a switch to a more suitable display charset */
+	if (LYhndl >= 0 && LYhndl != ohandle
+	    && which_stage == UCT_STAGE_PARSER)
+	    setup_switch_display_charset(me, LYhndl);
+#else
+	(void) ohandle;
+#endif
+	show_stages(me, "_resetUCInfoStage", which_stage);
+	result = (&me->UCStages->s[which_stage].C);
+    }
+    return result;
+}
+
+/*
+ *  A set_by of (-1) means use the lock value from the from_stage.
+ */
+LYUCcharset *HTAnchor_copyUCInfoStage(HTParentAnchor *me,
+				      int to_stage,
+				      int from_stage,
+				      int set_by)
+{
+    if (me) {
+	/*
+	 * This will allocate and initialize, if not yet done.
+	 */
+	LYUCcharset *p_from = HTAnchor_getUCInfoStage(me, from_stage);
+	LYUCcharset *p_to = HTAnchor_getUCInfoStage(me, to_stage);
+
+	/*
+	 * Can we override?
+	 */
+	if (set_by == -1)
+	    set_by = me->UCStages->s[from_stage].lock;
+	if (set_by == UCT_SETBY_NONE)
+	    set_by = UCT_SETBY_DEFAULT;
+	if (set_by >= me->UCStages->s[to_stage].lock) {
+#ifdef CAN_SWITCH_DISPLAY_CHARSET
+	    int ohandle = me->UCStages->s[to_stage].LYhndl;
+#endif
+	    me->UCStages->s[to_stage].lock = set_by;
+	    me->UCStages->s[to_stage].LYhndl =
+		me->UCStages->s[from_stage].LYhndl;
+#ifdef CAN_SWITCH_DISPLAY_CHARSET
+	    /* Allow a switch to a more suitable display charset */
+	    if (me->UCStages->s[to_stage].LYhndl >= 0
+		&& me->UCStages->s[to_stage].LYhndl != ohandle
+		&& to_stage == UCT_STAGE_PARSER)
+		setup_switch_display_charset(me,
+					     me->UCStages->s[to_stage].LYhndl);
+#endif
+	    if (p_to != p_from)
+		MemCpy(p_to, p_from, sizeof(LYUCcharset));
+
+	    return (p_to);
+	}
+    }
+    return (NULL);
+}
diff --git a/WWW/Library/Implementation/HTAnchor.h b/WWW/Library/Implementation/HTAnchor.h
new file mode 100644
index 00000000..43b64b90
--- /dev/null
+++ b/WWW/Library/Implementation/HTAnchor.h
@@ -0,0 +1,408 @@
+/*
+ * $LynxId: HTAnchor.h,v 1.34 2010/06/17 00:13:37 tom Exp $
+ *
+ *	Hypertext "Anchor" Object				     HTAnchor.h
+ *	==========================
+ *
+ *	An anchor represents a region of a hypertext document which is linked
+ *	to another anchor in the same or a different document.
+ */
+
+#ifndef HTANCHOR_H
+#define HTANCHOR_H
+
+/* Version 0 (TBL) written in Objective-C for the NeXT browser */
+/* Version 1 of 24-Oct-1991 (JFG), written in C, browser-independent */
+
+#include <HTList.h>
+#include <HTBTree.h>
+#include <HTChunk.h>
+#include <HTAtom.h>
+#include <UCDefs.h>
+
+typedef struct _HyperDoc HyperDoc;	/* Ready for forward references */
+typedef struct _HTAnchor HTAnchor;
+typedef struct _HTParentAnchor HTParentAnchor;
+typedef struct _HTParentAnchor0 HTParentAnchor0;
+
+#include <HTFormat.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    struct _HTAnchor {
+	/* Generic anchor */
+	HTParentAnchor0 *parent;	/* Parent of this anchor (self for adults) */
+    };
+
+#define HASH_TYPE unsigned short
+
+    struct _HTParentAnchor0 {	/* One for adult_table,
+				 * generally not used outside HTAnchor.c */
+	/* Common part from the generic anchor structure */
+	HTParentAnchor0 *parent;	/* (self) */
+
+	/* ParentAnchor0-specific information */
+	char *address;		/* Absolute address of this node */
+	HTParentAnchor *info;	/* additional info, allocated on demand */
+
+	HTBTree *children;	/* Subanchors <a name="tag">, sorted by tag */
+	HTList sources;		/* List of anchors pointing to this, if any */
+
+	HTList _add_adult;	/* - just a memory for list entry:) */
+	HASH_TYPE adult_hash;	/* adult list number */
+	BOOL underway;		/* Document about to be attached to it */
+    };
+
+    /*
+     *  Separated from the above to save memory:  allocated on demand,
+     *  it is nearly 1:1 to HText (well, sometimes without HText...),
+     *  available for SGML, HTML, and HText stages.
+     *  [being precise, we currently allocate it before HTLoadDocument(),
+     *  in HTAnchor_findAddress() and HTAnchor_parent()].
+     */
+    struct _HTParentAnchor {
+	/* Common part from the generic anchor structure */
+	HTParentAnchor0 *parent;	/* Parent of this anchor */
+
+	/* ParentAnchor-specific information */
+	HTList children_notag;	/* Subanchors <a href=...>, tag is NULL */
+	HyperDoc *document;	/* The document within which this is an anchor */
+
+	char *address;		/* parent->address, a pointer */
+	bstring *post_data;	/* Posting data */
+	char *post_content_type;	/* Type of post data */
+	char *bookmark;		/* Bookmark filename */
+	HTFormat format;	/* Pointer to node format descriptor */
+	char *charset;		/* Pointer to character set (kludge, for now */
+	BOOL isIndex;		/* Acceptance of a keyword search */
+	char *isIndexAction;	/* URL of isIndex server */
+	char *isIndexPrompt;	/* Prompt for isIndex query */
+	char *title;		/* Title of document */
+	char *owner;		/* Owner of document */
+	char *RevTitle;		/* TITLE in REV="made" or REV="owner" LINK */
+	char *citehost;		/* Citehost from REL="citehost" LINK */
+#ifdef USE_COLOR_STYLE
+	char *style;
+#endif
+
+	HTList *methods;	/* Methods available as HTAtoms */
+	void *protocol;		/* Protocol object */
+	char *physical;		/* Physical address */
+	BOOL isISMAPScript;	/* Script for clickable image map */
+	BOOL isHEAD;		/* Document is headers from a HEAD request */
+	BOOL safe;		/* Safe */
+#ifdef USE_SOURCE_CACHE
+	char *source_cache_file;
+	HTChunk *source_cache_chunk;
+#endif
+	char *FileCache;	/* Path to a disk-cached copy (see src/HTFWriter.c) */
+	char *SugFname;		/* Suggested filename */
+	char *cache_control;	/* Cache-Control */
+	BOOL no_cache;		/* Cache-Control, Pragma or META "no-cache"? */
+	BOOL inBASE;		/* duplicated from HTStructured (HTML.c/h) */
+#ifdef EXP_HTTP_HEADERS
+	HTChunk http_headers;
+#endif
+	char *content_type_params;	/* Content-Type (with parameters if any) */
+	char *content_type;	/* Content-Type */
+	char *content_language;	/* Content-Language */
+	char *content_encoding;	/* Compression algorithm */
+	char *content_base;	/* Content-Base */
+	char *content_disposition;	/* Content-Disposition */
+	char *content_location;	/* Content-Location */
+	char *content_md5;	/* Content-MD5 */
+	char *message_id;	/* Message-ID */
+	char *subject;		/* Subject */
+	long content_length;	/* Content-Length */
+	char *date;		/* Date */
+	char *expires;		/* Expires */
+	char *last_modified;	/* Last-Modified */
+	char *ETag;		/* ETag (HTTP1.1 cache validator) */
+	char *server;		/* Server */
+	UCAnchorInfo *UCStages;	/* chartrans stages */
+	HTList *imaps;		/* client side image maps */
+    };
+
+    typedef HTAtom HTLinkType;
+
+    typedef struct {
+	/* Common part from the generic anchor structure */
+	HTParentAnchor0 *parent;	/* Parent of this anchor */
+
+	/* ChildAnchor-specific information */
+	char *tag;		/* #fragment,  relative to the parent */
+
+	HTAnchor *dest;		/* The anchor to which this leads */
+	HTLinkType *type;	/* Semantics of this link */
+
+	HTList _add_children_notag;	/* - just a memory for list entry:) */
+	HTList _add_sources;	/* - just a memory for list entry:) */
+    } HTChildAnchor;
+
+    /*
+     *  DocAddress structure is used for loading an absolute anchor with all
+     *  needed information including posting data and post content type.
+     */
+    typedef struct _DocAddress {
+	char *address;
+	bstring *post_data;
+	char *post_content_type;
+	char *bookmark;
+	BOOL isHEAD;
+	BOOL safe;
+    } DocAddress;
+
+    /* "internal" means "within the same document, with certainty". */
+    extern HTLinkType *HTInternalLink;
+
+    /* Create or find a child anchor with a possible link
+     * --------------------------------------------------
+     *
+     * Create new anchor with a given parent and possibly
+     * a name, and possibly a link to a _relatively_ named anchor.
+     * (Code originally in ParseHTML.h)
+     */
+    extern HTChildAnchor *HTAnchor_findChildAndLink(HTParentAnchor *parent,	/* May not be 0 */
+						    const char *tag,	/* May be "" or 0 */
+						    const char *href,	/* May be "" or 0 */
+						    HTLinkType *ltype);		/* May be 0 */
+
+    /* Create new or find old parent anchor
+     * ------------------------------------
+     *
+     * This one is for a reference which is found in a document, and might
+     * not be already loaded.
+     * Note: You are not guaranteed a new anchor -- you might get an old one,
+     * like with fonts.
+     */
+    extern HTParentAnchor *HTAnchor_findAddress(const DocAddress *address);
+
+    /* Create new or find old named anchor - simple form
+     * -------------------------------------------------
+     *
+     * Like the previous one, but simpler to use for simple cases.
+     * No post data etc.  can be supplied.  - kw
+     */
+    extern HTParentAnchor *HTAnchor_findSimpleAddress(const char *url);
+
+    /* Delete an anchor and possibly related things (auto garbage collection)
+     * --------------------------------------------
+     *
+     * The anchor is only deleted if the corresponding document is not loaded.
+     * All outgoing links from children are deleted, and children are
+     * removed from the sources lists of their targets.
+     * We also try to delete the targets whose documents are not loaded.
+     * If this anchor's sources list is empty, we delete it and its children.
+     */
+    extern BOOL HTAnchor_delete(HTParentAnchor0 *me);
+
+    /*
+     * Unnamed children (children_notag) have no sense without HText -
+     * delete them and their links if we are about to free HText.
+     * Document currently exists.  Called within HText_free().
+     */
+    extern void HTAnchor_delete_links(HTParentAnchor *me);
+
+#ifdef USE_SOURCE_CACHE
+    extern void HTAnchor_clearSourceCache(HTParentAnchor *me);
+#endif
+
+    /* Data access functions
+     * ---------------------
+     */
+    extern HTParentAnchor *HTAnchor_parent(HTAnchor * me);
+
+    extern void HTAnchor_setDocument(HTParentAnchor *me,
+				     HyperDoc *doc);
+
+    extern HyperDoc *HTAnchor_document(HTParentAnchor *me);
+
+    /* Returns the full URI of the anchor, child or parent
+     * as a malloc'd string to be freed by the caller.
+     */
+    extern char *HTAnchor_address(HTAnchor * me);
+
+    extern void HTAnchor_setFormat(HTParentAnchor *me,
+				   HTFormat form);
+
+    extern HTFormat HTAnchor_format(HTParentAnchor *me);
+
+    extern void HTAnchor_setIndex(HTParentAnchor *me,
+				  const char *address);
+
+    extern void HTAnchor_setPrompt(HTParentAnchor *me,
+				   const char *prompt);
+
+    extern BOOL HTAnchor_isIndex(HTParentAnchor *me);
+
+    extern BOOL HTAnchor_isISMAPScript(HTAnchor * me);
+
+#if defined(USE_COLOR_STYLE)
+    extern const char *HTAnchor_style(HTParentAnchor *me);
+
+    extern void HTAnchor_setStyle(HTParentAnchor *me,
+				  const char *style);
+#endif
+
+    /* Title handling.
+     */
+    extern const char *HTAnchor_title(HTParentAnchor *me);
+
+    extern void HTAnchor_setTitle(HTParentAnchor *me,
+				  const char *title);
+
+    extern void HTAnchor_appendTitle(HTParentAnchor *me,
+				     const char *title);
+
+    /* Bookmark handling.
+     */
+    extern const char *HTAnchor_bookmark(HTParentAnchor *me);
+
+    extern void HTAnchor_setBookmark(HTParentAnchor *me,
+				     const char *bookmark);
+
+    /* Owner handling.
+     */
+    extern const char *HTAnchor_owner(HTParentAnchor *me);
+
+    extern void HTAnchor_setOwner(HTParentAnchor *me,
+				  const char *owner);
+
+    /* TITLE handling in LINKs with REV="made" or REV="owner".  - FM
+     */
+    extern const char *HTAnchor_RevTitle(HTParentAnchor *me);
+
+    extern void HTAnchor_setRevTitle(HTParentAnchor *me,
+				     const char *title);
+
+    /* Citehost for bibp links from LINKs with REL="citehost".  - RDC
+     */
+    extern const char *HTAnchor_citehost(HTParentAnchor *me);
+
+    extern void HTAnchor_setCitehost(HTParentAnchor *me,
+				     const char *citehost);
+
+    /* Suggested filename handling.  - FM
+     * (will be loaded if we had a Content-Disposition
+     * header or META element with filename=name.suffix)
+     */
+    extern const char *HTAnchor_SugFname(HTParentAnchor *me);
+
+    /* HTTP Headers.
+     */
+    extern const char *HTAnchor_http_headers(HTParentAnchor *me);
+
+    /* Content-Type handling (parameter list).
+     */
+    extern const char *HTAnchor_content_type_params(HTParentAnchor *me);
+
+    /* Content-Type handling.  - FM
+     */
+    extern const char *HTAnchor_content_type(HTParentAnchor *me);
+
+    /* Content-Encoding handling.  - FM
+     * (will be loaded if we had a Content-Encoding
+     * header.)
+     */
+    extern const char *HTAnchor_content_encoding(HTParentAnchor *me);
+
+    /* Last-Modified header handling.  - FM
+     */
+    extern const char *HTAnchor_last_modified(HTParentAnchor *me);
+
+    /* Date header handling.  - FM
+     */
+    extern const char *HTAnchor_date(HTParentAnchor *me);
+
+    /* Server header handling.  - FM
+     */
+    extern const char *HTAnchor_server(HTParentAnchor *me);
+
+    /* Safe header handling.  - FM
+     */
+    extern BOOL HTAnchor_safe(HTParentAnchor *me);
+
+    /* Content-Base header handling.  - FM
+     */
+    extern const char *HTAnchor_content_base(HTParentAnchor *me);
+
+    /* Content-Location header handling.  - FM
+     */
+    extern const char *HTAnchor_content_location(HTParentAnchor *me);
+
+    /* Message-ID, used for mail replies - kw
+     */
+    extern const char *HTAnchor_messageID(HTParentAnchor *me);
+
+    extern BOOL HTAnchor_setMessageID(HTParentAnchor *me,
+				      const char *messageid);
+
+    /* Subject, used for mail replies - kw
+     */
+    extern const char *HTAnchor_subject(HTParentAnchor *me);
+
+    extern BOOL HTAnchor_setSubject(HTParentAnchor *me,
+				    const char *subject);
+
+    /* Manipulation of links
+     * ---------------------
+     */
+    extern HTAnchor *HTAnchor_followLink(HTChildAnchor *me);
+
+    extern HTAnchor *HTAnchor_followTypedLink(HTChildAnchor *me,
+					      HTLinkType *type);
+
+    /* Read and write methods
+     * ----------------------
+     */
+    extern HTList *HTAnchor_methods(HTParentAnchor *me);
+
+    /* Protocol
+     * --------
+     */
+    extern void *HTAnchor_protocol(HTParentAnchor *me);
+
+    extern void HTAnchor_setProtocol(HTParentAnchor *me,
+				     void *protocol);
+
+    /* Physical address
+     * ----------------
+     */
+    extern char *HTAnchor_physical(HTParentAnchor *me);
+
+    extern void HTAnchor_setPhysical(HTParentAnchor *me,
+				     char *protocol);
+
+    extern LYUCcharset *HTAnchor_getUCInfoStage(HTParentAnchor *me,
+						int which_stage);
+
+    extern int HTAnchor_getUCLYhndl(HTParentAnchor *me,
+				    int which_stage);
+
+    extern LYUCcharset *HTAnchor_setUCInfoStage(HTParentAnchor *me,
+						int LYhndl,
+						int which_stage,
+						int set_by);
+
+    extern LYUCcharset *HTAnchor_setUCInfoStage(HTParentAnchor *me,
+						int LYhndl,
+						int which_stage,
+						int set_by);
+
+    extern LYUCcharset *HTAnchor_resetUCInfoStage(HTParentAnchor *me,
+						  int LYhndl,
+						  int which_stage,
+						  int set_by);
+
+    extern LYUCcharset *HTAnchor_copyUCInfoStage(HTParentAnchor *me,
+						 int to_stage,
+						 int from_stage,
+						 int set_by);
+
+    extern void ImageMapList_free(HTList *list);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTANCHOR_H */
diff --git a/WWW/Library/Implementation/HTAssoc.c b/WWW/Library/Implementation/HTAssoc.c
new file mode 100644
index 00000000..22c1126c
--- /dev/null
+++ b/WWW/Library/Implementation/HTAssoc.c
@@ -0,0 +1,84 @@
+/*
+ * $LynxId: HTAssoc.c,v 1.10 2010/04/29 09:34:03 tom Exp $
+ *
+ * MODULE							HTAssoc.c
+ *	    ASSOCIATION LIST FOR STORING NAME-VALUE PAIRS.
+ *	    NAMES NOT CASE SENSITIVE, AND ONLY COMMON LENGTH
+ *	    IS CHECKED (allows abbreviations; well, length is
+ *	    taken from lookup-up name, so if table contains
+ *	    a shorter abbrev it is not found).
+ * AUTHORS:
+ *	AL	Ari Luotonen	luotonen@dxcern.cern.ch
+ *
+ * HISTORY:
+ *
+ *
+ * BUGS:
+ *
+ *
+ */
+
+#include <HTUtils.h>
+
+#include <HTAssoc.h>
+
+#include <LYLeaks.h>
+
+HTAssocList *HTAssocList_new(void)
+{
+    return HTList_new();
+}
+
+void HTAssocList_delete(HTAssocList *alist)
+{
+    if (alist) {
+	HTAssocList *cur = alist;
+	HTAssoc *assoc;
+
+	while (NULL != (assoc = (HTAssoc *) HTList_nextObject(cur))) {
+	    FREE(assoc->name);
+	    FREE(assoc->value);
+	    FREE(assoc);
+	}
+	HTList_delete(alist);
+	alist = NULL;
+    }
+}
+
+void HTAssocList_add(HTAssocList *alist,
+		     const char *name,
+		     const char *value)
+{
+    HTAssoc *assoc;
+
+    if (alist) {
+	if (!(assoc = (HTAssoc *) malloc(sizeof(HTAssoc))))
+	      outofmem(__FILE__, "HTAssoc_add");
+
+	assert(assoc != NULL);
+
+	assoc->name = NULL;
+	assoc->value = NULL;
+
+	if (name)
+	    StrAllocCopy(assoc->name, name);
+	if (value)
+	    StrAllocCopy(assoc->value, value);
+	HTList_addObject(alist, (void *) assoc);
+    } else {
+	CTRACE((tfp, "HTAssoc_add: ERROR: assoc list NULL!!\n"));
+    }
+}
+
+char *HTAssocList_lookup(HTAssocList *alist,
+			 const char *name)
+{
+    HTAssocList *cur = alist;
+    HTAssoc *assoc;
+
+    while (NULL != (assoc = (HTAssoc *) HTList_nextObject(cur))) {
+	if (!strncasecomp(assoc->name, name, (int) strlen(name)))
+	    return assoc->value;
+    }
+    return NULL;
+}
diff --git a/WWW/Library/Implementation/HTAssoc.h b/WWW/Library/Implementation/HTAssoc.h
new file mode 100644
index 00000000..327809c2
--- /dev/null
+++ b/WWW/Library/Implementation/HTAssoc.h
@@ -0,0 +1,35 @@
+/*                       ASSOCIATION LIST FOR STORING NAME-VALUE PAIRS
+
+   Lookups from association list are not case-sensitive.
+
+ */
+
+#ifndef HTASSOC_H
+#define HTASSOC_H
+
+#include <HTList.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    typedef HTList HTAssocList;
+
+    typedef struct {
+	char *name;
+	char *value;
+    } HTAssoc;
+
+    extern HTAssocList *HTAssocList_new(void);
+    extern void HTAssocList_delete(HTAssocList *alist);
+
+    extern void HTAssocList_add(HTAssocList *alist,
+				const char *name,
+				const char *value);
+
+    extern char *HTAssocList_lookup(HTAssocList *alist,
+				    const char *name);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* not HTASSOC_H */
diff --git a/WWW/Library/Implementation/HTAtom.c b/WWW/Library/Implementation/HTAtom.c
new file mode 100644
index 00000000..d01455ca
--- /dev/null
+++ b/WWW/Library/Implementation/HTAtom.c
@@ -0,0 +1,178 @@
+/*
+ * $LynxId: HTAtom.c,v 1.18 2010/09/25 11:43:12 tom Exp $
+ *
+ *			Atoms: Names to numbers			HTAtom.c
+ *			=======================
+ *
+ *	Atoms are names which are given representative pointer values
+ *	so that they can be stored more efficiently, and comparisons
+ *	for equality done more efficiently.
+ *
+ *	Atoms are kept in a hash table consisting of an array of linked lists.
+ *
+ * Authors:
+ *	TBL	Tim Berners-Lee, WorldWideWeb project, CERN
+ *	(c) Copyright CERN 1991 - See Copyright.html
+ *
+ */
+
+#include <HTUtils.h>
+
+#define HASH_SIZE	101	/* Tunable */
+#include <HTAtom.h>
+
+#include <HTList.h>
+
+#include <LYexit.h>
+#include <LYLeaks.h>
+
+static HTAtom *hash_table[HASH_SIZE];
+static BOOL initialised = NO;
+
+/*
+ *	To free off all atoms.
+ */
+#ifdef LY_FIND_LEAKS
+static void free_atoms(void);
+#endif
+
+/*
+ *	Alternate hashing function.
+ */
+#define HASH_FUNCTION(cp_hash) ((strlen(cp_hash) * UCH(*cp_hash)) % HASH_SIZE)
+
+HTAtom *HTAtom_for(const char *string)
+{
+    size_t hash;
+    HTAtom *a;
+
+    /* First time around, clear hash table
+     */
+    /*
+     * Memory leak fixed.
+     * 05-29-94 Lynx 2-3-1 Garrett Arch Blythe
+     */
+    if (!initialised) {
+	int i;
+
+	for (i = 0; i < HASH_SIZE; i++)
+	    hash_table[i] = (HTAtom *) 0;
+	initialised = YES;
+#ifdef LY_FIND_LEAKS
+	atexit(free_atoms);
+#endif
+    }
+
+    /*          Generate hash function
+     */
+    hash = HASH_FUNCTION(string);
+
+    /*          Search for the string in the list
+     */
+    for (a = hash_table[hash]; a; a = a->next) {
+	if (0 == strcasecomp(a->name, string)) {
+	    /* CTRACE((tfp, "HTAtom: Old atom %p for `%s'\n", a, string)); */
+	    return a;		/* Found: return it */
+	}
+    }
+
+    /*          Generate a new entry
+     */
+    a = (HTAtom *) malloc(sizeof(*a));
+    if (a == NULL)
+	outofmem(__FILE__, "HTAtom_for");
+
+    assert(a != NULL);
+
+    a->name = (char *) malloc(strlen(string) + 1);
+    if (a->name == NULL)
+	outofmem(__FILE__, "HTAtom_for");
+
+    assert(a->name != NULL);
+
+    strcpy(a->name, string);
+    a->next = hash_table[hash];	/* Put onto the head of list */
+    hash_table[hash] = a;
+#ifdef NOT_DEFINED
+    CTRACE((tfp, "HTAtom: New atom %p for `%s'\n", a, string));
+#endif /* NOT_DEFINED */
+    return a;
+}
+
+#ifdef LY_FIND_LEAKS
+/*
+ *	Purpose:	Free off all atoms.
+ *	Arguments:	void
+ *	Return Value:	void
+ *	Remarks/Portability/Dependencies/Restrictions:
+ *		To be used at program exit.
+ *	Revision History:
+ *		05-29-94	created Lynx 2-3-1 Garrett Arch Blythe
+ */
+static void free_atoms(void)
+{
+    auto int i_counter;
+    HTAtom *HTAp_freeme;
+
+    /*
+     * Loop through all lists of atoms.
+     */
+    for (i_counter = 0; i_counter < HASH_SIZE; i_counter++) {
+	/*
+	 * Loop through the list.
+	 */
+	while (hash_table[i_counter] != NULL) {
+	    /*
+	     * Free off atoms and any members.
+	     */
+	    HTAp_freeme = hash_table[i_counter];
+	    hash_table[i_counter] = HTAp_freeme->next;
+	    FREE(HTAp_freeme->name);
+	    FREE(HTAp_freeme);
+	}
+    }
+}
+#endif /* LY_FIND_LEAKS */
+
+static BOOL mime_match(const char *name,
+		       const char *templ)
+{
+    if (name && templ) {
+	static char *n1 = NULL;
+	static char *t1 = NULL;
+	char *n2;
+	char *t2;
+
+	StrAllocCopy(n1, name);	/* These also free the ones */
+	StrAllocCopy(t1, templ);	/* from previous call.  */
+
+	if (!(n2 = strchr(n1, '/')) || !(t2 = strchr(t1, '/')))
+	    return NO;
+
+	*(n2++) = (char) 0;
+	*(t2++) = (char) 0;
+
+	if ((0 == strcmp(t1, "*") || 0 == strcmp(t1, n1)) &&
+	    (0 == strcmp(t2, "*") || 0 == strcmp(t2, n2)))
+	    return YES;
+    }
+    return NO;
+}
+
+HTList *HTAtom_templateMatches(const char *templ)
+{
+    HTList *matches = HTList_new();
+
+    if (initialised && templ) {
+	int i;
+	HTAtom *cur;
+
+	for (i = 0; i < HASH_SIZE; i++) {
+	    for (cur = hash_table[i]; cur; cur = cur->next) {
+		if (mime_match(cur->name, templ))
+		    HTList_addObject(matches, (void *) cur);
+	    }
+	}
+    }
+    return matches;
+}
diff --git a/WWW/Library/Implementation/HTAtom.h b/WWW/Library/Implementation/HTAtom.h
new file mode 100644
index 00000000..4125d31b
--- /dev/null
+++ b/WWW/Library/Implementation/HTAtom.h
@@ -0,0 +1,54 @@
+/*  */
+
+/*                      Atoms: Names to numbers                 HTAtom.h
+ *                      =======================
+ *
+ *      Atoms are names which are given representative pointer values
+ *      so that they can be stored more efficiently, and compaisons
+ *      for equality done more efficiently.
+ *
+ *      HTAtom_for(string) returns a representative value such that it
+ *      will always (within one run of the program) return the same
+ *      value for the same given string.
+ *
+ * Authors:
+ *      TBL     Tim Berners-Lee, WorldWideWeb project, CERN
+ *
+ *      (c) Copyright CERN 1991 - See Copyright.html
+ *
+ */
+
+#ifndef HTATOM_H
+#define HTATOM_H
+
+#include <HTList.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    typedef struct _HTAtom HTAtom;
+
+    struct _HTAtom {
+	HTAtom *next;
+	char *name;
+    };				/* struct _HTAtom */
+
+    extern HTAtom *HTAtom_for(const char *string);
+    extern HTList *HTAtom_templateMatches(const char *templ);
+
+#define HTAtom_name(a) ((a)->name)
+
+/*
+
+The HTFormat type
+
+   We use the HTAtom object for holding representations.  This allows faster manipulation
+   (comparison and copying) that if we stayed with strings.
+
+ */
+    typedef HTAtom *HTFormat;
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTATOM_H */
diff --git a/WWW/Library/Implementation/HTBTree.c b/WWW/Library/Implementation/HTBTree.c
new file mode 100644
index 00000000..3a76550e
--- /dev/null
+++ b/WWW/Library/Implementation/HTBTree.c
@@ -0,0 +1,687 @@
+/*                  Binary Tree for sorting things
+ *                  ==============================
+ *                      Author: Arthur Secret
+ *
+ *       4 March 94: Bug fixed in the balancing procedure
+ *
+ */
+
+#include <HTUtils.h>
+#include <HTBTree.h>
+
+#define MAXIMUM(a,b) ((a)>(b)?(a):(b))
+
+#include <LYLeaks.h>
+
+/*********************************************************
+ * This function returns an HTBTree with memory allocated
+ * for it when given a mean to compare things
+ */
+HTBTree *HTBTree_new(HTComparer comp)
+{
+    HTBTree *tree = typeMalloc(HTBTree);
+
+    if (tree == NULL)
+	outofmem(__FILE__, "HTBTree_new");
+
+    assert(tree != NULL);
+
+    tree->compare = comp;
+    tree->top = NULL;
+
+    return tree;
+}
+
+/*********************************************************
+ * This void will free the memory allocated for one element
+ */
+static void HTBTElement_free(HTBTElement *element)
+{
+    if (element) {
+	if (element->left != NULL)
+	    HTBTElement_free(element->left);
+	if (element->right != NULL)
+	    HTBTElement_free(element->right);
+	FREE(element);
+    }
+}
+
+/*************************************************************
+ * This void will free the memory allocated for the whole tree
+ */
+void HTBTree_free(HTBTree *tree)
+{
+    HTBTElement_free(tree->top);
+    FREE(tree);
+}
+
+/*********************************************************
+ * This void will free the memory allocated for one element
+ */
+static void HTBTElementAndObject_free(HTBTElement *element)
+{
+    if (element) {		/* Just in case nothing was in the tree anyway */
+	if (element->left != NULL)
+	    HTBTElementAndObject_free(element->left);
+	if (element->right != NULL)
+	    HTBTElementAndObject_free(element->right);
+	FREE(element->object);
+	FREE(element);
+    }
+}
+
+/*************************************************************
+ * This void will free the memory allocated for the whole tree
+ */
+void HTBTreeAndObject_free(HTBTree *tree)
+{
+    HTBTElementAndObject_free(tree->top);
+    FREE(tree);
+}
+
+/*********************************************************************
+ * Returns a pointer to equivalent object in a tree or NULL if none.
+ */
+void *HTBTree_search(HTBTree *tree,
+		     void *object)
+{
+    HTBTElement *cur = tree->top;
+    int res;
+
+    while (cur != NULL) {
+	res = tree->compare(object, cur->object);
+
+	if (res == 0)
+	    return cur->object;
+	else if (res < 0)
+	    cur = cur->left;
+	else if (res > 0)
+	    cur = cur->right;
+    }
+    return NULL;
+}
+
+/*********************************************************************
+ * This void is the core of HTBTree.c . It will
+ *       1/ add a new element to the tree at the right place
+ *		so that the tree remains sorted
+ *       2/ balance the tree to be as fast as possible when reading it
+ */
+void HTBTree_add(HTBTree *tree,
+		 void *object)
+{
+    HTBTElement *father_of_element;
+    HTBTElement *added_element;
+    HTBTElement *forefather_of_element;
+    HTBTElement *father_of_forefather;
+    BOOL father_found, top_found;
+    int depth, depth2, corrections;
+
+    /* father_of_element is a pointer to the structure that is the father of
+     * the new object "object".  added_element is a pointer to the structure
+     * that contains or will contain the new object "object". 
+     * father_of_forefather and forefather_of_element are pointers that are
+     * used to modify the depths of upper elements, when needed.
+     *
+     * father_found indicates by a value NO when the future father of "object"
+     * is found.  top_found indicates by a value NO when, in case of a
+     * difference of depths < 2, the top of the tree is encountered and forbids
+     * any further try to balance the tree.  corrections is an integer used to
+     * avoid infinite loops in cases such as:
+     *
+     *             3                        3
+     *          4                              4
+     *           5                            5
+     *
+     * 3 is used here to show that it need not be the top of the tree.
+     */
+
+    /*
+     * 1/ Adding of the element to the binary tree
+     */
+
+    if (tree->top == NULL) {
+	tree->top = typeMalloc(HTBTElement);
+
+	if (tree->top == NULL)
+	    outofmem(__FILE__, "HTBTree_add");
+
+	assert(tree->top != NULL);
+
+	tree->top->up = NULL;
+	tree->top->object = object;
+	tree->top->left = NULL;
+	tree->top->left_depth = 0;
+	tree->top->right = NULL;
+	tree->top->right_depth = 0;
+    } else {
+	father_found = YES;
+	father_of_element = tree->top;
+	added_element = NULL;
+	father_of_forefather = NULL;
+	forefather_of_element = NULL;
+	while (father_found) {
+	    int res = tree->compare(object, father_of_element->object);
+
+	    if (res < 0) {
+		if (father_of_element->left != NULL)
+		    father_of_element = father_of_element->left;
+		else {
+		    father_found = NO;
+		    father_of_element->left = typeMalloc(HTBTElement);
+
+		    if (father_of_element->left == NULL)
+			outofmem(__FILE__, "HTBTree_add");
+
+		    assert(father_of_element->left != NULL);
+
+		    added_element = father_of_element->left;
+		    added_element->up = father_of_element;
+		    added_element->object = object;
+		    added_element->left = NULL;
+		    added_element->left_depth = 0;
+		    added_element->right = NULL;
+		    added_element->right_depth = 0;
+		}
+	    } else {		/* res >= 0 */
+		if (father_of_element->right != NULL) {
+		    father_of_element = father_of_element->right;
+		} else {
+		    father_found = NO;
+		    father_of_element->right = typeMalloc(HTBTElement);
+
+		    if (father_of_element->right == NULL)
+			outofmem(__FILE__, "HTBTree_add");
+		    assert(father_of_element->right != NULL);
+
+		    added_element = father_of_element->right;
+		    added_element->up = father_of_element;
+		    added_element->object = object;
+		    added_element->left = NULL;
+		    added_element->left_depth = 0;
+		    added_element->right = NULL;
+		    added_element->right_depth = 0;
+		}
+	    }
+	}
+
+	/*
+	 * Changing of all depths that need to be changed
+	 */
+	father_of_forefather = father_of_element;
+	forefather_of_element = added_element;
+	do {
+	    if (father_of_forefather->left == forefather_of_element) {
+		depth = father_of_forefather->left_depth;
+		father_of_forefather->left_depth = 1
+		    + MAXIMUM(forefather_of_element->right_depth,
+			      forefather_of_element->left_depth);
+		depth2 = father_of_forefather->left_depth;
+	    } else {
+		depth = father_of_forefather->right_depth;
+		father_of_forefather->right_depth = 1
+		    + MAXIMUM(forefather_of_element->right_depth,
+			      forefather_of_element->left_depth);
+		depth2 = father_of_forefather->right_depth;
+	    }
+	    forefather_of_element = father_of_forefather;
+	    father_of_forefather = father_of_forefather->up;
+	} while ((depth != depth2) && (father_of_forefather != NULL));
+
+	/*
+	 * 2/ Balancing the binary tree, if necessary
+	 */
+	top_found = YES;
+	corrections = 0;
+	while ((top_found) && (corrections < 7)) {
+	    if ((abs(father_of_element->left_depth
+		     - father_of_element->right_depth)) < 2) {
+		if (father_of_element->up != NULL)
+		    father_of_element = father_of_element->up;
+		else
+		    top_found = NO;
+	    } else {		/* We start the process of balancing */
+
+		corrections = corrections + 1;
+		/*
+		 * corrections is an integer used to avoid infinite
+		 * loops in cases such as:
+		 *
+		 *             3                        3
+		 *          4                              4
+		 *           5                            5
+		 *
+		 * 3 is used to show that it need not be the top of the tree
+		 * But let's avoid these two exceptions anyhow
+		 * with the two following conditions (4 March 94 - AS)
+		 */
+
+		if (father_of_element->left == NULL) {
+		    if ((father_of_element->right != NULL)
+			&& (father_of_element->right->right == NULL)
+			&& (father_of_element->right->left != NULL)
+			&& (father_of_element->right->left->left == NULL)
+			&& (father_of_element->right->left->right == NULL)) {
+			corrections = 7;
+		    }
+		} else {
+		    if ((father_of_element->right == NULL)
+			&& (father_of_element->left->left == NULL)
+			&& (father_of_element->left->right != NULL)
+			&& (father_of_element->left->right->right == NULL)
+			&& (father_of_element->left->right->left == NULL)) {
+			corrections = 7;
+		    }
+		}
+
+		if ((father_of_element->left != NULL)
+		    && (father_of_element->left_depth > father_of_element->right_depth)) {
+		    added_element = father_of_element->left;
+		    father_of_element->left_depth = added_element->right_depth;
+		    added_element->right_depth = 1
+			+ MAXIMUM(father_of_element->right_depth,
+				  father_of_element->left_depth);
+		    if (father_of_element->up != NULL) {
+			/* Bug fixed in March 94  -  AS */
+			BOOL first_time;
+
+			father_of_forefather = father_of_element->up;
+			forefather_of_element = added_element;
+			first_time = YES;
+			do {
+			    if (father_of_forefather->left
+				== forefather_of_element->up) {
+				depth = father_of_forefather->left_depth;
+				if (first_time) {
+				    father_of_forefather->left_depth = 1
+					+ MAXIMUM(forefather_of_element->left_depth,
+						  forefather_of_element->right_depth);
+				    first_time = NO;
+				} else
+				    father_of_forefather->left_depth = 1
+					+ MAXIMUM(forefather_of_element->up->left_depth,
+						  forefather_of_element->up->right_depth);
+
+				depth2 = father_of_forefather->left_depth;
+			    } else {
+				depth = father_of_forefather->right_depth;
+				if (first_time) {
+				    father_of_forefather->right_depth = 1
+					+ MAXIMUM(forefather_of_element->left_depth,
+						  forefather_of_element->right_depth);
+				    first_time = NO;
+				} else
+				    father_of_forefather->right_depth = 1
+					+ MAXIMUM(forefather_of_element->up->left_depth,
+						  forefather_of_element->up->right_depth);
+				depth2 = father_of_forefather->right_depth;
+			    }
+			    forefather_of_element = forefather_of_element->up;
+			    father_of_forefather = father_of_forefather->up;
+			} while ((depth != depth2) &&
+				 (father_of_forefather != NULL));
+			father_of_forefather = father_of_element->up;
+			if (father_of_forefather->left == father_of_element) {
+			    /*
+			     *                   3                       3
+			     *               4                       5
+			     * When tree   5   6        becomes    7    4
+			     *            7 8                          8 6
+			     *
+			     * 3 is used to show that it may not be the top of the
+			     * tree.
+			     */
+			    father_of_forefather->left = added_element;
+			    father_of_element->left = added_element->right;
+			    added_element->right = father_of_element;
+			}
+			if (father_of_forefather->right == father_of_element) {
+			    /*
+			     *          3                       3
+			     *               4                       5
+			     * When tree   5   6        becomes    7    4
+			     *            7 8                          8 6
+			     *
+			     * 3 is used to show that it may not be the top of the
+			     * tree
+			     */
+			    father_of_forefather->right = added_element;
+			    father_of_element->left = added_element->right;
+			    added_element->right = father_of_element;
+			}
+			added_element->up = father_of_forefather;
+		    } else {
+			/*
+
+			 *               1                       2
+			 * When tree   2   3        becomes    4    1
+			 *            4 5                          5 3
+			 *
+			 * 1 is used to show that it is the top of the tree
+			 */
+			added_element->up = NULL;
+			father_of_element->left = added_element->right;
+			added_element->right = father_of_element;
+		    }
+		    father_of_element->up = added_element;
+		    if (father_of_element->left != NULL)
+			father_of_element->left->up = father_of_element;
+		} else if (father_of_element->right != NULL) {
+		    added_element = father_of_element->right;
+		    father_of_element->right_depth = added_element->left_depth;
+		    added_element->left_depth = 1 +
+			MAXIMUM(father_of_element->right_depth,
+				father_of_element->left_depth);
+		    if (father_of_element->up != NULL)
+			/* Bug fixed in March 94  -  AS */
+		    {
+			BOOL first_time;
+
+			father_of_forefather = father_of_element->up;
+			forefather_of_element = added_element;
+			first_time = YES;
+			do {
+			    if (father_of_forefather->left
+				== forefather_of_element->up) {
+				depth = father_of_forefather->left_depth;
+				if (first_time) {
+				    father_of_forefather->left_depth = 1
+					+ MAXIMUM(forefather_of_element->left_depth,
+						  forefather_of_element->right_depth);
+				    first_time = NO;
+				} else
+				    father_of_forefather->left_depth = 1
+					+ MAXIMUM(forefather_of_element->up->left_depth,
+						  forefather_of_element->up->right_depth);
+				depth2 = father_of_forefather->left_depth;
+			    } else {
+				depth = father_of_forefather->right_depth;
+				if (first_time) {
+				    father_of_forefather->right_depth = 1
+					+ MAXIMUM(forefather_of_element->left_depth,
+						  forefather_of_element->right_depth);
+				    first_time = NO;
+				} else
+				    father_of_forefather->right_depth = 1
+					+ MAXIMUM(forefather_of_element->up->left_depth,
+						  forefather_of_element->up->right_depth);
+				depth2 = father_of_forefather->right_depth;
+			    }
+			    father_of_forefather = father_of_forefather->up;
+			    forefather_of_element = forefather_of_element->up;
+			} while ((depth != depth2) &&
+				 (father_of_forefather != NULL));
+			father_of_forefather = father_of_element->up;
+			if (father_of_forefather->left == father_of_element) {
+			    /*
+			     *                    3                       3
+			     *               4                       6
+			     * When tree   5   6        becomes    4    8
+			     *                7 8                 5 7
+			     *
+			     * 3 is used to show that it may not be the top of the
+			     * tree.
+			     */
+			    father_of_forefather->left = added_element;
+			    father_of_element->right = added_element->left;
+			    added_element->left = father_of_element;
+			}
+			if (father_of_forefather->right == father_of_element) {
+			    /*
+			     *           3                      3
+			     *               4                       6
+			     * When tree   5   6        becomes    4    8
+			     *                7 8                 5 7
+			     *
+			     * 3 is used to show that it may not be the top of the
+			     * tree
+			     */
+			    father_of_forefather->right = added_element;
+			    father_of_element->right = added_element->left;
+			    added_element->left = father_of_element;
+			}
+			added_element->up = father_of_forefather;
+		    } else {
+			/*
+
+			 *               1                       3
+			 * When tree   2   3        becomes    1    5
+			 *                4 5                 2 4
+			 *
+			 * 1 is used to show that it is the top of the tree.
+			 */
+			added_element->up = NULL;
+			father_of_element->right = added_element->left;
+			added_element->left = father_of_element;
+		    }
+		    father_of_element->up = added_element;
+		    if (father_of_element->right != NULL)
+			father_of_element->right->up = father_of_element;
+		}
+	    }
+	}
+	while (father_of_element->up != NULL) {
+	    father_of_element = father_of_element->up;
+	}
+	tree->top = father_of_element;
+    }
+}
+
+/*************************************************************************
+ * this function returns a pointer to the leftmost element if ele is NULL,
+ * and to the next object to the right otherwise.
+ * If no elements left, returns a pointer to NULL.
+ */
+HTBTElement *HTBTree_next(HTBTree *tree,
+			  HTBTElement *ele)
+{
+    HTBTElement *father_of_element;
+    HTBTElement *father_of_forefather;
+
+    if (ele == NULL) {
+	father_of_element = tree->top;
+	if (father_of_element != NULL)
+	    while (father_of_element->left != NULL)
+		father_of_element = father_of_element->left;
+    } else {
+	father_of_element = ele;
+	if (father_of_element->right != NULL) {
+	    father_of_element = father_of_element->right;
+	    while (father_of_element->left != NULL)
+		father_of_element = father_of_element->left;
+	} else {
+	    father_of_forefather = father_of_element->up;
+	    while (father_of_forefather &&
+		   (father_of_forefather->right == father_of_element)) {
+		father_of_element = father_of_forefather;
+		father_of_forefather = father_of_element->up;
+	    }
+	    father_of_element = father_of_forefather;
+	}
+    }
+#ifdef BTREE_TRACE
+    /* The option -DBTREE_TRACE will give much more information
+     * about the way the process is running, for debugging matters
+     */
+    if (father_of_element != NULL) {
+	printf("\nObject = %s\t", (char *) father_of_element->object);
+	if (father_of_element->up != NULL)
+	    printf("Objet du pere = %s\n",
+		   (char *) father_of_element->up->object);
+	else
+	    printf("Pas de Pere\n");
+	if (father_of_element->left != NULL)
+	    printf("Objet du fils gauche = %s\t",
+		   (char *) father_of_element->left->object);
+	else
+	    printf("Pas de fils gauche\t");
+	if (father_of_element->right != NULL)
+	    printf("Objet du fils droit = %s\n",
+		   (char *) father_of_element->right->object);
+	else
+	    printf("Pas de fils droit\n");
+	printf("Profondeur gauche = %d\t", father_of_element->left_depth);
+	printf("Profondeur droite = %d\n", father_of_element->right_depth);
+	printf("      **************\n");
+    }
+#endif
+    return father_of_element;
+}
+
+#ifdef TEST
+/*****************************************************
+ * This is just a test to show how to handle HTBTree.c
+ */
+main()
+{
+    HTBTree *tree;
+    HTBTElement *next_element;
+
+    tree = HTBTree_new((HTComparer) strcasecomp);
+    HTBTree_add(tree, "hypertext");
+    HTBTree_add(tree, "Addressing");
+    HTBTree_add(tree, "X11");
+    HTBTree_add(tree, "Tools");
+    HTBTree_add(tree, "Proposal.wn");
+    HTBTree_add(tree, "Protocols");
+    HTBTree_add(tree, "NeXT");
+    HTBTree_add(tree, "Daemon");
+    HTBTree_add(tree, "Test");
+    HTBTree_add(tree, "Administration");
+    HTBTree_add(tree, "LineMode");
+    HTBTree_add(tree, "DesignIssues");
+    HTBTree_add(tree, "MarkUp");
+    HTBTree_add(tree, "Macintosh");
+    HTBTree_add(tree, "Proposal.rtf.wn");
+    HTBTree_add(tree, "FIND");
+    HTBTree_add(tree, "Paper");
+    HTBTree_add(tree, "Tcl");
+    HTBTree_add(tree, "Talks");
+    HTBTree_add(tree, "Architecture");
+    HTBTree_add(tree, "VMSHelp");
+    HTBTree_add(tree, "Provider");
+    HTBTree_add(tree, "Archive");
+    HTBTree_add(tree, "SLAC");
+    HTBTree_add(tree, "Project");
+    HTBTree_add(tree, "News");
+    HTBTree_add(tree, "Viola");
+    HTBTree_add(tree, "Users");
+    HTBTree_add(tree, "FAQ");
+    HTBTree_add(tree, "WorkingNotes");
+    HTBTree_add(tree, "Windows");
+    HTBTree_add(tree, "FineWWW");
+    HTBTree_add(tree, "Frame");
+    HTBTree_add(tree, "XMosaic");
+    HTBTree_add(tree, "People");
+    HTBTree_add(tree, "All");
+    HTBTree_add(tree, "Curses");
+    HTBTree_add(tree, "Erwise");
+    HTBTree_add(tree, "Carl");
+    HTBTree_add(tree, "MidasWWW");
+    HTBTree_add(tree, "XPM");
+    HTBTree_add(tree, "MailRobot");
+    HTBTree_add(tree, "Illustrations");
+    HTBTree_add(tree, "VMClient");
+    HTBTree_add(tree, "XPA");
+    HTBTree_add(tree, "Clients.html");
+    HTBTree_add(tree, "Library");
+    HTBTree_add(tree, "CERNLIB_Distribution");
+    HTBTree_add(tree, "libHTML");
+    HTBTree_add(tree, "WindowsPC");
+    HTBTree_add(tree, "tkWWW");
+    HTBTree_add(tree, "tk2.3");
+    HTBTree_add(tree, "CVS-RCS");
+    HTBTree_add(tree, "DecnetSockets");
+    HTBTree_add(tree, "SGMLStream");
+    HTBTree_add(tree, "NextStep");
+    HTBTree_add(tree, "CVSRepository_old");
+    HTBTree_add(tree, "ArthurSecret");
+    HTBTree_add(tree, "CVSROOT");
+    HTBTree_add(tree, "HytelnetGate");
+    HTBTree_add(tree, "cern.www.new.src");
+    HTBTree_add(tree, "Conditions");
+    HTBTree_add(tree, "HTMLGate");
+    HTBTree_add(tree, "Makefile");
+    HTBTree_add(tree, "Newsgroups.html");
+    HTBTree_add(tree, "People.html");
+    HTBTree_add(tree, "Bugs.html");
+    HTBTree_add(tree, "Summary.html");
+    HTBTree_add(tree, "zDesignIssues.wn");
+    HTBTree_add(tree, "HT.draw");
+    HTBTree_add(tree, "HTandCERN.wn");
+    HTBTree_add(tree, "Ideas.wn");
+    HTBTree_add(tree, "MarkUp.wn");
+    HTBTree_add(tree, "Proposal.html");
+    HTBTree_add(tree, "SearchPanel.draw");
+    HTBTree_add(tree, "Comments.wn");
+    HTBTree_add(tree, "Xanadu.html");
+    HTBTree_add(tree, "Storinglinks.html");
+    HTBTree_add(tree, "TheW3Book.html");
+    HTBTree_add(tree, "Talk_Feb-91.html");
+    HTBTree_add(tree, "JFosterEntry.txt");
+    HTBTree_add(tree, "Summary.txt");
+    HTBTree_add(tree, "Bibliography.html");
+    HTBTree_add(tree, "HTandCern.txt");
+    HTBTree_add(tree, "Talk.draw");
+    HTBTree_add(tree, "zDesignNotes.html");
+    HTBTree_add(tree, "Link.html");
+    HTBTree_add(tree, "Status.html");
+    HTBTree_add(tree, "http.txt");
+    HTBTree_add(tree, "People.html~");
+    HTBTree_add(tree, "TAGS");
+    HTBTree_add(tree, "summary.txt");
+    HTBTree_add(tree, "Technical.html");
+    HTBTree_add(tree, "Terms.html");
+    HTBTree_add(tree, "JANETAccess.html");
+    HTBTree_add(tree, "People.txt");
+    HTBTree_add(tree, "README.txt");
+    HTBTree_add(tree, "CodingStandards.html");
+    HTBTree_add(tree, "Copyright.txt");
+    HTBTree_add(tree, "Status_old.html");
+    HTBTree_add(tree, "patches~");
+    HTBTree_add(tree, "RelatedProducts.html");
+    HTBTree_add(tree, "Implementation");
+    HTBTree_add(tree, "History.html");
+    HTBTree_add(tree, "Makefile.bak");
+    HTBTree_add(tree, "Makefile.old");
+    HTBTree_add(tree, "Policy.html");
+    HTBTree_add(tree, "WhatIs.html");
+    HTBTree_add(tree, "TheProject.html");
+    HTBTree_add(tree, "Notation.html");
+    HTBTree_add(tree, "Helping.html");
+    HTBTree_add(tree, "Cyber-WWW.sit.Hqx");
+    HTBTree_add(tree, "Glossary.html");
+    HTBTree_add(tree, "maketags.html");
+    HTBTree_add(tree, "IntroCS.html");
+    HTBTree_add(tree, "Contrib");
+    HTBTree_add(tree, "Help.html");
+    HTBTree_add(tree, "CodeManagExec");
+    HTBTree_add(tree, "HT-0.1draz");
+    HTBTree_add(tree, "Cello");
+    HTBTree_add(tree, "TOPUB");
+    HTBTree_add(tree, "BUILD");
+    HTBTree_add(tree, "BUILDALL");
+    HTBTree_add(tree, "Lynx");
+    HTBTree_add(tree, "ArthurLibrary");
+    HTBTree_add(tree, "RashtyClient");
+    HTBTree_add(tree, "#History.html#");
+    HTBTree_add(tree, "PerlServers");
+    HTBTree_add(tree, "modules");
+    HTBTree_add(tree, "NCSA_httpd");
+    HTBTree_add(tree, "MAIL2HTML");
+    HTBTree_add(tree, "core");
+    HTBTree_add(tree, "EmacsWWW");
+#ifdef BTREE_TRACE
+    printf("\nTreeTopObject=%s\n\n", tree->top->object);
+#endif
+    next_element = HTBTree_next(tree, NULL);
+    while (next_element != NULL) {
+#ifndef BTREE_TRACE
+	printf("The next element is %s\n", next_element->object);
+#endif
+	next_element = HTBTree_next(tree, next_element);
+    }
+    HTBTree_free(tree);
+}
+
+#endif
diff --git a/WWW/Library/Implementation/HTBTree.h b/WWW/Library/Implementation/HTBTree.h
new file mode 100644
index 00000000..a4f78f94
--- /dev/null
+++ b/WWW/Library/Implementation/HTBTree.h
@@ -0,0 +1,104 @@
+/*                  /Net/dxcern/userd/timbl/hypertext/WWW/Library/Implementation/HTBTree.html
+                         BALANCED BINARY TREE FOR SORTING THINGS
+
+   Tree creation, traversal and freeing.  User-supplied comparison routine.
+
+   Author: Arthur Secret, CERN. Public domain.  Please mail bugs and changes to
+   www-request@info.cern.ch
+
+   part of libWWW
+
+ */
+#ifndef HTBTREE_H
+#define HTBTREE_H 1
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+
+Data structures
+
+ */ typedef struct _HTBTree_element {
+	void *object;		/* User object */
+	struct _HTBTree_element *up;
+	struct _HTBTree_element *left;
+	int left_depth;
+	struct _HTBTree_element *right;
+	int right_depth;
+    } HTBTElement;
+
+    typedef int (*HTComparer) (void *a, void *b);
+
+    typedef struct _HTBTree_top {
+	HTComparer compare;
+	struct _HTBTree_element *top;
+    } HTBTree;
+
+/*
+
+Create a binary tree given its discrimination routine
+
+ */
+    extern HTBTree *HTBTree_new(HTComparer comp);
+
+/*
+
+Free storage of the tree but not of the objects
+
+ */
+    extern void HTBTree_free(HTBTree *tree);
+
+/*
+
+Free storage of the tree and of the objects
+
+ */
+    extern void HTBTreeAndObject_free(HTBTree *tree);
+
+/*
+
+Add an object to a binary tree
+
+ */
+
+    extern void HTBTree_add(HTBTree *tree, void *object);
+
+/*
+
+Search an object in a binary tree
+
+  returns          Pointer to equivalent object in a tree or NULL if none.
+ */
+
+    extern void *HTBTree_search(HTBTree *tree, void *object);
+
+/*
+
+Find user object for element
+
+ */
+#define HTBTree_object(element)  ((element)->object)
+
+/*
+
+Find next element in depth-first order
+
+  ON ENTRY,
+
+  ele                    if NULL, start with leftmost element. if != 0 give next object to
+                         the right.
+
+  returns                Pointer to element or NULL if none left.
+
+ */
+    extern HTBTElement *HTBTree_next(HTBTree *tree, HTBTElement *ele);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTBTREE_H */
diff --git a/WWW/Library/Implementation/HTCJK.h b/WWW/Library/Implementation/HTCJK.h
new file mode 100644
index 00000000..555cff1a
--- /dev/null
+++ b/WWW/Library/Implementation/HTCJK.h
@@ -0,0 +1,112 @@
+/*
+ * $LynxId: HTCJK.h,v 1.18 2010/09/25 11:41:29 tom Exp $
+ *
+ *			CJK character converter		HTCJK.h
+ *			=======================
+ *
+ *	Added 11-Jun-96 by FM, based on jiscode.h for
+ *	  Yutaka Sato's (ysato@etl.go.jp) SJIS.c, and
+ *	  Takuya ASADA's (asada@three-a.co.jp) CJK patches.
+ *	  (see SGML.c).
+ *
+ */
+
+#ifndef HTCJK_H
+#define HTCJK_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ *	STATUS CHANGE CODES
+ */
+#define TO_2BCODE	'$'
+#define TO_1BCODE	'('
+#define TO_KANA		'\016'
+#define TO_KANAOUT	'\017'
+#define TO_KANJI	"\033$B"
+#define TO_HANJI	"\033$A"
+#define TO_HANGUL	"\033$(C"
+#define TO_ASCII	"\033(B"
+#define IS_SJIS_LO(lo)	((0x40<=lo)&&(lo!=0x7F)&&(lo<=0xFC))
+#define IS_SJIS_HI1(hi) ((0x81<=hi)&&(hi<=0x9F))	/* 1st lev. */
+#define IS_SJIS_HI2(hi) ((0xE0<=hi)&&(hi<=0xEF))	/* 2nd lev. */
+#define IS_SJIS(hi,lo,in_sjis) (!IS_SJIS_LO(lo)?0:IS_SJIS_HI1(hi)?(in_sjis=1):in_sjis&&IS_SJIS_HI2(hi))
+#define IS_SJIS_2BYTE(hi,lo) (IS_SJIS_LO(lo)&&(IS_SJIS_HI1(hi)||IS_SJIS_HI2(hi)))
+#define IS_SJIS_X0201KANA(lo) ((0xA1<=lo)&&(lo<=0xDF))
+#define IS_EUC_LOX(lo)	((0xA1<=lo)&&(lo<=0xFE))	/* extended */
+#define IS_EUC_HI(hi)	((0xA1<=hi)&&(hi<=0xFE))
+#define IS_EUC_X0201KANA(hi,lo) ((hi==0x8E)&&(0xA1<=lo)&&(lo<=0xDF))
+#define IS_EUC(hi,lo) ((IS_EUC_HI(hi) && IS_EUC_LOX(lo))||IS_EUC_X0201KANA(hi,lo))
+#define IS_JAPANESE_2BYTE(hi,lo) (IS_SJIS_2BYTE(hi,lo) || IS_EUC(hi,lo))
+#define IS_BIG5_LOS(lo)	((0x40<=lo)&&(lo<=0x7E))	/* standard */
+#define IS_BIG5_LOX(lo)	((0xA1<=lo)&&(lo<=0xFE))	/* extended */
+#define IS_BIG5_HI(hi)	((0xA1<=hi)&&(hi<=0xFE))
+#define IS_BIG5(hi,lo) (IS_BIG5_HI(hi) && (IS_BIG5_LOS(lo) || IS_BIG5_LOX(lo)))
+    typedef enum {
+	NOKANJI = 0, EUC, SJIS, JIS
+    } HTkcode;
+    typedef enum {
+	NOCJK = 0, JAPANESE, CHINESE, KOREAN, TAIPEI
+    } HTCJKlang;
+
+    extern HTCJKlang HTCJK;
+
+/*
+ *  Function prototypes.
+ */
+    extern void JISx0201TO0208_EUC(unsigned IHI,
+				   unsigned ILO,
+				   unsigned char *OHI,
+				   unsigned char *OLO);
+
+    extern unsigned char *SJIS_TO_JIS1(unsigned HI,
+				       unsigned LO,
+				       unsigned char *JCODE);
+
+    extern unsigned char *JIS_TO_SJIS1(unsigned HI,
+				       unsigned LO,
+				       unsigned char *SJCODE);
+
+    extern unsigned char *EUC_TO_SJIS1(unsigned HI,
+				       unsigned LO,
+				       register unsigned char *SJCODE);
+
+    extern void JISx0201TO0208_SJIS(unsigned I,
+				    unsigned char *OHI,
+				    unsigned char *OLO);
+
+    extern unsigned char *SJIS_TO_EUC1(unsigned HI,
+				       unsigned LO,
+				       unsigned char *EUCp);
+
+    extern unsigned char *SJIS_TO_EUC(unsigned char *src,
+				      unsigned char *dst);
+
+    extern unsigned char *EUC_TO_SJIS(unsigned char *src,
+				      unsigned char *dst);
+
+    extern unsigned char *EUC_TO_JIS(unsigned char *src,
+				     unsigned char *dst,
+				     const char *toK,
+				     const char *toA);
+
+    extern unsigned char *TO_EUC(const unsigned char *jis,
+				 unsigned char *euc);
+
+    extern void TO_SJIS(const unsigned char *any,
+			unsigned char *sjis);
+
+    extern void TO_JIS(const unsigned char *any,
+		       unsigned char *jis);
+
+    extern char *str_kcode(HTkcode code);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTCJK_H */
diff --git a/WWW/Library/Implementation/HTChunk.c b/WWW/Library/Implementation/HTChunk.c
new file mode 100644
index 00000000..2ea36c85
--- /dev/null
+++ b/WWW/Library/Implementation/HTChunk.c
@@ -0,0 +1,336 @@
+/*
+ * $LynxId: HTChunk.c,v 1.27 2012/02/07 11:28:44 tom Exp $
+ *
+ *		Chunk handling:	Flexible arrays
+ *		===============================
+ *
+ */
+
+#include <HTUtils.h>
+#include <HTChunk.h>
+
+#include <LYLeaks.h>
+
+/*
+ *	Initialize a chunk with a certain allocation unit
+ */
+void HTChunkInit(HTChunk *ch, int grow)
+{
+    ch->data = 0;
+    ch->growby = grow;
+    ch->size = 0;
+    ch->allocated = 0;
+}
+
+/*	Create a chunk with a certain allocation unit
+ *	--------------
+ */
+HTChunk *HTChunkCreate(int grow)
+{
+    HTChunk *ch = typecalloc(HTChunk);
+
+    if (ch == NULL)
+	outofmem(__FILE__, "creation of chunk");
+
+    HTChunkInit(ch, grow);
+    return ch;
+}
+
+HTChunk *HTChunkCreateMayFail(int grow, int failok)
+{
+    HTChunk *ch = typecalloc(HTChunk);
+
+    if (ch == NULL) {
+	if (!failok) {
+	    outofmem(__FILE__, "creation of chunk");
+	} else {
+	    return ch;
+	}
+    }
+
+    assert(ch != NULL);
+
+    HTChunkInit(ch, grow);
+    ch->failok = failok;
+    return ch;
+}
+
+/*	Create a chunk with a certain allocation unit and ensured size
+ *	--------------
+ */
+HTChunk *HTChunkCreate2(int grow, size_t needed)
+{
+    HTChunk *ch = typecalloc(HTChunk);
+
+    if (ch == NULL)
+	outofmem(__FILE__, "HTChunkCreate2");
+
+    assert(ch != NULL);
+
+    HTChunkInit(ch, grow);
+    if (needed-- > 0) {
+	/* Round up */
+	ch->allocated = (int) (needed - (needed % (size_t) ch->growby)
+			       + (unsigned) ch->growby);
+	CTRACE((tfp, "HTChunkCreate2: requested %d, allocate %u\n",
+		(int) needed, (unsigned) ch->allocated));
+	ch->data = typecallocn(char, (unsigned) ch->allocated);
+
+	if (!ch->data)
+	    outofmem(__FILE__, "HTChunkCreate2 data");
+    }
+    return ch;
+}
+
+/*	Clear a chunk of all data
+ *	--------------------------
+ */
+void HTChunkClear(HTChunk *ch)
+{
+    FREE(ch->data);
+    ch->size = 0;
+    ch->allocated = 0;
+}
+
+/*     Free a chunk (and it's chain, if any)
+ *     -------------------------------------
+ */
+void HTChunkFree(HTChunk *ch)
+{
+    HTChunk *next;
+
+    do {
+	next = ch->next;
+	FREE(ch->data);
+	FREE(ch);
+	ch = next;
+    } while (ch != NULL);
+}
+
+/*	Realloc the chunk
+ *	-----------------
+ */
+BOOL HTChunkRealloc(HTChunk *ch, int growby)
+{
+    char *data;
+
+    ch->allocated = ch->allocated + growby;
+
+    data = (ch->data
+	    ? typeRealloc(char, ch->data, ch->allocated)
+	    : typecallocn(char, ch->allocated));
+
+    if (data) {
+	ch->data = data;
+    } else if (ch->failok) {
+	HTChunkClear(ch);	/* allocation failed, clear all data - kw */
+	return FALSE;		/* caller should check ch->allocated - kw */
+    } else {
+	outofmem(__FILE__, "HTChunkRealloc");
+    }
+    return TRUE;
+}
+
+/*	Append a character
+ *	------------------
+ */
+void HTChunkPutc(HTChunk *ch, unsigned c)
+{
+    if (ch->size >= ch->allocated) {
+	if (!HTChunkRealloc(ch, ch->growby))
+	    return;
+    }
+    ch->data[ch->size++] = (char) c;
+}
+
+/* like above but no realloc: extend to another chunk if necessary */
+HTChunk *HTChunkPutc2(HTChunk *ch, int c)
+{
+    if (ch->size >= ch->allocated) {
+	HTChunk *chunk = HTChunkCreateMayFail(ch->growby, ch->failok);
+
+	ch->next = chunk;
+	ch = chunk;
+	HTChunkPutc(ch, UCH(c));
+    } else {
+	ch->data[ch->size++] = (char) c;
+    }
+    return ch;
+}
+
+/*	Ensure a certain size
+ *	---------------------
+ */
+void HTChunkEnsure(HTChunk *ch, int needed)
+{
+    if (needed <= ch->allocated)
+	return;
+    ch->allocated = needed - 1 - ((needed - 1) % ch->growby)
+	+ ch->growby;		/* Round up */
+    ch->data = (ch->data
+		? typeRealloc(char, ch->data, ch->allocated)
+		: typecallocn(char, ch->allocated));
+
+    if (ch->data == NULL)
+	outofmem(__FILE__, "HTChunkEnsure");
+}
+
+/*
+ * Append a block of characters.
+ */
+void HTChunkPutb(HTChunk *ch, const char *b, int l)
+{
+    if (l <= 0)
+	return;
+    if (ch->size + l > ch->allocated) {
+	int growby = l - (l % ch->growby) + ch->growby;		/* Round up */
+
+	if (!HTChunkRealloc(ch, growby))
+	    return;
+    }
+    MemCpy(ch->data + ch->size, b, l);
+    ch->size += l;
+}
+
+/* like above but no realloc: extend to another chunk if necessary */
+HTChunk *HTChunkPutb2(HTChunk *ch, const char *b, int l)
+{
+    if (l <= 0)
+	return ch;
+    if (ch->size + l > ch->allocated) {
+	HTChunk *chunk;
+	int m = ch->allocated - ch->size;
+
+	MemCpy(ch->data + ch->size, b, (unsigned) m);
+	ch->size += m;
+
+	chunk = HTChunkCreateMayFail(ch->growby, ch->failok);
+	ch->next = chunk;
+	ch = chunk;
+	HTChunkPutb(ch, b + m, l - m);
+    } else {
+	MemCpy(ch->data + ch->size, b, (unsigned) l);
+	ch->size += l;
+    }
+    return ch;
+}
+
+#define PUTC(code)  ch->data[ch->size++] = (char)(code)
+#define PUTC2(code) ch->data[ch->size++] = (char)(0x80|(0x3f &(code)))
+
+/*
+ * Append a character encoded as UTF-8.
+ */
+void HTChunkPutUtf8Char(HTChunk *ch, UCode_t code)
+{
+    int utflen;
+
+    if (TOASCII(code) < 128)
+	utflen = 1;
+    else if (code < 0x800L) {
+	utflen = 2;
+    } else if (code < 0x10000L) {
+	utflen = 3;
+    } else if (code < 0x200000L) {
+	utflen = 4;
+    } else if (code < 0x4000000L) {
+	utflen = 5;
+    } else if (code <= 0x7fffffffL) {
+	utflen = 6;
+    } else
+	utflen = 0;
+
+    if (ch->size + utflen > ch->allocated) {
+	int growby = (ch->growby >= utflen) ? ch->growby : utflen;
+
+	if (!HTChunkRealloc(ch, growby))
+	    return;
+    }
+
+    switch (utflen) {
+    case 0:
+	return;
+    case 1:
+	ch->data[ch->size++] = (char) code;
+	return;
+    case 2:
+	PUTC(0xc0 | (code >> 6));
+	break;
+    case 3:
+	PUTC(0xe0 | (code >> 12));
+	break;
+    case 4:
+	PUTC(0xf0 | (code >> 18));
+	break;
+    case 5:
+	PUTC(0xf8 | (code >> 24));
+	break;
+    case 6:
+	PUTC(0xfc | (code >> 30));
+	break;
+    }
+    switch (utflen) {
+    case 6:
+	PUTC2(code >> 24);
+	/* FALLTHRU */
+    case 5:
+	PUTC2(code >> 18);
+	/* FALLTHRU */
+    case 4:
+	PUTC2(code >> 12);
+	/* FALLTHRU */
+    case 3:
+	PUTC2(code >> 6);
+	/* FALLTHRU */
+    case 2:
+	PUTC2(code);
+	break;
+    }
+}
+
+/*	Terminate a chunk
+ *	-----------------
+ */
+void HTChunkTerminate(HTChunk *ch)
+{
+    HTChunkPutc(ch, (char) 0);
+}
+
+/*	Append a string
+ *	---------------
+ */
+void HTChunkPuts(HTChunk *ch, const char *s)
+{
+    const char *p;
+
+    if (s != NULL) {
+	for (p = s; *p; p++) {
+	    if (ch->size >= ch->allocated) {
+		if (!HTChunkRealloc(ch, ch->growby))
+		    break;
+	    }
+	    ch->data[ch->size++] = *p;
+	}
+    }
+}
+
+/* like above but no realloc: extend to another chunk if necessary */
+HTChunk *HTChunkPuts2(HTChunk *ch, const char *s)
+{
+    const char *p;
+
+    if (s != NULL) {
+	for (p = s; *p; p++) {
+	    if (ch->size >= ch->allocated) {
+		HTChunk *chunk = HTChunkCreateMayFail(ch->growby, ch->failok);
+
+		ch->next = chunk;
+		ch = chunk;
+		HTChunkPuts(ch, p);
+		break;
+	    }
+	    ch->data[ch->size++] = *p;
+	}
+    }
+    return ch;
+}
diff --git a/WWW/Library/Implementation/HTChunk.h b/WWW/Library/Implementation/HTChunk.h
new file mode 100644
index 00000000..1a9dbbae
--- /dev/null
+++ b/WWW/Library/Implementation/HTChunk.h
@@ -0,0 +1,228 @@
+/*
+ * $LynxId: HTChunk.h,v 1.20 2010/09/24 08:37:39 tom Exp $
+ *
+ *				     HTChunk: Flexible array handling for libwww
+ *					CHUNK HANDLING:
+ *					FLEXIBLE ARRAYS
+ *
+ * This module implements a flexible array.  It is a general utility module.  A
+ * chunk is a structure which may be extended.	These routines create and
+ * append data to chunks, automatically reallocating them as necessary.
+ *
+ */
+#ifndef HTCHUNK_H
+#define HTCHUNK_H 1
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#include <UCMap.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    typedef struct _HTChunk HTChunk;
+
+    struct _HTChunk {
+	int size;		/* In bytes                     */
+	int growby;		/* Allocation unit in bytes     */
+	int allocated;		/* Current size of *data        */
+	char *data;		/* Pointer to malloc'd area or 0 */
+	int failok;		/* allowed to fail without exiting program? */
+	HTChunk *next;		/* pointer to the next chunk */
+    };
+
+/*
+ * Initialize a chunk's allocation data and allocation-increment.
+ */
+    extern void HTChunkInit(HTChunk *ch, int grow);
+
+/*
+ *
+ * Create new chunk
+ *
+ *   ON ENTRY,
+ *
+ *   growby		The number of bytes to allocate at a time when the chunk
+ *			is later extended.  Arbitrary but normally a trade-off
+ *			of time vs memory.
+ *
+ *   ON EXIT,
+ *
+ *   returns		A chunk pointer to the new chunk,
+ *
+ */
+
+    extern HTChunk *HTChunkCreate(int growby);
+
+/*
+ *  Create a chunk for which an allocation error is not a fatal application
+ *  error if failok != 0, but merely resets the chunk.  When using a chunk
+ *  created this way, the caller should always check whether the contents
+ *  are ok each time after data have been appended.
+ *  The create call may also fail and will reurn NULL in that case. - kw
+ */
+    extern HTChunk *HTChunkCreateMayFail(int growby, int failok);
+
+/*
+ *  Like HTChunkCreate but with initial allocation - kw
+ *
+ */
+    extern HTChunk *HTChunkCreate2(int growby, size_t needed);
+
+/*
+ *
+ * Free a chunk
+ *
+ *   ON ENTRY,
+ *
+ *   ch			A valid chunk pointer made by HTChunkCreate()
+ *
+ *   ON EXIT,
+ *
+ *   ch			is invalid and may not be used.
+ *
+ */
+
+    extern void HTChunkFree(HTChunk *ch);
+
+/*
+ *
+ * Clear a chunk
+ *
+ *   ON ENTRY,
+ *
+ *   ch			A valid chunk pointer made by HTChunkCreate()
+ *
+ *   ON EXIT,
+ *
+ *   *ch		The size of the chunk is zero.
+ *
+ */
+
+    extern void HTChunkClear(HTChunk *ch);
+
+/*
+ *
+ * Realloc a chunk
+ *
+ *   ON ENTRY,
+ *
+ *   ch			A valid chunk pointer made by HTChunkCreate()
+ *
+ *   growby		growby
+ *
+ *   ON EXIT,
+ *
+ *   *ch		Expanded by growby
+ *
+ */
+
+    extern BOOL HTChunkRealloc(HTChunk *ch, int growby);
+
+/*
+ *
+ * Ensure a chunk has a certain space in
+ *
+ *   ON ENTRY,
+ *
+ *   ch			A valid chunk pointer made by HTChunkCreate()
+ *
+ *   s			The size required
+ *
+ *   ON EXIT,
+ *
+ *   *ch		Has size at least s
+ *
+ */
+
+    extern void HTChunkEnsure(HTChunk *ch, int s);
+
+/*
+ *
+ * Append a character to a  chunk
+ *
+ *   ON ENTRY,
+ *
+ *   ch			A valid chunk pointer made by HTChunkCreate()
+ *
+ *   c			The character to be appended
+ *
+ *   ON EXIT,
+ *
+ *   *ch		Is one character bigger
+ *
+ */
+    extern void HTChunkPutc(HTChunk *ch, unsigned c);
+
+    extern void HTChunkPutb(HTChunk *ch, const char *b, int l);
+
+    extern void HTChunkPutUtf8Char(HTChunk *ch, UCode_t code);
+
+/*
+ * Append a string to a  chunk
+ *
+ *   ON ENTRY,
+ *
+ *   ch			A valid chunk pointer made by HTChunkCreate()
+ *
+ *   str		Points to a zero-terminated string to be appended
+ *
+ *   ON EXIT,
+ *
+ *   *ch		Is bigger by strlen(str)
+ *
+ */
+
+    extern void HTChunkPuts(HTChunk *ch, const char *str);
+
+/*
+ *
+ * Append a zero character to a  chunk
+ *
+ */
+
+/*
+ *
+ *   ON ENTRY,
+ *
+ *   ch			A valid chunk pointer made by HTChunkCreate()
+ *
+ *   ON EXIT,
+ *
+ *   *ch		Is one character bigger
+ *
+ */
+
+    extern void HTChunkTerminate(HTChunk *ch);
+
+/* like the above but no realloc: extend to another chunk if necessary */
+/*
+ *
+ * Append a character (string, data) to a chunk
+ *
+ *   ON ENTRY,
+ *
+ *   ch                        A valid chunk pointer made by HTChunkCreate()
+ *
+ *   c                 The character to be appended
+ *
+ *   ON EXIT,
+ *
+ *   returns           original chunk or a pointer to the new chunk
+ *                     (orginal chunk is referenced to the new one
+ *                     by the field 'next')
+ *
+ */
+    extern HTChunk *HTChunkPutc2(HTChunk *ch, int c);
+    extern HTChunk *HTChunkPuts2(HTChunk *ch, const char *str);
+    extern HTChunk *HTChunkPutb2(HTChunk *ch, const char *b, int l);
+
+/* New pool infrastructure: UNlike the above, store data using alignment */
+    extern HTChunk *HTChunkPutb0(HTChunk *ch, const char *b, int l);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTCHUNK_H */
diff --git a/WWW/Library/Implementation/HTDOS.c b/WWW/Library/Implementation/HTDOS.c
new file mode 100644
index 00000000..582a7626
--- /dev/null
+++ b/WWW/Library/Implementation/HTDOS.c
@@ -0,0 +1,241 @@
+/*
+ * $LynxId: HTDOS.c,v 1.39 2011/06/04 18:45:09 tom Exp $
+ *							DOS specific routines
+ */
+
+#include <HTUtils.h>
+#include <LYUtils.h>
+#include <HTDOS.h>
+#include <LYStrings.h>
+
+#include <LYLeaks.h>
+
+#ifdef _WINDOWS
+#include <LYGlobalDefs.h>
+#include <HTAlert.h>
+#endif
+
+/*
+ * Make a copy of the source argument in the result, allowing some extra
+ * space so we can append directly onto the result without reallocating.
+ */
+static char *copy_plus(char **result, const char *source)
+{
+    int length = (int) strlen(source);
+    int extra = 10;
+    int n;
+
+    for (n = 0; n < length; ++n) {
+	if (source[n] == ' ')
+	    ++extra;
+    }
+
+    HTSprintf0(result, "%-*s", length + extra, source);
+    (*result)[length] = 0;
+    return (*result);
+}
+
+/* PUBLIC							HTDOS_wwwName()
+ *		CONVERTS DOS Name into WWW Name
+ * ON ENTRY:
+ *	dosname		DOS file specification (NO NODE)
+ *
+ * ON EXIT:
+ *	returns		WWW file specification
+ *
+ */
+const char *HTDOS_wwwName(const char *dosname)
+{
+    static char *wwwname = NULL;
+    char *cp_url = copy_plus(&wwwname, dosname);
+    int wwwname_len;
+    char ch;
+
+    while ((ch = *dosname) != '\0') {
+	switch (ch) {
+	case '\\':
+	    /* convert dos backslash to unix-style */
+	    *cp_url++ = '/';
+	    break;
+	case ' ':
+	    *cp_url++ = '%';
+	    *cp_url++ = '2';
+	    *cp_url++ = '0';
+	    break;
+	default:
+	    *cp_url++ = ch;
+	    break;
+	}
+	dosname++;
+    }
+    *cp_url = '\0';
+
+    wwwname_len = (int) strlen(wwwname);
+    if (wwwname_len > 1)
+	cp_url--;		/* point last char */
+
+    if (wwwname_len > 3 && *cp_url == '/') {
+	cp_url++;
+	*cp_url = '\0';
+    }
+    return (wwwname);
+}
+
+/*
+ * Convert slashes from Unix to DOS
+ */
+char *HTDOS_slashes(char *path)
+{
+    char *s;
+
+    for (s = path; *s != '\0'; ++s) {
+	if (*s == '/') {
+	    *s = '\\';
+	}
+    }
+    return path;
+}
+
+/* PUBLIC							HTDOS_name()
+ *		CONVERTS WWW name into a DOS name
+ * ON ENTRY:
+ *	wwwname		WWW file name
+ *
+ * ON EXIT:
+ *	returns		DOS file specification
+ */
+char *HTDOS_name(const char *wwwname)
+{
+    static char *result = NULL;
+    int joe;
+
+#if defined(SH_EX)		/* 2000/03/07 (Tue) 18:32:42 */
+    if (unsafe_filename(wwwname)) {
+	HTUserMsg2("unsafe filename : %s", wwwname);
+	copy_plus(&result, "BAD_LOCAL_FILE_NAME");
+    } else {
+	copy_plus(&result, wwwname);
+    }
+#else
+    copy_plus(&result, wwwname);
+#endif
+#ifdef __DJGPP__
+    if (result[0] == '/'
+	&& result[1] == 'd'
+	&& result[2] == 'e'
+	&& result[3] == 'v'
+	&& result[4] == '/'
+	&& isalpha(result[5])) {
+	return (result);
+    }
+#endif /* __DJGPP__ */
+
+    (void) HTDOS_slashes(result);
+
+    /* pesky leading slash, rudiment from file://localhost/  */
+    /* the rest of path may be with or without drive letter  */
+    if ((result[1] != '\\') && (result[0] == '\\')) {
+	for (joe = 0; (result[joe] = result[joe + 1]) != 0; joe++) ;
+    }
+    /* convert '|' after the drive letter to ':' */
+    if (isalpha(UCH(result[0])) && result[1] == '|') {
+	result[1] = ':';
+    }
+#ifdef _WINDOWS			/* 1998/04/02 (Thu) 08:59:48 */
+    if (LYLastPathSep(result) != NULL
+	&& !LYIsDosDrive(result)) {
+	char temp_buff[LY_MAXPATH];
+
+	sprintf(temp_buff, "%.3s\\%.*s", windows_drive,
+		(int) (sizeof(temp_buff) - 5), result);
+	StrAllocCopy(result, temp_buff);
+    }
+#endif
+    /*
+     * If we have only a device, add a trailing slash.  Otherwise it just
+     * refers to the current directory on the given device.
+     */
+    if (LYLastPathSep(result) == NULL
+	&& LYIsDosDrive(result))
+	LYAddPathSep0(result);
+
+    CTRACE((tfp, "HTDOS_name changed `%s' to `%s'\n", wwwname, result));
+    return (result);
+}
+
+#ifdef WIN_EX
+char *HTDOS_short_name(const char *path)
+{
+    static char sbuf[LY_MAXPATH];
+    char *ret;
+    DWORD r;
+
+    if (strchr(path, '/'))
+	path = HTDOS_name(path);
+    r = GetShortPathName(path, sbuf, sizeof sbuf);
+    if (r >= sizeof(sbuf) || r == 0) {
+	ret = LYStrNCpy(sbuf, path, sizeof(sbuf));
+    } else {
+	ret = sbuf;
+    }
+    return ret;
+}
+#endif
+
+#if defined(DJGPP)
+/*
+ * Poll tcp/ip lib and yield to DPMI-host while nothing in
+ * keyboard buffer (head = tail) (simpler than kbhit).
+ * This is required to be able to finish off dead sockets,
+ * answer pings etc.
+ */
+#include <pc.h>
+#include <dpmi.h>
+#include <libc/farptrgs.h>
+#include <go32.h>
+
+void djgpp_idle_loop(void)
+{
+    while (_farpeekw(_dos_ds, 0x41a) == _farpeekw(_dos_ds, 0x41c)) {
+	tcp_tick(NULL);
+	__dpmi_yield();
+#if defined(USE_SLANG)
+	if (SLang_input_pending(1))
+	    break;
+#endif
+    }
+}
+
+/* PUBLIC       getxkey()
+ *              Replaces libc's getxkey() with polling of tcp/ip
+ *              library (WatTcp or Watt-32). *
+ * ON EXIT:
+ *      returns extended keypress.
+ */
+
+/* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
+
+int getxkey(void)
+{
+#if defined(DJGPP_KEYHANDLER)
+    __dpmi_regs r;
+
+    djgpp_idle_loop();
+
+    r.h.ah = 0x10;
+    __dpmi_int(0x16, &r);
+
+    if (r.h.al == 0x00)
+	return 0x0100 | r.h.ah;
+    if (r.h.al == 0xe0)
+	return 0x0200 | r.h.ah;
+    return r.h.al;
+
+#elif defined(USE_SLANG)
+    djgpp_idle_loop();
+    return SLkp_getkey();
+#else
+    /* PDcurses uses myGetChar() in LYString.c */
+#endif
+}
+#endif /* DJGPP */
diff --git a/WWW/Library/Implementation/HTDOS.h b/WWW/Library/Implementation/HTDOS.h
new file mode 100644
index 00000000..e1613cb0
--- /dev/null
+++ b/WWW/Library/Implementation/HTDOS.h
@@ -0,0 +1,56 @@
+/*
+ * $LynxId: HTDOS.h,v 1.14 2009/09/09 00:16:06 tom Exp $
+ *
+ * DOS specific routines
+ */
+
+#ifndef HTDOS_H
+#define HTDOS_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif /* HTUTILS_H */
+
+/* PUBLIC                                                       HTDOS_wwwName()
+ *              CONVERTS DOS Name into WWW Name
+ * ON ENTRY:
+ *	dosname		DOS file specification (NO NODE)
+ *
+ * ON EXIT:
+ *	returns		WWW file specification
+ *
+ */
+const char *HTDOS_wwwName(const char *dosname);
+
+/*
+ * Converts Unix slashes to DOS
+ */
+char *HTDOS_slashes(char *path);
+
+/* PUBLIC                                                       HTDOS_name()
+ *              CONVERTS WWW name into a DOS name
+ * ON ENTRY:
+ *	wwwname		WWW file name
+ *
+ * ON EXIT:
+ *	returns		DOS file specification
+ *
+ * Bug:	Returns pointer to static -- non-reentrant
+ */
+char *HTDOS_name(const char *wwwname);
+
+#ifdef WIN_EX
+char *HTDOS_short_name(const char *fn);
+
+#else
+#define HTDOS_short_name(fn)  fn
+#endif
+
+#ifdef DJGPP
+/*
+ * Poll tcp/ip lib and yield to DPMI-host while nothing in
+ * keyboard buffer (head = tail) (simpler than kbhit).
+ */
+void djgpp_idle_loop(void);
+#endif
+#endif /*  HTDOS_H */
diff --git a/WWW/Library/Implementation/HTFTP.c b/WWW/Library/Implementation/HTFTP.c
new file mode 100644
index 00000000..480eacfd
--- /dev/null
+++ b/WWW/Library/Implementation/HTFTP.c
@@ -0,0 +1,4224 @@
+/*
+ * $LynxId: HTFTP.c,v 1.101 2012/02/09 12:34:48 tom Exp $
+ *
+ *			File Transfer Protocol (FTP) Client
+ *			for a WorldWideWeb browser
+ *			===================================
+ *
+ *	A cache of control connections is kept.
+ *
+ * Note: Port allocation
+ *
+ *	It is essential that the port is allocated by the system, rather
+ *	than chosen in rotation by us (POLL_PORTS), or the following
+ *	problem occurs.
+ *
+ *	It seems that an attempt by the server to connect to a port which has
+ *	been used recently by a listen on the same socket, or by another
+ *	socket this or another process causes a hangup of (almost exactly)
+ *	one minute.  Therefore, we have to use a rotating port number.
+ *	The problem remains that if the application is run twice in quick
+ *	succession, it will hang for what remains of a minute.
+ *
+ * Authors
+ *	TBL	Tim Berners-lee <timbl@info.cern.ch>
+ *	DD	Denis DeLaRoca 310 825-4580 <CSP1DWD@mvs.oac.ucla.edu>
+ *	LM	Lou Montulli <montulli@ukanaix.cc.ukans.edu>
+ *	FM	Foteos Macrides <macrides@sci.wfeb.edu>
+ * History:
+ *	 2 May 91	Written TBL, as a part of the WorldWideWeb project.
+ *	15 Jan 92	Bug fix: close() was used for NETCLOSE for control soc
+ *	10 Feb 92	Retry if cached connection times out or breaks
+ *	 8 Dec 92	Bug fix 921208 TBL after DD
+ *	17 Dec 92	Anon FTP password now just WWWuser@ suggested by DD
+ *			fails on princeton.edu!
+ *	27 Dec 93 (FM)	Fixed up so FTP now works with VMS hosts.  Path
+ *			must be Unix-style and cannot include the device
+ *			or top directory.
+ *	?? ??? ?? (LM)	Added code to prompt and send passwords for non
+ *			anonymous FTP
+ *	25 Mar 94 (LM)	Added code to recognize different ftp server types
+ *			and code to parse dates and sizes on most hosts.
+ *	27 Mar 93 (FM)	Added code for getting dates and sizes on VMS hosts.
+ *
+ * Notes:
+ *			Portions Copyright 1994 Trustees of Dartmouth College
+ *			Code for recognizing different FTP servers and
+ *			parsing "ls -l" output taken from Macintosh Fetch
+ *			program with permission from Jim Matthews,
+ *			Dartmouth Software Development Team.
+ */
+
+/*
+ * BUGS:	@@@	Limit connection cache size!
+ * 		Error reporting to user.
+ * 		400 & 500 errors are ack'ed by user with windows.
+ * 		Use configuration file for user names
+ * 
+ *		Note for portability this version does not use select() and
+ *		so does not watch the control and data channels at the
+ *		same time.
+ */
+
+#include <HTUtils.h>
+
+#include <HTAlert.h>
+
+#include <HTFTP.h>		/* Implemented here */
+#include <HTTCP.h>
+#include <HTTP.h>
+#include <HTFont.h>
+
+#define REPEAT_PORT		/* Give the port number for each file */
+#define REPEAT_LISTEN		/* Close each listen socket and open a new one */
+
+/* define POLL_PORTS		 If allocation does not work, poll ourselves.*/
+#define LISTEN_BACKLOG 2	/* Number of pending connect requests (TCP) */
+
+#define FIRST_TCP_PORT	1024	/* Region to try for a listening port */
+#define LAST_TCP_PORT	5999
+
+#define LINE_LENGTH 256
+
+#include <HTParse.h>
+#include <HTAnchor.h>
+#include <HTFile.h>		/* For HTFileFormat() */
+#include <HTBTree.h>
+#include <HTChunk.h>
+#ifndef IPPORT_FTP
+#define IPPORT_FTP	21
+#endif /* !IPORT_FTP */
+
+#include <LYUtils.h>
+#include <LYGlobalDefs.h>
+#include <LYStrings.h>
+#include <LYLeaks.h>
+
+typedef struct _connection {
+    struct _connection *next;	/* Link on list         */
+    unsigned long addr;		/* IP address           */
+    int socket;			/* Socket number for communication */
+    BOOL binary;		/* Binary mode? */
+} connection;
+
+/*		Hypertext object building machinery
+*/
+#include <HTML.h>
+
+/*
+ * socklen_t is the standard, but there are many pre-standard variants.
+ * This ifdef works around a few of those cases.
+ *
+ * Information was obtained from header files on these platforms:
+ *	AIX 4.3.2, 5.1
+ *	HPUX 10.20, 11.00, 11.11
+ *	IRIX64 6.5
+ *	Tru64 4.0G, 4.0D, 5.1
+ */
+#if defined(SYS_IRIX64)
+	/* IRIX64 6.5 socket.h may use socklen_t if SGI_SOURCE is not defined */
+#  if _NO_XOPEN4 && _NO_XOPEN5
+#    define LY_SOCKLEN socklen_t
+#  elif _ABIAPI
+#    define LY_SOCKLEN int
+#  elif _XOPEN5
+#    if (_MIPS_SIM != _ABIO32)
+#      define LY_SOCKLEN socklen_t
+#    else
+#      define LY_SOCKLEN int
+#    endif
+#  else
+#    define LY_SOCKLEN size_t
+#  endif
+#elif defined(SYS_HPUX)
+#  if defined(_XOPEN_SOURCE_EXTENDED) && defined(SO_PROTOTYPE)
+#    define LY_SOCKLEN socklen_t
+#  else	/* HPUX 10.20, etc. */
+#    define LY_SOCKLEN int
+#  endif
+#elif defined(SYS_TRU64)
+#  if defined(_POSIX_PII_SOCKET)
+#    define LY_SOCKLEN socklen_t
+#  elif defined(_XOPEN_SOURCE_EXTENDED)
+#    define LY_SOCKLEN size_t
+#  else
+#    define LY_SOCKLEN int
+#  endif
+#else
+#  define LY_SOCKLEN socklen_t
+#endif
+
+#define PUTC(c)      (*target->isa->put_character) (target, c)
+#define PUTS(s)      (*target->isa->put_string)    (target, s)
+#define START(e)     (*target->isa->start_element) (target, e, 0, 0, -1, 0)
+#define END(e)       (*target->isa->end_element)   (target, e, 0)
+#define FREE_TARGET  (*target->isa->_free)         (target)
+#define ABORT_TARGET (*target->isa->_free)         (target)
+
+struct _HTStructured {
+    const HTStructuredClass *isa;
+    /* ... */
+};
+
+/*	Global Variables
+ *	---------------------
+ */
+int HTfileSortMethod = FILE_BY_NAME;
+
+#ifndef DISABLE_FTP		/*This disables everything to end-of-file */
+static char ThisYear[8];
+static char LastYear[8];
+static int TheDate;
+static BOOLEAN HaveYears = FALSE;
+
+/*	Module-Wide Variables
+ *	---------------------
+ */
+static connection *connections = NULL;	/* Linked list of connections */
+static char response_text[LINE_LENGTH + 1];	/* Last response from ftp host */
+static connection *control = NULL;	/* Current connection */
+static int data_soc = -1;	/* Socket for data transfer =invalid */
+static char *user_entered_password = NULL;
+static char *last_username_and_host = NULL;
+
+/*
+ * Some ftp servers are known to have a broken implementation of RETR.  If
+ * asked to retrieve a directory, they get confused and fail subsequent
+ * commands such as CWD and LIST.
+ */
+static int Broken_RETR = FALSE;
+
+/*
+ * Some ftp servers are known to have a broken implementation of EPSV.  The
+ * server will hang for a long time when we attempt to connect after issuing
+ * this command.
+ */
+#ifdef INET6
+static int Broken_EPSV = FALSE;
+#endif
+
+typedef enum {
+    GENERIC_SERVER
+    ,MACHTEN_SERVER
+    ,UNIX_SERVER
+    ,VMS_SERVER
+    ,CMS_SERVER
+    ,DCTS_SERVER
+    ,TCPC_SERVER
+    ,PETER_LEWIS_SERVER
+    ,NCSA_SERVER
+    ,WINDOWS_NT_SERVER
+    ,WINDOWS_2K_SERVER
+    ,MS_WINDOWS_SERVER
+    ,MSDOS_SERVER
+    ,APPLESHARE_SERVER
+    ,NETPRESENZ_SERVER
+    ,DLS_SERVER
+} eServerType;
+
+static eServerType server_type = GENERIC_SERVER;	/* the type of ftp host */
+static int unsure_type = FALSE;	/* sure about the type? */
+static BOOLEAN use_list = FALSE;	/* use the LIST command? */
+
+static int interrupted_in_next_data_char = FALSE;
+
+#ifdef POLL_PORTS
+static PortNumber port_number = FIRST_TCP_PORT;
+#endif /* POLL_PORTS */
+
+static BOOL have_socket = FALSE;	/* true if master_socket is valid */
+static unsigned master_socket;	/* Listening socket = invalid */
+
+static char port_command[255];	/* Command for setting the port */
+static fd_set open_sockets;	/* Mask of active channels */
+static unsigned num_sockets;	/* Number of sockets to scan */
+static PortNumber passive_port;	/* Port server specified for data */
+
+#define NEXT_CHAR HTGetCharacter()	/* Use function in HTFormat.c */
+
+#define DATA_BUFFER_SIZE 2048
+static char data_buffer[DATA_BUFFER_SIZE];	/* Input data buffer */
+static char *data_read_pointer;
+static char *data_write_pointer;
+
+#define NEXT_DATA_CHAR next_data_char()
+static int close_connection(connection * con);
+
+#ifdef LY_FIND_LEAKS
+/*
+ *  This function frees module globals. - FM
+ */
+static void free_FTPGlobals(void)
+{
+    FREE(user_entered_password);
+    FREE(last_username_and_host);
+    if (control) {
+	if (control->socket != -1)
+	    close_connection(control);
+	FREE(control);
+    }
+}
+#endif /* LY_FIND_LEAKS */
+
+/* PUBLIC						HTVMS_name()
+ *		CONVERTS WWW name into a VMS name
+ * ON ENTRY:
+ *	nn		Node Name (optional)
+ *	fn		WWW file name
+ *
+ * ON EXIT:
+ *	returns		vms file specification
+ *
+ * Bug: Returns pointer to static -- non-reentrant
+ */
+char *HTVMS_name(const char *nn,
+		 const char *fn)
+{
+    /* We try converting the filename into Files-11 syntax.  That is, we assume
+     * first that the file is, like us, on a VMS node.  We try remote (or
+     * local) DECnet access.  Files-11, VMS, VAX and DECnet are trademarks of
+     * Digital Equipment Corporation.  The node is assumed to be local if the
+     * hostname WITHOUT DOMAIN matches the local one.  @@@
+     */
+    static char *vmsname;
+    char *filename = (char *) malloc(strlen(fn) + 1);
+    char *nodename = (char *) malloc(strlen(nn) + 2 + 1);	/* Copies to hack */
+    char *second;		/* 2nd slash */
+    char *last;			/* last slash */
+
+    const char *hostname = HTHostName();
+
+    if (!filename || !nodename)
+	outofmem(__FILE__, "HTVMSname");
+
+    assert(filename != NULL);
+    assert(nodename != NULL);
+
+    strcpy(filename, fn);
+    strcpy(nodename, "");	/* On same node?  Yes if node names match */
+    if (StrNCmp(nn, "localhost", 9)) {
+	const char *p;
+	const char *q;
+
+	for (p = hostname, q = nn;
+	     *p && *p != '.' && *q && *q != '.'; p++, q++) {
+	    if (TOUPPER(*p) != TOUPPER(*q)) {
+		char *r;
+
+		strcpy(nodename, nn);
+		r = strchr(nodename, '.');	/* Mismatch */
+		if (r)
+		    *r = '\0';	/* Chop domain */
+		strcat(nodename, "::");		/* Try decnet anyway */
+		break;
+	    }
+	}
+    }
+
+    second = strchr(filename + 1, '/');		/* 2nd slash */
+    last = strrchr(filename, '/');	/* last slash */
+
+    if (!second) {		/* Only one slash */
+	HTSprintf0(&vmsname, "%s%s", nodename, filename + 1);
+    } else if (second == last) {	/* Exactly two slashes */
+	*second = '\0';		/* Split filename from disk */
+	HTSprintf0(&vmsname, "%s%s:%s", nodename, filename + 1, second + 1);
+	*second = '/';		/* restore */
+    } else {			/* More than two slashes */
+	char *p;
+
+	*second = '\0';		/* Split disk from directories */
+	*last = '\0';		/* Split dir from filename */
+	HTSprintf0(&vmsname, "%s%s:[%s]%s",
+		   nodename, filename + 1, second + 1, last + 1);
+	*second = *last = '/';	/* restore filename */
+	for (p = strchr(vmsname, '['); *p != ']'; p++)
+	    if (*p == '/')
+		*p = '.';	/* Convert dir sep.  to dots */
+    }
+    FREE(nodename);
+    FREE(filename);
+    return vmsname;
+}
+
+/*	Procedure: Read a character from the data connection
+ *	----------------------------------------------------
+ */
+static int next_data_char(void)
+{
+    int status;
+
+    if (data_read_pointer >= data_write_pointer) {
+	status = NETREAD(data_soc, data_buffer, DATA_BUFFER_SIZE);
+	if (status == HT_INTERRUPTED)
+	    interrupted_in_next_data_char = 1;
+	if (status <= 0)
+	    return EOF;
+	data_write_pointer = data_buffer + status;
+	data_read_pointer = data_buffer;
+    }
+#ifdef NOT_ASCII
+    {
+	char c = *data_read_pointer++;
+
+	return FROMASCII(c);
+    }
+#else
+    return UCH(*data_read_pointer++);
+#endif /* NOT_ASCII */
+}
+
+/*	Close an individual connection
+ *
+ */
+static int close_connection(connection * con)
+{
+    connection *scan;
+    int status;
+
+    CTRACE((tfp, "HTFTP: Closing control socket %d\n", con->socket));
+    status = NETCLOSE(con->socket);
+    if (TRACE && status != 0) {
+#ifdef UNIX
+	CTRACE((tfp, "HTFTP:close_connection: %s", LYStrerror(errno)));
+#else
+	if (con->socket != INVSOC)
+	    HTInetStatus("HTFTP:close_connection");
+#endif
+    }
+    con->socket = -1;
+    if (connections == con) {
+	connections = con->next;
+	return status;
+    }
+    for (scan = connections; scan; scan = scan->next) {
+	if (scan->next == con) {
+	    scan->next = con->next;	/* Unlink */
+	    if (control == con)
+		control = (connection *) 0;
+	    return status;
+	}			/*if */
+    }				/* for */
+    return -1;			/* very strange -- was not on list. */
+}
+
+static char *help_message_buffer = NULL;	/* global :( */
+
+static void init_help_message_cache(void)
+{
+    FREE(help_message_buffer);
+}
+
+static void help_message_cache_add(char *string)
+{
+    if (help_message_buffer)
+	StrAllocCat(help_message_buffer, string);
+    else
+	StrAllocCopy(help_message_buffer, string);
+
+    CTRACE((tfp, "Adding message to help cache: %s\n", string));
+}
+
+static char *help_message_cache_non_empty(void)
+{
+    return (help_message_buffer);
+}
+
+static char *help_message_cache_contents(void)
+{
+    return (help_message_buffer);
+}
+
+/*	Send One Command
+ *	----------------
+ *
+ *	This function checks whether we have a control connection, and sends
+ *	one command if given.
+ *
+ * On entry,
+ *	control	points to the connection which is established.
+ *	cmd	points to a command, or is zero to just get the response.
+ *
+ *	The command should already be terminated with the CRLF pair.
+ *
+ * On exit,
+ *	returns:  1 for success,
+ *		  or negative for communication failure (in which case
+ *		  the control connection will be closed).
+ */
+static int write_cmd(const char *cmd)
+{
+    int status;
+
+    if (!control) {
+	CTRACE((tfp, "HTFTP: No control connection set up!!\n"));
+	return HT_NO_CONNECTION;
+    }
+
+    if (cmd) {
+	CTRACE((tfp, "  Tx: %s", cmd));
+#ifdef NOT_ASCII
+	{
+	    char *p;
+
+	    for (p = cmd; *p; p++) {
+		*p = TOASCII(*p);
+	    }
+	}
+#endif /* NOT_ASCII */
+	status = (int) NETWRITE(control->socket, cmd, (unsigned) strlen(cmd));
+	if (status < 0) {
+	    CTRACE((tfp,
+		    "HTFTP: Error %d sending command: closing socket %d\n",
+		    status, control->socket));
+	    close_connection(control);
+	    return status;
+	}
+    }
+    return 1;
+}
+
+/*
+ * For each string in the list, check if it is found in the response text.
+ * If so, return TRUE.
+ */
+static BOOL find_response(HTList *list)
+{
+    BOOL result = FALSE;
+    HTList *p = list;
+    char *value;
+
+    while ((value = (char *) HTList_nextObject(p)) != NULL) {
+	if (LYstrstr(response_text, value)) {
+	    result = TRUE;
+	    break;
+	}
+    }
+    return result;
+}
+
+/*	Execute Command and get Response
+ *	--------------------------------
+ *
+ *	See the state machine illustrated in RFC959, p57. This implements
+ *	one command/reply sequence.  It also interprets lines which are to
+ *	be continued, which are marked with a "-" immediately after the
+ *	status code.
+ *
+ *	Continuation then goes on until a line with a matching reply code
+ *	an a space after it.
+ *
+ * On entry,
+ *	control	points to the connection which is established.
+ *	cmd	points to a command, or is zero to just get the response.
+ *
+ *	The command must already be terminated with the CRLF pair.
+ *
+ * On exit,
+ *	returns:  The first digit of the reply type,
+ *		  or negative for communication failure.
+ */
+static int response(const char *cmd)
+{
+    int result;			/* Three-digit decimal code */
+    int continuation_response = -1;
+    int status;
+
+    if ((status = write_cmd(cmd)) < 0)
+	return status;
+
+    do {
+	char *p = response_text;
+
+	for (;;) {
+	    int ich = NEXT_CHAR;
+
+	    if (((*p++ = (char) ich) == LF)
+		|| (p == &response_text[LINE_LENGTH])) {
+
+		char continuation;
+
+		if (interrupted_in_htgetcharacter) {
+		    CTRACE((tfp,
+			    "HTFTP: Interrupted in HTGetCharacter, apparently.\n"));
+		    NETCLOSE(control->socket);
+		    control->socket = -1;
+		    return HT_INTERRUPTED;
+		}
+
+		*p = '\0';	/* Terminate the string */
+		CTRACE((tfp, "    Rx: %s", response_text));
+
+		/* Check for login or help messages */
+		if (!StrNCmp(response_text, "230-", 4) ||
+		    !StrNCmp(response_text, "250-", 4) ||
+		    !StrNCmp(response_text, "220-", 4))
+		    help_message_cache_add(response_text + 4);
+
+		sscanf(response_text, "%d%c", &result, &continuation);
+		if (continuation_response == -1) {
+		    if (continuation == '-')	/* start continuation */
+			continuation_response = result;
+		} else {	/* continuing */
+		    if (continuation_response == result &&
+			continuation == ' ')
+			continuation_response = -1;	/* ended */
+		}
+		if (result == 220 && find_response(broken_ftp_retr)) {
+		    Broken_RETR = TRUE;
+		    CTRACE((tfp, "This server is broken (RETR)\n"));
+		}
+#ifdef INET6
+		if (result == 220 && find_response(broken_ftp_epsv)) {
+		    Broken_EPSV = TRUE;
+		    CTRACE((tfp, "This server is broken (EPSV)\n"));
+		}
+#endif
+		break;
+	    }
+	    /* if end of line */
+	    if (interrupted_in_htgetcharacter) {
+		CTRACE((tfp,
+			"HTFTP: Interrupted in HTGetCharacter, apparently.\n"));
+		NETCLOSE(control->socket);
+		control->socket = -1;
+		return HT_INTERRUPTED;
+	    }
+
+	    if (ich == EOF) {
+		CTRACE((tfp, "Error on rx: closing socket %d\n",
+			control->socket));
+		strcpy(response_text, "000 *** TCP read error on response\n");
+		close_connection(control);
+		return -1;	/* End of file on response */
+	    }
+	}			/* Loop over characters */
+
+    } while (continuation_response != -1);
+
+    if (result == 421) {
+	CTRACE((tfp, "HTFTP: They close so we close socket %d\n",
+		control->socket));
+	close_connection(control);
+	return -1;
+    }
+    if ((result == 255 && server_type == CMS_SERVER) &&
+	(0 == strncasecomp(cmd, "CWD", 3) ||
+	 0 == strcasecomp(cmd, "CDUP"))) {
+	/*
+	 * Alas, CMS returns 255 on failure to CWD to parent of root.  - PG
+	 */
+	result = 555;
+    }
+    return result / 100;
+}
+
+static int send_cmd_1(const char *verb)
+{
+    char command[80];
+
+    sprintf(command, "%.*s%c%c", (int) sizeof(command) - 4, verb, CR, LF);
+    return response(command);
+}
+
+static int send_cmd_2(const char *verb, const char *param)
+{
+    char *command = 0;
+    int status;
+
+    HTSprintf0(&command, "%s %s%c%c", verb, param, CR, LF);
+    status = response(command);
+    FREE(command);
+
+    return status;
+}
+
+#define send_cwd(path) send_cmd_2("CWD", path)
+
+/*
+ * This function should try to set the macintosh server into binary mode.  Some
+ * servers need an additional letter after the MACB command.
+ */
+static int set_mac_binary(eServerType ServerType)
+{
+    /* try to set mac binary mode */
+    if (ServerType == APPLESHARE_SERVER ||
+	ServerType == NETPRESENZ_SERVER) {
+	/*
+	 * Presumably E means "Enable".  - KW
+	 */
+	return (2 == response("MACB E\r\n"));
+    } else {
+	return (2 == response("MACB\r\n"));
+    }
+}
+
+/* This function gets the current working directory to help
+ * determine what kind of host it is
+ */
+
+static void get_ftp_pwd(eServerType *ServerType, BOOLEAN *UseList)
+{
+    char *cp;
+
+    /* get the working directory (to see what it looks like) */
+    int status = response("PWD\r\n");
+
+    if (status < 0) {
+	return;
+    } else {
+	cp = strchr(response_text + 5, '"');
+	if (cp)
+	    *cp = '\0';
+	if (*ServerType == TCPC_SERVER) {
+	    *ServerType = ((response_text[5] == '/') ?
+			   NCSA_SERVER : TCPC_SERVER);
+	    CTRACE((tfp, "HTFTP: Treating as %s server.\n",
+		    ((*ServerType == NCSA_SERVER) ?
+		     "NCSA" : "TCPC")));
+	} else if (response_text[5] == '/') {
+	    /* path names beginning with / imply Unix,
+	     * right?
+	     */
+	    if (set_mac_binary(*ServerType)) {
+		*ServerType = NCSA_SERVER;
+		CTRACE((tfp, "HTFTP: Treating as NCSA server.\n"));
+	    } else {
+		*ServerType = UNIX_SERVER;
+		*UseList = TRUE;
+		CTRACE((tfp, "HTFTP: Treating as Unix server.\n"));
+	    }
+	    return;
+	} else if (response_text[strlen(response_text) - 1] == ']') {
+	    /* path names ending with ] imply VMS, right? */
+	    *ServerType = VMS_SERVER;
+	    *UseList = TRUE;
+	    CTRACE((tfp, "HTFTP: Treating as VMS server.\n"));
+	} else {
+	    *ServerType = GENERIC_SERVER;
+	    CTRACE((tfp, "HTFTP: Treating as Generic server.\n"));
+	}
+
+	if ((*ServerType == NCSA_SERVER) ||
+	    (*ServerType == TCPC_SERVER) ||
+	    (*ServerType == PETER_LEWIS_SERVER) ||
+	    (*ServerType == NETPRESENZ_SERVER))
+	    set_mac_binary(*ServerType);
+    }
+}
+
+/* This function turns MSDOS-like directory output off for
+ * Windows NT servers.
+ */
+
+static void set_unix_dirstyle(eServerType *ServerType, BOOLEAN *UseList)
+{
+    char *cp;
+
+    /* This is a toggle.  It seems we have to toggle in order to see
+     * the current state (after toggling), so we may end up toggling
+     * twice.  - kw
+     */
+    int status = response("SITE DIRSTYLE\r\n");
+
+    if (status != 2) {
+	*ServerType = GENERIC_SERVER;
+	CTRACE((tfp, "HTFTP: DIRSTYLE failed, treating as Generic server.\n"));
+	return;
+    } else {
+	*UseList = TRUE;
+	/* Expecting one of:
+	 * 200 MSDOS-like directory output is off
+	 * 200 MSDOS-like directory output is on
+	 * The following code doesn't look for the full exact string -
+	 * who knows how the wording may change in some future version.
+	 * If the first response isn't recognized, we toggle again
+	 * anyway, under the assumption that it's more likely that
+	 * the MSDOS setting was "off" originally. - kw
+	 */
+	cp = strstr(response_text + 4, "MSDOS");
+	if (cp && strstr(cp, " off")) {
+	    return;		/* already off now. */
+	} else {
+	    response("SITE DIRSTYLE\r\n");
+	}
+    }
+}
+
+/*	Get a valid connection to the host
+ *	----------------------------------
+ *
+ * On entry,
+ *	arg	points to the name of the host in a hypertext address
+ * On exit,
+ *	returns <0 if error
+ *		socket number if success
+ *
+ *	This routine takes care of managing timed-out connections, and
+ *	limiting the number of connections in use at any one time.
+ *
+ *	It ensures that all connections are logged in if they exist.
+ *	It ensures they have the port number transferred.
+ */
+static int get_connection(const char *arg,
+			  HTParentAnchor *anchor)
+{
+    int status;
+    char *command = 0;
+    connection *con;
+    char *username = NULL;
+    char *password = NULL;
+    static BOOLEAN firstuse = TRUE;
+
+    if (firstuse) {
+	/*
+	 * Set up freeing at exit.  - FM
+	 */
+#ifdef LY_FIND_LEAKS
+	atexit(free_FTPGlobals);
+#endif
+	firstuse = FALSE;
+    }
+
+    if (control) {
+	/*
+	 * Reuse this object - KW, DW & FM
+	 */
+	if (control->socket != -1) {
+	    NETCLOSE(control->socket);
+	}
+	con = control;
+	con->addr = 0;
+	con->binary = FALSE;
+    } else {
+	/*
+	 * Allocate and init control struct.
+	 */
+	con = typecalloc(connection);
+	if (con == NULL)
+	    outofmem(__FILE__, "get_connection");
+
+	assert(con != NULL);
+    }
+    con->socket = -1;
+
+    if (!arg)
+	return -1;		/* Bad if no name specified     */
+    if (!*arg)
+	return -1;		/* Bad if name had zero length  */
+
+/* Get node name:
+*/
+    CTRACE((tfp, "get_connection(%s)\n", arg));
+    {
+	char *p1 = HTParse(arg, "", PARSE_HOST);
+	char *p2 = strrchr(p1, '@');	/* user? */
+	char *pw = NULL;
+
+	if (p2 != NULL) {
+	    username = p1;
+	    *p2 = '\0';		/* terminate */
+	    p1 = p2 + 1;	/* point to host */
+	    pw = strchr(username, ':');
+	    if (pw != NULL) {
+		*pw++ = '\0';
+		password = HTUnEscape(pw);
+	    }
+	    if (*username)
+		HTUnEscape(username);
+
+	    /*
+	     * If the password doesn't exist then we are going to have to ask
+	     * the user for it.  The only problem is that we don't want to ask
+	     * for it every time, so we will store away in a primitive fashion.
+	     */
+	    if (!password) {
+		char *tmp = NULL;
+
+		HTSprintf0(&tmp, "%s@%s", username, p1);
+		/*
+		 * If the user@host is not equal to the last time through or
+		 * user_entered_password has no data then we need to ask the
+		 * user for the password.
+		 */
+		if (!last_username_and_host ||
+		    strcmp(tmp, last_username_and_host) ||
+		    !user_entered_password) {
+
+		    StrAllocCopy(last_username_and_host, tmp);
+		    HTSprintf0(&tmp, gettext("Enter password for user %s@%s:"),
+			       username, p1);
+		    FREE(user_entered_password);
+		    user_entered_password = HTPromptPassword(tmp);
+
+		}		/* else we already know the password */
+		password = user_entered_password;
+		FREE(tmp);
+	    }
+	}
+
+	if (!username)
+	    FREE(p1);
+    }				/* scope of p1 */
+
+    status = HTDoConnect(arg, "FTP", IPPORT_FTP, (int *) &con->socket);
+
+    if (status < 0) {
+	if (status == HT_INTERRUPTED) {
+	    CTRACE((tfp, "HTFTP: Interrupted on connect\n"));
+	} else {
+	    CTRACE((tfp, "HTFTP: Unable to connect to remote host for `%s'.\n",
+		    arg));
+	}
+	if (status == HT_INTERRUPTED) {
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	    status = HT_NOT_LOADED;
+	} else {
+	    HTAlert(gettext("Unable to connect to FTP host."));
+	}
+	if (con->socket != -1) {
+	    NETCLOSE(con->socket);
+	}
+
+	FREE(username);
+	if (control == con)
+	    control = NULL;
+	FREE(con);
+	return status;		/* Bad return */
+    }
+
+    CTRACE((tfp, "FTP connected, socket %d  control %p\n",
+	    con->socket, (void *) con));
+    control = con;		/* Current control connection */
+
+    /* Initialise buffering for control connection */
+    HTInitInput(control->socket);
+    init_help_message_cache();	/* Clear the login message buffer. */
+
+/*	Now we log in		Look up username, prompt for pw.
+*/
+    status = response((char *) 0);	/* Get greeting */
+
+    if (status == HT_INTERRUPTED) {
+	CTRACE((tfp, "HTFTP: Interrupted at beginning of login.\n"));
+	_HTProgress(CONNECTION_INTERRUPTED);
+	NETCLOSE(control->socket);
+	control->socket = -1;
+	return HT_INTERRUPTED;
+    }
+    server_type = GENERIC_SERVER;	/* reset */
+    if (status == 2) {		/* Send username */
+	char *cp;		/* look at greeting text */
+
+	/* don't gettext() this -- incoming text: */
+	if (strlen(response_text) > 4) {
+	    if ((cp = strstr(response_text, " awaits your command")) ||
+		(cp = strstr(response_text, " ready."))) {
+		*cp = '\0';
+	    }
+	    cp = response_text + 4;
+	    if (!strncasecomp(cp, "NetPresenz", 10))
+		server_type = NETPRESENZ_SERVER;
+	} else {
+	    cp = response_text;
+	}
+	StrAllocCopy(anchor->server, cp);
+
+	status = send_cmd_2("USER", (username && *username)
+			    ? username
+			    : "anonymous");
+
+	if (status == HT_INTERRUPTED) {
+	    CTRACE((tfp, "HTFTP: Interrupted while sending username.\n"));
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	    NETCLOSE(control->socket);
+	    control->socket = -1;
+	    return HT_INTERRUPTED;
+	}
+    }
+    if (status == 3) {		/* Send password */
+	if (password) {
+	    /*
+	     * We have non-zero length password, so send it. - FM
+	     */
+	    HTSprintf0(&command, "PASS %s%c%c", password, CR, LF);
+	} else {
+	    /*
+	     * Create and send a mail address as the password. - FM
+	     */
+	    const char *the_address;
+	    char *user = NULL;
+	    const char *host = NULL;
+	    char *cp;
+
+	    the_address = anonftp_password;
+	    if (isEmpty(the_address))
+		the_address = personal_mail_address;
+	    if (isEmpty(the_address))
+		the_address = LYGetEnv("USER");
+	    if (isEmpty(the_address))
+		the_address = "WWWuser";
+
+	    StrAllocCopy(user, the_address);
+	    if ((cp = strchr(user, '@')) != NULL) {
+		*cp++ = '\0';
+		if (*cp == '\0')
+		    host = HTHostName();
+		else
+		    host = cp;
+	    } else {
+		host = HTHostName();
+	    }
+
+	    /*
+	     * If host is not fully qualified, suppress it
+	     * as ftp.uu.net prefers a blank to a bad name
+	     */
+	    if (!(host) || strchr(host, '.') == NULL)
+		host = "";
+
+	    HTSprintf0(&command, "PASS %s@%s%c%c", user, host, CR, LF);
+	    FREE(user);
+	}
+	status = response(command);
+	FREE(command);
+	if (status == HT_INTERRUPTED) {
+	    CTRACE((tfp, "HTFTP: Interrupted while sending password.\n"));
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	    NETCLOSE(control->socket);
+	    control->socket = -1;
+	    return HT_INTERRUPTED;
+	}
+    }
+    FREE(username);
+
+    if (status == 3) {
+	status = send_cmd_1("ACCT noaccount");
+	if (status == HT_INTERRUPTED) {
+	    CTRACE((tfp, "HTFTP: Interrupted while sending password.\n"));
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	    NETCLOSE(control->socket);
+	    control->socket = -1;
+	    return HT_INTERRUPTED;
+	}
+
+    }
+    if (status != 2) {
+	CTRACE((tfp, "HTFTP: Login fail: %s", response_text));
+	/* if (control->socket > 0) close_connection(control->socket); */
+	return -1;		/* Bad return */
+    }
+    CTRACE((tfp, "HTFTP: Logged in.\n"));
+
+    /* Check for host type */
+    if (server_type != NETPRESENZ_SERVER)
+	server_type = GENERIC_SERVER;	/* reset */
+    use_list = FALSE;		/* reset */
+    if (response("SYST\r\n") == 2) {
+	/* we got a line -- what kind of server are we talking to? */
+	if (StrNCmp(response_text + 4,
+		    "UNIX Type: L8 MAC-OS MachTen", 28) == 0) {
+	    server_type = MACHTEN_SERVER;
+	    use_list = TRUE;
+	    CTRACE((tfp, "HTFTP: Treating as MachTen server.\n"));
+
+	} else if (strstr(response_text + 4, "UNIX") != NULL ||
+		   strstr(response_text + 4, "Unix") != NULL) {
+	    server_type = UNIX_SERVER;
+	    unsure_type = FALSE;	/* to the best of out knowledge... */
+	    use_list = TRUE;
+	    CTRACE((tfp, "HTFTP: Treating as Unix server.\n"));
+
+	} else if (strstr(response_text + 4, "MSDOS") != NULL) {
+	    server_type = MSDOS_SERVER;
+	    use_list = TRUE;
+	    CTRACE((tfp, "HTFTP: Treating as MSDOS (Unix emulation) server.\n"));
+
+	} else if (StrNCmp(response_text + 4, "VMS", 3) == 0) {
+	    char *tilde = strstr(arg, "/~");
+
+	    use_list = TRUE;
+	    if (tilde != 0
+		&& tilde[2] != 0
+		&& strstr(response_text + 4, "MadGoat") != 0) {
+		server_type = UNIX_SERVER;
+		CTRACE((tfp, "HTFTP: Treating VMS as UNIX server.\n"));
+	    } else {
+		server_type = VMS_SERVER;
+		CTRACE((tfp, "HTFTP: Treating as VMS server.\n"));
+	    }
+
+	} else if ((StrNCmp(response_text + 4, "VM/CMS", 6) == 0) ||
+		   (StrNCmp(response_text + 4, "VM ", 3) == 0)) {
+	    server_type = CMS_SERVER;
+	    use_list = TRUE;
+	    CTRACE((tfp, "HTFTP: Treating as CMS server.\n"));
+
+	} else if (StrNCmp(response_text + 4, "DCTS", 4) == 0) {
+	    server_type = DCTS_SERVER;
+	    CTRACE((tfp, "HTFTP: Treating as DCTS server.\n"));
+
+	} else if (strstr(response_text + 4, "MAC-OS TCP/Connect II") != NULL) {
+	    server_type = TCPC_SERVER;
+	    CTRACE((tfp, "HTFTP: Looks like a TCPC server.\n"));
+	    get_ftp_pwd(&server_type, &use_list);
+	    unsure_type = TRUE;
+
+	} else if (server_type == NETPRESENZ_SERVER) {	/* already set above */
+	    use_list = TRUE;
+	    set_mac_binary(server_type);
+	    CTRACE((tfp, "HTFTP: Treating as NetPresenz (MACOS) server.\n"));
+
+	} else if (StrNCmp(response_text + 4, "MACOS Peter's Server", 20) == 0) {
+	    server_type = PETER_LEWIS_SERVER;
+	    use_list = TRUE;
+	    set_mac_binary(server_type);
+	    CTRACE((tfp, "HTFTP: Treating as Peter Lewis (MACOS) server.\n"));
+
+	} else if (StrNCmp(response_text + 4, "Windows_NT", 10) == 0) {
+	    server_type = WINDOWS_NT_SERVER;
+	    CTRACE((tfp, "HTFTP: Treating as Window_NT server.\n"));
+	    set_unix_dirstyle(&server_type, &use_list);
+
+	} else if (StrNCmp(response_text + 4, "Windows2000", 11) == 0) {
+	    server_type = WINDOWS_2K_SERVER;
+	    CTRACE((tfp, "HTFTP: Treating as Window_2K server.\n"));
+	    set_unix_dirstyle(&server_type, &use_list);
+
+	} else if (StrNCmp(response_text + 4, "MS Windows", 10) == 0) {
+	    server_type = MS_WINDOWS_SERVER;
+	    use_list = TRUE;
+	    CTRACE((tfp, "HTFTP: Treating as MS Windows server.\n"));
+
+	} else if (StrNCmp(response_text + 4,
+			   "MACOS AppleShare IP FTP Server", 30) == 0) {
+	    server_type = APPLESHARE_SERVER;
+	    use_list = TRUE;
+	    set_mac_binary(server_type);
+	    CTRACE((tfp, "HTFTP: Treating as AppleShare server.\n"));
+
+	} else {
+	    server_type = GENERIC_SERVER;
+	    CTRACE((tfp, "HTFTP: Ugh!  A Generic server.\n"));
+	    get_ftp_pwd(&server_type, &use_list);
+	    unsure_type = TRUE;
+	}
+    } else {
+	/* SYST fails :(  try to get the type from the PWD command */
+	get_ftp_pwd(&server_type, &use_list);
+    }
+
+/*  Now we inform the server of the port number we will listen on
+*/
+#ifdef NOTREPEAT_PORT
+    {
+	int status = response(port_command);
+
+	if (status != 2) {
+	    if (control->socket)
+		close_connection(control->socket);
+	    return -status;	/* Bad return */
+	}
+	CTRACE((tfp, "HTFTP: Port defined.\n"));
+    }
+#endif /* NOTREPEAT_PORT */
+    return con->socket;		/* Good return */
+}
+
+static void reset_master_socket(void)
+{
+    have_socket = FALSE;
+}
+
+static void set_master_socket(int value)
+{
+    have_socket = (BOOLEAN) (value >= 0);
+    if (have_socket)
+	master_socket = (unsigned) value;
+}
+
+/*	Close Master (listening) socket
+ *	-------------------------------
+ *
+ *
+ */
+static int close_master_socket(void)
+{
+    int status;
+
+    if (have_socket)
+	FD_CLR(master_socket, &open_sockets);
+
+    status = NETCLOSE((int) master_socket);
+    CTRACE((tfp, "HTFTP: Closed master socket %u\n", master_socket));
+
+    reset_master_socket();
+
+    if (status < 0)
+	return HTInetStatus(gettext("close master socket"));
+    else
+	return status;
+}
+
+/*	Open a master socket for listening on
+ *	-------------------------------------
+ *
+ *	When data is transferred, we open a port, and wait for the server to
+ *	connect with the data.
+ *
+ * On entry,
+ *	have_socket	Must be false, if master_socket is not setup already
+ *	master_socket	Must be negative if not set up already.
+ * On exit,
+ *	Returns		socket number if good
+ *			less than zero if error.
+ *	master_socket	is socket number if good, else negative.
+ *	port_number	is valid if good.
+ */
+static int get_listen_socket(void)
+{
+#ifdef INET6
+    struct sockaddr_storage soc_address;	/* Binary network address */
+    struct sockaddr_in *soc_in = (struct sockaddr_in *) &soc_address;
+    int af;
+    LY_SOCKLEN slen;
+
+#else
+    struct sockaddr_in soc_address;	/* Binary network address */
+    struct sockaddr_in *soc_in = &soc_address;
+#endif /* INET6 */
+    int new_socket;		/* Will be master_socket */
+
+    FD_ZERO(&open_sockets);	/* Clear our record of open sockets */
+    num_sockets = 0;
+
+#ifndef REPEAT_LISTEN
+    if (have_socket)
+	return master_socket;	/* Done already */
+#endif /* !REPEAT_LISTEN */
+
+#ifdef INET6
+    /* query address family of control connection */
+    slen = (LY_SOCKLEN) sizeof(soc_address);
+    if (getsockname(control->socket, (struct sockaddr *) &soc_address,
+		    &slen) < 0) {
+	return HTInetStatus("getsockname failed");
+    }
+    af = ((struct sockaddr *) &soc_address)->sa_family;
+    memset(&soc_address, 0, sizeof(soc_address));
+#endif /* INET6 */
+
+/*  Create internet socket
+*/
+#ifdef INET6
+    new_socket = socket(af, SOCK_STREAM, IPPROTO_TCP);
+#else
+    new_socket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
+#endif /* INET6 */
+
+    if (new_socket < 0)
+	return HTInetStatus(gettext("socket for master socket"));
+
+    CTRACE((tfp, "HTFTP: Opened master socket number %d\n", new_socket));
+
+/*  Search for a free port.
+*/
+#ifdef INET6
+    memset(&soc_address, 0, sizeof(soc_address));
+    ((struct sockaddr *) &soc_address)->sa_family = af;
+    switch (af) {
+    case AF_INET:
+#ifdef SIN6_LEN
+	((struct sockaddr *) &soc_address)->sa_len = sizeof(struct sockaddr_in);
+#endif /* SIN6_LEN */
+	break;
+    case AF_INET6:
+#ifdef SIN6_LEN
+	((struct sockaddr *) &soc_address)->sa_len = sizeof(struct sockaddr_in6);
+#endif /* SIN6_LEN */
+	break;
+    default:
+	HTInetStatus("AF");
+    }
+#else
+    soc_in->sin_family = AF_INET;	/* Family = internet, host order  */
+    soc_in->sin_addr.s_addr = INADDR_ANY;	/* Any peer address */
+#endif /* INET6 */
+#ifdef POLL_PORTS
+    {
+	PortNumber old_port_number = port_number;
+
+	for (port_number = (old_port_number + 1);; port_number++) {
+	    int status;
+
+	    if (port_number > LAST_TCP_PORT)
+		port_number = FIRST_TCP_PORT;
+	    if (port_number == old_port_number) {
+		return HTInetStatus("bind");
+	    }
+#ifdef INET6
+	    soc_in->sin_port = htons(port_number);
+#else
+	    soc_address.sin_port = htons(port_number);
+#endif /* INET6 */
+#ifdef SOCKS
+	    if (socks_flag)
+		if ((status = Rbind(new_socket,
+				    (struct sockaddr *) &soc_address,
+		/* Cast to generic sockaddr */
+				    SOCKADDR_LEN(soc_address)
+#ifndef SHORTENED_RBIND
+				    ,socks_bind_remoteAddr
+#endif /* !SHORTENED_RBIND */
+		     )) == 0) {
+		    break;
+		} else
+#endif /* SOCKS */
+		    if ((status = bind(new_socket,
+				       (struct sockaddr *) &soc_address,
+		    /* Cast to generic sockaddr */
+				       SOCKADDR_LEN(soc_address)
+			 )) == 0) {
+		    break;
+		}
+	    CTRACE((tfp, "TCP bind attempt to port %d yields %d, errno=%d\n",
+		    port_number, status, SOCKET_ERRNO));
+	}			/* for */
+    }
+#else
+    {
+	int status;
+	LY_SOCKLEN address_length = (LY_SOCKLEN) sizeof(soc_address);
+
+#ifdef SOCKS
+	if (socks_flag)
+	    status = Rgetsockname(control->socket,
+				  (struct sockaddr *) &soc_address,
+				  &address_length);
+	else
+#endif /* SOCKS */
+	    status = getsockname(control->socket,
+				 (struct sockaddr *) &soc_address,
+				 &address_length);
+	if (status < 0)
+	    return HTInetStatus("getsockname");
+#ifdef INET6
+	CTRACE((tfp, "HTFTP: This host is %s\n",
+		HTInetString((void *) soc_in)));
+
+	soc_in->sin_port = 0;	/* Unspecified: please allocate */
+#else
+	CTRACE((tfp, "HTFTP: This host is %s\n",
+		HTInetString(soc_in)));
+
+	soc_address.sin_port = 0;	/* Unspecified: please allocate */
+#endif /* INET6 */
+#ifdef SOCKS
+	if (socks_flag)
+	    status = Rbind(new_socket,
+			   (struct sockaddr *) &soc_address,
+	    /* Cast to generic sockaddr */
+			   sizeof(soc_address)
+#ifndef SHORTENED_RBIND
+			   ,socks_bind_remoteAddr
+#endif /* !SHORTENED_RBIND */
+		);
+	else
+#endif /* SOCKS */
+	    status = bind(new_socket,
+			  (struct sockaddr *) &soc_address,
+	    /* Cast to generic sockaddr */
+			  SOCKADDR_LEN(soc_address)
+		);
+	if (status < 0)
+	    return HTInetStatus("bind");
+
+	address_length = sizeof(soc_address);
+#ifdef SOCKS
+	if (socks_flag)
+	    status = Rgetsockname(new_socket,
+				  (struct sockaddr *) &soc_address,
+				  &address_length);
+	else
+#endif /* SOCKS */
+	    status = getsockname(new_socket,
+				 (struct sockaddr *) &soc_address,
+				 &address_length);
+	if (status < 0)
+	    return HTInetStatus("getsockname");
+    }
+#endif /* POLL_PORTS */
+
+#ifdef INET6
+    CTRACE((tfp, "HTFTP: bound to port %d on %s\n",
+	    (int) ntohs(soc_in->sin_port),
+	    HTInetString((void *) soc_in)));
+#else
+    CTRACE((tfp, "HTFTP: bound to port %d on %s\n",
+	    (int) ntohs(soc_in->sin_port),
+	    HTInetString(soc_in)));
+#endif /* INET6 */
+
+#ifdef REPEAT_LISTEN
+    if (have_socket)
+	(void) close_master_socket();
+#endif /* REPEAT_LISTEN */
+
+    set_master_socket(new_socket);
+
+/*	Now we must find out who we are to tell the other guy
+*/
+    (void) HTHostName();	/* Make address valid - doesn't work */
+#ifdef INET6
+    switch (((struct sockaddr *) &soc_address)->sa_family) {
+    case AF_INET:
+#endif /* INET6 */
+	sprintf(port_command, "PORT %d,%d,%d,%d,%d,%d%c%c",
+		(int) *((unsigned char *) (&soc_in->sin_addr) + 0),
+		(int) *((unsigned char *) (&soc_in->sin_addr) + 1),
+		(int) *((unsigned char *) (&soc_in->sin_addr) + 2),
+		(int) *((unsigned char *) (&soc_in->sin_addr) + 3),
+		(int) *((unsigned char *) (&soc_in->sin_port) + 0),
+		(int) *((unsigned char *) (&soc_in->sin_port) + 1),
+		CR, LF);
+
+#ifdef INET6
+	break;
+
+    case AF_INET6:
+	{
+	    char hostbuf[MAXHOSTNAMELEN];
+	    char portbuf[MAXHOSTNAMELEN];
+
+	    getnameinfo((struct sockaddr *) &soc_address,
+			SOCKADDR_LEN(soc_address),
+			hostbuf,
+			(socklen_t) sizeof(hostbuf),
+			portbuf,
+			(socklen_t) sizeof(portbuf),
+			NI_NUMERICHOST | NI_NUMERICSERV);
+	    sprintf(port_command, "EPRT |%d|%s|%s|%c%c", 2, hostbuf, portbuf,
+		    CR, LF);
+	    break;
+	}
+    default:
+	sprintf(port_command, "JUNK%c%c", CR, LF);
+	break;
+    }
+#endif /* INET6 */
+
+    /*  Inform TCP that we will accept connections
+     */
+    {
+	int status;
+
+#ifdef SOCKS
+	if (socks_flag)
+	    status = Rlisten((int) master_socket, 1);
+	else
+#endif /* SOCKS */
+	    status = listen((int) master_socket, 1);
+	if (status < 0) {
+	    reset_master_socket();
+	    return HTInetStatus("listen");
+	}
+    }
+    CTRACE((tfp, "TCP: Master socket(), bind() and listen() all OK\n"));
+    FD_SET(master_socket, &open_sockets);
+    if ((master_socket + 1) > num_sockets)
+	num_sockets = master_socket + 1;
+
+    return (int) master_socket;	/* Good */
+
+}				/* get_listen_socket */
+
+static const char *months[12] =
+{
+    "Jan", "Feb", "Mar", "Apr", "May", "Jun",
+    "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
+};
+
+/*	Procedure: Set the current and last year strings and date integer
+ *	-----------------------------------------------------------------
+ *
+ *	Bug:
+ *		This code is for sorting listings by date, if that option
+ *		is selected in Lynx, and doesn't take into account time
+ *		zones or ensure resetting at midnight, so the sort may not
+ *		be perfect, but the actual date isn't changed in the display,
+ *		i.e., the date is still correct. - FM
+ */
+static void set_years_and_date(void)
+{
+    char day[8], month[8], date[12];
+    time_t NowTime;
+    int i;
+
+    NowTime = time(NULL);
+    StrNCpy(day, (char *) ctime(&NowTime) + 8, 2);
+    day[2] = '\0';
+    if (day[0] == ' ') {
+	day[0] = '0';
+    }
+    StrNCpy(month, (char *) ctime(&NowTime) + 4, 3);
+    month[3] = '\0';
+    for (i = 0; i < 12; i++) {
+	if (!strcasecomp(month, months[i])) {
+	    break;
+	}
+    }
+    i++;
+    sprintf(date, "9999%02d%.2s", i, day);
+    TheDate = atoi(date);
+    strcpy(ThisYear, (char *) ctime(&NowTime) + 20);
+    ThisYear[4] = '\0';
+    sprintf(LastYear, "%d", (atoi(ThisYear) - 1));
+    HaveYears = TRUE;
+}
+
+typedef struct _EntryInfo {
+    char *filename;
+    char *linkname;		/* symbolic link, if any */
+    char *type;
+    char *date;
+    unsigned long size;
+    BOOLEAN display;		/* show this entry? */
+#ifdef LONG_LIST
+    unsigned long file_links;
+    char *file_mode;
+    char *file_user;
+    char *file_group;
+#endif
+} EntryInfo;
+
+static void free_entryinfo_struct_contents(EntryInfo *entry_info)
+{
+    if (entry_info) {
+	FREE(entry_info->filename);
+	FREE(entry_info->linkname);
+	FREE(entry_info->type);
+	FREE(entry_info->date);
+    }
+    /* dont free the struct */
+}
+
+/*
+ * is_ls_date() --
+ *	Return TRUE if s points to a string of the form:
+ *		"Sep  1  1990 " or
+ *		"Sep 11 11:59 " or
+ *		"Dec 12 1989  " or
+ *		"FCv 23 1990  " ...
+ */
+static BOOLEAN is_ls_date(char *s)
+{
+    /* must start with three alpha characters */
+    if (!isalpha(UCH(*s++)) || !isalpha(UCH(*s++)) || !isalpha(UCH(*s++)))
+	return FALSE;
+
+    /* space or HT_NON_BREAK_SPACE */
+    if (!(*s == ' ' || *s == HT_NON_BREAK_SPACE)) {
+	return FALSE;
+    }
+    s++;
+
+    /* space or digit */
+    if (!(*s == ' ' || isdigit(UCH(*s)))) {
+	return FALSE;
+    }
+    s++;
+
+    /* digit */
+    if (!isdigit(UCH(*s++)))
+	return FALSE;
+
+    /* space */
+    if (*s++ != ' ')
+	return FALSE;
+
+    /* space or digit */
+    if (!(*s == ' ' || isdigit(UCH(*s)))) {
+	return FALSE;
+    }
+    s++;
+
+    /* digit */
+    if (!isdigit(UCH(*s++)))
+	return FALSE;
+
+    /* colon or digit */
+    if (!(*s == ':' || isdigit(UCH(*s)))) {
+	return FALSE;
+    }
+    s++;
+
+    /* digit */
+    if (!isdigit(UCH(*s++)))
+	return FALSE;
+
+    /* space or digit */
+    if (!(*s == ' ' || isdigit(UCH(*s)))) {
+	return FALSE;
+    }
+    s++;
+
+    /* space */
+    if (*s != ' ')
+	return FALSE;
+
+    return TRUE;
+}				/* is_ls_date() */
+
+/*
+ * Extract the name, size, and date from an EPLF line.  - 08-06-96 DJB
+ */
+static void parse_eplf_line(char *line,
+			    EntryInfo *info)
+{
+    char *cp = line;
+    char ct[26];
+    unsigned long size;
+    time_t secs;
+    static time_t base;		/* time() value on this OS in 1970 */
+    static int flagbase = 0;
+
+    if (!flagbase) {
+	struct tm t;
+
+	t.tm_year = 70;
+	t.tm_mon = 0;
+	t.tm_mday = 0;
+	t.tm_hour = 0;
+	t.tm_min = 0;
+	t.tm_sec = 0;
+	t.tm_isdst = -1;
+	base = mktime(&t);	/* could return -1 */
+	flagbase = 1;
+    }
+
+    while (*cp) {
+	switch (*cp) {
+	case '\t':
+	    StrAllocCopy(info->filename, cp + 1);
+	    return;
+	case 's':
+	    size = 0;
+	    while (*(++cp) && (*cp != ','))
+		size = (size * 10) + (unsigned long) (*cp - '0');
+	    info->size = size;
+	    break;
+	case 'm':
+	    secs = 0;
+	    while (*(++cp) && (*cp != ','))
+		secs = (secs * 10) + (*cp - '0');
+	    secs += base;	/* assumes that time_t is #seconds */
+	    strcpy(ct, ctime(&secs));
+	    ct[24] = 0;
+	    StrAllocCopy(info->date, ct);
+	    break;
+	case '/':
+	    StrAllocCopy(info->type, ENTRY_IS_DIRECTORY);
+	    /* FALLTHRU */
+	default:
+	    while (*cp) {
+		if (*cp++ == ',')
+		    break;
+	    }
+	    break;
+	}
+    }
+}				/* parse_eplf_line */
+
+/*
+ * Extract the name, size, and date from an ls -l line.
+ */
+static void parse_ls_line(char *line,
+			  EntryInfo *entry)
+{
+#ifdef LONG_LIST
+    char *next;
+    char *cp;
+#endif
+    int i, j;
+    unsigned long base = 1;
+    unsigned long size_num = 0;
+
+    for (i = (int) strlen(line) - 1;
+	 (i > 13) && (!isspace(UCH(line[i])) || !is_ls_date(&line[i - 12]));
+	 i--) {
+	;			/* null body */
+    }
+    line[i] = '\0';
+    if (i > 13) {
+	StrAllocCopy(entry->date, &line[i - 12]);
+	/* replace the 4th location with nbsp if it is a space or zero */
+	if (entry->date[4] == ' ' || entry->date[4] == '0')
+	    entry->date[4] = HT_NON_BREAK_SPACE;
+	/* make sure year or time is flush right */
+	if (entry->date[11] == ' ') {
+	    for (j = 11; j > 6; j--) {
+		entry->date[j] = entry->date[j - 1];
+	    }
+	}
+    }
+    j = i - 14;
+    while (isdigit(UCH(line[j]))) {
+	size_num += ((unsigned long) (line[j] - '0') * base);
+	base *= 10;
+	j--;
+    }
+    entry->size = size_num;
+    StrAllocCopy(entry->filename, &line[i + 1]);
+
+#ifdef LONG_LIST
+    line[j] = '\0';
+
+    /*
+     * Extract the file-permissions, as a string.
+     */
+    if ((cp = strchr(line, ' ')) != 0) {
+	if ((cp - line) == 10) {
+	    *cp = '\0';
+	    StrAllocCopy(entry->file_mode, line);
+	    *cp = ' ';
+	}
+
+	/*
+	 * Next is the link-count.
+	 */
+	next = 0;
+	entry->file_links = (unsigned long) strtol(cp, &next, 10);
+	if (next == 0 || *next != ' ') {
+	    entry->file_links = 0;
+	    next = cp;
+	} else {
+	    cp = next;
+	}
+	/*
+	 * Next is the user-name.
+	 */
+	while (isspace(UCH(*cp)))
+	    ++cp;
+	if ((next = strchr(cp, ' ')) != 0)
+	    *next = '\0';
+	if (*cp != '\0')
+	    StrAllocCopy(entry->file_user, cp);
+	/*
+	 * Next is the group-name (perhaps).
+	 */
+	if (next != NULL) {
+	    cp = (next + 1);
+	    while (isspace(UCH(*cp)))
+		++cp;
+	    if ((next = strchr(cp, ' ')) != 0)
+		*next = '\0';
+	    if (*cp != '\0')
+		StrAllocCopy(entry->file_group, cp);
+	}
+    }
+#endif
+}
+
+/*
+ * Extract the name and size info and whether it refers to a directory from a
+ * LIST line in "dls" format.
+ */
+static void parse_dls_line(char *line,
+			   EntryInfo *entry_info,
+			   char **pspilledname)
+{
+    short j;
+    int base = 1;
+    int size_num = 0;
+    int len;
+    char *cps = NULL;
+
+    /* README              763  Information about this server\0
+       bin/                  -  \0
+       etc/                  =  \0
+       ls-lR                 0  \0
+       ls-lR.Z               3  \0
+       pub/                  =  Public area\0
+       usr/                  -  \0
+       morgan               14  -> ../real/morgan\0
+       TIMIT.mostlikely.Z\0
+       79215    \0
+     */
+
+    len = (int) strlen(line);
+    if (len == 0) {
+	FREE(*pspilledname);
+	entry_info->display = FALSE;
+	return;
+    }
+    cps = LYSkipNonBlanks(line);
+    if (*cps == '\0') {		/* only a filename, save it and return. */
+	StrAllocCopy(*pspilledname, line);
+	entry_info->display = FALSE;
+	return;
+    }
+    if (len < 24 || line[23] != ' ' ||
+	(isspace(UCH(line[0])) && !*pspilledname)) {
+	/* this isn't the expected "dls" format! */
+	if (!isspace(UCH(line[0])))
+	    *cps = '\0';
+	if (*pspilledname && !*line) {
+	    entry_info->filename = *pspilledname;
+	    *pspilledname = NULL;
+	    if (entry_info->filename[strlen(entry_info->filename) - 1] == '/')
+		StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+	    else
+		StrAllocCopy(entry_info->type, "");
+	} else {
+	    StrAllocCopy(entry_info->filename, line);
+	    if (cps && cps != line && *(cps - 1) == '/')
+		StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+	    else
+		StrAllocCopy(entry_info->type, "");
+	    FREE(*pspilledname);
+	}
+	return;
+    }
+
+    j = 22;
+    if (line[j] == '=' || line[j] == '-') {
+	StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+    } else {
+	while (isdigit(UCH(line[j]))) {
+	    size_num += (line[j] - '0') * base;
+	    base *= 10;
+	    j--;
+	}
+    }
+    entry_info->size = (unsigned long) size_num;
+
+    cps = LYSkipBlanks(&line[23]);
+    if (!StrNCmp(cps, "-> ", 3) && cps[3] != '\0' && cps[3] != ' ') {
+	StrAllocCopy(entry_info->type, ENTRY_IS_SYMBOLIC_LINK);
+	StrAllocCopy(entry_info->linkname, LYSkipBlanks(cps + 3));
+	entry_info->size = 0;	/* don't display size */
+    }
+
+    if (j > 0)
+	line[j] = '\0';
+
+    LYTrimTrailing(line);
+
+    len = (int) strlen(line);
+    if (len == 0 && *pspilledname && **pspilledname) {
+	line = *pspilledname;
+	len = (int) strlen(*pspilledname);
+    }
+    if (len > 0 && line[len - 1] == '/') {
+	/*
+	 * It's a dir, remove / and mark it as such.
+	 */
+	if (len > 1)
+	    line[len - 1] = '\0';
+	if (!entry_info->type)
+	    StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+    }
+
+    StrAllocCopy(entry_info->filename, line);
+    FREE(*pspilledname);
+}				/* parse_dls_line() */
+
+/*
+ * parse_vms_dir_entry()
+ *	Format the name, date, and size from a VMS LIST line
+ *	into the EntryInfo structure - FM
+ */
+static void parse_vms_dir_entry(char *line,
+				EntryInfo *entry_info)
+{
+    int i, j;
+    unsigned int ialloc;
+    char *cp, *cpd, *cps, date[16];
+    const char *sp = " ";
+
+    /* Get rid of blank lines, and information lines.  Valid lines have the ';'
+     * version number token.
+     */
+    if (!strlen(line) || (cp = strchr(line, ';')) == NULL) {
+	entry_info->display = FALSE;
+	return;
+    }
+
+    /* Cut out file or directory name at VMS version number. */
+    *cp++ = '\0';
+    StrAllocCopy(entry_info->filename, line);
+
+    /* Cast VMS non-README file and directory names to lowercase. */
+    if (strstr(entry_info->filename, "READ") == NULL) {
+	LYLowerCase(entry_info->filename);
+	i = (int) strlen(entry_info->filename);
+    } else {
+	i = (int) ((strstr(entry_info->filename, "READ")
+		    - entry_info->filename)
+		   + 4);
+	if (!StrNCmp(&entry_info->filename[i], "ME", 2)) {
+	    i += 2;
+	    while (entry_info->filename[i] && entry_info->filename[i] != '.') {
+		i++;
+	    }
+	} else if (!StrNCmp(&entry_info->filename[i], ".ME", 3)) {
+	    i = (int) strlen(entry_info->filename);
+	} else {
+	    i = 0;
+	}
+	LYLowerCase(entry_info->filename + i);
+    }
+
+    /* Uppercase terminal .z's or _z's. */
+    if ((--i > 2) &&
+	entry_info->filename[i] == 'z' &&
+	(entry_info->filename[i - 1] == '.' ||
+	 entry_info->filename[i - 1] == '_'))
+	entry_info->filename[i] = 'Z';
+
+    /* Convert any tabs in rest of line to spaces. */
+    cps = cp - 1;
+    while ((cps = strchr(cps + 1, '\t')) != NULL)
+	*cps = ' ';
+
+    /* Collapse serial spaces. */
+    i = 0;
+    j = 1;
+    cps = cp;
+    while (cps[j] != '\0') {
+	if (cps[i] == ' ' && cps[j] == ' ')
+	    j++;
+	else
+	    cps[++i] = cps[j++];
+    }
+    cps[++i] = '\0';
+
+    /* Set the years and date, if we don't have them yet. * */
+    if (!HaveYears) {
+	set_years_and_date();
+    }
+
+    /* Track down the date. */
+    if ((cpd = strchr(cp, '-')) != NULL &&
+	strlen(cpd) > 9 && isdigit(UCH(*(cpd - 1))) &&
+	isalpha(UCH(*(cpd + 1))) && *(cpd + 4) == '-') {
+
+	/* Month */
+	*(cpd + 2) = (char) TOLOWER(*(cpd + 2));
+	*(cpd + 3) = (char) TOLOWER(*(cpd + 3));
+	sprintf(date, "%.3s ", cpd + 1);
+
+	/* Day */
+	if (isdigit(UCH(*(cpd - 2))))
+	    sprintf(date + 4, "%.2s ", cpd - 2);
+	else
+	    sprintf(date + 4, "%c%.1s ", HT_NON_BREAK_SPACE, cpd - 1);
+
+	/* Time or Year */
+	if (!StrNCmp(ThisYear, cpd + 5, 4) &&
+	    strlen(cpd) > 15 && *(cpd + 12) == ':') {
+	    sprintf(date + 7, "%.5s", cpd + 10);
+	} else {
+	    sprintf(date + 7, " %.4s", cpd + 5);
+	}
+
+	StrAllocCopy(entry_info->date, date);
+    }
+
+    /* Track down the size */
+    if ((cpd = strchr(cp, '/')) != NULL) {
+	/* Appears be in used/allocated format */
+	cps = cpd;
+	while (isdigit(UCH(*(cps - 1))))
+	    cps--;
+	if (cps < cpd)
+	    *cpd = '\0';
+	entry_info->size = (unsigned long) atol(cps);
+	cps = cpd + 1;
+	while (isdigit(UCH(*cps)))
+	    cps++;
+	*cps = '\0';
+	ialloc = (unsigned) atoi(cpd + 1);
+	/* Check if used is in blocks or bytes */
+	if (entry_info->size <= ialloc)
+	    entry_info->size *= 512;
+
+    } else if (strtok(cp, sp) != NULL) {
+	/* We just initialized on the version number */
+	/* Now let's hunt for a lone, size number    */
+	while ((cps = strtok(NULL, sp)) != NULL) {
+	    cpd = cps;
+	    while (isdigit(UCH(*cpd)))
+		cpd++;
+	    if (*cpd == '\0') {
+		/* Assume it's blocks */
+		entry_info->size = ((unsigned long) atol(cps) * 512);
+		break;
+	    }
+	}
+    }
+
+    /* Wrap it up */
+    CTRACE((tfp, "HTFTP: VMS filename: %s  date: %s  size: %lu\n",
+	    entry_info->filename,
+	    NonNull(entry_info->date),
+	    entry_info->size));
+    return;
+}				/* parse_vms_dir_entry() */
+
+/*
+ * parse_ms_windows_dir_entry() --
+ *	Format the name, date, and size from an MS_WINDOWS LIST line into
+ *	the EntryInfo structure (assumes Chameleon NEWT format). - FM
+ */
+static void parse_ms_windows_dir_entry(char *line,
+				       EntryInfo *entry_info)
+{
+    char *cp = line;
+    char *cps, *cpd, date[16];
+    char *end = line + strlen(line);
+
+    /*  Get rid of blank or junk lines.  */
+    cp = LYSkipBlanks(cp);
+    if (!(*cp)) {
+	entry_info->display = FALSE;
+	return;
+    }
+
+    /* Cut out file or directory name. */
+    cps = LYSkipNonBlanks(cp);
+    *cps++ = '\0';
+    cpd = cps;
+    StrAllocCopy(entry_info->filename, cp);
+
+    /* Track down the size */
+    if (cps < end) {
+	cps = LYSkipBlanks(cps);
+	cpd = LYSkipNonBlanks(cps);
+	*cpd++ = '\0';
+	if (isdigit(UCH(*cps))) {
+	    entry_info->size = (unsigned long) atol(cps);
+	} else {
+	    StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+	}
+    } else {
+	StrAllocCopy(entry_info->type, "");
+    }
+
+    /* Set the years and date, if we don't have them yet. * */
+    if (!HaveYears) {
+	set_years_and_date();
+    }
+
+    /* Track down the date. */
+    if (cpd < end) {
+	cpd = LYSkipBlanks(cpd);
+	if (strlen(cpd) > 17) {
+	    *(cpd + 6) = '\0';	/* Month and Day */
+	    *(cpd + 11) = '\0';	/* Year */
+	    *(cpd + 17) = '\0';	/* Time */
+	    if (strcmp(ThisYear, cpd + 7))
+		/* Not this year, so show the year */
+		sprintf(date, "%.6s  %.4s", cpd, (cpd + 7));
+	    else
+		/* Is this year, so show the time */
+		sprintf(date, "%.6s %.5s", cpd, (cpd + 12));
+	    StrAllocCopy(entry_info->date, date);
+	    if (entry_info->date[4] == ' ' || entry_info->date[4] == '0') {
+		entry_info->date[4] = HT_NON_BREAK_SPACE;
+	    }
+	}
+    }
+
+    /* Wrap it up */
+    CTRACE((tfp, "HTFTP: MS Windows filename: %s  date: %s  size: %lu\n",
+	    entry_info->filename,
+	    NonNull(entry_info->date),
+	    entry_info->size));
+    return;
+}				/* parse_ms_windows_dir_entry */
+
+/*
+ * parse_windows_nt_dir_entry() --
+ *	Format the name, date, and size from a WINDOWS_NT LIST line into
+ *	the EntryInfo structure (assumes Chameleon NEWT format). - FM
+ */
+#ifdef NOTDEFINED
+static void parse_windows_nt_dir_entry(char *line,
+				       EntryInfo *entry_info)
+{
+    char *cp = line;
+    char *cps, *cpd, date[16];
+    char *end = line + strlen(line);
+    int i;
+
+    /*  Get rid of blank or junk lines.  */
+    cp = LYSkipBlanks(cp);
+    if (!(*cp)) {
+	entry_info->display = FALSE;
+	return;
+    }
+
+    /* Cut out file or directory name. */
+    cpd = cp;
+    cps = LYSkipNonBlanks(end - 1);
+    cp = (cps + 1);
+    if (!strcmp(cp, ".") || !strcmp(cp, "..")) {
+	entry_info->display = FALSE;
+	return;
+    }
+    StrAllocCopy(entry_info->filename, cp);
+    if (cps < cpd)
+	return;
+    *cp = '\0';
+    end = cp;
+
+    /* Set the years and date, if we don't have them yet. * */
+    if (!HaveYears) {
+	set_years_and_date();
+    }
+
+    /* Cut out the date. */
+    cp = cps = cpd;
+    cps = LYSkipNonBlanks(cps);
+    *cps++ = '\0';
+    if (cps > end) {
+	entry_info->display = FALSE;
+	return;
+    }
+    cps = LYSkipBlanks(cps);
+    cpd = LYSkipNonBlanks(cps);
+    *cps++ = '\0';
+    if (cps > end || cpd == cps || strlen(cpd) < 7) {
+	entry_info->display = FALSE;
+	return;
+    }
+    if (strlen(cp) == 8 &&
+	isdigit(*cp) && isdigit(*(cp + 1)) && *(cp + 2) == '-' &&
+	isdigit(*(cp + 3)) && isdigit(*(cp + 4)) && *(cp + 5) == '-') {
+	*(cp + 2) = '\0';	/* Month */
+	i = atoi(cp) - 1;
+	*(cp + 5) = '\0';	/* Day */
+	sprintf(date, "%.3s %.2s", months[i], (cp + 3));
+	if (date[4] == '0')
+	    date[4] = ' ';
+	cp += 6;		/* Year */
+	if (strcmp((ThisYear + 2), cp)) {
+	    /* Not this year, so show the year */
+	    if (atoi(cp) < 70) {
+		sprintf(&date[6], "  20%.2s", cp);
+	    } else {
+		sprintf(&date[6], "  19%.2s", cp);
+	    }
+	} else {
+	    /* Is this year, so show the time */
+	    *(cpd + 2) = '\0';	/* Hour */
+	    i = atoi(cpd);
+	    if (*(cpd + 5) == 'P' || *(cpd + 5) == 'p')
+		i += 12;
+	    sprintf(&date[6], " %02d:%.2s", i, (cpd + 3));
+	}
+	StrAllocCopy(entry_info->date, date);
+	if (entry_info->date[4] == ' ' || entry_info->date[4] == '0') {
+	    entry_info->date[4] = HT_NON_BREAK_SPACE;
+	}
+    }
+
+    /* Track down the size */
+    if (cps < end) {
+	cps = LYSkipBlanks(cps);
+	cpd = LYSkipNonBlanks(cps);
+	*cpd = '\0';
+	if (isdigit(*cps)) {
+	    entry_info->size = atol(cps);
+	} else {
+	    StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+	}
+    } else {
+	StrAllocCopy(entry_info->type, "");
+    }
+
+    /* Wrap it up */
+    CTRACE((tfp, "HTFTP: Windows NT filename: %s  date: %s  size: %d\n",
+	    entry_info->filename,
+	    NonNull(entry_info->date),
+	    entry_info->size));
+    return;
+}				/* parse_windows_nt_dir_entry */
+#endif /* NOTDEFINED */
+
+/*
+ * parse_cms_dir_entry() --
+ *	Format the name, date, and size from a VM/CMS line into
+ *	the EntryInfo structure. - FM
+ */
+static void parse_cms_dir_entry(char *line,
+				EntryInfo *entry_info)
+{
+    char *cp = line;
+    char *cps, *cpd, date[16];
+    char *end = line + strlen(line);
+    int RecordLength = 0;
+    int Records = 0;
+    int i;
+
+    /*  Get rid of blank or junk lines.  */
+    cp = LYSkipBlanks(cp);
+    if (!(*cp)) {
+	entry_info->display = FALSE;
+	return;
+    }
+
+    /* Cut out file or directory name. */
+    cps = LYSkipNonBlanks(cp);
+    *cps++ = '\0';
+    StrAllocCopy(entry_info->filename, cp);
+    if (strchr(entry_info->filename, '.') != NULL)
+	/* If we already have a dot, we did an NLST. */
+	return;
+    cp = LYSkipBlanks(cps);
+    if (!(*cp)) {
+	/* If we don't have more, we've misparsed. */
+	FREE(entry_info->filename);
+	FREE(entry_info->type);
+	entry_info->display = FALSE;
+	return;
+    }
+    cps = LYSkipNonBlanks(cp);
+    *cps++ = '\0';
+    if ((0 == strcasecomp(cp, "DIR")) && (cp - line) > 17) {
+	/* It's an SFS directory. */
+	StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+	entry_info->size = 0;
+    } else {
+	/* It's a file. */
+	cp--;
+	*cp = '.';
+	StrAllocCat(entry_info->filename, cp);
+
+	/* Track down the VM/CMS RECFM or type. */
+	cp = cps;
+	if (cp < end) {
+	    cp = LYSkipBlanks(cp);
+	    cps = LYSkipNonBlanks(cp);
+	    *cps++ = '\0';
+	    /* Check cp here, if it's relevant someday. */
+	}
+    }
+
+    /* Track down the record length or dash. */
+    cp = cps;
+    if (cp < end) {
+	cp = LYSkipBlanks(cp);
+	cps = LYSkipNonBlanks(cp);
+	*cps++ = '\0';
+	if (isdigit(UCH(*cp))) {
+	    RecordLength = atoi(cp);
+	}
+    }
+
+    /* Track down the number of records or the dash. */
+    cp = cps;
+    if (cps < end) {
+	cp = LYSkipBlanks(cp);
+	cps = LYSkipNonBlanks(cp);
+	*cps++ = '\0';
+	if (isdigit(UCH(*cp))) {
+	    Records = atoi(cp);
+	}
+	if (Records > 0 && RecordLength > 0) {
+	    /* Compute an approximate size. */
+	    entry_info->size = ((unsigned long) Records * (unsigned long) RecordLength);
+	}
+    }
+
+    /* Set the years and date, if we don't have them yet. */
+    if (!HaveYears) {
+	set_years_and_date();
+    }
+
+    /* Track down the date. */
+    cpd = cps;
+    if (((cps < end) &&
+	 (cps = strchr(cpd, ':')) != NULL) &&
+	(cps < (end - 3) &&
+	 isdigit(UCH(*(cps + 1))) && isdigit(UCH(*(cps + 2))) && *(cps + 3) == ':')) {
+	cps += 3;
+	*cps = '\0';
+	if ((cps - cpd) >= 14) {
+	    cpd = (cps - 14);
+	    *(cpd + 2) = '\0';	/* Month */
+	    *(cpd + 5) = '\0';	/* Day */
+	    *(cpd + 8) = '\0';	/* Year */
+	    cps -= 5;		/* Time */
+	    if (*cpd == ' ')
+		*cpd = '0';
+	    i = atoi(cpd) - 1;
+	    sprintf(date, "%.3s %.2s", months[i], (cpd + 3));
+	    if (date[4] == '0')
+		date[4] = ' ';
+	    cpd += 6;		/* Year */
+	    if (strcmp((ThisYear + 2), cpd)) {
+		/* Not this year, so show the year. */
+		if (atoi(cpd) < 70) {
+		    sprintf(&date[6], "  20%.2s", cpd);
+		} else {
+		    sprintf(&date[6], "  19%.2s", cpd);
+		}
+	    } else {
+		/* Is this year, so show the time. */
+		*(cps + 2) = '\0';	/* Hour */
+		i = atoi(cps);
+		sprintf(&date[6], " %02d:%.2s", i, (cps + 3));
+	    }
+	    StrAllocCopy(entry_info->date, date);
+	    if (entry_info->date[4] == ' ' || entry_info->date[4] == '0') {
+		entry_info->date[4] = HT_NON_BREAK_SPACE;
+	    }
+	}
+    }
+
+    /* Wrap it up. */
+    CTRACE((tfp, "HTFTP: VM/CMS filename: %s  date: %s  size: %lu\n",
+	    entry_info->filename,
+	    NonNull(entry_info->date),
+	    entry_info->size));
+    return;
+}				/* parse_cms_dir_entry */
+
+/*
+ * Given a line of LIST/NLST output in entry, return results and a file/dir
+ * name in entry_info struct
+ *
+ * If first is true, this is the first name in a directory.
+ */
+static EntryInfo *parse_dir_entry(char *entry,
+				  BOOLEAN *first,
+				  char **pspilledname)
+{
+    EntryInfo *entry_info;
+    int i;
+    int len;
+    BOOLEAN remove_size = FALSE;
+    char *cp;
+
+    entry_info = typecalloc(EntryInfo);
+
+    if (entry_info == NULL)
+	outofmem(__FILE__, "parse_dir_entry");
+
+    assert(entry_info != NULL);
+
+    entry_info->display = TRUE;
+
+    switch (server_type) {
+    case DLS_SERVER:
+
+	/*
+	 * Interpret and edit LIST output from a Unix server in "dls" format. 
+	 * This one must have claimed to be Unix in order to get here; if the
+	 * first line looks fishy, we revert to Unix and hope that fits better
+	 * (this recovery is untested).  - kw
+	 */
+
+	if (*first) {
+	    len = (int) strlen(entry);
+	    if (!len || entry[0] == ' ' ||
+		(len >= 24 && entry[23] != ' ') ||
+		(len < 24 && strchr(entry, ' '))) {
+		server_type = UNIX_SERVER;
+		CTRACE((tfp,
+			"HTFTP: Falling back to treating as Unix server.\n"));
+	    } else {
+		*first = FALSE;
+	    }
+	}
+
+	if (server_type == DLS_SERVER) {
+	    /* if still unchanged... */
+	    parse_dls_line(entry, entry_info, pspilledname);
+
+	    if (!entry_info->filename || *entry_info->filename == '\0') {
+		entry_info->display = FALSE;
+		return (entry_info);
+	    }
+	    if (!strcmp(entry_info->filename, "..") ||
+		!strcmp(entry_info->filename, "."))
+		entry_info->display = FALSE;
+	    if (entry_info->type && *entry_info->type == '\0') {
+		FREE(entry_info->type);
+		return (entry_info);
+	    }
+	    /*
+	     * Goto the bottom and get real type.
+	     */
+	    break;
+	}
+	/* fall through if server_type changed for *first == TRUE ! */
+    case UNIX_SERVER:
+    case PETER_LEWIS_SERVER:
+    case MACHTEN_SERVER:
+    case MSDOS_SERVER:
+    case WINDOWS_NT_SERVER:
+    case WINDOWS_2K_SERVER:
+    case APPLESHARE_SERVER:
+    case NETPRESENZ_SERVER:
+	/*
+	 * Check for EPLF output (local times).
+	 */
+	if (*entry == '+') {
+	    parse_eplf_line(entry, entry_info);
+	    break;
+	}
+
+	/*
+	 * Interpret and edit LIST output from Unix server.
+	 */
+	len = (int) strlen(entry);
+	if (*first) {
+	    /* don't gettext() this -- incoming text: */
+	    if (!strcmp(entry, "can not access directory .")) {
+		/*
+		 * Don't reset *first, nothing real will follow.  - KW
+		 */
+		entry_info->display = FALSE;
+		return (entry_info);
+	    }
+	    *first = FALSE;
+	    if (!StrNCmp(entry, "total ", 6) ||
+		strstr(entry, "not available") != NULL) {
+		entry_info->display = FALSE;
+		return (entry_info);
+	    } else if (unsure_type) {
+		/* this isn't really a unix server! */
+		server_type = GENERIC_SERVER;
+		entry_info->display = FALSE;
+		return (entry_info);
+	    }
+	}
+
+	/*
+	 * Check first character of ls -l output.
+	 */
+	if (TOUPPER(entry[0]) == 'D') {
+	    /*
+	     * It's a directory.
+	     */
+	    StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+	    remove_size = TRUE;	/* size is not useful */
+	} else if (entry[0] == 'l') {
+	    /*
+	     * It's a symbolic link, does the user care about knowing if it is
+	     * symbolic?  I think so since it might be a directory.
+	     */
+	    StrAllocCopy(entry_info->type, ENTRY_IS_SYMBOLIC_LINK);
+	    remove_size = TRUE;	/* size is not useful */
+
+	    /*
+	     * Strip off " -> pathname".
+	     */
+	    for (i = len - 1; (i > 3) &&
+		 (!isspace(UCH(entry[i])) ||
+		  (entry[i - 1] != '>') ||
+		  (entry[i - 2] != '-') ||
+		  (entry[i - 3] != ' ')); i--) ;	/* null body */
+	    if (i > 3) {
+		entry[i - 3] = '\0';
+		StrAllocCopy(entry_info->linkname, LYSkipBlanks(entry + i));
+	    }
+	}
+	/* link */
+	parse_ls_line(entry, entry_info);
+
+	if (!strcmp(entry_info->filename, "..") ||
+	    !strcmp(entry_info->filename, "."))
+	    entry_info->display = FALSE;
+	/*
+	 * Goto the bottom and get real type.
+	 */
+	break;
+
+    case VMS_SERVER:
+	/*
+	 * Interpret and edit LIST output from VMS server and convert
+	 * information lines to zero length.
+	 */
+	parse_vms_dir_entry(entry, entry_info);
+
+	/*
+	 * Get rid of any junk lines.
+	 */
+	if (!entry_info->display)
+	    return (entry_info);
+
+	/*
+	 * Trim off VMS directory extensions.
+	 */
+	len = (int) strlen(entry_info->filename);
+	if ((len > 4) && !strcmp(&entry_info->filename[len - 4], ".dir")) {
+	    entry_info->filename[len - 4] = '\0';
+	    StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+	    remove_size = TRUE;	/* size is not useful */
+	}
+	/*
+	 * Goto the bottom and get real type.
+	 */
+	break;
+
+    case MS_WINDOWS_SERVER:
+	/*
+	 * Interpret and edit LIST output from MS_WINDOWS server and convert
+	 * information lines to zero length.
+	 */
+	parse_ms_windows_dir_entry(entry, entry_info);
+
+	/*
+	 * Get rid of any junk lines.
+	 */
+	if (!entry_info->display)
+	    return (entry_info);
+	if (entry_info->type && *entry_info->type == '\0') {
+	    FREE(entry_info->type);
+	    return (entry_info);
+	}
+	/*
+	 * Goto the bottom and get real type.
+	 */
+	break;
+
+#ifdef NOTDEFINED
+    case WINDOWS_NT_SERVER:
+	/*
+	 * Interpret and edit LIST output from MS_WINDOWS server and convert
+	 * information lines to zero length.
+	 */
+	parse_windows_nt_dir_entry(entry, entry_info);
+
+	/*
+	 * Get rid of any junk lines.
+	 */
+	if (!entry_info->display)
+	    return (entry_info);
+	if (entry_info->type && *entry_info->type == '\0') {
+	    FREE(entry_info->type);
+	    return (entry_info);
+	}
+	/*
+	 * Goto the bottom and get real type.
+	 */
+	break;
+#endif /* NOTDEFINED */
+
+    case CMS_SERVER:
+	{
+	    /*
+	     * Interpret and edit LIST output from VM/CMS server and convert
+	     * any information lines to zero length.
+	     */
+	    parse_cms_dir_entry(entry, entry_info);
+
+	    /*
+	     * Get rid of any junk lines.
+	     */
+	    if (!entry_info->display)
+		return (entry_info);
+	    if (entry_info->type && *entry_info->type == '\0') {
+		FREE(entry_info->type);
+		return (entry_info);
+	    }
+	    /*
+	     * Goto the bottom and get real type.
+	     */
+	    break;
+	}
+
+    case NCSA_SERVER:
+    case TCPC_SERVER:
+	/*
+	 * Directories identified by trailing "/" characters.
+	 */
+	StrAllocCopy(entry_info->filename, entry);
+	len = (int) strlen(entry);
+	if (entry[len - 1] == '/') {
+	    /*
+	     * It's a dir, remove / and mark it as such.
+	     */
+	    entry[len - 1] = '\0';
+	    StrAllocCopy(entry_info->type, ENTRY_IS_DIRECTORY);
+	    remove_size = TRUE;	/* size is not useful */
+	}
+	/*
+	 * Goto the bottom and get real type.
+	 */
+	break;
+
+    default:
+	/*
+	 * We can't tell if it is a directory since we only did an NLST :( List
+	 * bad file types anyways?  NOT!
+	 */
+	StrAllocCopy(entry_info->filename, entry);
+	return (entry_info);	/* mostly empty info */
+
+    }				/* switch (server_type) */
+
+#ifdef LONG_LIST
+    (void) remove_size;
+#else
+    if (remove_size && entry_info->size) {
+	entry_info->size = 0;
+    }
+#endif
+
+    if (entry_info->filename && strlen(entry_info->filename) > 3) {
+	if (((cp = strrchr(entry_info->filename, '.')) != NULL &&
+	     0 == strncasecomp(cp, ".me", 3)) &&
+	    (cp[3] == '\0' || cp[3] == ';')) {
+	    /*
+	     * Don't treat this as application/x-Troff-me if it's a Unix server
+	     * but has the string "read.me", or if it's not a Unix server.  -
+	     * FM
+	     */
+	    if ((server_type != UNIX_SERVER) ||
+		(cp > (entry_info->filename + 3) &&
+		 0 == strncasecomp((cp - 4), "read.me", 7))) {
+		StrAllocCopy(entry_info->type, "text/plain");
+	    }
+	}
+    }
+
+    /*
+     * Get real types eventually.
+     */
+    if (!entry_info->type) {
+	const char *cp2;
+	HTFormat format;
+	HTAtom *encoding;	/* @@ not used at all */
+
+	format = HTFileFormat(entry_info->filename, &encoding, &cp2);
+
+	if (cp2 == NULL) {
+	    if (!StrNCmp(HTAtom_name(format), "application", 11)) {
+		cp2 = HTAtom_name(format) + 12;
+		if (!StrNCmp(cp2, "x-", 2))
+		    cp2 += 2;
+	    } else {
+		cp2 = HTAtom_name(format);
+	    }
+	}
+
+	StrAllocCopy(entry_info->type, cp2);
+    }
+
+    return (entry_info);
+}
+
+static int compare_EntryInfo_structs(EntryInfo *entry1, EntryInfo *entry2)
+{
+    int i, status;
+    char date1[16], date2[16], time1[8], time2[8], month[4];
+
+    switch (HTfileSortMethod) {
+    case FILE_BY_SIZE:
+	/* both equal or both 0 */
+	if (entry1->size == entry2->size)
+	    return (strcmp(entry1->filename, entry2->filename));
+	else if (entry1->size > entry2->size)
+	    return (1);
+	else
+	    return (-1);
+
+    case FILE_BY_TYPE:
+	if (entry1->type && entry2->type) {
+	    status = strcasecomp(entry1->type, entry2->type);
+	    if (status)
+		return (status);
+	    /* else fall to filename comparison */
+	}
+	return (strcmp(entry1->filename, entry2->filename));
+
+    case FILE_BY_DATE:
+	if (entry1->date && entry2->date) {
+	    /*
+	     * Make sure we have the correct length. - FM
+	     */
+	    if (strlen(entry1->date) != 12 || strlen(entry2->date) != 12) {
+		return (strcmp(entry1->filename, entry2->filename));
+	    }
+	    /*
+	     * Set the years and date,
+	     * if we don't have them yet.
+	     */
+	    if (!HaveYears) {
+		set_years_and_date();
+	    }
+	    /*
+	     * Set up for sorting in reverse
+	     * chronological order. - FM
+	     */
+	    if (entry1->date[9] == ':') {
+		strcpy(date1, "9999");
+		strcpy(time1, &entry1->date[7]);
+		if (time1[0] == ' ') {
+		    time1[0] = '0';
+		}
+	    } else {
+		strcpy(date1, &entry1->date[8]);
+		strcpy(time1, "00:00");
+	    }
+	    StrNCpy(month, entry1->date, 3);
+	    month[3] = '\0';
+	    for (i = 0; i < 12; i++) {
+		if (!strcasecomp(month, months[i])) {
+		    break;
+		}
+	    }
+	    i++;
+	    sprintf(month, "%02d", i);
+	    strcat(date1, month);
+	    StrNCat(date1, &entry1->date[4], 2);
+	    date1[8] = '\0';
+	    if (date1[6] == ' ' || date1[6] == HT_NON_BREAK_SPACE) {
+		date1[6] = '0';
+	    }
+	    /* If no year given, assume last year if it would otherwise be in
+	     * the future by more than one day.  The one day tolerance is to
+	     * account for a possible timezone difference.  - kw
+	     */
+	    if (date1[0] == '9' && atoi(date1) > TheDate + 1) {
+		for (i = 0; i < 4; i++) {
+		    date1[i] = LastYear[i];
+		}
+	    }
+	    strcat(date1, time1);
+	    if (entry2->date[9] == ':') {
+		strcpy(date2, "9999");
+		strcpy(time2, &entry2->date[7]);
+		if (time2[0] == ' ') {
+		    time2[0] = '0';
+		}
+	    } else {
+		strcpy(date2, &entry2->date[8]);
+		strcpy(time2, "00:00");
+	    }
+	    StrNCpy(month, entry2->date, 3);
+	    month[3] = '\0';
+	    for (i = 0; i < 12; i++) {
+		if (!strcasecomp(month, months[i])) {
+		    break;
+		}
+	    }
+	    i++;
+	    sprintf(month, "%02d", i);
+	    strcat(date2, month);
+	    StrNCat(date2, &entry2->date[4], 2);
+	    date2[8] = '\0';
+	    if (date2[6] == ' ' || date2[6] == HT_NON_BREAK_SPACE) {
+		date2[6] = '0';
+	    }
+	    /* If no year given, assume last year if it would otherwise be in
+	     * the future by more than one day.  The one day tolerance is to
+	     * account for a possible timezone difference.  - kw
+	     */
+	    if (date2[0] == '9' && atoi(date2) > TheDate + 1) {
+		for (i = 0; i < 4; i++) {
+		    date2[i] = LastYear[i];
+		}
+	    }
+	    strcat(date2, time2);
+	    /*
+	     * Do the comparison. - FM
+	     */
+	    status = strcasecomp(date2, date1);
+	    if (status)
+		return (status);
+	    /* else fall to filename comparison */
+	}
+	return (strcmp(entry1->filename, entry2->filename));
+
+    case FILE_BY_NAME:
+    default:
+	return (strcmp(entry1->filename, entry2->filename));
+    }
+}
+
+#ifdef LONG_LIST
+static char *FormatStr(char **bufp,
+		       char *start,
+		       const char *value)
+{
+    char fmt[512];
+
+    if (*start) {
+	sprintf(fmt, "%%%.*ss", (int) sizeof(fmt) - 3, start);
+	HTSprintf(bufp, fmt, value);
+    } else if (*bufp && !(value && *value)) {
+	;
+    } else if (value) {
+	StrAllocCat(*bufp, value);
+    }
+    return *bufp;
+}
+
+static char *FormatNum(char **bufp,
+		       char *start,
+		       unsigned long value)
+{
+    char fmt[512];
+
+    if (*start) {
+	sprintf(fmt, "%%%.*sld", (int) sizeof(fmt) - 3, start);
+	HTSprintf(bufp, fmt, value);
+    } else {
+	sprintf(fmt, "%lu", value);
+	StrAllocCat(*bufp, fmt);
+    }
+    return *bufp;
+}
+
+static void FlushParse(HTStructured * target, char **buf)
+{
+    if (*buf && **buf) {
+	PUTS(*buf);
+	**buf = '\0';
+    }
+}
+
+static void LYListFmtParse(const char *fmtstr,
+			   EntryInfo *data,
+			   HTStructured * target,
+			   char *tail)
+{
+    char c;
+    char *s;
+    char *end;
+    char *start;
+    char *str = NULL;
+    char *buf = NULL;
+    BOOL is_directory = (BOOL) (data->file_mode != 0 &&
+				(TOUPPER(data->file_mode[0]) == 'D'));
+    BOOL is_symlinked = (BOOL) (data->file_mode != 0 &&
+				(TOUPPER(data->file_mode[0]) == 'L'));
+    BOOL remove_size = (BOOL) (is_directory || is_symlinked);
+
+    StrAllocCopy(str, fmtstr);
+    s = str;
+    end = str + strlen(str);
+    while (*s) {
+	start = s;
+	while (*s) {
+	    if (*s == '%') {
+		if (*(s + 1) == '%')	/* literal % */
+		    s++;
+		else
+		    break;
+	    }
+	    s++;
+	}
+	/* s is positioned either at a % or at \0 */
+	*s = '\0';
+	if (s > start) {	/* some literal chars. */
+	    StrAllocCat(buf, start);
+	}
+	if (s == end)
+	    break;
+	start = ++s;
+	while (isdigit(UCH(*s)) || *s == '.' || *s == '-' || *s == ' ' ||
+	       *s == '#' || *s == '+' || *s == '\'')
+	    s++;
+	c = *s;			/* the format char. or \0 */
+	*s = '\0';
+
+	switch (c) {
+	case '\0':
+	    StrAllocCat(buf, start);
+	    continue;
+
+	case 'A':
+	case 'a':		/* anchor */
+	    FlushParse(target, &buf);
+	    HTDirEntry(target, tail, data->filename);
+	    FormatStr(&buf, start, data->filename);
+	    PUTS(buf);
+	    END(HTML_A);
+	    *buf = '\0';
+	    if (c != 'A' && data->linkname != 0) {
+		PUTS(" -> ");
+		PUTS(data->linkname);
+	    }
+	    break;
+
+	case 'T':		/* MIME type */
+	case 't':		/* MIME type description */
+	    if (is_directory) {
+		if (c != 'T') {
+		    FormatStr(&buf, start, ENTRY_IS_DIRECTORY);
+		} else {
+		    FormatStr(&buf, start, "");
+		}
+	    } else if (is_symlinked) {
+		if (c != 'T') {
+		    FormatStr(&buf, start, ENTRY_IS_SYMBOLIC_LINK);
+		} else {
+		    FormatStr(&buf, start, "");
+		}
+	    } else {
+		const char *cp2;
+		HTFormat format;
+
+		format = HTFileFormat(data->filename, NULL, &cp2);
+
+		if (c != 'T') {
+		    if (cp2 == NULL) {
+			if (!StrNCmp(HTAtom_name(format),
+				     "application", 11)) {
+			    cp2 = HTAtom_name(format) + 12;
+			    if (!StrNCmp(cp2, "x-", 2))
+				cp2 += 2;
+			} else {
+			    cp2 = HTAtom_name(format);
+			}
+		    }
+		    FormatStr(&buf, start, cp2);
+		} else {
+		    FormatStr(&buf, start, HTAtom_name(format));
+		}
+	    }
+	    break;
+
+	case 'd':		/* date */
+	    if (data->date) {
+		FormatStr(&buf, start, data->date);
+	    } else {
+		FormatStr(&buf, start, " * ");
+	    }
+	    break;
+
+	case 's':		/* size in bytes */
+	    FormatNum(&buf, start, data->size);
+	    break;
+
+	case 'K':		/* size in Kilobytes but not for directories */
+	    if (remove_size) {
+		FormatStr(&buf, start, "");
+		StrAllocCat(buf, " ");
+		break;
+	    }
+	    /* FALL THROUGH */
+	case 'k':		/* size in Kilobytes */
+	    /* FIXME - this is inconsistent with HTFile.c, but historical */
+	    if (data->size < 1024) {
+		FormatNum(&buf, start, data->size);
+		StrAllocCat(buf, " bytes");
+	    } else {
+		FormatNum(&buf, start, data->size / 1024);
+		StrAllocCat(buf, "Kb");
+	    }
+	    break;
+
+#ifdef LONG_LIST
+	case 'p':		/* unix-style permission bits */
+	    FormatStr(&buf, start, NonNull(data->file_mode));
+	    break;
+
+	case 'o':		/* owner */
+	    FormatStr(&buf, start, NonNull(data->file_user));
+	    break;
+
+	case 'g':		/* group */
+	    FormatStr(&buf, start, NonNull(data->file_group));
+	    break;
+
+	case 'l':		/* link count */
+	    FormatNum(&buf, start, data->file_links);
+	    break;
+#endif
+
+	case '%':		/* literal % with flags/width */
+	    FormatStr(&buf, start, "%");
+	    break;
+
+	default:
+	    fprintf(stderr,
+		    "Unknown format character `%c' in list format\n", c);
+	    break;
+	}
+
+	s++;
+    }
+    if (buf) {
+	LYTrimTrailing(buf);
+	FlushParse(target, &buf);
+	FREE(buf);
+    }
+    PUTC('\n');
+    FREE(str);
+}
+#endif /* LONG_LIST */
+/*	Read a directory into an hypertext object from the data socket
+ *	--------------------------------------------------------------
+ *
+ * On entry,
+ *	anchor		Parent anchor to link the this node to
+ *	address		Address of the directory
+ * On exit,
+ *	returns		HT_LOADED if OK
+ *			<0 if error.
+ */
+static int read_directory(HTParentAnchor *parent,
+			  const char *address,
+			  HTFormat format_out,
+			  HTStream *sink)
+{
+    int status;
+    BOOLEAN WasInterrupted = FALSE;
+    HTStructured *target = HTML_new(parent, format_out, sink);
+    char *filename = HTParse(address, "", PARSE_PATH + PARSE_PUNCTUATION);
+    EntryInfo *entry_info;
+    BOOLEAN first = TRUE;
+    char *lastpath = NULL;	/* prefix for link, either "" (for root) or xxx  */
+    BOOL tildeIsTop = FALSE;
+
+#ifndef LONG_LIST
+    char string_buffer[64];
+#endif
+
+    _HTProgress(gettext("Receiving FTP directory."));
+
+    /*
+     * Force the current Date and Year (TheDate, ThisYear, and LastYear) to be
+     * recalculated for each directory request.  Otherwise we have a problem
+     * with long-running sessions assuming the wrong date for today.  - kw
+     */
+    HaveYears = FALSE;
+    /*
+     * Check whether we always want the home directory treated as Welcome.  -
+     * FM
+     */
+    if (server_type == VMS_SERVER)
+	tildeIsTop = TRUE;
+
+    /*
+     * This should always come back FALSE, since the flag is set only for local
+     * directory listings if LONG_LIST was defined on compilation, but we could
+     * someday set up an equivalent listing for Unix ftp servers.  - FM
+     */
+    (void) HTDirTitles(target, parent, format_out, tildeIsTop);
+
+    data_read_pointer = data_write_pointer = data_buffer;
+
+    if (*filename == '\0') {	/* Empty filename: use root. */
+	StrAllocCopy(lastpath, "/");
+    } else if (!strcmp(filename, "/")) {	/* Root path. */
+	StrAllocCopy(lastpath, "/foo/..");
+    } else {
+	char *p = strrchr(filename, '/');	/* Find the lastslash. */
+	char *cp;
+
+	if (server_type == CMS_SERVER) {
+	    StrAllocCopy(lastpath, filename);	/* Use absolute path for CMS. */
+	} else {
+	    StrAllocCopy(lastpath, p + 1);	/* Take slash off the beginning. */
+	}
+	if ((cp = strrchr(lastpath, ';')) != NULL) {	/* Trim type= param. */
+	    if (!strncasecomp((cp + 1), "type=", 5)) {
+		if (TOUPPER(*(cp + 6)) == 'D' ||
+		    TOUPPER(*(cp + 6)) == 'A' ||
+		    TOUPPER(*(cp + 6)) == 'I')
+		    *cp = '\0';
+	    }
+	}
+    }
+    FREE(filename);
+
+    {
+	HTBTree *bt = HTBTree_new((HTComparer) compare_EntryInfo_structs);
+	int ic;
+	HTChunk *chunk = HTChunkCreate(128);
+	int BytesReceived = 0;
+	int BytesReported = 0;
+	char NumBytes[64];
+	char *spilledname = NULL;
+
+	PUTC('\n');		/* prettier LJM */
+	for (ic = 0; ic != EOF;) {	/* For each entry in the directory */
+	    HTChunkClear(chunk);
+
+	    if (HTCheckForInterrupt()) {
+		CTRACE((tfp,
+			"read_directory: interrupted after %d bytes\n",
+			BytesReceived));
+		WasInterrupted = TRUE;
+		if (BytesReceived) {
+		    goto unload_btree;	/* unload btree */
+		} else {
+		    ABORT_TARGET;
+		    HTBTreeAndObject_free(bt);
+		    FREE(spilledname);
+		    return HT_INTERRUPTED;
+		}
+	    }
+
+	    /*   read directory entry
+	     */
+	    interrupted_in_next_data_char = FALSE;
+	    for (;;) {		/* Read in one line as filename */
+		ic = NEXT_DATA_CHAR;
+	      AgainForMultiNet:
+		if (interrupted_in_next_data_char) {
+		    CTRACE((tfp,
+			    "read_directory: interrupted_in_next_data_char after %d bytes\n",
+			    BytesReceived));
+		    WasInterrupted = TRUE;
+		    if (BytesReceived) {
+			goto unload_btree;	/* unload btree */
+		    } else {
+			ABORT_TARGET;
+			HTBTreeAndObject_free(bt);
+			FREE(spilledname);
+			return HT_INTERRUPTED;
+		    }
+		} else if ((char) ic == CR || (char) ic == LF) {	/* Terminator? */
+		    if (chunk->size != 0) {	/* got some text */
+			/* Deal with MultiNet's wrapping of long lines */
+			if (server_type == VMS_SERVER) {
+			    /* Deal with MultiNet's wrapping of long lines - F.M. */
+			    if (data_read_pointer < data_write_pointer &&
+				*(data_read_pointer + 1) == ' ')
+				data_read_pointer++;
+			    else if (data_read_pointer >= data_write_pointer) {
+				status = NETREAD(data_soc, data_buffer,
+						 DATA_BUFFER_SIZE);
+				if (status == HT_INTERRUPTED) {
+				    interrupted_in_next_data_char = 1;
+				    goto AgainForMultiNet;
+				}
+				if (status <= 0) {
+				    ic = EOF;
+				    break;
+				}
+				data_write_pointer = data_buffer + status;
+				data_read_pointer = data_buffer;
+				if (*data_read_pointer == ' ')
+				    data_read_pointer++;
+				else
+				    break;
+			    } else
+				break;
+			} else
+			    break;	/* finish getting one entry */
+		    }
+		} else if (ic == EOF) {
+		    break;	/* End of file */
+		} else {
+		    HTChunkPutc(chunk, UCH(ic));
+		}
+	    }
+	    HTChunkTerminate(chunk);
+
+	    BytesReceived += chunk->size;
+	    if (BytesReceived > BytesReported + 1024) {
+#ifdef _WINDOWS
+		sprintf(NumBytes, gettext("Transferred %d bytes (%5d)"),
+			BytesReceived, ws_read_per_sec);
+#else
+		sprintf(NumBytes, TRANSFERRED_X_BYTES, BytesReceived);
+#endif
+		HTProgress(NumBytes);
+		BytesReported = BytesReceived;
+	    }
+
+	    if (ic == EOF && chunk->size == 1)
+		/* 1 means empty: includes terminating 0 */
+		break;
+	    CTRACE((tfp, "HTFTP: Line in %s is %s\n",
+		    lastpath, chunk->data));
+
+	    entry_info = parse_dir_entry(chunk->data, &first, &spilledname);
+	    if (entry_info->display) {
+		FREE(spilledname);
+		CTRACE((tfp, "Adding file to BTree: %s\n",
+			entry_info->filename));
+		HTBTree_add(bt, entry_info);
+	    } else {
+		free_entryinfo_struct_contents(entry_info);
+		FREE(entry_info);
+	    }
+
+	}			/* next entry */
+
+      unload_btree:
+
+	HTChunkFree(chunk);
+	FREE(spilledname);
+
+	/* print out the handy help message if it exists :) */
+	if (help_message_cache_non_empty()) {
+	    START(HTML_PRE);
+	    START(HTML_HR);
+	    PUTC('\n');
+	    PUTS(help_message_cache_contents());
+	    init_help_message_cache();	/* to free memory */
+	    START(HTML_HR);
+	    PUTC('\n');
+	} else {
+	    START(HTML_PRE);
+	    PUTC('\n');
+	}
+
+	/* Run through tree printing out in order
+	 */
+	{
+#ifndef LONG_LIST
+#ifdef SH_EX			/* 1997/10/18 (Sat) 14:14:28 */
+	    char *p, name_buff[256];
+	    int name_len, dot_len;
+
+#define	FNAME_WIDTH	30
+#define	FILE_GAP	1
+
+#endif
+	    int i;
+#endif
+	    HTBTElement *ele;
+
+	    for (ele = HTBTree_next(bt, NULL);
+		 ele != NULL;
+		 ele = HTBTree_next(bt, ele)) {
+		entry_info = (EntryInfo *) HTBTree_object(ele);
+
+#ifdef LONG_LIST
+		LYListFmtParse(ftp_format,
+			       entry_info,
+			       target,
+			       lastpath);
+#else
+		if (entry_info->date) {
+		    PUTS(entry_info->date);
+		    PUTS("  ");
+		} else {
+		    PUTS("     * ");
+		}
+
+		if (entry_info->type) {
+		    for (i = 0; entry_info->type[i] != '\0' && i < 16; i++)
+			PUTC(entry_info->type[i]);
+		    for (; i < 17; i++)
+			PUTC(' ');
+		}
+		/* start the anchor */
+		HTDirEntry(target, lastpath, entry_info->filename);
+#ifdef SH_EX			/* 1997/10/18 (Sat) 16:00 */
+		name_len = strlen(entry_info->filename);
+
+		sprintf(name_buff, "%-*s", FNAME_WIDTH, entry_info->filename);
+
+		if (name_len < FNAME_WIDTH) {
+		    dot_len = FNAME_WIDTH - FILE_GAP - name_len;
+		    if (dot_len > 0) {
+			p = name_buff + name_len + 1;
+			while (dot_len-- > 0)
+			    *p++ = '.';
+		    }
+		} else {
+		    name_buff[FNAME_WIDTH] = '\0';
+		}
+
+		PUTS(name_buff);
+#else
+		PUTS(entry_info->filename);
+#endif
+		END(HTML_A);
+
+		if (entry_info->size) {
+#ifdef SH_EX			/* 1998/02/02 (Mon) 16:34:52 */
+		    if (entry_info->size < 1024)
+			sprintf(string_buffer, "%6ld bytes",
+				entry_info->size);
+		    else
+			sprintf(string_buffer, "%6ld Kb",
+				entry_info->size / 1024);
+#else
+		    if (entry_info->size < 1024)
+			sprintf(string_buffer, "  %lu bytes",
+				entry_info->size);
+		    else
+			sprintf(string_buffer, "  %luKb",
+				entry_info->size / 1024);
+#endif
+		    PUTS(string_buffer);
+		} else if (entry_info->linkname != 0) {
+		    PUTS(" -> ");
+		    PUTS(entry_info->linkname);
+		}
+
+		PUTC('\n');	/* end of this entry */
+#endif
+
+		free_entryinfo_struct_contents(entry_info);
+	    }
+	}
+	END(HTML_PRE);
+	END(HTML_BODY);
+	FREE_TARGET;
+	HTBTreeAndObject_free(bt);
+    }
+
+    FREE(lastpath);
+
+    if (WasInterrupted || data_soc != -1) {	/* should always be true */
+	/*
+	 * Without closing the data socket first, the response(0) later may
+	 * hang.  Some servers expect the client to fin/ack the close of the
+	 * data connection before proceeding with the conversation on the
+	 * control connection.  - kw
+	 */
+	CTRACE((tfp, "HTFTP: Closing data socket %d\n", data_soc));
+	status = NETCLOSE(data_soc);
+	if (status == -1)
+	    HTInetStatus("close");	/* Comment only */
+	data_soc = -1;
+    }
+
+    if (WasInterrupted || HTCheckForInterrupt()) {
+	_HTProgress(TRANSFER_INTERRUPTED);
+    }
+    return HT_LOADED;
+}
+
+/*
+ * Setup an FTP connection.
+ */
+static int setup_connection(const char *name,
+			    HTParentAnchor *anchor)
+{
+    int retry;			/* How many times tried? */
+    int status = HT_NO_CONNECTION;
+
+    CTRACE((tfp, "setup_connection(%s)\n", name));
+
+    /* set use_list to NOT since we don't know what kind of server
+     * this is yet.  And set the type to GENERIC
+     */
+    use_list = FALSE;
+    server_type = GENERIC_SERVER;
+    Broken_RETR = FALSE;
+
+#ifdef INET6
+    Broken_EPSV = FALSE;
+#endif
+
+    for (retry = 0; retry < 2; retry++) {	/* For timed out/broken connections */
+	status = get_connection(name, anchor);
+	if (status < 0) {
+	    break;
+	}
+
+	if (!ftp_local_passive) {
+	    status = get_listen_socket();
+	    if (status < 0) {
+		NETCLOSE(control->socket);
+		control->socket = -1;
+#ifdef INET6
+		if (have_socket)
+		    (void) close_master_socket();
+#else
+		close_master_socket();
+#endif /* INET6 */
+		/* HT_INTERRUPTED would fall through, if we could interrupt
+		   somehow in the middle of it, which we currently can't. */
+		break;
+	    }
+#ifdef REPEAT_PORT
+	    /*  Inform the server of the port number we will listen on
+	     */
+	    status = response(port_command);
+	    if (status == HT_INTERRUPTED) {
+		CTRACE((tfp, "HTFTP: Interrupted in response (port_command)\n"));
+		_HTProgress(CONNECTION_INTERRUPTED);
+		NETCLOSE(control->socket);
+		control->socket = -1;
+		close_master_socket();
+		status = HT_INTERRUPTED;
+		break;
+	    }
+	    if (status != 2) {	/* Could have timed out */
+		if (status < 0)
+		    continue;	/* try again - net error */
+		status = -status;	/* bad reply */
+		break;
+	    }
+	    CTRACE((tfp, "HTFTP: Port defined.\n"));
+#endif /* REPEAT_PORT */
+	} else {		/* Tell the server to be passive */
+	    char *command = NULL;
+	    const char *p = "?";
+	    int h0, h1, h2, h3, p0, p1;		/* Parts of reply */
+
+#ifdef INET6
+	    char dst[LINE_LENGTH + 1];
+#endif
+
+	    data_soc = status;
+
+#ifdef INET6
+	    /* see RFC 2428 */
+	    if (Broken_EPSV)
+		status = 1;
+	    else
+		status = send_cmd_1(p = "EPSV");
+	    if (status < 0)	/* retry or Bad return */
+		continue;
+	    else if (status != 2) {
+		status = send_cmd_1(p = "PASV");
+		if (status < 0) {	/* retry or Bad return */
+		    continue;
+		} else if (status != 2) {
+		    status = -status;	/* bad reply */
+		    break;
+		}
+	    }
+
+	    if (strcmp(p, "PASV") == 0) {
+		for (p = response_text; *p && *p != ','; p++) {
+		    ;		/* null body */
+		}
+
+		while (--p > response_text && '0' <= *p && *p <= '9') {
+		    ;		/* null body */
+		}
+		status = sscanf(p + 1, "%d,%d,%d,%d,%d,%d",
+				&h0, &h1, &h2, &h3, &p0, &p1);
+		if (status < 4) {
+		    fprintf(tfp, "HTFTP: PASV reply has no inet address!\n");
+		    status = HT_NO_CONNECTION;
+		    break;
+		}
+		passive_port = (PortNumber) ((p0 << 8) + p1);
+		sprintf(dst, "%d.%d.%d.%d", h0, h1, h2, h3);
+	    } else if (strcmp(p, "EPSV") == 0) {
+		char c0, c1, c2, c3;
+		struct sockaddr_storage ss;
+		LY_SOCKLEN sslen;
+
+		/*
+		 * EPSV bla (|||port|)
+		 */
+		for (p = response_text; *p && !isspace(UCH(*p)); p++) {
+		    ;		/* null body */
+		}
+		for ( /*nothing */ ;
+		     *p && *p && *p != '(';
+		     p++) {	/*) */
+		    ;		/* null body */
+		}
+		status = sscanf(p, "(%c%c%c%d%c)", &c0, &c1, &c2, &p0, &c3);
+		if (status != 5) {
+		    fprintf(tfp, "HTFTP: EPSV reply has invalid format!\n");
+		    status = HT_NO_CONNECTION;
+		    break;
+		}
+		passive_port = (PortNumber) p0;
+
+		sslen = (LY_SOCKLEN) sizeof(ss);
+		if (getpeername(control->socket, (struct sockaddr *) &ss,
+				&sslen) < 0) {
+		    fprintf(tfp, "HTFTP: getpeername(control) failed\n");
+		    status = HT_NO_CONNECTION;
+		    break;
+		}
+		if (getnameinfo((struct sockaddr *) &ss,
+				sslen,
+				dst,
+				(socklen_t) sizeof(dst),
+				NULL, 0, NI_NUMERICHOST)) {
+		    fprintf(tfp, "HTFTP: getnameinfo failed\n");
+		    status = HT_NO_CONNECTION;
+		    break;
+		}
+	    }
+#else
+	    status = send_cmd_1("PASV");
+	    if (status != 2) {
+		if (status < 0)
+		    continue;	/* retry or Bad return */
+		status = -status;	/* bad reply */
+		break;
+	    }
+	    for (p = response_text; *p && *p != ','; p++) {
+		;		/* null body */
+	    }
+
+	    while (--p > response_text && '0' <= *p && *p <= '9') {
+		;		/* null body */
+	    }
+
+	    status = sscanf(p + 1, "%d,%d,%d,%d,%d,%d",
+			    &h0, &h1, &h2, &h3, &p0, &p1);
+	    if (status < 4) {
+		fprintf(tfp, "HTFTP: PASV reply has no inet address!\n");
+		status = HT_NO_CONNECTION;
+		break;
+	    }
+	    passive_port = (PortNumber) ((p0 << 8) + p1);
+#endif /* INET6 */
+	    CTRACE((tfp, "HTFTP: Server is listening on port %d\n",
+		    passive_port));
+
+	    /* Open connection for data:  */
+
+#ifdef INET6
+	    HTSprintf0(&command, "%s//%s:%d/", STR_FTP_URL, dst, passive_port);
+#else
+	    HTSprintf0(&command, "%s//%d.%d.%d.%d:%d/",
+		       STR_FTP_URL, h0, h1, h2, h3, passive_port);
+#endif
+	    status = HTDoConnect(command, "FTP data", passive_port, &data_soc);
+	    FREE(command);
+
+	    if (status < 0) {
+		(void) HTInetStatus(gettext("connect for data"));
+		NETCLOSE(data_soc);
+		break;
+	    }
+
+	    CTRACE((tfp, "FTP data connected, socket %d\n", data_soc));
+	}
+	status = 0;
+	break;			/* No more retries */
+
+    }				/* for retries */
+    CTRACE((tfp, "setup_connection returns %d\n", status));
+    return status;
+}
+
+/*	Retrieve File from Server
+ *	-------------------------
+ *
+ * On entry,
+ *	name		WWW address of a file: document, including hostname
+ * On exit,
+ *	returns		Socket number for file if good.
+ *			<0 if bad.
+ */
+int HTFTPLoad(const char *name,
+	      HTParentAnchor *anchor,
+	      HTFormat format_out,
+	      HTStream *sink)
+{
+    BOOL isDirectory = NO;
+    HTAtom *encoding = NULL;
+    int status, final_status;
+    int outstanding = 1;	/* outstanding control connection responses
+
+				   that we are willing to wait for, if we
+				   get to the point of reading data - kw */
+    HTFormat format;
+
+    CTRACE((tfp, "HTFTPLoad(%s) %s connection\n",
+	    name,
+	    (ftp_local_passive
+	     ? "passive"
+	     : "normal")));
+
+    HTReadProgress((off_t) 0, (off_t) 0);
+
+    status = setup_connection(name, anchor);
+    if (status < 0)
+	return status;		/* Failed with this code */
+
+    /*  Ask for the file:
+     */
+    {
+	char *filename = HTParse(name, "", PARSE_PATH + PARSE_PUNCTUATION);
+	char *fname = filename;	/* Save for subsequent free() */
+	char *vmsname = NULL;
+	BOOL binary;
+	const char *type = NULL;
+	char *types = NULL;
+	char *cp;
+
+	if (server_type == CMS_SERVER) {
+	    /* If the unescaped path has a %2f, reject it as illegal. - FM */
+	    if (((cp = strstr(filename, "%2")) != NULL) &&
+		TOUPPER(cp[2]) == 'F') {
+		FREE(fname);
+		init_help_message_cache();	/* to free memory */
+		NETCLOSE(control->socket);
+		control->socket = -1;
+		CTRACE((tfp,
+			"HTFTP: Rejecting path due to illegal escaped slash.\n"));
+		return -1;
+	    }
+	}
+
+	if (!*filename) {
+	    StrAllocCopy(filename, "/");
+	    type = "D";
+	} else if ((type = types = strrchr(filename, ';')) != NULL) {
+	    /*
+	     * Check and trim the type= parameter.  - FM
+	     */
+	    if (!strncasecomp((type + 1), "type=", 5)) {
+		switch (TOUPPER(*(type + 6))) {
+		case 'D':
+		    *types = '\0';
+		    type = "D";
+		    break;
+		case 'A':
+		    *types = '\0';
+		    type = "A";
+		    break;
+		case 'I':
+		    *types = '\0';
+		    type = "I";
+		    break;
+		default:
+		    type = "";
+		    break;
+		}
+		if (!*filename) {
+		    *filename = '/';
+		    *(filename + 1) = '\0';
+		}
+	    }
+	    if (*type != '\0') {
+		CTRACE((tfp, "HTFTP: type=%s\n", type));
+	    }
+	}
+	HTUnEscape(filename);
+	CTRACE((tfp, "HTFTP: UnEscaped %s\n", filename));
+	if (filename[1] == '~') {
+	    /*
+	     * Check if translation of HOME as tilde is supported,
+	     * and adjust filename if so. - FM
+	     */
+	    char *cp2 = NULL;
+	    char *fn = NULL;
+
+	    if ((cp2 = strchr((filename + 1), '/')) != NULL) {
+		*cp2 = '\0';
+	    }
+	    status = send_cmd_1("PWD");
+	    if (status == 2 && response_text[5] == '/') {
+		status = send_cwd(filename + 1);
+		if (status == 2) {
+		    StrAllocCopy(fn, (filename + 1));
+		    if (cp2) {
+			*cp2 = '/';
+			if (fn[strlen(fn) - 1] != '/') {
+			    StrAllocCat(fn, cp2);
+			} else {
+			    StrAllocCat(fn, (cp2 + 1));
+			}
+			cp2 = NULL;
+		    }
+		    FREE(fname);
+		    fname = filename = fn;
+		}
+	    }
+	    if (cp2) {
+		*cp2 = '/';
+	    }
+	}
+	if (strlen(filename) > 3) {
+	    char *cp2;
+
+	    if (((cp2 = strrchr(filename, '.')) != NULL &&
+		 0 == strncasecomp(cp2, ".me", 3)) &&
+		(cp2[3] == '\0' || cp2[3] == ';')) {
+		/*
+		 * Don't treat this as application/x-Troff-me if it's a Unix
+		 * server but has the string "read.me", or if it's not a Unix
+		 * server.  - FM
+		 */
+		if ((server_type != UNIX_SERVER) ||
+		    (cp2 > (filename + 3) &&
+		     0 == strncasecomp((cp2 - 4), "read.me", 7))) {
+		    *cp2 = '\0';
+		    format = HTFileFormat(filename, &encoding, NULL);
+		    *cp2 = '.';
+		} else {
+		    format = HTFileFormat(filename, &encoding, NULL);
+		}
+	    } else {
+		format = HTFileFormat(filename, &encoding, NULL);
+	    }
+	} else {
+	    format = HTFileFormat(filename, &encoding, NULL);
+	}
+	format = HTCharsetFormat(format, anchor, -1);
+	binary = (BOOL) (encoding != HTAtom_for("8bit") &&
+			 encoding != HTAtom_for("7bit"));
+	if (!binary &&
+	/*
+	 * Force binary if we're in source, download or dump mode and this is
+	 * not a VM/CMS server, so we don't get CRLF instead of LF (or CR) for
+	 * newlines in text files.  Can't do this for VM/CMS or we'll get raw
+	 * EBCDIC.  - FM
+	 */
+	    (format_out == WWW_SOURCE ||
+	     format_out == HTAtom_for("www/download") ||
+	     format_out == HTAtom_for("www/dump")) &&
+	    (server_type != CMS_SERVER))
+	    binary = TRUE;
+	if (!binary && type && *type == 'I') {
+	    /*
+	     * Force binary if we had ;type=I - FM
+	     */
+	    binary = TRUE;
+	} else if (binary && type && *type == 'A') {
+	    /*
+	     * Force ASCII if we had ;type=A - FM
+	     */
+	    binary = FALSE;
+	}
+	if (binary != control->binary) {
+	    /*
+	     * Act on our setting if not already set.  - FM
+	     */
+	    const char *mode = binary ? "I" : "A";
+
+	    status = send_cmd_2("TYPE", mode);
+	    if (status != 2) {
+		init_help_message_cache();	/* to free memory */
+		return ((status < 0) ? status : -status);
+	    }
+	    control->binary = binary;
+	}
+	switch (server_type) {
+	    /*
+	     * Handle what for Lynx are special case servers, e.g., for which
+	     * we respect RFC 1738, or which have known conflicts in suffix
+	     * mappings.  - FM
+	     */
+	case VMS_SERVER:
+	    {
+		char *cp1, *cp2;
+		BOOL included_device = FALSE;
+		BOOL found_tilde = FALSE;
+
+		/* Accept only Unix-style filename */
+		if (strchr(filename, ':') != NULL ||
+		    strchr(filename, '[') != NULL) {
+		    FREE(fname);
+		    init_help_message_cache();	/* to free memory */
+		    NETCLOSE(control->socket);
+		    control->socket = -1;
+		    CTRACE((tfp,
+			    "HTFTP: Rejecting path due to non-Unix-style syntax.\n"));
+		    return -1;
+		}
+		/* Handle any unescaped "/%2F" path */
+		if (!StrNCmp(filename, "//", 2)) {
+		    int i;
+
+		    included_device = TRUE;
+		    for (i = 0; filename[(i + 1)]; i++)
+			filename[i] = filename[(i + 1)];
+		    filename[i] = '\0';
+		    CTRACE((tfp, "HTFTP: Trimmed '%s'\n", filename));
+		    cp = HTVMS_name("", filename);
+		    CTRACE((tfp, "HTFTP: VMSized '%s'\n", cp));
+		    if ((cp1 = strrchr(cp, ']')) != NULL) {
+			strcpy(filename, ++cp1);
+			CTRACE((tfp, "HTFTP: Filename '%s'\n", filename));
+			*cp1 = '\0';
+			status = send_cwd(cp);
+			if (status != 2) {
+			    char *dotslash = 0;
+
+			    if ((cp1 = strchr(cp, '[')) != NULL) {
+				*cp1++ = '\0';
+				status = send_cwd(cp);
+				if (status != 2) {
+				    FREE(fname);
+				    init_help_message_cache();	/* to free memory */
+				    NETCLOSE(control->socket);
+				    control->socket = -1;
+				    return ((status < 0) ? status : -status);
+				}
+				HTSprintf0(&dotslash, "[.%s", cp1);
+				status = send_cwd(dotslash);
+				FREE(dotslash);
+				if (status != 2) {
+				    FREE(fname);
+				    init_help_message_cache();	/* to free memory */
+				    NETCLOSE(control->socket);
+				    control->socket = -1;
+				    return ((status < 0) ? status : -status);
+				}
+			    } else {
+				FREE(fname);
+				init_help_message_cache();	/* to free memory */
+				NETCLOSE(control->socket);
+				control->socket = -1;
+				return ((status < 0) ? status : -status);
+			    }
+			}
+		    } else if ((cp1 = strchr(cp, ':')) != NULL &&
+			       strchr(cp, '[') == NULL &&
+			       strchr(cp, ']') == NULL) {
+			cp1++;
+			if (*cp1 != '\0') {
+			    int cplen = (int) (cp1 - cp);
+
+			    strcpy(filename, cp1);
+			    CTRACE((tfp, "HTFTP: Filename '%s'\n", filename));
+			    HTSprintf0(&vmsname, "%.*s[%s]", cplen, cp, filename);
+			    status = send_cwd(vmsname);
+			    if (status != 2) {
+				HTSprintf(&vmsname, "%.*s[000000]", cplen, cp);
+				status = send_cwd(vmsname);
+				if (status != 2) {
+				    HTSprintf(&vmsname, "%.*s", cplen, cp);
+				    status = send_cwd(vmsname);
+				    if (status != 2) {
+					FREE(fname);
+					init_help_message_cache();
+					NETCLOSE(control->socket);
+					control->socket = -1;
+					return ((status < 0) ? status : -status);
+				    }
+				}
+			    } else {
+				HTSprintf0(&vmsname, "000000");
+				filename = vmsname;
+			    }
+			}
+		    } else if (0 == strcmp(cp, (filename + 1))) {
+			status = send_cwd(cp);
+			if (status != 2) {
+			    HTSprintf0(&vmsname, "%s:", cp);
+			    status = send_cwd(vmsname);
+			    if (status != 2) {
+				FREE(fname);
+				init_help_message_cache();	/* to free memory */
+				NETCLOSE(control->socket);
+				control->socket = -1;
+				return ((status < 0) ? status : -status);
+			    }
+			}
+			HTSprintf0(&vmsname, "000000");
+			filename = vmsname;
+		    }
+		}
+		/* Trim trailing slash if filename is not the top directory */
+		if (strlen(filename) > 1 && filename[strlen(filename) - 1] == '/')
+		    filename[strlen(filename) - 1] = '\0';
+
+#ifdef MAINTAIN_CONNECTION	/* Don't need this if always new connection - F.M. */
+		if (!included_device) {
+		    /* Get the current default VMS device:[directory] */
+		    status = send_cmd_1("PWD");
+		    if (status != 2) {
+			FREE(fname);
+			init_help_message_cache();	/* to free memory */
+			NETCLOSE(control->socket);
+			control->socket = -1;
+			return ((status < 0) ? status : -status);
+		    }
+		    /* Go to the VMS account's top directory */
+		    if ((cp = strchr(response_text, '[')) != NULL &&
+			(cp1 = strrchr(response_text, ']')) != NULL) {
+			char *tmp = 0;
+			unsigned len = 4;
+
+			StrAllocCopy(tmp, cp);
+			if ((cp2 = strchr(cp, '.')) != NULL && cp2 < cp1) {
+			    len += (cp2 - cp);
+			} else {
+			    len += (cp1 - cp);
+			}
+			tmp[len] = 0;
+			StrAllocCat(tmp, "]");
+
+			status = send_cwd(tmp);
+			FREE(tmp);
+
+			if (status != 2) {
+			    FREE(fname);
+			    init_help_message_cache();	/* to free memory */
+			    NETCLOSE(control->socket);
+			    control->socket = -1;
+			    return ((status < 0) ? status : -status);
+			}
+		    }
+		}
+#endif /* MAINTAIN_CONNECTION */
+
+		/* If we want the VMS account's top directory, list it now */
+		if (!(strcmp(filename, "/~")) ||
+		    (included_device && 0 == strcmp(filename, "000000")) ||
+		    (strlen(filename) == 1 && *filename == '/')) {
+		    isDirectory = YES;
+		    status = send_cmd_1("LIST");
+		    FREE(fname);
+		    if (status != 1) {
+			/* Action not started */
+			init_help_message_cache();	/* to free memory */
+			NETCLOSE(control->socket);
+			control->socket = -1;
+			return ((status < 0) ? status : -status);
+		    }
+		    /* Big goto! */
+		    goto listen;
+		}
+		/* Otherwise, go to appropriate directory and doctor filename */
+		if (!StrNCmp(filename, "/~", 2)) {
+		    filename += 2;
+		    found_tilde = TRUE;
+		}
+		CTRACE((tfp, "check '%s' to translate x/y/ to [.x.y]\n", filename));
+		if (!included_device &&
+		    (cp = strchr(filename, '/')) != NULL &&
+		    (cp1 = strrchr(cp, '/')) != NULL &&
+		    (cp1 - cp) > 1) {
+		    char *tmp = 0;
+
+		    HTSprintf0(&tmp, "[.%.*s]", (int) (cp1 - cp - 1), cp + 1);
+
+		    CTRACE((tfp, "change path '%s'\n", tmp));
+		    while ((cp2 = strrchr(tmp, '/')) != NULL)
+			*cp2 = '.';
+		    CTRACE((tfp, "...to  path '%s'\n", tmp));
+
+		    status = send_cwd(tmp);
+		    FREE(tmp);
+
+		    if (status != 2) {
+			FREE(fname);
+			init_help_message_cache();	/* to free memory */
+			NETCLOSE(control->socket);
+			control->socket = -1;
+			return ((status < 0) ? status : -status);
+		    }
+		    filename = cp1 + 1;
+		} else {
+		    if (!included_device && !found_tilde) {
+			filename += 1;
+		    }
+		}
+		break;
+	    }
+	case CMS_SERVER:
+	    {
+		/*
+		 * If we want the CMS account's top directory, or a base SFS or
+		 * anonymous directory path (i.e., without a slash), list it
+		 * now.  FM
+		 */
+		if ((strlen(filename) == 1 && *filename == '/') ||
+		    ((0 == strncasecomp((filename + 1), "vmsysu:", 7)) &&
+		     (cp = strchr((filename + 1), '.')) != NULL &&
+		     strchr(cp, '/') == NULL) ||
+		    (0 == strncasecomp(filename + 1, "anonymou.", 9) &&
+		     strchr(filename + 1, '/') == NULL)) {
+		    if (filename[1] != '\0') {
+			status = send_cwd(filename + 1);
+			if (status != 2) {
+			    /* Action not started */
+			    init_help_message_cache();	/* to free memory */
+			    NETCLOSE(control->socket);
+			    control->socket = -1;
+			    return ((status < 0) ? status : -status);
+			}
+		    }
+		    isDirectory = YES;
+		    if (use_list)
+			status = send_cmd_1("LIST");
+		    else
+			status = send_cmd_1("NLST");
+		    FREE(fname);
+		    if (status != 1) {
+			/* Action not started */
+			init_help_message_cache();	/* to free memory */
+			NETCLOSE(control->socket);
+			control->socket = -1;
+			return ((status < 0) ? status : -status);
+		    }
+		    /* Big goto! */
+		    goto listen;
+		}
+		filename++;
+
+		/* Otherwise, go to appropriate directory and adjust filename */
+		while ((cp = strchr(filename, '/')) != NULL) {
+		    *cp++ = '\0';
+		    status = send_cwd(filename);
+		    if (status == 2) {
+			if (*cp == '\0') {
+			    isDirectory = YES;
+			    if (use_list)
+				status = send_cmd_1("LIST");
+			    else
+				status = send_cmd_1("NLST");
+			    FREE(fname);
+			    if (status != 1) {
+				/* Action not started */
+				init_help_message_cache();	/* to free memory */
+				NETCLOSE(control->socket);
+				control->socket = -1;
+				return ((status < 0) ? status : -status);
+			    }
+			    /* Clear any messages from the login directory */
+			    init_help_message_cache();
+			    /* Big goto! */
+			    goto listen;
+			}
+			filename = cp;
+		    }
+		}
+		break;
+	    }
+	default:
+	    /* Shift for any unescaped "/%2F" path */
+	    if (!StrNCmp(filename, "//", 2))
+		filename++;
+	    break;
+	}
+	/*
+	 * Act on a file or listing request, or try to figure out which we're
+	 * dealing with if we don't know yet.  - FM
+	 */
+	if (!(type) || (type && *type != 'D')) {
+	    status = send_cmd_2("RETR", filename);
+	    if (status >= 5) {
+		int check;
+
+		if (Broken_RETR) {
+		    CTRACE((tfp, "{{reconnecting...\n"));
+		    close_connection(control);
+		    check = setup_connection(name, anchor);
+		    CTRACE((tfp, "...done }}reconnecting\n"));
+		    if (check < 0)
+			return check;
+		}
+	    }
+	} else {
+	    status = 5;		/* Failed status set as flag. - FM */
+	}
+	if (status != 1) {	/* Failed : try to CWD to it */
+	    /* Clear any login messages if this isn't the login directory */
+	    if (strcmp(filename, "/"))
+		init_help_message_cache();
+
+	    status = send_cwd(filename);
+	    if (status == 2) {	/* Succeeded : let's NAME LIST it */
+		isDirectory = YES;
+		if (use_list)
+		    status = send_cmd_1("LIST");
+		else
+		    status = send_cmd_1("NLST");
+	    }
+	}
+	FREE(fname);
+	FREE(vmsname);
+	if (status != 1) {
+	    init_help_message_cache();	/* to free memory */
+	    NETCLOSE(control->socket);
+	    control->socket = -1;
+	    if (status < 0)
+		return status;
+	    else
+		return -status;
+	}
+    }
+
+  listen:
+    if (!ftp_local_passive) {
+	/* Wait for the connection */
+#ifdef INET6
+	struct sockaddr_storage soc_address;
+
+#else
+	struct sockaddr_in soc_address;
+#endif /* INET6 */
+	LY_SOCKLEN soc_addrlen = (LY_SOCKLEN) sizeof(soc_address);
+
+#ifdef SOCKS
+	if (socks_flag)
+	    status = Raccept((int) master_socket,
+			     (struct sockaddr *) &soc_address,
+			     &soc_addrlen);
+	else
+#endif /* SOCKS */
+	    status = accept((int) master_socket,
+			    (struct sockaddr *) &soc_address,
+			    &soc_addrlen);
+	if (status < 0) {
+	    init_help_message_cache();	/* to free memory */
+	    return HTInetStatus("accept");
+	}
+	CTRACE((tfp, "TCP: Accepted new socket %d\n", status));
+	data_soc = status;
+    }
+    /* !ftp_local_passive */
+#if 0				/* no - this makes the data connection go away too soon (2.8.3dev.22) */
+    if ((status = send_cmd_nowait("QUIT")) == 1)
+	outstanding++;
+#endif
+
+    if (isDirectory) {
+	if (server_type == UNIX_SERVER && !unsure_type &&
+	    !strcmp(response_text,
+		    "150 Opening ASCII mode data connection for /bin/dl.\n")) {
+	    CTRACE((tfp, "HTFTP: Treating as \"dls\" server.\n"));
+	    server_type = DLS_SERVER;
+	}
+	final_status = read_directory(anchor, name, format_out, sink);
+	if (final_status > 0) {
+	    if (server_type != CMS_SERVER)
+		if (outstanding-- > 0) {
+		    status = response(0);
+		    if (status < 0 ||
+			(status == 2 && !StrNCmp(response_text, "221", 3)))
+			outstanding = 0;
+		}
+	} else {		/* HT_INTERRUPTED */
+	    /* User may have pressed 'z' to give up because no
+	       packets got through, so let's not make them wait
+	       any longer - kw */
+	    outstanding = 0;
+	}
+
+	if (data_soc != -1) {	/* normally done in read_directory */
+	    CTRACE((tfp, "HTFTP: Closing data socket %d\n", data_soc));
+	    status = NETCLOSE(data_soc);
+	    if (status == -1)
+		HTInetStatus("close");	/* Comment only */
+	}
+	status = final_status;
+    } else {
+	int rv;
+	char *FileName = HTParse(name, "", PARSE_PATH + PARSE_PUNCTUATION);
+
+	/* Clear any login messages */
+	init_help_message_cache();
+
+	/* Fake a Content-Encoding for compressed files. - FM */
+	HTUnEscape(FileName);
+	if (!IsUnityEnc(encoding)) {
+	    /*
+	     * We already know from the call to HTFileFormat above that this is
+	     * a compressed file, no need to look at the filename again.  - kw
+	     */
+	    StrAllocCopy(anchor->content_type, format->name);
+	    StrAllocCopy(anchor->content_encoding, HTAtom_name(encoding));
+	    format = HTAtom_for("www/compressed");
+
+	} else {
+	    int rootlen;
+	    CompressFileType cft = HTCompressFileType(FileName, "._-", &rootlen);
+
+	    if (cft != cftNone) {
+		FileName[rootlen] = '\0';
+		format = HTFileFormat(FileName, &encoding, NULL);
+		format = HTCharsetFormat(format, anchor, -1);
+		StrAllocCopy(anchor->content_type, format->name);
+		format = HTAtom_for("www/compressed");
+
+		switch (cft) {
+		case cftCompress:
+		    StrAllocCopy(anchor->content_encoding, "x-compress");
+		    break;
+		case cftGzip:
+		    StrAllocCopy(anchor->content_encoding, "x-gzip");
+		    break;
+		case cftDeflate:
+		    StrAllocCopy(anchor->content_encoding, "x-deflate");
+		    break;
+		case cftBzip2:
+		    StrAllocCopy(anchor->content_encoding, "x-bzip2");
+		    break;
+		case cftNone:
+		    break;
+		}
+	    }
+	}
+	FREE(FileName);
+
+	_HTProgress(gettext("Receiving FTP file."));
+	rv = HTParseSocket(format, format_out, anchor, data_soc, sink);
+
+	HTInitInput(control->socket);
+	/* Reset buffering to control connection DD 921208 */
+
+	if (rv < 0) {
+#if 0				/* any known servers where ABOR would work this way? */
+	    if (rv == HT_INTERRUPTED || rv == -501)
+		if (send_cmd_nowait("ABOR") == 1) {
+		    outstanding++;
+		    CTRACE((tfp, "HTFTP: outstanding responses: %d\n", outstanding));
+		}
+#endif
+	    if (rv == -2)	/* weird error, don't expect much response */
+		outstanding--;
+	    else if (rv == HT_INTERRUPTED || rv == -1)
+		/* User may have pressed 'z' to give up because no
+		   packets got through, so let's not make them wait
+		   longer - kw */
+		outstanding = 0;
+	    CTRACE((tfp, "HTFTP: Closing data socket %d\n", data_soc));
+	    status = NETCLOSE(data_soc);
+	} else
+	    status = 2;		/* data_soc already closed in HTCopy - kw */
+
+	if (status < 0 && rv != HT_INTERRUPTED && rv != -1) {
+	    (void) HTInetStatus("close");	/* Comment only */
+	} else {
+	    if (rv != HT_LOADED && outstanding--) {
+		status = response(0);	/* Pick up final reply */
+		if (status != 2 && rv != HT_INTERRUPTED && rv != -1) {
+		    data_soc = -1;	/* invalidate it */
+		    init_help_message_cache();	/* to free memory */
+		    return HTLoadError(sink, 500, response_text);
+		} else if (status <= 0) {
+		    outstanding = 0;
+		} else if (status == 2 && !StrNCmp(response_text, "221", 3))
+		    outstanding = 0;
+	    }
+	}
+	final_status = HT_LOADED;
+    }
+    while (outstanding-- > 0 &&
+	   (status > 0)) {
+	status = response(0);
+	if (status == 2 && !StrNCmp(response_text, "221", 3))
+	    break;
+    }
+    data_soc = -1;		/* invalidate it */
+    CTRACE((tfp, "HTFTPLoad: normal end; "));
+    if (control->socket < 0) {
+	CTRACE((tfp, "control socket is %d\n", control->socket));
+    } else {
+	CTRACE((tfp, "closing control socket %d\n", control->socket));
+	status = NETCLOSE(control->socket);
+	if (status == -1)
+	    HTInetStatus("control connection close");	/* Comment only */
+    }
+    control->socket = -1;
+    init_help_message_cache();	/* to free memory */
+    /* returns HT_LOADED (always for file if we get here) or error */
+    return final_status;
+}				/* open_file_read */
+
+/*
+ *  This function frees any user entered password, so that
+ *  it must be entered again for a future request. - FM
+ */
+void HTClearFTPPassword(void)
+{
+    /*
+     * Need code to check cached documents from non-anonymous ftp accounts and
+     * do something to ensure that they no longer can be accessed without a new
+     * retrieval.  - FM
+     */
+
+    /*
+     * Now free the current user entered password, if any.  - FM
+     */
+    FREE(user_entered_password);
+}
+
+#endif /* ifndef DISABLE_FTP */
diff --git a/WWW/Library/Implementation/HTFTP.h b/WWW/Library/Implementation/HTFTP.h
new file mode 100644
index 00000000..a903bbb8
--- /dev/null
+++ b/WWW/Library/Implementation/HTFTP.h
@@ -0,0 +1,70 @@
+/*                                                               FTP access module for libwww
+                                   FTP ACCESS FUNCTIONS
+
+   This isn't really  a valid protocol module -- it is lumped together with HTFile . That
+   could be changed easily.
+
+   Author: Tim Berners-Lee.  Public Domain.  Please mail changes to timbl@info.cern.ch
+
+ */
+#ifndef HTFTP_H
+#define HTFTP_H
+
+#include <HTAnchor.h>
+#include <HTStream.h>
+#include <HTParse.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#define FILE_BY_NAME 0
+#define FILE_BY_TYPE 1
+#define FILE_BY_SIZE 2
+#define FILE_BY_DATE 3
+    extern int HTfileSortMethod;	/* specifies the method of sorting */
+
+/* PUBLIC						 HTVMS_name()
+ *		CONVERTS WWW name into a VMS name
+ * ON ENTRY:
+ *	nn		Node Name (optional)
+ *	fn		WWW file name
+ *
+ * ON EXIT:
+ *	returns		vms file specification
+ *
+ * Bug:	Returns pointer to static -- non-reentrant
+ */
+    extern char *HTVMS_name(const char *nn,
+			    const char *fn);
+
+/*
+
+Retrieve File from Server
+
+  ON EXIT,
+
+  returns                 Socket number for file if good.<0 if bad.
+
+ */
+    extern int HTFTPLoad(const char *name,
+			 HTParentAnchor *anchor,
+			 HTFormat format_out,
+			 HTStream *sink);
+
+/*
+ *  This function frees any user entered password, so that
+ *  it must be entered again for a future request. - FM
+ */
+    extern void HTClearFTPPassword(void);
+
+/*
+
+Return Host Name
+
+ */
+    extern const char *HTHostName(void);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
diff --git a/WWW/Library/Implementation/HTFWriter.c b/WWW/Library/Implementation/HTFWriter.c
new file mode 100644
index 00000000..90ab003e
--- /dev/null
+++ b/WWW/Library/Implementation/HTFWriter.c
@@ -0,0 +1,361 @@
+/*		FILE WRITER				HTFWrite.h
+ *		===========
+ *
+ *	This version of the stream object just writes to a C file.
+ *	The file is assumed open and left open.
+ *
+ *	Bugs:
+ *		strings written must be less than buffer size.
+ */
+
+#define HTSTREAM_INTERNAL 1
+
+#include <HTUtils.h>
+
+#include <HTFWriter.h>
+
+#include <HTFormat.h>
+#include <HTAlert.h>
+#include <HTFile.h>
+
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+/*		Stream Object
+ *		------------
+ */
+
+struct _HTStream {
+    const HTStreamClass *isa;
+
+    FILE *fp;
+    char *end_command;
+    char *remove_command;
+    BOOL announce;
+};
+
+/*_________________________________________________________________________
+ *
+ *		B L A C K    H O L E    C L A S S
+ *
+ *	There is only one black hole instance shared by anyone
+ *	who wanst a black hole.  These black holes don't radiate,
+ *	they just absorb data.
+ */
+static void HTBlackHole_put_character(HTStream *me, char c)
+{
+}
+static void HTBlackHole_put_string(HTStream *me, const char *s)
+{
+}
+static void HTBlackHole_write(HTStream *me, const char *s, int l)
+{
+}
+static void HTBlackHole_free(HTStream *me)
+{
+}
+static void HTBlackHole_abort(HTStream *me, HTError e)
+{
+}
+
+/*	Black Hole stream
+ *	-----------------
+ */
+static const HTStreamClass HTBlackHoleClass =
+{
+    "BlackHole",
+    HTBlackHole_free,
+    HTBlackHole_abort,
+    HTBlackHole_put_character, HTBlackHole_put_string,
+    HTBlackHole_write
+};
+
+static HTStream HTBlackHoleInstance =
+{
+    &HTBlackHoleClass,
+    NULL,
+    NULL,
+    NULL,
+    NO
+};
+
+/*	Black hole craetion
+*/
+HTStream *HTBlackHole(void)
+{
+    return &HTBlackHoleInstance;
+}
+
+/*_________________________________________________________________________
+ *
+ *		F I L E     A C T I O N 	R O U T I N E S
+ *  Bug:
+ *	All errors are ignored.
+ */
+
+/*	Character handling
+ *	------------------
+ */
+
+static void HTFWriter_put_character(HTStream *me, char c)
+{
+    putc(c, me->fp);
+}
+
+/*	String handling
+ *	---------------
+ *
+ *	Strings must be smaller than this buffer size.
+ */
+static void HTFWriter_put_string(HTStream *me, const char *s)
+{
+    fputs(s, me->fp);
+}
+
+/*	Buffer write.  Buffers can (and should!) be big.
+ *	------------
+ */
+static void HTFWriter_write(HTStream *me, const char *s, int l)
+{
+    fwrite(s, 1, l, me->fp);
+}
+
+/*	Free an HTML object
+ *	-------------------
+ *
+ *	Note that the SGML parsing context is freed, but the created
+ *	object is not,
+ *	as it takes on an existence of its own unless explicitly freed.
+ */
+static void HTFWriter_free(HTStream *me)
+{
+    fclose(me->fp);
+    if (me->end_command) {	/* Temp file */
+	_HTProgress(me->end_command);	/* Tell user what's happening */
+	system(me->end_command);
+	FREE(me->end_command);
+	if (me->remove_command) {
+	    system(me->remove_command);
+	    FREE(me->remove_command);
+	}
+    }
+
+    FREE(me);
+}
+
+/*	End writing
+*/
+
+static void HTFWriter_abort(HTStream *me, HTError e)
+{
+    fclose(me->fp);
+    if (me->end_command) {	/* Temp file */
+	CTRACE((tfp, "HTFWriter: Aborting: file not executed.\n"));
+	FREE(me->end_command);
+	if (me->remove_command) {
+	    system(me->remove_command);
+	    FREE(me->remove_command);
+	}
+    }
+
+    FREE(me);
+}
+
+/*	Structured Object Class
+ *	-----------------------
+ */
+static const HTStreamClass HTFWriter =	/* As opposed to print etc */
+{
+    "FileWriter",
+    HTFWriter_free,
+    HTFWriter_abort,
+    HTFWriter_put_character, HTFWriter_put_string,
+    HTFWriter_write
+};
+
+/*	Subclass-specific Methods
+ *	-------------------------
+ */
+
+HTStream *HTFWriter_new(FILE *fp)
+{
+    HTStream *me;
+
+    if (!fp)
+	return NULL;
+
+    me = (HTStream *) malloc(sizeof(*me));
+    if (me == NULL)
+	outofmem(__FILE__, "HTML_new");
+
+    assert(me != NULL);
+
+    me->isa = &HTFWriter;
+
+    me->fp = fp;
+    me->end_command = NULL;
+    me->remove_command = NULL;
+    me->announce = NO;
+
+    return me;
+}
+
+/*	Make system command from template
+ *	---------------------------------
+ *
+ *	See mailcap spec for description of template.
+ */
+/* @@ to be written.  sprintfs will do for now.  */
+
+/*	Take action using a system command
+ *	----------------------------------
+ *
+ *	originally from Ghostview handling by Marc Andreseen.
+ *	Creates temporary file, writes to it, executes system command
+ *	on end-document.  The suffix of the temp file can be given
+ *	in case the application is fussy, or so that a generic opener can
+ *	be used.
+ */
+HTStream *HTSaveAndExecute(HTPresentation *pres,
+			   HTParentAnchor *anchor,	/* Not used */
+			   HTStream *sink)	/* Not used */
+
+#ifdef UNIX
+#define REMOVE_COMMAND "/bin/rm -f %s\n"
+#endif
+#ifdef VMS
+#define REMOVE_COMMAND "delete/noconfirm/nolog %s.."
+#endif
+
+#ifdef REMOVE_COMMAND
+{
+    char *fnam;
+    const char *suffix;
+
+    HTStream *me;
+
+    if (HTClientHost) {
+	HTAlert(CANNOT_SAVE_REMOTE);
+	return HTBlackHole();
+    }
+
+    me = (HTStream *) malloc(sizeof(*me));
+    if (me == NULL)
+	outofmem(__FILE__, "Save and execute");
+
+    assert(me != NULL);
+
+    me->isa = &HTFWriter;
+
+    /* Save the file under a suitably suffixed name */
+
+    suffix = HTFileSuffix(pres->rep, anchor->content_encoding);
+
+    fnam = (char *) malloc(L_tmpnam + 16 + strlen(suffix));
+    if (fnam == NULL)
+	outofmem(__FILE__, "HTSaveAndExecute");
+
+    assert(fnam != NULL);
+
+    tmpnam(fnam);
+    strcat(fnam, suffix);
+
+    me->fp = fopen(fnam, BIN_W);
+    if (!me->fp) {
+	HTAlert(CANNOT_OPEN_TEMP);
+	FREE(fnam);
+	FREE(me);
+	return NULL;
+    }
+
+/*	Make command to process file
+*/
+    me->end_command = 0;
+    HTSprintf0(&(me->end_command), pres->command, fnam, fnam, fnam);
+
+    me->remove_command = NULL;	/* If needed, put into end_command */
+#ifdef NOPE
+/*	Make command to delete file
+*/
+    me->remove_command = 0;
+    HTSprintf0(&(me->remove_command), REMOVE_COMMAND, fnam);
+#endif
+
+    me->announce = NO;
+    FREE(fnam);
+    return me;
+}
+
+#else				/* can do remove */
+{
+    return NULL;
+}
+#endif
+
+/*	Save Locally
+ *	------------
+ *
+ *  Bugs:
+ *	GUI Apps should open local Save panel here really.
+ *
+ */
+HTStream *HTSaveLocally(HTPresentation *pres,
+			HTParentAnchor *anchor,		/* Not used */
+			HTStream *sink)		/* Not used */
+
+{
+    char *fnam;
+    char *answer;
+    const char *suffix;
+
+    HTStream *me;
+
+    if (HTClientHost) {
+	HTAlert(CANNOT_SAVE_REMOTE);
+	return HTBlackHole();
+    }
+
+    me = (HTStream *) malloc(sizeof(*me));
+    if (me == NULL)
+	outofmem(__FILE__, "SaveLocally");
+
+    assert(me != NULL);
+
+    me->isa = &HTFWriter;
+    me->end_command = NULL;
+    me->remove_command = NULL;	/* If needed, put into end_command */
+    me->announce = YES;
+
+    /* Save the file under a suitably suffixed name */
+
+    suffix = HTFileSuffix(pres->rep, anchor->content_encoding);
+
+    fnam = (char *) malloc(L_tmpnam + 16 + strlen(suffix));
+    if (fnam == NULL)
+	outofmem(__FILE__, "HTSaveLocally");
+
+    assert(fnam != NULL);
+
+    tmpnam(fnam);
+    strcat(fnam, suffix);
+
+    /*  Save Panel */
+    answer = HTPrompt(GIVE_FILENAME, fnam);
+
+    FREE(fnam);
+
+    me->fp = fopen(answer, BIN_W);
+    if (!me->fp) {
+	HTAlert(CANNOT_OPEN_OUTPUT);
+	FREE(answer);
+	FREE(me);
+	return NULL;
+    }
+
+    FREE(answer);
+    return me;
+}
+
+/*	Format Converter using system command
+ *	-------------------------------------
+ */
diff --git a/WWW/Library/Implementation/HTFWriter.h b/WWW/Library/Implementation/HTFWriter.h
new file mode 100644
index 00000000..015ea15f
--- /dev/null
+++ b/WWW/Library/Implementation/HTFWriter.h
@@ -0,0 +1,30 @@
+/*                                                                     File Writer for libwww
+                                      C FILE WRITER
+
+   It is useful to have both FWriter and Writer for environments in which fdopen() doesn't
+   exist for example.
+
+ */
+#ifndef HTFWRITE_H
+#define HTFWRITE_H
+
+#include <HTStream.h>
+#include <HTFormat.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern HTStream *HTFWriter_new(FILE *fp);
+
+    extern HTStream *HTSaveAndExecute(HTPresentation *pres,
+				      HTParentAnchor *anchor,	/* Not used */
+				      HTStream *sink);
+
+    extern HTStream *HTSaveLocally(HTPresentation *pres,
+				   HTParentAnchor *anchor,	/* Not used */
+				   HTStream *sink);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTFWRITE_H */
diff --git a/WWW/Library/Implementation/HTFile.c b/WWW/Library/Implementation/HTFile.c
new file mode 100644
index 00000000..be561e44
--- /dev/null
+++ b/WWW/Library/Implementation/HTFile.c
@@ -0,0 +1,3240 @@
+/*
+ * $LynxId: HTFile.c,v 1.129 2012/02/10 01:10:51 tom Exp $
+ *
+ *			File Access				HTFile.c
+ *			===========
+ *
+ *	This is unix-specific code in general, with some VMS bits.
+ *	These are routines for file access used by browsers.
+ *	Development of this module for Unix DIRED_SUPPORT in Lynx
+ *	 regrettably has has been conducted in a manner with now
+ *	 creates a major impediment for hopes of adapting Lynx to
+ *	 a newer version of the library.
+ *
+ *  History:
+ *	   Feb 91	Written Tim Berners-Lee CERN/CN
+ *	   Apr 91	vms-vms access included using DECnet syntax
+ *	26 Jun 92 (JFG) When running over DECnet, suppressed FTP.
+ *			Fixed access bug for relative names on VMS.
+ *	   Sep 93 (MD)	Access to VMS files allows sharing.
+ *	15 Nov 93 (MD)	Moved HTVMSname to HTVMSUTILS.C
+ *	27 Dec 93 (FM)	FTP now works with VMS hosts.
+ *			FTP path must be Unix-style and cannot include
+ *			the device or top directory.
+ */
+
+#include <HTUtils.h>
+
+#ifndef VMS
+#if defined(DOSPATH)
+#undef LONG_LIST
+#define LONG_LIST		/* Define this for long style unix listings (ls -l),
+				   the actual style is configurable from lynx.cfg */
+#endif
+/* #define NO_PARENT_DIR_REFERENCE */
+/* Define this for no parent links */
+#endif /* !VMS */
+
+#if defined(DOSPATH)
+#define HAVE_READDIR 1
+#define USE_DIRENT
+#endif
+
+#if defined(USE_DOS_DRIVES)
+#include <HTDOS.h>
+#endif
+
+#include <HTFile.h>		/* Implemented here */
+
+#ifdef VMS
+#include <stat.h>
+#endif /* VMS */
+
+#if defined (USE_ZLIB) || defined (USE_BZLIB)
+#include <GridText.h>
+#endif
+
+#define MULTI_SUFFIX ".multi"	/* Extension for scanning formats */
+
+#include <HTParse.h>
+#include <HTTCP.h>
+#ifndef DECNET
+#include <HTFTP.h>
+#endif /* !DECNET */
+#include <HTAnchor.h>
+#include <HTAtom.h>
+#include <HTAAProt.h>
+#include <HTFWriter.h>
+#include <HTInit.h>
+#include <HTBTree.h>
+#include <HTAlert.h>
+#include <HTCJK.h>
+#include <UCDefs.h>
+#include <UCMap.h>
+#include <UCAux.h>
+
+#include <LYexit.h>
+#include <LYCharSets.h>
+#include <LYGlobalDefs.h>
+#include <LYStrings.h>
+#include <LYUtils.h>
+
+#ifdef USE_PRETTYSRC
+# include <LYPrettySrc.h>
+#endif
+
+#include <LYLeaks.h>
+
+typedef struct _HTSuffix {
+    char *suffix;
+    HTAtom *rep;
+    HTAtom *encoding;
+    char *desc;
+    float quality;
+} HTSuffix;
+
+typedef struct {
+    struct stat file_info;
+    char sort_tags;
+    char file_name[1];		/* on the end of the struct, since its length varies */
+} DIRED;
+
+#ifndef NGROUPS
+#ifdef NGROUPS_MAX
+#define NGROUPS NGROUPS_MAX
+#else
+#define NGROUPS 32
+#endif /* NGROUPS_MAX */
+#endif /* NGROUPS */
+
+#ifndef GETGROUPS_T
+#define GETGROUPS_T int
+#endif
+
+#include <HTML.h>		/* For directory object building */
+
+#define PUTC(c)      (*target->isa->put_character)(target, c)
+#define PUTS(s)      (*target->isa->put_string)(target, s)
+#define START(e)     (*target->isa->start_element)(target, e, 0, 0, -1, 0)
+#define END(e)       (*target->isa->end_element)(target, e, 0)
+#define MAYBE_END(e) if (HTML_dtd.tags[e].contents != SGML_EMPTY) \
+			(*target->isa->end_element)(target, e, 0)
+#define FREE_TARGET  (*target->isa->_free)(target)
+#define ABORT_TARGET (*targetClass._abort)(target, NULL);
+
+struct _HTStructured {
+    const HTStructuredClass *isa;
+    /* ... */
+};
+
+/*
+ *  Controlling globals.
+ */
+int HTDirAccess = HT_DIR_OK;
+
+#ifdef DIRED_SUPPORT
+int HTDirReadme = HT_DIR_README_NONE;
+
+#else
+int HTDirReadme = HT_DIR_README_TOP;
+#endif /* DIRED_SUPPORT */
+
+static const char *HTMountRoot = "/Net/";	/* Where to find mounts */
+
+#ifdef VMS
+static const char *HTCacheRoot = "/WWW$SCRATCH";	/* Where to cache things */
+
+#else
+static const char *HTCacheRoot = "/tmp/W3_Cache_";	/* Where to cache things */
+#endif /* VMS */
+
+static char s_no_suffix[] = "*";
+static char s_unknown_suffix[] = "*.*";
+
+/*
+ *  Suffix registration.
+ */
+static HTList *HTSuffixes = 0;
+
+static HTSuffix no_suffix =
+{
+    s_no_suffix, NULL, NULL, NULL, 1.0
+};
+
+static HTSuffix unknown_suffix =
+{
+    s_unknown_suffix, NULL, NULL, NULL, 1.0
+};
+
+/*	To free up the suffixes at program exit.
+ *	----------------------------------------
+ */
+#ifdef LY_FIND_LEAKS
+static void free_suffixes(void);
+#endif
+
+#ifdef LONG_LIST
+static char *FormatStr(char **bufp,
+		       char *start,
+		       const char *entry)
+{
+    char fmt[512];
+
+    if (*start) {
+	sprintf(fmt, "%%%.*ss", (int) sizeof(fmt) - 3, start);
+	HTSprintf0(bufp, fmt, entry);
+    } else if (*bufp && !(entry && *entry)) {
+	**bufp = '\0';
+    } else if (entry) {
+	StrAllocCopy(*bufp, entry);
+    }
+    return *bufp;
+}
+
+static char *FormatNum(char **bufp,
+		       char *start,
+		       int entry)
+{
+    char fmt[512];
+
+    if (*start) {
+	sprintf(fmt, "%%%.*sd", (int) sizeof(fmt) - 3, start);
+	HTSprintf0(bufp, fmt, entry);
+    } else {
+	sprintf(fmt, "%d", entry);
+	StrAllocCopy(*bufp, fmt);
+    }
+    return *bufp;
+}
+
+static void LYListFmtParse(const char *fmtstr,
+			   DIRED * data,
+			   char *file,
+			   HTStructured * target,
+			   char *tail)
+{
+    char c;
+    char *s;
+    char *end;
+    char *start;
+    char *str = NULL;
+    char *buf = NULL;
+    char tmp[LY_MAXPATH];
+    char type;
+
+#ifndef NOUSERS
+    const char *name;
+#endif
+    time_t now;
+    char *datestr;
+
+#ifdef S_IFLNK
+    int len;
+#endif
+#define SEC_PER_YEAR	(60 * 60 * 24 * 365)
+
+#ifdef _WINDOWS			/* 1998/01/06 (Tue) 21:20:53 */
+    static const char *pbits[] =
+    {
+	"---", "--x", "-w-", "-wx",
+	"r--", "r-x", "rw-", "rwx",
+	0};
+
+#define PBIT(a, n, s)  pbits[((a) >> (n)) & 0x7]
+
+#else
+    static const char *pbits[] =
+    {"---", "--x", "-w-", "-wx",
+     "r--", "r-x", "rw-", "rwx", 0};
+    static const char *psbits[] =
+    {"--S", "--s", "-wS", "-ws",
+     "r-S", "r-s", "rwS", "rws", 0};
+
+#define PBIT(a, n, s)  (s) ? psbits[((a) >> (n)) & 0x7] : \
+	pbits[((a) >> (n)) & 0x7]
+#endif
+#if defined(S_ISVTX) && !defined(_WINDOWS)
+    static const char *ptbits[] =
+    {"--T", "--t", "-wT", "-wt",
+     "r-T", "r-t", "rwT", "rwt", 0};
+
+#define PTBIT(a, s)  (s) ? ptbits[(a) & 0x7] : pbits[(a) & 0x7]
+#else
+#define PTBIT(a, s)  PBIT(a, 0, 0)
+#endif
+
+    if (data->file_info.st_mode == 0)
+	fmtstr = "    %a";	/* can't stat so just do anchor */
+
+    StrAllocCopy(str, fmtstr);
+    s = str;
+    end = str + strlen(str);
+    while (*s) {
+	start = s;
+	while (*s) {
+	    if (*s == '%') {
+		if (*(s + 1) == '%')	/* literal % */
+		    s++;
+		else
+		    break;
+	    }
+	    s++;
+	}
+	/* s is positioned either at a % or at \0 */
+	*s = '\0';
+	if (s > start) {	/* some literal chars. */
+	    PUTS(start);
+	}
+	if (s == end)
+	    break;
+	start = ++s;
+	while (isdigit(UCH(*s)) || *s == '.' || *s == '-' || *s == ' ' ||
+	       *s == '#' || *s == '+' || *s == '\'')
+	    s++;
+	c = *s;			/* the format char. or \0 */
+	*s = '\0';
+
+	switch (c) {
+	case '\0':
+	    PUTS(start);
+	    continue;
+
+	case 'A':
+	case 'a':		/* anchor */
+	    HTDirEntry(target, tail, data->file_name);
+	    FormatStr(&buf, start, data->file_name);
+	    PUTS(buf);
+	    END(HTML_A);
+	    *buf = '\0';
+#ifdef S_IFLNK
+	    if (c != 'A' && S_ISLNK(data->file_info.st_mode) &&
+		(len = (int) readlink(file, tmp, sizeof(tmp) - 1)) >= 0) {
+		PUTS(" -> ");
+		tmp[len] = '\0';
+		PUTS(tmp);
+	    }
+#endif
+	    break;
+
+	case 'T':		/* MIME type */
+	case 't':		/* MIME type description */
+	    if (S_ISDIR(data->file_info.st_mode)) {
+		if (c != 'T') {
+		    FormatStr(&buf, start, ENTRY_IS_DIRECTORY);
+		} else {
+		    FormatStr(&buf, start, "");
+		}
+	    } else {
+		const char *cp2;
+		HTFormat format;
+
+		format = HTFileFormat(file, NULL, &cp2);
+
+		if (c != 'T') {
+		    if (cp2 == NULL) {
+			if (!StrNCmp(HTAtom_name(format),
+				     "application", 11)) {
+			    cp2 = HTAtom_name(format) + 12;
+			    if (!StrNCmp(cp2, "x-", 2))
+				cp2 += 2;
+			} else {
+			    cp2 = HTAtom_name(format);
+			}
+		    }
+		    FormatStr(&buf, start, cp2);
+		} else {
+		    FormatStr(&buf, start, HTAtom_name(format));
+		}
+	    }
+	    break;
+
+	case 'd':		/* date */
+	    now = time(0);
+	    datestr = ctime(&data->file_info.st_mtime);
+	    if ((now - data->file_info.st_mtime) < SEC_PER_YEAR / 2)
+		/*
+		 * MMM DD HH:MM
+		 */
+		sprintf(tmp, "%.12s", datestr + 4);
+	    else
+		/*
+		 * MMM DD YYYY
+		 */
+		sprintf(tmp, "%.7s %.4s ", datestr + 4,
+			datestr + 20);
+	    FormatStr(&buf, start, tmp);
+	    break;
+
+	case 's':		/* size in bytes */
+	    FormatNum(&buf, start, (int) data->file_info.st_size);
+	    break;
+
+	case 'K':		/* size in Kilobytes but not for directories */
+	    if (S_ISDIR(data->file_info.st_mode)) {
+		FormatStr(&buf, start, "");
+		StrAllocCat(buf, " ");
+		break;
+	    }
+	    /* FALL THROUGH */
+	case 'k':		/* size in Kilobytes */
+	    FormatNum(&buf, start, (int) ((data->file_info.st_size + 1023) / 1024));
+	    StrAllocCat(buf, "K");
+	    break;
+
+	case 'p':		/* unix-style permission bits */
+	    switch (data->file_info.st_mode & S_IFMT) {
+#if defined(_MSC_VER) && defined(_S_IFIFO)
+	    case _S_IFIFO:
+		type = 'p';
+		break;
+#else
+	    case S_IFIFO:
+		type = 'p';
+		break;
+#endif
+	    case S_IFCHR:
+		type = 'c';
+		break;
+	    case S_IFDIR:
+		type = 'd';
+		break;
+	    case S_IFREG:
+		type = '-';
+		break;
+#ifdef S_IFBLK
+	    case S_IFBLK:
+		type = 'b';
+		break;
+#endif
+#ifdef S_IFLNK
+	    case S_IFLNK:
+		type = 'l';
+		break;
+#endif
+#ifdef S_IFSOCK
+# ifdef S_IFIFO			/* some older machines (e.g., apollo) have a conflict */
+#  if S_IFIFO != S_IFSOCK
+	    case S_IFSOCK:
+		type = 's';
+		break;
+#  endif
+# else
+	    case S_IFSOCK:
+		type = 's';
+		break;
+# endif
+#endif /* S_IFSOCK */
+	    default:
+		type = '?';
+		break;
+	    }
+#ifdef _WINDOWS
+	    sprintf(tmp, "%c%s", type,
+		    PBIT(data->file_info.st_mode, 6, data->file_info.st_mode & S_IRWXU));
+#else
+	    sprintf(tmp, "%c%s%s%s", type,
+		    PBIT(data->file_info.st_mode, 6, data->file_info.st_mode & S_ISUID),
+		    PBIT(data->file_info.st_mode, 3, data->file_info.st_mode & S_ISGID),
+		    PTBIT(data->file_info.st_mode, data->file_info.st_mode & S_ISVTX));
+#endif
+	    FormatStr(&buf, start, tmp);
+	    break;
+
+	case 'o':		/* owner */
+#ifndef NOUSERS
+	    name = HTAA_UidToName((int) data->file_info.st_uid);
+	    if (*name) {
+		FormatStr(&buf, start, name);
+	    } else {
+		FormatNum(&buf, start, (int) data->file_info.st_uid);
+	    }
+#endif
+	    break;
+
+	case 'g':		/* group */
+#ifndef NOUSERS
+	    name = HTAA_GidToName((int) data->file_info.st_gid);
+	    if (*name) {
+		FormatStr(&buf, start, name);
+	    } else {
+		FormatNum(&buf, start, (int) data->file_info.st_gid);
+	    }
+#endif
+	    break;
+
+	case 'l':		/* link count */
+	    FormatNum(&buf, start, (int) data->file_info.st_nlink);
+	    break;
+
+	case '%':		/* literal % with flags/width */
+	    FormatStr(&buf, start, "%");
+	    break;
+
+	default:
+	    fprintf(stderr,
+		    "Unknown format character `%c' in list format\n", c);
+	    break;
+	}
+	if (buf)
+	    PUTS(buf);
+
+	s++;
+    }
+    FREE(buf);
+    PUTC('\n');
+    FREE(str);
+}
+#endif /* LONG_LIST */
+
+/*	Define the representation associated with a file suffix.
+ *	--------------------------------------------------------
+ *
+ *	Calling this with suffix set to "*" will set the default
+ *	representation.
+ *	Calling this with suffix set to "*.*" will set the default
+ *	representation for unknown suffix files which contain a ".".
+ *
+ *	The encoding parameter can give a trivial (8bit, 7bit, binary)
+ *	or real (gzip, compress) encoding.
+ *
+ *	If filename suffix is already defined with the same encoding
+ *	its previous definition is overridden.
+ */
+void HTSetSuffix5(const char *suffix,
+		  const char *representation,
+		  const char *encoding,
+		  const char *desc,
+		  double value)
+{
+    HTSuffix *suff;
+    BOOL trivial_enc = (BOOL) IsUnityEncStr(encoding);
+
+    if (strcmp(suffix, s_no_suffix) == 0)
+	suff = &no_suffix;
+    else if (strcmp(suffix, s_unknown_suffix) == 0)
+	suff = &unknown_suffix;
+    else {
+	HTList *cur = HTSuffixes;
+
+	while (NULL != (suff = (HTSuffix *) HTList_nextObject(cur))) {
+	    if (suff->suffix && 0 == strcmp(suff->suffix, suffix) &&
+		((trivial_enc && IsUnityEnc(suff->encoding)) ||
+		 (!trivial_enc && !IsUnityEnc(suff->encoding) &&
+		  strcmp(encoding, HTAtom_name(suff->encoding)) == 0)))
+		break;
+	}
+	if (!suff) {		/* Not found -- create a new node */
+	    suff = typecalloc(HTSuffix);
+	    if (suff == NULL)
+		outofmem(__FILE__, "HTSetSuffix");
+
+	    assert(suff != NULL);
+
+	    if (!HTSuffixes) {
+		HTSuffixes = HTList_new();
+#ifdef LY_FIND_LEAKS
+		atexit(free_suffixes);
+#endif
+	    }
+
+	    HTList_addObject(HTSuffixes, suff);
+
+	    StrAllocCopy(suff->suffix, suffix);
+	}
+    }
+
+    if (representation)
+	suff->rep = HTAtom_for(representation);
+
+    /*
+     * Memory leak fixed.
+     * 05-28-94 Lynx 2-3-1 Garrett Arch Blythe
+     * Invariant code removed.
+     */
+    suff->encoding = HTAtom_for(encoding);
+
+    StrAllocCopy(suff->desc, desc);
+
+    suff->quality = (float) value;
+}
+
+#ifdef LY_FIND_LEAKS
+/*
+ *	Purpose:	Free all added suffixes.
+ *	Arguments:	void
+ *	Return Value:	void
+ *	Remarks/Portability/Dependencies/Restrictions:
+ *		To be used at program exit.
+ *	Revision History:
+ *		05-28-94	created Lynx 2-3-1 Garrett Arch Blythe
+ */
+static void free_suffixes(void)
+{
+    HTSuffix *suff = NULL;
+
+    /*
+     * Loop through all suffixes.
+     */
+    while (!HTList_isEmpty(HTSuffixes)) {
+	/*
+	 * Free off each item and its members if need be.
+	 */
+	suff = (HTSuffix *) HTList_removeLastObject(HTSuffixes);
+	FREE(suff->suffix);
+	FREE(suff->desc);
+	FREE(suff);
+    }
+    /*
+     * Free off the list itself.
+     */
+    HTList_delete(HTSuffixes);
+    HTSuffixes = NULL;
+}
+#endif /* LY_FIND_LEAKS */
+
+/*	Make the cache file name for a W3 document.
+ *	-------------------------------------------
+ *	Make up a suitable name for saving the node in
+ *
+ *	E.g.	/tmp/WWW_Cache_news/1234@cernvax.cern.ch
+ *		/tmp/WWW_Cache_http/crnvmc/FIND/xx.xxx.xx
+ *
+ *  On exit:
+ *	Returns a malloc'ed string which must be freed by the caller.
+ */
+char *HTCacheFileName(const char *name)
+{
+    char *acc_method = HTParse(name, "", PARSE_ACCESS);
+    char *host = HTParse(name, "", PARSE_HOST);
+    char *path = HTParse(name, "", PARSE_PATH + PARSE_PUNCTUATION);
+    char *result = NULL;
+
+    HTSprintf0(&result, "%s/WWW/%s/%s%s", HTCacheRoot, acc_method, host, path);
+
+    FREE(path);
+    FREE(acc_method);
+    FREE(host);
+    return result;
+}
+
+/*	Open a file for write, creating the path.
+ *	-----------------------------------------
+ */
+#ifdef NOT_IMPLEMENTED
+static int HTCreatePath(const char *path)
+{
+    return -1;
+}
+#endif /* NOT_IMPLEMENTED */
+
+/*	Convert filename from URL-path syntax to local path format
+ *	----------------------------------------------------------
+ *	Input name is assumed to be the URL-path of a local file
+ *      URL, i.e. what comes after the "file://localhost".
+ *      '#'-fragments to be treated as such must already be stripped.
+ *      If expand_all is FALSE, unescape only escaped '/'. - kw
+ *
+ *  On exit:
+ *	Returns a malloc'ed string which must be freed by the caller.
+ */
+char *HTURLPath_toFile(const char *name,
+		       int expand_all,
+		       int is_remote GCC_UNUSED)
+{
+    char *path = NULL;
+    char *result = NULL;
+
+    StrAllocCopy(path, name);
+    if (expand_all)
+	HTUnEscape(path);	/* Interpret all % signs */
+    else
+	HTUnEscapeSome(path, "/");	/* Interpret % signs for path delims */
+
+    CTRACE((tfp, "URLPath `%s' means path `%s'\n", name, path));
+#if defined(USE_DOS_DRIVES)
+    StrAllocCopy(result, is_remote ? path : HTDOS_name(path));
+#else
+    StrAllocCopy(result, path);
+#endif
+
+    FREE(path);
+
+    return result;
+}
+/*	Convert filenames between local and WWW formats.
+ *	------------------------------------------------
+ *	Make up a suitable name for saving the node in
+ *
+ *	E.g.	$(HOME)/WWW/news/1234@cernvax.cern.ch
+ *		$(HOME)/WWW/http/crnvmc/FIND/xx.xxx.xx
+ *
+ *  On exit:
+ *	Returns a malloc'ed string which must be freed by the caller.
+ */
+/* NOTE: Don't use this function if you know that the input is a URL path
+	 rather than a full URL, use HTURLPath_toFile instead.  Otherwise
+	 this function will return the wrong thing for some unusual
+	 paths (like ones containing "//", possibly escaped). - kw
+*/
+char *HTnameOfFile_WWW(const char *name,
+		       int WWW_prefix,
+		       int expand_all)
+{
+    char *acc_method = HTParse(name, "", PARSE_ACCESS);
+    char *host = HTParse(name, "", PARSE_HOST);
+    char *path = HTParse(name, "", PARSE_PATH + PARSE_PUNCTUATION);
+    const char *home;
+    char *result = NULL;
+
+    if (expand_all) {
+	HTUnEscape(path);	/* Interpret all % signs */
+    } else
+	HTUnEscapeSome(path, "/");	/* Interpret % signs for path delims */
+
+    if (0 == strcmp(acc_method, "file")		/* local file */
+	||!*acc_method) {	/* implicitly local? */
+	if ((0 == strcasecomp(host, HTHostName())) ||
+	    (0 == strcasecomp(host, "localhost")) || !*host) {
+	    CTRACE((tfp, "Node `%s' means path `%s'\n", name, path));
+	    StrAllocCopy(result, HTSYS_name(path));
+	} else if (WWW_prefix) {
+	    HTSprintf0(&result, "%s%s%s", "/Net/", host, path);
+	    CTRACE((tfp, "Node `%s' means file `%s'\n", name, result));
+	} else {
+	    StrAllocCopy(result, path);
+	}
+    } else if (WWW_prefix) {	/* other access */
+#ifdef VMS
+	if ((home = LYGetEnv("HOME")) == NULL)
+	    home = HTCacheRoot;
+	else
+	    home = HTVMS_wwwName(home);
+#else
+#if defined(_WINDOWS)		/* 1997/10/16 (Thu) 20:42:51 */
+	home = Home_Dir();
+#else
+	home = LYGetEnv("HOME");
+#endif
+	if (home == NULL)
+	    home = "/tmp";
+#endif /* VMS */
+	HTSprintf0(&result, "%s/WWW/%s/%s%s", home, acc_method, host, path);
+    } else {
+	StrAllocCopy(result, path);
+    }
+
+    FREE(host);
+    FREE(path);
+    FREE(acc_method);
+
+    CTRACE((tfp, "HTnameOfFile_WWW(%s,%d,%d) = %s\n",
+	    name, WWW_prefix, expand_all, result));
+
+    return result;
+}
+
+/*	Make a WWW name from a full local path name.
+ *	--------------------------------------------
+ *
+ *  Bugs:
+ *	At present, only the names of two network root nodes are hand-coded
+ *	in and valid for the NeXT only.  This should be configurable in
+ *	the general case.
+ */
+char *WWW_nameOfFile(const char *name)
+{
+    char *result = NULL;
+
+#ifdef NeXT
+    if (0 == StrNCmp("/private/Net/", name, 13)) {
+	HTSprintf0(&result, "%s//%s", STR_FILE_URL, name + 13);
+    } else
+#endif /* NeXT */
+    if (0 == StrNCmp(HTMountRoot, name, 5)) {
+	HTSprintf0(&result, "%s//%s", STR_FILE_URL, name + 5);
+    } else {
+	HTSprintf0(&result, "%s//%s%s", STR_FILE_URL, HTHostName(), name);
+    }
+    CTRACE((tfp, "File `%s'\n\tmeans node `%s'\n", name, result));
+    return result;
+}
+
+/*	Determine a suitable suffix, given the representation.
+ *	------------------------------------------------------
+ *
+ *  On entry,
+ *	rep	is the atomized MIME style representation
+ *	enc	is an encoding, trivial (8bit, binary, etc.) or gzip etc.
+ *
+ *  On exit:
+ *	Returns a pointer to a suitable suffix string if one has been
+ *	found, else "".
+ */
+const char *HTFileSuffix(HTAtom *rep,
+			 const char *enc)
+{
+    HTSuffix *suff;
+
+#ifdef FNAMES_8_3
+    HTSuffix *first_found = NULL;
+#endif
+    BOOL trivial_enc;
+    int n;
+    int i;
+
+#define NO_INIT			/* don't init anymore since I do it in Lynx at startup */
+#ifndef NO_INIT
+    if (!HTSuffixes)
+	HTFileInit();
+#endif /* !NO_INIT */
+
+    trivial_enc = (BOOL) IsUnityEncStr(enc);
+    n = HTList_count(HTSuffixes);
+    for (i = 0; i < n; i++) {
+	suff = (HTSuffix *) HTList_objectAt(HTSuffixes, i);
+	if (suff->rep == rep &&
+#if defined(VMS) || defined(FNAMES_8_3)
+	/*  Don't return a suffix whose first char is a dot, and which
+	   has more dots or asterisks after that, for
+	   these systems - kw */
+	    (!suff->suffix || !suff->suffix[0] || suff->suffix[0] != '.' ||
+	     (strchr(suff->suffix + 1, '.') == NULL &&
+	      strchr(suff->suffix + 1, '*') == NULL)) &&
+#endif
+	    ((trivial_enc && IsUnityEnc(suff->encoding)) ||
+	     (!trivial_enc && !IsUnityEnc(suff->encoding) &&
+	      strcmp(enc, HTAtom_name(suff->encoding)) == 0))) {
+#ifdef FNAMES_8_3
+	    if (suff->suffix && (strlen(suff->suffix) <= 4)) {
+		/*
+		 * If length of suffix (including dot) is 4 or smaller, return
+		 * this one even if we found a longer one earlier - kw
+		 */
+		return suff->suffix;
+	    } else if (!first_found) {
+		first_found = suff;	/* remember this one */
+	    }
+#else
+	    return suff->suffix;	/* OK -- found */
+#endif
+	}
+    }
+#ifdef FNAMES_8_3
+    if (first_found)
+	return first_found->suffix;
+#endif
+    return "";			/* Dunno */
+}
+
+/*
+ * Trim version from VMS filenames to avoid confusing comparisons.
+ */
+#ifdef VMS
+static const char *VMS_trim_version(const char *filename)
+{
+    const char *result = filename;
+    const char *version = strchr(filename, ';');
+
+    if (version != 0) {
+	static char *stripped;
+
+	StrAllocCopy(stripped, filename);
+	stripped[version - filename] = '\0';
+	result = (const char *) stripped;
+    }
+    return result;
+}
+#define VMS_DEL_VERSION(name) name = VMS_trim_version(name)
+#else
+#define VMS_DEL_VERSION(name)	/* nothing */
+#endif
+
+/*	Determine file format from file name.
+ *	-------------------------------------
+ *
+ *	This version will return the representation and also set
+ *	a variable for the encoding.
+ *
+ *	Encoding may be a unity encoding (binary, 8bit, etc.) or
+ *	a content-coding like gzip, compress.
+ *
+ *	It will handle for example  x.txt, x.txt,Z, x.Z
+ */
+HTFormat HTFileFormat(const char *filename,
+		      HTAtom **pencoding,
+		      const char **pdesc)
+{
+    HTSuffix *suff;
+    int n;
+    int i;
+    int lf;
+
+    VMS_DEL_VERSION(filename);
+
+    if (pencoding)
+	*pencoding = NULL;
+    if (pdesc)
+	*pdesc = NULL;
+    if (LYforce_HTML_mode) {
+	if (pencoding)
+	    *pencoding = WWW_ENC_8BIT;
+	return WWW_HTML;
+    }
+#ifndef NO_INIT
+    if (!HTSuffixes)
+	HTFileInit();
+#endif /* !NO_INIT */
+    lf = (int) strlen(filename);
+    n = HTList_count(HTSuffixes);
+    for (i = 0; i < n; i++) {
+	int ls;
+
+	suff = (HTSuffix *) HTList_objectAt(HTSuffixes, i);
+	ls = (int) strlen(suff->suffix);
+	if ((ls <= lf) && 0 == strcasecomp(suff->suffix, filename + lf - ls)) {
+	    int j;
+
+	    if (pencoding)
+		*pencoding = suff->encoding;
+	    if (pdesc)
+		*pdesc = suff->desc;
+	    if (suff->rep) {
+		return suff->rep;	/* OK -- found */
+	    }
+	    for (j = 0; j < n; j++) {	/* Got encoding, need representation */
+		int ls2;
+
+		suff = (HTSuffix *) HTList_objectAt(HTSuffixes, j);
+		ls2 = (int) strlen(suff->suffix);
+		if ((ls + ls2 <= lf) &&
+		    !strncasecomp(suff->suffix,
+				  filename + lf - ls - ls2, ls2)) {
+		    if (suff->rep) {
+			if (pdesc && !(*pdesc))
+			    *pdesc = suff->desc;
+			if (pencoding && IsUnityEnc(*pencoding) &&
+			    *pencoding != WWW_ENC_7BIT &&
+			    !IsUnityEnc(suff->encoding))
+			    *pencoding = suff->encoding;
+			return suff->rep;
+		    }
+		}
+	    }
+
+	}
+    }
+
+    /* defaults tree */
+
+    suff = (strchr(filename, '.')
+	    ? (unknown_suffix.rep
+	       ? &unknown_suffix
+	       : &no_suffix)
+	    : &no_suffix);
+
+    /*
+     * Set default encoding unless found with suffix already.
+     */
+    if (pencoding && !*pencoding) {
+	*pencoding = (suff->encoding
+		      ? suff->encoding
+		      : HTAtom_for("binary"));
+    }
+    return suff->rep ? suff->rep : WWW_BINARY;
+}
+
+/*	Revise the file format in relation to the Lynx charset. - FM
+ *	-------------------------------------------------------
+ *
+ *	This checks the format associated with an anchor for
+ *	an extended MIME Content-Type, and if a charset is
+ *	indicated, sets Lynx up for proper handling in relation
+ *	to the currently selected character set. - FM
+ */
+HTFormat HTCharsetFormat(HTFormat format,
+			 HTParentAnchor *anchor,
+			 int default_LYhndl)
+{
+    char *cp = NULL, *cp1, *cp2, *cp3 = NULL, *cp4;
+    BOOL chartrans_ok = FALSE;
+    int chndl = -1;
+
+    FREE(anchor->charset);
+    StrAllocCopy(cp, format->name);
+    LYLowerCase(cp);
+    if (((cp1 = strchr(cp, ';')) != NULL) &&
+	(cp2 = strstr(cp1, "charset")) != NULL) {
+	CTRACE((tfp, "HTCharsetFormat: Extended MIME Content-Type is %s\n",
+		format->name));
+	cp2 += 7;
+	while (*cp2 == ' ' || *cp2 == '=')
+	    cp2++;
+	StrAllocCopy(cp3, cp2);	/* copy to mutilate more */
+	for (cp4 = cp3; (*cp4 != '\0' && *cp4 != '"' &&
+			 *cp4 != ';' && *cp4 != ':' &&
+			 !WHITE(*cp4)); cp4++) {
+	    ;			/* do nothing */
+	}
+	*cp4 = '\0';
+	cp4 = cp3;
+	chndl = UCGetLYhndl_byMIME(cp3);
+	if (UCCanTranslateFromTo(chndl, current_char_set)) {
+	    chartrans_ok = YES;
+	    *cp1 = '\0';
+	    format = HTAtom_for(cp);
+	    StrAllocCopy(anchor->charset, cp4);
+	    HTAnchor_setUCInfoStage(anchor, chndl,
+				    UCT_STAGE_MIME,
+				    UCT_SETBY_MIME);
+	} else if (chndl < 0) {
+	    /*
+	     * Got something but we don't recognize it.
+	     */
+	    chndl = UCLYhndl_for_unrec;
+	    if (chndl < 0)
+		/*
+		 * UCLYhndl_for_unrec not defined :-( fallback to
+		 * UCLYhndl_for_unspec which always valid.
+		 */
+		chndl = UCLYhndl_for_unspec;	/* always >= 0 */
+	    if (UCCanTranslateFromTo(chndl, current_char_set)) {
+		chartrans_ok = YES;
+		HTAnchor_setUCInfoStage(anchor, chndl,
+					UCT_STAGE_MIME,
+					UCT_SETBY_DEFAULT);
+	    }
+	}
+	if (chartrans_ok) {
+	    LYUCcharset *p_in = HTAnchor_getUCInfoStage(anchor,
+							UCT_STAGE_MIME);
+	    LYUCcharset *p_out = HTAnchor_setUCInfoStage(anchor,
+							 current_char_set,
+							 UCT_STAGE_HTEXT,
+							 UCT_SETBY_DEFAULT);
+
+	    if (!p_out) {
+		/*
+		 * Try again.
+		 */
+		p_out = HTAnchor_getUCInfoStage(anchor, UCT_STAGE_HTEXT);
+	    }
+	    if (!strcmp(p_in->MIMEname, "x-transparent")) {
+		HTPassEightBitRaw = TRUE;
+		HTAnchor_setUCInfoStage(anchor,
+					HTAnchor_getUCLYhndl(anchor,
+							     UCT_STAGE_HTEXT),
+					UCT_STAGE_MIME,
+					UCT_SETBY_DEFAULT);
+	    }
+	    if (!strcmp(p_out->MIMEname, "x-transparent")) {
+		HTPassEightBitRaw = TRUE;
+		HTAnchor_setUCInfoStage(anchor,
+					HTAnchor_getUCLYhndl(anchor,
+							     UCT_STAGE_MIME),
+					UCT_STAGE_HTEXT,
+					UCT_SETBY_DEFAULT);
+	    }
+	    if (p_in->enc != UCT_ENC_CJK) {
+		HTCJK = NOCJK;
+		if (!(p_in->codepoints &
+		      UCT_CP_SUBSETOF_LAT1) &&
+		    chndl == current_char_set) {
+		    HTPassEightBitRaw = TRUE;
+		}
+	    } else if (p_out->enc == UCT_ENC_CJK) {
+		Set_HTCJK(p_in->MIMEname, p_out->MIMEname);
+	    }
+	} else {
+	    /*
+	     * Cannot translate.  If according to some heuristic the given
+	     * charset and the current display character both are likely to be
+	     * like ISO-8859 in structure, pretend we have some kind of match.
+	     */
+	    BOOL given_is_8859 = (BOOL) (!StrNCmp(cp4, "iso-8859-", 9) &&
+					 isdigit(UCH(cp4[9])));
+	    BOOL given_is_8859like = (BOOL) (given_is_8859 ||
+					     !StrNCmp(cp4, "windows-", 8) ||
+					     !StrNCmp(cp4, "cp12", 4) ||
+					     !StrNCmp(cp4, "cp-12", 5));
+	    BOOL given_and_display_8859like = (BOOL) (given_is_8859like &&
+						      (strstr(LYchar_set_names[current_char_set],
+							      "ISO-8859") ||
+						       strstr(LYchar_set_names[current_char_set],
+							      "windows-")));
+
+	    if (given_and_display_8859like) {
+		*cp1 = '\0';
+		format = HTAtom_for(cp);
+	    }
+	    if (given_is_8859) {
+		cp1 = &cp4[10];
+		while (*cp1 &&
+		       isdigit(UCH(*cp1)))
+		    cp1++;
+		*cp1 = '\0';
+	    }
+	    if (given_and_display_8859like) {
+		StrAllocCopy(anchor->charset, cp4);
+		HTPassEightBitRaw = TRUE;
+	    }
+	    HTAlert(*cp4 ? cp4 : anchor->charset);
+	}
+	FREE(cp3);
+    } else if (cp1 != NULL) {
+	/*
+	 * No charset parameter is present.  Ignore all other parameters, as we
+	 * do when charset is present.  - FM
+	 */
+	*cp1 = '\0';
+	format = HTAtom_for(cp);
+    }
+    FREE(cp);
+
+    /*
+     * Set up defaults, if needed.  - FM
+     */
+    if (!chartrans_ok && !anchor->charset && default_LYhndl >= 0) {
+	HTAnchor_setUCInfoStage(anchor, default_LYhndl,
+				UCT_STAGE_MIME,
+				UCT_SETBY_DEFAULT);
+    }
+    HTAnchor_copyUCInfoStage(anchor,
+			     UCT_STAGE_PARSER,
+			     UCT_STAGE_MIME,
+			     -1);
+
+    return format;
+}
+
+/*	Get various pieces of meta info from file name.
+ *	-----------------------------------------------
+ *
+ *  LYGetFileInfo fills in information that can be determined without
+ *  an actual (new) access to the filesystem, based on current suffix
+ *  and character set configuration.  If the file has been loaded and
+ *  parsed before  (with the same URL generated here!) and the anchor
+ *  is still around, some results may be influenced by that (in
+ *  particular, charset info from a META tag - this is not actually
+ *  tested!).
+ *  The caller should not keep pointers to the returned objects around
+ *  for too long, the valid lifetimes vary. In particular, the returned
+ *  charset string should be copied if necessary.  If return of the
+ *  file_anchor is requested, that one can be used to retrieve
+ *  additional bits of info that are stored in the anchor object and
+ *  are not covered here; as usual, don't keep pointers to the
+ *  file_anchor longer than necessary since the object may disappear
+ *  through HTuncache_current_document or at the next document load.
+ *  - kw
+ */
+void LYGetFileInfo(const char *filename,
+		   HTParentAnchor **pfile_anchor,
+		   HTFormat *pformat,
+		   HTAtom **pencoding,
+		   const char **pdesc,
+		   const char **pcharset,
+		   int *pfile_cs)
+{
+    char *Afn;
+    char *Aname = NULL;
+    HTFormat format;
+    HTAtom *myEnc = NULL;
+    HTParentAnchor *file_anchor;
+    const char *file_csname;
+    int file_cs;
+
+    /*
+     * Convert filename to URL.  Note that it is always supposed to be a
+     * filename, not maybe-filename-maybe-URL, so we don't use
+     * LYFillLocalFileURL and LYEnsureAbsoluteURL.  - kw
+     */
+    Afn = HTEscape(filename, URL_PATH);
+    LYLocalFileToURL(&Aname, Afn);
+    file_anchor = HTAnchor_findSimpleAddress(Aname);
+
+    file_csname = file_anchor->charset;
+    format = HTFileFormat(filename, &myEnc, pdesc);
+    format = HTCharsetFormat(format, file_anchor, UCLYhndl_HTFile_for_unspec);
+    file_cs = HTAnchor_getUCLYhndl(file_anchor, UCT_STAGE_MIME);
+    if (!file_csname) {
+	if (file_cs >= 0)
+	    file_csname = LYCharSet_UC[file_cs].MIMEname;
+	else
+	    file_csname = "display character set";
+    }
+    CTRACE((tfp, "GetFileInfo: '%s' is a%s %s %s file, charset=%s (%d).\n",
+	    filename,
+	    ((myEnc && *HTAtom_name(myEnc) == '8') ? "n" : myEnc ? "" :
+	     *HTAtom_name(format) == 'a' ? "n" : ""),
+	    myEnc ? HTAtom_name(myEnc) : "",
+	    HTAtom_name(format),
+	    file_csname,
+	    file_cs));
+    FREE(Afn);
+    FREE(Aname);
+    if (pfile_anchor)
+	*pfile_anchor = file_anchor;
+    if (pformat)
+	*pformat = format;
+    if (pencoding)
+	*pencoding = myEnc;
+    if (pcharset)
+	*pcharset = file_csname;
+    if (pfile_cs)
+	*pfile_cs = file_cs;
+}
+
+/*	Determine value from file name.
+ *	-------------------------------
+ *
+ */
+float HTFileValue(const char *filename)
+{
+    HTSuffix *suff;
+    int n;
+    int i;
+    int lf = (int) strlen(filename);
+
+#ifndef NO_INIT
+    if (!HTSuffixes)
+	HTFileInit();
+#endif /* !NO_INIT */
+    n = HTList_count(HTSuffixes);
+    for (i = 0; i < n; i++) {
+	int ls;
+
+	suff = (HTSuffix *) HTList_objectAt(HTSuffixes, i);
+	ls = (int) strlen(suff->suffix);
+	if ((ls <= lf) && 0 == strcmp(suff->suffix, filename + lf - ls)) {
+	    CTRACE((tfp, "File: Value of %s is %.3f\n",
+		    filename, suff->quality));
+	    return suff->quality;	/* OK -- found */
+	}
+    }
+    return (float) 0.3;		/* Dunno! */
+}
+
+/*
+ *  Determine compression type from file name, by looking at its suffix.
+ *  Sets as side-effect a pointer to the "dot" that begins the suffix.
+ */
+CompressFileType HTCompressFileType(const char *filename,
+				    const char *dots,
+				    int *rootlen)
+{
+    CompressFileType result = cftNone;
+    size_t len = strlen(filename);
+    const char *ftype = filename + len;
+
+    VMS_DEL_VERSION(filename);
+
+    if ((len > 4)
+	&& !strcasecomp((ftype - 3), "bz2")
+	&& strchr(dots, ftype[-4]) != 0) {
+	result = cftBzip2;
+	ftype -= 4;
+    } else if ((len > 3)
+	       && !strcasecomp((ftype - 2), "gz")
+	       && strchr(dots, ftype[-3]) != 0) {
+	result = cftGzip;
+	ftype -= 3;
+    } else if ((len > 3)
+	       && !strcasecomp((ftype - 2), "zz")
+	       && strchr(dots, ftype[-3]) != 0) {
+	result = cftDeflate;
+	ftype -= 3;
+    } else if ((len > 2)
+	       && !strcmp((ftype - 1), "Z")
+	       && strchr(dots, ftype[-2]) != 0) {
+	result = cftCompress;
+	ftype -= 2;
+    }
+
+    *rootlen = (int) (ftype - filename);
+
+    CTRACE((tfp, "HTCompressFileType(%s) returns %d:%s\n",
+	    filename, (int) result, filename + *rootlen));
+    return result;
+}
+
+/*
+ *  Determine expected file-suffix from the compression method.
+ */
+const char *HTCompressTypeToSuffix(CompressFileType method)
+{
+    const char *result = "";
+
+    switch (method) {
+    default:
+    case cftNone:
+	result = "";
+	break;
+    case cftGzip:
+	result = ".gz";
+	break;
+    case cftCompress:
+	result = ".Z";
+	break;
+    case cftBzip2:
+	result = ".bz2";
+	break;
+    case cftDeflate:
+	result = ".zz";
+	break;
+    }
+    return result;
+}
+
+/*
+ *  Determine compression encoding from the compression method.
+ */
+const char *HTCompressTypeToEncoding(CompressFileType method)
+{
+    const char *result = NULL;
+
+    switch (method) {
+    default:
+    case cftNone:
+	result = NULL;
+	break;
+    case cftGzip:
+	result = "gzip";
+	break;
+    case cftCompress:
+	result = "compress";
+	break;
+    case cftBzip2:
+	result = "bzip2";
+	break;
+    case cftDeflate:
+	result = "deflate";
+	break;
+    }
+    return result;
+}
+
+/*
+ * Check if the token from "Content-Encoding" corresponds to a compression
+ * type.  RFC 2068 (and cut/paste into RFC 2616) lists these:
+ *	gzip
+ *	compress
+ *	deflate
+ * as well as "identity" (but that does nothing).
+ */
+CompressFileType HTEncodingToCompressType(const char *coding)
+{
+    CompressFileType result = cftNone;
+
+    if (coding == NULL) {
+	result = cftNone;
+    } else if (!strcasecomp(coding, "gzip") ||
+	       !strcasecomp(coding, "x-gzip")) {
+	result = cftGzip;
+    } else if (!strcasecomp(coding, "compress") ||
+	       !strcasecomp(coding, "x-compress")) {
+	result = cftCompress;
+    } else if (!strcasecomp(coding, "bzip2") ||
+	       !strcasecomp(coding, "x-bzip2")) {
+	result = cftBzip2;
+    } else if (!strcasecomp(coding, "deflate") ||
+	       !strcasecomp(coding, "x-deflate")) {
+	result = cftDeflate;
+    }
+    return result;
+}
+
+CompressFileType HTContentTypeToCompressType(const char *ct)
+{
+    CompressFileType method = cftNone;
+
+    if (ct == NULL) {
+	method = cftNone;
+    } else if (!strncasecomp(ct, "application/gzip", 16) ||
+	       !strncasecomp(ct, "application/x-gzip", 18)) {
+	method = cftGzip;
+    } else if (!strncasecomp(ct, "application/compress", 20) ||
+	       !strncasecomp(ct, "application/x-compress", 22)) {
+	method = cftCompress;
+    } else if (!strncasecomp(ct, "application/bzip2", 17) ||
+	       !strncasecomp(ct, "application/x-bzip2", 19)) {
+	method = cftBzip2;
+    }
+    return method;
+}
+
+/*
+ * Check the anchor's content_type and content_encoding elements for a gzip or
+ * Unix compressed file -FM, TD
+ */
+CompressFileType HTContentToCompressType(HTParentAnchor *anchor)
+{
+    CompressFileType method = cftNone;
+    const char *ct = HTAnchor_content_type(anchor);
+    const char *ce = HTAnchor_content_encoding(anchor);
+
+    if (ce == NULL && ct != 0) {
+	method = HTContentTypeToCompressType(ct);
+    } else if (ce != 0) {
+	method = HTEncodingToCompressType(ce);
+    }
+    return method;
+}
+
+/*	Determine write access to a file.
+ *	---------------------------------
+ *
+ *  On exit:
+ *	Returns YES if file can be accessed and can be written to.
+ *
+ *  Bugs:
+ *	1.	No code for non-unix systems.
+ *	2.	Isn't there a quicker way?
+ */
+BOOL HTEditable(const char *filename GCC_UNUSED)
+{
+#ifndef NO_GROUPS
+    GETGROUPS_T groups[NGROUPS];
+    uid_t myUid;
+    int ngroups;		/* The number of groups  */
+    struct stat fileStatus;
+    int i;
+
+    if (stat(filename, &fileStatus))	/* Get details of filename */
+	return NO;		/* Can't even access file! */
+
+    ngroups = getgroups(NGROUPS, groups);	/* Groups to which I belong  */
+    myUid = geteuid();		/* Get my user identifier */
+
+    if (TRACE) {
+	int i2;
+
+	fprintf(tfp,
+		"File mode is 0%o, uid=%d, gid=%d. My uid=%d, %d groups (",
+		(unsigned int) fileStatus.st_mode,
+		(int) fileStatus.st_uid,
+		(int) fileStatus.st_gid,
+		(int) myUid,
+		(int) ngroups);
+	for (i2 = 0; i2 < ngroups; i2++)
+	    fprintf(tfp, " %d", (int) groups[i2]);
+	fprintf(tfp, ")\n");
+    }
+
+    if (fileStatus.st_mode & 0002)	/* I can write anyway? */
+	return YES;
+
+    if ((fileStatus.st_mode & 0200)	/* I can write my own file? */
+	&&(fileStatus.st_uid == myUid))
+	return YES;
+
+    if (fileStatus.st_mode & 0020)	/* Group I am in can write? */
+    {
+	for (i = 0; i < ngroups; i++) {
+	    if (groups[i] == fileStatus.st_gid)
+		return YES;
+	}
+    }
+    CTRACE((tfp, "\tFile is not editable.\n"));
+#endif /* NO_GROUPS */
+    return NO;			/* If no excuse, can't do */
+}
+
+/*	Make a save stream.
+ *	-------------------
+ *
+ *	The stream must be used for writing back the file.
+ *	@@@ no backup done
+ */
+HTStream *HTFileSaveStream(HTParentAnchor *anchor)
+{
+    const char *addr = anchor->address;
+    char *localname = HTLocalName(addr);
+    FILE *fp = fopen(localname, BIN_W);
+
+    FREE(localname);
+    if (!fp)
+	return NULL;
+
+    return HTFWriter_new(fp);
+}
+
+/*	Output one directory entry.
+ *	---------------------------
+ */
+void HTDirEntry(HTStructured * target, const char *tail,
+		const char *entry)
+{
+    char *relative = NULL;
+    char *stripped = NULL;
+    char *escaped = NULL;
+    int len;
+
+    StrAllocCopy(escaped, entry);
+    LYTrimPathSep(escaped);
+    if (strcmp(escaped, "..") != 0) {
+	stripped = escaped;
+	escaped = HTEscape(stripped, URL_XPALPHAS);
+	if (((len = (int) strlen(escaped)) > 2) &&
+	    escaped[(len - 3)] == '%' &&
+	    escaped[(len - 2)] == '2' &&
+	    TOUPPER(escaped[(len - 1)]) == 'F') {
+	    escaped[(len - 3)] = '\0';
+	}
+    }
+
+    if (isEmpty(tail)) {
+	/*
+	 * Handle extra slash at end of path.
+	 */
+	HTStartAnchor(target, NULL, (escaped[0] != '\0' ? escaped : "/"));
+    } else {
+	/*
+	 * If empty tail, gives absolute ref below.
+	 */
+	relative = 0;
+	HTSprintf0(&relative, "%s%s%s",
+		   tail,
+		   (*escaped != '\0' ? "/" : ""),
+		   escaped);
+	HTStartAnchor(target, NULL, relative);
+	FREE(relative);
+    }
+    FREE(stripped);
+    FREE(escaped);
+}
+
+static BOOL view_structured(HTFormat format_out)
+{
+    BOOL result = FALSE;
+
+#ifdef USE_PRETTYSRC
+    if (psrc_view
+	|| (format_out == HTAtom_for("www/dump")))
+	result = TRUE;
+#else
+    if (format_out == WWW_SOURCE)
+	result = TRUE;
+#endif
+    return result;
+}
+
+/*
+ * Write a DOCTYPE to the given stream if we happen to want to see the
+ * source view, or are dumping source.  This is not needed when the source
+ * is not visible, since the document is rendered from a HTStructured object.
+ */
+void HTStructured_doctype(HTStructured * target, HTFormat format_out)
+{
+    if (view_structured(format_out))
+	PUTS("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n");
+}
+
+void HTStructured_meta(HTStructured * target, HTFormat format_out)
+{
+    if (view_structured(format_out))
+	PUTS("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">\n");
+}
+/*	Output parent directory entry.
+ *	------------------------------
+ *
+ *    This gives the TITLE and H1 header, and also a link
+ *    to the parent directory if appropriate.
+ *
+ *  On exit:
+ *	Returns TRUE if an "Up to <parent>" link was not created
+ *	for a readable local directory because LONG_LIST is defined
+ *	and NO_PARENT_DIR_REFERENCE is not defined, so that the
+ *	calling function should use LYListFmtParse() to create a link
+ *	to the parent directory.  Otherwise, it returns FALSE. - FM
+ */
+BOOL HTDirTitles(HTStructured * target, HTParentAnchor *anchor,
+		 HTFormat format_out,
+		 int tildeIsTop)
+{
+    const char *logical = anchor->address;
+    char *path = HTParse(logical, "", PARSE_PATH + PARSE_PUNCTUATION);
+    char *current;
+    char *cp = NULL;
+    BOOL need_parent_link = FALSE;
+    int i;
+
+#if defined(USE_DOS_DRIVES)
+    BOOL local_link = (strlen(logical) > 18
+		       && !strncasecomp(logical, "file://localhost/", 17)
+		       && LYIsDosDrive(logical + 17));
+    BOOL is_remote = !local_link;
+
+#else
+#define is_remote TRUE
+#endif
+
+    /*
+     * Check tildeIsTop for treating home directory as Welcome (assume the
+     * tilde is not followed by a username).  - FM
+     */
+    if (tildeIsTop && !StrNCmp(path, "/~", 2)) {
+	if (path[2] == '\0') {
+	    path[1] = '\0';
+	} else {
+	    for (i = 0; path[(i + 2)]; i++) {
+		path[i] = path[(i + 2)];
+	    }
+	    path[i] = '\0';
+	}
+    }
+
+    /*
+     * Trim out the ;type= parameter, if present.  - FM
+     */
+    if ((cp = strrchr(path, ';')) != NULL) {
+	if (!strncasecomp((cp + 1), "type=", 5)) {
+	    if (TOUPPER(*(cp + 6)) == 'D' ||
+		TOUPPER(*(cp + 6)) == 'A' ||
+		TOUPPER(*(cp + 6)) == 'I')
+		*cp = '\0';
+	}
+	cp = NULL;
+    }
+    current = LYPathLeaf(path);	/* last part or "" */
+
+    {
+	char *printable = NULL;
+
+#ifdef DIRED_SUPPORT
+	printable = HTURLPath_toFile(((!strncasecomp(path, "/%2F", 4))	/* "//" ? */
+				      ? (path + 1)
+				      : path),
+				     TRUE,
+				     is_remote);
+	if (0 == strncasecomp(printable, "/vmsysu:", 8) ||
+	    0 == strncasecomp(printable, "/anonymou.", 10)) {
+	    StrAllocCopy(cp, (printable + 1));
+	    StrAllocCopy(printable, cp);
+	    FREE(cp);
+	}
+#else
+	StrAllocCopy(printable, current);
+	HTUnEscape(printable);
+#endif /* DIRED_SUPPORT */
+
+	HTStructured_doctype(target, format_out);
+
+	START(HTML_HEAD);
+	PUTC('\n');
+	START(HTML_TITLE);
+	PUTS(*printable ? printable : WELCOME_MSG);
+	PUTS(SEGMENT_DIRECTORY);
+	END(HTML_TITLE);
+	PUTC('\n');
+	HTStructured_meta(target, format_out);
+	END(HTML_HEAD);
+	PUTC('\n');
+
+	START(HTML_BODY);
+	PUTC('\n');
+
+#ifdef DIRED_SUPPORT
+	START(HTML_H2);
+	PUTS(*printable ? SEGMENT_CURRENT_DIR : "");
+	PUTS(*printable ? printable : WELCOME_MSG);
+	END(HTML_H2);
+	PUTC('\n');
+#else
+	START(HTML_H1);
+	PUTS(*printable ? printable : WELCOME_MSG);
+	END(HTML_H1);
+	PUTC('\n');
+#endif /* DIRED_SUPPORT */
+	if (((0 == strncasecomp(printable, "vmsysu:", 7)) &&
+	     (cp = strchr(printable, '.')) != NULL &&
+	     strchr(cp, '/') == NULL) ||
+	    (0 == strncasecomp(printable, "anonymou.", 9) &&
+	     strchr(printable, '/') == NULL)) {
+	    FREE(printable);
+	    FREE(path);
+	    return (need_parent_link);
+	}
+	FREE(printable);
+    }
+
+#ifndef NO_PARENT_DIR_REFERENCE
+    /*
+     * Make link back to parent directory.
+     */
+    if (current - path > 0
+	&& LYIsPathSep(current[-1])
+	&& current[0] != '\0') {	/* was a slash AND something else too */
+	char *parent = NULL;
+	char *relative = NULL;
+
+	current[-1] = '\0';
+	parent = strrchr(path, '/');	/* penultimate slash */
+
+	if ((parent &&
+	     (!strcmp(parent, "/..") ||
+	      !strncasecomp(parent, "/%2F", 4))) ||
+	    !strncasecomp(current, "%2F", 3)) {
+	    FREE(path);
+	    return (need_parent_link);
+	}
+
+	relative = 0;
+	HTSprintf0(&relative, "%s/..", current);
+
+#if defined(DOSPATH) || defined(__EMX__)
+	if (local_link) {
+	    if (parent != 0 && strlen(parent) == 3) {
+		StrAllocCat(relative, "/.");
+	    }
+	} else
+#endif
+
+#if !defined (VMS)
+	{
+	    /*
+	     * On Unix, if it's not ftp and the directory cannot be read, don't
+	     * put out a link.
+	     *
+	     * On VMS, this problem is dealt with internally by
+	     * HTVMSBrowseDir().
+	     */
+	    DIR *dp = NULL;
+
+	    if (LYisLocalFile(logical)) {
+		/*
+		 * We need an absolute file path for the opendir.  We also need
+		 * to unescape for this test.  Don't worry about %2F now, they
+		 * presumably have been dealt with above, and shouldn't appear
+		 * for local files anyway...  Assume OS / filesystem will just
+		 * ignore superfluous slashes.  - KW
+		 */
+		char *fullparentpath = NULL;
+
+		/*
+		 * Path has been shortened above.
+		 */
+		StrAllocCopy(fullparentpath, *path ? path : "/");
+
+		/*
+		 * Guard against weirdness.
+		 */
+		if (0 == strcmp(current, "..")) {
+		    StrAllocCat(fullparentpath, "/../..");
+		} else if (0 == strcmp(current, ".")) {
+		    StrAllocCat(fullparentpath, "/..");
+		}
+
+		HTUnEscape(fullparentpath);
+		if ((dp = opendir(fullparentpath)) == NULL) {
+		    FREE(fullparentpath);
+		    FREE(relative);
+		    FREE(path);
+		    return (need_parent_link);
+		}
+		closedir(dp);
+		FREE(fullparentpath);
+#ifdef LONG_LIST
+		need_parent_link = TRUE;
+		FREE(path);
+		FREE(relative);
+		return (need_parent_link);
+#endif /* LONG_LIST */
+	    }
+	}
+#endif /* !VMS */
+	HTStartAnchor(target, "", relative);
+	FREE(relative);
+
+	PUTS(SEGMENT_UP_TO);
+	if (parent) {
+	    if ((0 == strcmp(current, ".")) ||
+		(0 == strcmp(current, ".."))) {
+		/*
+		 * Should not happen, but if it does, at least avoid giving
+		 * misleading info.  - KW
+		 */
+		PUTS("..");
+	    } else {
+		char *printable = NULL;
+
+		StrAllocCopy(printable, parent + 1);
+		HTUnEscape(printable);
+		PUTS(printable);
+		FREE(printable);
+	    }
+	} else {
+	    PUTC('/');
+	}
+	END(HTML_A);
+	PUTC('\n');
+    }
+#endif /* !NO_PARENT_DIR_REFERENCE */
+
+    FREE(path);
+    return (need_parent_link);
+}
+
+#if defined HAVE_READDIR
+/*	Send README file.
+ *	-----------------
+ *
+ *  If a README file exists, then it is inserted into the document here.
+ */
+static void do_readme(HTStructured * target, const char *localname)
+{
+    FILE *fp;
+    char *readme_file_name = NULL;
+    int ch;
+
+    HTSprintf0(&readme_file_name, "%s/%s", localname, HT_DIR_README_FILE);
+
+    fp = fopen(readme_file_name, "r");
+
+    if (fp) {
+	START(HTML_PRE);
+	while ((ch = fgetc(fp)) != EOF) {
+	    PUTC((char) ch);
+	}
+	END(HTML_PRE);
+	HTDisplayPartial();
+	fclose(fp);
+    }
+    FREE(readme_file_name);
+}
+
+#define DIRED_BLOK(obj) (((DIRED *)(obj))->sort_tags)
+#define DIRED_NAME(obj) (((DIRED *)(obj))->file_name)
+
+#define NM_cmp(a,b) ((a) < (b) ? -1 : ((a) > (b) ? 1 : 0))
+
+#if defined(LONG_LIST) && defined(DIRED_SUPPORT)
+static const char *file_type(const char *path)
+{
+    const char *type;
+
+    while (*path == '.')
+	++path;
+    type = strchr(path, '.');
+    if (type == NULL)
+	type = "";
+    return type;
+}
+#endif /* LONG_LIST && DIRED_SUPPORT */
+
+static int dired_cmp(void *a, void *b)
+{
+    DIRED *p = (DIRED *) a;
+    DIRED *q = (DIRED *) b;
+    int code = p->sort_tags - q->sort_tags;
+
+#if defined(LONG_LIST) && defined(DIRED_SUPPORT)
+    if (code == 0) {
+	switch (dir_list_order) {
+	case ORDER_BY_SIZE:
+	    code = -NM_cmp(p->file_info.st_size, q->file_info.st_size);
+	    break;
+	case ORDER_BY_DATE:
+	    code = -NM_cmp(p->file_info.st_mtime, q->file_info.st_mtime);
+	    break;
+	case ORDER_BY_MODE:
+	    code = NM_cmp(p->file_info.st_mode, q->file_info.st_mode);
+	    break;
+	case ORDER_BY_USER:
+	    code = NM_cmp(p->file_info.st_uid, q->file_info.st_uid);
+	    break;
+	case ORDER_BY_GROUP:
+	    code = NM_cmp(p->file_info.st_gid, q->file_info.st_gid);
+	    break;
+	case ORDER_BY_TYPE:
+	    code = AS_cmp(file_type(p->file_name), file_type(q->file_name));
+	    break;
+	default:
+	    code = 0;
+	    break;
+	}
+    }
+#endif /* LONG_LIST && DIRED_SUPPORT */
+    if (code == 0)
+	code = AS_cmp(p->file_name, q->file_name);
+#if 0
+    CTRACE((tfp, "dired_cmp(%d) ->%d\n\t%c:%s (%s)\n\t%c:%s (%s)\n",
+	    dir_list_order,
+	    code,
+	    p->sort_tags, p->file_name, file_type(p->file_name),
+	    q->sort_tags, q->file_name, file_type(q->file_name)));
+#endif
+    return code;
+}
+
+static int print_local_dir(DIR *dp, char *localname,
+			   HTParentAnchor *anchor,
+			   HTFormat format_out,
+			   HTStream *sink)
+{
+    HTStructured *target;	/* HTML object */
+    HTBTree *bt;
+    HTStructuredClass targetClass;
+    STRUCT_DIRENT *dirbuf;
+    char *pathname = NULL;
+    char *tail = NULL;
+    const char *p;
+    char *tmpfilename = NULL;
+    BOOL need_parent_link = FALSE;
+    BOOL preformatted = FALSE;
+    int status;
+    struct stat *actual_info;
+
+#ifdef DISP_PARTIAL
+    int num_of_entries = 0;	/* lines counter */
+#endif
+
+#ifdef S_IFLNK
+    struct stat link_info;
+#endif
+
+    CTRACE((tfp, "print_local_dir() started\n"));
+
+    pathname = HTParse(anchor->address, "",
+		       PARSE_PATH + PARSE_PUNCTUATION);
+
+    if ((p = strrchr(pathname, '/')) == NULL)
+	p = "/";
+    StrAllocCopy(tail, (p + 1));
+    FREE(pathname);
+
+    if (UCLYhndl_HTFile_for_unspec >= 0) {
+	HTAnchor_setUCInfoStage(anchor,
+				UCLYhndl_HTFile_for_unspec,
+				UCT_STAGE_PARSER,
+				UCT_SETBY_DEFAULT);
+    }
+
+    target = HTML_new(anchor, format_out, sink);
+    targetClass = *target->isa;	/* Copy routine entry points */
+
+    /*
+     * The need_parent_link flag will be set if an "Up to <parent>" link was
+     * not created for a readable parent in HTDirTitles() because LONG_LIST is
+     * defined and NO_PARENT_DIR_REFERENCE is not defined so that need we to
+     * create the link via an LYListFmtParse() call.  - FM
+     */
+    need_parent_link = HTDirTitles(target, anchor, format_out, FALSE);
+
+#ifdef DIRED_SUPPORT
+    if (!isLYNXCGI(anchor->address)) {
+	HTAnchor_setFormat(anchor, WWW_DIRED);
+	lynx_edit_mode = TRUE;
+    }
+#endif /* DIRED_SUPPORT */
+    if (HTDirReadme == HT_DIR_README_TOP)
+	do_readme(target, localname);
+
+    bt = HTBTree_new(dired_cmp);
+
+    _HTProgress(READING_DIRECTORY);
+    status = HT_LOADED;		/* assume we don't get interrupted */
+    while ((dirbuf = readdir(dp)) != NULL) {
+	/*
+	 * While there are directory entries to be read...
+	 */
+	DIRED *data = NULL;
+
+#ifdef STRUCT_DIRENT__D_INO
+	if (dirbuf->d_ino == 0)
+	    /*
+	     * If the entry is not being used, skip it.
+	     */
+	    continue;
+#endif
+	/*
+	 * Skip self, parent if handled in HTDirTitles() or if
+	 * NO_PARENT_DIR_REFERENCE is not defined, and any dot files if
+	 * no_dotfiles is set or show_dotfiles is not set.  - FM
+	 */
+	if (!strcmp(dirbuf->d_name, ".") /* self       */ ||
+	    (!strcmp(dirbuf->d_name, "..") /* parent */ &&
+	     need_parent_link == FALSE) ||
+	    ((strcmp(dirbuf->d_name, "..")) &&
+	     (dirbuf->d_name[0] == '.' &&
+	      (no_dotfiles || !show_dotfiles))))
+	    continue;
+
+	StrAllocCopy(tmpfilename, localname);
+	/*
+	 * If filename is not root directory, add trailing separator.
+	 */
+	LYAddPathSep(&tmpfilename);
+
+	StrAllocCat(tmpfilename, dirbuf->d_name);
+	data = (DIRED *) malloc(sizeof(DIRED) + strlen(dirbuf->d_name) + 4);
+	if (data == NULL) {
+	    status = HT_PARTIAL_CONTENT;
+	    break;
+	}
+	LYTrimPathSep(tmpfilename);
+
+	actual_info = &(data->file_info);
+#ifdef S_IFLNK
+	if (lstat(tmpfilename, actual_info) < 0) {
+	    actual_info->st_mode = 0;
+	} else {
+	    if (S_ISLNK(actual_info->st_mode)) {
+		actual_info = &link_info;
+		if (stat(tmpfilename, actual_info) < 0)
+		    actual_info->st_mode = 0;
+	    }
+	}
+#else
+	if (stat(tmpfilename, actual_info) < 0)
+	    actual_info->st_mode = 0;
+#endif
+
+	strcpy(data->file_name, dirbuf->d_name);
+#ifndef DIRED_SUPPORT
+	if (S_ISDIR(actual_info->st_mode)) {
+	    data->sort_tags = 'D';
+	} else {
+	    data->sort_tags = 'F';
+	    /* D & F to have first directories, then files */
+	}
+#else
+	if (S_ISDIR(actual_info->st_mode)) {
+	    if (dir_list_style == MIXED_STYLE) {
+		data->sort_tags = ' ';
+		LYAddPathSep0(data->file_name);
+	    } else if (!strcmp(dirbuf->d_name, "..")) {
+		data->sort_tags = 'A';
+	    } else {
+		data->sort_tags = 'D';
+	    }
+	} else if (dir_list_style == MIXED_STYLE) {
+	    data->sort_tags = ' ';
+	} else if (dir_list_style == FILES_FIRST) {
+	    data->sort_tags = 'C';
+	    /* C & D to have first files, then directories */
+	} else {
+	    data->sort_tags = 'F';
+	}
+#endif /* !DIRED_SUPPORT */
+	/*
+	 * Sort dirname in the tree bt.
+	 */
+	HTBTree_add(bt, data);
+
+#ifdef DISP_PARTIAL
+	/* optimize for expensive operation: */
+	if (num_of_entries % (partial_threshold > 0 ?
+			      partial_threshold : display_lines) == 0) {
+	    if (HTCheckForInterrupt()) {
+		status = HT_PARTIAL_CONTENT;
+		break;
+	    }
+	}
+	num_of_entries++;
+#endif /* DISP_PARTIAL */
+
+    }				/* end while directory entries left to read */
+
+    if (status != HT_PARTIAL_CONTENT)
+	_HTProgress(OPERATION_OK);
+    else
+	CTRACE((tfp, "Reading the directory interrupted by user\n"));
+
+    /*
+     * Run through tree printing out in order.
+     */
+    {
+	HTBTElement *next_element = HTBTree_next(bt, NULL);
+
+	/* pick up the first element of the list */
+	int num_of_entries_output = 0;	/* lines counter */
+
+	char state;
+
+	/* I for initial (.. file),
+	   D for directory file,
+	   F for file */
+
+#ifdef DIRED_SUPPORT
+	char test;
+#endif /* DIRED_SUPPORT */
+	state = 'I';
+
+	while (next_element != NULL) {
+	    DIRED *entry;
+
+#ifndef DISP_PARTIAL
+	    if (num_of_entries_output % HTMAX(display_lines, 10) == 0) {
+		if (HTCheckForInterrupt()) {
+		    _HTProgress(TRANSFER_INTERRUPTED);
+		    status = HT_PARTIAL_CONTENT;
+		    break;
+		}
+	    }
+#endif
+	    StrAllocCopy(tmpfilename, localname);
+	    /*
+	     * If filename is not root directory.
+	     */
+	    LYAddPathSep(&tmpfilename);
+
+	    entry = (DIRED *) (HTBTree_object(next_element));
+	    /*
+	     * Append the current entry's filename to the path.
+	     */
+	    StrAllocCat(tmpfilename, entry->file_name);
+	    HTSimplify(tmpfilename);
+	    /*
+	     * Output the directory entry.
+	     */
+	    if (strcmp(DIRED_NAME(HTBTree_object(next_element)), "..")) {
+#ifdef DIRED_SUPPORT
+		test =
+		    (char) (DIRED_BLOK(HTBTree_object(next_element))
+			    == 'D' ? 'D' : 'F');
+		if (state != test) {
+#ifndef LONG_LIST
+		    if (dir_list_style == FILES_FIRST) {
+			if (state == 'F') {
+			    END(HTML_DIR);
+			    PUTC('\n');
+			}
+		    } else if (dir_list_style != MIXED_STYLE)
+			if (state == 'D') {
+			    END(HTML_DIR);
+			    PUTC('\n');
+			}
+#endif /* !LONG_LIST */
+		    state =
+			(char) (DIRED_BLOK(HTBTree_object(next_element))
+				== 'D' ? 'D' : 'F');
+		    if (preformatted) {
+			END(HTML_PRE);
+			PUTC('\n');
+			preformatted = FALSE;
+		    }
+		    START(HTML_H2);
+		    if (dir_list_style != MIXED_STYLE) {
+			START(HTML_EM);
+			PUTS(state == 'D'
+			     ? LABEL_SUBDIRECTORIES
+			     : LABEL_FILES);
+			END(HTML_EM);
+		    }
+		    END(HTML_H2);
+		    PUTC('\n');
+#ifndef LONG_LIST
+		    START(HTML_DIR);
+		    PUTC('\n');
+#endif /* !LONG_LIST */
+		}
+#else
+		if (state != DIRED_BLOK(HTBTree_object(next_element))) {
+#ifndef LONG_LIST
+		    if (state == 'D') {
+			END(HTML_DIR);
+			PUTC('\n');
+		    }
+#endif /* !LONG_LIST */
+		    state =
+			(char) (DIRED_BLOK(HTBTree_object(next_element))
+				== 'D' ? 'D' : 'F');
+		    if (preformatted) {
+			END(HTML_PRE);
+			PUTC('\n');
+			preformatted = FALSE;
+		    }
+		    START(HTML_H2);
+		    START(HTML_EM);
+		    PUTS(state == 'D'
+			 ? LABEL_SUBDIRECTORIES
+			 : LABEL_FILES);
+		    END(HTML_EM);
+		    END(HTML_H2);
+		    PUTC('\n');
+#ifndef LONG_LIST
+		    START(HTML_DIR);
+		    PUTC('\n');
+#endif /* !LONG_LIST */
+		}
+#endif /* DIRED_SUPPORT */
+#ifndef LONG_LIST
+		START(HTML_LI);
+#endif /* !LONG_LIST */
+	    }
+	    if (!preformatted) {
+		START(HTML_PRE);
+		PUTC('\n');
+		preformatted = TRUE;
+	    }
+#ifdef LONG_LIST
+	    LYListFmtParse(list_format, entry, tmpfilename, target, tail);
+#else
+	    HTDirEntry(target, tail, entry->file_name);
+	    PUTS(entry->file_name);
+	    END(HTML_A);
+	    MAYBE_END(HTML_LI);
+	    PUTC('\n');
+#endif /* LONG_LIST */
+
+	    next_element = HTBTree_next(bt, next_element);
+	    /* pick up the next element of the list;
+	       if none, return NULL */
+
+	    /* optimize for expensive operation: */
+#ifdef DISP_PARTIAL
+	    if (num_of_entries_output %
+		((partial_threshold > 0)
+		 ? partial_threshold
+		 : display_lines) == 0) {
+		/* num_of_entries, num_of_entries_output... */
+		HTDisplayPartial();
+
+		if (HTCheckForInterrupt()) {
+		    _HTProgress(TRANSFER_INTERRUPTED);
+		    status = HT_PARTIAL_CONTENT;
+		    break;
+		}
+	    }
+	    num_of_entries_output++;
+#endif /* DISP_PARTIAL */
+
+	}			/* end while next_element */
+
+	if (status == HT_LOADED) {
+	    if (state == 'I') {
+		START(HTML_P);
+		PUTS("Empty Directory");
+	    }
+#ifndef LONG_LIST
+	    else
+		END(HTML_DIR);
+#endif /* !LONG_LIST */
+	}
+    }				/* end printing out the tree in order */
+    if (preformatted) {
+	END(HTML_PRE);
+	PUTC('\n');
+    }
+    END(HTML_BODY);
+    PUTC('\n');
+
+    FREE(tmpfilename);
+    FREE(tail);
+    HTBTreeAndObject_free(bt);
+
+    if (status == HT_LOADED) {
+	if (HTDirReadme == HT_DIR_README_BOTTOM)
+	    do_readme(target, localname);
+	FREE_TARGET;
+    } else {
+	ABORT_TARGET;
+    }
+    HTFinishDisplayPartial();
+    return status;		/* document loaded, maybe partial */
+}
+#endif /* HAVE_READDIR */
+
+#ifndef VMS
+int HTStat(const char *filename,
+	   struct stat *data)
+{
+    int result = -1;
+    size_t len = strlen(filename);
+
+    if (len != 0 && LYIsPathSep(filename[len - 1])) {
+	char *temp_name = NULL;
+
+	HTSprintf0(&temp_name, "%s.", filename);
+	result = HTStat(temp_name, data);
+	FREE(temp_name);
+    } else {
+	result = stat(filename, data);
+#ifdef _WINDOWS
+	/*
+	 * Someone claims that stat() doesn't give the proper result for a
+	 * directory on Windows.
+	 */
+	if (result == -1
+	    && access(filename, 0) == 0) {
+	    data->st_mode = S_IFDIR;
+	    result = 0;
+	}
+#endif
+    }
+    return result;
+}
+#endif
+
+#if defined(USE_ZLIB) || defined(USE_BZLIB)
+static BOOL sniffStream(FILE *fp, char *buffer, size_t needed)
+{
+    long offset = ftell(fp);
+    BOOL result = FALSE;
+
+    if (fread(buffer, sizeof(char), needed, fp) == needed) {
+	result = TRUE;
+    }
+    if (fseek(fp, offset, SEEK_SET) < 0) {
+	CTRACE((tfp, "error seeking in stream\n"));
+	result = FALSE;
+    }
+    return result;
+}
+#endif
+
+#ifdef USE_ZLIB
+static BOOL isGzipStream(FILE *fp)
+{
+    char buffer[3];
+    BOOL result;
+
+    if (sniffStream(fp, buffer, sizeof(buffer))
+	&& !MemCmp(buffer, "\037\213", sizeof(buffer) - 1)) {
+	result = TRUE;
+    } else {
+	CTRACE((tfp, "not a gzip-stream\n"));
+	result = FALSE;
+    }
+    return result;
+}
+
+static BOOL isDeflateStream(FILE *fp)
+{
+    char buffer[3];
+    BOOL result;
+
+    if (sniffStream(fp, buffer, sizeof(buffer))
+	&& !MemCmp(buffer, "\170\234", sizeof(buffer) - 1)) {
+	result = TRUE;
+    } else {
+	CTRACE((tfp, "not a deflate-stream\n"));
+	result = FALSE;
+    }
+    return result;
+}
+#endif
+
+#ifdef USE_BZLIB
+static BOOL isBzip2Stream(FILE *fp)
+{
+    char buffer[6];
+    BOOL result;
+
+    if (sniffStream(fp, buffer, sizeof(buffer))
+	&& !MemCmp(buffer, "BZh", 3)
+	&& isdigit(UCH(buffer[3]))
+	&& isdigit(UCH(buffer[4]))) {
+	result = TRUE;
+    } else {
+	CTRACE((tfp, "not a bzip2-stream\n"));
+	result = FALSE;
+    }
+    return result;
+}
+#endif
+
+#ifdef VMS
+#define FOPEN_MODE(bin) "r", "shr=put", "shr=upd"
+#define DOT_STRING "._-"	/* FIXME: should we check if suffix is after ']' or ':' ? */
+#else
+#define FOPEN_MODE(bin) (bin ? BIN_R : "r")
+#define DOT_STRING "."
+#endif
+
+static int decompressAndParse(HTParentAnchor *anchor,
+			      HTFormat format_out,
+			      HTStream *sink,
+			      char *nodename GCC_UNUSED,
+			      char *filename,
+			      HTAtom *myEncoding,
+			      HTFormat format,
+			      int *statusp)
+{
+    HTAtom *encoding = 0;
+
+#ifdef USE_ZLIB
+    FILE *zzfp = 0;
+    gzFile gzfp = 0;
+#endif /* USE_ZLIB */
+#ifdef USE_BZLIB
+    BZFILE *bzfp = 0;
+#endif /* USE_ZLIB */
+#if defined(USE_ZLIB) || defined(USE_BZLIB)
+    CompressFileType internal_decompress = cftNone;
+    BOOL failed_decompress = NO;
+#endif
+    int rootlen = 0;
+    char *localname = filename;
+    int bin;
+    FILE *fp;
+
+#ifdef VMS
+    /*
+     * Assume that the file is in Unix-style syntax if it contains a '/' after
+     * the leading one.  @@
+     */
+    localname = (strchr(localname + 1, '/')
+		 ? HTVMS_name(nodename, localname)
+		 : localname + 1);
+#endif /* VMS */
+
+    bin = HTCompressFileType(filename, ".", &rootlen) != cftNone;
+    fp = fopen(localname, FOPEN_MODE(bin));
+
+#ifdef VMS
+    /*
+     * If the file wasn't VMS syntax, then perhaps it is Ultrix.
+     */
+    if (!fp) {
+	char *ultrixname = 0;
+
+	CTRACE((tfp, "HTLoadFile: Can't open as %s\n", localname));
+	HTSprintf0(&ultrixname, "%s::\"%s\"", nodename, filename);
+	fp = fopen(ultrixname, FOPEN_MODE(bin));
+	if (!fp) {
+	    CTRACE((tfp, "HTLoadFile: Can't open as %s\n", ultrixname));
+	}
+	FREE(ultrixname);
+    }
+#endif /* VMS */
+    CTRACE((tfp, "HTLoadFile: Opening `%s' gives %p\n", localname, (void *) fp));
+    if (fp) {			/* Good! */
+	if (HTEditable(localname)) {
+	    HTAtom *put = HTAtom_for("PUT");
+	    HTList *methods = HTAnchor_methods(anchor);
+
+	    if (HTList_indexOf(methods, put) == (-1)) {
+		HTList_addObject(methods, put);
+	    }
+	}
+	/*
+	 * Fake a Content-Encoding for compressed files.  - FM
+	 */
+	if (!IsUnityEnc(myEncoding)) {
+	    /*
+	     * We already know from the call to HTFileFormat that
+	     * this is a compressed file, no need to look at the filename
+	     * again.  - kw
+	     */
+#if defined(USE_ZLIB) || defined(USE_BZLIB)
+	    CompressFileType method = HTEncodingToCompressType(HTAtom_name(myEncoding));
+#endif
+
+#define isDOWNLOAD(m) (strcmp(format_out->name, "www/download") && (method == m))
+#ifdef USE_ZLIB
+	    if (isDOWNLOAD(cftGzip)) {
+		if (isGzipStream(fp)) {
+		    fclose(fp);
+		    gzfp = gzopen(localname, BIN_R);
+
+		    CTRACE((tfp, "HTLoadFile: gzopen of `%s' gives %p\n",
+			    localname, gzfp));
+		}
+		internal_decompress = cftGzip;
+	    } else if (isDOWNLOAD(cftDeflate)) {
+		if (isDeflateStream(fp)) {
+		    zzfp = fp;
+		    fp = 0;
+
+		    CTRACE((tfp, "HTLoadFile: zzopen of `%s' gives %p\n",
+			    localname, (void *) zzfp));
+		}
+		internal_decompress = cftDeflate;
+	    } else
+#endif /* USE_ZLIB */
+#ifdef USE_BZLIB
+	    if (isDOWNLOAD(cftBzip2)) {
+		if (isBzip2Stream(fp)) {
+		    fclose(fp);
+		    bzfp = BZ2_bzopen(localname, BIN_R);
+
+		    CTRACE((tfp, "HTLoadFile: bzopen of `%s' gives %p\n",
+			    localname, bzfp));
+		}
+		internal_decompress = cftBzip2;
+	    } else
+#endif /* USE_BZLIB */
+	    {
+		StrAllocCopy(anchor->content_type, format->name);
+		StrAllocCopy(anchor->content_encoding, HTAtom_name(myEncoding));
+		format = HTAtom_for("www/compressed");
+	    }
+	} else {
+	    CompressFileType cft = HTCompressFileType(localname, DOT_STRING, &rootlen);
+
+	    if (cft != cftNone) {
+		char *cp = NULL;
+
+		StrAllocCopy(cp, localname);
+		cp[rootlen] = '\0';
+		format = HTFileFormat(cp, &encoding, NULL);
+		FREE(cp);
+		format = HTCharsetFormat(format, anchor,
+					 UCLYhndl_HTFile_for_unspec);
+		StrAllocCopy(anchor->content_type, format->name);
+	    }
+
+	    switch (cft) {
+	    case cftCompress:
+		StrAllocCopy(anchor->content_encoding, "x-compress");
+		format = HTAtom_for("www/compressed");
+		break;
+	    case cftDeflate:
+		StrAllocCopy(anchor->content_encoding, "x-deflate");
+#ifdef USE_ZLIB
+		if (strcmp(format_out->name, "www/download") != 0) {
+		    if (isDeflateStream(fp)) {
+			zzfp = fp;
+			fp = 0;
+
+			CTRACE((tfp, "HTLoadFile: zzopen of `%s' gives %p\n",
+				localname, (void *) zzfp));
+		    }
+		    internal_decompress = cftDeflate;
+		}
+#else /* USE_ZLIB */
+		format = HTAtom_for("www/compressed");
+#endif /* USE_ZLIB */
+		break;
+	    case cftGzip:
+		StrAllocCopy(anchor->content_encoding, "x-gzip");
+#ifdef USE_ZLIB
+		if (strcmp(format_out->name, "www/download") != 0) {
+		    if (isGzipStream(fp)) {
+			fclose(fp);
+			gzfp = gzopen(localname, BIN_R);
+
+			CTRACE((tfp, "HTLoadFile: gzopen of `%s' gives %p\n",
+				localname, gzfp));
+		    }
+		    internal_decompress = cftGzip;
+		}
+#else /* USE_ZLIB */
+		format = HTAtom_for("www/compressed");
+#endif /* USE_ZLIB */
+		break;
+	    case cftBzip2:
+		StrAllocCopy(anchor->content_encoding, "x-bzip2");
+#ifdef USE_BZLIB
+		if (strcmp(format_out->name, "www/download") != 0) {
+		    if (isBzip2Stream(fp)) {
+			fclose(fp);
+			bzfp = BZ2_bzopen(localname, BIN_R);
+
+			CTRACE((tfp, "HTLoadFile: bzopen of `%s' gives %p\n",
+				localname, bzfp));
+		    }
+		    internal_decompress = cftBzip2;
+		}
+#else /* USE_BZLIB */
+		format = HTAtom_for("www/compressed");
+#endif /* USE_BZLIB */
+		break;
+	    case cftNone:
+		break;
+	    }
+	}
+#if defined(USE_ZLIB) || defined(USE_BZLIB)
+	if (internal_decompress != cftNone) {
+	    switch (internal_decompress) {
+#ifdef USE_ZLIB
+	    case cftDeflate:
+		failed_decompress = (BOOLEAN) (zzfp == NULL);
+		break;
+	    case cftCompress:
+	    case cftGzip:
+		failed_decompress = (BOOLEAN) (gzfp == NULL);
+		break;
+#endif
+#ifdef USE_BZLIB
+	    case cftBzip2:
+		failed_decompress = (BOOLEAN) (bzfp == NULL);
+		break;
+#endif
+	    default:
+		failed_decompress = YES;
+		break;
+	    }
+	    if (failed_decompress) {
+		*statusp = HTLoadError(NULL,
+				       -(HT_ERROR),
+				       FAILED_OPEN_COMPRESSED_FILE);
+	    } else {
+		char *sugfname = NULL;
+
+		if (anchor->SugFname) {
+		    StrAllocCopy(sugfname, anchor->SugFname);
+		} else {
+		    char *anchor_path = HTParse(anchor->address, "",
+						PARSE_PATH + PARSE_PUNCTUATION);
+		    char *lastslash;
+
+		    HTUnEscape(anchor_path);
+		    lastslash = strrchr(anchor_path, '/');
+		    if (lastslash)
+			StrAllocCopy(sugfname, lastslash + 1);
+		    FREE(anchor_path);
+		}
+		FREE(anchor->content_encoding);
+		if (sugfname && *sugfname)
+		    HTCheckFnameForCompression(&sugfname, anchor,
+					       TRUE);
+		if (sugfname && *sugfname)
+		    StrAllocCopy(anchor->SugFname, sugfname);
+		FREE(sugfname);
+#ifdef USE_BZLIB
+		if (bzfp)
+		    *statusp = HTParseBzFile(format, format_out,
+					     anchor,
+					     bzfp, sink);
+#endif
+#ifdef USE_ZLIB
+		if (gzfp)
+		    *statusp = HTParseGzFile(format, format_out,
+					     anchor,
+					     gzfp, sink);
+		else if (zzfp)
+		    *statusp = HTParseZzFile(format, format_out,
+					     anchor,
+					     zzfp, sink);
+#endif
+	    }
+	} else
+#endif /* USE_ZLIB || USE_BZLIB */
+	{
+	    *statusp = HTParseFile(format, format_out, anchor, fp, sink);
+	    fclose(fp);
+	}
+	return TRUE;
+    }				/* If successful open */
+    return FALSE;
+}
+
+/*	Load a document.
+ *	----------------
+ *
+ *  On entry:
+ *	addr		must point to the fully qualified hypertext reference.
+ *			This is the physical address of the file
+ *
+ *  On exit:
+ *	returns		<0		Error has occurred.
+ *			HTLOADED	OK
+ *
+ */
+int HTLoadFile(const char *addr,
+	       HTParentAnchor *anchor,
+	       HTFormat format_out,
+	       HTStream *sink)
+{
+    char *filename = NULL;
+    char *acc_method = NULL;
+    HTFormat format;
+    char *nodename = NULL;
+    char *newname = NULL;	/* Simplified name of file */
+    HTAtom *myEncoding = NULL;	/* enc of this file, may be gzip etc. */
+    int status = -1;
+
+#ifndef DISABLE_FTP
+    char *ftp_newhost;
+#endif
+
+#ifdef VMS
+    struct stat stat_info;
+#endif /* VMS */
+
+    /*
+     * Reduce the filename to a basic form (hopefully unique!).
+     */
+    StrAllocCopy(newname, addr);
+    filename = HTParse(newname, "", PARSE_PATH | PARSE_PUNCTUATION);
+    nodename = HTParse(newname, "", PARSE_HOST);
+
+    /*
+     * If access is ftp, or file is on another host, invoke ftp now.
+     */
+    acc_method = HTParse(newname, "", PARSE_ACCESS);
+    if (strcmp("ftp", acc_method) == 0 ||
+	(!LYSameHostname("localhost", nodename) &&
+	 !LYSameHostname(nodename, HTHostName()))) {
+	status = -1;
+	FREE(newname);
+	FREE(filename);
+	FREE(nodename);
+	FREE(acc_method);
+#ifndef DISABLE_FTP
+	ftp_newhost = HTParse(addr, "", PARSE_HOST);
+	if (strcmp(ftp_lasthost, ftp_newhost))
+	    ftp_local_passive = ftp_passive;
+
+	status = HTFTPLoad(addr, anchor, format_out, sink);
+
+	if (ftp_passive == ftp_local_passive) {
+	    if ((status >= 400) || (status < 0)) {
+		ftp_local_passive = (BOOLEAN) !ftp_passive;
+		status = HTFTPLoad(addr, anchor, format_out, sink);
+	    }
+	}
+
+	free(ftp_lasthost);
+	ftp_lasthost = ftp_newhost;
+#endif /* DISABLE_FTP */
+	return status;
+    } else {
+	FREE(newname);
+	FREE(acc_method);
+    }
+#if defined(VMS) || defined(USE_DOS_DRIVES)
+    HTUnEscape(filename);
+#endif /* VMS */
+
+    /*
+     * Determine the format and encoding mapped to any suffix.
+     */
+    if (anchor->content_type && anchor->content_encoding) {
+	/*
+	 * If content_type and content_encoding are BOTH already set in the
+	 * anchor object, we believe it and don't try to derive format and
+	 * encoding from the filename.  - kw
+	 */
+	format = HTAtom_for(anchor->content_type);
+	myEncoding = HTAtom_for(anchor->content_encoding);
+    } else {
+	int default_UCLYhndl = UCLYhndl_HTFile_for_unspec;
+
+	if (force_old_UCLYhndl_on_reload) {
+	    force_old_UCLYhndl_on_reload = FALSE;
+	    default_UCLYhndl = forced_UCLYhdnl;
+	}
+
+	format = HTFileFormat(filename, &myEncoding, NULL);
+
+	/*
+	 * Check the format for an extended MIME charset value, and act on it
+	 * if present.  Otherwise, assume what is indicated by the last
+	 * parameter (fallback will effectively be UCLYhndl_for_unspec, by
+	 * default ISO-8859-1).  - kw
+	 */
+	format = HTCharsetFormat(format, anchor, default_UCLYhndl);
+    }
+
+#ifdef VMS
+    /*
+     * Check to see if the 'filename' is in fact a directory.  If it is create
+     * a new hypertext object containing a list of files and subdirectories
+     * contained in the directory.  All of these are links to the directories
+     * or files listed.
+     */
+    if (HTStat(filename, &stat_info) == -1) {
+	CTRACE((tfp, "HTLoadFile: Can't stat %s\n", filename));
+    } else {
+	if (S_ISDIR(stat_info.st_mode)) {
+	    if (HTDirAccess == HT_DIR_FORBID) {
+		FREE(filename);
+		FREE(nodename);
+		return HTLoadError(sink, 403, DISALLOWED_DIR_SCAN);
+	    }
+
+	    if (HTDirAccess == HT_DIR_SELECTIVE) {
+		char *enable_file_name = NULL;
+
+		HTSprintf0(&enable_file_name, "%s/%s", filename, HT_DIR_ENABLE_FILE);
+		if (HTStat(enable_file_name, &stat_info) == -1) {
+		    FREE(filename);
+		    FREE(nodename);
+		    FREE(enable_file_name);
+		    return HTLoadError(sink, 403, DISALLOWED_SELECTIVE_ACCESS);
+		}
+	    }
+
+	    FREE(filename);
+	    FREE(nodename);
+	    return HTVMSBrowseDir(addr, anchor, format_out, sink);
+	}
+    }
+
+    if (decompressAndParse(anchor,
+			   format_out,
+			   sink,
+			   nodename,
+			   filename,
+			   myEncoding,
+			   format,
+			   &status)) {
+	FREE(nodename);
+	FREE(filename);
+	return status;
+    }
+    FREE(filename);
+
+#else /* not VMS: */
+
+    FREE(filename);
+
+    /*
+     * For unix, we try to translate the name into the name of a transparently
+     * mounted file.
+     *
+     * Not allowed in secure (HTClientHost) situations.  TBL 921019
+     */
+#ifndef NO_UNIX_IO
+    /*  Need protection here for telnet server but not httpd server. */
+
+    if (!HTSecure) {		/* try local file system */
+	char *localname = HTLocalName(addr);
+	struct stat dir_info;
+
+#ifdef HAVE_READDIR
+	/*
+	 * Multiformat handling.
+	 *
+	 * If needed, scan directory to find a good file.  Bug:  We don't stat
+	 * the file to find the length.
+	 */
+	if ((strlen(localname) > strlen(MULTI_SUFFIX)) &&
+	    (0 == strcmp(localname + strlen(localname) - strlen(MULTI_SUFFIX),
+			 MULTI_SUFFIX))) {
+	    DIR *dp = 0;
+	    BOOL forget_multi = NO;
+
+	    STRUCT_DIRENT *dirbuf;
+	    float best = (float) NO_VALUE_FOUND;	/* So far best is bad */
+	    HTFormat best_rep = NULL;	/* Set when rep found */
+	    HTAtom *best_enc = NULL;
+	    char *best_name = NULL;	/* Best dir entry so far */
+
+	    char *base = strrchr(localname, '/');
+	    size_t baselen = 0;
+
+	    if (!base || base == localname) {
+		forget_multi = YES;
+	    } else {
+		*base++ = '\0';	/* Just got directory name */
+		baselen = strlen(base) - strlen(MULTI_SUFFIX);
+		base[baselen] = '\0';	/* Chop off suffix */
+
+		dp = opendir(localname);
+	    }
+	    if (forget_multi || !dp) {
+		FREE(localname);
+		FREE(nodename);
+		return HTLoadError(sink, 500, FAILED_DIR_SCAN);
+	    }
+
+	    while ((dirbuf = readdir(dp)) != NULL) {
+		/*
+		 * While there are directory entries to be read...
+		 */
+#ifdef STRUCT_DIRENT__D_INO
+		if (dirbuf->d_ino == 0)
+		    continue;	/* if the entry is not being used, skip it */
+#endif
+		if (strlen(dirbuf->d_name) > baselen &&		/* Match? */
+		    !StrNCmp(dirbuf->d_name, base, baselen)) {
+		    HTAtom *enc;
+		    HTFormat rep = HTFileFormat(dirbuf->d_name, &enc, NULL);
+		    float filevalue = HTFileValue(dirbuf->d_name);
+		    float value = HTStackValue(rep, format_out,
+					       filevalue,
+					       0L /* @@@@@@ */ );
+
+		    if (value <= 0.0) {
+			int rootlen = 0;
+			const char *atomname = NULL;
+			CompressFileType cft =
+			HTCompressFileType(dirbuf->d_name, ".", &rootlen);
+			char *cp = NULL;
+
+			enc = NULL;
+			if (cft != cftNone) {
+			    StrAllocCopy(cp, dirbuf->d_name);
+			    cp[rootlen] = '\0';
+			    format = HTFileFormat(cp, NULL, NULL);
+			    FREE(cp);
+			    value = HTStackValue(format, format_out,
+						 filevalue, 0L);
+			    switch (cft) {
+			    case cftCompress:
+				atomname = "application/x-compressed";
+				break;
+			    case cftGzip:
+				atomname = "application/x-gzip";
+				break;
+			    case cftDeflate:
+				atomname = "application/x-deflate";
+				break;
+			    case cftBzip2:
+				atomname = "application/x-bzip2";
+				break;
+			    case cftNone:
+				break;
+			    }
+			}
+
+			if (atomname != NULL) {
+			    value = HTStackValue(format, format_out,
+						 filevalue, 0L);
+			    if (value <= 0.0) {
+				format = HTAtom_for(atomname);
+				value = HTStackValue(format, format_out,
+						     filevalue, 0L);
+			    }
+			    if (value <= 0.0) {
+				format = HTAtom_for("www/compressed");
+				value = HTStackValue(format, format_out,
+						     filevalue, 0L);
+			    }
+			}
+		    }
+		    if (value < NO_VALUE_FOUND) {
+			CTRACE((tfp,
+				"HTLoadFile: value of presenting %s is %f\n",
+				HTAtom_name(rep), value));
+			if (value > best) {
+			    best_rep = rep;
+			    best_enc = enc;
+			    best = value;
+			    StrAllocCopy(best_name, dirbuf->d_name);
+			}
+		    }		/* if best so far */
+		}
+		/* if match */
+	    }			/* end while directory entries left to read */
+	    closedir(dp);
+
+	    if (best_rep) {
+		format = best_rep;
+		myEncoding = best_enc;
+		base[-1] = '/';	/* Restore directory name */
+		base[0] = '\0';
+		StrAllocCat(localname, best_name);
+		FREE(best_name);
+	    } else {		/* If not found suitable file */
+		FREE(localname);
+		FREE(nodename);
+		return HTLoadError(sink, 403, FAILED_NO_REPRESENTATION);
+	    }
+	    /*NOTREACHED */
+	}
+	/* if multi suffix */
+	/*
+	 * Check to see if the 'localname' is in fact a directory.  If it is
+	 * create a new hypertext object containing a list of files and
+	 * subdirectories contained in the directory.  All of these are links
+	 * to the directories or files listed.  NB This assumes the existence
+	 * of a type 'STRUCT_DIRENT', which will hold the directory entry, and
+	 * a type 'DIR' which is used to point to the current directory being
+	 * read.
+	 */
+#if defined(USE_DOS_DRIVES)
+	if (strlen(localname) == 2 && LYIsDosDrive(localname))
+	    LYAddPathSep(&localname);
+#endif
+	if (HTStat(localname, &dir_info) == -1)		/* get file information */
+	{
+	    /* if can't read file information */
+	    CTRACE((tfp, "HTLoadFile: can't stat %s\n", localname));
+
+	} else {		/* Stat was OK */
+
+	    if (S_ISDIR(dir_info.st_mode)) {
+		/*
+		 * If localname is a directory.
+		 */
+		DIR *dp;
+		struct stat file_info;
+
+		CTRACE((tfp, "%s is a directory\n", localname));
+
+		/*
+		 * Check directory access.  Selective access means only those
+		 * directories containing a marker file can be browsed.
+		 */
+		if (HTDirAccess == HT_DIR_FORBID) {
+		    FREE(localname);
+		    FREE(nodename);
+		    return HTLoadError(sink, 403, DISALLOWED_DIR_SCAN);
+		}
+
+		if (HTDirAccess == HT_DIR_SELECTIVE) {
+		    char *enable_file_name = NULL;
+
+		    HTSprintf0(&enable_file_name, "%s/%s", localname, HT_DIR_ENABLE_FILE);
+		    if (stat(enable_file_name, &file_info) != 0) {
+			FREE(localname);
+			FREE(nodename);
+			FREE(enable_file_name);
+			return HTLoadError(sink, 403, DISALLOWED_SELECTIVE_ACCESS);
+		    }
+		}
+
+		CTRACE((tfp, "Opening directory %s\n", localname));
+		dp = opendir(localname);
+		if (!dp) {
+		    FREE(localname);
+		    FREE(nodename);
+		    return HTLoadError(sink, 403, FAILED_DIR_UNREADABLE);
+		}
+
+		/*
+		 * Directory access is allowed and possible.
+		 */
+
+		status = print_local_dir(dp, localname,
+					 anchor, format_out, sink);
+		closedir(dp);
+		FREE(localname);
+		FREE(nodename);
+		return status;	/* document loaded, maybe partial */
+
+	    }
+	    /* end if localname is a directory */
+	    if (S_ISREG(dir_info.st_mode)) {
+#ifdef LONG_MAX
+		if (dir_info.st_size <= LONG_MAX)
+#endif
+		    anchor->content_length = (long) dir_info.st_size;
+	    }
+
+	}			/* end if file stat worked */
+
+/* End of directory reading section
+*/
+#endif /* HAVE_READDIR */
+	if (decompressAndParse(anchor,
+			       format_out,
+			       sink,
+			       nodename,
+			       localname,
+			       myEncoding,
+			       format,
+			       &status)) {
+	    FREE(nodename);
+	    FREE(localname);
+	    return status;
+	}
+	FREE(localname);
+    }				/* local unix file system */
+#endif /* !NO_UNIX_IO */
+#endif /* VMS */
+
+#ifndef DECNET
+    /*
+     * Now, as transparently mounted access has failed, we try FTP.
+     */
+    {
+	/*
+	 * Deal with case-sensitivity differences on VMS versus Unix.
+	 */
+#ifdef VMS
+	if (strcasecomp(nodename, HTHostName()) != 0)
+#else
+	if (strcmp(nodename, HTHostName()) != 0)
+#endif /* VMS */
+	{
+	    status = -1;
+	    FREE(nodename);
+	    if (StrNCmp(addr, "file://localhost", 16)) {
+		/* never go to ftp site when URL
+		 * is file://localhost
+		 */
+#ifndef DISABLE_FTP
+		status = HTFTPLoad(addr, anchor, format_out, sink);
+#endif /* DISABLE_FTP */
+	    }
+	    return status;
+	}
+	FREE(nodename);
+    }
+#endif /* !DECNET */
+
+    /*
+     * All attempts have failed.
+     */
+    {
+	CTRACE((tfp, "Can't open `%s', errno=%d\n", addr, SOCKET_ERRNO));
+
+	return HTLoadError(sink, 403, FAILED_FILE_UNREADABLE);
+    }
+}
+
+static const char *program_paths[pp_Last];
+
+/*
+ * Given a program number, return its path
+ */
+const char *HTGetProgramPath(ProgramPaths code)
+{
+    const char *result = NULL;
+
+    if (code > ppUnknown && code < pp_Last)
+	result = program_paths[code];
+    return result;
+}
+
+/*
+ * Store a program's path.  The caller must allocate the string used for 'path',
+ * since HTInitProgramPaths() may free it.
+ */
+void HTSetProgramPath(ProgramPaths code, const char *path)
+{
+    if (code > ppUnknown && code < pp_Last) {
+	program_paths[code] = isEmpty(path) ? 0 : path;
+    }
+}
+
+/*
+ * Reset the list of known program paths to the ones that are compiled-in
+ */
+void HTInitProgramPaths(BOOL init)
+{
+    ProgramPaths code;
+    int n;
+    const char *path;
+    const char *test;
+
+    for (n = (int) ppUnknown + 1; n < (int) pp_Last; ++n) {
+	switch (code = (ProgramPaths) n) {
+#ifdef BZIP2_PATH
+	case ppBZIP2:
+	    path = BZIP2_PATH;
+	    break;
+#endif
+#ifdef CHMOD_PATH
+	case ppCHMOD:
+	    path = CHMOD_PATH;
+	    break;
+#endif
+#ifdef COMPRESS_PATH
+	case ppCOMPRESS:
+	    path = COMPRESS_PATH;
+	    break;
+#endif
+#ifdef COPY_PATH
+	case ppCOPY:
+	    path = COPY_PATH;
+	    break;
+#endif
+#ifdef CSWING_PATH
+	case ppCSWING:
+	    path = CSWING_PATH;
+	    break;
+#endif
+#ifdef GZIP_PATH
+	case ppGZIP:
+	    path = GZIP_PATH;
+	    break;
+#endif
+#ifdef INFLATE_PATH
+	case ppINFLATE:
+	    path = INFLATE_PATH;
+	    break;
+#endif
+#ifdef INSTALL_PATH
+	case ppINSTALL:
+	    path = INSTALL_PATH;
+	    break;
+#endif
+#ifdef MKDIR_PATH
+	case ppMKDIR:
+	    path = MKDIR_PATH;
+	    break;
+#endif
+#ifdef MV_PATH
+	case ppMV:
+	    path = MV_PATH;
+	    break;
+#endif
+#ifdef RLOGIN_PATH
+	case ppRLOGIN:
+	    path = RLOGIN_PATH;
+	    break;
+#endif
+#ifdef RM_PATH
+	case ppRM:
+	    path = RM_PATH;
+	    break;
+#endif
+#ifdef RMDIR_PATH
+	case ppRMDIR:
+	    path = RMDIR_PATH;
+	    break;
+#endif
+#ifdef SETFONT_PATH
+	case ppSETFONT:
+	    path = SETFONT_PATH;
+	    break;
+#endif
+#ifdef TAR_PATH
+	case ppTAR:
+	    path = TAR_PATH;
+	    break;
+#endif
+#ifdef TELNET_PATH
+	case ppTELNET:
+	    path = TELNET_PATH;
+	    break;
+#endif
+#ifdef TN3270_PATH
+	case ppTN3270:
+	    path = TN3270_PATH;
+	    break;
+#endif
+#ifdef TOUCH_PATH
+	case ppTOUCH:
+	    path = TOUCH_PATH;
+	    break;
+#endif
+#ifdef UNCOMPRESS_PATH
+	case ppUNCOMPRESS:
+	    path = UNCOMPRESS_PATH;
+	    break;
+#endif
+#ifdef UNZIP_PATH
+	case ppUNZIP:
+	    path = UNZIP_PATH;
+	    break;
+#endif
+#ifdef UUDECODE_PATH
+	case ppUUDECODE:
+	    path = UUDECODE_PATH;
+	    break;
+#endif
+#ifdef ZCAT_PATH
+	case ppZCAT:
+	    path = ZCAT_PATH;
+	    break;
+#endif
+#ifdef ZIP_PATH
+	case ppZIP:
+	    path = ZIP_PATH;
+	    break;
+#endif
+	default:
+	    path = NULL;
+	    break;
+	}
+	test = HTGetProgramPath(code);
+	if (test != NULL && test != path) {
+	    free((char *) test);
+	}
+	if (init) {
+	    HTSetProgramPath(code, path);
+	}
+    }
+}
+
+/*
+ *	Protocol descriptors
+ */
+#ifdef GLOBALDEF_IS_MACRO
+#define _HTFILE_C_1_INIT { "ftp", HTLoadFile, 0 }
+GLOBALDEF(HTProtocol, HTFTP, _HTFILE_C_1_INIT);
+#define _HTFILE_C_2_INIT { "file", HTLoadFile, HTFileSaveStream }
+GLOBALDEF(HTProtocol, HTFile, _HTFILE_C_2_INIT);
+#else
+GLOBALDEF HTProtocol HTFTP =
+{"ftp", HTLoadFile, 0};
+GLOBALDEF HTProtocol HTFile =
+{"file", HTLoadFile, HTFileSaveStream};
+#endif /* GLOBALDEF_IS_MACRO */
diff --git a/WWW/Library/Implementation/HTFile.h b/WWW/Library/Implementation/HTFile.h
new file mode 100644
index 00000000..937907d4
--- /dev/null
+++ b/WWW/Library/Implementation/HTFile.h
@@ -0,0 +1,366 @@
+/*
+ * $LynxId: HTFile.h,v 1.33 2012/02/10 00:59:15 tom Exp $
+ *							File access in libwww
+ *				FILE ACCESS
+ *
+ *  These are routines for local file access used by WWW browsers and servers.
+ *  Implemented by HTFile.c.
+ *
+ *  If the file is not a local file, then we pass it on to HTFTP in case it
+ *  can be reached by FTP.
+ */
+#ifndef HTFILE_H
+#define HTFILE_H
+
+#include <HTFormat.h>
+#include <HTAccess.h>
+
+#ifndef HTML_H
+#include <HTML.h>		/* SCW */
+#endif /* HTML_H */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ *  Controlling globals
+ *
+ *  These flags control how directories and files are represented as
+ *  hypertext, and are typically set by the application from command
+ *  line options, etc.
+				 */ extern int HTDirAccess;
+    /* Directory access level */
+
+#define HT_DIR_FORBID           0	/* Altogether forbidden */
+#define HT_DIR_SELECTIVE        1	/* If HT_DIR_ENABLE_FILE exists */
+#define HT_DIR_OK               2	/* Any accesible directory */
+
+#define HT_DIR_ENABLE_FILE      ".www_browsable"	/* If exists, can browse */
+
+    extern int HTDirReadme;	/* Include readme files in listing? */
+
+    /* Values: */
+#define HT_DIR_README_NONE      0	/* No */
+#define HT_DIR_README_TOP       1	/* Yes, first */
+#define HT_DIR_README_BOTTOM    2	/* Yes, at the end */
+
+#define HT_DIR_README_FILE              "README"
+
+/*
+ *  Convert filenames between local and WWW formats
+ */
+    extern char *HTURLPath_toFile(const char *name, int expand_all, int is_remote);
+    extern char *HTnameOfFile_WWW(const char *name, int WWW_prefix, int expand_all);
+
+#define HTLocalName(name)      HTnameOfFile_WWW(name,TRUE,TRUE)
+#define HTfullURL_toFile(name) HTnameOfFile_WWW(name,FALSE,TRUE)
+#define HTpartURL_toFile(name) HTnameOfFile_WWW(name,FALSE,FALSE)
+
+/*
+ *  Make a WWW name from a full local path name
+ */
+    extern char *WWW_nameOfFile(const char *name);
+
+/*
+ *  Generate the name of a cache file
+ */
+    extern char *HTCacheFileName(const char *name);
+
+/*
+ *  Generate fragments of HTML for source-view:
+ */
+    extern void HTStructured_doctype(HTStructured * target, HTFormat format_out);
+
+    extern void HTStructured_meta(HTStructured * target, HTFormat format_out);
+/*
+ *  Output directory titles
+ *
+ * This is (like the next one) used by HTFTP. It is common code to generate
+ * the title and heading 1 and the parent directory link for any anchor.
+ *
+ * changed to return TRUE if parent directory link was generated,
+ * FALSE otherwise - KW
+ */
+    extern BOOL HTDirTitles(HTStructured * target, HTParentAnchor *anchor,
+			    HTFormat format_out,
+			    int tildeIsTop);
+
+/*
+ *	Check existence.
+ */
+    extern int HTStat(const char *filename,
+		      struct stat *data);
+
+/*	Load a document.
+ *	----------------
+ */
+    extern int HTLoadFile(const char *addr,
+			  HTParentAnchor *anchor,
+			  HTFormat format_out,
+			  HTStream *sink);
+
+/*
+ *  Output a directory entry
+ *
+ * This is used by HTFTP.c for example -- it is a common routine for
+ *  generating a linked directory entry.
+ */
+    extern void HTDirEntry(HTStructured * target, /* in which to put the linked text */ const char *tail,	/* last part of directory name */
+			   const char *entry);	/* name of this entry */
+
+/*
+ *  HTSetSuffix: Define the representation for a file suffix
+ *
+ *  This defines a mapping between local file suffixes and file content
+ *  types and encodings.
+ *
+ *  ON ENTRY,
+ *
+ *  suffix		includes the "." if that is important (normally, yes!)
+ *
+ *  representation	is MIME-style content-type
+ *
+ *  encoding		is MIME-style content-transfer-encoding
+ *			(8bit, 7bit, etc) or HTTP-style content-encoding
+ *			(gzip, compress etc.)
+ *
+ *  quality		an a priori judgement of the quality of such files
+ *			(0.0..1.0)
+ *
+ *  HTSetSuffix5 has one more parameter for a short description of the type
+ *  which is otherwise derived from the representation:
+ *
+ *  desc		is a short textual description, or NULL
+ *
+ *  Examples:   HTSetSuffix(".ps", "application/postscript", "8bit", 1.0);
+ *  Examples:   HTSetSuffix(".psz", "application/postscript", "gzip", 1.0);
+ *  A MIME type could also indicate a non-trivial encoding on its own
+ *  ("application/x-compressed-tar"), but in that case don't use enconding
+ *  to also indicate it but use "binary" etc.
+ */
+    extern void HTSetSuffix5(const char *suffix,
+			     const char *representation,
+			     const char *encoding,
+			     const char *desc,
+			     double quality);
+
+#define HTSetSuffix(suff,rep,enc,q) HTSetSuffix5(suff, rep, enc, NULL, q)
+
+/*
+ *  HTFileFormat: Get Representation and Encoding from file name.
+ *
+ *  ON EXIT,
+ *
+ *  return		The represntation it imagines the file is in.
+ *
+ *  *pEncoding		The encoding (binary, 7bit, etc). See HTSetSuffix.
+ */
+    extern HTFormat HTFileFormat(const char *filename,
+				 HTAtom **pEncoding,
+				 const char **pDesc);
+
+/*
+ *  HTCharsetFormat: Revise the file format in relation to the Lynx charset.
+ *
+ *  This checks the format associated with an anchor for
+ *  for an extended MIME Content-Type, and if a charset is
+ *  indicated, sets Lynx up for proper handling in relation
+ *  to the currently selected character set. - FM
+ */
+    extern HTFormat HTCharsetFormat(HTFormat format,
+				    HTParentAnchor *anchor,
+				    int default_LYhndl);
+
+/*	Get various pieces of meta info from file name.
+ *	-----------------------------------------------
+ *
+ *  LYGetFileInfo fills in information that can be determined without
+ *  an actual (new) access to the filesystem, based on current suffix
+ *  and character set configuration.  If the file has been loaded and
+ *  parsed before  (with the same URL generated here!) and the anchor
+ *  is still around, some results may be influenced by that (in
+ *  particular, charset info from a META tag - this is not actually
+ *  tested!).
+ *  The caller should not keep pointers to the returned objects around
+ *  for too long, the valid lifetimes vary. In particular, the returned
+ *  charset string should be copied if necessary.  If return of the
+ *  file_anchor is requested, that one can be used to retrieve
+ *  additional bits of info that are stored in the anchor object and
+ *  are not covered here; as usual, don't keep pointers to the
+ *  file_anchor longer than necessary since the object may disappear
+ *  through HTuncache_current_document or at the next document load.
+ *  - kw
+ */
+    extern void LYGetFileInfo(const char *filename,
+			      HTParentAnchor **pfile_anchor,
+			      HTFormat *pformat,
+			      HTAtom **pencoding,
+			      const char **pdesc,
+			      const char **pcharset,
+			      int *pfile_cs);
+
+/*
+ *  Determine file value from file name.
+ */
+    extern float HTFileValue(const char *filename);
+
+/*
+ *  Known compression types.
+ */
+    typedef enum {
+	cftNone
+	,cftCompress
+	,cftGzip
+	,cftBzip2
+	,cftDeflate
+    } CompressFileType;
+
+/*
+ *  Determine compression type from file name, by looking at its suffix.
+ */
+    extern CompressFileType HTCompressFileType(const char *filename,
+					       const char *dots,
+					       int *rootlen);
+
+/*
+ *  Determine compression type from the content-encoding.
+ */
+    extern CompressFileType HTEncodingToCompressType(const char *encoding);
+/*
+ *  Determine compression type from the content-encoding.
+ */
+    extern CompressFileType HTContentTypeToCompressType(const char *ct);
+/*
+ *  Determine compression type from the content-type and/or content-encoding.
+ */
+    extern CompressFileType HTContentToCompressType(HTParentAnchor *anchor);
+/*
+ *  Determine compression encoding from the compression method.
+ */
+    extern const char *HTCompressTypeToEncoding(CompressFileType method);
+/*
+ *  Determine expected file-suffix from the compression method.
+ */
+    extern const char *HTCompressTypeToSuffix(CompressFileType method);
+/*
+ *  Determine write access to a file.
+ *
+ *  ON EXIT,
+ *
+ *  return value	YES if file can be accessed and can be written to.
+ *
+ *  BUGS
+ *
+ *   Isn't there a quicker way?
+ */
+
+#if defined(HAVE_CONFIG_H)
+
+#ifndef HAVE_GETGROUPS
+#define NO_GROUPS
+#endif
+
+#else
+
+#ifdef VMS
+#define NO_GROUPS
+#endif				/* VMS */
+#ifdef NO_UNIX_IO
+#define NO_GROUPS
+#endif				/* NO_UNIX_IO */
+#ifdef PCNFS
+#define NO_GROUPS
+#endif				/* PCNFS */
+#ifdef NOUSERS
+#define NO_GROUPS
+#endif				/* PCNFS */
+
+#endif				/* HAVE_CONFIG_H */
+
+    extern BOOL HTEditable(const char *filename);
+
+/*	Make a save stream.
+ *	-------------------
+ */
+    extern HTStream *HTFileSaveStream(HTParentAnchor *anchor);
+
+/*
+ * Determine a suitable suffix, given the representation.
+ *
+ *  ON ENTRY,
+ *
+ *  rep			is the atomized MIME style representation
+ *  enc			is an encoding (8bit, binary, gzip, compress,..)
+ *
+ *  ON EXIT,
+ *
+ *  returns		a pointer to a suitable suffix string if one has
+ *			been found, else NULL.
+ */
+    extern const char *HTFileSuffix(HTAtom *rep,
+				    const char *enc);
+
+/*
+ * Enumerate external programs that lynx may assume exists.  Unlike those
+ * given in download scripts, etc., lynx would really like to know their
+ * absolute paths, for better security.
+ */
+    typedef enum {
+	ppUnknown = 0
+	,ppBZIP2
+	,ppCHMOD
+	,ppCOMPRESS
+	,ppCOPY
+	,ppCSWING
+	,ppGZIP
+	,ppINFLATE
+	,ppINSTALL
+	,ppMKDIR
+	,ppMV
+	,ppRLOGIN
+	,ppRM
+	,ppRMDIR
+	,ppSETFONT
+	,ppTAR
+	,ppTELNET
+	,ppTN3270
+	,ppTOUCH
+	,ppUNCOMPRESS
+	,ppUNZIP
+	,ppUUDECODE
+	,ppZCAT
+	,ppZIP
+	,pp_Last
+    } ProgramPaths;
+
+/*
+ * Given a program number, return its path
+ */
+    extern const char *HTGetProgramPath(ProgramPaths code);
+
+/*
+ * Store a program's path 
+ */
+    extern void HTSetProgramPath(ProgramPaths code,
+				 const char *path);
+
+/*
+ * Reset the list of known program paths to the ones that are compiled-in
+ */
+    extern void HTInitProgramPaths(BOOL init);
+
+/*
+ *  The Protocols
+ */
+#ifdef GLOBALREF_IS_MACRO
+    extern GLOBALREF (HTProtocol, HTFTP);
+    extern GLOBALREF (HTProtocol, HTFile);
+
+#else
+    GLOBALREF HTProtocol HTFTP, HTFile;
+#endif				/* GLOBALREF_IS_MACRO */
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTFILE_H */
diff --git a/WWW/Library/Implementation/HTFinger.c b/WWW/Library/Implementation/HTFinger.c
new file mode 100644
index 00000000..0dfc7a68
--- /dev/null
+++ b/WWW/Library/Implementation/HTFinger.c
@@ -0,0 +1,422 @@
+/*
+ * $LynxId: HTFinger.c,v 1.29 2011/05/24 09:21:13 tom Exp $
+ *
+ *			FINGER ACCESS				HTFinger.c
+ *			=============
+ * Authors:
+ *  ARB  Andrew Brooks
+ *
+ * History:
+ *	21 Apr 94   First version (ARB, from HTNews.c by TBL)
+ *	12 Mar 96   Made the URL and command buffering secure from
+ *		     stack modifications, beautified the HTLoadFinger()
+ *		     and response() functions, and added support for the
+ *		     following URL formats for sending a "", "/w",
+ *		     "username[@host]", or "/w username[@host]" command
+ *		     to the server:
+ *			finger://host
+ *			finger://host/
+ *			finger://host/%2fw
+ *			finger://host/%2fw%20username[@host]
+ *			finger://host/w/username[@host]
+ *			finger://host/username[@host]
+ *			finger://host/username[@host]/w
+ *			finger://username@host
+ *			finger://username@host/
+ *			finger://username@host/w
+ *	15 Mar 96   Added support for port 79 gtype 0 gopher URLs
+ *		     relayed from HTLoadGopher. - FM
+ */
+
+#include <HTUtils.h>
+
+#ifndef DISABLE_FINGER
+
+#include <HTAlert.h>
+#include <HTML.h>
+#include <HTParse.h>
+#include <HTFormat.h>
+#include <HTTCP.h>
+#include <HTString.h>
+#include <HTFinger.h>
+
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+#define FINGER_PORT 79		/* See rfc742 */
+#define BIG 1024		/* Bug */
+
+#define PUTC(c) (*targetClass.put_character)(target, c)
+#define PUTS(s) (*targetClass.put_string)(target, s)
+#define START(e) (*targetClass.start_element)(target, e, 0, 0, -1, 0)
+#define END(e) (*targetClass.end_element)(target, e, 0)
+#define FREE_TARGET (*targetClass._free)(target)
+#define NEXT_CHAR HTGetCharacter()
+
+/*	Module-wide variables
+*/
+static int finger_fd;		/* Socket for FingerHost */
+
+struct _HTStructured {
+    const HTStructuredClass *isa;	/* For gopher streams */
+    /* ... */
+};
+
+static HTStructured *target;	/* The output sink */
+static HTStructuredClass targetClass;	/* Copy of fn addresses */
+
+/*	Initialisation for this module
+ *	------------------------------
+ */
+static BOOL initialized = NO;
+static BOOL initialize(void)
+{
+    finger_fd = -1;		/* Disconnected */
+    return YES;
+}
+
+/*	Start anchor element
+ *	--------------------
+ */
+static void start_anchor(const char *href)
+{
+    BOOL present[HTML_A_ATTRIBUTES];
+    const char *value[HTML_A_ATTRIBUTES];
+
+    {
+	int i;
+
+	for (i = 0; i < HTML_A_ATTRIBUTES; i++)
+	    present[i] = (BOOL) (i == HTML_A_HREF);
+    }
+    ((const char **) value)[HTML_A_HREF] = href;
+    (*targetClass.start_element) (target, HTML_A, present,
+				  (const char **) value, -1, 0);
+
+}
+
+/*	Send Finger Command line to remote host & Check Response
+ *	--------------------------------------------------------
+ *
+ * On entry,
+ *	command	points to the command to be sent, including CRLF, or is null
+ *		pointer if no command to be sent.
+ * On exit,
+ *	Negative status indicates transmission error, socket closed.
+ *	Positive status is a Finger status.
+ */
+
+static int response(char *command,
+		    char *sitename,
+		    HTParentAnchor *anAnchor,
+		    HTFormat format_out,
+		    HTStream *sink)
+{
+    int status;
+    int length = (int) strlen(command);
+    int ch, i;
+    char line[BIG], *l, *cmd = NULL;
+    char *p = line, *href = NULL;
+
+    if (length == 0)
+	return (-1);
+
+    /* Set up buffering.
+     */
+    HTInitInput(finger_fd);
+
+    /* Send the command.
+     */
+    CTRACE((tfp, "HTFinger command to be sent: %s", command));
+    status = (int) NETWRITE(finger_fd, (char *) command, (unsigned) length);
+    if (status < 0) {
+	CTRACE((tfp, "HTFinger: Unable to send command. Disconnecting.\n"));
+	NETCLOSE(finger_fd);
+	finger_fd = -1;
+	return status;
+    }
+    /* if bad status */
+    /* Make a hypertext object with an anchor list.
+     */
+    target = HTML_new(anAnchor, format_out, sink);
+    targetClass = *target->isa;	/* Copy routine entry points */
+
+    /* Create the results report.
+     */
+    CTRACE((tfp, "HTFinger: Reading finger information\n"));
+    START(HTML_HTML);
+    PUTC('\n');
+    START(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_TITLE);
+    PUTS("Finger server on ");
+    PUTS(sitename);
+    END(HTML_TITLE);
+    PUTC('\n');
+    END(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_BODY);
+    PUTC('\n');
+    START(HTML_H1);
+    PUTS("Finger server on ");
+    START(HTML_EM);
+    PUTS(sitename);
+    END(HTML_EM);
+    PUTS(": ");
+    if (command) {
+	StrAllocCopy(cmd, command);
+    } else {
+	StrAllocCopy(cmd, "");
+    }
+    for (i = ((int) strlen(cmd) - 1); i >= 0; i--) {
+	if (cmd[i] == LF || cmd[i] == CR) {
+	    cmd[i] = '\0';
+	} else {
+	    break;
+	}
+    }
+    PUTS(cmd);
+    FREE(cmd);
+    END(HTML_H1);
+    PUTC('\n');
+    START(HTML_PRE);
+
+    while ((ch = NEXT_CHAR) != EOF) {
+
+	if (interrupted_in_htgetcharacter) {
+	    CTRACE((tfp,
+		    "HTFinger: Interrupted in HTGetCharacter, apparently.\n"));
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	    goto end_html;
+	}
+
+	if (ch != LF) {
+	    *p = (char) ch;	/* Put character in line */
+	    if (p < &line[BIG - 1]) {
+		p++;
+	    }
+	} else {
+	    *p = '\0';		/* Terminate line */
+	    /*
+	     * OK we now have a line.
+	     * Load it as 'l' and parse it.
+	     */
+	    p = l = line;
+	    while (*l) {
+		if (StrNCmp(l, STR_NEWS_URL, LEN_NEWS_URL) &&
+		    StrNCmp(l, "snews://", 8) &&
+		    StrNCmp(l, "nntp://", 7) &&
+		    StrNCmp(l, "snewspost:", 10) &&
+		    StrNCmp(l, "snewsreply:", 11) &&
+		    StrNCmp(l, "newspost:", 9) &&
+		    StrNCmp(l, "newsreply:", 10) &&
+		    StrNCmp(l, "ftp://", 6) &&
+		    StrNCmp(l, "file:/", 6) &&
+		    StrNCmp(l, "finger://", 9) &&
+		    StrNCmp(l, "http://", 7) &&
+		    StrNCmp(l, "https://", 8) &&
+		    StrNCmp(l, "wais://", 7) &&
+		    StrNCmp(l, STR_MAILTO_URL, LEN_MAILTO_URL) &&
+		    StrNCmp(l, "cso://", 6) &&
+		    StrNCmp(l, "gopher://", 9))
+		    PUTC(*l++);
+		else {
+		    StrAllocCopy(href, l);
+		    start_anchor(strtok(href, " \r\n\t,>)\""));
+		    while (*l && !strchr(" \r\n\t,>)\"", *l))
+			PUTC(*l++);
+		    END(HTML_A);
+		    FREE(href);
+		}
+	    }
+	    PUTC('\n');
+	}
+    }
+    NETCLOSE(finger_fd);
+    finger_fd = -1;
+
+  end_html:
+    END(HTML_PRE);
+    PUTC('\n');
+    END(HTML_BODY);
+    PUTC('\n');
+    END(HTML_HTML);
+    PUTC('\n');
+    FREE_TARGET;
+    return (0);
+}
+
+/*		Load by name					HTLoadFinger
+ *		============
+ */
+int HTLoadFinger(const char *arg,
+		 HTParentAnchor *anAnchor,
+		 HTFormat format_out,
+		 HTStream *stream)
+{
+    static char empty[1];
+
+    char *username, *sitename;	/* Fields extracted from URL */
+    char *slash, *at_sign;	/* Fields extracted from URL */
+    char *command, *str, *param;	/* Buffers */
+    int port;			/* Port number from URL */
+    int status;			/* tcp return */
+    int result = HT_LOADED;
+    BOOL IsGopherURL = FALSE;
+    const char *p1 = arg;
+
+    CTRACE((tfp, "HTFinger: Looking for %s\n", (arg ? arg : "NULL")));
+
+    if (!(arg && *arg)) {
+	HTAlert(COULD_NOT_LOAD_DATA);
+	return HT_NOT_LOADED;	/* Ignore if no name */
+    }
+
+    if (!initialized)
+	initialized = initialize();
+    if (!initialized) {
+	HTAlert(gettext("Could not set up finger connection."));
+	return HT_NOT_LOADED;	/* FAIL */
+    }
+
+    /*  Set up the host and command fields.
+     */
+    if (!strncasecomp(arg, "finger://", 9)) {
+	p1 = arg + 9;		/* Skip "finger://" prefix */
+    } else if (!strncasecomp(arg, "gopher://", 9)) {
+	p1 = arg + 9;		/* Skip "gopher://" prefix */
+	IsGopherURL = TRUE;
+    }
+
+    param = 0;
+    sitename = StrAllocCopy(param, p1);
+    if (param == 0) {
+	HTAlert(COULD_NOT_LOAD_DATA);
+	return HT_NOT_LOADED;
+    } else if ((slash = strchr(sitename, '/')) != NULL) {
+	*slash++ = '\0';
+	HTUnEscape(slash);
+	if (IsGopherURL) {
+	    if (*slash != '0') {
+		HTAlert(COULD_NOT_LOAD_DATA);
+		return HT_NOT_LOADED;	/* FAIL */
+	    }
+	    *slash++ = '\0';
+	}
+    }
+
+    if ((at_sign = strchr(sitename, '@')) != NULL) {
+	if (IsGopherURL) {
+	    HTAlert(COULD_NOT_LOAD_DATA);
+	    return HT_NOT_LOADED;	/* FAIL */
+	} else {
+	    *at_sign++ = '\0';
+	    username = sitename;
+	    sitename = at_sign;
+	    HTUnEscape(username);
+	}
+    } else if (slash) {
+	username = slash;
+    } else {
+	username = empty;
+    }
+
+    if (*sitename == '\0') {
+	HTAlert(gettext("Could not load data (no sitename in finger URL)"));
+	result = HT_NOT_LOADED;	/* Ignore if no name */
+    } else if (HTParsePort(sitename, &port) != NULL) {
+	if (port != 79) {
+	    HTAlert(gettext("Invalid port number - will only use port 79!"));
+	    result = HT_NOT_LOADED;	/* Ignore if wrong port */
+	}
+    }
+
+    if (result == HT_LOADED) {
+	/* Load the string for making a connection/
+	 */
+	str = 0;
+	HTSprintf0(&str, "lose://%s/", sitename);
+
+	/* Load the command for the finger server.
+	 */
+	command = 0;
+	if (at_sign && slash) {
+	    if (*slash == 'w' || *slash == 'W') {
+		HTSprintf0(&command, "/w %s%c%c", username, CR, LF);
+	    } else {
+		HTSprintf0(&command, "%s%c%c", username, CR, LF);
+	    }
+	} else if (at_sign) {
+	    HTSprintf0(&command, "%s%c%c", username, CR, LF);
+	} else if (*username == '/') {
+	    if ((slash = strchr((username + 1), '/')) != NULL) {
+		*slash = ' ';
+	    }
+	    HTSprintf0(&command, "%s%c%c", username, CR, LF);
+	} else if ((*username == 'w' || *username == 'W') &&
+		   *(username + 1) == '/') {
+	    if (*username + 2 != '\0') {
+		*(username + 1) = ' ';
+	    } else {
+		*(username + 1) = '\0';
+	    }
+	    HTSprintf0(&command, "/%s%c%c", username, CR, LF);
+	} else if ((*username == 'w' || *username == 'W') &&
+		   *(username + 1) == '\0') {
+	    HTSprintf0(&command, "/%s%c%c", username, CR, LF);
+	} else if ((slash = strchr(username, '/')) != NULL) {
+	    *slash++ = '\0';
+	    if (*slash == 'w' || *slash == 'W') {
+		HTSprintf0(&command, "/w %s%c%c", username, CR, LF);
+	    } else {
+		HTSprintf0(&command, "%s%c%c", username, CR, LF);
+	    }
+	} else {
+	    HTSprintf0(&command, "%s%c%c", username, CR, LF);
+	}
+
+	/* Now, let's get a stream setup up from the FingerHost:
+	 * CONNECTING to finger host
+	 */
+	CTRACE((tfp, "HTFinger: doing HTDoConnect on '%s'\n", str));
+	status = HTDoConnect(str, "finger", FINGER_PORT, &finger_fd);
+	CTRACE((tfp, "HTFinger: Done DoConnect; status %d\n", status));
+
+	if (status == HT_INTERRUPTED) {
+	    /* Interrupt cleanly */
+	    CTRACE((tfp,
+		    "HTFinger: Interrupted on connect; recovering cleanly.\n"));
+	    HTProgress(CONNECTION_INTERRUPTED);
+	    result = HT_NOT_LOADED;
+	} else if (status < 0) {
+	    NETCLOSE(finger_fd);
+	    finger_fd = -1;
+	    CTRACE((tfp, "HTFinger: Unable to connect to finger host.\n"));
+	    HTAlert(gettext("Could not access finger host."));
+	    result = HT_NOT_LOADED;	/* FAIL */
+	} else {
+	    CTRACE((tfp, "HTFinger: Connected to finger host '%s'.\n", str));
+
+	    /* Send the command, and process response if successful.
+	     */
+	    if (response(command, sitename, anAnchor, format_out, stream) != 0) {
+		HTAlert(gettext("No response from finger server."));
+		result = HT_NOT_LOADED;
+	    }
+	}
+	FREE(str);
+	FREE(command);
+    }
+    FREE(param);
+    return result;
+}
+
+#ifdef GLOBALDEF_IS_MACRO
+#define _HTFINGER_C_1_INIT { "finger", HTLoadFinger, NULL }
+GLOBALDEF(HTProtocol, HTFinger, _HTFINGER_C_1_INIT);
+#else
+GLOBALDEF HTProtocol HTFinger =
+{"finger", HTLoadFinger, NULL};
+#endif /* GLOBALDEF_IS_MACRO */
+
+#endif /* not DISABLE_FINGER */
diff --git a/WWW/Library/Implementation/HTFinger.h b/WWW/Library/Implementation/HTFinger.h
new file mode 100644
index 00000000..071d43bc
--- /dev/null
+++ b/WWW/Library/Implementation/HTFinger.h
@@ -0,0 +1,30 @@
+/* Finger protocol module for the WWW library */
+/* History:
+ *      21 Apr 94       Andrew Brooks
+ */
+
+#ifndef HTFINGER_H
+#define HTFINGER_H
+
+#include <HTAccess.h>
+#include <HTAnchor.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#ifdef GLOBALREF_IS_MACRO
+    extern GLOBALREF (HTProtocol, HTFinger);
+
+#else
+    GLOBALREF HTProtocol HTFinger;
+#endif				/* GLOBALREF_IS_MACRO */
+
+    extern int HTLoadFinger(const char *arg,
+			    HTParentAnchor *anAnchor,
+			    HTFormat format_out,
+			    HTStream *stream);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTFINGER_H */
diff --git a/WWW/Library/Implementation/HTFormat.c b/WWW/Library/Implementation/HTFormat.c
new file mode 100644
index 00000000..ef574499
--- /dev/null
+++ b/WWW/Library/Implementation/HTFormat.c
@@ -0,0 +1,1911 @@
+/*
+ * $LynxId: HTFormat.c,v 1.74 2011/06/11 12:13:09 tom Exp $
+ *
+ *		Manage different file formats			HTFormat.c
+ *		=============================
+ *
+ * Bugs:
+ *	Not reentrant.
+ *
+ *	Assumes the incoming stream is ASCII, rather than a local file
+ *	format, and so ALWAYS converts from ASCII on non-ASCII machines.
+ *	Therefore, non-ASCII machines can't read local files.
+ *
+ */
+
+#define HTSTREAM_INTERNAL 1
+
+#include <HTUtils.h>
+
+/* Implements:
+*/
+#include <HTFormat.h>
+
+static float HTMaxSecs = 1e10;	/* No effective limit */
+
+#ifdef UNIX
+#ifdef NeXT
+#define PRESENT_POSTSCRIPT "open %s; /bin/rm -f %s\n"
+#else
+#define PRESENT_POSTSCRIPT "(ghostview %s ; /bin/rm -f %s)&\n"
+			   /* Full pathname would be better! */
+#endif /* NeXT */
+#endif /* UNIX */
+
+#include <HTML.h>
+#include <HTMLDTD.h>
+#include <HText.h>
+#include <HTAlert.h>
+#include <HTList.h>
+#include <HTInit.h>
+#include <HTTCP.h>
+#include <HTTP.h>
+/*	Streams and structured streams which we use:
+*/
+#include <HTFWriter.h>
+#include <HTPlain.h>
+#include <SGML.h>
+#include <HTMLGen.h>
+
+#include <LYexit.h>
+#include <LYUtils.h>
+#include <GridText.h>
+#include <LYGlobalDefs.h>
+#include <LYLeaks.h>
+
+#ifdef DISP_PARTIAL
+#include <LYMainLoop.h>
+#endif
+
+BOOL HTOutputSource = NO;	/* Flag: shortcut parser to stdout */
+
+/* this version used by the NetToText stream */
+struct _HTStream {
+    const HTStreamClass *isa;
+    BOOL had_cr;
+    HTStream *sink;
+};
+
+/*	Presentation methods
+ *	--------------------
+ */
+HTList *HTPresentations = NULL;
+HTPresentation *default_presentation = NULL;
+
+/*
+ *	To free off the presentation list.
+ */
+#ifdef LY_FIND_LEAKS
+static void HTFreePresentations(void);
+#endif
+
+/*	Define a presentation system command for a content-type
+ *	-------------------------------------------------------
+ */
+void HTSetPresentation(const char *representation,
+		       const char *command,
+		       const char *testcommand,
+		       double quality,
+		       double secs,
+		       double secs_per_byte,
+		       long int maxbytes,
+		       AcceptMedia media)
+{
+    HTPresentation *pres = typecalloc(HTPresentation);
+
+    if (pres == NULL)
+	outofmem(__FILE__, "HTSetPresentation");
+
+    assert(pres != NULL);
+    assert(representation != NULL);
+
+    CTRACE2(TRACE_CFG,
+	    (tfp,
+	     "HTSetPresentation rep=%s, command=%s, test=%s, qual=%f\n",
+	     NonNull(representation),
+	     NonNull(command),
+	     NonNull(testcommand),
+	     quality));
+
+    pres->rep = HTAtom_for(representation);
+    pres->rep_out = WWW_PRESENT;	/* Fixed for now ... :-) */
+    pres->converter = HTSaveAndExecute;		/* Fixed for now ...     */
+    pres->quality = (float) quality;
+    pres->secs = (float) secs;
+    pres->secs_per_byte = (float) secs_per_byte;
+    pres->maxbytes = maxbytes;
+    pres->get_accept = 0;
+    pres->accept_opt = media;
+
+    pres->command = NULL;
+    StrAllocCopy(pres->command, command);
+
+    pres->testcommand = NULL;
+    StrAllocCopy(pres->testcommand, testcommand);
+
+    /*
+     * Memory leak fixed.
+     * 05-28-94 Lynx 2-3-1 Garrett Arch Blythe
+     */
+    if (!HTPresentations) {
+	HTPresentations = HTList_new();
+#ifdef LY_FIND_LEAKS
+	atexit(HTFreePresentations);
+#endif
+    }
+
+    if (strcmp(representation, "*") == 0) {
+	FREE(default_presentation);
+	default_presentation = pres;
+    } else {
+	HTList_addObject(HTPresentations, pres);
+    }
+}
+
+/*	Define a built-in function for a content-type
+ *	---------------------------------------------
+ */
+void HTSetConversion(const char *representation_in,
+		     const char *representation_out,
+		     HTConverter *converter,
+		     double quality,
+		     double secs,
+		     double secs_per_byte,
+		     long int maxbytes,
+		     AcceptMedia media)
+{
+    HTPresentation *pres = typecalloc(HTPresentation);
+
+    if (pres == NULL)
+	outofmem(__FILE__, "HTSetConversion");
+
+    assert(pres != NULL);
+
+    CTRACE2(TRACE_CFG,
+	    (tfp,
+	     "HTSetConversion rep_in=%s, rep_out=%s, qual=%f\n",
+	     NonNull(representation_in),
+	     NonNull(representation_out),
+	     quality));
+
+    pres->rep = HTAtom_for(representation_in);
+    pres->rep_out = HTAtom_for(representation_out);
+    pres->converter = converter;
+    pres->command = NULL;
+    pres->testcommand = NULL;
+    pres->quality = (float) quality;
+    pres->secs = (float) secs;
+    pres->secs_per_byte = (float) secs_per_byte;
+    pres->maxbytes = maxbytes;
+    pres->get_accept = TRUE;
+    pres->accept_opt = media;
+
+    /*
+     * Memory Leak fixed.
+     * 05-28-94 Lynx 2-3-1 Garrett Arch Blythe
+     */
+    if (!HTPresentations) {
+	HTPresentations = HTList_new();
+#ifdef LY_FIND_LEAKS
+	atexit(HTFreePresentations);
+#endif
+    }
+
+    HTList_addObject(HTPresentations, pres);
+}
+
+#ifdef LY_FIND_LEAKS
+/*
+ *	Purpose:	Free the presentation list.
+ *	Arguments:	void
+ *	Return Value:	void
+ *	Remarks/Portability/Dependencies/Restrictions:
+ *		Made to clean up Lynx's bad leakage.
+ *	Revision History:
+ *		05-28-94	created Lynx 2-3-1 Garrett Arch Blythe
+ */
+static void HTFreePresentations(void)
+{
+    HTPresentation *pres = NULL;
+
+    /*
+     * Loop through the list.
+     */
+    while (!HTList_isEmpty(HTPresentations)) {
+	/*
+	 * Free off each item.  May also need to free off it's items, but not
+	 * sure as of yet.
+	 */
+	pres = (HTPresentation *) HTList_removeLastObject(HTPresentations);
+	FREE(pres->command);
+	FREE(pres->testcommand);
+	FREE(pres);
+    }
+    /*
+     * Free the list itself.
+     */
+    HTList_delete(HTPresentations);
+    HTPresentations = NULL;
+}
+#endif /* LY_FIND_LEAKS */
+
+/*	File buffering
+ *	--------------
+ *
+ *	The input file is read using the macro which can read from
+ *	a socket or a file.
+ *	The input buffer size, if large will give greater efficiency and
+ *	release the server faster, and if small will save space on PCs etc.
+ */
+#define INPUT_BUFFER_SIZE 4096	/* Tradeoff */
+static char input_buffer[INPUT_BUFFER_SIZE];
+static char *input_pointer;
+static char *input_limit;
+static int input_file_number;
+
+/*	Set up the buffering
+ *
+ *	These routines are public because they are in fact needed by
+ *	many parsers, and on PCs and Macs we should not duplicate
+ *	the static buffer area.
+ */
+void HTInitInput(int file_number)
+{
+    input_file_number = file_number;
+    input_pointer = input_limit = input_buffer;
+}
+
+int interrupted_in_htgetcharacter = 0;
+int HTGetCharacter(void)
+{
+    char ch;
+
+    interrupted_in_htgetcharacter = 0;
+    do {
+	if (input_pointer >= input_limit) {
+	    int status = NETREAD(input_file_number,
+				 input_buffer, INPUT_BUFFER_SIZE);
+
+	    if (status <= 0) {
+		if (status == 0)
+		    return EOF;
+		if (status == HT_INTERRUPTED) {
+		    CTRACE((tfp, "HTFormat: Interrupted in HTGetCharacter\n"));
+		    interrupted_in_htgetcharacter = 1;
+		    return EOF;
+		}
+		CTRACE((tfp, "HTFormat: File read error %d\n", status));
+		return EOF;	/* -1 is returned by UCX
+				   at end of HTTP link */
+	    }
+	    input_pointer = input_buffer;
+	    input_limit = input_buffer + status;
+	}
+	ch = *input_pointer++;
+    } while (ch == (char) 13);	/* Ignore ASCII carriage return */
+
+    return FROMASCII(UCH(ch));
+}
+
+#ifdef USE_SSL
+int HTGetSSLCharacter(void *handle)
+{
+    char ch;
+
+    interrupted_in_htgetcharacter = 0;
+    if (!handle)
+	return (char) EOF;
+    do {
+	if (input_pointer >= input_limit) {
+	    int status = SSL_read((SSL *) handle,
+				  input_buffer, INPUT_BUFFER_SIZE);
+
+	    if (status <= 0) {
+		if (status == 0)
+		    return (char) EOF;
+		if (status == HT_INTERRUPTED) {
+		    CTRACE((tfp,
+			    "HTFormat: Interrupted in HTGetSSLCharacter\n"));
+		    interrupted_in_htgetcharacter = 1;
+		    return (char) EOF;
+		}
+		CTRACE((tfp, "HTFormat: SSL_read error %d\n", status));
+		return (char) EOF;	/* -1 is returned by UCX
+					   at end of HTTP link */
+	    }
+	    input_pointer = input_buffer;
+	    input_limit = input_buffer + status;
+	}
+	ch = *input_pointer++;
+    } while (ch == (char) 13);	/* Ignore ASCII carriage return */
+
+    return FROMASCII(ch);
+}
+#endif /* USE_SSL */
+
+/* Match maintype to any MIME type starting with maintype, for example: 
+ * image/gif should match image
+ */
+static int half_match(char *trial_type, char *target)
+{
+    char *cp = strchr(trial_type, '/');
+
+    /* if no '/' or no '*' */
+    if (!cp || *(cp + 1) != '*')
+	return 0;
+
+    CTRACE((tfp, "HTFormat: comparing %s and %s for half match\n",
+	    trial_type, target));
+
+    /* main type matches */
+    if (!StrNCmp(trial_type, target, ((cp - trial_type) - 1)))
+	return 1;
+
+    return 0;
+}
+
+/*
+ * Evaluate a deferred mailcap test command, i.e.,. one that substitutes the
+ * document's charset or other values in %{name} format.
+ */
+static BOOL failsMailcap(HTPresentation *pres, HTParentAnchor *anchor)
+{
+    if (pres->testcommand != 0) {
+	if (LYTestMailcapCommand(pres->testcommand,
+				 anchor->content_type_params) != 0)
+	    return TRUE;
+    }
+    return FALSE;
+}
+
+#define WWW_WILDCARD_REP_OUT HTAtom_for("*")
+
+/*		Look up a presentation
+ *		----------------------
+ *
+ *	If fill_in is NULL, only look for an exact match.
+ *	If a wildcard match is made, *fill_in is used to store
+ *	a possibly modified presentation, and a pointer to it is
+ *	returned.  For an exact match, a pointer to the presentation
+ *	in the HTPresentations list is returned.  Returns NULL if
+ *	nothing found. - kw
+ *
+ */
+static HTPresentation *HTFindPresentation(HTFormat rep_in,
+					  HTFormat rep_out,
+					  HTPresentation *fill_in,
+					  HTParentAnchor *anchor)
+{
+    HTAtom *wildcard = NULL;	/* = HTAtom_for("*"); lookup when needed - kw */
+    int n;
+    int i;
+    HTPresentation *pres;
+    HTPresentation *match;
+    HTPresentation *strong_wildcard_match = 0;
+    HTPresentation *weak_wildcard_match = 0;
+    HTPresentation *last_default_match = 0;
+    HTPresentation *strong_subtype_wildcard_match = 0;
+
+    CTRACE((tfp, "HTFormat: Looking up presentation for %s to %s\n",
+	    HTAtom_name(rep_in), HTAtom_name(rep_out)));
+
+    n = HTList_count(HTPresentations);
+    for (i = 0; i < n; i++) {
+	pres = (HTPresentation *) HTList_objectAt(HTPresentations, i);
+	if (pres->rep == rep_in) {
+	    if (pres->rep_out == rep_out) {
+		if (failsMailcap(pres, anchor))
+		    continue;
+		CTRACE((tfp, "FindPresentation: found exact match: %s -> %s\n",
+			HTAtom_name(pres->rep),
+			HTAtom_name(pres->rep_out)));
+		return pres;
+
+	    } else if (!fill_in) {
+		continue;
+	    } else {
+		if (!wildcard)
+		    wildcard = WWW_WILDCARD_REP_OUT;
+		if (pres->rep_out == wildcard) {
+		    if (failsMailcap(pres, anchor))
+			continue;
+		    if (!strong_wildcard_match)
+			strong_wildcard_match = pres;
+		    /* otherwise use the first one */
+		    CTRACE((tfp,
+			    "StreamStack: found strong wildcard match: %s -> %s\n",
+			    HTAtom_name(pres->rep),
+			    HTAtom_name(pres->rep_out)));
+		}
+	    }
+
+	} else if (!fill_in) {
+	    continue;
+
+	} else if (half_match(HTAtom_name(pres->rep),
+			      HTAtom_name(rep_in))) {
+	    if (pres->rep_out == rep_out) {
+		if (failsMailcap(pres, anchor))
+		    continue;
+		if (!strong_subtype_wildcard_match)
+		    strong_subtype_wildcard_match = pres;
+		/* otherwise use the first one */
+		CTRACE((tfp,
+			"StreamStack: found strong subtype wildcard match: %s -> %s\n",
+			HTAtom_name(pres->rep),
+			HTAtom_name(pres->rep_out)));
+	    }
+	}
+
+	if (pres->rep == WWW_SOURCE) {
+	    if (pres->rep_out == rep_out) {
+		if (failsMailcap(pres, anchor))
+		    continue;
+		if (!weak_wildcard_match)
+		    weak_wildcard_match = pres;
+		/* otherwise use the first one */
+		CTRACE((tfp,
+			"StreamStack: found weak wildcard match: %s\n",
+			HTAtom_name(pres->rep_out)));
+
+	    } else if (!last_default_match) {
+		if (!wildcard)
+		    wildcard = WWW_WILDCARD_REP_OUT;
+		if (pres->rep_out == wildcard) {
+		    if (failsMailcap(pres, anchor))
+			continue;
+		    last_default_match = pres;
+		    /* otherwise use the first one */
+		}
+	    }
+	}
+    }
+
+    match = (strong_subtype_wildcard_match
+	     ? strong_subtype_wildcard_match
+	     : (strong_wildcard_match
+		? strong_wildcard_match
+		: (weak_wildcard_match
+		   ? weak_wildcard_match
+		   : last_default_match)));
+
+    if (match) {
+	*fill_in = *match;	/* Specific instance */
+	fill_in->rep = rep_in;	/* yuk */
+	fill_in->rep_out = rep_out;	/* yuk */
+	return fill_in;
+    }
+
+    return NULL;
+}
+
+/*		Create a filter stack
+ *		---------------------
+ *
+ *	If a wildcard match is made, a temporary HTPresentation
+ *	structure is made to hold the destination format while the
+ *	new stack is generated. This is just to pass the out format to
+ *	MIME so far.  Storing the format of a stream in the stream might
+ *	be a lot neater.
+ *
+ */
+HTStream *HTStreamStack(HTFormat rep_in,
+			HTFormat rep_out,
+			HTStream *sink,
+			HTParentAnchor *anchor)
+{
+    HTPresentation temp;
+    HTPresentation *match;
+    HTStream *result;
+
+    CTRACE((tfp, "HTFormat: Constructing stream stack for %s to %s (%s)\n",
+	    HTAtom_name(rep_in),
+	    HTAtom_name(rep_out),
+	    NONNULL(anchor->content_type_params)));
+
+    /* don't return on WWW_SOURCE some people might like
+     * to make use of the source!!!!  LJM
+     */
+#if 0
+    if (rep_out == WWW_SOURCE || rep_out == rep_in)
+	return sink;		/*  LJM */
+#endif
+
+    if (rep_out == rep_in) {
+	result = sink;
+
+    } else if ((match = HTFindPresentation(rep_in, rep_out, &temp, anchor))) {
+	if (match == &temp) {
+	    CTRACE((tfp, "StreamStack: Using %s\n", HTAtom_name(temp.rep_out)));
+	} else {
+	    CTRACE((tfp, "StreamStack: found exact match: %s -> %s\n",
+		    HTAtom_name(match->rep),
+		    HTAtom_name(match->rep_out)));
+	}
+	result = (*match->converter) (match, anchor, sink);
+    } else {
+	result = NULL;
+    }
+    if (TRACE) {
+	if (result && result->isa && result->isa->name) {
+	    CTRACE((tfp, "StreamStack: Returning \"%s\"\n", result->isa->name));
+	} else if (result) {
+	    CTRACE((tfp, "StreamStack: Returning *unknown* stream!\n"));
+	} else {
+	    CTRACE((tfp, "StreamStack: Returning NULL!\n"));
+	    CTRACE_FLUSH(tfp);	/* a crash may be imminent... - kw */
+	}
+    }
+    return result;
+}
+
+/*		Put a presentation near start of list
+ *		-------------------------------------
+ *
+ *	Look up a presentation (exact match only) and, if found, reorder
+ *	it to the start of the HTPresentations list. - kw
+ */
+void HTReorderPresentation(HTFormat rep_in,
+			   HTFormat rep_out)
+{
+    HTPresentation *match;
+
+    if ((match = HTFindPresentation(rep_in, rep_out, NULL, NULL))) {
+	HTList_removeObject(HTPresentations, match);
+	HTList_addObject(HTPresentations, match);
+    }
+}
+
+/*
+ * Setup 'get_accept' flag to denote presentations that are not redundant,
+ * and will be listed in "Accept:" header.
+ */
+void HTFilterPresentations(void)
+{
+    int i, j;
+    int n = HTList_count(HTPresentations);
+    HTPresentation *p, *q;
+    BOOL matched;
+    char *s, *t;
+
+    CTRACE((tfp, "HTFilterPresentations (AcceptMedia %#x)\n", LYAcceptMedia));
+    for (i = 0; i < n; i++) {
+	p = (HTPresentation *) HTList_objectAt(HTPresentations, i);
+	s = HTAtom_name(p->rep);
+
+	p->get_accept = FALSE;
+	if ((LYAcceptMedia & p->accept_opt) != 0
+	    && p->rep_out == WWW_PRESENT
+	    && p->rep != WWW_SOURCE
+	    && strcasecomp(s, "www/mime")
+	    && strcasecomp(s, "www/compressed")
+	    && p->quality <= 1.0 && p->quality >= 0.0) {
+	    matched = TRUE;
+	    for (j = 0; j < i; j++) {
+		q = (HTPresentation *) HTList_objectAt(HTPresentations, j);
+		t = HTAtom_name(q->rep);
+
+		if (!strcasecomp(s, t)) {
+		    matched = FALSE;
+		    CTRACE((tfp, "  match %s %s\n", s, t));
+		    break;
+		}
+	    }
+	    p->get_accept = matched;
+	}
+    }
+}
+
+/*		Find the cost of a filter stack
+ *		-------------------------------
+ *
+ *	Must return the cost of the same stack which StreamStack would set up.
+ *
+ * On entry,
+ *	length	The size of the data to be converted
+ */
+float HTStackValue(HTFormat rep_in,
+		   HTFormat rep_out,
+		   double initial_value,
+		   long int length)
+{
+    HTAtom *wildcard = WWW_WILDCARD_REP_OUT;
+
+    CTRACE((tfp, "HTFormat: Evaluating stream stack for %s worth %.3f to %s\n",
+	    HTAtom_name(rep_in), initial_value, HTAtom_name(rep_out)));
+
+    if (rep_out == WWW_SOURCE || rep_out == rep_in)
+	return 0.0;
+
+    {
+	int n = HTList_count(HTPresentations);
+	int i;
+	HTPresentation *pres;
+
+	for (i = 0; i < n; i++) {
+	    pres = (HTPresentation *) HTList_objectAt(HTPresentations, i);
+	    if (pres->rep == rep_in &&
+		(pres->rep_out == rep_out || pres->rep_out == wildcard)) {
+		float value = (float) (initial_value * pres->quality);
+
+		if (HTMaxSecs > 0.0)
+		    value = (value
+			     - ((float) length * pres->secs_per_byte
+				+ pres->secs)
+			     / HTMaxSecs);
+		return value;
+	    }
+	}
+    }
+
+    return (float) -1e30;	/* Really bad */
+
+}
+
+/*	Display the page while transfer in progress
+ *	-------------------------------------------
+ *
+ *   Repaint the page only when necessary.
+ *   This is a traverse call for HText_pageDisplay() - it works!.
+ *
+ */
+void HTDisplayPartial(void)
+{
+#ifdef DISP_PARTIAL
+    if (display_partial) {
+	/*
+	 * HText_getNumOfLines() = "current" number of complete lines received
+	 * NumOfLines_partial = number of lines at the moment of last repaint. 
+	 * (we update NumOfLines_partial only when we repaint the display.)
+	 *
+	 * display_partial could only be enabled in HText_new() so a new
+	 * HTMainText object available - all HText_ functions use it, lines
+	 * counter HText_getNumOfLines() in particular.
+	 *
+	 * 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:
+	 */
+	int Newline_partial = LYGetNewline();
+
+	if (((Newline_partial + display_lines) - 1 > NumOfLines_partial)
+	/* current page not complete... */
+	    && (partial_threshold > 0 ?
+		((Newline_partial + partial_threshold) - 1 <=
+		 HText_getNumOfLines()) :
+		((Newline_partial + display_lines) - 1 <= HText_getNumOfLines()))
+	/*
+	 * Originally we rendered by increments of 2 lines,
+	 * but that got annoying on slow network connections.
+	 * Then we switched to full-pages.  Now it's configurable.
+	 * If partial_threshold <= 0, then it's a full page
+	 */
+	    ) {
+	    if (LYMainLoop_pageDisplay(Newline_partial))
+		NumOfLines_partial = HText_getNumOfLines();
+	}
+    }
+#else /* nothing */
+#endif /* DISP_PARTIAL */
+}
+
+/* Put this as early as possible, OK just after HTDisplayPartial() */
+void HTFinishDisplayPartial(void)
+{
+#ifdef DISP_PARTIAL
+    /*
+     * End of incremental rendering stage here.
+     */
+    display_partial = FALSE;
+#endif /* DISP_PARTIAL */
+}
+
+/*	Push data from a socket down a stream
+ *	-------------------------------------
+ *
+ *   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, i.e., containing
+ *   CRLF at the end of lines which need to be stripped to LF for unix
+ *   when the format is textual.
+ *
+ *  State of socket and target stream on entry:
+ *			socket (file_number) assumed open,
+ *			target (sink) assumed valid.
+ *
+ *  Return values:
+ *	HT_INTERRUPTED  Interruption or error after some data received.
+ *	-2		Unexpected disconnect before any data received.
+ *	-1		Interruption or error before any data received, or
+ *			(UNIX) other read error before any data received, or
+ *			download cancelled.
+ *	HT_LOADED	Normal close of socket (end of file indication
+ *			received), or
+ *			unexpected disconnect after some data received, or
+ *			other read error after some data received, or
+ *			(not UNIX) other read error before any data received.
+ *
+ *  State of socket and target stream on return depends on return value:
+ *	HT_INTERRUPTED	socket still open, target aborted.
+ *	-2		socket still open, target stream still valid.
+ *	-1		socket still open, target aborted.
+ *	otherwise	socket closed,	target stream still valid.
+ */
+int HTCopy(HTParentAnchor *anchor,
+	   int file_number,
+	   void *handle GCC_UNUSED,
+	   HTStream *sink)
+{
+    HTStreamClass targetClass;
+    BOOL suppress_readprogress = NO;
+    off_t bytes;
+    int rv = 0;
+
+    /*  Push the data down the stream
+     */
+    targetClass = *(sink->isa);	/* Copy pointers to procedures */
+
+    /*
+     * Push binary from socket down sink
+     *
+     * This operation could be put into a main event loop
+     */
+    HTReadProgress(bytes = 0, (off_t) 0);
+    for (;;) {
+	int status;
+
+	if (LYCancelDownload) {
+	    LYCancelDownload = FALSE;
+	    (*targetClass._abort) (sink, NULL);
+	    rv = -1;
+	    goto finished;
+	}
+
+	if (HTCheckForInterrupt()) {
+	    _HTProgress(TRANSFER_INTERRUPTED);
+	    (*targetClass._abort) (sink, NULL);
+	    if (bytes)
+		rv = HT_INTERRUPTED;
+	    else
+		rv = -1;
+	    goto finished;
+	}
+#ifdef USE_SSL
+	if (handle)
+	    status = SSL_read((SSL *) handle, input_buffer, INPUT_BUFFER_SIZE);
+	else
+	    status = NETREAD(file_number, input_buffer, INPUT_BUFFER_SIZE);
+#else
+	status = NETREAD(file_number, input_buffer, INPUT_BUFFER_SIZE);
+#endif /* USE_SSL */
+
+	if (status <= 0) {
+	    if (status == 0) {
+		break;
+	    } else if (status == HT_INTERRUPTED) {
+		_HTProgress(TRANSFER_INTERRUPTED);
+		(*targetClass._abort) (sink, NULL);
+		if (bytes)
+		    rv = HT_INTERRUPTED;
+		else
+		    rv = -1;
+		goto finished;
+	    } else if (SOCKET_ERRNO == ENOTCONN ||
+#ifdef _WINDOWS			/* 1997/11/10 (Mon) 16:57:18 */
+		       SOCKET_ERRNO == ETIMEDOUT ||
+#endif
+		       SOCKET_ERRNO == ECONNRESET ||
+		       SOCKET_ERRNO == EPIPE) {
+		/*
+		 * Arrrrgh, HTTP 0/1 compatibility problem, maybe.
+		 */
+		if (bytes <= 0) {
+		    /*
+		     * Don't have any data, so let the calling function decide
+		     * what to do about it.  - FM
+		     */
+		    rv = -2;
+		    goto finished;
+		} else {
+#ifdef UNIX
+		    /*
+		     * Treat what we've received already as the complete
+		     * transmission, but not without giving the user an alert. 
+		     * I don't know about all the different TCP stacks for VMS
+		     * etc., so this is currently only for UNIX.  - kw
+		     */
+		    HTInetStatus("NETREAD");
+		    HTAlert("Unexpected server disconnect.");
+		    CTRACE((tfp,
+			    "HTCopy: Unexpected server disconnect. Treating as completed.\n"));
+#else /* !UNIX */
+		    /*
+		     * Treat what we've gotten already as the complete
+		     * transmission.  - FM
+		     */
+		    CTRACE((tfp,
+			    "HTCopy: Unexpected server disconnect.  Treating as completed.\n"));
+		    status = 0;
+#endif /* UNIX */
+		}
+#ifdef UNIX
+	    } else {		/* status < 0 and other errno */
+		/*
+		 * Treat what we've received already as the complete
+		 * transmission, but not without giving the user an alert.  I
+		 * don't know about all the different TCP stacks for VMS etc.,
+		 * so this is currently only for UNIX.  - kw
+		 */
+		HTInetStatus("NETREAD");
+		HTAlert("Unexpected read error.");
+		if (bytes) {
+		    (void) NETCLOSE(file_number);
+		    rv = HT_LOADED;
+		} else {
+		    (*targetClass._abort) (sink, NULL);
+		    rv = -1;
+		}
+		goto finished;
+#endif
+	    }
+	    break;
+	}
+
+	/*
+	 * Suppress ReadProgress messages when collecting a redirection
+	 * message, at least initially (unless/until anchor->content_type gets
+	 * changed, probably by the MIME message parser).  That way messages
+	 * put up by the HTTP module or elsewhere can linger in the statusline
+	 * for a while.  - kw
+	 */
+	suppress_readprogress = (BOOL) (anchor && anchor->content_type &&
+					!strcmp(anchor->content_type,
+						"message/x-http-redirection"));
+#ifdef NOT_ASCII
+	{
+	    char *p;
+
+	    for (p = input_buffer; p < input_buffer + status; p++) {
+		*p = FROMASCII(*p);
+	    }
+	}
+#endif /* NOT_ASCII */
+
+	(*targetClass.put_block) (sink, input_buffer, status);
+	bytes += status;
+	if (!suppress_readprogress)
+	    HTReadProgress(bytes, (off_t) (anchor ? anchor->content_length : 0));
+	HTDisplayPartial();
+
+    }				/* next bufferload */
+
+    _HTProgress(TRANSFER_COMPLETE);
+    (void) NETCLOSE(file_number);
+    rv = HT_LOADED;
+
+  finished:
+    HTFinishDisplayPartial();
+    return (rv);
+}
+
+/*	Push data from a file pointer down a stream
+ *	-------------------------------------
+ *
+ *   This routine is responsible for creating and PRESENTING any
+ *   graphic (or other) objects described by the file.
+ *
+ *
+ *  State of file and target stream on entry:
+ *			FILE* (fp) assumed open,
+ *			target (sink) assumed valid.
+ *
+ *  Return values:
+ *	HT_INTERRUPTED  Interruption after some data read.
+ *	HT_PARTIAL_CONTENT	Error after some data read.
+ *	-1		Error before any data read.
+ *	HT_LOADED	Normal end of file indication on reading.
+ *
+ *  State of file and target stream on return:
+ *	always		fp still open, target stream still valid.
+ */
+int HTFileCopy(FILE *fp, HTStream *sink)
+{
+    HTStreamClass targetClass;
+    int status;
+    off_t bytes;
+    int rv = HT_OK;
+
+    /*  Push the data down the stream
+     */
+    targetClass = *(sink->isa);	/* Copy pointers to procedures */
+
+    /*  Push binary from socket down sink
+     */
+    HTReadProgress(bytes = 0, (off_t) 0);
+    for (;;) {
+	status = (int) fread(input_buffer,
+			     (size_t) 1,
+			     (size_t) INPUT_BUFFER_SIZE, fp);
+	if (status == 0) {	/* EOF or error */
+	    if (ferror(fp) == 0) {
+		rv = HT_LOADED;
+		break;
+	    }
+	    CTRACE((tfp, "HTFormat: Read error, read returns %d\n",
+		    ferror(fp)));
+	    if (bytes) {
+		rv = HT_PARTIAL_CONTENT;
+	    } else {
+		rv = -1;
+	    }
+	    break;
+	}
+
+	(*targetClass.put_block) (sink, input_buffer, status);
+	bytes += status;
+	HTReadProgress(bytes, (off_t) 0);
+	/* Suppress last screen update in partial mode - a regular update under
+	 * control of mainloop() should follow anyway.  - kw
+	 */
+#ifdef DISP_PARTIAL
+	if (display_partial && bytes != HTMainAnchor->content_length)
+	    HTDisplayPartial();
+#endif
+
+	if (HTCheckForInterrupt()) {
+	    _HTProgress(TRANSFER_INTERRUPTED);
+	    if (bytes) {
+		rv = HT_INTERRUPTED;
+	    } else {
+		rv = -1;
+	    }
+	    break;
+	}
+    }				/* next bufferload */
+
+    HTFinishDisplayPartial();
+    return rv;
+}
+
+#ifdef USE_SOURCE_CACHE
+/*	Push data from an HTChunk down a stream
+ *	---------------------------------------
+ *
+ *   This routine is responsible for creating and PRESENTING any
+ *   graphic (or other) objects described by the file.
+ *
+ *  State of memory and target stream on entry:
+ *			HTChunk* (chunk) and target (sink) assumed valid.
+ *
+ *  Return values:
+ *	HT_LOADED	All data sent.
+ *	HT_INTERRUPTED  Interruption after some data read.
+ *
+ *  State of memory and target stream on return:
+ *	always		chunk unchanged, target stream still valid.
+ */
+int HTMemCopy(HTChunk *chunk, HTStream *sink)
+{
+    HTStreamClass targetClass;
+    off_t bytes;
+    int rv = HT_OK;
+
+    targetClass = *(sink->isa);
+    HTReadProgress(bytes = 0, (off_t) 0);
+    for (; chunk != NULL; chunk = chunk->next) {
+
+	/* Push the data down the stream a piece at a time, in case we're
+	 * running a large document on a slow machine.
+	 */
+	(*targetClass.put_block) (sink, chunk->data, chunk->size);
+	bytes += chunk->size;
+
+	HTReadProgress(bytes, (off_t) 0);
+	HTDisplayPartial();
+
+	if (HTCheckForInterrupt()) {
+	    _HTProgress(TRANSFER_INTERRUPTED);
+	    if (bytes) {
+		rv = HT_INTERRUPTED;
+	    } else {
+		rv = -1;
+	    }
+	    break;
+	}
+    }
+
+    HTFinishDisplayPartial();
+    return rv;
+}
+#endif
+
+#ifdef USE_ZLIB
+/*	Push data from a gzip file pointer down a stream
+ *	-------------------------------------
+ *
+ *   This routine is responsible for creating and PRESENTING any
+ *   graphic (or other) objects described by the file.
+ *
+ *
+ *  State of file and target stream on entry:
+ *		      gzFile (gzfp) assumed open (should have gzipped content),
+ *		      target (sink) assumed valid.
+ *
+ *  Return values:
+ *	HT_INTERRUPTED  Interruption after some data read.
+ *	HT_PARTIAL_CONTENT	Error after some data read.
+ *	-1		Error before any data read.
+ *	HT_LOADED	Normal end of file indication on reading.
+ *
+ *  State of file and target stream on return:
+ *	always		gzfp still open, target stream still valid.
+ */
+static int HTGzFileCopy(gzFile gzfp, HTStream *sink)
+{
+    HTStreamClass targetClass;
+    int status;
+    off_t bytes;
+    int gzerrnum;
+    int rv = HT_OK;
+
+    /*  Push the data down the stream
+     */
+    targetClass = *(sink->isa);	/* Copy pointers to procedures */
+
+    /*  read and inflate gzip'd file, and push binary down sink
+     */
+    HTReadProgress(bytes = 0, (off_t) 0);
+    for (;;) {
+	status = gzread(gzfp, input_buffer, INPUT_BUFFER_SIZE);
+	if (status <= 0) {	/* EOF or error */
+	    if (status == 0) {
+		rv = HT_LOADED;
+		break;
+	    }
+	    CTRACE((tfp, "HTGzFileCopy: Read error, gzread returns %d\n",
+		    status));
+	    CTRACE((tfp, "gzerror   : %s\n",
+		    gzerror(gzfp, &gzerrnum)));
+	    if (TRACE) {
+		if (gzerrnum == Z_ERRNO)
+		    perror("gzerror   ");
+	    }
+	    if (bytes) {
+		rv = HT_PARTIAL_CONTENT;
+	    } else {
+		rv = -1;
+	    }
+	    break;
+	}
+
+	(*targetClass.put_block) (sink, input_buffer, status);
+	bytes += status;
+	HTReadProgress(bytes, (off_t) -1);
+	HTDisplayPartial();
+
+	if (HTCheckForInterrupt()) {
+	    _HTProgress(TRANSFER_INTERRUPTED);
+	    if (bytes) {
+		rv = HT_INTERRUPTED;
+	    } else {
+		rv = -1;
+	    }
+	    break;
+	}
+    }				/* next bufferload */
+
+    HTFinishDisplayPartial();
+    return rv;
+}
+
+#ifndef HAVE_ZERROR
+#define zError(s) LynxZError(s)
+static const char *zError(int status)
+{
+    static char result[80];
+
+    sprintf(result, "zlib error %d", status);
+    return result;
+}
+#endif
+
+/*	Push data from a deflate file pointer down a stream
+ *	-------------------------------------
+ *
+ *  This routine is responsible for creating and PRESENTING any
+ *  graphic (or other) objects described by the file.  The code is
+ *  loosely based on the inflate.c file from w3m.
+ *
+ *
+ *  State of file and target stream on entry:
+ *		      FILE (zzfp) assumed open (should have deflated content),
+ *		      target (sink) assumed valid.
+ *
+ *  Return values:
+ *	HT_INTERRUPTED  Interruption after some data read.
+ *	HT_PARTIAL_CONTENT	Error after some data read.
+ *	-1		Error before any data read.
+ *	HT_LOADED	Normal end of file indication on reading.
+ *
+ *  State of file and target stream on return:
+ *	always		zzfp still open, target stream still valid.
+ */
+static int HTZzFileCopy(FILE *zzfp, HTStream *sink)
+{
+    static char dummy_head[1 + 1] =
+    {
+	0x8 + 0x7 * 0x10,
+	(((0x8 + 0x7 * 0x10) * 0x100 + 30) / 31 * 31) & 0xFF,
+    };
+
+    z_stream s;
+    HTStreamClass targetClass;
+    off_t bytes;
+    int rv = HT_OK;
+    char output_buffer[INPUT_BUFFER_SIZE];
+    int status;
+    int flush;
+    int retry = 0;
+    int len = 0;
+
+    /*  Push the data down the stream
+     */
+    targetClass = *(sink->isa);	/* Copy pointers to procedures */
+
+    s.zalloc = Z_NULL;
+    s.zfree = Z_NULL;
+    s.opaque = Z_NULL;
+    status = inflateInit(&s);
+    if (status != Z_OK) {
+	CTRACE((tfp, "HTZzFileCopy inflateInit() %s\n", zError(status)));
+	exit_immediately(EXIT_FAILURE);
+    }
+    s.avail_in = 0;
+    s.next_out = (Bytef *) output_buffer;
+    s.avail_out = sizeof(output_buffer);
+    flush = Z_NO_FLUSH;
+
+    /*  read and inflate deflate'd file, and push binary down sink
+     */
+    HTReadProgress(bytes = 0, (off_t) 0);
+    for (;;) {
+	if (s.avail_in == 0) {
+	    s.next_in = (Bytef *) input_buffer;
+	    s.avail_in = (uInt) fread(input_buffer,
+				      (size_t) 1,
+				      (size_t) INPUT_BUFFER_SIZE, zzfp);
+	    len = (int) s.avail_in;
+	}
+	status = inflate(&s, flush);
+	if (status == Z_STREAM_END || status == Z_BUF_ERROR) {
+	    len = (int) sizeof(output_buffer) - (int) s.avail_out;
+	    if (len > 0) {
+		(*targetClass.put_block) (sink, output_buffer, len);
+		bytes += len;
+		HTReadProgress(bytes, (off_t) -1);
+		HTDisplayPartial();
+	    }
+	    rv = HT_LOADED;
+	    break;
+	} else if (status == Z_DATA_ERROR && !retry++) {
+	    status = inflateReset(&s);
+	    if (status != Z_OK) {
+		CTRACE((tfp, "HTZzFileCopy inflateReset() %s\n", zError(status)));
+		rv = bytes ? HT_PARTIAL_CONTENT : -1;
+		break;
+	    }
+	    s.next_in = (Bytef *) dummy_head;
+	    s.avail_in = sizeof(dummy_head);
+	    (void) inflate(&s, flush);
+	    s.next_in = (Bytef *) input_buffer;
+	    s.avail_in = (unsigned) len;
+	    continue;
+	} else if (status != Z_OK) {
+	    CTRACE((tfp, "HTZzFileCopy inflate() %s\n", zError(status)));
+	    rv = bytes ? HT_PARTIAL_CONTENT : -1;
+	    break;
+	} else if (s.avail_out == 0) {
+	    len = sizeof(output_buffer);
+	    s.next_out = (Bytef *) output_buffer;
+	    s.avail_out = sizeof(output_buffer);
+
+	    (*targetClass.put_block) (sink, output_buffer, len);
+	    bytes += len;
+	    HTReadProgress(bytes, (off_t) -1);
+	    HTDisplayPartial();
+
+	    if (HTCheckForInterrupt()) {
+		_HTProgress(TRANSFER_INTERRUPTED);
+		rv = bytes ? HT_INTERRUPTED : -1;
+		break;
+	    }
+	}
+	retry = 1;
+    }				/* next bufferload */
+
+    inflateEnd(&s);
+    HTFinishDisplayPartial();
+    return rv;
+}
+#endif /* USE_ZLIB */
+
+#ifdef USE_BZLIB
+/*	Push data from a bzip file pointer down a stream
+ *	-------------------------------------
+ *
+ *   This routine is responsible for creating and PRESENTING any
+ *   graphic (or other) objects described by the file.
+ *
+ *
+ *  State of file and target stream on entry:
+ *		      BZFILE (bzfp) assumed open (should have bzipped content),
+ *		      target (sink) assumed valid.
+ *
+ *  Return values:
+ *	HT_INTERRUPTED  Interruption after some data read.
+ *	HT_PARTIAL_CONTENT	Error after some data read.
+ *	-1		Error before any data read.
+ *	HT_LOADED	Normal end of file indication on reading.
+ *
+ *  State of file and target stream on return:
+ *	always		bzfp still open, target stream still valid.
+ */
+static int HTBzFileCopy(BZFILE * bzfp, HTStream *sink)
+{
+    HTStreamClass targetClass;
+    int status;
+    off_t bytes;
+    int bzerrnum;
+    int rv = HT_OK;
+
+    /*  Push the data down the stream
+     */
+    targetClass = *(sink->isa);	/* Copy pointers to procedures */
+
+    /*  read and inflate bzip'd file, and push binary down sink
+     */
+    HTReadProgress(bytes = 0, (off_t) 0);
+    for (;;) {
+	status = BZ2_bzread(bzfp, input_buffer, INPUT_BUFFER_SIZE);
+	if (status <= 0) {	/* EOF or error */
+	    if (status == 0) {
+		rv = HT_LOADED;
+		break;
+	    }
+	    CTRACE((tfp, "HTBzFileCopy: Read error, bzread returns %d\n",
+		    status));
+	    CTRACE((tfp, "bzerror   : %s\n",
+		    BZ2_bzerror(bzfp, &bzerrnum)));
+	    if (bytes) {
+		rv = HT_PARTIAL_CONTENT;
+	    } else {
+		rv = -1;
+	    }
+	    break;
+	}
+
+	(*targetClass.put_block) (sink, input_buffer, status);
+	bytes += status;
+	HTReadProgress(bytes, (off_t) -1);
+	HTDisplayPartial();
+
+	if (HTCheckForInterrupt()) {
+	    _HTProgress(TRANSFER_INTERRUPTED);
+	    if (bytes) {
+		rv = HT_INTERRUPTED;
+	    } else {
+		rv = -1;
+	    }
+	    break;
+	}
+    }				/* next bufferload */
+
+    HTFinishDisplayPartial();
+    return rv;
+}
+#endif /* USE_BZLIB */
+
+/*	Push data from a socket down a stream STRIPPING CR
+ *	--------------------------------------------------
+ *
+ *   This routine is responsible for creating and PRESENTING any
+ *   graphic (or other) objects described by the socket.
+ *
+ *   The file number given is assumed to be a TELNET stream ie containing
+ *   CRLF at the end of lines which need to be stripped to LF for unix
+ *   when the format is textual.
+ *
+ */
+void HTCopyNoCR(HTParentAnchor *anchor GCC_UNUSED,
+		int file_number,
+		HTStream *sink)
+{
+    HTStreamClass targetClass;
+    int character;
+
+    /*  Push the data, ignoring CRLF, down the stream
+     */
+    targetClass = *(sink->isa);	/* Copy pointers to procedures */
+
+    /*
+     * Push text from telnet socket down sink
+     *
+     * @@@@@ To push strings could be faster?  (especially is we cheat and
+     * don't ignore CR!  :-}
+     */
+    HTInitInput(file_number);
+    for (;;) {
+	character = HTGetCharacter();
+	if (character == EOF)
+	    break;
+	(*targetClass.put_character) (sink, (char) character);
+    }
+}
+
+/*	Parse a socket given format and file number
+ *
+ *   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
+ *   CRLF at the end of lines which need to be stripped to LF for unix
+ *   when the format is textual.
+ *
+ *  State of socket and target stream on entry:
+ *			socket (file_number) assumed open,
+ *			target (sink) usually NULL (will call stream stack).
+ *
+ *  Return values:
+ *	HT_INTERRUPTED  Interruption or error after some data received.
+ *	-501		Stream stack failed (cannot present or convert).
+ *	-2		Unexpected disconnect before any data received.
+ *	-1		Stream stack failed (cannot present or convert), or
+ *			Interruption or error before any data received, or
+ *			(UNIX) other read error before any data received, or
+ *			download cancelled.
+ *	HT_LOADED	Normal close of socket (end of file indication
+ *			received), or
+ *			unexpected disconnect after some data received, or
+ *			other read error after some data received, or
+ *			(not UNIX) other read error before any data received.
+ *
+ *  State of socket and target stream on return depends on return value:
+ *	HT_INTERRUPTED	socket still open, target aborted.
+ *	-501		socket still open, target stream NULL.
+ *	-2		socket still open, target freed.
+ *	-1		socket still open, target stream aborted or NULL.
+ *	otherwise	socket closed,	target stream freed.
+ */
+int HTParseSocket(HTFormat rep_in,
+		  HTFormat format_out,
+		  HTParentAnchor *anchor,
+		  int file_number,
+		  HTStream *sink)
+{
+    HTStream *stream;
+    HTStreamClass targetClass;
+    int rv;
+
+    stream = HTStreamStack(rep_in, format_out, sink, anchor);
+
+    if (!stream) {
+	char *buffer = 0;
+
+	if (LYCancelDownload) {
+	    LYCancelDownload = FALSE;
+	    return -1;
+	}
+	HTSprintf0(&buffer, CANNOT_CONVERT_I_TO_O,
+		   HTAtom_name(rep_in), HTAtom_name(format_out));
+	CTRACE((tfp, "HTFormat: %s\n", buffer));
+	rv = HTLoadError(sink, 501, buffer);	/* returns -501 */
+	FREE(buffer);
+    } else {
+	/*
+	 * Push the data, don't worry about CRLF we can strip them later.
+	 */
+	targetClass = *(stream->isa);	/* Copy pointers to procedures */
+	rv = HTCopy(anchor, file_number, NULL, stream);
+	if (rv != -1 && rv != HT_INTERRUPTED)
+	    (*targetClass._free) (stream);
+    }
+    return rv;
+    /* Originally:  full: HT_LOADED;  partial: HT_INTERRUPTED;  no bytes: -1 */
+}
+
+/*	Parse a file given format and file pointer
+ *
+ *   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
+ *   CRLF at the end of lines which need to be stripped to \n for unix
+ *   when the format is textual.
+ *
+ *  State of file and target stream on entry:
+ *			FILE* (fp) assumed open,
+ *			target (sink) usually NULL (will call stream stack).
+ *
+ *  Return values:
+ *	-501		Stream stack failed (cannot present or convert).
+ *	-1		Download cancelled.
+ *	HT_NO_DATA	Error before any data read.
+ *	HT_PARTIAL_CONTENT	Interruption or error after some data read.
+ *	HT_LOADED	Normal end of file indication on reading.
+ *
+ *  State of file and target stream on return:
+ *	always		fp still open; target freed, aborted, or NULL.
+ */
+int HTParseFile(HTFormat rep_in,
+		HTFormat format_out,
+		HTParentAnchor *anchor,
+		FILE *fp,
+		HTStream *sink)
+{
+    HTStream *stream;
+    HTStreamClass targetClass;
+    int rv;
+
+    if (fp == NULL)
+	return HT_LOADED;
+
+    stream = HTStreamStack(rep_in, format_out, sink, anchor);
+
+    if (!stream) {
+	char *buffer = 0;
+
+	if (LYCancelDownload) {
+	    LYCancelDownload = FALSE;
+	    return -1;
+	}
+	HTSprintf0(&buffer, CANNOT_CONVERT_I_TO_O,
+		   HTAtom_name(rep_in), HTAtom_name(format_out));
+	CTRACE((tfp, "HTFormat(in HTParseFile): %s\n", buffer));
+	rv = HTLoadError(sink, 501, buffer);
+	FREE(buffer);
+	return rv;
+    }
+
+    /*
+     * Push the data down the stream
+     *
+     * @@ Bug:  This decision ought to be made based on "encoding" rather than
+     * on content-type.  @@@ When we handle encoding.  The current method
+     * smells anyway.
+     */
+    targetClass = *(stream->isa);	/* Copy pointers to procedures */
+    rv = HTFileCopy(fp, stream);
+    if (rv == -1 || rv == HT_INTERRUPTED) {
+	(*targetClass._abort) (stream, NULL);
+    } else {
+	(*targetClass._free) (stream);
+    }
+
+    if (rv == -1)
+	return HT_NO_DATA;
+    else if (rv == HT_INTERRUPTED || (rv > 0 && rv != HT_LOADED))
+	return HT_PARTIAL_CONTENT;
+    else
+	return HT_LOADED;
+}
+
+#ifdef USE_SOURCE_CACHE
+/*	Parse a document in memory given format and memory block pointer
+ *
+ *   This routine is responsible for creating and PRESENTING any
+ *   graphic (or other) objects described by the file.
+ *
+ *  State of memory and target stream on entry:
+ *			HTChunk* (chunk) assumed valid,
+ *			target (sink) usually NULL (will call stream stack).
+ *
+ *  Return values:
+ *	-501		Stream stack failed (cannot present or convert).
+ *	HT_LOADED	All data sent.
+ *
+ *  State of memory and target stream on return:
+ *	always		chunk unchanged; target freed, aborted, or NULL.
+ */
+int HTParseMem(HTFormat rep_in,
+	       HTFormat format_out,
+	       HTParentAnchor *anchor,
+	       HTChunk *chunk,
+	       HTStream *sink)
+{
+    HTStream *stream;
+    HTStreamClass targetClass;
+    int rv;
+
+    stream = HTStreamStack(rep_in, format_out, sink, anchor);
+    if (!stream) {
+	char *buffer = 0;
+
+	HTSprintf0(&buffer, CANNOT_CONVERT_I_TO_O,
+		   HTAtom_name(rep_in), HTAtom_name(format_out));
+	CTRACE((tfp, "HTFormat(in HTParseMem): %s\n", buffer));
+	rv = HTLoadError(sink, 501, buffer);
+	FREE(buffer);
+	return rv;
+    }
+
+    /* Push the data down the stream
+     */
+    targetClass = *(stream->isa);
+    (void) HTMemCopy(chunk, stream);
+    (*targetClass._free) (stream);
+    return HT_LOADED;
+}
+#endif
+
+#ifdef USE_ZLIB
+static int HTCloseGzFile(gzFile gzfp)
+{
+    int gzres;
+
+    if (gzfp == NULL)
+	return 0;
+    gzres = gzclose(gzfp);
+    if (TRACE) {
+	if (gzres == Z_ERRNO) {
+	    perror("gzclose   ");
+	} else if (gzres != Z_OK) {
+	    CTRACE((tfp, "gzclose   : error number %d\n", gzres));
+	}
+    }
+    return (gzres);
+}
+
+/*	HTParseGzFile
+ *
+ *  State of file and target stream on entry:
+ *			gzFile (gzfp) assumed open,
+ *			target (sink) usually NULL (will call stream stack).
+ *
+ *  Return values:
+ *	-501		Stream stack failed (cannot present or convert).
+ *	-1		Download cancelled.
+ *	HT_NO_DATA	Error before any data read.
+ *	HT_PARTIAL_CONTENT	Interruption or error after some data read.
+ *	HT_LOADED	Normal end of file indication on reading.
+ *
+ *  State of file and target stream on return:
+ *	always		gzfp closed; target freed, aborted, or NULL.
+ */
+int HTParseGzFile(HTFormat rep_in,
+		  HTFormat format_out,
+		  HTParentAnchor *anchor,
+		  gzFile gzfp,
+		  HTStream *sink)
+{
+    HTStream *stream;
+    HTStreamClass targetClass;
+    int rv;
+
+    stream = HTStreamStack(rep_in, format_out, sink, anchor);
+
+    if (!stream) {
+	char *buffer = 0;
+
+	HTCloseGzFile(gzfp);
+	if (LYCancelDownload) {
+	    LYCancelDownload = FALSE;
+	    return -1;
+	}
+	HTSprintf0(&buffer, CANNOT_CONVERT_I_TO_O,
+		   HTAtom_name(rep_in), HTAtom_name(format_out));
+	CTRACE((tfp, "HTFormat(in HTParseGzFile): %s\n", buffer));
+	rv = HTLoadError(sink, 501, buffer);
+	FREE(buffer);
+	return rv;
+    }
+
+    /*
+     * Push the data down the stream
+     *
+     * @@ Bug:  This decision ought to be made based on "encoding" rather than
+     * on content-type.  @@@ When we handle encoding.  The current method
+     * smells anyway.
+     */
+    targetClass = *(stream->isa);	/* Copy pointers to procedures */
+    rv = HTGzFileCopy(gzfp, stream);
+    if (rv == -1 || rv == HT_INTERRUPTED) {
+	(*targetClass._abort) (stream, NULL);
+    } else {
+	(*targetClass._free) (stream);
+    }
+
+    HTCloseGzFile(gzfp);
+    if (rv == -1)
+	return HT_NO_DATA;
+    else if (rv == HT_INTERRUPTED || (rv > 0 && rv != HT_LOADED))
+	return HT_PARTIAL_CONTENT;
+    else
+	return HT_LOADED;
+}
+
+/*	HTParseZzFile
+ *
+ *  State of file and target stream on entry:
+ *			FILE (zzfp) assumed open,
+ *			target (sink) usually NULL (will call stream stack).
+ *
+ *  Return values:
+ *	-501		Stream stack failed (cannot present or convert).
+ *	-1		Download cancelled.
+ *	HT_NO_DATA	Error before any data read.
+ *	HT_PARTIAL_CONTENT	Interruption or error after some data read.
+ *	HT_LOADED	Normal end of file indication on reading.
+ *
+ *  State of file and target stream on return:
+ *	always		zzfp closed; target freed, aborted, or NULL.
+ */
+int HTParseZzFile(HTFormat rep_in,
+		  HTFormat format_out,
+		  HTParentAnchor *anchor,
+		  FILE *zzfp,
+		  HTStream *sink)
+{
+    HTStream *stream;
+    HTStreamClass targetClass;
+    int rv;
+
+    stream = HTStreamStack(rep_in, format_out, sink, anchor);
+
+    if (!stream) {
+	char *buffer = 0;
+
+	fclose(zzfp);
+	if (LYCancelDownload) {
+	    LYCancelDownload = FALSE;
+	    return -1;
+	}
+	HTSprintf0(&buffer, CANNOT_CONVERT_I_TO_O,
+		   HTAtom_name(rep_in), HTAtom_name(format_out));
+	CTRACE((tfp, "HTFormat(in HTParseGzFile): %s\n", buffer));
+	rv = HTLoadError(sink, 501, buffer);
+	FREE(buffer);
+	return rv;
+    }
+
+    /*
+     * Push the data down the stream
+     *
+     * @@ Bug:  This decision ought to be made based on "encoding" rather than
+     * on content-type.  @@@ When we handle encoding.  The current method
+     * smells anyway.
+     */
+    targetClass = *(stream->isa);	/* Copy pointers to procedures */
+    rv = HTZzFileCopy(zzfp, stream);
+    if (rv == -1 || rv == HT_INTERRUPTED) {
+	(*targetClass._abort) (stream, NULL);
+    } else {
+	(*targetClass._free) (stream);
+    }
+
+    fclose(zzfp);
+    if (rv == -1)
+	return HT_NO_DATA;
+    else if (rv == HT_INTERRUPTED || (rv > 0 && rv != HT_LOADED))
+	return HT_PARTIAL_CONTENT;
+    else
+	return HT_LOADED;
+}
+#endif /* USE_ZLIB */
+
+#ifdef USE_BZLIB
+static void HTCloseBzFile(BZFILE * bzfp)
+{
+    if (bzfp)
+	BZ2_bzclose(bzfp);
+}
+
+/*	HTParseBzFile
+ *
+ *  State of file and target stream on entry:
+ *			bzFile (bzfp) assumed open,
+ *			target (sink) usually NULL (will call stream stack).
+ *
+ *  Return values:
+ *	-501		Stream stack failed (cannot present or convert).
+ *	-1		Download cancelled.
+ *	HT_NO_DATA	Error before any data read.
+ *	HT_PARTIAL_CONTENT	Interruption or error after some data read.
+ *	HT_LOADED	Normal end of file indication on reading.
+ *
+ *  State of file and target stream on return:
+ *	always		bzfp closed; target freed, aborted, or NULL.
+ */
+int HTParseBzFile(HTFormat rep_in,
+		  HTFormat format_out,
+		  HTParentAnchor *anchor,
+		  BZFILE * bzfp,
+		  HTStream *sink)
+{
+    HTStream *stream;
+    HTStreamClass targetClass;
+    int rv;
+
+    stream = HTStreamStack(rep_in, format_out, sink, anchor);
+
+    if (!stream) {
+	char *buffer = 0;
+
+	HTCloseBzFile(bzfp);
+	if (LYCancelDownload) {
+	    LYCancelDownload = FALSE;
+	    return -1;
+	}
+	HTSprintf0(&buffer, CANNOT_CONVERT_I_TO_O,
+		   HTAtom_name(rep_in), HTAtom_name(format_out));
+	CTRACE((tfp, "HTFormat(in HTParseBzFile): %s\n", buffer));
+	rv = HTLoadError(sink, 501, buffer);
+	FREE(buffer);
+	return rv;
+    }
+
+    /*
+     * Push the data down the stream
+     *
+     * @@ Bug:  This decision ought to be made based on "encoding" rather than
+     * on content-type.  @@@ When we handle encoding.  The current method
+     * smells anyway.
+     */
+    targetClass = *(stream->isa);	/* Copy pointers to procedures */
+    rv = HTBzFileCopy(bzfp, stream);
+    if (rv == -1 || rv == HT_INTERRUPTED) {
+	(*targetClass._abort) (stream, NULL);
+    } else {
+	(*targetClass._free) (stream);
+    }
+
+    HTCloseBzFile(bzfp);
+    if (rv == -1)
+	return HT_NO_DATA;
+    else if (rv == HT_INTERRUPTED || (rv > 0 && rv != HT_LOADED))
+	return HT_PARTIAL_CONTENT;
+    else
+	return HT_LOADED;
+}
+#endif /* USE_BZLIB */
+
+/*	Converter stream: Network Telnet to internal character text
+ *	-----------------------------------------------------------
+ *
+ *	The input is assumed to be in ASCII, with lines delimited
+ *	by (13,10) pairs, These pairs are converted into (CR,LF)
+ *	pairs in the local representation.  The (CR,LF) sequence
+ *	when found is changed to a '\n' character, the internal
+ *	C representation of a new line.
+ */
+
+static void NetToText_put_character(HTStream *me, int net_char)
+{
+    char c = (char) FROMASCII(net_char);
+
+    if (me->had_cr) {
+	if (c == LF) {
+	    me->sink->isa->put_character(me->sink, '\n');	/* Newline */
+	    me->had_cr = NO;
+	    return;
+	} else {
+	    me->sink->isa->put_character(me->sink, CR);		/* leftover */
+	}
+    }
+    me->had_cr = (BOOL) (c == CR);
+    if (!me->had_cr)
+	me->sink->isa->put_character(me->sink, c);	/* normal */
+}
+
+static void NetToText_put_string(HTStream *me, const char *s)
+{
+    const char *p;
+
+    for (p = s; *p; p++)
+	NetToText_put_character(me, *p);
+}
+
+static void NetToText_put_block(HTStream *me, const char *s, int l)
+{
+    const char *p;
+
+    for (p = s; p < (s + l); p++)
+	NetToText_put_character(me, *p);
+}
+
+static void NetToText_free(HTStream *me)
+{
+    (me->sink->isa->_free) (me->sink);	/* Close rest of pipe */
+    FREE(me);
+}
+
+static void NetToText_abort(HTStream *me, HTError e)
+{
+    me->sink->isa->_abort(me->sink, e);		/* Abort rest of pipe */
+    FREE(me);
+}
+
+/*	The class structure
+*/
+static HTStreamClass NetToTextClass =
+{
+    "NetToText",
+    NetToText_free,
+    NetToText_abort,
+    NetToText_put_character,
+    NetToText_put_string,
+    NetToText_put_block
+};
+
+/*	The creation method
+*/
+HTStream *HTNetToText(HTStream *sink)
+{
+    HTStream *me = typecalloc(HTStream);
+
+    if (me == NULL)
+	outofmem(__FILE__, "NetToText");
+
+    assert(me != NULL);
+
+    me->isa = &NetToTextClass;
+
+    me->had_cr = NO;
+    me->sink = sink;
+    return me;
+}
+
+static HTStream HTBaseStreamInstance;	/* Made static */
+
+/*
+ *	ERROR STREAM
+ *	------------
+ *	There is only one error stream shared by anyone who wants a
+ *	generic error returned from all stream methods.
+ */
+static void HTErrorStream_put_character(HTStream *me GCC_UNUSED, int c GCC_UNUSED)
+{
+    LYCancelDownload = TRUE;
+}
+
+static void HTErrorStream_put_string(HTStream *me GCC_UNUSED, const char *s)
+{
+    if (s && *s)
+	LYCancelDownload = TRUE;
+}
+
+static void HTErrorStream_write(HTStream *me GCC_UNUSED, const char *s, int l)
+{
+    if (l && s)
+	LYCancelDownload = TRUE;
+}
+
+static void HTErrorStream_free(HTStream *me GCC_UNUSED)
+{
+    return;
+}
+
+static void HTErrorStream_abort(HTStream *me GCC_UNUSED, HTError e GCC_UNUSED)
+{
+    return;
+}
+
+static const HTStreamClass HTErrorStreamClass =
+{
+    "ErrorStream",
+    HTErrorStream_free,
+    HTErrorStream_abort,
+    HTErrorStream_put_character,
+    HTErrorStream_put_string,
+    HTErrorStream_write
+};
+
+HTStream *HTErrorStream(void)
+{
+    CTRACE((tfp, "ErrorStream. Created\n"));
+    HTBaseStreamInstance.isa = &HTErrorStreamClass;	/* The rest is random */
+    return &HTBaseStreamInstance;
+}
diff --git a/WWW/Library/Implementation/HTFormat.h b/WWW/Library/Implementation/HTFormat.h
new file mode 100644
index 00000000..1e82fd76
--- /dev/null
+++ b/WWW/Library/Implementation/HTFormat.h
@@ -0,0 +1,548 @@
+/*
+ * $LynxId: HTFormat.h,v 1.33 2010/10/27 00:13:53 tom Exp $
+ *
+ *                                            HTFormat: The format manager in the WWW Library
+ *                          MANAGE DIFFERENT DOCUMENT FORMATS
+ *
+ * Here we describe the functions of the HTFormat module which handles conversion between
+ * different data representations.  (In MIME parlance, a representation is known as a
+ * content-type.  In WWW the term "format" is often used as it is shorter).
+ *
+ * This module is implemented by HTFormat.c.  This hypertext document is used to generate
+ * the HTFormat.h include file.  Part of the WWW library.
+ */
+#ifndef HTFORMAT_H
+#define HTFORMAT_H
+
+#include <HTStream.h>
+#include <HTAtom.h>
+#include <HTList.h>
+#include <HTAnchor.h>
+
+#ifdef USE_SOURCE_CACHE
+#include <HTChunk.h>
+#endif
+
+#ifdef USE_BZLIB
+#include <bzlib.h>
+#endif
+
+#ifdef USE_ZLIB
+#include <zlib.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+
+   These macros (which used to be constants) define some basic internally
+   referenced representations.  The www/xxx ones are of course not MIME
+   standard.
+
+   www/source is an output format which leaves the input untouched.  It is
+   useful for diagnostics, and for users who want to see the original, whatever
+   it is.
+
+																	 */
+/* Internal ones */
+/* #define WWW_SOURCE HTAtom_for("www/source") */
+/* Whatever it was originally */
+    extern HTAtom *WWW_SOURCE;
+    /* calculated once, heavy used */
+
+/*
+
+   www/present represents the user's perception of the document.  If you
+   convert to www/present, you present the material to the user.
+
+ */
+#define WWW_PRESENT HTAtom_for("www/present")	/* The user's perception */
+
+#define WWW_DEBUG       HTAtom_for("www/debug")
+/*
+
+   WWW_DEBUG represents the user's perception of debug information, for example
+   sent as a HTML document in a HTTP redirection message.
+
+ */
+
+/*
+
+   The message/rfc822 format means a MIME message or a plain text message with
+   no MIME header.  This is what is returned by an HTTP server.
+
+ */
+#define WWW_MIME HTAtom_for("www/mime")		/* A MIME message */
+
+/*
+  For parsing only the header. - kw
+  */
+#define WWW_MIME_HEAD   HTAtom_for("message/x-rfc822-head")
+
+/*
+
+   www/print is like www/present except it represents a printed copy.
+
+ */
+#define WWW_PRINT HTAtom_for("www/print")	/* A printed copy */
+
+/*
+
+   www/unknown is a really unknown type.  Some default action is appropriate.
+
+ */
+#define WWW_UNKNOWN     HTAtom_for("www/unknown")
+
+#ifdef DIRED_SUPPORT
+/*
+   www/dired signals directory edit mode.
+*/
+#define WWW_DIRED      HTAtom_for("www/dired")
+#endif
+
+/*
+
+   These are regular MIME types.  HTML is assumed to be added by the W3 code. 
+   application/octet-stream was mistakenly application/binary in earlier libwww
+   versions (pre 2.11).
+
+ */
+#define WWW_PLAINTEXT   HTAtom_for("text/plain")
+#define WWW_POSTSCRIPT  HTAtom_for("application/postscript")
+#define WWW_RICHTEXT    HTAtom_for("application/rtf")
+#define WWW_AUDIO       HTAtom_for("audio/basic")
+#define WWW_HTML        HTAtom_for("text/html")
+#define WWW_BINARY      HTAtom_for("application/octet-stream")
+
+    typedef HTAtom *HTEncoding;
+
+/*
+ * The following are values for the MIME types:
+ */
+#define WWW_ENC_7BIT            HTAtom_for("7bit")
+#define WWW_ENC_8BIT            HTAtom_for("8bit")
+#define WWW_ENC_BINARY          HTAtom_for("binary")
+
+/*
+ * We also add
+ */
+#define WWW_ENC_COMPRESS        HTAtom_for("compress")
+
+/*
+ * Does a string designate a real encoding, or is it just
+ * a "dummy" as for example 7bit, 8bit, and binary?
+ */
+#define IsUnityEncStr(senc) \
+        ((senc)==NULL || *(senc)=='\0' || !strcmp(senc,"identity") ||\
+        !strcmp(senc,"8bit") || !strcmp(senc,"binary") || !strcmp(senc,"7bit"))
+
+#define IsUnityEnc(enc) \
+        ((enc)==NULL || (enc)==HTAtom_for("identity") ||\
+        (enc)==WWW_ENC_8BIT || (enc)==WWW_ENC_BINARY || (enc)==WWW_ENC_7BIT)
+
+/*
+
+The HTPresentation and HTConverter types
+
+   This HTPresentation structure represents a possible conversion algorithm
+   from one format to another.  It includes a pointer to a conversion routine. 
+   The conversion routine returns a stream to which data should be fed.  See
+   also HTStreamStack which scans the list of registered converters and calls
+   one.  See the initialisation module for a list of conversion routines.
+
+ */
+    typedef struct _HTPresentation HTPresentation;
+
+    typedef HTStream *HTConverter (HTPresentation *pres,
+				   HTParentAnchor *anchor,
+				   HTStream *sink);
+
+    struct _HTPresentation {
+	HTAtom *rep;		/* representation name atomized */
+	HTAtom *rep_out;	/* resulting representation */
+	HTConverter *converter;	/* routine to gen the stream stack */
+	char *command;		/* MIME-format command string */
+	char *testcommand;	/* MIME-format test string */
+	float quality;		/* Between 0 (bad) and 1 (good) */
+	float secs;
+	float secs_per_byte;
+	off_t maxbytes;
+	BOOL get_accept;	/* list in "Accept:" for GET */
+	int accept_opt;		/* matches against LYAcceptMedia */
+    };
+
+/*
+
+   The list of presentations is kept by this module.  It is also scanned by
+   modules which want to know the set of formats supported.  for example.
+
+ */
+    extern HTList *HTPresentations;
+
+/*
+
+   The default presentation is used when no other is appropriate
+
+ */
+    extern HTPresentation *default_presentation;
+
+/*
+ * Options used for "Accept:" string
+ */
+    typedef enum {
+	/* make the components powers of two so we can add them */
+	mediaINT = 1		/* internal types predefined in HTInit.c */
+	,mediaEXT = 2		/* external types predefined in HTInit.c */
+	,mediaCFG = 4		/* types, e.g., viewers, from lynx.cfg */
+	,mediaUSR = 8		/* user's mime-types, etc. */
+	,mediaSYS = 16		/* system's mime-types, etc. */
+	/* these are useful flavors for the options menu */
+	,mediaOpt1 = mediaINT
+	,mediaOpt2 = mediaINT + mediaCFG
+	,mediaOpt3 = mediaINT + mediaCFG + mediaUSR
+	,mediaOpt4 = mediaINT + mediaCFG + mediaUSR + mediaSYS
+	/* this is the flavor from pre-2.8.6 */
+	,mediaALL = mediaINT + mediaEXT + mediaCFG + mediaUSR + mediaSYS
+    } AcceptMedia;
+
+/*
+ * Options used for "Accept-Encoding:" string
+ */
+    typedef enum {
+	encodingNONE = 0
+	,encodingGZIP = 1
+	,encodingDEFLATE = 2
+	,encodingCOMPRESS = 4
+	,encodingBZIP2 = 8
+	,encodingALL = (encodingGZIP
+			+ encodingDEFLATE
+			+ encodingCOMPRESS
+			+ encodingBZIP2)
+    } AcceptEncoding;
+
+/*
+
+HTSetPresentation: Register a system command to present a format
+
+  ON ENTRY,
+
+  rep                     is the MIME - style format name
+
+  command                 is the MAILCAP - style command template
+
+  testcommand             is the MAILCAP - style testcommand template
+
+  quality                 A degradation faction 0..1.0
+
+  secs                    A limit on the time user will wait (0.0 for infinity)
+  secs_per_byte
+
+  maxbytes                A limit on the length acceptable as input (0 infinite)
+
+  media                   Used in filtering presentation types for "Accept:"
+
+ */
+    extern void HTSetPresentation(const char *representation,
+				  const char *command,
+				  const char *testcommand,
+				  double quality,
+				  double secs,
+				  double secs_per_byte,
+				  long int maxbytes,
+				  AcceptMedia media
+    );
+
+/*
+
+HTSetConversion:   Register a converstion routine
+
+  ON ENTRY,
+
+  rep_in                  is the content-type input
+
+  rep_out                 is the resulting content-type
+
+  converter               is the routine to make the stream to do it
+
+ */
+
+    extern void HTSetConversion(const char *rep_in,
+				const char *rep_out,
+				HTConverter *converter,
+				double quality,
+				double secs,
+				double secs_per_byte,
+				long int maxbytes,
+				AcceptMedia media
+    );
+
+/*
+
+HTStreamStack:   Create a stack of streams
+
+   This is the routine which actually sets up the conversion.  It currently
+   checks only for direct conversions, but multi-stage conversions are forseen. 
+   It takes a stream into which the output should be sent in the final format,
+   builds the conversion stack, and returns a stream into which the data in the
+   input format should be fed.  The anchor is passed because hypertxet objects
+   load information into the anchor object which represents them.
+
+ */
+    extern HTStream *HTStreamStack(HTFormat format_in,
+				   HTFormat format_out,
+				   HTStream *stream_out,
+				   HTParentAnchor *anchor);
+
+/*
+HTReorderPresentation: put presentation near head of list
+
+    Look up a presentation (exact match only) and, if found, reorder it to the
+    start of the HTPresentations list.  - kw
+    */
+
+    extern void HTReorderPresentation(HTFormat format_in,
+				      HTFormat format_out);
+
+/*
+ * Setup 'get_accept' flag to denote presentations that are not redundant,
+ * and will be listed in "Accept:" header.
+ */
+    extern void HTFilterPresentations(void);
+
+/*
+
+HTStackValue: Find the cost of a filter stack
+
+   Must return the cost of the same stack which HTStreamStack would set up.
+
+  ON ENTRY,
+
+  format_in               The fomat of the data to be converted
+
+  format_out              The format required
+
+  initial_value           The intrinsic "value" of the data before conversion on a scale
+                         from 0 to 1
+
+  length                  The number of bytes expected in the input format
+
+ */
+    extern float HTStackValue(HTFormat format_in,
+			      HTFormat rep_out,
+			      double initial_value,
+			      long int length);
+
+#define NO_VALUE_FOUND  -1e20	/* returned if none found */
+
+/*	Display the page while transfer in progress
+ *	-------------------------------------------
+ *
+ *   Repaint the page only when necessary.
+ *   This is a traverse call for HText_pageDispaly() - it works!.
+ *
+ */
+    extern void HTDisplayPartial(void);
+
+    extern void HTFinishDisplayPartial(void);
+
+/*
+
+HTCopy:  Copy a socket to a stream
+
+   This is used by the protocol engines to send data down a stream, typically
+   one which has been generated by HTStreamStack.
+
+ */
+    extern int HTCopy(HTParentAnchor *anchor,
+		      int file_number,
+		      void *handle,
+		      HTStream *sink);
+
+/*
+
+HTFileCopy:  Copy a file to a stream
+
+   This is used by the protocol engines to send data down a stream, typically
+   one which has been generated by HTStreamStack.  It is currently called by
+   HTParseFile
+
+ */
+    extern int HTFileCopy(FILE *fp,
+			  HTStream *sink);
+
+#ifdef USE_SOURCE_CACHE
+/*
+
+HTMemCopy:  Copy a memory chunk to a stream
+
+   This is used by the protocol engines to send data down a stream, typically
+   one which has been generated by HTStreamStack.  It is currently called by
+   HTParseMem
+
+ */
+    extern int HTMemCopy(HTChunk *chunk,
+			 HTStream *sink);
+#endif
+
+/*
+
+HTCopyNoCR: Copy a socket to a stream, stripping CR characters.
+
+   It is slower than HTCopy .
+
+ */
+
+    extern void HTCopyNoCR(HTParentAnchor *anchor,
+			   int file_number,
+			   HTStream *sink);
+
+/*
+
+Clear input buffer and set file number
+
+   This routine and the one below provide simple character input from sockets. 
+   (They are left over from the older architecture and may not be used very
+   much.) The existence of a common routine and buffer saves memory space in
+   small implementations.
+
+ */
+    extern void HTInitInput(int file_number);
+
+/*
+
+Get next character from buffer
+
+ */
+    extern int interrupted_in_htgetcharacter;
+    extern int HTGetCharacter(void);
+
+/*
+
+HTParseSocket: Parse a socket given its format
+
+   This routine is called by protocol modules to load an object.  uses
+   HTStreamStack and the copy routines above.  Returns HT_LOADED if successful,
+   <0 if not.
+
+ */
+    extern int HTParseSocket(HTFormat format_in,
+			     HTFormat format_out,
+			     HTParentAnchor *anchor,
+			     int file_number,
+			     HTStream *sink);
+
+/*
+
+HTParseFile: Parse a File through a file pointer
+
+   This routine is called by protocols modules to load an object.  uses
+   HTStreamStack and HTFileCopy.  Returns HT_LOADED if successful, can also
+   return HT_PARTIAL_CONTENT, HT_NO_DATA, or other <0 for failure.
+
+ */
+    extern int HTParseFile(HTFormat format_in,
+			   HTFormat format_out,
+			   HTParentAnchor *anchor,
+			   FILE *fp,
+			   HTStream *sink);
+
+#ifdef USE_SOURCE_CACHE
+/*
+
+HTParseMem: Parse a document in memory
+
+   This routine is called by protocols modules to load an object.  uses
+   HTStreamStack and HTMemCopy.  Returns HT_LOADED if successful, can also
+   return <0 for failure.
+
+ */
+    extern int HTParseMem(HTFormat format_in,
+			  HTFormat format_out,
+			  HTParentAnchor *anchor,
+			  HTChunk *chunk,
+			  HTStream *sink);
+#endif
+
+#ifdef USE_ZLIB
+/*
+HTParseGzFile: Parse a gzip'ed File through a file pointer
+
+   This routine is called by protocols modules to load an object.  uses
+   HTStreamStack and HTGzFileCopy.  Returns HT_LOADED if successful, can also
+   return HT_PARTIAL_CONTENT, HT_NO_DATA, or other <0 for failure.
+ */
+    extern int HTParseGzFile(HTFormat format_in,
+			     HTFormat format_out,
+			     HTParentAnchor *anchor,
+			     gzFile gzfp,
+			     HTStream *sink);
+
+/*
+HTParseZzFile: Parse a deflate'd File through a file pointer
+
+   This routine is called by protocols modules to load an object.  uses
+   HTStreamStack and HTZzFileCopy.  Returns HT_LOADED if successful, can also
+   return HT_PARTIAL_CONTENT, HT_NO_DATA, or other <0 for failure.
+ */
+    extern int HTParseZzFile(HTFormat format_in,
+			     HTFormat format_out,
+			     HTParentAnchor *anchor,
+			     FILE *zzfp,
+			     HTStream *sink);
+
+#endif				/* USE_ZLIB */
+
+#ifdef USE_BZLIB
+/*
+HTParseBzFile: Parse a bzip2'ed File through a file pointer
+
+   This routine is called by protocols modules to load an object.  uses
+   HTStreamStack and HTGzFileCopy.  Returns HT_LOADED if successful, can also
+   return HT_PARTIAL_CONTENT, HT_NO_DATA, or other <0 for failure.
+ */
+    extern int HTParseBzFile(HTFormat format_in,
+			     HTFormat format_out,
+			     HTParentAnchor *anchor,
+			     BZFILE * bzfp,
+			     HTStream *sink);
+
+#endif				/* USE_BZLIB */
+
+/*
+
+HTNetToText: Convert Net ASCII to local representation
+
+   This is a filter stream suitable for taking text from a socket and passing
+   it into a stream which expects text in the local C representation.  It does
+   ASCII and newline conversion.  As usual, pass its output stream to it when
+   creating it.
+
+ */
+    extern HTStream *HTNetToText(HTStream *sink);
+
+/*
+
+HTFormatInit: Set up default presentations and conversions
+
+   These are defined in HTInit.c or HTSInit.c if these have been replaced.  If
+   you don't call this routine, and you don't define any presentations, then
+   this routine will automatically be called the first time a conversion is
+   needed.  However, if you explicitly add some conversions (eg using
+   HTLoadRules) then you may want also to explicitly call this to get the
+   defaults as well.
+
+ */
+    extern void HTFormatInit(void);
+
+/*
+
+Epilogue
+
+ */
+    extern BOOL HTOutputSource;	/* Flag: shortcut parser */
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTFORMAT_H */
diff --git a/WWW/Library/Implementation/HTGopher.c b/WWW/Library/Implementation/HTGopher.c
new file mode 100644
index 00000000..885943e6
--- /dev/null
+++ b/WWW/Library/Implementation/HTGopher.c
@@ -0,0 +1,1973 @@
+/*
+ * $LynxId: HTGopher.c,v 1.55 2011/06/11 13:06:08 tom Exp $
+ *
+ *			GOPHER ACCESS				HTGopher.c
+ *			=============
+ *
+ *  History:
+ *	26 Sep 90	Adapted from other accesses (News, HTTP) TBL
+ *	29 Nov 91	Downgraded to C, for portable implementation.
+ *	10 Mar 96	Foteos Macrides (macrides@sci.wfbr.edu).  Added a
+ *			  form-based CSO/PH gateway.  Can be invoked via a
+ *			  "cso://host[:port]/" or "gopher://host:105/2"
+ *			  URL.	If a gopher URL is used with a query token
+ *			  ('?'), the old ISINDEX procedure will be used
+ *			  instead of the form-based gateway.
+ *	15 Mar 96	Foteos Macrides (macrides@sci.wfbr.edu).  Pass
+ *			  port 79, gtype 0 gopher URLs to the finger
+ *			  gateway.
+ */
+
+#define HTSTREAM_INTERNAL 1
+
+#include <HTUtils.h>		/* Coding convention macros */
+
+#ifndef DISABLE_GOPHER
+#include <HTAlert.h>
+#include <HTParse.h>
+#include <HTTCP.h>
+#include <HTFinger.h>
+
+/*
+ *  Implements.
+ */
+#include <HTGopher.h>
+
+#define GOPHER_PORT 70		/* See protocol spec */
+#define CSO_PORT 105		/* See protocol spec */
+#define BIG 1024		/* Bug */
+#define LINE_LENGTH 256		/* Bug */
+
+/*
+ *  Gopher entity types.
+ */
+#define GOPHER_TEXT		'0'
+#define GOPHER_MENU		'1'
+#define GOPHER_CSO		'2'
+#define GOPHER_ERROR		'3'
+#define GOPHER_MACBINHEX	'4'
+#define GOPHER_PCBINARY		'5'
+#define GOPHER_UUENCODED	'6'
+#define GOPHER_INDEX		'7'
+#define GOPHER_TELNET		'8'
+#define GOPHER_BINARY		'9'
+#define GOPHER_GIF		'g'
+#define GOPHER_HTML		'h'	/* HTML */
+#define GOPHER_CHTML		'H'	/* HTML */
+#define GOPHER_SOUND		's'
+#define GOPHER_WWW		'w'	/* W3 address */
+#define GOPHER_IMAGE		'I'
+#define GOPHER_TN3270		'T'
+#define GOPHER_INFO		'i'
+#define GOPHER_DUPLICATE	'+'
+#define GOPHER_PLUS_IMAGE	':'	/* Addition from Gopher Plus */
+#define GOPHER_PLUS_MOVIE	';'
+#define GOPHER_PLUS_SOUND	'<'
+#define GOPHER_PLUS_PDF		'P'
+
+#include <HTFormat.h>
+
+/*
+ *  Hypertext object building machinery.
+ */
+#include <HTML.h>
+
+#include <LYStrings.h>
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+#define PUTC(c) (*targetClass.put_character)(target, c)
+#define PUTS(s) (*targetClass.put_string)(target, s)
+#define START(e) (*targetClass.start_element)(target, e, 0, 0, -1, 0)
+#define END(e) (*targetClass.end_element)(target, e, 0)
+#define FREE_TARGET (*targetClass._free)(target)
+
+#define NEXT_CHAR HTGetCharacter()
+
+/*
+ *  Module-wide variables.
+ */
+static int s;			/* Socket for gopher or CSO host */
+
+struct _HTStructured {
+    const HTStructuredClass *isa;	/* For gopher streams */
+    /* ... */
+};
+
+static HTStructured *target;	/* the new gopher hypertext */
+static HTStructuredClass targetClass;	/* Its action routines */
+
+struct _HTStream {
+    HTStreamClass *isa;		/* For form-based CSO  gateway - FM */
+};
+
+typedef struct _CSOfield_info {	/* For form-based CSO gateway - FM */
+    struct _CSOfield_info *next;
+    char *name;
+    char *attributes;
+    char *description;
+    int id;
+    int lookup;
+    int indexed;
+    int url;
+    int max_size;
+    int defreturn;
+    int explicit_return;
+    int reserved;
+    int gpublic;
+    char name_buf[16];		/* Avoid malloc if we can */
+    char desc_buf[32];		/* Avoid malloc if we can */
+    char attr_buf[80];		/* Avoid malloc if we can */
+} CSOfield_info;
+
+static CSOfield_info *CSOfields = NULL;		/* For form-based CSO gateway - FM */
+
+typedef struct _CSOformgen_context {	/* For form-based CSO gateway - FM */
+    const char *host;
+    const char *seek;
+    CSOfield_info *fld;
+    int port;
+    int cur_line;
+    int cur_off;
+    int rep_line;
+    int rep_off;
+    int public_override;
+    int field_select;
+} CSOformgen_context;
+
+/*	Matrix of allowed characters in filenames
+ *	=========================================
+ */
+static BOOL acceptable[256];
+static BOOL acceptable_inited = NO;
+
+static void init_acceptable(void)
+{
+    unsigned int i;
+    const char *good =
+    "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789./-_$";
+
+    for (i = 0; i < 256; i++)
+	acceptable[i] = NO;
+    for (; *good; good++)
+	acceptable[(unsigned int) *good] = YES;
+    acceptable_inited = YES;
+}
+
+/*	Decode one hex character
+ *	========================
+ */
+static const char hex[17] = "0123456789abcdef";
+
+static char from_hex(int c)
+{
+    return (char) ((c >= '0') && (c <= '9') ? c - '0'
+		   : (c >= 'A') && (c <= 'F') ? c - 'A' + 10
+		   : (c >= 'a') && (c <= 'f') ? c - 'a' + 10
+		   : 0);
+}
+
+/*	Paste in an Anchor
+ *	==================
+ *
+ *	The title of the destination is set, as there is no way
+ *	of knowing what the title is when we arrive.
+ *
+ * On entry,
+ *	HT	is in append mode.
+ *	text	points to the text to be put into the file, 0 terminated.
+ *	addr	points to the hypertext refernce address 0 terminated.
+ */
+BOOLEAN HT_Is_Gopher_URL = FALSE;
+
+static void write_anchor(const char *text, const char *addr)
+{
+    BOOL present[HTML_A_ATTRIBUTES];
+    const char *value[HTML_A_ATTRIBUTES];
+
+    int i;
+
+    for (i = 0; i < HTML_A_ATTRIBUTES; i++)
+	present[i] = 0;
+    present[HTML_A_HREF] = YES;
+    ((const char **) value)[HTML_A_HREF] = addr;
+    present[HTML_A_TITLE] = YES;
+    ((const char **) value)[HTML_A_TITLE] = text;
+
+    CTRACE((tfp, "HTGopher: adding URL: %s\n", addr));
+
+    HT_Is_Gopher_URL = TRUE;	/* tell HTML.c that this is a Gopher URL */
+    (*targetClass.start_element) (target, HTML_A, present,
+				  (const char **) value, -1, 0);
+
+    PUTS(text);
+    END(HTML_A);
+}
+
+/*	Parse a Gopher Menu document
+ *	============================
+ */
+static void parse_menu(const char *arg GCC_UNUSED,
+		       HTParentAnchor *anAnchor)
+{
+    char gtype;
+    int ich;
+    char line[BIG];
+    char *name = NULL, *selector = NULL;	/* Gopher menu fields */
+    char *host = NULL;
+    char *port;
+    char *p = line;
+    const char *title;
+    int bytes = 0;
+    int BytesReported = 0;
+    char buffer[128];
+
+#define TAB		'\t'
+#define HEX_ESCAPE	'%'
+
+    START(HTML_HTML);
+    PUTC('\n');
+    START(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_TITLE);
+    if ((title = HTAnchor_title(anAnchor)))
+	PUTS(title);
+    else
+	PUTS(GOPHER_MENU_TITLE);
+    END(HTML_TITLE);
+    PUTC('\n');
+    END(HTML_HEAD);
+    PUTC('\n');
+
+    START(HTML_BODY);
+    PUTC('\n');
+    START(HTML_H1);
+    if ((title = HTAnchor_title(anAnchor)))
+	PUTS(title);
+    else
+	PUTS(GOPHER_MENU_TITLE);
+    END(HTML_H1);
+    PUTC('\n');
+    START(HTML_PRE);
+    PUTC('\n');			/* newline after HTML_PRE forces split-line */
+    while ((ich = NEXT_CHAR) != EOF) {
+
+	if (interrupted_in_htgetcharacter) {
+	    CTRACE((tfp,
+		    "HTGopher: Interrupted in HTGetCharacter, apparently.\n"));
+	    goto end_html;
+	}
+
+	if ((char) ich != LF) {
+	    *p = (char) ich;	/* Put character in line */
+	    if (p < &line[BIG - 1])
+		p++;
+
+	} else {
+	    *p++ = '\0';	/* Terminate line */
+	    bytes += (int) (p - line);	/* add size */
+	    p = line;		/* Scan it to parse it */
+	    port = 0;		/* Flag "not parsed" */
+	    CTRACE((tfp, "HTGopher: Menu item: %s\n", line));
+	    gtype = *p++;
+
+	    if (bytes > BytesReported + 1024) {
+		sprintf(buffer, TRANSFERRED_X_BYTES, bytes);
+		HTProgress(buffer);
+		BytesReported = bytes;
+	    }
+
+	    /* Break on line with a dot by itself */
+	    if ((gtype == '.') && ((*p == '\r') || (*p == 0)))
+		break;
+
+	    if (gtype && *p) {
+		name = p;
+		selector = strchr(name, TAB);
+		if (selector) {
+		    *selector++ = '\0';		/* Terminate name */
+		    /*
+		     * Gopher+ Type=0+ objects can be binary, and will
+		     * have 9 or 5 beginning their selector.  Make sure
+		     * we don't trash the terminal by treating them as
+		     * text. - FM
+		     */
+		    if (gtype == GOPHER_TEXT && (*selector == GOPHER_BINARY ||
+						 *selector == GOPHER_PCBINARY))
+			gtype = *selector;
+		    host = strchr(selector, TAB);
+		    if (host) {
+			*host++ = '\0';		/* Terminate selector */
+			port = strchr(host, TAB);
+			if (port) {
+			    char *junk;
+
+			    port[0] = ':';	/* delimit host a la W3 */
+			    junk = strchr(port, TAB);
+			    if (junk)
+				*junk = '\0';	/* Chop port */
+			    if ((port[1] == '0') && (!port[2]))
+				port[0] = '\0';		/* 0 means none */
+			}	/* no port */
+		    }		/* host ok */
+		}		/* selector ok */
+	    }
+	    /* gtype and name ok */
+	    /* Nameless files are a separator line */
+	    if (name != NULL && gtype == GOPHER_TEXT) {
+		int i = (int) strlen(name) - 1;
+
+		while (name[i] == ' ' && i >= 0)
+		    name[i--] = '\0';
+		if (i < 0)
+		    gtype = GOPHER_INFO;
+	    }
+
+	    if (gtype == GOPHER_WWW) {	/* Gopher pointer to W3 */
+		PUTS("(HTML) ");
+		write_anchor(name, selector);
+
+	    } else if (gtype == GOPHER_INFO) {
+		/* Information or separator line */
+		PUTS("       ");
+		PUTS(name);
+
+	    } else if (port) {	/* Other types need port */
+		char *address = 0;
+		const char *format = *selector ? "%s//%s@%s/" : "%s//%s/";
+
+		if (gtype == GOPHER_TELNET) {
+		    PUTS(" (TEL) ");
+		    HTSprintf0(&address, format, STR_TELNET_URL, selector, host);
+		} else if (gtype == GOPHER_TN3270) {
+		    PUTS("(3270) ");
+		    HTSprintf0(&address, format, STR_TN3270_URL, selector, host);
+		} else {	/* If parsed ok */
+		    char *r;
+
+		    switch (gtype) {
+		    case GOPHER_TEXT:
+			PUTS("(FILE) ");
+			break;
+		    case GOPHER_MENU:
+			PUTS(" (DIR) ");
+			break;
+		    case GOPHER_CSO:
+			PUTS(" (CSO) ");
+			break;
+		    case GOPHER_PCBINARY:
+			PUTS(" (BIN) ");
+			break;
+		    case GOPHER_UUENCODED:
+			PUTS(" (UUE) ");
+			break;
+		    case GOPHER_INDEX:
+			PUTS("  (?)  ");
+			break;
+		    case GOPHER_BINARY:
+			PUTS(" (BIN) ");
+			break;
+		    case GOPHER_GIF:
+		    case GOPHER_IMAGE:
+		    case GOPHER_PLUS_IMAGE:
+			PUTS(" (IMG) ");
+			break;
+		    case GOPHER_SOUND:
+		    case GOPHER_PLUS_SOUND:
+			PUTS(" (SND) ");
+			break;
+		    case GOPHER_MACBINHEX:
+			PUTS(" (HQX) ");
+			break;
+		    case GOPHER_HTML:
+		    case GOPHER_CHTML:
+			PUTS("(HTML) ");
+			break;
+		    case 'm':
+			PUTS("(MIME) ");
+			break;
+		    case GOPHER_PLUS_MOVIE:
+			PUTS(" (MOV) ");
+			break;
+		    case GOPHER_PLUS_PDF:
+			PUTS(" (PDF) ");
+			break;
+		    default:
+			PUTS("(UNKN) ");
+			break;
+		    }
+
+		    HTSprintf0(&address, "//%s/%c", host, gtype);
+
+		    for (r = selector; *r; r++) {	/* Encode selector string */
+			if (acceptable[UCH(*r)]) {
+			    HTSprintf(&address, "%c", *r);
+			} else {
+			    HTSprintf(&address, "%c%c%c",
+				      HEX_ESCAPE,	/* Means hex coming */
+				      hex[(TOASCII(*r)) >> 4],
+				      hex[(TOASCII(*r)) & 15]);
+			}
+		    }
+		}
+		/* Error response from Gopher doesn't deserve to
+		   be a hyperlink. */
+		if (strcmp(address, "gopher://error.host:1/0"))
+		    write_anchor(name, address);
+		else
+		    PUTS(name);
+		FREE(address);
+	    } else {		/* parse error */
+		CTRACE((tfp, "HTGopher: Bad menu item.\n"));
+		PUTS(line);
+
+	    }			/* parse error */
+
+	    PUTC('\n');
+	    p = line;		/* Start again at beginning of line */
+
+	}			/* if end of line */
+
+    }				/* Loop over characters */
+
+  end_html:
+    END(HTML_PRE);
+    PUTC('\n');
+    END(HTML_BODY);
+    PUTC('\n');
+    END(HTML_HTML);
+    PUTC('\n');
+    FREE_TARGET;
+
+    return;
+}
+
+/*	Parse a Gopher CSO document from an ISINDEX query.
+ *	==================================================
+ *
+ *   Accepts an open socket to a CSO server waiting to send us
+ *   data and puts it on the screen in a reasonable manner.
+ *
+ *   Perhaps this data can be automatically linked to some
+ *   other source as well???
+ *
+ *  Taken from hacking by Lou Montulli@ukanaix.cc.ukans.edu
+ *  on XMosaic-1.1, and put on libwww 2.11 by Arthur Secret,
+ *  secret@dxcern.cern.ch .
+ */
+static void parse_cso(const char *arg,
+		      HTParentAnchor *anAnchor)
+{
+    int ich;
+    char line[BIG];
+    char *p = line;
+    char *first_colon, *second_colon, last_char = '\0';
+    const char *title;
+
+    START(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_TITLE);
+    if ((title = HTAnchor_title(anAnchor)))
+	PUTS(title);
+    else
+	PUTS(GOPHER_CSO_SEARCH_RESULTS);
+    END(HTML_TITLE);
+    PUTC('\n');
+    END(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_H1);
+    if ((title = HTAnchor_title(anAnchor)))
+	PUTS(title);
+    else {
+	PUTS(arg);
+	PUTS(GOPHER_SEARCH_RESULTS);
+    }
+    END(HTML_H1);
+    PUTC('\n');
+    START(HTML_PRE);
+
+    /*
+     * Start grabbing chars from the network.
+     */
+    while ((ich = NEXT_CHAR) != EOF) {
+	if ((char) ich != LF) {
+	    *p = (char) ich;	/* Put character in line */
+	    if (p < &line[BIG - 1])
+		p++;
+	} else {
+	    *p = '\0';		/* Terminate line */
+	    p = line;		/* Scan it to parse it */
+	    /*
+	     * OK we now have a line in 'p'.  Lets parse it and print it.
+	     */
+
+	    /*
+	     * Break on line that begins with a 2.  It's the end of data.
+	     */
+	    if (*p == '2')
+		break;
+
+	    /*
+	     * Lines beginning with 5 are errors.  Print them and quit.
+	     */
+	    if (*p == '5') {
+		START(HTML_H2);
+		PUTS(p + 4);
+		END(HTML_H2);
+		break;
+	    }
+
+	    if (*p == '-') {
+		/*
+		 * Data lines look like -200:#:
+		 * where # is the search result number and can be multiple
+		 * digits (infinite?).
+		 * Find the second colon and check the digit to the left of it
+		 * to see if they are diferent.  If they are then a different
+		 * person is starting.  Make this line an <h2>.
+		 */
+
+		/*
+		 * Find the second_colon.
+		 */
+		second_colon = NULL;
+		first_colon = strchr(p, ':');
+		if (first_colon != NULL) {
+		    second_colon = strchr(first_colon + 1, ':');
+		}
+
+		if (second_colon != NULL) {	/* error check */
+
+		    if (*(second_colon - 1) != last_char)
+			/* print seperator */
+		    {
+			END(HTML_PRE);
+			START(HTML_H2);
+		    }
+
+		    /*
+		     * Right now the record appears with the alias (first line)
+		     * as the header and the rest as <pre> text.
+		     *
+		     * It might look better with the name as the header and the
+		     * rest as a <ul> with <li> tags.  I'm not sure whether the
+		     * name field comes in any special order or if its even
+		     * required in a record, so for now the first line is the
+		     * header no matter what it is (it's almost always the
+		     * alias).
+		     *
+		     * A <dl> with the first line as the <DT> and the rest as
+		     * some form of <DD> might good also?
+		     */
+
+		    /*
+		     * Print data.
+		     */
+		    PUTS(second_colon + 1);
+		    PUTC('\n');
+
+		    if (*(second_colon - 1) != last_char)
+			/* end seperator */
+		    {
+			END(HTML_H2);
+			START(HTML_PRE);
+		    }
+
+		    /*
+		     * Save the char before the second colon for comparison on
+		     * the next pass.
+		     */
+		    last_char = *(second_colon - 1);
+
+		}		/* end if second_colon */
+	    }			/* end if *p == '-' */
+	}			/* if end of line */
+
+    }				/* Loop over characters */
+
+    /* end the text block */
+    PUTC('\n');
+    END(HTML_PRE);
+    PUTC('\n');
+    FREE_TARGET;
+
+    return;			/* all done */
+}				/* end of procedure */
+
+/*	Display a Gopher CSO ISINDEX cover page.
+ *	========================================
+ */
+static void display_cso(const char *arg,
+			HTParentAnchor *anAnchor)
+{
+    const char *title;
+
+    START(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_TITLE);
+    if ((title = HTAnchor_title(anAnchor)))
+	PUTS(title);
+    else
+	PUTS(GOPHER_CSO_INDEX);
+    END(HTML_TITLE);
+    PUTC('\n');
+    START(HTML_ISINDEX);
+    PUTC('\n');
+    END(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_H1);
+    if ((title = HTAnchor_title(anAnchor)))
+	PUTS(title);
+    else {
+	PUTS(arg);
+	PUTS(INDEX_SEGMENT);
+    }
+    END(HTML_H1);
+    PUTS(GOPHER_CSO_INDEX_SUBTITLE);
+    START(HTML_P);
+    PUTS(GOPHER_CSO_SOLICIT_KEYWORDS);
+    START(HTML_P);
+    PUTS(SEGMENT_KEYWORDS_WILL);
+    PUTS(SEGMENT_PERSONS_DB_NAME);
+
+    if (!HTAnchor_title(anAnchor))
+	HTAnchor_setTitle(anAnchor, arg);
+
+    FREE_TARGET;
+    return;
+}
+
+/*	Display a Gopher Index document.
+ *	================================
+ */
+static void display_index(const char *arg,
+			  HTParentAnchor *anAnchor)
+{
+    const char *title;
+
+    START(HTML_HEAD);
+    PUTC('\n');
+    PUTC('\n');
+    START(HTML_TITLE);
+    if ((title = HTAnchor_title(anAnchor)))
+	PUTS(title);
+    else
+	PUTS(GOPHER_INDEX_TITLE);
+    END(HTML_TITLE);
+    PUTC('\n');
+    START(HTML_ISINDEX);
+    PUTC('\n');
+    END(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_H1);
+    if ((title = HTAnchor_title(anAnchor)))
+	PUTS(title);
+    else {
+	PUTS(arg);
+	PUTS(INDEX_SEGMENT);
+    }
+    END(HTML_H1);
+    PUTS(GOPHER_INDEX_SUBTITLE);
+    START(HTML_P);
+    PUTS(GOPHER_SOLICIT_KEYWORDS);
+
+    if (!HTAnchor_title(anAnchor))
+	HTAnchor_setTitle(anAnchor, arg);
+
+    FREE_TARGET;
+    return;
+}
+
+/*	De-escape a selector into a command.
+ *	====================================
+ *
+ *	The % hex escapes are converted. Otheriwse, the string is copied.
+ */
+static void de_escape(char *command, const char *selector)
+{
+    const char *p = selector;
+    char *q;
+
+    if (command == NULL)
+	outofmem(__FILE__, "HTLoadGopher");
+
+    assert(command != NULL);
+
+    q = command;
+    while (*p) {		/* Decode hex */
+	if (*p == HEX_ESCAPE) {
+	    char c;
+	    unsigned int b;
+
+	    p++;
+	    c = *p++;
+	    b = UCH(from_hex(c));
+	    c = *p++;
+	    if (!c)
+		break;		/* Odd number of chars! */
+	    *q++ = (char) FROMASCII((b << 4) + UCH(from_hex(c)));
+	} else {
+	    *q++ = *p++;	/* Record */
+	}
+    }
+    *q = '\0';			/* Terminate command */
+}
+
+/*	Free the CSOfields structures. - FM
+ *	===================================
+ */
+static void free_CSOfields(void)
+{
+    CSOfield_info *cur = CSOfields;
+    CSOfield_info *prev;
+
+    while (cur) {
+	if (cur->name != cur->name_buf)
+	    FREE(cur->name);
+	if (cur->attributes != cur->attr_buf)
+	    FREE(cur->attributes);
+	if (cur->description != cur->desc_buf)
+	    FREE(cur->description);
+	prev = cur;
+	cur = cur->next;
+	FREE(prev);
+    }
+
+    return;
+}
+
+/*	Interpret CSO/PH form template keys. - FM
+ *	=========================================
+ */
+static void interpret_cso_key(const char *key,
+			      char *buf,
+			      int *length,
+			      CSOformgen_context * ctx,
+			      HTStream *Target)
+{
+    CSOfield_info *fld;
+
+    if ((fld = ctx->fld) != 0) {
+	/*
+	 * Most substitutions only recognized inside of loops.
+	 */
+	int error = 0;
+
+	if (0 == StrNCmp(key, "$(FID)", 6)) {
+	    sprintf(buf, "%d", fld->id);
+	} else if (0 == StrNCmp(key, "$(FDESC)", 8)) {
+	    sprintf(buf, "%.2046s", fld->description);
+	} else if (0 == StrNCmp(key, "$(FDEF)", 7)) {
+	    strcpy(buf, fld->defreturn ? " checked" : "");
+	} else if (0 == StrNCmp(key, "$(FNDX)", 7)) {
+	    strcpy(buf, fld->indexed ? "*" : "");
+	} else if (0 == StrNCmp(key, "$(FSIZE)", 8)) {
+	    sprintf(buf, " size=%d maxlength=%d",
+		    fld->max_size > 55 ? 55 : fld->max_size,
+		    fld->max_size);
+	} else if (0 == StrNCmp(key, "$(FSIZE2)", 9)) {
+	    sprintf(buf, " maxlength=%d", fld->max_size);
+	} else {
+	    error = 1;
+	}
+	if (!error) {
+	    *length = (int) strlen(buf);
+	    return;
+	}
+    }
+    buf[0] = '\0';
+    if (0 == StrNCmp(key, "$(NEXTFLD)", 10)) {
+	if (!ctx->fld)
+	    fld = CSOfields;
+	else
+	    fld = ctx->fld->next;
+	switch (ctx->field_select) {
+	case 0:
+	    /*
+	     * 'Query' fields, public and lookup attributes.
+	     */
+	    for (; fld; fld = fld->next)
+		if (fld->gpublic && (fld->lookup == 1))
+		    break;
+	    break;
+	case 1:
+	    /*
+	     * 'Query' fields, accept lookup attribute.
+	     */
+	    for (; fld; fld = fld->next)
+		if (fld->lookup == 1)
+		    break;
+	    break;
+	case 2:
+	    /*
+	     * 'Return' fields, public only.
+	     */
+	    for (; fld; fld = fld->next)
+		if (fld->gpublic)
+		    break;
+	    break;
+	case 3:
+	    /*
+	     * All fields.
+	     */
+	    break;
+	}
+	if (fld) {
+	    ctx->cur_line = ctx->rep_line;
+	    ctx->cur_off = ctx->rep_off;
+	}
+	ctx->fld = fld;
+
+    } else if ((0 == StrNCmp(key, "$(QFIELDS)", 10)) ||
+	       (0 == StrNCmp(key, "$(RFIELDS)", 10))) {
+	/*
+	 * Begin iteration sequence.
+	 */
+	ctx->rep_line = ctx->cur_line;
+	ctx->rep_off = ctx->cur_off;
+	ctx->fld = (CSOfield_info *) 0;
+	ctx->seek = "$(NEXTFLD)";
+	ctx->field_select = (key[2] == 'Q') ? 0 : 2;
+	if (ctx->public_override)
+	    ctx->field_select++;
+
+    } else if (0 == StrNCmp(key, "$(NAMEFLD)", 10)) {
+	/*
+	 * Special, locate name field.  Flag lookup so QFIELDS will skip it.
+	 */
+	for (fld = CSOfields; fld; fld = fld->next)
+	    if (strcmp(fld->name, "name") == 0 ||
+		strcmp(fld->name, "Name") == 0) {
+		if (fld->lookup)
+		    fld->lookup = 2;
+		break;
+	    }
+	ctx->fld = fld;
+    } else if (0 == StrNCmp(key, "$(HOST)", 7)) {
+	strcpy(buf, ctx->host);
+    } else if (0 == StrNCmp(key, "$(PORT)", 7)) {
+	sprintf(buf, "%d", ctx->port);
+    } else {
+	/*
+	 * No match, dump key to buffer so client sees it for debugging.
+	 */
+	size_t out = 0;
+
+	while (*key && (*key != ')')) {
+	    buf[out++] = (*key++);
+	    if (out > sizeof(buf) - 2) {
+		buf[out] = '\0';
+		(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		out = 0;
+	    }
+	}
+	buf[out++] = ')';
+	buf[out] = '\0';
+    }
+    *length = (int) strlen(buf);
+    return;
+}
+
+/*	Parse the elements in a CSO/PH fields structure. - FM
+ *	=====================================================
+ */
+static int parse_cso_field_info(CSOfield_info *blk)
+{
+    char *info, *max_spec;
+
+    /*
+     * Initialize all fields to default values.
+     */
+    blk->indexed = blk->lookup = blk->reserved = blk->max_size = blk->url = 0;
+    blk->defreturn = blk->explicit_return = blk->gpublic = 0;
+
+    /*
+     * Search for keywords in info string and set values.  Attributes are
+     * converted to all lower-case for comparison.
+     */
+    info = blk->attributes;
+    LYLowerCase(info);
+    if (strstr(info, "indexed "))
+	blk->indexed = 1;
+    if (strstr(info, "default "))
+	blk->defreturn = 1;
+    if (strstr(info, "public "))
+	blk->gpublic = 1;
+    if (strstr(info, "lookup "))
+	blk->lookup = 1;
+    if (strstr(info, "url ")) {
+	blk->url = 1;
+	blk->defreturn = 1;
+    }
+    max_spec = strstr(info, "max ");
+    if (max_spec) {
+	sscanf(&max_spec[4], "%d", &blk->max_size);
+    } else {
+	blk->max_size = 32;
+    }
+
+    return 0;
+}
+
+/*	Parse a reply from a CSO/PH fields request. - FM
+ *	================================================
+ */
+static int parse_cso_fields(char *buf,
+			    size_t size)
+{
+    int ich;
+    char *p = buf;
+    int i, code = 0, prev_code;
+    size_t alen;
+    char *indx, *name;
+    CSOfield_info *last, *newf;
+
+    last = CSOfields = (CSOfield_info *) 0;
+    prev_code = -2555;
+    buf[0] = '\0';
+
+    /*
+     * Start grabbing chars from the network.
+     */
+    while ((ich = NEXT_CHAR) != EOF) {
+	if (interrupted_in_htgetcharacter) {
+	    CTRACE((tfp,
+		    "HTLoadCSO: Interrupted in HTGetCharacter, apparently.\n"));
+	    free_CSOfields();
+	    buf[0] = '\0';
+	    return HT_INTERRUPTED;
+	}
+
+	if ((char) ich != LF) {
+	    *p = (char) ich;	/* Put character in buffer */
+	    if (p < &buf[size - 1]) {
+		p++;
+	    }
+	} else {
+	    *p = '\0';		/* Terminate line */
+	    p = buf;		/* Scan it to parse it */
+
+	    /* OK we now have a line in 'p' lets parse it.
+	     */
+
+	    /*
+	     * Break on line that begins with a 2.  It's the end of data.
+	     */
+	    if (*p == '2')
+		break;
+
+	    /*
+	     * Lines beginning with 5 are errors.  Print them and quit.
+	     */
+	    if (*p == '5') {
+		strcpy(buf, p);
+		return 5;
+	    }
+
+	    if (*p == '-') {
+		/*
+		 * Data lines look like -200:#:
+		 * where # is the search result number and can be multiple
+		 * digits (infinite?).
+		 */
+
+		/*
+		 * Check status, ignore any non-success.
+		 */
+		if (p[1] != '2')
+		    continue;
+
+		/*
+		 * Parse fields within returned line into status, ndx, name,
+		 * data.
+		 */
+		indx = NULL;
+		name = NULL;
+		for (i = 0; p[i]; i++) {
+		    if (p[i] == ':') {
+			p[i] = '\0';
+			if (!indx) {
+			    indx = (char *) &p[i + 1];
+			    code = atoi(indx);
+			} else if (!name) {
+			    name = (char *) &p[i + 1];
+			} else {
+			    i++;
+			    break;
+			}
+		    }
+		}
+		/*
+		 * Add data to field structure.
+		 */
+		if (name) {
+		    if (code == prev_code) {
+			/*
+			 * Remaining data are description.  Save in current
+			 * info block.
+			 */
+			if (last != NULL) {
+			    alen = strlen((char *) &p[i]) + 1;
+			    if (alen > sizeof(last->desc_buf)) {
+				if (last->description != last->desc_buf)
+				    FREE(last->description);
+				if (!(last->description = (char *) malloc(alen))) {
+				    outofmem(__FILE__, "HTLoadCSO");
+				}
+			    }
+			    strcpy(last->description, (char *) &p[i]);
+			}
+		    } else {
+			/*
+			 * Initialize new block, append to end of list to
+			 * preserve order.
+			 */
+			newf = typecalloc(CSOfield_info);
+
+			if (!newf) {
+			    outofmem(__FILE__, "HTLoadCSO");
+			}
+
+			assert(newf != NULL);
+
+			if (last)
+			    last->next = newf;
+			else
+			    CSOfields = newf;
+			last = newf;
+
+			newf->next = (CSOfield_info *) 0;
+			newf->name = newf->name_buf;
+			alen = strlen(name) + 1;
+			if (alen > sizeof(newf->name_buf)) {
+			    if (!(newf->name = (char *) malloc(alen))) {
+				outofmem(__FILE__, "HTLoadCSO");
+			    }
+			}
+			strcpy(newf->name, name);
+
+			newf->attributes = newf->attr_buf;
+			alen = strlen((char *) &p[i]) + 2;
+			if (alen > sizeof(newf->attr_buf)) {
+			    if (!(newf->attributes = (char *) malloc(alen))) {
+				outofmem(__FILE__, "HTLoadCSO");
+			    }
+			}
+			strcpy(newf->attributes, (char *) &p[i]);
+			strcpy((char *) &newf->attributes[alen - 2], " ");
+			newf->description = newf->desc_buf;
+			newf->desc_buf[0] = '\0';
+			newf->id = atoi(indx);
+			/*
+			 * Scan for keywords.
+			 */
+			parse_cso_field_info(newf);
+		    }
+		    prev_code = code;
+		} else
+		    break;
+	    }			/* end if *p == '-' */
+	}			/* if end of line */
+
+    }				/* Loop over characters */
+
+    /* end the text block */
+
+    if (buf[0] == '\0') {
+	return -1;		/* no response */
+    }
+    buf[0] = '\0';
+    return 0;			/* all done */
+}				/* end of procedure */
+
+/*	Generate a form for submitting CSO/PH searches. - FM
+ *	====================================================
+ */
+static int generate_cso_form(char *host,
+			     int port,
+			     char *buf,
+			     HTStream *Target)
+{
+    int i, j, length;
+    size_t out;
+    int full_flag = 1;
+    const char *key;
+    const char *line;
+    CSOformgen_context ctx;
+    static const char *ctemplate[] =
+    {
+	"<HTML>\n<HEAD>\n<TITLE>CSO/PH Query Form for $(HOST)</TITLE>\n</HEAD>\n<BODY>",
+	"<H2><I>CSO/PH Query Form</I> for <EM>$(HOST)</EM></H2>",
+	"To search the database for a name, fill in one or more of the fields",
+	"in the form below and activate the 'Submit query' button.  At least",
+	"one of the entered fields must be flagged as indexed.",
+	"<HR><FORM method=\"POST\" action=\"cso://$(HOST)/\">",
+	"[ <input type=\"submit\" value=\"Submit query\"> | ",
+	"<input type=\"reset\" value=\"Clear fields\"> ]",
+	"<P><DL>",
+	"   <DT>Search parameters (* indicates indexed field):",
+	"   <DD>",
+	"$(NAMEFLD)    <DL COMPACT>\n    <DT><I>$(FDESC)</I>$(FNDX)",
+	"    <DD>Last: <input name=\"q_$(FID)\" type=\"text\" size=49$(FSIZE2)>",
+	"    <DD>First: <input name=\"q_$(FID)\" type=\"text\" size=48$(FSIZE2)>",
+	"$(QFIELDS)    <DT><I>$(FDESC)</I>$(FNDX)",
+	"    <DD><input name=\"q_$(FID)\" type=\"text\" $(FSIZE)>\n$(NEXTFLD)",
+	"    </DL>",
+	"   </DL>\n<P><DL>",
+	"   <DT>Output format:",
+	"   <DD>Returned data option: <select name=\"return\">",
+	"    <option>default<option selected>all<option>selected</select><BR>",
+	"$(RFIELDS)    <input type=\"checkbox\" name=\"r_$(FID)\"$(FDEF)> $(FDESC)<BR>",
+	"$(NEXTFLD)    ",
+	"   </DL></FORM><HR>\n</BODY>\n</HTML>",
+	(char *) 0
+    };
+
+    memset(&ctx, 0, sizeof(ctx));
+    ctx.host = host;
+    ctx.seek = (char *) 0;
+    ctx.port = port;
+    ctx.fld = (CSOfield_info *) 0;
+    ctx.public_override = full_flag;
+    /*
+     * Parse the strings in the template array to produce HTML document to send
+     * to client.  First line is skipped for 'full' lists.
+     */
+    out = 0;
+    buf[out] = '\0';
+    for (i = full_flag ? /***1***/ 0 : 0;
+	 ctemplate[i];
+	 i++) {
+	/*
+	 * Search the current string for substitution, flagged by $(
+	 */
+	for (line = ctemplate[i], j = 0; line[j]; j++) {
+	    if ((line[j] == '$') && (line[j + 1] == '(')) {
+		/*
+		 * Command detected, flush output buffer and find closing ')'
+		 * that delimits the command.
+		 */
+		buf[out] = '\0';
+		if (out > 0)
+		    (*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		for (key = &line[j]; line[j + 1] && (line[j] != ')'); j++) {
+		    ;
+		}
+		/*
+		 * Save context, interpet command and restore updated context.
+		 */
+		ctx.cur_line = i;
+		ctx.cur_off = j;
+		interpret_cso_key(key, buf, &length, &ctx, Target);
+		i = ctx.cur_line;
+		j = ctx.cur_off;
+		line = ctemplate[i];
+		out = (size_t) length;
+
+		if (ctx.seek) {
+		    /*
+		     * Command wants us to skip (forward) to indicated token. 
+		     * Start at current position.
+		     */
+		    size_t slen = strlen(ctx.seek);
+
+		    for (; ctemplate[i]; i++) {
+			for (line = ctemplate[i]; line[j]; j++) {
+			    if (line[j] == '$')
+				if (0 == StrNCmp(ctx.seek, &line[j], slen)) {
+				    if (j == 0)
+					j = (int) strlen(ctemplate[--i]) - 1;
+				    else
+					--j;
+				    line = ctemplate[i];
+				    ctx.seek = (char *) 0;
+				    break;
+				}
+			}
+			if (!ctx.seek)
+			    break;
+			j = 0;
+		    }
+		    if (ctx.seek) {
+			char *temp = 0;
+
+			HTSprintf0(&temp, GOPHER_CSO_SEEK_FAILED, ctx.seek);
+			(*Target->isa->put_block) (Target, temp, (int) strlen(temp));
+			FREE(temp);
+		    }
+		}
+	    } else {
+		/*
+		 * Non-command text, add to output buffer.
+		 */
+		buf[out++] = line[j];
+		if (out > (sizeof(buf) - 3)) {
+		    buf[out] = '\0';
+		    (*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		    out = 0;
+		}
+	    }
+	}
+	buf[out++] = '\n';
+	buf[out] = '\0';
+    }
+    if (out > 0)
+	(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+
+    return 0;
+}
+
+/*	Generate a results report for CSO/PH form-based searches. - FM
+ *	==============================================================
+ */
+static int generate_cso_report(HTStream *Target)
+{
+    int ich;
+    char line[BIG];
+    char *buf = 0;
+    char *p = line, *href = NULL;
+    int len, i, prev_ndx, ndx;
+    char *rcode, *ndx_str, *fname, *fvalue, *l;
+    CSOfield_info *fld;
+    BOOL stop = FALSE;
+
+    /*
+     * Read lines until non-negative status.
+     */
+    prev_ndx = -100;
+    /*
+     * Start grabbing chars from the network.
+     */
+    while (!stop && (ich = NEXT_CHAR) != EOF) {
+	if (interrupted_in_htgetcharacter) {
+	    CTRACE((tfp,
+		    "HTLoadCSO: Interrupted in HTGetCharacter, apparently.\n"));
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	    goto end_CSOreport;
+	}
+
+	if ((char) ich != LF) {
+	    *p = (char) ich;	/* Put character in line */
+	    if (p < &line[BIG - 1]) {
+		p++;
+	    }
+	} else {
+	    *p = '\0';		/* Terminate line */
+	    /*
+	     * OK we now have a line.  Load it as 'p' and parse it.
+	     */
+	    p = line;
+	    if (p[0] != '-' && p[0] != '1') {
+		stop = TRUE;
+	    }
+	    rcode = (p[0] == '-') ? &p[1] : p;
+	    ndx_str = fname = NULL;
+	    len = (int) strlen(p);
+	    for (i = 0; i < len; i++) {
+		if (p[i] == ':') {
+		    p[i] = '\0';
+		    if (!ndx_str) {
+			fname = ndx_str = &p[i + 1];
+		    } else {
+			fname = &p[i + 1];
+			break;
+		    }
+		}
+	    }
+	    if (ndx_str) {
+		ndx = atoi(ndx_str);
+		if (prev_ndx != ndx) {
+		    if (prev_ndx != -100) {
+			HTSprintf0(&buf, "</DL></DL>\n");
+			(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		    }
+		    if (ndx == 0) {
+			HTSprintf0(&buf,
+				   "<HR><DL><DT>Information/status<DD><DL><DT>\n");
+			(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		    } else {
+			HTSprintf0(&buf,
+				   "<HR><DL><DT>Entry %d:<DD><DL COMPACT><DT>\n", ndx);
+			(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		    }
+		    prev_ndx = ndx;
+		}
+	    } else {
+		HTSprintf0(&buf, "<DD>%s\n", rcode);
+		(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		continue;
+	    }
+	    if ((*rcode >= '2') && (*rcode <= '5') && (fname != ndx_str)) {
+		while (*fname == ' ') {
+		    fname++;	/* trim leading spaces */
+		}
+		for (fvalue = fname; *fvalue; fvalue++) {
+		    if (*fvalue == ':') {
+			*fvalue++ = '\0';
+			i = (int) strlen(fname) - 1;
+			while (i >= 0 && fname[i] == ' ') {
+			    fname[i--] = '\0';	/* trim trailing */
+			}
+			break;
+		    }
+		}
+		if (fvalue) {
+		    while (*fvalue == ' ') {
+			fvalue++;	/* trim leading spaces */
+		    }
+		}
+		if (*fname) {
+		    for (fld = CSOfields; fld; fld = fld->next) {
+			if (!strcmp(fld->name, fname)) {
+			    if (fld->description) {
+				fname = fld->description;
+			    }
+			    break;
+			}
+		    }
+		    if (fld && fld->url) {
+			HTSprintf0(&buf,
+				   "<DT><I>%s</I><DD><A HREF=\"%s\">%s</A>\n",
+				   fname, fvalue, fvalue);
+			(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		    } else {
+			HTSprintf0(&buf, "<DT><I>%s</I><DD>", fname);
+			(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+			buf[0] = '\0';
+			l = fvalue;
+			while (*l) {
+			    if (*l == '<') {
+				StrAllocCat(buf, "&lt;");
+				l++;
+			    } else if (*l == '>') {
+				StrAllocCat(buf, "&gt;");
+				l++;
+			    } else if (StrNCmp(l, STR_NEWS_URL, LEN_NEWS_URL) &&
+				       StrNCmp(l, "snews://", 8) &&
+				       StrNCmp(l, "nntp://", 7) &&
+				       StrNCmp(l, "snewspost:", 10) &&
+				       StrNCmp(l, "snewsreply:", 11) &&
+				       StrNCmp(l, "newspost:", 9) &&
+				       StrNCmp(l, "newsreply:", 10) &&
+				       StrNCmp(l, "ftp://", 6) &&
+				       StrNCmp(l, "file:/", 6) &&
+				       StrNCmp(l, "finger://", 9) &&
+				       StrNCmp(l, "http://", 7) &&
+				       StrNCmp(l, "https://", 8) &&
+				       StrNCmp(l, "wais://", 7) &&
+				       StrNCmp(l, STR_MAILTO_URL,
+					       LEN_MAILTO_URL) &&
+				       StrNCmp(l, "cso://", 6) &&
+				       StrNCmp(l, "gopher://", 9)) {
+				HTSprintf(&buf, "%c", *l++);
+			    } else {
+				StrAllocCat(buf, "<a href=\"");
+				StrAllocCopy(href, l);
+				StrAllocCat(buf, strtok(href, " \r\n\t,>)\""));
+				StrAllocCat(buf, "\">");
+				while (*l && !strchr(" \r\n\t,>)\"", *l)) {
+				    HTSprintf(&buf, "%c", *l++);
+				}
+				StrAllocCat(buf, "</a>");
+				FREE(href);
+			    }
+			}
+			StrAllocCat(buf, "\n");
+			(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		    }
+		} else {
+		    HTSprintf0(&buf, "<DD>");
+		    (*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		    buf[0] = '\0';
+		    l = fvalue;
+		    while (*l) {
+			if (*l == '<') {
+			    StrAllocCat(buf, "&lt;");
+			    l++;
+			} else if (*l == '>') {
+			    StrAllocCat(buf, "&gt;");
+			    l++;
+			} else if (StrNCmp(l, STR_NEWS_URL, LEN_NEWS_URL) &&
+				   StrNCmp(l, "snews://", 8) &&
+				   StrNCmp(l, "nntp://", 7) &&
+				   StrNCmp(l, "snewspost:", 10) &&
+				   StrNCmp(l, "snewsreply:", 11) &&
+				   StrNCmp(l, "newspost:", 9) &&
+				   StrNCmp(l, "newsreply:", 10) &&
+				   StrNCmp(l, "ftp://", 6) &&
+				   StrNCmp(l, "file:/", 6) &&
+				   StrNCmp(l, "finger://", 9) &&
+				   StrNCmp(l, "http://", 7) &&
+				   StrNCmp(l, "https://", 8) &&
+				   StrNCmp(l, "wais://", 7) &&
+				   StrNCmp(l, STR_MAILTO_URL, LEN_MAILTO_URL) &&
+				   StrNCmp(l, "cso://", 6) &&
+				   StrNCmp(l, "gopher://", 9)) {
+			    HTSprintf(&buf, "%c", *l++);
+			} else {
+			    StrAllocCat(buf, "<a href=\"");
+			    StrAllocCopy(href, l);
+			    StrAllocCat(buf, strtok(href, " \r\n\t,>)\""));
+			    StrAllocCat(buf, "\">");
+			    while (*l && !strchr(" \r\n\t,>)\"", *l)) {
+				HTSprintf(&buf, "%c", *l++);
+			    }
+			    StrAllocCat(buf, "</a>");
+			    FREE(href);
+			}
+		    }
+		    StrAllocCat(buf, "\n");
+		    (*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+		}
+	    } else {
+		HTSprintf0(&buf, "<DD>%s\n", fname ? fname : rcode);
+		(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+	    }
+	}
+    }
+  end_CSOreport:
+    if (prev_ndx != -100) {
+	HTSprintf0(&buf, "</DL></DL>\n");
+	(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+    }
+    FREE(buf);
+    return 0;
+}
+
+/*	CSO/PH form-based search gateway - FM			HTLoadCSO
+ *	=====================================
+ */
+static int HTLoadCSO(const char *arg,
+		     HTParentAnchor *anAnchor,
+		     HTFormat format_out,
+		     HTStream *sink)
+{
+    static const char end_form[] = "</BODY>\n</HTML>\n";
+    char *host, *cp, *data;
+    int port = CSO_PORT;
+    int status;			/* tcp return */
+    bstring *command = NULL;
+    bstring *content = NULL;
+    int len, i, j, start, finish, flen, ndx;
+    int return_type, has_indexed;
+    CSOfield_info *fld;
+    char buf[2048];
+    HTFormat format_in = WWW_HTML;
+    HTStream *Target = NULL;
+
+    if (!acceptable_inited)
+	init_acceptable();
+
+    if (!arg)
+	return -3;		/* Bad if no name sepcified     */
+    if (!*arg)
+	return -2;		/* Bad if name had zero length  */
+    CTRACE((tfp, "HTLoadCSO: Looking for %s\n", arg));
+
+    /*
+     * Set up a socket to the server for the data.
+     */
+    status = HTDoConnect(arg, "cso", CSO_PORT, &s);
+    if (status == HT_INTERRUPTED) {
+	/*
+	 * Interrupt cleanly.
+	 */
+	CTRACE((tfp,
+		"HTLoadCSO: Interrupted on connect; recovering cleanly.\n"));
+	_HTProgress(CONNECTION_INTERRUPTED);
+	return HT_NOT_LOADED;
+    }
+    if (status < 0) {
+	CTRACE((tfp, "HTLoadCSO: Unable to connect to remote host for `%s'.\n",
+		arg));
+	return HTInetStatus("connect");
+    }
+
+    HTInitInput(s);		/* Set up input buffering */
+
+    HTBprintf(&command, "fields%c%c", CR, LF);
+    if (TRACE) {
+	CTRACE((tfp, "HTLoadCSO: Connected, writing command `"));
+	trace_bstring(command);
+	CTRACE((tfp, "' to socket %d\n", s));
+    }
+    _HTProgress(GOPHER_SENDING_CSO_REQUEST);
+    status = (int) NETWRITE(s, BStrData(command), BStrLen(command));
+    BStrFree(command);
+    if (status < 0) {
+	CTRACE((tfp, "HTLoadCSO: Unable to send command.\n"));
+	return HTInetStatus("send");
+    }
+    _HTProgress(GOPHER_SENT_CSO_REQUEST);
+
+    /*
+     * Now read the data from the socket.
+     */
+    status = parse_cso_fields(buf, sizeof(buf));
+    if (status) {
+	NETCLOSE(s);
+	if (status == HT_INTERRUPTED) {
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	} else if (buf[0] != '\0') {
+	    HTAlert(buf);
+	} else {
+	    HTAlert(FAILED_NO_RESPONSE);
+	}
+	return HT_NOT_LOADED;
+    }
+    Target = HTStreamStack(format_in,
+			   format_out,
+			   sink, anAnchor);
+    if (!Target || Target == NULL) {
+	char *temp = 0;
+
+	HTSprintf0(&temp, CANNOT_CONVERT_I_TO_O,
+		   HTAtom_name(format_in), HTAtom_name(format_out));
+	HTAlert(temp);
+	FREE(temp);
+	NETCLOSE(s);
+	return HT_NOT_LOADED;
+    }
+    host = HTParse(arg, "", PARSE_HOST);
+    if ((cp = HTParsePort(host, &port)) != NULL) {
+	if (port == CSO_PORT) {
+	    *cp = '\0';
+	}
+    }
+    anAnchor->safe = TRUE;
+    if (isBEmpty(anAnchor->post_data)) {
+	generate_cso_form(host, port, buf, Target);
+	(*Target->isa->_free) (Target);
+	FREE(host);
+	NETCLOSE(s);
+	free_CSOfields();
+	return HT_LOADED;
+    }
+
+    HTBprintf(&command,
+	      "<HTML>\n<HEAD>\n<TITLE>CSO/PH Results on %s</TITLE>\n</HEAD>\n<BODY>\n",
+	      host);
+    (*Target->isa->put_block) (Target, BStrData(command), BStrLen(command));
+    BStrFree(command);
+    FREE(host);
+
+    BStrCopy(content, anAnchor->post_data);
+    assert(content != NULL);
+
+    if (BStrData(content)[BStrLen(content) - 1] != '&')
+	BStrCat0(content, "&");
+
+    data = BStrData(content);
+    len = BStrLen(content);
+    for (i = 0; i < len; i++) {
+	if (data[i] == '+') {
+	    data[i] = ' ';
+	}
+    }
+
+    data = BStrData(content);
+    HTUnEscape(data);		/* FIXME: could it have embedded null? */
+    len = BStrLen(content);
+
+    return_type = 0;
+    has_indexed = 0;
+    start = 0;
+    for (i = 0; i < len; i++) {
+	if (!data[i] || data[i] == '&') {
+	    /*
+	     * Value parsed.  Unescape characters and look for first '=' to
+	     * delimit field name from value.
+	     */
+	    flen = i - start;
+	    finish = start + flen;
+	    data[finish] = '\0';
+	    for (j = start; j < finish; j++) {
+		if (data[j] == '=') {
+		    /*
+		     * data[start..j-1] is field name,
+		     * [j+1..finish-1] is value.
+		     */
+		    if ((data[start + 1] == '_') &&
+			((data[start] == 'r') || (data[start] == 'q'))) {
+			/*
+			 * Decode fields number and lookup field info.
+			 */
+			sscanf(&data[start + 2], "%d=", &ndx);
+			for (fld = CSOfields; fld; fld = fld->next) {
+			    if (ndx == fld->id) {
+				if ((j + 1) >= finish)
+				    break;	/* ignore nulls */
+				if (data[start] == 'q') {
+				    /*
+				     * Append field to query line.
+				     */
+				    if (fld->lookup) {
+					if (fld->indexed)
+					    has_indexed = 1;
+					if (isBEmpty(command)) {
+					    BStrCopy0(command, "query ");
+					} else {
+					    BStrCat0(command, " ");
+					}
+					HTBprintf(&command, "%s=\"%s\"",
+						  fld->name, &data[j + 1]);
+				    } else {
+					strcpy(buf,
+					       "Warning: non-lookup field ignored<BR>\n");
+					(*Target->isa->put_block) (Target,
+								   buf,
+								   (int)
+								   strlen(buf));
+				    }
+				} else if (data[start] == 'r') {
+				    fld->explicit_return = 1;
+				}
+				break;
+			    }
+			}
+		    } else if (!StrNCmp(&data[start], "return=", 7)) {
+			if (!strcmp(&data[start + 7], "all")) {
+			    return_type = 1;
+			} else if (!strcmp(&data[start + 7], "selected")) {
+			    return_type = 2;
+			}
+		    }
+		}
+	    }
+	    start = i + 1;
+	}
+    }
+    BStrFree(content);
+    if (isBEmpty(command) || !has_indexed) {
+	NETCLOSE(s);
+	strcpy(buf,
+	       "<EM>Error:</EM> At least one indexed field value must be specified!\n");
+	(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+	strcpy(buf, "</BODY>\n</HTML>\n");
+	(*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+	(*Target->isa->_free) (Target);
+	free_CSOfields();
+	return HT_LOADED;
+    }
+    /*
+     * Append return fields.
+     */
+    if (return_type == 1) {
+	BStrCat0(command, " return all");
+    } else if (return_type == 2) {
+	BStrCat0(command, " return");
+	for (fld = CSOfields; fld; fld = fld->next) {
+	    if (fld->explicit_return) {
+		HTBprintf(&command, " %s", fld->name);
+	    }
+	}
+    }
+    HTBprintf(&command, "%c%c", CR, LF);
+    strcpy(buf, "<H2>\n<EM>CSO/PH command:</EM> ");
+    (*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+    (*Target->isa->put_block) (Target, BStrData(command), BStrLen(command));
+    strcpy(buf, "</H2>\n");
+    (*Target->isa->put_block) (Target, buf, (int) strlen(buf));
+    if (TRACE) {
+	CTRACE((tfp, "HTLoadCSO: Writing command `"));
+	trace_bstring(command);
+	CTRACE((tfp, "' to socket %d\n", s));
+    }
+    status = (int) NETWRITE(s, BStrData(command), BStrLen(command));
+    BStrFree(command);
+    if (status < 0) {
+	CTRACE((tfp, "HTLoadCSO: Unable to send command.\n"));
+	free_CSOfields();
+	return HTInetStatus("send");
+    }
+    generate_cso_report(Target);
+    NETCLOSE(s);
+    (*Target->isa->put_block) (Target, end_form, (int) sizeof(end_form) - 1);
+    (*Target->isa->_free) (Target);
+    FREE(host);
+    free_CSOfields();
+    return HT_LOADED;
+}
+
+/*	Load by name.						HTLoadGopher
+ *	=============
+ *
+ *  Bug:  No decoding of strange data types as yet.
+ *
+ */
+static int HTLoadGopher(const char *arg,
+			HTParentAnchor *anAnchor,
+			HTFormat format_out,
+			HTStream *sink)
+{
+    char *command;		/* The whole command */
+    int status;			/* tcp return */
+    char gtype;			/* Gopher Node type */
+    char *selector;		/* Selector string */
+
+    if (!acceptable_inited)
+	init_acceptable();
+
+    if (!arg)
+	return -3;		/* Bad if no name sepcified     */
+    if (!*arg)
+	return -2;		/* Bad if name had zero length  */
+    CTRACE((tfp, "HTGopher: Looking for %s\n", arg));
+
+    /*
+     * If it's a port 105 GOPHER_CSO gtype with no ISINDEX token ('?'), use the
+     * form-based CSO gateway (otherwise, return an ISINDEX cover page or do
+     * the ISINDEX search).  - FM
+     */
+    {
+	size_t len;
+
+	if ((len = strlen(arg)) > 5) {
+	    if (0 == strcmp((const char *) &arg[len - 6], ":105/2")) {
+		/* Use CSO gateway. */
+		CTRACE((tfp, "HTGopher: Passing to CSO/PH gateway.\n"));
+		return HTLoadCSO(arg, anAnchor, format_out, sink);
+	    }
+	}
+    }
+
+    /*
+     * If it's a port 79/0[/...] URL, use the finger gateway.  - FM
+     */
+    if (strstr(arg, ":79/0") != NULL) {
+#ifndef DISABLE_FINGER
+	CTRACE((tfp, "HTGopher: Passing to finger gateway.\n"));
+	return HTLoadFinger(arg, anAnchor, format_out, sink);
+#else /* finger is disabled */
+	HTAlert(COULD_NOT_ACCESS_DOCUMENT);
+	return HT_NOT_LOADED;
+#endif /* DISABLE_FINGER */
+    }
+
+    /*
+     * Get entity type, and selector string.
+     */
+    {
+	char *p1 = HTParse(arg, "", PARSE_PATH | PARSE_PUNCTUATION);
+
+	gtype = '1';		/* Default = menu */
+	selector = p1;
+	if ((*selector++ == '/') && (*selector)) {	/* Skip first slash */
+	    gtype = *selector++;	/* Pick up gtype */
+	}
+	if (gtype == GOPHER_INDEX) {
+	    char *query;
+
+	    /*
+	     * Search is allowed.
+	     */
+	    HTAnchor_setIndex(anAnchor, anAnchor->address);
+	    query = strchr(selector, '?');	/* Look for search string */
+	    if (!query || !query[1]) {	/* No search required */
+		target = HTML_new(anAnchor, format_out, sink);
+		targetClass = *target->isa;
+		display_index(arg, anAnchor);	/* Display "cover page" */
+		return HT_LOADED;	/* Local function only */
+	    }
+	    *query++ = '\0';	/* Skip '?'     */
+	    command =
+		(char *) malloc(strlen(selector) + 1 + strlen(query) + 2 + 1);
+	    if (command == NULL)
+		outofmem(__FILE__, "HTLoadGopher");
+
+	    assert(command != NULL);
+
+	    de_escape(command, selector);	/* Bug fix TBL 921208 */
+
+	    strcat(command, "\t");
+
+	    {			/* Remove plus signs 921006 */
+		char *p;
+
+		for (p = query; *p; p++) {
+		    if (*p == '+')
+			*p = ' ';
+		}
+	    }
+
+	    de_escape(&command[strlen(command)], query);	/* bug fix LJM 940415 */
+	} else if (gtype == GOPHER_CSO) {
+	    char *query;
+
+	    /*
+	     * Search is allowed.
+	     */
+	    query = strchr(selector, '?');	/* Look for search string */
+	    if (!query || !query[1]) {	/* No search required */
+		target = HTML_new(anAnchor, format_out, sink);
+		targetClass = *target->isa;
+		display_cso(arg, anAnchor);	/* Display "cover page" */
+		return HT_LOADED;	/* Local function only */
+	    }
+	    HTAnchor_setIndex(anAnchor, anAnchor->address);
+	    *query++ = '\0';	/* Skip '?'     */
+	    command = (char *) malloc(strlen("query") + 1 +
+				      strlen(query) + 2 + 1);
+	    if (command == NULL)
+		outofmem(__FILE__, "HTLoadGopher");
+
+	    assert(command != NULL);
+
+	    de_escape(command, selector);	/* Bug fix TBL 921208 */
+
+	    strcpy(command, "query ");
+
+	    {			/* Remove plus signs 921006 */
+		char *p;
+
+		for (p = query; *p; p++) {
+		    if (*p == '+')
+			*p = ' ';
+		}
+	    }
+	    de_escape(&command[strlen(command)], query);	/* bug fix LJM 940415 */
+
+	} else {		/* Not index */
+	    command = (char *) malloc(strlen(selector) + 2 + 1);
+	    if (command == NULL)
+		outofmem(__FILE__, "HTLoadGopher");
+
+	    assert(command != NULL);
+
+	    de_escape(command, selector);
+	}
+	FREE(p1);
+    }
+
+    {
+	char *p = command + strlen(command);
+
+	*p++ = CR;		/* Macros to be correct on Mac */
+	*p++ = LF;
+	*p = '\0';
+    }
+
+    /*
+     * Set up a socket to the server for the data.
+     */
+    status = HTDoConnect(arg, "gopher", GOPHER_PORT, &s);
+    if (status == HT_INTERRUPTED) {
+	/*
+	 * Interrupt cleanly.
+	 */
+	CTRACE((tfp, "HTGopher: Interrupted on connect; recovering cleanly.\n"));
+	_HTProgress(CONNECTION_INTERRUPTED);
+	FREE(command);
+	return HT_NOT_LOADED;
+    }
+    if (status < 0) {
+	CTRACE((tfp, "HTGopher: Unable to connect to remote host for `%s'.\n",
+		arg));
+	FREE(command);
+	return HTInetStatus("connect");
+    }
+
+    HTInitInput(s);		/* Set up input buffering */
+
+    CTRACE((tfp, "HTGopher: Connected, writing command `%s' to socket %d\n",
+	    command, s));
+
+#ifdef NOT_ASCII
+    {
+	char *p;
+
+	for (p = command; *p; p++) {
+	    *p = TOASCII(*p);
+	}
+    }
+#endif
+
+    _HTProgress(GOPHER_SENDING_REQUEST);
+
+    status = (int) NETWRITE(s, command, (int) strlen(command));
+    FREE(command);
+    if (status < 0) {
+	CTRACE((tfp, "HTGopher: Unable to send command.\n"));
+	return HTInetStatus("send");
+    }
+
+    _HTProgress(GOPHER_SENT_REQUEST);
+
+    /*
+     * Now read the data from the socket.
+     */
+    switch (gtype) {
+
+    case GOPHER_TEXT:
+	HTParseSocket(WWW_PLAINTEXT, format_out, anAnchor, s, sink);
+	break;
+
+    case GOPHER_HTML:
+    case GOPHER_CHTML:
+	HTParseSocket(WWW_HTML, format_out, anAnchor, s, sink);
+	break;
+
+    case GOPHER_GIF:
+    case GOPHER_IMAGE:
+    case GOPHER_PLUS_IMAGE:
+	HTParseSocket(HTAtom_for("image/gif"),
+		      format_out, anAnchor, s, sink);
+	break;
+
+    case GOPHER_MENU:
+    case GOPHER_INDEX:
+	target = HTML_new(anAnchor, format_out, sink);
+	targetClass = *target->isa;
+	parse_menu(arg, anAnchor);
+	break;
+
+    case GOPHER_CSO:
+	target = HTML_new(anAnchor, format_out, sink);
+	targetClass = *target->isa;
+	parse_cso(arg, anAnchor);
+	break;
+
+    case GOPHER_SOUND:
+    case GOPHER_PLUS_SOUND:
+	HTParseSocket(WWW_AUDIO, format_out, anAnchor, s, sink);
+	break;
+
+    case GOPHER_PLUS_MOVIE:
+	HTParseSocket(HTAtom_for("video/mpeg"), format_out, anAnchor, s, sink);
+	break;
+
+    case GOPHER_PLUS_PDF:
+	HTParseSocket(HTAtom_for("application/pdf"), format_out, anAnchor,
+		      s, sink);
+	break;
+
+    case GOPHER_MACBINHEX:
+    case GOPHER_PCBINARY:
+    case GOPHER_UUENCODED:
+    case GOPHER_BINARY:
+    default:
+	/*
+	 * Specifying WWW_UNKNOWN forces dump to local disk.
+	 */
+	HTParseSocket(WWW_UNKNOWN, format_out, anAnchor, s, sink);
+	break;
+
+    }				/* switch(gtype) */
+
+    NETCLOSE(s);
+    return HT_LOADED;
+}
+
+#ifdef GLOBALDEF_IS_MACRO
+#define _HTGOPHER_C_1_INIT { "gopher", HTLoadGopher, NULL }
+GLOBALDEF(HTProtocol, HTGopher, _HTGOPHER_C_1_INIT);
+#define _HTCSO_C_1_INIT { "cso", HTLoadCSO, NULL }
+GLOBALDEF(HTProtocol, HTCSO, _HTCSO_C_1_INIT);
+#else
+GLOBALDEF HTProtocol HTGopher =
+{"gopher", HTLoadGopher, NULL};
+GLOBALDEF HTProtocol HTCSO =
+{"cso", HTLoadCSO, NULL};
+#endif /* GLOBALDEF_IS_MACRO */
+
+#endif /* not DISABLE_GOPHER */
diff --git a/WWW/Library/Implementation/HTGopher.h b/WWW/Library/Implementation/HTGopher.h
new file mode 100644
index 00000000..667fc24e
--- /dev/null
+++ b/WWW/Library/Implementation/HTGopher.h
@@ -0,0 +1,29 @@
+/*                                                          Gopher protocol module for libwww
+                                      GOPHER ACCESS
+                                             
+  HISTORY:
+  
+  8 Jan 92               Adapted from HTTP TBL
+                         
+ */
+
+#ifndef HTGOPHER_H
+#define HTGOPHER_H
+
+#include <HTAccess.h>
+#include <HTAnchor.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#ifdef GLOBALREF_IS_MACRO
+    extern GLOBALREF (HTProtocol, HTGopher);
+
+#else
+    GLOBALREF HTProtocol HTGopher;
+#endif				/* GLOBALREF_IS_MACRO */
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTGOPHER_H */
diff --git a/WWW/Library/Implementation/HTGroup.c b/WWW/Library/Implementation/HTGroup.c
new file mode 100644
index 00000000..34c8b32e
--- /dev/null
+++ b/WWW/Library/Implementation/HTGroup.c
@@ -0,0 +1,766 @@
+/* MODULE							HTGroup.c
+ *		GROUP FILE ROUTINES
+ *
+ *	Contains group file parser and routines to match IP
+ *	address templates and to find out group membership.
+ *
+ *
+ * AUTHORS:
+ *	AL	Ari Luotonen	luotonen@dxcern.cern.ch
+ *
+ * HISTORY:
+ *
+ *
+ * BUGS:
+ *
+ *
+ *
+ * GROUP DEFINITION GRAMMAR:
+ *
+ *	string = "sequence of alphanumeric characters"
+ *	user_name ::= string
+ *	group_name ::= string
+ *	group_ref ::= group_name
+ *	user_def ::= user_name | group_ref
+ *	user_def_list ::= user_def { ',' user_def }
+ *	user_part = user_def | '(' user_def_list ')'
+ *
+ *	templ = "sequence of alphanumeric characters and '*'s"
+ *	ip_number_mask ::= templ '.' templ '.' templ '.' templ
+ *	domain_name_mask ::= templ { '.' templ }
+ *	address ::= ip_number_mask | domain_name_mask
+ *	address_def ::= address
+ *	address_def_list ::= address_def { ',' address_def }
+ *	address_part = address_def | '(' address_def_list ')'
+ *
+ *	item ::= [user_part] ['@' address_part]
+ *	item_list ::= item { ',' item }
+ *	group_def ::= item_list
+ *	group_decl ::= group_name ':' group_def
+ *
+ */
+
+#include <HTUtils.h>
+
+#include <HTAAUtil.h>
+#include <HTLex.h>		/* Lexical analysor     */
+#include <HTGroup.h>		/* Implemented here     */
+
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+/*
+ * Group file parser
+ */
+
+typedef HTList UserDefList;
+typedef HTList AddressDefList;
+
+typedef struct {
+    UserDefList *user_def_list;
+    AddressDefList *address_def_list;
+} Item;
+
+typedef struct {
+    char *name;
+    GroupDef *translation;
+} Ref;
+
+static void syntax_error(FILE *fp, const char *msg,
+			 LexItem lex_item)
+{
+    char buffer[41];
+    int cnt = 0;
+    int ch;
+
+    while ((ch = getc(fp)) != EOF && ch != '\n')
+	if (cnt < 40)
+	    buffer[cnt++] = (char) ch;
+    buffer[cnt] = (char) 0;
+
+    CTRACE((tfp, "%s %d before: '%s'\nHTGroup.c: %s (got %s)\n",
+	    "HTGroup.c: Syntax error in rule file at line",
+	    HTlex_line, buffer, msg, lex_verbose(lex_item)));
+    HTlex_line++;
+}
+
+static AddressDefList *parse_address_part(FILE *fp)
+{
+    AddressDefList *address_def_list = NULL;
+    LexItem lex_item;
+    BOOL only_one = NO;
+
+    lex_item = lex(fp);
+    if (lex_item == LEX_ALPH_STR || lex_item == LEX_TMPL_STR)
+	only_one = YES;
+    else if (lex_item != LEX_OPEN_PAREN ||
+	     ((lex_item = lex(fp)) != LEX_ALPH_STR &&
+	      lex_item != LEX_TMPL_STR)) {
+	syntax_error(fp, "Expecting a single address or '(' beginning list",
+		     lex_item);
+	return NULL;
+    }
+    address_def_list = HTList_new();
+
+    for (;;) {
+	Ref *ref = typecalloc(Ref);
+
+	if (ref == NULL)
+	    outofmem(__FILE__, "parse_address_part");
+
+	assert(ref != NULL);
+
+	ref->name = NULL;
+	ref->translation = NULL;
+	StrAllocCopy(ref->name, HTlex_buffer);
+
+	HTList_addObject(address_def_list, (void *) ref);
+
+	if (only_one || (lex_item = lex(fp)) != LEX_ITEM_SEP)
+	    break;
+	/*
+	 * Here lex_item == LEX_ITEM_SEP; after item separator it
+	 * is ok to have one or more newlines (LEX_REC_SEP) and
+	 * they are ignored (continuation line).
+	 */
+	do {
+	    lex_item = lex(fp);
+	} while (lex_item == LEX_REC_SEP);
+
+	if (lex_item != LEX_ALPH_STR && lex_item != LEX_TMPL_STR) {
+	    syntax_error(fp, "Expecting an address template", lex_item);
+	    HTList_delete(address_def_list);
+	    address_def_list = NULL;
+	    return NULL;
+	}
+    }
+
+    if (!only_one && lex_item != LEX_CLOSE_PAREN) {
+	HTList_delete(address_def_list);
+	address_def_list = NULL;
+	syntax_error(fp, "Expecting ')' closing address list", lex_item);
+	return NULL;
+    }
+    return address_def_list;
+}
+
+static UserDefList *parse_user_part(FILE *fp)
+{
+    UserDefList *user_def_list = NULL;
+    LexItem lex_item;
+    BOOL only_one = NO;
+
+    lex_item = lex(fp);
+    if (lex_item == LEX_ALPH_STR)
+	only_one = YES;
+    else if (lex_item != LEX_OPEN_PAREN ||
+	     (lex_item = lex(fp)) != LEX_ALPH_STR) {
+	syntax_error(fp, "Expecting a single name or '(' beginning list",
+		     lex_item);
+	return NULL;
+    }
+    user_def_list = HTList_new();
+
+    for (;;) {
+	Ref *ref = typecalloc(Ref);
+
+	if (ref == NULL)
+	    outofmem(__FILE__, "parse_user_part");
+
+	assert(ref != NULL);
+
+	ref->name = NULL;
+	ref->translation = NULL;
+	StrAllocCopy(ref->name, HTlex_buffer);
+
+	HTList_addObject(user_def_list, (void *) ref);
+
+	if (only_one || (lex_item = lex(fp)) != LEX_ITEM_SEP)
+	    break;
+	/*
+	 * Here lex_item == LEX_ITEM_SEP; after item separator it
+	 * is ok to have one or more newlines (LEX_REC_SEP) and
+	 * they are ignored (continuation line).
+	 */
+	do {
+	    lex_item = lex(fp);
+	} while (lex_item == LEX_REC_SEP);
+
+	if (lex_item != LEX_ALPH_STR) {
+	    syntax_error(fp, "Expecting user or group name", lex_item);
+	    HTList_delete(user_def_list);
+	    user_def_list = NULL;
+	    return NULL;
+	}
+    }
+
+    if (!only_one && lex_item != LEX_CLOSE_PAREN) {
+	HTList_delete(user_def_list);
+	user_def_list = NULL;
+	syntax_error(fp, "Expecting ')' closing user/group list", lex_item);
+	return NULL;
+    }
+    return user_def_list;
+}
+
+static Item *parse_item(FILE *fp)
+{
+    Item *item = NULL;
+    UserDefList *user_def_list = NULL;
+    AddressDefList *address_def_list = NULL;
+    LexItem lex_item;
+
+    lex_item = lex(fp);
+    if (lex_item == LEX_ALPH_STR || lex_item == LEX_OPEN_PAREN) {
+	unlex(lex_item);
+	user_def_list = parse_user_part(fp);
+	lex_item = lex(fp);
+    }
+
+    if (lex_item == LEX_AT_SIGN) {
+	lex_item = lex(fp);
+	if (lex_item == LEX_ALPH_STR || lex_item == LEX_TMPL_STR ||
+	    lex_item == LEX_OPEN_PAREN) {
+	    unlex(lex_item);
+	    address_def_list = parse_address_part(fp);
+	} else {
+	    if (user_def_list) {
+		HTList_delete(user_def_list);	/* @@@@ */
+		user_def_list = NULL;
+	    }
+	    syntax_error(fp, "Expected address part (single address or list)",
+			 lex_item);
+	    return NULL;
+	}
+    } else
+	unlex(lex_item);
+
+    if (!user_def_list && !address_def_list) {
+	syntax_error(fp, "Empty item not allowed", lex_item);
+	return NULL;
+    }
+    item = typecalloc(Item);
+    if (item == NULL)
+	outofmem(__FILE__, "parse_item");
+
+    assert(item != NULL);
+
+    item->user_def_list = user_def_list;
+    item->address_def_list = address_def_list;
+    return item;
+}
+
+static ItemList *parse_item_list(FILE *fp)
+{
+    ItemList *item_list = HTList_new();
+    Item *item;
+    LexItem lex_item;
+
+    for (;;) {
+	if (!(item = parse_item(fp))) {
+	    HTList_delete(item_list);	/* @@@@ */
+	    item_list = NULL;
+	    return NULL;
+	}
+	HTList_addObject(item_list, (void *) item);
+	lex_item = lex(fp);
+	if (lex_item != LEX_ITEM_SEP) {
+	    unlex(lex_item);
+	    return item_list;
+	}
+	/*
+	 * Here lex_item == LEX_ITEM_SEP; after item separator it
+	 * is ok to have one or more newlines (LEX_REC_SEP) and
+	 * they are ignored (continuation line).
+	 */
+	do {
+	    lex_item = lex(fp);
+	} while (lex_item == LEX_REC_SEP);
+	unlex(lex_item);
+    }
+}
+
+GroupDef *HTAA_parseGroupDef(FILE *fp)
+{
+    ItemList *item_list = NULL;
+    GroupDef *group_def = NULL;
+    LexItem lex_item;
+
+    if (!(item_list = parse_item_list(fp))) {
+	return NULL;
+    }
+    group_def = typecalloc(GroupDef);
+    if (group_def == NULL)
+	outofmem(__FILE__, "HTAA_parseGroupDef");
+
+    assert(group_def != NULL);
+
+    group_def->group_name = NULL;
+    group_def->item_list = item_list;
+
+    if ((lex_item = lex(fp)) != LEX_REC_SEP) {
+	syntax_error(fp, "Garbage after group definition", lex_item);
+    }
+
+    return group_def;
+}
+
+#if 0
+static GroupDef *parse_group_decl(FILE *fp)
+{
+    char *group_name = NULL;
+    GroupDef *group_def = NULL;
+    LexItem lex_item;
+
+    do {
+	lex_item = lex(fp);
+    } while (lex_item == LEX_REC_SEP);	/* Ignore empty lines */
+
+    if (lex_item != LEX_ALPH_STR) {
+	if (lex_item != LEX_EOF)
+	    syntax_error(fp, "Expecting group name", lex_item);
+	return NULL;
+    }
+    StrAllocCopy(group_name, HTlex_buffer);
+
+    if (LEX_FIELD_SEP != (lex_item = lex(fp))) {
+	syntax_error(fp, "Expecting field separator", lex_item);
+	FREE(group_name);
+	return NULL;
+    }
+
+    if (!(group_def = HTAA_parseGroupDef(fp))) {
+	FREE(group_name);
+	return NULL;
+    }
+    group_def->group_name = group_name;
+
+    return group_def;
+}
+
+/*
+ * Group manipulation routines
+ */
+
+static GroupDef *find_group_def(GroupDefList *group_list,
+				const char *group_name)
+{
+    if (group_list && group_name) {
+	GroupDefList *cur = group_list;
+	GroupDef *group_def;
+
+	while (NULL != (group_def = (GroupDef *) HTList_nextObject(cur))) {
+	    if (!strcmp(group_name, group_def->group_name)) {
+		return group_def;
+	    }
+	}
+    }
+    return NULL;
+}
+
+void HTAA_resolveGroupReferences(GroupDef *group_def,
+				 GroupDefList *group_def_list)
+{
+    if (group_def && group_def->item_list && group_def_list) {
+	ItemList *cur1 = group_def->item_list;
+	Item *item;
+
+	while (NULL != (item = (Item *) HTList_nextObject(cur1))) {
+	    UserDefList *cur2 = item->user_def_list;
+	    Ref *ref;
+
+	    while (NULL != (ref = (Ref *) HTList_nextObject(cur2)))
+		ref->translation = find_group_def(group_def_list, ref->name);
+
+	    /* Does NOT translate address_def_list */
+	}
+    }
+}
+
+static void add_group_def(GroupDefList *group_def_list,
+			  GroupDef *group_def)
+{
+    HTAA_resolveGroupReferences(group_def, group_def_list);
+    HTList_addObject(group_def_list, (void *) group_def);
+}
+
+static GroupDefList *parse_group_file(FILE *fp)
+{
+    GroupDefList *group_def_list = HTList_new();
+    GroupDef *group_def;
+
+    while (NULL != (group_def = parse_group_decl(fp)))
+	add_group_def(group_def_list, group_def);
+
+    return group_def_list;
+}
+#endif
+
+/*
+ * Trace functions
+ */
+
+static void print_item(Item *item)
+{
+    if (!item)
+	fprintf(tfp, "\tNULL-ITEM\n");
+    else {
+	UserDefList *cur1 = item->user_def_list;
+	AddressDefList *cur2 = item->address_def_list;
+	Ref *user_ref = (Ref *) HTList_nextObject(cur1);
+	Ref *addr_ref = (Ref *) HTList_nextObject(cur2);
+
+	if (user_ref) {
+	    fprintf(tfp, "\t[%s%s", user_ref->name,
+		    (user_ref->translation ? "*REF*" : ""));
+	    while (NULL != (user_ref = (Ref *) HTList_nextObject(cur1)))
+		fprintf(tfp, "; %s%s", user_ref->name,
+			(user_ref->translation ? "*REF*" : ""));
+	    fprintf(tfp, "] ");
+	} else
+	    fprintf(tfp, "\tANYBODY ");
+
+	if (addr_ref) {
+	    fprintf(tfp, "@ [%s", addr_ref->name);
+	    while (NULL != (addr_ref = (Ref *) HTList_nextObject(cur2)))
+		fprintf(tfp, "; %s", addr_ref->name);
+	    fprintf(tfp, "]\n");
+	} else
+	    fprintf(tfp, "@ ANYADDRESS\n");
+    }
+}
+
+static void print_item_list(ItemList *item_list)
+{
+    ItemList *cur = item_list;
+    Item *item;
+
+    if (!item_list)
+	fprintf(tfp, "EMPTY");
+    else
+	while (NULL != (item = (Item *) HTList_nextObject(cur)))
+	    print_item(item);
+}
+
+void HTAA_printGroupDef(GroupDef *group_def)
+{
+    if (!group_def) {
+	fprintf(tfp, "\nNULL RECORD\n");
+	return;
+    }
+
+    fprintf(tfp, "\nGroup %s:\n",
+	    (group_def->group_name ? group_def->group_name : "NULL"));
+
+    print_item_list(group_def->item_list);
+    fprintf(tfp, "\n");
+}
+
+#if 0
+static void print_group_def_list(GroupDefList *group_list)
+{
+    GroupDefList *cur = group_list;
+    GroupDef *group_def;
+
+    while (NULL != (group_def = (GroupDef *) HTList_nextObject(cur)))
+	HTAA_printGroupDef(group_def);
+}
+
+/*
+ * IP address template matching
+ */
+
+/* static						part_match()
+ *		MATCH ONE PART OF INET ADDRESS AGAIST
+ *		A PART OF MASK (inet address has 4 parts)
+ * ON ENTRY:
+ *	tcur	pointer to the beginning of template part.
+ *	icur	pointer to the beginning of actual inet
+ *		number part.
+ *
+ * ON EXIT:
+ *	returns	YES, if match.
+ */
+static BOOL part_match(const char *tcur,
+		       const char *icur)
+{
+    char required[4];
+    char actual[4];
+    const char *cur;
+    int cnt;
+    BOOL status;
+
+    if (!tcur || !icur)
+	return NO;
+
+    cur = tcur;
+    cnt = 0;
+    while (cnt < 3 && *cur && *cur != '.')
+	required[cnt++] = *(cur++);
+    required[cnt] = (char) 0;
+
+    cur = icur;
+    cnt = 0;
+    while (cnt < 3 && *cur && *cur != '.')
+	actual[cnt++] = *(cur++);
+    actual[cnt] = (char) 0;
+
+    status = HTAA_templateMatch(required, actual);
+    CTRACE((tfp, "part_match: req: '%s' act: '%s' match: %s\n",
+	    required, actual, (status ? "yes" : "no")));
+
+    return status;
+}
+
+/* static						ip_number_match()
+ *		MATCH INET NUMBER AGAINST AN INET NUMBER MASK
+ * ON ENTRY:
+ *	template	mask to match agaist, e.g., 128.141.*.*
+ *	the_inet_addr	actual inet address, e.g., 128.141.201.74
+ *
+ * ON EXIT:
+ *	returns		YES, if match;  NO, if not.
+ */
+static BOOL ip_number_match(const char *ctemplate,
+			    const char *the_inet_addr)
+{
+    const char *tcur = ctemplate;
+    const char *icur = the_inet_addr;
+    int cnt;
+
+    for (cnt = 0; cnt < 4; cnt++) {
+	if (!tcur || !icur || !part_match(tcur, icur))
+	    return NO;
+	if (NULL != (tcur = strchr(tcur, '.')))
+	    tcur++;
+	if (NULL != (icur = strchr(icur, '.')))
+	    icur++;
+    }
+    return YES;
+}
+
+/* static						is_domain_mask()
+ *		DETERMINE IF A GIVEN MASK IS A
+ *		DOMAIN NAME MASK OR AN INET NUMBER MASK
+ * ON ENTRY:
+ *	mask	either a domain name mask,
+ *		e.g.
+ *			*.cern.ch
+ *
+ *		or an inet number mask,
+ *		e.g.
+ *			128.141.*.*
+ *
+ * ON EXIT:
+ *	returns	YES, if mask is a domain name mask.
+ *		NO, if it is an inet number mask.
+ */
+static BOOL is_domain_mask(const char *mask)
+{
+    const char *cur = mask;
+
+    if (!mask)
+	return NO;
+
+    while (*cur) {
+	if (*cur != '.' && *cur != '*' && (*cur < '0' || *cur > '9'))
+	    return YES;		/* Even one non-digit makes it a domain name mask */
+	cur++;
+    }
+    return NO;			/* All digits and dots, so it is an inet number mask */
+}
+
+/* static							ip_mask_match()
+ *		MATCH AN IP NUMBER MASK OR IP NAME MASK
+ *		AGAINST ACTUAL IP NUMBER OR IP NAME
+ *
+ * ON ENTRY:
+ *	mask		mask.  Mask may be either an inet number
+ *			mask or a domain name mask,
+ *			e.g.
+ *				128.141.*.*
+ *			or
+ *				*.cern.ch
+ *
+ *	ip_number	IP number of connecting host.
+ *	ip_name		IP name of the connecting host.
+ *
+ * ON EXIT:
+ *	returns		YES, if hostname/internet number
+ *			matches the mask.
+ *			NO, if no match (no fire).
+ */
+static BOOL ip_mask_match(const char *mask,
+			  const char *ip_number,
+			  const char *ip_name)
+{
+    if (mask && (ip_number || ip_name)) {
+	if (is_domain_mask(mask)) {
+	    if (HTAA_templateMatch(mask, ip_name))
+		return YES;
+	} else {
+	    if (ip_number_match(mask, ip_number))
+		return YES;
+	}
+    }
+    return NO;
+}
+
+static BOOL ip_in_def_list(AddressDefList *address_def_list,
+			   char *ip_number,
+			   char *ip_name)
+{
+    if (address_def_list && (ip_number || ip_name)) {
+	AddressDefList *cur = address_def_list;
+	Ref *ref;
+
+	while (NULL != (ref = (Ref *) HTList_nextObject(cur))) {
+	    /* Value of ref->translation is ignored, i.e., */
+	    /* no recursion for ip address tamplates.     */
+	    if (ip_mask_match(ref->name, ip_number, ip_name))
+		return YES;
+	}
+    }
+    return NO;
+}
+
+/*
+ * Group file cached reading
+ */
+
+typedef struct {
+    char *group_filename;
+    GroupDefList *group_list;
+} GroupCache;
+
+typedef HTList GroupCacheList;
+
+static GroupCacheList *group_cache_list = NULL;
+
+GroupDefList *HTAA_readGroupFile(const char *filename)
+{
+    FILE *fp;
+    GroupCache *group_cache;
+
+    if (isEmpty(filename))
+	return NULL;
+
+    if (!group_cache_list)
+	group_cache_list = HTList_new();
+    else {
+	GroupCacheList *cur = group_cache_list;
+
+	while (NULL != (group_cache = (GroupCache *) HTList_nextObject(cur))) {
+	    if (!strcmp(filename, group_cache->group_filename)) {
+		CTRACE((tfp, "%s '%s' %s\n",
+			"HTAA_readGroupFile: group file",
+			filename, "already found in cache"));
+		return group_cache->group_list;
+	    }			/* if cache match */
+	}			/* while cached files remain */
+    }				/* cache exists */
+
+    CTRACE((tfp, "HTAA_readGroupFile: reading group file `%s'\n",
+	    filename));
+
+    if (!(fp = fopen(filename, TXT_R))) {
+	CTRACE((tfp, "%s '%s'\n",
+		"HTAA_readGroupFile: unable to open group file",
+		filename));
+	return NULL;
+    }
+
+    if ((group_cache = typecalloc(GroupCache)) == 0)
+	outofmem(__FILE__, "HTAA_readGroupFile");
+
+    group_cache->group_filename = NULL;
+    StrAllocCopy(group_cache->group_filename, filename);
+    group_cache->group_list = parse_group_file(fp);
+    HTList_addObject(group_cache_list, (void *) group_cache);
+    fclose(fp);
+
+    CTRACE((tfp, "Read group file '%s', results follow:\n", filename));
+    if (TRACE)
+	print_group_def_list(group_cache->group_list);
+
+    return group_cache->group_list;
+}
+
+/* PUBLIC					HTAA_userAndInetInGroup()
+ *		CHECK IF USER BELONGS TO TO A GIVEN GROUP
+ *		AND THAT THE CONNECTION COMES FROM AN
+ *		ADDRESS THAT IS ALLOWED BY THAT GROUP
+ * ON ENTRY:
+ *	group		the group definition structure.
+ *	username	connecting user.
+ *	ip_number	browser host IP number, optional.
+ *	ip_name		browser host IP name, optional.
+ *			However, one of ip_number or ip_name
+ *			must be given.
+ * ON EXIT:
+ *	returns		HTAA_IP_MASK, if IP address mask was
+ *			reason for failing.
+ *			HTAA_NOT_MEMBER, if user does not belong
+ *			to the group.
+ *			HTAA_OK if both IP address and user are ok.
+ */
+HTAAFailReasonType HTAA_userAndInetInGroup(GroupDef *group,
+					   char *username,
+					   char *ip_number,
+					   char *ip_name)
+{
+    HTAAFailReasonType reason = HTAA_NOT_MEMBER;
+
+    if (group && username) {
+	ItemList *cur1 = group->item_list;
+	Item *item;
+
+	while (NULL != (item = (Item *) HTList_nextObject(cur1))) {
+	    if (!item->address_def_list ||	/* Any address allowed */
+		ip_in_def_list(item->address_def_list, ip_number, ip_name)) {
+
+		if (!item->user_def_list)	/* Any user allowed */
+		    return HTAA_OK;
+		else {
+		    UserDefList *cur2 = item->user_def_list;
+		    Ref *ref;
+
+		    while (NULL != (ref = (Ref *) HTList_nextObject(cur2))) {
+
+			if (ref->translation) {		/* Group, check recursively */
+			    reason = HTAA_userAndInetInGroup(ref->translation,
+							     username,
+							     ip_number, ip_name);
+			    if (reason == HTAA_OK)
+				return HTAA_OK;
+			} else {	/* Username, check directly */
+			    if (username && *username &&
+				0 == strcmp(ref->name, username))
+				return HTAA_OK;
+			}
+			/* Every user/group name in this group */
+		    }
+		    /* search for username */
+		}
+		/* IP address ok */
+	    } else {
+		reason = HTAA_IP_MASK;
+	    }
+	}			/* while items in group */
+    }
+    /* valid parameters */
+    return reason;		/* No match, or invalid parameters */
+}
+
+void GroupDef_delete(GroupDef *group_def)
+{
+    if (group_def) {
+	FREE(group_def->group_name);
+	if (group_def->item_list) {
+	    HTList_delete(group_def->item_list);	/* @@@@ */
+	    group_def->item_list = NULL;
+	}
+	FREE(group_def);
+    }
+}
+#endif
diff --git a/WWW/Library/Implementation/HTGroup.h b/WWW/Library/Implementation/HTGroup.h
new file mode 100644
index 00000000..78745656
--- /dev/null
+++ b/WWW/Library/Implementation/HTGroup.h
@@ -0,0 +1,182 @@
+/*                                    GROUP FILE ROUTINES
+
+ */
+
+#ifndef HTGROUP_H
+#define HTGROUP_H
+
+#include <HTList.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    typedef HTList GroupDefList;
+    typedef HTList ItemList;
+
+    typedef struct {
+	char *group_name;
+	ItemList *item_list;
+    } GroupDef;
+
+/*
+ * Access Authorization failure reasons
+ */
+    typedef enum {
+	HTAA_OK,		/* 200 OK                               */
+	HTAA_OK_GATEWAY,	/* 200 OK, acting as a gateway          */
+	HTAA_NO_AUTH,		/* 401 Unauthorized, not authenticated  */
+	HTAA_NOT_MEMBER,	/* 401 Unauthorized, not authorized     */
+	HTAA_IP_MASK,		/* 403 Forbidden by IP mask             */
+	HTAA_BY_RULE,		/* 403 Forbidden by rule                */
+	HTAA_NO_ACL,		/* 403 Forbidden, ACL non-existent      */
+	HTAA_NO_ENTRY,		/* 403 Forbidden, no ACL entry          */
+	HTAA_SETUP_ERROR,	/* 403 Forbidden, server setup error    */
+	HTAA_DOTDOT,		/* 403 Forbidden, URL with /../ illegal */
+	HTAA_HTBIN,		/* 403 Forbidden, /htbin not enabled    */
+	HTAA_NOT_FOUND		/* 404 Not found, or read protected     */
+    } HTAAFailReasonType;
+
+/*
+
+Group definition grammar
+
+  string
+                         "sequence of alphanumeric characters"
+
+  user_name
+                         string
+
+  group_name
+                         string
+
+  group_ref
+                         group_name
+
+  user_def
+                         user_name | group_ref
+
+  user_def_list
+                           user_def { ',' user_def }
+
+  user_part
+                         user_def | '(' user_def_list ')'
+
+  templ
+
+                         "sequence of alphanumeric characters and '*'s"
+
+  ip_number_mask
+                         templ '.' templ '.' templ '.' templ
+
+  domain_name_mask
+                         templ { '.' templ }
+
+  address
+
+                         ip_number_mask | domain_name_mask
+
+  address_def
+
+                         address
+
+  address_def_list
+                         address_def { ',' address_def }
+
+  address_part
+                         address_def | '(' address_def_list ')'
+
+  item
+                         [user_part] ['@' address_part]
+
+  item_list
+                         item { ',' item }
+
+  group_def
+                         item_list
+
+  group_decl
+                         group_name ':' group_def
+
+  PARSE GROUP DEFINITION
+
+ */
+
+    extern GroupDef *HTAA_parseGroupDef(FILE *fp);
+
+/*
+
+Fill in Pointers to referenced Group Definitions in a Group Definition
+
+   References to groups (by their name) are resolved from group_def_list and pointers to
+   those structures are added to group_def.
+
+ */
+
+    extern void HTAA_resolveGroupReferences(GroupDef *group_def,
+					    GroupDefList *group_def_list);
+
+/*
+
+Read Group File (and do caching)
+
+   If group file is already in cache returns a pointer to previously read group definition
+   list.
+
+ */
+
+    extern GroupDefList *HTAA_readGroupFile(const char *filename);
+
+/*
+
+Delete Group Definition
+
+   Groups in cache should never be freed by this function.  This should only be used to
+   free group definitions read by HTAA_parseGroupDef.
+
+ */
+
+    extern void GroupDef_delete(GroupDef *group_def);
+
+/*
+
+Print Out Group Definition (for trace purposes)
+
+ */
+
+    extern void HTAA_printGroupDef(GroupDef *group_def);
+
+/*
+
+Does a User Belong to a Given Set of Groups
+
+   This function checks both the username and the internet address.
+
+ */
+
+/* PUBLIC                                       HTAA_userAndInetInGroup()
+ *              CHECK IF USER BELONGS TO TO A GIVEN GROUP
+ *              AND THAT THE CONNECTION COMES FROM AN
+ *              ADDRESS THAT IS ALLOWED BY THAT GROUP
+ * ON ENTRY:
+ *      group           the group definition structure.
+ *      username        connecting user.
+ *      ip_number       browser host IP number, optional.
+ *      ip_name         browser host IP name, optional.
+ *                      However, one of ip_number or ip_name
+ *                      must be given.
+ * ON EXIT:
+ *      returns         HTAA_IP_MASK, if IP address mask was
+ *                      reason for failing.
+ *                      HTAA_NOT_MEMBER, if user does not belong
+ *                      to the group.
+ *                      HTAA_OK if both IP address and user are ok.
+ */
+    extern HTAAFailReasonType HTAA_userAndInetInGroup(GroupDef *group,
+						      char *username,
+						      char *ip_number,
+						      char *ip_name);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* not HTGROUP_H */
diff --git a/WWW/Library/Implementation/HTInit.h b/WWW/Library/Implementation/HTInit.h
new file mode 100644
index 00000000..4fc70003
--- /dev/null
+++ b/WWW/Library/Implementation/HTInit.h
@@ -0,0 +1,34 @@
+/*                   /Net/dxcern/userd/timbl/hypertext/WWW/Library/Implementation/HTInit.html
+                                  INITIALISATION MODULE
+                                             
+   This module registers all the plug & play software modules which will be
+   used in the program.  This is for a browser.
+   
+   To override this, just copy it and link in your version before you link with
+   the library.
+   
+   Implemented by HTInit.c by default.
+   
+ */
+
+#ifndef HTINIT_H
+#define HTINIT_H 1
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern void HTFormatInit(void);
+    extern void HTPreparsedFormatInit(void);
+    extern void HTFileInit(void);
+    extern int LYTestMailcapCommand(const char *testcommand, const char *params);
+    extern BOOL LYMailcapUsesPctS(const char *controlstring);
+    extern char *LYMakeMailcapCommand(const char *command, const char *params, const char *filename);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTINIT_H */
diff --git a/WWW/Library/Implementation/HTLex.c b/WWW/Library/Implementation/HTLex.c
new file mode 100644
index 00000000..5a0df917
--- /dev/null
+++ b/WWW/Library/Implementation/HTLex.c
@@ -0,0 +1,142 @@
+
+/* MODULE							HTLex.c
+ *		LEXICAL ANALYSOR
+ *
+ * AUTHORS:
+ *	AL	Ari Luotonen	luotonen@dxcern.cern.ch
+ *
+ * HISTORY:
+ *
+ *
+ * BUGS:
+ *
+ *
+ */
+
+#include <HTUtils.h>
+
+#include <HTLex.h>		/* Implemented here */
+
+#include <LYLeaks.h>
+
+/*
+ * Global variables
+ */
+char HTlex_buffer[40];		/* Read lexical string          */
+int HTlex_line = 1;		/* Line number in source file   */
+
+/*
+ * Module-wide variables
+ */
+static int lex_cnt;
+static BOOL lex_template;
+static LexItem lex_pushed_back = LEX_NONE;
+static FILE *cache = NULL;
+
+void unlex(LexItem lex_item)
+{
+    lex_pushed_back = lex_item;
+}
+
+LexItem lex(FILE *fp)
+{
+    int ch = 0;
+
+    if (fp != cache) {		/* This cache doesn't work ok because the system  */
+	cache = fp;		/* often assign same FILE structure the next open */
+	HTlex_line = 1;		/* file.  So, if there are syntax errors in setup *
+				   files it may confuse things later on.      */
+    }
+    if (lex_pushed_back != LEX_NONE) {
+	LexItem ret = lex_pushed_back;
+
+	lex_pushed_back = LEX_NONE;
+	return ret;
+    }
+
+    lex_cnt = 0;
+    lex_template = NO;
+
+    for (;;) {
+	switch (ch = getc(fp)) {
+	case EOF:
+	case ' ':
+	case '\t':
+	case '\r':
+	case '\n':
+	case ':':
+	case ',':
+	case '(':
+	case ')':
+	case '@':
+	    if (lex_cnt > 0) {
+		if (ch != EOF)
+		    ungetc(ch, fp);
+		if (lex_template)
+		    return LEX_TMPL_STR;
+		else
+		    return LEX_ALPH_STR;
+	    } else
+		switch (ch) {
+		case EOF:
+		    return LEX_EOF;
+		case '\n':
+		    HTlex_line++;
+		    return LEX_REC_SEP;
+		case ':':
+		    return LEX_FIELD_SEP;
+		case ',':
+		    return LEX_ITEM_SEP;
+		case '(':
+		    return LEX_OPEN_PAREN;
+		case ')':
+		    return LEX_CLOSE_PAREN;
+		case '@':
+		    return LEX_AT_SIGN;
+		default:	/* Leading white space ignored (SP,TAB,CR) */
+		    break;
+		}
+	    break;
+	default:
+	    if (lex_cnt < (int) (sizeof(HTlex_buffer) - 1))
+		HTlex_buffer[lex_cnt++] = (char) ch;
+	    HTlex_buffer[lex_cnt] = '\0';
+	    if ('*' == ch)
+		lex_template = YES;
+	}			/* switch ch */
+    }				/* forever */
+}
+
+const char *lex_verbose(LexItem lex_item)
+{
+    static char msg[sizeof(HTlex_buffer) + 30];		/* @@@@@@@@ */
+
+    switch (lex_item) {
+    case LEX_NONE:		/* Internally used      */
+	return "NO-LEX-ITEM";
+    case LEX_EOF:		/* End of file          */
+	return "end-of-file";
+    case LEX_REC_SEP:		/* Record separator     */
+	return "record separator (newline)";
+    case LEX_FIELD_SEP:	/* Field separator      */
+	return "field separator ':'";
+    case LEX_ITEM_SEP:		/* List item separator  */
+	return "item separator ','";
+    case LEX_OPEN_PAREN:	/* Group start tag      */
+	return "'('";
+    case LEX_CLOSE_PAREN:	/* Group end tag        */
+	return "')'";
+    case LEX_AT_SIGN:		/* Address qualifier    */
+	return "address qualifier '@'";
+    case LEX_ALPH_STR:		/* Alphanumeric string  */
+	sprintf(msg, "alphanumeric string '%.*s'",
+		(int) sizeof(HTlex_buffer), HTlex_buffer);
+	return msg;
+    case LEX_TMPL_STR:		/* Template string      */
+	sprintf(msg, "template string '%.*s'",
+		(int) sizeof(HTlex_buffer), HTlex_buffer);
+	return msg;
+    default:
+	return "UNKNOWN-LEX-ITEM";
+    }
+}
diff --git a/WWW/Library/Implementation/HTLex.h b/WWW/Library/Implementation/HTLex.h
new file mode 100644
index 00000000..fde90348
--- /dev/null
+++ b/WWW/Library/Implementation/HTLex.h
@@ -0,0 +1,64 @@
+/*                         LEXICAL ANALYSOR (MAINLY FOR CONFIG FILES)
+
+ */
+
+#ifndef HTLEX_H
+#define HTLEX_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    typedef enum {
+	LEX_NONE,		/* Internally used      */
+	LEX_EOF,		/* End of file          */
+	LEX_REC_SEP,		/* Record separator     */
+	LEX_FIELD_SEP,		/* Field separator      */
+	LEX_ITEM_SEP,		/* List item separator  */
+	LEX_OPEN_PAREN,		/* Group start tag      */
+	LEX_CLOSE_PAREN,	/* Group end tag        */
+	LEX_AT_SIGN,		/* Address qualifier    */
+	LEX_ALPH_STR,		/* Alphanumeric string  */
+	LEX_TMPL_STR		/* Template string      */
+    } LexItem;
+
+    extern char HTlex_buffer[];	/* Read lexical string          */
+    extern int HTlex_line;	/* Line number in source file   */
+
+/*
+
+Get Next Lexical Item
+
+   If returns LEX_ALPH_STR or LEX_TMPL_STR the string is in global buffer lex_buffer.
+
+ */
+
+    extern LexItem lex(FILE *fp);
+
+/*
+
+Push Back Latest Item
+
+ */
+
+    extern void unlex(LexItem lex_item);
+
+/*
+
+Get the Name for Lexical Item
+
+ */
+
+    extern const char *lex_verbose(LexItem lex_item);
+
+/*
+
+ */
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* not HTLEX_H */
diff --git a/WWW/Library/Implementation/HTList.c b/WWW/Library/Implementation/HTList.c
new file mode 100644
index 00000000..fee62404
--- /dev/null
+++ b/WWW/Library/Implementation/HTList.c
@@ -0,0 +1,408 @@
+/*
+ * $LynxId: HTList.c,v 1.18 2010/04/29 09:59:31 tom Exp $
+ *
+ *	A small List class					      HTList.c
+ *	==================
+ *
+ *	A list is represented as a sequence of linked nodes of type HTList.
+ *	The first node is a header which contains no object.
+ *	New nodes are inserted between the header and the rest of the list.
+ */
+
+#include <HTUtils.h>
+#include <HTList.h>
+
+#include <LYLeaks.h>
+
+/*	Create list.
+*/
+HTList *HTList_new(void)
+{
+    HTList *newList;
+
+    if ((newList = typeMalloc(HTList)) == NULL)
+	  outofmem(__FILE__, "HTList_new");
+
+    assert(newList != NULL);
+
+    newList->object = NULL;
+    newList->next = NULL;
+
+    return newList;
+}
+
+/*	Delete list.
+*/
+void HTList_delete(HTList *me)
+{
+    HTList *current;
+
+    while ((current = me)) {
+	me = me->next;
+	FREE(current);
+    }
+
+    return;
+}
+
+/*	Reverse order of elements in list.
+ */
+HTList *HTList_reverse(HTList *start)
+{
+    HTList *cur, *succ;
+
+    if (!(start && start->next && (cur = start->next->next)))
+	return start;
+    start->next->next = NULL;
+    while (cur) {
+	succ = cur->next;
+	cur->next = start->next;
+	start->next = cur;
+	cur = succ;
+    }
+    return start;
+}
+
+/*	Append a list to another.
+ *
+ *	If successful, the second list will become empty but not freed.
+ */
+HTList *HTList_appendList(HTList *start,
+			  HTList *tail)
+{
+    HTList *temp = start;
+
+    if (!start) {
+	CTRACE((tfp,
+		"HTList: Trying to append list %p to a nonexisting list\n",
+		(void *) tail));
+	return NULL;
+    }
+    if (!(tail && tail->next))
+	return start;
+
+    while (temp->next)
+	temp = temp->next;
+
+    temp->next = tail->next;
+    tail->next = NULL;		/* tail is now an empty list */
+    return start;
+}
+
+/*	Link object to START of list (so it is pointed to by the head).
+ *
+ *	Unlike HTList_addObject(), it does not malloc memory for HTList entry,
+ *	it use already allocated memory which should not be free'd by any
+ *	list operations (optimization).
+ */
+void HTList_linkObject(HTList *me, void *newObject,
+		       HTList *newNode)
+{
+    if (me) {
+	if (newNode->object == NULL && newNode->next == NULL) {
+	    /*  It is safe: */
+	    newNode->object = newObject;
+	    newNode->next = me->next;
+	    me->next = newNode;
+
+	} else {
+	    /*
+	     * This node is already linked to some list (probably this one), so
+	     * refuse changing node pointers to keep the list valid!!!
+	     */
+	    CTRACE((tfp, "*** HTList: Refuse linking already linked obj "));
+	    CTRACE((tfp, "%p, node %p, list %p\n",
+		    (void *) newObject, (void *) newNode, (void *) me));
+	}
+
+    } else {
+	CTRACE((tfp,
+		"HTList: Trying to link object %p to a nonexisting list\n",
+		newObject));
+    }
+
+    return;
+}
+
+/*      Add object to START of list (so it is pointed to by the head).
+*/
+void HTList_addObject(HTList *me, void *newObject)
+{
+    HTList *newNode;
+
+    if (me) {
+	if ((newNode = typeMalloc(HTList)) == NULL)
+	      outofmem(__FILE__, "HTList_addObject");
+
+	assert(newNode != NULL);
+
+	newNode->object = newObject;
+	newNode->next = me->next;
+	me->next = newNode;
+
+    } else {
+	CTRACE((tfp, "HTList: Trying to add object %p to a nonexisting list\n",
+		newObject));
+    }
+
+    return;
+}
+
+/*      Append object to END of list (furthest from the head).
+*/
+void HTList_appendObject(HTList *me, void *newObject)
+{
+    HTList *temp = me;
+
+    if (temp && newObject) {
+	while (temp->next)
+	    temp = temp->next;
+	HTList_addObject(temp, newObject);
+    }
+
+    return;
+}
+
+/*	Insert an object into the list at a specified position.
+ *      If position is 0, this places the object at the head of the list
+ *      and is equivalent to HTList_addObject().
+ */
+void HTList_insertObjectAt(HTList *me, void *newObject,
+			   int pos)
+{
+    HTList *newNode;
+    HTList *temp = me;
+    HTList *prevNode;
+    int Pos = pos;
+
+    if (!temp) {
+	CTRACE((tfp, "HTList: Trying to add object %p to a nonexisting list\n",
+		newObject));
+	return;
+    }
+    if (Pos < 0) {
+	Pos = 0;
+	CTRACE((tfp, "HTList: Treating negative object position %d as %d.\n",
+		pos, Pos));
+    }
+
+    prevNode = temp;
+    while ((temp = temp->next)) {
+	if (Pos == 0) {
+	    if ((newNode = typeMalloc(HTList)) == NULL)
+		  outofmem(__FILE__, "HTList_addObjectAt");
+
+	    assert(newNode != NULL);
+
+	    newNode->object = newObject;
+	    newNode->next = temp;
+	    if (prevNode)
+		prevNode->next = newNode;
+	    return;
+	}
+	prevNode = temp;
+	Pos--;
+    }
+    if (Pos >= 0)
+	HTList_addObject(prevNode, newObject);
+
+    return;
+}
+
+/*	Unlink specified object from list.
+ *	It does not free memory.
+ */
+BOOL HTList_unlinkObject(HTList *me, void *oldObject)
+{
+    HTList *temp = me;
+    HTList *prevNode;
+
+    if (temp && oldObject) {
+	while (temp->next) {
+	    prevNode = temp;
+	    temp = temp->next;
+	    if (temp->object == oldObject) {
+		prevNode->next = temp->next;
+		temp->next = NULL;
+		temp->object = NULL;
+		return YES;	/* Success */
+	    }
+	}
+    }
+    return NO;			/* object not found or NULL list */
+}
+
+/*	Remove specified object from list.
+*/
+BOOL HTList_removeObject(HTList *me, void *oldObject)
+{
+    HTList *temp = me;
+    HTList *prevNode;
+
+    if (temp && oldObject) {
+	while (temp->next) {
+	    prevNode = temp;
+	    temp = temp->next;
+	    if (temp->object == oldObject) {
+		prevNode->next = temp->next;
+		FREE(temp);
+		return YES;	/* Success */
+	    }
+	}
+    }
+    return NO;			/* object not found or NULL list */
+}
+
+/*	Remove object at a given position in the list, where 0 is the
+ *	object pointed to by the head (returns a pointer to the element
+ *	(->object) for the object, and NULL if the list is empty, or
+ *	if it doesn't exist - Yuk!).
+ */
+void *HTList_removeObjectAt(HTList *me, int position)
+{
+    HTList *temp = me;
+    HTList *prevNode;
+    int pos = position;
+
+    if (!temp || pos < 0)
+	return NULL;
+
+    prevNode = temp;
+    while ((temp = temp->next)) {
+	if (pos == 0) {
+	    prevNode->next = temp->next;
+	    prevNode = temp;
+	    FREE(temp);
+	    return prevNode->object;
+	}
+	prevNode = temp;
+	pos--;
+    }
+
+    return NULL;		/* Reached the end of the list */
+}
+
+/*	Unlink object from START of list (the Last one inserted
+ *	via HTList_linkObject(), and pointed to by the head).
+ *	It does not free memory.
+ */
+void *HTList_unlinkLastObject(HTList *me)
+{
+    HTList *lastNode;
+    void *lastObject;
+
+    if (me && me->next) {
+	lastNode = me->next;
+	lastObject = lastNode->object;
+	me->next = lastNode->next;
+	lastNode->next = NULL;
+	lastNode->object = NULL;
+	return lastObject;
+
+    } else {			/* Empty list */
+	return NULL;
+    }
+}
+
+/*	Remove object from START of list (the Last one inserted
+ *	via HTList_addObject(), and pointed to by the head).
+ */
+void *HTList_removeLastObject(HTList *me)
+{
+    HTList *lastNode;
+    void *lastObject;
+
+    if (me && me->next) {
+	lastNode = me->next;
+	lastObject = lastNode->object;
+	me->next = lastNode->next;
+	FREE(lastNode);
+	return lastObject;
+
+    } else {			/* Empty list */
+	return NULL;
+    }
+}
+
+/*	Remove object from END of list (the First one inserted
+ *	via HTList_addObject(), and furthest from the head).
+ */
+void *HTList_removeFirstObject(HTList *me)
+{
+    HTList *temp = me;
+    HTList *prevNode;
+    void *firstObject;
+
+    if (!temp)
+	return NULL;
+
+    prevNode = temp;
+    if (temp->next) {
+	while (temp->next) {
+	    prevNode = temp;
+	    temp = temp->next;
+	}
+	firstObject = temp->object;
+	prevNode->next = NULL;
+	FREE(temp);
+	return firstObject;
+
+    } else {			/* Empty list */
+	return NULL;
+    }
+}
+
+/*	Determine total number of objects in the list,
+ *	not counting the head.
+ */
+int HTList_count(HTList *me)
+{
+    HTList *temp = me;
+    int count = 0;
+
+    if (temp)
+	while ((temp = temp->next))
+	    count++;
+
+    return count;
+}
+
+/*	Determine position of an object in the list (a value of 0
+ *	means it is pointed to by the head; returns -1 if not found).
+ */
+int HTList_indexOf(HTList *me, void *object)
+{
+    HTList *temp = me;
+    int position = 0;
+
+    if (temp) {
+	while ((temp = temp->next)) {
+	    if (temp->object == object)
+		return position;
+	    position++;
+	}
+    }
+
+    return -1;			/* Object not in the list */
+}
+
+/*	Return pointer to the object at a specified position in the list,
+ *	where 0 is the object pointed to by the head (returns NULL if
+ *	the list is empty, or if it doesn't exist - Yuk!).
+ */
+void *HTList_objectAt(HTList *me, int position)
+{
+    HTList *temp = me;
+    int pos = position;
+
+    if (!temp || pos < 0)
+	return NULL;
+
+    while ((temp = temp->next)) {
+	if (pos == 0)
+	    return temp->object;
+	pos--;
+    }
+
+    return NULL;		/* Reached the end of the list */
+}
diff --git a/WWW/Library/Implementation/HTList.h b/WWW/Library/Implementation/HTList.h
new file mode 100644
index 00000000..93f91473
--- /dev/null
+++ b/WWW/Library/Implementation/HTList.h
@@ -0,0 +1,142 @@
+
+/*              List object
+ *
+ *      The list object is a generic container for storing collections
+ *      of things in order.
+ */
+#ifndef HTLIST_H
+#define HTLIST_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    typedef struct _HTList HTList;
+
+    struct _HTList {
+	void *object;
+	HTList *next;
+    };
+
+/*	Fast macro to traverse a list.  Call it first with copy of the list
+ *	header.  It returns the first object and increments the passed list
+ *	pointer.  Call it with the same variable until it returns NULL.
+ */
+#define HTList_nextObject(me) \
+	((me) && ((me) = (me)->next) ? (me)->object : NULL)
+
+/*	Macro to find object pointed to by the head (returns NULL
+ *	if list is empty, OR if it doesn't exist - Yuk!)
+ */
+#define HTList_lastObject(me) \
+	((me) && (me)->next ? (me)->next->object : NULL)
+
+/*	Macro to check if a list is empty (or doesn't exist - Yuk!)
+*/
+#define HTList_isEmpty(me) ((me) ? ((me)->next == NULL) : YES)
+
+/*	Create list.
+*/
+    extern HTList *HTList_new(void);
+
+/*	Delete list.
+*/
+    extern void HTList_delete(HTList *me);
+
+/*	Reverse a list.
+*/
+    extern HTList *HTList_reverse(HTList *start);
+
+/*	Append two lists, making second list empty.
+*/
+    extern HTList *HTList_appendList(HTList *start,
+				     HTList *tail);
+
+/*      Add object to START of list (so it is pointed to by the head).
+*/
+    extern void HTList_addObject(HTList *me,
+				 void *newObject);
+
+/*      Append object to END of list (furthest from the head).
+*/
+    extern void HTList_appendObject(HTList *me,
+				    void *newObject);
+
+/*	Insert an object into the list at a specified position.
+ *      If position is 0, this places the object at the head of the list
+ *      and is equivalent to HTList_addObject().
+ */
+    extern void HTList_insertObjectAt(HTList *me,
+				      void *newObject,
+				      int pos);
+
+/*	Remove specified object from list.
+*/
+    extern BOOL HTList_removeObject(HTList *me,
+				    void *oldObject);
+
+/*	Remove object at a given position in the list, where 0 is the
+ *	object pointed to by the head (returns a pointer to the element
+ *	(->object) for the object, and NULL if the list is empty, or
+ *	if it doesn't exist - Yuk!).
+ */
+    extern void *HTList_removeObjectAt(HTList *me,
+				       int position);
+
+/*	Remove object from START of list (the Last one inserted
+ *	via HTList_addObject(), and pointed to by the head).
+ */
+    extern void *HTList_removeLastObject(HTList *me);
+
+/*	Remove object from END of list (the First one inserted
+ *	via HTList_addObject(), and furthest from the head).
+ */
+    extern void *HTList_removeFirstObject(HTList *me);
+
+/*	Determine total number of objects in the list,
+ *	not counting the head.
+ */
+    extern int HTList_count(HTList *me);
+
+/*	Determine position of an object in the list (a value of 0
+ *	means it is pointed to by the head; returns -1 if not found).
+ */
+    extern int HTList_indexOf(HTList *me,
+			      void *object);
+
+/*	Return pointer to the object at a specified position in the list,
+ *	where 0 is the object pointed to by the head (returns NULL if
+ *	the list is empty, or if it doesn't exist - Yuk!).
+ */
+    extern void *HTList_objectAt(HTList *me,
+				 int position);
+
+/*      Link object to START of list (so it is pointed to by the head).
+ *
+ *      Unlike HTList_addObject(), it does not malloc memory for HTList entry,
+ *	it use already allocated memory which should not be free'd by any
+ *	list operations (optimization).
+ */
+    extern void HTList_linkObject(HTList *me,
+				  void *newObject,
+				  HTList *newNode);
+
+/*	Unlink object from START of list (the Last one inserted
+ *	via HTList_linkObject(), and pointed to by the head).
+ *	It does not free memory.
+ */
+    extern void *HTList_unlinkLastObject(HTList *me);
+
+/*	Unlink specified object from list.
+ *	It does not free memory.
+ */
+    extern BOOL HTList_unlinkObject(HTList *me,
+				    void *oldObject);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTLIST_H */
diff --git a/WWW/Library/Implementation/HTMIME.c b/WWW/Library/Implementation/HTMIME.c
new file mode 100644
index 00000000..bdb86ec9
--- /dev/null
+++ b/WWW/Library/Implementation/HTMIME.c
@@ -0,0 +1,2601 @@
+/*
+ * $LynxId: HTMIME.c,v 1.76 2011/06/11 12:10:40 tom Exp $
+ *
+ *			MIME Message Parse			HTMIME.c
+ *			==================
+ *
+ *	This is RFC 1341-specific code.
+ *	The input stream pushed into this parser is assumed to be
+ *	stripped on CRs, ie lines end with LF, not CR LF.
+ *	(It is easy to change this except for the body part where
+ *	conversion can be slow.)
+ *
+ * History:
+ *	   Feb 92	Written Tim Berners-Lee, CERN
+ *
+ */
+
+#define HTSTREAM_INTERNAL 1
+
+#include <HTUtils.h>
+#include <HTMIME.h>		/* Implemented here */
+#include <HTTP.h>		/* for redirecting_url */
+#include <HTAlert.h>
+#include <HTFile.h>
+#include <HTCJK.h>
+#include <UCMap.h>
+#include <UCDefs.h>
+#include <UCAux.h>
+
+#include <LYCookie.h>
+#include <LYCharSets.h>
+#include <LYCharUtils.h>
+#include <LYStrings.h>
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+/*		MIME Object
+ *		-----------
+ */
+
+typedef enum {
+    MIME_TRANSPARENT,		/* put straight through to target ASAP! */
+    /* states for "Transfer-Encoding: chunked" */
+    MIME_CHUNKED,
+    mcCHUNKED_COUNT_DIGIT,
+    mcCHUNKED_COUNT_CR,
+    mcCHUNKED_COUNT_LF,
+    mcCHUNKED_EXTENSION,
+    mcCHUNKED_DATA,
+    mcCHUNKED_DATA_CR,
+    mcCHUNKED_DATA_LF,
+    /* character state-machine */
+    miBEGINNING_OF_LINE,	/* first character and not a continuation */
+    miA,
+    miACCEPT_RANGES,
+    miAGE,
+    miAL,
+    miALLOW,
+    miALTERNATES,
+    miC,
+    miCACHE_CONTROL,
+    miCO,
+    miCOOKIE,
+    miCON,
+    miCONNECTION,
+    miCONTENT_,
+    miCONTENT_BASE,
+    miCONTENT_DISPOSITION,
+    miCONTENT_ENCODING,
+    miCONTENT_FEATURES,
+    miCONTENT_L,
+    miCONTENT_LANGUAGE,
+    miCONTENT_LENGTH,
+    miCONTENT_LOCATION,
+    miCONTENT_MD5,
+    miCONTENT_RANGE,
+    miCONTENT_T,
+    miCONTENT_TRANSFER_ENCODING,
+    miCONTENT_TYPE,
+    miDATE,
+    miE,
+    miETAG,
+    miEXPIRES,
+    miKEEP_ALIVE,
+    miL,
+    miLAST_MODIFIED,
+    miLINK,
+    miLOCATION,
+    miP,
+    miPR,
+    miPRAGMA,
+    miPROXY_AUTHENTICATE,
+    miPUBLIC,
+    miR,
+    miRE,
+    miREFRESH,
+    miRETRY_AFTER,
+    miS,
+    miSAFE,
+    miSE,
+    miSERVER,
+    miSET_COOKIE,
+    miSET_COOKIE1,
+    miSET_COOKIE2,
+    miT,
+    miTITLE,
+    miTRANSFER_ENCODING,
+    miU,
+    miUPGRADE,
+    miURI,
+    miV,
+    miVARY,
+    miVIA,
+    miW,
+    miWARNING,
+    miWWW_AUTHENTICATE,
+    miSKIP_GET_VALUE,		/* Skip space then get value */
+    miGET_VALUE,		/* Get value till white space */
+    miJUNK_LINE,		/* Ignore the rest of this folded line */
+    miNEWLINE,			/* Just found a LF .. maybe continuation */
+    miCHECK,			/* check against check_pointer */
+    MIME_NET_ASCII,		/* Translate from net ascii */
+    MIME_IGNORE			/* Ignore entire file */
+    /* TRANSPARENT and IGNORE are defined as stg else in _WINDOWS */
+} MIME_state;
+
+#define VALUE_SIZE 5120		/* @@@@@@@ Arbitrary? */
+struct _HTStream {
+    const HTStreamClass *isa;
+
+    BOOL net_ascii;		/* Is input net ascii? */
+    MIME_state state;		/* current state */
+    MIME_state if_ok;		/* got this state if match */
+    MIME_state field;		/* remember which field */
+    MIME_state fold_state;	/* state on a fold */
+    BOOL head_only;		/* only parsing header */
+    BOOL pickup_redirection;	/* parsing for location */
+    BOOL no_streamstack;	/* use sink directly */
+    const char *check_pointer;	/* checking input */
+
+    char *value_pointer;	/* storing values */
+    char value[VALUE_SIZE];
+
+    HTParentAnchor *anchor;	/* Given on creation */
+    HTStream *sink;		/* Given on creation */
+
+    char *boundary;		/* For multipart */
+    char *set_cookie;		/* Set-Cookie */
+    char *set_cookie2;		/* Set-Cookie2 */
+    char *location;		/* Location */
+
+    char *refresh_url;		/* "Refresh:" URL */
+
+    HTFormat c_t_encoding;	/* Content-Transfer-Encoding */
+    char *compression_encoding;
+
+    BOOL chunked_encoding;	/* Transfer-Encoding: chunked */
+    long chunked_size;		/* ...counter for "chunked" */
+
+    HTFormat format;		/* Content-Type */
+    HTStream *target;		/* While writing out */
+    HTStreamClass targetClass;
+
+    HTAtom *targetRep;		/* Converting into? */
+};
+
+/*
+ *  This function is for trimming off any paired
+ *  open- and close-double quotes from header values.
+ *  It does not parse the string for embedded quotes,
+ *  and will not modify the string unless both the
+ *  first and last characters are double-quotes. - FM
+ */
+void HTMIME_TrimDoubleQuotes(char *value)
+{
+    size_t i;
+    char *cp = value;
+
+    if (isEmpty(cp) || *cp != '"')
+	return;
+
+    i = strlen(cp);
+    if (cp[(i - 1)] != '"')
+	return;
+    else
+	cp[(i - 1)] = '\0';
+
+    for (i = 0; value[i]; i++)
+	value[i] = cp[(i + 1)];
+}
+
+/*
+ * Check if the token from "Content-Encoding" corresponds to a compression
+ * type.
+ */
+static BOOL content_is_compressed(HTStream *me)
+{
+    char *encoding = me->anchor->content_encoding;
+    BOOL result = (BOOL) (HTEncodingToCompressType(encoding) != cftNone);
+
+    CTRACE((tfp, "content is%s compressed\n", result ? "" : " NOT"));
+    return result;
+}
+
+/*
+ * Strip quotes from a refresh-URL.
+ */
+static void dequote(char *url)
+{
+    size_t len;
+
+    len = strlen(url);
+    if (*url == '\'' && len > 1 && url[len - 1] == url[0]) {
+	url[len - 1] = '\0';
+	while ((url[0] = url[1]) != '\0') {
+	    ++url;
+	}
+    }
+}
+
+/*
+ * Strip off any compression-suffix from the address and check if the result
+ * looks like one of the presentable suffixes.  If so, return the corresponding
+ * MIME type.
+ */
+static const char *UncompressedContentType(HTStream *me, CompressFileType method)
+{
+    const char *result = 0;
+    char *address = me->anchor->address;
+    const char *expected = HTCompressTypeToSuffix(method);
+    const char *actual = strrchr(address, '.');
+
+    /*
+     * We have to ensure the suffix is consistent, to use HTFileFormat().
+     */
+    if (actual != 0 && !strcasecomp(actual, expected)) {
+	HTFormat format;
+	HTAtom *pencoding = 0;
+	const char *description = 0;
+
+	format = HTFileFormat(address, &pencoding, &description);
+	result = HTAtom_name(format);
+    }
+
+    return result;
+}
+
+static int pumpData(HTStream *me)
+{
+    CompressFileType method;
+    const char *new_encoding;
+    const char *new_content;
+
+    CTRACE((tfp, "Begin pumpData\n"));
+    /*
+     * If the content-type says it is compressed, and there is no
+     * content-encoding, check further and see if the address (omitting the
+     * suffix for a compressed type) looks like a type we can present.  If so,
+     * rearrange things so we'll present the StreamStack code with the
+     * presentable type, already marked as compressed.
+     */
+    CTRACE((tfp, "...address{%s}\n", me->anchor->address));
+    method = HTContentTypeToCompressType(me->anchor->content_type_params);
+    if ((method != cftNone)
+	&& isEmpty(me->anchor->content_encoding)
+	&& (new_content = UncompressedContentType(me, method)) != 0) {
+
+	new_encoding = HTCompressTypeToEncoding(method);
+	CTRACE((tfp, "reinterpreting as content-type:%s, encoding:%s\n",
+		new_content, new_encoding));
+
+	StrAllocCopy(me->anchor->content_encoding, new_encoding);
+	FREE(me->compression_encoding);
+	StrAllocCopy(me->compression_encoding, new_encoding);
+
+	strcpy(me->value, new_content);
+	StrAllocCopy(me->anchor->content_type_params, me->value);
+	me->format = HTAtom_for(me->value);
+    }
+
+    if (strchr(HTAtom_name(me->format), ';') != NULL) {
+	char *cp = NULL, *cp1, *cp2, *cp3 = NULL, *cp4;
+
+	CTRACE((tfp, "HTMIME: Extended MIME Content-Type is %s\n",
+		HTAtom_name(me->format)));
+	StrAllocCopy(cp, HTAtom_name(me->format));
+	/*
+	 * Note that the Content-Type value was converted
+	 * to lower case when we loaded into me->format,
+	 * but there may have been a mixed or upper-case
+	 * atom, so we'll force lower-casing again.  We
+	 * also stripped spaces and double-quotes, but
+	 * we'll make sure they're still gone from any
+	 * charset parameter we check.  - FM
+	 */
+	LYLowerCase(cp);
+	if ((cp1 = strchr(cp, ';')) != NULL) {
+	    BOOL chartrans_ok = NO;
+
+	    if ((cp2 = strstr(cp1, "charset")) != NULL) {
+		int chndl;
+
+		cp2 += 7;
+		while (*cp2 == ' ' || *cp2 == '=' || *cp2 == '"')
+		    cp2++;
+		StrAllocCopy(cp3, cp2);		/* copy to mutilate more */
+		for (cp4 = cp3; (*cp4 != '\0' && *cp4 != '"' &&
+				 *cp4 != ';' && *cp4 != ':' &&
+				 !WHITE(*cp4)); cp4++) ;	/* do nothing */
+		*cp4 = '\0';
+		cp4 = cp3;
+		chndl = UCGetLYhndl_byMIME(cp3);
+		if (UCCanTranslateFromTo(chndl,
+					 current_char_set)) {
+		    chartrans_ok = YES;
+		    *cp1 = '\0';
+		    me->format = HTAtom_for(cp);
+		    StrAllocCopy(me->anchor->charset, cp4);
+		    HTAnchor_setUCInfoStage(me->anchor, chndl,
+					    UCT_STAGE_MIME,
+					    UCT_SETBY_MIME);
+		} else if (chndl < 0) {		/* got something but we don't
+						   recognize it */
+		    chndl = UCLYhndl_for_unrec;
+		    if (chndl < 0)
+			/*
+			 * UCLYhndl_for_unrec not defined :-( fallback to
+			 * UCLYhndl_for_unspec which always valid.
+			 */
+			chndl = UCLYhndl_for_unspec;	/* always >= 0 */
+		    if (UCCanTranslateFromTo(chndl,
+					     current_char_set)) {
+			chartrans_ok = YES;
+			*cp1 = '\0';
+			me->format = HTAtom_for(cp);
+			HTAnchor_setUCInfoStage(me->anchor, chndl,
+						UCT_STAGE_MIME,
+						UCT_SETBY_DEFAULT);
+		    }
+		} else {
+		    /*
+		     * Something like 'big5' - we cannot translate it, but
+		     * the user may still be able to navigate the links.
+		     */
+		    *cp1 = '\0';
+		    me->format = HTAtom_for(cp);
+		    StrAllocCopy(me->anchor->charset, cp4);
+		    HTAnchor_setUCInfoStage(me->anchor, chndl,
+					    UCT_STAGE_MIME,
+					    UCT_SETBY_MIME);
+		}
+		if (chartrans_ok) {
+		    LYUCcharset *p_in =
+		    HTAnchor_getUCInfoStage(me->anchor,
+					    UCT_STAGE_MIME);
+		    LYUCcharset *p_out =
+		    HTAnchor_setUCInfoStage(me->anchor,
+					    current_char_set,
+					    UCT_STAGE_HTEXT,
+					    UCT_SETBY_DEFAULT);
+
+		    if (!p_out)
+			/*
+			 * Try again.
+			 */
+			p_out =
+			    HTAnchor_getUCInfoStage(me->anchor,
+						    UCT_STAGE_HTEXT);
+
+		    if (!strcmp(p_in->MIMEname,
+				"x-transparent")) {
+			HTPassEightBitRaw = TRUE;
+			HTAnchor_setUCInfoStage(me->anchor,
+						HTAnchor_getUCLYhndl(me->anchor,
+								     UCT_STAGE_HTEXT),
+						UCT_STAGE_MIME,
+						UCT_SETBY_DEFAULT);
+		    }
+		    if (!strcmp(p_out->MIMEname,
+				"x-transparent")) {
+			HTPassEightBitRaw = TRUE;
+			HTAnchor_setUCInfoStage(me->anchor,
+						HTAnchor_getUCLYhndl(me->anchor,
+								     UCT_STAGE_MIME),
+						UCT_STAGE_HTEXT,
+						UCT_SETBY_DEFAULT);
+		    }
+		    if ((p_in->enc != UCT_ENC_CJK)
+#ifdef EXP_JAPANESEUTF8_SUPPORT
+			&& ((p_in->enc != UCT_ENC_UTF8)
+			    || (p_out->enc != UCT_ENC_CJK))
+#endif
+			) {
+			HTCJK = NOCJK;
+			if (!(p_in->codepoints &
+			      UCT_CP_SUBSETOF_LAT1) &&
+			    chndl == current_char_set) {
+			    HTPassEightBitRaw = TRUE;
+			}
+		    } else if (p_out->enc == UCT_ENC_CJK) {
+			Set_HTCJK(p_in->MIMEname, p_out->MIMEname);
+		    }
+		} else {
+		    /*
+		     * Cannot translate.  If according to some heuristic the
+		     * given charset and the current display character both are
+		     * likely to be like ISO-8859 in structure, pretend we have
+		     * some kind of match.
+		     */
+		    BOOL given_is_8859 =
+		    (BOOL) (!StrNCmp(cp4, "iso-8859-", 9) &&
+			    isdigit(UCH(cp4[9])));
+		    BOOL given_is_8859like =
+		    (BOOL) (given_is_8859 ||
+			    !StrNCmp(cp4, "windows-", 8) ||
+			    !StrNCmp(cp4, "cp12", 4) ||
+			    !StrNCmp(cp4, "cp-12", 5));
+		    BOOL given_and_display_8859like =
+		    (BOOL) (given_is_8859like &&
+			    (strstr(LYchar_set_names[current_char_set],
+				    "ISO-8859") ||
+			     strstr(LYchar_set_names[current_char_set],
+				    "windows-")));
+
+		    if (given_and_display_8859like) {
+			*cp1 = '\0';
+			me->format = HTAtom_for(cp);
+		    }
+		    if (given_is_8859) {
+			cp1 = &cp4[10];
+			while (*cp1 &&
+			       isdigit(UCH(*cp1)))
+			    cp1++;
+			*cp1 = '\0';
+		    }
+		    if (given_and_display_8859like) {
+			StrAllocCopy(me->anchor->charset, cp4);
+			HTPassEightBitRaw = TRUE;
+		    }
+		    HTAlert(*cp4 ? cp4 : me->anchor->charset);
+		}
+		FREE(cp3);
+	    } else {
+		/*
+		 * No charset parameter is present.  Ignore all other
+		 * parameters, as we do when charset is present.  - FM
+		 */
+		*cp1 = '\0';
+		me->format = HTAtom_for(cp);
+	    }
+	}
+	FREE(cp);
+    }
+    /*
+     * If we have an Expires header and haven't already set the no_cache
+     * element for the anchor, check if we should set it based on that header. 
+     * - FM
+     */
+    if (me->anchor->no_cache == FALSE &&
+	me->anchor->expires != NULL) {
+	if (!strcmp(me->anchor->expires, "0")) {
+	    /*
+	     * The value is zero, which we treat as an absolute no-cache
+	     * directive.  - FM
+	     */
+	    me->anchor->no_cache = TRUE;
+	} else if (me->anchor->date != NULL) {
+	    /*
+	     * We have a Date header, so check if the value is less than or
+	     * equal to that.  - FM
+	     */
+	    if (LYmktime(me->anchor->expires, TRUE) <=
+		LYmktime(me->anchor->date, TRUE)) {
+		me->anchor->no_cache = TRUE;
+	    }
+	} else if (LYmktime(me->anchor->expires, FALSE) == 0) {
+	    /*
+	     * We don't have a Date header, and the value is in past for us.  -
+	     * FM
+	     */
+	    me->anchor->no_cache = TRUE;
+	}
+    }
+    StrAllocCopy(me->anchor->content_type,
+		 HTAtom_name(me->format));
+
+    if (me->set_cookie != NULL || me->set_cookie2 != NULL) {
+	LYSetCookie(me->set_cookie,
+		    me->set_cookie2,
+		    me->anchor->address);
+	FREE(me->set_cookie);
+	FREE(me->set_cookie2);
+    }
+    if (me->pickup_redirection) {
+	if (me->location && *me->location) {
+	    redirecting_url = me->location;
+	    me->location = NULL;
+	    if (me->targetRep != WWW_DEBUG || me->sink)
+		me->head_only = YES;
+
+	} else {
+	    permanent_redirection = FALSE;
+	    if (me->location) {
+		CTRACE((tfp, "HTTP: 'Location:' is zero-length!\n"));
+		HTAlert(REDIRECTION_WITH_BAD_LOCATION);
+	    }
+	    CTRACE((tfp, "HTTP: Failed to pick up location.\n"));
+	    if (me->location) {
+		FREE(me->location);
+	    } else {
+		HTAlert(REDIRECTION_WITH_NO_LOCATION);
+	    }
+	}
+    }
+    CTRACE((tfp, "...pumpData finished reading header\n"));
+    if (me->head_only) {
+	/* We are done! - kw */
+	me->state = MIME_IGNORE;
+    } else {
+
+	if (me->no_streamstack) {
+	    me->target = me->sink;
+	} else {
+	    if (!me->compression_encoding) {
+		CTRACE((tfp,
+			"HTMIME: MIME Content-Type is '%s', converting to '%s'\n",
+			HTAtom_name(me->format), HTAtom_name(me->targetRep)));
+	    } else {
+		/*
+		 * Change the format to that for "www/compressed" and set up a
+		 * stream to deal with it.  - FM
+		 */
+		CTRACE((tfp, "HTMIME: MIME Content-Type is '%s',\n",
+			HTAtom_name(me->format)));
+		me->format = HTAtom_for("www/compressed");
+		CTRACE((tfp, "        Treating as '%s'.  Converting to '%s'\n",
+			HTAtom_name(me->format), HTAtom_name(me->targetRep)));
+		FREE(me->compression_encoding);
+	    }
+	    me->target = HTStreamStack(me->format, me->targetRep,
+				       me->sink, me->anchor);
+	    if (!me->target) {
+		CTRACE((tfp, "HTMIME: Can't translate! ** \n"));
+		me->target = me->sink;	/* Cheat */
+	    }
+	}
+	if (me->target) {
+	    me->targetClass = *me->target->isa;
+	    /*
+	     * Pump rest of data right through, according to the transfer encoding.
+	     */
+	    me->state = (me->chunked_encoding
+			 ? MIME_CHUNKED
+			 : MIME_TRANSPARENT);
+	} else {
+	    me->state = MIME_IGNORE;	/* What else to do? */
+	}
+	if (me->refresh_url != NULL && !content_is_compressed(me)) {
+	    char *url = NULL;
+	    char *num = NULL;
+	    char *txt = NULL;
+	    const char *base = "";	/* FIXME: refresh_url may be relative to doc */
+
+	    LYParseRefreshURL(me->refresh_url, &num, &url);
+	    if (url != NULL && me->format == WWW_HTML) {
+		CTRACE((tfp,
+			"Formatting refresh-url as first line of result\n"));
+		HTSprintf0(&txt, gettext("Refresh: "));
+		HTSprintf(&txt, gettext("%s seconds "), num);
+		dequote(url);
+		HTSprintf(&txt, "<a href=\"%s%s\">%s</a><br>", base, url, url);
+		CTRACE((tfp, "URL %s%s\n", base, url));
+		(me->isa->put_string) (me, txt);
+		free(txt);
+	    }
+	    FREE(num);
+	    FREE(url);
+	}
+    }
+    CTRACE((tfp, "...end of pumpData\n"));
+    return HT_OK;
+}
+
+static int dispatchField(HTStream *me)
+{
+    int i, j;
+    char *cp;
+
+    *me->value_pointer = '\0';
+
+    cp = me->value_pointer;
+    while ((cp > me->value) && *(--cp) == ' ')	/* S/390 -- gil -- 0146 */
+	/*
+	 * Trim trailing spaces.
+	 */
+	*cp = '\0';
+
+    switch (me->field) {
+    case miACCEPT_RANGES:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Accept-Ranges: '%s'\n",
+		me->value));
+	break;
+    case miAGE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Age: '%s'\n",
+		me->value));
+	break;
+    case miALLOW:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Allow: '%s'\n",
+		me->value));
+	break;
+    case miALTERNATES:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Alternates: '%s'\n",
+		me->value));
+	break;
+    case miCACHE_CONTROL:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Cache-Control: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Convert to lowercase and indicate in anchor.  - FM
+	 */
+	LYLowerCase(me->value);
+	StrAllocCopy(me->anchor->cache_control, me->value);
+	/*
+	 * Check whether to set no_cache for the anchor.  - FM
+	 */
+	{
+	    char *cp1, *cp0 = me->value;
+
+	    while ((cp1 = strstr(cp0, "no-cache")) != NULL) {
+		cp1 += 8;
+		while (*cp1 != '\0' && WHITE(*cp1))
+		    cp1++;
+		if (*cp1 == '\0' || *cp1 == ';') {
+		    me->anchor->no_cache = TRUE;
+		    break;
+		}
+		cp0 = cp1;
+	    }
+	    if (me->anchor->no_cache == TRUE)
+		break;
+	    cp0 = me->value;
+	    while ((cp1 = strstr(cp0, "max-age")) != NULL) {
+		cp1 += 7;
+		while (*cp1 != '\0' && WHITE(*cp1))
+		    cp1++;
+		if (*cp1 == '=') {
+		    cp1++;
+		    while (*cp1 != '\0' && WHITE(*cp1))
+			cp1++;
+		    if (isdigit(UCH(*cp1))) {
+			cp0 = cp1;
+			while (isdigit(UCH(*cp1)))
+			    cp1++;
+			if (*cp0 == '0' && cp1 == (cp0 + 1)) {
+			    me->anchor->no_cache = TRUE;
+			    break;
+			}
+		    }
+		}
+		cp0 = cp1;
+	    }
+	}
+	break;
+    case miCOOKIE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Cookie: '%s'\n",
+		me->value));
+	break;
+    case miCONNECTION:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Connection: '%s'\n",
+		me->value));
+	break;
+    case miCONTENT_BASE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Base: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor.  - FM
+	 */
+	StrAllocCopy(me->anchor->content_base, me->value);
+	break;
+    case miCONTENT_DISPOSITION:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Disposition: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor.  - FM
+	 */
+	StrAllocCopy(me->anchor->content_disposition, me->value);
+	/*
+	 * It's not clear yet from existing RFCs and IDs whether we should be
+	 * looking for file;, attachment;, and/or inline; before the
+	 * filename=value, so we'll just search for "filename" followed by '='
+	 * and just hope we get the intended value.  It is purely a suggested
+	 * name, anyway.  - FM
+	 */
+	cp = me->anchor->content_disposition;
+	while (*cp != '\0' && strncasecomp(cp, "filename", 8))
+	    cp++;
+	if (*cp == '\0')
+	    break;
+	cp += 8;
+	while ((*cp != '\0') && (WHITE(*cp) || *cp == '='))
+	    cp++;
+	if (*cp == '\0')
+	    break;
+	while (*cp != '\0' && WHITE(*cp))
+	    cp++;
+	if (*cp == '\0')
+	    break;
+	StrAllocCopy(me->anchor->SugFname, cp);
+	if (*me->anchor->SugFname == '"') {
+	    if ((cp = strchr((me->anchor->SugFname + 1),
+			     '"')) != NULL) {
+		*(cp + 1) = '\0';
+		HTMIME_TrimDoubleQuotes(me->anchor->SugFname);
+	    } else {
+		FREE(me->anchor->SugFname);
+		break;
+	    }
+	}
+	cp = me->anchor->SugFname;
+	while (*cp != '\0' && !WHITE(*cp))
+	    cp++;
+	*cp = '\0';
+	if (*me->anchor->SugFname == '\0')
+	    FREE(me->anchor->SugFname);
+	break;
+    case miCONTENT_ENCODING:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Encoding: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value) ||
+	    !strcasecomp(me->value, "identity"))
+	    break;
+	/*
+	 * Convert to lowercase and indicate in anchor.  - FM
+	 */
+	LYLowerCase(me->value);
+	StrAllocCopy(me->anchor->content_encoding, me->value);
+	FREE(me->compression_encoding);
+	if (content_is_compressed(me)) {
+	    /*
+	     * Save it to use as a flag for setting up a "www/compressed"
+	     * target.  - FM
+	     */
+	    StrAllocCopy(me->compression_encoding, me->value);
+	} else {
+	    /*
+	     * Some server indicated "8bit", "7bit" or "binary"
+	     * inappropriately.  We'll ignore it.  - FM
+	     */
+	    CTRACE((tfp, "                Ignoring it!\n"));
+	}
+	break;
+    case miCONTENT_FEATURES:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Features: '%s'\n",
+		me->value));
+	break;
+    case miCONTENT_LANGUAGE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Language: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Convert to lowercase and indicate in anchor.  - FM
+	 */
+	LYLowerCase(me->value);
+	StrAllocCopy(me->anchor->content_language, me->value);
+	break;
+    case miCONTENT_LENGTH:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Length: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Convert to integer and indicate in anchor.  - FM
+	 */
+	me->anchor->content_length = atoi(me->value);
+	if (me->anchor->content_length < 0)
+	    me->anchor->content_length = 0;
+	CTRACE((tfp, "        Converted to integer: '%ld'\n",
+		me->anchor->content_length));
+	break;
+    case miCONTENT_LOCATION:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Location: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor.  - FM
+	 */
+	StrAllocCopy(me->anchor->content_location, me->value);
+	break;
+    case miCONTENT_MD5:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-MD5: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor.  - FM
+	 */
+	StrAllocCopy(me->anchor->content_md5, me->value);
+	break;
+    case miCONTENT_RANGE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Range: '%s'\n",
+		me->value));
+	break;
+    case miCONTENT_TRANSFER_ENCODING:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Transfer-Encoding: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Force the Content-Transfer-Encoding value to all lower case.  - FM
+	 */
+	LYLowerCase(me->value);
+	me->c_t_encoding = HTAtom_for(me->value);
+	break;
+    case miCONTENT_TYPE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Content-Type: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Force the Content-Type value to all lower case and strip spaces and
+	 * double-quotes.  - FM
+	 */
+	for (i = 0, j = 0; me->value[i]; i++) {
+	    if (me->value[i] != ' ' && me->value[i] != '"') {
+		me->value[j++] = (char) TOLOWER(me->value[i]);
+	    }
+	}
+	me->value[j] = '\0';
+	me->format = HTAtom_for(me->value);
+	StrAllocCopy(me->anchor->content_type_params, me->value);
+	break;
+    case miDATE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Date: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor.  - FM
+	 */
+	StrAllocCopy(me->anchor->date, me->value);
+	break;
+    case miETAG:
+	/* Do not trim double quotes:  an entity tag consists of an opaque
+	 * quoted string, possibly prefixed by a weakness indicator.
+	 */
+	CTRACE((tfp, "HTMIME: PICKED UP ETag: %s\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor.  - FM
+	 */
+	StrAllocCopy(me->anchor->ETag, me->value);
+	break;
+    case miEXPIRES:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Expires: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor.  - FM
+	 */
+	StrAllocCopy(me->anchor->expires, me->value);
+	break;
+    case miKEEP_ALIVE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Keep-Alive: '%s'\n",
+		me->value));
+	break;
+    case miLAST_MODIFIED:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Last-Modified: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor.  - FM
+	 */
+	StrAllocCopy(me->anchor->last_modified, me->value);
+	break;
+    case miLINK:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Link: '%s'\n",
+		me->value));
+	break;
+    case miLOCATION:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Location: '%s'\n",
+		me->value));
+	if (me->pickup_redirection && !me->location) {
+	    StrAllocCopy(me->location, me->value);
+	} else {
+	    CTRACE((tfp, "HTMIME: *** Ignoring Location!\n"));
+	}
+	break;
+    case miPRAGMA:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Pragma: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Check whether to set no_cache for the anchor.  - FM
+	 */
+	if (!strcmp(me->value, "no-cache"))
+	    me->anchor->no_cache = TRUE;
+	break;
+    case miPROXY_AUTHENTICATE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Proxy-Authenticate: '%s'\n",
+		me->value));
+	break;
+    case miPUBLIC:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Public: '%s'\n",
+		me->value));
+	break;
+    case miREFRESH:		/* nonstandard: Netscape */
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Refresh: '%s'\n",
+		me->value));
+	StrAllocCopy(me->refresh_url, me->value);
+	break;
+    case miRETRY_AFTER:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Retry-After: '%s'\n",
+		me->value));
+	break;
+    case miSAFE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Safe: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor if "YES" or "TRUE".  - FM
+	 */
+	if (!strcasecomp(me->value, "YES") ||
+	    !strcasecomp(me->value, "TRUE")) {
+	    me->anchor->safe = TRUE;
+	} else if (!strcasecomp(me->value, "NO") ||
+		   !strcasecomp(me->value, "FALSE")) {
+	    /*
+	     * If server explicitly tells us that it has changed its mind,
+	     * reset flag in anchor.  - kw
+	     */
+	    me->anchor->safe = FALSE;
+	}
+	break;
+    case miSERVER:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Server: '%s'\n",
+		me->value));
+	if (!(me->value && *me->value))
+	    break;
+	/*
+	 * Indicate in anchor.  - FM
+	 */
+	StrAllocCopy(me->anchor->server, me->value);
+	break;
+    case miSET_COOKIE1:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Set-Cookie: '%s'\n",
+		me->value));
+	if (me->set_cookie == NULL) {
+	    StrAllocCopy(me->set_cookie, me->value);
+	} else {
+	    StrAllocCat(me->set_cookie, ", ");
+	    StrAllocCat(me->set_cookie, me->value);
+	}
+	break;
+    case miSET_COOKIE2:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Set-Cookie2: '%s'\n",
+		me->value));
+	if (me->set_cookie2 == NULL) {
+	    StrAllocCopy(me->set_cookie2, me->value);
+	} else {
+	    StrAllocCat(me->set_cookie2, ", ");
+	    StrAllocCat(me->set_cookie2, me->value);
+	}
+	break;
+    case miTITLE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Title: '%s'\n",
+		me->value));
+	break;
+    case miTRANSFER_ENCODING:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Transfer-Encoding: '%s'\n",
+		me->value));
+	if (!strcmp(me->value, "chunked"))
+	    me->chunked_encoding = YES;
+	break;
+    case miUPGRADE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Upgrade: '%s'\n",
+		me->value));
+	break;
+    case miURI:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP URI: '%s'\n",
+		me->value));
+	break;
+    case miVARY:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Vary: '%s'\n",
+		me->value));
+	break;
+    case miVIA:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Via: '%s'\n",
+		me->value));
+	break;
+    case miWARNING:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP Warning: '%s'\n",
+		me->value));
+	break;
+    case miWWW_AUTHENTICATE:
+	HTMIME_TrimDoubleQuotes(me->value);
+	CTRACE((tfp, "HTMIME: PICKED UP WWW-Authenticate: '%s'\n",
+		me->value));
+	break;
+    default:			/* Should never get here */
+	return HT_ERROR;
+    }
+    return HT_OK;
+}
+
+/*_________________________________________________________________________
+ *
+ *			A C T I O N	R O U T I N E S
+ */
+
+/*	Character handling
+ *	------------------
+ *
+ *	This is a FSM parser. It ignores field names it does not understand.
+ *	Folded header fields are recognized.  Lines without a fieldname at
+ *	the beginning (that are not folded continuation lines) are ignored
+ *	as unknown field names.  Fields with empty values are not picked up.
+ */
+static void HTMIME_put_character(HTStream *me, int c)
+{
+    /* MUST BE FAST */
+    switch (me->state) {
+      begin_transparent:
+    case MIME_TRANSPARENT:
+	(*me->targetClass.put_character) (me->target, c);
+	return;
+
+	/* RFC-2616 describes chunked transfer coding */
+    case mcCHUNKED_DATA:
+	(*me->targetClass.put_character) (me->target, c);
+	me->chunked_size--;
+	if (me->chunked_size <= 0)
+	    me->state = mcCHUNKED_DATA_CR;
+	return;
+
+    case mcCHUNKED_DATA_CR:
+	me->state = mcCHUNKED_DATA_LF;
+	if (c == CR) {
+	    return;
+	}
+	/* FALLTHRU */
+
+    case mcCHUNKED_DATA_LF:
+	me->state = MIME_CHUNKED;
+	if (c == LF) {
+	    return;
+	}
+
+	CTRACE((tfp, "HTIME_put_character expected LF in chunked data\n"));
+	me->state = MIME_TRANSPARENT;
+	goto begin_transparent;
+
+	/* FALLTHRU */
+      begin_chunked:
+    case MIME_CHUNKED:
+	me->chunked_size = 0;
+	me->state = mcCHUNKED_COUNT_DIGIT;
+
+	/* FALLTHRU */
+    case mcCHUNKED_COUNT_DIGIT:
+	if (isxdigit(UCH(c))) {
+	    me->chunked_size <<= 4;
+	    if (isdigit(UCH(c)))
+		me->chunked_size += UCH(c) - '0';
+	    else
+		me->chunked_size += TOUPPER(UCH(c)) - 'A' + 10;
+	    return;
+	}
+	if (c == ';')
+	    me->state = mcCHUNKED_EXTENSION;
+
+	/* FALLTHRU */
+    case mcCHUNKED_EXTENSION:
+	if (c != CR && c != LF) {
+	    return;
+	}
+	me->state = mcCHUNKED_COUNT_CR;
+
+	/* FALLTHRU */
+    case mcCHUNKED_COUNT_CR:
+	me->state = mcCHUNKED_COUNT_LF;
+	if (c == CR) {
+	    return;
+	}
+
+	/* FALLTHRU */
+    case mcCHUNKED_COUNT_LF:
+	me->state = ((me->chunked_size != 0)
+		     ? mcCHUNKED_DATA
+		     : MIME_CHUNKED);
+	if (c == LF) {
+	    return;
+	}
+	goto begin_chunked;
+
+    default:
+	break;
+    }
+
+    /*
+     * This slightly simple conversion just strips CR and turns LF to newline. 
+     * On unix LF is \n but on Mac \n is CR for example.  See NetToText for an
+     * implementation which preserves single CR or LF.
+     */
+    if (me->net_ascii) {
+	/*
+	 * <sigh> This is evidence that at one time, this code supported
+	 * local character sets other than ASCII.  But there is so much
+	 * code in HTTP.c that depends on line_buffer's having been
+	 * translated to local character set that I needed to put the
+	 * FROMASCII translation there, leaving this translation purely
+	 * destructive.  -- gil
+	 */
+	/* S/390 -- gil -- 0118 */
+#ifndef   NOT_ASCII
+	c = FROMASCII(c);
+#endif /* NOT_ASCII */
+	if (c == CR)
+	    return;
+	else if (c == LF)
+	    c = '\n';
+    }
+
+    switch (me->state) {
+
+    case MIME_IGNORE:
+	return;
+
+    case MIME_TRANSPARENT:	/* Not reached see above */
+    case MIME_CHUNKED:
+    case mcCHUNKED_COUNT_DIGIT:
+    case mcCHUNKED_COUNT_CR:
+    case mcCHUNKED_COUNT_LF:
+    case mcCHUNKED_EXTENSION:
+    case mcCHUNKED_DATA:
+    case mcCHUNKED_DATA_CR:
+    case mcCHUNKED_DATA_LF:
+	return;
+
+    case MIME_NET_ASCII:
+	(*me->targetClass.put_character) (me->target, c);	/* MUST BE FAST */
+	return;
+
+    case miNEWLINE:
+	if (c != '\n' && WHITE(c)) {	/* Folded line */
+	    me->state = me->fold_state;		/* pop state before newline */
+	    if (me->state == miGET_VALUE &&
+		me->value_pointer && me->value_pointer != me->value &&
+		!WHITE(*(me->value_pointer - 1))) {
+		c = ' ';
+		goto GET_VALUE;	/* will add space to value if it fits - kw */
+	    }
+	    break;
+	} else if (me->fold_state == miGET_VALUE) {
+	    /* Got a field, and now we know it's complete - so
+	     * act on it. - kw */
+	    dispatchField(me);
+	}
+	/* FALLTHRU */
+
+    case miBEGINNING_OF_LINE:
+	me->net_ascii = YES;
+	switch (c) {
+	case 'a':
+	case 'A':
+	    me->state = miA;
+	    CTRACE((tfp, "HTMIME: Got 'A' at beginning of line, state now A\n"));
+	    break;
+
+	case 'c':
+	case 'C':
+	    me->state = miC;
+	    CTRACE((tfp, "HTMIME: Got 'C' at beginning of line, state now C\n"));
+	    break;
+
+	case 'd':
+	case 'D':
+	    me->check_pointer = "ate:";
+	    me->if_ok = miDATE;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Got 'D' at beginning of line, checking for 'ate:'\n"));
+	    break;
+
+	case 'e':
+	case 'E':
+	    me->state = miE;
+	    CTRACE((tfp, "HTMIME: Got 'E' at beginning of line, state now E\n"));
+	    break;
+
+	case 'k':
+	case 'K':
+	    me->check_pointer = "eep-alive:";
+	    me->if_ok = miKEEP_ALIVE;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Got 'K' at beginning of line, checking for 'eep-alive:'\n"));
+	    break;
+
+	case 'l':
+	case 'L':
+	    me->state = miL;
+	    CTRACE((tfp, "HTMIME: Got 'L' at beginning of line, state now L\n"));
+	    break;
+
+	case 'p':
+	case 'P':
+	    me->state = miP;
+	    CTRACE((tfp, "HTMIME: Got 'P' at beginning of line, state now P\n"));
+	    break;
+
+	case 'r':
+	case 'R':
+	    me->state = miR;
+	    CTRACE((tfp, "HTMIME: Got 'R' at beginning of line, state now R\n"));
+	    break;
+
+	case 's':
+	case 'S':
+	    me->state = miS;
+	    CTRACE((tfp, "HTMIME: Got 'S' at beginning of line, state now S\n"));
+	    break;
+
+	case 't':
+	case 'T':
+	    me->state = miT;
+	    CTRACE((tfp, "HTMIME: Got 'T' at beginning of line, state now T\n"));
+	    break;
+
+	case 'u':
+	case 'U':
+	    me->state = miU;
+	    CTRACE((tfp, "HTMIME: Got 'U' at beginning of line, state now U\n"));
+	    break;
+
+	case 'v':
+	case 'V':
+	    me->state = miV;
+	    CTRACE((tfp, "HTMIME: Got 'V' at beginning of line, state now V\n"));
+	    break;
+
+	case 'w':
+	case 'W':
+	    me->state = miW;
+	    CTRACE((tfp, "HTMIME: Got 'W' at beginning of line, state now W\n"));
+	    break;
+
+	case '\n':		/* Blank line: End of Header! */
+	    {
+		me->net_ascii = NO;
+		pumpData(me);
+	    }
+	    break;
+
+	default:
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miA:			/* Check for 'c','g' or 'l' */
+	switch (c) {
+	case 'c':
+	case 'C':
+	    me->check_pointer = "cept-ranges:";
+	    me->if_ok = miACCEPT_RANGES;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was A, found C, checking for 'cept-ranges:'\n"));
+	    break;
+
+	case 'g':
+	case 'G':
+	    me->check_pointer = "e:";
+	    me->if_ok = miAGE;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was A, found G, checking for 'e:'\n"));
+	    break;
+
+	case 'l':
+	case 'L':
+	    me->state = miAL;
+	    CTRACE((tfp, "HTMIME: Was A, found L, state now AL'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'g' or 'l'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miAL:			/* Check for 'l' or 't' */
+	switch (c) {
+	case 'l':
+	case 'L':
+	    me->check_pointer = "ow:";
+	    me->if_ok = miALLOW;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was AL, found L, checking for 'ow:'\n"));
+	    break;
+
+	case 't':
+	case 'T':
+	    me->check_pointer = "ernates:";
+	    me->if_ok = miALTERNATES;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was AL, found T, checking for 'ernates:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'l' or 't'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miC:			/* Check for 'a' or 'o' */
+	switch (c) {
+	case 'a':
+	case 'A':
+	    me->check_pointer = "che-control:";
+	    me->if_ok = miCACHE_CONTROL;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was C, found A, checking for 'che-control:'\n"));
+	    break;
+
+	case 'o':
+	case 'O':
+	    me->state = miCO;
+	    CTRACE((tfp, "HTMIME: Was C, found O, state now CO'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'a' or 'o'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miCO:			/* Check for 'n' or 'o' */
+	switch (c) {
+	case 'n':
+	case 'N':
+	    me->state = miCON;
+	    CTRACE((tfp, "HTMIME: Was CO, found N, state now CON\n"));
+	    break;
+
+	case 'o':
+	case 'O':
+	    me->check_pointer = "kie:";
+	    me->if_ok = miCOOKIE;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was CO, found O, checking for 'kie:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'n' or 'o'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miCON:		/* Check for 'n' or 't' */
+	switch (c) {
+	case 'n':
+	case 'N':
+	    me->check_pointer = "ection:";
+	    me->if_ok = miCONNECTION;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was CON, found N, checking for 'ection:'\n"));
+	    break;
+
+	case 't':
+	case 'T':
+	    me->check_pointer = "ent-";
+	    me->if_ok = miCONTENT_;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was CON, found T, checking for 'ent-'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'n' or 't'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miE:			/* Check for 't' or 'x' */
+	switch (c) {
+	case 't':
+	case 'T':
+	    me->check_pointer = "ag:";
+	    me->if_ok = miETAG;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was E, found T, checking for 'ag:'\n"));
+	    break;
+
+	case 'x':
+	case 'X':
+	    me->check_pointer = "pires:";
+	    me->if_ok = miEXPIRES;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was E, found X, checking for 'pires:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'t' or 'x'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miL:			/* Check for 'a', 'i' or 'o' */
+	switch (c) {
+	case 'a':
+	case 'A':
+	    me->check_pointer = "st-modified:";
+	    me->if_ok = miLAST_MODIFIED;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was L, found A, checking for 'st-modified:'\n"));
+	    break;
+
+	case 'i':
+	case 'I':
+	    me->check_pointer = "nk:";
+	    me->if_ok = miLINK;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was L, found I, checking for 'nk:'\n"));
+	    break;
+
+	case 'o':
+	case 'O':
+	    me->check_pointer = "cation:";
+	    me->if_ok = miLOCATION;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was L, found O, checking for 'cation:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'a', 'i' or 'o'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miP:			/* Check for 'r' or 'u' */
+	switch (c) {
+	case 'r':
+	case 'R':
+	    me->state = miPR;
+	    CTRACE((tfp, "HTMIME: Was P, found R, state now PR'\n"));
+	    break;
+
+	case 'u':
+	case 'U':
+	    me->check_pointer = "blic:";
+	    me->if_ok = miPUBLIC;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was P, found U, checking for 'blic:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'r' or 'u'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miPR:			/* Check for 'a' or 'o' */
+	switch (c) {
+	case 'a':
+	case 'A':
+	    me->check_pointer = "gma:";
+	    me->if_ok = miPRAGMA;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was PR, found A, checking for 'gma'\n"));
+	    break;
+
+	case 'o':
+	case 'O':
+	    me->check_pointer = "xy-authenticate:";
+	    me->if_ok = miPROXY_AUTHENTICATE;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was PR, found O, checking for 'xy-authenticate'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'a' or 'o'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miR:			/* Check for 'e' */
+	switch (c) {
+	case 'e':
+	case 'E':
+	    me->state = miRE;
+	    CTRACE((tfp, "HTMIME: Was R, found E\n"));
+	    break;
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'e'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miRE:			/* Check for 'a' or 'o' */
+	switch (c) {
+	case 'f':
+	case 'F':		/* nonstandard: Netscape */
+	    me->check_pointer = "resh:";
+	    me->if_ok = miREFRESH;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was RE, found F, checking for '%s'\n", me->check_pointer));
+	    break;
+
+	case 't':
+	case 'T':
+	    me->check_pointer = "ry-after:";
+	    me->if_ok = miRETRY_AFTER;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was RE, found T, checking for '%s'\n", me->check_pointer));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'f' or 't'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miS:			/* Check for 'a' or 'e' */
+	switch (c) {
+	case 'a':
+	case 'A':
+	    me->check_pointer = "fe:";
+	    me->if_ok = miSAFE;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was S, found A, checking for 'fe:'\n"));
+	    break;
+
+	case 'e':
+	case 'E':
+	    me->state = miSE;
+	    CTRACE((tfp, "HTMIME: Was S, found E, state now SE'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'a' or 'e'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miSE:			/* Check for 'r' or 't' */
+	switch (c) {
+	case 'r':
+	case 'R':
+	    me->check_pointer = "ver:";
+	    me->if_ok = miSERVER;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was SE, found R, checking for 'ver'\n"));
+	    break;
+
+	case 't':
+	case 'T':
+	    me->check_pointer = "-cookie";
+	    me->if_ok = miSET_COOKIE;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was SE, found T, checking for '-cookie'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'r' or 't'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miSET_COOKIE:		/* Check for ':' or '2' */
+	switch (c) {
+	case ':':
+	    me->field = miSET_COOKIE1;	/* remember it */
+	    me->state = miSKIP_GET_VALUE;
+	    CTRACE((tfp, "HTMIME: Was SET_COOKIE, found :, processing\n"));
+	    break;
+
+	case '2':
+	    me->check_pointer = ":";
+	    me->if_ok = miSET_COOKIE2;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was SET_COOKIE, found 2, checking for ':'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "':' or '2'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miT:			/* Check for 'i' or 'r' */
+	switch (c) {
+	case 'i':
+	case 'I':
+	    me->check_pointer = "tle:";
+	    me->if_ok = miTITLE;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was T, found I, checking for 'tle:'\n"));
+	    break;
+
+	case 'r':
+	case 'R':
+	    me->check_pointer = "ansfer-encoding:";
+	    me->if_ok = miTRANSFER_ENCODING;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was T, found R, checking for 'ansfer-encoding'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'i' or 'r'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miU:			/* Check for 'p' or 'r' */
+	switch (c) {
+	case 'p':
+	case 'P':
+	    me->check_pointer = "grade:";
+	    me->if_ok = miUPGRADE;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was U, found P, checking for 'grade:'\n"));
+	    break;
+
+	case 'r':
+	case 'R':
+	    me->check_pointer = "i:";
+	    me->if_ok = miURI;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was U, found R, checking for 'i:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'p' or 'r'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miV:			/* Check for 'a' or 'i' */
+	switch (c) {
+	case 'a':
+	case 'A':
+	    me->check_pointer = "ry:";
+	    me->if_ok = miVARY;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was V, found A, checking for 'ry:'\n"));
+	    break;
+
+	case 'i':
+	case 'I':
+	    me->check_pointer = "a:";
+	    me->if_ok = miVIA;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was V, found I, checking for 'a:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'a' or 'i'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miW:			/* Check for 'a' or 'w' */
+	switch (c) {
+	case 'a':
+	case 'A':
+	    me->check_pointer = "rning:";
+	    me->if_ok = miWARNING;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was W, found A, checking for 'rning:'\n"));
+	    break;
+
+	case 'w':
+	case 'W':
+	    me->check_pointer = "w-authenticate:";
+	    me->if_ok = miWWW_AUTHENTICATE;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was W, found W, checking for 'w-authenticate:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, "'a' or 'w'"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miCHECK:		/* Check against string */
+	if (TOLOWER(c) == *(me->check_pointer)++) {
+	    if (!*me->check_pointer)
+		me->state = me->if_ok;
+	} else {		/* Error */
+	    CTRACE((tfp,
+		    "HTMIME: Bad character `%c' found where `%s' expected\n",
+		    c, me->check_pointer - 1));
+	    goto bad_field_name;
+	}
+	break;
+
+    case miCONTENT_:
+	CTRACE((tfp, "HTMIME: in case CONTENT_\n"));
+
+	switch (c) {
+	case 'b':
+	case 'B':
+	    me->check_pointer = "ase:";
+	    me->if_ok = miCONTENT_BASE;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_, found B, checking for 'ase:'\n"));
+	    break;
+
+	case 'd':
+	case 'D':
+	    me->check_pointer = "isposition:";
+	    me->if_ok = miCONTENT_DISPOSITION;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_, found D, checking for 'isposition:'\n"));
+	    break;
+
+	case 'e':
+	case 'E':
+	    me->check_pointer = "ncoding:";
+	    me->if_ok = miCONTENT_ENCODING;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_, found E, checking for 'ncoding:'\n"));
+	    break;
+
+	case 'f':
+	case 'F':
+	    me->check_pointer = "eatures:";
+	    me->if_ok = miCONTENT_FEATURES;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_, found F, checking for 'eatures:'\n"));
+	    break;
+
+	case 'l':
+	case 'L':
+	    me->state = miCONTENT_L;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_, found L, state now CONTENT_L\n"));
+	    break;
+
+	case 'm':
+	case 'M':
+	    me->check_pointer = "d5:";
+	    me->if_ok = miCONTENT_MD5;
+	    me->state = miCHECK;
+	    CTRACE((tfp, "HTMIME: Was CONTENT_, found M, checking for 'd5:'\n"));
+	    break;
+
+	case 'r':
+	case 'R':
+	    me->check_pointer = "ange:";
+	    me->if_ok = miCONTENT_RANGE;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_, found R, checking for 'ange:'\n"));
+	    break;
+
+	case 't':
+	case 'T':
+	    me->state = miCONTENT_T;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_, found T, state now CONTENT_T\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp, "HTMIME: Was CONTENT_, found nothing; bleah\n"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miCONTENT_L:
+	CTRACE((tfp, "HTMIME: in case CONTENT_L\n"));
+
+	switch (c) {
+	case 'a':
+	case 'A':
+	    me->check_pointer = "nguage:";
+	    me->if_ok = miCONTENT_LANGUAGE;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_L, found A, checking for 'nguage:'\n"));
+	    break;
+
+	case 'e':
+	case 'E':
+	    me->check_pointer = "ngth:";
+	    me->if_ok = miCONTENT_LENGTH;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_L, found E, checking for 'ngth:'\n"));
+	    break;
+
+	case 'o':
+	case 'O':
+	    me->check_pointer = "cation:";
+	    me->if_ok = miCONTENT_LOCATION;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_L, found O, checking for 'cation:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp, "HTMIME: Was CONTENT_L, found nothing; bleah\n"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miCONTENT_T:
+	CTRACE((tfp, "HTMIME: in case CONTENT_T\n"));
+
+	switch (c) {
+	case 'r':
+	case 'R':
+	    me->check_pointer = "ansfer-encoding:";
+	    me->if_ok = miCONTENT_TRANSFER_ENCODING;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_T, found R, checking for 'ansfer-encoding:'\n"));
+	    break;
+
+	case 'y':
+	case 'Y':
+	    me->check_pointer = "pe:";
+	    me->if_ok = miCONTENT_TYPE;
+	    me->state = miCHECK;
+	    CTRACE((tfp,
+		    "HTMIME: Was CONTENT_T, found Y, checking for 'pe:'\n"));
+	    break;
+
+	default:
+	    CTRACE((tfp, "HTMIME: Was CONTENT_T, found nothing; bleah\n"));
+	    goto bad_field_name;
+
+	}			/* switch on character */
+	break;
+
+    case miACCEPT_RANGES:
+    case miAGE:
+    case miALLOW:
+    case miALTERNATES:
+    case miCACHE_CONTROL:
+    case miCOOKIE:
+    case miCONNECTION:
+    case miCONTENT_BASE:
+    case miCONTENT_DISPOSITION:
+    case miCONTENT_ENCODING:
+    case miCONTENT_FEATURES:
+    case miCONTENT_LANGUAGE:
+    case miCONTENT_LENGTH:
+    case miCONTENT_LOCATION:
+    case miCONTENT_MD5:
+    case miCONTENT_RANGE:
+    case miCONTENT_TRANSFER_ENCODING:
+    case miCONTENT_TYPE:
+    case miDATE:
+    case miETAG:
+    case miEXPIRES:
+    case miKEEP_ALIVE:
+    case miLAST_MODIFIED:
+    case miLINK:
+    case miLOCATION:
+    case miPRAGMA:
+    case miPROXY_AUTHENTICATE:
+    case miPUBLIC:
+    case miREFRESH:
+    case miRETRY_AFTER:
+    case miSAFE:
+    case miSERVER:
+    case miSET_COOKIE1:
+    case miSET_COOKIE2:
+    case miTITLE:
+    case miTRANSFER_ENCODING:
+    case miUPGRADE:
+    case miURI:
+    case miVARY:
+    case miVIA:
+    case miWARNING:
+    case miWWW_AUTHENTICATE:
+	me->field = me->state;	/* remember it */
+	me->state = miSKIP_GET_VALUE;
+	/* Fall through! */
+
+    case miSKIP_GET_VALUE:
+	if (c == '\n') {
+	    me->fold_state = me->state;
+	    me->state = miNEWLINE;
+	    break;
+	}
+	if (WHITE(c))
+	    /*
+	     * Skip white space.
+	     */
+	    break;
+
+	me->value_pointer = me->value;
+	me->state = miGET_VALUE;
+	/* Fall through to store first character */
+
+    case miGET_VALUE:
+      GET_VALUE:
+	if (c != '\n') {	/* Not end of line */
+	    if (me->value_pointer < me->value + VALUE_SIZE - 1) {
+		*me->value_pointer++ = (char) c;
+		break;
+	    } else {
+		goto value_too_long;
+	    }
+	}
+	/* Fall through (if end of line) */
+
+    case miJUNK_LINE:
+	if (c == '\n') {
+	    me->fold_state = me->state;
+	    me->state = miNEWLINE;
+	}
+	break;
+
+    }				/* switch on state */
+
+#ifdef EXP_HTTP_HEADERS
+    HTChunkPutc(&me->anchor->http_headers, UCH(c));
+    if (me->state == MIME_TRANSPARENT) {
+	HTChunkTerminate(&me->anchor->http_headers);
+	CTRACE((tfp, "Server Headers:\n%.*s\n",
+		me->anchor->http_headers.size,
+		me->anchor->http_headers.data));
+	CTRACE((tfp, "Server Content-Type:%s\n",
+		me->anchor->content_type_params));
+    }
+#endif
+    return;
+
+  value_too_long:
+    CTRACE((tfp, "HTMIME: *** Syntax error. (string too long)\n"));
+
+  bad_field_name:		/* Ignore it */
+    me->state = miJUNK_LINE;
+
+#ifdef EXP_HTTP_HEADERS
+    HTChunkPutc(&me->anchor->http_headers, UCH(c));
+#endif
+
+    return;
+
+}
+
+/*	String handling
+ *	---------------
+ *
+ *	Strings must be smaller than this buffer size.
+ */
+static void HTMIME_put_string(HTStream *me,
+			      const char *s)
+{
+    const char *p;
+
+    if (me->state == MIME_TRANSPARENT) {	/* Optimisation */
+	(*me->targetClass.put_string) (me->target, s);
+
+    } else if (me->state != MIME_IGNORE) {
+	CTRACE((tfp, "HTMIME:  %s\n", s));
+
+	for (p = s; *p; p++)
+	    HTMIME_put_character(me, *p);
+    }
+}
+
+/*	Buffer write.  Buffers can (and should!) be big.
+ *	------------
+ */
+static void HTMIME_write(HTStream *me,
+			 const char *s,
+			 int l)
+{
+    const char *p;
+
+    if (me->state == MIME_TRANSPARENT) {	/* Optimisation */
+	(*me->targetClass.put_block) (me->target, s, l);
+
+    } else {
+	CTRACE((tfp, "HTMIME:  %.*s\n", l, s));
+
+	for (p = s; p < s + l; p++)
+	    HTMIME_put_character(me, *p);
+    }
+}
+
+/*	Free an HTML object
+ *	-------------------
+ *
+ */
+static void HTMIME_free(HTStream *me)
+{
+    if (me) {
+	FREE(me->location);
+	FREE(me->compression_encoding);
+	if (me->target)
+	    (*me->targetClass._free) (me->target);
+	FREE(me);
+    }
+}
+
+/*	End writing
+*/
+static void HTMIME_abort(HTStream *me,
+			 HTError e)
+{
+    if (me) {
+	FREE(me->location);
+	FREE(me->compression_encoding);
+	if (me->target)
+	    (*me->targetClass._abort) (me->target, e);
+	FREE(me);
+    }
+}
+
+/*	Structured Object Class
+ *	-----------------------
+ */
+static const HTStreamClass HTMIME =
+{
+    "MIMEParser",
+    HTMIME_free,
+    HTMIME_abort,
+    HTMIME_put_character,
+    HTMIME_put_string,
+    HTMIME_write
+};
+
+/*	Subclass-specific Methods
+ *	-------------------------
+ */
+HTStream *HTMIMEConvert(HTPresentation *pres,
+			HTParentAnchor *anchor,
+			HTStream *sink)
+{
+    HTStream *me;
+
+    me = typecalloc(HTStream);
+
+    if (me == NULL)
+	outofmem(__FILE__, "HTMIMEConvert");
+
+    assert(me != NULL);
+
+    me->isa = &HTMIME;
+    me->sink = sink;
+    me->anchor = anchor;
+    me->anchor->safe = FALSE;
+    me->anchor->no_cache = FALSE;
+    FREE(me->anchor->cache_control);
+    FREE(me->anchor->SugFname);
+    FREE(me->anchor->charset);
+#ifdef EXP_HTTP_HEADERS
+    HTChunkClear(&me->anchor->http_headers);
+    HTChunkInit(&me->anchor->http_headers, 128);
+#endif
+    FREE(me->anchor->content_type_params);
+    FREE(me->anchor->content_language);
+    FREE(me->anchor->content_encoding);
+    FREE(me->anchor->content_base);
+    FREE(me->anchor->content_disposition);
+    FREE(me->anchor->content_location);
+    FREE(me->anchor->content_md5);
+    me->anchor->content_length = 0;
+    FREE(me->anchor->date);
+    FREE(me->anchor->expires);
+    FREE(me->anchor->last_modified);
+    FREE(me->anchor->ETag);
+    FREE(me->anchor->server);
+    me->target = NULL;
+    me->state = miBEGINNING_OF_LINE;
+    /*
+     * Sadly enough, change this to always default to WWW_HTML to parse all
+     * text as HTML for the users.
+     * GAB 06-30-94
+     * Thanks to Robert Rowland robert@cyclops.pei.edu
+     *
+     * After discussion of the correct handline, should be application/octet-
+     * stream or unknown; causing servers to send a correct content type.
+     *
+     * The consequence of using WWW_UNKNOWN is that you end up downloading as a
+     * binary file what 99.9% of the time is an HTML file, which should have
+     * been rendered or displayed.  So sadly enough, I'm changing it back to
+     * WWW_HTML, and it will handle the situation like Mosaic does, and as
+     * Robert Rowland suggested, because being functionally correct 99.9% of
+     * the time is better than being technically correct but functionally
+     * nonsensical.  - FM
+     */
+    /***
+    me->format	  =	WWW_UNKNOWN;
+    ***/
+    me->format = WWW_HTML;
+    me->targetRep = pres->rep_out;
+    me->boundary = NULL;	/* Not set yet */
+    me->set_cookie = NULL;	/* Not set yet */
+    me->set_cookie2 = NULL;	/* Not set yet */
+    me->refresh_url = NULL;	/* Not set yet */
+    me->c_t_encoding = 0;	/* Not set yet */
+    me->compression_encoding = NULL;	/* Not set yet */
+    me->net_ascii = NO;		/* Local character set */
+    HTAnchor_setUCInfoStage(me->anchor, current_char_set,
+			    UCT_STAGE_STRUCTURED,
+			    UCT_SETBY_DEFAULT);
+    HTAnchor_setUCInfoStage(me->anchor, current_char_set,
+			    UCT_STAGE_HTEXT,
+			    UCT_SETBY_DEFAULT);
+    return me;
+}
+
+HTStream *HTNetMIME(HTPresentation *pres,
+		    HTParentAnchor *anchor,
+		    HTStream *sink)
+{
+    HTStream *me = HTMIMEConvert(pres, anchor, sink);
+
+    if (!me)
+	return NULL;
+
+    me->net_ascii = YES;
+    return me;
+}
+
+HTStream *HTMIMERedirect(HTPresentation *pres,
+			 HTParentAnchor *anchor,
+			 HTStream *sink)
+{
+    HTStream *me = HTMIMEConvert(pres, anchor, sink);
+
+    if (!me)
+	return NULL;
+
+    me->pickup_redirection = YES;
+    if (me->targetRep == WWW_DEBUG && sink)
+	me->no_streamstack = YES;
+    return me;
+}
+
+/*		Japanese header handling functions
+ *		==================================
+ *
+ *	K&Rized and added 07-Jun-96 by FM, based on:
+ *
+////////////////////////////////////////////////////////////////////////
+ *
+ *	ISO-2022-JP handling routines
+ *			&
+ *	MIME decode routines (quick hack just for ISO-2022-JP)
+ *
+ *		Thu Jan 25 10:11:42 JST 1996
+ *
+ *  Copyright (C) 1994, 1995, 1996
+ *  Shuichi Ichikawa (ichikawa@nuee.nagoya-u.ac.jp)
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either versions 2, or (at your option)
+ *  any later version.
+ *
+ *  This program is distributed in the hope that it will be useful
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with SKK, see the file COPYING.  If not, write to the Free
+ *  Software Foundation Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+/*
+ *  MIME decoding routines
+ *
+ *	Written by S. Ichikawa,
+ *	partially inspired by encdec.c of <jh@efd.lth.se>.
+ *	Caller's buffers decode to no longer than the input strings.
+ */
+#include <LYCharVals.h>		/* S/390 -- gil -- 0163 */
+
+static char HTmm64[] =
+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
+static char HTmmquote[] = "0123456789ABCDEF";
+static int HTmmcont = 0;
+
+static void HTmmdec_base64(char **t,
+			   char *s)
+{
+    int d, count, j, val;
+    char *buf, *bp, nw[4], *p;
+
+    if ((buf = typeMallocn(char, strlen(s) * 3 + 1)) == 0)
+	  outofmem(__FILE__, "HTmmdec_base64");
+
+    assert(buf != NULL);
+
+    for (bp = buf; *s; s += 4) {
+	val = 0;
+	if (s[2] == '=')
+	    count = 1;
+	else if (s[3] == '=')
+	    count = 2;
+	else
+	    count = 3;
+
+	for (j = 0; j <= count; j++) {
+	    if (!(p = strchr(HTmm64, s[j]))) {
+		return;
+	    }
+	    d = (int) (p - HTmm64);
+	    d <<= (3 - j) * 6;
+	    val += d;
+	}
+	for (j = 2; j >= 0; j--) {
+	    nw[j] = (char) (val & 255);
+	    val >>= 8;
+	}
+	if (count--)
+	    *bp++ = nw[0];
+	if (count--)
+	    *bp++ = nw[1];
+	if (count)
+	    *bp++ = nw[2];
+    }
+    *bp = '\0';
+    StrAllocCopy(*t, buf);
+    FREE(buf);
+}
+
+static void HTmmdec_quote(char **t,
+			  char *s)
+{
+    char *buf, cval, *bp, *p;
+
+    if ((buf = typeMallocn(char, strlen(s) + 1)) == 0)
+	  outofmem(__FILE__, "HTmmdec_quote");
+
+    assert(buf != NULL);
+
+    for (bp = buf; *s;) {
+	if (*s == '=') {
+	    cval = 0;
+	    if (s[1] && (p = strchr(HTmmquote, s[1]))) {
+		cval = (char) (cval + (char) (p - HTmmquote));
+	    } else {
+		*bp++ = *s++;
+		continue;
+	    }
+	    if (s[2] && (p = strchr(HTmmquote, s[2]))) {
+		cval = (char) (cval << 4);
+		cval = (char) (cval + (p - HTmmquote));
+		*bp++ = cval;
+		s += 3;
+	    } else {
+		*bp++ = *s++;
+	    }
+	} else if (*s == '_') {
+	    *bp++ = 0x20;
+	    s++;
+	} else {
+	    *bp++ = *s++;
+	}
+    }
+    *bp = '\0';
+    StrAllocCopy(*t, buf);
+    FREE(buf);
+}
+
+/*
+ *	HTmmdecode for ISO-2022-JP - FM
+ */
+void HTmmdecode(char **target,
+		char *source)
+{
+    char *buf;
+    char *mmbuf = NULL;
+    char *m2buf = NULL;
+    char *s, *t, *u;
+    int base64, quote;
+
+    if ((buf = typeMallocn(char, strlen(source) + 1)) == 0)
+	  outofmem(__FILE__, "HTmmdecode");
+
+    assert(buf != NULL);
+
+    for (s = source, u = buf; *s;) {
+	if (!strncasecomp(s, "=?ISO-2022-JP?B?", 16)) {
+	    base64 = 1;
+	} else {
+	    base64 = 0;
+	}
+	if (!strncasecomp(s, "=?ISO-2022-JP?Q?", 16)) {
+	    quote = 1;
+	} else {
+	    quote = 0;
+	}
+	if (base64 || quote) {
+	    if (HTmmcont) {
+		for (t = s - 1;
+		     t >= source && (*t == ' ' || *t == '\t'); t--) {
+		    u--;
+		}
+	    }
+	    if (mmbuf == 0)	/* allocate buffer big enough for source */
+		StrAllocCopy(mmbuf, source);
+	    for (s += 16, t = mmbuf; *s;) {
+		if (s[0] == '?' && s[1] == '=') {
+		    break;
+		} else {
+		    *t++ = *s++;
+		    *t = '\0';
+		}
+	    }
+	    if (s[0] != '?' || s[1] != '=') {
+		goto end;
+	    } else {
+		s += 2;
+		*t = '\0';
+	    }
+	    if (base64)
+		HTmmdec_base64(&m2buf, mmbuf);
+	    if (quote)
+		HTmmdec_quote(&m2buf, mmbuf);
+	    for (t = m2buf; *t;)
+		*u++ = *t++;
+	    HTmmcont = 1;
+	} else {
+	    if (*s != ' ' && *s != '\t')
+		HTmmcont = 0;
+	    *u++ = *s++;
+	}
+    }
+    *u = '\0';
+  end:
+    StrAllocCopy(*target, buf);
+    FREE(m2buf);
+    FREE(mmbuf);
+    FREE(buf);
+}
+
+/*
+ *  Insert ESC where it seems lost.
+ *  (The author of this function "rjis" is S. Ichikawa.)
+ */
+int HTrjis(char **t,
+	   char *s)
+{
+    char *p;
+    char *buf = NULL;
+    int kanji = 0;
+
+    if (strchr(s, CH_ESC) || !strchr(s, '$')) {
+	if (s != *t)
+	    StrAllocCopy(*t, s);
+	return 1;
+    }
+
+    if ((buf = typeMallocn(char, strlen(s) * 2 + 1)) == 0)
+	  outofmem(__FILE__, "HTrjis");
+
+    assert(buf != NULL);
+
+    for (p = buf; *s;) {
+	if (!kanji && s[0] == '$' && (s[1] == '@' || s[1] == 'B')) {
+	    if (HTmaybekanji((int) s[2], (int) s[3])) {
+		kanji = 1;
+		*p++ = CH_ESC;
+		*p++ = *s++;
+		*p++ = *s++;
+		*p++ = *s++;
+		*p++ = *s++;
+		continue;
+	    }
+	    *p++ = *s++;
+	    continue;
+	}
+	if (kanji && s[0] == '(' && (s[1] == 'J' || s[1] == 'B')) {
+	    kanji = 0;
+	    *p++ = CH_ESC;
+	    *p++ = *s++;
+	    *p++ = *s++;
+	    continue;
+	}
+	*p++ = *s++;
+    }
+    *p = *s;			/* terminate string */
+
+    StrAllocCopy(*t, buf);
+    FREE(buf);
+    return 0;
+}
+
+/*
+ *  The following function "maybekanji" is derived from
+ *  RJIS-1.0 by Mr. Hironobu Takahashi.
+ *  Maybekanji() is included here under the courtesy of the author.
+ *  The original comment of rjis.c is also included here.
+ */
+/*
+ * RJIS ( Recover JIS code from broken file )
+ * Copyright (C) 1992 1994
+ * Hironobu Takahashi (takahasi@tiny.or.jp)
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either versions 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with SKK, see the file COPYING.  If not, write to the Free
+ * Software Foundation Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+int HTmaybekanji(int c1,
+		 int c2)
+{
+
+    if ((c2 < 33) || (c2 > 126))
+	return 0;
+    if ((c1 < 33) || ((40 < c1) && (c1 < 48)) || (116 < c1))
+	return 0;
+    c2 -= 32;
+    switch (c1 - 32) {
+    case 2:
+	if ((14 < c2) && (c2 < 26))
+	    return 0;
+	if ((33 < c2) && (c2 < 42))
+	    return 0;
+	if ((48 < c2) && (c2 < 60))
+	    return 0;
+	if ((74 < c2) && (c2 < 82))
+	    return 0;
+	if ((89 < c2) && (c2 < 94))
+	    return 0;
+	break;
+    case 3:
+	if (c2 < 16)
+	    return 0;
+	if ((25 < c2) && (c2 < 33))
+	    return 0;
+	if ((58 < c2) && (c2 < 65))
+	    return 0;
+	if (90 < c2)
+	    return 0;
+	break;
+    case 4:
+	if (83 < c2)
+	    return 0;
+	break;
+    case 5:
+	if (86 < c2)
+	    return 0;
+	break;
+    case 6:
+	if ((24 < c2) && (c2 < 33))
+	    return 0;
+	if (56 < c2)
+	    return 0;
+	break;
+    case 7:
+	if ((33 < c2) && (c2 < 49))
+	    return 0;
+	if (81 < c2)
+	    return 0;
+	break;
+    case 8:
+	if (32 < c2)
+	    return 0;
+	break;
+    case 47:
+	if (51 < c2)
+	    return 0;
+	break;
+    case 84:
+	if (6 < c2)
+	    return 0;
+	break;
+    }
+    return 1;
+}
diff --git a/WWW/Library/Implementation/HTMIME.h b/WWW/Library/Implementation/HTMIME.h
new file mode 100644
index 00000000..6410c158
--- /dev/null
+++ b/WWW/Library/Implementation/HTMIME.h
@@ -0,0 +1,84 @@
+/*                   /Net/dxcern/userd/timbl/hypertext/WWW/Library/Implementation/HTMIME.html
+                                       MIME PARSER
+
+   The MIME parser stream presents a MIME document.  It recursively invokes the
+   format manager to handle embedded formats.
+
+   As well as stripping off and parsing the headers, the MIME parser has to
+   parse any weirld MIME encodings it may meet within the body parts of
+   messages, and must deal with multipart messages.
+
+   This module is implemented to the level necessary for operation with WWW,
+   but is not currently complete for any arbitrary MIME message.
+
+   Check the source for latest additions to functionality.
+
+   The MIME parser is complicated by the fact that WWW allows real binary to be
+   sent, not ASCII encoded.  Therefore the netascii decoding is included in
+   this module.  One cannot layer it by converting first from Net to local
+   text, then decoding it.  Of course, for local files, the net ascii decoding
+   is not needed.  There are therefore two creation routines.
+
+ */
+#ifndef HTMIME_H
+#define HTMIME_H
+
+#include <HTStream.h>
+#include <HTAnchor.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ *  This function is for trimming off any paired
+ *  open- and close-double quotes from header values.
+ *  It does not parse the string for embedded quotes,
+ *  and will not modify the string unless both the
+ *  first and last characters are double-quotes. - FM
+ */ extern void HTMIME_TrimDoubleQuotes(char *value);
+
+/*
+
+  INPUT: LOCAL TEXT
+
+ */
+    extern HTStream *HTMIMEConvert(HTPresentation *pres,
+				   HTParentAnchor *anchor,
+				   HTStream *sink);
+
+/*
+
+  INPUT: NET ASCII
+
+ */
+    extern HTStream *HTNetMIME(HTPresentation *pres,
+			       HTParentAnchor *anchor,
+			       HTStream *sink);
+
+/*
+
+  INPUT: Redirection message, parse headers only for Location if present
+
+ */
+    extern HTStream *HTMIMERedirect(HTPresentation *pres,
+				    HTParentAnchor *anchor,
+				    HTStream *sink);
+
+/*
+
+  For handling Japanese headers.
+
+*/
+    extern void HTmmdecode(char **target,
+			   char *source);
+
+    extern int HTrjis(char **target,
+		      char *source);
+
+    extern int HTmaybekanji(int c1,
+			    int c2);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* !HTMIME_H */
diff --git a/WWW/Library/Implementation/HTMLDTD.c b/WWW/Library/Implementation/HTMLDTD.c
new file mode 100644
index 00000000..833077f2
--- /dev/null
+++ b/WWW/Library/Implementation/HTMLDTD.c
@@ -0,0 +1,334 @@
+/*
+ * $LynxId: HTMLDTD.c,v 1.57 2010/09/25 00:30:56 tom Exp $
+ *
+ *		Our Static DTD for HTML
+ *		-----------------------
+ */
+
+/* Implements:
+*/
+
+#include <HTUtils.h>
+#include <HTMLDTD.h>
+#include <LYLeaks.h>
+#include <LYJustify.h>
+
+/*
+ * Character entities like &nbsp now excluded from our DTD tables, they are
+ * mapped to Unicode and handled by chartrans code directly the similar way the
+ * numeric entities like &#123 does.  See src/chrtrans/entities.h for real
+ * mapping.
+ */
+
+/*	Entity Names
+ *	------------
+ *
+ *	This table must be matched exactly with ALL the translation tables
+ *		(this is an obsolete translation mechanism, probably unused,
+ *		currently replaced with Unicode chartrans in most cases...)
+ */
+static const char *entities[] =
+{
+    "AElig",			/* capital AE diphthong (ligature) */
+    "Aacute",			/* capital A, acute accent */
+    "Acirc",			/* capital A, circumflex accent */
+    "Agrave",			/* capital A, grave accent */
+    "Aring",			/* capital A, ring */
+    "Atilde",			/* capital A, tilde */
+    "Auml",			/* capital A, dieresis or umlaut mark */
+    "Ccedil",			/* capital C, cedilla */
+    "Dstrok",			/* capital Eth, Icelandic */
+    "ETH",			/* capital Eth, Icelandic */
+    "Eacute",			/* capital E, acute accent */
+    "Ecirc",			/* capital E, circumflex accent */
+    "Egrave",			/* capital E, grave accent */
+    "Euml",			/* capital E, dieresis or umlaut mark */
+    "Iacute",			/* capital I, acute accent */
+    "Icirc",			/* capital I, circumflex accent */
+    "Igrave",			/* capital I, grave accent */
+    "Iuml",			/* capital I, dieresis or umlaut mark */
+    "Ntilde",			/* capital N, tilde */
+    "Oacute",			/* capital O, acute accent */
+    "Ocirc",			/* capital O, circumflex accent */
+    "Ograve",			/* capital O, grave accent */
+    "Oslash",			/* capital O, slash */
+    "Otilde",			/* capital O, tilde */
+    "Ouml",			/* capital O, dieresis or umlaut mark */
+    "THORN",			/* capital THORN, Icelandic */
+    "Uacute",			/* capital U, acute accent */
+    "Ucirc",			/* capital U, circumflex accent */
+    "Ugrave",			/* capital U, grave accent */
+    "Uuml",			/* capital U, dieresis or umlaut mark */
+    "Yacute",			/* capital Y, acute accent */
+    "aacute",			/* small a, acute accent */
+    "acirc",			/* small a, circumflex accent */
+    "acute",			/* spacing acute */
+    "aelig",			/* small ae diphthong (ligature) */
+    "agrave",			/* small a, grave accent */
+    "amp",			/* ampersand */
+    "aring",			/* small a, ring */
+    "atilde",			/* small a, tilde */
+    "auml",			/* small a, dieresis or umlaut mark */
+    "brkbar",			/* broken vertical bar */
+    "brvbar",			/* broken vertical bar */
+    "ccedil",			/* small c, cedilla */
+    "cedil",			/* spacing cedilla */
+    "cent",			/* cent sign */
+    "copy",			/* copyright sign */
+    "curren",			/* currency sign */
+    "deg",			/* degree sign */
+    "die",			/* spacing dieresis */
+    "divide",			/* division sign */
+    "eacute",			/* small e, acute accent */
+    "ecirc",			/* small e, circumflex accent */
+    "egrave",			/* small e, grave accent */
+    "emdash",			/* dash the width of emsp */
+    "emsp",			/* em space - not collapsed */
+    "endash",			/* dash the width of ensp */
+    "ensp",			/* en space - not collapsed */
+    "eth",			/* small eth, Icelandic */
+    "euml",			/* small e, dieresis or umlaut mark */
+    "frac12",			/* fraction 1/2 */
+    "frac14",			/* fraction 1/4 */
+    "frac34",			/* fraction 3/4 */
+    "gt",			/* greater than */
+    "hibar",			/* spacing macron */
+    "iacute",			/* small i, acute accent */
+    "icirc",			/* small i, circumflex accent */
+    "iexcl",			/* inverted exclamation mark */
+    "igrave",			/* small i, grave accent */
+    "iquest",			/* inverted question mark */
+    "iuml",			/* small i, dieresis or umlaut mark */
+    "laquo",			/* angle quotation mark, left */
+    "lt",			/* less than */
+    "macr",			/* spacing macron */
+    "mdash",			/* dash the width of emsp */
+    "micro",			/* micro sign */
+    "middot",			/* middle dot */
+    "nbsp",			/* non breaking space */
+    "ndash",			/* dash the width of ensp */
+    "not",			/* negation sign */
+    "ntilde",			/* small n, tilde */
+    "oacute",			/* small o, acute accent */
+    "ocirc",			/* small o, circumflex accent */
+    "ograve",			/* small o, grave accent */
+    "ordf",			/* feminine ordinal indicator */
+    "ordm",			/* masculine ordinal indicator */
+    "oslash",			/* small o, slash */
+    "otilde",			/* small o, tilde */
+    "ouml",			/* small o, dieresis or umlaut mark */
+    "para",			/* paragraph sign */
+    "plusmn",			/* plus-or-minus sign */
+    "pound",			/* pound sign */
+    "quot",			/* quote '"' */
+    "raquo",			/* angle quotation mark, right */
+    "reg",			/* circled R registered sign */
+    "sect",			/* section sign */
+    "shy",			/* soft hyphen */
+    "sup1",			/* superscript 1 */
+    "sup2",			/* superscript 2 */
+    "sup3",			/* superscript 3 */
+    "szlig",			/* small sharp s, German (sz ligature) */
+    "thinsp",			/* thin space (not collapsed) */
+    "thorn",			/* small thorn, Icelandic */
+    "times",			/* multiplication sign */
+    "trade",			/* trade mark sign (U+2122) */
+    "uacute",			/* small u, acute accent */
+    "ucirc",			/* small u, circumflex accent */
+    "ugrave",			/* small u, grave accent */
+    "uml",			/* spacing dieresis */
+    "uuml",			/* small u, dieresis or umlaut mark */
+    "yacute",			/* small y, acute accent */
+    "yen",			/* yen sign */
+    "yuml",			/* small y, dieresis or umlaut mark */
+};
+
+/*		Attribute Lists
+ *		---------------
+ *
+ *	Lists must be in alphabetical order by attribute name
+ *	The tag elements contain the number of attributes
+ */
+
+/* From Peter Flynn's intro to the HTML Pro DTD:
+
+   %structure;
+
+   DIV, CENTER, H1 to H6, P, UL, OL, DL, DIR, MENU, PRE, XMP, LISTING, BLOCKQUOTE, BQ,
+   2	1	2     2   1  8	 8   8	 8    8     8	 8    8        4	   4
+   MULTICOL,?NOBR, FORM, TABLE, ADDRESS, FIG, BDO, NOTE, and FN; plus?WBR, LI, and LH
+   8 n	    ?1 n   8	 8	2	 2    2    2	     2	    ?1 nE  4	   4
+
+   %insertions;
+
+   Elements which usually contain special-purpose material, or no text material at all.
+
+   BASEFONT, APPLET, OBJECT, EMBED, SCRIPT, MAP, MARQUEE, HR, ISINDEX, BGSOUND, TAB,?IMG,
+   1 e?      2	     2 l     1 e    2 l     8	 4	  4 E 1? E     1 E	! E ?1 E
+   IMAGE, BR, plus NOEMBED, SERVER, SPACER, AUDIOSCOPE, and SIDEBAR; ?area
+   1 n	  1 E	     n	      n	      n	      n		      n	      8 E
+
+   %text;
+
+   Elements within the %structure; which directly contain running text.
+
+   Descriptive or analytic markup: EM, STRONG, DFN, CODE, SAMP, KBD, VAR, CITE, Q, LANG, AU,
+				   2   2       2    2	  2	2    2	  2	2  2 n	 2
+   AUTHOR, PERSON, ACRONYM, ABBR, INS, DEL, and SPAN
+   2	   2 n	   2	    2	    2	 2	  2
+   Visual markup:S, STRIKE, I, B, TT, U,?NOBR,?WBR, BR, BIG, SMALL, FONT, STYLE, BLINK, TAB,
+		 1  1	    1  1  1   1  ?1 n ?1nE? 1 E  1   1	    1	  1 l	 1	1 E?
+   BLACKFACE, LIMITTEXT, NOSMARTQUOTES, and SHADOW
+   1 n	      1 n	 1 n		    1 n
+   Hypertext and graphics: A and?IMG
+			   8	?8 E
+   Mathematical: SUB, SUP, and MATH
+		 4    4        4 l
+   Documentary: COMMENT, ENTITY, ELEMENT, and ATTRIB
+		4	 4 n	 4 n	      4 n
+   %formula;
+ */
+
+/*	Elements
+ *	--------
+ *
+ *	Must match definitions in HTMLDTD.html!
+ *	Must be in alphabetical order.
+ *
+ *  The T_* extra info is listed here, even though most fields are not used
+ *  in SGML.c if Old_DTD is set (with the exception of some Tgf_* flags).
+ *  This simplifies comparison of the tags_table0[] table (otherwise unchanged
+ *  from original Lynx treatment) with the tags_table1[] table below. - kw
+ *
+ *    Name*,	Attributes,	No. of attributes,     content,   extra info...
+ */
+
+#include <src0_HTMLDTD.h>
+#include <src1_HTMLDTD.h>
+
+/* Dummy space, will be filled with the contents of either tags_table1
+   or tags_table0 on calling HTSwitchDTD - kw */
+
+static HTTag tags[HTML_ALL_ELEMENTS];
+
+const SGML_dtd HTML_dtd =
+{
+    tags,
+    HTML_ELEMENTS,
+    entities,			/* probably unused */
+    TABLESIZE(entities),
+};
+
+/* This function fills the "tags" part of the HTML_dtd structure with
+   what we want to use, either tags_table0 or tags_table1.  Note that it
+   has to be called at least once before HTML_dtd is used, otherwise
+   the HTML_dtd contents will be invalid!  This could be coded in a way
+   that would make an initialisation call unnecessary, but my C knowledge
+   is limited and I didn't want to list the whole tags_table1 table
+   twice... - kw */
+void HTSwitchDTD(int new_flag)
+{
+    if (TRACE)
+	CTRACE((tfp,
+		"HTMLDTD: Copying %s DTD element info of size %d, %d * %d\n",
+		new_flag ? "strict" : "tagsoup",
+		(int) (new_flag ? sizeof(tags_table1) : sizeof(tags_table0)),
+		HTML_ALL_ELEMENTS,
+		(int) sizeof(HTTag)));
+    if (new_flag)
+	MemCpy(tags, tags_table1, HTML_ALL_ELEMENTS * sizeof(HTTag));
+    else
+	MemCpy(tags, tags_table0, HTML_ALL_ELEMENTS * sizeof(HTTag));
+}
+
+HTTag HTTag_unrecognized =
+
+{NULL_HTTag, NULL, 0, 0, SGML_EMPTY, T__UNREC_};
+
+/*
+ *	Utility Routine:  Useful for people building HTML objects.
+ */
+
+/*	Start anchor element
+ *	--------------------
+ *
+ *	It is kinda convenient to have a particulr routine for
+ *	starting an anchor element, as everything else for HTML is
+ *	simple anyway.
+ */
+struct _HTStructured {
+    HTStructuredClass *isa;
+    /* ... */
+};
+
+void HTStartAnchor(HTStructured * obj, const char *name,
+		   const char *href)
+{
+    BOOL present[HTML_A_ATTRIBUTES];
+    const char *value[HTML_A_ATTRIBUTES];
+    int i;
+
+    for (i = 0; i < HTML_A_ATTRIBUTES; i++)
+	present[i] = NO;
+
+    if (name && *name) {
+	present[HTML_A_NAME] = YES;
+	value[HTML_A_NAME] = (const char *) name;
+    }
+    if (href) {
+	present[HTML_A_HREF] = YES;
+	value[HTML_A_HREF] = (const char *) href;
+    }
+
+    (*obj->isa->start_element) (obj, HTML_A, present, value, -1, 0);
+}
+
+void HTStartAnchor5(HTStructured * obj, const char *name,
+		    const char *href,
+		    const char *linktype,
+		    int tag_charset)
+{
+    BOOL present[HTML_A_ATTRIBUTES];
+    const char *value[HTML_A_ATTRIBUTES];
+    int i;
+
+    for (i = 0; i < HTML_A_ATTRIBUTES; i++)
+	present[i] = NO;
+
+    if (name && *name) {
+	present[HTML_A_NAME] = YES;
+	value[HTML_A_NAME] = name;
+    }
+    if (href && *href) {
+	present[HTML_A_HREF] = YES;
+	value[HTML_A_HREF] = href;
+    }
+    if (linktype && *linktype) {
+	present[HTML_A_TYPE] = YES;
+	value[HTML_A_TYPE] = linktype;
+    }
+
+    (*obj->isa->start_element) (obj, HTML_A, present, value, tag_charset, 0);
+}
+
+void HTStartIsIndex(HTStructured * obj, const char *prompt,
+		    const char *href)
+{
+    BOOL present[HTML_ISINDEX_ATTRIBUTES];
+    const char *value[HTML_ISINDEX_ATTRIBUTES];
+    int i;
+
+    for (i = 0; i < HTML_ISINDEX_ATTRIBUTES; i++)
+	present[i] = NO;
+
+    if (prompt && *prompt) {
+	present[HTML_ISINDEX_PROMPT] = YES;
+	value[HTML_ISINDEX_PROMPT] = (const char *) prompt;
+    }
+    if (href) {
+	present[HTML_ISINDEX_HREF] = YES;
+	value[HTML_ISINDEX_HREF] = (const char *) href;
+    }
+
+    (*obj->isa->start_element) (obj, HTML_ISINDEX, present, value, -1, 0);
+}
diff --git a/WWW/Library/Implementation/HTMLDTD.h b/WWW/Library/Implementation/HTMLDTD.h
new file mode 100644
index 00000000..10b0308f
--- /dev/null
+++ b/WWW/Library/Implementation/HTMLDTD.h
@@ -0,0 +1,97 @@
+/*
+ * $LynxId: HTMLDTD.h,v 1.32 2008/07/06 17:38:13 tom Exp $
+ *
+			      The HTML DTD -- software interface in libwww
+			      HTML DTD - SOFTWARE INTERFACE
+
+   SGML purists should excuse the use of the term "DTD" in this file to
+   represent DTD-related information which is not exactly a DTD itself.
+
+   The C modular structure doesn't work very well here, as the dtd is
+   partly in the .h and partly in the .c which are not very independent.
+   Tant pis.
+
+ */
+#ifndef HTMLDTD_H
+#define HTMLDTD_H
+
+#include <SGML.h>
+#include <HTFont.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ *  Valid name chars for tag parsing.
+ */
+#define IsNmStart(c) (isalpha(UCH(c)))
+#define IsNmChar(c) (isalnum(UCH(c)) || \
+		      c == '_' || c=='-' || c == '.' || c==':')
+#define ReallyEmptyTagNum(e) ((HTML_dtd.tags[e].contents == SGML_EMPTY) && \
+			      !(HTML_dtd.tags[e].flags & Tgf_nreie))
+#define ReallyEmptyTag(t) ((t->contents == SGML_EMPTY) && \
+			   !(t->flags & Tgf_nreie))
+
+#include <hdr_HTMLDTD.h>
+
+#ifdef USE_PRETTYSRC
+/* values of HTML attributes' types */
+#define HTMLA_NORMAL 0		/* nothing specific */
+#define HTMLA_ANAME  1		/* anchor name - 'id' or a's 'name' */
+#define HTMLA_HREF   2		/* href */
+#define HTMLA_CLASS  4		/* class name.  */
+#define HTMLA_AUXCLASS 8	/* attribute, the value of which also designates
+				   a class name */
+#endif
+    extern const SGML_dtd HTML_dtd;
+
+    extern void HTSwitchDTD(int new_flag);
+
+    extern HTTag HTTag_unrecognized;
+    extern HTTag HTTag_mixedObject;
+
+/*
+
+Start anchor element
+
+   It is kinda convenient to have a particular routine for starting an anchor
+   element, as everything else for HTML is simple anyway.
+
+  ON ENTRY
+
+   targetstream points to a structured stream object.
+
+   name and href point to attribute strings or are NULL if the attribute is
+   to be omitted.
+
+ */
+    extern void HTStartAnchor(HTStructured * targetstream, const char *name,
+			      const char *href);
+
+    extern void HTStartAnchor5(HTStructured * targetstream, const char *name,
+			       const char *href,
+			       const char *linktype,
+			       int tag_charset);
+
+/*
+
+Start IsIndex element - FM
+
+   It is kinda convenient to have a particular routine for starting an IsIndex
+   element with the prompt and/or href (action) attributes specified.
+
+  ON ENTRY
+
+   targetstream points to a structured stream object.
+
+   prompt and href point to attribute strings or are NULL if the attribute is
+   to be omitted.
+
+ */
+    extern void HTStartIsIndex(HTStructured * targetstream, const char *prompt,
+			       const char *href);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTMLDTD_H */
diff --git a/WWW/Library/Implementation/HTMLGen.c b/WWW/Library/Implementation/HTMLGen.c
new file mode 100644
index 00000000..3fc55e9b
--- /dev/null
+++ b/WWW/Library/Implementation/HTMLGen.c
@@ -0,0 +1,740 @@
+/*
+ * $LynxId: HTMLGen.c,v 1.37 2012/02/10 18:32:26 tom Exp $
+ *
+ *		HTML Generator
+ *		==============
+ *
+ *	This version of the HTML object sends HTML markup to the output stream.
+ *
+ * Bugs:	Line wrapping is not done at all.
+ *		All data handled as PCDATA.
+ *		Should convert old XMP, LISTING and PLAINTEXT to PRE.
+ *
+ *	It is not obvious to me right now whether the HEAD should be generated
+ *	from the incomming data or the anchor.	Currently it is from the former
+ *	which is cleanest.
+ */
+
+#define HTSTREAM_INTERNAL 1
+
+#include <HTUtils.h>
+
+#define BUFFER_SIZE    200	/* Line buffer attempts to make neat breaks */
+#define MAX_CLEANNESS	20
+
+/* Implements:
+*/
+#include <HTMLGen.h>
+
+#include <HTMLDTD.h>
+#include <HTStream.h>
+#include <SGML.h>
+#include <HTFormat.h>
+
+#ifdef USE_COLOR_STYLE
+#include <LYCharUtils.h>
+#include <AttrList.h>
+#include <LYHash.h>
+#include <LYStyle.h>
+#endif
+
+#include <LYGlobalDefs.h>
+#include <LYCurses.h>
+#include <LYLeaks.h>
+
+#ifdef USE_COLOR_STYLE
+char class_string[TEMPSTRINGSIZE];
+
+static char *Style_className = NULL;
+static char myHash[128];
+static int hcode;
+#endif
+
+/*		HTML Object
+ *		-----------
+ */
+struct _HTStream {
+    const HTStreamClass *isa;
+    HTStream *target;
+    HTStreamClass targetClass;	/* COPY for speed */
+};
+
+struct _HTStructured {
+    const HTStructuredClass *isa;
+    HTStream *target;
+    HTStreamClass targetClass;	/* COPY for speed */
+
+    char buffer[BUFFER_SIZE + 1];	/* 1for NL */
+    int buffer_maxchars;
+    char *write_pointer;
+    char *line_break[MAX_CLEANNESS + 1];
+    int cleanness;
+    BOOL overflowed;
+    BOOL delete_line_break_char[MAX_CLEANNESS + 1];
+    BOOL preformatted;
+    BOOL escape_specials;
+    BOOL in_attrval;
+#ifdef USE_COLOR_STYLE
+    HText *text;
+#endif
+};
+
+/*	Flush Buffer
+ *	------------
+ */
+
+static void flush_breaks(HTStructured * me)
+{
+    int i;
+
+    for (i = 0; i <= MAX_CLEANNESS; i++) {
+	me->line_break[i] = NULL;
+    }
+}
+
+static void HTMLGen_flush(HTStructured * me)
+{
+    (*me->targetClass.put_block) (me->target,
+				  me->buffer,
+				  (int) (me->write_pointer - me->buffer));
+    me->write_pointer = me->buffer;
+    flush_breaks(me);
+    me->cleanness = 0;
+    me->delete_line_break_char[0] = NO;
+}
+
+#ifdef USE_COLOR_STYLE
+/*
+ * We need to flush our buffer each time before we effect a color style change,
+ * this also relies on the subsequent stage not doing any buffering - this is
+ * currently true, in cases where it matters the target stream should be the
+ * HTPlain converter.  The flushing currently prevents reasonable line breaking
+ * in lines with tags.  Since color styles help visual scanning of displayed
+ * source lines, and long lines are wrapped in GridText anyway, this is
+ * probably acceptable (or even A Good Thing - more to see in one screenful). 
+ * The pointer to the HText structure is initialized here before we effect the
+ * first style change.  Getting it from the global HTMainText variable isn't
+ * very clean, since it relies on the fact that HText_new() has already been
+ * called for the current stream stack's document by the time we start
+ * processing the first element; we rely on HTMLGenerator's callers
+ * (HTMLParsedPresent in particular) to guarantee this when it matters. 
+ * Normally the target stream will have been setup by HTPlainPresent, which
+ * does what we need in this respect.  (A check whether we have the right
+ * output stream could be done by checking that targetClass.name is
+ * "PlainPresenter" or similar.)
+ *
+ * All special color style handling is only done if LYPreparsedSource is set. 
+ * We could always do it for displaying source generated by an internal
+ * gateway, but this makes the rule more simple for the user:  color styles are
+ * applied to html source only with the -preparsed flag.  - kw
+ */
+static void do_cstyle_flush(HTStructured * me)
+{
+    if (!me->text && LYPreparsedSource) {
+	me->text = HTMainText;
+    }
+    if (me->text) {
+	HTMLGen_flush(me);
+    }
+}
+#endif /* COLOR_STYLE */
+
+/*	Weighted optional line break
+ *
+ *	We keep track of all the breaks for when we chop the line
+ */
+
+static void allow_break(HTStructured * me, int new_cleanness, int dlbc)
+{
+    if (dlbc && me->write_pointer == me->buffer)
+	dlbc = NO;
+    me->line_break[new_cleanness] =
+	dlbc ? me->write_pointer - 1	/* Point to space */
+	: me->write_pointer;	/* point to gap */
+    me->delete_line_break_char[new_cleanness] = (BOOLEAN) dlbc;
+    if (new_cleanness >= me->cleanness &&
+	(me->overflowed || me->line_break[new_cleanness] > me->buffer))
+	me->cleanness = new_cleanness;
+}
+
+/*	Character handling
+ *	------------------
+ *
+ *	The tricky bits are the line break handling.  This attempts
+ *	to synchrononise line breaks on sentence or phrase ends.  This
+ *	is important if one stores SGML files in a line-oriented code
+ *	repository, so that if a small change is made, line ends don't
+ *	shift in a ripple-through to apparently change a large part of the
+ *	file.  We give extra "cleanness" to spaces appearing directly
+ *	after periods (full stops), [semi]colons and commas.
+ *	   This should make the source files easier to read and modify
+ *	by hand, too, though this is not a primary design consideration. TBL
+ */
+static void HTMLGen_put_character(HTStructured * me, int c)
+{
+    if (me->escape_specials && UCH(c) < 32) {
+	if (c == HT_NON_BREAK_SPACE || c == HT_EN_SPACE ||
+	    c == LY_SOFT_HYPHEN) {	/* recursion... */
+	    HTMLGen_put_character(me, '&');
+	    HTMLGen_put_character(me, '#');
+	    HTMLGen_put_character(me, 'x');
+	    switch (c) {
+	    case HT_NON_BREAK_SPACE:	/* &#xA0; */
+		HTMLGen_put_character(me, 'A');
+		HTMLGen_put_character(me, '0');
+		break;
+	    case HT_EN_SPACE:	/* &#x2002; */
+		HTMLGen_put_character(me, '2');
+		HTMLGen_put_character(me, '0');
+		HTMLGen_put_character(me, '0');
+		HTMLGen_put_character(me, '2');
+		break;
+	    case LY_SOFT_HYPHEN:	/* &#xAD; */
+		HTMLGen_put_character(me, 'A');
+		HTMLGen_put_character(me, 'D');
+		break;
+	    }
+	    c = ';';
+	}
+    }
+
+    *me->write_pointer++ = (char) c;
+
+    if (c == '\n') {
+	HTMLGen_flush(me);
+	return;
+    }
+
+    /* Figure our whether we can break at this point
+     */
+    if ((!me->preformatted && (c == ' ' || c == '\t'))) {
+	int new_cleanness = 3;
+
+	if (me->write_pointer > (me->buffer + 1)) {
+	    char delims[5];
+	    char *p;
+
+	    strcpy(delims, ",;:.");	/* @@ english bias */
+	    p = strchr(delims, me->write_pointer[-2]);
+	    if (p)
+		new_cleanness = (int) (p - delims + 6);
+	    if (!me->in_attrval)
+		new_cleanness += 10;
+	}
+	allow_break(me, new_cleanness, YES);
+    }
+
+    /*
+     * Flush buffer out when full, or whenever the line is over the nominal
+     * maximum and we can break at all
+     */
+    if (me->write_pointer >= me->buffer + me->buffer_maxchars ||
+	(me->overflowed && me->cleanness)) {
+	if (me->cleanness) {
+	    char line_break_char = me->line_break[me->cleanness][0];
+	    char *saved = me->line_break[me->cleanness];
+
+	    if (me->delete_line_break_char[me->cleanness])
+		saved++;
+	    me->line_break[me->cleanness][0] = '\n';
+	    (*me->targetClass.put_block) (me->target,
+					  me->buffer,
+					  (int) (me->line_break[me->cleanness] -
+						 me->buffer + 1));
+	    me->line_break[me->cleanness][0] = line_break_char;
+	    {			/* move next line in */
+		char *p = saved;
+		char *q;
+
+		for (q = me->buffer; p < me->write_pointer;)
+		    *q++ = *p++;
+	    }
+	    me->cleanness = 0;
+	    /* Now we have to check whether ther are any perfectly good breaks
+	     * which weren't good enough for the last line but may be good
+	     * enough for the next
+	     */
+	    {
+		int i;
+
+		for (i = 0; i <= MAX_CLEANNESS; i++) {
+		    if (me->line_break[i] != NULL &&
+			me->line_break[i] > saved) {
+			me->line_break[i] = me->line_break[i] -
+			    (saved - me->buffer);
+			me->cleanness = i;
+		    } else {
+			me->line_break[i] = NULL;
+		    }
+		}
+	    }
+
+	    me->delete_line_break_char[0] = 0;
+	    me->write_pointer = me->write_pointer - (saved - me->buffer);
+	    me->overflowed = NO;
+
+	} else {
+	    (*me->targetClass.put_block) (me->target,
+					  me->buffer,
+					  me->buffer_maxchars);
+	    me->write_pointer = me->buffer;
+	    flush_breaks(me);
+	    me->overflowed = YES;
+	}
+    }
+}
+
+/*	String handling
+ *	---------------
+ */
+static void HTMLGen_put_string(HTStructured * me, const char *s)
+{
+    const char *p;
+
+    for (p = s; *p; p++)
+	HTMLGen_put_character(me, *p);
+}
+
+static void HTMLGen_write(HTStructured * me, const char *s,
+			  int l)
+{
+    const char *p;
+
+    for (p = s; p < (s + l); p++)
+	HTMLGen_put_character(me, *p);
+}
+
+/*	Start Element
+ *	-------------
+ *
+ * Within the opening tag, there may be spaces and the line may be broken at
+ * these spaces.
+ */
+static int HTMLGen_start_element(HTStructured * me, int element_number,
+				 const BOOL *present,
+				 STRING2PTR value,
+				 int charset GCC_UNUSED,
+				 char **insert GCC_UNUSED)
+{
+    int i;
+    BOOL was_preformatted = me->preformatted;
+    HTTag *tag = &HTML_dtd.tags[element_number];
+
+#if defined(USE_COLOR_STYLE)
+    char *title = NULL;
+    char *title_tmp = NULL;
+
+    if (LYPreparsedSource) {
+	/*
+	 * Same logic as in HTML_start_element, copied from there.  - kw
+	 */
+	HTSprintf(&Style_className, ";%s", HTML_dtd.tags[element_number].name);
+	strcpy(myHash, HTML_dtd.tags[element_number].name);
+	if (class_string[0]) {
+	    int len = (int) strlen(myHash);
+
+	    sprintf(myHash + len, ".%.*s", (int) sizeof(myHash) - len - 2, class_string);
+	    HTSprintf(&Style_className, ".%s", class_string);
+	}
+	class_string[0] = '\0';
+	strtolower(myHash);
+	hcode = hash_code(myHash);
+	strtolower(Style_className);
+
+	if (TRACE_STYLE) {
+	    fprintf(tfp, "CSSTRIM:%s -> %d", myHash, hcode);
+	    if (hashStyles[hcode].code != hcode) {
+		char *rp = strrchr(myHash, '.');
+
+		fprintf(tfp, " (undefined) %s\n", myHash);
+		if (rp) {
+		    int hcd;
+
+		    *rp = '\0';	/* trim the class */
+		    hcd = hash_code(myHash);
+		    fprintf(tfp, "CSS:%s -> %d", myHash, hcd);
+		    if (hashStyles[hcd].code != hcd)
+			fprintf(tfp, " (undefined) %s\n", myHash);
+		    else
+			fprintf(tfp, " ca=%d\n", hashStyles[hcd].color);
+		}
+	    } else
+		fprintf(tfp, " ca=%d\n", hashStyles[hcode].color);
+	}
+
+	if (displayStyles[element_number + STARTAT].color > -2) {
+	    CTRACE2(TRACE_STYLE,
+		    (tfp, "CSSTRIM: start_element: top <%s>\n",
+		     HTML_dtd.tags[element_number].name));
+	    do_cstyle_flush(me);
+	    HText_characterStyle(me->text, hcode, 1);
+	}
+    }
+#endif /* USE_COLOR_STYLE */
+    me->preformatted = YES;	/* free text within tags */
+    HTMLGen_put_character(me, '<');
+    HTMLGen_put_string(me, tag->name);
+    if (present) {
+	BOOL had_attr = NO;
+
+	for (i = 0; i < tag->number_of_attributes; i++) {
+	    if (present[i]) {
+		had_attr = YES;
+		HTMLGen_put_character(me, ' ');
+		allow_break(me, 11, YES);
+#ifdef USE_COLOR_STYLE
+		/*
+		 * Try to mimic HTML_start_element's special handling for
+		 * HTML_LINK.  If applicable, color the displayed attribute /
+		 * value pairs differently.  - kw
+		 */
+		if (LYPreparsedSource &&
+		    element_number == HTML_LINK && !title &&
+		    present[HTML_LINK_CLASS] && *value[HTML_LINK_CLASS] &&
+		    !present[HTML_LINK_REV] &&
+		    (present[HTML_LINK_REL] || present[HTML_LINK_HREF])) {
+		    if (present[HTML_LINK_TITLE] && *value[HTML_LINK_TITLE]) {
+			StrAllocCopy(title, value[HTML_LINK_TITLE]);
+			LYTrimHead(title);
+			LYTrimTail(title);
+		    }
+		    if ((!title || *title == '\0') && present[HTML_LINK_REL]) {
+			StrAllocCopy(title, value[HTML_LINK_REL]);
+		    }
+		    if (title && *title) {
+			HTSprintf0(&title_tmp, "link.%s.%s",
+				   value[HTML_LINK_CLASS], title);
+			CTRACE2(TRACE_STYLE,
+				(tfp, "CSSTRIM:link=%s\n", title_tmp));
+
+			do_cstyle_flush(me);
+			HText_characterStyle(me->text, hash_code(title_tmp), 1);
+		    }
+		}
+#endif
+		HTMLGen_put_string(me, tag->attributes[i].name);
+		if (value[i]) {
+		    me->preformatted = was_preformatted;
+		    me->in_attrval = YES;
+		    if (strchr(value[i], '"') == NULL) {
+			HTMLGen_put_string(me, "=\"");
+			HTMLGen_put_string(me, value[i]);
+			HTMLGen_put_character(me, '"');
+		    } else if (strchr(value[i], '\'') == NULL) {
+			HTMLGen_put_string(me, "='");
+			HTMLGen_put_string(me, value[i]);
+			HTMLGen_put_character(me, '\'');
+		    } else {	/* attribute value has both kinds of quotes */
+			const char *p;
+
+			HTMLGen_put_string(me, "=\"");
+			for (p = value[i]; *p; p++) {
+			    if (*p != '"') {
+				HTMLGen_put_character(me, *p);
+			    } else {
+				HTMLGen_put_string(me, "&#34;");
+			    }
+			}
+			HTMLGen_put_character(me, '"');
+		    }
+		    me->preformatted = YES;
+		    me->in_attrval = NO;
+		}
+	    }
+	}
+#ifdef USE_COLOR_STYLE
+	if (had_attr && LYPreparsedSource && element_number == HTML_LINK) {
+	    /*
+	     * Clean up after special HTML_LINK handling - kw
+	     */
+	    if (title && *title) {
+		do_cstyle_flush(me);
+		HText_characterStyle(me->text, hash_code(title_tmp), 0);
+		FREE(title_tmp);
+	    }
+	    FREE(title);
+	}
+#endif
+	if (had_attr)
+	    allow_break(me, 12, NO);
+    }
+    HTMLGen_put_string(me, ">");	/* got rid of \n LJM */
+
+    /*
+     * Make very specific HTML assumption that PRE can't be nested!
+     */
+    me->preformatted = (BOOL) ((element_number == HTML_PRE)
+			       ? YES
+			       : was_preformatted);
+
+    /*
+     * Can break after element start.
+     */
+    if (!me->preformatted && tag->contents != SGML_EMPTY) {
+	if (HTML_dtd.tags[element_number].contents == SGML_ELEMENT)
+	    allow_break(me, 15, NO);
+	else
+	    allow_break(me, 2, NO);
+    }
+#if defined(USE_COLOR_STYLE)
+    /*
+     * Same logic as in HTML_start_element, copied from there.  - kw
+     */
+
+    /* end really empty tags straight away */
+    if (LYPreparsedSource && ReallyEmptyTagNum(element_number)) {
+	CTRACE2(TRACE_STYLE,
+		(tfp, "STYLE:begin_element:ending EMPTY element style\n"));
+	do_cstyle_flush(me);
+	HText_characterStyle(me->text, hcode, STACK_OFF);
+	TrimColorClass(HTML_dtd.tags[element_number].name,
+		       Style_className, &hcode);
+    }
+#endif /* USE_COLOR_STYLE */
+    if (element_number == HTML_OBJECT && tag->contents == SGML_LITTERAL) {
+	/*
+	 * These conditions only approximate the ones used in HTML.c.  Let our
+	 * SGML parser know that further content is to be parsed normally not
+	 * literally.  - kw
+	 */
+	if (!present) {
+	    return HT_PARSER_OTHER_CONTENT;
+	} else if (!present[HTML_OBJECT_DECLARE] &&
+		   !(present[HTML_OBJECT_NAME] &&
+		     value[HTML_OBJECT_NAME] && *value[HTML_OBJECT_NAME])) {
+	    if (present[HTML_OBJECT_SHAPES] ||
+		!(present[HTML_OBJECT_USEMAP] &&
+		  value[HTML_OBJECT_USEMAP] && *value[HTML_OBJECT_USEMAP]))
+		return HT_PARSER_OTHER_CONTENT;
+	}
+    }
+    return HT_OK;
+}
+
+/*		End Element
+ *		-----------
+ *
+ * When we end an element, the style must be returned to that in effect before
+ * that element.  Note that anchors (etc?) don't have an associated style, so
+ * that we must scan down the stack for an element with a defined style.  (In
+ * fact, the styles should be linked to the whole stack not just the top one.)
+ * TBL 921119
+ */
+static int HTMLGen_end_element(HTStructured * me, int element_number,
+			       char **insert GCC_UNUSED)
+{
+    if (!me->preformatted &&
+	HTML_dtd.tags[element_number].contents != SGML_EMPTY) {
+	/*
+	 * Can break before element end.
+	 */
+	if (HTML_dtd.tags[element_number].contents == SGML_ELEMENT)
+	    allow_break(me, 14, NO);
+	else
+	    allow_break(me, 1, NO);
+    }
+    HTMLGen_put_string(me, "</");
+    HTMLGen_put_string(me, HTML_dtd.tags[element_number].name);
+    HTMLGen_put_character(me, '>');
+    if (element_number == HTML_PRE) {
+	me->preformatted = NO;
+    }
+#ifdef USE_COLOR_STYLE
+    /*
+     * Same logic as in HTML_end_element, copied from there.  - kw
+     */
+    TrimColorClass(HTML_dtd.tags[element_number].name,
+		   Style_className, &hcode);
+
+    if (LYPreparsedSource && !ReallyEmptyTagNum(element_number)) {
+	CTRACE2(TRACE_STYLE,
+		(tfp, "STYLE:end_element: ending non-EMPTY style\n"));
+	do_cstyle_flush(me);
+	HText_characterStyle(me->text, hcode, STACK_OFF);
+    }
+#endif /* USE_COLOR_STYLE */
+    return HT_OK;
+}
+
+/*		Expanding entities
+ *		------------------
+ *
+ */
+static int HTMLGen_put_entity(HTStructured * me, int entity_number)
+{
+    int nent = (int) HTML_dtd.number_of_entities;
+
+    HTMLGen_put_character(me, '&');
+    if (entity_number < nent) {
+	HTMLGen_put_string(me, HTML_dtd.entity_names[entity_number]);
+    }
+    HTMLGen_put_character(me, ';');
+    return HT_OK;
+}
+
+/*	Free an HTML object
+ *	-------------------
+ *
+ */
+static void HTMLGen_free(HTStructured * me)
+{
+    (*me->targetClass.put_character) (me->target, '\n');
+    HTMLGen_flush(me);
+    (*me->targetClass._free) (me->target);	/* ripple through */
+#ifdef USE_COLOR_STYLE
+    FREE(Style_className);
+#endif
+    FREE(me);
+}
+
+static void PlainToHTML_free(HTStructured * me)
+{
+    HTMLGen_end_element(me, HTML_PRE, 0);
+    HTMLGen_free(me);
+}
+
+static void HTMLGen_abort(HTStructured * me, HTError e GCC_UNUSED)
+{
+    HTMLGen_free(me);
+#ifdef USE_COLOR_STYLE
+    FREE(Style_className);
+#endif
+}
+
+static void PlainToHTML_abort(HTStructured * me, HTError e GCC_UNUSED)
+{
+    PlainToHTML_free(me);
+}
+
+/*	Structured Object Class
+ *	-----------------------
+ */
+static const HTStructuredClass HTMLGeneration =		/* As opposed to print etc */
+{
+    "HTMLGen",
+    HTMLGen_free,
+    HTMLGen_abort,
+    HTMLGen_put_character, HTMLGen_put_string, HTMLGen_write,
+    HTMLGen_start_element, HTMLGen_end_element,
+    HTMLGen_put_entity
+};
+
+/*	Subclass-specific Methods
+ *	-------------------------
+ */
+HTStructured *HTMLGenerator(HTStream *output)
+{
+    HTStructured *me = (HTStructured *) malloc(sizeof(*me));
+
+    if (me == NULL)
+	outofmem(__FILE__, "HTMLGenerator");
+
+    assert(me != NULL);
+
+    me->isa = &HTMLGeneration;
+
+    me->target = output;
+    me->targetClass = *me->target->isa;		/* Copy pointers to routines for speed */
+
+    me->write_pointer = me->buffer;
+    flush_breaks(me);
+    me->line_break[0] = me->buffer;
+    me->cleanness = 0;
+    me->overflowed = NO;
+    me->delete_line_break_char[0] = NO;
+    me->preformatted = NO;
+    me->in_attrval = NO;
+
+    /*
+     * For what line length should we attempt to wrap ?  - kw
+     */
+    if (!LYPreparsedSource) {
+	me->buffer_maxchars = 80;	/* work as before - kw */
+    } else if (dump_output_width > 1) {
+	me->buffer_maxchars = dump_output_width;	/* try to honor -width - kw */
+    } else if (dump_output_immediately) {
+	me->buffer_maxchars = 80;	/* try to honor -width - kw */
+    } else {
+	me->buffer_maxchars = (LYcolLimit - 1);
+	if (me->buffer_maxchars < 38)	/* too narrow, let GridText deal */
+	    me->buffer_maxchars = 40;
+    }
+    if (me->buffer_maxchars > 900)	/* likely not true - kw */
+	me->buffer_maxchars = 78;
+    if (me->buffer_maxchars > BUFFER_SIZE)	/* must not be larger! */
+	me->buffer_maxchars = BUFFER_SIZE - 2;
+
+    /*
+     * If dump_output_immediately is set, there likely isn't anything after
+     * this stream to interpret the Lynx special chars.  Also if they get
+     * displayed via HTPlain, that will probably make non-breaking space chars
+     * etc.  invisible.  So let's translate them to numerical character
+     * references.  For debugging purposes we'll use the new hex format.
+     */
+    me->escape_specials = LYPreparsedSource;
+
+#ifdef USE_COLOR_STYLE
+    me->text = NULL;		/* Will be initialized when first needed. - kw */
+    FREE(Style_className);
+    class_string[0] = '\0';
+#endif /* COLOR_STYLE */
+
+    return me;
+}
+
+/*	Stream Object Class
+ *	-------------------
+ *
+ *	This object just converts a plain text stream into HTML
+ *	It is officially a structured strem but only the stream bits exist.
+ *	This is just the easiest way of typecasting all the routines.
+ */
+static const HTStructuredClass PlainToHTMLConversion =
+{
+    "plaintexttoHTML",
+    HTMLGen_free,
+    PlainToHTML_abort,
+    HTMLGen_put_character,
+    HTMLGen_put_string,
+    HTMLGen_write,
+    NULL,			/* Structured stuff */
+    NULL,
+    NULL
+};
+
+/*	HTConverter from plain text to HTML Stream
+ *	------------------------------------------
+ */
+HTStream *HTPlainToHTML(HTPresentation *pres GCC_UNUSED,
+			HTParentAnchor *anchor GCC_UNUSED,
+			HTStream *sink)
+{
+    HTStructured *me = (HTStructured *) malloc(sizeof(*me));
+
+    if (me == NULL)
+	outofmem(__FILE__, "PlainToHTML");
+
+    assert(me != NULL);
+
+    me->isa = (const HTStructuredClass *) &PlainToHTMLConversion;
+
+    /*
+     * Copy pointers to routines for speed.
+     */
+    me->target = sink;
+    me->targetClass = *me->target->isa;
+    me->write_pointer = me->buffer;
+    flush_breaks(me);
+    me->cleanness = 0;
+    me->overflowed = NO;
+    me->delete_line_break_char[0] = NO;
+    /* try to honor -width - kw */
+    me->buffer_maxchars = (dump_output_width > 1 ?
+			   dump_output_width : 80);
+
+    HTMLGen_put_string(me, "<HTML>\n<BODY>\n<PRE>\n");
+    me->preformatted = YES;
+    me->escape_specials = NO;
+    me->in_attrval = NO;
+    return (HTStream *) me;
+}
diff --git a/WWW/Library/Implementation/HTMLGen.h b/WWW/Library/Implementation/HTMLGen.h
new file mode 100644
index 00000000..f2db3d40
--- /dev/null
+++ b/WWW/Library/Implementation/HTMLGen.h
@@ -0,0 +1,26 @@
+/*                  /Net/dxcern/userd/timbl/hypertext/WWW/Library/Implementation/HTMLGen.html
+                                      HTML GENERATOR
+                                             
+   This module converts structed stream into stream.  That is, given a stream
+   to write to, it will give you a structured stream to
+   
+ */
+#ifndef HTMLGEN_H
+#define HTMLGEN_H
+
+#include <HTML.h>
+#include <HTStream.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern HTStructured *HTMLGenerator(HTStream *output);
+
+    extern HTStream *HTPlainToHTML(HTPresentation *pres,
+				   HTParentAnchor *anchor,
+				   HTStream *sink);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTMLGEN_H */
diff --git a/WWW/Library/Implementation/HTNews.c b/WWW/Library/Implementation/HTNews.c
new file mode 100644
index 00000000..b4ea9291
--- /dev/null
+++ b/WWW/Library/Implementation/HTNews.c
@@ -0,0 +1,3127 @@
+/*
+ * $LynxId: HTNews.c,v 1.69 2011/06/11 12:10:55 tom Exp $
+ *
+ *			NEWS ACCESS				HTNews.c
+ *			===========
+ *
+ * History:
+ *	26 Sep 90	Written TBL
+ *	29 Nov 91	Downgraded to C, for portable implementation.
+ */
+
+#include <HTUtils.h>		/* Coding convention macros */
+
+#ifndef DISABLE_NEWS
+
+/* Implements:
+*/
+#include <HTNews.h>
+
+#include <HTCJK.h>
+#include <HTMIME.h>
+#include <HTFont.h>
+#include <HTFormat.h>
+#include <HTTCP.h>
+#include <LYUtils.h>
+#include <LYStrings.h>
+
+#define NEWS_PORT 119		/* See rfc977 */
+#define SNEWS_PORT 563		/* See Lou Montulli */
+#define APPEND			/* Use append methods */
+int HTNewsChunkSize = 30;	/* Number of articles for quick display */
+int HTNewsMaxChunk = 40;	/* Largest number of articles in one window */
+
+#ifndef DEFAULT_NEWS_HOST
+#define DEFAULT_NEWS_HOST "news"
+#endif /* DEFAULT_NEWS_HOST */
+
+#ifndef NEWS_SERVER_FILE
+#define NEWS_SERVER_FILE "/usr/local/lib/rn/server"
+#endif /* NEWS_SERVER_FILE */
+
+#ifndef NEWS_AUTH_FILE
+#define NEWS_AUTH_FILE ".newsauth"
+#endif /* NEWS_AUTH_FILE */
+
+#ifdef USE_SSL
+static SSL *Handle = NULL;
+static int channel_s = 1;
+
+#define NEWS_NETWRITE(sock, buff, size) \
+	(Handle ? SSL_write(Handle, buff, size) : NETWRITE(sock, buff, size))
+#define NEWS_NETCLOSE(sock) \
+	{ (void)NETCLOSE(sock); if (Handle) { SSL_free(Handle); Handle = NULL; } }
+static int HTNewsGetCharacter(void);
+
+#define NEXT_CHAR HTNewsGetCharacter()
+#else
+#define NEWS_NETWRITE  NETWRITE
+#define NEWS_NETCLOSE  NETCLOSE
+#define NEXT_CHAR HTGetCharacter()
+#endif /* USE_SSL */
+
+#include <HTML.h>
+#include <HTAccess.h>
+#include <HTParse.h>
+#include <HTFormat.h>
+#include <HTAlert.h>
+
+#include <LYNews.h>
+#include <LYGlobalDefs.h>
+#include <LYLeaks.h>
+
+#define SnipIn(d,fmt,len,s)      sprintf(d, fmt,      (int)sizeof(d)-len, s)
+#define SnipIn2(d,fmt,tag,len,s) sprintf(d, fmt, tag, (int)sizeof(d)-len, s)
+
+struct _HTStructured {
+    const HTStructuredClass *isa;
+    /* ... */
+};
+
+#define LINE_LENGTH 512		/* Maximum length of line of ARTICLE etc */
+#define GROUP_NAME_LENGTH	256	/* Maximum length of group name */
+
+/*
+ *  Module-wide variables.
+ */
+char *HTNewsHost = NULL;	/* Default host */
+static char *NewsHost = NULL;	/* Current host */
+static char *NewsHREF = NULL;	/* Current HREF prefix */
+static int s;			/* Socket for NewsHost */
+static int HTCanPost = FALSE;	/* Current POST permission */
+static char response_text[LINE_LENGTH + 1];	/* Last response */
+
+static HTStructured *target;	/* The output sink */
+static HTStructuredClass targetClass;	/* Copy of fn addresses */
+static HTStream *rawtarget = NULL;	/* The output sink for rawtext */
+static HTStreamClass rawtargetClass;	/* Copy of fn addresses */
+static int diagnostic;		/* level: 0=none 2=source */
+static BOOL rawtext = NO;	/* Flag: HEAD or -mime_headers */
+static HTList *NNTP_AuthInfo = NULL;	/* AUTHINFO database */
+static char *name = NULL;
+static char *address = NULL;
+static char *dbuf = NULL;	/* dynamic buffer for long messages etc. */
+
+#define PUTC(c) (*targetClass.put_character)(target, c)
+#define PUTS(s) (*targetClass.put_string)(target, s)
+#define RAW_PUTS(s) (*rawtargetClass.put_string)(rawtarget, s)
+#define START(e) (*targetClass.start_element)(target, e, 0, 0, -1, 0)
+#define END(e) (*targetClass.end_element)(target, e, 0)
+#define MAYBE_END(e) if (HTML_dtd.tags[e].contents != SGML_EMPTY) \
+			(*targetClass.end_element)(target, e, 0)
+#define FREE_TARGET if (rawtext) (*rawtargetClass._free)(rawtarget); \
+			else (*targetClass._free)(target)
+#define ABORT_TARGET if (rawtext) (*rawtargetClass._abort)(rawtarget, NULL); \
+			else (*targetClass._abort)(target, NULL)
+
+typedef struct _NNTPAuth {
+    char *host;
+    char *user;
+    char *pass;
+} NNTPAuth;
+
+#ifdef LY_FIND_LEAKS
+static void free_news_globals(void)
+{
+    if (s >= 0) {
+	NEWS_NETCLOSE(s);
+	s = -1;
+    }
+    FREE(HTNewsHost);
+    FREE(NewsHost);
+    FREE(NewsHREF);
+    FREE(name);
+    FREE(address);
+    FREE(dbuf);
+}
+#endif /* LY_FIND_LEAKS */
+
+static void free_NNTP_AuthInfo(void)
+{
+    HTList *cur = NNTP_AuthInfo;
+    NNTPAuth *auth = NULL;
+
+    if (!cur)
+	return;
+
+    while (NULL != (auth = (NNTPAuth *) HTList_nextObject(cur))) {
+	FREE(auth->host);
+	FREE(auth->user);
+	FREE(auth->pass);
+	FREE(auth);
+    }
+    HTList_delete(NNTP_AuthInfo);
+    NNTP_AuthInfo = NULL;
+    return;
+}
+
+/*
+ * Initialize the authentication list by loading the user's $HOME/.newsauth
+ * file.  That file is part of tin's configuration and is used by a few other
+ * programs.
+ */
+static void load_NNTP_AuthInfo(void)
+{
+    FILE *fp;
+    char fname[LY_MAXPATH];
+    char buffer[LINE_LENGTH + 1];
+
+    LYAddPathToHome(fname, sizeof(fname), NEWS_AUTH_FILE);
+
+    if ((fp = fopen(fname, "r")) != 0) {
+	while (fgets(buffer, (int) sizeof(buffer), fp) != 0) {
+	    char the_host[LINE_LENGTH + 1];
+	    char the_pass[LINE_LENGTH + 1];
+	    char the_user[LINE_LENGTH + 1];
+
+	    if (sscanf(buffer, "%s%s%s", the_host, the_pass, the_user) == 3
+		&& strlen(the_host) != 0
+		&& strlen(the_pass) != 0
+		&& strlen(the_user) != 0) {
+		NNTPAuth *auth = typecalloc(NNTPAuth);
+
+		if (auth == NULL)
+		    break;
+		StrAllocCopy(auth->host, the_host);
+		StrAllocCopy(auth->pass, the_pass);
+		StrAllocCopy(auth->user, the_user);
+
+		HTList_appendObject(NNTP_AuthInfo, auth);
+	    }
+	}
+	fclose(fp);
+    }
+}
+
+const char *HTGetNewsHost(void)
+{
+    return HTNewsHost;
+}
+
+void HTSetNewsHost(const char *value)
+{
+    StrAllocCopy(HTNewsHost, value);
+}
+
+/*	Initialisation for this module
+ *	------------------------------
+ *
+ *	Except on the NeXT, we pick up the NewsHost name from
+ *
+ *	1.	Environment variable NNTPSERVER
+ *	2.	File NEWS_SERVER_FILE
+ *	3.	Compilation time macro DEFAULT_NEWS_HOST
+ *	4.	Default to "news"
+ *
+ *	On the NeXT, we pick up the NewsHost name from, in order:
+ *
+ *	1.	WorldWideWeb default "NewsHost"
+ *	2.	Global default "NewsHost"
+ *	3.	News default "NewsHost"
+ *	4.	Compilation time macro DEFAULT_NEWS_HOST
+ *	5.	Default to "news"
+ */
+static BOOL initialized = NO;
+static BOOL initialize(void)
+{
+#ifdef NeXTStep
+    char *cp = NULL;
+#endif
+
+    /*
+     * Get name of Host.
+     */
+#ifdef NeXTStep
+    if ((cp = NXGetDefaultValue("WorldWideWeb", "NewsHost")) == 0) {
+	if ((cp = NXGetDefaultValue("News", "NewsHost")) == 0) {
+	    StrAllocCopy(HTNewsHost, DEFAULT_NEWS_HOST);
+	}
+    }
+    if (cp) {
+	StrAllocCopy(HTNewsHost, cp);
+	cp = NULL;
+    }
+#else
+    if (LYGetEnv("NNTPSERVER")) {
+	StrAllocCopy(HTNewsHost, LYGetEnv("NNTPSERVER"));
+	CTRACE((tfp, "HTNews: NNTPSERVER defined as `%s'\n",
+		HTNewsHost));
+    } else {
+	FILE *fp = fopen(NEWS_SERVER_FILE, TXT_R);
+
+	if (fp) {
+	    char server_name[MAXHOSTNAMELEN + 1];
+
+	    if (fgets(server_name, (int) sizeof server_name, fp) != NULL) {
+		char *p = strchr(server_name, '\n');
+
+		if (p != NULL)
+		    *p = '\0';
+		StrAllocCopy(HTNewsHost, server_name);
+		CTRACE((tfp, "HTNews: File %s defines news host as `%s'\n",
+			NEWS_SERVER_FILE, HTNewsHost));
+	    }
+	    fclose(fp);
+	}
+    }
+    if (!HTNewsHost)
+	StrAllocCopy(HTNewsHost, DEFAULT_NEWS_HOST);
+#endif /* NeXTStep */
+
+    s = -1;			/* Disconnected */
+#ifdef LY_FIND_LEAKS
+    atexit(free_news_globals);
+#endif
+    return YES;
+}
+
+/*	Send NNTP Command line to remote host & Check Response
+ *	------------------------------------------------------
+ *
+ * On entry,
+ *	command points to the command to be sent, including CRLF, or is null
+ *		pointer if no command to be sent.
+ * On exit,
+ *	Negative status indicates transmission error, socket closed.
+ *	Positive status is an NNTP status.
+ */
+static int response(char *command)
+{
+    int result;
+    char *p = response_text;
+    int ich;
+
+    if (command) {
+	int status;
+	int length = (int) strlen(command);
+
+	CTRACE((tfp, "NNTP command to be sent: %s", command));
+#ifdef NOT_ASCII
+	{
+	    const char *p2;
+	    char *q;
+	    char ascii[LINE_LENGTH + 1];
+
+	    for (p2 = command, q = ascii; *p2; p2++, q++) {
+		*q = TOASCII(*p2);
+	    }
+	    status = NEWS_NETWRITE(s, ascii, length);
+	}
+#else
+	status = (int) NEWS_NETWRITE(s, (char *) command, length);
+#endif /* NOT_ASCII */
+	if (status < 0) {
+	    CTRACE((tfp, "HTNews: Unable to send command. Disconnecting.\n"));
+	    NEWS_NETCLOSE(s);
+	    s = -1;
+	    return status;
+	}			/* if bad status */
+    }
+    /* if command to be sent */
+    for (;;) {
+	ich = NEXT_CHAR;
+	if (((*p++ = (char) ich) == LF) ||
+	    (p == &response_text[LINE_LENGTH])) {
+	    *--p = '\0';	/* Terminate the string */
+	    CTRACE((tfp, "NNTP Response: %s\n", response_text));
+	    sscanf(response_text, "%d", &result);
+	    return result;
+	}
+	/* if end of line */
+	if (ich == EOF) {
+	    *(p - 1) = '\0';
+	    if (interrupted_in_htgetcharacter) {
+		CTRACE((tfp,
+			"HTNews: Interrupted on read, closing socket %d\n",
+			s));
+	    } else {
+		CTRACE((tfp, "HTNews: EOF on read, closing socket %d\n",
+			s));
+	    }
+	    NEWS_NETCLOSE(s);	/* End of file, close socket */
+	    s = -1;
+	    if (interrupted_in_htgetcharacter) {
+		interrupted_in_htgetcharacter = 0;
+		return (HT_INTERRUPTED);
+	    }
+	    return ((int) EOF);	/* End of file on response */
+	}
+    }				/* Loop over characters */
+}
+
+/*	Case insensitive string comparisons
+ *	-----------------------------------
+ *
+ * On entry,
+ *	template must be already in upper case.
+ *	unknown may be in upper or lower or mixed case to match.
+ */
+static BOOL match(const char *unknown, const char *ctemplate)
+{
+    const char *u = unknown;
+    const char *t = ctemplate;
+
+    for (; *u && *t && (TOUPPER(*u) == *t); u++, t++) ;		/* Find mismatch or end */
+    return (BOOL) (*t == 0);	/* OK if end of template */
+}
+
+typedef enum {
+    NNTPAUTH_ERROR = 0,		/* general failure */
+    NNTPAUTH_OK = 281,		/* authenticated successfully */
+    NNTPAUTH_CLOSE = 502	/* server probably closed connection */
+} NNTPAuthResult;
+
+/*
+ *  This function handles nntp authentication. - FM
+ */
+static NNTPAuthResult HTHandleAuthInfo(char *host)
+{
+    HTList *cur = NULL;
+    NNTPAuth *auth = NULL;
+    char *UserName = NULL;
+    char *PassWord = NULL;
+    char *msg = NULL;
+    char buffer[512];
+    int status, tries;
+
+    /*
+     * Make sure we have a host.  - FM
+     */
+    if (isEmpty(host))
+	return NNTPAUTH_ERROR;
+
+    /*
+     * Check for an existing authorization entry.  - FM
+     */
+    if (NNTP_AuthInfo == NULL) {
+	NNTP_AuthInfo = HTList_new();
+	load_NNTP_AuthInfo();
+#ifdef LY_FIND_LEAKS
+	atexit(free_NNTP_AuthInfo);
+#endif
+    }
+
+    cur = NNTP_AuthInfo;
+    while (NULL != (auth = (NNTPAuth *) HTList_nextObject(cur))) {
+	if (!strcmp(auth->host, host)) {
+	    UserName = auth->user;
+	    PassWord = auth->pass;
+	    break;
+	}
+    }
+
+    /*
+     * Handle the username.  - FM
+     */
+    buffer[sizeof(buffer) - 1] = '\0';
+    tries = 3;
+
+    while (tries) {
+	if (UserName == NULL) {
+	    HTSprintf0(&msg, gettext("Username for news host '%s':"), host);
+	    UserName = HTPrompt(msg, NULL);
+	    FREE(msg);
+	    if (!(UserName && *UserName)) {
+		FREE(UserName);
+		return NNTPAUTH_ERROR;
+	    }
+	}
+	sprintf(buffer, "AUTHINFO USER %.*s%c%c",
+		(int) sizeof(buffer) - 17, UserName, CR, LF);
+	if ((status = response(buffer)) < 0) {
+	    if (status == HT_INTERRUPTED)
+		_HTProgress(CONNECTION_INTERRUPTED);
+	    else
+		HTAlert(FAILED_CONNECTION_CLOSED);
+	    if (auth) {
+		if (auth->user != UserName) {
+		    FREE(auth->user);
+		    auth->user = UserName;
+		}
+	    } else {
+		FREE(UserName);
+	    }
+	    return NNTPAUTH_CLOSE;
+	}
+	if (status == 281) {
+	    /*
+	     * Username is accepted and no password is required.  - FM
+	     */
+	    if (auth) {
+		if (auth->user != UserName) {
+		    FREE(auth->user);
+		    auth->user = UserName;
+		}
+	    } else {
+		/*
+		 * Store the accepted username and no password.  - FM
+		 */
+		if ((auth = typecalloc(NNTPAuth)) != NULL) {
+		    StrAllocCopy(auth->host, host);
+		    auth->user = UserName;
+		    HTList_appendObject(NNTP_AuthInfo, auth);
+		}
+	    }
+	    return NNTPAUTH_OK;
+	}
+	if (status != 381) {
+	    /*
+	     * Not success, nor a request for the password, so it must be an
+	     * error.  - FM
+	     */
+	    HTAlert(response_text);
+	    tries--;
+	    if ((tries > 0) && HTConfirm(gettext("Change username?"))) {
+		if (!auth || auth->user != UserName) {
+		    FREE(UserName);
+		}
+		if ((UserName = HTPrompt(gettext("Username:"), UserName))
+		    != NULL &&
+		    *UserName) {
+		    continue;
+		}
+	    }
+	    if (auth) {
+		if (auth->user != UserName) {
+		    FREE(auth->user);
+		}
+		FREE(auth->pass);
+	    }
+	    FREE(UserName);
+	    return NNTPAUTH_ERROR;
+	}
+	break;
+    }
+
+    if (status == 381) {
+	/*
+	 * Handle the password.  - FM
+	 */
+	tries = 3;
+	while (tries) {
+	    if (PassWord == NULL) {
+		HTSprintf0(&msg, gettext("Password for news host '%s':"), host);
+		PassWord = HTPromptPassword(msg);
+		FREE(msg);
+		if (!(PassWord && *PassWord)) {
+		    FREE(PassWord);
+		    return NNTPAUTH_ERROR;
+		}
+	    }
+	    sprintf(buffer, "AUTHINFO PASS %.*s%c%c",
+		    (int) sizeof(buffer) - 17, PassWord, CR, LF);
+	    if ((status = response(buffer)) < 0) {
+		if (status == HT_INTERRUPTED) {
+		    _HTProgress(CONNECTION_INTERRUPTED);
+		} else {
+		    HTAlert(FAILED_CONNECTION_CLOSED);
+		}
+		if (auth) {
+		    if (auth->user != UserName) {
+			FREE(auth->user);
+			auth->user = UserName;
+		    }
+		    if (auth->pass != PassWord) {
+			FREE(auth->pass);
+			auth->pass = PassWord;
+		    }
+		} else {
+		    FREE(UserName);
+		    FREE(PassWord);
+		}
+		return NNTPAUTH_CLOSE;
+	    }
+	    if (status == 502) {
+		/*
+		 * That's what INN's nnrpd returns.  It closes the connection
+		 * after this.  - kw
+		 */
+		HTAlert(response_text);
+		if (auth) {
+		    if (auth->user == UserName)
+			UserName = NULL;
+		    FREE(auth->user);
+		    if (auth->pass == PassWord)
+			PassWord = NULL;
+		    FREE(auth->pass);
+		}
+		FREE(UserName);
+		FREE(PassWord);
+		return NNTPAUTH_CLOSE;
+	    }
+	    if (status == 281) {
+		/*
+		 * Password also is accepted, and everything has been stored. 
+		 * - FM
+		 */
+		if (auth) {
+		    if (auth->user != UserName) {
+			FREE(auth->user);
+			auth->user = UserName;
+		    }
+		    if (auth->pass != PassWord) {
+			FREE(auth->pass);
+			auth->pass = PassWord;
+		    }
+		} else {
+		    if ((auth = typecalloc(NNTPAuth)) != NULL) {
+			StrAllocCopy(auth->host, host);
+			auth->user = UserName;
+			auth->pass = PassWord;
+			HTList_appendObject(NNTP_AuthInfo, auth);
+		    }
+		}
+		return NNTPAUTH_OK;
+	    }
+	    /*
+	     * Not success, so it must be an error.  - FM
+	     */
+	    HTAlert(response_text);
+	    if (!auth || auth->pass != PassWord) {
+		FREE(PassWord);
+	    } else {
+		PassWord = NULL;
+	    }
+	    tries--;
+	    if ((tries > 0) && HTConfirm(gettext("Change password?"))) {
+		continue;
+	    }
+	    if (auth) {
+		if (auth->user == UserName)
+		    UserName = NULL;
+		FREE(auth->user);
+		FREE(auth->pass);
+	    }
+	    FREE(UserName);
+	    break;
+	}
+    }
+
+    return NNTPAUTH_ERROR;
+}
+
+/*	Find Author's name in mail address
+ *	----------------------------------
+ *
+ * On exit,
+ *	Returns allocated string which cannot be freed by the
+ *	calling function, and is reallocated on subsequent calls
+ *	to this function.
+ *
+ * For example, returns "Tim Berners-Lee" if given any of
+ *	" Tim Berners-Lee <tim@online.cern.ch> "
+ *  or	" tim@online.cern.ch ( Tim Berners-Lee ) "
+ */
+static char *author_name(char *email)
+{
+    char *p, *e;
+
+    StrAllocCopy(name, email);
+    CTRACE((tfp, "Trying to find name in: %s\n", name));
+
+    if ((p = strrchr(name, '(')) && (e = strrchr(name, ')'))) {
+	if (e > p) {
+	    *e = '\0';		/* Chop off everything after the ')'  */
+	    return HTStrip(p + 1);	/* Remove leading and trailing spaces */
+	}
+    }
+
+    if ((p = strrchr(name, '<')) && (e = strrchr(name, '>'))) {
+	if (e++ > p) {
+	    while ((*p++ = *e++) != 0)	/* Remove <...> */
+		;
+	    return HTStrip(name);	/* Remove leading and trailing spaces */
+	}
+    }
+
+    return HTStrip(name);	/* Default to the whole thing */
+}
+
+/*	Find Author's mail address
+ *	--------------------------
+ *
+ * On exit,
+ *	Returns allocated string which cannot be freed by the
+ *	calling function, and is reallocated on subsequent calls
+ *	to this function.
+ *
+ * For example, returns "montulli@spaced.out.galaxy.net" if given any of
+ *	" Lou Montulli <montulli@spaced.out.galaxy.net> "
+ *  or	" montulli@spaced.out.galaxy.net ( Lou "The Stud" Montulli ) "
+ */
+static char *author_address(char *email)
+{
+    char *p, *at, *e;
+
+    StrAllocCopy(address, email);
+    CTRACE((tfp, "Trying to find address in: %s\n", address));
+
+    if ((p = strrchr(address, '<'))) {
+	if ((e = strrchr(p, '>')) && (at = strrchr(p, '@'))) {
+	    if (at < e) {
+		*e = '\0';	/* Remove > */
+		return HTStrip(p + 1);	/* Remove leading and trailing spaces */
+	    }
+	}
+    }
+
+    if ((p = strrchr(address, '(')) &&
+	(e = strrchr(address, ')')) && (at = strchr(address, '@'))) {
+	if (e > p && at < e) {
+	    *p = '\0';		/* Chop off everything after the ')'  */
+	    return HTStrip(address);	/* Remove leading and trailing spaces */
+	}
+    }
+
+    if ((at = strrchr(address, '@')) && at > address) {
+	p = (at - 1);
+	e = (at + 1);
+	while (p > address && !isspace(UCH(*p)))
+	    p--;
+	while (*e && !isspace(UCH(*e)))
+	    e++;
+	*e = 0;
+	return HTStrip(p);
+    }
+
+    /*
+     * Default to the first word.
+     */
+    p = address;
+    while (isspace(UCH(*p)))
+	p++;			/* find first non-space */
+    e = p;
+    while (!isspace(UCH(*e)) && *e != '\0')
+	e++;			/* find next space or end */
+    *e = '\0';			/* terminate space */
+
+    return (p);
+}
+
+/*	Start anchor element
+ *	--------------------
+ */
+static void start_anchor(const char *href)
+{
+    BOOL present[HTML_A_ATTRIBUTES];
+    const char *value[HTML_A_ATTRIBUTES];
+    int i;
+
+    for (i = 0; i < HTML_A_ATTRIBUTES; i++)
+	present[i] = (BOOL) (i == HTML_A_HREF);
+    value[HTML_A_HREF] = href;
+    (*targetClass.start_element) (target, HTML_A, present, value, -1, 0);
+}
+
+/*	Start link element
+ *	------------------
+ */
+static void start_link(const char *href, const char *rev)
+{
+    BOOL present[HTML_LINK_ATTRIBUTES];
+    const char *value[HTML_LINK_ATTRIBUTES];
+    int i;
+
+    for (i = 0; i < HTML_LINK_ATTRIBUTES; i++)
+	present[i] = (BOOL) (i == HTML_LINK_HREF || i == HTML_LINK_REV);
+    value[HTML_LINK_HREF] = href;
+    value[HTML_LINK_REV] = rev;
+    (*targetClass.start_element) (target, HTML_LINK, present, value, -1, 0);
+}
+
+/*	Start list element
+ *	------------------
+ */
+static void start_list(int seqnum)
+{
+    BOOL present[HTML_OL_ATTRIBUTES];
+    const char *value[HTML_OL_ATTRIBUTES];
+    char SeqNum[20];
+    int i;
+
+    for (i = 0; i < HTML_OL_ATTRIBUTES; i++)
+	present[i] = (BOOL) (i == HTML_OL_SEQNUM || i == HTML_OL_START);
+    sprintf(SeqNum, "%d", seqnum);
+    value[HTML_OL_SEQNUM] = SeqNum;
+    value[HTML_OL_START] = SeqNum;
+    (*targetClass.start_element) (target, HTML_OL, present, value, -1, 0);
+}
+
+/*	Paste in an Anchor
+ *	------------------
+ *
+ *
+ * On entry,
+ *	HT	has a selection of zero length at the end.
+ *	text	points to the text to be put into the file, 0 terminated.
+ *	addr	points to the hypertext reference address,
+ *		terminated by white space, comma, NULL or '>'
+ */
+static void write_anchor(const char *text, const char *addr)
+{
+    char href[LINE_LENGTH + 1];
+    const char *p;
+    char *q;
+
+    for (p = addr; *p && (*p != '>') && !WHITE(*p) && (*p != ','); p++) {
+	;
+    }
+    if (strlen(NewsHREF) + (size_t) (p - addr) + 1 < sizeof(href)) {
+	q = href;
+	strcpy(q, NewsHREF);
+	/* Make complete hypertext reference */
+	StrNCat(q, addr, (size_t) (p - addr));
+    } else {
+	q = NULL;
+	HTSprintf0(&q, "%s%.*s", NewsHREF, (int) (p - addr), addr);
+    }
+
+    start_anchor(q);
+    PUTS(text);
+    END(HTML_A);
+
+    if (q != href)
+	FREE(q);
+}
+
+/*	Write list of anchors
+ *	---------------------
+ *
+ *	We take a pointer to a list of objects, and write out each,
+ *	generating an anchor for each.
+ *
+ * On entry,
+ *	HT	has a selection of zero length at the end.
+ *	text	points to a comma or space separated list of addresses.
+ * On exit,
+ *	*text	is NOT any more chopped up into substrings.
+ */
+static void write_anchors(char *text)
+{
+    char *start = text;
+    char *end;
+    char c;
+
+    for (;;) {
+	for (; *start && (WHITE(*start)); start++) ;	/* Find start */
+	if (!*start)
+	    return;		/* (Done) */
+	for (end = start;
+	     *end && (*end != ' ') && (*end != ','); end++) ;	/* Find end */
+	if (*end)
+	    end++;		/* Include comma or space but not NULL */
+	c = *end;
+	*end = '\0';
+	if (*start == '<')
+	    write_anchor(start, start + 1);
+	else
+	    write_anchor(start, start);
+	START(HTML_BR);
+	*end = c;
+	start = end;		/* Point to next one */
+    }
+}
+
+/*	Abort the connection					abort_socket
+ *	--------------------
+ */
+static void abort_socket(void)
+{
+    CTRACE((tfp, "HTNews: EOF on read, closing socket %d\n", s));
+    NEWS_NETCLOSE(s);		/* End of file, close socket */
+    if (rawtext) {
+	RAW_PUTS("Network Error: connection lost\n");
+    } else {
+	PUTS("Network Error: connection lost");
+	PUTC('\n');
+    }
+    s = -1;			/* End of file on response */
+}
+
+/*
+ *  Determine if a line is a valid header line.			valid_header
+ *  -------------------------------------------
+ */
+static BOOLEAN valid_header(char *line)
+{
+    char *colon, *space;
+
+    /*
+     * Blank or tab in first position implies this is a continuation header.
+     */
+    if (line[0] == ' ' || line[0] == '\t')
+	return (TRUE);
+
+    /*
+     * Just check for initial letter, colon, and space to make sure we discard
+     * only invalid headers.
+     */
+    colon = strchr(line, ':');
+    space = strchr(line, ' ');
+    if (isalpha(UCH(line[0])) && colon && space == colon + 1)
+	return (TRUE);
+
+    /*
+     * Anything else is a bad header -- it should be ignored.
+     */
+    return (FALSE);
+}
+
+/*	post in an Article					post_article
+ *	------------------
+ *			(added by FM, modeled on Lynx's previous mini inews)
+ *
+ *	Note the termination condition of a single dot on a line by itself.
+ *
+ *  On entry,
+ *	s		Global socket number is OK
+ *	postfile	file with header and article to post.
+ */
+static void post_article(char *postfile)
+{
+    char line[512];
+    char buf[512];
+    char crlf[3];
+    char *cp;
+    int status;
+    FILE *fd;
+    int in_header = 1, seen_header = 0, seen_fromline = 0;
+    int blen = 0, llen = 0;
+
+    /*
+     * Open the temporary file with the nntp headers and message body.  - FM
+     */
+    if ((fd = fopen(NonNull(postfile), TXT_R)) == NULL) {
+	HTAlert(FAILED_CANNOT_OPEN_POST);
+	return;
+    }
+
+    /*
+     * Read the temporary file and post in maximum 512 byte chunks.  - FM
+     */
+    buf[0] = '\0';
+    sprintf(crlf, "%c%c", CR, LF);
+    while (fgets(line, (int) sizeof(line) - 2, fd) != NULL) {
+	if ((cp = strchr(line, '\n')) != NULL)
+	    *cp = '\0';
+	if (line[0] == '.') {
+	    /*
+	     * A single '.' means end of transmission for nntp.  Lead dots on
+	     * lines normally are trimmed and the EOF is not registered if the
+	     * dot was not followed by CRLF.  We prepend an extra dot for any
+	     * line beginning with one, to retain the one intended, as well as
+	     * avoid a false EOF signal.  We know we have room for it in the
+	     * buffer, because we normally send when it would exceed 510.  - FM
+	     */
+	    strcat(buf, ".");
+	    blen++;
+	}
+	llen = (int) strlen(line);
+	if (in_header && !strncasecomp(line, "From:", 5)) {
+	    seen_header = 1;
+	    seen_fromline = 1;
+	}
+	if (in_header && line[0] == '\0') {
+	    if (seen_header) {
+		in_header = 0;
+		if (!seen_fromline) {
+		    if (blen >= (int) sizeof(buf) - 35) {
+			IGNORE_RC(NEWS_NETWRITE(s, buf, blen));
+			buf[blen = 0] = 0;
+		    }
+		    strcat(buf, "From: anonymous@nowhere.you.know");
+		    strcat(buf, crlf);
+		    blen += 34;
+		}
+	    } else {
+		continue;
+	    }
+	} else if (in_header) {
+	    if (valid_header(line)) {
+		seen_header = 1;
+	    } else {
+		continue;
+	    }
+	}
+	strcat(line, crlf);
+	llen += 2;
+	if ((blen + llen) >= (int) sizeof(buf) - 1) {
+	    IGNORE_RC(NEWS_NETWRITE(s, buf, blen));
+	    buf[blen = 0] = 0;
+	}
+	strcat(buf, line);
+	blen += llen;
+    }
+    fclose(fd);
+    HTSYS_remove(postfile);
+
+    /*
+     * Send the nntp EOF and get the server's response.  - FM
+     */
+    if (blen >= (int) sizeof(buf) - 4) {
+	IGNORE_RC(NEWS_NETWRITE(s, buf, blen));
+	buf[blen = 0] = 0;
+    }
+    strcat(buf, ".");
+    strcat(buf, crlf);
+    blen += 3;
+    IGNORE_RC(NEWS_NETWRITE(s, buf, blen));
+
+    status = response(NULL);
+    if (status == 240) {
+	/*
+	 * Successful post.  - FM
+	 */
+	HTProgress(response_text);
+    } else {
+	/*
+	 * Shucks, something went wrong.  - FM
+	 */
+	HTAlert(response_text);
+    }
+}
+
+#ifdef NEWS_DEBUG
+/* for DEBUG 1997/11/07 (Fri) 17:20:16 */
+void debug_print(unsigned char *p)
+{
+    while (*p) {
+	if (*p == '\0')
+	    break;
+	if (*p == 0x1b)
+	    printf("[ESC]");
+	else if (*p == '\n')
+	    printf("[NL]");
+	else if (*p < ' ' || *p >= 0x80)
+	    printf("(%02x)", *p);
+	else
+	    putchar(*p);
+	p++;
+    }
+    printf("]\n");
+}
+#endif
+
+static char *decode_mime(char **str)
+{
+    static char empty[] = "";
+
+#ifdef SH_EX
+    if (HTCJK != JAPANESE)
+	return *str;
+#endif
+    HTmmdecode(str, *str);
+    return HTrjis(str, *str) ? *str : empty;
+}
+
+/*	Read in an Article					read_article
+ *	------------------
+ *
+ *	Note the termination condition of a single dot on a line by itself.
+ *	RFC 977 specifies that the line "folding" of RFC850 is not used, so we
+ *	do not handle it here.
+ *
+ * On entry,
+ *	s	Global socket number is OK
+ *	HT	Global hypertext object is ready for appending text
+ */
+static int read_article(HTParentAnchor *thisanchor)
+{
+    char line[LINE_LENGTH + 1];
+    char *full_line = NULL;
+    char *subject = NULL;	/* Subject string           */
+    char *from = NULL;		/* From string              */
+    char *replyto = NULL;	/* Reply-to string          */
+    char *date = NULL;		/* Date string              */
+    char *organization = NULL;	/* Organization string      */
+    char *references = NULL;	/* Hrefs for other articles */
+    char *newsgroups = NULL;	/* Newsgroups list          */
+    char *followupto = NULL;	/* Followup list            */
+    char *href = NULL;
+    char *p = line;
+    char *cp;
+    const char *ccp;
+    BOOL done = NO;
+
+    /*
+     * Read in the HEADer of the article.
+     *
+     * The header fields are either ignored, or formatted and put into the
+     * text.
+     */
+    if (!diagnostic && !rawtext) {
+	while (!done) {
+	    int ich = NEXT_CHAR;
+
+	    *p++ = (char) ich;
+	    if (ich == EOF) {
+		if (interrupted_in_htgetcharacter) {
+		    interrupted_in_htgetcharacter = 0;
+		    CTRACE((tfp,
+			    "HTNews: Interrupted on read, closing socket %d\n",
+			    s));
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		    return (HT_INTERRUPTED);
+		}
+		abort_socket();	/* End of file, close socket */
+		return (HT_LOADED);	/* End of file on response */
+	    }
+	    if (((char) ich == LF) || (p == &line[LINE_LENGTH])) {
+		*--p = '\0';	/* Terminate the string */
+		CTRACE((tfp, "H %s\n", line));
+
+		if (line[0] == '\t' || line[0] == ' ') {
+		    int i = 0;
+
+		    while (line[i]) {
+			if (line[i] == '\t')
+			    line[i] = ' ';
+			i++;
+		    }
+		    if (full_line == NULL) {
+			StrAllocCopy(full_line, line);
+		    } else {
+			StrAllocCat(full_line, line);
+		    }
+		} else {
+		    StrAllocCopy(full_line, line);
+		}
+
+		if (full_line[0] == '.') {
+		    /*
+		     * End of article?
+		     */
+		    if (UCH(full_line[1]) < ' ') {
+			done = YES;
+			break;
+		    }
+		} else if (UCH(full_line[0]) < ' ') {
+		    break;	/* End of Header? */
+
+		} else if (match(full_line, "SUBJECT:")) {
+		    StrAllocCopy(subject, HTStrip(strchr(full_line, ':') + 1));
+		    decode_mime(&subject);
+		} else if (match(full_line, "DATE:")) {
+		    StrAllocCopy(date, HTStrip(strchr(full_line, ':') + 1));
+
+		} else if (match(full_line, "ORGANIZATION:")) {
+		    StrAllocCopy(organization,
+				 HTStrip(strchr(full_line, ':') + 1));
+		    decode_mime(&organization);
+
+		} else if (match(full_line, "FROM:")) {
+		    StrAllocCopy(from, HTStrip(strchr(full_line, ':') + 1));
+		    decode_mime(&from);
+
+		} else if (match(full_line, "REPLY-TO:")) {
+		    StrAllocCopy(replyto, HTStrip(strchr(full_line, ':') + 1));
+		    decode_mime(&replyto);
+
+		} else if (match(full_line, "NEWSGROUPS:")) {
+		    StrAllocCopy(newsgroups, HTStrip(strchr(full_line, ':') + 1));
+
+		} else if (match(full_line, "REFERENCES:")) {
+		    StrAllocCopy(references, HTStrip(strchr(full_line, ':') + 1));
+
+		} else if (match(full_line, "FOLLOWUP-TO:")) {
+		    StrAllocCopy(followupto, HTStrip(strchr(full_line, ':') + 1));
+
+		} else if (match(full_line, "MESSAGE-ID:")) {
+		    char *msgid = HTStrip(full_line + 11);
+
+		    if (msgid[0] == '<' && msgid[strlen(msgid) - 1] == '>') {
+			msgid[strlen(msgid) - 1] = '\0';	/* Chop > */
+			msgid++;	/* Chop < */
+			HTAnchor_setMessageID(thisanchor, msgid);
+		    }
+
+		}		/* end if match */
+		p = line;	/* Restart at beginning */
+	    }			/* if end of line */
+	}			/* Loop over characters */
+	FREE(full_line);
+
+	START(HTML_HEAD);
+	PUTC('\n');
+	START(HTML_TITLE);
+	if (subject && *subject != '\0')
+	    PUTS(subject);
+	else
+	    PUTS("No Subject");
+	END(HTML_TITLE);
+	PUTC('\n');
+	/*
+	 * Put in the owner as a link rel.
+	 */
+	if (from || replyto) {
+	    char *temp = NULL;
+
+	    StrAllocCopy(temp, author_address(replyto ? replyto : from));
+	    StrAllocCopy(href, STR_MAILTO_URL);
+	    if (strchr(temp, '%') || strchr(temp, '?')) {
+		cp = HTEscape(temp, URL_XPALPHAS);
+		StrAllocCat(href, cp);
+		FREE(cp);
+	    } else {
+		StrAllocCat(href, temp);
+	    }
+	    start_link(href, "made");
+	    PUTC('\n');
+	    FREE(temp);
+	}
+	END(HTML_HEAD);
+	PUTC('\n');
+
+	START(HTML_H1);
+	if (subject && *subject != '\0')
+	    PUTS(subject);
+	else
+	    PUTS("No Subject");
+	END(HTML_H1);
+	PUTC('\n');
+
+	if (subject)
+	    FREE(subject);
+
+	START(HTML_DLC);
+	PUTC('\n');
+
+	if (from || replyto) {
+	    START(HTML_DT);
+	    START(HTML_B);
+	    PUTS("From:");
+	    END(HTML_B);
+	    PUTC(' ');
+	    if (from)
+		PUTS(from);
+	    else
+		PUTS(replyto);
+	    MAYBE_END(HTML_DT);
+	    PUTC('\n');
+
+	    if (!replyto)
+		StrAllocCopy(replyto, from);
+	    START(HTML_DT);
+	    START(HTML_B);
+	    PUTS("Reply to:");
+	    END(HTML_B);
+	    PUTC(' ');
+	    start_anchor(href);
+	    if (*replyto != '<')
+		PUTS(author_name(replyto));
+	    else
+		PUTS(author_address(replyto));
+	    END(HTML_A);
+	    START(HTML_BR);
+	    MAYBE_END(HTML_DT);
+	    PUTC('\n');
+
+	    FREE(from);
+	    FREE(replyto);
+	}
+
+	if (date) {
+	    START(HTML_DT);
+	    START(HTML_B);
+	    PUTS("Date:");
+	    END(HTML_B);
+	    PUTC(' ');
+	    PUTS(date);
+	    MAYBE_END(HTML_DT);
+	    PUTC('\n');
+	    FREE(date);
+	}
+
+	if (organization) {
+	    START(HTML_DT);
+	    START(HTML_B);
+	    PUTS("Organization:");
+	    END(HTML_B);
+	    PUTC(' ');
+	    PUTS(organization);
+	    MAYBE_END(HTML_DT);
+	    PUTC('\n');
+	    FREE(organization);
+	}
+
+	/* sanitize some headers - kw */
+	if (newsgroups &&
+	    ((cp = strchr(newsgroups, '/')) ||
+	     (cp = strchr(newsgroups, '(')))) {
+	    *cp = '\0';
+	}
+	if (newsgroups && !*newsgroups) {
+	    FREE(newsgroups);
+	}
+	if (followupto &&
+	    ((cp = strchr(followupto, '/')) ||
+	     (cp = strchr(followupto, '(')))) {
+	    *cp = '\0';
+	}
+	if (followupto && !*followupto) {
+	    FREE(followupto);
+	}
+
+	if (newsgroups && HTCanPost) {
+	    START(HTML_DT);
+	    START(HTML_B);
+	    PUTS("Newsgroups:");
+	    END(HTML_B);
+	    PUTC('\n');
+	    MAYBE_END(HTML_DT);
+	    START(HTML_DD);
+	    write_anchors(newsgroups);
+	    MAYBE_END(HTML_DD);
+	    PUTC('\n');
+	}
+
+	if (followupto && !strcasecomp(followupto, "poster")) {
+	    /*
+	     * "Followup-To:  poster" has special meaning.  Don't use it to
+	     * construct a newsreply link.  -kw
+	     */
+	    START(HTML_DT);
+	    START(HTML_B);
+	    PUTS("Followup to:");
+	    END(HTML_B);
+	    PUTC(' ');
+	    if (href) {
+		start_anchor(href);
+		PUTS("poster");
+		END(HTML_A);
+	    } else {
+		PUTS("poster");
+	    }
+	    MAYBE_END(HTML_DT);
+	    PUTC('\n');
+	    FREE(followupto);
+	}
+
+	if (newsgroups && HTCanPost) {
+	    /*
+	     * We have permission to POST to this host, so add a link for
+	     * posting followups for this article.  - FM
+	     */
+	    if (!strncasecomp(NewsHREF, STR_SNEWS_URL, 6))
+		StrAllocCopy(href, "snewsreply://");
+	    else
+		StrAllocCopy(href, "newsreply://");
+	    StrAllocCat(href, NewsHost);
+	    StrAllocCat(href, "/");
+	    StrAllocCat(href, (followupto ? followupto : newsgroups));
+	    if (*href == 'n' &&
+		(ccp = HTAnchor_messageID(thisanchor)) && *ccp) {
+		StrAllocCat(href, ";ref=");
+		if (strchr(ccp, '<') || strchr(ccp, '&') ||
+		    strchr(ccp, ' ') || strchr(ccp, ':') ||
+		    strchr(ccp, '/') || strchr(ccp, '%') ||
+		    strchr(ccp, ';')) {
+		    char *cp1 = HTEscape(ccp, URL_XPALPHAS);
+
+		    StrAllocCat(href, cp1);
+		    FREE(cp1);
+		} else {
+		    StrAllocCat(href, ccp);
+		}
+	    }
+
+	    START(HTML_DT);
+	    START(HTML_B);
+	    PUTS("Followup to:");
+	    END(HTML_B);
+	    PUTC(' ');
+	    start_anchor(href);
+	    if (strchr((followupto ? followupto : newsgroups), ',')) {
+		PUTS("newsgroups");
+	    } else {
+		PUTS("newsgroup");
+	    }
+	    END(HTML_A);
+	    MAYBE_END(HTML_DT);
+	    PUTC('\n');
+	}
+	FREE(newsgroups);
+	FREE(followupto);
+
+	if (references) {
+	    START(HTML_DT);
+	    START(HTML_B);
+	    PUTS("References:");
+	    END(HTML_B);
+	    MAYBE_END(HTML_DT);
+	    PUTC('\n');
+	    START(HTML_DD);
+	    write_anchors(references);
+	    MAYBE_END(HTML_DD);
+	    PUTC('\n');
+	    FREE(references);
+	}
+
+	END(HTML_DLC);
+	PUTC('\n');
+	FREE(href);
+    }
+
+    if (rawtext) {
+	/*
+	 * No tags, and never do a PUTC.  - kw
+	 */
+	;
+    } else if (diagnostic) {
+	/*
+	 * Read in the HEAD and BODY of the Article as XMP formatted text.  -
+	 * FM
+	 */
+	START(HTML_XMP);
+	PUTC('\n');
+    } else {
+	/*
+	 * Read in the BODY of the Article as PRE formatted text.  - FM
+	 */
+	START(HTML_PRE);
+	PUTC('\n');
+    }
+
+    p = line;
+    while (!done) {
+	int ich = NEXT_CHAR;
+
+	*p++ = (char) ich;
+	if (ich == EOF) {
+	    if (interrupted_in_htgetcharacter) {
+		interrupted_in_htgetcharacter = 0;
+		CTRACE((tfp,
+			"HTNews: Interrupted on read, closing socket %d\n",
+			s));
+		NEWS_NETCLOSE(s);
+		s = -1;
+		return (HT_INTERRUPTED);
+	    }
+	    abort_socket();	/* End of file, close socket */
+	    return (HT_LOADED);	/* End of file on response */
+	}
+	if (((char) ich == LF) || (p == &line[LINE_LENGTH])) {
+	    *p = '\0';		/* Terminate the string */
+	    CTRACE((tfp, "B %s", line));
+#ifdef NEWS_DEBUG		/* 1997/11/09 (Sun) 15:56:11 */
+	    debug_print(line);	/* @@@ */
+#endif
+	    if (line[0] == '.') {
+		/*
+		 * End of article?
+		 */
+		if (UCH(line[1]) < ' ') {
+		    break;
+		} else {	/* Line starts with dot */
+		    if (rawtext) {
+			RAW_PUTS(&line[1]);
+		    } else {
+			PUTS(&line[1]);		/* Ignore first dot */
+		    }
+		}
+	    } else {
+		if (rawtext) {
+		    RAW_PUTS(line);
+		} else if (diagnostic || !scan_for_buried_news_references) {
+		    /*
+		     * All lines are passed as unmodified source.  - FM
+		     */
+		    PUTS(line);
+		} else {
+		    /*
+		     * Normal lines are scanned for buried references to other
+		     * articles.  Unfortunately, it could pick up mail
+		     * addresses as well!  It also can corrupt uuencoded
+		     * messages!  So we don't do this when fetching articles as
+		     * WWW_SOURCE or when downloading (diagnostic is TRUE) or
+		     * if the client has set scan_for_buried_news_references to
+		     * FALSE.  Otherwise, we convert all "<...@...>" strings
+		     * preceded by "rticle " to "news:...@..." links, and any
+		     * strings that look like URLs to links.  - FM
+		     */
+		    char *l = line;
+		    char *p2;
+
+		    while ((p2 = strstr(l, "rticle <")) != NULL) {
+			char *q = strrchr(p2, '>');
+			char *at = strrchr(p2, '@');
+
+			if (q && at && at < q) {
+			    char c = q[1];
+
+			    q[1] = 0;	/* chop up */
+			    p2 += 7;
+			    *p2 = 0;
+			    while (*l) {
+				if (StrNCmp(l, STR_NEWS_URL, LEN_NEWS_URL) &&
+				    StrNCmp(l, "snews://", 8) &&
+				    StrNCmp(l, "nntp://", 7) &&
+				    StrNCmp(l, "snewspost:", 10) &&
+				    StrNCmp(l, "snewsreply:", 11) &&
+				    StrNCmp(l, "newspost:", 9) &&
+				    StrNCmp(l, "newsreply:", 10) &&
+				    StrNCmp(l, "ftp://", 6) &&
+				    StrNCmp(l, "file:/", 6) &&
+				    StrNCmp(l, "finger://", 9) &&
+				    StrNCmp(l, "http://", 7) &&
+				    StrNCmp(l, "https://", 8) &&
+				    StrNCmp(l, "wais://", 7) &&
+				    StrNCmp(l, STR_MAILTO_URL, LEN_MAILTO_URL) &&
+				    StrNCmp(l, "cso://", 6) &&
+				    StrNCmp(l, "gopher://", 9)) {
+				    PUTC(*l++);
+				} else {
+				    StrAllocCopy(href, l);
+				    start_anchor(strtok(href, " \r\n\t,>)\""));
+				    while (*l && !strchr(" \r\n\t,>)\"", *l))
+					PUTC(*l++);
+				    END(HTML_A);
+				    FREE(href);
+				}
+			    }
+			    *p2 = '<';	/* again */
+			    *q = 0;
+			    start_anchor(p2 + 1);
+			    *q = '>';	/* again */
+			    PUTS(p2);
+			    END(HTML_A);
+			    q[1] = c;	/* again */
+			    l = q + 1;
+			} else {
+			    break;	/* line has unmatched <> */
+			}
+		    }
+		    while (*l) {	/* Last bit of the line */
+			if (StrNCmp(l, STR_NEWS_URL, LEN_NEWS_URL) &&
+			    StrNCmp(l, "snews://", 8) &&
+			    StrNCmp(l, "nntp://", 7) &&
+			    StrNCmp(l, "snewspost:", 10) &&
+			    StrNCmp(l, "snewsreply:", 11) &&
+			    StrNCmp(l, "newspost:", 9) &&
+			    StrNCmp(l, "newsreply:", 10) &&
+			    StrNCmp(l, "ftp://", 6) &&
+			    StrNCmp(l, "file:/", 6) &&
+			    StrNCmp(l, "finger://", 9) &&
+			    StrNCmp(l, "http://", 7) &&
+			    StrNCmp(l, "https://", 8) &&
+			    StrNCmp(l, "wais://", 7) &&
+			    StrNCmp(l, STR_MAILTO_URL, LEN_MAILTO_URL) &&
+			    StrNCmp(l, "cso://", 6) &&
+			    StrNCmp(l, "gopher://", 9))
+			    PUTC(*l++);
+			else {
+			    StrAllocCopy(href, l);
+			    start_anchor(strtok(href, " \r\n\t,>)\""));
+			    while (*l && !strchr(" \r\n\t,>)\"", *l))
+				PUTC(*l++);
+			    END(HTML_A);
+			    FREE(href);
+			}
+		    }
+		}		/* if diagnostic or not scan_for_buried_news_references */
+	    }			/* if not dot */
+	    p = line;		/* Restart at beginning */
+	}			/* if end of line */
+    }				/* Loop over characters */
+
+    if (rawtext)
+	return (HT_LOADED);
+
+    if (diagnostic)
+	END(HTML_XMP);
+    else
+	END(HTML_PRE);
+    PUTC('\n');
+    return (HT_LOADED);
+}
+
+/*	Read in a List of Newsgroups
+ *	----------------------------
+ *
+ *  Note the termination condition of a single dot on a line by itself.
+ *  RFC 977 specifies that the line "folding" of RFC850 is not used,
+ *  so we do not handle it here.
+ */
+static int read_list(char *arg)
+{
+    char line[LINE_LENGTH + 1];
+    char *p;
+    BOOL done = NO;
+    BOOL head = NO;
+    BOOL tail = NO;
+    BOOL skip_this_line = NO;
+    BOOL skip_rest_of_line = NO;
+    int listing = 0;
+    char *pattern = NULL;
+    int len = 0;
+
+    /*
+     * Support head or tail matches for groups to list.  - FM
+     */
+    if (arg && strlen(arg) > 1) {
+	if (*arg == '*') {
+	    tail = YES;
+	    StrAllocCopy(pattern, (arg + 1));
+	} else if (arg[strlen(arg) - 1] == '*') {
+	    head = YES;
+	    StrAllocCopy(pattern, arg);
+	    pattern[strlen(pattern) - 1] = '\0';
+	}
+	if (tail || head) {
+	    len = (int) strlen(pattern);
+	}
+
+    }
+
+    /*
+     * Read the server's reply.
+     *
+     * The lines are scanned for newsgroup names and descriptions.
+     */
+    START(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_TITLE);
+    PUTS("Newsgroups");
+    END(HTML_TITLE);
+    PUTC('\n');
+    END(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_H1);
+    PUTS("Newsgroups");
+    END(HTML_H1);
+    PUTC('\n');
+    p = line;
+    START(HTML_DLC);
+    PUTC('\n');
+    while (!done) {
+	int ich = NEXT_CHAR;
+	char ch = (char) ich;
+
+	if (ich == EOF) {
+	    if (interrupted_in_htgetcharacter) {
+		interrupted_in_htgetcharacter = 0;
+		CTRACE((tfp,
+			"HTNews: Interrupted on read, closing socket %d\n",
+			s));
+		NEWS_NETCLOSE(s);
+		s = -1;
+		return (HT_INTERRUPTED);
+	    }
+	    abort_socket();	/* End of file, close socket */
+	    FREE(pattern);
+	    return (HT_LOADED);	/* End of file on response */
+	} else if (skip_this_line) {
+	    if (ch == LF) {
+		skip_this_line = skip_rest_of_line = NO;
+		p = line;
+	    }
+	    continue;
+	} else if (skip_rest_of_line) {
+	    if (ch != LF) {
+		continue;
+	    }
+	} else if (p == &line[LINE_LENGTH]) {
+	    CTRACE((tfp, "b %.*s%c[...]\n", (LINE_LENGTH), line, ch));
+	    *p = '\0';
+	    if (ch == LF) {
+		;		/* Will be dealt with below */
+	    } else if (WHITE(ch)) {
+		ch = LF;	/* May treat as line without description */
+		skip_this_line = YES;	/* ...and ignore until LF */
+	    } else if (strchr(line, ' ') == NULL &&
+		       strchr(line, '\t') == NULL) {
+		/* No separator found */
+		CTRACE((tfp, "HTNews..... group name too long, discarding.\n"));
+		skip_this_line = YES;	/* ignore whole line */
+		continue;
+	    } else {
+		skip_rest_of_line = YES;	/* skip until ch == LF found */
+	    }
+	} else {
+	    *p++ = ch;
+	}
+	if (ch == LF) {
+	    skip_rest_of_line = NO;	/* done, reset flag */
+	    *p = '\0';		/* Terminate the string */
+	    CTRACE((tfp, "B %s", line));
+	    if (line[0] == '.') {
+		/*
+		 * End of article?
+		 */
+		if (UCH(line[1]) < ' ') {
+		    break;
+		} else {	/* Line starts with dot */
+		    START(HTML_DT);
+		    PUTS(&line[1]);
+		    MAYBE_END(HTML_DT);
+		}
+	    } else if (line[0] == '#') {	/* Comment? */
+		p = line;	/* Restart at beginning */
+		continue;
+	    } else {
+		/*
+		 * Normal lines are scanned for references to newsgroups.
+		 */
+		int i = 0;
+
+		/* find whitespace if it exits */
+		for (; line[i] != '\0' && !WHITE(line[i]); i++) ;	/* null body */
+
+		if (line[i] != '\0') {
+		    line[i] = '\0';
+		    if ((head && strncasecomp(line, pattern, len)) ||
+			(tail && (i < len ||
+				  strcasecomp((line + (i - len)), pattern)))) {
+			p = line;	/* Restart at beginning */
+			continue;
+		    }
+		    START(HTML_DT);
+		    write_anchor(line, line);
+		    listing++;
+		    MAYBE_END(HTML_DT);
+		    PUTC('\n');
+		    START(HTML_DD);
+		    PUTS(&line[i + 1]);		/* put description */
+		    MAYBE_END(HTML_DD);
+		} else {
+		    if ((head && strncasecomp(line, pattern, len)) ||
+			(tail && (i < len ||
+				  strcasecomp((line + (i - len)), pattern)))) {
+			p = line;	/* Restart at beginning */
+			continue;
+		    }
+		    START(HTML_DT);
+		    write_anchor(line, line);
+		    MAYBE_END(HTML_DT);
+		    listing++;
+		}
+	    }			/* if not dot */
+	    p = line;		/* Restart at beginning */
+	}			/* if end of line */
+    }				/* Loop over characters */
+    if (!listing) {
+	char *msg = NULL;
+
+	START(HTML_DT);
+	HTSprintf0(&msg, gettext("No matches for: %s"), arg);
+	PUTS(msg);
+	MAYBE_END(HTML_DT);
+	FREE(msg);
+    }
+    END(HTML_DLC);
+    PUTC('\n');
+    FREE(pattern);
+    return (HT_LOADED);
+}
+
+/*	Read in a Newsgroup
+ *	-------------------
+ *
+ *  Unfortunately, we have to ask for each article one by one if we
+ *  want more than one field.
+ *
+ */
+static int read_group(const char *groupName,
+		      int first_required,
+		      int last_required)
+{
+    char line[LINE_LENGTH + 1];
+    char *author = NULL;
+    char *subject = NULL;
+    char *date = NULL;
+    int i;
+    char *p;
+    BOOL done;
+
+    char buffer[LINE_LENGTH + 1];
+    char *temp = NULL;
+    char *reference = NULL;	/* Href for article */
+    int art;			/* Article number WITHIN GROUP */
+    int status, count, first, last;	/* Response fields */
+
+    START(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_TITLE);
+    PUTS("Newsgroup ");
+    PUTS(groupName);
+    END(HTML_TITLE);
+    PUTC('\n');
+    END(HTML_HEAD);
+    PUTC('\n');
+
+    sscanf(response_text, " %d %d %d %d", &status, &count, &first, &last);
+    CTRACE((tfp, "Newsgroup status=%d, count=%d, (%d-%d) required:(%d-%d)\n",
+	    status, count, first, last, first_required, last_required));
+    if (last == 0) {
+	PUTS(gettext("\nNo articles in this group.\n"));
+	goto add_post;
+    }
+#define FAST_THRESHOLD 100	/* Above this, read IDs fast */
+#define CHOP_THRESHOLD 50	/* Above this, chop off the rest */
+
+    if (first_required < first)
+	first_required = first;	/* clip */
+    if ((last_required == 0) || (last_required > last))
+	last_required = last;
+
+    if (last_required < first_required) {
+	PUTS(gettext("\nNo articles in this range.\n"));
+	goto add_post;
+    }
+
+    if (last_required - first_required + 1 > HTNewsMaxChunk) {	/* Trim this block */
+	first_required = last_required - HTNewsChunkSize + 1;
+    }
+    CTRACE((tfp, "    Chunk will be (%d-%d)\n",
+	    first_required, last_required));
+
+    /*
+     * Set window title.
+     */
+    HTSprintf0(&temp, gettext("%s,  Articles %d-%d"),
+	       groupName, first_required, last_required);
+    START(HTML_H1);
+    PUTS(temp);
+    FREE(temp);
+    END(HTML_H1);
+    PUTC('\n');
+
+    /*
+     * Link to earlier articles.
+     */
+    if (first_required > first) {
+	int before;		/* Start of one before */
+
+	if (first_required - HTNewsMaxChunk <= first)
+	    before = first;
+	else
+	    before = first_required - HTNewsChunkSize;
+	HTSprintf0(&dbuf, "%s%s/%d-%d", NewsHREF, groupName,
+		   before, first_required - 1);
+	CTRACE((tfp, "    Block before is %s\n", dbuf));
+	PUTC('(');
+	start_anchor(dbuf);
+	PUTS(gettext("Earlier articles"));
+	END(HTML_A);
+	PUTS("...)\n");
+	START(HTML_P);
+	PUTC('\n');
+    }
+
+    done = NO;
+
+/*#define USE_XHDR*/
+#ifdef USE_XHDR
+    if (count > FAST_THRESHOLD) {
+	HTSprintf0(&temp,
+		   gettext("\nThere are about %d articles currently available in %s, IDs as follows:\n\n"),
+		   count, groupName);
+	PUTS(temp);
+	FREE(temp);
+	sprintf(buffer, "XHDR Message-ID %d-%d%c%c", first, last, CR, LF);
+	status = response(buffer);
+	if (status == 221) {
+	    p = line;
+	    while (!done) {
+		int ich = NEXT_CHAR;
+
+		*p++ = ich;
+		if (ich == EOF) {
+		    if (interrupted_in_htgetcharacter) {
+			interrupted_in_htgetcharacter = 0;
+			CTRACE((tfp,
+				"HTNews: Interrupted on read, closing socket %d\n",
+				s));
+			NEWS_NETCLOSE(s);
+			s = -1;
+			return (HT_INTERRUPTED);
+		    }
+		    abort_socket();	/* End of file, close socket */
+		    return (HT_LOADED);		/* End of file on response */
+		}
+		if (((char) ich == '\n') || (p == &line[LINE_LENGTH])) {
+		    *p = '\0';	/* Terminate the string */
+		    CTRACE((tfp, "X %s", line));
+		    if (line[0] == '.') {
+			/*
+			 * End of article?
+			 */
+			if (UCH(line[1]) < ' ') {
+			    done = YES;
+			    break;
+			} else {	/* Line starts with dot */
+			    /* Ignore strange line */
+			}
+		    } else {
+			/*
+			 * Normal lines are scanned for references to articles.
+			 */
+			char *space = strchr(line, ' ');
+
+			if (space++)
+			    write_anchor(space, space);
+		    }		/* if not dot */
+		    p = line;	/* Restart at beginning */
+		}		/* if end of line */
+	    }			/* Loop over characters */
+
+	    /* leaving loop with "done" set */
+	}			/* Good status */
+    }
+#endif /* USE_XHDR */
+
+    /*
+     * Read newsgroup using individual fields.
+     */
+    if (!done) {
+	START(HTML_B);
+	if (first == first_required && last == last_required)
+	    PUTS(gettext("All available articles in "));
+	else
+	    PUTS("Articles in ");
+	PUTS(groupName);
+	END(HTML_B);
+	PUTC('\n');
+	if (LYListNewsNumbers)
+	    start_list(first_required);
+	else
+	    START(HTML_UL);
+	for (art = first_required; art <= last_required; art++) {
+/*#define OVERLAP*/
+#ifdef OVERLAP
+	    /*
+	     * With this code we try to keep the server running flat out by
+	     * queuing just one extra command ahead of time.  We assume (1)
+	     * that the server won't abort if it gets input during output, and
+	     * (2) that TCP buffering is enough for the two commands.  Both
+	     * these assumptions seem very reasonable.  However, we HAVE had a
+	     * hangup with a loaded server.
+	     */
+	    if (art == first_required) {
+		if (art == last_required) {	/* Only one */
+		    sprintf(buffer, "HEAD %d%c%c",
+			    art, CR, LF);
+		    status = response(buffer);
+		} else {	/* First of many */
+		    sprintf(buffer, "HEAD %d%c%cHEAD %d%c%c",
+			    art, CR, LF, art + 1, CR, LF);
+		    status = response(buffer);
+		}
+	    } else if (art == last_required) {	/* Last of many */
+		status = response(NULL);
+	    } else {		/* Middle of many */
+		sprintf(buffer, "HEAD %d%c%c", art + 1, CR, LF);
+		status = response(buffer);
+	    }
+#else /* Not OVERLAP: */
+	    sprintf(buffer, "HEAD %d%c%c", art, CR, LF);
+	    status = response(buffer);
+#endif /* OVERLAP */
+	    /*
+	     * Check for a good response (221) for the HEAD request, and if so,
+	     * parse it.  Otherwise, indicate the error so that the number of
+	     * listings corresponds to what's claimed for the range, and if we
+	     * are listing numbers via an ordered list, they stay in synchrony
+	     * with the article numbers.  - FM
+	     */
+	    if (status == 221) {	/* Head follows - parse it: */
+		p = line;	/* Write pointer */
+		done = NO;
+		while (!done) {
+		    int ich = NEXT_CHAR;
+
+		    *p++ = (char) ich;
+		    if (ich == EOF) {
+			if (interrupted_in_htgetcharacter) {
+			    interrupted_in_htgetcharacter = 0;
+			    CTRACE((tfp,
+				    "HTNews: Interrupted on read, closing socket %d\n",
+				    s));
+			    NEWS_NETCLOSE(s);
+			    s = -1;
+			    return (HT_INTERRUPTED);
+			}
+			abort_socket();		/* End of file, close socket */
+			return (HT_LOADED);	/* End of file on response */
+		    }
+		    if (((char) ich == LF) ||
+			(p == &line[LINE_LENGTH])) {
+
+			*--p = '\0';	/* Terminate  & chop LF */
+			p = line;	/* Restart at beginning */
+			CTRACE((tfp, "G %s\n", line));
+			switch (line[0]) {
+
+			case '.':
+			    /*
+			     * End of article?
+			     */
+			    done = (BOOL) (UCH(line[1]) < ' ');
+			    break;
+
+			case 'S':
+			case 's':
+			    if (match(line, "SUBJECT:")) {
+				StrAllocCopy(subject, line + 9);
+				decode_mime(&subject);
+			    }
+			    break;
+
+			case 'M':
+			case 'm':
+			    if (match(line, "MESSAGE-ID:")) {
+				char *addr = HTStrip(line + 11) + 1;	/* Chop < */
+
+				addr[strlen(addr) - 1] = '\0';	/* Chop > */
+				StrAllocCopy(reference, addr);
+			    }
+			    break;
+
+			case 'f':
+			case 'F':
+			    if (match(line, "FROM:")) {
+				char *p2;
+
+				StrAllocCopy(author, strchr(line, ':') + 1);
+				decode_mime(&author);
+				p2 = author + strlen(author) - 1;
+				if (*p2 == LF)
+				    *p2 = '\0';		/* Chop off newline */
+			    }
+			    break;
+
+			case 'd':
+			case 'D':
+			    if (LYListNewsDates && match(line, "DATE:")) {
+				StrAllocCopy(date,
+					     HTStrip(strchr(line, ':') + 1));
+			    }
+			    break;
+
+			}	/* end switch on first character */
+		    }		/* if end of line */
+		}		/* Loop over characters */
+
+		PUTC('\n');
+		START(HTML_LI);
+		p = decode_mime(&subject);
+		HTSprintf0(&temp, "\"%s\"", NonNull(p));
+		if (reference) {
+		    write_anchor(temp, reference);
+		    FREE(reference);
+		} else {
+		    PUTS(temp);
+		}
+		FREE(temp);
+
+		if (author != NULL) {
+		    PUTS(" - ");
+		    if (LYListNewsDates)
+			START(HTML_I);
+		    PUTS(decode_mime(&author));
+		    if (LYListNewsDates)
+			END(HTML_I);
+		    FREE(author);
+		}
+		if (date) {
+		    if (!diagnostic) {
+			for (i = 0; date[i]; i++) {
+			    if (date[i] == ' ') {
+				date[i] = HT_NON_BREAK_SPACE;
+			    }
+			}
+		    }
+		    sprintf(buffer, " [%.*s]", (int) (sizeof(buffer) - 4), date);
+		    PUTS(buffer);
+		    FREE(date);
+		}
+		MAYBE_END(HTML_LI);
+		/*
+		 * Indicate progress!  @@@@@@
+		 */
+	    } else if (status == HT_INTERRUPTED) {
+		interrupted_in_htgetcharacter = 0;
+		CTRACE((tfp,
+			"HTNews: Interrupted on read, closing socket %d\n",
+			s));
+		NEWS_NETCLOSE(s);
+		s = -1;
+		return (HT_INTERRUPTED);
+	    } else {
+		/*
+		 * Use the response text on error.  - FM
+		 */
+		PUTC('\n');
+		START(HTML_LI);
+		START(HTML_I);
+		if (LYListNewsNumbers)
+		    LYStrNCpy(buffer, "Status:", sizeof(buffer) - 1);
+		else
+		    sprintf(buffer, "Status (ARTICLE %d):", art);
+		PUTS(buffer);
+		END(HTML_I);
+		PUTC(' ');
+		PUTS(response_text);
+		MAYBE_END(HTML_LI);
+	    }			/* Handle response to HEAD request */
+	}			/* Loop over article */
+	FREE(author);
+	FREE(subject);
+    }				/* If read headers */
+    PUTC('\n');
+    if (LYListNewsNumbers)
+	END(HTML_OL);
+    else
+	END(HTML_UL);
+    PUTC('\n');
+
+    /*
+     * Link to later articles.
+     */
+    if (last_required < last) {
+	int after;		/* End of article after */
+
+	after = last_required + HTNewsChunkSize;
+	if (after == last)
+	    HTSprintf0(&dbuf, "%s%s", NewsHREF, groupName);	/* original group */
+	else
+	    HTSprintf0(&dbuf, "%s%s/%d-%d", NewsHREF, groupName,
+		       last_required + 1, after);
+	CTRACE((tfp, "    Block after is %s\n", dbuf));
+	PUTC('(');
+	start_anchor(dbuf);
+	PUTS(gettext("Later articles"));
+	END(HTML_A);
+	PUTS("...)\n");
+    }
+
+  add_post:
+    if (HTCanPost) {
+	/*
+	 * We have permission to POST to this host, so add a link for posting
+	 * messages to this newsgroup.  - FM
+	 */
+	char *href = NULL;
+
+	START(HTML_HR);
+	PUTC('\n');
+	if (!strncasecomp(NewsHREF, STR_SNEWS_URL, 6))
+	    StrAllocCopy(href, "snewspost://");
+	else
+	    StrAllocCopy(href, "newspost://");
+	StrAllocCat(href, NewsHost);
+	StrAllocCat(href, "/");
+	StrAllocCat(href, groupName);
+	start_anchor(href);
+	PUTS(gettext("Post to "));
+	PUTS(groupName);
+	END(HTML_A);
+	FREE(href);
+    } else {
+	START(HTML_HR);
+    }
+    PUTC('\n');
+    return (HT_LOADED);
+}
+
+/*	Load by name.						HTLoadNews
+ *	=============
+ */
+static int HTLoadNews(const char *arg,
+		      HTParentAnchor *anAnchor,
+		      HTFormat format_out,
+		      HTStream *stream)
+{
+    char command[262];		/* The whole command */
+    char proxycmd[260];		/* The proxy command */
+    char groupName[GROUP_NAME_LENGTH];	/* Just the group name */
+    int status;			/* tcp return */
+    int retries;		/* A count of how hard we have tried */
+    BOOL normal_url;		/* Flag: "news:" or "nntp:" (physical) URL */
+    BOOL group_wanted;		/* Flag: group was asked for, not article */
+    BOOL list_wanted;		/* Flag: list was asked for, not article */
+    BOOL post_wanted;		/* Flag: new post to group was asked for */
+    BOOL reply_wanted;		/* Flag: followup post was asked for */
+    BOOL spost_wanted;		/* Flag: new SSL post to group was asked for */
+    BOOL sreply_wanted;		/* Flag: followup SSL post was asked for */
+    BOOL head_wanted = NO;	/* Flag: want HEAD of single article */
+    int first, last;		/* First and last articles asked for */
+    char *cp = 0;
+    char *ListArg = NULL;
+    char *ProxyHost = NULL;
+    char *ProxyHREF = NULL;
+    char *postfile = NULL;
+
+#ifdef USE_SSL
+    char SSLprogress[256];
+#endif /* USE_SSL */
+
+    diagnostic = (format_out == WWW_SOURCE ||	/* set global flag */
+		  format_out == HTAtom_for("www/download") ||
+		  format_out == HTAtom_for("www/dump"));
+    rawtext = NO;
+
+    CTRACE((tfp, "HTNews: Looking for %s\n", arg));
+
+    if (!initialized)
+	initialized = initialize();
+    if (!initialized)
+	return -1;		/* FAIL */
+
+    FREE(NewsHREF);
+    command[0] = '\0';
+    command[sizeof(command) - 1] = '\0';
+    proxycmd[0] = '\0';
+    proxycmd[sizeof(proxycmd) - 1] = '\0';
+
+    {
+	const char *p1;
+
+	/*
+	 * We will ask for the document, omitting the host name & anchor.
+	 *
+	 * Syntax of address is
+	 * xxx@yyy                 Article
+	 * <xxx@yyy>               Same article
+	 * xxxxx                   News group (no "@")
+	 * group/n1-n2             Articles n1 to n2 in group
+	 */
+	normal_url = (BOOL) (!StrNCmp(arg, STR_NEWS_URL, LEN_NEWS_URL) ||
+			     !StrNCmp(arg, "nntp:", 5));
+	spost_wanted = (BOOL) (!normal_url && strstr(arg, "snewspost:") != NULL);
+	sreply_wanted = (BOOL) (!(normal_url || spost_wanted) &&
+				strstr(arg, "snewsreply:") != NULL);
+	post_wanted = (BOOL) (!(normal_url || spost_wanted || sreply_wanted) &&
+			      strstr(arg, "newspost:") != NULL);
+	reply_wanted = (BOOL) (!(normal_url || spost_wanted || sreply_wanted ||
+				 post_wanted) &&
+			       strstr(arg, "newsreply:") != NULL);
+	group_wanted = (BOOL) ((!(spost_wanted || sreply_wanted ||
+				  post_wanted || reply_wanted) &&
+				strchr(arg, '@') == NULL) &&
+			       (strchr(arg, '*') == NULL));
+	list_wanted = (BOOL) ((!(spost_wanted || sreply_wanted ||
+				 post_wanted || reply_wanted ||
+				 group_wanted) &&
+			       strchr(arg, '@') == NULL) &&
+			      (strchr(arg, '*') != NULL));
+
+#ifndef USE_SSL
+	if (!strncasecomp(arg, "snewspost:", 10) ||
+	    !strncasecomp(arg, "snewsreply:", 11)) {
+	    HTAlert(FAILED_CANNOT_POST_SSL);
+	    return HT_NOT_LOADED;
+	}
+#endif /* !USE_SSL */
+	if (post_wanted || reply_wanted || spost_wanted || sreply_wanted) {
+	    /*
+	     * Make sure we have a non-zero path for the newsgroup(s).  - FM
+	     */
+	    if ((p1 = strrchr(arg, '/')) != NULL) {
+		p1++;
+	    } else if ((p1 = strrchr(arg, ':')) != NULL) {
+		p1++;
+	    }
+	    if (!(p1 && *p1)) {
+		HTAlert(WWW_ILLEGAL_URL_MESSAGE);
+		return (HT_NO_DATA);
+	    }
+	    if (!(cp = HTParse(arg, "", PARSE_HOST)) || *cp == '\0') {
+		if (s >= 0 && NewsHost && strcasecomp(NewsHost, HTNewsHost)) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		}
+		StrAllocCopy(NewsHost, HTNewsHost);
+	    } else {
+		if (s >= 0 && NewsHost && strcasecomp(NewsHost, cp)) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		}
+		StrAllocCopy(NewsHost, cp);
+	    }
+	    FREE(cp);
+	    HTSprintf0(&NewsHREF, "%s://%.*s/",
+		       (post_wanted ?
+			"newspost" :
+			(reply_wanted ?
+			 "newreply" :
+			 (spost_wanted ?
+			  "snewspost" : "snewsreply"))),
+		       (int) sizeof(command) - 15, NewsHost);
+
+	    /*
+	     * If the SSL daemon is being used as a proxy, reset p1 to the
+	     * start of the proxied URL rather than to the start of the
+	     * newsgroup(s).  - FM
+	     */
+	    if (spost_wanted && strncasecomp(arg, "snewspost:", 10))
+		p1 = strstr(arg, "snewspost:");
+	    if (sreply_wanted && strncasecomp(arg, "snewsreply:", 11))
+		p1 = strstr(arg, "snewsreply:");
+
+	    /* p1 = HTParse(arg, "", PARSE_PATH | PARSE_PUNCTUATION); */
+	    /*
+	     * Don't use HTParse because news:  access doesn't follow
+	     * traditional rules.  For instance, if the article reference
+	     * contains a '#', the rest of it is lost -- JFG 10/7/92, from a
+	     * bug report
+	     */
+	} else if (isNNTP_URL(arg)) {
+	    if (((*(arg + 5) == '\0') ||
+		 (!strcmp((arg + 5), "/") ||
+		  !strcmp((arg + 5), "//") ||
+		  !strcmp((arg + 5), "///"))) ||
+		((!StrNCmp((arg + 5), "//", 2)) &&
+		 (!(cp = strchr((arg + 7), '/')) || *(cp + 1) == '\0'))) {
+		p1 = "*";
+		group_wanted = FALSE;
+		list_wanted = TRUE;
+	    } else if (*(arg + 5) != '/') {
+		p1 = (arg + 5);
+	    } else if (*(arg + 5) == '/' && *(arg + 6) != '/') {
+		p1 = (arg + 6);
+	    } else {
+		p1 = (cp + 1);
+	    }
+	    if (!(cp = HTParse(arg, "", PARSE_HOST)) || *cp == '\0') {
+		if (s >= 0 && NewsHost && strcasecomp(NewsHost, HTNewsHost)) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		}
+		StrAllocCopy(NewsHost, HTNewsHost);
+	    } else {
+		if (s >= 0 && NewsHost && strcasecomp(NewsHost, cp)) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		}
+		StrAllocCopy(NewsHost, cp);
+	    }
+	    FREE(cp);
+	    SnipIn2(command, "%s//%.*s/", STR_NNTP_URL, 9, NewsHost);
+	    StrAllocCopy(NewsHREF, command);
+	} else if (!strncasecomp(arg, STR_SNEWS_URL, 6)) {
+#ifdef USE_SSL
+	    if (((*(arg + 6) == '\0') ||
+		 (!strcmp((arg + 6), "/") ||
+		  !strcmp((arg + 6), "//") ||
+		  !strcmp((arg + 6), "///"))) ||
+		((!StrNCmp((arg + 6), "//", 2)) &&
+		 (!(cp = strchr((arg + 8), '/')) || *(cp + 1) == '\0'))) {
+		p1 = "*";
+		group_wanted = FALSE;
+		list_wanted = TRUE;
+	    } else if (*(arg + 6) != '/') {
+		p1 = (arg + 6);
+	    } else if (*(arg + 6) == '/' && *(arg + 7) != '/') {
+		p1 = (arg + 7);
+	    } else {
+		p1 = (cp + 1);
+	    }
+	    if (!(cp = HTParse(arg, "", PARSE_HOST)) || *cp == '\0') {
+		if (s >= 0 && NewsHost && strcasecomp(NewsHost, HTNewsHost)) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		}
+		StrAllocCopy(NewsHost, HTNewsHost);
+	    } else {
+		if (s >= 0 && NewsHost && strcasecomp(NewsHost, cp)) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		}
+		StrAllocCopy(NewsHost, cp);
+	    }
+	    FREE(cp);
+	    sprintf(command, "%s//%.250s/", STR_SNEWS_URL, NewsHost);
+	    StrAllocCopy(NewsHREF, command);
+#else
+	    HTAlert(gettext("This client does not contain support for SNEWS URLs."));
+	    return HT_NOT_LOADED;
+#endif /* USE_SSL */
+	} else if (!strncasecomp(arg, "news:/", 6)) {
+	    if (((*(arg + 6) == '\0') ||
+		 !strcmp((arg + 6), "/") ||
+		 !strcmp((arg + 6), "//")) ||
+		((*(arg + 6) == '/') &&
+		 (!(cp = strchr((arg + 7), '/')) || *(cp + 1) == '\0'))) {
+		p1 = "*";
+		group_wanted = FALSE;
+		list_wanted = TRUE;
+	    } else if (*(arg + 6) != '/') {
+		p1 = (arg + 6);
+	    } else {
+		p1 = (cp + 1);
+	    }
+	    if (!(cp = HTParse(arg, "", PARSE_HOST)) || *cp == '\0') {
+		if (s >= 0 && NewsHost && strcasecomp(NewsHost, HTNewsHost)) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		}
+		StrAllocCopy(NewsHost, HTNewsHost);
+	    } else {
+		if (s >= 0 && NewsHost && strcasecomp(NewsHost, cp)) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		}
+		StrAllocCopy(NewsHost, cp);
+	    }
+	    FREE(cp);
+	    SnipIn(command, "news://%.*s/", 9, NewsHost);
+	    StrAllocCopy(NewsHREF, command);
+	} else {
+	    p1 = (arg + 5);	/* Skip "news:" prefix */
+	    if (*p1 == '\0') {
+		p1 = "*";
+		group_wanted = FALSE;
+		list_wanted = TRUE;
+	    }
+	    if (s >= 0 && NewsHost && strcasecomp(NewsHost, HTNewsHost)) {
+		NEWS_NETCLOSE(s);
+		s = -1;
+	    }
+	    StrAllocCopy(NewsHost, HTNewsHost);
+	    StrAllocCopy(NewsHREF, STR_NEWS_URL);
+	}
+
+	/*
+	 * Set up any proxy for snews URLs that returns NNTP responses for Lynx
+	 * to convert to HTML, instead of doing the conversion itself, and for
+	 * handling posts or followups.  - TZ & FM
+	 */
+	if (!strncasecomp(p1, STR_SNEWS_URL, 6) ||
+	    !strncasecomp(p1, "snewspost:", 10) ||
+	    !strncasecomp(p1, "snewsreply:", 11)) {
+	    StrAllocCopy(ProxyHost, NewsHost);
+	    if ((cp = HTParse(p1, "", PARSE_HOST)) != NULL && *cp != '\0') {
+		SnipIn2(command, "%s//%.*s", STR_SNEWS_URL, 10, cp);
+		StrAllocCopy(NewsHost, cp);
+	    } else {
+		SnipIn2(command, "%s//%.*s", STR_SNEWS_URL, 10, NewsHost);
+	    }
+	    command[sizeof(command) - 2] = '\0';
+	    FREE(cp);
+	    sprintf(proxycmd, "GET %.*s%c%c%c%c",
+		    (int) sizeof(proxycmd) - 9, command,
+		    CR, LF, CR, LF);
+	    CTRACE((tfp, "HTNews: Proxy command is '%.*s'\n",
+		    (int) (strlen(proxycmd) - 4), proxycmd));
+	    strcat(command, "/");
+	    StrAllocCopy(ProxyHREF, NewsHREF);
+	    StrAllocCopy(NewsHREF, command);
+	    if (spost_wanted || sreply_wanted) {
+		/*
+		 * Reset p1 so that it points to the newsgroup(s).
+		 */
+		if ((p1 = strrchr(arg, '/')) != NULL) {
+		    p1++;
+		} else {
+		    p1 = (strrchr(arg, ':') + 1);
+		}
+	    } else {
+		/*
+		 * Reset p1 so that it points to the newsgroup (or a wildcard),
+		 * or the article.
+		 */
+		if (!(cp = strrchr((p1 + 6), '/')) || *(cp + 1) == '\0') {
+		    p1 = "*";
+		    group_wanted = FALSE;
+		    list_wanted = TRUE;
+		} else {
+		    p1 = (cp + 1);
+		}
+	    }
+	}
+
+	/*
+	 * Set up command for a post, listing, or article request.  - FM
+	 */
+	if (post_wanted || reply_wanted || spost_wanted || sreply_wanted) {
+	    strcpy(command, "POST");
+	} else if (list_wanted) {
+	    if (strlen(p1) > 249) {
+		FREE(ProxyHost);
+		FREE(ProxyHREF);
+		HTAlert(URL_TOO_LONG);
+		return -400;
+	    }
+	    SnipIn(command, "XGTITLE %.*s", 11, p1);
+	} else if (group_wanted) {
+	    char *slash = strchr(p1, '/');
+
+	    first = 0;
+	    last = 0;
+	    if (slash) {
+		*slash = '\0';
+		if (strlen(p1) >= sizeof(groupName)) {
+		    FREE(ProxyHost);
+		    FREE(ProxyHREF);
+		    HTAlert(URL_TOO_LONG);
+		    return -400;
+		}
+		LYStrNCpy(groupName, p1, sizeof(groupName) - 1);
+		*slash = '/';
+		(void) sscanf(slash + 1, "%d-%d", &first, &last);
+		if ((first > 0) && (isdigit(UCH(*(slash + 1)))) &&
+		    (strchr(slash + 1, '-') == NULL || first == last)) {
+		    /*
+		     * We got a number greater than 0, which will be loaded as
+		     * first, and either no range or the range computes to
+		     * zero, so make last negative, as a flag to select the
+		     * group and then fetch an article by number (first)
+		     * instead of by messageID.  - FM
+		     */
+		    last = -1;
+		}
+	    } else {
+		if (strlen(p1) >= sizeof(groupName)) {
+		    FREE(ProxyHost);
+		    FREE(ProxyHREF);
+		    HTAlert(URL_TOO_LONG);
+		    return -400;
+		}
+		LYStrNCpy(groupName, p1, sizeof(groupName) - 1);
+	    }
+	    SnipIn(command, "GROUP %.*s", 9, groupName);
+	} else {
+	    size_t add_open = (size_t) (strchr(p1, '<') == 0);
+	    size_t add_close = (size_t) (strchr(p1, '>') == 0);
+
+	    if (strlen(p1) + add_open + add_close >= 252) {
+		FREE(ProxyHost);
+		FREE(ProxyHREF);
+		HTAlert(URL_TOO_LONG);
+		return -400;
+	    }
+	    sprintf(command, "ARTICLE %s%.*s%s",
+		    add_open ? "<" : "",
+		    (int) (sizeof(command) - (11 + add_open + add_close)),
+		    p1,
+		    add_close ? ">" : "");
+	}
+
+	{
+	    char *p = command + strlen(command);
+
+	    /*
+	     * Terminate command with CRLF, as in RFC 977.
+	     */
+	    *p++ = CR;		/* Macros to be correct on Mac */
+	    *p++ = LF;
+	    *p = 0;
+	}
+	StrAllocCopy(ListArg, p1);
+    }				/* scope of p1 */
+
+    if (!*arg) {
+	FREE(NewsHREF);
+	FREE(ProxyHost);
+	FREE(ProxyHREF);
+	FREE(ListArg);
+	return NO;		/* Ignore if no name */
+    }
+
+    if (!(post_wanted || reply_wanted || spost_wanted || sreply_wanted ||
+	  (group_wanted && last != -1) || list_wanted)) {
+	head_wanted = anAnchor->isHEAD;
+	if (head_wanted && !StrNCmp(command, "ARTICLE ", 8)) {
+	    /* overwrite "ARTICLE" - hack... */
+	    strcpy(command, "HEAD ");
+	    for (cp = command + 5;; cp++)
+		if ((*cp = *(cp + 3)) == '\0')
+		    break;
+	}
+	rawtext = (BOOL) (head_wanted || keep_mime_headers);
+    }
+    if (rawtext) {
+	rawtarget = HTStreamStack(WWW_PLAINTEXT,
+				  format_out,
+				  stream, anAnchor);
+	if (!rawtarget) {
+	    FREE(NewsHost);
+	    FREE(NewsHREF);
+	    FREE(ProxyHost);
+	    FREE(ProxyHREF);
+	    FREE(ListArg);
+	    HTAlert(gettext("No target for raw text!"));
+	    return (HT_NOT_LOADED);
+	}			/* Copy routine entry points */
+	rawtargetClass = *rawtarget->isa;
+    } else
+	/*
+	 * Make a hypertext object with an anchor list.
+	 */
+    if (!(post_wanted || reply_wanted || spost_wanted || sreply_wanted)) {
+	target = HTML_new(anAnchor, format_out, stream);
+	targetClass = *target->isa;	/* Copy routine entry points */
+    }
+
+    /*
+     * Now, let's get a stream setup up from the NewsHost.
+     */
+    for (retries = 0; retries < 2; retries++) {
+	if (s < 0) {
+	    /* CONNECTING to news host */
+	    char url[260];
+
+	    if (!strcmp(NewsHREF, STR_NEWS_URL)) {
+		SnipIn(url, "lose://%.*s/", 9, NewsHost);
+	    } else if (ProxyHREF) {
+		SnipIn(url, "%.*s", 1, ProxyHREF);
+	    } else {
+		SnipIn(url, "%.*s", 1, NewsHREF);
+	    }
+	    CTRACE((tfp, "News: doing HTDoConnect on '%s'\n", url));
+
+	    _HTProgress(gettext("Connecting to NewsHost ..."));
+
+#ifdef USE_SSL
+	    if (!using_proxy &&
+		(!StrNCmp(arg, STR_SNEWS_URL, 6) ||
+		 !StrNCmp(arg, "snewspost:", 10) ||
+		 !StrNCmp(arg, "snewsreply:", 11)))
+		status = HTDoConnect(url, "NNTPS", SNEWS_PORT, &s);
+	    else
+		status = HTDoConnect(url, "NNTP", NEWS_PORT, &s);
+#else
+	    status = HTDoConnect(url, "NNTP", NEWS_PORT, &s);
+#endif /* USE_SSL */
+
+	    if (status == HT_INTERRUPTED) {
+		/*
+		 * Interrupt cleanly.
+		 */
+		CTRACE((tfp,
+			"HTNews: Interrupted on connect; recovering cleanly.\n"));
+		_HTProgress(CONNECTION_INTERRUPTED);
+		if (!(post_wanted || reply_wanted ||
+		      spost_wanted || sreply_wanted)) {
+		    ABORT_TARGET;
+		}
+		FREE(NewsHost);
+		FREE(NewsHREF);
+		FREE(ProxyHost);
+		FREE(ProxyHREF);
+		FREE(ListArg);
+#ifdef USE_SSL
+		if (Handle) {
+		    SSL_free(Handle);
+		    Handle = NULL;
+		}
+#endif /* USE_SSL */
+		if (postfile) {
+		    HTSYS_remove(postfile);
+		    FREE(postfile);
+		}
+		return HT_NOT_LOADED;
+	    }
+	    if (status < 0) {
+		NEWS_NETCLOSE(s);
+		s = -1;
+		CTRACE((tfp, "HTNews: Unable to connect to news host.\n"));
+		if (retries < 1)
+		    continue;
+		if (!(post_wanted || reply_wanted ||
+		      spost_wanted || sreply_wanted)) {
+		    ABORT_TARGET;
+		}
+		HTSprintf0(&dbuf, gettext("Could not access %s."), NewsHost);
+		FREE(NewsHost);
+		FREE(NewsHREF);
+		FREE(ProxyHost);
+		FREE(ProxyHREF);
+		FREE(ListArg);
+		if (postfile) {
+		    HTSYS_remove(postfile);
+		    FREE(postfile);
+		}
+		return HTLoadError(stream, 500, dbuf);
+	    } else {
+		CTRACE((tfp, "HTNews: Connected to news host %s.\n",
+			NewsHost));
+#ifdef USE_SSL
+		/*
+		 * If this is an snews url, then do the SSL stuff here
+		 */
+		if (!using_proxy &&
+		    (!StrNCmp(url, "snews", 5) ||
+		     !StrNCmp(url, "snewspost:", 10) ||
+		     !StrNCmp(url, "snewsreply:", 11))) {
+		    Handle = HTGetSSLHandle();
+		    SSL_set_fd(Handle, s);
+		    HTSSLInitPRNG();
+		    status = SSL_connect(Handle);
+
+		    if (status <= 0) {
+			unsigned long SSLerror;
+
+			CTRACE((tfp,
+				"HTNews: Unable to complete SSL handshake for '%s', SSL_connect=%d, SSL error stack dump follows\n",
+				url, status));
+			SSL_load_error_strings();
+			while ((SSLerror = ERR_get_error()) != 0) {
+			    CTRACE((tfp, "HTNews: SSL: %s\n",
+				    ERR_error_string(SSLerror, NULL)));
+			}
+			HTAlert("Unable to make secure connection to remote host.");
+			NEWS_NETCLOSE(s);
+			s = -1;
+			if (!(post_wanted || reply_wanted ||
+			      spost_wanted || sreply_wanted))
+			    (*targetClass._abort) (target, NULL);
+			FREE(NewsHost);
+			FREE(NewsHREF);
+			FREE(ProxyHost);
+			FREE(ProxyHREF);
+			FREE(ListArg);
+			if (postfile) {
+#ifdef VMS
+			    while (remove(postfile) == 0) ;	/* loop through all versions */
+#else
+			    remove(postfile);
+#endif /* VMS */
+			    FREE(postfile);
+			}
+			return HT_NOT_LOADED;
+		    }
+		    sprintf(SSLprogress,
+			    "Secure %d-bit %s (%s) NNTP connection",
+			    SSL_get_cipher_bits(Handle, NULL),
+			    SSL_get_cipher_version(Handle),
+			    SSL_get_cipher(Handle));
+		    _HTProgress(SSLprogress);
+		}
+#endif /* USE_SSL */
+		HTInitInput(s);	/* set up buffering */
+		if (proxycmd[0]) {
+		    status = (int) NEWS_NETWRITE(s, proxycmd, (int) strlen(proxycmd));
+		    CTRACE((tfp,
+			    "HTNews: Proxy command returned status '%d'.\n",
+			    status));
+		}
+		if (((status = response(NULL)) / 100) != 2) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		    if (status == HT_INTERRUPTED) {
+			_HTProgress(CONNECTION_INTERRUPTED);
+			if (!(post_wanted || reply_wanted ||
+			      spost_wanted || sreply_wanted)) {
+			    ABORT_TARGET;
+			}
+			FREE(NewsHost);
+			FREE(NewsHREF);
+			FREE(ProxyHost);
+			FREE(ProxyHREF);
+			FREE(ListArg);
+			if (postfile) {
+			    HTSYS_remove(postfile);
+			    FREE(postfile);
+			}
+			return (HT_NOT_LOADED);
+		    }
+		    if (retries < 1)
+			continue;
+		    FREE(ProxyHost);
+		    FREE(ProxyHREF);
+		    FREE(ListArg);
+		    FREE(postfile);
+		    if (!(post_wanted || reply_wanted ||
+			  spost_wanted || sreply_wanted)) {
+			ABORT_TARGET;
+		    }
+		    if (response_text[0]) {
+			HTSprintf0(&dbuf,
+				   gettext("Can't read news info.  News host %.20s responded: %.200s"),
+				   NewsHost, response_text);
+		    } else {
+			HTSprintf0(&dbuf,
+				   gettext("Can't read news info, empty response from host %s"),
+				   NewsHost);
+		    }
+		    return HTLoadError(stream, 500, dbuf);
+		}
+		if (status == 200) {
+		    HTCanPost = TRUE;
+		} else {
+		    HTCanPost = FALSE;
+		    if (post_wanted || reply_wanted ||
+			spost_wanted || sreply_wanted) {
+			HTAlert(CANNOT_POST);
+			FREE(NewsHREF);
+			if (ProxyHREF) {
+			    StrAllocCopy(NewsHost, ProxyHost);
+			    FREE(ProxyHost);
+			    FREE(ProxyHREF);
+			}
+			FREE(ListArg);
+			if (postfile) {
+			    HTSYS_remove(postfile);
+			    FREE(postfile);
+			}
+			return (HT_NOT_LOADED);
+		    }
+		}
+	    }
+	}
+	/* If needed opening */
+	if (post_wanted || reply_wanted ||
+	    spost_wanted || sreply_wanted) {
+	    if (!HTCanPost) {
+		HTAlert(CANNOT_POST);
+		FREE(NewsHREF);
+		if (ProxyHREF) {
+		    StrAllocCopy(NewsHost, ProxyHost);
+		    FREE(ProxyHost);
+		    FREE(ProxyHREF);
+		}
+		FREE(ListArg);
+		if (postfile) {
+		    HTSYS_remove(postfile);
+		    FREE(postfile);
+		}
+		return (HT_NOT_LOADED);
+	    }
+	    if (postfile == NULL) {
+		postfile = LYNewsPost(ListArg,
+				      (reply_wanted || sreply_wanted));
+	    }
+	    if (postfile == NULL) {
+		HTProgress(CANCELLED);
+		FREE(NewsHREF);
+		if (ProxyHREF) {
+		    StrAllocCopy(NewsHost, ProxyHost);
+		    FREE(ProxyHost);
+		    FREE(ProxyHREF);
+		}
+		FREE(ListArg);
+		return (HT_NOT_LOADED);
+	    }
+	} else {
+	    /*
+	     * Ensure reader mode, but don't bother checking the status for
+	     * anything but HT_INTERRUPTED or a 480 Authorization request,
+	     * because if the reader mode command is not needed, the server
+	     * probably returned a 500, which is irrelevant at this point.  -
+	     * FM
+	     */
+	    char buffer[20];
+
+	    sprintf(buffer, "mode reader%c%c", CR, LF);
+	    if ((status = response(buffer)) == HT_INTERRUPTED) {
+		_HTProgress(CONNECTION_INTERRUPTED);
+		break;
+	    }
+	    if (status == 480) {
+		NNTPAuthResult auth_result = HTHandleAuthInfo(NewsHost);
+
+		if (auth_result == NNTPAUTH_CLOSE) {
+		    if (s != -1 && !(ProxyHost || ProxyHREF)) {
+			NEWS_NETCLOSE(s);
+			s = -1;
+		    }
+		}
+		if (auth_result != NNTPAUTH_OK) {
+		    break;
+		}
+		if (response(buffer) == HT_INTERRUPTED) {
+		    _HTProgress(CONNECTION_INTERRUPTED);
+		    break;
+		}
+	    }
+	}
+
+      Send_NNTP_command:
+#ifdef NEWS_DEB
+	if (postfile)
+	    printf("postfile = %s, command = %s", postfile, command);
+	else
+	    printf("command = %s", command);
+#endif
+	if ((status = response(command)) == HT_INTERRUPTED) {
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	    break;
+	}
+	if (status < 0) {
+	    if (retries < 1) {
+		continue;
+	    } else {
+		break;
+	    }
+	}
+	/*
+	 * For some well known error responses which are expected to occur in
+	 * normal use, break from the loop without retrying and without closing
+	 * the connection.  It is unlikely that these are leftovers from a
+	 * timed-out connection (but we do some checks to see whether the
+	 * response corresponds to the last command), or that they will give
+	 * anything else when automatically retried.  - kw
+	 */
+	if (status == 411 && group_wanted &&
+	    !StrNCmp(command, "GROUP ", 6) &&
+	    !strncasecomp(response_text + 3, " No such group ", 15) &&
+	    !strcmp(response_text + 18, groupName)) {
+
+	    HTAlert(response_text);
+	    break;
+	} else if (status == 430 && !group_wanted && !list_wanted &&
+		   !StrNCmp(command, "ARTICLE <", 9) &&
+		   !strcasecomp(response_text + 3, " No such article")) {
+
+	    HTAlert(response_text);
+	    break;
+	}
+	if ((status / 100) != 2 &&
+	    status != 340 &&
+	    status != 480) {
+	    if (retries) {
+		if (list_wanted && !StrNCmp(command, "XGTITLE", 7)) {
+		    sprintf(command, "LIST NEWSGROUPS%c%c", CR, LF);
+		    goto Send_NNTP_command;
+		}
+		HTAlert(response_text);
+	    } else {
+		_HTProgress(response_text);
+	    }
+	    NEWS_NETCLOSE(s);
+	    s = -1;
+	    /*
+	     * Message might be a leftover "Timeout-disconnected", so try again
+	     * if the retries maximum has not been reached.
+	     */
+	    continue;
+	}
+
+	/*
+	 * Post or load a group, article, etc
+	 */
+	if (status == 480) {
+	    NNTPAuthResult auth_result;
+
+	    /*
+	     * Some servers return 480 for a failed XGTITLE.  - FM
+	     */
+	    if (list_wanted && !StrNCmp(command, "XGTITLE", 7) &&
+		strstr(response_text, "uthenticat") == NULL &&
+		strstr(response_text, "uthor") == NULL) {
+		sprintf(command, "LIST NEWSGROUPS%c%c", CR, LF);
+		goto Send_NNTP_command;
+	    }
+	    /*
+	     * Handle Authorization.  - FM
+	     */
+	    if ((auth_result = HTHandleAuthInfo(NewsHost)) == NNTPAUTH_OK) {
+		goto Send_NNTP_command;
+	    } else if (auth_result == NNTPAUTH_CLOSE) {
+		if (s != -1 && !(ProxyHost || ProxyHREF)) {
+		    NEWS_NETCLOSE(s);
+		    s = -1;
+		}
+		if (retries < 1)
+		    continue;
+	    }
+	    status = HT_NOT_LOADED;
+	} else if (post_wanted || reply_wanted ||
+		   spost_wanted || sreply_wanted) {
+	    /*
+	     * Handle posting of an article.  - FM
+	     */
+	    if (status != 340) {
+		HTAlert(CANNOT_POST);
+		if (postfile) {
+		    HTSYS_remove(postfile);
+		}
+	    } else {
+		post_article(postfile);
+	    }
+	    FREE(postfile);
+	    status = HT_NOT_LOADED;
+	} else if (list_wanted) {
+	    /*
+	     * List available newsgroups.  - FM
+	     */
+	    _HTProgress(gettext("Reading list of available newsgroups."));
+	    status = read_list(ListArg);
+	} else if (group_wanted) {
+	    /*
+	     * List articles in a news group.  - FM
+	     */
+	    if (last < 0) {
+		/*
+		 * We got one article number rather than a range following the
+		 * slash which followed the group name, or the range was zero,
+		 * so now that we have selected that group, load ARTICLE and
+		 * the the number (first) as the command and go back to send it
+		 * and check the response.  - FM
+		 */
+		sprintf(command, "%s %d%c%c",
+			head_wanted ? "HEAD" : "ARTICLE",
+			first, CR, LF);
+		group_wanted = FALSE;
+		retries = 2;
+		goto Send_NNTP_command;
+	    }
+	    _HTProgress(gettext("Reading list of articles in newsgroup."));
+	    status = read_group(groupName, first, last);
+	} else {
+	    /*
+	     * Get an article from a news group.  - FM
+	     */
+	    _HTProgress(gettext("Reading news article."));
+	    status = read_article(anAnchor);
+	}
+	if (status == HT_INTERRUPTED) {
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	    status = HT_LOADED;
+	}
+	if (!(post_wanted || reply_wanted ||
+	      spost_wanted || sreply_wanted)) {
+	    if (status == HT_NOT_LOADED) {
+		ABORT_TARGET;
+	    } else {
+		FREE_TARGET;
+	    }
+	}
+	FREE(NewsHREF);
+	if (ProxyHREF) {
+	    StrAllocCopy(NewsHost, ProxyHost);
+	    FREE(ProxyHost);
+	    FREE(ProxyHREF);
+	}
+	FREE(ListArg);
+	if (postfile) {
+	    HTSYS_remove(postfile);
+	    FREE(postfile);
+	}
+	return status;
+    }				/* Retry loop */
+
+#if 0
+    HTAlert(gettext("Sorry, could not load requested news."));
+    NXRunAlertPanel(NULL, "Sorry, could not load `%s'.", NULL, NULL, NULL, arg);
+    /* No -- message earlier wil have covered it */
+#endif
+
+    if (!(post_wanted || reply_wanted ||
+	  spost_wanted || sreply_wanted)) {
+	ABORT_TARGET;
+    }
+    FREE(NewsHREF);
+    if (ProxyHREF) {
+	StrAllocCopy(NewsHost, ProxyHost);
+	FREE(ProxyHost);
+	FREE(ProxyHREF);
+    }
+    FREE(ListArg);
+    if (postfile) {
+	HTSYS_remove(postfile);
+	FREE(postfile);
+    }
+    return HT_NOT_LOADED;
+}
+
+/*
+ *  This function clears all authorization information by
+ *  invoking the free_NNTP_AuthInfo() function, which normally
+ *  is invoked at exit.  It allows a browser command to do
+ *  this at any time, for example, if the user is leaving
+ *  the terminal for a period of time, but does not want
+ *  to end the current session.  - FM
+ */
+void HTClearNNTPAuthInfo(void)
+{
+    /*
+     * Need code to check cached documents and do something to ensure that any
+     * protected documents no longer can be accessed without a new retrieval. 
+     * - FM
+     */
+
+    /*
+     * Now free all of the authorization info.  - FM
+     */
+    free_NNTP_AuthInfo();
+}
+
+#ifdef USE_SSL
+static int HTNewsGetCharacter(void)
+{
+    if (!Handle)
+	return HTGetCharacter();
+    else
+	return HTGetSSLCharacter((void *) Handle);
+}
+
+int HTNewsProxyConnect(int sock,
+		       const char *url,
+		       HTParentAnchor *anAnchor,
+		       HTFormat format_out,
+		       HTStream *sink)
+{
+    int status;
+    const char *arg = url;
+    char SSLprogress[256];
+
+    s = channel_s = sock;
+    Handle = HTGetSSLHandle();
+    SSL_set_fd(Handle, s);
+    HTSSLInitPRNG();
+    status = SSL_connect(Handle);
+
+    if (status <= 0) {
+	unsigned long SSLerror;
+
+	channel_s = -1;
+	CTRACE((tfp,
+		"HTNews: Unable to complete SSL handshake for '%s', SSL_connect=%d, SSL error stack dump follows\n",
+		url, status));
+	SSL_load_error_strings();
+	while ((SSLerror = ERR_get_error()) != 0) {
+	    CTRACE((tfp, "HTNews: SSL: %s\n", ERR_error_string(SSLerror, NULL)));
+	}
+	HTAlert("Unable to make secure connection to remote host.");
+	NEWS_NETCLOSE(s);
+	s = -1;
+	return HT_NOT_LOADED;
+    }
+    sprintf(SSLprogress, "Secure %d-bit %s (%s) NNTP connection",
+	    SSL_get_cipher_bits(Handle, NULL),
+	    SSL_get_cipher_version(Handle),
+	    SSL_get_cipher(Handle));
+    _HTProgress(SSLprogress);
+    status = HTLoadNews(arg, anAnchor, format_out, sink);
+    channel_s = -1;
+    return status;
+}
+#endif /* USE_SSL */
+
+#ifdef GLOBALDEF_IS_MACRO
+#define _HTNEWS_C_1_INIT { "news", HTLoadNews, NULL }
+GLOBALDEF(HTProtocol, HTNews, _HTNEWS_C_1_INIT);
+#define _HTNEWS_C_2_INIT { "nntp", HTLoadNews, NULL }
+GLOBALDEF(HTProtocol, HTNNTP, _HTNEWS_C_2_INIT);
+#define _HTNEWS_C_3_INIT { "newspost", HTLoadNews, NULL }
+GLOBALDEF(HTProtocol, HTNewsPost, _HTNEWS_C_3_INIT);
+#define _HTNEWS_C_4_INIT { "newsreply", HTLoadNews, NULL }
+GLOBALDEF(HTProtocol, HTNewsReply, _HTNEWS_C_4_INIT);
+#define _HTNEWS_C_5_INIT { "snews", HTLoadNews, NULL }
+GLOBALDEF(HTProtocol, HTSNews, _HTNEWS_C_5_INIT);
+#define _HTNEWS_C_6_INIT { "snewspost", HTLoadNews, NULL }
+GLOBALDEF(HTProtocol, HTSNewsPost, _HTNEWS_C_6_INIT);
+#define _HTNEWS_C_7_INIT { "snewsreply", HTLoadNews, NULL }
+GLOBALDEF(HTProtocol, HTSNewsReply, _HTNEWS_C_7_INIT);
+#else
+GLOBALDEF HTProtocol HTNews =
+{"news", HTLoadNews, NULL};
+GLOBALDEF HTProtocol HTNNTP =
+{"nntp", HTLoadNews, NULL};
+GLOBALDEF HTProtocol HTNewsPost =
+{"newspost", HTLoadNews, NULL};
+GLOBALDEF HTProtocol HTNewsReply =
+{"newsreply", HTLoadNews, NULL};
+GLOBALDEF HTProtocol HTSNews =
+{"snews", HTLoadNews, NULL};
+GLOBALDEF HTProtocol HTSNewsPost =
+{"snewspost", HTLoadNews, NULL};
+GLOBALDEF HTProtocol HTSNewsReply =
+{"snewsreply", HTLoadNews, NULL};
+#endif /* GLOBALDEF_IS_MACRO */
+
+#endif /* not DISABLE_NEWS */
diff --git a/WWW/Library/Implementation/HTNews.h b/WWW/Library/Implementation/HTNews.h
new file mode 100644
index 00000000..ef9a6e49
--- /dev/null
+++ b/WWW/Library/Implementation/HTNews.h
@@ -0,0 +1,60 @@
+/*                                  Network News Transfer protocol module for the WWW library
+                                          HTNEWS
+                                             
+ */
+/* History:
+ *      26 Sep 90       Written TBL in Objective-C
+ *      29 Nov 91       Downgraded to C, for portable implementation.
+ */
+
+#ifndef HTNEWS_H
+#define HTNEWS_H
+
+#include <HTAccess.h>
+#include <HTAnchor.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern int HTNewsChunkSize;
+    extern int HTNewsMaxChunk;
+
+#ifdef GLOBALREF_IS_MACRO
+    extern GLOBALREF (HTProtocol, HTNews);
+    extern GLOBALREF (HTProtocol, HTNNTP);
+    extern GLOBALREF (HTProtocol, HTNewsPost);
+    extern GLOBALREF (HTProtocol, HTNewsReply);
+    extern GLOBALREF (HTProtocol, HTSNews);
+    extern GLOBALREF (HTProtocol, HTSNewsPost);
+    extern GLOBALREF (HTProtocol, HTSNewsReply);
+
+#else
+    GLOBALREF HTProtocol HTNews;
+    GLOBALREF HTProtocol HTNNTP;
+    GLOBALREF HTProtocol HTNewsPost;
+    GLOBALREF HTProtocol HTNewsReply;
+    GLOBALREF HTProtocol HTSNews;
+    GLOBALREF HTProtocol HTSNewsPost;
+    GLOBALREF HTProtocol HTSNewsReply;
+#endif				/* GLOBALREF_IS_MACRO */
+
+    extern void HTSetNewsHost(const char *value);
+    extern const char *HTGetNewsHost(void);
+    extern char *HTNewsHost;
+
+    extern void HTClearNNTPAuthInfo(void);
+
+#ifdef USE_SSL
+    extern SSL_CTX *ssl_ctx;
+
+    extern int HTNewsProxyConnect(int sock,
+				  const char *url,
+				  HTParentAnchor *anAnchor,
+				  HTFormat format_out,
+				  HTStream *sink);
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTNEWS_H */
diff --git a/WWW/Library/Implementation/HTParse.c b/WWW/Library/Implementation/HTParse.c
new file mode 100644
index 00000000..0338dfd4
--- /dev/null
+++ b/WWW/Library/Implementation/HTParse.c
@@ -0,0 +1,1348 @@
+/*
+ * $LynxId: HTParse.c,v 1.70 2012/02/09 19:57:37 tom Exp $
+ *
+ *		Parse HyperText Document Address		HTParse.c
+ *		================================
+ */
+
+#include <HTUtils.h>
+#include <HTParse.h>
+
+#include <LYUtils.h>
+#include <LYLeaks.h>
+#include <LYStrings.h>
+#include <LYCharUtils.h>
+#include <LYGlobalDefs.h>
+
+#ifdef HAVE_ALLOCA_H
+#include <alloca.h>
+#else
+#ifdef __MINGW32__
+#include <malloc.h>
+#endif /* __MINGW32__ */
+#endif
+
+#ifdef USE_IDNA
+#include <idna.h>
+#endif
+
+#define HEX_ESCAPE '%'
+
+struct struct_parts {
+    char *access;
+    char *host;
+    char *absolute;
+    char *relative;
+    char *search;		/* treated normally as part of path */
+    char *anchor;
+};
+
+#if 0				/* for debugging */
+static void show_parts(const char *name, struct struct_parts *parts, int line)
+{
+    if (TRACE) {
+	CTRACE((tfp, "struct_parts(%s) %s@%d\n", name, __FILE__, line));
+	CTRACE((tfp, "   access   '%s'\n", NONNULL(parts->access)));
+	CTRACE((tfp, "   host     '%s'\n", NONNULL(parts->host)));
+	CTRACE((tfp, "   absolute '%s'\n", NONNULL(parts->absolute)));
+	CTRACE((tfp, "   relative '%s'\n", NONNULL(parts->relative)));
+	CTRACE((tfp, "   search   '%s'\n", NONNULL(parts->search)));
+	CTRACE((tfp, "   anchor   '%s'\n", NONNULL(parts->anchor)));
+    }
+}
+#define SHOW_PARTS(name) show_parts(#name, &name, __LINE__)
+#else
+#define SHOW_PARTS(name)	/* nothing */
+#endif
+
+/*	Strip white space off a string.				HTStrip()
+ *	-------------------------------
+ *
+ * On exit,
+ *	Return value points to first non-white character, or to 0 if none.
+ *	All trailing white space is OVERWRITTEN with zero.
+ */
+char *HTStrip(char *s)
+{
+#define SPACE(c) ((c == ' ') || (c == '\t') || (c == '\n'))
+    char *p;
+
+    for (p = s; *p; p++) {	/* Find end of string */
+	;
+    }
+    for (p--; p >= s; p--) {
+	if (SPACE(*p))
+	    *p = '\0';		/* Zap trailing blanks */
+	else
+	    break;
+    }
+    while (SPACE(*s))
+	s++;			/* Strip leading blanks */
+    return s;
+}
+
+/*	Scan a filename for its constituents.			scan()
+ *	-------------------------------------
+ *
+ * On entry,
+ *	name	points to a document name which may be incomplete.
+ * On exit,
+ *	absolute or relative may be nonzero (but not both).
+ *	host, anchor and access may be nonzero if they were specified.
+ *	Any which are nonzero point to zero terminated strings.
+ */
+static void scan(char *name,
+		 struct struct_parts *parts)
+{
+    char *after_access;
+    char *p;
+
+    parts->access = NULL;
+    parts->host = NULL;
+    parts->absolute = NULL;
+    parts->relative = NULL;
+    parts->search = NULL;	/* normally not used - kw */
+    parts->anchor = NULL;
+
+    /*
+     * Scan left-to-right for a scheme (access).
+     */
+    after_access = name;
+    for (p = name; *p; p++) {
+	if (*p == ':') {
+	    *p = '\0';
+	    parts->access = name;	/* Access name has been specified */
+	    after_access = (p + 1);
+	    break;
+	}
+	if (*p == '/' || *p == '#' || *p == ';' || *p == '?')
+	    break;
+    }
+
+    /*
+     * Scan left-to-right for a fragment (anchor).
+     */
+    for (p = after_access; *p; p++) {
+	if (*p == '#') {
+	    parts->anchor = (p + 1);
+	    *p = '\0';		/* terminate the rest */
+	    break;		/* leave things after first # alone - kw */
+	}
+    }
+
+    /*
+     * Scan left-to-right for a host or absolute path.
+     */
+    p = after_access;
+    if (*p == '/') {
+	if (p[1] == '/') {
+	    parts->host = (p + 2);	/* host has been specified    */
+	    *p = '\0';		/* Terminate access           */
+	    p = strchr(parts->host, '/');	/* look for end of host name if any */
+	    if (p != NULL) {
+		*p = '\0';	/* Terminate host */
+		parts->absolute = (p + 1);	/* Root has been found */
+	    } else {
+		p = strchr(parts->host, '?');
+		if (p != NULL) {
+		    *p = '\0';	/* Terminate host */
+		    parts->search = (p + 1);
+		}
+	    }
+	} else {
+	    parts->absolute = (p + 1);	/* Root found but no host */
+	}
+    } else {
+	parts->relative = (*after_access) ?
+	    after_access : NULL;	/* NULL for "" */
+    }
+
+    /*
+     * Check schemes that commonly have unescaped hashes.
+     */
+    if (parts->access && parts->anchor &&
+    /* optimize */ strchr("lnsdLNSD", *parts->access) != NULL) {
+	if ((!parts->host && strcasecomp(parts->access, "lynxcgi")) ||
+	    !strcasecomp(parts->access, "nntp") ||
+	    !strcasecomp(parts->access, "snews") ||
+	    !strcasecomp(parts->access, "news") ||
+	    !strcasecomp(parts->access, "data")) {
+	    /*
+	     * Access specified but no host and not a lynxcgi URL, so the
+	     * anchor may not really be one, e.g., news:j462#36487@foo.bar, or
+	     * it's an nntp or snews URL, or news URL with a host.  Restore the
+	     * '#' in the address.
+	     */
+	    /* but only if we have found a path component of which this will
+	     * become part. - kw  */
+	    if (parts->relative || parts->absolute) {
+		*(parts->anchor - 1) = '#';
+		parts->anchor = NULL;
+	    }
+	}
+    }
+}				/*scan */
+
+#if defined(HAVE_ALLOCA) && !defined(LY_FIND_LEAKS)
+#define LYalloca(x)        alloca(x)
+#define LYalloca_free(x)   {}
+#else
+#define LYalloca(x)        malloc(x)
+#define LYalloca_free(x)   free(x)
+#endif
+
+static char *strchr_or_end(char *string, int ch)
+{
+    char *result = strchr(string, ch);
+
+    if (result == 0) {
+	result = string + strlen(string);
+    }
+    return result;
+}
+
+/*
+ * Given a host specification that may end with a port number, e.g.,
+ *	foobar:123
+ * point to the ':' which begins the ":port" to make it simple to handle the
+ * substring.
+ *
+ * If no port is found (or a syntax error), return null.
+ */
+char *HTParsePort(char *host, int *portp)
+{
+    int brackets = 0;
+    char *result = NULL;
+
+    *portp = 0;
+    if (host != NULL) {
+	while (*host != '\0' && result == 0) {
+	    switch (*host++) {
+	    case ':':
+		if (brackets == 0 && isdigit(UCH(*host))) {
+		    char *next = NULL;
+
+		    *portp = (int) strtol(host, &next, 10);
+		    if (next != 0 && next != host && *next == '\0') {
+			result = (host - 1);
+			CTRACE((tfp, "HTParsePort %d\n", *portp));
+		    }
+		}
+		break;
+	    case '[':		/* for ipv6 */
+		++brackets;
+		break;
+	    case ']':		/* for ipv6 */
+		--brackets;
+		break;
+	    }
+	}
+    }
+    return result;
+}
+
+#ifdef USE_IDNA
+static int hex_decode(int ch)
+{
+    int result = -1;
+
+    if (ch >= '0' && ch <= '9')
+	result = (ch - '0');
+    else if (ch >= 'a' && ch <= 'f')
+	result = (ch - 'a') + 10;
+    else if (ch >= 'A' && ch <= 'F')
+	result = (ch - 'A') + 10;
+    return result;
+}
+
+/*
+ * Convert in-place the given hostname to IDNA form.  That requires up to 64
+ * characters, and we've allowed for that, with MIN_PARSE.
+ */
+static void convert_to_idna(char *host)
+{
+    size_t length = strlen(host);
+    char *endhost = host + length;
+    char *buffer = malloc(length + 1);
+    char *output = NULL;
+    char *src, *dst;
+    int code;
+    int hi, lo;
+
+    if (buffer != 0) {
+	code = TRUE;
+	for (dst = buffer, src = host; src < endhost; ++dst) {
+	    int ch = *src++;
+
+	    if (ch == HEX_ESCAPE) {
+		if ((src + 1) < endhost
+		    && (hi = hex_decode(src[0])) >= 0
+		    && (lo = hex_decode(src[1])) >= 0) {
+
+		    *dst = (char) ((hi << 4) | lo);
+		    src += 2;
+		} else {
+		    CTRACE((tfp, "convert_to_idna: `%s' is malformed\n", host));
+		    code = FALSE;
+		    break;
+		}
+	    } else {
+		*dst = (char) ch;
+	    }
+	}
+	if (code) {
+	    *dst = '\0';
+	    code = idna_to_ascii_8z(buffer, &output, IDNA_USE_STD3_ASCII_RULES);
+	    if (code == IDNA_SUCCESS) {
+		strcpy(host, output);
+	    } else {
+		CTRACE((tfp, "convert_to_idna: `%s': %s\n",
+			buffer,
+			idna_strerror((Idna_rc) code)));
+	    }
+	    if (output)		/* "(free)" to bypass LYLeaks.c */
+		(free) (output);
+	}
+	free(buffer);
+    }
+}
+#define MIN_PARSE 80
+#else
+#define MIN_PARSE 8
+#endif
+
+/*	Parse a Name relative to another name.			HTParse()
+ *	--------------------------------------
+ *
+ *	This returns those parts of a name which are given (and requested)
+ *	substituting bits from the related name where necessary.
+ *
+ * On entry,
+ *	aName		A filename given
+ *	relatedName	A name relative to which aName is to be parsed
+ *	wanted		A mask for the bits which are wanted.
+ *
+ * On exit,
+ *     returns         A pointer to a malloc'd string which MUST BE FREED
+ */
+char *HTParse(const char *aName,
+	      const char *relatedName,
+	      int wanted)
+{
+    char *result = NULL;
+    char *tail = NULL;		/* a pointer to the end of the 'result' string */
+    char *return_value = NULL;
+    size_t len, len1, len2;
+    size_t need;
+    char *name = NULL;
+    char *rel = NULL;
+    char *p, *q;
+    char *acc_method;
+    struct struct_parts given, related;
+
+    CTRACE((tfp, "HTParse: aName:`%s'\n", aName));
+    CTRACE((tfp, "   relatedName:`%s'\n", relatedName));
+
+    if (wanted & (PARSE_STRICTPATH | PARSE_QUERY)) {	/* if detail wanted... */
+	if ((wanted & (PARSE_STRICTPATH | PARSE_QUERY))
+	    == (PARSE_STRICTPATH | PARSE_QUERY))	/* if strictpath AND query */
+	    wanted |= PARSE_PATH;	/* then treat as if PARSE_PATH wanted */
+	if (wanted & PARSE_PATH)	/* if PARSE_PATH wanted */
+	    wanted &= ~(PARSE_STRICTPATH | PARSE_QUERY);	/* ignore details */
+    }
+/* *INDENT-OFF* */
+    CTRACE((tfp, "   want:%s%s%s%s%s%s%s\n",
+	    wanted & PARSE_PUNCTUATION ? " punc"   : "",
+	    wanted & PARSE_ANCHOR      ? " anchor" : "",
+	    wanted & PARSE_PATH        ? " path"   : "",
+	    wanted & PARSE_HOST        ? " host"   : "",
+	    wanted & PARSE_ACCESS      ? " access" : "",
+	    wanted & PARSE_STRICTPATH  ? " PATH"   : "",
+	    wanted & PARSE_QUERY       ? " QUERY"  : ""));
+/* *INDENT-ON* */
+
+    /*
+     * Allocate the temporary string. Optimized.
+     */
+    len1 = strlen(aName) + 1;
+    len2 = strlen(relatedName) + 1;
+    len = len1 + len2 + MIN_PARSE;	/* Lots of space: more than enough */
+
+    need = (len * 2 + len1 + len2);
+    if (need > (size_t) max_uri_size ||
+	(int) need < (int) len1 ||
+	(int) need < (int) len2)
+	return StrAllocCopy(return_value, "");
+
+    result = tail = (char *) LYalloca(need);
+    if (result == NULL) {
+	outofmem(__FILE__, "HTParse");
+
+	assert(result != NULL);
+    }
+    *result = '\0';
+    name = result + len;
+    rel = name + len1;
+
+    /*
+     * Make working copy of the input string to cut up.
+     */
+    MemCpy(name, aName, len1);
+
+    /*
+     * Cut up the string into URL fields.
+     */
+    scan(name, &given);
+    SHOW_PARTS(given);
+
+    /*
+     * Now related string.
+     */
+    if ((given.access && given.host && given.absolute) || !*relatedName) {
+	/*
+	 * Inherit nothing!
+	 */
+	related.access = NULL;
+	related.host = NULL;
+	related.absolute = NULL;
+	related.relative = NULL;
+	related.search = NULL;
+	related.anchor = NULL;
+    } else {
+	MemCpy(rel, relatedName, len2);
+	scan(rel, &related);
+    }
+    SHOW_PARTS(related);
+
+    /*
+     * Handle the scheme (access) field.
+     */
+    if (given.access && given.host && !given.relative && !given.absolute) {
+	if (!strcmp(given.access, "http") ||
+	    !strcmp(given.access, "https") ||
+	    !strcmp(given.access, "ftp")) {
+
+	    /*
+	     * Assume root.
+	     */
+	    given.absolute = empty_string;
+	}
+    }
+    acc_method = given.access ? given.access : related.access;
+    if (wanted & PARSE_ACCESS) {
+	if (acc_method) {
+	    strcpy(tail, acc_method);
+	    tail += strlen(tail);
+	    if (wanted & PARSE_PUNCTUATION) {
+		*tail++ = ':';
+		*tail = '\0';
+	    }
+	}
+    }
+
+    /*
+     * If different schemes, inherit nothing.
+     *
+     * We'll try complying with RFC 1808 and the Fielding draft, and inherit
+     * nothing if both schemes are given, rather than only when they differ,
+     * except for file URLs - FM
+     *
+     * After trying it for a while, it's still premature, IHMO, to go along
+     * with it, so this is back to inheriting for identical schemes whether or
+     * not they are "file".  If you want to try it again yourself, uncomment
+     * the strcasecomp() below.  - FM
+     */
+    if ((given.access && related.access) &&
+	(			/* strcasecomp(given.access, "file") || */
+	    strcmp(given.access, related.access))) {
+	related.host = NULL;
+	related.absolute = NULL;
+	related.relative = NULL;
+	related.search = NULL;
+	related.anchor = NULL;
+    }
+
+    /*
+     * Handle the host field.
+     */
+    if (wanted & PARSE_HOST) {
+	if (given.host || related.host) {
+	    if (wanted & PARSE_PUNCTUATION) {
+		*tail++ = '/';
+		*tail++ = '/';
+	    }
+	    strcpy(tail, given.host ? given.host : related.host);
+#define CLEAN_URLS
+#ifdef CLEAN_URLS
+	    /*
+	     * Ignore default port numbers, and trailing dots on FQDNs, which
+	     * will only cause identical addresses to look different.  (related
+	     * is already a clean url).
+	     */
+	    {
+		char *p2, *h;
+		int portnumber;
+
+		if ((p2 = strchr(result, '@')) != NULL)
+		    tail = (p2 + 1);
+		p2 = HTParsePort(result, &portnumber);
+		if (p2 != NULL && acc_method != NULL) {
+		    /*
+		     * Port specified.
+		     */
+#define ACC_METHOD(a,b) (!strcmp(acc_method, a) && (portnumber == b))
+		    if (ACC_METHOD("http", 80) ||
+			ACC_METHOD("https", 443) ||
+			ACC_METHOD("gopher", 70) ||
+			ACC_METHOD("ftp", 21) ||
+			ACC_METHOD("wais", 210) ||
+			ACC_METHOD("nntp", 119) ||
+			ACC_METHOD("news", 119) ||
+			ACC_METHOD("newspost", 119) ||
+			ACC_METHOD("newsreply", 119) ||
+			ACC_METHOD("snews", 563) ||
+			ACC_METHOD("snewspost", 563) ||
+			ACC_METHOD("snewsreply", 563) ||
+			ACC_METHOD("finger", 79) ||
+			ACC_METHOD("telnet", 23) ||
+			ACC_METHOD("tn3270", 23) ||
+			ACC_METHOD("rlogin", 513) ||
+			ACC_METHOD("cso", 105))
+			*p2 = '\0';	/* It is the default: ignore it */
+		}
+		if (p2 == NULL) {
+		    int len3 = (int) strlen(tail);
+
+		    if (len3 > 0) {
+			h = tail + len3 - 1;	/* last char of hostname */
+			if (*h == '.')
+			    *h = '\0';	/* chop final . */
+		    }
+		} else if (p2 != result) {
+		    h = p2;
+		    h--;	/* End of hostname */
+		    if (*h == '.') {
+			/*
+			 * Slide p2 over h.
+			 */
+			while (*p2 != '\0')
+			    *h++ = *p2++;
+			*h = '\0';	/* terminate */
+		    }
+		}
+	    }
+#ifdef USE_IDNA
+	    /*
+	     * Depending on locale-support, we could have a literal UTF-8
+	     * string as a host name, or a URL-encoded form of that.
+	     */
+	    convert_to_idna(tail);
+#endif
+#endif /* CLEAN_URLS */
+	}
+    }
+
+    /*
+     * Trim any blanks from the result so far - there's no excuse for blanks
+     * in a hostname.  Also update the tail here.
+     */
+    tail = LYRemoveBlanks(result);
+
+    /*
+     * If host in given or related was ended directly with a '?' (no slash),
+     * fake the search part into absolute.  This is the only case search is
+     * returned from scan.  A host must have been present.  this restores the
+     * '?' at which the host part had been truncated in scan, we have to do
+     * this after host part handling is done.  - kw
+     */
+    if (given.search && *(given.search - 1) == '\0') {
+	given.absolute = given.search - 1;
+	given.absolute[0] = '?';
+    } else if (related.search && !related.absolute &&
+	       *(related.search - 1) == '\0') {
+	related.absolute = related.search - 1;
+	related.absolute[0] = '?';
+    }
+
+    /*
+     * If different hosts, inherit no path.
+     */
+    if (given.host && related.host)
+	if (strcmp(given.host, related.host) != 0) {
+	    related.absolute = NULL;
+	    related.relative = NULL;
+	    related.anchor = NULL;
+	}
+
+    /*
+     * Handle the path.
+     */
+    if (wanted & (PARSE_PATH | PARSE_STRICTPATH | PARSE_QUERY)) {
+	int want_detail = (wanted & (PARSE_STRICTPATH | PARSE_QUERY));
+
+	if (acc_method && !given.absolute && given.relative) {
+	    /*
+	     * Treat all given nntp or snews paths, or given paths for news
+	     * URLs with a host, as absolute.
+	     */
+	    switch (*acc_method) {
+	    case 'N':
+	    case 'n':
+		if (!strcasecomp(acc_method, "nntp") ||
+		    (!strcasecomp(acc_method, "news") &&
+		     !strncasecomp(result, "news://", 7))) {
+		    given.absolute = given.relative;
+		    given.relative = NULL;
+		}
+		break;
+	    case 'S':
+	    case 's':
+		if (!strcasecomp(acc_method, "snews")) {
+		    given.absolute = given.relative;
+		    given.relative = NULL;
+		}
+		break;
+	    }
+	}
+
+	if (given.absolute) {	/* All is given */
+	    if (wanted & PARSE_PUNCTUATION)
+		*tail++ = '/';
+	    strcpy(tail, given.absolute);
+	    CTRACE((tfp, "HTParse: (ABS)\n"));
+	} else if (related.absolute) {	/* Adopt path not name */
+	    char *base = tail;
+
+	    *tail++ = '/';
+	    strcpy(tail, related.absolute);
+	    if (given.relative) {
+		/* RFC 1808 part 4 step 5 (if URL path is empty) */
+		/* a) if given has params, add/replace that */
+		if (given.relative[0] == ';') {
+		    strcpy(strchr_or_end(tail, ';'), given.relative);
+		}
+		/* b) if given has query, add/replace that */
+		else if (given.relative[0] == '?') {
+		    strcpy(strchr_or_end(tail, '?'), given.relative);
+		}
+		/* otherwise fall through to RFC 1808 part 4 step 6 */
+		else {
+		    p = strchr(tail, '?');	/* Search part? */
+		    if (p == NULL)
+			p = (tail + strlen(tail) - 1);
+		    for (; *p != '/'; p--) ;	/* last / */
+		    p[1] = '\0';	/* Remove filename */
+		    strcat(p, given.relative);	/* Add given one */
+		}
+		HTSimplify(base);
+		if (*base == '\0')
+		    strcpy(base, "/");
+	    }
+	    CTRACE((tfp, "HTParse: (Related-ABS)\n"));
+	} else if (given.relative) {
+	    strcpy(tail, given.relative);	/* what we've got */
+	    CTRACE((tfp, "HTParse: (REL)\n"));
+	} else if (related.relative) {
+	    strcpy(tail, related.relative);
+	    CTRACE((tfp, "HTParse: (Related-REL)\n"));
+	} else {		/* No inheritance */
+	    if (!isLYNXCGI(aName) &&
+		!isLYNXEXEC(aName) &&
+		!isLYNXPROG(aName)) {
+		*tail++ = '/';
+		*tail = '\0';
+	    }
+	    if (!strcmp(result, "news:/"))
+		result[5] = '*';
+	    CTRACE((tfp, "HTParse: (No inheritance)\n"));
+	}
+	if (want_detail) {
+	    p = strchr(tail, '?');	/* Search part? */
+	    if (p) {
+		if (PARSE_STRICTPATH) {
+		    *p = '\0';
+		} else {
+		    if (!(wanted & PARSE_PUNCTUATION))
+			p++;
+		    do {
+			*tail++ = *p;
+		    } while (*p++);
+		}
+	    } else {
+		if (wanted & PARSE_QUERY)
+		    *tail = '\0';
+	    }
+	}
+    }
+
+    /*
+     * Handle the fragment (anchor).  Never inherit.
+     */
+    if (wanted & PARSE_ANCHOR) {
+	if (given.anchor && *given.anchor) {
+	    tail += strlen(tail);
+	    if (wanted & PARSE_PUNCTUATION)
+		*tail++ = '#';
+	    strcpy(tail, given.anchor);
+	}
+    }
+
+    /*
+     * If there are any blanks remaining in the string, escape them as needed.
+     * See the discussion in LYLegitimizeHREF() for example.
+     */
+    if ((p = strchr(result, ' ')) != 0) {
+	switch (is_url(result)) {
+	case UNKNOWN_URL_TYPE:
+	    CTRACE((tfp, "HTParse:      ignore:`%s'\n", result));
+	    break;
+	case LYNXEXEC_URL_TYPE:
+	case LYNXPROG_URL_TYPE:
+	case LYNXCGI_URL_TYPE:
+	case LYNXPRINT_URL_TYPE:
+	case LYNXHIST_URL_TYPE:
+	case LYNXDOWNLOAD_URL_TYPE:
+	case LYNXKEYMAP_URL_TYPE:
+	case LYNXIMGMAP_URL_TYPE:
+	case LYNXCOOKIE_URL_TYPE:
+	case LYNXCACHE_URL_TYPE:
+	case LYNXDIRED_URL_TYPE:
+	case LYNXOPTIONS_URL_TYPE:
+	case LYNXCFG_URL_TYPE:
+	case LYNXCOMPILE_OPTS_URL_TYPE:
+	case LYNXMESSAGES_URL_TYPE:
+	    CTRACE((tfp, "HTParse:      spaces:`%s'\n", result));
+	    break;
+	case NOT_A_URL_TYPE:
+	default:
+	    CTRACE((tfp, "HTParse:      encode:`%s'\n", result));
+	    do {
+		q = p + strlen(p) + 2;
+
+		while (q != p + 1) {
+		    q[0] = q[-2];
+		    --q;
+		}
+		p[0] = HEX_ESCAPE;
+		p[1] = '2';
+		p[2] = '0';
+	    } while ((p = strchr(result, ' ')) != 0);
+	    break;
+	}
+    }
+    CTRACE((tfp, "HTParse:      result:`%s'\n", result));
+
+    StrAllocCopy(return_value, result);
+    LYalloca_free(result);
+
+    /* FIXME: could be optimized using HTParse() internals */
+    if (*relatedName &&
+	((wanted & PARSE_ALL_WITHOUT_ANCHOR) == PARSE_ALL_WITHOUT_ANCHOR)) {
+	/*
+	 * Check whether to fill in localhost.  - FM
+	 */
+	LYFillLocalFileURL(&return_value, relatedName);
+	CTRACE((tfp, "pass LYFillLocalFile:`%s'\n", return_value));
+    }
+
+    return return_value;	/* exactly the right length */
+}
+
+/*	HTParseAnchor(), fast HTParse() specialization
+ *	----------------------------------------------
+ *
+ * On exit,
+ *	returns		A pointer within input string (probably to its end '\0')
+ */
+const char *HTParseAnchor(const char *aName)
+{
+    const char *p = aName;
+
+    for (; *p && *p != '#'; p++) {
+	;
+    }
+    if (*p == '#') {
+	/* the safe way based on HTParse() -
+	 * keeping in mind scan() peculiarities on schemes:
+	 */
+	struct struct_parts given;
+	size_t need = ((unsigned) ((p - aName) + (int) strlen(p) + 1));
+	char *name;
+
+	if (need > (size_t) max_uri_size) {
+	    p += strlen(p);
+	} else {
+	    name = (char *) LYalloca(need);
+
+	    if (name == NULL) {
+		outofmem(__FILE__, "HTParseAnchor");
+
+		assert(name != NULL);
+	    }
+	    strcpy(name, aName);
+	    scan(name, &given);
+	    LYalloca_free(name);
+
+	    p++;		/*next to '#' */
+	    if (given.anchor == NULL) {
+		for (; *p; p++)	/*scroll to end '\0' */
+		    ;
+	    }
+	}
+    }
+    return p;
+}
+
+/*	Simplify a filename.				HTSimplify()
+ *	--------------------
+ *
+ *  A unix-style file is allowed to contain the sequence xxx/../ which may
+ *  be replaced by "" , and the sequence "/./" which may be replaced by "/".
+ *  Simplification helps us recognize duplicate filenames.
+ *
+ *	Thus,	/etc/junk/../fred	becomes /etc/fred
+ *		/etc/junk/./fred	becomes /etc/junk/fred
+ *
+ *	but we should NOT change
+ *		http://fred.xxx.edu/../..
+ *
+ *	or	../../albert.html
+ */
+void HTSimplify(char *filename)
+{
+    char *p;
+    char *q, *q1;
+
+    if (filename == NULL)
+	return;
+
+    if (!(filename[0] && filename[1]) ||
+	filename[0] == '?' || filename[1] == '?' || filename[2] == '?')
+	return;
+
+    if (strchr(filename, '/') != NULL) {
+	for (p = (filename + 2); *p; p++) {
+	    if (*p == '?') {
+		/*
+		 * We're still treating a ?searchpart as part of the path in
+		 * HTParse() and scan(), but if we encounter a '?' here, assume
+		 * it's the delimiter and break.  We also could check for a
+		 * parameter delimiter (';') here, but the current Fielding
+		 * draft (wisely or ill-advisedly :) says that it should be
+		 * ignored and collapsing be allowed in it's value).  The only
+		 * defined parameter at present is ;type=[A, I, or D] for ftp
+		 * URLs, so if there's a "/..", "/../", "/./", or terminal '.'
+		 * following the ';', it must be due to the ';' being an
+		 * unescaped path character and not actually a parameter
+		 * delimiter.  - FM
+		 */
+		break;
+	    }
+	    if (*p == '/') {
+		if ((p[1] == '.') && (p[2] == '.') &&
+		    (p[3] == '/' || p[3] == '?' || p[3] == '\0')) {
+		    /*
+		     * Handle "../", "..?" or "..".
+		     */
+		    for (q = (p - 1); (q >= filename) && (*q != '/'); q--)
+			/*
+			 * Back up to previous slash or beginning of string.
+			 */
+			;
+		    if ((q[0] == '/') &&
+			(StrNCmp(q, "/../", 4) &&
+			 StrNCmp(q, "/..?", 4)) &&
+			!((q - 1) > filename && q[-1] == '/')) {
+			/*
+			 * Not at beginning of string or in a host field, so
+			 * remove the "/xxx/..".
+			 */
+			q1 = (p + 3);
+			p = q;
+			while (*q1 != '\0')
+			    *p++ = *q1++;
+			*p = '\0';	/* terminate */
+			/*
+			 * Start again with previous slash.
+			 */
+			p = (q - 1);
+		    }
+		} else if (p[1] == '.' && p[2] == '/') {
+		    /*
+		     * Handle "./" by removing both characters.
+		     */
+		    q = p;
+		    q1 = (p + 2);
+		    while (*q1 != '\0')
+			*q++ = *q1++;
+		    *q = '\0';	/* terminate */
+		    p--;
+		} else if (p[1] == '.' && p[2] == '?') {
+		    /*
+		     * Handle ".?" by removing the dot.
+		     */
+		    q = (p + 1);
+		    q1 = (p + 2);
+		    while (*q1 != '\0')
+			*q++ = *q1++;
+		    *q = '\0';	/* terminate */
+		    p--;
+		} else if (p[1] == '.' && p[2] == '\0') {
+		    /*
+		     * Handle terminal "." by removing the character.
+		     */
+		    p[1] = '\0';
+		}
+	    }
+	}
+	if (p >= filename + 2 && *p == '?' && *(p - 1) == '.') {
+	    if (*(p - 2) == '/') {
+		/*
+		 * Handle "/.?" by removing the dot.
+		 */
+		q = p - 1;
+		q1 = p;
+		while (*q1 != '\0')
+		    *q++ = *q1++;
+		*q = '\0';
+	    } else if (*(p - 2) == '.' &&
+		       p >= filename + 4 && *(p - 3) == '/' &&
+		       (*(p - 4) != '/' ||
+			(p > filename + 4 && *(p - 5) != ':'))) {
+		/*
+		 * Handle "xxx/..?"
+		 */
+		for (q = (p - 4); (q > filename) && (*q != '/'); q--)
+		    /*
+		     * Back up to previous slash or beginning of string.
+		     */
+		    ;
+		if (*q == '/') {
+		    if (q > filename && *(q - 1) == '/' &&
+			!(q > filename + 1 && *(q - 1) != ':'))
+			return;
+		    q++;
+		}
+		if (StrNCmp(q, "../", 3) && StrNCmp(q, "./", 2)) {
+		    /*
+		     * Not after "//" at beginning of string or after "://",
+		     * and xxx is not ".." or ".", so remove the "xxx/..".
+		     */
+		    q1 = p;
+		    p = q;
+		    while (*q1 != '\0')
+			*p++ = *q1++;
+		    *p = '\0';	/* terminate */
+		}
+	    }
+	}
+    }
+}
+
+/*	Make Relative Name.					HTRelative()
+ *	-------------------
+ *
+ * This function creates and returns a string which gives an expression of
+ * one address as related to another.  Where there is no relation, an absolute
+ * address is returned.
+ *
+ *  On entry,
+ *	Both names must be absolute, fully qualified names of nodes
+ *	(no anchor bits)
+ *
+ *  On exit,
+ *	The return result points to a newly allocated name which, if
+ *	parsed by HTParse relative to relatedName, will yield aName.
+ *	The caller is responsible for freeing the resulting name later.
+ *
+ */
+char *HTRelative(const char *aName,
+		 const char *relatedName)
+{
+    char *result = NULL;
+    const char *p = aName;
+    const char *q = relatedName;
+    const char *after_access = NULL;
+    const char *path = NULL;
+    const char *last_slash = NULL;
+    int slashes = 0;
+
+    for (; *p; p++, q++) {	/* Find extent of match */
+	if (*p != *q)
+	    break;
+	if (*p == ':')
+	    after_access = p + 1;
+	if (*p == '/') {
+	    last_slash = p;
+	    slashes++;
+	    if (slashes == 3)
+		path = p;
+	}
+    }
+
+    /* q, p point to the first non-matching character or zero */
+
+    if (!after_access) {	/* Different access */
+	StrAllocCopy(result, aName);
+    } else if (slashes < 3) {	/* Different nodes */
+	StrAllocCopy(result, after_access);
+    } else if (slashes == 3) {	/* Same node, different path */
+	StrAllocCopy(result, path);
+    } else {			/* Some path in common */
+	unsigned levels = 0;
+
+	for (; *q && (*q != '#'); q++)
+	    if (*q == '/')
+		levels++;
+	result = typecallocn(char, 3 * levels + strlen(last_slash) + 1);
+
+	if (result == NULL)
+	    outofmem(__FILE__, "HTRelative");
+
+	assert(result != NULL);
+
+	result[0] = '\0';
+	for (; levels; levels--)
+	    strcat(result, "../");
+	strcat(result, last_slash + 1);
+    }
+    CTRACE((tfp,
+	    "HTparse: `%s' expressed relative to\n   `%s' is\n   `%s'.\n",
+	    aName, relatedName, result));
+    return result;
+}
+
+#define AlloCopy(next,base,extra) \
+	typecallocn(char, ((next - base) + ((int) extra)))
+
+/*	Escape undesirable characters using %			HTEscape()
+ *	-------------------------------------
+ *
+ *	This function takes a pointer to a string in which
+ *	some characters may be unacceptable unescaped.
+ *	It returns a string which has these characters
+ *	represented by a '%' character followed by two hex digits.
+ *
+ *	Unlike HTUnEscape(), this routine returns a calloc'd string.
+ */
+/* *INDENT-OFF* */
+static const unsigned char isAcceptable[96] =
+
+/*	Bit 0		xalpha		-- see HTFile.h
+ *	Bit 1		xpalpha		-- as xalpha but with plus.
+ *	Bit 2 ...	path		-- as xpalphas but with /
+ */
+    /*	 0 1 2 3 4 5 6 7 8 9 A B C D E F */
+    {	 0,0,0,0,0,0,0,0,0,0,7,6,0,7,7,4,	/* 2x	!"#$%&'()*+,-./  */
+	 7,7,7,7,7,7,7,7,7,7,0,0,0,0,0,0,	/* 3x  0123456789:;<=>?  */
+	 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,	/* 4x  @ABCDEFGHIJKLMNO  */
+	 7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,7,	/* 5X  PQRSTUVWXYZ[\]^_  */
+	 0,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,	/* 6x  `abcdefghijklmno  */
+	 7,7,7,7,7,7,7,7,7,7,7,0,0,0,0,0 };	/* 7X  pqrstuvwxyz{|}~	DEL */
+/* *INDENT-ON* */
+
+static const char *hex = "0123456789ABCDEF";
+
+#define ACCEPTABLE(a)	( a>=32 && a<128 && ((isAcceptable[a-32]) & mask))
+
+char *HTEscape(const char *str,
+	       unsigned mask)
+{
+    const char *p;
+    char *q;
+    char *result;
+    size_t unacceptable = 0;
+
+    for (p = str; *p; p++)
+	if (!ACCEPTABLE(UCH(TOASCII(*p))))
+	    unacceptable++;
+    result = AlloCopy(p, str, (unacceptable * 2) + 1);
+
+    if (result == NULL)
+	outofmem(__FILE__, "HTEscape");
+
+    assert(result != NULL);
+
+    for (q = result, p = str; *p; p++) {
+	unsigned char a = UCH(TOASCII(*p));
+
+	if (!ACCEPTABLE(a)) {
+	    *q++ = HEX_ESCAPE;	/* Means hex coming */
+	    *q++ = hex[a >> 4];
+	    *q++ = hex[a & 15];
+	} else
+	    *q++ = *p;
+    }
+    *q = '\0';			/* Terminate */
+    return result;
+}
+
+/*	Escape unsafe characters using %			HTEscapeUnsafe()
+ *	--------------------------------
+ *
+ *	This function takes a pointer to a string in which
+ *	some characters may be that may be unsafe are unescaped.
+ *	It returns a string which has these characters
+ *	represented by a '%' character followed by two hex digits.
+ *
+ *	Unlike HTUnEscape(), this routine returns a malloc'd string.
+ */
+#define UNSAFE(ch) (((ch) <= 32) || ((ch) >= 127))
+
+char *HTEscapeUnsafe(const char *str)
+{
+    const char *p;
+    char *q;
+    char *result;
+    size_t unacceptable = 0;
+
+    for (p = str; *p; p++)
+	if (UNSAFE(UCH(TOASCII(*p))))
+	    unacceptable++;
+    result = AlloCopy(p, str, (unacceptable * 2) + 1);
+
+    if (result == NULL)
+	outofmem(__FILE__, "HTEscapeUnsafe");
+
+    assert(result != NULL);
+
+    for (q = result, p = str; *p; p++) {
+	unsigned char a = UCH(TOASCII(*p));
+
+	if (UNSAFE(a)) {
+	    *q++ = HEX_ESCAPE;	/* Means hex coming */
+	    *q++ = hex[a >> 4];
+	    *q++ = hex[a & 15];
+	} else
+	    *q++ = *p;
+    }
+    *q = '\0';			/* Terminate */
+    return result;
+}
+
+/*	Escape undesirable characters using % but space to +.	HTEscapeSP()
+ *	-----------------------------------------------------
+ *
+ *	This function takes a pointer to a string in which
+ *	some characters may be unacceptable unescaped.
+ *	It returns a string which has these characters
+ *	represented by a '%' character followed by two hex digits,
+ *	except that spaces are converted to '+' instead of %2B.
+ *
+ *	Unlike HTUnEscape(), this routine returns a calloced string.
+ */
+char *HTEscapeSP(const char *str,
+		 unsigned mask)
+{
+    const char *p;
+    char *q;
+    char *result;
+    size_t unacceptable = 0;
+
+    for (p = str; *p; p++)
+	if (!(*p == ' ' || ACCEPTABLE(UCH(TOASCII(*p)))))
+	    unacceptable++;
+    result = AlloCopy(p, str, (unacceptable * 2) + 1);
+
+    if (result == NULL)
+	outofmem(__FILE__, "HTEscape");
+
+    assert(result != NULL);
+
+    for (q = result, p = str; *p; p++) {
+	unsigned char a = UCH(TOASCII(*p));
+
+	if (a == 32) {
+	    *q++ = '+';
+	} else if (!ACCEPTABLE(a)) {
+	    *q++ = HEX_ESCAPE;	/* Means hex coming */
+	    *q++ = hex[a >> 4];
+	    *q++ = hex[a & 15];
+	} else {
+	    *q++ = *p;
+	}
+    }
+    *q = '\0';			/* Terminate */
+    return result;
+}
+
+/*	Decode %xx escaped characters.				HTUnEscape()
+ *	------------------------------
+ *
+ *	This function takes a pointer to a string in which some
+ *	characters may have been encoded in %xy form, where xy is
+ *	the ASCII hex code for character 16x+y.
+ *	The string is converted in place, as it will never grow.
+ */
+static char from_hex(int c)
+{
+    return (char) (c >= '0' && c <= '9' ? c - '0'
+		   : c >= 'A' && c <= 'F' ? c - 'A' + 10
+		   : c - 'a' + 10);	/* accept small letters just in case */
+}
+
+char *HTUnEscape(char *str)
+{
+    char *p = str;
+    char *q = str;
+
+    if (!(p && *p))
+	return str;
+
+    while (*p != '\0') {
+	if (*p == HEX_ESCAPE &&
+	/*
+	 * Tests shouldn't be needed, but better safe than sorry.
+	 */
+	    p[1] && p[2] &&
+	    isxdigit(UCH(p[1])) &&
+	    isxdigit(UCH(p[2]))) {
+	    p++;
+	    if (*p)
+		*q = (char) (from_hex(*p++) * 16);
+	    if (*p) {
+		/*
+		 * Careful! FROMASCII() may evaluate its arg more than once!
+		 */
+		/* S/390 -- gil -- 0221 */
+		*q = (char) (*q + from_hex(*p++));
+	    }
+	    *q = FROMASCII(*q);
+	    q++;
+	} else {
+	    *q++ = *p++;
+	}
+    }
+
+    *q = '\0';
+    return str;
+
+}				/* HTUnEscape */
+
+/*	Decode some %xx escaped characters.		      HTUnEscapeSome()
+ *	-----------------------------------			Klaus Weide
+ *							    (kweide@tezcat.com)
+ *	This function takes a pointer to a string in which some
+ *	characters may have been encoded in %xy form, where xy is
+ *	the ASCII hex code for character 16x+y, and a pointer to
+ *	a second string containing one or more characters which
+ *	should be unescaped if escaped in the first string.
+ *	The first string is converted in place, as it will never grow.
+ */
+char *HTUnEscapeSome(char *str,
+		     const char *do_trans)
+{
+    char *p = str;
+    char *q = str;
+    char testcode;
+
+    if (p == NULL || *p == '\0' || do_trans == NULL || *do_trans == '\0')
+	return str;
+
+    while (*p != '\0') {
+	if (*p == HEX_ESCAPE &&
+	    p[1] && p[2] &&	/* tests shouldn't be needed, but.. */
+	    isxdigit(UCH(p[1])) &&
+	    isxdigit(UCH(p[2])) &&
+	    (testcode = (char) FROMASCII(from_hex(p[1]) * 16 +
+					 from_hex(p[2]))) &&	/* %00 no good */
+	    strchr(do_trans, testcode)) {	/* it's one of the ones we want */
+	    *q++ = testcode;
+	    p += 3;
+	} else {
+	    *q++ = *p++;
+	}
+    }
+
+    *q = '\0';
+    return str;
+
+}				/* HTUnEscapeSome */
+/* *INDENT-OFF* */
+static const unsigned char crfc[96] =
+
+/*	Bit 0		xalpha		-- need "quoting"
+ *	Bit 1		xpalpha		-- need \escape if quoted
+ */
+    /*	 0 1 2 3 4 5 6 7 8 9 A B C D E F */
+    {	 1,0,3,0,0,0,0,0,1,1,0,0,1,0,1,0,	/* 2x	!"#$%&'()*+,-./  */
+	 0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,	/* 3x  0123456789:;<=>?  */
+	 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,	/* 4x  @ABCDEFGHIJKLMNO  */
+	 0,0,0,0,0,0,0,0,0,0,0,1,2,1,0,0,	/* 5X  PQRSTUVWXYZ[\]^_  */
+	 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,	/* 6x  `abcdefghijklmno  */
+	 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3 };	/* 7X  pqrstuvwxyz{|}~	DEL */
+/* *INDENT-ON* */
+
+#define ASCII_TAB '\011'
+#define ASCII_LF  '\012'
+#define ASCII_CR  '\015'
+#define ASCII_SPC '\040'
+#define ASCII_BAK '\134'
+
+/*
+ *  Turn a string which is not a RFC 822 token into a quoted-string. - KW
+ *  The "quoted" parameter tells whether we need the beginning/ending quote
+ *  marks.  If not, the caller will provide them -TD
+ */
+void HTMake822Word(char **str,
+		   int quoted)
+{
+    const char *p;
+    char *q;
+    char *result;
+    unsigned char a;
+    unsigned added = 0;
+
+    if (isEmpty(*str)) {
+	StrAllocCopy(*str, quoted ? "\"\"" : "");
+	return;
+    }
+    for (p = *str; *p; p++) {
+	a = UCH(TOASCII(*p));	/* S/390 -- gil -- 0240 */
+	if (a < 32 || a >= 128 ||
+	    ((crfc[a - 32]) & 1)) {
+	    if (!added)
+		added = 2;
+	    if (a >= 160 || a == '\t')
+		continue;
+	    if (a == '\r' || a == '\n')
+		added += 2;
+	    else if ((a & 127) < 32 || ((crfc[a - 32]) & 2))
+		added++;
+	}
+    }
+    if (!added)
+	return;
+    result = AlloCopy(p, *str, added + 1);
+    if (result == NULL)
+	outofmem(__FILE__, "HTMake822Word");
+
+    assert(result != NULL);
+
+    q = result;
+    if (quoted)
+	*q++ = '"';
+    /*
+     * Having converted the character to ASCII, we can't use symbolic
+     * escape codes, since they're in the host character set, which
+     * is not necessarily ASCII.  Thus we use octal escape codes instead.
+     * -- gil (Paul Gilmartin) <pg@sweng.stortek.com>
+     */
+    /* S/390 -- gil -- 0268 */
+    for (p = *str; *p; p++) {
+	a = UCH(TOASCII(*p));
+	if ((a != ASCII_TAB) &&
+	    ((a & 127) < ASCII_SPC ||
+	     (a < 128 && ((crfc[a - 32]) & 2))))
+	    *q++ = ASCII_BAK;
+	*q++ = *p;
+	if (a == ASCII_LF ||
+	    (a == ASCII_CR && (TOASCII(*(p + 1)) != ASCII_LF)))
+	    *q++ = ' ';
+    }
+    if (quoted)
+	*q++ = '"';
+    *q = '\0';			/* Terminate */
+    FREE(*str);
+    *str = result;
+}
diff --git a/WWW/Library/Implementation/HTParse.h b/WWW/Library/Implementation/HTParse.h
new file mode 100644
index 00000000..3f427c41
--- /dev/null
+++ b/WWW/Library/Implementation/HTParse.h
@@ -0,0 +1,202 @@
+/*
+ * $LynxId: HTParse.h,v 1.21 2010/09/24 22:45:23 tom Exp $
+ *				HTParse:  URL parsing in the WWW Library
+ *				HTPARSE
+ *
+ *  This module of the WWW library contains code to parse URLs and various
+ *  related things.
+ *  Implemented by HTParse.c .
+ */
+#ifndef HTPARSE_H
+#define HTPARSE_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ *  The following are flag bits which may be ORed together to form
+ *  a number to give the 'wanted' argument to HTParse.
+ */
+#define PARSE_ACCESS            16
+#define PARSE_HOST               8
+#define PARSE_PATH               4
+#define PARSE_ANCHOR             2
+#define PARSE_PUNCTUATION        1
+#define PARSE_ALL               31
+#define PARSE_ALL_WITHOUT_ANCHOR  (PARSE_ALL ^ PARSE_ANCHOR)
+/*
+ *  Additional flag bits for more details on components already
+ *  covered by the above.  The PARSE_PATH above doesn't really
+ *  strictly refer to the path component in the sense of the URI
+ *  specs only, but rather to that combined with a possible query
+ *  component. - kw
+ */
+#define PARSE_STRICTPATH        32
+#define PARSE_QUERY             64
+/*
+ *  The following are valid mask values.  The terms are the BNF names
+ *  in the URL document.
+ */
+#define URL_XALPHAS     UCH(1)
+#define URL_XPALPHAS    UCH(2)
+#define URL_PATH        UCH(4)
+/*	Strip white space off a string.				HTStrip()
+ *	-------------------------------
+ *
+ * On exit,
+ *	Return value points to first non-white character, or to 0 if none.
+ *	All trailing white space is OVERWRITTEN with zero.
+ */ extern char *HTStrip(char *s);
+
+/*
+ *	Parse a port number
+ *	-------------------
+ *
+ * On entry,
+ *	host            A pointer to hostname possibly followed by port
+ *
+ * On exit,
+ *	returns         A pointer to the ":" before the port
+ *	sets            the port number via the pointer portp.
+ */
+    extern char *HTParsePort(char *host, int *portp);
+
+/*	Parse a Name relative to another name.			HTParse()
+ *	--------------------------------------
+ *
+ *	This returns those parts of a name which are given (and requested)
+ *	substituting bits from the related name where necessary.
+ *
+ * On entry,
+ *	aName		A filename given
+ *      relatedName     A name relative to which aName is to be parsed
+ *      wanted          A mask for the bits which are wanted.
+ *
+ * On exit,
+ *	returns		A pointer to a malloc'd string which MUST BE FREED
+ */
+    extern char *HTParse(const char *aName,
+			 const char *relatedName,
+			 int wanted);
+
+/*	HTParseAnchor(), fast HTParse() specialization
+ *	----------------------------------------------
+ *
+ * On exit,
+ *	returns		A pointer within input string (probably to its end '\0')
+ */
+    extern const char *HTParseAnchor(const char *aName);
+
+/*	Simplify a filename.				HTSimplify()
+ *	--------------------
+ *
+ *  A unix-style file is allowed to contain the seqeunce xxx/../ which may
+ *  be replaced by "" , and the seqeunce "/./" which may be replaced by "/".
+ *  Simplification helps us recognize duplicate filenames.
+ *
+ *	Thus,	/etc/junk/../fred	becomes /etc/fred
+ *		/etc/junk/./fred	becomes	/etc/junk/fred
+ *
+ *      but we should NOT change
+ *		http://fred.xxx.edu/../..
+ *
+ *	or	../../albert.html
+ */
+    extern void HTSimplify(char *filename);
+
+/*	Make Relative Name.					HTRelative()
+ *	-------------------
+ *
+ * This function creates and returns a string which gives an expression of
+ * one address as related to another.  Where there is no relation, an absolute
+ * address is retured.
+ *
+ *  On entry,
+ *	Both names must be absolute, fully qualified names of nodes
+ *	(no anchor bits)
+ *
+ *  On exit,
+ *	The return result points to a newly allocated name which, if
+ *	parsed by HTParse relative to relatedName, will yield aName.
+ *	The caller is responsible for freeing the resulting name later.
+ *
+ */
+    extern char *HTRelative(const char *aName,
+			    const char *relatedName);
+
+/*		Escape undesirable characters using %		HTEscape()
+ *		-------------------------------------
+ *
+ *	This function takes a pointer to a string in which
+ *	some characters may be unacceptable are unescaped.
+ *	It returns a string which has these characters
+ *	represented by a '%' character followed by two hex digits.
+ *
+ *	Unlike HTUnEscape(), this routine returns a malloc'd string.
+ */
+    extern char *HTEscape(const char *str,
+			  unsigned mask);
+
+/*		Escape unsafe characters using %		HTEscapeUnsafe()
+ *		--------------------------------
+ *
+ *	This function takes a pointer to a string in which
+ *	some characters may be that may be unsafe are unescaped.
+ *	It returns a string which has these characters
+ *	represented by a '%' character followed by two hex digits.
+ *
+ *	Unlike HTUnEscape(), this routine returns a malloc'd string.
+ */
+    extern char *HTEscapeUnsafe(const char *str);
+
+/*	Escape undesirable characters using % but space to +.	HTEscapeSP()
+ *	-----------------------------------------------------
+ *
+ *	This function takes a pointer to a string in which
+ *	some characters may be unacceptable are unescaped.
+ *	It returns a string which has these characters
+ *	represented by a '%' character followed by two hex digits,
+ *	except that spaces are converted to '+' instead of %2B.
+ *
+ *	Unlike HTUnEscape(), this routine returns a malloc'd string.
+ */
+    extern char *HTEscapeSP(const char *str,
+			    unsigned mask);
+
+/*	Decode %xx escaped characters.				HTUnEscape()
+ *	------------------------------
+ *
+ *	This function takes a pointer to a string in which some
+ *	characters may have been encoded in %xy form, where xy is
+ *	the acsii hex code for character 16x+y.
+ *	The string is converted in place, as it will never grow.
+ */
+    extern char *HTUnEscape(char *str);
+
+/*	Decode some %xx escaped characters.		      HTUnEscapeSome()
+ *	-----------------------------------			Klaus Weide
+ *							    (kweide@tezcat.com)
+ *	This function takes a pointer to a string in which some
+ *	characters may have been encoded in %xy form, where xy is
+ *	the acsii hex code for character 16x+y, and a pointer to
+ *	a second string containing one or more characters which
+ *	should be unescaped if escaped in the first string.
+ *	The first string is converted in place, as it will never grow.
+ */
+    extern char *HTUnEscapeSome(char *str,
+				const char *do_trans);
+
+/*
+ *  Turn a string which is not a RFC 822 token into a quoted-string. - KW
+ */
+    extern void HTMake822Word(char **str,
+			      int quoted);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTPARSE_H */
diff --git a/WWW/Library/Implementation/HTPlain.c b/WWW/Library/Implementation/HTPlain.c
new file mode 100644
index 00000000..b3e80c6f
--- /dev/null
+++ b/WWW/Library/Implementation/HTPlain.c
@@ -0,0 +1,722 @@
+/*
+ * $LynxId: HTPlain.c,v 1.49 2011/06/11 12:09:07 tom Exp $
+ *
+ *		Plain text object		HTWrite.c
+ *		=================
+ *
+ *	This version of the stream object just writes to a socket.
+ *	The socket is assumed open and left open.
+ *
+ *	Bugs:
+ *		strings written must be less than buffer size.
+ */
+
+#define HTSTREAM_INTERNAL 1
+
+#include <HTUtils.h>
+#include <LYCharVals.h>		/* S/390 -- gil -- 0288 */
+
+#include <HTPlain.h>
+
+#include <HTChunk.h>
+#include <HText.h>
+#include <HTStyle.h>
+#define Lynx_HTML_Handler
+#include <HTML.h>		/* styles[] */
+
+#define BUFFER_SIZE 4096;	/* Tradeoff */
+
+#include <HTMLDTD.h>
+#include <HTCJK.h>
+#include <UCMap.h>
+#include <UCDefs.h>
+#include <UCAux.h>
+
+#include <LYCharSets.h>
+#include <LYStrings.h>
+#include <LYLeaks.h>
+
+static int HTPlain_lastraw = -1;
+static int HTPlain_bs_pending = 0;	/* 1:bs 2:underline 3:underline+bs - kw */
+
+/*		HTML Object
+ *		-----------
+ */
+struct _HTStream {
+    const HTStreamClass *isa;
+    HText *text;
+    /*
+     * The node_anchor UCInfo and handle for the input (PARSER) stage.  - FM
+     */
+    LYUCcharset *inUCI;
+    int inUCLYhndl;
+    /*
+     * The node_anchor UCInfo and handle for the output (HTEXT) stage.  - FM
+     */
+    LYUCcharset *outUCI;
+    int outUCLYhndl;
+    /*
+     * Counter, value, buffer and pointer for UTF-8 handling.  - FM
+     */
+    char utf_count;
+    UCode_t utf_char;
+    char utf_buf[8];
+    char *utf_buf_p;
+    /*
+     * The charset transformation structure.  - FM
+     */
+    UCTransParams T;
+};
+
+static char replace_buf[64];	/* buffer for replacement strings */
+
+static void HTPlain_getChartransInfo(HTStream *me, HTParentAnchor *anchor)
+{
+    if (me->inUCLYhndl < 0) {
+	HTAnchor_copyUCInfoStage(anchor, UCT_STAGE_PARSER, UCT_STAGE_MIME,
+				 UCT_SETBY_PARSER);
+	me->inUCLYhndl = HTAnchor_getUCLYhndl(anchor, UCT_STAGE_PARSER);
+    }
+    if (me->outUCLYhndl < 0) {
+	int chndl = HTAnchor_getUCLYhndl(anchor, UCT_STAGE_HTEXT);
+
+	if (chndl < 0) {
+	    chndl = current_char_set;
+	    HTAnchor_setUCInfoStage(anchor, chndl,
+				    UCT_STAGE_HTEXT, UCT_SETBY_DEFAULT);
+	}
+	HTAnchor_setUCInfoStage(anchor, chndl,
+				UCT_STAGE_HTEXT, UCT_SETBY_DEFAULT);
+	me->outUCLYhndl = HTAnchor_getUCLYhndl(anchor, UCT_STAGE_HTEXT);
+    }
+    me->inUCI = HTAnchor_getUCInfoStage(anchor, UCT_STAGE_PARSER);
+    me->outUCI = HTAnchor_getUCInfoStage(anchor, UCT_STAGE_HTEXT);
+}
+
+/*	Write the buffer out to the socket
+ *	----------------------------------
+ */
+
+/*_________________________________________________________________________
+ *
+ *			A C T I O N	R O U T I N E S
+ */
+
+static void HTPlain_write(HTStream *me, const char *s,
+			  int l);
+
+/*	Character handling
+ *	------------------
+ */
+static void HTPlain_put_character(HTStream *me, int c)
+{
+#ifdef REMOVE_CR_ONLY
+    /*
+     * Throw away \r's.
+     */
+    if (c != '\r') {
+	HText_appendCharacter(me->text, c);
+    }
+#else
+    /*
+     * See HTPlain_write() for explanations of the following code (we've been
+     * called via HTPlain_put_string() to do for each character of a terminated
+     * string what HTPlain_write() does via a while loop for each character in
+     * a stream of given length).  - FM
+     */
+    if ((HTPlain_lastraw == '\r') && c == '\n') {
+	HTPlain_lastraw = -1;
+	return;
+    }
+    if (c == '\b' || c == '_' || HTPlain_bs_pending) {
+	char temp[1];
+
+	temp[0] = (char) c;
+	HTPlain_write(me, temp, 1);
+	return;
+    }
+    HTPlain_lastraw = UCH(c);
+    if (c == '\r') {
+	HText_appendCharacter(me->text, '\n');
+    } else if (TOASCII(UCH(c)) >= 127) {	/* S/390 -- gil -- 0305 */
+	char temp[1];
+
+	temp[0] = (char) c;
+	/*
+	 * For now, don't repeat everything here that has been done below - KW
+	 */
+	HTPlain_write(me, temp, 1);
+    } else if (IS_CJK_TTY) {
+	HText_appendCharacter(me->text, c);
+    } else if (TOASCII(UCH(c)) >= 127 && TOASCII(UCH(c)) < 161 &&
+	       HTPassHighCtrlRaw) {
+	HText_appendCharacter(me->text, c);
+    } else if (UCH(c) == CH_NBSP) {	/* S/390 -- gil -- 0341 */
+	HText_appendCharacter(me->text, ' ');
+    } else if (UCH(c) == CH_SHY) {
+	return;
+    } else if ((UCH(c) >= ' ' && TOASCII(UCH(c)) < 127) ||
+	       c == '\n' || c == '\t') {
+	HText_appendCharacter(me->text, c);
+    } else if (TOASCII(UCH(c)) > 160) {
+	if (!HTPassEightBitRaw &&
+	    !((me->outUCLYhndl == LATIN1) ||
+	      (me->outUCI->enc & (UCT_CP_SUPERSETOF_LAT1)))) {
+	    int len, high, low, i, diff = 1;
+	    const char *name;
+	    UCode_t value = (UCode_t) FROMASCII((TOASCII(UCH(c)) - 160));
+
+	    name = HTMLGetEntityName(value);
+	    len = (int) strlen(name);
+	    for (low = 0, high = (int) HTML_dtd.number_of_entities;
+		 high > low;
+		 diff < 0 ? (low = i + 1) : (high = i)) {
+		/* Binary search */
+		i = (low + (high - low) / 2);
+		diff = AS_ncmp(HTML_dtd.entity_names[i], name, (unsigned) len);
+		if (diff == 0) {
+		    HText_appendText(me->text,
+				     LYCharSets[me->outUCLYhndl][i]);
+		    break;
+		}
+	    }
+	    if (diff) {
+		HText_appendCharacter(me->text, c);
+	    }
+	} else {
+	    HText_appendCharacter(me->text, c);
+	}
+    }
+#endif /* REMOVE_CR_ONLY */
+}
+
+/*	String handling
+ *	---------------
+ *
+ */
+static void HTPlain_put_string(HTStream *me, const char *s)
+{
+#ifdef REMOVE_CR_ONLY
+    HText_appendText(me->text, s);
+#else
+    const char *p;
+
+    if (s == NULL)
+	return;
+    for (p = s; *p; p++) {
+	HTPlain_put_character(me, *p);
+    }
+#endif /* REMOVE_CR_ONLY */
+}
+
+/*
+ *	Entry function for displayed text/plain and WWW_SOURCE strings. - FM
+ *	---------------------------------------------------------------
+ */
+static void HTPlain_write(HTStream *me, const char *s, int l)
+{
+    const char *p;
+    const char *e = s + l;
+    char c;
+    unsigned c_unsign;
+    BOOL chk;
+    UCode_t code, uck = -1;
+    char saved_char_in = '\0';
+
+    for (p = s; p < e; p++) {
+#ifdef REMOVE_CR_ONLY
+	/*
+	 * Append the whole string, but remove any \r's.  - FM
+	 */
+	if (*p != '\r') {
+	    HText_appendCharacter(me->text, *p);
+	}
+#else
+	if (*p == '\b') {
+	    if (HTPlain_lastraw >= UCH(' ') &&
+		HTPlain_lastraw != '\r' && HTPlain_lastraw != '\n') {
+		if (!HTPlain_bs_pending) {
+		    HTPlain_bs_pending = 1;
+		    continue;
+		} else if (HTPlain_bs_pending == 2) {
+		    HTPlain_bs_pending = 3;
+		    continue;
+		}
+	    }
+	    if (HTPlain_bs_pending >= 2)
+		HText_appendCharacter(me->text, '_');
+	    HTPlain_bs_pending = 0;
+	} else if (*p == '_') {
+	    if (!HTPlain_bs_pending) {
+		HTPlain_bs_pending = 2;
+		HTPlain_lastraw = UCH(*p);
+		continue;
+#if 0
+	    } else if (HTPlain_bs_pending != 2) {
+		HTPlain_bs_pending--;	/* 1 -> 0, 3 -> 2 */
+		HTPlain_lastraw = UCH(*p);
+		continue;
+#endif
+	    }
+	}
+
+	/*
+	 * Try to handle lone LFs, CRLFs and lone CRs as newline, and to deal
+	 * with control, ASCII, and 8-bit characters based on best guesses of
+	 * what's appropriate.  - FM
+	 */
+	if ((HTPlain_lastraw == '\r') && *p == '\n') {
+	    HTPlain_lastraw = -1;
+	    continue;
+	}
+
+	if (HTPlain_bs_pending &&
+	    !(UCH(*p) >= ' ' && *p != '\r' && *p != '\n' &&
+	      (HTPlain_lastraw == UCH(*p) ||
+	       HTPlain_lastraw == UCH('_') ||
+	       *p == '_'))) {
+	    if (HTPlain_bs_pending >= 2)
+		HText_appendCharacter(me->text, '_');
+	    HTPlain_bs_pending = 0;
+	} else if (HTPlain_bs_pending == 1) {
+	    HTPlain_bs_pending = 0;
+	    continue;		/* ignore last two of "X\bX" or "X\b_" - kw */
+	} else if (HTPlain_bs_pending == 3) {
+	    if (*p == '_') {
+		HTPlain_bs_pending = 2;
+		continue;	/* ignore last two of "_\b_" - kw */
+	    } else {
+		HTPlain_bs_pending = 0;
+		/* ignore first two of "_\bX" - kw */
+	    }
+	} else if (HTPlain_bs_pending == 2) {
+	    HText_appendCharacter(me->text, '_');
+	    if (*p == '_')
+		continue;	/* keep second of "__" pending - kw */
+	    HTPlain_bs_pending = 0;
+	} else {
+	    HTPlain_bs_pending = 0;
+	}
+	HTPlain_lastraw = UCH(*p);
+	if (*p == '\r') {
+	    HText_appendCharacter(me->text, '\n');
+	    continue;
+	}
+	/*
+	 * Make sure the character is handled as Unicode whenever that's
+	 * appropriate.  - FM
+	 */
+	c = *p;
+	c_unsign = UCH(c);
+	code = (UCode_t) c_unsign;
+	saved_char_in = '\0';
+	/*
+	 * Combine any UTF-8 multibytes into Unicode to check for special
+	 * characters.  - FM
+	 */
+	if (me->T.decode_utf8) {
+	    /*
+	     * Combine UTF-8 into Unicode.  Incomplete characters silently
+	     * ignored.  from Linux kernel's console.c - KW
+	     */
+	    if (TOASCII(c_unsign) > 127) {	/* S/390 -- gil -- 0371 */
+		/*
+		 * We have an octet from a multibyte character.  - FM
+		 */
+		if (me->utf_count > 0 && (c & 0xc0) == 0x80) {
+		    /*
+		     * Adjust the UCode_t value, add the octet to the buffer,
+		     * and decrement the byte count.  - FM
+		     */
+		    me->utf_char = (me->utf_char << 6) | (c & 0x3f);
+		    me->utf_count--;
+		    *(me->utf_buf_p) = c;
+		    (me->utf_buf_p)++;
+		    if (me->utf_count == 0) {
+			/*
+			 * Got a complete multibyte character.
+			 */
+			*(me->utf_buf_p) = '\0';
+			code = me->utf_char;
+			if (code > 0 && code < 256) {
+			    c = FROMASCII((char) code);
+			    c_unsign = UCH(c);
+			}
+		    } else {
+			/*
+			 * Get the next byte.  - FM
+			 */
+			continue;
+		    }
+		} else {
+		    /*
+		     * Start handling a new multibyte character.  - FM
+		     */
+		    me->utf_buf_p[0] = c;
+		    me->utf_buf_p = &me->utf_buf[1];
+		    if ((*p & 0xe0) == 0xc0) {
+			me->utf_count = 1;
+			me->utf_char = (c & 0x1f);
+		    } else if ((*p & 0xf0) == 0xe0) {
+			me->utf_count = 2;
+			me->utf_char = (c & 0x0f);
+		    } else if ((*p & 0xf8) == 0xf0) {
+			me->utf_count = 3;
+			me->utf_char = (c & 0x07);
+		    } else if ((*p & 0xfc) == 0xf8) {
+			me->utf_count = 4;
+			me->utf_char = (c & 0x03);
+		    } else if ((*p & 0xfe) == 0xfc) {
+			me->utf_count = 5;
+			me->utf_char = (c & 0x01);
+		    } else {
+			/*
+			 * We got garbage, so ignore it.  - FM
+			 */
+			me->utf_count = 0;
+			me->utf_buf_p[0] = '\0';
+			me->utf_buf_p = me->utf_buf;
+		    }
+		    /*
+		     * Get the next byte.  - FM
+		     */
+		    continue;
+		}
+	    } else if (me->utf_count > 0) {
+		/*
+		 * Got an ASCII character when expecting UTF-8 multibytes, so
+		 * ignore the buffered multibye characters and fall through
+		 * with the current ASCII character.  - FM
+		 */
+		me->utf_count = 0;
+		me->utf_buf[0] = '\0';
+		me->utf_buf_p = me->utf_buf;
+		code = (UCode_t) c_unsign;
+	    } else {
+		/*
+		 * Got a valid ASCII character, so fall through with it.  - FM
+		 */
+		code = (UCode_t) c_unsign;
+	    }
+	}
+	/*
+	 * Convert characters from non-UTF-8 charsets to Unicode (if
+	 * appropriate).  - FM
+	 */
+	if (!(me->T.decode_utf8 &&
+	      UCH(*p) > 127)) {
+#ifdef NOTDEFINED
+	    if (me->T.strip_raw_char_in)
+		saved_char_in = c;
+#endif /* NOTDEFINED */
+	    if (me->T.trans_to_uni &&
+		(TOASCII(code) >= LYlowest_eightbit[me->inUCLYhndl] ||	/* S/390 -- gil -- 0389 */
+		 (code < ' ' && code != 0 &&
+		  me->T.trans_C0_to_uni))) {
+		/*
+		 * Convert the octet to Unicode.  - FM
+		 */
+		code = (UCode_t) UCTransToUni(c, me->inUCLYhndl);
+		if (code > 0) {
+		    saved_char_in = c;
+		    if (code < 256) {
+			c = FROMASCII((char) code);
+			c_unsign = UCH(c);
+		    }
+		}
+	    } else if (code < 32 && code != 0 &&
+		       me->T.trans_C0_to_uni) {
+		/*
+		 * Quote from SGML.c:
+		 * "This else if may be too ugly to keep.  - KW"
+		 */
+		if (me->T.trans_from_uni &&
+		    (((code = UCTransToUni(c, me->inUCLYhndl)) >= 32) ||
+		     (me->T.transp &&
+		      (code = UCTransToUni(c, me->inUCLYhndl)) > 0))) {
+		    saved_char_in = c;
+		    if (code < 256) {
+			c = FROMASCII((char) code);
+			c_unsign = UCH(c);
+		    }
+		} else {
+		    uck = -1;
+		    if (me->T.transp) {
+			uck = UCTransCharStr(replace_buf, 60, c,
+					     me->inUCLYhndl,
+					     me->inUCLYhndl, NO);
+		    }
+		    if (!me->T.transp || uck < 0) {
+			uck = UCTransCharStr(replace_buf, 60, c,
+					     me->inUCLYhndl,
+					     me->outUCLYhndl, YES);
+		    }
+		    if (uck == 0) {
+			continue;
+		    } else if (uck < 0) {
+			me->utf_buf[0] = '\0';
+		    } else {
+			c = replace_buf[0];
+			if (c && replace_buf[1]) {
+			    HText_appendText(me->text, replace_buf);
+			    continue;
+			}
+		    }
+		    me->utf_buf[0] = '\0';
+		    code = UCH(c);
+		}		/*  Next line end of ugly stuff for C0. - KW */
+	    } else {
+		me->utf_buf[0] = '\0';
+		code = UCH(c);
+	    }
+	}
+	/*
+	 * At this point we have either code in Unicode (and c in latin1 if
+	 * code is in the latin1 range), or code and c will have to be passed
+	 * raw.
+	 */
+
+	/*
+	 * If CJK mode is on, we'll assume the document matches the user's
+	 * display character set, and if not, the user should toggle off
+	 * raw/CJK mode to reload.  - FM
+	 */
+	if (IS_CJK_TTY) {
+	    HText_appendCharacter(me->text, c);
+
+#define PASSHICTRL (me->T.transp || \
+		    code >= LYlowest_eightbit[me->inUCLYhndl])
+#define PASS8859SPECL me->T.pass_160_173_raw
+#define PASSHI8BIT (HTPassEightBitRaw || \
+		    (me->T.do_8bitraw && !me->T.trans_from_uni))
+	    /*
+	     * If HTPassHighCtrlRaw is set (e.g., for KOI8-R) assume the
+	     * document matches and pass 127-160 8-bit characters.  If it
+	     * doesn't match, the user should toggle raw/CJK mode off.  - FM
+	     */
+	} else if (TOASCII(code) >= 127 && TOASCII(code) < 161 &&	/* S/390 -- gil -- 0427 */
+		   PASSHICTRL && PASS8859SPECL) {
+	    HText_appendCharacter(me->text, c);
+	} else if (code == CH_SHY && PASS8859SPECL) {
+	    HText_appendCharacter(me->text, c);
+	    /*
+	     * If neither HTPassHighCtrlRaw nor CJK is set, play it safe and
+	     * treat 160 (nbsp) as an ASCII space (32).  - FM
+	     */
+	} else if (code == CH_NBSP) {
+	    HText_appendCharacter(me->text, ' ');
+	    /*
+	     * If neither HTPassHighCtrlRaw nor CJK is set, play it safe and
+	     * ignore 173 (shy).  - FM
+	     * Now only ignore it for color style, which doesn't handle it
+	     * anyway.  Otherwise pass it on as LY_SOFT_HYPHEN and let HText
+	     * deal with it.  It should be either ignored, or displayed as a
+	     * hyphen if it was indeed at the end of a line.  Well it should. 
+	     * - kw
+	     */
+	} else if (code == CH_SHY) {
+#ifndef USE_COLOR_STYLE
+	    HText_appendCharacter(me->text, LY_SOFT_HYPHEN);
+#endif
+	    continue;
+	    /*
+	     * If we get to here, pass the displayable ASCII characters.  - FM
+	     */
+	} else if ((code >= ' ' && TOASCII(code) < 127) ||
+		   (PASSHI8BIT &&
+		    c >= LYlowest_eightbit[me->outUCLYhndl]) ||
+		   *p == '\n' || *p == '\t') {
+	    HText_appendCharacter(me->text, c);
+	    /*
+	     * Use an ASCII space (32) for ensp, emsp or thinsp.  - FM
+	     */
+	} else if (code == 8194 || code == 8195 || code == 8201) {
+	    HText_appendCharacter(me->text, ' ');
+	    /*
+	     * If we want the raw character, pass it now.  - FM
+	     */
+	} else if (me->T.use_raw_char_in && saved_char_in) {
+	    HText_appendCharacter(me->text, saved_char_in);
+/******************************************************************
+ * I.  LATIN-1 OR UCS2 TO DISPLAY CHARSET
+ ******************************************************************/
+	} else if ((chk = (BOOL) (me->T.trans_from_uni && code >= 160)) &&
+		   (uck = UCTransUniChar(code,
+					 me->outUCLYhndl)) >= ' ' &&	/* S/390 -- gil -- 0464 */
+		   uck < 256) {
+	    CTRACE((tfp, "UCTransUniChar returned 0x%.2" PRI_UCode_t
+		    ":'%c'.\n",
+		    uck, FROMASCII(UCH(uck))));
+	    HText_appendCharacter(me->text, ((char) (uck & 0xff)));
+	} else if (chk &&
+		   (uck == -4 ||
+		    (me->T.repl_translated_C0 && uck > 0 && uck < ' ')) &&	/* S/390 -- gil -- 0481 */
+	    /*
+	     * Not found; look for replacement string.
+	     */
+		   (uck = UCTransUniCharStr(replace_buf, 60, code,
+					    me->outUCLYhndl, 0) >= 0)) {
+	    /*
+	     * No further tests for valididy - assume that whoever defined
+	     * replacement strings knew what she was doing.
+	     */
+	    HText_appendText(me->text, replace_buf);
+	    /*
+	     * If we get to here, and should have translated, translation has
+	     * failed so far.
+	     */
+	} else if (chk && TOASCII(code) > 127 && me->T.output_utf8) {	/* S/390 -- gil -- 0498 */
+	    /*
+	     * We want UTF-8 output, so do it now.  - FM
+	     */
+	    if (*me->utf_buf) {
+		HText_appendText(me->text, me->utf_buf);
+		me->utf_buf[0] = '\0';
+		me->utf_buf_p = me->utf_buf;
+	    } else if (UCConvertUniToUtf8(code, replace_buf)) {
+		HText_appendText(me->text, replace_buf);
+	    } else {
+		/*
+		 * Out of luck, so use the UHHH notation (ugh).  - gil
+		 */
+		/* S/390 -- gil -- 0517 */
+		sprintf(replace_buf, "U%.2lX", (unsigned long) TOASCII(code));
+		HText_appendText(me->text, replace_buf);
+	    }
+#ifdef NOTDEFINED
+	} else if (me->T.strip_raw_char_in &&
+		   UCH(*p) >= 192 &&
+		   UCH(*p) < 255) {
+	    /*
+	     * KOI special:  strip high bit, gives (somewhat) readable ASCII.
+	     */
+	    HText_appendCharacter(me->text, (char) (*p & 0x7f));
+#endif /* NOTDEFINED */
+	    /*
+	     * If we don't actually want the character, make it safe and output
+	     * that now.  - FM
+	     */
+	} else if ((c_unsign > 0 &&
+		    (int) c_unsign < LYlowest_eightbit[me->outUCLYhndl]) ||
+		   (me->T.trans_from_uni && !HTPassEightBitRaw)) {
+	    /*
+	     * If we do not have the "7-bit approximations" as our output
+	     * character set (in which case we did it already) seek a
+	     * translation for that.  Otherwise, or if the translation fails,
+	     * use UHHH notation.  - FM
+	     */
+	    if ((chk = (BOOL) (me->outUCLYhndl !=
+			       UCGetLYhndl_byMIME("us-ascii"))) &&
+		(uck = UCTransUniChar(code,
+				      UCGetLYhndl_byMIME("us-ascii")))
+		>= ' ' && TOASCII(uck) < 127) {		/* S/390 -- gil -- 0535 */
+		/*
+		 * Got an ASCII character (yippey).  - FM
+		 */
+		c = FROMASCII((char) uck);
+		HText_appendCharacter(me->text, c);
+	    } else if ((chk && uck == -4) &&
+		       (uck = UCTransUniCharStr(replace_buf,
+						60, code,
+						UCGetLYhndl_byMIME("us-ascii"),
+						0) >= 0)) {
+		/*
+		 * Got a repacement string (yippey).  - FM
+		 */
+		HText_appendText(me->text, replace_buf);
+	    } else if (code == 8204 || code == 8205) {
+		/*
+		 * Ignore 8204 (zwnj) or 8205 (zwj), if we get to here.  - FM
+		 */
+		CTRACE((tfp, "HTPlain_write: Ignoring '%" PRI_UCode_t "'.\n", code));
+	    } else if (code == 8206 || code == 8207) {
+		/*
+		 * Ignore 8206 (lrm) or 8207 (rlm), if we get to here.  - FM
+		 */
+		CTRACE((tfp, "HTPlain_write: Ignoring '%" PRI_UCode_t "'.\n", code));
+	    } else {
+		/*
+		 * Out of luck, so use the UHHH notation (ugh).  - FM
+		 */
+		/* do not print UHHH for now
+		   sprintf(replace_buf, "U%.2lX", code);
+		   HText_appendText(me->text, replace_buf);
+		 */
+	    }
+	    /*
+	     * If we get to here and have a monobyte character, pass it.  - FM
+	     */
+	} else if (c_unsign != 0 && c_unsign < 256) {
+	    HText_appendCharacter(me->text, c);
+	}
+#endif /* REMOVE_CR_ONLY */
+    }
+}
+
+/*	Free an HTML object
+ *	-------------------
+ *
+ *	Note that the SGML parsing context is freed, but the created object is
+ *	not, as it takes on an existence of its own unless explicitly freed.
+ */
+static void HTPlain_free(HTStream *me)
+{
+    if (HTPlain_bs_pending >= 2)
+	HText_appendCharacter(me->text, '_');
+    FREE(me);
+}
+
+/*	End writing
+*/
+static void HTPlain_abort(HTStream *me, HTError e GCC_UNUSED)
+{
+    HTPlain_free(me);
+}
+
+/*		Structured Object Class
+ *		-----------------------
+ */
+static const HTStreamClass HTPlain =
+{
+    "PlainPresenter",
+    HTPlain_free,
+    HTPlain_abort,
+    HTPlain_put_character, HTPlain_put_string, HTPlain_write,
+};
+
+/*		New object
+ *		----------
+ */
+HTStream *HTPlainPresent(HTPresentation *pres GCC_UNUSED, HTParentAnchor *anchor,
+			 HTStream *sink GCC_UNUSED)
+{
+
+    HTStream *me = (HTStream *) malloc(sizeof(*me));
+
+    if (me == NULL)
+	outofmem(__FILE__, "HTPlain_new");
+
+    assert(me != NULL);
+
+    me->isa = &HTPlain;
+
+    HTPlain_lastraw = -1;
+
+    me->utf_count = 0;
+    me->utf_char = 0;
+    me->utf_buf[0] = me->utf_buf[6] = me->utf_buf[7] = '\0';
+    me->utf_buf_p = me->utf_buf;
+    me->outUCLYhndl = HTAnchor_getUCLYhndl(anchor, UCT_STAGE_HTEXT);
+    me->inUCLYhndl = HTAnchor_getUCLYhndl(anchor, UCT_STAGE_PARSER);
+    HTPlain_getChartransInfo(me, anchor);
+    UCSetTransParams(&me->T,
+		     me->inUCLYhndl, me->inUCI,
+		     me->outUCLYhndl,
+		     HTAnchor_getUCInfoStage(anchor, UCT_STAGE_HTEXT));
+
+    me->text = HText_new(anchor);
+    HText_setStyle(me->text, LYstyles(HTML_XMP));
+    HText_beginAppend(me->text);
+
+    return (HTStream *) me;
+}
diff --git a/WWW/Library/Implementation/HTPlain.h b/WWW/Library/Implementation/HTPlain.h
new file mode 100644
index 00000000..24fd6691
--- /dev/null
+++ b/WWW/Library/Implementation/HTPlain.h
@@ -0,0 +1,21 @@
+/*                  /Net/dxcern/userd/timbl/hypertext/WWW/Library/Implementation/HTPlain.html
+                                    PLAIN TEXT OBJECT
+                                             
+ */
+#ifndef HTPLAIN_H
+#define HTPLAIN_H
+
+#include <HTStream.h>
+#include <HTAnchor.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern HTStream *HTPlainPresent(HTPresentation *pres,
+				    HTParentAnchor *anchor,
+				    HTStream *sink);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTPLAIN_H */
diff --git a/WWW/Library/Implementation/HTRules.c b/WWW/Library/Implementation/HTRules.c
new file mode 100644
index 00000000..35b36719
--- /dev/null
+++ b/WWW/Library/Implementation/HTRules.c
@@ -0,0 +1,705 @@
+/*
+ * $LynxId: HTRules.c,v 1.42 2010/06/17 21:33:35 tom Exp $
+ *
+ *	Configuration manager for Hypertext Daemon		HTRules.c
+ *	==========================================
+ *
+ *
+ * History:
+ *	 3 Jun 91	Written TBL
+ *	10 Aug 91	Authorisation added after Daniel Martin (pass, fail)
+ *			Rule order in file changed
+ *			Comments allowed with # on 1st char of rule line
+ *	17 Jun 92	Bug fix: pass and fail failed if didn't contain '*' TBL
+ *	 1 Sep 93	Bug fix: no memory check - Nathan Torkington
+ *			BYTE_ADDRESSING removed - Arthur Secret
+ *	11 Sep 93  MD	Changed %i into %d in debug printf.
+ *			VMS does not recognize %i.
+ *			Bug Fix: in case of PASS, only one parameter to printf.
+ *	19 Sep 93  AL	Added Access Authorization stuff.
+ *	 1 Nov 93  AL	Added htbin.
+ *	25 May 99  KW	Added redirect for lynx.
+ *
+ */
+
+#include <HTUtils.h>
+
+/* (c) CERN WorldWideWeb project 1990,91. See Copyright.html for details */
+#include <HTRules.h>
+
+#include <HTFile.h>
+#include <LYLeaks.h>
+#include <HTAAProt.h>
+
+#define LINE_LENGTH 256
+
+typedef struct _rule {
+    struct _rule *next;
+    HTRuleOp op;
+    char *pattern;
+    char *equiv;
+    char *condition_op;		/* as strings - may be inefficient, */
+    char *condition;		/* but this is not for a server - kw */
+} rule;
+
+#ifndef NO_RULES
+
+#include <HTTP.h>		/* for redirecting_url, indirectly HTPermitRedir - kw */
+#include <LYGlobalDefs.h>	/* for LYUserSpecifiedURL - kw */
+#include <LYStrings.h>		/* for LYscanFloat */
+#include <LYUtils.h>		/* for LYFixCursesOn - kw */
+#include <HTAlert.h>
+
+/*	Global variables
+ *	----------------
+ */
+char *HTBinDir = NULL;		/* Physical /htbin directory path.      */
+
+				/* In future this should not be global. */
+char *HTSearchScript = NULL;	/* Search script name.          */
+
+/*	Module-wide variables
+ *	---------------------
+ */
+
+static rule *rules = 0;		/* Pointer to first on list */
+
+#ifndef PUT_ON_HEAD
+static rule *rule_tail = 0;	/* Pointer to last on list */
+#endif
+
+/*	Add rule to the list					HTAddRule()
+ *	--------------------
+ *
+ *  On entry,
+ *	pattern		points to 0-terminated string containing a single "*"
+ *	equiv		points to the equivalent string with * for the
+ *			place where the text matched by * goes.
+ *  On exit,
+ *	returns		0 if success, -1 if error.
+ */
+
+int HTAddRule(HTRuleOp op, const char *pattern,
+	      const char *equiv,
+	      const char *cond_op,
+	      const char *cond)
+{				/* BYTE_ADDRESSING removed and memory check - AS - 1 Sep 93 */
+    rule *temp;
+    char *pPattern = NULL;
+
+    temp = typecalloc(rule);
+    if (temp == NULL)
+	outofmem(__FILE__, "HTAddRule");
+
+    assert(temp != NULL);
+
+    if (equiv) {		/* Two operands */
+	char *pEquiv = NULL;
+
+	StrAllocCopy(pEquiv, equiv);
+	temp->equiv = pEquiv;
+    } else {
+	temp->equiv = 0;
+    }
+    if (cond_op) {
+	StrAllocCopy(temp->condition_op, cond_op);
+	StrAllocCopy(temp->condition, cond);
+    }
+    StrAllocCopy(pPattern, pattern);
+    temp->pattern = pPattern;
+    temp->op = op;
+
+    if (equiv) {
+	CTRACE((tfp, "Rule: For `%s' op %d `%s'", pattern, (int) op, equiv));
+    } else {
+	CTRACE((tfp, "Rule: For `%s' op %d", pattern, (int) op));
+    }
+    if (cond_op) {
+	CTRACE((tfp, "\t%s %s\n", cond_op, NONNULL(cond)));
+    } else {
+	CTRACE((tfp, "\n"));
+    }
+
+    if (!rules) {
+#ifdef LY_FIND_LEAKS
+	atexit(HTClearRules);
+#endif
+    }
+#ifdef PUT_ON_HEAD
+    temp->next = rules;
+    rules = temp;
+#else
+    temp->next = 0;
+    if (rule_tail)
+	rule_tail->next = temp;
+    else
+	rules = temp;
+    rule_tail = temp;
+#endif
+
+    return 0;
+}
+
+/*	Clear all rules						HTClearRules()
+ *	---------------
+ *
+ * On exit,
+ *	There are no rules
+ *
+ * See also
+ *	HTAddRule()
+ */
+void HTClearRules(void)
+{
+    while (rules) {
+	rule *temp = rules;
+
+	rules = temp->next;
+	FREE(temp->pattern);
+	FREE(temp->equiv);
+	FREE(temp->condition_op);
+	FREE(temp->condition);
+	FREE(temp);
+    }
+#ifndef PUT_ON_HEAD
+    rule_tail = 0;
+#endif
+}
+
+static BOOL rule_cond_ok(rule * r)
+{
+    BOOL result;
+
+    if (!r->condition_op)
+	return YES;
+    if (strcmp(r->condition_op, "if") && strcmp(r->condition_op, "unless")) {
+	CTRACE((tfp, "....... rule ignored, unrecognized `%s'!\n",
+		r->condition_op));
+	return NO;
+    }
+    if (!strcmp(r->condition, "redirected"))
+	result = (BOOL) (redirection_attempts > 0);
+    else if (!strcmp(r->condition, "userspec"))
+	result = LYUserSpecifiedURL;
+    else {
+	CTRACE((tfp, "....... rule ignored, unrecognized `%s %s'!\n",
+		r->condition_op, NONNULL(r->condition)));
+	return NO;
+    }
+    if (!strcmp(r->condition_op, "if"))
+	return result;
+    else
+	return (BOOL) (!result);
+
+}
+
+/*	Translate by rules					HTTranslate()
+ *	------------------
+ *
+ *	The most recently defined rules are applied first.
+ *
+ * On entry,
+ *	required	points to a string whose equivalent value is needed
+ * On exit,
+ *	returns		the address of the equivalent string allocated from
+ *			the heap which the CALLER MUST FREE. If no translation
+ *			occurred, then it is a copy of the original.
+ * NEW FEATURES:
+ *			When a "protect" or "defprot" rule is matched,
+ *			a call to HTAA_setCurrentProtection() or
+ *			HTAA_setDefaultProtection() is made to notify
+ *			the Access Authorization module that the file is
+ *			protected, and so it knows how to handle it.
+ *								-- AL
+ */
+char *HTTranslate(const char *required)
+{
+    rule *r;
+    char *current = NULL;
+    char *msgtmp = NULL;
+    const char *pMsg;
+    int proxy_none_flag = 0;
+    int permitredir_flag = 0;
+
+    StrAllocCopy(current, required);
+
+    HTAA_clearProtections();	/* Reset from previous call -- AL */
+
+    for (r = rules; r; r = r->next) {
+	char *p = r->pattern;
+	int m = 0;		/* Number of characters matched against wildcard */
+	const char *q = current;
+
+	for (; *p && *q; p++, q++) {	/* Find first mismatch */
+	    if (*p != *q)
+		break;
+	}
+
+	if (*p == '*') {	/* Match up to wildcard */
+	    m = (int) strlen(q) - (int) strlen(p + 1);	/* Amount to match to wildcard */
+	    if (m < 0)
+		continue;	/* tail is too short to match */
+	    if (0 != strcmp(q + m, p + 1))
+		continue;	/* Tail mismatch */
+	} else
+	    /* Not wildcard */ if (*p != *q)
+	    continue;		/* plain mismatch: go to next rule */
+
+	if (!rule_cond_ok(r))	/* check condition, next rule if false - kw */
+	    continue;
+
+	switch (r->op) {	/* Perform operation */
+
+	case HT_DefProt:
+	case HT_Protect:
+#ifdef ACCESS_AUTH
+	    {
+		char *local_copy = NULL;
+		char *p2;
+		char *eff_ids = NULL;
+		char *prot_file = NULL;
+
+		CTRACE((tfp, "HTRule: `%s' matched %s %s: `%s'\n",
+			current,
+			(r->op == HT_Protect ? "Protect" : "DefProt"),
+			"rule, setup",
+			(r->equiv ? r->equiv :
+			 (r->op == HT_Protect ? "DEFAULT" : "NULL!!"))));
+
+		if (r->equiv) {
+		    StrAllocCopy(local_copy, r->equiv);
+		    p2 = local_copy;
+		    prot_file = HTNextField(&p2);
+		    eff_ids = HTNextField(&p2);
+		}
+
+		if (r->op == HT_Protect)
+		    HTAA_setCurrentProtection(current, prot_file, eff_ids);
+		else
+		    HTAA_setDefaultProtection(current, prot_file, eff_ids);
+
+		FREE(local_copy);
+
+		/* continue translating rules */
+	    }
+#endif /* ACCESS_AUTH */
+	    break;
+
+	case HT_UserMsg:	/* Produce message immediately */
+	    LYFixCursesOn("show rule message:");
+	    HTUserMsg2((r->equiv ? r->equiv : "Rule: %s"), current);
+	    break;
+	case HT_InfoMsg:	/* Produce messages immediately */
+	case HT_Progress:
+	case HT_Alert:
+	    LYFixCursesOn("show rule message:");	/* and fall through */
+	case HT_AlwaysAlert:
+	    pMsg = r->equiv ? r->equiv :
+		(r->op == HT_AlwaysAlert) ? "%s" : "Rule: %s";
+	    if (strchr(pMsg, '%')) {
+		HTSprintf0(&msgtmp, pMsg, current);
+		pMsg = msgtmp;
+	    }
+	    switch (r->op) {	/* Actually produce message */
+	    case HT_InfoMsg:
+		HTInfoMsg(pMsg);
+		break;
+	    case HT_Progress:
+		HTProgress(pMsg);
+		break;
+	    case HT_Alert:
+		HTAlert(pMsg);
+		break;
+	    case HT_AlwaysAlert:
+		HTAlwaysAlert("Rule alert:", pMsg);
+		break;
+	    default:
+		break;
+	    }
+	    FREE(msgtmp);
+	    break;
+
+	case HT_PermitRedir:	/* Set special flag */
+	    permitredir_flag = 1;
+	    CTRACE((tfp, "HTRule: Mark for redirection permitted\n"));
+	    break;
+
+	case HT_Pass:		/* Authorised */
+	    if (!r->equiv) {
+		if (proxy_none_flag) {
+		    char *temp = NULL;
+
+		    StrAllocCopy(temp, "NoProxy=");
+		    StrAllocCat(temp, current);
+		    FREE(current);
+		    current = temp;
+		}
+		CTRACE((tfp, "HTRule: Pass `%s'\n", current));
+		return current;
+	    }
+	    /* Else fall through ...to map and pass */
+
+	case HT_Map:
+	case HT_Redirect:
+	case HT_RedirectPerm:
+	    if (*p == *q) {	/* End of both strings, no wildcard */
+		CTRACE((tfp, "For `%s' using `%s'\n", current, r->equiv));
+		StrAllocCopy(current, r->equiv);	/* use entire translation */
+	    } else {
+		char *ins = strchr(r->equiv, '*');	/* Insertion point */
+
+		if (ins) {	/* Consistent rule!!! */
+		    char *temp = NULL;
+
+		    HTSprintf0(&temp, "%.*s%.*s%s",
+			       (int) (ins - r->equiv),
+			       r->equiv,
+			       m,
+			       q,
+			       ins + 1);
+		    CTRACE((tfp, "For `%s' using `%s'\n",
+			    current, temp));
+		    FREE(current);
+		    current = temp;	/* Use this */
+
+		} else {	/* No insertion point */
+		    char *temp = NULL;
+
+		    StrAllocCopy(temp, r->equiv);
+		    CTRACE((tfp, "For `%s' using `%s'\n",
+			    current, temp));
+		    FREE(current);
+		    current = temp;	/* Use this */
+		}		/* If no insertion point exists */
+	    }
+	    if (r->op == HT_Pass) {
+		if (proxy_none_flag) {
+		    char *temp = NULL;
+
+		    StrAllocCopy(temp, "NoProxy=");
+		    StrAllocCat(temp, current);
+		    FREE(current);
+		    current = temp;
+		}
+		CTRACE((tfp, "HTRule: ...and pass `%s'\n",
+			current));
+		return current;
+	    } else if (r->op == HT_Redirect) {
+		CTRACE((tfp, "HTRule: ...and redirect to `%s'\n",
+			current));
+		redirecting_url = current;
+		HTPermitRedir = (BOOL) (permitredir_flag == 1);
+		return (char *) 0;
+	    } else if (r->op == HT_RedirectPerm) {
+		CTRACE((tfp, "HTRule: ...and redirect like 301 to `%s'\n",
+			current));
+		redirecting_url = current;
+		permanent_redirection = TRUE;
+		HTPermitRedir = (BOOL) (permitredir_flag == 1);
+		return (char *) 0;
+	    }
+	    break;
+
+	case HT_UseProxy:
+	    if (r->equiv && 0 == strcasecomp(r->equiv, "none")) {
+		CTRACE((tfp, "For `%s' will not use proxy\n", current));
+		proxy_none_flag = 1;
+	    } else if (proxy_none_flag) {
+		CTRACE((tfp, "For `%s' proxy server ignored: %s\n",
+			current,
+			NONNULL(r->equiv)));
+	    } else {
+		char *temp = NULL;
+
+		StrAllocCopy(temp, "Proxied=");
+		StrAllocCat(temp, r->equiv);
+		StrAllocCat(temp, current);
+		CTRACE((tfp, "HTRule: proxy server found: %s\n",
+			NONNULL(r->equiv)));
+		FREE(current);
+		return temp;
+	    }
+	    break;
+
+	case HT_Invalid:
+	case HT_Fail:		/* Unauthorised */
+	    CTRACE((tfp, "HTRule: *** FAIL `%s'\n", current));
+	    FREE(current);
+	    return (char *) 0;
+	}			/* if tail matches ... switch operation */
+
+    }				/* loop over rules */
+
+    if (proxy_none_flag) {
+	char *temp = NULL;
+
+	StrAllocCopy(temp, "NoProxy=");
+	StrAllocCat(temp, current);
+	FREE(current);
+	return temp;
+    }
+
+    return current;
+}
+
+/*	Load one line of configuration
+ *	------------------------------
+ *
+ *	Call this, for example, to load a X resource with config info.
+ *
+ * returns	0 OK, < 0 syntax error.
+ */
+int HTSetConfiguration(char *config)
+{
+    HTRuleOp op;
+    char *line = NULL;
+    char *pointer = line;
+    char *word1;
+    const char *word2;
+    const char *word3;
+    const char *cond_op = NULL;
+    const char *cond = NULL;
+    float quality, secs, secs_per_byte;
+    long maxbytes;
+    int status;
+
+    StrAllocCopy(line, config);
+    {
+	char *p = line;
+
+	/* Chop off comments */
+	while ((p = strchr(p, '#'))) {
+	    if (p == line || isspace(UCH(*(p - 1)))) {
+		*p = 0;
+		break;
+	    } else {
+		p++;
+	    }
+	}
+    }
+    pointer = line;
+    word1 = HTNextField(&pointer);
+    if (!word1) {
+	FREE(line);
+	return 0;
+    };				/* Comment only or blank */
+
+    word2 = HTNextField(&pointer);
+
+    if (0 == strcasecomp(word1, "defprot") ||
+	0 == strcasecomp(word1, "protect"))
+	word3 = pointer;	/* The rest of the line to be parsed by AA module */
+    else
+	word3 = HTNextField(&pointer);	/* Just the next word */
+
+    if (!word2) {
+	fprintf(stderr, "HTRule: %s %s\n", RULE_NEEDS_DATA, line);
+	FREE(line);
+	return -2;		/*syntax error */
+    }
+
+    if (0 == strcasecomp(word1, "suffix")) {
+	char *encoding = HTNextField(&pointer);
+
+	status = 0;
+	if (pointer)
+	    status = LYscanFloat(pointer, &quality);
+
+	HTSetSuffix(word2, word3,
+		    encoding ? encoding : "binary",
+		    status >= 1 ? quality : (float) 1.0);
+
+    } else if (0 == strcasecomp(word1, "presentation")) {
+	status = 0;
+	if (pointer) {
+	    const char *temp = pointer;
+
+	    if (LYscanFloat2(&temp, &quality)) {
+		status = 1;
+		if (LYscanFloat2(&temp, &secs)) {
+		    status = 2;
+		    if (LYscanFloat2(&temp, &secs_per_byte)) {
+			status = 3;
+			if (sscanf(temp, "%ld", &maxbytes)) {
+			    status = 4;
+			}
+		    }
+		}
+	    }
+	}
+
+	HTSetPresentation(word2, word3, NULL,
+			  status >= 1 ? quality : 1.0,
+			  status >= 2 ? secs : 0.0,
+			  status >= 3 ? secs_per_byte : 0.0,
+			  status >= 4 ? maxbytes : 0,
+			  mediaCFG);
+
+    } else if (0 == strncasecomp(word1, "htbin", 5) ||
+	       0 == strncasecomp(word1, "bindir", 6)) {
+	StrAllocCopy(HTBinDir, word2);	/* Physical /htbin location */
+
+    } else if (0 == strncasecomp(word1, "search", 6)) {
+	StrAllocCopy(HTSearchScript, word2);	/* Search script name */
+
+    } else {
+	op = 0 == strcasecomp(word1, "map") ? HT_Map
+	    : 0 == strcasecomp(word1, "pass") ? HT_Pass
+	    : 0 == strcasecomp(word1, "fail") ? HT_Fail
+	    : 0 == strcasecomp(word1, "redirect") ? HT_Redirect
+	    : 0 == strncasecomp(word1, "redirectperm", 12) ? HT_RedirectPerm
+	    : 0 == strcasecomp(word1, "redirecttemp") ? HT_Redirect
+	    : 0 == strcasecomp(word1, "permitredirection") ? HT_PermitRedir
+	    : 0 == strcasecomp(word1, "useproxy") ? HT_UseProxy
+	    : 0 == strcasecomp(word1, "alert") ? HT_Alert
+	    : 0 == strcasecomp(word1, "alwaysalert") ? HT_AlwaysAlert
+	    : 0 == strcasecomp(word1, "progress") ? HT_Progress
+	    : 0 == strcasecomp(word1, "usermsg") ? HT_UserMsg
+	    : 0 == strcasecomp(word1, "infomsg") ? HT_InfoMsg
+	    : 0 == strcasecomp(word1, "defprot") ? HT_DefProt
+	    : 0 == strcasecomp(word1, "protect") ? HT_Protect
+	    : HT_Invalid;
+	if (op == HT_Invalid) {
+	    fprintf(stderr, "HTRule: %s '%s'\n", RULE_INCORRECT, config);
+	} else {
+	    switch (op) {
+	    case HT_Fail:	/* never a or other 2nd parameter */
+	    case HT_PermitRedir:
+		cond_op = word3;
+		if (cond_op && *cond_op) {
+		    word3 = NULL;
+		    cond = HTNextField(&pointer);
+		}
+		break;
+
+	    case HT_Pass:	/* possibly a URL2 */
+		if (word3 && (!strcasecomp(word3, "if") ||
+			      !strcasecomp(word3, "unless"))) {
+		    cond_op = word3;
+		    word3 = NULL;
+		    cond = HTNextField(&pointer);
+		    break;
+		}
+		/* else fall through */
+	    case HT_Map:	/* always a URL2 (or other 2nd parameter) */
+	    case HT_Redirect:
+	    case HT_RedirectPerm:
+	    case HT_UseProxy:
+		cond_op = HTNextField(&pointer);
+		/* check for extra status word in "Redirect" */
+		if (op == HT_Redirect && 0 == strcasecomp(word1, "redirect") &&
+		    cond_op &&
+		    strcasecomp(cond_op, "if") &&
+		    strcasecomp(cond_op, "unless")) {
+		    if (0 == strcmp(word2, "301") ||
+			0 == strcasecomp(word2, "permanent")) {
+			op = HT_RedirectPerm;
+		    } else if (!(0 == strcmp(word2, "302") ||
+				 0 == strcmp(word2, "303") ||
+				 0 == strcasecomp(word2, "temp") ||
+				 0 == strcasecomp(word2, "seeother"))) {
+			CTRACE((tfp, "Rule: Ignoring `%s' in Redirect\n", word2));
+		    }
+		    word2 = word3;
+		    word3 = cond_op;	/* cond_op isn't condition op after all */
+		    cond_op = HTNextField(&pointer);
+		}
+		if (cond_op && *cond_op)
+		    cond = HTNextField(&pointer);
+		break;
+
+	    case HT_Progress:
+	    case HT_InfoMsg:
+	    case HT_UserMsg:
+	    case HT_Alert:
+	    case HT_AlwaysAlert:
+		cond_op = HTNextField(&pointer);
+		if (cond_op && *cond_op)
+		    cond = HTNextField(&pointer);
+		if (word3) {	/* Fix string with too may %s - kw */
+		    const char *cp = word3;
+		    char *cp1, *cp2;
+
+		    while ((cp1 = strchr(cp, '%'))) {
+			if (cp1[1] == '\0') {
+			    *cp1 = '\0';
+			    break;
+			} else if (cp1[1] == '%') {
+			    cp = cp1 + 2;
+			    continue;
+			} else
+			    while ((cp2 = strchr(cp1 + 2, '%'))) {
+				if (cp2[1] == '\0') {
+				    *cp2 = '\0';
+				    break;
+				} else if (cp2[1] == '%') {
+				    cp1 = cp2;
+				} else {
+				    *cp2 = '?';		/* replace bad % */
+				    cp1 = cp2;
+				}
+			    }
+			break;
+		    }
+		}
+		break;
+
+	    default:
+		break;
+	    }
+	    if (cond_op && cond && *cond && !strcasecomp(cond_op, "unless")) {
+		cond_op = "unless";
+	    } else if (cond_op && cond && *cond &&
+		       !strcasecomp(cond_op, "if")) {
+		cond_op = "if";
+	    } else if (cond_op || cond) {
+		fprintf(stderr, "HTRule: %s '%s'\n", RULE_INCORRECT, config);
+		FREE(line);	/* syntax error, condition is a mess - kw */
+		return -2;	/* NB unrecognized cond passes here - kw */
+	    }
+	    if (cond && !strncasecomp(cond, "redirected", (int) strlen(cond))) {
+		cond = "redirected";	/* recognized, canonical case - kw */
+	    } else if (cond && strlen(cond) >= 8 &&
+		       !strncasecomp(cond, "userspecified", (int) strlen(cond))) {
+		cond = "userspec";	/* also allow abbreviation - kw */
+	    }
+	    HTAddRule(op, word2, word3, cond_op, cond);
+	}
+    }
+    FREE(line);
+    return 0;
+}
+
+/*	Load the rules from a file				HTLoadRules()
+ *	--------------------------
+ *
+ * On entry,
+ *	Rules can be in any state
+ * On exit,
+ *	Any existing rules will have been kept.
+ *	Any new rules will have been loaded.
+ *	Returns		0 if no error, 0 if error!
+ *
+ * Bugs:
+ *	The strings may not contain spaces.
+ */
+
+int HTLoadRules(const char *filename)
+{
+    FILE *fp = fopen(filename, TXT_R);
+    char line[LINE_LENGTH + 1];
+
+    if (!fp) {
+	CTRACE((tfp, "HTRules: Can't open rules file %s\n", filename));
+	return -1;		/* File open error */
+    }
+    for (;;) {
+	if (!fgets(line, LINE_LENGTH + 1, fp))
+	    break;		/* EOF or error */
+	(void) HTSetConfiguration(line);
+    }
+    fclose(fp);
+    return 0;			/* No error or syntax errors ignored */
+}
+
+#endif /* NO_RULES */
diff --git a/WWW/Library/Implementation/HTRules.h b/WWW/Library/Implementation/HTRules.h
new file mode 100644
index 00000000..fa5130e5
--- /dev/null
+++ b/WWW/Library/Implementation/HTRules.h
@@ -0,0 +1,169 @@
+/*                                             Configuration Manager for libwww
+ *                            CONFIGURATION MANAGER
+ *
+ * Author Tim Berners-Lee/CERN.  Public domain.  Please mail changes to
+ * timbl@info.cern.ch.
+ *
+ * The configuration information loaded includes tables (file suffixes,
+ * presentation methods) in other modules.  The most likely routines needed by
+ * developers will be:
+ *
+ * HTSetConfiguration	to load configuration information.
+ *
+ * HTLoadRules		to load a whole file of configuration information
+ *
+ * HTTranslate		to translate a URL using the rule table.
+ *
+ */
+#ifndef HTRULE_H
+#define HTRULE_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    typedef enum {
+	HT_Invalid,
+	HT_Map,
+	HT_Pass,
+	HT_Fail,
+	HT_DefProt,
+	HT_Protect,
+	HT_Progress,
+	HT_InfoMsg,
+	HT_UserMsg,
+	HT_Alert,
+	HT_AlwaysAlert,
+	HT_Redirect,
+	HT_RedirectPerm,
+	HT_PermitRedir,
+	HT_UseProxy
+    } HTRuleOp;
+
+#ifndef NO_RULES
+
+/*
+
+Server Side Script Execution
+
+   If a URL starts with /htbin/ it is understood to mean a script execution request on
+   server.  This feature needs to be turned on by setting HTBinDir by the htbin rule.
+   Index searching is enabled by setting HTSearchScript into the name of script in BinDir
+   doing the actual search by search rule (BinDir must also be set in this case, of
+   course).
+
+ */
+
+    extern char *HTBinDir;	/* Physical /htbin location */
+    extern char *HTSearchScript;	/* Search script name */
+
+/*
+
+HTAddRule:  Add rule to the list
+
+  ON ENTRY,
+
+  pattern                points to 0-terminated string containing a single "*"
+
+  equiv                  points to the equivalent string with * for the place where the
+                         text matched by * goes; or to other 2nd parameter
+                         meaning depends on op).			 
+
+  cond_op,               additional condition for applying rule; cond_op should
+  cond                   be either NULL (no additional condition), or one of
+                         the strings "if" or "unless"; if cond_op is not NULL,
+                         cond should point to a recognized condition keyword
+                         (as a string) such as "userspec", "redirected".
+
+  ON EXIT,
+
+  returns                0 if success, -1 if error.
+
+   Note that if BYTE_ADDRESSING is set, the three blocks required are allocated and
+   deallocated as one.  This will save time and storage, when malloc's allocation units are
+   large.
+
+ */
+    extern int HTAddRule(HTRuleOp op, const char *pattern,
+			 const char *equiv,
+			 const char *cond_op,
+			 const char *cond);
+
+/*
+
+HTClearRules: Clear all rules
+
+  ON EXIT,
+
+  Rule file               There are no rules
+
+ */
+
+    extern void HTClearRules(void);
+
+/*
+
+HTTranslate: Translate by rules
+
+ */
+
+/*
+
+  ON ENTRY,
+
+  required                points to a string whose equivalent value is neeed
+
+  ON EXIT,
+
+  returns                 the address of the equivalent string allocated from the heap
+                         which the CALLER MUST FREE. If no translation occurred, then it is
+                         a copy of the original.
+
+ */
+    extern char *HTTranslate(const char *required);
+
+/*
+
+HTSetConfiguration:  Load one line of configuration information
+
+  ON ENTRY,
+
+  config                  is a string in the syntax of a rule file line.
+
+   This routine may be used for loading configuration information from sources other than
+   the  rule file, for example INI files for X resources.
+
+ */
+    extern int HTSetConfiguration(char *config);
+
+/*
+
+HtLoadRules:  Load the rules from a file
+
+  ON ENTRY,
+
+  Rule table              Rules can be in any state
+
+  ON EXIT,
+
+  Rule table              Any existing rules will have been kept.  Any new rules will have
+                         been loaded on top, so as to be tried first.
+
+  Returns                 0 if no error.
+
+ */
+
+    extern int HTLoadRules(const char *filename);
+
+/*
+
+ */
+
+#endif				/* NO_RULES */
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTRULE_H */
diff --git a/WWW/Library/Implementation/HTStream.h b/WWW/Library/Implementation/HTStream.h
new file mode 100644
index 00000000..a7532666
--- /dev/null
+++ b/WWW/Library/Implementation/HTStream.h
@@ -0,0 +1,69 @@
+/*
+ * $LynxId: HTStream.h,v 1.16 2011/06/11 12:08:40 tom Exp $
+ *
+ *                                                      The Stream class definition -- libwww
+                                 STREAM OBJECT DEFINITION
+
+   A Stream object is something which accepts a stream of text.
+
+   The creation methods will vary on the type of Stream Object.  All creation
+   methods return a pointer to the stream type below.
+
+   As you can see, but the methods used to write to the stream and close it are
+   pointed to be the object itself.
+
+ */
+#ifndef HTSTREAM_H
+#define HTSTREAM_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    typedef struct _HTStream HTStream;
+
+/*
+
+   These are the common methods of all streams.  They should be
+   self-explanatory.
+
+ */
+    typedef struct _HTStreamClass {
+
+	const char *name;	/* Just for diagnostics */
+
+	void (*_free) (HTStream *me);
+
+	void (*_abort) (HTStream *me, HTError e);
+
+	void (*put_character) (HTStream *me, int ch);
+
+	void (*put_string) (HTStream *me, const char *str);
+
+	void (*put_block) (HTStream *me, const char *str, int len);
+
+    } HTStreamClass;
+
+#ifndef HTSTREAM_INTERNAL
+    struct _HTStream {
+	HTStreamClass *isa;
+    };
+#endif
+/*
+
+  Generic Error Stream
+
+   The Error stream simply signals an error on all output methods.
+   This can be used to stop a stream as soon as data arrives, for
+   example from the network.
+
+ */
+    extern HTStream *HTErrorStream(void);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTSTREAM_H */
diff --git a/WWW/Library/Implementation/HTString.c b/WWW/Library/Implementation/HTString.c
new file mode 100644
index 00000000..e22c937e
--- /dev/null
+++ b/WWW/Library/Implementation/HTString.c
@@ -0,0 +1,1403 @@
+/*
+ * $LynxId: HTString.c,v 1.69 2012/02/09 22:02:21 tom Exp $
+ *
+ *	Case-independent string comparison		HTString.c
+ *
+ *	Original version came with listserv implementation.
+ *	Version TBL Oct 91 replaces one which modified the strings.
+ *	02-Dec-91 (JFG) Added stralloccopy and stralloccat
+ *	23 Jan 92 (TBL) Changed strallocc* to 8 char HTSAC* for VM and suchlike
+ *	 6 Oct 92 (TBL) Moved WWW_TraceFlag in here to be in library
+ *	15 Nov 98 (TD)  Added HTSprintf.
+ */
+
+#include <HTUtils.h>
+
+#include <LYLeaks.h>
+#include <LYUtils.h>
+#include <LYStrings.h>
+
+#ifdef USE_IGNORE_RC
+int ignore_unused;
+#endif
+
+#ifndef NO_LYNX_TRACE
+BOOLEAN WWW_TraceFlag = 0;	/* Global trace flag for ALL W3 code */
+int WWW_TraceMask = 0;		/* Global trace flag for ALL W3 code */
+#endif
+
+#ifdef _WINDOWS
+#undef VC
+#define VC "2.14FM"
+#endif
+
+#ifndef VC
+#define VC "2.14"
+#endif /* !VC */
+
+const char *HTLibraryVersion = VC;	/* String for help screen etc */
+
+/*
+ *     strcasecomp8 is a variant of strcasecomp (below)
+ *     ------------		    -----------
+ *     but uses 8bit upper/lower case information
+ *     from the current display charset.
+ *     It returns 0 if exact match.
+ */
+int strcasecomp8(const char *a,
+		 const char *b)
+{
+    const char *p = a;
+    const char *q = b;
+
+    for (; *p && *q; p++, q++) {
+	int diff = UPPER8(*p, *q);
+
+	if (diff)
+	    return diff;
+    }
+    if (*p)
+	return 1;		/* p was longer than q */
+    if (*q)
+	return -1;		/* p was shorter than q */
+    return 0;			/* Exact match */
+}
+
+/*
+ *     strncasecomp8 is a variant of strncasecomp (below)
+ *     -------------		     ------------
+ *     but uses 8bit upper/lower case information
+ *     from the current display charset.
+ *     It returns 0 if exact match.
+ */
+int strncasecomp8(const char *a,
+		  const char *b,
+		  int n)
+{
+    const char *p = a;
+    const char *q = b;
+
+    for (;; p++, q++) {
+	int diff;
+
+	if (p == (a + n))
+	    return 0;		/*   Match up to n characters */
+	if (!(*p && *q))
+	    return (*p - *q);
+	diff = UPPER8(*p, *q);
+	if (diff)
+	    return diff;
+    }
+    /*NOTREACHED */
+}
+
+#ifndef VM			/* VM has these already it seems */
+/*	Strings of any length
+ *	---------------------
+ */
+int strcasecomp(const char *a,
+		const char *b)
+{
+    const char *p = a;
+    const char *q = b;
+
+    for (; *p && *q; p++, q++) {
+	int diff = TOLOWER(*p) - TOLOWER(*q);
+
+	if (diff)
+	    return diff;
+    }
+    if (*p)
+	return 1;		/* p was longer than q */
+    if (*q)
+	return -1;		/* p was shorter than q */
+    return 0;			/* Exact match */
+}
+
+/*	With count limit
+ *	----------------
+ */
+int strncasecomp(const char *a,
+		 const char *b,
+		 int n)
+{
+    const char *p = a;
+    const char *q = b;
+
+    for (;; p++, q++) {
+	int diff;
+
+	if (p == (a + n))
+	    return 0;		/*   Match up to n characters */
+	if (!(*p && *q))
+	    return (*p - *q);
+	diff = TOLOWER(*p) - TOLOWER(*q);
+	if (diff)
+	    return diff;
+    }
+    /*NOTREACHED */
+}
+#endif /* VM */
+
+#define end_component(p) (*(p) == '.' || *(p) == '\0')
+
+#ifdef DEBUG_ASTERISK
+#define SHOW_ASTERISK CTRACE
+#else
+#define SHOW_ASTERISK(p)	/* nothing */
+#endif
+
+#define SHOW_ASTERISK_NUM(a,b,c)  \
+	SHOW_ASTERISK((tfp, "test @%d, '%s' vs '%s' (%d)\n", __LINE__, a,b,c))
+
+#define SHOW_ASTERISK_TXT(a,b,c)  \
+	SHOW_ASTERISK((tfp, "test @%d, '%s' vs '%s' %s\n", __LINE__, a,b,c))
+
+/*
+ * Compare names as described in RFC 2818: ignore case, allow wildcards. 
+ * Return zero on a match, nonzero on mismatch -TD
+ *
+ * From RFC 2818:
+ * Names may contain the wildcard character * which is considered to match any
+ * single domain name component or component fragment.  E.g., *.a.com matches
+ * foo.a.com but not bar.foo.a.com.  f*.com matches foo.com but not bar.com.
+ */
+int strcasecomp_asterisk(const char *a, const char *b)
+{
+    const char *p;
+    int result = 0;
+    int done = FALSE;
+
+    while (!result && !done) {
+	SHOW_ASTERISK_TXT(a, b, "main");
+	if (*a == '*') {
+	    p = b;
+	    for (;;) {
+		SHOW_ASTERISK_TXT(a, p, "loop");
+		if (end_component(p)) {
+		    if (end_component(a + 1)) {
+			b = p - 1;
+			result = 0;
+		    } else {
+			result = 1;
+		    }
+		    break;
+		} else if (strcasecomp_asterisk(a + 1, p)) {
+		    ++p;
+		} else {
+		    b = p - 1;
+		    result = 0;	/* found a match starting at 'p' */
+		    done = TRUE;
+		    break;
+		}
+	    }
+	    SHOW_ASTERISK_NUM(a, b, result);
+	} else if (*b == '*') {
+	    result = strcasecomp_asterisk(b, a);
+	    SHOW_ASTERISK_NUM(a, b, result);
+	    done = (result == 0);
+	} else if (*a == '\0' || *b == '\0') {
+	    result = (*a != *b);
+	    SHOW_ASTERISK_NUM(a, b, result);
+	    break;
+	} else if (TOLOWER(UCH(*a)) != TOLOWER(UCH(*b))) {
+	    result = 1;
+	    SHOW_ASTERISK_NUM(a, b, result);
+	    break;
+	}
+	++a;
+	++b;
+    }
+    return result;
+}
+
+#ifdef DEBUG_ASTERISK
+void mismatch_asterisk(void)
+{
+    /* *INDENT-OFF* */
+    static struct {
+	const char *a;
+	const char *b;
+	int	    code;
+    } table[] = {
+	{ "foo.bar",	 "*.*",	      0 },
+	{ "foo.bar",	 "*.b*",      0 },
+	{ "foo.bar",	 "*.ba*",     0 },
+	{ "foo.bar",	 "*.bar*",    0 },
+	{ "foo.bar",	 "*.*bar*",   0 },
+	{ "foo.bar",	 "*.*.",      1 },
+	{ "foo.bar",	 "fo*.b*",    0 },
+	{ "*oo.bar",	 "fo*.b*",    0 },
+	{ "*oo.bar.com", "fo*.b*",    1 },
+	{ "*oo.bar.com", "fo*.b*m",   1 },
+	{ "*oo.bar.com", "fo*.b*.c*", 0 },
+    };
+    /* *INDENT-ON* */
+
+    unsigned n;
+    int code;
+
+    CTRACE((tfp, "mismatch_asterisk testing\n"));
+    for (n = 0; n < TABLESIZE(table); ++n) {
+	CTRACE((tfp, "-------%d\n", n));
+	code = strcasecomp_asterisk(table[n].a, table[n].b);
+	if (code != table[n].code) {
+	    CTRACE((tfp, "mismatch_asterisk '%s' '%s' got %d, want %d\n",
+		    table[n].a, table[n].b, code, table[n].code));
+	}
+    }
+}
+#endif
+
+#ifdef NOT_ASCII
+
+/*	Case-insensitive with ASCII collating sequence
+ *	----------------
+ */
+int AS_casecomp(const char *p,
+		const char *q)
+{
+    int diff;
+
+    for (;; p++, q++) {
+	if (!(*p && *q))
+	    return (UCH(*p) - UCH(*q));
+	diff = TOASCII(TOLOWER(*p))
+	    - TOASCII(TOLOWER(*q));
+	if (diff)
+	    return diff;
+    }
+    /*NOTREACHED */
+}
+
+/*	With count limit and ASCII collating sequence
+ *	----------------
+ *	AS_cmp uses n == -1 to compare indefinite length.
+ */
+int AS_ncmp(const char *p,
+	    const char *q,
+	    unsigned int n)
+{
+    const char *a = p;
+    int diff;
+
+    for (; (unsigned) (p - a) < n; p++, q++) {
+	if (!(*p && *q))
+	    return (UCH(*p) - UCH(*q));
+	diff = TOASCII(*p)
+	    - TOASCII(*q);
+	if (diff)
+	    return diff;
+    }
+    return 0;			/*   Match up to n characters */
+}
+#endif /* NOT_ASCII */
+
+/*	Allocate a new copy of a string, and returns it
+*/
+char *HTSACopy(char **dest,
+	       const char *src)
+{
+    if (src != 0) {
+	if (src != *dest) {
+	    size_t size = strlen(src) + 1;
+
+	    FREE(*dest);
+	    *dest = (char *) malloc(size);
+	    if (*dest == NULL)
+		outofmem(__FILE__, "HTSACopy");
+	    assert(*dest != NULL);
+	    MemCpy(*dest, src, size);
+	}
+    } else {
+	FREE(*dest);
+    }
+    return *dest;
+}
+
+/*	String Allocate and Concatenate
+*/
+char *HTSACat(char **dest,
+	      const char *src)
+{
+    if (src && *src && (src != *dest)) {
+	if (*dest) {
+	    size_t length = strlen(*dest);
+
+	    *dest = (char *) realloc(*dest, length + strlen(src) + 1);
+	    if (*dest == NULL)
+		outofmem(__FILE__, "HTSACat");
+	    assert(*dest != NULL);
+	    strcpy(*dest + length, src);
+	} else {
+	    *dest = (char *) malloc(strlen(src) + 1);
+	    if (*dest == NULL)
+		outofmem(__FILE__, "HTSACat");
+	    assert(*dest != NULL);
+	    strcpy(*dest, src);
+	}
+    }
+    return *dest;
+}
+
+/* optimized for heavily realloc'd strings, store length inside */
+
+#define EXTRA_TYPE size_t	/* type we use for length */
+#define EXTRA_SIZE sizeof(void *)	/* alignment >= sizeof(EXTRA_TYPE) */
+
+void HTSAFree_extra(char *s)
+{
+    free(s - EXTRA_SIZE);
+}
+
+/* never shrink */
+char *HTSACopy_extra(char **dest,
+		     const char *src)
+{
+    if (src != 0) {
+	size_t srcsize = strlen(src) + 1;
+	EXTRA_TYPE size = 0;
+
+	if (*dest != 0) {
+	    size = *(EXTRA_TYPE *) (void *) ((*dest) - EXTRA_SIZE);
+	}
+	if ((*dest == 0) || (size < srcsize)) {
+	    FREE_extra(*dest);
+	    size = srcsize * 2;	/* x2 step */
+	    *dest = (char *) malloc(size + EXTRA_SIZE);
+	    if (*dest == NULL)
+		outofmem(__FILE__, "HTSACopy_extra");
+	    assert(*dest != NULL);
+	    *(EXTRA_TYPE *) (void *) (*dest) = size;
+	    *dest += EXTRA_SIZE;
+	}
+	MemCpy(*dest, src, srcsize);
+    } else {
+	Clear_extra(*dest);
+    }
+    return *dest;
+}
+
+/*	Find next Field
+ *	---------------
+ *
+ * On entry,
+ *	*pstr	points to a string containig white space separated
+ *		field, optionlly quoted.
+ *
+ * On exit,
+ *	*pstr	has been moved to the first delimiter past the
+ *		field
+ *		THE STRING HAS BEEN MUTILATED by a 0 terminator
+ *
+ *	returns a pointer to the first field
+ */
+char *HTNextField(char **pstr)
+{
+    char *p = *pstr;
+    char *start;		/* start of field */
+
+    while (*p && WHITE(*p))
+	p++;			/* Strip white space */
+    if (!*p) {
+	*pstr = p;
+	return NULL;		/* No first field */
+    }
+    if (*p == '"') {		/* quoted field */
+	p++;
+	start = p;
+	for (; *p && *p != '"'; p++) {
+	    if (*p == '\\' && p[1])
+		p++;		/* Skip escaped chars */
+	}
+    } else {
+	start = p;
+	while (*p && !WHITE(*p))
+	    p++;		/* Skip first field */
+    }
+    if (*p)
+	*p++ = '\0';
+    *pstr = p;
+    return start;
+}
+
+/*	Find next Token
+ *	---------------
+ *	Finds the next token in a string
+ *	On entry,
+ *	*pstr	points to a string to be parsed.
+ *	delims	lists characters to be recognized as delimiters.
+ *		If NULL, default is white space "," ";" or "=".
+ *		The word can optionally be quoted or enclosed with
+ *		chars from bracks.
+ *		Comments surrrounded by '(' ')' are filtered out
+ *		unless they are specifically reqested by including
+ *		' ' or '(' in delims or bracks.
+ *	bracks	lists bracketing chars.  Some are recognized as
+ *		special, for those give the opening char.
+ *		If NULL, defaults to <"> and "<" ">".
+ *	found	points to location to fill with the ending delimiter
+ *		found, or is NULL.
+ *
+ *	On exit,
+ *	*pstr	has been moved to the first delimiter past the
+ *		field
+ *		THE STRING HAS BEEN MUTILATED by a 0 terminator
+ *	found	points to the delimiter found unless it was NULL.
+ *	Returns a pointer to the first word or NULL on error
+ */
+char *HTNextTok(char **pstr,
+		const char *delims,
+		const char *bracks,
+		char *found)
+{
+    char *p = *pstr;
+    char *start = NULL;
+    BOOL get_blanks, skip_comments;
+    BOOL get_comments;
+    BOOL get_closing_char_too = FALSE;
+    char closer;
+
+    if (isEmpty(pstr))
+	return NULL;
+    if (!delims)
+	delims = " ;,=";
+    if (!bracks)
+	bracks = "<\"";
+
+    get_blanks = (BOOL) (!strchr(delims, ' ') && !strchr(bracks, ' '));
+    get_comments = (BOOL) (strchr(bracks, '(') != NULL);
+    skip_comments = (BOOL) (!get_comments && !strchr(delims, '(') && !get_blanks);
+#define skipWHITE(c) (!get_blanks && WHITE(c))
+
+    while (*p && skipWHITE(*p))
+	p++;			/* Strip white space */
+    if (!*p) {
+	*pstr = p;
+	if (found)
+	    *found = '\0';
+	return NULL;		/* No first field */
+    }
+    while (1) {
+	/* Strip white space and other delimiters */
+	while (*p && (skipWHITE(*p) || strchr(delims, *p)))
+	    p++;
+	if (!*p) {
+	    *pstr = p;
+	    if (found)
+		*found = *(p - 1);
+	    return NULL;	/* No field */
+	}
+
+	if (*p == '(' && (skip_comments || get_comments)) {	/* Comment */
+	    int comment_level = 0;
+
+	    if (get_comments && !start)
+		start = p + 1;
+	    for (; *p && (*p != ')' || --comment_level > 0); p++) {
+		if (*p == '(')
+		    comment_level++;
+		else if (*p == '"') {	/* quoted field within Comment */
+		    for (p++; *p && *p != '"'; p++)
+			if (*p == '\\' && *(p + 1))
+			    p++;	/* Skip escaped chars */
+		    if (!*p)
+			break;	/* (invalid) end of string found, leave */
+		}
+		if (*p == '\\' && *(p + 1))
+		    p++;	/* Skip escaped chars */
+	    }
+	    if (get_comments)
+		break;
+	    if (*p)
+		p++;
+	    if (get_closing_char_too) {
+		if (!*p || (!strchr(bracks, *p) && strchr(delims, *p))) {
+		    break;
+		} else
+		    get_closing_char_too = (BOOL) (strchr(bracks, *p) != NULL);
+	    }
+	} else if (strchr(bracks, *p)) {	/* quoted or bracketed field */
+	    switch (*p) {
+	    case '<':
+		closer = '>';
+		break;
+	    case '[':
+		closer = ']';
+		break;
+	    case '{':
+		closer = '}';
+		break;
+	    case ':':
+		closer = ';';
+		break;
+	    default:
+		closer = *p;
+	    }
+	    if (!start)
+		start = ++p;
+	    for (; *p && *p != closer; p++)
+		if (*p == '\\' && *(p + 1))
+		    p++;	/* Skip escaped chars */
+	    if (get_closing_char_too) {
+		p++;
+		if (!*p || (!strchr(bracks, *p) && strchr(delims, *p))) {
+		    break;
+		} else
+		    get_closing_char_too = (BOOL) (strchr(bracks, *p) != NULL);
+	    } else
+		break;		/* kr95-10-9: needs to stop here */
+	} else {		/* Spool field */
+	    if (!start)
+		start = p;
+	    while (*p && !skipWHITE(*p) && !strchr(bracks, *p) &&
+		   !strchr(delims, *p))
+		p++;
+	    if (*p && strchr(bracks, *p)) {
+		get_closing_char_too = TRUE;
+	    } else {
+		if (*p == '(' && skip_comments) {
+		    *pstr = p;
+		    HTNextTok(pstr, NULL, "(", found);	/*      Advance pstr */
+		    *p = '\0';
+		    if (*pstr && **pstr)
+			(*pstr)++;
+		    return start;
+		}
+		break;		/* Got it */
+	    }
+	}
+    }
+    if (found)
+	*found = *p;
+
+    if (*p)
+	*p++ = '\0';
+    *pstr = p;
+    return start;
+}
+
+static char *HTAlloc(char *ptr, size_t length)
+{
+    if (ptr != 0)
+	ptr = (char *) realloc(ptr, length);
+    else
+	ptr = (char *) malloc(length);
+    if (ptr == 0)
+	outofmem(__FILE__, "HTAlloc");
+    assert(ptr != NULL);
+    return ptr;
+}
+
+/*
+ * If SAVE_TIME_NOT_SPACE is defined, StrAllocVsprintf will hang on to
+ * its temporary string buffers instead of allocating and freeing them
+ * in each invocation.  They only grow and never shrink, and won't be
+ * cleaned up on exit. - kw
+ */
+#if defined(_REENTRANT) || defined(_THREAD_SAFE) || defined(LY_FIND_LEAKS)
+#undef SAVE_TIME_NOT_SPACE
+#endif
+
+/*
+ * Replacement for sprintf, allocates buffer on the fly according to what's
+ * needed for its arguments.  Unlike sprintf, this always concatenates to the
+ * destination buffer, so we do not have to provide both flavors.
+ */
+typedef enum {
+    Flags,
+    Width,
+    Prec,
+    Type,
+    Format
+} PRINTF;
+
+#define VA_INTGR(type) ival = (int)    va_arg((*ap), type)
+#define VA_FLOAT(type) fval = (double) va_arg((*ap), type)
+#define VA_POINT(type) pval = (char *) va_arg((*ap), type)
+
+#define NUM_WIDTH 10		/* allow for width substituted for "*" in "%*s" */
+		/* also number of chars assumed to be needed in addition
+		   to a given precision in floating point formats */
+
+#define GROW_EXPR(n) (((n) * 3) / 2)
+#define GROW_SIZE 256
+
+PUBLIC_IF_FIND_LEAKS char *StrAllocVsprintf(char **pstr,
+					    size_t dst_len,
+					    const char *fmt,
+					    va_list * ap)
+{
+#ifdef HAVE_VASPRINTF
+    /*
+     * Use vasprintf() if we have it, since it is simplest.
+     */
+    char *result = 0;
+    char *temp = 0;
+
+    /* discard old destination if no length was given */
+    if (pstr && !dst_len) {
+	if (*pstr)
+	    FREE(*pstr);
+    }
+
+    if (vasprintf(&temp, fmt, *ap) >= 0) {
+	if (dst_len != 0) {
+	    size_t src_len = strlen(temp);
+	    size_t new_len = dst_len + src_len + 1;
+
+	    result = HTAlloc(pstr ? *pstr : 0, new_len);
+	    if (result != 0) {
+		strcpy(result + dst_len, temp);
+	    }
+	    (free) (temp);
+	} else {
+	    result = temp;
+	    mark_malloced(temp, strlen(temp));
+	}
+    }
+
+    if (pstr != 0)
+	*pstr = result;
+
+    return result;
+#else /* !HAVE_VASPRINTF */
+    /*
+     * If vasprintf() is not available, this works - but does not implement
+     * the POSIX '$' formatting character which may be used in some of the
+     * ".po" files.
+     */
+#ifdef SAVE_TIME_NOT_SPACE
+    static size_t tmp_len = 0;
+    static size_t fmt_len = 0;
+    static char *tmp_ptr = NULL;
+    static char *fmt_ptr = NULL;
+
+#else
+    size_t tmp_len = GROW_SIZE;
+    char *tmp_ptr = 0;
+    char *fmt_ptr;
+#endif /* SAVE_TIME_NOT_SPACE */
+    size_t have, need;
+    char *dst_ptr = *pstr;
+    const char *format = fmt;
+
+    if (isEmpty(fmt))
+	return 0;
+
+    need = strlen(fmt) + 1;
+#ifdef SAVE_TIME_NOT_SPACE
+    if (!fmt_ptr || fmt_len < need * NUM_WIDTH) {
+	fmt_ptr = HTAlloc(fmt_ptr, fmt_len = need * NUM_WIDTH);
+    }
+    if (!tmp_ptr || tmp_len < GROW_SIZE) {
+	tmp_ptr = HTAlloc(tmp_ptr, tmp_len = GROW_SIZE);
+    }
+#else
+    if ((fmt_ptr = malloc(need * NUM_WIDTH)) == 0
+	|| (tmp_ptr = malloc(tmp_len)) == 0) {
+	outofmem(__FILE__, "StrAllocVsprintf");
+	assert(fmt_ptr != NULL);
+	assert(tmp_ptr != NULL);
+    }
+#endif /* SAVE_TIME_NOT_SPACE */
+
+    if (dst_ptr == 0) {
+	dst_ptr = HTAlloc(dst_ptr, have = GROW_SIZE + need);
+    } else {
+	have = strlen(dst_ptr) + 1;
+	need += dst_len;
+	if (have < need)
+	    dst_ptr = HTAlloc(dst_ptr, have = GROW_SIZE + need);
+    }
+
+    while (*fmt != '\0') {
+	if (*fmt == '%') {
+	    static char dummy[] = "";
+	    PRINTF state = Flags;
+	    char *pval = dummy;	/* avoid const-cast */
+	    double fval = 0.0;
+	    int done = FALSE;
+	    int ival = 0;
+	    int prec = -1;
+	    int type = 0;
+	    int used = 0;
+	    int width = -1;
+	    size_t f = 0;
+
+	    fmt_ptr[f++] = *fmt;
+	    while (*++fmt != '\0' && !done) {
+		fmt_ptr[f++] = *fmt;
+
+		if (isdigit(UCH(*fmt))) {
+		    int num = *fmt - '0';
+
+		    if (state == Flags && num != 0)
+			state = Width;
+		    if (state == Width) {
+			if (width < 0)
+			    width = 0;
+			width = (width * 10) + num;
+		    } else if (state == Prec) {
+			if (prec < 0)
+			    prec = 0;
+			prec = (prec * 10) + num;
+		    }
+		} else if (*fmt == '*') {
+		    VA_INTGR(int);
+
+		    if (state == Flags)
+			state = Width;
+		    if (state == Width) {
+			width = ival;
+		    } else if (state == Prec) {
+			prec = ival;
+		    }
+		    sprintf(&fmt_ptr[--f], "%d", ival);
+		    f = strlen(fmt_ptr);
+		} else if (isalpha(UCH(*fmt))) {
+		    done = TRUE;
+		    switch (*fmt) {
+		    case 'Z':	/* FALLTHRU */
+		    case 'h':	/* FALLTHRU */
+		    case 'l':	/* FALLTHRU */
+		    case 'L':	/* FALLTHRU */
+			done = FALSE;
+			type = *fmt;
+			break;
+		    case 'o':	/* FALLTHRU */
+		    case 'i':	/* FALLTHRU */
+		    case 'd':	/* FALLTHRU */
+		    case 'u':	/* FALLTHRU */
+		    case 'x':	/* FALLTHRU */
+		    case 'X':	/* FALLTHRU */
+			if (type == 'l')
+			    VA_INTGR(long);
+
+			else if (type == 'Z')
+			    VA_INTGR(size_t);
+
+			else
+			    VA_INTGR(int);
+
+			used = 'i';
+			break;
+		    case 'f':	/* FALLTHRU */
+		    case 'e':	/* FALLTHRU */
+		    case 'E':	/* FALLTHRU */
+		    case 'g':	/* FALLTHRU */
+		    case 'G':	/* FALLTHRU */
+			VA_FLOAT(double);
+
+			used = 'f';
+			break;
+		    case 'c':
+			VA_INTGR(int);
+
+			used = 'c';
+			break;
+		    case 's':
+			VA_POINT(char *);
+
+			if (prec < 0)
+			    prec = strlen(pval);
+			used = 's';
+			break;
+		    case 'p':
+			VA_POINT(void *);
+
+			used = 'p';
+			break;
+		    case 'n':
+			VA_POINT(int *);
+
+			used = 0;
+			break;
+		    default:
+			CTRACE((tfp, "unknown format character '%c' in %s\n",
+				*fmt, format));
+			break;
+		    }
+		} else if (*fmt == '.') {
+		    state = Prec;
+		} else if (*fmt == '%') {
+		    done = TRUE;
+		    used = '%';
+		}
+	    }
+	    fmt_ptr[f] = '\0';
+
+	    if (prec > 0) {
+		switch (used) {
+		case 'f':
+		    if (width < prec + NUM_WIDTH)
+			width = prec + NUM_WIDTH;
+		    /* FALLTHRU */
+		case 'i':
+		    /* FALLTHRU */
+		case 'p':
+		    if (width < prec + 2)
+			width = prec + 2;	/* leading sign/space/zero, "0x" */
+		    break;
+		case 'c':
+		    break;
+		case '%':
+		    break;
+		default:
+		    if (width < prec)
+			width = prec;
+		    break;
+		}
+	    }
+	    if (width >= (int) tmp_len) {
+		tmp_len = GROW_EXPR(tmp_len + width);
+		tmp_ptr = HTAlloc(tmp_ptr, tmp_len);
+	    }
+
+	    switch (used) {
+	    case 'i':
+	    case 'c':
+		sprintf(tmp_ptr, fmt_ptr, ival);
+		break;
+	    case 'f':
+		sprintf(tmp_ptr, fmt_ptr, fval);
+		break;
+	    default:
+		sprintf(tmp_ptr, fmt_ptr, pval);
+		break;
+	    }
+	    need = dst_len + strlen(tmp_ptr) + 1;
+	    if (need >= have) {
+		dst_ptr = HTAlloc(dst_ptr, have = GROW_EXPR(need));
+	    }
+	    strcpy(dst_ptr + dst_len, tmp_ptr);
+	    dst_len += strlen(tmp_ptr);
+	} else {
+	    if ((dst_len + 2) >= have) {
+		dst_ptr = HTAlloc(dst_ptr, (have += GROW_SIZE));
+	    }
+	    dst_ptr[dst_len++] = *fmt++;
+	}
+    }
+
+#ifndef SAVE_TIME_NOT_SPACE
+    FREE(tmp_ptr);
+    FREE(fmt_ptr);
+#endif
+    dst_ptr[dst_len] = '\0';
+    if (pstr)
+	*pstr = dst_ptr;
+    return (dst_ptr);
+#endif /* HAVE_VASPRINTF */
+}
+#undef SAVE_TIME_NOT_SPACE
+
+/*
+ * Replacement for sprintf, allocates buffer on the fly according to what's
+ * needed for its arguments.  Unlike sprintf, this always concatenates to the
+ * destination buffer.
+ */
+/* Note: if making changes, also check the memory tracking version
+ * LYLeakHTSprintf in LYLeaks.c. - kw */
+#ifdef HTSprintf		/* if hidden by LYLeaks stuff */
+#undef HTSprintf
+#endif
+char *HTSprintf(char **pstr, const char *fmt,...)
+{
+    char *result = 0;
+    size_t inuse = 0;
+    va_list ap;
+
+    LYva_start(ap, fmt);
+    {
+	if (pstr != 0 && *pstr != 0)
+	    inuse = strlen(*pstr);
+	result = StrAllocVsprintf(pstr, inuse, fmt, &ap);
+    }
+    va_end(ap);
+
+    return (result);
+}
+
+/*
+ * Replacement for sprintf, allocates buffer on the fly according to what's
+ * needed for its arguments.  Like sprintf, this always resets the destination
+ * buffer.
+ */
+/* Note: if making changes, also check the memory tracking version
+ * LYLeakHTSprintf0 in LYLeaks.c. - kw */
+#ifdef HTSprintf0		/* if hidden by LYLeaks stuff */
+#undef HTSprintf0
+#endif
+char *HTSprintf0(char **pstr, const char *fmt,...)
+{
+    char *result = 0;
+    va_list ap;
+
+    LYva_start(ap, fmt);
+    {
+	result = StrAllocVsprintf(pstr, (size_t) 0, fmt, &ap);
+    }
+    va_end(ap);
+
+    return (result);
+}
+
+/*
+ * Returns a quoted or escaped form of the given parameter, suitable for use in
+ * a command string.
+ */
+#if USE_QUOTED_PARAMETER
+#define S_QUOTE '\''
+#define D_QUOTE '"'
+char *HTQuoteParameter(const char *parameter)
+{
+    size_t i;
+    size_t last;
+    size_t n = 0;
+    size_t quoted = 0;
+    char *result;
+
+    if (parameter == 0)
+	parameter = "";
+
+    last = strlen(parameter);
+    for (i = 0; i < last; ++i)
+	if (strchr("\\&#$^*?(){}<>\"';`|", parameter[i]) != 0
+	    || isspace(UCH(parameter[i])))
+	    ++quoted;
+
+    result = (char *) malloc(last + 5 * quoted + 3);
+    if (result == NULL)
+	outofmem(__FILE__, "HTQuoteParameter");
+
+    assert(result != NULL);
+
+    n = 0;
+#if (USE_QUOTED_PARAMETER == 1)
+    /*
+     * Only double-quotes are used in Win32/DOS -TD
+     */
+    if (quoted)
+	result[n++] = D_QUOTE;
+    for (i = 0; i < last; i++) {
+	result[n++] = parameter[i];
+    }
+    if (quoted)
+	result[n++] = D_QUOTE;
+#else
+    if (quoted)
+	result[n++] = S_QUOTE;
+    for (i = 0; i < last; i++) {
+	if (parameter[i] == S_QUOTE) {
+	    result[n++] = S_QUOTE;
+	    result[n++] = D_QUOTE;
+	    result[n++] = parameter[i];
+	    result[n++] = D_QUOTE;
+	    result[n++] = S_QUOTE;
+	} else {
+	    /* Note:  No special handling of other characters, including
+	       backslash, since we are constructing a single-quoted string!
+	       Backslash has no special escape meaning within those for sh
+	       and compatible shells, so trying to escape a backslash by
+	       doubling it is unnecessary and would be interpreted by the
+	       shell as an additional data character. - kw 2000-05-02
+	     */
+	    result[n++] = parameter[i];
+	}
+    }
+    if (quoted)
+	result[n++] = S_QUOTE;
+#endif
+    result[n] = '\0';
+    return result;
+}
+#endif
+
+#define HTIsParam(string) ((string[0] == '%' && string[1] == 's'))
+
+/*
+ * Returns the number of "%s" tokens in a system command-template.
+ */
+int HTCountCommandArgs(const char *command)
+{
+    int number = 0;
+
+    while (command[0] != 0) {
+	if (HTIsParam(command))
+	    number++;
+	command++;
+    }
+    return number;
+}
+
+/*
+ * Returns a pointer into the given string after the given parameter number
+ */
+static const char *HTAfterCommandArg(const char *command,
+				     int number)
+{
+    while (number > 0) {
+	if (command[0] != 0) {
+	    if (HTIsParam(command)) {
+		number--;
+		command++;
+	    }
+	    command++;
+	} else {
+	    break;
+	}
+    }
+    return command;
+}
+
+/*
+ * Like HTAddParam, but the parameter may be an environment variable, which we
+ * will expand and append.  Do this only for things like the command-verb,
+ * where we obtain the parameter from the user's configuration.  Any quoting
+ * required for the environment variable has to be done within its value, e.g.,
+ *
+ *	setenv EDITOR 'xvile -name "No such class"'
+ *
+ * This is useful only when we quote parameters, of course.
+ */
+#if USE_QUOTED_PARAMETER
+void HTAddXpand(char **result,
+		const char *command,
+		int number,
+		const char *parameter)
+{
+    if (number > 0) {
+	const char *last = HTAfterCommandArg(command, number - 1);
+	const char *next = last;
+
+	if (number <= 1) {
+	    FREE(*result);
+	}
+
+	while (next[0] != 0) {
+	    if (HTIsParam(next)) {
+		if (next != last) {
+		    size_t len = ((size_t) (next - last)
+				  + ((*result != 0)
+				     ? strlen(*result)
+				     : 0));
+
+		    HTSACat(result, last);
+		    (*result)[len] = 0;
+		}
+		HTSACat(result, parameter);
+		CTRACE((tfp, "PARAM-EXP:%s\n", *result));
+		return;
+	    }
+	    next++;
+	}
+    }
+}
+#endif /* USE_QUOTED_PARAMETER */
+
+/*
+ * Append string to a system command that we are constructing, without quoting. 
+ * We're given the index of the newest parameter we're processing.  Zero
+ * indicates none, so a value of '1' indicates that we copy from the beginning
+ * of the command string up to the first parameter, substitute the quoted
+ * parameter and return the result.
+ *
+ * Parameters are substituted at "%s" tokens, like printf.  Other printf-style
+ * tokens are not substituted; they are passed through without change.
+ */
+void HTAddToCmd(char **result,
+		const char *command,
+		int number,
+		const char *string)
+{
+    if (number > 0) {
+	const char *last = HTAfterCommandArg(command, number - 1);
+	const char *next = last;
+
+	if (number <= 1) {
+	    FREE(*result);
+	}
+	if (string == 0)
+	    string = "";
+	while (next[0] != 0) {
+	    if (HTIsParam(next)) {
+		if (next != last) {
+		    size_t len = ((size_t) (next - last)
+				  + ((*result != 0)
+				     ? strlen(*result)
+				     : 0));
+
+		    HTSACat(result, last);
+		    (*result)[len] = 0;
+		}
+		HTSACat(result, string);
+		CTRACE((tfp, "PARAM-ADD:%s\n", *result));
+		return;
+	    }
+	    next++;
+	}
+    }
+}
+
+/*
+ * Append string-parameter to a system command that we are constructing.  The
+ * string is a complete parameter (which is a necessary assumption so we can
+ * quote it properly).
+ */
+void HTAddParam(char **result,
+		const char *command,
+		int number,
+		const char *parameter)
+{
+    if (number > 0) {
+#if USE_QUOTED_PARAMETER
+	char *quoted = HTQuoteParameter(parameter);
+
+	HTAddToCmd(result, command, number, quoted);
+	FREE(quoted);
+#else
+	HTAddToCmd(result, command, number, parameter);
+#endif
+    }
+}
+
+/*
+ * Append the remaining command-string to a system command (compare with
+ * HTAddParam).  Any remaining "%s" tokens are copied as empty strings.
+ */
+void HTEndParam(char **result,
+		const char *command,
+		int number)
+{
+    const char *last;
+    int count;
+
+    count = HTCountCommandArgs(command);
+    if (count < number)
+	number = count;
+    last = HTAfterCommandArg(command, number);
+    if (last[0] != 0) {
+	HTSACat(result, last);
+    }
+    CTRACE((tfp, "PARAM-END:%s\n", *result));
+}
+
+/* Binary-strings (may have embedded nulls).  Some modules (HTGopher) assume
+ * there is a null on the end, anyway.
+ */
+
+/* (Re)allocate a bstring, e.g., to increase its buffer size for ad hoc
+ * operations.
+ */
+void HTSABAlloc(bstring **dest, int len)
+{
+    if (*dest == 0)
+	*dest = typecalloc(bstring);
+
+    if ((*dest)->len != len) {
+	(*dest)->str = typeRealloc(char, (*dest)->str, len);
+
+	(*dest)->len = len;
+    }
+}
+
+/* Allocate a new bstring, and return it.
+*/
+void HTSABCopy(bstring **dest, const char *src,
+	       int len)
+{
+    bstring *t;
+    unsigned need = (unsigned) (len + 1);
+
+    CTRACE2(TRACE_BSTRING,
+	    (tfp, "HTSABCopy(%p, %p, %d)\n",
+	     (void *) dest, (const void *) src, len));
+    HTSABFree(dest);
+    if (src) {
+	if (TRACE_BSTRING) {
+	    CTRACE((tfp, "===    %4d:", len));
+	    trace_bstring2(src, len);
+	    CTRACE((tfp, "\n"));
+	}
+	if ((t = (bstring *) malloc(sizeof(bstring))) == NULL)
+	      outofmem(__FILE__, "HTSABCopy");
+
+	assert(t != NULL);
+
+	if ((t->str = typeMallocn(char, need)) == NULL)
+	      outofmem(__FILE__, "HTSABCopy");
+
+	assert(t->str != NULL);
+
+	MemCpy(t->str, src, len);
+	t->len = len;
+	t->str[t->len] = '\0';
+	*dest = t;
+    }
+    if (TRACE_BSTRING) {
+	CTRACE((tfp, "=>     %4d:", BStrLen(*dest)));
+	trace_bstring(*dest);
+	CTRACE((tfp, "\n"));
+    }
+}
+
+/*
+ * Initialize with a null-terminated string (discards the null).
+ */
+void HTSABCopy0(bstring **dest, const char *src)
+{
+    HTSABCopy(dest, src, (int) strlen(src));
+}
+
+/*
+ * Append a block of memory to a bstring.
+ */
+void HTSABCat(bstring **dest, const char *src,
+	      int len)
+{
+    bstring *t = *dest;
+
+    CTRACE2(TRACE_BSTRING,
+	    (tfp, "HTSABCat(%p, %p, %d)\n",
+	     (void *) dest, (const void *) src, len));
+    if (src) {
+	unsigned need = (unsigned) (len + 1);
+
+	if (TRACE_BSTRING) {
+	    CTRACE((tfp, "===    %4d:", len));
+	    trace_bstring2(src, len);
+	    CTRACE((tfp, "\n"));
+	}
+	if (t) {
+	    unsigned length = (unsigned) t->len + need;
+
+	    t->str = typeRealloc(char, t->str, length);
+	} else {
+	    if ((t = typecalloc(bstring)) == NULL)
+		  outofmem(__FILE__, "HTSACat");
+
+	    assert(t != NULL);
+
+	    t->str = typeMallocn(char, need);
+	}
+	if (t->str == NULL)
+	    outofmem(__FILE__, "HTSACat");
+
+	assert(t->str != NULL);
+
+	MemCpy(t->str + t->len, src, len);
+	t->len += len;
+	t->str[t->len] = '\0';
+	*dest = t;
+    }
+    if (TRACE_BSTRING) {
+	CTRACE((tfp, "=>     %4d:", BStrLen(*dest)));
+	trace_bstring(*dest);
+	CTRACE((tfp, "\n"));
+    }
+}
+
+/*
+ * Append a null-terminated string (discards the null).
+ */
+void HTSABCat0(bstring **dest, const char *src)
+{
+    HTSABCat(dest, src, (int) strlen(src));
+}
+
+/*
+ * Compare two bstring's for equality
+ */
+BOOL HTSABEql(bstring *a, bstring *b)
+{
+    unsigned len_a = (unsigned) ((a != 0) ? a->len : 0);
+    unsigned len_b = (unsigned) ((b != 0) ? b->len : 0);
+
+    if (len_a == len_b) {
+	if (len_a == 0
+	    || MemCmp(a->str, b->str, a->len) == 0)
+	    return TRUE;
+    }
+    return FALSE;
+}
+
+/*
+ * Deallocate a bstring.
+ */
+void HTSABFree(bstring **ptr)
+{
+    if (*ptr != NULL) {
+	FREE((*ptr)->str);
+	FREE(*ptr);
+	*ptr = NULL;
+    }
+}
+
+/*
+ * Use this function to perform formatted sprintf's onto the end of a bstring.
+ * The bstring may contain embedded nulls; the formatted portions must not.
+ */
+bstring *HTBprintf(bstring **pstr, const char *fmt,...)
+{
+    bstring *result = 0;
+    char *temp = 0;
+    va_list ap;
+
+    LYva_start(ap, fmt);
+    {
+	temp = StrAllocVsprintf(&temp, (size_t) 0, fmt, &ap);
+	if (non_empty(temp)) {
+	    HTSABCat(pstr, temp, (int) strlen(temp));
+	}
+	FREE(temp);
+	result = *pstr;
+    }
+    va_end(ap);
+
+    return (result);
+}
+
+/*
+ * Write binary-data to the logfile, making it safe for most editors to view.
+ * That is most, since we do not restrict line-length.  Nulls and other
+ * non-printing characters are addressed.
+ */
+void trace_bstring2(const char *text,
+		    int size)
+{
+    int n;
+
+    if (text != 0) {
+	for (n = 0; n < size; ++n) {
+	    int ch = UCH(text[n]);
+
+	    switch (ch) {
+	    case '\\':
+		fputs("\\\\", tfp);
+		break;
+	    case '\r':
+		fputs("\\r", tfp);
+		break;
+	    case '\t':
+		fputs("\\t", tfp);
+		break;
+	    case '\f':
+		fputs("\\f", tfp);
+		break;
+	    default:
+		if (isprint(ch) || isspace(ch)) {
+		    fputc(ch, tfp);
+		} else {
+		    fprintf(tfp, "\\%03o", ch);
+		}
+		break;
+	    }
+	}
+    }
+}
+
+void trace_bstring(bstring *data)
+{
+    trace_bstring2(BStrData(data), BStrLen(data));
+}
diff --git a/WWW/Library/Implementation/HTString.h b/WWW/Library/Implementation/HTString.h
new file mode 100644
index 00000000..86cd9382
--- /dev/null
+++ b/WWW/Library/Implementation/HTString.h
@@ -0,0 +1,162 @@
+/*
+ * $LynxId: HTString.h,v 1.37 2012/02/07 23:41:25 tom Exp $
+ *						String handling for libwww
+ *                                         STRINGS
+ *                                            
+ * Case-independent string comparison and allocations with copies etc
+ */
+#ifndef HTSTRING_H
+#define HTSTRING_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif /* HTUTILS_H */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern const char *HTLibraryVersion;	/* String for help screen etc */
+
+/*
+ * EBCDIC string comparison using ASCII collating sequence
+ */
+#ifdef    NOT_ASCII
+    extern int AS_casecomp(const char *a, const char *b);
+    extern int AS_ncmp(const char *a, const char *b, unsigned int n);
+
+#define    AS_cmp( a, b )  ( AS_ncmp( ( a ), ( b ), -1 ) )
+
+#else
+#define AS_casecomp( a, b ) ( strcasecomp( ( a ), ( b ) ) )
+#define AS_ncmp( a, b, c )  ( StrNCmp( ( a ), ( b ), ( c ) ) )
+#define AS_cmp strcmp
+
+#endif				/* NOT_ASCII */
+
+#define StrNCat(a,b,c) strncat((a),(b),(size_t)(c))
+#define StrNCpy(a,b,c) strncpy((a),(b),(size_t)(c))
+#define StrNCmp(a,b,c) strncmp((a),(b),(size_t)(c))
+
+#define MemCpy(a,b,c)  memcpy((a),(b),(size_t)(c))
+#define MemCmp(a,b,c)  memcmp((a),(b),(size_t)(c))
+
+    /*
+     * Case-insensitive string comparison
+     *
+     * The usual routines (comp instead of cmp) had some problem.
+     */
+    extern int strcasecomp(const char *a, const char *b);
+    extern int strncasecomp(const char *a, const char *b, int n);
+
+    extern int strcasecomp8(const char *a, const char *b);
+    extern int strncasecomp8(const char *a, const char *b, int n);
+
+    extern int strcasecomp_asterisk(const char *a, const char *b);
+
+    /*
+     * strcasecomp8 and strncasecomp8 are variants of strcasecomp and
+     * strncasecomp, but use 8bit upper/lower case information from the
+     * current display charset
+     */
+
+    /*
+     * Malloced string manipulation
+     */
+#define StrAllocCopy(dest, src) HTSACopy (&(dest), src)
+#define StrAllocCat(dest, src)  HTSACat  (&(dest), src)
+    extern char *HTSACopy(char **dest, const char *src);
+    extern char *HTSACat(char **dest, const char *src);
+
+    /*
+     * optimized for heavily realloc'd strings in temp objects
+     */
+#define StrAllocCopy_extra(dest, src) HTSACopy_extra (&(dest), src)
+#define FREE_extra(x)   {if (x != NULL) {HTSAFree_extra(x); x = NULL;}}
+#define Clear_extra(x)  {if (x != NULL) {*x = '\0';}}
+    extern char *HTSACopy_extra(char **dest, const char *src);
+    extern void HTSAFree_extra(char *s);
+
+    /*
+     * Next word or quoted string
+     */
+    extern char *HTNextField(char **pstr);
+
+    /* A more general parser - kw */
+    extern char *HTNextTok(char **pstr,
+			   const char *delims, const char *bracks, char *found);
+
+    extern char *HTSprintf(char **pstr, const char *fmt,...) GCC_PRINTFLIKE(2,3);
+    extern char *HTSprintf0(char **pstr, const char *fmt,...) GCC_PRINTFLIKE(2,3);
+
+#if defined(LY_FIND_LEAKS)	/* private otherwise */
+    extern char *StrAllocVsprintf(char **pstr,
+				  size_t len,
+				  const char *fmt,
+				  va_list * ap);
+#endif
+
+#if defined(__CYGWIN__)
+#define USE_QUOTED_PARAMETER 2	/* single and double-quoting */
+#elif defined(DOSPATH)
+#define USE_QUOTED_PARAMETER 1	/* double-quoting only */
+#elif (defined(VMS) || defined(__EMX__))
+#define USE_QUOTED_PARAMETER 0	/* no quoting */
+#else
+#define USE_QUOTED_PARAMETER 2	/* single and double-quoting */
+#endif
+
+#if USE_QUOTED_PARAMETER
+    extern char *HTQuoteParameter(const char *parameter);
+    extern void HTAddXpand(char **result, const char *command, int number, const char *parameter);
+
+#else
+#define HTQuoteParameter(parameter) parameter	/* simplify ifdef'ing */
+#define HTAddXpand(result,command,number,parameter)  HTAddParam(result,command,number,parameter)
+#endif
+
+    extern int HTCountCommandArgs(const char *command);
+    extern void HTAddToCmd(char **result, const char *command, int number, const char *string);
+    extern void HTAddParam(char **result, const char *command, int number, const char *parameter);
+    extern void HTEndParam(char **result, const char *command, int number);
+
+/* Force an option, with leading blanks, to be appended without quoting them */
+#define HTOptParam(result, command, number, parameter) HTSACat(result, parameter)
+
+/* Binary copy and concat */
+    typedef struct {
+	char *str;
+	int len;
+    } bstring;
+
+    extern void HTSABAlloc(bstring **dest, int len);
+    extern void HTSABCopy(bstring **dest, const char *src, int len);
+    extern void HTSABCopy0(bstring **dest, const char *src);
+    extern void HTSABCat(bstring **dest, const char *src, int len);
+    extern void HTSABCat0(bstring **dest, const char *src);
+    extern BOOL HTSABEql(bstring *a, bstring *b);
+    extern void HTSABFree(bstring **ptr);
+
+#define BStrLen(s)    (((s) != 0) ? (s)->len : 0)
+#define BStrData(s)   (((s) != 0) ? (s)->str : 0)
+
+#define BINEQ(a,b)    (HTSABEql(a,b))	/* like STREQ() */
+
+#define isBEmpty(p)   ((p) == 0 || BStrLen(p) == 0)
+
+#define BStrAlloc(d,n)   HTSABAlloc( &(d), n)
+#define BStrCopy(d,s)    HTSABCopy( &(d), BStrData(s), BStrLen(s))
+#define BStrCopy0(d,s)   HTSABCopy0( &(d), s)
+#define BStrCopy1(d,s,n) HTSABCopy(  &(d), s, n)
+#define BStrCat(d,s)     HTSABCat( &(d), BStrData(s), BStrLen(s))
+#define BStrCat0(d,s)    HTSABCat0( &(d), s)
+#define BStrFree(d)      HTSABFree( &(d))
+
+    extern bstring *HTBprintf(bstring **pstr, const char *fmt,...) GCC_PRINTFLIKE(2,3);
+
+    extern void trace_bstring(bstring *data);
+    extern void trace_bstring2(const char *text, int size);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTSTRING_H */
diff --git a/WWW/Library/Implementation/HTStyle.c b/WWW/Library/Implementation/HTStyle.c
new file mode 100644
index 00000000..54c0bc52
--- /dev/null
+++ b/WWW/Library/Implementation/HTStyle.c
@@ -0,0 +1,378 @@
+/*
+ * $LynxId: HTStyle.c,v 1.16 2009/11/27 13:01:48 tom Exp $
+ *
+ *	Style Implementation for Hypertext			HTStyle.c
+ *	==================================
+ *
+ *	Styles allow the translation between a logical property
+ *	of a piece of text and its physical representation.
+ *
+ *	A StyleSheet is a collection of styles, defining the
+ *	translation necessary to
+ *	represent a document.  It is a linked list of styles.
+ */
+
+#include <HTUtils.h>
+#include <HTStyle.h>
+
+#include <LYLeaks.h>
+
+/*	Create a new style
+*/
+HTStyle *HTStyleNew(void)
+{
+    HTStyle *self = typecalloc(HTStyle);
+
+    if (self == NULL)
+	outofmem(__FILE__, "HTStyleNew");
+    return self;
+}
+
+/*	Create a new style with a name
+*/
+HTStyle *HTStyleNewNamed(const char *name)
+{
+    HTStyle *self = HTStyleNew();
+
+    StrAllocCopy(self->w_name, name);
+    self->id = -1;		/* <0 */
+    return self;
+}
+
+/*	Free a style
+*/
+HTStyle *HTStyleFree(HTStyle *self)
+{
+    FREE(self->w_name);
+    FREE(self->w_SGMLTag);
+    FREE(self);
+    return NULL;
+}
+
+#ifdef SUPPRESS			/* Only on the NeXT */
+/*	Read a style from a stream	(without its name)
+ *	--------------------------
+ *
+ *	Reads a style with paragraph information from a stream.
+ *	The style name is not read or written by these routines.
+ */
+#define NONE_STRING "(None)"
+#define HTStream NXStream
+
+HTStyle *HTStyleRead(HTStyle *style, HTStream *stream)
+{
+    char myTag[STYLE_NAME_LENGTH];
+    char fontName[STYLE_NAME_LENGTH];
+    NXTextStyle *p;
+    int tab;
+    int gotpara;		/* flag: have we got a paragraph definition? */
+
+    NXScanf(stream, "%s%s%f%d",
+	    myTag,
+	    fontName,
+	    &style->fontSize,
+	    &gotpara);
+    if (gotpara) {
+	if (!style->paragraph) {
+	    style->paragraph = malloc(sizeof(*(style->paragraph)));
+	    if (!style->paragraph)
+		outofmem(__FILE__, "HTStyleRead");
+	    style->paragraph->tabs = 0;
+	}
+	p = style->paragraph;
+	NXScanf(stream, "%f%f%f%f%hd%f%f%hd",
+		&p->indent1st,
+		&p->indent2nd,
+		&p->lineHt,
+		&p->descentLine,
+		&p->alignment,
+		&style->spaceBefore,
+		&style->spaceAfter,
+		&p->numTabs);
+	FREE(p->tabs);
+	p->tabs = malloc(p->numTabs * sizeof(p->tabs[0]));
+	if (!p->tabs)
+	    outofmem(__FILE__, "HTStyleRead");
+	for (tab = 0; tab < p->numTabs; tab++) {
+	    NXScanf(stream, "%hd%f",
+		    &p->tabs[tab].kind,
+		    &p->tabs[tab].x);
+	}
+    } else {			/* No paragraph */
+	FREE(style->paragraph);
+    }				/* if no paragraph */
+    StrAllocCopy(style->SGMLTag, myTag);
+    if (strcmp(fontName, NONE_STRING) == 0)
+	style->font = 0;
+    else
+      style->font =[Font newFont: fontName size:style->fontSize];
+    return NULL;
+}
+
+/*	Write a style to a stream in a compatible way
+*/
+HTStyle *HTStyleWrite(HTStyle *style, NXStream * stream)
+{
+    int tab;
+    NXTextStyle *p = style->paragraph;
+
+    NXPrintf(stream, "%s %s %f %d\n",
+	     style->SGMLTag,
+	     style->font ?[style->font name] : NONE_STRING,
+	     style->fontSize,
+	     p != 0);
+
+    if (p) {
+	NXPrintf(stream, "\t%f %f %f %f %d %f %f\t%d\n",
+		 p->indent1st,
+		 p->indent2nd,
+		 p->lineHt,
+		 p->descentLine,
+		 p->alignment,
+		 style->spaceBefore,
+		 style->spaceAfter,
+		 p->numTabs);
+
+	for (tab = 0; tab < p->numTabs; tab++)
+	    NXPrintf(stream, "\t%d %f\n",
+		     p->tabs[tab].kind,
+		     p->tabs[tab].x);
+    }
+    return style;
+}
+
+/*	Write a style to stdout for diagnostics
+*/
+HTStyle *HTStyleDump(HTStyle *style)
+{
+    int tab;
+    NXTextStyle *p = style->paragraph;
+
+    printf(STYLE_DUMP_FONT,
+	   style,
+	   style->name,
+	   style->SGMLTag,
+	   [style->font name],
+	   style->fontSize);
+    if (p) {
+	printf(STYLE_DUMP_IDENT,
+	       p->indent1st,
+	       p->indent2nd,
+	       p->lineHt,
+	       p->descentLine);
+	printf(STYLE_DUMP_ALIGN,
+	       p->alignment,
+	       p->numTabs,
+	       style->spaceBefore,
+	       style->spaceAfter);
+
+	for (tab = 0; tab < p->numTabs; tab++) {
+	    printf(STYLE_DUMP_TAB,
+		   p->tabs[tab].kind,
+		   p->tabs[tab].x);
+	}
+	printf("\n");
+    }				/* if paragraph */
+    return style;
+}
+#endif /* SUPPRESS */
+
+/*			StyleSheet Functions
+ *			====================
+ */
+
+/*	Searching for styles:
+*/
+HTStyle *HTStyleNamed(HTStyleSheet *self, const char *name)
+{
+    HTStyle *scan;
+
+    for (scan = self->styles; scan; scan = scan->next)
+	if (0 == strcmp(GetHTStyleName(scan), name))
+	    return scan;
+    CTRACE((tfp, "StyleSheet: No style named `%s'\n", name));
+    return NULL;
+}
+
+#ifdef NEXT_SUPRESS		/* Not in general common code */
+
+HTStyle *HTStyleMatching(HTStyleSheet *self, HTStyle *style)
+{
+    HTStyle *scan;
+
+    for (scan = self->styles; scan; scan = scan->next)
+	if (scan->paragraph == para)
+	    return scan;
+    return NULL;
+}
+
+/*	Find the style which best fits a given run
+ *	------------------------------------------
+ *
+ *	This heuristic is used for guessing the style for a run of
+ *	text which has been pasted in.  In order, we try:
+ *
+ *	A style whose paragraph structure is actually used by the run.
+ *	A style matching in font
+ *	A style matching in paragraph style exactly
+ *	A style matching in paragraph to a degree
+ */
+
+HTStyle *HTStyleForRun(HTStyleSheet *self, NXRun * run)
+{
+    HTStyle *scan;
+    HTStyle *best = 0;
+    int bestMatch = 0;
+    NXTextStyle *rp = run->paraStyle;
+
+    for (scan = self->styles; scan; scan = scan->next)
+	if (scan->paragraph == run->paraStyle)
+	    return scan;	/* Exact */
+
+    for (scan = self->styles; scan; scan = scan->next) {
+	NXTextStyle *sp = scan->paragraph;
+
+	if (sp) {
+	    int match = 0;
+
+	    if (sp->indent1st == rp->indent1st)
+		match = match + 1;
+	    if (sp->indent2nd == rp->indent2nd)
+		match = match + 2;
+	    if (sp->lineHt == rp->lineHt)
+		match = match + 1;
+	    if (sp->numTabs == rp->numTabs)
+		match = match + 1;
+	    if (sp->alignment == rp->alignment)
+		match = match + 3;
+	    if (scan->font == run->font)
+		match = match + 10;
+	    if (match > bestMatch) {
+		best = scan;
+		bestMatch = match;
+	    }
+	}
+    }
+    CTRACE((tfp, "HTStyleForRun: Best match for style is %d out of 18\n",
+	    bestMatch));
+    return best;
+}
+#endif /* NEXT_SUPRESS */
+
+/*	Add a style to a sheet
+ *	----------------------
+ */
+HTStyleSheet *HTStyleSheetAddStyle(HTStyleSheet *self, HTStyle *style)
+{
+    style->next = 0;		/* The style will go on the end */
+    if (!self->styles) {
+	self->styles = style;
+    } else {
+	HTStyle *scan;
+
+	for (scan = self->styles; scan->next; scan = scan->next) ;	/* Find end */
+	scan->next = style;
+    }
+    return self;
+}
+
+/*	Remove the given object from a style sheet if it exists
+*/
+HTStyleSheet *HTStyleSheetRemoveStyle(HTStyleSheet *self, HTStyle *style)
+{
+    if (self->styles == style) {
+	self->styles = style->next;
+	return self;
+    } else {
+	HTStyle *scan;
+
+	for (scan = self->styles; scan; scan = scan->next) {
+	    if (scan->next == style) {
+		scan->next = style->next;
+		return self;
+	    }
+	}
+    }
+    return NULL;
+}
+
+/*	Create new style sheet
+*/
+
+HTStyleSheet *HTStyleSheetNew(void)
+{
+    HTStyleSheet *self = typecalloc(HTStyleSheet);
+
+    if (self == NULL)
+	outofmem(__FILE__, "HTStyleSheetNew");
+    return self;
+}
+
+/*	Free off a style sheet pointer
+*/
+HTStyleSheet *HTStyleSheetFree(HTStyleSheet *self)
+{
+    HTStyle *style;
+
+    while ((style = self->styles) != 0) {
+	self->styles = style->next;
+	HTStyleFree(style);
+    }
+    FREE(self);
+    return NULL;
+}
+
+/*	Read a stylesheet from a typed stream
+ *	-------------------------------------
+ *
+ *	Reads a style sheet from a stream.  If new styles have the same names
+ *	as existing styles, they replace the old ones without changing the ids.
+ */
+
+#ifdef NEXT_SUPRESS		/* Only on the NeXT */
+HTStyleSheet *HTStyleSheetRead(HTStyleSheet *self, NXStream * stream)
+{
+    int numStyles;
+    int i;
+    HTStyle *style;
+    char styleName[80];
+
+    NXScanf(stream, " %d ", &numStyles);
+    CTRACE((tfp, "Stylesheet: Reading %d styles\n", numStyles));
+    for (i = 0; i < numStyles; i++) {
+	NXScanf(stream, "%s", styleName);
+	style = HTStyleNamed(self, styleName);
+	if (!style) {
+	    style = HTStyleNewNamed(styleName);
+	    (void) HTStyleSheetAddStyle(self, style);
+	}
+	(void) HTStyleRead(style, stream);
+	if (TRACE)
+	    HTStyleDump(style);
+    }
+    return self;
+}
+
+/*	Write a stylesheet to a typed stream
+ *	------------------------------------
+ *
+ *	Writes a style sheet to a stream.
+ */
+
+HTStyleSheet *HTStyleSheetWrite(HTStyleSheet *self, NXStream * stream)
+{
+    int numStyles = 0;
+    HTStyle *style;
+
+    for (style = self->styles; style; style = style->next)
+	numStyles++;
+    NXPrintf(stream, "%d\n", numStyles);
+
+    CTRACE((tfp, "StyleSheet: Writing %d styles\n", numStyles));
+    for (style = self->styles; style; style = style->next) {
+	NXPrintf(stream, "%s ", style->name);
+	(void) HTStyleWrite(style, stream);
+    }
+    return self;
+}
+#endif /* NEXT_SUPRESS */
diff --git a/WWW/Library/Implementation/HTStyle.h b/WWW/Library/Implementation/HTStyle.h
new file mode 100644
index 00000000..0e51e39c
--- /dev/null
+++ b/WWW/Library/Implementation/HTStyle.h
@@ -0,0 +1,241 @@
+/*
+ * $LynxId: HTStyle.h,v 1.17 2011/06/06 09:12:01 tom Exp $
+					    HTStyle: Style management for libwww
+                              STYLE DEFINITION FOR HYPERTEXT
+
+   Styles allow the translation between a logical property of a piece of text
+   and its physical representation.
+
+   A StyleSheet is a collection of styles, defining the translation necessary
+   to represent a document.  It is a linked list of styles.
+
+Overriding this module
+
+   Why is the style structure declared in the HTStyle.h module, instead of
+   having the user browser define the structure, and the HTStyle routines just
+   use sizeof() for copying?
+
+   It's not obvious whether HTStyle.c should be common code.  It's useful to
+   have common code for loading style sheets, especially if the movement toward
+   standard style sheets gets going.
+
+   If it IS common code, then both the hypertext object and HTStyle.c must know
+   the structure of a style, so HTStyle.h is a suitable place to put that. 
+   HTStyle.c has to be compiled with a knowledge of the
+
+   It we take it out of the library, then of course HTStyle could be declared
+   as an undefined structure.  The only references to it are in the
+   structure-flattening code HTML.c and HTPlain.c, which only use
+   HTStypeNamed().
+
+   You can in any case override this function in your own code, which will
+   prevent the HTStyle from being loaded.  You will be able to redefine your
+   style structure in this case without problems, as no other moule needs to
+   know it.
+
+ */
+#ifndef HTStyle_H
+#define HTStyle_H
+
+#include <HTAnchor.h>
+
+typedef long int HTFont;	/* Dummy definition instead */
+
+#ifdef NeXT_suppressed
+#include <appkit/appkit.h>
+typedef NXCoord HTCoord;
+
+#define HTParagraphStyle NXTextStyle
+#define HTCoord NXCoord
+typedef struct _color {
+    float grey;
+    int RGBColor;
+} HTColor;
+
+#else
+
+typedef int HTCoord;		/* changed from float to int - kw */
+
+typedef struct _HTParagraphStyle {
+    HTCoord left_indent;	/* @@@@ junk! etc etc */
+} HTParagraphStyle;
+
+typedef int HTColor;		/* Sorry about the US spelling! */
+
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#define STYLE_NAME_LENGTH       80	/* @@@@@@@@@@@ */
+    typedef struct {
+	short kind;		/* only NX_LEFTTAB implemented */
+	HTCoord position;	/* x coordinate for stop */
+    } HTTabStop;
+
+/*      The Style Structure
+ *      -------------------
+ */
+
+    typedef struct _HTStyle {
+
+/*      Style management information
+*/
+	struct _HTStyle *next;	/* Link for putting into stylesheet */
+	char *w_name;		/* Style name */
+	const char *c_name;	/* Style name */
+	int id;			/* equivalent of name, for speed */
+	char *w_SGMLTag;	/* Tag name to start */
+	const char *c_SGMLTag;	/* Tag name to start */
+
+/*      Character attributes    (a la NXRun)
+*/
+	HTFont font;		/* Font id */
+	HTCoord fontSize;	/* The size of font, not independent */
+	HTColor color;		/* text gray of current run */
+	int superscript;	/* superscript (-sub) in points */
+
+	HTAnchor *anchor;	/* Anchor id if any, else zero */
+
+/*      Paragraph Attribtes     (a la NXTextStyle)
+*/
+	HTCoord indent1st;	/* how far first line in paragraph is
+				   * indented */
+	HTCoord leftIndent;	/* how far second line is indented */
+	HTCoord rightIndent;	/* (Missing from NeXT version */
+	short alignment;	/* quad justification */
+	HTCoord lineHt;		/* line height */
+	HTCoord descentLine;	/* descender bottom from baseline */
+	const HTTabStop *tabs;	/* array of tab stops, 0 terminated */
+
+	BOOL wordWrap;		/* Yes means wrap at space not char */
+	BOOL freeFormat;	/* Yes means \n is just white space */
+	HTCoord spaceBefore;	/* Omissions from NXTextStyle */
+	HTCoord spaceAfter;
+	int paraFlags;		/* Paragraph flags, bits as follows: */
+
+#define PARA_KEEP       1	/* Do not break page within this paragraph */
+#define PARA_WITH_NEXT  2	/* Do not break page after this paragraph */
+
+#define HT_JUSTIFY 0		/* For alignment */
+#define HT_LEFT 1
+#define HT_RIGHT 2
+#define HT_CENTER 3
+
+    } HTStyle;
+
+#define GetHTStyleName(p) ((p)->w_name    ? (p)->w_name    : (p)->c_name)
+#define GetHTStyleSGML(p) ((p)->w_SGMLTag ? (p)->w_SGMLTag : (p)->c_SGMLTag)
+
+#define HTStyleInit( \
+	next, name, SGML_tag, \
+	font, fontsize, color, superscript, \
+	anchor, indent1st, leftIndent, rightIndent, \
+	alignment, lineHt, descentLine, \
+	tabs, wordWrap, freeFormat, spaceBefore, spaceAfter, paraFlags) \
+    { \
+	next, NULL, #name, ST_##name, NULL, SGML_tag, \
+	font, fontsize, color, superscript, \
+	anchor, indent1st, leftIndent, rightIndent, \
+	alignment, lineHt, descentLine, \
+	tabs, wordWrap, freeFormat, spaceBefore, spaceAfter, paraFlags }
+
+#define HT_ALIGN_NONE (-1)
+
+/*      Style functions:
+*/
+    extern HTStyle *HTStyleNew(void);
+    extern HTStyle *HTStyleNewNamed(const char *name);
+    extern HTStyle *HTStyleFree(HTStyle *self);
+
+#ifdef SUPRESS
+    extern HTStyle *HTStyleRead(HTStyle *self, HTStream *stream);
+    extern HTStyle *HTStyleWrite(HTStyle *self, HTStream *stream);
+#endif
+/*              Style Sheet
+ *              -----------
+ */
+    typedef struct _HTStyleSheet {
+	const char *name;
+	HTStyle *styles;
+    } HTStyleSheet;
+
+/*      Stylesheet functions:
+*/
+    extern HTStyleSheet *HTStyleSheetNew(void);
+    extern HTStyleSheet *HTStyleSheetFree(HTStyleSheet *self);
+    extern HTStyle *HTStyleNamed(HTStyleSheet *self, const char *name);
+    extern HTStyle *HTStyleForParagraph(HTStyleSheet *self, HTParagraphStyle * paraStyle);
+    extern HTStyle *HTStyleMatching(HTStyleSheet *self, HTStyle *style);
+
+/* extern HTStyle * HTStyleForRun (HTStyleSheet *self, NXRun * run); */
+    extern HTStyleSheet *HTStyleSheetAddStyle(HTStyleSheet *self, HTStyle *style);
+    extern HTStyleSheet *HTStyleSheetRemoveStyle(HTStyleSheet *self, HTStyle *style);
+
+#ifdef SUPPRESS
+    extern HTStyleSheet *HTStyleSheetRead(HTStyleSheet *self, HTStream *stream);
+    extern HTStyleSheet *HTStyleSheetWrite(HTStyleSheet *self, HTStream *stream);
+#endif
+#define CLEAR_POINTER ((void *)-1)	/* Pointer value means "clear me" */
+
+/* DefaultStyle.c */
+    extern HTStyleSheet *DefaultStyle(HTStyle ***result_array);
+
+/* enum, use this instead of HTStyle name comparisons */
+    enum HTStyle_Enum {
+	ST_Normal = 0,
+	ST_DivCenter,
+	ST_DivLeft,
+	ST_DivRight,
+	ST_Banner,
+	ST_Blockquote,
+	ST_Bq,
+	ST_Footnote,
+	ST_List,
+	ST_List1,
+	ST_List2,
+	ST_List3,
+	ST_List4,
+	ST_List5,
+	ST_List6,
+	ST_Menu,
+	ST_Menu1,
+	ST_Menu2,
+	ST_Menu3,
+	ST_Menu4,
+	ST_Menu5,
+	ST_Menu6,
+	ST_Glossary,
+	ST_Glossary1,
+	ST_Glossary2,
+	ST_Glossary3,
+	ST_Glossary4,
+	ST_Glossary5,
+	ST_Glossary6,
+	ST_GlossaryCompact,
+	ST_GlossaryCompact1,
+	ST_GlossaryCompact2,
+	ST_GlossaryCompact3,
+	ST_GlossaryCompact4,
+	ST_GlossaryCompact5,
+	ST_GlossaryCompact6,
+	ST_Example,
+	ST_Preformatted,
+	ST_Listing,
+	ST_Address,
+	ST_Note,
+	ST_Heading1,
+	ST_Heading2,
+	ST_Heading3,
+	ST_Heading4,
+	ST_Heading5,
+	ST_Heading6,
+	ST_HeadingCenter,
+	ST_HeadingLeft,
+	ST_HeadingRight
+    };
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTStyle_H */
diff --git a/WWW/Library/Implementation/HTTCP.c b/WWW/Library/Implementation/HTTCP.c
new file mode 100644
index 00000000..2723422c
--- /dev/null
+++ b/WWW/Library/Implementation/HTTCP.c
@@ -0,0 +1,2182 @@
+/*
+ * $LynxId: HTTCP.c,v 1.107 2012/02/09 12:36:45 tom Exp $
+ *
+ *			Generic Communication Code		HTTCP.c
+ *			==========================
+ *
+ *	This code is in common between client and server sides.
+ *
+ *	16 Jan 92  TBL	Fix strtol() undefined on CMU Mach.
+ *	25 Jun 92  JFG	Added DECNET option through TCP socket emulation.
+ *	13 Sep 93  MD	Added correct return of vmserrorno for HTInetStatus.
+ *			Added decoding of vms error message for MULTINET.
+ *	7-DEC-1993 Bjorn S. Nilsson, ALEPH, CERN, VMS UCX ioctl() changes
+ *			(done of Mosaic)
+ *	19 Feb 94  Danny Mayer	Added Bjorn Fixes to Lynx version
+ *	 7 Mar 94  Danny Mayer	Added Fix UCX version for full domain name
+ *	20 May 94  Andy Harper	Added support for CMU TCP/IP transport
+ *	17 Nov 94  Andy Harper	Added support for SOCKETSHR transport
+ *	16 Jul 95  S. Bjorndahl added kluge to deal with LIBCMU bug
+ */
+
+#include <HTUtils.h>
+#include <HTParse.h>
+#include <HTAlert.h>
+#include <HTTCP.h>
+#include <LYGlobalDefs.h>	/* added for no_suspend */
+#include <LYUtils.h>
+
+#ifdef NSL_FORK
+#include <signal.h>
+#include <www_wait.h>
+#endif /* NSL_FORK */
+
+#ifdef HAVE_RESOLV_H
+#include <resolv.h>
+#endif
+
+#ifdef __DJGPP__
+#include <netdb.h>
+#endif /* __DJGPP__ */
+
+#define LYNX_ADDRINFO	struct addrinfo
+#define LYNX_HOSTENT	struct hostent
+
+#define OK_HOST(p) ((p) != 0 && ((p)->h_length) != 0)
+
+#ifdef SVR4_BSDSELECT
+int BSDselect(int nfds,
+	      fd_set * readfds,
+	      fd_set * writefds,
+	      fd_set * exceptfds,
+	      struct timeval *select_timeout);
+
+#ifdef select
+#undef select
+#endif /* select */
+#define select BSDselect
+#ifdef SOCKS
+#ifdef Rselect
+#undef Rselect
+#endif /* Rselect */
+#define Rselect BSDselect
+#endif /* SOCKS */
+#endif /* SVR4_BSDSELECT */
+
+#include <LYLeaks.h>
+
+/*
+ *  Module-Wide variables
+ */
+static char *hostname = NULL;	/* The name of this host */
+
+/*
+ *  PUBLIC VARIABLES
+ */
+#ifdef SOCKS
+unsigned long socks_bind_remoteAddr;	/* for long Rbind */
+#endif /* SOCKS */
+
+/*	Encode INET status (as in sys/errno.h)			  inet_status()
+ *	------------------
+ *
+ *  On entry,
+ *	where		gives a description of what caused the error
+ *	global errno	gives the error number in the Unix way.
+ *
+ *  On return,
+ *	returns		a negative status in the Unix way.
+ */
+
+#ifdef DECL_SYS_ERRLIST
+extern char *sys_errlist[];	/* see man perror on cernvax */
+extern int sys_nerr;
+#endif /* DECL_SYS_ERRLIST */
+
+#ifdef __DJGPP__
+static int ResolveYield(void)
+{
+    return HTCheckForInterrupt()? 0 : 1;
+}
+#endif
+
+#if defined(VMS) && defined(UCX)
+/*
+ *  A routine to mimic the ioctl function for UCX.
+ *  Bjorn S. Nilsson, 25-Nov-1993. Based on an example in the UCX manual.
+ */
+#include <HTioctl.h>
+
+int HTioctl(int d,
+	    int request,
+	    int *argp)
+{
+    int sdc, status;
+    unsigned short fun, iosb[4];
+    char *p5, *p6;
+    struct comm {
+	int command;
+	char *addr;
+    } ioctl_comm;
+    struct it2 {
+	unsigned short len;
+	unsigned short opt;
+	struct comm *addr;
+    } ioctl_desc;
+
+    if ((sdc = vaxc$get_sdc(d)) == 0) {
+	set_errno(EBADF);
+	return -1;
+    }
+    ioctl_desc.opt = UCX$C_IOCTL;
+    ioctl_desc.len = sizeof(struct comm);
+
+    ioctl_desc.addr = &ioctl_comm;
+    if (request & IOC_OUT) {
+	fun = IO$_SENSEMODE;
+	p5 = 0;
+	p6 = (char *) &ioctl_desc;
+    } else {
+	fun = IO$_SETMODE;
+	p5 = (char *) &ioctl_desc;
+	p6 = 0;
+    }
+    ioctl_comm.command = request;
+    ioctl_comm.addr = (char *) argp;
+    status = sys$qiow(0, sdc, fun, iosb, 0, 0, 0, 0, 0, 0, p5, p6);
+    if (!(status & 01)) {
+	set_errno(status);
+	return -1;
+    }
+    if (!(iosb[0] & 01)) {
+	set_errno(iosb[0]);
+	return -1;
+    }
+    return 0;
+}
+#endif /* VMS && UCX */
+
+#define MY_FORMAT "TCP: Error %d in `SOCKET_ERRNO' after call to %s() failed.\n\t%s\n"
+	   /* third arg is transport/platform specific */
+
+/*	Report Internet Error
+ *	---------------------
+ */
+int HTInetStatus(const char *where)
+{
+    int status;
+    int saved_errno = errno;
+
+#ifdef VMS
+#ifdef MULTINET
+    SOCKET_ERRNO = vmserrno;
+#endif /* MULTINET */
+#endif /* VMS */
+
+#ifdef VM
+    CTRACE((tfp, MY_FORMAT, SOCKET_ERRNO, where,
+	    "(Error number not translated)"));	/* What Is the VM equiv? */
+#define ER_NO_TRANS_DONE
+#endif /* VM */
+
+#ifdef VMS
+#ifdef MULTINET
+    CTRACE((tfp, MY_FORMAT, SOCKET_ERRNO, where,
+	    vms_errno_string()));
+#else
+    CTRACE((tfp, MY_FORMAT, SOCKET_ERRNO, where,
+	    ((SOCKET_ERRNO > 0 && SOCKET_ERRNO <= 65) ?
+	     strerror(SOCKET_ERRNO) : "(Error number not translated)")));
+#endif /* MULTINET */
+#define ER_NO_TRANS_DONE
+#endif /* VMS */
+
+#ifdef HAVE_STRERROR
+    CTRACE((tfp, MY_FORMAT, SOCKET_ERRNO, where,
+	    strerror(SOCKET_ERRNO)));
+#define ER_NO_TRANS_DONE
+#endif /* HAVE_STRERROR */
+
+#ifndef ER_NO_TRANS_DONE
+    CTRACE((tfp, MY_FORMAT, SOCKET_ERRNO, where,
+	    (SOCKET_ERRNO < sys_nerr ?
+	     sys_errlist[SOCKET_ERRNO] : "Unknown error")));
+#endif /* !ER_NO_TRANS_DONE */
+
+#ifdef VMS
+#ifndef MULTINET
+    CTRACE((tfp,
+	    "         Unix error number (SOCKET_ERRNO) = %ld dec\n",
+	    SOCKET_ERRNO));
+    CTRACE((tfp,
+	    "         VMS error (vaxc$errno)    = %lx hex\n",
+	    vaxc$errno));
+#endif /* MULTINET */
+#endif /* VMS */
+
+    set_errno(saved_errno);
+
+#ifdef VMS
+    /*
+     * uerrno and errno happen to be zero if vmserrno <> 0
+     */
+#ifdef MULTINET
+    status = -vmserrno;
+#else
+    status = -vaxc$errno;
+#endif /* MULTINET */
+#else
+    status = -SOCKET_ERRNO;
+#endif /* VMS */
+    return status;
+}
+
+/*	Parse a cardinal value				       parse_cardinal()
+ *	----------------------
+ *
+ * On entry,
+ *	*pp	    points to first character to be interpreted, terminated by
+ *		    non 0:9 character.
+ *	*pstatus    points to status already valid
+ *	maxvalue    gives the largest allowable value.
+ *
+ * On exit,
+ *	*pp	    points to first unread character
+ *	*pstatus    points to status updated iff bad
+ */
+unsigned int HTCardinal(int *pstatus,
+			char **pp,
+			unsigned int max_value)
+{
+    unsigned int n;
+
+    if ((**pp < '0') || (**pp > '9')) {		/* Null string is error */
+	*pstatus = -3;		/* No number where one expected */
+	return 0;
+    }
+
+    n = 0;
+    while ((**pp >= '0') && (**pp <= '9'))
+	n = n * 10 + (unsigned) (*((*pp)++) - '0');
+
+    if (n > max_value) {
+	*pstatus = -4;		/* Cardinal outside range */
+	return 0;
+    }
+
+    return n;
+}
+
+#ifndef DECNET			/* Function only used below for a trace message */
+/*	Produce a string for an Internet address
+ *	----------------------------------------
+ *
+ *  On exit,
+ *	returns a pointer to a static string which must be copied if
+ *		it is to be kept.
+ */
+const char *HTInetString(SockA * soc_in)
+{
+#ifdef INET6
+    static char hostbuf[MAXHOSTNAMELEN];
+
+    getnameinfo((struct sockaddr *) soc_in,
+		SOCKADDR_LEN(soc_in),
+		hostbuf, (socklen_t) sizeof(hostbuf),
+		NULL, 0,
+		NI_NUMERICHOST);
+    return hostbuf;
+#else
+    static char string[20];
+
+    sprintf(string, "%d.%d.%d.%d",
+	    (int) *((unsigned char *) (&soc_in->sin_addr) + 0),
+	    (int) *((unsigned char *) (&soc_in->sin_addr) + 1),
+	    (int) *((unsigned char *) (&soc_in->sin_addr) + 2),
+	    (int) *((unsigned char *) (&soc_in->sin_addr) + 3));
+    return string;
+#endif /* INET6 */
+}
+#endif /* !DECNET */
+
+/*	Check whether string is a valid Internet hostname - kw
+ *	-------------------------------------------------
+ *
+ *  Checks whether
+ *  - contains only valid chars for domain names (actually, the
+ *    restrictions are somewhat relaxed),
+ *  - no leading dots or empty segments,
+ *  - no segment starts with '-' or '+' [this protects telnet command],
+ *  - max. length of dot-separated segment <= 63 (RFC 1034,1035),
+ *  - total length <= 254 (if it ends with dot) or 253 (otherwise)
+ *     [an interpretation of RFC 1034,1035, although RFC 1123
+ *      suggests 255 as limit - kw].
+ *
+ *  Note: user (before '@') and port (after ':') components from
+ *      host part of URL should be already stripped (if appropriate)
+ *      from the input string.
+ *
+ *  On exit,
+ *	returns 1 if valid, otherwise 0.
+ */
+BOOL valid_hostname(char *name)
+{
+    int i = 1, iseg = 0;
+    char *cp = name;
+
+    if (!(name && *name))
+	return NO;
+    for (; (*cp && i <= 253); cp++, i++) {
+	if (*cp == '.') {
+	    if (iseg == 0) {
+		return NO;
+	    } else {
+		iseg = 0;
+		continue;
+	    }
+	} else if (iseg == 0 && (*cp == '-' || *cp == '+')) {
+	    return NO;
+	} else if (++iseg > 63) {
+	    return NO;
+	}
+	if (!isalnum(UCH(*cp)) &&
+	    *cp != '-' && *cp != '_' &&
+	    *cp != '$' && *cp != '+') {
+	    return NO;
+	}
+    }
+    return (BOOL) (*cp == '\0' || (*cp == '.' && iseg != 0 && cp[1] == '\0'));
+}
+
+#ifdef NSL_FORK
+/*
+ *  Function to allow us to be killed with a normal signal (not
+ *  SIGKILL), but don't go through normal libc exit() processing, which
+ *  would screw up parent's stdio.  -BL
+ */
+static void quench(int sig GCC_UNUSED)
+{
+    _exit(2);
+}
+#endif /* NSL_FORK */
+
+int lynx_nsl_status = HT_OK;
+
+#define DEBUG_HOSTENT		/* disable in case of problems */
+#define DEBUG_HOSTENT_CHILD	/* for NSL_FORK, may screw up trace file */
+
+/*
+ *  Two auxiliary functions for name lookup and LYNX_HOSTENT.
+ *
+ *  dump_hostent - dumps the contents of a LYNX_HOSTENT to the
+ *  trace log or stderr, including all pointer values, strings, and
+ *  addresses, in a format inspired by gdb's print format. - kw
+ */
+static void dump_hostent(const char *msgprefix,
+			 const LYNX_HOSTENT *phost)
+{
+    if (TRACE) {
+	int i;
+	char **pcnt;
+
+	CTRACE((tfp, "%s: %p ", msgprefix, (const void *) phost));
+	if (phost) {
+	    CTRACE((tfp, "{ h_name = %p", phost->h_name));
+	    if (phost->h_name) {
+		CTRACE((tfp, " \"%s\",", phost->h_name));
+	    } else {
+		CTRACE((tfp, ","));
+	    }
+	    CTRACE((tfp, "\n\t h_aliases = %p", (void *) phost->h_aliases));
+	    if (phost->h_aliases) {
+		CTRACE((tfp, " {"));
+		for (pcnt = phost->h_aliases; *pcnt; pcnt++) {
+		    CTRACE((tfp, "%s %p \"%s\"",
+			    (pcnt == phost->h_aliases ? " " : ", "),
+			    *pcnt, *pcnt));
+		}
+		CTRACE((tfp, "%s0x0 },\n\t",
+			(*phost->h_aliases ? ", " : " ")));
+	    } else {
+		CTRACE((tfp, ",\n\t"));
+	    }
+	    CTRACE((tfp, " h_addrtype = %d,", phost->h_addrtype));
+	    CTRACE((tfp, " h_length = %d,\n\t", phost->h_length));
+	    CTRACE((tfp, " h_addr_list = %p", (void *) phost->h_addr_list));
+	    if (phost->h_addr_list) {
+		CTRACE((tfp, " {"));
+		for (pcnt = phost->h_addr_list; *pcnt; pcnt++) {
+		    CTRACE((tfp, "%s %p",
+			    (pcnt == phost->h_addr_list ? "" : ","),
+			    *pcnt));
+		    for (i = 0; i < phost->h_length; i++) {
+			CTRACE((tfp, "%s%d%s", (i == 0 ? " \"" : "."),
+				(int) *((unsigned char *) (*pcnt) + i),
+				(i + 1 == phost->h_length ? "\"" : "")));
+		    }
+		}
+		if (*phost->h_addr_list) {
+		    CTRACE((tfp, ", 0x0 } }"));
+		} else {
+		    CTRACE((tfp, " 0x0 } }"));
+		}
+	    } else {
+		CTRACE((tfp, "}"));
+	    }
+	}
+	CTRACE((tfp, "\n"));
+	fflush(tfp);
+    }
+}
+
+/*
+ *  fill_rehostent - copies as much as possible relevant content from
+ *  the LYNX_HOSTENT pointed to by phost to the char buffer given
+ *  by rehostent, subject to maximum output length rehostentsize,
+ *  following pointers and building self-contained output which can be
+ *  cast to a LYNX_HOSTENT. - kw
+ *  See also description of LYGetHostByName.
+ */
+#if defined(NSL_FORK) || defined(_WINDOWS_NSL)
+
+#define REHOSTENT_SIZE 128	/* not bigger than pipe buffer! */
+
+typedef struct {
+    LYNX_HOSTENT h;
+    char rest[REHOSTENT_SIZE];
+} AlignedHOSTENT;
+
+static size_t fill_rehostent(char *rehostent,
+			     size_t rehostentsize,
+			     const LYNX_HOSTENT *phost)
+{
+    AlignedHOSTENT *data = (AlignedHOSTENT *) (void *) rehostent;
+    int num_addrs = 0;
+    int num_aliases = 0;
+    char **pcnt;
+    char *p_next_char;
+    char **p_next_charptr;
+    size_t name_len = 0;
+    size_t required_per_addr;
+    size_t curlen = sizeof(LYNX_HOSTENT);
+    size_t available = rehostentsize - curlen;
+    size_t chk_available, mem_this_alias, required_this_alias;
+    int i_addr, i_alias;
+
+    if (!phost)
+	return 0;
+    required_per_addr = (size_t) phost->h_length + sizeof(char *);
+
+    if (phost->h_addr_list)
+	available -= sizeof(phost->h_addr_list[0]);
+    if (phost->h_aliases)
+	available -= sizeof(phost->h_aliases[0]);
+    if (phost->h_name)
+	available--;
+    if (phost->h_addr_list) {
+	if (phost->h_addr_list[0]) {
+	    if (available >= required_per_addr) {
+		num_addrs++;
+		available -= required_per_addr;
+	    }
+	}
+    }
+    if (phost->h_name) {
+	name_len = strlen(phost->h_name);
+	if (available >= name_len) {
+	    available -= name_len;
+	} else {
+	    name_len = 0;
+	}
+    }
+    if (num_addrs) {
+	for (pcnt = phost->h_addr_list + 1; *pcnt; pcnt++) {
+	    if (available >= required_per_addr) {
+		num_addrs++;
+		available -= required_per_addr;
+	    } else {
+		break;
+	    }
+	}
+    }
+    chk_available = available;
+    if (phost->h_aliases) {
+	for (pcnt = phost->h_aliases; *pcnt; pcnt++) {
+	    required_this_alias = sizeof(phost->h_aliases[0]) +
+		strlen(*pcnt) + 1;
+	    if (chk_available >= required_this_alias) {
+		num_aliases++;
+		chk_available -= required_this_alias;
+	    }
+	}
+    }
+
+    data->h.h_addrtype = phost->h_addrtype;
+    data->h.h_length = phost->h_length;
+    p_next_charptr = (char **) (void *) (rehostent + curlen);
+    p_next_char = rehostent + curlen;
+    if (phost->h_addr_list)
+	p_next_char += (size_t) (num_addrs + 1) * sizeof(phost->h_addr_list[0]);
+    if (phost->h_aliases)
+	p_next_char += (size_t) (num_aliases + 1) * sizeof(phost->h_aliases[0]);
+
+    if (phost->h_addr_list) {
+	data->h.h_addr_list = p_next_charptr;
+	for (pcnt = phost->h_addr_list, i_addr = 0;
+	     i_addr < num_addrs;
+	     pcnt++, i_addr++) {
+	    MemCpy(p_next_char, *pcnt, sizeof(phost->h_addr_list[0]));
+	    *p_next_charptr++ = p_next_char;
+	    p_next_char += sizeof(phost->h_addr_list[0]);
+	}
+	*p_next_charptr = NULL;
+    } else {
+	data->h.h_addr_list = NULL;
+    }
+
+    if (phost->h_name) {
+	data->h.h_name = p_next_char;
+	if (name_len) {
+	    strcpy(p_next_char, phost->h_name);
+	    p_next_char += name_len + 1;
+	} else {
+	    *p_next_char++ = '\0';
+	}
+    } else {
+	data->h.h_name = NULL;
+    }
+
+    if (phost->h_aliases) {
+	data->h.h_aliases = p_next_charptr;
+	for (pcnt = phost->h_aliases, i_alias = 0;
+	     (*pcnt && i_alias < num_addrs);
+	     pcnt++, i_alias++) {
+	    mem_this_alias = strlen(*pcnt) + 1;
+	    required_this_alias = sizeof(phost->h_aliases[0]) +
+		mem_this_alias;
+	    if (available >= required_this_alias) {
+		i_alias++;
+		available -= required_this_alias;
+		strcpy(p_next_char, *pcnt);
+		*p_next_charptr++ = p_next_char;
+		p_next_char += mem_this_alias;
+	    }
+	    p_next_char += sizeof(phost->h_aliases[0]);
+	}
+	*p_next_charptr = NULL;
+    } else {
+	data->h.h_aliases = NULL;
+    }
+    curlen = (size_t) (p_next_char - (char *) rehostent);
+    return curlen;
+}
+
+/*
+ * This chunk of code is used in both win32 and cygwin.
+ */
+#if defined(_WINDOWS_NSL)
+static LYNX_HOSTENT *gbl_phost;	/* Pointer to host - See netdb.h */
+
+#if !(defined(__CYGWIN__) && defined(NSL_FORK))
+static int donelookup;
+
+static unsigned long __stdcall _fork_func(void *arg)
+{
+    const char *host = (const char *) arg;
+    static AlignedHOSTENT aligned_full_rehostent;
+    char *rehostent = (char *) &aligned_full_rehostent;
+    size_t rehostentlen = 0;
+
+#ifdef SH_EX
+    unsigned long addr;
+
+    addr = (unsigned long) inet_addr(host);
+    if (addr != INADDR_NONE)
+	gbl_phost = gethostbyaddr((char *) &addr, sizeof(addr), AF_INET);
+    else
+	gbl_phost = gethostbyname(host);
+#else
+    gbl_phost = gethostbyname(host);
+#endif
+
+    if (gbl_phost) {
+	rehostentlen = fill_rehostent(rehostent,
+				      (size_t) REHOSTENT_SIZE,
+				      gbl_phost);
+	if (rehostentlen == 0) {
+	    gbl_phost = (LYNX_HOSTENT *) NULL;
+	} else {
+	    gbl_phost = (LYNX_HOSTENT *) rehostent;
+	}
+    }
+
+    donelookup = TRUE;
+    return (unsigned long) (gbl_phost);
+}
+#endif /* __CYGWIN__ */
+#endif /* _WINDOWS_NSL */
+#endif /* NSL_FORK */
+
+#ifndef HAVE_H_ERRNO
+#undef  h_errno
+#define h_errno my_errno
+static int my_errno;
+
+#else /* we do HAVE_H_ERRNO: */
+#ifndef h_errno			/* there may be a macro as well as the extern data */
+extern int h_errno;
+#endif
+#endif
+
+/*
+ * Even though it is a small amount, we cannot count on reading the whole
+ * struct via a pipe in one read -TD
+ */
+#ifdef NSL_FORK
+static unsigned readit(int fd, char *buffer, size_t length)
+{
+    unsigned result = 0;
+
+    while (length != 0) {
+	unsigned got = (unsigned) read(fd, buffer, length);
+
+	if ((int) got > 0) {
+	    result += got;
+	    buffer += got;
+	    length -= got;
+	} else {
+	    break;
+	}
+    }
+    return result;
+}
+#endif /* NSL_FORK */
+
+/*	Resolve an internet hostname, like gethostbyname
+ *	------------------------------------------------
+ *
+ *  On entry,
+ *	str	points to the given host name, not numeric address,
+ *		without colon or port number.
+ *
+ *  On exit,
+ *	returns a pointer to a LYNX_HOSTENT in static storage,
+ *	or NULL in case of error or user interruption.
+ *
+ *  The interface is intended to be exactly the same as for (Unix)
+ *  gethostbyname(), except for the following:
+ *
+ *  If NSL_FORK is not used, the result of gethostbyname is returned
+ *  directly.  Otherwise:
+ *  All lists, addresses, and strings referred to by pointers in the
+ *  returned struct are located, together with the returned struct
+ *  itself, in a buffer of size REHOSTENT_SIZE.  If not everything fits,
+ *  some info is omitted, but the function is careful to still return
+ *  a valid structure, without truncating strings; it tries to return,
+ *  in order of decreasing priority, the first address (h_addr_list[0]), the
+ *  official name (h_name), the additional addresses, then alias names.
+ *
+ *  If NULL is returned, the reason is made available in the global
+ *  variable lynx_nsl_status, with one of the following values:
+ *	HT_INTERRUPTED		Interrupted by user
+ *	HT_NOT_ACCEPTABLE	Hostname detected as invalid
+ *				(also sets h_errno)
+ *	HT_H_ERRNO_VALID	An error occurred, and h_errno holds
+ *				an appropriate value
+ *	HT_ERROR		Resolver error, reason not known
+ *	HT_INTERNAL		Internal error
+ */
+LYNX_HOSTENT *LYGetHostByName(char *str)
+{
+    char *host = str;
+
+#ifdef NSL_FORK
+    /* for transfer of result between from child to parent: */
+    static AlignedHOSTENT aligned_full_rehostent;
+
+    /*
+     * We could define rehosten directly as a static char
+     * rehostent[REHOSTENT_SIZE], but the indirect approach via the above
+     * struct should automatically take care of alignment requirements.
+     * Note that, in addition,
+     * - this must be static, as we shall return a pointer to it which must
+     *   remain valid, and
+     * - we have to use the same rehostent in the child process as in the
+     *   parent (its address in the parent's address space must be the same as
+     *   in the child's, otherwise the internal pointers built by the child's
+     *   call to fill_rehostent would be invalid when seen by the parent).  -kw
+     */
+    void *rehostent = (void *) &aligned_full_rehostent;
+
+    /* for transfer of status from child to parent: */
+    struct _statuses {
+	size_t rehostentlen;
+	int h_length;
+	int child_errno;	/* sometimes useful to pass this on */
+	int child_h_errno;
+	BOOL h_errno_valid;
+    } statuses;
+
+    size_t rehostentlen = 0;
+#endif /* NSL_FORK */
+
+    LYNX_HOSTENT *result_phost = NULL;
+
+#ifdef __DJGPP__
+    _resolve_hook = ResolveYield;
+#endif
+
+    if (!str) {
+	CTRACE((tfp, "LYGetHostByName: Can't parse `NULL'.\n"));
+	lynx_nsl_status = HT_INTERNAL;
+	return NULL;
+    }
+    CTRACE((tfp, "LYGetHostByName: parsing `%s'.\n", str));
+
+    /*  Could disable this if all our callers already check - kw */
+    if (HTCheckForInterrupt()) {
+	CTRACE((tfp, "LYGetHostByName: INTERRUPTED for '%s'.\n", str));
+	lynx_nsl_status = HT_INTERRUPTED;
+	return NULL;
+    }
+
+    if (!valid_hostname(host)) {
+	lynx_nsl_status = HT_NOT_ACCEPTABLE;
+#ifdef NO_RECOVERY
+#ifdef _WINDOWS
+	WSASetLastError(NO_RECOVERY);
+#else
+	h_errno = NO_RECOVERY;
+#endif
+#endif
+	return NULL;
+    }
+#ifdef MVS			/* Outstanding problem with crash in MVS gethostbyname */
+    CTRACE((tfp, "LYGetHostByName: Calling gethostbyname(%s)\n", host));
+#endif /* MVS */
+
+    CTRACE_FLUSH(tfp);		/* so child messages will not mess up parent log */
+
+    lynx_nsl_status = HT_INTERNAL;	/* should be set to something else below */
+
+#ifdef NSL_FORK
+    statuses.h_errno_valid = NO;
+    /*
+     * Start block for fork-based gethostbyname() with checks for interrupts.
+     * - Tom Zerucha (tz@execpc.com) & FM
+     */
+    {
+	int got_rehostent = 0;
+
+#if HAVE_SIGACTION
+	sigset_t old_sigset;
+	sigset_t new_sigset;
+#endif
+	/*
+	 * Pipe, child pid, status buffers, start time, select() control
+	 * variables.
+	 */
+	int fpid, waitret;
+	int pfd[2], selret;
+	unsigned readret;
+
+#ifdef HAVE_TYPE_UNIONWAIT
+	union wait waitstat;
+
+#else
+	int waitstat = 0;
+#endif
+	time_t start_time = time((time_t *) 0);
+	fd_set readfds;
+	struct timeval one_second;
+	long dns_patience = 30;	/* how many seconds will we wait for DNS? */
+	int child_exited = 0;
+
+	/*
+	 * Reap any children that have terminated since last time through.
+	 * This might include children that we killed, then waited with WNOHANG
+	 * before they were actually ready to be reaped.  (Should be max of 1
+	 * in this state, but the loop is safe if waitpid() is implemented
+	 * correctly:  returns 0 when children exist but none have exited; -1
+	 * with errno == ECHILD when no children.) -BL
+	 */
+	do {
+	    waitret = waitpid(-1, 0, WNOHANG);
+	} while (waitret > 0 || (waitret == -1 && errno == EINTR));
+	waitret = 0;
+
+	IGNORE_RC(pipe(pfd));
+
+#if HAVE_SIGACTION
+	/*
+	 * Attempt to prevent a rare situation where the child could execute
+	 * the Lynx signal handlers because it gets killed before it even has a
+	 * chance to reset its handlers, resulting in bogus 'Exiting via
+	 * interrupt' message and screen corruption or worse.
+	 * Should that continue to be reported, for systems without
+	 * sigprocmask(), we need to find a different solutions for those.  -
+	 * kw 19990430
+	 */
+	sigemptyset(&new_sigset);
+	sigaddset(&new_sigset, SIGTERM);
+	sigaddset(&new_sigset, SIGINT);
+#ifndef NOSIGHUP
+	sigaddset(&new_sigset, SIGHUP);
+#endif /* NOSIGHUP */
+#ifdef SIGTSTP
+	sigaddset(&new_sigset, SIGTSTP);
+#endif /* SIGTSTP */
+#ifdef SIGWINCH
+	sigaddset(&new_sigset, SIGWINCH);
+#endif /* SIGWINCH */
+	sigprocmask(SIG_BLOCK, &new_sigset, &old_sigset);
+#endif /* HAVE_SIGACTION */
+
+	if ((fpid = fork()) == 0) {
+	    LYNX_HOSTENT *phost;	/* Pointer to host - See netdb.h */
+
+	    /*
+	     * Child - for the long call.
+	     *
+	     * Make sure parent can kill us at will.  -BL
+	     */
+	    (void) signal(SIGTERM, quench);
+
+	    /*
+	     * Also make sure the child does not run one of the signal handlers
+	     * that may have been installed by Lynx if one of those signals
+	     * occurs.  For example we don't want the child to remove temp
+	     * files on ^C, let the parent deal with that.  - kw
+	     */
+	    (void) signal(SIGINT, quench);
+#ifndef NOSIGHUP
+	    (void) signal(SIGHUP, quench);
+#endif /* NOSIGHUP */
+#ifdef SIGTSTP
+	    if (no_suspend)
+		(void) signal(SIGTSTP, SIG_IGN);
+	    else
+		(void) signal(SIGTSTP, SIG_DFL);
+#endif /* SIGTSTP */
+#ifdef SIGWINCH
+	    (void) signal(SIGWINCH, SIG_IGN);
+#endif /* SIGWINCH */
+#ifndef __linux__
+#ifndef DOSPATH
+	    signal(SIGBUS, SIG_DFL);
+#endif /* DOSPATH */
+#endif /* !__linux__ */
+	    signal(SIGSEGV, SIG_DFL);
+	    signal(SIGILL, SIG_DFL);
+
+#if HAVE_SIGACTION
+	    /* Restore signal mask to whatever it was before the fork. -kw */
+	    sigprocmask(SIG_SETMASK, &old_sigset, NULL);
+#endif /* HAVE_SIGACTION */
+
+	    /*
+	     * Child won't use read side.  -BL
+	     */
+	    close(pfd[0]);
+#ifdef HAVE_H_ERRNO
+	    /* to detect cases when it doesn't get set although it should */
+	    h_errno = -2;
+#endif
+	    set_errno(0);
+	    phost = gethostbyname(host);
+	    statuses.child_errno = errno;
+	    statuses.child_h_errno = h_errno;
+#ifdef HAVE_H_ERRNO
+	    statuses.h_errno_valid = YES;
+#endif
+#ifdef MVS
+	    CTRACE((tfp, "LYGetHostByName: gethostbyname() returned %d\n", phost));
+#endif /* MVS */
+
+#ifdef DEBUG_HOSTENT_CHILD
+	    dump_hostent("CHILD gethostbyname", phost);
+#endif
+	    if (OK_HOST(phost)) {
+		rehostentlen = fill_rehostent(rehostent,
+					      (size_t) REHOSTENT_SIZE,
+					      phost);
+#ifdef DEBUG_HOSTENT_CHILD
+		dump_hostent("CHILD fill_rehostent", (LYNX_HOSTENT *) rehostent);
+#endif
+	    }
+	    if (rehostentlen <= sizeof(LYNX_HOSTENT) ||
+		!OK_HOST((LYNX_HOSTENT *) rehostent)) {
+		rehostentlen = 0;
+		statuses.h_length = 0;
+	    } else {
+		statuses.h_length = ((LYNX_HOSTENT *) rehostent)->h_length;
+#ifdef HAVE_H_ERRNO
+		if (h_errno == -2)	/* success, but h_errno unchanged? */
+		    statuses.h_errno_valid = NO;
+#endif
+	    }
+	    /*
+	     * Send variables indicating status of lookup to parent.  That
+	     * includes rehostentlen, which the parent will use as the size for
+	     * the second read (if > 0).
+	     */
+	    if (!statuses.child_errno)
+		statuses.child_errno = errno;
+	    statuses.rehostentlen = rehostentlen;
+	    IGNORE_RC(write(pfd[1], &statuses, sizeof(statuses)));
+
+	    if (rehostentlen) {
+		/*
+		 * Return our resulting rehostent through pipe...
+		 */
+		IGNORE_RC(write(pfd[1], rehostent, rehostentlen));
+		close(pfd[1]);
+		_exit(0);
+	    } else {
+		/*
+		 * ...  or return error as exit code.
+		 */
+		_exit(1);
+	    }
+	}
+#if HAVE_SIGACTION
+	/*
+	 * (parent) Restore signal mask to whatever it was before the fork.  -
+	 * kw
+	 */
+	sigprocmask(SIG_SETMASK, &old_sigset, NULL);
+#endif /* HAVE_SIGACTION */
+
+	/*
+	 * (parent) Wait until lookup finishes, or interrupt, or cycled too
+	 * many times (just in case) -BL
+	 */
+
+	close(pfd[1]);		/* parent won't use write side -BL */
+
+	if (fpid < 0) {		/* fork failed */
+	    close(pfd[0]);
+	    goto failed;
+	}
+
+	while (child_exited || (long) (time((time_t *) 0) - start_time) < dns_patience) {
+
+	    FD_ZERO(&readfds);
+	    /*
+	     * This allows us to abort immediately, not after 1-second timeout,
+	     * when user hits abort key.  Can't do this when using SLANG (or at
+	     * least I don't know how), so SLANG users must live with up-to-1s
+	     * timeout.  -BL
+	     *
+	     * Whoops -- we need to make sure stdin is actually selectable!
+	     * /dev/null isn't, on some systems, which makes some useful Lynx
+	     * invocations fail.  -BL
+	     */
+	    {
+		int kbd_fd = LYConsoleInputFD(TRUE);
+
+		if (kbd_fd != INVSOC) {
+		    FD_SET(kbd_fd, &readfds);
+		}
+	    }
+
+	    one_second.tv_sec = 1;
+	    one_second.tv_usec = 0;
+	    FD_SET(pfd[0], &readfds);
+
+	    /*
+	     * Return when data received, interrupted, or failed.  If nothing
+	     * is waiting, we sleep for 1 second in select(), to be nice to the
+	     * system.  -BL
+	     */
+#ifdef SOCKS
+	    if (socks_flag)
+		selret = Rselect(pfd[0] + 1, &readfds, NULL, NULL, &one_second);
+	    else
+#endif /* SOCKS */
+		selret = select(pfd[0] + 1, &readfds, NULL, NULL, &one_second);
+
+	    if ((selret > 0) && FD_ISSET(pfd[0], &readfds)) {
+		/*
+		 * First get status, including length of address.  -BL, kw
+		 */
+		readret = readit(pfd[0], (char *) &statuses, sizeof(statuses));
+		if (readret == sizeof(statuses)) {
+		    h_errno = statuses.child_h_errno;
+		    set_errno(statuses.child_errno);
+#ifdef HAVE_H_ERRNO
+		    if (statuses.h_errno_valid) {
+			lynx_nsl_status = HT_H_ERRNO_VALID;
+			/*
+			 * If something went wrong in the child process other
+			 * than normal lookup errors, and it appears that we
+			 * have enough info to know what went wrong, generate
+			 * diagnostic output.  ENOMEM observed on linux in
+			 * processes constrained with ulimit.  It would be too
+			 * unkind to abort the session, access to local files
+			 * or through a proxy may still work.  - kw
+			 */
+			if (
+#ifdef NETDB_INTERNAL		/* linux glibc: defined in netdb.h */
+			       (errno && h_errno == NETDB_INTERNAL) ||
+#endif
+			       (errno == ENOMEM &&
+				statuses.rehostentlen == 0 &&
+			/* should probably be NETDB_INTERNAL if child
+			   memory exhausted, but we may find that
+			   h_errno remains unchanged. - kw */
+				h_errno == -2)) {
+#ifndef MULTINET
+			    HTInetStatus("CHILD gethostbyname");
+#endif
+			    HTAlert(LYStrerror(statuses.child_errno));
+			    if (errno == ENOMEM) {
+				/*
+				 * Not much point in continuing, right?  Fake a
+				 * 'z', should shorten pointless guessing
+				 * cycle.  - kw
+				 */
+				LYFakeZap(YES);
+			    }
+			}
+		    }
+#endif /* HAVE_H_ERRNO */
+		    if (statuses.rehostentlen > sizeof(LYNX_HOSTENT)) {
+			/*
+			 * Then get the full reorganized hostent.  -BL, kw
+			 */
+			readret = readit(pfd[0], rehostent, statuses.rehostentlen);
+#ifdef DEBUG_HOSTENT
+			dump_hostent("Read from pipe", (LYNX_HOSTENT *) rehostent);
+#endif
+			if (readret == statuses.rehostentlen) {
+			    got_rehostent = 1;
+			    result_phost = (LYNX_HOSTENT *) rehostent;
+			    lynx_nsl_status = HT_OK;
+			} else if (!statuses.h_errno_valid) {
+			    lynx_nsl_status = HT_INTERNAL;
+			}
+		    }
+		} else {
+		    lynx_nsl_status = HT_ERROR;
+		}
+		/*
+		 * Make sure child is cleaned up.  -BL
+		 */
+		if (!child_exited)
+		    waitret = waitpid(fpid, &waitstat, WNOHANG);
+		if (!WIFEXITED(waitstat) && !WIFSIGNALED(waitstat)) {
+		    kill(fpid, SIGTERM);
+		    waitret = waitpid(fpid, &waitstat, WNOHANG);
+		}
+		break;
+	    }
+
+	    /*
+	     * Clean up if child exited before & no data received.  -BL
+	     */
+	    if (child_exited) {
+		waitret = waitpid(fpid, &waitstat, WNOHANG);
+		break;
+	    }
+	    /*
+	     * If child exited, loop once more looking for data.  -BL
+	     */
+	    if ((waitret = waitpid(fpid, &waitstat, WNOHANG)) > 0) {
+		/*
+		 * Data will be arriving right now, so make sure we don't
+		 * short-circuit out for too many loops, and skip the interrupt
+		 * check.  -BL
+		 */
+		child_exited = 1;
+		continue;
+	    }
+
+	    /*
+	     * Abort if interrupt key pressed.
+	     */
+	    if (HTCheckForInterrupt()) {
+		CTRACE((tfp, "LYGetHostByName: INTERRUPTED gethostbyname.\n"));
+		kill(fpid, SIGTERM);
+		waitpid(fpid, NULL, WNOHANG);
+		close(pfd[0]);
+		lynx_nsl_status = HT_INTERRUPTED;
+		return NULL;
+	    }
+	}
+	close(pfd[0]);
+	if (waitret <= 0) {
+	    kill(fpid, SIGTERM);
+	    waitret = waitpid(fpid, &waitstat, WNOHANG);
+	}
+	if (waitret > 0) {
+	    if (WIFEXITED(waitstat)) {
+		CTRACE((tfp,
+			"LYGetHostByName: NSL_FORK child %d exited, status 0x%x.\n",
+			(int) waitret, WEXITSTATUS(waitstat)));
+	    } else if (WIFSIGNALED(waitstat)) {
+		CTRACE((tfp,
+			"LYGetHostByName: NSL_FORK child %d got signal, status 0x%x!\n",
+			(int) waitret, WTERMSIG(waitstat)));
+#ifdef WCOREDUMP
+		if (WCOREDUMP(waitstat)) {
+		    CTRACE((tfp,
+			    "LYGetHostByName: NSL_FORK child %d dumped core!\n",
+			    (int) waitret));
+		}
+#endif /* WCOREDUMP */
+	    } else if (WIFSTOPPED(waitstat)) {
+		CTRACE((tfp,
+			"LYGetHostByName: NSL_FORK child %d is stopped, status 0x%x!\n",
+			(int) waitret, WSTOPSIG(waitstat)));
+	    }
+	}
+	if (!got_rehostent) {
+	    goto failed;
+	}
+    }
+#else /* Not NSL_FORK: */
+
+#ifdef _WINDOWS_NSL
+    {
+	HANDLE hThread;
+	DWORD dwThreadID;
+
+#ifndef __CYGWIN__
+	if (!system_is_NT) {	/* for Windows9x */
+	    unsigned long t;
+
+	    t = (unsigned long) inet_addr(host);
+	    if (t != INADDR_NONE)
+		gbl_phost = gethostbyaddr((char *) &t, sizeof(t), AF_INET);
+	    else
+		gbl_phost = gethostbyname(host);
+	} else {		/* for Windows NT */
+#endif /* !__CYGWIN__ */
+	    gbl_phost = (LYNX_HOSTENT *) NULL;
+	    donelookup = FALSE;
+
+#if defined(__CYGWIN__) || defined(USE_WINSOCK2_H)
+	    SetLastError(WSAHOST_NOT_FOUND);
+#else
+	    WSASetLastError(WSAHOST_NOT_FOUND);
+#endif
+
+	    hThread = CreateThread(NULL, 4096UL, _fork_func, host, 0UL,
+				   &dwThreadID);
+	    if (!hThread)
+		MessageBox(NULL, "CreateThread",
+			   "CreateThread Failed", 0L);
+
+	    while (!donelookup) {
+		if (HTCheckForInterrupt()) {
+		    /* Note that host is a character array and is not freed */
+		    /* to avoid possible subthread problems: */
+		    if (!CloseHandle(hThread)) {
+			MessageBox((void *) NULL,
+				   "CloseHandle", "CloseHandle Failed", 0L);
+		    }
+		    lynx_nsl_status = HT_INTERRUPTED;
+		    return NULL;
+		}
+	    }
+#ifndef __CYGWIN__
+	}
+#endif /* !__CYGWIN__ */
+	if (gbl_phost) {
+	    lynx_nsl_status = HT_OK;
+	    result_phost = gbl_phost;
+	} else {
+	    lynx_nsl_status = HT_ERROR;
+	    goto failed;
+	}
+    }
+
+#else /* !NSL_FORK, !_WINDOWS_NSL: */
+    {
+	LYNX_HOSTENT *phost;
+
+	phost = gethostbyname(host);	/* See netdb.h */
+#ifdef MVS
+	CTRACE((tfp, "LYGetHostByName: gethostbyname() returned %d\n", phost));
+#endif /* MVS */
+	if (phost) {
+	    lynx_nsl_status = HT_OK;
+	    result_phost = phost;
+	} else {
+	    lynx_nsl_status = HT_H_ERRNO_VALID;
+	    goto failed;
+	}
+    }
+#endif /* !NSL_FORK, !_WINDOWS_NSL */
+#endif /* !NSL_FORK */
+
+#ifdef DEBUG_HOSTENT
+    dump_hostent("End of LYGetHostByName", result_phost);
+    CTRACE((tfp, "LYGetHostByName: Resolved name to a hostent.\n"));
+#endif
+
+    return result_phost;	/* OK */
+
+  failed:
+    CTRACE((tfp, "LYGetHostByName: Can't find internet node name `%s'.\n",
+	    host));
+    return NULL;
+}
+
+/*	Parse a network node address and port
+ *	-------------------------------------
+ *
+ *  On entry,
+ *	str	points to a string with a node name or number,
+ *		with optional trailing colon and port number.
+ *	soc_in	points to the binary internet or decnet address field.
+ *
+ *  On exit,
+ *	*soc_in is filled in.  If no port is specified in str, that
+ *		field is left unchanged in *soc_in.
+ */
+#ifndef INET6
+static int HTParseInet(SockA * soc_in, const char *str)
+{
+    char *port;
+    int dotcount_ip = 0;	/* for dotted decimal IP addr */
+    char *strptr;
+    char *host = NULL;
+
+    if (!str) {
+	CTRACE((tfp, "HTParseInet: Can't parse `NULL'.\n"));
+	return -1;
+    }
+    CTRACE((tfp, "HTParseInet: parsing `%s'.\n", str));
+    if (HTCheckForInterrupt()) {
+	CTRACE((tfp, "HTParseInet: INTERRUPTED for '%s'.\n", str));
+	return -1;
+    }
+    StrAllocCopy(host, str);	/* Make a copy we can mutilate */
+    /*
+     * Parse port number if present.
+     */
+    if ((port = strchr(host, ':')) != NULL) {
+	*port++ = 0;		/* Chop off port */
+	strptr = port;
+	if (port[0] >= '0' && port[0] <= '9') {
+#ifdef UNIX
+	    soc_in->sin_port = (PortNumber) htons(strtol(port, &strptr, 10));
+#else /* VMS: */
+#ifdef DECNET
+	    soc_in->sdn_objnum = (unsigned char) (strtol(port, &strptr, 10));
+#else
+	    soc_in->sin_port = htons((PortNumber) strtol(port, &strptr, 10));
+#endif /* Decnet */
+#endif /* Unix vs. VMS */
+#ifdef SUPPRESS			/* 1. crashes!?!.  2. URL syntax has number not name */
+	} else {
+	    struct servent *serv = getservbyname(port, (char *) 0);
+
+	    if (serv) {
+		soc_in->sin_port = serv->s_port;
+	    } else {
+		CTRACE((tfp, "TCP: Unknown service %s\n", port));
+	    }
+#endif /* SUPPRESS */
+	}
+	if (strptr && *strptr != '\0') {
+	    FREE(host);
+	    HTAlwaysAlert(NULL, gettext("Address has invalid port"));
+	    return -1;
+	}
+    }
+#ifdef DECNET
+    /*
+     * Read Decnet node name.  @@ Should know about DECnet addresses, but it's
+     * probably worth waiting until the Phase transition from IV to V.
+     */
+    soc_in->sdn_nam.n_len = min(DN_MAXNAML, strlen(host));	/* <=6 in phase 4 */
+    StrNCpy(soc_in->sdn_nam.n_name, host, soc_in->sdn_nam.n_len + 1);
+    CTRACE((tfp,
+	    "DECnet: Parsed address as object number %d on host %.6s...\n",
+	    soc_in->sdn_objnum, host));
+#else /* parse Internet host: */
+
+    if (*host >= '0' && *host <= '9') {		/* Test for numeric node address: */
+	strptr = host;
+	while (*strptr) {
+	    if (*strptr == '.') {
+		dotcount_ip++;
+	    } else if (!isdigit(UCH(*strptr))) {
+		break;
+	    }
+	    strptr++;
+	}
+	if (*strptr) {		/* found non-numeric, assume domain name */
+	    dotcount_ip = 0;
+	}
+    }
+
+    /*
+     * Parse host number if present.
+     */
+    if (dotcount_ip == 3)	/* Numeric node address: */
+    {
+#ifdef DGUX_OLD
+	soc_in->sin_addr.s_addr = inet_addr(host).s_addr;	/* See arpa/inet.h */
+#else
+#ifdef GUSI
+	soc_in->sin_addr = inet_addr(host);	/* See netinet/in.h */
+#else
+#ifdef HAVE_INET_ATON
+	if (!inet_aton(host, &(soc_in->sin_addr))) {
+	    CTRACE((tfp, "inet_aton(%s) returns error\n", host));
+	    FREE(host);
+	    return -1;
+	}
+#else
+	soc_in->sin_addr.s_addr = inet_addr(host);	/* See arpa/inet.h */
+#endif /* HAVE_INET_ATON */
+#endif /* GUSI */
+#endif /* DGUX_OLD */
+	FREE(host);
+    } else {			/* Alphanumeric node name: */
+
+#ifdef MVS			/* Outstanding problem with crash in MVS gethostbyname */
+	CTRACE((tfp, "HTParseInet: Calling LYGetHostByName(%s)\n", host));
+#endif /* MVS */
+
+#ifdef _WINDOWS_NSL
+	gbl_phost = LYGetHostByName(host);	/* See above */
+	if (!gbl_phost)
+	    goto failed;
+	MemCpy((void *) &soc_in->sin_addr, gbl_phost->h_addr_list[0], gbl_phost->h_length);
+#else /* !_WINDOWS_NSL */
+	{
+	    LYNX_HOSTENT *phost;
+
+	    phost = LYGetHostByName(host);	/* See above */
+
+	    if (!phost)
+		goto failed;
+	    if (!phost)
+		goto failed;
+	    if (phost->h_length != sizeof soc_in->sin_addr) {
+		HTAlwaysAlert(host, gettext("Address length looks invalid"));
+	    }
+	    MemCpy((void *) &soc_in->sin_addr, phost->h_addr_list[0], phost->h_length);
+	}
+#endif /* _WINDOWS_NSL */
+
+	FREE(host);
+    }				/* Alphanumeric node name */
+
+    CTRACE((tfp,
+	    "HTParseInet: Parsed address as port %d, IP address %d.%d.%d.%d\n",
+	    (int) ntohs(soc_in->sin_port),
+	    (int) *((unsigned char *) (&soc_in->sin_addr) + 0),
+	    (int) *((unsigned char *) (&soc_in->sin_addr) + 1),
+	    (int) *((unsigned char *) (&soc_in->sin_addr) + 2),
+	    (int) *((unsigned char *) (&soc_in->sin_addr) + 3)));
+#endif /* Internet vs. Decnet */
+
+    return 0;			/* OK */
+
+  failed:
+    CTRACE((tfp, "HTParseInet: Can't find internet node name `%s'.\n",
+	    host));
+    FREE(host);
+    switch (lynx_nsl_status) {
+    case HT_NOT_ACCEPTABLE:
+    case HT_INTERRUPTED:
+	return lynx_nsl_status;
+    default:
+	return -1;
+    }
+}
+#endif /* !INET6 */
+
+#ifdef INET6
+static LYNX_ADDRINFO *HTGetAddrInfo(const char *str,
+				    const int defport)
+{
+    LYNX_ADDRINFO hints, *res;
+    int error;
+    char *p;
+    char *s = NULL;
+    char *host, *port;
+    char pbuf[80];
+
+    StrAllocCopy(s, str);
+
+    if (s[0] == '[' && (p = strchr(s, ']')) != NULL) {
+	*p++ = '\0';
+	host = s + 1;
+    } else {
+	p = s;
+	host = &s[0];
+    }
+    port = strrchr(p, ':');
+    if (port) {
+	*port++ = '\0';
+    } else {
+	sprintf(pbuf, "%d", defport);
+	port = pbuf;
+    }
+
+    memset(&hints, 0, sizeof(hints));
+    hints.ai_family = PF_UNSPEC;
+    hints.ai_socktype = SOCK_STREAM;
+    error = getaddrinfo(host, port, &hints, &res);
+    if (error || !res) {
+	CTRACE((tfp, "HTGetAddrInfo: getaddrinfo(%s, %s): %s\n", host, port,
+		gai_strerror(error)));
+	res = NULL;
+    }
+
+    free(s);
+    return res;
+}
+#endif /* INET6 */
+
+#ifdef LY_FIND_LEAKS
+/*	Free our name for the host on which we are - FM
+ *	-------------------------------------------
+ *
+ */
+static void free_HTTCP_hostname(void)
+{
+    FREE(hostname);
+}
+#endif /* LY_FIND_LEAKS */
+
+/*	Derive the name of the host on which we are
+ *	-------------------------------------------
+ *
+ */
+static void get_host_details(void)
+{
+    char name[MAXHOSTNAMELEN + 1];	/* The name of this host */
+
+#ifdef UCX
+    char *domain_name;		/* The name of this host domain */
+#endif /* UCX */
+#ifdef NEED_HOST_ADDRESS	/* no -- needs name server! */
+#ifdef INET6
+    LYNX_ADDRINFO hints, *res;
+    int error;
+
+#else
+    LYNX_HOSTENT *phost;	/* Pointer to host -- See netdb.h */
+#endif /* INET6 */
+#endif /* NEED_HOST_ADDRESS */
+    size_t namelength = sizeof(name);
+
+    if (hostname)
+	return;			/* Already done */
+    gethostname(name, namelength);	/* Without domain */
+    StrAllocCopy(hostname, name);
+#ifdef LY_FIND_LEAKS
+    atexit(free_HTTCP_hostname);
+#endif
+#ifdef UCX
+    /*
+     * UCX doesn't give the complete domain name.  Get rest from UCX$BIND_DOM
+     * logical.
+     */
+    if (strchr(hostname, '.') == NULL) {	/* Not full address */
+	domain_name = LYGetEnv("UCX$BIND_DOMAIN");
+	if (domain_name == NULL)
+	    domain_name = LYGetEnv("TCPIP$BIND_DOMAIN");
+	if (domain_name != NULL) {
+	    StrAllocCat(hostname, ".");
+	    StrAllocCat(hostname, domain_name);
+	}
+    }
+#endif /* UCX */
+    CTRACE((tfp, "TCP: Local host name is %s\n", hostname));
+
+#ifndef DECNET			/* Decnet ain't got no damn name server 8#OO */
+#ifdef NEED_HOST_ADDRESS	/* no -- needs name server! */
+#ifdef INET6
+    memset(&hints, 0, sizeof(hints));
+    hints.ai_family = PF_UNSPEC;
+    hints.ai_socktype = SOCK_STREAM;
+    hints.ai_flags = AI_CANONNAME;
+    error = getaddrinfo(name, NULL, &hints, &res);
+    if (error || !res || !res->ai_canonname) {
+	CTRACE((tfp, "TCP: %s: `%s'\n", gai_strerror(error), name));
+	if (res)
+	    freeaddrinfo(res);
+	return;			/* Fail! */
+    }
+    StrAllocCopy(hostname, res->ai_canonname);
+    MemCpy(&HTHostAddress, res->ai_addr, res->ai_addrlen);
+    freeaddrinfo(res);
+#else
+    phost = gethostbyname(name);	/* See netdb.h */
+    if (!OK_HOST(phost)) {
+	CTRACE((tfp,
+		"TCP: Can't find my own internet node address for `%s'!!\n",
+		name));
+	return;			/* Fail! */
+    }
+    StrAllocCopy(hostname, phost->h_name);
+    MemCpy(&HTHostAddress, &phost->h_addr_list[0], phost->h_length);
+#endif /* INET6 */
+    CTRACE((tfp, "     Name server says that I am `%s' = %s\n",
+	    hostname, HTInetString(&HTHostAddress)));
+#endif /* NEED_HOST_ADDRESS */
+
+#endif /* !DECNET */
+}
+
+const char *HTHostName(void)
+{
+    get_host_details();
+    return hostname;
+}
+
+#ifdef _WINDOWS
+#define SET_EINTR WSASetLastError(EINTR)
+#else
+#define SET_EINTR SOCKET_ERRNO = EINTR
+#endif
+
+static BOOL HTWasInterrupted(int *status)
+{
+    BOOL result = FALSE;
+
+    if (HTCheckForInterrupt()) {
+	result = TRUE;
+	*status = HT_INTERRUPTED;
+	SET_EINTR;
+    }
+    return result;
+}
+
+#define TRIES_PER_SECOND 10
+
+/*
+ * Set the select-timeout to 0.1 seconds.
+ */
+static void set_timeout(struct timeval *timeoutp)
+{
+    timeoutp->tv_sec = 0;
+    timeoutp->tv_usec = 100000;
+}
+
+#ifndef MULTINET		/* SOCKET_ERRNO != errno ? */
+#if !defined(UCX) || !defined(VAXC)	/* errno not modifiable ? */
+#define SOCKET_DEBUG_TRACE	/* show errno status after some system calls */
+#endif /* UCX && VAXC */
+#endif /* MULTINET */
+/*
+ *  Interruptible connect as implemented for Mosaic by Marc Andreesen
+ *  and hacked in for Lynx years ago by Lou Montulli, and further
+ *  modified over the years by numerous Lynx lovers. - FM
+ */
+int HTDoConnect(const char *url,
+		const char *protocol,
+		int default_port,
+		int *s)
+{
+    int status = 0;
+    char *line = NULL;
+    char *p1 = NULL;
+    char *at_sign = NULL;
+    char *host = NULL;
+
+#ifdef INET6
+    LYNX_ADDRINFO *res = 0, *res0 = 0;
+
+#else
+    struct sockaddr_in soc_address;
+    struct sockaddr_in *soc_in = &soc_address;
+
+    /*
+     * Set up defaults.
+     */
+    memset(soc_in, 0, sizeof(*soc_in));
+    soc_in->sin_family = AF_INET;
+    soc_in->sin_port = htons((PortNumber) default_port);
+#endif /* INET6 */
+
+    /*
+     * Get node name and optional port number.
+     */
+    p1 = HTParse(url, "", PARSE_HOST);
+    if ((at_sign = strchr(p1, '@')) != NULL) {
+	/*
+	 * If there's an @ then use the stuff after it as a hostname.
+	 */
+	StrAllocCopy(host, (at_sign + 1));
+    } else {
+	StrAllocCopy(host, p1);
+    }
+    FREE(p1);
+
+    HTSprintf0(&line, "%s%s", WWW_FIND_MESSAGE, host);
+    _HTProgress(line);
+#ifdef INET6
+    /* HTParseInet() is useless! */
+    res0 = HTGetAddrInfo(host, default_port);
+    if (res0 == NULL) {
+	HTSprintf0(&line, gettext("Unable to locate remote host %s."), host);
+	_HTProgress(line);
+	FREE(host);
+	FREE(line);
+	return HT_NO_DATA;
+    }
+#else
+    status = HTParseInet(soc_in, host);
+    if (status) {
+	if (status != HT_INTERRUPTED) {
+	    if (status == HT_NOT_ACCEPTABLE) {
+		/* Not HTProgress, so warning won't be overwritten immediately;
+		 * but not HTAlert, because typically there will be other
+		 * alerts from the callers.  - kw
+		 */
+		HTUserMsg2(gettext("Invalid hostname %s"), host);
+	    } else {
+		HTSprintf0(&line,
+			   gettext("Unable to locate remote host %s."), host);
+		_HTProgress(line);
+	    }
+	    status = HT_NO_DATA;
+	}
+	FREE(host);
+	FREE(line);
+	return status;
+    }
+#endif /* INET6 */
+
+    HTSprintf0(&line, gettext("Making %s connection to %s"), protocol, host);
+    _HTProgress(line);
+    FREE(host);
+    FREE(line);
+
+    /*
+     * Now, let's get a socket set up from the server for the data.
+     */
+#ifndef INET6
+    *s = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
+    if (*s == -1) {
+	HTAlert(gettext("socket failed."));
+	return HT_NO_DATA;
+    }
+#else
+    for (res = res0; res; res = res->ai_next) {
+	*s = socket(res->ai_family, res->ai_socktype, res->ai_protocol);
+	if (*s == -1) {
+	    char hostbuf[1024], portbuf[1024];
+
+	    getnameinfo(res->ai_addr, res->ai_addrlen,
+			hostbuf, (socklen_t) sizeof(hostbuf),
+			portbuf, (socklen_t) sizeof(portbuf),
+			NI_NUMERICHOST | NI_NUMERICSERV);
+	    HTSprintf0(&line,
+		       gettext("socket failed: family %d addr %s port %s."),
+		       res->ai_family, hostbuf, portbuf);
+	    _HTProgress(line);
+	    FREE(line);
+	    continue;
+	}
+#endif /* INET6 */
+
+#if !defined(DOSPATH) || defined(__DJGPP__)
+#if !defined(NO_IOCTL) || defined(USE_FCNTL)
+	/*
+	 * Make the socket non-blocking, so the connect can be canceled.  This
+	 * means that when we issue the connect we should NOT have to wait for
+	 * the accept on the other end.
+	 */
+	{
+#ifdef USE_FCNTL
+	    int ret = fcntl(*s, F_SETFL, O_NONBLOCK);
+
+#else
+	    int val = 1;
+	    int ret = IOCTL(*s, FIONBIO, &val);
+#endif /* USE_FCNTL */
+	    if (ret == -1)
+		_HTProgress(gettext("Could not make connection non-blocking."));
+	}
+#endif /* !NO_IOCTL || USE_FCNTL */
+#endif /* !DOSPATH || __DJGPP__ */
+
+	/*
+	 * Issue the connect.  Since the server can't do an instantaneous
+	 * accept and we are non-blocking, this will almost certainly return a
+	 * negative status.
+	 */
+#ifdef SOCKS
+	if (socks_flag) {
+#ifdef INET6
+	    status = Rconnect(*s, res->ai_addr, res->ai_addrlen);
+#else
+	    status = Rconnect(*s, (struct sockaddr *) &soc_address,
+			      sizeof(soc_address));
+#ifndef SHORTENED_RBIND
+	    socks_bind_remoteAddr = soc_address.sin_addr.s_addr;
+#endif
+#endif /* INET6 */
+	} else
+#endif /* SOCKS */
+#ifdef INET6
+	    status = connect(*s, res->ai_addr, res->ai_addrlen);
+#else
+	    status = connect(*s, (struct sockaddr *) &soc_address, sizeof(soc_address));
+#endif /* INET6 */
+
+	/*
+	 * According to the Sun man page for connect:
+	 *  EINPROGRESS         The socket is non-blocking and the  con-
+	 *                      nection cannot be completed immediately.
+	 *                      It is possible to select(2) for  comple-
+	 *                      tion  by  selecting the socket for writ-
+	 *                      ing.
+	 * According to the Motorola SVR4 man page for connect:
+	 *  EAGAIN              The socket is non-blocking and the  con-
+	 *                      nection cannot be completed immediately.
+	 *                      It is possible to select for  completion
+	 *                      by  selecting  the  socket  for writing.
+	 *                      However, this is only  possible  if  the
+	 *                      socket  STREAMS  module  is  the topmost
+	 *                      module on  the  protocol  stack  with  a
+	 *                      write  service  procedure.  This will be
+	 *                      the normal case.
+	 */
+	if ((status < 0) &&
+	    (SOCKET_ERRNO == EINPROGRESS
+#ifdef EAGAIN
+	     || SOCKET_ERRNO == EAGAIN
+#endif
+	    )) {
+	    struct timeval select_timeout;
+	    int ret;
+	    int tries = 0;
+
+#ifdef SOCKET_DEBUG_TRACE
+	    HTInetStatus("this socket's first connect");
+#endif /* SOCKET_DEBUG_TRACE */
+	    ret = 0;
+	    while (ret <= 0) {
+		fd_set writefds;
+
+		/*
+		 * Protect against an infinite loop.
+		 */
+		if ((tries++ / TRIES_PER_SECOND) >= connect_timeout) {
+		    HTAlert(gettext("Connection failed (too many retries)."));
+#ifdef INET6
+		    FREE(line);
+		    if (res0)
+			freeaddrinfo(res0);
+#endif /* INET6 */
+		    return HT_NO_DATA;
+		}
+		set_timeout(&select_timeout);
+		FD_ZERO(&writefds);
+		FD_SET((unsigned) *s, &writefds);
+#ifdef SOCKS
+		if (socks_flag)
+		    ret = Rselect(*s + 1, NULL,
+				  &writefds, NULL, &select_timeout);
+		else
+#endif /* SOCKS */
+		    ret = select(*s + 1,
+				 NULL,
+				 &writefds,
+				 NULL,
+				 &select_timeout);
+
+#ifdef SOCKET_DEBUG_TRACE
+		if (tries == 1) {
+		    HTInetStatus("this socket's first select");
+		}
+#endif /* SOCKET_DEBUG_TRACE */
+		/*
+		 * If we suspend, then it is possible that select will be
+		 * interrupted.  Allow for this possibility.  - JED
+		 */
+		if ((ret == -1) && (errno == EINTR))
+		    continue;
+
+#ifdef SOCKET_DEBUG_TRACE
+		if (ret < 0) {
+		    HTInetStatus("failed select");
+		}
+#endif /* SOCKET_DEBUG_TRACE */
+		/*
+		 * Again according to the Sun and Motorola man pages for
+		 * connect:
+		 *  EALREADY    The socket is non-blocking and a  previ-
+		 *              ous  connection attempt has not yet been
+		 *              completed.
+		 * Thus if the SOCKET_ERRNO is NOT EALREADY we have a real
+		 * error, and should break out here and return that error.
+		 * Otherwise if it is EALREADY keep on trying to complete the
+		 * connection.
+		 */
+		if ((ret < 0) && (SOCKET_ERRNO != EALREADY)) {
+		    status = ret;
+		    break;
+		} else if (ret > 0) {
+		    /*
+		     * Extra check here for connection success, if we try to
+		     * connect again, and get EISCONN, it means we have a
+		     * successful connection.  But don't check with SOCKS.
+		     */
+#ifdef SOCKS
+		    if (socks_flag) {
+			status = 0;
+		    } else {
+#endif /* SOCKS */
+#ifdef INET6
+			status = connect(*s, res->ai_addr, res->ai_addrlen);
+#else
+			status = connect(*s, (struct sockaddr *) &soc_address,
+					 sizeof(soc_address));
+#endif /* INET6 */
+#ifdef UCX
+			/*
+			 * A UCX feature:  Instead of returning EISCONN UCX
+			 * returns EADDRINUSE.  Test for this status also.
+			 */
+			if ((status < 0) && ((SOCKET_ERRNO == EISCONN) ||
+					     (SOCKET_ERRNO == EADDRINUSE)))
+#else
+			if ((status < 0) && (SOCKET_ERRNO == EISCONN))
+#endif /* UCX */
+			{
+			    status = 0;
+			}
+
+			if (status && (SOCKET_ERRNO == EALREADY))	/* new stuff LJM */
+			    ret = 0;	/* keep going */
+			else {
+#ifdef SOCKET_DEBUG_TRACE
+			    if (status < 0) {
+				HTInetStatus("confirm-ready connect");
+			    }
+#endif /* SOCKET_DEBUG_TRACE */
+			    break;
+			}
+#ifdef SOCKS
+		    }
+#endif /* SOCKS */
+		}
+#ifdef SOCKS
+		else if (!socks_flag)
+#else
+		else
+#endif /* SOCKS */
+		{
+		    /*
+		     * The select says we aren't ready yet.  Try to connect
+		     * again to make sure.  If we don't get EALREADY or
+		     * EISCONN, something has gone wrong.  Break out and report
+		     * it.
+		     *
+		     * For some reason, SVR4 returns EAGAIN here instead of
+		     * EALREADY, even though the man page says it should be
+		     * EALREADY.
+		     *
+		     * For some reason, UCX pre 3 apparently returns errno =
+		     * 18242 instead of EALREADY or EISCONN.
+		     */
+#ifdef INET6
+		    status = connect(*s, res->ai_addr, res->ai_addrlen);
+#else
+		    status = connect(*s, (struct sockaddr *) &soc_address,
+				     sizeof(soc_address));
+#endif /* INET6 */
+		    if ((status < 0) &&
+			(SOCKET_ERRNO != EALREADY
+#ifdef EAGAIN
+			 && SOCKET_ERRNO != EAGAIN
+#endif
+			) &&
+#ifdef UCX
+			(SOCKET_ERRNO != 18242) &&
+#endif /* UCX */
+			(SOCKET_ERRNO != EISCONN)) {
+#ifdef SOCKET_DEBUG_TRACE
+			HTInetStatus("confirm-not-ready connect");
+#endif /* SOCKET_DEBUG_TRACE */
+			break;
+		    }
+		}
+		if (HTWasInterrupted(&status)) {
+		    CTRACE((tfp, "*** INTERRUPTED in middle of connect.\n"));
+		    break;
+		}
+	    }
+	}
+#ifdef SOCKET_DEBUG_TRACE
+	else if (status < 0) {
+	    HTInetStatus("this socket's first and only connect");
+	}
+#endif /* SOCKET_DEBUG_TRACE */
+#ifdef INET6
+	if (status < 0) {
+	    NETCLOSE(*s);
+	    *s = -1;
+	    continue;
+	}
+	break;
+    }
+#endif /* INET6 */
+
+#ifdef INET6
+    if (*s < 0)
+#else
+    if (status < 0)
+#endif /* INET6 */
+    {
+	/*
+	 * The connect attempt failed or was interrupted, so close up the
+	 * socket.
+	 */
+	NETCLOSE(*s);
+    }
+#if !defined(DOSPATH) || defined(__DJGPP__)
+#if !defined(NO_IOCTL) || defined(USE_FCNTL)
+    else {
+	/*
+	 * Make the socket blocking again on good connect.
+	 */
+#ifdef USE_FCNTL
+	int ret = fcntl(*s, F_SETFL, 0);
+
+#else
+	int val = 0;
+	int ret = IOCTL(*s, FIONBIO, &val);
+#endif /* USE_FCNTL */
+	if (ret == -1)
+	    _HTProgress(gettext("Could not restore socket to blocking."));
+    }
+#endif /* !NO_IOCTL || USE_FCNTL */
+#endif /* !DOSPATH || __DJGPP__ */
+
+#ifdef INET6
+    FREE(line);
+    if (res0)
+	freeaddrinfo(res0);
+#endif /* INET6 */
+    return status;
+}
+
+/*
+ *  This is so interruptible reads can be implemented cleanly.
+ */
+int HTDoRead(int fildes,
+	     void *buf,
+	     unsigned nbyte)
+{
+    int result;
+    BOOL ready;
+
+#if !defined(NO_IOCTL)
+    int ret;
+    fd_set readfds;
+    struct timeval select_timeout;
+    int tries = 0;
+
+#ifdef USE_READPROGRESS
+    int otries = 0;
+    time_t otime = time((time_t *) 0);
+    time_t start = otime;
+#endif
+#endif /* !NO_IOCTL */
+
+#if defined(UNIX) && !defined(__BEOS__)
+    if (fildes == 0) {
+	/*
+	 * 0 can be a valid socket fd, but if it's a tty something must have
+	 * gone wrong.  - kw
+	 */
+	if (isatty(fildes)) {
+	    CTRACE((tfp, "HTDoRead - refusing to read fd 0 which is a tty!\n"));
+	    return -1;
+	}
+    } else
+#endif
+    if (fildes <= 0) {
+	CTRACE((tfp, "HTDoRead - no file descriptor!\n"));
+	return -1;
+    }
+
+    if (HTWasInterrupted(&result)) {
+	CTRACE((tfp, "HTDoRead - interrupted before starting!\n"));
+	return (result);
+    }
+#if defined(NO_IOCTL)
+    ready = TRUE;
+#else
+    ready = FALSE;
+    while (!ready) {
+	/*
+	 * Protect against an infinite loop.
+	 */
+	if ((tries++ / TRIES_PER_SECOND) >= reading_timeout) {
+	    HTAlert(gettext("Socket read failed (too many tries)."));
+	    SET_EINTR;
+	    result = HT_INTERRUPTED;
+	    break;
+	}
+#ifdef USE_READPROGRESS
+	if (tries - otries > TRIES_PER_SECOND) {
+	    time_t t = time((time_t *) 0);
+
+	    otries = tries;
+	    if (t - otime >= 5) {
+		otime = t;
+		HTReadProgress((off_t) (-1), (off_t) 0);	/* Put "stalled" message */
+	    }
+	}
+#endif
+
+	/*
+	 * If we suspend, then it is possible that select will be interrupted.
+	 * Allow for this possibility.  - JED
+	 */
+	do {
+	    set_timeout(&select_timeout);
+	    FD_ZERO(&readfds);
+	    FD_SET((unsigned) fildes, &readfds);
+#ifdef SOCKS
+	    if (socks_flag)
+		ret = Rselect(fildes + 1,
+			      &readfds, NULL, NULL, &select_timeout);
+	    else
+#endif /* SOCKS */
+		ret = select(fildes + 1,
+			     &readfds, NULL, NULL, &select_timeout);
+	} while ((ret == -1) && (errno == EINTR));
+
+	if (ret < 0) {
+	    result = -1;
+	    break;
+	} else if (ret > 0) {
+	    ready = TRUE;
+	} else if (HTWasInterrupted(&result)) {
+	    break;
+	}
+    }
+#endif /* !NO_IOCTL */
+
+    if (ready) {
+#if defined(UCX) && defined(VAXC)
+	/*
+	 * VAXC and UCX problem only.
+	 */
+	errno = vaxc$errno = 0;
+	result = SOCKET_READ(fildes, buf, nbyte);
+	CTRACE((tfp,
+		"Read - result,errno,vaxc$errno: %d %d %d\n", result, errno, vaxc$errno));
+	if ((result <= 0) && TRACE)
+	    perror("HTTCP.C:HTDoRead:read");	/* RJF */
+	/*
+	 * An errno value of EPIPE and result < 0 indicates end-of-file on VAXC.
+	 */
+	if ((result <= 0) && (errno == EPIPE)) {
+	    result = 0;
+	    set_errno(0);
+	}
+#else
+#ifdef UNIX
+	while ((result = (int) SOCKET_READ(fildes, buf, nbyte)) == -1) {
+	    if (errno == EINTR)
+		continue;
+#ifdef ERESTARTSYS
+	    if (errno == ERESTARTSYS)
+		continue;
+#endif /* ERESTARTSYS */
+	    HTInetStatus("read");
+	    break;
+	}
+#else /* UNIX */
+	result = SOCKET_READ(fildes, buf, nbyte);
+#endif /* !UNIX */
+#endif /* UCX && VAXC */
+    }
+#ifdef USE_READPROGRESS
+    CTRACE2(TRACE_TIMING, (tfp, "...HTDoRead returns %d (%" PRI_time_t
+			   " seconds)\n",
+			   result, CAST_time_t (time((time_t *)0) - start)));
+#endif
+    return result;
+}
+
+#ifdef SVR4_BSDSELECT
+/*
+ *  This is a fix for the difference between BSD's select() and
+ *  SVR4's select().  SVR4's select() can never return a value larger
+ *  than the total number of file descriptors being checked.  So, if
+ *  you select for read and write on one file descriptor, and both
+ *  are true, SVR4 select() will only return 1.  BSD select in the
+ *  same situation will return 2.
+ *
+ *	Additionally, BSD select() on timing out, will zero the masks,
+ *	while SVR4 does not.  This is fixed here as well.
+ *
+ *	Set your tabstops to 4 characters to have this code nicely formatted.
+ *
+ *	Jerry Whelan, guru@bradley.edu, June 12th, 1993
+ */
+#ifdef select
+#undef select
+#endif /* select */
+
+#ifdef SOCKS
+#ifdef Rselect
+#undef Rselect
+#endif /* Rselect */
+#endif /* SOCKS */
+
+#include <sys/types.h>
+#include <sys/time.h>
+#include <sys/select.h>
+
+int BSDselect(int nfds,
+	      fd_set * readfds,
+	      fd_set * writefds,
+	      fd_set * exceptfds,
+	      struct timeval *select_timeout)
+{
+    int rval, i;
+
+#ifdef SOCKS
+    if (socks_flag)
+	rval = Rselect(nfds, readfds, writefds, exceptfds, select_timeout);
+    else
+#endif /* SOCKS */
+	rval = select(nfds, readfds, writefds, exceptfds, select_timeout);
+
+    switch (rval) {
+    case -1:
+	return (rval);
+
+    case 0:
+	if (readfds != NULL)
+	    FD_ZERO(readfds);
+	if (writefds != NULL)
+	    FD_ZERO(writefds);
+	if (exceptfds != NULL)
+	    FD_ZERO(exceptfds);
+	return (rval);
+
+    default:
+	for (i = 0, rval = 0; i < nfds; i++) {
+	    if ((readfds != NULL) && FD_ISSET(i, readfds))
+		rval++;
+	    if ((writefds != NULL) && FD_ISSET(i, writefds))
+		rval++;
+	    if ((exceptfds != NULL) && FD_ISSET(i, exceptfds))
+		rval++;
+
+	}
+	return (rval);
+    }
+/* Should never get here */
+}
+#endif /* SVR4_BSDSELECT */
diff --git a/WWW/Library/Implementation/HTTCP.h b/WWW/Library/Implementation/HTTCP.h
new file mode 100644
index 00000000..abbc956f
--- /dev/null
+++ b/WWW/Library/Implementation/HTTCP.h
@@ -0,0 +1,110 @@
+/*                               /Net/dxcern/userd/timbl/hypertext/WWW/Library/src/HTTCP.html
+                               GENERIC TCP/IP COMMUNICATION
+
+   This module has the common code for handling TCP/IP connections etc.
+
+ */
+#ifndef HTTCP_H
+#define HTTCP_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*      Produce a string for an internet address
+ *      ---------------------------------------
+ *
+ * On exit:
+ *           returns a pointer to a static string which must be copied if
+ *                it is to be kept.
+ */
+#ifdef INET6
+    extern const char *HTInetString(SockA * mysin);
+
+#else
+    extern const char *HTInetString(struct sockaddr_in *mysin);
+#endif				/* INET6 */
+
+/*      Encode INET status (as in sys/errno.h)                    inet_status()
+ *      ------------------
+ *
+ * On entry:
+ *              where gives a description of what caused the error
+ *      global errno gives the error number in the unix way.
+ *
+ * On return:
+ *      returns a negative status in the unix way.
+ */
+    extern int HTInetStatus(const char *where);
+
+/*      Publicly accessible variables
+*/
+/* extern struct sockaddr_in HTHostAddress; */
+    /* The internet address of the host */
+    /* Valid after call to HTHostName() */
+
+/*      Parse a cardinal value                                 parse_cardinal()
+ *      ----------------------
+ *
+ * On entry:
+ *      *pp points to first character to be interpreted, terminated by
+ *      non 0..9 character.
+ *      *pstatus points to status already valid,
+ *      maxvalue gives the largest allowable value.
+ *
+ * On exit:
+ *      *pp points to first unread character,
+ *      *pstatus points to status updated iff bad
+ */
+
+    extern unsigned int HTCardinal(int *pstatus,
+				   char **pp,
+				   unsigned int max_value);
+
+/*	Check whether string is a valid Internet hostname
+ *	-------------------------------------------------
+ */
+
+    extern BOOL valid_hostname(char *name);
+
+/*	Resolve an internet hostname, like gethostbyname
+ *	------------------------------------------------
+ *
+ *  On entry,
+ *	str	points to the given host name, not numeric address,
+ *		without colon or port number.
+ *
+ *  On exit,
+ *	returns a pointer to a struct hostent in static storage,
+ *	or NULL in case of error or user interruption.
+ *
+ *  The interface is intended to be the same as for gethostbyname(),
+ *  but additional status is returned in lynx_nsl_status.
+ */
+    extern int lynx_nsl_status;
+
+    extern struct hostent *LYGetHostByName(char *str);
+
+/*      Get Name of This Machine
+ *      ------------------------
+ *
+ */
+
+    extern const char *HTHostName(void);
+
+    extern int HTDoConnect(const char *url,
+			   const char *protocol,
+			   int default_port,
+			   int *s);
+
+    extern int HTDoRead(int fildes,
+			void *buf,
+			unsigned nbyte);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTTCP_H */
diff --git a/WWW/Library/Implementation/HTTP.c b/WWW/Library/Implementation/HTTP.c
new file mode 100644
index 00000000..86398e71
--- /dev/null
+++ b/WWW/Library/Implementation/HTTP.c
@@ -0,0 +1,2522 @@
+/*
+ * $LynxId: HTTP.c,v 1.123 2011/06/11 12:09:21 tom Exp $
+ *
+ * HyperText Tranfer Protocol	- Client implementation		HTTP.c
+ * ==========================
+ * Modified:
+ * 27 Jan 1994	PDM  Added Ari Luotonen's Fix for Reload when using proxy
+ *		     servers.
+ * 28 Apr 1997	AJL,FM Do Proxy Authorisation.
+ */
+
+#include <HTUtils.h>
+#include <HTTP.h>
+#include <LYUtils.h>
+
+#ifdef USE_SSL
+#include <HTNews.h>
+#endif
+
+#define HTTP_VERSION	"HTTP/1.0"
+
+#define HTTP_PORT   80
+#define HTTPS_PORT  443
+#define SNEWS_PORT  563
+
+#define INIT_LINE_SIZE		1536	/* Start with line buffer this big */
+#define LINE_EXTEND_THRESH	256	/* Minimum read size */
+#define VERSION_LENGTH		20	/* for returned protocol version */
+
+#include <HTParse.h>
+#include <HTTCP.h>
+#include <HTFormat.h>
+#include <HTFile.h>
+#include <HTAlert.h>
+#include <HTMIME.h>
+#include <HTML.h>
+#include <HTInit.h>
+#include <HTAABrow.h>
+#include <HTAccess.h>		/* Are we using an HTTP gateway? */
+
+#include <LYCookie.h>
+#include <LYGlobalDefs.h>
+#include <GridText.h>
+#include <LYStrings.h>
+#include <LYUtils.h>
+#include <LYrcFile.h>
+#include <LYLeaks.h>
+
+#ifdef USE_SSL
+#ifdef USE_OPENSSL_INCL
+#include <openssl/x509v3.h>
+#endif
+#ifdef USE_GNUTLS_INCL
+#include <gnutls/x509.h>
+#endif
+#endif
+
+BOOLEAN reloading = FALSE;	/* Reloading => send no-cache pragma to proxy */
+char *redirecting_url = NULL;	/* Location: value. */
+BOOL permanent_redirection = FALSE;	/* Got 301 status? */
+BOOL redirect_post_content = FALSE;	/* Don't convert to GET? */
+
+#ifdef USE_SSL
+SSL_CTX *ssl_ctx = NULL;	/* SSL ctx */
+SSL *SSL_handle = NULL;
+static int ssl_okay;
+
+static void free_ssl_ctx(void)
+{
+    if (ssl_ctx != NULL)
+	SSL_CTX_free(ssl_ctx);
+}
+
+static int HTSSLCallback(int preverify_ok, X509_STORE_CTX * x509_ctx GCC_UNUSED)
+{
+    char *msg = NULL;
+    int result = 1;
+
+#ifdef USE_X509_SUPPORT
+    HTSprintf0(&msg,
+	       gettext("SSL callback:%s, preverify_ok=%d, ssl_okay=%d"),
+	       X509_verify_cert_error_string((long) X509_STORE_CTX_get_error(x509_ctx)),
+	       preverify_ok, ssl_okay);
+    _HTProgress(msg);
+    FREE(msg);
+#endif
+
+#ifndef USE_NSS_COMPAT_INCL
+    if (!(preverify_ok || ssl_okay || ssl_noprompt)) {
+#ifdef USE_X509_SUPPORT
+	HTSprintf0(&msg, SSL_FORCED_PROMPT,
+		   X509_verify_cert_error_string((long)
+						 X509_STORE_CTX_get_error(x509_ctx)));
+	if (HTForcedPrompt(ssl_noprompt, msg, YES))
+	    ssl_okay = 1;
+	else
+	    result = 0;
+#endif
+
+	FREE(msg);
+    }
+#endif
+    return result;
+}
+
+SSL *HTGetSSLHandle(void)
+{
+#ifdef USE_GNUTLS_INCL
+    static char *certfile = NULL;
+#endif
+
+    if (ssl_ctx == NULL) {
+	/*
+	 * First time only.
+	 */
+#if SSLEAY_VERSION_NUMBER < 0x0800
+	ssl_ctx = SSL_CTX_new();
+	X509_set_default_verify_paths(ssl_ctx->cert);
+#else
+	SSLeay_add_ssl_algorithms();
+	ssl_ctx = SSL_CTX_new(SSLv23_client_method());
+	SSL_CTX_set_options(ssl_ctx, SSL_OP_ALL);
+	SSL_CTX_set_default_verify_paths(ssl_ctx);
+	SSL_CTX_set_verify(ssl_ctx, SSL_VERIFY_PEER, HTSSLCallback);
+#endif /* SSLEAY_VERSION_NUMBER < 0x0800 */
+#if defined(USE_PROGRAM_DIR) & !defined(USE_GNUTLS_INCL)
+	{
+	    X509_LOOKUP *lookup;
+
+	    lookup = X509_STORE_add_lookup(ssl_ctx->cert_store,
+					   X509_LOOKUP_file());
+	    if (lookup != NULL) {
+		char *certfile = NULL;
+
+		HTSprintf0(&certfile, "%s\\cert.pem", program_dir);
+		X509_LOOKUP_load_file(lookup, certfile, X509_FILETYPE_PEM);
+		FREE(certfile);
+	    }
+	}
+#endif
+#ifdef USE_GNUTLS_INCL
+	if ((certfile = LYGetEnv("SSL_CERT_FILE")) != NULL) {
+	    CTRACE((tfp,
+		    "HTGetSSLHandle: certfile is set to %s by SSL_CERT_FILE\n",
+		    certfile));
+	} else {
+	    if (non_empty(SSL_cert_file)) {
+		certfile = SSL_cert_file;
+		CTRACE((tfp,
+			"HTGetSSLHandle: certfile is set to %s by config SSL_CERT_FILE\n",
+			certfile));
+	    }
+#if defined(USE_PROGRAM_DIR)
+	    else {
+		HTSprintf0(&(certfile), "%s\\cert.pem", program_dir);
+		CTRACE((tfp,
+			"HTGetSSLHandle: certfile is set to %s by installed directory\n", certfile));
+	    }
+#endif
+	}
+#endif
+	atexit(free_ssl_ctx);
+    }
+#ifdef USE_GNUTLS_INCL
+    ssl_ctx->certfile = certfile;
+    ssl_ctx->certfile_type = GNUTLS_X509_FMT_PEM;
+#endif
+    ssl_okay = 0;
+    return (SSL_new(ssl_ctx));
+}
+
+void HTSSLInitPRNG(void)
+{
+#if SSLEAY_VERSION_NUMBER >= 0x00905100
+    if (RAND_status() == 0) {
+	char rand_file[256];
+	time_t t;
+	long l, seed;
+
+#ifndef _WINDOWS
+	pid_t pid;
+
+#else
+	DWORD pid;
+#endif
+
+	t = time(NULL);
+
+#ifndef _WINDOWS
+	pid = getpid();
+#else
+	pid = GetCurrentThreadId();
+#endif
+
+	RAND_file_name(rand_file, 256L);
+	CTRACE((tfp, "HTTP: Seeding PRNG\n"));
+	if (rand_file != NULL) {
+	    /* Seed as much as 1024 bytes from RAND_file_name */
+	    RAND_load_file(rand_file, 1024L);
+	}
+	/* Seed in time (mod_ssl does this) */
+	RAND_seed((unsigned char *) &t, (int) sizeof(time_t));
+
+	/* Seed in pid (mod_ssl does this) */
+	RAND_seed((unsigned char *) &pid, (int) sizeof(pid));
+	/* Initialize system's random number generator */
+	RAND_bytes((unsigned char *) &seed, (int) sizeof(long));
+
+	lynx_srand((unsigned) seed);
+	while (RAND_status() == 0) {
+	    /* Repeatedly seed the PRNG using the system's random number generator until it has been seeded with enough data */
+	    l = lynx_rand();
+	    RAND_seed((unsigned char *) &l, (int) sizeof(long));
+	}
+	if (rand_file != NULL) {
+	    /* Write a rand_file */
+	    RAND_write_file(rand_file);
+	}
+    }
+#endif /* SSLEAY_VERSION_NUMBER >= 0x00905100 */
+    return;
+}
+
+#define HTTP_NETREAD(sock, buff, size, handle) \
+	(handle \
+	 ? SSL_read(handle, buff, size) \
+	 : NETREAD(sock, buff, size))
+
+#define HTTP_NETWRITE(sock, buff, size, handle) \
+	(handle \
+	 ? SSL_write(handle, buff, size) \
+	 : NETWRITE(sock, buff, size))
+
+#define HTTP_NETCLOSE(sock, handle)  \
+	{ (void)NETCLOSE(sock); \
+	  if (handle) \
+	      SSL_free(handle); \
+	  SSL_handle = handle = NULL; \
+	}
+
+#else
+#define HTTP_NETREAD(a, b, c, d)   NETREAD(a, b, c)
+#define HTTP_NETWRITE(a, b, c, d)  NETWRITE(a, b, c)
+#define HTTP_NETCLOSE(a, b)  (void)NETCLOSE(a)
+#endif /* USE_SSL */
+
+#ifdef _WINDOWS			/* 1997/11/06 (Thu) 13:00:08 */
+
+#define	BOX_TITLE	"Lynx " __FILE__
+#define	BOX_FLAG	(MB_ICONINFORMATION | MB_SETFOREGROUND)
+
+typedef struct {
+    int fd;
+    char *buf;
+    int len;
+} recv_data_t;
+
+int ws_read_per_sec = 0;
+static int ws_errno = 0;
+
+static DWORD g_total_times = 0;
+static DWORD g_total_bytes = 0;
+
+/* The same like read, but takes care of EINTR and uses select to
+   timeout the stale connections.  */
+
+static int ws_read(int fd, char *buf, int len)
+{
+    int res;
+    int retry = 3;
+
+    do {
+	res = recv(fd, buf, len, 0);
+	if (WSAEWOULDBLOCK == WSAGetLastError()) {
+	    Sleep(100);
+	    if (retry-- > 0)
+		continue;
+	}
+    } while (res == SOCKET_ERROR && SOCKET_ERRNO == EINTR);
+
+    return res;
+}
+
+#define DWORD_ERR ((DWORD)-1)
+
+static DWORD __stdcall _thread_func(void *p)
+{
+    DWORD result;
+    int i, val;
+    recv_data_t *q = (recv_data_t *) p;
+
+    i = 0;
+    i++;
+    val = ws_read(q->fd, q->buf, q->len);
+
+    if (val == SOCKET_ERROR) {
+	ws_errno = WSAGetLastError();
+#if 0
+	char buff[256];
+
+	sprintf(buff, "Thread read: %d, error (%ld), fd = %d, len = %d",
+		i, ws_errno, q->fd, q->len);
+	MessageBox(NULL, buff, BOX_TITLE, BOX_FLAG);
+#endif
+	result = DWORD_ERR;
+    } else {
+	result = val;
+    }
+
+    return result;
+}
+
+/* The same like read, but takes care of EINTR and uses select to
+   timeout the stale connections.  */
+
+int ws_netread(int fd, char *buf, int len)
+{
+    int i;
+    char buff[256];
+
+    /* 1998/03/30 (Mon) 09:01:21 */
+    HANDLE hThread;
+    DWORD dwThreadID;
+    DWORD exitcode = 0;
+    DWORD ret_val = DWORD_ERR;
+    DWORD val, process_time, now_TickCount, save_TickCount;
+
+    static recv_data_t para;
+
+#define TICK	5
+#define STACK_SIZE	0x2000uL
+
+    InitializeCriticalSection(&critSec_READ);
+
+    para.fd = fd;
+    para.buf = buf;
+    para.len = len;
+
+    ws_read_per_sec = 0;
+    save_TickCount = GetTickCount();
+
+    hThread = CreateThread(NULL, STACK_SIZE,
+			   _thread_func,
+			   (void *) &para, 0UL, &dwThreadID);
+
+    if (hThread == 0) {
+	HTInfoMsg("CreateThread Failed (read)");
+	goto read_exit;
+    }
+
+    i = 0;
+    while (1) {
+	val = WaitForSingleObject(hThread, 1000 / TICK);
+	i++;
+	if (val == WAIT_FAILED) {
+	    HTInfoMsg("Wait Failed");
+	    ret_val = DWORD_ERR;
+	    break;
+	} else if (val == WAIT_TIMEOUT) {
+	    i++;
+	    if (i / TICK > (AlertSecs + 2)) {
+		sprintf(buff, "Read Waiting (%2d.%01d) for %d Bytes",
+			i / TICK, (i % TICK) * 10 / TICK, len);
+		SetConsoleTitle(buff);
+	    }
+	    if (win32_check_interrupt() || ((i / TICK) > lynx_timeout)) {
+		if (CloseHandle(hThread) == FALSE) {
+		    HTInfoMsg("Thread terminate Failed");
+		}
+		WSASetLastError(ETIMEDOUT);
+		ret_val = HT_INTERRUPTED;
+		break;
+	    }
+	} else if (val == WAIT_OBJECT_0) {
+	    if (GetExitCodeThread(hThread, &exitcode) == FALSE) {
+		exitcode = DWORD_ERR;
+	    }
+	    if (CloseHandle(hThread) == FALSE) {
+		HTInfoMsg("Thread terminate Failed");
+	    }
+	    now_TickCount = GetTickCount();
+	    if (now_TickCount >= save_TickCount)
+		process_time = now_TickCount - save_TickCount;
+	    else
+		process_time = now_TickCount + (0xffffffff - save_TickCount);
+
+	    if (process_time == 0)
+		process_time = 1;
+	    g_total_times += process_time;
+
+	    /*
+	     * DWORD is unsigned, and could be an error code which is signed.
+	     */
+	    if ((long) exitcode > 0)
+		g_total_bytes += exitcode;
+
+	    ws_read_per_sec = g_total_bytes;
+	    if (ws_read_per_sec > 2000000) {
+		if (g_total_times > 1000)
+		    ws_read_per_sec /= (g_total_times / 1000);
+	    } else {
+		ws_read_per_sec *= 1000;
+		ws_read_per_sec /= g_total_times;
+	    }
+
+	    ret_val = exitcode;
+	    break;
+	}
+    }				/* end while(1) */
+
+  read_exit:
+    LeaveCriticalSection(&critSec_READ);
+    return ret_val;
+}
+#endif /* _WINDOWS */
+
+/*
+ * Strip any username from the given string so we retain only the host.
+ */
+static void strip_userid(char *host)
+{
+    char *p1 = host;
+    char *p2 = strchr(host, '@');
+    char *fake;
+
+    if (p2 != 0) {
+	*p2++ = '\0';
+	if ((fake = HTParse(host, "", PARSE_HOST)) != NULL) {
+	    char *msg = NULL;
+
+	    CTRACE((tfp, "parsed:%s\n", fake));
+	    HTSprintf0(&msg, gettext("Address contains a username: %s"), host);
+	    HTAlert(msg);
+	    FREE(msg);
+	}
+	while ((*p1++ = *p2++) != '\0') {
+	    ;
+	}
+    }
+}
+
+/*
+ * Check if the user's options specified to use the given encoding.  Normally
+ * all encodings with compiled-in support are specified (encodingALL).
+ */
+static BOOL acceptEncoding(int code)
+{
+    BOOL result = FALSE;
+
+    if ((code & LYAcceptEncoding) != 0) {
+	const char *program = 0;
+
+	switch (code) {
+	case encodingGZIP:
+	    program = HTGetProgramPath(ppGZIP);
+	    break;
+	case encodingDEFLATE:
+	    program = HTGetProgramPath(ppINFLATE);
+	    break;
+	case encodingCOMPRESS:
+	    program = HTGetProgramPath(ppCOMPRESS);
+	    break;
+	case encodingBZIP2:
+	    program = HTGetProgramPath(ppBZIP2);
+	    break;
+	default:
+	    break;
+	}
+	/*
+	 * FIXME:  if lynx did not rely upon external programs to decompress
+	 * files for external viewers, this check could be relaxed.
+	 */
+	result = (BOOL) (program != 0);
+    }
+    return result;
+}
+
+#ifdef USE_SSL
+static void show_cert_issuer(X509 * peer_cert GCC_UNUSED)
+{
+#if defined(USE_OPENSSL_INCL) || defined(USE_GNUTLS_FUNCS)
+    char ssl_dn[1024];
+    char *msg = NULL;
+
+    X509_NAME_oneline(X509_get_issuer_name(peer_cert), ssl_dn, (int) sizeof(ssl_dn));
+    HTSprintf0(&msg, gettext("Certificate issued by: %s"), ssl_dn);
+    _HTProgress(msg);
+    FREE(msg);
+#elif defined(USE_GNUTLS_INCL)
+    /* the OpenSSL "compat" code compiles but dumps core with GNU TLS */
+#endif
+}
+#endif
+
+/*
+ * Remove IPv6 brackets (and any port-number) from the given host-string.
+ */
+#ifdef USE_SSL
+static char *StripIpv6Brackets(char *host)
+{
+    int port_number;
+    char *p;
+
+    if ((p = HTParsePort(host, &port_number)) != 0)
+	*p = '\0';
+
+    if (*host == '[') {
+	p = host + strlen(host) - 1;
+	if (*p == ']') {
+	    *p = '\0';
+	    ++host;
+	}
+    }
+    return host;
+}
+#endif
+
+/*		Load Document from HTTP Server			HTLoadHTTP()
+ *		==============================
+ *
+ *	Given a hypertext address, this routine loads a document.
+ *
+ *
+ *  On entry,
+ *	arg	is the hypertext reference of the article to be loaded.
+ *
+ *  On exit,
+ *	returns >=0	If no error, a good socket number
+ *		<0	Error.
+ *
+ *	The socket must be closed by the caller after the document has been
+ *	read.
+ *
+ */
+static int HTLoadHTTP(const char *arg,
+		      HTParentAnchor *anAnchor,
+		      HTFormat format_out,
+		      HTStream *sink)
+{
+    static char empty[1];
+    int s;			/* Socket number for returned data */
+    const char *url = arg;	/* The URL which get_physical() returned */
+    bstring *command = NULL;	/* The whole command */
+    char *eol;			/* End of line if found */
+    char *start_of_data;	/* Start of body of reply */
+    int status;			/* tcp return */
+    off_t bytes_already_read;
+    char crlf[3];		/* A CR LF equivalent string */
+    HTStream *target;		/* Unconverted data */
+    HTFormat format_in;		/* Format arriving in the message */
+    BOOL do_head = FALSE;	/* Whether or not we should do a head */
+    BOOL do_post = FALSE;	/* ARE WE posting ? */
+    const char *METHOD;
+
+    char *line_buffer;
+    char *line_kept_clean;
+
+#ifdef SH_EX			/* FIX BUG by kaz@maczuka.hitachi.ibaraki.jp */
+    int real_length_of_line = 0;
+#endif
+    BOOL extensions;		/* Assume good HTTP server */
+    char *linebuf = NULL;
+    char temp[80];
+    BOOL first_Accept = TRUE;
+    BOOL show_401 = FALSE;
+    BOOL show_407 = FALSE;
+    BOOL auth_proxy = NO;	/* Generate a proxy authorization. - AJL */
+
+    int length, rawlength, rv;
+    int server_status = 0;
+    BOOL doing_redirect, already_retrying = FALSE;
+    int len = 0;
+
+#ifdef USE_SSL
+    unsigned long SSLerror;
+    BOOL do_connect = FALSE;	/* ARE WE going to use a proxy tunnel ? */
+    BOOL did_connect = FALSE;	/* ARE WE actually using a proxy tunnel ? */
+    const char *connect_url = NULL;	/* The URL being proxied */
+    char *connect_host = NULL;	/* The host being proxied */
+    SSL *handle = NULL;		/* The SSL handle */
+    X509 *peer_cert;		/* The peer certificate */
+    char ssl_dn[1024];
+    char *cert_host;
+    char *ssl_host;
+    char *p;
+    char *msg = NULL;
+    int status_sslcertcheck;
+    char *ssl_dn_start;
+    char *ssl_all_cns = NULL;
+
+#ifdef USE_GNUTLS_INCL
+    int ret;
+    unsigned tls_status;
+#endif
+
+#if SSLEAY_VERSION_NUMBER >= 0x0900
+    BOOL try_tls = TRUE;
+#endif /* SSLEAY_VERSION_NUMBER >= 0x0900 */
+    SSL_handle = NULL;
+#else
+    void *handle = NULL;
+#endif /* USE_SSL */
+
+    if (anAnchor->isHEAD)
+	do_head = TRUE;
+    else if (anAnchor->post_data)
+	do_post = TRUE;
+
+    if (!url) {
+	status = -3;
+	_HTProgress(BAD_REQUEST);
+	goto done;
+    }
+    if (!*url) {
+	status = -2;
+	_HTProgress(BAD_REQUEST);
+	goto done;
+    }
+#ifdef USE_SSL
+    if (using_proxy && !StrNCmp(url, "http://", 7)) {
+	int portnumber;
+
+	if ((connect_url = strstr((url + 7), "https://"))) {
+	    do_connect = TRUE;
+	    connect_host = HTParse(connect_url, "https", PARSE_HOST);
+	    if (!HTParsePort(connect_host, &portnumber)) {
+		sprintf(temp, ":%d", HTTPS_PORT);
+		StrAllocCat(connect_host, temp);
+	    }
+	    CTRACE((tfp, "HTTP: connect_url = '%s'\n", connect_url));
+	    CTRACE((tfp, "HTTP: connect_host = '%s'\n", connect_host));
+	} else if ((connect_url = strstr((url + 7), "snews://"))) {
+	    do_connect = TRUE;
+	    connect_host = HTParse(connect_url, "snews", PARSE_HOST);
+	    if (!HTParsePort(connect_host, &portnumber)) {
+		sprintf(temp, ":%d", SNEWS_PORT);
+		StrAllocCat(connect_host, temp);
+	    }
+	    CTRACE((tfp, "HTTP: connect_url = '%s'\n", connect_url));
+	    CTRACE((tfp, "HTTP: connect_host = '%s'\n", connect_host));
+	}
+    }
+#endif /* USE_SSL */
+
+    sprintf(crlf, "%c%c", CR, LF);
+
+    /*
+     * At this point, we're talking HTTP/1.0.
+     */
+    extensions = YES;
+
+  try_again:
+    /*
+     * All initializations are moved down here from up above, so we can start
+     * over here...
+     */
+    eol = 0;
+    length = 0;
+    doing_redirect = FALSE;
+    permanent_redirection = FALSE;
+    redirect_post_content = FALSE;
+    target = NULL;
+    line_buffer = NULL;
+    line_kept_clean = NULL;
+
+#ifdef USE_SSL
+    if (!StrNCmp(url, "https", 5))
+	status = HTDoConnect(url, "HTTPS", HTTPS_PORT, &s);
+    else
+	status = HTDoConnect(url, "HTTP", HTTP_PORT, &s);
+#else
+    if (!StrNCmp(url, "https", 5)) {
+	HTAlert(gettext("This client does not contain support for HTTPS URLs."));
+	status = HT_NOT_LOADED;
+	goto done;
+    }
+    status = HTDoConnect(arg, "HTTP", HTTP_PORT, &s);
+#endif /* USE_SSL */
+    if (status == HT_INTERRUPTED) {
+	/*
+	 * Interrupt cleanly.
+	 */
+	CTRACE((tfp, "HTTP: Interrupted on connect; recovering cleanly.\n"));
+	_HTProgress(CONNECTION_INTERRUPTED);
+	status = HT_NOT_LOADED;
+	goto done;
+    }
+    if (status < 0) {
+#ifdef _WINDOWS
+	CTRACE((tfp, "HTTP: Unable to connect to remote host for `%s'\n"
+		" (status = %d, sock_errno = %d).\n",
+		url, status, SOCKET_ERRNO));
+#else
+	CTRACE((tfp,
+		"HTTP: Unable to connect to remote host for `%s' (errno = %d).\n",
+		url, SOCKET_ERRNO));
+#endif
+	HTAlert(gettext("Unable to connect to remote host."));
+	status = HT_NOT_LOADED;
+	goto done;
+    }
+#ifdef USE_SSL
+  use_tunnel:
+    /*
+     * If this is an https document, then do the SSL stuff here.
+     */
+    if (did_connect || !StrNCmp(url, "https", 5)) {
+	SSL_handle = handle = HTGetSSLHandle();
+	SSL_set_fd(handle, s);
+	/* get host we're connecting to */
+	ssl_host = HTParse(url, "", PARSE_HOST);
+	ssl_host = StripIpv6Brackets(ssl_host);
+#if SSLEAY_VERSION_NUMBER >= 0x0900
+#ifndef USE_NSS_COMPAT_INCL
+	if (!try_tls) {
+	    handle->options |= SSL_OP_NO_TLSv1;
+#if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
+	} else {
+	    SSL_set_tlsext_host_name(handle, ssl_host);
+#endif
+	}
+#endif
+#endif /* SSLEAY_VERSION_NUMBER >= 0x0900 */
+	HTSSLInitPRNG();
+	status = SSL_connect(handle);
+
+	if (status <= 0) {
+#if SSLEAY_VERSION_NUMBER >= 0x0900
+	    if (try_tls) {
+		_HTProgress(gettext("Retrying connection without TLS."));
+		try_tls = FALSE;
+		if (did_connect)
+		    HTTP_NETCLOSE(s, handle);
+		goto try_again;
+	    } else {
+		CTRACE((tfp,
+			"HTTP: Unable to complete SSL handshake for '%s', SSL_connect=%d, SSL error stack dump follows\n",
+			url, status));
+		SSL_load_error_strings();
+		while ((SSLerror = ERR_get_error()) != 0) {
+		    CTRACE((tfp, "HTTP: SSL: %s\n", ERR_error_string(SSLerror, NULL)));
+		}
+		HTAlert("Unable to make secure connection to remote host.");
+		if (did_connect)
+		    HTTP_NETCLOSE(s, handle);
+		status = HT_NOT_LOADED;
+		goto done;
+	    }
+#else
+	    unsigned long SSLerror;
+
+	    CTRACE((tfp,
+		    "HTTP: Unable to complete SSL handshake for '%s', SSL_connect=%d, SSL error stack dump follows\n",
+		    url, status));
+	    SSL_load_error_strings();
+	    while ((SSLerror = ERR_get_error()) != 0) {
+		CTRACE((tfp, "HTTP: SSL: %s\n", ERR_error_string(SSLerror, NULL)));
+	    }
+	    HTAlert("Unable to make secure connection to remote host.");
+	    if (did_connect)
+		HTTP_NETCLOSE(s, handle);
+	    status = HT_NOT_LOADED;
+	    goto done;
+#endif /* SSLEAY_VERSION_NUMBER >= 0x0900 */
+	}
+#ifdef USE_GNUTLS_INCL
+	ret = gnutls_certificate_verify_peers2(handle->gnutls_state, &tls_status);
+	if (ret < 0) {
+	    int flag_continue = 1;
+	    char *msg2;
+
+	    if (tls_status & GNUTLS_CERT_SIGNER_NOT_FOUND) {
+		msg2 = gettext("no issuer was found");
+	    } else if (tls_status & GNUTLS_CERT_SIGNER_NOT_CA) {
+		msg2 = gettext("issuer is not a CA");
+	    } else if (tls_status & GNUTLS_CERT_SIGNER_NOT_FOUND) {
+		msg2 = gettext("the certificate has no known issuer");
+	    } else if (tls_status & GNUTLS_CERT_REVOKED) {
+		msg2 = gettext("the certificate has been revoked");
+	    } else {
+		msg2 = gettext("the certificate is not trusted");
+	    }
+	    HTSprintf0(&msg, SSL_FORCED_PROMPT, msg2);
+	    CTRACE((tfp, "HTLoadHTTP: %s\n", msg));
+	    if (!ssl_noprompt) {
+		if (!HTForcedPrompt(ssl_noprompt, msg, YES)) {
+		    flag_continue = 0;
+		}
+	    } else if (ssl_noprompt == FORCE_PROMPT_NO) {
+		flag_continue = 0;
+	    }
+	    FREE(msg);
+	    if (flag_continue == 0) {
+		status = HT_NOT_LOADED;
+		FREE(msg);
+		goto done;
+	    }
+	}
+#endif
+
+	peer_cert = SSL_get_peer_certificate(handle);
+#if defined(USE_OPENSSL_INCL) || defined(USE_GNUTLS_FUNCS)
+	X509_NAME_oneline(X509_get_subject_name(peer_cert),
+			  ssl_dn, (int) sizeof(ssl_dn));
+#elif defined(USE_GNUTLS_INCL)
+	X509_NAME_oneline(X509_get_subject_name(peer_cert),
+			  ssl_dn + 1, (int) sizeof(ssl_dn) - 1);
+
+	/* Iterate over DN in incompatible GnuTLS format to bring it into OpenSSL format */
+	ssl_dn[0] = '/';
+	ssl_dn_start = ssl_dn;
+	while (*ssl_dn_start) {
+	    if ((*ssl_dn_start == ',') && (*(ssl_dn_start + 1) == ' ')) {
+		*ssl_dn_start++ = '/';
+		if (*(p = ssl_dn_start) != 0) {
+		    while ((p[0] = p[1]) != 0)
+			++p;
+		}
+	    } else {
+		ssl_dn_start++;
+	    }
+	}
+#endif
+
+	/*
+	 * X.509 DN validation taking ALL CN fields into account
+	 * (c) 2006 Thorsten Glaser <tg@mirbsd.de>
+	 */
+
+	/* initialise status information */
+	status_sslcertcheck = 0;	/* 0 = no CN found in DN */
+	ssl_dn_start = ssl_dn;
+
+	/* validate all CNs found in DN */
+	CTRACE((tfp, "Validating CNs in '%s'\n", ssl_dn_start));
+	while ((cert_host = strstr(ssl_dn_start, "/CN=")) != NULL) {
+	    status_sslcertcheck = 1;	/* 1 = could not verify CN */
+	    /* start of CommonName */
+	    cert_host += 4;
+	    /* find next part of DistinguishedName */
+	    if ((p = strchr(cert_host, '/')) != NULL) {
+		*p = '\0';
+		ssl_dn_start = p;	/* yes this points to the NUL byte */
+	    } else
+		ssl_dn_start = NULL;
+	    cert_host = StripIpv6Brackets(cert_host);
+
+	    /* verify this CN */
+	    CTRACE((tfp, "Matching\n\tssl_host  '%s'\n\tcert_host '%s'\n",
+		    ssl_host, cert_host));
+	    if (!strcasecomp_asterisk(ssl_host, cert_host)) {
+		status_sslcertcheck = 2;	/* 2 = verified peer */
+		/* I think this is cool to have in the logs -TG */
+		HTSprintf0(&msg,
+			   gettext("Verified connection to %s (cert=%s)"),
+			   ssl_host, cert_host);
+		_HTProgress(msg);
+		FREE(msg);
+		/* no need to continue the verification loop */
+		break;
+	    }
+
+	    /* add this CN to list of failed CNs */
+	    if (ssl_all_cns == NULL)
+		StrAllocCopy(ssl_all_cns, "CN<");
+	    else
+		StrAllocCat(ssl_all_cns, ":CN<");
+	    StrAllocCat(ssl_all_cns, cert_host);
+	    StrAllocCat(ssl_all_cns, ">");
+	    /* if we cannot retry, don't try it */
+	    if (ssl_dn_start == NULL)
+		break;
+	    /* now retry next CN found in DN */
+	    *ssl_dn_start = '/';	/* formerly NUL byte */
+	}
+
+	/* check the X.509v3 Subject Alternative Name */
+#ifdef USE_GNUTLS_INCL
+	if (status_sslcertcheck < 2) {
+	    int i;
+	    size_t size;
+	    gnutls_x509_crt cert;
+	    static char buf[2048];
+
+	    /* import the certificate to the x509_crt format */
+	    if (gnutls_x509_crt_init(&cert) == 0) {
+
+		if (gnutls_x509_crt_import(cert, peer_cert,
+					   GNUTLS_X509_FMT_DER) < 0) {
+		    gnutls_x509_crt_deinit(cert);
+		    goto done;
+		}
+
+		ret = 0;
+		for (i = 0; !(ret < 0); i++) {
+		    size = sizeof(buf);
+		    ret = gnutls_x509_crt_get_subject_alt_name(cert, i, buf,
+							       &size, NULL);
+
+		    if (strcasecomp_asterisk(ssl_host, buf) == 0) {
+			status_sslcertcheck = 2;
+			HTSprintf0(&msg,
+				   gettext("Verified connection to %s (subj=%s)"),
+				   ssl_host, buf);
+			_HTProgress(msg);
+			FREE(msg);
+			break;
+		    }
+
+		}
+	    }
+	}
+#endif
+#ifdef USE_OPENSSL_INCL
+	if (status_sslcertcheck < 2) {
+	    STACK_OF(GENERAL_NAME) * gens;
+	    int i, numalts;
+	    const GENERAL_NAME *gn;
+
+	    gens = (STACK_OF(GENERAL_NAME) *)
+		X509_get_ext_d2i(peer_cert, NID_subject_alt_name, NULL, NULL);
+
+	    if (gens != NULL) {
+		numalts = sk_GENERAL_NAME_num(gens);
+		for (i = 0; i < numalts; ++i) {
+		    gn = sk_GENERAL_NAME_value(gens, i);
+		    if (gn->type == GEN_DNS)
+			cert_host = (char *) ASN1_STRING_data(gn->d.ia5);
+		    else if (gn->type == GEN_IPADD) {
+			/* XXX untested -TG */
+			size_t j = (size_t) ASN1_STRING_length(gn->d.ia5);
+
+			cert_host = (char *) malloc(j + 1);
+			MemCpy(cert_host, ASN1_STRING_data(gn->d.ia5), j);
+			cert_host[j] = '\0';
+		    } else
+			continue;
+		    status_sslcertcheck = 1;	/* got at least one */
+		    /* verify this SubjectAltName (see above) */
+		    cert_host = StripIpv6Brackets(cert_host);
+		    if (!(gn->type == GEN_IPADD ? strcasecomp :
+			  strcasecomp_asterisk) (ssl_host, cert_host)) {
+			status_sslcertcheck = 2;
+			HTSprintf0(&msg,
+				   gettext("Verified connection to %s (subj=%s)"),
+				   ssl_host, cert_host);
+			_HTProgress(msg);
+			FREE(msg);
+			if (gn->type == GEN_IPADD)
+			    free(cert_host);
+			break;
+		    }
+		    /* add to list of failed CNs */
+		    if (ssl_all_cns == NULL)
+			StrAllocCopy(ssl_all_cns, "SAN<");
+		    else
+			StrAllocCat(ssl_all_cns, ":SAN<");
+		    if (gn->type == GEN_DNS)
+			StrAllocCat(ssl_all_cns, "DNS=");
+		    else if (gn->type == GEN_IPADD)
+			StrAllocCat(ssl_all_cns, "IP=");
+		    StrAllocCat(ssl_all_cns, cert_host);
+		    StrAllocCat(ssl_all_cns, ">");
+		    if (gn->type == GEN_IPADD)
+			free(cert_host);
+		}
+		sk_GENERAL_NAME_free(gens);
+	    }
+	}
+#endif /* USE_OPENSSL_INCL */
+
+	/* if an error occurred, format the appropriate message */
+	if (status_sslcertcheck == 0) {
+	    HTSprintf0(&msg, SSL_FORCED_PROMPT,
+		       gettext("Can't find common name in certificate"));
+	} else if (status_sslcertcheck == 1) {
+	    HTSprintf0(&msg,
+		       gettext("SSL error:host(%s)!=cert(%s)-Continue?"),
+		       ssl_host, ssl_all_cns);
+	}
+
+	/* if an error occurred, let the user decide how much he trusts */
+	if (status_sslcertcheck < 2) {
+	    if (!HTForcedPrompt(ssl_noprompt, msg, YES)) {
+		status = HT_NOT_LOADED;
+		FREE(msg);
+		FREE(ssl_all_cns);
+		goto done;
+	    }
+	    HTSprintf0(&msg,
+		       gettext("UNVERIFIED connection to %s (cert=%s)"),
+		       ssl_host, ssl_all_cns ? ssl_all_cns : "NONE");
+	    _HTProgress(msg);
+	    FREE(msg);
+	}
+
+	show_cert_issuer(peer_cert);
+
+	HTSprintf0(&msg,
+		   gettext("Secure %d-bit %s (%s) HTTP connection"),
+		   SSL_get_cipher_bits(handle, NULL),
+		   SSL_get_cipher_version(handle),
+		   SSL_get_cipher(handle));
+	_HTProgress(msg);
+	FREE(msg);
+    }
+#endif /* USE_SSL */
+
+    /* Ask that node for the document, omitting the host name & anchor
+     */
+    {
+	char *p1 = (HTParse(url, "", PARSE_PATH | PARSE_PUNCTUATION));
+
+#ifdef USE_SSL
+	if (do_connect) {
+	    METHOD = "CONNECT";
+	    BStrCopy0(command, "CONNECT ");
+	} else
+#endif /* USE_SSL */
+	if (do_post) {
+	    METHOD = "POST";
+	    BStrCopy0(command, "POST ");
+	} else if (do_head) {
+	    METHOD = "HEAD";
+	    BStrCopy0(command, "HEAD ");
+	} else {
+	    METHOD = "GET";
+	    BStrCopy0(command, "GET ");
+	}
+
+	/*
+	 * If we are using a proxy gateway don't copy in the first slash of
+	 * say:  /gopher://a;lkdjfl;ajdf;lkj/;aldk/adflj so that just
+	 * gopher://....  is sent.
+	 */
+#ifdef USE_SSL
+	if (using_proxy && !did_connect) {
+	    if (do_connect)
+		BStrCat0(command, connect_host);
+	    else
+		BStrCat0(command, p1 + 1);
+	}
+#else
+	if (using_proxy)
+	    BStrCat0(command, p1 + 1);
+#endif /* USE_SSL */
+	else
+	    BStrCat0(command, p1);
+	FREE(p1);
+    }
+    if (extensions) {
+	BStrCat0(command, " ");
+	BStrCat0(command, HTTP_VERSION);
+    }
+
+    BStrCat0(command, crlf);	/* CR LF, as in rfc 977 */
+
+    if (extensions) {
+	int n, i;
+	char *host = NULL;
+
+	if ((host = HTParse(anAnchor->address, "", PARSE_HOST)) != NULL) {
+	    strip_userid(host);
+	    HTBprintf(&command, "Host: %s%c%c", host, CR, LF);
+	    FREE(host);
+	}
+
+	if (!HTPresentations)
+	    HTFormatInit();
+	n = HTList_count(HTPresentations);
+
+	first_Accept = TRUE;
+	len = 0;
+	for (i = 0; i < n; i++) {
+	    HTPresentation *pres =
+	    (HTPresentation *) HTList_objectAt(HTPresentations, i);
+
+	    if (pres->get_accept) {
+		if (pres->quality < 1.0) {
+		    if (pres->maxbytes > 0) {
+			sprintf(temp, ";q=%4.3f;mxb=%" PRI_off_t "",
+				pres->quality, CAST_off_t (pres->maxbytes));
+		    } else {
+			sprintf(temp, ";q=%4.3f", pres->quality);
+		    }
+		} else if (pres->maxbytes > 0) {
+		    sprintf(temp, ";mxb=%" PRI_off_t "", CAST_off_t (pres->maxbytes));
+		} else {
+		    temp[0] = '\0';
+		}
+		HTSprintf0(&linebuf, "%s%s%s",
+			   (first_Accept ?
+			    "Accept: " : ", "),
+			   HTAtom_name(pres->rep),
+			   temp);
+		len += (int) strlen(linebuf);
+		if (len > 252 && !first_Accept) {
+		    BStrCat0(command, crlf);
+		    HTSprintf0(&linebuf, "Accept: %s%s",
+			       HTAtom_name(pres->rep),
+			       temp);
+		    len = (int) strlen(linebuf);
+		}
+		BStrCat0(command, linebuf);
+		first_Accept = FALSE;
+	    }
+	}
+	HTBprintf(&command, "%s*/*;q=0.01%c%c",
+		  (first_Accept ?
+		   "Accept: " : ", "), CR, LF);
+
+	/*
+	 * FIXME:  suppressing the "Accept-Encoding" in this case is done to
+	 * work around limitations of the presentation logic used for the
+	 * command-line "-base" option.  The remote site may transmit the
+	 * document gzip'd, but the ensuing logic in HTSaveToFile() would see
+	 * the mime-type as gzip rather than text/html, and not prepend the
+	 * base URL.  This is less efficient than accepting the compressed data
+	 * and uncompressing it, adding the base URL but is simpler than
+	 * augmenting the dump's presentation logic -TD
+	 */
+	if (LYPrependBaseToSource && dump_output_immediately) {
+	    CTRACE((tfp,
+		    "omit Accept-Encoding to work-around interaction with -source\n"));
+	} else {
+	    char *list = 0;
+	    int j, k;
+
+	    for (j = 1; j < encodingALL; j <<= 1) {
+		if (acceptEncoding(j)) {
+		    for (k = 0; tbl_preferred_encoding[k].name != 0; ++k) {
+			if (tbl_preferred_encoding[k].value == j) {
+			    if (list != 0)
+				StrAllocCat(list, ", ");
+			    StrAllocCat(list, tbl_preferred_encoding[k].name);
+			    break;
+			}
+		    }
+		}
+	    }
+
+	    if (list != 0) {
+		HTBprintf(&command, "Accept-Encoding: %s%c%c", list, CR, LF);
+		free(list);
+	    }
+	}
+
+	if (language && *language) {
+	    HTBprintf(&command, "Accept-Language: %s%c%c", language, CR, LF);
+	}
+
+	if (pref_charset && *pref_charset) {
+	    BStrCat0(command, "Accept-Charset: ");
+	    StrAllocCopy(linebuf, pref_charset);
+	    if (linebuf[strlen(linebuf) - 1] == ',')
+		linebuf[strlen(linebuf) - 1] = '\0';
+	    LYLowerCase(linebuf);
+	    if (strstr(linebuf, "iso-8859-1") == NULL)
+		StrAllocCat(linebuf, ", iso-8859-1;q=0.01");
+	    if (strstr(linebuf, "us-ascii") == NULL)
+		StrAllocCat(linebuf, ", us-ascii;q=0.01");
+	    BStrCat0(command, linebuf);
+	    HTBprintf(&command, "%c%c", CR, LF);
+	}
+#if 0
+	/*
+	 * Promote 300 (Multiple Choices) replies, if supported, over 406 (Not
+	 * Acceptable) replies.  - FM
+	 *
+	 * This used to be done in versions 2.7 and 2.8*, but violates the
+	 * specs for transparent content negotiation and has the effect that
+	 * servers supporting those specs will send 300 (Multiple Choices)
+	 * instead of a normal response (e.g.  200 OK), since they will assume
+	 * that the client wants to make the choice.  It is not clear whether
+	 * there are any servers or sites for which sending this header really
+	 * improves anything.
+	 *
+	 * If there ever is a need to send "Negotiate:  trans" and really mean
+	 * it, we should send "Negotiate:  trans,trans" or similar, since that
+	 * is semantically equivalent and some servers may ignore "Negotiate:
+	 * trans" as a special case when it comes from Lynx (to work around the
+	 * old faulty behavior).  - kw
+	 *
+	 * References:
+	 * RFC 2295 (see also RFC 2296), and mail to lynx-dev and
+	 * new-httpd@apache.org from Koen Holtman, Jan 1999.
+	 */
+	if (!do_post) {
+	    HTBprintf(&command, "Negotiate: trans%c%c", CR, LF);
+	}
+#endif /* 0 */
+
+	/*
+	 * When reloading give no-cache pragma to proxy server to make it
+	 * refresh its cache.  -- Ari L.  <luotonen@dxcern.cern.ch>
+	 *
+	 * Also send it as a Cache-Control header for HTTP/1.1.  - FM
+	 */
+	if (reloading) {
+	    HTBprintf(&command, "Pragma: no-cache%c%c", CR, LF);
+	    HTBprintf(&command, "Cache-Control: no-cache%c%c", CR, LF);
+	}
+
+	if (LYSendUserAgent || no_useragent) {
+	    if (non_empty(LYUserAgent)) {
+		char *cp = LYSkipBlanks(LYUserAgent);
+
+		/* Won't send it at all if all blank - kw */
+		if (*cp != '\0')
+		    HTBprintf(&command, "User-Agent: %.*s%c%c",
+			      INIT_LINE_SIZE - 15, LYUserAgent, CR, LF);
+	    } else {
+		HTBprintf(&command, "User-Agent: %s/%s  libwww-FM/%s%c%c",
+			  HTAppName ? HTAppName : "unknown",
+			  HTAppVersion ? HTAppVersion : "0.0",
+			  HTLibraryVersion, CR, LF);
+	    }
+	}
+
+	if (personal_mail_address && !LYNoFromHeader) {
+	    HTBprintf(&command, "From: %s%c%c", personal_mail_address, CR, LF);
+	}
+
+	if (!(LYUserSpecifiedURL ||
+	      LYNoRefererHeader || LYNoRefererForThis) &&
+	    strcmp(HTLoadedDocumentURL(), "")) {
+	    const char *cp = LYRequestReferer;
+
+	    if (!cp)
+		cp = HTLoadedDocumentURL();	/* @@@ Try both? - kw */
+	    BStrCat0(command, "Referer: ");
+	    if (isLYNXIMGMAP(cp)) {
+		char *pound = findPoundSelector(cp);
+		int nn = (pound ? (int) (pound - cp) : (int) strlen(cp));
+
+		HTSABCat(&command, cp + LEN_LYNXIMGMAP, nn);
+	    } else {
+		BStrCat0(command, cp);
+	    }
+	    HTBprintf(&command, "%c%c", CR, LF);
+	} {
+	    char *abspath;
+	    char *docname;
+	    char *hostname;
+	    char *colon;
+	    int portnumber;
+	    char *auth, *cookie = NULL;
+	    BOOL secure = (BOOL) (StrNCmp(anAnchor->address, "https", 5)
+				  ? FALSE
+				  : TRUE);
+
+	    abspath = HTParse(arg, "", PARSE_PATH | PARSE_PUNCTUATION);
+	    docname = HTParse(arg, "", PARSE_PATH);
+	    hostname = HTParse(arg, "", PARSE_HOST);
+	    if (hostname &&
+		NULL != (colon = HTParsePort(hostname, &portnumber))) {
+		*colon = '\0';	/* Chop off port number */
+	    } else if (!StrNCmp(arg, "https", 5)) {
+		portnumber = HTTPS_PORT;
+	    } else {
+		portnumber = HTTP_PORT;
+	    }
+
+	    /*
+	     * Add Authorization, Proxy-Authorization, and/or Cookie headers,
+	     * if applicable.
+	     */
+	    if (using_proxy) {
+		/*
+		 * If we are using a proxy, first determine if we should
+		 * include an Authorization header and/or Cookie header for the
+		 * ultimate target of this request.  - FM & AJL
+		 */
+		char *host2 = NULL, *path2 = NULL;
+		int port2 = (StrNCmp(docname, "https", 5) ?
+			     HTTP_PORT : HTTPS_PORT);
+
+		host2 = HTParse(docname, "", PARSE_HOST);
+		path2 = HTParse(docname, "", PARSE_PATH | PARSE_PUNCTUATION);
+		if (host2) {
+		    if ((colon = HTParsePort(host2, &port2)) != NULL) {
+			/* Use non-default port number */
+			*colon = '\0';
+		    }
+		}
+		/*
+		 * This composeAuth() does file access, i.e., for the ultimate
+		 * target of the request.  - AJL
+		 */
+		auth_proxy = NO;
+		if ((auth = HTAA_composeAuth(host2, port2, path2,
+					     auth_proxy)) != NULL &&
+		    *auth != '\0') {
+		    /*
+		     * If auth is not NULL nor zero-length, it's an
+		     * Authorization header to be included.  - FM
+		     */
+		    HTBprintf(&command, "%s%c%c", auth, CR, LF);
+		    CTRACE((tfp, "HTTP: Sending authorization: %s\n", auth));
+		} else if (auth && *auth == '\0') {
+		    /*
+		     * If auth is a zero-length string, the user either
+		     * cancelled or goofed at the username and password prompt.
+		     * - FM
+		     */
+		    if (!(traversal || dump_output_immediately) &&
+			HTConfirm(CONFIRM_WO_PASSWORD)) {
+			show_401 = TRUE;
+		    } else {
+			if (traversal || dump_output_immediately)
+			    HTAlert(FAILED_NEED_PASSWD);
+#ifdef USE_SSL
+			if (did_connect)
+			    HTTP_NETCLOSE(s, handle);
+#endif /* USE_SSL */
+			BStrFree(command);
+			FREE(hostname);
+			FREE(docname);
+			FREE(abspath);
+			FREE(host2);
+			FREE(path2);
+			status = HT_NOT_LOADED;
+			goto done;
+		    }
+		} else {
+		    CTRACE((tfp, "HTTP: Not sending authorization (yet).\n"));
+		}
+		/*
+		 * Add 'Cookie:' header, if it's HTTP or HTTPS document being
+		 * proxied.
+		 */
+		if (!StrNCmp(docname, "http", 4)) {
+		    cookie = LYAddCookieHeader(host2, path2, port2, secure);
+		}
+		FREE(host2);
+		FREE(path2);
+		/*
+		 * The next composeAuth() will be for the proxy.  - AJL
+		 */
+		auth_proxy = YES;
+	    } else {
+		/*
+		 * Add cookie for a non-proxied request.  - FM
+		 */
+		cookie = LYAddCookieHeader(hostname, abspath, portnumber, secure);
+		auth_proxy = NO;
+	    }
+	    /*
+	     * If we do have a cookie set, add it to the request buffer.  - FM
+	     */
+	    if (cookie != NULL) {
+		if (*cookie != '$') {
+		    /*
+		     * It's a historical cookie, so signal to the server that
+		     * we support modern cookies.  - FM
+		     */
+		    BStrCat0(command, "Cookie2: $Version=\"1\"");
+		    BStrCat0(command, crlf);
+		    CTRACE((tfp, "HTTP: Sending Cookie2: $Version =\"1\"\n"));
+		}
+		if (*cookie != '\0') {
+		    /*
+		     * It's not a zero-length string, so add the header.  Note
+		     * that any folding of long strings has been done already
+		     * in LYCookie.c.  - FM
+		     */
+		    BStrCat0(command, "Cookie: ");
+		    BStrCat0(command, cookie);
+		    BStrCat0(command, crlf);
+		    CTRACE((tfp, "HTTP: Sending Cookie: %s\n", cookie));
+		}
+		FREE(cookie);
+	    }
+	    FREE(abspath);
+
+	    /*
+	     * If we are using a proxy, auth_proxy should be YES, and we check
+	     * here whether we want a Proxy-Authorization header for it.  If we
+	     * are not using a proxy, auth_proxy should still be NO, and we
+	     * check here for whether we want an Authorization header.  - FM &
+	     * AJL
+	     */
+	    if ((auth = HTAA_composeAuth(hostname,
+					 portnumber,
+					 docname,
+					 auth_proxy)) != NULL &&
+		*auth != '\0') {
+		/*
+		 * If auth is not NULL nor zero-length, it's an Authorization
+		 * or Proxy-Authorization header to be included.  - FM
+		 */
+		HTBprintf(&command, "%s%c%c", auth, CR, LF);
+		CTRACE((tfp, (auth_proxy ?
+			      "HTTP: Sending proxy authorization: %s\n" :
+			      "HTTP: Sending authorization: %s\n"),
+			auth));
+	    } else if (auth && *auth == '\0') {
+		/*
+		 * If auth is a zero-length string, the user either cancelled
+		 * or goofed at the username and password prompt.  - FM
+		 */
+		if (!(traversal || dump_output_immediately) && HTConfirm(CONFIRM_WO_PASSWORD)) {
+		    if (auth_proxy == TRUE) {
+			show_407 = TRUE;
+		    } else {
+			show_401 = TRUE;
+		    }
+		} else {
+		    if (traversal || dump_output_immediately)
+			HTAlert(FAILED_NEED_PASSWD);
+		    BStrFree(command);
+		    FREE(hostname);
+		    FREE(docname);
+		    status = HT_NOT_LOADED;
+		    goto done;
+		}
+	    } else {
+		CTRACE((tfp, (auth_proxy ?
+			      "HTTP: Not sending proxy authorization (yet).\n" :
+			      "HTTP: Not sending authorization (yet).\n")));
+	    }
+	    FREE(hostname);
+	    FREE(docname);
+	}
+    }
+
+    if (
+#ifdef USE_SSL
+	   !do_connect &&
+#endif /* USE_SSL */
+	   do_post) {
+	CTRACE((tfp, "HTTP: Doing post, content-type '%s'\n",
+		anAnchor->post_content_type
+		? anAnchor->post_content_type
+		: "lose"));
+	HTBprintf(&command, "Content-type: %s%c%c",
+		  anAnchor->post_content_type
+		  ? anAnchor->post_content_type
+		  : "lose",
+		  CR, LF);
+
+	HTBprintf(&command, "Content-length: %d%c%c",
+		  !isBEmpty(anAnchor->post_data)
+		  ? BStrLen(anAnchor->post_data)
+		  : 0,
+		  CR, LF);
+
+	BStrCat0(command, crlf);	/* Blank line means "end" of headers */
+
+	BStrCat(command, anAnchor->post_data);
+    } else
+	BStrCat0(command, crlf);	/* Blank line means "end" of headers */
+
+    if (TRACE) {
+	CTRACE((tfp, "Writing:\n"));
+	trace_bstring(command);
+#ifdef USE_SSL
+	CTRACE((tfp, "%s",
+		(anAnchor->post_data && !do_connect ? crlf : "")));
+#else
+	CTRACE((tfp, "%s",
+		(anAnchor->post_data ? crlf : "")));
+#endif /* USE_SSL */
+	CTRACE((tfp, "----------------------------------\n"));
+    }
+
+    _HTProgress(gettext("Sending HTTP request."));
+
+#ifdef    NOT_ASCII		/* S/390 -- gil -- 0548 */
+    {
+	char *p2;
+
+	for (p2 = BStrData(command);
+	     p2 < BStrData(command) + BStrLen(command);
+	     p2++)
+	    *p2 = TOASCII(*p2);
+    }
+#endif /* NOT_ASCII */
+    status = (int) HTTP_NETWRITE(s,
+				 BStrData(command),
+				 BStrLen(command),
+				 handle);
+    BStrFree(command);
+    FREE(linebuf);
+    if (status <= 0) {
+	if (status == 0) {
+	    CTRACE((tfp, "HTTP: Got status 0 in initial write\n"));
+	    /* Do nothing. */
+	} else if ((SOCKET_ERRNO == ENOTCONN ||
+		    SOCKET_ERRNO == ECONNRESET ||
+		    SOCKET_ERRNO == EPIPE) &&
+		   !already_retrying &&
+	    /* Don't retry if we're posting. */ !do_post) {
+	    /*
+	     * Arrrrgh, HTTP 0/1 compatibility problem, maybe.
+	     */
+	    CTRACE((tfp,
+		    "HTTP: BONZO ON WRITE Trying again with HTTP0 request.\n"));
+	    _HTProgress(RETRYING_AS_HTTP0);
+	    HTTP_NETCLOSE(s, handle);
+	    extensions = NO;
+	    already_retrying = TRUE;
+	    goto try_again;
+	} else {
+	    CTRACE((tfp,
+		    "HTTP: Hit unexpected network WRITE error; aborting connection.\n"));
+	    HTTP_NETCLOSE(s, handle);
+	    status = -1;
+	    HTAlert(gettext("Unexpected network write error; connection aborted."));
+	    goto done;
+	}
+    }
+
+    CTRACE((tfp, "HTTP: WRITE delivered OK\n"));
+    _HTProgress(gettext("HTTP request sent; waiting for response."));
+
+    /*    Read the first line of the response
+     * -----------------------------------
+     */
+    {
+	/* Get numeric status etc */
+	BOOL end_of_file = NO;
+	int buffer_length = INIT_LINE_SIZE;
+
+	line_buffer = typecallocn(char, (size_t) buffer_length);
+
+	if (line_buffer == NULL)
+	    outofmem(__FILE__, "HTLoadHTTP");
+
+	HTReadProgress(bytes_already_read = 0, (off_t) 0);
+	do {			/* Loop to read in the first line */
+	    /*
+	     * Extend line buffer if necessary for those crazy WAIS URLs ;-)
+	     */
+	    if (buffer_length - length < LINE_EXTEND_THRESH) {
+		buffer_length = buffer_length + buffer_length;
+		line_buffer =
+		    (char *) realloc(line_buffer, ((unsigned) buffer_length *
+						   sizeof(char)));
+
+		if (line_buffer == NULL)
+		    outofmem(__FILE__, "HTLoadHTTP");
+	    }
+	    CTRACE((tfp, "HTTP: Trying to read %d\n", buffer_length - length - 1));
+	    status = HTTP_NETREAD(s,
+				  line_buffer + length,
+				  (buffer_length - length - 1),
+				  handle);
+	    CTRACE((tfp, "HTTP: Read %d\n", status));
+	    if (status <= 0) {
+		/*
+		 * Retry if we get nothing back too.
+		 * Bomb out if we get nothing twice.
+		 */
+		if (status == HT_INTERRUPTED) {
+		    CTRACE((tfp, "HTTP: Interrupted initial read.\n"));
+		    _HTProgress(CONNECTION_INTERRUPTED);
+		    HTTP_NETCLOSE(s, handle);
+		    status = HT_NO_DATA;
+		    goto clean_up;
+		} else if (status < 0 &&
+			   (SOCKET_ERRNO == ENOTCONN ||
+#ifdef _WINDOWS			/* 1997/11/09 (Sun) 16:59:58 */
+			    SOCKET_ERRNO == ETIMEDOUT ||
+#endif
+			    SOCKET_ERRNO == ECONNRESET ||
+			    SOCKET_ERRNO == EPIPE) &&
+			   !already_retrying && !do_post) {
+		    /*
+		     * Arrrrgh, HTTP 0/1 compability problem, maybe.
+		     */
+		    CTRACE((tfp,
+			    "HTTP: BONZO Trying again with HTTP0 request.\n"));
+		    HTTP_NETCLOSE(s, handle);
+		    FREE(line_buffer);
+		    FREE(line_kept_clean);
+
+		    extensions = NO;
+		    already_retrying = TRUE;
+		    _HTProgress(RETRYING_AS_HTTP0);
+		    goto try_again;
+		}
+#ifdef USE_SSL
+		else if ((SSLerror = ERR_get_error()) != 0) {
+		    CTRACE((tfp,
+			    "HTTP: Hit unexpected network read error; aborting connection; status %d:%s.\n",
+			    status, ERR_error_string(SSLerror, NULL)));
+		    HTAlert(gettext("Unexpected network read error; connection aborted."));
+		    HTTP_NETCLOSE(s, handle);
+		    status = -1;
+		    goto clean_up;
+		}
+#endif
+		else {
+		    CTRACE((tfp,
+			    "HTTP: Hit unexpected network read error; aborting connection; status %d.\n",
+			    status));
+		    HTAlert(gettext("Unexpected network read error; connection aborted."));
+		    HTTP_NETCLOSE(s, handle);
+		    status = -1;
+		    goto clean_up;
+		}
+	    }
+#ifdef    NOT_ASCII		/* S/390 -- gil -- 0564 */
+	    {
+		char *p2;
+
+		for (p2 = line_buffer + length;
+		     p2 < line_buffer + length + status;
+		     p2++)
+		    *p2 = FROMASCII(*p2);
+	    }
+#endif /* NOT_ASCII */
+
+	    bytes_already_read += status;
+	    HTReadProgress(bytes_already_read, (off_t) 0);
+
+#ifdef UCX			/* UCX returns -1 on EOF */
+	    if (status == 0 || status == -1)
+#else
+	    if (status == 0)
+#endif
+	    {
+		break;
+	    }
+	    line_buffer[length + status] = 0;
+
+	    if (line_buffer) {
+		FREE(line_kept_clean);
+		line_kept_clean = (char *) malloc((unsigned) buffer_length *
+						  sizeof(char));
+
+		if (line_kept_clean == NULL)
+		    outofmem(__FILE__, "HTLoadHTTP");
+		MemCpy(line_kept_clean, line_buffer, buffer_length);
+#ifdef SH_EX			/* FIX BUG by kaz@maczuka.hitachi.ibaraki.jp */
+		real_length_of_line = length + status;
+#endif
+	    }
+
+	    eol = strchr(line_buffer + length, LF);
+	    /* Do we *really* want to do this? */
+	    if (eol && eol != line_buffer && *(eol - 1) == CR)
+		*(eol - 1) = ' ';
+
+	    length = length + status;
+
+	    /* Do we really want to do *this*? */
+	    if (eol)
+		*eol = 0;	/* Terminate the line */
+	}
+	/* All we need is the first line of the response.  If it's a HTTP/1.0
+	 * response, then the first line will be absurdly short and therefore
+	 * we can safely gate the number of bytes read through this code (as
+	 * opposed to below) to ~1000.
+	 *
+	 * Well, let's try 100.
+	 */
+	while (!eol && !end_of_file && bytes_already_read < 100);
+    }				/* Scope of loop variables */
+
+    /* save total length, in case we decide later to show it all - kw */
+    rawlength = length;
+
+    /*    We now have a terminated unfolded line.  Parse it.
+     * --------------------------------------------------
+     */
+    CTRACE((tfp, "HTTP: Rx: %s\n", line_buffer));
+
+    /*
+     * Kludge to work with old buggy servers and the VMS Help gateway.  They
+     * can't handle the third word, so we try again without it.
+     */
+    if (extensions &&		/* Old buggy server or Help gateway? */
+	(0 == StrNCmp(line_buffer, "<TITLE>Bad File Request</TITLE>", 31) ||
+	 0 == StrNCmp(line_buffer, "Address should begin with", 25) ||
+	 0 == StrNCmp(line_buffer, "<TITLE>Help ", 12) ||
+	 0 == strcmp(line_buffer,
+		     "Document address invalid or access not authorised"))) {
+	FREE(line_buffer);
+	FREE(line_kept_clean);
+	extensions = NO;
+	already_retrying = TRUE;
+	CTRACE((tfp, "HTTP: close socket %d to retry with HTTP0\n", s));
+	HTTP_NETCLOSE(s, handle);
+	/* print a progress message */
+	_HTProgress(RETRYING_AS_HTTP0);
+	goto try_again;
+    } {
+	int fields;
+	char server_version[VERSION_LENGTH + 1];
+
+	server_version[0] = 0;
+
+	fields = sscanf(line_buffer, "%20s %d",
+			server_version,
+			&server_status);
+
+	CTRACE((tfp, "HTTP: Scanned %d fields from line_buffer\n", fields));
+
+	if (http_error_file) {	/* Make the status code externally available */
+	    FILE *error_file;
+
+#ifdef SERVER_STATUS_ONLY
+	    error_file = fopen(http_error_file, TXT_W);
+	    if (error_file) {	/* Managed to open the file */
+		fprintf(error_file, "error=%d\n", server_status);
+		fclose(error_file);
+	    }
+#else
+	    error_file = fopen(http_error_file, TXT_A);
+	    if (error_file) {	/* Managed to open the file */
+		fprintf(error_file, "   URL=%s (%s)\n", url, METHOD);
+		fprintf(error_file, "STATUS=%s\n", line_buffer);
+		fclose(error_file);
+	    }
+#endif /* SERVER_STATUS_ONLY */
+	}
+
+	/*
+	 * Rule out a non-HTTP/1.n reply as best we can.
+	 */
+	if (fields < 2 || !server_version[0] || server_version[0] != 'H' ||
+	    server_version[1] != 'T' || server_version[2] != 'T' ||
+	    server_version[3] != 'P' || server_version[4] != '/' ||
+	    server_version[6] != '.') {
+	    /*
+	     * Ugh!  An HTTP0 reply,
+	     */
+	    HTAtom *encoding;
+
+	    CTRACE((tfp, "--- Talking HTTP0.\n"));
+
+	    format_in = HTFileFormat(url, &encoding, NULL);
+	    /*
+	     * Treat all plain text as HTML.  This sucks but its the only
+	     * solution without without looking at content.
+	     */
+	    if (!StrNCmp(HTAtom_name(format_in), "text/plain", 10)) {
+		CTRACE((tfp, "HTTP: format_in being changed to text/HTML\n"));
+		format_in = WWW_HTML;
+	    }
+	    if (!IsUnityEnc(encoding)) {
+		/*
+		 * Change the format to that for "www/compressed".
+		 */
+		CTRACE((tfp, "HTTP: format_in is '%s',\n", HTAtom_name(format_in)));
+		StrAllocCopy(anAnchor->content_type, HTAtom_name(format_in));
+		StrAllocCopy(anAnchor->content_encoding, HTAtom_name(encoding));
+		format_in = HTAtom_for("www/compressed");
+		CTRACE((tfp, "        Treating as '%s' with encoding '%s'\n",
+			"www/compressed", HTAtom_name(encoding)));
+	    }
+
+	    start_of_data = line_kept_clean;
+	} else {
+	    /*
+	     * Set up to decode full HTTP/1.n response.  - FM
+	     */
+	    format_in = HTAtom_for("www/mime");
+	    CTRACE((tfp, "--- Talking HTTP1.\n"));
+
+	    /*
+	     * We set start_of_data to "" when !eol here because there will be
+	     * a put_block done below; we do *not* use the value of
+	     * start_of_data (as a pointer) in the computation of length (or
+	     * anything else) when !eol.  Otherwise, set the value of length to
+	     * what we have beyond eol (i.e., beyond the status line).  - FM
+	     */
+	    if (eol != 0) {
+		start_of_data = (eol + 1);
+	    } else {
+		start_of_data = empty;
+	    }
+	    length = (eol
+		      ? length - (int) (start_of_data - line_buffer)
+		      : 0);
+
+	    /*
+	     * Trim trailing spaces in line_buffer so that we can use it in
+	     * messages which include the status line.  - FM
+	     */
+	    while (line_buffer[strlen(line_buffer) - 1] == ' ')
+		line_buffer[strlen(line_buffer) - 1] = '\0';
+
+	    /*
+	     * Take appropriate actions based on the status.  - FM
+	     */
+	    switch (server_status / 100) {
+	    case 1:
+		/*
+		 * HTTP/1.1 Informational statuses.
+		 * 100 Continue.
+		 * 101 Switching Protocols.
+		 * > 101 is unknown.
+		 * We should never get these, and they have only the status
+		 * line and possibly other headers, so we'll deal with them by
+		 * showing the full header to the user as text/plain.  - FM
+		 */
+		HTAlert(gettext("Got unexpected Informational Status."));
+		do_head = TRUE;
+		break;
+
+	    case 2:
+		/*
+		 * Good:  Got MIME object!  (Successful) - FM
+		 */
+		if (do_head) {
+		    /*
+		     * If HEAD was requested, show headers (and possibly bogus
+		     * body) for all 2xx status codes as text/plain - KW
+		     */
+		    HTProgress(line_buffer);
+		    break;
+		}
+		switch (server_status) {
+		case 204:
+		    /*
+		     * No Content.
+		     */
+		    HTAlert(line_buffer);
+		    HTTP_NETCLOSE(s, handle);
+		    HTNoDataOK = 1;
+		    status = HT_NO_DATA;
+		    goto clean_up;
+
+		case 205:
+		    /*
+		     * Reset Content.  The server has fulfilled the request but
+		     * nothing is returned and we should reset any form
+		     * content.  We'll instruct the user to do that, and
+		     * restore the current document.  - FM
+		     */
+		    HTAlert(gettext("Request fulfilled.  Reset Content."));
+		    HTTP_NETCLOSE(s, handle);
+		    status = HT_NO_DATA;
+		    goto clean_up;
+
+		case 206:
+		    /*
+		     * Partial Content.  We didn't send a Range so something
+		     * went wrong somewhere.  Show the status message and
+		     * restore the current document.  - FM
+		     */
+		    HTAlert(line_buffer);
+		    HTTP_NETCLOSE(s, handle);
+		    status = HT_NO_DATA;
+		    goto clean_up;
+
+		default:
+		    /*
+		     * 200 OK.
+		     * 201 Created.
+		     * 202 Accepted.
+		     * 203 Non-Authoritative Information.
+		     * > 206 is unknown.
+		     * All should return something to display.
+		     */
+#if defined(USE_SSL) && !defined(DISABLE_NEWS)
+		    if (do_connect) {
+			CTRACE((tfp,
+				"HTTP: Proxy tunnel to '%s' established.\n",
+				connect_host));
+			do_connect = FALSE;
+			url = connect_url;
+			FREE(line_buffer);
+			FREE(line_kept_clean);
+			if (!StrNCmp(connect_url, "snews", 5)) {
+			    CTRACE((tfp,
+				    "      Will attempt handshake and snews connection.\n"));
+			    status = HTNewsProxyConnect(s, url, anAnchor,
+							format_out, sink);
+			    goto done;
+			}
+			did_connect = TRUE;
+			already_retrying = TRUE;
+			eol = 0;
+			length = 0;
+			doing_redirect = FALSE;
+			permanent_redirection = FALSE;
+			target = NULL;
+			CTRACE((tfp,
+				"      Will attempt handshake and resubmit headers.\n"));
+			goto use_tunnel;
+		    }
+#endif /* USE_SSL */
+		    HTProgress(line_buffer);
+		}		/* case 2 switch */
+		break;
+
+	    case 3:
+		/*
+		 * Various forms of Redirection.  - FM
+		 * 300 Multiple Choices.
+		 * 301 Moved Permanently.
+		 * 302 Found (temporary; we can, and do, use GET).
+		 * 303 See Other (temporary; always use GET).
+		 * 304 Not Modified.
+		 * 305 Use Proxy.
+		 * 306 Set Proxy.
+		 * 307 Temporary Redirect with method retained.
+		 * > 308 is unknown.
+		 */
+		if (no_url_redirection || do_head || keep_mime_headers) {
+		    /*
+		     * If any of these flags are set, we do not redirect, but
+		     * instead show what was returned to the user as
+		     * text/plain.  - FM
+		     */
+		    HTProgress(line_buffer);
+		    break;
+		}
+
+		if (server_status == 300) {	/* Multiple Choices */
+		    /*
+		     * For client driven content negotiation.  The server
+		     * should be sending some way for the user-agent to make a
+		     * selection, so we'll show the user whatever the server
+		     * returns.  There might be a Location:  header with the
+		     * server's preference present, but the choice should be up
+		     * to the user, someday based on an Alternates:  header,
+		     * and a body always should be present with descriptions
+		     * and links for the choices (i.e., we use the latter, for
+		     * now).  - FM
+		     */
+		    HTAlert(line_buffer);
+		    if (traversal) {
+			HTTP_NETCLOSE(s, handle);
+			status = -1;
+			goto clean_up;
+		    }
+		    if (!dump_output_immediately &&
+			format_out == HTAtom_for("www/download")) {
+			/*
+			 * Convert a download request to a presentation request
+			 * for interactive users.  - FM
+			 */
+			format_out = WWW_PRESENT;
+		    }
+		    break;
+		}
+
+		if (server_status == 304) {	/* Not Modified */
+		    /*
+		     * We didn't send an "If-Modified-Since" header, so this
+		     * status is inappropriate.  We'll deal with it by showing
+		     * the full header to the user as text/plain.  - FM
+		     */
+		    HTAlert(gettext("Got unexpected 304 Not Modified status."));
+		    do_head = TRUE;
+		    break;
+		}
+
+		if (server_status == 305 ||
+		    server_status == 306 ||
+		    server_status > 307) {
+		    /*
+		     * Show user the content, if any, for 305, 306, or unknown
+		     * status.  - FM
+		     */
+		    HTAlert(line_buffer);
+		    if (traversal) {
+			HTTP_NETCLOSE(s, handle);
+			status = -1;
+			goto clean_up;
+		    }
+		    if (!dump_output_immediately &&
+			format_out == HTAtom_for("www/download")) {
+			/*
+			 * Convert a download request to a presentation request
+			 * for interactive users.  - FM
+			 */
+			format_out = WWW_PRESENT;
+		    }
+		    break;
+		}
+
+		/*
+		 * We do not load the file, but read the headers for the
+		 * "Location:", check out that redirecting_url and if it's
+		 * acceptible (e.g., not a telnet URL when we have that
+		 * disabled), initiate a new fetch.  If that's another
+		 * redirecting_url, we'll repeat the checks, and fetch
+		 * initiations if acceptible, until we reach the actual URL, or
+		 * the redirection limit set in HTAccess.c is exceeded.  If the
+		 * status was 301 indicating that the relocation is permanent,
+		 * we set the permanent_redirection flag to make it permanent
+		 * for the current anchor tree (i.e., will persist until the
+		 * tree is freed or the client exits).  If the redirection
+		 * would include POST content, we seek confirmation from an
+		 * interactive user, with option to use 303 for 301 (but not
+		 * for 307), and otherwise refuse the redirection.  We also
+		 * don't allow permanent redirection if we keep POST content.
+		 * If we don't find the Location header or it's value is
+		 * zero-length, we display whatever the server returned, and
+		 * the user should RELOAD that to try again, or make a
+		 * selection from it if it contains links, or Left-Arrow to the
+		 * previous document.  - FM
+		 */
+		{
+		    if ((dump_output_immediately || traversal) &&
+			do_post &&
+			server_status != 303 &&
+			server_status != 302 &&
+			server_status != 301) {
+			/*
+			 * Don't redirect POST content without approval from an
+			 * interactive user.  - FM
+			 */
+			HTTP_NETCLOSE(s, handle);
+			status = -1;
+			HTAlert(gettext("Redirection of POST content requires user approval."));
+			if (traversal)
+			    HTProgress(line_buffer);
+			goto clean_up;
+		    }
+
+		    HTProgress(line_buffer);
+		    if (server_status == 301) {		/* Moved Permanently */
+			if (do_post) {
+			    /*
+			     * Don't make the redirection permanent if we have
+			     * POST content.  - FM
+			     */
+			    CTRACE((tfp,
+				    "HTTP: Have POST content.  Treating 301 (Permanent) as Temporary.\n"));
+			    HTAlert(gettext("Have POST content.  Treating Permanent Redirection as Temporary.\n"));
+			} else {
+			    permanent_redirection = TRUE;
+			}
+		    }
+		    doing_redirect = TRUE;
+
+		    break;
+		}
+
+	    case 4:
+		/*
+		 * "I think I goofed!" (Client Error) - FM
+		 */
+		switch (server_status) {
+		case 401:	/* Unauthorized */
+		    /*
+		     * Authorization for origin server required.  If show_401
+		     * is set, proceed to showing the 401 body.  Otherwise, if
+		     * we can set up authorization based on the
+		     * WWW-Authenticate header, and the user provides a
+		     * username and password, try again.  Otherwise, check
+		     * whether to show the 401 body or restore the current
+		     * document - FM
+		     */
+		    if (show_401)
+			break;
+		    if (HTAA_shouldRetryWithAuth(start_of_data, (size_t)
+						 length, s, NO)) {
+
+			HTTP_NETCLOSE(s, handle);
+			if (dump_output_immediately && !authentication_info[0]) {
+			    fprintf(stderr,
+				    "HTTP: Access authorization required.\n");
+			    fprintf(stderr,
+				    "       Use the -auth=id:pw parameter.\n");
+			    status = HT_NO_DATA;
+			    goto clean_up;
+			}
+
+			CTRACE((tfp, "%s %d %s\n",
+				"HTTP: close socket", s,
+				"to retry with Access Authorization"));
+
+			_HTProgress(gettext("Retrying with access authorization information."));
+			FREE(line_buffer);
+			FREE(line_kept_clean);
+#ifdef USE_SSL
+			if (using_proxy && !StrNCmp(url, "https://", 8)) {
+			    url = arg;
+			    do_connect = TRUE;
+			    did_connect = FALSE;
+			}
+#endif /* USE_SSL */
+			goto try_again;
+		    } else if (!(traversal || dump_output_immediately) &&
+			       HTConfirm(gettext("Show the 401 message body?"))) {
+			break;
+		    } else {
+			if (traversal || dump_output_immediately)
+			    HTAlert(FAILED_RETRY_WITH_AUTH);
+			HTTP_NETCLOSE(s, handle);
+			status = -1;
+			goto clean_up;
+		    }
+
+		case 407:
+		    /*
+		     * Authorization for proxy server required.  If we are not
+		     * in fact using a proxy, or show_407 is set, proceed to
+		     * showing the 407 body.  Otherwise, if we can set up
+		     * authorization based on the Proxy-Authenticate header,
+		     * and the user provides a username and password, try
+		     * again.  Otherwise, check whether to show the 401 body or
+		     * restore the current document.  - FM & AJL
+		     */
+		    if (!using_proxy || show_407)
+			break;
+		    if (HTAA_shouldRetryWithAuth(start_of_data, (size_t)
+						 length, s, YES)) {
+
+			HTTP_NETCLOSE(s, handle);
+			if (dump_output_immediately && !proxyauth_info[0]) {
+			    fprintf(stderr,
+				    "HTTP: Proxy authorization required.\n");
+			    fprintf(stderr,
+				    "       Use the -pauth=id:pw parameter.\n");
+			    status = HT_NO_DATA;
+			    goto clean_up;
+			}
+
+			CTRACE((tfp, "%s %d %s\n",
+				"HTTP: close socket", s,
+				"to retry with Proxy Authorization"));
+
+			_HTProgress(HTTP_RETRY_WITH_PROXY);
+			FREE(line_buffer);
+			FREE(line_kept_clean);
+			goto try_again;
+		    } else if (!(traversal || dump_output_immediately) &&
+			       HTConfirm(gettext("Show the 407 message body?"))) {
+			if (!dump_output_immediately &&
+			    format_out == HTAtom_for("www/download")) {
+			    /*
+			     * Convert a download request to a presentation
+			     * request for interactive users.  - FM
+			     */
+			    format_out = WWW_PRESENT;
+			}
+			break;
+		    } else {
+			if (traversal || dump_output_immediately)
+			    HTAlert(FAILED_RETRY_WITH_PROXY);
+			HTTP_NETCLOSE(s, handle);
+			status = -1;
+			goto clean_up;
+		    }
+
+		case 408:
+		    /*
+		     * Request Timeout.  Show the status message and restore
+		     * the current document.  - FM
+		     */
+		    HTAlert(line_buffer);
+		    HTTP_NETCLOSE(s, handle);
+		    status = HT_NO_DATA;
+		    goto done;
+
+		default:
+		    /*
+		     * 400 Bad Request.
+		     * 402 Payment Required.
+		     * 403 Forbidden.
+		     * 404 Not Found.
+		     * 405 Method Not Allowed.
+		     * 406 Not Acceptable.
+		     * 409 Conflict.
+		     * 410 Gone.
+		     * 411 Length Required.
+		     * 412 Precondition Failed.
+		     * 413 Request Entity Too Large.
+		     * 414 Request-URI Too Long.
+		     * 415 Unsupported Media Type.
+		     * 416 List Response (for content negotiation).
+		     * > 416 is unknown.
+		     * Show the status message, and display the returned text
+		     * if we are not doing a traversal.  - FM
+		     */
+		    HTAlert(line_buffer);
+		    if (traversal) {
+			HTTP_NETCLOSE(s, handle);
+			status = -1;
+			goto clean_up;
+		    }
+		    if (!dump_output_immediately &&
+			format_out == HTAtom_for("www/download")) {
+			/*
+			 * Convert a download request to a presentation request
+			 * for interactive users.  - FM
+			 */
+			format_out = WWW_PRESENT;
+		    }
+		    break;
+		}		/* case 4 switch */
+		break;
+
+	    case 5:
+		/*
+		 * "I think YOU goofed!" (server error)
+		 * 500 Internal Server Error
+		 * 501 Not Implemented
+		 * 502 Bad Gateway
+		 * 503 Service Unavailable
+		 * 504 Gateway Timeout
+		 * 505 HTTP Version Not Supported
+		 * > 505 is unknown.
+		 * Should always include a message, which we always should
+		 * display.  - FM
+		 */
+		HTAlert(line_buffer);
+		if (traversal) {
+		    HTTP_NETCLOSE(s, handle);
+		    status = -1;
+		    goto clean_up;
+		}
+		if (!dump_output_immediately &&
+		    format_out == HTAtom_for("www/download")) {
+		    /*
+		     * Convert a download request to a presentation request for
+		     * interactive users.  - FM
+		     */
+		    format_out = WWW_PRESENT;
+		}
+		break;
+
+	    default:
+		/*
+		 * Bad or unknown server_status number.  Take a chance and hope
+		 * there is something to display.  - FM
+		 */
+		HTAlert(gettext("Unknown status reply from server!"));
+		HTAlert(line_buffer);
+		if (traversal) {
+		    HTTP_NETCLOSE(s, handle);
+		    status = -1;
+		    goto clean_up;
+		}
+		if (!dump_output_immediately &&
+		    format_out == HTAtom_for("www/download")) {
+		    /*
+		     * Convert a download request to a presentation request for
+		     * interactive users.  - FM
+		     */
+		    format_out = WWW_PRESENT;
+		}
+		break;
+	    }			/* Switch on server_status/100 */
+
+	}			/* Full HTTP reply */
+    }				/* scope of fields */
+
+    /*
+     * The user may have pressed the 'z'ap key during the pause caused by one
+     * of the HTAlerts above if the server reported an error, to skip loading
+     * of the error response page.  Checking here before setting up the stream
+     * stack and feeding it data avoids doing unnecessary work, it also can
+     * avoid unnecessarily pushing a loaded document out of the cache to make
+     * room for the unwanted error page.  - kw
+     */
+    if (HTCheckForInterrupt()) {
+	HTTP_NETCLOSE(s, handle);
+	if (doing_redirect) {
+	    /*
+	     * Impatient user.  - FM
+	     */
+	    CTRACE((tfp, "HTTP: Interrupted followup read.\n"));
+	    _HTProgress(CONNECTION_INTERRUPTED);
+	}
+	status = HT_INTERRUPTED;
+	goto clean_up;
+    }
+    /*
+     * Set up the stream stack to handle the body of the message.
+     */
+    if (do_head || keep_mime_headers) {
+	/*
+	 * It was a HEAD request, or we want the headers and source.
+	 */
+	start_of_data = line_kept_clean;
+#ifdef SH_EX			/* FIX BUG by kaz@maczuka.hitachi.ibaraki.jp */
+/* GIF file contains \0, so strlen does not return the data length */
+	length = real_length_of_line;
+#else
+	length = rawlength;
+#endif
+	format_in = HTAtom_for("text/plain");
+
+    } else if (doing_redirect) {
+
+	format_in = HTAtom_for("message/x-http-redirection");
+	StrAllocCopy(anAnchor->content_type, HTAtom_name(format_in));
+	if (traversal) {
+	    format_out = WWW_DEBUG;
+	    if (!sink)
+		sink = HTErrorStream();
+	} else if (!dump_output_immediately &&
+		   format_out == HTAtom_for("www/download")) {
+	    /*
+	     * Convert a download request to a presentation request for
+	     * interactive users.  - FM
+	     */
+	    format_out = WWW_PRESENT;
+	}
+    }
+
+    target = HTStreamStack(format_in,
+			   format_out,
+			   sink, anAnchor);
+
+    if (target == NULL) {
+	char *buffer = NULL;
+
+	HTTP_NETCLOSE(s, handle);
+	HTSprintf0(&buffer, CANNOT_CONVERT_I_TO_O,
+		   HTAtom_name(format_in), HTAtom_name(format_out));
+	_HTProgress(buffer);
+	FREE(buffer);
+	status = -1;
+	goto clean_up;
+    }
+
+    /*
+     * Recycle the first chunk of data, in all cases.
+     */
+    (*target->isa->put_block) (target, start_of_data, length);
+
+    /*
+     * Go pull the bulk of the data down.
+     */
+    rv = HTCopy(anAnchor, s, (void *) handle, target);
+
+    /*
+     * If we get here with doing_redirect set, it means that we were looking
+     * for a Location header.  We either have got it now in redirecting_url -
+     * in that case the stream should not have loaded any data.  Or we didn't
+     * get it, in that case the stream may have presented the message body
+     * normally.  - kw
+     */
+
+    if (rv == -1) {
+	/*
+	 * Intentional interrupt before data were received, not an error
+	 */
+	if (doing_redirect && traversal)
+	    status = -1;
+	else
+	    status = HT_INTERRUPTED;
+	HTTP_NETCLOSE(s, handle);
+	goto clean_up;
+    }
+
+    if (rv == -2) {
+	/*
+	 * Aw hell, a REAL error, maybe cuz it's a dumb HTTP0 server
+	 */
+	(*target->isa->_abort) (target, NULL);
+	if (doing_redirect && redirecting_url) {
+	    /*
+	     * Got a location before the error occurred?  Then consider it an
+	     * interrupt but proceed below as normal.  - kw
+	     */
+	    /* do nothing here */
+	} else {
+	    HTTP_NETCLOSE(s, handle);
+	    if (!doing_redirect && !already_retrying && !do_post) {
+		CTRACE((tfp, "HTTP: Trying again with HTTP0 request.\n"));
+		/*
+		 * May as well consider it an interrupt -- right?
+		 */
+		FREE(line_buffer);
+		FREE(line_kept_clean);
+		extensions = NO;
+		already_retrying = TRUE;
+		_HTProgress(RETRYING_AS_HTTP0);
+		goto try_again;
+	    } else {
+		status = HT_NOT_LOADED;
+		goto clean_up;
+	    }
+	}
+    }
+
+    /*
+     * Free if complete transmission (socket was closed before return).  Close
+     * socket if partial transmission (was freed on abort).
+     */
+    if (rv != HT_INTERRUPTED && rv != -2) {
+	(*target->isa->_free) (target);
+    } else {
+	HTTP_NETCLOSE(s, handle);
+    }
+
+    if (doing_redirect) {
+	if (redirecting_url) {
+	    /*
+	     * Set up for checking redirecting_url in LYGetFile.c for
+	     * restrictions before we seek the document at that Location.  - FM
+	     */
+	    CTRACE((tfp, "HTTP: Picked up location '%s'\n",
+		    redirecting_url));
+	    if (rv == HT_INTERRUPTED) {
+		/*
+		 * Intentional interrupt after data were received, not an error
+		 * (probably).  We take it as a user request to abandon the
+		 * redirection chain.
+		 *
+		 * This could reasonably be changed (by just removing this
+		 * block), it would make sense if there are redirecting
+		 * resources that "hang" after sending the headers.  - kw
+		 */
+		FREE(redirecting_url);
+		CTRACE((tfp, "HTTP: Interrupted followup read.\n"));
+		status = HT_INTERRUPTED;
+		goto clean_up;
+	    }
+	    HTProgress(line_buffer);
+	    if (server_status == 305) {		/* Use Proxy */
+		/*
+		 * Make sure the proxy field ends with a slash.  - FM
+		 */
+		if (redirecting_url[strlen(redirecting_url) - 1]
+		    != '/')
+		    StrAllocCat(redirecting_url, "/");
+		/*
+		 * Append our URL.  - FM
+		 */
+		StrAllocCat(redirecting_url, anAnchor->address);
+		CTRACE((tfp, "HTTP: Proxy URL is '%s'\n",
+			redirecting_url));
+	    }
+	    if (!do_post ||
+		server_status == 303 ||
+		server_status == 302) {
+		/*
+		 * We don't have POST content (nor support PUT or DELETE), or
+		 * the status is "See Other" or "General Redirection" and we
+		 * can convert to GET, so go back and check out the new URL.  -
+		 * FM
+		 */
+		status = HT_REDIRECTING;
+		goto clean_up;
+	    }
+	    /*
+	     * Make sure the user wants to redirect the POST content, or treat
+	     * as GET - FM & DK
+	     */
+	    switch (HTConfirmPostRedirect(redirecting_url,
+					  server_status)) {
+		/*
+		 * User failed to confirm.  Abort the fetch.
+		 */
+	    case 0:
+		FREE(redirecting_url);
+		status = HT_NO_DATA;
+		goto clean_up;
+
+		/*
+		 * User wants to treat as GET with no content.  Go back to
+		 * check out the URL.
+		 */
+	    case 303:
+		break;
+
+		/*
+		 * Set the flag to retain the POST content and go back to check
+		 * out the URL.  - FM
+		 */
+	    default:
+		redirect_post_content = TRUE;
+	    }
+
+	    /* Lou's old comment:  - FM */
+	    /* OK, now we've got the redirection URL temporarily stored
+	       in external variable redirecting_url, exported from HTMIME.c,
+	       since there's no straightforward way to do this in the library
+	       currently.  Do the right thing. */
+
+	    status = HT_REDIRECTING;
+
+	} else {
+	    status = traversal ? -1 : HT_LOADED;
+	}
+
+    } else {
+	/*
+	 * If any data were received, treat as a complete transmission
+	 */
+	status = HT_LOADED;
+    }
+
+    /*
+     * Clean up
+     */
+  clean_up:
+    FREE(line_buffer);
+    FREE(line_kept_clean);
+
+  done:
+    /*
+     * Clear out on exit, just in case.
+     */
+    reloading = FALSE;
+#ifdef USE_SSL
+    FREE(connect_host);
+    if (handle) {
+	SSL_free(handle);
+	SSL_handle = handle = NULL;
+    }
+#endif /* USE_SSL */
+    dump_server_status = server_status;
+    return status;
+}
+
+/*	Protocol descriptor
+*/
+#ifdef GLOBALDEF_IS_MACRO
+#define _HTTP_C_GLOBALDEF_1_INIT { "http", HTLoadHTTP, 0}
+GLOBALDEF(HTProtocol, HTTP, _HTTP_C_GLOBALDEF_1_INIT);
+#define _HTTP_C_GLOBALDEF_2_INIT { "https", HTLoadHTTP, 0}
+GLOBALDEF(HTProtocol, HTTPS, _HTTP_C_GLOBALDEF_2_INIT);
+#else
+GLOBALDEF HTProtocol HTTP =
+{"http", HTLoadHTTP, 0};
+GLOBALDEF HTProtocol HTTPS =
+{"https", HTLoadHTTP, 0};
+#endif /* GLOBALDEF_IS_MACRO */
diff --git a/WWW/Library/Implementation/HTTP.h b/WWW/Library/Implementation/HTTP.h
new file mode 100644
index 00000000..f10c2fce
--- /dev/null
+++ b/WWW/Library/Implementation/HTTP.h
@@ -0,0 +1,41 @@
+/*
+ * $LynxId: HTTP.h,v 1.10 2009/04/07 22:44:50 tom Exp $
+ *
+ * /Net/dxcern/userd/timbl/hypertext/WWW/Library/Implementation/HTTP.html
+ *                                HYPERTEXT TRANFER PROTOCOL
+ */
+#ifndef HTTP_H
+#define HTTP_H
+
+#include <HTAccess.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#ifdef GLOBALREF_IS_MACRO
+    extern GLOBALREF (HTProtocol, HTTP);
+    extern GLOBALREF (HTProtocol, HTTPS);
+
+#else
+    GLOBALREF HTProtocol HTTP;
+    GLOBALREF HTProtocol HTTPS;
+#endif				/* GLOBALREF_IS_MACRO */
+
+#define URL_GET_METHOD  1
+#define URL_POST_METHOD 2
+#define URL_MAIL_METHOD 3
+
+    extern int ws_read_per_sec;
+    extern BOOLEAN reloading;
+    extern char *redirecting_url;
+    extern BOOL permanent_redirection;
+    extern BOOL redirect_post_content;
+
+#ifdef USE_SSL
+    extern SSL *SSL_handle;
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTTP_H */
diff --git a/WWW/Library/Implementation/HTTelnet.c b/WWW/Library/Implementation/HTTelnet.c
new file mode 100644
index 00000000..f525d5c7
--- /dev/null
+++ b/WWW/Library/Implementation/HTTelnet.c
@@ -0,0 +1,553 @@
+/*
+ * $LynxId: HTTelnet.c,v 1.39 2009/11/21 17:05:33 Bela.Lubkin Exp $
+ *
+ *		Telnet Access, Rlogin, etc			HTTelnet.c
+ *		==========================
+ *
+ * Authors
+ *	TBL	Tim Berners-Lee timbl@info.cern.ch
+ *	JFG	Jean-Francois Groff jgh@next.com
+ *	DD	Denis DeLaRoca (310) 825-4580  <CSP1DWD@mvs.oac.ucla.edu>
+ * History
+ *	 8 Jun 92 Telnet hopping prohibited as telnet is not secure (TBL)
+ *	26 Jun 92 When over DECnet, suppressed FTP, Gopher and News. (JFG)
+ *	 6 Oct 92 Moved HTClientHost and logfile into here. (TBL)
+ *	17 Dec 92 Tn3270 added, bug fix. (DD)
+ *	 2 Feb 93 Split from HTAccess.c.  Registration.(TBL)
+ */
+
+#include <HTUtils.h>
+#include <LYUtils.h>
+
+/* Implements:
+*/
+#include <HTTelnet.h>
+
+#include <HTParse.h>
+#include <HTAnchor.h>
+#include <HTTP.h>
+#include <HTFile.h>
+
+#include <HTTCP.h>
+#include <HText.h>
+
+#include <HTAccess.h>
+#include <HTAlert.h>
+
+#include <LYStrings.h>
+#include <LYClean.h>
+#include <LYLeaks.h>
+
+#ifdef __GNUC__
+static void do_system(char *) GCC_UNUSED;
+#endif
+
+static void do_system(char *command)
+{
+    if (non_empty(command)) {
+	CTRACE((tfp, "HTTelnet: Command is: %s\n\n", command));
+	LYSystem(command);
+    }
+    FREE(command);
+}
+
+/*	Telnet or "rlogin" access
+ *	-------------------------
+ */
+static int remote_session(char *acc_method, char *host)
+{
+    const char *program;
+    char *user = host;
+    char *password = NULL;
+    char *cp;
+    char *hostname;
+    char *port;
+    char *command = NULL;
+    enum _login_protocol {
+	telnet,
+	rlogin,
+	tn3270
+    } login_protocol =
+      strcmp(acc_method, "rlogin") == 0 ? rlogin :
+      strcmp(acc_method, "tn3270") == 0 ? tn3270 : telnet;
+
+    /*
+     * Modified to allow for odd chars in a username only if exists.
+     * 05-28-94 Lynx 2-3-1 Garrett Arch Blythe
+     */
+    /* prevent telnet://hostname;rm -rf *  URL's (VERY BAD)
+     *  *cp=0;        // terminate at any ;,<,>,`,|,",' or space or return
+     * or tab to prevent security hole
+     */
+    for (cp = (strchr(host, '@') ? strchr(host, '@') : host); *cp != '\0';
+	 cp++) {
+	if (!isalnum(UCH(*cp)) && *cp != '_' && *cp != '-' &&
+	    *cp != ':' && *cp != '.' && *cp != '@') {
+	    *cp = '\0';
+	    break;
+	}
+    }
+
+    hostname = strchr(host, '@');
+
+    if (hostname) {
+	*hostname++ = '\0';	/* Split */
+    } else {
+	hostname = host;
+	user = NULL;		/* No user specified */
+    }
+
+    port = strchr(hostname, ':');
+    if (port)
+	*port++ = '\0';		/* Split */
+
+    if (!hostname || *hostname == '\0') {
+	CTRACE((tfp, "HTTelnet: No host specified!\n"));
+	return HT_NO_DATA;
+    } else if (!valid_hostname(hostname)) {
+	char *prefix = NULL;
+	char *line = NULL;
+
+	CTRACE((tfp, "HTTelnet: Invalid hostname %s!\n", host));
+	HTSprintf0(&prefix,
+		   gettext("remote %s session:"), acc_method);
+	HTSprintf0(&line,
+		   gettext("Invalid hostname %s"), host);
+	HTAlwaysAlert(prefix, line);
+	FREE(prefix);
+	FREE(line);
+	return HT_NO_DATA;
+    }
+
+    if (user) {
+	password = strchr(user, ':');
+	if (password) {
+	    *password++ = '\0';
+	}
+    }
+
+    /* If the person is already telnetting etc, forbid hopping */
+    /* This is a security precaution, for us and remote site */
+
+    if (HTSecure) {
+
+#ifdef TELNETHOPPER_MAIL
+	HTSprintf0(&command,
+		   "finger @%s | mail -s \"**telnethopper %s\" tbl@dxcern.cern.ch",
+		   HTClientHost, HTClientHost);
+	do_system(command);
+#endif
+	printf("\n\nSorry, but the service you have selected is one\n");
+	printf("to which you have to log in.  If you were running www\n");
+	printf("on your own computer, you would be automatically connected.\n");
+	printf("For security reasons, this is not allowed when\n");
+	printf("you log in to this information service remotely.\n\n");
+
+	printf("You can manually connect to this service using %s\n",
+	       acc_method);
+	printf("to host %s", hostname);
+	if (user)
+	    printf(", user name %s", user);
+	if (password)
+	    printf(", password %s", password);
+	if (port)
+	    printf(", port %s", port);
+	printf(".\n\n");
+	return HT_NO_DATA;
+    }
+
+    /* Not all telnet servers get it even if user name is specified so we
+     * always tell the guy what to log in as.
+     */
+    if (user && login_protocol != rlogin)
+	printf("When you are connected, log in as:  %s\n", user);
+    if (password && login_protocol != rlogin)
+	printf("                  The password is:  %s\n", password);
+    fflush(stdout);
+
+/*
+ *	NeXTSTEP is the implied version of the NeXT operating system.
+ *		You may need to define this yourself.
+ */
+#if	!defined(TELNET_DONE) && (defined(NeXT) && defined(NeXTSTEP) && NeXTSTEP<=20100)
+#define FMT_TELNET "%s%s%s %s %s"
+
+    if ((program = HTGetProgramPath(ppTELNET)) != NULL) {
+	HTAddParam(&command, FMT_TELNET, 1, program);
+	HTOptParam(&command, FMT_TELNET, 2, user ? " -l " : "");
+	HTAddParam(&command, FMT_TELNET, 3, user);
+	HTAddParam(&command, FMT_TELNET, 4, hostname);
+	HTAddParam(&command, FMT_TELNET, 5, port);
+	HTEndParam(&command, FMT_TELNET, 5);
+    }
+    do_system(command);
+#define TELNET_DONE
+#endif
+
+/* Most unix machines support username only with rlogin */
+#if !defined(TELNET_DONE) && (defined(UNIX) || defined(DOSPATH) || defined(__CYGWIN__))
+
+#define FMT_RLOGIN "%s %s%s%s"
+#define FMT_TN3270 "%s %s %s"
+#define FMT_TELNET "%s %s %s"
+
+    switch (login_protocol) {
+    case rlogin:
+	if ((program = HTGetProgramPath(ppRLOGIN)) != NULL) {
+	    HTAddParam(&command, FMT_RLOGIN, 1, program);
+	    HTAddParam(&command, FMT_RLOGIN, 2, hostname);
+	    HTOptParam(&command, FMT_RLOGIN, 3, user ? " -l " : "");
+	    HTAddParam(&command, FMT_RLOGIN, 4, user);
+	    HTEndParam(&command, FMT_RLOGIN, 4);
+	}
+	break;
+
+    case tn3270:
+	if ((program = HTGetProgramPath(ppTN3270)) != NULL) {
+	    HTAddParam(&command, FMT_TN3270, 1, program);
+	    HTAddParam(&command, FMT_TN3270, 2, hostname);
+	    HTAddParam(&command, FMT_TN3270, 3, port);
+	    HTEndParam(&command, FMT_TN3270, 3);
+	}
+	break;
+
+    case telnet:
+	if ((program = HTGetProgramPath(ppTELNET)) != NULL) {
+	    HTAddParam(&command, FMT_TELNET, 1, program);
+	    HTAddParam(&command, FMT_TELNET, 2, hostname);
+	    HTAddParam(&command, FMT_TELNET, 3, port);
+	    HTEndParam(&command, FMT_TELNET, 3);
+	}
+	break;
+    }
+
+    LYSystem(command);
+#define TELNET_DONE
+#endif /* unix */
+
+/* VMS varieties */
+#if !defined(TELNET_DONE) && (defined(MULTINET))
+    if (login_protocol == rlogin) {
+	HTSprintf0(&command, "RLOGIN%s%s%s%s%s %s",	/*lm 930713 */
+		   user ? "/USERNAME=\"" : "",
+		   NonNull(user),
+		   user ? "\"" : "",
+		   port ? "/PORT=" : "",
+		   NonNull(port),
+		   hostname);
+
+    } else if (login_protocol == tn3270) {
+	HTSprintf0(&command, "TELNET/TN3270 %s%s %s",
+		   port ? "/PORT=" : "",
+		   NonNull(port),
+		   hostname);
+
+    } else {			/* TELNET */
+	HTSprintf0(&command, "TELNET %s%s %s",
+		   port ? "/PORT=" : "",
+		   NonNull(port),
+		   hostname);
+    }
+
+    do_system(command);
+#define TELNET_DONE
+#endif /* MULTINET */
+
+#if !defined(TELNET_DONE) && defined(WIN_TCP)
+    if ((cp = getenv("WINTCP_COMMAND_STYLE")) != NULL &&
+	0 == strncasecomp(cp, "VMS", 3)) {	/* VMS command syntax */
+	if (login_protocol == rlogin) {
+	    HTSprintf0(&command, "RLOGIN%s%s%s%s%s %s",		/*lm 930713 */
+		       user ? "/USERNAME=\"" : "",
+		       NonNull(user),
+		       user ? "\"" : "",
+		       port ? "/PORT=" : "",
+		       NonNull(port),
+		       hostname);
+
+	} else if (login_protocol == tn3270) {
+	    HTSprintf0(&command, "TELNET/TN3270 %s%s %s",
+		       port ? "/PORT=" : "",
+		       NonNull(port),
+		       hostname);
+
+	} else {		/* TELNET */
+	    HTSprintf0(&command, "TELNET %s%s %s",
+		       port ? "/PORT=" : "",
+		       NonNull(port),
+		       hostname);
+	}
+
+    } else {			/* UNIX command syntax */
+	if (login_protocol == rlogin) {
+	    HTSprintf0(&command, "RLOGIN %s%s%s%s%s",
+		       hostname,
+		       user ? " -l " : "",
+		       user ? "\"" : "",
+		       NonNull(user),
+		       user ? "\"" : "");
+
+	} else if (login_protocol == tn3270) {
+	    HTSprintf0(&command, "TN3270 %s %s",
+		       hostname,
+		       NonNull(port));
+
+	} else {		/* TELNET */
+	    HTSprintf0(&command, "TELNET %s %s",
+		       hostname,
+		       NonNull(port));
+	}
+    }
+
+    do_system(command);
+#define TELNET_DONE
+#endif /* WIN_TCP */
+
+#if !defined(TELNET_DONE) && defined(UCX)
+    if (login_protocol == rlogin) {
+	HTSprintf0(&command, "RLOGIN%s%s%s %s %s",
+		   user ? "/USERNAME=\"" : "",
+		   NonNull(user),
+		   user ? "\"" : "",
+		   hostname,
+		   NonNull(port));
+
+    } else if (login_protocol == tn3270) {
+	HTSprintf0(&command, "TN3270 %s %s",
+		   hostname,
+		   NonNull(port));
+
+    } else {			/* TELNET */
+	HTSprintf0(&command, "TELNET %s %s",
+		   hostname,
+		   NonNull(port));
+    }
+
+    do_system(command);
+#define TELNET_DONE
+#endif /* UCX */
+
+#if !defined(TELNET_DONE) && defined(CMU_TCP)
+    if (login_protocol == telnet) {
+	HTSprintf0(&command, "TELNET %s%s %s",
+		   port ? "/PORT=" : "",
+		   NonNull(port),
+		   hostname);
+	do_system(command);
+    } else {
+	printf("\nSorry, this browser was compiled without the %s access option.\n",
+	       acc_method);
+	printf("\nPress <return> to return to Lynx.");
+	LYgetch();
+	HadVMSInterrupt = FALSE;
+    }
+#define TELNET_DONE
+#endif /* CMU_TCP */
+
+#if !defined(TELNET_DONE) && defined(SOCKETSHR_TCP)
+    if (getenv("MULTINET_SOCKET_LIBRARY") != NULL) {
+	if (login_protocol == rlogin) {
+	    HTSprintf0(&command, "MULTINET RLOGIN%s%s%s%s %s",	/*lm 930713 */
+		       user ? "/USERNAME=" : "",
+		       NonNull(user),
+		       port ? "/PORT=" : "",
+		       NonNull(port),
+		       hostname);
+
+	} else if (login_protocol == tn3270) {
+	    HTSprintf0(&command, "MULTINET TELNET/TN3270 %s%s %s",
+		       port ? "/PORT=" : "",
+		       NonNull(port),
+		       hostname);
+
+	} else {		/* TELNET */
+	    HTSprintf0(&command, "MULTINET TELNET %s%s %s",
+		       port ? "/PORT=" : "",
+		       NonNull(port),
+		       hostname);
+	}
+
+	do_system(command);
+	return HT_NO_DATA;	/* Ok - it was done but no data */
+    } else if ((cp = getenv("WINTCP_COMMAND_STYLE")) != NULL) {
+	if (0 == strncasecomp(cp, "VMS", 3)) {	/* VMS command syntax */
+	    if (login_protocol == rlogin) {
+		HTSprintf0(&command, "RLOGIN%s%s%s%s %s",	/*lm 930713 */
+			   user ? "/USERNAME=" : "",
+			   NonNull(user),
+			   port ? "/PORT=" : "",
+			   NonNull(port),
+			   hostname);
+	    } else if (login_protocol == tn3270) {
+		HTSprintf0(&command, "TELNET/TN3270 %s%s %s",
+			   port ? "/PORT=" : "",
+			   NonNull(port),
+			   hostname);
+	    } else {		/* TELNET */
+		HTSprintf0(&command, "TELNET %s%s %s",
+			   port ? "/PORT=" : "",
+			   NonNull(port),
+			   hostname);
+	    }
+	} else {		/* UNIX command syntax */
+	    if (login_protocol == rlogin) {
+		HTSprintf0(&command, "RLOGIN %s%s%s",
+			   hostname,
+			   user ? " -l " : "",
+			   NonNull(user));
+	    } else if (login_protocol == tn3270) {
+		HTSprintf0(&command, "TN3270 %s %s",
+			   hostname,
+			   NonNull(port));
+	    } else {		/* TELNET */
+		HTSprintf0(&command, "TELNET %s %s",
+			   hostname,
+			   NonNull(port));
+	    }
+	}
+
+	do_system(command);
+	return HT_NO_DATA;	/* Ok - it was done but no data */
+    } else if (getenv("UCX$DEVICE") != NULL
+	       || getenv("TCPIP$DEVICE") != NULL) {
+	if (login_protocol == rlogin) {
+	    HTSprintf0(&command, "RLOGIN%s%s %s %s",
+		       user ? "/USERNAME=" : "",
+		       NonNull(user),
+		       hostname,
+		       NonNull(port));
+
+	} else if (login_protocol == tn3270) {
+	    HTSprintf0(&command, "TN3270 %s %s",
+		       hostname,
+		       NonNull(port));
+
+	} else {		/* TELNET */
+	    HTSprintf0(&command, "TELNET %s %s",
+		       hostname,
+		       NonNull(port));
+	}
+
+	do_system(command);
+	return HT_NO_DATA;	/* Ok - it was done but no data */
+    } else if (getenv("CMUTEK_ROOT") != NULL) {
+	if (login_protocol == telnet) {
+	    HTSprintf0(&command, "TELNET %s%s %s",
+		       port ? "/PORT=" : "",
+		       NonNull(port),
+		       hostname);
+	    do_system(command);
+	} else {
+	    printf("\nSorry, this browser was compiled without the %s access option.\n",
+		   acc_method);
+	    printf("\nPress <return> to return to Lynx.");
+	    LYgetch();
+	    HadVMSInterrupt = FALSE;
+	}
+    } else {
+	if (login_protocol == telnet) {
+	    HTSprintf0(&command, "TELNET %s%s %s",
+		       port ? "/PORT=" : "",
+		       NonNull(port),
+		       hostname);
+	    do_system(command);
+	} else {
+	    printf("\nSorry, this browser was compiled without the %s access option.\n",
+		   acc_method);
+	    printf("\nPress <return> to return to Lynx.");
+	    LYgetch();
+	    HadVMSInterrupt = FALSE;
+	}
+    }
+#define TELNET_DONE
+#endif /* SOCKETSHR_TCP */
+
+#if !defined(TELNET_DONE) && (defined(SIMPLE_TELNET) || defined(VM))
+    if (login_protocol == telnet) {	/* telnet only */
+	HTSprintf0(&command, "TELNET  %s",	/* @@ Bug: port ignored */
+		   hostname);
+	do_system(command);
+	return HT_NO_DATA;	/* Ok - it was done but no data */
+    }
+#define TELNET_DONE
+#endif
+
+#ifndef TELNET_DONE
+    printf("\nSorry, this browser was compiled without the %s access option.\n",
+	   acc_method);
+    printf("\nTo access the information you must %s to %s", acc_method, hostname);
+    if (port)
+	printf(" (port %s)", port);
+    if (user)
+	printf("\nlogging in with username %s", user);
+    printf(".\n");
+    {
+	printf("\nPress <return> to return to Lynx.");
+	fflush(stdout);
+	LYgetch();
+#ifdef VMS
+	HadVMSInterrupt = FALSE;
+#endif /* VMS */
+    }
+#endif /* !TELNET_DONE */
+    return HT_NO_DATA;
+}
+
+/*	"Load a document" -- establishes a session
+ *	------------------------------------------
+ *
+ * On entry,
+ *	addr		must point to the fully qualified hypertext reference.
+ *
+ * On exit,
+ *	returns		<0	Error has occurred.
+ *			>=0	Value of file descriptor or socket to be used
+ *				 to read data.
+ *	*pFormat	Set to the format of the file, if known.
+ *			(See WWW.h)
+ *
+ */
+static int HTLoadTelnet(const char *addr,
+			HTParentAnchor *anchor GCC_UNUSED,
+			HTFormat format_out GCC_UNUSED,
+			HTStream *sink)		/* Ignored */
+{
+    char *acc_method;
+    char *host;
+    int status;
+
+    if (sink) {
+	CTRACE((tfp,
+		"HTTelnet: Can't output a live session -- must be interactive!\n"));
+	return HT_NO_DATA;
+    }
+    acc_method = HTParse(addr, STR_FILE_URL, PARSE_ACCESS);
+
+    host = HTParse(addr, "", PARSE_HOST);
+    if (!host || *host == '\0') {
+	status = HT_NO_DATA;
+	CTRACE((tfp, "HTTelnet: No host specified!\n"));
+    } else {
+	status = remote_session(acc_method, host);
+    }
+
+    FREE(host);
+    FREE(acc_method);
+    return status;
+}
+
+#ifdef GLOBALDEF_IS_MACRO
+#define _HTTELNET_C_1_INIT { "telnet", HTLoadTelnet, NULL }
+#define _HTTELNET_C_2_INIT { "rlogin", HTLoadTelnet, NULL }
+#define _HTTELNET_C_3_INIT { "tn3270", HTLoadTelnet, NULL }
+GLOBALDEF(HTProtocol, HTTelnet, _HTTELNET_C_1_INIT);
+GLOBALDEF(HTProtocol, HTRlogin, _HTTELNET_C_2_INIT);
+GLOBALDEF(HTProtocol, HTTn3270, _HTTELNET_C_3_INIT);
+#else
+GLOBALDEF HTProtocol HTTelnet =
+{"telnet", HTLoadTelnet, NULL};
+GLOBALDEF HTProtocol HTRlogin =
+{"rlogin", HTLoadTelnet, NULL};
+GLOBALDEF HTProtocol HTTn3270 =
+{"tn3270", HTLoadTelnet, NULL};
+#endif /* GLOBALDEF_IS_MACRO */
diff --git a/WWW/Library/Implementation/HTTelnet.h b/WWW/Library/Implementation/HTTelnet.h
new file mode 100644
index 00000000..f2208d88
--- /dev/null
+++ b/WWW/Library/Implementation/HTTelnet.h
@@ -0,0 +1,28 @@
+/*                 /Net/dxcern/userd/timbl/hypertext/WWW/Library/Implementation/HTTelnet.html
+                            TELNET AND SIMILAR ACCESS METHODS
+                                             
+ */
+
+#ifndef HTTELNET_H
+#define HTTELNET_H
+
+#include <HTAccess.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#ifdef GLOBALREF_IS_MACRO
+    extern GLOBALREF (HTProtocol, HTTelnet);
+    extern GLOBALREF (HTProtocol, HTRlogin);
+    extern GLOBALREF (HTProtocol, HTTn3270);
+
+#else
+    GLOBALREF HTProtocol HTTelnet;
+    GLOBALREF HTProtocol HTRlogin;
+    GLOBALREF HTProtocol HTTn3270;
+#endif				/* GLOBALREF_IS_MACRO */
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTTELNET_H */
diff --git a/WWW/Library/Implementation/HTUU.c b/WWW/Library/Implementation/HTUU.c
new file mode 100644
index 00000000..4848cce5
--- /dev/null
+++ b/WWW/Library/Implementation/HTUU.c
@@ -0,0 +1,210 @@
+/*
+ * $LynxId: HTUU.c,v 1.11 2010/09/21 23:55:12 tom Exp $
+ *
+ * MODULE							HTUU.c
+ *			UUENCODE AND UUDECODE
+ *
+ * ACKNOWLEDGEMENT:
+ *	This code is taken from rpem distribution, and was originally
+ *	written by Mark Riordan.
+ *
+ * AUTHORS:
+ *	MR	Mark Riordan	riordanmr@clvax1.cl.msu.edu
+ *	AL	Ari Luotonen	luotonen@dxcern.cern.ch
+ *
+ * HISTORY:
+ *	Added as part of the WWW library and edited to conform
+ *	with the WWW project coding standards by:	AL  5 Aug 1993
+ *	Originally written by:				MR 12 Aug 1990
+ *	Original header text:
+ * -------------------------------------------------------------
+ *  File containing routines to convert a buffer
+ *  of bytes to/from RFC 1113 printable encoding format.
+ *
+ *  This technique is similar to the familiar Unix uuencode
+ *  format in that it maps 6 binary bits to one ASCII
+ *  character (or more aptly, 3 binary bytes to 4 ASCII
+ *  characters).  However, RFC 1113 does not use the same
+ *  mapping to printable characters as uuencode.
+ *
+ *  Mark Riordan   12 August 1990 and 17 Feb 1991.
+ *  This code is hereby placed in the public domain.
+ * -------------------------------------------------------------
+ */
+
+#include <HTUtils.h>
+#include <HTUU.h>
+
+#include <LYLeaks.h>
+
+static char six2pr[64] =
+{
+    'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',
+    'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
+    'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
+    'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
+    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'
+};
+
+static unsigned char pr2six[256];
+
+/*--- function HTUU_encode -----------------------------------------------
+ *
+ * Encode a single line of binary data to a standard format that
+ * uses only printing ASCII characters (but takes up 33% more bytes).
+ *
+ *    Entry    bufin    points to a buffer of bytes.  If nbytes is not
+ *                      a multiple of three, then the byte just beyond
+ *                      the last byte in the buffer must be 0.
+ *             nbytes   is the number of bytes in that buffer.
+ *                      This cannot be more than 48.
+ *             bufcoded points to an output buffer.  Be sure that this
+ *                      can hold at least 1 + (4*nbytes)/3 characters.
+ *
+ *    Exit     bufcoded contains the coded line.  The first 4*nbytes/3 bytes
+ *                      contain printing ASCII characters representing
+ *                      those binary bytes.  This may include one or
+ *                      two '=' characters used as padding at the end.
+ *                      The last byte is a zero byte.
+ *             Returns the number of ASCII characters in "bufcoded".
+ */
+int HTUU_encode(unsigned char *bufin,
+		size_t nbytes,
+		char *bufcoded)
+{
+/* ENC is the basic 1 character encoding function to make a char printing */
+#define ENC(c) six2pr[c]
+
+    register char *outptr = bufcoded;
+    size_t i;
+
+    /* This doesn't seem to be needed (AL):   register unsigned char *inptr  = bufin; */
+
+    for (i = 0; i < nbytes; i += 3) {
+	*(outptr++) = ENC(*bufin >> 2);		/* c1 */
+	*(outptr++) = ENC(((*bufin << 4) & 060) | ((bufin[1] >> 4) & 017));	/*c2 */
+	*(outptr++) = ENC(((bufin[1] << 2) & 074) | ((bufin[2] >> 6) & 03));	/*c3 */
+	*(outptr++) = ENC(bufin[2] & 077);	/* c4 */
+
+	bufin += 3;
+    }
+
+    /* If nbytes was not a multiple of 3, then we have encoded too
+     * many characters.  Adjust appropriately.
+     */
+    if (i == nbytes + 1) {
+	/* There were only 2 bytes in that last group */
+	outptr[-1] = '=';
+    } else if (i == nbytes + 2) {
+	/* There was only 1 byte in that last group */
+	outptr[-1] = '=';
+	outptr[-2] = '=';
+    }
+    *outptr = '\0';
+    return (int) (outptr - bufcoded);
+}
+
+/*--- function HTUU_decode ------------------------------------------------
+ *
+ * Decode an ASCII-encoded buffer back to its original binary form.
+ *
+ *    Entry    bufcoded    points to a uuencoded string.  It is
+ *                         terminated by any character not in
+ *                         the printable character table six2pr, but
+ *                         leading whitespace is stripped.
+ *             bufplain    points to the output buffer; must be big
+ *                         enough to hold the decoded string (generally
+ *                         shorter than the encoded string) plus
+ *                         as many as two extra bytes used during
+ *                         the decoding process.
+ *             outbufsize  is the maximum number of bytes that
+ *                         can fit in bufplain.
+ *
+ *    Exit     Returns the number of binary bytes decoded.
+ *             bufplain    contains these bytes.
+ */
+int HTUU_decode(char *bufcoded,
+		unsigned char *bufplain,
+		int outbufsize)
+{
+/* single character decode */
+#define DEC(c) pr2six[(int)c]
+#define MAXVAL 63
+
+    static int first = 1;
+
+    int nbytesdecoded, j;
+    register char *bufin;
+    register unsigned char *bufout = bufplain;
+    register int nprbytes;
+
+    /* If this is the first call, initialize the mapping table.
+     * This code should work even on non-ASCII machines.
+     */
+    if (first) {
+	first = 0;
+	for (j = 0; j < 256; j++)
+	    pr2six[j] = MAXVAL + 1;
+
+	for (j = 0; j < 64; j++)
+	    pr2six[UCH(six2pr[j])] = UCH(j);
+#if 0
+      /* *INDENT-OFF* */
+      pr2six['A']= 0; pr2six['B']= 1; pr2six['C']= 2; pr2six['D']= 3;
+      pr2six['E']= 4; pr2six['F']= 5; pr2six['G']= 6; pr2six['H']= 7;
+      pr2six['I']= 8; pr2six['J']= 9; pr2six['K']=10; pr2six['L']=11;
+      pr2six['M']=12; pr2six['N']=13; pr2six['O']=14; pr2six['P']=15;
+      pr2six['Q']=16; pr2six['R']=17; pr2six['S']=18; pr2six['T']=19;
+      pr2six['U']=20; pr2six['V']=21; pr2six['W']=22; pr2six['X']=23;
+      pr2six['Y']=24; pr2six['Z']=25; pr2six['a']=26; pr2six['b']=27;
+      pr2six['c']=28; pr2six['d']=29; pr2six['e']=30; pr2six['f']=31;
+      pr2six['g']=32; pr2six['h']=33; pr2six['i']=34; pr2six['j']=35;
+      pr2six['k']=36; pr2six['l']=37; pr2six['m']=38; pr2six['n']=39;
+      pr2six['o']=40; pr2six['p']=41; pr2six['q']=42; pr2six['r']=43;
+      pr2six['s']=44; pr2six['t']=45; pr2six['u']=46; pr2six['v']=47;
+      pr2six['w']=48; pr2six['x']=49; pr2six['y']=50; pr2six['z']=51;
+      pr2six['0']=52; pr2six['1']=53; pr2six['2']=54; pr2six['3']=55;
+      pr2six['4']=56; pr2six['5']=57; pr2six['6']=58; pr2six['7']=59;
+      pr2six['8']=60; pr2six['9']=61; pr2six['+']=62; pr2six['/']=63;
+      /* *INDENT-ON* */
+
+#endif
+    }
+
+    /* Strip leading whitespace. */
+
+    while (*bufcoded == ' ' || *bufcoded == '\t')
+	bufcoded++;
+
+    /* Figure out how many characters are in the input buffer.
+     * If this would decode into more bytes than would fit into
+     * the output buffer, adjust the number of input bytes downwards.
+     */
+    bufin = bufcoded;
+    while (pr2six[UCH(*(bufin++))] <= MAXVAL) ;
+    nprbytes = (int) (bufin - bufcoded - 1);
+    nbytesdecoded = ((nprbytes + 3) / 4) * 3;
+    if (nbytesdecoded > outbufsize) {
+	nprbytes = (outbufsize * 4) / 3;
+    }
+
+    bufin = bufcoded;
+
+    while (nprbytes > 0) {
+	*(bufout++) = UCH((DEC(bufin[0]) << 2) | (DEC(bufin[1]) >> 4));
+	*(bufout++) = UCH((DEC(bufin[1]) << 4) | (DEC(bufin[2]) >> 2));
+	*(bufout++) = UCH((DEC(bufin[2]) << 6) | (DEC(bufin[3])));
+	bufin += 4;
+	nprbytes -= 4;
+    }
+
+    if (nprbytes & 03) {
+	if (pr2six[(int) bufin[-2]] > MAXVAL) {
+	    nbytesdecoded -= 2;
+	} else {
+	    nbytesdecoded -= 1;
+	}
+    }
+
+    return (nbytesdecoded);
+}
diff --git a/WWW/Library/Implementation/HTUU.h b/WWW/Library/Implementation/HTUU.h
new file mode 100644
index 00000000..93ba4357
--- /dev/null
+++ b/WWW/Library/Implementation/HTUU.h
@@ -0,0 +1,36 @@
+/*
+ * $LynxId: HTUU.h,v 1.11 2010/09/25 11:43:27 tom Exp $
+ *
+ *                              ENCODING TO PRINTABLE CHARACTERS
+
+   File module provides functions HTUU_encode() and HTUU_decode() which convert
+   a buffer of bytes to/from RFC 1113 printable encoding format.  This
+   technique is similar to the familiar Unix uuencode format in that it maps 6
+   binary bits to one ASCII character (or more aptly, 3 binary bytes to 4 ASCII
+   characters).  However, RFC 1113 does not use the same mapping to printable
+   characters as uuencode.
+
+ */
+
+#ifndef HTUU_H
+#define HTUU_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern int HTUU_encode(unsigned char *bufin,
+			   size_t nbytes,
+			   char *bufcoded);
+
+    extern int HTUU_decode(char *bufcoded,
+			   unsigned char *bufplain,
+			   int outbufsize);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTUU_H */
diff --git a/WWW/Library/Implementation/HTUtils.h b/WWW/Library/Implementation/HTUtils.h
new file mode 100644
index 00000000..5df9c620
--- /dev/null
+++ b/WWW/Library/Implementation/HTUtils.h
@@ -0,0 +1,790 @@
+/*
+ * $LynxId: HTUtils.h,v 1.109 2012/02/10 18:44:24 tom Exp $
+ *
+ * Utility macros for the W3 code library
+ * MACROS FOR GENERAL USE
+ * 
+ * See also:  the system dependent file "www_tcp.h", which is included here.
+ */
+
+#ifndef NO_LYNX_TRACE
+#define DEBUG			/* Turns on trace; turn off for smaller binary */
+#endif
+
+#ifndef HTUTILS_H
+#define HTUTILS_H
+
+#ifdef HAVE_CONFIG_H
+#include <lynx_cfg.h>		/* generated by autoconf 'configure' script */
+
+/* see AC_FUNC_ALLOCA macro */
+#ifdef __GNUC__
+# define alloca __builtin_alloca
+#else
+# ifdef _MSC_VER
+#  include <malloc.h>
+#  define alloca _alloca
+# else
+#  if HAVE_ALLOCA_H
+#   include <alloca.h>
+#  else
+#   ifdef _AIX
+#pragma alloca
+#   else
+#    ifndef alloca		/* predefined by HP cc +Olibcalls */
+char *alloca();
+
+#    endif
+#   endif
+#  endif
+# endif
+#endif
+
+#include <sys/types.h>
+#include <stdio.h>
+
+#else /* HAVE_CONFIG_H */
+
+#ifdef DJGPP
+#include <sys/config.h>		/* pseudo-autoconf values for DJGPP libc/headers */
+#define HAVE_TRUNCATE 1
+#define HAVE_ALLOCA 1
+#include <limits.h>
+#endif /* DJGPP */
+
+#include <stdio.h>
+
+#define DONT_TRACK_INTERNAL_LINKS 1
+
+/* Explicit system-configure */
+#ifdef VMS
+#define NO_SIZECHANGE
+
+#if defined(VAXC) && !defined(__DECC)
+#define NO_UNISTD_H		/* DEC C has unistd.h, but not VAX C */
+#endif
+
+#define NO_KEYPAD
+#define NO_UTMP
+
+#undef NO_FILIO_H
+#define NO_FILIO_H
+
+#define NOUSERS
+#define DISP_PARTIAL		/* experimental */
+#endif
+
+#if defined(VMS) || defined(_WINDOWS)
+#define HAVE_STDLIB_H 1
+#endif
+
+/* Accommodate non-autoconf'd Makefile's (VMS, DJGPP, etc) */
+
+#ifndef NO_ARPA_INET_H
+#define HAVE_ARPA_INET_H 1
+#endif
+
+#ifndef NO_CBREAK
+#define HAVE_CBREAK 1
+#endif
+
+#ifndef NO_CUSERID
+#define HAVE_CUSERID 1
+#endif
+
+#ifndef NO_FILIO_H
+#define HAVE_SYS_FILIO_H 1
+#endif
+
+#ifndef NO_GETCWD
+#define HAVE_GETCWD 1
+#endif
+
+#ifndef USE_SLANG
+#ifndef NO_KEYPAD
+#define HAVE_KEYPAD 1
+#endif
+#ifndef NO_TTYTYPE
+#define HAVE_TTYTYPE 1
+#endif
+#endif /* USE_SLANG */
+
+#ifndef NO_PUTENV
+#define HAVE_PUTENV 1
+#endif
+
+#ifndef NO_SIZECHANGE
+#define HAVE_SIZECHANGE 1
+#endif
+
+#ifndef NO_UNISTD_H
+#undef  HAVE_UNISTD_H
+#define HAVE_UNISTD_H 1
+#endif
+
+#ifndef NO_UTMP
+#define HAVE_UTMP 1
+#endif
+
+#endif /* HAVE_CONFIG_H */
+
+#include <assert.h>
+
+/* suppress inadvertant use of gettext in makeuctb when cross-compiling */
+#ifdef DONT_USE_GETTEXT
+#undef HAVE_GETTEXT
+#undef HAVE_LIBGETTEXT_H
+#undef HAVE_LIBINTL_H
+#endif
+
+#ifndef lynx_srand
+#define lynx_srand srand
+#endif
+
+#ifndef lynx_rand
+#define lynx_rand rand
+#endif
+
+#if '0' != 48
+#define NOT_ASCII
+#endif
+
+#if '0' == 240
+#define EBCDIC
+#endif
+
+#ifndef LY_MAXPATH
+#define LY_MAXPATH 256
+#endif
+
+#ifndef GCC_NORETURN
+#define GCC_NORETURN		/* nothing */
+#endif
+
+#ifndef GCC_UNUSED
+#define GCC_UNUSED		/* nothing */
+#endif
+
+#if defined(__GNUC__) && defined(_FORTIFY_SOURCE)
+#define USE_IGNORE_RC
+extern int ignore_unused;
+
+#define IGNORE_RC(func) ignore_unused = (int) func
+#else
+#define IGNORE_RC(func) (void) func
+#endif /* gcc workarounds */
+
+#if defined(__CYGWIN32__) && ! defined(__CYGWIN__)
+#define __CYGWIN__ 1
+#endif
+
+#if defined(__CYGWIN__)		/* 1998/12/31 (Thu) 16:13:46 */
+#include <windows.h>		/* #include "windef.h" */
+#define BOOLEAN_DEFINED
+#undef HAVE_POPEN		/* FIXME: does this not work, or is it missing */
+#undef small			/* see <w32api/rpcndr.h> */
+#endif
+
+/* cygwin, mingw32, etc. */
+#ifdef FILE_DOES_NOT_EXIST
+#undef FILE_DOES_NOT_EXIST	/* see <w32api/winnt.h> */
+#endif
+
+/*
+ * VS .NET 2003 includes winsock.h unconditionally from windows.h,
+ * so we do not want to include windows.h if we want winsock2.h
+ */
+#if defined(_WINDOWS) && !defined(__CYGWIN__)
+
+#ifndef __GNUC__
+#pragma warning (disable : 4100)	/* unreferenced formal parameter */
+#pragma warning (disable : 4127)	/* conditional expression is constant */
+#pragma warning (disable : 4201)	/* nameless struct/union */
+#pragma warning (disable : 4214)	/* bit field types other than int */
+#pragma warning (disable : 4310)	/* cast truncates constant value */
+#pragma warning (disable : 4514)	/* unreferenced inline function has been removed */
+#pragma warning (disable : 4996)	/* This function or variable may be unsafe. ... */
+#endif
+
+#if defined(USE_WINSOCK2_H) && (_MSC_VER >= 1300) && (_MSC_VER < 1400)
+#include <winsock2.h>		/* includes windows.h, in turn windef.h */
+#else
+#include <windows.h>		/* #include "windef.h" */
+#endif
+
+#define BOOLEAN_DEFINED
+
+#if !_WIN_CC			/* 1999/09/29 (Wed) 22:00:53 */
+#include <dos.h>
+#endif
+
+#undef sleep			/* 1998/06/23 (Tue) 16:54:53 */
+extern void sleep(unsigned __seconds);
+
+#define popen _popen
+#define pclose _pclose
+
+#if defined(_MSC_VER)
+typedef unsigned short mode_t;
+#endif
+
+#endif /* _WINDOWS */
+
+#if defined(USE_DEFAULT_COLORS) && !defined(HAVE_USE_DEFAULT_COLORS)
+    /* if we don't have use_default_colors() */
+#  undef USE_DEFAULT_COLORS
+#endif
+
+#ifndef USE_COLOR_STYLE
+    /* it's useless for such setup */
+#  define NO_EMPTY_HREFLESS_A
+#endif
+
+#if  defined(__EMX__) || defined(WIN_EX) || defined(HAVE_POPEN)
+#  define CAN_CUT_AND_PASTE
+#endif
+
+#if defined(USE_SLANG) || (defined(USE_COLOR_STYLE) && defined(__EMX__))
+#  define USE_BLINK
+#endif
+
+#if defined(DOSPATH) || defined(__EMX__)
+#  define USE_DOS_DRIVES	/* we allow things like "c:" in paths */
+#endif
+
+#if defined(UNIX)
+#  if (defined(__BEOS__) || defined(__CYGWIN__) || defined(__DJGPP__) || defined(__EMX__) || defined(__MINGW32__))
+#    define SINGLE_USER_UNIX	/* well, at least they try */
+#  else
+#    define MULTI_USER_UNIX
+#  endif
+#endif
+
+/*
+
+  ERROR TYPE
+
+   This is passed back when streams are aborted. It might be nice to have some structure
+   of error messages, numbers, and recursive pointers to reasons.  Curently this is a
+   placeholder for something more sophisticated.
+
+ */
+typedef void *HTError;		/* Unused at present -- best definition? */
+
+/*
+
+Standard C library for malloc() etc
+
+ */
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+
+#ifndef EXIT_SUCCESS
+#define EXIT_SUCCESS 0
+#endif
+
+#ifndef EXIT_FAILURE
+#define EXIT_FAILURE 1
+#endif
+
+#ifdef __EMX__
+#include <unistd.h>		/* should be re-include protected under EMX */
+#define getcwd _getcwd2
+#define chdir _chdir2
+#endif
+
+#ifdef vax
+#ifdef unix
+#define ultrix			/* Assume vax+unix=ultrix */
+#endif /* unix */
+#endif /* vax */
+
+#ifndef VMS
+#ifndef ultrix
+
+#ifdef NeXT
+#include <libc.h>		/* NeXT */
+#endif /* NeXT */
+
+#else /* ultrix: */
+
+#include <malloc.h>
+#include <memory.h>
+
+#endif /* !ultrix */
+#else /* VMS: */
+
+#include <unixlib.h>
+#if defined(VAXC) && !defined(__DECC)
+#define malloc	VAXC$MALLOC_OPT
+#define calloc	VAXC$CALLOC_OPT
+#define free	VAXC$FREE_OPT
+#define cfree	VAXC$CFREE_OPT
+#define realloc	VAXC$REALLOC_OPT
+#endif /* VAXC && !__DECC */
+
+#endif /* !VMS */
+
+#ifndef NULL
+#define NULL ((void *)0)
+#endif
+
+#define isEmpty(s)   ((s) == 0 || *(s) == 0)
+#define non_empty(s) !isEmpty(s)
+
+#define NonNull(s) (((s) != 0) ? s : "")
+#define NONNULL(s) (((s) != 0) ? s : "(null)")
+
+/* array/table size */
+#define	TABLESIZE(v)	(sizeof(v)/sizeof(v[0]))
+
+#define	typecalloc(cast)		(cast *)calloc((size_t)1, sizeof(cast))
+#define	typecallocn(cast,ntypes)	(cast *)calloc((size_t)(ntypes),sizeof(cast))
+
+#define typeRealloc(cast,ptr,ntypes)    (cast *)realloc(ptr, (size_t)(ntypes)*sizeof(cast))
+
+#define typeMalloc(cast)                (cast *)malloc(sizeof(cast))
+#define typeMallocn(cast,ntypes)        (cast *)malloc((size_t)(ntypes)*sizeof(cast))
+
+/*
+
+OFTEN USED INTEGER MACROS
+
+  Min and Max functions
+
+ */
+#ifndef HTMIN
+#define HTMIN(a,b) ((a) <= (b) ? (a) : (b))
+#define HTMAX(a,b) ((a) >= (b) ? (a) : (b))
+#endif
+/*
+
+Booleans
+
+ */
+/* Note: GOOD and BAD are already defined (differently) on RS6000 aix */
+/* #define GOOD(status) ((status)38;1)   VMS style status: test bit 0         */
+/* #define BAD(status)  (!GOOD(status))  Bit 0 set if OK, otherwise clear   */
+
+#ifndef _WINDOWS
+#ifndef BOOLEAN_DEFINED
+typedef char BOOLEAN;		/* Logical value */
+
+#ifndef CURSES
+#ifndef TRUE
+#define TRUE    (BOOLEAN)1
+#define FALSE   (BOOLEAN)0
+#endif
+#endif /*  CURSES  */
+#endif /*  BOOLEAN_DEFINED */
+#define BOOLEAN_DEFINED
+#endif /* _WINDOWS */
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1300)
+/* it declares BOOL/BOOLEAN as BYTE/int */
+#else
+#ifndef BOOL
+#define BOOL BOOLEAN
+#endif
+#endif
+
+#ifndef YES
+#define YES (BOOLEAN)1
+#define NO (BOOLEAN)0
+#endif
+
+#define STRING1PTR const char *
+#define STRING2PTR const char * const *
+
+extern BOOL LYOutOfMemory;	/* Declared in LYexit.c - FM */
+
+#define TCP_PORT 80		/* Allocated to http by Jon Postel/ISI 24-Jan-92 */
+#define OLD_TCP_PORT 2784	/* Try the old one if no answer on 80 */
+#define DNP_OBJ 80		/* This one doesn't look busy, but we must check */
+			/* That one was for decnet */
+
+/*      Inline Function WHITE: Is character c white space? */
+/*      For speed, include all control characters */
+
+#define WHITE(c) ((UCH(TOASCII(c))) <= 32)
+
+/*     Inline Function LYIsASCII: Is character c a traditional ASCII
+ *     character (i.e. <128) after converting from host character set.  */
+
+#define LYIsASCII(c) (TOASCII(UCH(c)) < 128)
+
+/*
+
+Success (>=0) and failure (<0) codes
+
+Some of the values are chosen to be HTTP-like, but status return values
+are generally not the response status from any specific protocol.
+
+ */
+
+#define HT_PARSER_OTHER_CONTENT  701	/* tells SGML to change content model */
+#define HT_PARSER_REOPEN_ELT     700	/* tells SGML parser to keep tag open */
+#define HT_REDIRECTING           399
+#define HT_PARTIAL_CONTENT       206	/* Partial Content */
+#define HT_LOADED                200	/* Instead of a socket */
+
+#define HT_OK                      0	/* Generic success */
+
+#define HT_ERROR                  -1	/* Generic failure */
+#define HT_CANNOT_TRANSLATE       -4
+#define HT_BAD_EOF               -12	/* Premature EOF */
+#define HT_NO_CONNECTION         -99	/* ERR no connection available - */
+#define HT_NO_DATA              -204	/* OK but no data was loaded - */
+					/* possibly other app started or forked */
+#define HT_NO_ACCESS            -401	/* Access not available */
+#define HT_FORBIDDEN            -403	/* Access forbidden */
+#define HT_NOT_ACCEPTABLE       -406	/* Not Acceptable */
+#define HT_H_ERRNO_VALID        -800	/* see h_errno for resolver error */
+#define HT_INTERNAL             -900	/* Weird -- should never happen. */
+#define HT_INTERRUPTED        -29998
+#define HT_NOT_LOADED         -29999
+
+#ifndef va_arg
+#  include <stdarg.h>
+#endif
+
+#define LYva_start(ap,format) va_start(ap,format)
+
+/*
+ * GCC can be told that some functions are like printf (and do type-checking on
+ * their parameters).
+ */
+#ifndef GCC_PRINTFLIKE
+#if defined(GCC_PRINTF) && !defined(printf) && !defined(HAVE_LIBUTF8_H)
+#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
+#else
+#define GCC_PRINTFLIKE(fmt,var)	/*nothing */
+#endif
+#endif
+
+#include <HTString.h>		/* String utilities */
+
+/*
+
+Out Of Memory checking for malloc() return:
+
+ */
+#ifndef __FILE__
+#define __FILE__ ""
+#define __LINE__ ""
+#endif
+
+#include <LYexit.h>
+
+/*
+ * Upper- and Lowercase macros
+ *
+ * The problem here is that toupper(x) is not defined officially unless
+ * isupper(x) is.  These macros are CERTAINLY needed on #if defined(pyr) ||
+ * define(mips) or BDSI platforms.  For safefy, we make them mandatory.
+ *
+ * Note: Pyramid and Mips can't uppercase non-alpha.
+ */
+#include <ctype.h>
+#include <string.h>
+
+#ifndef TOLOWER
+
+#ifdef USE_ASCII_CTYPES
+
+#define TOLOWER(c) ascii_tolower(UCH(c))
+#define TOUPPER(c) ascii_toupper(UCH(c))
+#define ISUPPER(c) ascii_isupper(UCH(c))
+
+#else
+
+#define TOLOWER(c) (isupper(UCH(c)) ? tolower(UCH(c)) : UCH(c))
+#define TOUPPER(c) (islower(UCH(c)) ? toupper(UCH(c)) : UCH(c))
+#define ISUPPER(c) (isupper(UCH(c)))
+
+#endif
+
+#endif /* TOLOWER */
+
+#define FREE(x)    {if (x != 0) {free((char *)x); x = NULL;}}
+
+/*
+
+The local equivalents of CR and LF
+
+   We can check for these after net ascii text has been converted to the local
+   representation.  Similarly, we include them in strings to be sent as net ascii after
+   translation.
+
+ */
+#define LF   FROMASCII('\012')	/* ASCII line feed LOCAL EQUIVALENT */
+#define CR   FROMASCII('\015')	/* Will be converted to ^M for transmission */
+
+/*
+ * Debug message control.
+ */
+#ifdef NO_LYNX_TRACE
+#define WWW_TraceFlag   0
+#define WWW_TraceMask   0
+#define LYTraceLogFP    0
+#else
+extern BOOLEAN WWW_TraceFlag;
+extern int WWW_TraceMask;
+#endif
+
+#define TRACE           (WWW_TraceFlag)
+#define TRACE_bit(n)    (TRACE && (WWW_TraceMask & (1 << n)) != 0)
+#define TRACE_SGML      (TRACE_bit(0))
+#define TRACE_STYLE     (TRACE_bit(1))
+#define TRACE_TRST      (TRACE_bit(2))
+#define TRACE_CFG       (TRACE_bit(3))
+#define TRACE_BSTRING   (TRACE_bit(4))
+#define TRACE_COOKIES   (TRACE_bit(5))
+#define TRACE_CHARSETS  (TRACE_bit(6))
+#define TRACE_GRIDTEXT  (TRACE_bit(7))
+#define TRACE_TIMING    (TRACE_bit(8))
+
+/*
+ * Get printing/scanning formats.
+ */
+#if defined(HAVE_INTTYPES_H)
+#include <inttypes.h>
+#endif
+
+/*
+ * Printing/scanning-formats for "off_t", as well as cast needed to fit.
+ */
+#if defined(HAVE_LONG_LONG) && defined(HAVE_INTTYPES_H) && defined(SIZEOF_OFF_T)
+#if (SIZEOF_OFF_T == 8) && defined(PRId64)
+
+#define PRI_off_t	PRId64
+#define SCN_off_t	SCNd64
+#define CAST_off_t(n)	(int64_t)(n)
+
+#elif (SIZEOF_OFF_T == 4) && defined(PRId32)
+
+#define PRI_off_t	PRId32
+#define SCN_off_t	SCNd32
+
+#if (SIZEOF_INT == 4)
+#define CAST_off_t(n)	(int)(n)
+#elif (SIZEOF_LONG == 4)
+#define CAST_off_t(n)	(long)(n)
+#else
+#define CAST_off_t(n)	(int32_t)(n)
+#endif
+
+#endif
+#endif
+
+#ifndef PRI_off_t
+#if defined(HAVE_LONG_LONG) && (SIZEOF_OFF_T > SIZEOF_LONG)
+#define PRI_off_t	"lld"
+#define SCN_off_t	"lld"
+#define CAST_off_t(n)	(long long)(n)
+#else
+#define PRI_off_t	"ld"
+#define SCN_off_t	"ld"
+#define CAST_off_t(n)	(long)(n)
+#endif
+#endif
+
+/*
+ * Printing-format for "time_t", as well as cast needed to fit.
+ */
+#if defined(HAVE_LONG_LONG) && defined(HAVE_INTTYPES_H) && defined(SIZEOF_TIME_T)
+#if (SIZEOF_TIME_T == 8) && defined(PRId64)
+
+#define PRI_time_t	PRId64
+#define SCN_time_t	SCNd64
+#define CAST_time_t(n)	(int64_t)(n)
+
+#elif (SIZEOF_TIME_T == 4) && defined(PRId32)
+
+#define PRI_time_t	PRId32
+#define SCN_time_t	SCNd32
+
+#if (SIZEOF_INT == 4)
+#define CAST_time_t(n)	(int)(n)
+#elif (SIZEOF_LONG == 4)
+#define CAST_time_t(n)	(long)(n)
+#else
+#define CAST_time_t(n)	(int32_t)(n)
+#endif
+
+#endif
+#endif
+
+#ifndef PRI_time_t
+#if defined(HAVE_LONG_LONG) && (SIZEOF_TIME_T > SIZEOF_LONG)
+#define PRI_time_t	"lld"
+#define SCN_time_t	"lld"
+#define CAST_time_t(n)	(long long)(n)
+#else
+#define PRI_time_t	"ld"
+#define SCN_time_t	"ld"
+#define CAST_time_t(n)	(long)(n)
+#endif
+#endif
+
+/*
+ * Printing-format for "UCode_t".
+ */
+#define PRI_UCode_t	"lX"
+
+/*
+ * Verbose-tracing.
+ */
+#if defined(USE_VERTRACE) && !defined(LY_TRACELINE)
+#define LY_TRACELINE __LINE__
+#endif
+
+#if defined(LY_TRACELINE)
+#define LY_SHOWWHERE fprintf( tfp, "%s: %d: ", __FILE__, LY_TRACELINE ),
+#else
+#define LY_SHOWWHERE		/* nothing */
+#endif
+
+#define CTRACE(p)         ((void)((TRACE) && ( LY_SHOWWHERE fprintf p )))
+#define CTRACE2(m,p)      ((void)((m)     && ( LY_SHOWWHERE fprintf p )))
+#define tfp TraceFP()
+#define CTRACE_SLEEP(secs) if (TRACE && LYTraceLogFP == 0) sleep((unsigned)secs)
+#define CTRACE_FLUSH(fp)   if (TRACE) fflush(fp)
+
+#include <www_tcp.h>
+
+/*
+ * We force this include-ordering since socks.h contains redefinitions of
+ * functions that probably are prototyped via other includes.  The socks.h
+ * definitions have to be included everywhere, since they're making wrappers
+ * for the stdio functions as well as the network functions.
+ */
+#if defined(USE_SOCKS5) && !defined(DONT_USE_SOCKS5)
+#define SOCKS4TO5		/* turn on the Rxxxx definitions used in Lynx */
+#include <socks.h>
+
+/*
+ * The AIX- and SOCKS4-specific definitions in socks.h are inconsistent.
+ * Repair them so they're consistent (and usable).
+ */
+#if defined(_AIX) && !defined(USE_SOCKS4_PREFIX)
+#undef  Raccept
+#define Raccept       accept
+#undef  Rgetsockname
+#define Rgetsockname  getsockname
+#undef  Rgetpeername
+#define Rgetpeername  getpeername
+#endif
+
+/*
+ * Workaround for order-of-evaluation problem with gcc and socks5 headers
+ * which breaks the Rxxxx names by attaching the prefix twice:
+ */
+#ifdef INCLUDE_PROTOTYPES
+#undef  Raccept
+#undef  Rbind
+#undef  Rconnect
+#undef  Rlisten
+#undef  Rselect
+#undef  Rgetpeername
+#undef  Rgetsockname
+#define Raccept       accept
+#define Rbind         bind
+#define Rconnect      connect
+#define Rgetpeername  getpeername
+#define Rgetsockname  getsockname
+#define Rlisten       listen
+#define Rselect       select
+#endif
+
+#endif /* USE_SOCKS5 */
+
+#define SHORTENED_RBIND		/* FIXME: do this in configure-script */
+
+#ifdef USE_SSL
+
+#define free_func free__func
+
+#ifdef USE_OPENSSL_INCL
+#include <openssl/ssl.h>
+#include <openssl/crypto.h>
+#include <openssl/rand.h>
+#include <openssl/err.h>
+
+#else
+
+#if defined(USE_GNUTLS_FUNCS)
+#include <tidy_tls.h>
+#define USE_GNUTLS_INCL 1	/* do this for the ".c" ifdef's */
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+/*
+ * GNUTLS's implementation of OpenSSL is very incomplete and rudimentary.
+ * For a start, let's make it compile (TD - 2003/4/13).
+ */
+#ifndef SSL_VERIFY_PEER
+#define SSL_VERIFY_PEER			0x01
+#endif
+#else
+
+#ifdef USE_NSS_COMPAT_INCL
+#include <nss_compat_ossl/nss_compat_ossl.h>
+
+#else /* assume SSLeay */
+#include <ssl.h>
+#include <crypto.h>
+#include <rand.h>
+#include <err.h>
+#endif
+#endif
+#endif /* USE_OPENSSL_INCL */
+
+#undef free_func
+#endif /* USE_SSL */
+
+#ifdef HAVE_BSD_STDLIB_H
+#include <bsd/stdlib.h>		/* prototype for arc4random.h */
+#elif defined(HAVE_BSD_RANDOM_H)
+#include <bsd/random.h>		/* prototype for arc4random.h */
+#endif
+
+#ifdef HAVE_LIBDMALLOC
+#include <dmalloc.h>		/* Gray Watson's library */
+#define show_alloc() dmalloc_log_unfreed()
+#endif
+
+#ifdef HAVE_LIBDBMALLOC
+#include <dbmalloc.h>		/* Conor Cahill's library */
+#define show_alloc() malloc_dump(fileno(stderr))
+#endif
+
+#ifndef show_alloc
+#define show_alloc()		/* nothing */
+#endif
+
+#include <userdefs.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#ifndef TOLOWER
+#ifdef USE_ASCII_CTYPES
+    extern int ascii_toupper(int);
+    extern int ascii_tolower(int);
+    extern int ascii_isupper(int);
+#endif
+#endif
+
+    extern FILE *TraceFP(void);
+
+#ifdef USE_SSL
+    extern SSL *HTGetSSLHandle(void);
+    extern void HTSSLInitPRNG(void);
+    extern int HTGetSSLCharacter(void *handle);
+#endif				/* USE_SSL */
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTUTILS_H */
diff --git a/WWW/Library/Implementation/HTVMSUtils.c b/WWW/Library/Implementation/HTVMSUtils.c
new file mode 100644
index 00000000..85ca863a
--- /dev/null
+++ b/WWW/Library/Implementation/HTVMSUtils.c
@@ -0,0 +1,1133 @@
+/*
+ * $LynxId: HTVMSUtils.c,v 1.37 2010/09/25 11:39:49 tom Exp $
+ *
+ * MODULE							HTVMSUtil.c
+ *		VMS Utility Routines
+ *
+ * AUTHORS:
+ *	MD	Mark Donszelmann    duns@vxdeop.cern.ch
+ *
+ * HISTORY:
+ *	14 Nov 93  MD	Written
+ *
+ * BUGS:
+ *
+ *
+ */
+
+#include <HTUtils.h>
+#ifdef VMS
+#include <HTFormat.h>
+#include <HTStream.h>
+#include <UCDefs.h>
+#include <UCMap.h>
+#include <UCAux.h>
+#include <HTFTP.h>
+#include <HTTCP.h>
+#include <HTVMSUtils.h>
+#include <ssdef.h>
+#include <jpidef.h>
+#include <prvdef.h>
+#include <acldef.h>
+#include <chpdef.h>
+#include <descrip.h>
+#include <lib$routines.h>
+#include <starlet.h>
+#include <rmsdef.h>
+
+#include <LYGlobalDefs.h>
+#include <LYUtils.h>
+#include <LYLeaks.h>
+#include <LYStrings.h>
+
+BOOL HTVMSFileVersions = FALSE;	/* Include version numbers in listing? */
+
+typedef struct {
+    unsigned long BufferLength:16;
+    unsigned long ItemCode:16;
+    unsigned long BufferAddress:32;
+    unsigned long ReturnLengthAddress:32;
+} ItemStruct;
+
+/* PUBLIC							HTVMS_authSysPrv()
+ *		CHECKS IF THIS PROCESS IS AUTHORIZED TO ENABLE SYSPRV
+ * ON ENTRY:
+ *	No arguments.
+ *
+ * ON EXIT:
+ *	returns	YES if SYSPRV is authorized
+ */
+BOOL HTVMS_authSysPrv(void)
+{
+    unsigned long Result;
+    ItemStruct ItemList[2];
+    unsigned long Length;
+    unsigned long Buffer[2];
+
+    /* fill Item */
+    ItemList[0].BufferLength = sizeof(Buffer);
+    ItemList[0].BufferAddress = (unsigned long) Buffer;
+    ItemList[0].ReturnLengthAddress = (unsigned long) &Length;
+    ItemList[0].ItemCode = JPI$_AUTHPRIV;
+
+    /* terminate list */
+    ItemList[1].ItemCode = 0;
+    ItemList[1].BufferLength = 0;
+
+    /* call system */
+    Result = sys$getjpiw(0, 0, 0, ItemList, 0, 0, 0);
+
+    if (Result != SS$_NORMAL)
+	return (NO);
+
+    if (Buffer[0] & PRV$M_SYSPRV)
+	return (YES);
+
+    return (NO);
+}
+
+/* PUBLIC							HTVMS_enableSysPrv()
+ *		ENABLES SYSPRV
+ * ON ENTRY:
+ *	No arguments.
+ *
+ * ON EXIT:
+ *
+ */
+void HTVMS_enableSysPrv(void)
+{
+    unsigned long Result;
+    unsigned long Prv[2], PreviousPrv[2];
+
+    Prv[0] = PRV$M_SYSPRV;
+    Prv[1] = 0;
+    Result = sys$setprv(1, &Prv, 0, &PreviousPrv);
+
+    if (Result == SS$_NORMAL) {
+	if (!(PreviousPrv[0] & PRV$M_SYSPRV)) {
+	    CTRACE((tfp, "HTVMS_enableSysPrv: Enabled SYSPRV\n"));
+	}
+    }
+}
+
+/* PUBLIC							HTVMS_disableSysPrv()
+ *		DISABLES SYSPRV
+ * ON ENTRY:
+ *	No arguments.
+ *
+ * ON EXIT:
+ *
+ */
+void HTVMS_disableSysPrv(void)
+{
+    unsigned long Result;
+    unsigned long Prv[2], PreviousPrv[2];
+
+    Prv[0] = PRV$M_SYSPRV;
+    Prv[1] = 0;
+    Result = sys$setprv(0, &Prv, 0, &PreviousPrv);
+
+    if (Result == SS$_NORMAL) {
+	if (PreviousPrv[0] & PRV$M_SYSPRV) {
+	    CTRACE((tfp, "HTVMS_disableSysPrv: Disabled SYSPRV\n"));
+	}
+    }
+}
+
+/* PUBLIC							HTVMS_checkAccess()
+ *		CHECKS ACCESS TO FILE FOR CERTAIN USER
+ * ON ENTRY:
+ *	FileName	The file to be accessed
+ *	UserName	Name of the user to check access for.
+ *			User nobody, represented by "" is given NO for an answer
+ *	Method		Name of the method to be chceked
+ *
+ * ON EXIT:
+ *	returns YES if access is allowed
+ *
+ */
+BOOL HTVMS_checkAccess(const char *FileName,
+		       const char *UserName,
+		       const char *Method)
+{
+    unsigned long Result;
+    ItemStruct ItemList[2];
+    unsigned long Length;
+    unsigned long Buffer;
+    unsigned long ObjType;
+
+    char *VmsName;
+
+    struct dsc$descriptor_s FileNameDesc;
+    struct dsc$descriptor_s UserNameDesc;
+
+    char *colon;
+
+    /* user nobody should access as from account under which server is running */
+    if (0 == strcmp(UserName, ""))
+	return (NO);
+
+    /* check Filename and convert */
+    colon = strchr(FileName, ':');
+    if (colon)
+	VmsName = HTVMS_name("", colon + 1);
+    else
+	VmsName = HTVMS_name("", FileName);
+
+    /* check for GET */
+    if (0 == strcmp(Method, "GET")) {
+	/* fill Item */
+	ItemList[0].BufferLength = sizeof(Buffer);
+	ItemList[0].BufferAddress = (unsigned long) &Buffer;
+	ItemList[0].ReturnLengthAddress = (unsigned long) &Length;
+	ItemList[0].ItemCode = CHP$_FLAGS;
+
+	/* terminate list */
+	ItemList[1].ItemCode = 0;
+	ItemList[1].BufferLength = 0;
+
+	/* fill input */
+	ObjType = ACL$C_FILE;
+	Buffer = CHP$M_READ;
+	UserNameDesc.dsc$w_length = strlen(UserName);
+	UserNameDesc.dsc$b_dtype = DSC$K_DTYPE_T;
+	UserNameDesc.dsc$b_class = DSC$K_CLASS_S;
+	UserNameDesc.dsc$a_pointer = (char *) UserName;
+	FileNameDesc.dsc$w_length = strlen(VmsName);
+	FileNameDesc.dsc$b_dtype = DSC$K_DTYPE_T;
+	FileNameDesc.dsc$b_class = DSC$K_CLASS_S;
+	FileNameDesc.dsc$a_pointer = VmsName;
+
+	/* call system */
+	Result = sys$check_access(&ObjType, &FileNameDesc, &UserNameDesc, ItemList);
+
+	if (Result == SS$_NORMAL)
+	    return (YES);
+	else
+	    return (NO);
+    }
+
+    return (NO);
+}
+
+/* PUBLIC							HTVMS_wwwName()
+ *		CONVERTS VMS Name into WWW Name
+ * ON ENTRY:
+ *	vmsname		VMS file specification (NO NODE)
+ *
+ * ON EXIT:
+ *	returns		www file specification
+ *
+ * EXAMPLES:
+ *	vmsname				wwwname
+ *	DISK$USER			disk$user
+ *	DISK$USER:			/disk$user/
+ *	DISK$USER:[DUNS]		/disk$user/duns
+ *	DISK$USER:[DUNS.ECHO]		/disk$user/duns/echo
+ *	[DUNS]				duns
+ *	[DUNS.ECHO]			duns/echo
+ *	[DUNS.ECHO.-.TRANS]		duns/echo/../trans
+ *	[DUNS.ECHO.--.TRANS]		duns/echo/../../trans
+ *	[.DUNS]				duns
+ *	[.DUNS.ECHO]			duns/echo
+ *	[.DUNS.ECHO]TEST.COM		duns/echo/test.com
+ *	TEST.COM			test.com
+ *
+ *
+ */
+const char *HTVMS_wwwName(const char *vmsname)
+{
+    static char wwwname[LY_MAXPATH];
+    const char *src;
+    char *dst;
+    int dir;
+
+    dst = wwwname;
+    src = vmsname;
+    dir = 0;
+    if (strchr(src, ':'))
+	*(dst++) = '/';
+    for (; *src != '\0'; src++) {
+	switch (*src) {
+	case ':':
+	    *(dst++) = '/';
+	    break;
+	case '-':
+	    if (dir) {
+		if ((*(src - 1) == '[' ||
+		     *(src - 1) == '.' ||
+		     *(src - 1) == '-') &&
+		    (*(src + 1) == '.' ||
+		     *(src + 1) == '-')) {
+		    *(dst++) = '/';
+		    *(dst++) = '.';
+		    *(dst++) = '.';
+		} else
+		    *(dst++) = '-';
+	    } else {
+		if (*(src - 1) == ']')
+		    *(dst++) = '/';
+		*(dst++) = '-';
+	    }
+	    break;
+	case '.':
+	    if (dir) {
+		if (*(src - 1) != '[')
+		    *(dst++) = '/';
+	    } else {
+		if (*(src - 1) == ']')
+		    *(dst++) = '/';
+		*(dst++) = '.';
+	    }
+	    break;
+	case '[':
+	    dir = 1;
+	    break;
+	case ']':
+	    dir = 0;
+	    break;
+	default:
+	    if (*(src - 1) == ']')
+		*(dst++) = '/';
+	    *(dst++) = *src;
+	    break;
+	}
+    }
+    *(dst++) = '\0';
+    return (wwwname);
+}
+
+/*
+ *	The code below is for directory browsing by VMS Curses clients.
+ *	It is based on the newer WWWLib's HTDirBrw.c. - Foteos Macrides
+ */
+int HTStat(const char *filename,
+	   struct stat *info)
+{
+    /*
+       the following stuff does not work in VMS with a normal stat...
+       -->   /disk$user/duns/www if www is a directory
+       is statted like:  /disk$user/duns/www.dir
+       after a normal stat has failed
+       -->   /disk$user/duns     if duns is a toplevel directory
+       is statted like:  /disk$user/000000/duns.dir
+       -->   /disk$user since disk$user is a device
+       is statted like:  /disk$user/000000/000000.dir
+       -->   /
+       searches all devices, no solution yet...
+       -->   /vxcern!/disk$cr/wwwteam/login.com
+       is not statted but granted with fake information...
+     */
+    int Result;
+    int Len;
+    char *Ptr, *Ptr2;
+    static char *Name;
+
+    /* try normal stat... */
+    Result = stat((char *) filename, info);
+    if (Result == 0)
+	return (Result);
+
+    /* make local copy */
+    StrAllocCopy(Name, filename);
+
+    /* failed,so do device search in case root is requested */
+    if (!strcmp(Name, "/")) {	/* root requested */
+	return (-1);
+    }
+
+    /* failed so this might be a directory, add '.dir' */
+    Len = strlen(Name);
+    if (Name[Len - 1] == '/')
+	Name[Len - 1] = '\0';
+
+    /* fail in case of device */
+    Ptr = strchr(Name + 1, '/');
+    if ((Ptr == NULL) && (Name[0] == '/')) {	/* device only... */
+	StrAllocCat(Name, "/000000/000000");
+    }
+
+    if (Ptr != NULL) {		/* correct filename in case of toplevel dir */
+	Ptr2 = strchr(Ptr + 1, '/');
+	if ((Ptr2 == NULL) && (Name[0] == '/')) {
+	    char End[256];
+
+	    LYStrNCpy(End, Ptr, sizeof(End) - 1);
+	    *(Ptr + 1) = '\0';
+	    StrAllocCat(Name, "000000");
+	    StrAllocCat(Name, End);
+	}
+    }
+
+    /* try in case a file on toplevel directory or .DIR was already specified */
+    Result = stat(Name, info);
+    if (Result == 0)
+	return (Result);
+
+    /* add .DIR and try again */
+    StrAllocCat(Name, ".dir");
+    Result = stat(Name, info);
+    return (Result);
+}
+
+#ifndef	_POSIX_SOURCE
+#define	d_ino	d_fileno	/* compatability */
+#ifndef	NULL
+#define	NULL	0
+#endif
+#endif /* !_POSIX_SOURCE */
+
+typedef struct __dirdesc {
+    long context;		/* context descriptor for LIB$FIND_FILE calls */
+    char dirname[255 + 1];	/* keeps the directory name, including *.* */
+    struct dsc$descriptor_s dirname_desc;	/* descriptor of dirname */
+} DIR;
+
+static DIR *HTVMSopendir(char *dirname);
+static struct dirent *HTVMSreaddir(DIR *dirp);
+static int HTVMSclosedir(DIR *dirp);
+
+/*** #include <sys_dirent.h> ***/
+/*** "sys_dirent.h" ***/
+struct dirent {
+    unsigned long d_fileno;	/* file number of entry */
+    unsigned short d_namlen;	/* length of string in d_name */
+    char d_name[255 + 1];	/* name (up to MAXNAMLEN + 1) */
+};
+
+#ifndef	_POSIX_SOURCE
+/*
+ * It's unlikely to change, but make sure that sizeof d_name above is
+ * at least MAXNAMLEN + 1 (more may be added for padding).
+ */
+#define	MAXNAMLEN	255
+/*
+ * The macro DIRSIZ(dp) gives the minimum amount of space required to represent
+ * a directory entry.  For any directory entry dp->d_reclen >= DIRSIZ(dp).
+ * Specific filesystem types may use this macro to construct the value
+ * for d_reclen.
+ */
+#undef	DIRSIZ
+#define	DIRSIZ(dp) \
+	(((sizeof(struct dirent) - (MAXNAMLEN+1) + ((dp)->d_namlen+1)) +3) & ~3)
+
+#endif /* !_POSIX_SOURCE */
+
+static DIR *HTVMSopendir(char *dirname)
+{
+    static DIR dir;
+    char *closebracket;
+    long status;
+    struct dsc$descriptor_s entryname_desc;
+    struct dsc$descriptor_s dirname_desc;
+    static char *DirEntry;
+    char Actual[256];
+    char VMSentry[256];
+    char UnixEntry[256];
+    int index;
+    char *dot;
+
+    /* check if directory exists */
+    /* dirname can look like /disk$user/duns/www/test/multi    */
+    /* or like               /disk$user/duns/www/test/multi/   */
+    /* DirEntry should look like     disk$user:[duns.www.test]multi in both cases */
+    /* dir.dirname should look like  disk$user:[duns.www.test.multi] */
+    sprintf(UnixEntry, "%.*s", sizeof(UnixEntry) - 2, dirname);
+    if (UnixEntry[strlen(UnixEntry) - 1] != '/')
+	strcat(UnixEntry, "/");
+
+    StrAllocCopy(DirEntry, HTVMS_name("", UnixEntry));
+    if (strlen(DirEntry) > sizeof(dir.dirname) - 1)
+	return (NULL);
+    strcpy(dir.dirname, DirEntry);
+    index = strlen(DirEntry) - 1;
+
+    if (DirEntry[index] == ']')
+	DirEntry[index] = '\0';
+
+    if ((dot = strrchr(DirEntry, '.')) == NULL) {	/* convert disk$user:[duns] into disk$user:[000000]duns.dir */
+	char *openbr = strrchr(DirEntry, '[');
+
+	if (!openbr) {		/* convert disk$user: into disk$user:[000000]000000.dir */
+	    if (strlen(dir.dirname) > sizeof(dir.dirname) - 10)
+		return (NULL);
+	    sprintf(dir.dirname, "%.*s[000000]", sizeof(dir.dirname) - 9, DirEntry);
+	    StrAllocCat(DirEntry, "[000000]000000.dir");
+	} else {
+	    char End[256];
+
+	    strcpy(End, openbr + 1);
+	    *(openbr + 1) = '\0';
+	    StrAllocCat(DirEntry, "000000]");
+	    StrAllocCat(DirEntry, End);
+	    StrAllocCat(DirEntry, ".dir");
+	}
+    } else {
+	*dot = ']';
+	StrAllocCat(DirEntry, ".dir");
+    }
+    /* lib$find_file needs a fixed-size buffer */
+    LYStrNCpy(Actual, DirEntry, sizeof(Actual) - 1);
+
+    dir.context = 0;
+    dirname_desc.dsc$w_length = strlen(Actual);
+    dirname_desc.dsc$b_dtype = DSC$K_DTYPE_T;
+    dirname_desc.dsc$b_class = DSC$K_CLASS_S;
+    dirname_desc.dsc$a_pointer = (char *) &(Actual);
+
+    /* look for the directory */
+    entryname_desc.dsc$w_length = 255;
+    entryname_desc.dsc$b_dtype = DSC$K_DTYPE_T;
+    entryname_desc.dsc$b_class = DSC$K_CLASS_S;
+    entryname_desc.dsc$a_pointer = VMSentry;
+
+    status = lib$find_file(&(dirname_desc),
+			   &entryname_desc,
+			   &(dir.context),
+			   0, 0, 0, 0);
+    if (!(status & 0x01)) {	/* directory not found */
+	return (NULL);
+    }
+
+    if (strlen(dir.dirname) > sizeof(dir.dirname) - 10)
+	return (NULL);
+    if (HTVMSFileVersions)
+	strcat(dir.dirname, "*.*;*");
+    else
+	strcat(dir.dirname, "*.*");
+    dir.context = 0;
+    dir.dirname_desc.dsc$w_length = strlen(dir.dirname);
+    dir.dirname_desc.dsc$b_dtype = DSC$K_DTYPE_T;
+    dir.dirname_desc.dsc$b_class = DSC$K_CLASS_S;
+    dir.dirname_desc.dsc$a_pointer = (char *) &(dir.dirname);
+    return (&dir);
+}
+
+static struct dirent *HTVMSreaddir(DIR *dirp)
+{
+    static struct dirent entry;
+    long status;
+    struct dsc$descriptor_s entryname_desc;
+    char *space, *slash;
+    char VMSentry[256];
+    const char *UnixEntry;
+
+    entryname_desc.dsc$w_length = 255;
+    entryname_desc.dsc$b_dtype = DSC$K_DTYPE_T;
+    entryname_desc.dsc$b_class = DSC$K_CLASS_S;
+    entryname_desc.dsc$a_pointer = VMSentry;
+
+    status = lib$find_file(&(dirp->dirname_desc),
+			   &entryname_desc,
+			   &(dirp->context),
+			   0, 0, 0, 0);
+    if (status == RMS$_NMF) {	/* no more files */
+	return (NULL);
+    } else {			/* ok */
+	if (!(status & 0x01))
+	    return (0);
+	if (HTVMSFileVersions)
+	    space = strchr(VMSentry, ' ');
+	else
+	    space = strchr(VMSentry, ';');
+	if (space)
+	    *space = '\0';
+
+	/* convert to unix style... */
+	UnixEntry = HTVMS_wwwName(VMSentry);
+	slash = strrchr(UnixEntry, '/') + 1;
+	strcpy(entry.d_name, slash);
+	entry.d_namlen = strlen(entry.d_name);
+	entry.d_fileno = 1;
+	return (&entry);
+    }
+}
+
+static int HTVMSclosedir(DIR *dirp)
+{
+    long status;
+
+    status = lib$find_file_end(&(dirp->context));
+    if (!(status & 0x01))
+	exit_immediately(status);
+    dirp->context = 0;
+    return (0);
+}
+
+#include <HTAnchor.h>
+#include <HTParse.h>
+#include <HTBTree.h>
+#include <HTFile.h>		/* For HTFileFormat() */
+#include <HTAlert.h>
+/*
+ *  Hypertext object building machinery.
+ */
+#include <HTML.h>
+#define PUTC(c) (*targetClass.put_character)(target, c)
+#define PUTS(s) (*targetClass.put_string)(target, s)
+#define START(e) (*targetClass.start_element)(target, e, 0, 0, -1, 0)
+#define END(e) (*targetClass.end_element)(target, e, 0)
+#define FREE_TARGET (*targetClass._free)(target)
+#define ABORT_TARGET (*targetClass._free)(target)
+struct _HTStructured {
+    const HTStructuredClass *isa;
+    /* ... */
+};
+
+#define STRUCT_DIRENT struct dirent
+
+static char *months[12] =
+{
+    "Jan", "Feb", "Mar", "Apr", "May", "Jun",
+    "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
+};
+
+typedef struct _VMSEntryInfo {
+    char *filename;
+    char *type;
+    char *date;
+    unsigned int size;
+    BOOLEAN display;		/* show this entry? */
+} VMSEntryInfo;
+
+static void free_VMSEntryInfo_contents(VMSEntryInfo * entry_info)
+{
+    if (entry_info) {
+	FREE(entry_info->filename);
+	FREE(entry_info->type);
+	FREE(entry_info->date);
+    }
+    /* dont free the struct */
+}
+
+int compare_VMSEntryInfo_structs(VMSEntryInfo * entry1, VMSEntryInfo * entry2)
+{
+    int i, status;
+    char date1[16], date2[16], time1[8], time2[8], month[4];
+
+    switch (HTfileSortMethod) {
+    case FILE_BY_SIZE:
+	/* both equal or both 0 */
+	if (entry1->size == entry2->size)
+	    return (strcasecomp(entry1->filename,
+				entry2->filename));
+	else if (entry1->size > entry2->size)
+	    return (1);
+	else
+	    return (-1);
+    case FILE_BY_TYPE:
+	if (entry1->type && entry2->type) {
+	    status = strcasecomp(entry1->type, entry2->type);
+	    if (status)
+		return (status);
+	    /* else fall to filename comparison */
+	}
+	return (strcasecomp(entry1->filename,
+			    entry2->filename));
+    case FILE_BY_DATE:
+	if (entry1->date && entry2->date) {
+	    /*
+	     * Make sure we have the correct length. - FM
+	     */
+	    if (strlen(entry1->date) != 12 ||
+		strlen(entry2->date) != 12) {
+		return (strcasecomp(entry1->filename,
+				    entry2->filename));
+	    }
+	    /*
+	     * Set up for sorting in reverse
+	     * chronological order. - FM
+	     */
+	    if (entry1->date[7] != ' ') {
+		strcpy(date1, "9999");
+		strcpy(time1, (char *) &entry1->date[7]);
+	    } else {
+		strcpy(date1, (char *) &entry1->date[8]);
+		strcpy(time1, "00:00");
+	    }
+	    StrNCpy(month, entry1->date, 3);
+	    month[3] = '\0';
+	    for (i = 0; i < 12; i++) {
+		if (!strcasecomp(month, months[i])) {
+		    break;
+		}
+	    }
+	    i++;
+	    sprintf(month, "%02d", i);
+	    strcat(date1, month);
+	    StrNCat(date1, (char *) &entry1->date[4], 2);
+	    date1[8] = '\0';
+	    if (date1[6] == ' ') {
+		date1[6] = '0';
+	    }
+	    strcat(date1, time1);
+	    if (entry2->date[7] != ' ') {
+		strcpy(date2, "9999");
+		strcpy(time2, (char *) &entry2->date[7]);
+	    } else {
+		strcpy(date2, (char *) &entry2->date[8]);
+		strcpy(time2, "00:00");
+	    }
+	    StrNCpy(month, entry2->date, 3);
+	    month[3] = '\0';
+	    for (i = 0; i < 12; i++) {
+		if (!strcasecomp(month, months[i])) {
+		    break;
+		}
+	    }
+	    i++;
+	    sprintf(month, "%02d", i);
+	    strcat(date2, month);
+	    StrNCat(date2, (char *) &entry2->date[4], 2);
+	    date2[8] = '\0';
+	    if (date2[6] == ' ') {
+		date2[6] = '0';
+	    }
+	    strcat(date2, time2);
+	    /*
+	     * Do the comparison. - FM
+	     */
+	    status = strcasecomp(date2, date1);
+	    if (status)
+		return (status);
+	    /* else fall to filename comparison */
+	}
+	return (strcasecomp(entry1->filename,
+			    entry2->filename));
+    case FILE_BY_NAME:
+    default:
+	return (strcmp(entry1->filename,
+		       entry2->filename));
+    }
+}
+
+/*							HTVMSBrowseDir()
+ *
+ *	This function generates a directory listing as an HTML-object
+ *	for local file URL's.  It assumes the first two elements of
+ *	of the path are a device followed by a directory:
+ *
+ *		file://localhost/device/directory[/[foo]]
+ *
+ *	Will not accept 000000 as a directory name.
+ *	Will offer links to parent through the top directory, unless
+ *	a terminal slash was included in the calling URL.
+ *
+ *	Returns HT_LOADED on success, HTLoadError() messages on error.
+ *
+ *	Developed for Lynx by Foteos Macrides (macrides@sci.wfeb.edu).
+ */
+int HTVMSBrowseDir(const char *address,
+		   HTParentAnchor *anchor,
+		   HTFormat format_out,
+		   HTStream *sink)
+{
+    HTStructured *target;
+    HTStructuredClass targetClass;
+    char *pathname = HTParse(address, "", PARSE_PATH + PARSE_PUNCTUATION);
+    char *tail = NULL;
+    char *title = NULL;
+    char *header = NULL;
+    char *parent = NULL;
+    char *relative = NULL;
+    char *cp, *cp1;
+    int pathend, len;
+    DIR *dp;
+    struct stat file_info;
+    time_t NowTime;
+    static char ThisYear[8];
+    VMSEntryInfo *entry_info = 0;
+    char string_buffer[64];
+
+    HTUnEscape(pathname);
+    CTRACE((tfp, "HTVMSBrowseDir: Browsing `%s\'\n", pathname));
+
+    /*
+     * Require at least two elements (presumably a device and directory) and
+     * disallow the device root (000000 directory).  Symbolic paths (e.g.,
+     * sys$help) should have been translated and expanded (e.g., to
+     * /sys$sysroot/syshlp) before calling this routine.
+     */
+    if (((*pathname != '/') ||
+	 (cp = strchr(pathname + 1, '/')) == NULL ||
+	 *(cp + 1) == '\0' ||
+	 0 == StrNCmp((cp + 1), "000000", 6)) ||
+	(dp = HTVMSopendir(pathname)) == NULL) {
+	FREE(pathname);
+	return HTLoadError(sink, 403, COULD_NOT_ACCESS_DIR);
+    }
+
+    /*
+     * Set up the output stream.
+     */
+    _HTProgress(BUILDING_DIR_LIST);
+    if (UCLYhndl_HTFile_for_unspec >= 0) {
+	HTAnchor_setUCInfoStage(anchor,
+				UCLYhndl_HTFile_for_unspec,
+				UCT_STAGE_PARSER,
+				UCT_SETBY_DEFAULT);
+    }
+    target = HTML_new(anchor, format_out, sink);
+    targetClass = *(target->isa);
+
+    /*
+     * Set up the offset string of the anchor reference, and strings for the
+     * title and header.
+     */
+    cp = strrchr(pathname, '/');	/* find lastslash */
+    StrAllocCopy(tail, (cp + 1));	/* take slash off the beginning */
+    if (*tail != '\0') {
+	StrAllocCopy(title, tail);
+	*cp = '\0';
+	if ((cp1 = strrchr(pathname, '/')) != NULL &&
+	    cp1 != pathname &&
+	    StrNCmp((cp1 + 1), "000000", 6))
+	    StrAllocCopy(parent, (cp1 + 1));
+	*cp = '/';
+    } else {
+	pathname[strlen(pathname) - 1] = '\0';
+	cp = strrchr(pathname, '/');
+	StrAllocCopy(title, (cp + 1));
+	pathname[strlen(pathname)] = '/';
+    }
+    StrAllocCopy(header, pathname);
+
+    /*
+     * Initialize path name for HTStat().
+     */
+    pathend = strlen(pathname);
+    if (*(pathname + pathend - 1) != '/') {
+	StrAllocCat(pathname, "/");
+	pathend++;
+    }
+
+    /*
+     * Output the title and header.
+     */
+    START(HTML_HTML);
+    PUTC('\n');
+    START(HTML_HEAD);
+    PUTC('\n');
+    HTUnEscape(title);
+    START(HTML_TITLE);
+    PUTS(title);
+    PUTS(" directory");
+    END(HTML_TITLE);
+    PUTC('\n');
+    FREE(title);
+    END(HTML_HEAD);
+    PUTC('\n');
+    START(HTML_BODY);
+    PUTC('\n');
+    HTUnEscape(header);
+    START(HTML_H1);
+    PUTS(header);
+    END(HTML_H1);
+    PUTC('\n');
+    if (HTDirReadme == HT_DIR_README_TOP) {
+	FILE *fp;
+
+	if (header[strlen(header) - 1] != '/')
+	    StrAllocCat(header, "/");
+	StrAllocCat(header, HT_DIR_README_FILE);
+	if ((fp = fopen(header, "r")) != NULL) {
+	    START(HTML_PRE);
+	    for (;;) {
+		char c = fgetc(fp);
+
+		if (c == (char) EOF)
+		    break;
+#ifdef NOTDEFINED
+		switch (c) {
+		case '&':
+		case '<':
+		case '>':
+		    PUTC('&');
+		    PUTC('#');
+		    PUTC((char) (c / 10));
+		    PUTC((char) (c % 10));
+		    PUTC(';');
+		    break;
+		default:
+		    PUTC(c);
+		}
+#else
+		PUTC(c);
+#endif /* NOTDEFINED */
+	    }
+	    END(HTML_PRE);
+	    fclose(fp);
+	}
+    }
+    FREE(header);
+    if (parent) {
+	HTSprintf0(&relative, "%s/..", tail);
+	HTStartAnchor(target, "", relative);
+	PUTS("Up to ");
+	HTUnEscape(parent);
+	PUTS(parent);
+	END(HTML_A);
+	START(HTML_P);
+	PUTC('\n');
+	FREE(relative);
+	FREE(parent);
+    }
+
+    /*
+     * Set up the date comparison.
+     */
+    NowTime = time(NULL);
+    strcpy(ThisYear, (char *) ctime(&NowTime) + 20);
+    ThisYear[4] = '\0';
+
+    /*
+     * Now, generate the Btree and put it out to the output stream.
+     */
+    {
+	char dottest = 2;	/* To avoid two strcmp() each time */
+	STRUCT_DIRENT *dirbuf;
+	HTBTree *bt;
+
+	/* Set up sort key and initialize BTree */
+	bt = HTBTree_new((HTComparer) compare_VMSEntryInfo_structs);
+
+	/* Build tree */
+	while ((dirbuf = HTVMSreaddir(dp))) {
+	    HTAtom *encoding = NULL;
+	    HTFormat format;
+
+	    /* Skip if not used */
+	    if (!dirbuf->d_ino) {
+		continue;
+	    }
+
+	    /* Current and parent directories are never shown in list */
+	    if (dottest && (!strcmp(dirbuf->d_name, ".") ||
+			    !strcmp(dirbuf->d_name, ".."))) {
+		dottest--;
+		continue;
+	    }
+
+	    /* Don't show the selective enabling file
+	     * unless version numbers are included */
+	    if (!strcasecomp(dirbuf->d_name, HT_DIR_ENABLE_FILE)) {
+		continue;
+	    }
+
+	    /* Skip files beginning with a dot? */
+	    if ((no_dotfiles || !show_dotfiles) && *dirbuf->d_name == '.') {
+		continue;
+	    }
+
+	    /* OK, make an lstat() and get a key ready. */
+	    *(pathname + pathend) = '\0';
+	    StrAllocCat(pathname, dirbuf->d_name);
+	    if (HTStat(pathname, &file_info)) {
+		/* for VMS the failure here means the file is not readable...
+		   we however continue to browse through the directory... */
+		continue;
+	    }
+	    entry_info = (VMSEntryInfo *) malloc(sizeof(VMSEntryInfo));
+	    if (entry_info == NULL)
+		outofmem(__FILE__, "HTVMSBrowseDir");
+	    entry_info->type = 0;
+	    entry_info->size = 0;
+	    entry_info->date = 0;
+	    entry_info->filename = 0;
+	    entry_info->display = TRUE;
+
+	    /* Get the type */
+	    format = HTFileFormat(dirbuf->d_name, &encoding,
+				  (const char **) &cp);
+	    if (!cp) {
+		if (!StrNCmp(HTAtom_name(format), "application", 11)) {
+		    cp = HTAtom_name(format) + 12;
+		    if (!StrNCmp(cp, "x-", 2))
+			cp += 2;
+		} else
+		    cp = HTAtom_name(format);
+	    }
+	    StrAllocCopy(entry_info->type, cp);
+
+	    StrAllocCopy(entry_info->filename, dirbuf->d_name);
+	    if (S_ISDIR(file_info.st_mode)) {
+		/* strip .DIR part... */
+		char *dot;
+
+		dot = strstr(entry_info->filename, ".DIR");
+		if (dot)
+		    *dot = '\0';
+		LYLowerCase(entry_info->filename);
+		StrAllocCopy(entry_info->type, "Directory");
+	    } else {
+		if ((cp = strstr(entry_info->filename, "READ")) == NULL) {
+		    cp = entry_info->filename;
+		} else {
+		    cp += 4;
+		    if (!StrNCmp(cp, "ME", 2)) {
+			cp += 2;
+			while (cp && *cp && *cp != '.') {
+			    cp++;
+			}
+		    } else if (!StrNCmp(cp, ".ME", 3)) {
+			cp = (entry_info->filename +
+			      strlen(entry_info->filename));
+		    } else {
+			cp = entry_info->filename;
+		    }
+		}
+		LYLowerCase(cp);
+		if (((len = strlen(entry_info->filename)) > 2) &&
+		    entry_info->filename[len - 1] == 'z') {
+		    if (entry_info->filename[len - 2] == '.' ||
+			entry_info->filename[len - 2] == '_')
+			entry_info->filename[len - 1] = 'Z';
+		}
+	    }
+
+	    /* Get the date */
+	    {
+		char *t = (char *) ctime((const time_t *) &file_info.st_ctime);
+
+		*(t + 24) = '\0';
+
+		StrAllocCopy(entry_info->date, (t + 4));
+		*((entry_info->date) + 7) = '\0';
+		if ((atoi((t + 19))) < atoi(ThisYear))
+		    StrAllocCat(entry_info->date, (t + 19));
+		else {
+		    StrAllocCat(entry_info->date, (t + 11));
+		    *((entry_info->date) + 12) = '\0';
+		}
+	    }
+
+	    /* Get the size */
+	    if (!S_ISDIR(file_info.st_mode))
+		entry_info->size = (unsigned int) file_info.st_size;
+	    else
+		entry_info->size = 0;
+
+	    /* Now, update the BTree etc. */
+	    if (entry_info->display) {
+		CTRACE((tfp, "Adding file to BTree: %s\n",
+			entry_info->filename));
+		HTBTree_add(bt, entry_info);
+	    }
+
+	}			/* End while HTVMSreaddir() */
+
+	FREE(pathname);
+	HTVMSclosedir(dp);
+
+	START(HTML_PRE);
+	/*
+	 * Run through the BTree printing out in order
+	 */
+	{
+	    HTBTElement *ele;
+	    int i;
+
+	    for (ele = HTBTree_next(bt, NULL);
+		 ele != NULL;
+		 ele = HTBTree_next(bt, ele)) {
+		entry_info = (VMSEntryInfo *) HTBTree_object(ele);
+
+		/* Output the date */
+		if (entry_info->date) {
+		    PUTS(entry_info->date);
+		    PUTS("  ");
+		} else
+		    PUTS("     * ");
+
+		/* Output the type */
+		if (entry_info->type) {
+		    for (i = 0; entry_info->type[i] != '\0' && i < 15; i++)
+			PUTC(entry_info->type[i]);
+		    for (; i < 17; i++)
+			PUTC(' ');
+
+		}
+
+		/* Output the link for the name */
+		HTDirEntry(target, tail, entry_info->filename);
+		PUTS(entry_info->filename);
+		END(HTML_A);
+
+		/* Output the size */
+		if (entry_info->size) {
+		    if (entry_info->size < 1024)
+			sprintf(string_buffer, "  %d bytes",
+				entry_info->size);
+		    else
+			sprintf(string_buffer, "  %dKb",
+				entry_info->size / 1024);
+		    PUTS(string_buffer);
+		}
+
+		PUTC('\n');	/* end of this entry */
+
+		free_VMSEntryInfo_contents(entry_info);
+	    }
+	}
+
+	HTBTreeAndObject_free(bt);
+
+    }				/* End of both BTree loops */
+
+    /*
+     * Complete the output stream.
+     */
+    END(HTML_PRE);
+    PUTC('\n');
+    END(HTML_BODY);
+    PUTC('\n');
+    END(HTML_HTML);
+    PUTC('\n');
+    FREE(tail);
+    FREE_TARGET;
+
+    return HT_LOADED;
+
+}				/* End of directory reading section */
+
+/*
+ * Remove all versions of the given file.  We assume there are no permissions
+ * problems, since we do this mainly for removing temporary files.
+ */
+int HTVMS_remove(char *filename)
+{
+    int code = remove(filename);	/* return the first status code */
+
+    while (remove(filename) == 0) ;
+    return code;
+}
+
+/*
+ * Remove all older versions of the given file.  We may fail to remove some
+ * version due to permissions -- the loop stops either at that point, or when
+ * we run out of older versions to remove.
+ */
+void HTVMS_purge(char *filename)
+{
+    char *older_file = 0;
+    char *oldest_file = 0;
+    struct stat sb;
+
+    StrAllocCopy(older_file, filename);
+    StrAllocCat(older_file, ";-1");
+
+    while (remove(older_file) == 0) ;
+    /*
+     * If we do not have any more older versions, it is safe to rename the
+     * current file to version #1.
+     */
+    if (stat(older_file, &sb) != 0) {
+	StrAllocCopy(oldest_file, filename);
+	StrAllocCat(oldest_file, ";1");
+	rename(older_file, oldest_file);
+	FREE(oldest_file);
+    }
+
+    FREE(older_file);
+}
+#endif /* VMS */
diff --git a/WWW/Library/Implementation/HTVMSUtils.h b/WWW/Library/Implementation/HTVMSUtils.h
new file mode 100644
index 00000000..d7efe8c4
--- /dev/null
+++ b/WWW/Library/Implementation/HTVMSUtils.h
@@ -0,0 +1,101 @@
+/*             VMS specific routines
+
+ */
+
+#ifndef HTVMSUTIL_H
+#define HTVMSUTIL_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#include <HTAnchor.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern BOOL HTVMSFileVersions;	/* Include version numbers in listing? */
+
+/* PUBLIC							HTVMS_authSysPrv()
+ *		CHECKS IF THIS PROCESS IS AUTHORIZED TO ENABLE SYSPRV
+ * ON ENTRY:
+ *	No arguments.
+ *
+ * ON EXIT:
+ *	returns	YES if SYSPRV is authorized
+ */
+    extern BOOL HTVMS_authSysPrv(void);
+
+/* PUBLIC							HTVMS_enableSysPrv()
+ *		ENABLES SYSPRV
+ * ON ENTRY:
+ *	No arguments.
+ *
+ * ON EXIT:
+ *
+ */
+    extern void HTVMS_enableSysPrv(void);
+
+/* PUBLIC							HTVMS_disableSysPrv()
+ *		DISABLES SYSPRV
+ * ON ENTRY:
+ *	No arguments.
+ *
+ * ON EXIT:
+ *
+ */
+    extern void HTVMS_disableSysPrv(void);
+
+/* PUBLIC							HTVMS_checkAccess()
+ *		CHECKS ACCESS TO FILE FOR CERTAIN USER
+ * ON ENTRY:
+ *	FileName	The file to be accessed
+ *	UserName	Name of the user to check access for
+ *
+ * ON EXIT:
+ *	returns YES if access is allowed
+ *
+ */
+    extern BOOL HTVMS_checkAccess(const char *FileName,
+				  const char *UserName,
+				  const char *Method);
+
+/* PUBLIC							HTVMS_wwwName()
+ *		CONVERTS VMS Name into WWW Name
+ * ON ENTRY:
+ *	vmsname		VMS file specification (NO NODE)
+ *
+ * ON EXIT:
+ *	returns		www file specification
+ *
+ * EXAMPLES:
+ *	vmsname				wwwname
+ *	DISK$USER			disk$user
+ *	DISK$USER:			/disk$user/
+ *	DISK$USER:[DUNS]		/disk$user/duns
+ *	DISK$USER:[DUNS.ECHO]		/disk$user/duns/echo
+ *	[DUNS]				duns
+ *	[DUNS.ECHO]			duns/echo
+ *	[DUNS.ECHO.-.TRANS]		duns/echo/../trans
+ *	[DUNS.ECHO.--.TRANS]		duns/echo/../../trans
+ *	[.DUNS]				duns
+ *	[.DUNS.ECHO]			duns/echo
+ *	[.DUNS.ECHO]TEST.COM		duns/echo/test.com
+ *	TEST.COM			test.com
+ *
+ *
+ */
+    const extern char *HTVMS_wwwName(const char *vmsname);
+
+    extern int HTVMSBrowseDir(const char *address,
+			      HTParentAnchor *anchor,
+			      HTFormat format_out,
+			      HTStream *sink);
+
+    extern int HTVMS_remove(char *filename);
+    extern void HTVMS_purge(char *filename);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* not HTVMSUTIL_H */
diff --git a/WWW/Library/Implementation/HTVMS_WaisProt.c b/WWW/Library/Implementation/HTVMS_WaisProt.c
new file mode 100644
index 00000000..30feae62
--- /dev/null
+++ b/WWW/Library/Implementation/HTVMS_WaisProt.c
@@ -0,0 +1,2469 @@
+/*
+ * $LynxId: HTVMS_WaisProt.c,v 1.9 2010/09/24 23:51:22 tom Exp $
+ *
+ *							  HTVMS_WAISProt.c
+ *
+ *	Adaptation for Lynx by F.Macrides (macrides@sci.wfeb.edu)
+ *
+ *	31-May-1994 FM	Initial version.
+ *
+ *----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from WProt.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* WIDE AREA INFORMATION SERVER SOFTWARE:
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+
+ * 3.26.90	Harry Morris, morris@think.com
+ * 3.30.90  Harry Morris
+ * -	removed chunk code from WAISSearchAPDU,
+ * -	added makeWAISQueryType1Query() and readWAISType1Query() which replace
+ * makeWAISQueryTerms() and makeWAISQueryDocs().
+ * 4.11.90  HWM - generalized conditional includes (see c-dialect.h)
+ * - renamed makeWAISType1Query() to makeWAISTextQuery()
+ * renamed readWAISType1Query() to readWAISTextQuery()
+ * 5.29.90  TS - fixed bug in makeWAISQueryDocs
+ * added CSTFreeWAISFoo functions
+ */
+
+#define _C_WAIS_protocol_
+
+/*	This file implements the Z39.50 extensions required for WAIS
+*/
+
+#include <HTUtils.h>
+#include <HTVMS_WaisUI.h>
+#include <HTVMS_WaisProt.h>
+
+#include <LYLeaks.h>
+
+/* very rough estimates of the size of an object */
+#define DefWAISInitResponseSize		(size_t)200
+#define DefWAISSearchSize			(size_t)3000
+#define DefWAISSearchResponseSize	(size_t)6000
+#define DefWAISPresentSize			(size_t)1000
+#define DefWAISPresentResponseSize	(size_t)6000
+#define DefWAISDocHeaderSize		(size_t)500
+#define DefWAISShortHeaderSize		(size_t)200
+#define DefWAISLongHeaderSize		(size_t)800
+#define DefWAISDocTextSize			(size_t)6000
+#define DefWAISDocHeadlineSize		(size_t)500
+#define DefWAISDocCodeSize			(size_t)500
+
+#define RESERVE_SPACE_FOR_WAIS_HEADER(len)	\
+     if (*len > 0)				\
+	*len -= header_len;
+
+#define S_MALLOC(type) (type*)s_malloc(sizeof(type))
+#define S_MALLOC2(type) (type*)s_malloc(sizeof(type) * 2)
+
+#define S_REALLOC2(type, ptr, num) (type*)s_realloc((char*)ptr, (sizeof(type) * (num + 2)))
+
+/*----------------------------------------------------------------------*/
+
+static unsigned long userInfoTagSize(data_tag tag,
+				     unsigned long length)
+/* return the number of bytes required to write the user info tag and
+   length
+ */
+{
+    unsigned long size;
+
+    /* calculate bytes required to represent tag.  max tag is 16K */
+    size = writtenCompressedIntSize(tag);
+    size += writtenCompressedIntSize(length);
+
+    return (size);
+}
+
+/*----------------------------------------------------------------------*/
+
+static char *writeUserInfoHeader(data_tag tag,
+				 long infoSize,
+				 long estHeaderSize,
+				 char *buffer,
+				 long *len)
+/* write the tag and size, making sure the info fits.  return the true end
+   of the info (after adjustment) note that the argument infoSize includes
+   estHeaderSize.  Note that the argument len is the number of bytes remaining
+   in the buffer.  Since we write the tag and size at the begining of the
+   buffer (in space that we reserved) we don't want to pass len the calls which
+   do that writing.
+ */
+{
+    long dummyLen = 100;	/* plenty of space for a tag and size */
+    char *buf = buffer;
+    long realSize = infoSize - estHeaderSize;
+    long realHeaderSize = userInfoTagSize(tag, realSize);
+
+    if (buffer == NULL || *len == 0)
+	return (NULL);
+
+    /* write the tag */
+    buf = writeTag(tag, buf, &dummyLen);
+
+    /* see if the if the header size was correct. if not,
+       we have to shift the info to fit the real header size */
+    if (estHeaderSize != realHeaderSize) {	/* make sure there is enough space */
+	CHECK_FOR_SPACE_LEFT(realHeaderSize - estHeaderSize, len);
+	memmove(buffer + realHeaderSize, buffer + estHeaderSize, (size_t) (realSize));
+    }
+
+    /* write the size */
+    writeCompressedInteger(realSize, buf, &dummyLen);
+
+    /* return the true end of buffer */
+    return (buffer + realHeaderSize + realSize);
+}
+
+/*----------------------------------------------------------------------*/
+
+static char *readUserInfoHeader(data_tag *tag,
+				unsigned long *num,
+				char *buffer)
+/* read the tag and size */
+{
+    char *buf = buffer;
+
+    buf = readTag(tag, buf);
+    buf = readCompressedInteger(num, buf);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+WAISInitResponse *makeWAISInitResponse(long chunkCode,
+				       long chunkIDLen,
+				       char *chunkMarker,
+				       char *highlightMarker,
+				       char *deHighlightMarker,
+				       char *newLineChars)
+/* create a WAIS init response object */
+{
+    WAISInitResponse *init = S_MALLOC(WAISInitResponse);
+
+    init->ChunkCode = chunkCode;	/* note: none are copied! */
+    init->ChunkIDLength = chunkIDLen;
+    init->ChunkMarker = chunkMarker;
+    init->HighlightMarker = highlightMarker;
+    init->DeHighlightMarker = deHighlightMarker;
+    init->NewlineCharacters = newLineChars;
+
+    return (init);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeWAISInitResponse(WAISInitResponse *init)
+/* free an object made with makeWAISInitResponse */
+{
+    s_free(init->ChunkMarker);
+    s_free(init->HighlightMarker);
+    s_free(init->DeHighlightMarker);
+    s_free(init->NewlineCharacters);
+    s_free(init);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeInitResponseInfo(InitResponseAPDU *init,
+			    char *buffer,
+			    long *len)
+/* write an init response object */
+{
+    unsigned long header_len = userInfoTagSize(DT_UserInformationLength,
+					       DefWAISInitResponseSize);
+    char *buf = buffer + header_len;
+    WAISInitResponse *info = (WAISInitResponse *) init->UserInformationField;
+    unsigned long size;
+
+    RESERVE_SPACE_FOR_WAIS_HEADER(len);
+
+    buf = writeNum(info->ChunkCode, DT_ChunkCode, buf, len);
+    buf = writeNum(info->ChunkIDLength, DT_ChunkIDLength, buf, len);
+    buf = writeString(info->ChunkMarker, DT_ChunkMarker, buf, len);
+    buf = writeString(info->HighlightMarker, DT_HighlightMarker, buf, len);
+    buf = writeString(info->DeHighlightMarker, DT_DeHighlightMarker, buf, len);
+    buf = writeString(info->NewlineCharacters, DT_NewlineCharacters, buf, len);
+
+    /* now write the header and size */
+    size = buf - buffer;
+    buf = writeUserInfoHeader(DT_UserInformationLength,
+			      size,
+			      header_len,
+			      buffer,
+			      len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readInitResponseInfo(void **info,
+			   char *buffer)
+/* read an init response object */
+{
+    char *buf = buffer;
+    unsigned long size;
+    unsigned long headerSize;
+    long chunkCode, chunkIDLen;
+    data_tag tag1;
+    char *chunkMarker = NULL;
+    char *highlightMarker = NULL;
+    char *deHighlightMarker = NULL;
+    char *newLineChars = NULL;
+
+    chunkCode = chunkIDLen = UNUSED;
+
+    buf = readUserInfoHeader(&tag1, &size, buf);
+    headerSize = buf - buffer;
+
+    while (buf < (buffer + size + headerSize)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_ChunkCode:
+	    buf = readNum(&chunkCode, buf);
+	    break;
+	case DT_ChunkIDLength:
+	    buf = readNum(&chunkIDLen, buf);
+	    break;
+	case DT_ChunkMarker:
+	    buf = readString(&chunkMarker, buf);
+	    break;
+	case DT_HighlightMarker:
+	    buf = readString(&highlightMarker, buf);
+	    break;
+	case DT_DeHighlightMarker:
+	    buf = readString(&deHighlightMarker, buf);
+	    break;
+	case DT_NewlineCharacters:
+	    buf = readString(&newLineChars, buf);
+	    break;
+	default:
+	    s_free(highlightMarker);
+	    s_free(deHighlightMarker);
+	    s_free(newLineChars);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    *info = (void *) makeWAISInitResponse(chunkCode, chunkIDLen, chunkMarker,
+					  highlightMarker, deHighlightMarker,
+					  newLineChars);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+WAISSearch *makeWAISSearch(char *seedWords,
+			   DocObj **docs,
+			   char **textList,
+			   long dateFactor,
+			   char *beginDateRange,
+			   char *endDateRange,
+			   long maxDocsRetrieved)
+
+/* create a type 3 query object */
+{
+    WAISSearch *query = S_MALLOC(WAISSearch);
+
+    query->SeedWords = seedWords;	/* not copied! */
+    query->Docs = docs;		/* not copied! */
+    query->TextList = textList;	/* not copied! */
+    query->DateFactor = dateFactor;
+    query->BeginDateRange = beginDateRange;
+    query->EndDateRange = endDateRange;
+    query->MaxDocumentsRetrieved = maxDocsRetrieved;
+
+    return (query);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeWAISSearch(WAISSearch *query)
+
+/* destroy an object made with makeWAISSearch() */
+{
+    void *ptr = NULL;
+    long i;
+
+    s_free(query->SeedWords);
+
+    if (query->Docs != NULL)
+	for (i = 0, ptr = (void *) query->Docs[i];
+	     ptr != NULL;
+	     ptr = (void *) query->Docs[++i])
+	    freeDocObj((DocObj *) ptr);
+    s_free(query->Docs);
+
+    if (query->TextList != NULL)	/* XXX revisit when textlist is fully defined */
+	for (i = 0, ptr = (void *) query->TextList[i];
+	     ptr != NULL;
+	     ptr = (void *) query->TextList[++i])
+	    s_free(ptr);
+    s_free(query->TextList);
+
+    s_free(query->BeginDateRange);
+    s_free(query->EndDateRange);
+    s_free(query);
+}
+
+/*----------------------------------------------------------------------*/
+
+DocObj *makeDocObjUsingWholeDocument(any *docID,
+				     char *type)
+
+/* construct a document object using byte chunks - only for use by
+   servers */
+{
+    DocObj *doc = S_MALLOC(DocObj);
+
+    doc->DocumentID = docID;	/* not copied! */
+    doc->Type = type;		/* not copied! */
+    doc->ChunkCode = CT_document;
+    return (doc);
+}
+
+/*----------------------------------------------------------------------*/
+
+DocObj *makeDocObjUsingLines(any *docID,
+			     char *type,
+			     long start,
+			     long end)
+
+/* construct a document object using line chunks - only for use by
+   servers */
+{
+    DocObj *doc = S_MALLOC(DocObj);
+
+    doc->ChunkCode = CT_line;
+    doc->DocumentID = docID;	/* not copied */
+    doc->Type = type;		/* not copied! */
+    doc->ChunkStart.Pos = start;
+    doc->ChunkEnd.Pos = end;
+    return (doc);
+}
+
+/*----------------------------------------------------------------------*/
+
+DocObj *makeDocObjUsingBytes(any *docID,
+			     char *type,
+			     long start,
+			     long end)
+
+/* construct a document object using byte chunks - only for use by
+   servers */
+{
+    DocObj *doc = S_MALLOC(DocObj);
+
+    doc->ChunkCode = CT_byte;
+    doc->DocumentID = docID;	/* not copied */
+    doc->Type = type;		/* not copied! */
+    doc->ChunkStart.Pos = start;
+    doc->ChunkEnd.Pos = end;
+    return (doc);
+}
+
+/*----------------------------------------------------------------------*/
+
+DocObj *makeDocObjUsingParagraphs(any *docID,
+				  char *type,
+				  any *start,
+				  any *end)
+
+/* construct a document object using byte chunks - only for use by
+   servers */
+{
+    DocObj *doc = S_MALLOC(DocObj);
+
+    doc->ChunkCode = CT_paragraph;
+    doc->DocumentID = docID;	/* not copied */
+    doc->Type = type;
+    doc->ChunkStart.ID = start;
+    doc->ChunkEnd.ID = end;
+    return (doc);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeDocObj(DocObj *doc)
+
+/* free a docObj */
+{
+    freeAny(doc->DocumentID);
+    s_free(doc->Type);
+    if (doc->ChunkCode == CT_paragraph) {
+	freeAny(doc->ChunkStart.ID);
+	freeAny(doc->ChunkEnd.ID);
+    }
+    s_free(doc);
+}
+
+/*----------------------------------------------------------------------*/
+
+static char *writeDocObj(DocObj *doc,
+			 char *buffer,
+			 long *len)
+
+/* write as little as we can about the doc obj */
+{
+    char *buf = buffer;
+
+    /* we alwasy have to write the id, but its tag depends on if its a chunk */
+    if (doc->ChunkCode == CT_document)
+	buf = writeAny(doc->DocumentID, DT_DocumentID, buf, len);
+    else
+	buf = writeAny(doc->DocumentID, DT_DocumentIDChunk, buf, len);
+
+    if (doc->Type != NULL)
+	buf = writeString(doc->Type, DT_TYPE, buf, len);
+
+    switch (doc->ChunkCode) {
+    case CT_document:
+	/* do nothing - there is no chunk data */
+	break;
+    case CT_byte:
+    case CT_line:
+	buf = writeNum(doc->ChunkCode, DT_ChunkCode, buf, len);
+	buf = writeNum(doc->ChunkStart.Pos, DT_ChunkStartID, buf, len);
+	buf = writeNum(doc->ChunkEnd.Pos, DT_ChunkEndID, buf, len);
+	break;
+    case CT_paragraph:
+	buf = writeNum(doc->ChunkCode, DT_ChunkCode, buf, len);
+	buf = writeAny(doc->ChunkStart.ID, DT_ChunkStartID, buf, len);
+	buf = writeAny(doc->ChunkEnd.ID, DT_ChunkEndID, buf, len);
+	break;
+    default:
+	panic("Implementation error: unknown chuck type %ld",
+	      doc->ChunkCode);
+	break;
+    }
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+static char *readDocObj(DocObj **doc,
+			char *buffer)
+
+/* read whatever we have about the new document */
+{
+    char *buf = buffer;
+    data_tag tag;
+
+    *doc = S_MALLOC(DocObj);
+
+    tag = peekTag(buf);
+    buf = readAny(&((*doc)->DocumentID), buf);
+
+    if (tag == DT_DocumentID) {
+	(*doc)->ChunkCode = CT_document;
+	tag = peekTag(buf);
+	if (tag == DT_TYPE)	/* XXX depends on DT_TYPE != what comes next */
+	    buf = readString(&((*doc)->Type), buf);
+	/* ChunkStart and ChunkEnd are undefined */
+    } else if (tag == DT_DocumentIDChunk) {
+	boolean readParagraphs = false;		/* for cleanup */
+
+	tag = peekTag(buf);
+	if (tag == DT_TYPE)	/* XXX depends on DT_TYPE != CT_FOO */
+	    buf = readString(&((*doc)->Type), buf);
+	buf = readNum(&((*doc)->ChunkCode), buf);
+	switch ((*doc)->ChunkCode) {
+	case CT_byte:
+	case CT_line:
+	    buf = readNum(&((*doc)->ChunkStart.Pos), buf);
+	    buf = readNum(&((*doc)->ChunkEnd.Pos), buf);
+	    break;
+	case CT_paragraph:
+	    buf = readAny(&((*doc)->ChunkStart.ID), buf);
+	    buf = readAny(&((*doc)->ChunkEnd.ID), buf);
+	    break;
+	default:
+	    freeAny((*doc)->DocumentID);
+	    if (readParagraphs) {
+		freeAny((*doc)->ChunkStart.ID);
+		freeAny((*doc)->ChunkEnd.ID);
+	    }
+	    s_free(doc);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    } else {
+	freeAny((*doc)->DocumentID);
+	s_free(*doc);
+	REPORT_READ_ERROR(buf);
+    }
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeSearchInfo(SearchAPDU *query,
+		      char *buffer,
+		      long *len)
+
+/* write out a WAIS query (type 1 or 3) */
+{
+    if (strcmp(query->QueryType, QT_TextRetrievalQuery) == 0) {
+	return (writeAny((any *) query->Query, DT_Query, buffer, len));
+    } else {
+	unsigned long header_len = userInfoTagSize(DT_UserInformationLength,
+						   DefWAISSearchSize);
+	char *buf = buffer + header_len;
+	WAISSearch *info = (WAISSearch *) query->Query;
+	unsigned long size;
+	long i;
+
+	RESERVE_SPACE_FOR_WAIS_HEADER(len);
+
+	buf = writeString(info->SeedWords, DT_SeedWords, buf, len);
+
+	if (info->Docs != NULL) {
+	    for (i = 0; info->Docs[i] != NULL; i++) {
+		buf = writeDocObj(info->Docs[i], buf, len);
+	    }
+	}
+
+	/* XXX text list */
+
+	buf = writeNum(info->DateFactor,
+		       DT_DateFactor,
+		       buf,
+		       len);
+	buf = writeString(info->BeginDateRange,
+			  DT_BeginDateRange,
+			  buf,
+			  len);
+	buf = writeString(info->EndDateRange,
+			  DT_EndDateRange,
+			  buf,
+			  len);
+	buf = writeNum(info->MaxDocumentsRetrieved,
+		       DT_MaxDocumentsRetrieved,
+		       buf,
+		       len);
+
+	/* now write the header and size */
+	size = buf - buffer;
+	buf = writeUserInfoHeader(DT_UserInformationLength,
+				  size,
+				  header_len,
+				  buffer,
+				  len);
+
+	return (buf);
+    }
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readSearchInfo(void **info,
+		     char *buffer)
+
+/* read a WAIS query (type 1 or 3) */
+{
+    data_tag type = peekTag(buffer);
+
+    if (type == DT_Query)	/* this is a type 1 query */
+    {
+	char *buf = buffer;
+	any *query = NULL;
+
+	buf = readAny(&query, buf);
+	*info = (void *) query;
+	return (buf);
+    } else {			/* a type 3 query */
+	char *buf = buffer;
+	unsigned long size;
+	unsigned long headerSize;
+	data_tag tag1;
+	char *seedWords = NULL;
+	char *beginDateRange = NULL;
+	char *endDateRange = NULL;
+	long dateFactor, maxDocsRetrieved;
+	char **textList = NULL;
+	DocObj **docIDs = NULL;
+	DocObj *doc = NULL;
+	long docs = 0;
+	long i;
+	void *ptr = NULL;
+
+	dateFactor = maxDocsRetrieved = UNUSED;
+
+	buf = readUserInfoHeader(&tag1, &size, buf);
+	headerSize = buf - buffer;
+
+	while (buf < (buffer + size + headerSize)) {
+	    data_tag tag = peekTag(buf);
+
+	    switch (tag) {
+	    case DT_SeedWords:
+		buf = readString(&seedWords, buf);
+		break;
+	    case DT_DocumentID:
+	    case DT_DocumentIDChunk:
+		if (docIDs == NULL)	/* create a new doc list */
+		{
+		    docIDs = S_MALLOC2(DocObj *);
+		} else {	/* grow the doc list */
+		    docIDs = S_REALLOC2(DocObj *, docIDs, docs);
+		}
+		buf = readDocObj(&doc, buf);
+		if (buf == NULL) {
+		    s_free(seedWords);
+		    s_free(beginDateRange);
+		    s_free(endDateRange);
+		    if (docIDs != NULL)
+			for (i = 0, ptr = (void *) docIDs[i];
+			     ptr != NULL;
+			     ptr = (void *) docIDs[++i])
+			    freeDocObj((DocObj *) ptr);
+		    s_free(docIDs);
+		    /* XXX should also free textlist when it is fully defined */
+		}
+		RETURN_ON_NULL(buf);
+		docIDs[docs++] = doc;	/* put it in the list */
+		docIDs[docs] = NULL;
+		break;
+	    case DT_TextList:
+		/* XXX */
+		break;
+	    case DT_DateFactor:
+		buf = readNum(&dateFactor, buf);
+		break;
+	    case DT_BeginDateRange:
+		buf = readString(&beginDateRange, buf);
+		break;
+	    case DT_EndDateRange:
+		buf = readString(&endDateRange, buf);
+		break;
+	    case DT_MaxDocumentsRetrieved:
+		buf = readNum(&maxDocsRetrieved, buf);
+		break;
+	    default:
+		s_free(seedWords);
+		s_free(beginDateRange);
+		s_free(endDateRange);
+		if (docIDs != NULL)
+		    for (i = 0, ptr = (void *) docIDs[i];
+			 ptr != NULL;
+			 ptr = (void *) docIDs[++i])
+			freeDocObj((DocObj *) ptr);
+		s_free(docIDs);
+		/* XXX should also free textlist when it is fully defined */
+		REPORT_READ_ERROR(buf);
+		break;
+	    }
+	}
+
+	*info = (void *) makeWAISSearch(seedWords, docIDs, textList,
+					dateFactor, beginDateRange, endDateRange,
+					maxDocsRetrieved);
+	return (buf);
+    }
+}
+
+/*----------------------------------------------------------------------*/
+
+WAISDocumentHeader *makeWAISDocumentHeader(any *docID,
+					   long versionNumber,
+					   long score,
+					   long bestMatch,
+					   long docLen,
+					   long lines,
+					   char **types,
+					   char *source,
+					   char *date,
+					   char *headline,
+					   char *originCity)
+
+/* construct a standard document header, note that no fields are copied!
+   if the application needs to save these fields, it should copy them,
+   or set the field in this object to NULL before freeing it.
+ */
+{
+    WAISDocumentHeader *header = S_MALLOC(WAISDocumentHeader);
+
+    header->DocumentID = docID;
+    header->VersionNumber = versionNumber;
+    header->Score = score;
+    header->BestMatch = bestMatch;
+    header->DocumentLength = docLen;
+    header->Lines = lines;
+    header->Types = types;
+    header->Source = source;
+    header->Date = date;
+    header->Headline = headline;
+    header->OriginCity = originCity;
+
+    return (header);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeWAISDocumentHeader(WAISDocumentHeader *header)
+{
+    freeAny(header->DocumentID);
+    doList((void **) header->Types, fs_free);	/* can't use the macro here ! */
+    s_free(header->Types);
+    s_free(header->Source);
+    s_free(header->Date);
+    s_free(header->Headline);
+    s_free(header->OriginCity);
+    s_free(header);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeWAISDocumentHeader(WAISDocumentHeader *header, char *buffer,
+			      long *len)
+{
+    unsigned long header_len = userInfoTagSize(DT_DocumentHeaderGroup,
+					       DefWAISDocHeaderSize);
+    char *buf = buffer + header_len;
+    unsigned long size1;
+
+    RESERVE_SPACE_FOR_WAIS_HEADER(len);
+
+    buf = writeAny(header->DocumentID, DT_DocumentID, buf, len);
+    buf = writeNum(header->VersionNumber, DT_VersionNumber, buf, len);
+    buf = writeNum(header->Score, DT_Score, buf, len);
+    buf = writeNum(header->BestMatch, DT_BestMatch, buf, len);
+    buf = writeNum(header->DocumentLength, DT_DocumentLength, buf, len);
+    buf = writeNum(header->Lines, DT_Lines, buf, len);
+    if (header->Types != NULL) {
+	long size;
+	char *ptr = NULL;
+	long i;
+
+	buf = writeTag(DT_TYPE_BLOCK, buf, len);
+	for (i = 0, size = 0, ptr = header->Types[i];
+	     ptr != NULL;
+	     ptr = header->Types[++i]) {
+	    long typeSize = strlen(ptr);
+
+	    size += writtenTagSize(DT_TYPE);
+	    size += writtenCompressedIntSize(typeSize);
+	    size += typeSize;
+	}
+	buf = writeCompressedInteger((unsigned long) size, buf, len);
+	for (i = 0, ptr = header->Types[i]; ptr != NULL; ptr = header->Types[++i])
+	    buf = writeString(ptr, DT_TYPE, buf, len);
+    }
+    buf = writeString(header->Source, DT_Source, buf, len);
+    buf = writeString(header->Date, DT_Date, buf, len);
+    buf = writeString(header->Headline, DT_Headline, buf, len);
+    buf = writeString(header->OriginCity, DT_OriginCity, buf, len);
+
+    /* now write the header and size */
+    size1 = buf - buffer;
+    buf = writeUserInfoHeader(DT_DocumentHeaderGroup,
+			      size1,
+			      header_len,
+			      buffer,
+			      len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readWAISDocumentHeader(WAISDocumentHeader **header, char *buffer)
+{
+    char *buf = buffer;
+    unsigned long size1;
+    unsigned long headerSize;
+    data_tag tag1;
+    any *docID = NULL;
+    long versionNumber, score, bestMatch, docLength, lines;
+    char **types = NULL;
+    char *source = NULL;
+    char *date = NULL;
+    char *headline = NULL;
+    char *originCity = NULL;
+
+    versionNumber = score = bestMatch = docLength = lines = UNUSED;
+
+    buf = readUserInfoHeader(&tag1, &size1, buf);
+    headerSize = buf - buffer;
+
+    while (buf < (buffer + size1 + headerSize)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_DocumentID:
+	    buf = readAny(&docID, buf);
+	    break;
+	case DT_VersionNumber:
+	    buf = readNum(&versionNumber, buf);
+	    break;
+	case DT_Score:
+	    buf = readNum(&score, buf);
+	    break;
+	case DT_BestMatch:
+	    buf = readNum(&bestMatch, buf);
+	    break;
+	case DT_DocumentLength:
+	    buf = readNum(&docLength, buf);
+	    break;
+	case DT_Lines:
+	    buf = readNum(&lines, buf);
+	    break;
+	case DT_TYPE_BLOCK:
+	    {
+		unsigned long size = -1;
+		long numTypes = 0;
+
+		buf = readTag(&tag, buf);
+		buf = readCompressedInteger(&size, buf);
+		while (size > 0) {
+		    char *type = NULL;
+		    char *originalBuf = buf;
+
+		    buf = readString(&type, buf);
+		    types = S_REALLOC2(char *, types, numTypes);
+
+		    types[numTypes++] = type;
+		    types[numTypes] = NULL;
+		    size -= (buf - originalBuf);
+		}
+	    }
+	    /* FALLTHRU */
+	case DT_Source:
+	    buf = readString(&source, buf);
+	    break;
+	case DT_Date:
+	    buf = readString(&date, buf);
+	    break;
+	case DT_Headline:
+	    buf = readString(&headline, buf);
+	    break;
+	case DT_OriginCity:
+	    buf = readString(&originCity, buf);
+	    break;
+	default:
+	    freeAny(docID);
+	    s_free(source);
+	    s_free(date);
+	    s_free(headline);
+	    s_free(originCity);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    *header = makeWAISDocumentHeader(docID, versionNumber, score, bestMatch,
+				     docLength, lines, types, source, date, headline,
+				     originCity);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+WAISDocumentShortHeader *makeWAISDocumentShortHeader(any *docID,
+						     long versionNumber,
+						     long score,
+						     long bestMatch,
+						     long docLen,
+						     long lines)
+/* construct a short document header, note that no fields are copied!
+   if the application needs to save these fields, it should copy them,
+   or set the field in this object to NULL before freeing it.
+ */
+{
+    WAISDocumentShortHeader *header = S_MALLOC(WAISDocumentShortHeader);
+
+    header->DocumentID = docID;
+    header->VersionNumber = versionNumber;
+    header->Score = score;
+    header->BestMatch = bestMatch;
+    header->DocumentLength = docLen;
+    header->Lines = lines;
+
+    return (header);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeWAISDocumentShortHeader(WAISDocumentShortHeader *header)
+{
+    freeAny(header->DocumentID);
+    s_free(header);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeWAISDocumentShortHeader(WAISDocumentShortHeader *header, char *buffer,
+				   long *len)
+{
+    unsigned long header_len = userInfoTagSize(DT_DocumentShortHeaderGroup,
+					       DefWAISShortHeaderSize);
+    char *buf = buffer + header_len;
+    unsigned long size;
+
+    RESERVE_SPACE_FOR_WAIS_HEADER(len);
+
+    buf = writeAny(header->DocumentID, DT_DocumentID, buf, len);
+    buf = writeNum(header->VersionNumber, DT_VersionNumber, buf, len);
+    buf = writeNum(header->Score, DT_Score, buf, len);
+    buf = writeNum(header->BestMatch, DT_BestMatch, buf, len);
+    buf = writeNum(header->DocumentLength, DT_DocumentLength, buf, len);
+    buf = writeNum(header->Lines, DT_Lines, buf, len);
+
+    /* now write the header and size */
+    size = buf - buffer;
+    buf = writeUserInfoHeader(DT_DocumentShortHeaderGroup,
+			      size,
+			      header_len,
+			      buffer,
+			      len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readWAISDocumentShortHeader(WAISDocumentShortHeader **header, char *buffer)
+{
+    char *buf = buffer;
+    unsigned long size;
+    unsigned long headerSize;
+    data_tag tag1;
+    any *docID = NULL;
+    long versionNumber, score, bestMatch, docLength, lines;
+
+    versionNumber = score = bestMatch = docLength = lines = UNUSED;
+
+    buf = readUserInfoHeader(&tag1, &size, buf);
+    headerSize = buf - buffer;
+
+    while (buf < (buffer + size + headerSize)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_DocumentID:
+	    buf = readAny(&docID, buf);
+	    break;
+	case DT_VersionNumber:
+	    buf = readNum(&versionNumber, buf);
+	    break;
+	case DT_Score:
+	    buf = readNum(&score, buf);
+	    break;
+	case DT_BestMatch:
+	    buf = readNum(&bestMatch, buf);
+	    break;
+	case DT_DocumentLength:
+	    buf = readNum(&docLength, buf);
+	    break;
+	case DT_Lines:
+	    buf = readNum(&lines, buf);
+	    break;
+	default:
+	    freeAny(docID);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    *header = makeWAISDocumentShortHeader(docID, versionNumber, score, bestMatch,
+					  docLength, lines);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+WAISDocumentLongHeader *makeWAISDocumentLongHeader(any *docID,
+						   long versionNumber,
+						   long score,
+						   long bestMatch,
+						   long docLen,
+						   long lines,
+						   char **types,
+						   char *source,
+						   char *date,
+						   char *headline,
+						   char *originCity,
+						   char *stockCodes,
+						   char *companyCodes,
+						   char *industryCodes)
+/* construct a long document header, note that no fields are copied!
+   if the application needs to save these fields, it should copy them,
+   or set the field in this object to NULL before freeing it.
+ */
+{
+    WAISDocumentLongHeader *header = S_MALLOC(WAISDocumentLongHeader);
+
+    header->DocumentID = docID;
+    header->VersionNumber = versionNumber;
+    header->Score = score;
+    header->BestMatch = bestMatch;
+    header->DocumentLength = docLen;
+    header->Lines = lines;
+    header->Types = types;
+    header->Source = source;
+    header->Date = date;
+    header->Headline = headline;
+    header->OriginCity = originCity;
+    header->StockCodes = stockCodes;
+    header->CompanyCodes = companyCodes;
+    header->IndustryCodes = industryCodes;
+
+    return (header);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeWAISDocumentLongHeader(WAISDocumentLongHeader *header)
+{
+    freeAny(header->DocumentID);
+    doList((void **) header->Types, fs_free);	/* can't use the macro here! */
+    s_free(header->Source);
+    s_free(header->Date);
+    s_free(header->Headline);
+    s_free(header->OriginCity);
+    s_free(header->StockCodes);
+    s_free(header->CompanyCodes);
+    s_free(header->IndustryCodes);
+    s_free(header);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeWAISDocumentLongHeader(WAISDocumentLongHeader *header, char *buffer,
+				  long *len)
+{
+    unsigned long header_len = userInfoTagSize(DT_DocumentLongHeaderGroup,
+					       DefWAISLongHeaderSize);
+    char *buf = buffer + header_len;
+    unsigned long size1;
+
+    RESERVE_SPACE_FOR_WAIS_HEADER(len);
+
+    buf = writeAny(header->DocumentID, DT_DocumentID, buf, len);
+    buf = writeNum(header->VersionNumber, DT_VersionNumber, buf, len);
+    buf = writeNum(header->Score, DT_Score, buf, len);
+    buf = writeNum(header->BestMatch, DT_BestMatch, buf, len);
+    buf = writeNum(header->DocumentLength, DT_DocumentLength, buf, len);
+    buf = writeNum(header->Lines, DT_Lines, buf, len);
+    if (header->Types != NULL) {
+	long size;
+	char *ptr = NULL;
+	long i;
+
+	buf = writeTag(DT_TYPE_BLOCK, buf, len);
+	for (i = 0, size = 0, ptr = header->Types[i];
+	     ptr != NULL;
+	     ptr = header->Types[++i]) {
+	    long typeSize = strlen(ptr);
+
+	    size += writtenTagSize(DT_TYPE);
+	    size += writtenCompressedIntSize(typeSize);
+	    size += typeSize;
+	}
+	buf = writeCompressedInteger((unsigned long) size, buf, len);
+	for (i = 0, ptr = header->Types[i]; ptr != NULL; ptr = header->Types[++i])
+	    buf = writeString(ptr, DT_TYPE, buf, len);
+    }
+    buf = writeString(header->Source, DT_Source, buf, len);
+    buf = writeString(header->Date, DT_Date, buf, len);
+    buf = writeString(header->Headline, DT_Headline, buf, len);
+    buf = writeString(header->OriginCity, DT_OriginCity, buf, len);
+    buf = writeString(header->StockCodes, DT_StockCodes, buf, len);
+    buf = writeString(header->CompanyCodes, DT_CompanyCodes, buf, len);
+    buf = writeString(header->IndustryCodes, DT_IndustryCodes, buf, len);
+
+    /* now write the header and size */
+    size1 = buf - buffer;
+    buf = writeUserInfoHeader(DT_DocumentLongHeaderGroup,
+			      size1,
+			      header_len,
+			      buffer,
+			      len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readWAISDocumentLongHeader(WAISDocumentLongHeader **header, char *buffer)
+{
+    char *buf = buffer;
+    unsigned long size1;
+    unsigned long headerSize;
+    data_tag tag1;
+    any *docID;
+    long versionNumber, score, bestMatch, docLength, lines;
+    char **types;
+    char *source, *date, *headline, *originCity, *stockCodes, *companyCodes, *industryCodes;
+
+    docID = NULL;
+    versionNumber =
+	score =
+	bestMatch =
+	docLength =
+	lines = UNUSED;
+    types = NULL;
+    source =
+	date =
+	headline =
+	originCity =
+	stockCodes =
+	companyCodes =
+	industryCodes = NULL;
+
+    buf = readUserInfoHeader(&tag1, &size1, buf);
+    headerSize = buf - buffer;
+
+    while (buf < (buffer + size1 + headerSize)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_DocumentID:
+	    buf = readAny(&docID, buf);
+	    break;
+	case DT_VersionNumber:
+	    buf = readNum(&versionNumber, buf);
+	    break;
+	case DT_Score:
+	    buf = readNum(&score, buf);
+	    break;
+	case DT_BestMatch:
+	    buf = readNum(&bestMatch, buf);
+	    break;
+	case DT_DocumentLength:
+	    buf = readNum(&docLength, buf);
+	    break;
+	case DT_Lines:
+	    buf = readNum(&lines, buf);
+	    break;
+	case DT_TYPE_BLOCK:
+	    {
+		unsigned long size = -1;
+		long numTypes = 0;
+
+		buf = readTag(&tag, buf);
+		readCompressedInteger(&size, buf);
+		while (size > 0) {
+		    char *type = NULL;
+		    char *originalBuf = buf;
+
+		    buf = readString(&type, buf);
+		    types = S_REALLOC2(char *, types, numTypes);
+
+		    types[numTypes++] = type;
+		    types[numTypes] = NULL;
+		    size -= (buf - originalBuf);
+		}
+	    }
+	    /* FALLTHRU */
+	case DT_Source:
+	    buf = readString(&source, buf);
+	    break;
+	case DT_Date:
+	    buf = readString(&date, buf);
+	    break;
+	case DT_Headline:
+	    buf = readString(&headline, buf);
+	    break;
+	case DT_OriginCity:
+	    buf = readString(&originCity, buf);
+	    break;
+	case DT_StockCodes:
+	    buf = readString(&stockCodes, buf);
+	    break;
+	case DT_CompanyCodes:
+	    buf = readString(&companyCodes, buf);
+	    break;
+	case DT_IndustryCodes:
+	    buf = readString(&industryCodes, buf);
+	    break;
+	default:
+	    freeAny(docID);
+	    s_free(source);
+	    s_free(date);
+	    s_free(headline);
+	    s_free(originCity);
+	    s_free(stockCodes);
+	    s_free(companyCodes);
+	    s_free(industryCodes);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    *header = makeWAISDocumentLongHeader(docID,
+					 versionNumber,
+					 score,
+					 bestMatch,
+					 docLength,
+					 lines,
+					 types,
+					 source,
+					 date,
+					 headline,
+					 originCity,
+					 stockCodes,
+					 companyCodes,
+					 industryCodes);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+WAISSearchResponse *
+  makeWAISSearchResponse(
+			    char *seedWordsUsed,
+			    WAISDocumentHeader **docHeaders,
+			    WAISDocumentShortHeader **shortHeaders,
+			    WAISDocumentLongHeader **longHeaders,
+			    WAISDocumentText **text,
+			    WAISDocumentHeadlines **headlines,
+			    WAISDocumentCodes **codes,
+			    diagnosticRecord ** diagnostics)
+{
+    WAISSearchResponse *response = S_MALLOC(WAISSearchResponse);
+
+    response->SeedWordsUsed = seedWordsUsed;
+    response->DocHeaders = docHeaders;
+    response->ShortHeaders = shortHeaders;
+    response->LongHeaders = longHeaders;
+    response->Text = text;
+    response->Headlines = headlines;
+    response->Codes = codes;
+    response->Diagnostics = diagnostics;
+
+    return (response);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeWAISSearchResponse(WAISSearchResponse * response)
+{
+    void *ptr = NULL;
+    long i;
+
+    s_free(response->SeedWordsUsed);
+
+    if (response->DocHeaders != NULL)
+	for (i = 0, ptr = (void *) response->DocHeaders[i];
+	     ptr != NULL;
+	     ptr = (void *) response->DocHeaders[++i])
+	    freeWAISDocumentHeader((WAISDocumentHeader *) ptr);
+    s_free(response->DocHeaders);
+
+    if (response->ShortHeaders != NULL)
+	for (i = 0, ptr = (void *) response->ShortHeaders[i];
+	     ptr != NULL;
+	     ptr = (void *) response->ShortHeaders[++i])
+	    freeWAISDocumentShortHeader((WAISDocumentShortHeader *) ptr);
+    s_free(response->ShortHeaders);
+
+    if (response->LongHeaders != NULL)
+	for (i = 0, ptr = (void *) response->LongHeaders[i];
+	     ptr != NULL;
+	     ptr = (void *) response->LongHeaders[++i])
+	    freeWAISDocumentLongHeader((WAISDocumentLongHeader *) ptr);
+    s_free(response->LongHeaders);
+
+    if (response->Text != NULL)
+	for (i = 0, ptr = (void *) response->Text[i];
+	     ptr != NULL;
+	     ptr = (void *) response->Text[++i])
+	    freeWAISDocumentText((WAISDocumentText *) ptr);
+    s_free(response->Text);
+
+    if (response->Headlines != NULL)
+	for (i = 0, ptr = (void *) response->Headlines[i];
+	     ptr != NULL;
+	     ptr = (void *) response->Headlines[++i])
+	    freeWAISDocumentHeadlines((WAISDocumentHeadlines *) ptr);
+    s_free(response->Headlines);
+
+    if (response->Codes != NULL)
+	for (i = 0, ptr = (void *) response->Codes[i];
+	     ptr != NULL;
+	     ptr = (void *) response->Codes[++i])
+	    freeWAISDocumentCodes((WAISDocumentCodes *) ptr);
+    s_free(response->Codes);
+
+    if (response->Diagnostics != NULL)
+	for (i = 0, ptr = (void *) response->Diagnostics[i];
+	     ptr != NULL;
+	     ptr = (void *) response->Diagnostics[++i])
+	    freeDiag((diagnosticRecord *) ptr);
+    s_free(response->Diagnostics);
+
+    s_free(response);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeSearchResponseInfo(SearchResponseAPDU *query,
+			      char *buffer,
+			      long *len)
+{
+    unsigned long header_len = userInfoTagSize(DT_UserInformationLength,
+					       DefWAISSearchResponseSize);
+    char *buf = buffer + header_len;
+    WAISSearchResponse *info = (WAISSearchResponse *) query->DatabaseDiagnosticRecords;
+    unsigned long size;
+    void *header = NULL;
+    long i;
+
+    RESERVE_SPACE_FOR_WAIS_HEADER(len);
+
+    buf = writeString(info->SeedWordsUsed, DT_SeedWordsUsed, buf, len);
+
+    /* write out all the headers */
+    if (info->DocHeaders != NULL) {
+	for (i = 0, header = (void *) info->DocHeaders[i];
+	     header != NULL;
+	     header = (void *) info->DocHeaders[++i])
+	    buf = writeWAISDocumentHeader((WAISDocumentHeader *) header, buf, len);
+    }
+
+    if (info->ShortHeaders != NULL) {
+	for (i = 0, header = (void *) info->ShortHeaders[i];
+	     header != NULL;
+	     header = (void *) info->ShortHeaders[++i])
+	    buf = writeWAISDocumentShortHeader((WAISDocumentShortHeader *) header,
+					       buf,
+					       len);
+    }
+
+    if (info->LongHeaders != NULL) {
+	for (i = 0, header = (void *) info->LongHeaders[i];
+	     header != NULL;
+	     header = (void *) info->LongHeaders[++i])
+	    buf = writeWAISDocumentLongHeader((WAISDocumentLongHeader *) header,
+					      buf,
+					      len);
+    }
+
+    if (info->Text != NULL) {
+	for (i = 0, header = (void *) info->Text[i];
+	     header != NULL;
+	     header = (void *) info->Text[++i])
+	    buf = writeWAISDocumentText((WAISDocumentText *) header, buf, len);
+    }
+
+    if (info->Headlines != NULL) {
+	for (i = 0, header = (void *) info->Headlines[i];
+	     header != NULL;
+	     header = (void *) info->Headlines[++i])
+	    buf = writeWAISDocumentHeadlines((WAISDocumentHeadlines *) header,
+					     buf,
+					     len);
+    }
+
+    if (info->Codes != NULL) {
+	for (i = 0, header = (void *) info->Codes[i];
+	     header != NULL;
+	     header = (void *) info->Codes[++i])
+	    buf = writeWAISDocumentCodes((WAISDocumentCodes *) header, buf, len);
+    }
+
+    if (info->Diagnostics != NULL) {
+	for (i = 0, header = (void *) info->Diagnostics[i];
+	     header != NULL;
+	     header = (void *) info->Diagnostics[++i])
+	    buf = writeDiag((diagnosticRecord *) header, buf, len);
+    }
+
+    /* now write the header and size */
+    size = buf - buffer;
+    buf = writeUserInfoHeader(DT_UserInformationLength,
+			      size,
+			      header_len,
+			      buffer,
+			      len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+static void cleanUpWaisSearchResponse(char *buf,
+				      char *seedWordsUsed,
+				      WAISDocumentHeader **docHeaders,
+				      WAISDocumentShortHeader **shortHeaders,
+				      WAISDocumentLongHeader **longHeaders,
+				      WAISDocumentText **text,
+				      WAISDocumentHeadlines **headlines,
+				      WAISDocumentCodes **codes,
+				      diagnosticRecord ** diags)
+/* if buf is NULL, we have just gotten a read error, and need to clean up
+   any state we have built.  If not, then everything is going fine, and
+   we should just hang loose
+ */
+{
+    void *ptr = NULL;
+    long i;
+
+    if (buf == NULL) {
+	s_free(seedWordsUsed);
+	if (docHeaders != NULL)
+	    for (i = 0, ptr = (void *) docHeaders[i]; ptr != NULL;
+		 ptr = (void *) docHeaders[++i])
+		freeWAISDocumentHeader((WAISDocumentHeader *) ptr);
+	s_free(docHeaders);
+	if (shortHeaders != NULL)
+	    for (i = 0, ptr = (void *) shortHeaders[i]; ptr != NULL;
+		 ptr = (void *) shortHeaders[++i])
+		freeWAISDocumentShortHeader((WAISDocumentShortHeader *) ptr);
+	s_free(shortHeaders);
+	if (longHeaders != NULL)
+	    for (i = 0, ptr = (void *) longHeaders[i]; ptr != NULL;
+		 ptr = (void *) longHeaders[++i])
+		freeWAISDocumentLongHeader((WAISDocumentLongHeader *) ptr);
+	s_free(longHeaders);
+	if (text != NULL)
+	    for (i = 0, ptr = (void *) text[i];
+		 ptr != NULL;
+		 ptr = (void *) text[++i])
+		freeWAISDocumentText((WAISDocumentText *) ptr);
+	s_free(text);
+	if (headlines != NULL)
+	    for (i = 0, ptr = (void *) headlines[i]; ptr != NULL;
+		 ptr = (void *) headlines[++i])
+		freeWAISDocumentHeadlines((WAISDocumentHeadlines *) ptr);
+	s_free(headlines);
+	if (codes != NULL)
+	    for (i = 0, ptr = (void *) codes[i]; ptr != NULL;
+		 ptr = (void *) codes[++i])
+		freeWAISDocumentCodes((WAISDocumentCodes *) ptr);
+	s_free(codes);
+	if (diags != NULL)
+	    for (i = 0, ptr = (void *) diags[i]; ptr != NULL;
+		 ptr = (void *) diags[++i])
+		freeDiag((diagnosticRecord *) ptr);
+	s_free(diags);
+    }
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readSearchResponseInfo(void **info,
+			     char *buffer)
+{
+    char *buf = buffer;
+    unsigned long size;
+    unsigned long headerSize;
+    data_tag tag1;
+    void *header = NULL;
+    WAISDocumentHeader **docHeaders = NULL;
+    WAISDocumentShortHeader **shortHeaders = NULL;
+    WAISDocumentLongHeader **longHeaders = NULL;
+    WAISDocumentText **text = NULL;
+    WAISDocumentHeadlines **headlines = NULL;
+    WAISDocumentCodes **codes = NULL;
+    long numDocHeaders, numLongHeaders, numShortHeaders, numText, numHeadlines;
+    long numCodes;
+    char *seedWordsUsed = NULL;
+    diagnosticRecord **diags = NULL;
+    diagnosticRecord *diag = NULL;
+    long numDiags = 0;
+
+    numDocHeaders =
+	numLongHeaders =
+	numShortHeaders =
+	numText =
+	numHeadlines =
+	numCodes = 0;
+
+    buf = readUserInfoHeader(&tag1, &size, buf);
+    headerSize = buf - buffer;
+
+    while (buf < (buffer + size + headerSize)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_SeedWordsUsed:
+	    buf = readString(&seedWordsUsed, buf);
+	    break;
+	case DT_DatabaseDiagnosticRecords:
+	    if (diags == NULL)	/* create a new diag list */
+	    {
+		diags = S_MALLOC2(diagnosticRecord *);
+	    } else {		/* grow the diag list */
+		diags = S_REALLOC2(diagnosticRecord *, diags, numDiags);
+	    }
+	    buf = readDiag(&diag, buf);
+	    diags[numDiags++] = diag;	/* put it in the list */
+	    diags[numDiags] = NULL;
+	    break;
+	case DT_DocumentHeaderGroup:
+	    if (docHeaders == NULL)	/* create a new header list */
+	    {
+		docHeaders = S_MALLOC2(WAISDocumentHeader *);
+	    } else {		/* grow the doc list */
+		docHeaders = S_REALLOC2(WAISDocumentHeader *, docHeaders, numDocHeaders);
+	    }
+	    buf = readWAISDocumentHeader((WAISDocumentHeader **) &header, buf);
+	    cleanUpWaisSearchResponse(buf,
+				      seedWordsUsed,
+				      docHeaders,
+				      shortHeaders,
+				      longHeaders,
+				      text,
+				      headlines,
+				      codes,
+				      diags);
+	    RETURN_ON_NULL(buf);
+	    docHeaders[numDocHeaders++] =
+		(WAISDocumentHeader *) header;	/* put it in the list */
+	    docHeaders[numDocHeaders] = NULL;
+	    break;
+	case DT_DocumentShortHeaderGroup:
+	    if (shortHeaders == NULL)	/* create a new header list */
+	    {
+		shortHeaders = S_MALLOC2(WAISDocumentShortHeader *);
+	    } else {		/* grow the doc list */
+		shortHeaders = S_REALLOC2(WAISDocumentShortHeader *,
+					  shortHeaders,
+					  numShortHeaders);
+	    }
+	    buf = readWAISDocumentShortHeader((WAISDocumentShortHeader **) &header,
+					      buf);
+	    cleanUpWaisSearchResponse(buf,
+				      seedWordsUsed,
+				      docHeaders,
+				      shortHeaders,
+				      longHeaders,
+				      text,
+				      headlines,
+				      codes,
+				      diags);
+	    RETURN_ON_NULL(buf);
+	    shortHeaders[numShortHeaders++] =
+		(WAISDocumentShortHeader *) header;	/* put it in the list */
+	    shortHeaders[numShortHeaders] = NULL;
+	    break;
+	case DT_DocumentLongHeaderGroup:
+	    if (longHeaders == NULL)	/* create a new header list */
+	    {
+		longHeaders = S_MALLOC2(WAISDocumentLongHeader *);
+	    } else {		/* grow the doc list */
+		longHeaders = S_REALLOC2(WAISDocumentLongHeader *,
+					 longHeaders,
+					 numLongHeaders);
+	    }
+	    buf = readWAISDocumentLongHeader((WAISDocumentLongHeader **) &header,
+					     buf);
+	    cleanUpWaisSearchResponse(buf,
+				      seedWordsUsed,
+				      docHeaders,
+				      shortHeaders,
+				      longHeaders,
+				      text,
+				      headlines,
+				      codes,
+				      diags);
+	    RETURN_ON_NULL(buf);
+	    longHeaders[numLongHeaders++] =
+		(WAISDocumentLongHeader *) header;	/* put it in the list */
+	    longHeaders[numLongHeaders] = NULL;
+	    break;
+	case DT_DocumentTextGroup:
+	    if (text == NULL)	/* create a new list */
+	    {
+		text = S_MALLOC2(WAISDocumentText *);
+	    } else {		/* grow the list */
+		text = S_REALLOC2(WAISDocumentText *, text, numText);
+	    }
+	    buf = readWAISDocumentText((WAISDocumentText **) &header, buf);
+	    cleanUpWaisSearchResponse(buf,
+				      seedWordsUsed,
+				      docHeaders,
+				      shortHeaders,
+				      longHeaders,
+				      text,
+				      headlines,
+				      codes,
+				      diags);
+	    RETURN_ON_NULL(buf);
+	    text[numText++] =
+		(WAISDocumentText *) header;	/* put it in the list */
+	    text[numText] = NULL;
+	    break;
+	case DT_DocumentHeadlineGroup:
+	    if (headlines == NULL)	/* create a new list */
+	    {
+		headlines = S_MALLOC2(WAISDocumentHeadlines *);
+	    } else {		/* grow the list */
+		headlines = S_REALLOC2(WAISDocumentHeadlines *, headlines, numHeadlines);
+	    }
+	    buf = readWAISDocumentHeadlines((WAISDocumentHeadlines **) &header,
+					    buf);
+	    cleanUpWaisSearchResponse(buf,
+				      seedWordsUsed,
+				      docHeaders,
+				      shortHeaders,
+				      longHeaders,
+				      text,
+				      headlines,
+				      codes,
+				      diags);
+	    RETURN_ON_NULL(buf);
+	    headlines[numHeadlines++] =
+		(WAISDocumentHeadlines *) header;	/* put it in the list */
+	    headlines[numHeadlines] = NULL;
+	    break;
+	case DT_DocumentCodeGroup:
+	    if (codes == NULL)	/* create a new list */
+	    {
+		codes = S_MALLOC2(WAISDocumentCodes *);
+	    } else {		/* grow the list */
+		codes = S_REALLOC2(WAISDocumentCodes *, codes, numCodes);
+	    }
+	    buf = readWAISDocumentCodes((WAISDocumentCodes **) &header, buf);
+	    cleanUpWaisSearchResponse(buf,
+				      seedWordsUsed,
+				      docHeaders,
+				      shortHeaders,
+				      longHeaders,
+				      text,
+				      headlines,
+				      codes,
+				      diags);
+	    RETURN_ON_NULL(buf);
+	    codes[numCodes++] =
+		(WAISDocumentCodes *) header;	/* put it in the list */
+	    codes[numCodes] = NULL;
+	    break;
+	default:
+	    cleanUpWaisSearchResponse(buf,
+				      seedWordsUsed,
+				      docHeaders,
+				      shortHeaders,
+				      longHeaders,
+				      text,
+				      headlines,
+				      codes,
+				      diags);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    *info = (void *) makeWAISSearchResponse(seedWordsUsed,
+					    docHeaders,
+					    shortHeaders,
+					    longHeaders,
+					    text,
+					    headlines,
+					    codes,
+					    diags);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+WAISDocumentText *makeWAISDocumentText(any *docID,
+				       long versionNumber,
+				       any *documentText)
+{
+    WAISDocumentText *docText = S_MALLOC(WAISDocumentText);
+
+    docText->DocumentID = docID;
+    docText->VersionNumber = versionNumber;
+    docText->DocumentText = documentText;
+
+    return (docText);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeWAISDocumentText(WAISDocumentText *docText)
+{
+    freeAny(docText->DocumentID);
+    freeAny(docText->DocumentText);
+    s_free(docText);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeWAISDocumentText(WAISDocumentText *docText, char *buffer,
+			    long *len)
+{
+    unsigned long header_len = userInfoTagSize(DT_DocumentTextGroup,
+					       DefWAISDocTextSize);
+    char *buf = buffer + header_len;
+    unsigned long size;
+
+    RESERVE_SPACE_FOR_WAIS_HEADER(len);
+
+    buf = writeAny(docText->DocumentID, DT_DocumentID, buf, len);
+    buf = writeNum(docText->VersionNumber, DT_VersionNumber, buf, len);
+    buf = writeAny(docText->DocumentText, DT_DocumentText, buf, len);
+
+    /* now write the header and size */
+    size = buf - buffer;
+    buf = writeUserInfoHeader(DT_DocumentTextGroup, size, header_len, buffer, len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readWAISDocumentText(WAISDocumentText **docText, char *buffer)
+{
+    char *buf = buffer;
+    unsigned long size;
+    unsigned long headerSize;
+    data_tag tag1;
+    any *docID, *documentText;
+    long versionNumber;
+
+    docID = documentText = NULL;
+    versionNumber = UNUSED;
+
+    buf = readUserInfoHeader(&tag1, &size, buf);
+    headerSize = buf - buffer;
+
+    while (buf < (buffer + size + headerSize)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_DocumentID:
+	    buf = readAny(&docID, buf);
+	    break;
+	case DT_VersionNumber:
+	    buf = readNum(&versionNumber, buf);
+	    break;
+	case DT_DocumentText:
+	    buf = readAny(&documentText, buf);
+	    break;
+	default:
+	    freeAny(docID);
+	    freeAny(documentText);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    *docText = makeWAISDocumentText(docID, versionNumber, documentText);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+WAISDocumentHeadlines *makeWAISDocumentHeadlines(any *docID,
+						 long versionNumber,
+						 char *source,
+						 char *date,
+						 char *headline,
+						 char *originCity)
+{
+    WAISDocumentHeadlines *docHeadline = S_MALLOC(WAISDocumentHeadlines);
+
+    docHeadline->DocumentID = docID;
+    docHeadline->VersionNumber = versionNumber;
+    docHeadline->Source = source;
+    docHeadline->Date = date;
+    docHeadline->Headline = headline;
+    docHeadline->OriginCity = originCity;
+
+    return (docHeadline);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeWAISDocumentHeadlines(WAISDocumentHeadlines *docHeadline)
+{
+    freeAny(docHeadline->DocumentID);
+    s_free(docHeadline->Source);
+    s_free(docHeadline->Date);
+    s_free(docHeadline->Headline);
+    s_free(docHeadline->OriginCity);
+    s_free(docHeadline);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeWAISDocumentHeadlines(WAISDocumentHeadlines *docHeadline, char *buffer,
+				 long *len)
+{
+    unsigned long header_len = userInfoTagSize(DT_DocumentHeadlineGroup,
+					       DefWAISDocHeadlineSize);
+    char *buf = buffer + header_len;
+    unsigned long size;
+
+    RESERVE_SPACE_FOR_WAIS_HEADER(len);
+
+    buf = writeAny(docHeadline->DocumentID, DT_DocumentID, buf, len);
+    buf = writeNum(docHeadline->VersionNumber, DT_VersionNumber, buf, len);
+    buf = writeString(docHeadline->Source, DT_Source, buf, len);
+    buf = writeString(docHeadline->Date, DT_Date, buf, len);
+    buf = writeString(docHeadline->Headline, DT_Headline, buf, len);
+    buf = writeString(docHeadline->OriginCity, DT_OriginCity, buf, len);
+
+    /* now write the header and size */
+    size = buf - buffer;
+    buf = writeUserInfoHeader(DT_DocumentHeadlineGroup,
+			      size,
+			      header_len,
+			      buffer,
+			      len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readWAISDocumentHeadlines(WAISDocumentHeadlines **docHeadline, char *buffer)
+{
+    char *buf = buffer;
+    unsigned long size;
+    unsigned long headerSize;
+    data_tag tag1;
+    any *docID;
+    long versionNumber;
+    char *source, *date, *headline, *originCity;
+
+    docID = NULL;
+    versionNumber = UNUSED;
+    source = date = headline = originCity = NULL;
+
+    buf = readUserInfoHeader(&tag1, &size, buf);
+    headerSize = buf - buffer;
+
+    while (buf < (buffer + size + headerSize)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_DocumentID:
+	    buf = readAny(&docID, buf);
+	    break;
+	case DT_VersionNumber:
+	    buf = readNum(&versionNumber, buf);
+	    break;
+	case DT_Source:
+	    buf = readString(&source, buf);
+	    break;
+	case DT_Date:
+	    buf = readString(&date, buf);
+	    break;
+	case DT_Headline:
+	    buf = readString(&headline, buf);
+	    break;
+	case DT_OriginCity:
+	    buf = readString(&originCity, buf);
+	    break;
+	default:
+	    freeAny(docID);
+	    s_free(source);
+	    s_free(date);
+	    s_free(headline);
+	    s_free(originCity);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    *docHeadline = makeWAISDocumentHeadlines(docID, versionNumber, source, date,
+					     headline, originCity);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+WAISDocumentCodes *makeWAISDocumentCodes(any *docID,
+					 long versionNumber,
+					 char *stockCodes,
+					 char *companyCodes,
+					 char *industryCodes)
+{
+    WAISDocumentCodes *docCodes = S_MALLOC(WAISDocumentCodes);
+
+    docCodes->DocumentID = docID;
+    docCodes->VersionNumber = versionNumber;
+    docCodes->StockCodes = stockCodes;
+    docCodes->CompanyCodes = companyCodes;
+    docCodes->IndustryCodes = industryCodes;
+
+    return (docCodes);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeWAISDocumentCodes(WAISDocumentCodes *docCodes)
+{
+    freeAny(docCodes->DocumentID);
+    s_free(docCodes->StockCodes);
+    s_free(docCodes->CompanyCodes);
+    s_free(docCodes->IndustryCodes);
+    s_free(docCodes);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeWAISDocumentCodes(WAISDocumentCodes *docCodes,
+			     char *buffer,
+			     long *len)
+{
+    unsigned long header_len = userInfoTagSize(DT_DocumentCodeGroup,
+					       DefWAISDocCodeSize);
+    char *buf = buffer + header_len;
+    unsigned long size;
+
+    RESERVE_SPACE_FOR_WAIS_HEADER(len);
+
+    buf = writeAny(docCodes->DocumentID, DT_DocumentID, buf, len);
+    buf = writeNum(docCodes->VersionNumber, DT_VersionNumber, buf, len);
+    buf = writeString(docCodes->StockCodes, DT_StockCodes, buf, len);
+    buf = writeString(docCodes->CompanyCodes, DT_CompanyCodes, buf, len);
+    buf = writeString(docCodes->IndustryCodes, DT_IndustryCodes, buf, len);
+
+    /* now write the header and size */
+    size = buf - buffer;
+    buf = writeUserInfoHeader(DT_DocumentCodeGroup, size, header_len, buffer, len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readWAISDocumentCodes(WAISDocumentCodes **docCodes,
+			    char *buffer)
+{
+    char *buf = buffer;
+    unsigned long size;
+    unsigned long headerSize;
+    data_tag tag1;
+    any *docID;
+    long versionNumber;
+    char *stockCodes, *companyCodes, *industryCodes;
+
+    docID = NULL;
+    versionNumber = UNUSED;
+    stockCodes = companyCodes = industryCodes = NULL;
+
+    buf = readUserInfoHeader(&tag1, &size, buf);
+    headerSize = buf - buffer;
+
+    while (buf < (buffer + size + headerSize)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_DocumentID:
+	    buf = readAny(&docID, buf);
+	    break;
+	case DT_VersionNumber:
+	    buf = readNum(&versionNumber, buf);
+	    break;
+	case DT_StockCodes:
+	    buf = readString(&stockCodes, buf);
+	    break;
+	case DT_CompanyCodes:
+	    buf = readString(&companyCodes, buf);
+	    break;
+	case DT_IndustryCodes:
+	    buf = readString(&industryCodes, buf);
+	    break;
+	default:
+	    freeAny(docID);
+	    s_free(stockCodes);
+	    s_free(companyCodes);
+	    s_free(industryCodes);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    *docCodes = makeWAISDocumentCodes(docID, versionNumber, stockCodes,
+				      companyCodes, industryCodes);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writePresentInfo(PresentAPDU * present GCC_UNUSED, char *buffer,
+		       long *len GCC_UNUSED)
+{
+    /* The WAIS protocol doesn't use present info */
+    return (buffer);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readPresentInfo(void **info,
+		      char *buffer)
+{
+    /* The WAIS protocol doesn't use present info */
+    *info = NULL;
+    return (buffer);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writePresentResponseInfo(PresentResponseAPDU * response GCC_UNUSED, char *buffer,
+			       long *len GCC_UNUSED)
+{
+    /* The WAIS protocol doesn't use presentResponse info */
+    return (buffer);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readPresentResponseInfo(void **info,
+			      char *buffer)
+{
+    /* The WAIS protocol doesn't use presentResponse info */
+    *info = NULL;
+    return (buffer);
+}
+
+/*----------------------------------------------------------------------*/
+
+/* support for type 1 queries */
+
+/* new use values (for the chunk types) */
+#define	BYTE		"wb"
+#define	LINE		"wl"
+#define	PARAGRAPH	"wp"
+#define DATA_TYPE	"wt"
+
+/* WAIS supports the following semantics for type 1 queries:
+
+     1.  retrieve the header/codes from a document:
+
+	    System_Control_Number = docID
+	    Data Type = type (optional)
+	    And
+
+     2.  retrieve a fragment of the text of a document:
+
+	    System_Control_Number = docID
+	    Data Type = type (optional)
+	    And
+		Chunk >= start
+		And
+		Chunk < end
+		And
+
+		Information from multiple documents may be requested by using
+		groups of the above joined by:
+
+	    OR
+
+		( XXX does an OR come after every group but the first, or do they
+	      all come at the end? )
+
+	( XXX return type could be in the element set)
+*/
+
+static query_term **makeWAISQueryTerms(DocObj **docs)
+/* given a null terminated list of docObjs, construct the appropriate
+   query of the form given above
+ */
+{
+    query_term **terms = NULL;
+    long numTerms = 0;
+    DocObj *doc = NULL;
+    long i;
+
+    if (docs == NULL)
+	return ((query_term **) NULL);
+
+    terms = (query_term **) s_malloc((size_t) (sizeof(query_term *) * 1));
+
+    terms[numTerms] = NULL;
+
+    /* loop through the docs making terms for them all */
+    for (i = 0, doc = docs[i]; doc != NULL; doc = docs[++i]) {
+	any *type = NULL;
+
+	if (doc->Type != NULL)
+	    type = stringToAny(doc->Type);
+
+	if (doc->ChunkCode == CT_document)	/* a whole document */
+	{
+	    terms = S_REALLOC2(query_term *, terms, numTerms + 2);
+
+	    terms[numTerms++] = makeAttributeTerm(SYSTEM_CONTROL_NUMBER,
+						  EQUAL, IGNORE, IGNORE,
+						  IGNORE, IGNORE, doc->DocumentID);
+	    if (type != NULL) {
+		terms[numTerms++] = makeAttributeTerm(DATA_TYPE, EQUAL,
+						      IGNORE, IGNORE, IGNORE,
+						      IGNORE, type);
+		terms[numTerms++] = makeOperatorTerm(AND);
+	    }
+	    terms[numTerms] = NULL;
+	} else {		/* a document fragment */
+	    char chunk_att[ATTRIBUTE_SIZE];
+	    any *startChunk = NULL;
+	    any *endChunk = NULL;
+
+	    terms = S_REALLOC2(query_term *, terms, numTerms + 6);
+
+	    switch (doc->ChunkCode) {
+	    case CT_byte:
+	    case CT_line:
+		{
+		    char start[20], end[20];
+
+		    (doc->ChunkCode == CT_byte) ?
+			StrNCpy(chunk_att, BYTE, ATTRIBUTE_SIZE) :
+			StrNCpy(chunk_att, LINE, ATTRIBUTE_SIZE);
+		    sprintf(start, "%ld", doc->ChunkStart.Pos);
+		    startChunk = stringToAny(start);
+		    sprintf(end, "%ld", doc->ChunkEnd.Pos);
+		    endChunk = stringToAny(end);
+		}
+		break;
+	    case CT_paragraph:
+		StrNCpy(chunk_att, PARAGRAPH, ATTRIBUTE_SIZE);
+		startChunk = doc->ChunkStart.ID;
+		endChunk = doc->ChunkEnd.ID;
+		break;
+	    default:
+		/* error */
+		break;
+	    }
+
+	    terms[numTerms++] = makeAttributeTerm(SYSTEM_CONTROL_NUMBER,
+						  EQUAL, IGNORE, IGNORE,
+						  IGNORE,
+						  IGNORE, doc->DocumentID);
+	    if (type != NULL) {
+		terms[numTerms++] = makeAttributeTerm(DATA_TYPE, EQUAL, IGNORE,
+						      IGNORE, IGNORE, IGNORE,
+						      type);
+		terms[numTerms++] = makeOperatorTerm(AND);
+	    }
+	    terms[numTerms++] = makeAttributeTerm(chunk_att,
+						  GREATER_THAN_OR_EQUAL,
+						  IGNORE, IGNORE, IGNORE,
+						  IGNORE,
+						  startChunk);
+	    terms[numTerms++] = makeOperatorTerm(AND);
+	    terms[numTerms++] = makeAttributeTerm(chunk_att, LESS_THAN,
+						  IGNORE, IGNORE, IGNORE,
+						  IGNORE,
+						  endChunk);
+	    terms[numTerms++] = makeOperatorTerm(AND);
+	    terms[numTerms] = NULL;
+
+	    if (doc->ChunkCode == CT_byte || doc->ChunkCode == CT_line) {
+		freeAny(startChunk);
+		freeAny(endChunk);
+	    }
+	}
+
+	freeAny(type);
+
+	if (i != 0)		/* multiple independent queries, need a disjunction */
+	{
+	    terms = S_REALLOC2(query_term *, terms, numTerms);
+
+	    terms[numTerms++] = makeOperatorTerm(OR);
+	    terms[numTerms] = NULL;
+	}
+    }
+
+    return (terms);
+}
+
+/*----------------------------------------------------------------------*/
+
+static DocObj **makeWAISQueryDocs(query_term **terms)
+/* given a list of terms in the form given above, convert them to
+   DocObjs.
+ */
+{
+    query_term *docTerm = NULL;
+    query_term *fragmentTerm = NULL;
+    DocObj **docs = NULL;
+    DocObj *doc = NULL;
+    long docNum, termNum;
+
+    docNum = termNum = 0;
+
+    docs = S_MALLOC(DocObj *);
+
+    docs[docNum] = NULL;
+
+    /* translate the terms into DocObjs */
+    while (true) {
+	query_term *typeTerm = NULL;
+	char *type = NULL;
+	long startTermOffset;
+
+	docTerm = terms[termNum];
+
+	if (docTerm == NULL)
+	    break;		/* we're done converting */
+
+	typeTerm = terms[termNum + 1];	/* get the lead Term if it exists */
+
+	if (strcmp(typeTerm->Use, DATA_TYPE) == 0)	/* we do have a type */
+	{
+	    startTermOffset = 3;
+	    type = anyToString(typeTerm->Term);
+	} else {		/* no type */
+	    startTermOffset = 1;
+	    typeTerm = NULL;
+	    type = NULL;
+	}
+
+	/* grow the doc list */
+	docs = S_REALLOC2(DocObj *, docs, docNum);
+
+	/* figure out what kind of docObj to build - and build it */
+	fragmentTerm = terms[termNum + startTermOffset];
+	if (fragmentTerm != NULL && fragmentTerm->TermType == TT_Attribute) {	/* build a document fragment */
+	    query_term *startTerm = fragmentTerm;
+	    query_term *endTerm = terms[termNum + startTermOffset + 2];
+
+	    if (strcmp(startTerm->Use, BYTE) == 0) {	/* a byte chunk */
+		doc = makeDocObjUsingBytes(duplicateAny(docTerm->Term),
+					   type,
+					   anyToLong(startTerm->Term),
+					   anyToLong(endTerm->Term));
+		log_write("byte");
+	    } else if (strcmp(startTerm->Use, LINE) == 0) {	/* a line chunk */
+		doc = makeDocObjUsingLines(duplicateAny(docTerm->Term),
+					   type,
+					   anyToLong(startTerm->Term),
+					   anyToLong(endTerm->Term));
+		log_write("line");
+	    } else {
+		log_write("chunk");	/* a paragraph chunk */
+		doc = makeDocObjUsingParagraphs(duplicateAny(docTerm->Term),
+						type,
+						duplicateAny(startTerm->Term),
+						duplicateAny(endTerm->Term));
+	    }
+	    termNum += (startTermOffset + 4);	/* point to next term */
+	} else {		/* build a full document */
+	    doc = makeDocObjUsingWholeDocument(duplicateAny(docTerm->Term),
+					       type);
+	    log_write("whole doc");
+	    termNum += startTermOffset;		/* point to next term */
+	}
+
+	docs[docNum++] = doc;	/* insert the new document */
+
+	docs[docNum] = NULL;	/* keep the doc list terminated */
+
+	if (terms[termNum] != NULL)
+	    termNum++;		/* skip the OR operator it necessary */
+	else
+	    break;		/* we are done */
+    }
+
+    return (docs);
+}
+
+/*----------------------------------------------------------------------*/
+
+any *makeWAISTextQuery(DocObj **docs)
+/* given a list of DocObjs, return an any whose contents is the corresponding
+   type 1 query
+ */
+{
+    any *buf = NULL;
+    query_term **terms = NULL;
+
+    terms = makeWAISQueryTerms(docs);
+    buf = writeQuery(terms);
+
+    doList((void **) terms, freeTerm);
+    s_free(terms);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+DocObj **readWAISTextQuery(any *buf)
+/* given an any whose contents are type 1 queries of the WAIS sort,
+   construct a list of the corresponding DocObjs
+ */
+{
+    query_term **terms = NULL;
+    DocObj **docs = NULL;
+
+    terms = readQuery(buf);
+    docs = makeWAISQueryDocs(terms);
+
+    doList((void **) terms, freeTerm);
+    s_free(terms);
+
+    return (docs);
+}
+
+/*----------------------------------------------------------------------*/
+/* Customized free WAIS object routines:                                */
+/*                                                                      */
+/*   This set of procedures is for applications to free a WAIS object   */
+/*   which was made with makeWAISFOO.                                   */
+/*   Each procedure frees only the memory that was allocated in its     */
+/*   associated makeWAISFOO routine, thus it's not necessary for the    */
+/*   caller to assign nulls to the pointer fields of the WAIS object.  */
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISInitResponse(WAISInitResponse *init)
+/* free an object made with makeWAISInitResponse */
+{
+    s_free(init);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISSearch(WAISSearch *query)
+/* destroy an object made with makeWAISSearch() */
+{
+    s_free(query);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeDocObj(DocObj *doc)
+/* free a docObj */
+{
+    s_free(doc);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISDocumentHeader(WAISDocumentHeader *header)
+{
+    s_free(header);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISDocumentShortHeader(WAISDocumentShortHeader *header)
+{
+    s_free(header);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISDocumentLongHeader(WAISDocumentLongHeader *header)
+{
+    s_free(header);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISSearchResponse(WAISSearchResponse * response)
+{
+    s_free(response);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISDocumentText(WAISDocumentText *docText)
+{
+    s_free(docText);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISDocHeadlines(WAISDocumentHeadlines *docHeadline)
+{
+    s_free(docHeadline);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISDocumentCodes(WAISDocumentCodes *docCodes)
+{
+    s_free(docCodes);
+}
+
+/*----------------------------------------------------------------------*/
+
+void CSTFreeWAISTextQuery(any *query)
+{
+    freeAny(query);
+}
+
+/*----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from WMessage.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* WIDE AREA INFORMATION SERVER SOFTWARE
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+ * 3.26.90
+ */
+
+/* This file is for reading and writing the wais packet header.
+ * Morris@think.com
+ */
+
+/* to do:
+ *  add check sum
+ *  what do you do when checksum is wrong?
+ */
+
+/*---------------------------------------------------------------------*/
+
+void readWAISPacketHeader(char *msgBuffer,
+			  WAISMessage * header_struct)
+{
+    /* msgBuffer is a string containing at least HEADER_LENGTH bytes. */
+
+    memmove(header_struct->msg_len, msgBuffer, (size_t) 10);
+    header_struct->msg_type = char_downcase((unsigned long) msgBuffer[10]);
+    header_struct->hdr_vers = char_downcase((unsigned long) msgBuffer[11]);
+    memmove(header_struct->server, (void *) (msgBuffer + 12), (size_t) 10);
+    header_struct->compression = char_downcase((unsigned long) msgBuffer[22]);
+    header_struct->encoding = char_downcase((unsigned long) msgBuffer[23]);
+    header_struct->msg_checksum = char_downcase((unsigned long) msgBuffer[24]);
+}
+
+/*---------------------------------------------------------------------*/
+
+/* this modifies the header argument.  See wais-message.h for the different
+ * options for the arguments.
+ */
+
+void writeWAISPacketHeader(char *header,
+			   long dataLen,
+			   long type,
+			   char *server,
+			   long compression,
+			   long encoding,
+			   long version)
+/* Puts together the new wais before-the-z39-packet header. */
+{
+    char lengthBuf[11];
+    char serverBuf[11];
+
+    long serverLen = strlen(server);
+
+    if (serverLen > 10)
+	serverLen = 10;
+
+    sprintf(lengthBuf, "%010ld", dataLen);
+    StrNCpy(header, lengthBuf, 10);
+
+    header[10] = type & 0xFF;
+    header[11] = version & 0xFF;
+
+    StrNCpy(serverBuf, server, serverLen);
+    StrNCpy((char *) (header + 12), serverBuf, serverLen);
+
+    header[22] = compression & 0xFF;
+    header[23] = encoding & 0xFF;
+    header[24] = '0';		/* checkSum(header + HEADER_LENGTH,dataLen);   XXX the result must be ascii */
+}
+
+/*---------------------------------------------------------------------*/
diff --git a/WWW/Library/Implementation/HTVMS_WaisProt.h b/WWW/Library/Implementation/HTVMS_WaisProt.h
new file mode 100644
index 00000000..457d3cbb
--- /dev/null
+++ b/WWW/Library/Implementation/HTVMS_WaisProt.h
@@ -0,0 +1,425 @@
+/*							HTVMS_WAISProt.h
+ *
+ *	Adaptation for Lynx by F.Macrides (macrides@sci.wfeb.edu)
+ *
+ *	31-May-1994 FM	Initial version.
+ *
+ *----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from WProt.h -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* WIDE AREA INFORMATION SERVER SOFTWARE:
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+ *
+ *  3.26.90	Harry Morris, morris@think.com
+ *  3.30.90  Harry Morris
+ *			-	removed chunk code from WAISSearchAPDU,
+ *			-	added makeWAISQueryType1Query() and readWAISType1Query() which
+ *				replace makeWAISQueryTerms() and makeWAISQueryDocs().
+ *  4.11.90  HWM - added definitions of wais element set names
+ *  4.14.90  HWM - changed symbol for relevance feedback query from QT_3 to
+ *				  QT_RelevanceFeedbackQuery added QT_TextRetrievalQuery as a
+ *				  synonym for QT_BooleanQuery
+ *				- renamed makeWAISType1Query() to makeWAISTextQuery()
+ *				  renamed readWAISType1Query() to readWAISTextQuery()
+ *  5.29.90  TS - added CSTFreeWAISFoo functions
+ */
+
+#ifndef _H_WAIS_protocol_
+#define _H_WAIS_protocol_
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#include <HTVMS_WaisUI.h>
+
+/*----------------------------------------------------------------------*/
+/* Data types / constants */
+
+/* date factor constants */
+#define	DF_INDEPENDENT		1
+#define DF_LATER		2
+#define DF_EARLIER		3
+#define DF_SPECIFIED_RANGE	4
+
+/* chunk types */
+#define CT_document		0
+#define CT_byte			1
+#define CT_line			2
+#define CT_paragraph	3
+
+/* relevance feedback query */
+#define QT_RelevanceFeedbackQuery	"3"
+#define QT_TextRetrievalQuery		QT_BooleanQuery
+
+/* new data tags */
+#define DT_UserInformationLength	(data_tag)99
+#define	DT_ChunkCode			(data_tag)100
+#define	DT_ChunkIDLength		(data_tag)101
+#define	DT_ChunkMarker			(data_tag)102
+#define	DT_HighlightMarker		(data_tag)103
+#define	DT_DeHighlightMarker		(data_tag)104
+#define	DT_NewlineCharacters		(data_tag)105
+#define	DT_SeedWords			(data_tag)106
+#define	DT_DocumentIDChunk		(data_tag)107
+#define	DT_ChunkStartID			(data_tag)108
+#define	DT_ChunkEndID			(data_tag)109
+#define	DT_TextList			(data_tag)110
+#define	DT_DateFactor			(data_tag)111
+#define	DT_BeginDateRange		(data_tag)112
+#define	DT_EndDateRange			(data_tag)113
+#define	DT_MaxDocumentsRetrieved	(data_tag)114
+#define	DT_SeedWordsUsed		(data_tag)115
+#define	DT_DocumentID			(data_tag)116
+#define	DT_VersionNumber		(data_tag)117
+#define	DT_Score			(data_tag)118
+#define	DT_BestMatch			(data_tag)119
+#define	DT_DocumentLength		(data_tag)120
+#define	DT_Source			(data_tag)121
+#define	DT_Date				(data_tag)122
+#define	DT_Headline			(data_tag)123
+#define	DT_OriginCity			(data_tag)124
+#define	DT_PresentStartByte		(data_tag)125
+#define	DT_TextLength			(data_tag)126
+#define	DT_DocumentText			(data_tag)127
+#define	DT_StockCodes			(data_tag)128
+#define	DT_CompanyCodes			(data_tag)129
+#define	DT_IndustryCodes		(data_tag)130
+
+/* added by harry */
+#define DT_DocumentHeaderGroup		(data_tag)150
+#define DT_DocumentShortHeaderGroup	(data_tag)151
+#define DT_DocumentLongHeaderGroup	(data_tag)152
+#define DT_DocumentTextGroup		(data_tag)153
+#define DT_DocumentHeadlineGroup	(data_tag)154
+#define DT_DocumentCodeGroup		(data_tag)155
+#define DT_Lines			(data_tag)131
+#define	DT_TYPE_BLOCK			(data_tag)132
+#define DT_TYPE				(data_tag)133
+
+/* wais element sets */
+#define ES_DocumentHeader		"Document Header"
+#define ES_DocumentShortHeader		"Document Short Header"
+#define ES_DocumentLongHeader		"Document Long Header"
+#define ES_DocumentText			"Document Text"
+#define ES_DocumentHeadline		"Document Headline"
+#define ES_DocumentCodes		"Document Codes"
+
+typedef struct DocObj {		/* specifies a section of a document */
+    any *DocumentID;
+    char *Type;
+    long ChunkCode;
+    union {
+	long Pos;
+	any *ID;
+    } ChunkStart;
+    union {
+	long Pos;
+	any *ID;
+    } ChunkEnd;
+} DocObj;
+
+/*----------------------------------------------------------------------*/
+/* WAIS APDU extensions */
+
+typedef struct WAISInitResponse {
+    long ChunkCode;
+    long ChunkIDLength;
+    char *ChunkMarker;
+    char *HighlightMarker;
+    char *DeHighlightMarker;
+    char *NewlineCharacters;
+    /* XXX  need to add UpdateFrequency and Update Time */
+} WAISInitResponse;
+
+typedef struct WAISSearch {
+    char *SeedWords;
+    DocObj **Docs;
+    char **TextList;
+    long DateFactor;
+    char *BeginDateRange;
+    char *EndDateRange;
+    long MaxDocumentsRetrieved;
+} WAISSearch;
+
+typedef struct WAISDocumentHeader {
+    any *DocumentID;
+    long VersionNumber;
+    long Score;
+    long BestMatch;
+    long DocumentLength;
+    long Lines;
+    char **Types;
+    char *Source;
+    char *Date;
+    char *Headline;
+    char *OriginCity;
+} WAISDocumentHeader;
+
+typedef struct WAISDocumentShortHeader {
+    any *DocumentID;
+    long VersionNumber;
+    long Score;
+    long BestMatch;
+    long DocumentLength;
+    long Lines;
+} WAISDocumentShortHeader;
+
+typedef struct WAISDocumentLongHeader {
+    any *DocumentID;
+    long VersionNumber;
+    long Score;
+    long BestMatch;
+    long DocumentLength;
+    long Lines;
+    char **Types;
+    char *Source;
+    char *Date;
+    char *Headline;
+    char *OriginCity;
+    char *StockCodes;
+    char *CompanyCodes;
+    char *IndustryCodes;
+} WAISDocumentLongHeader;
+
+typedef struct WAISDocumentText {
+    any *DocumentID;
+    long VersionNumber;
+    any *DocumentText;
+} WAISDocumentText;
+
+typedef struct WAISDocumentHeadlines {
+    any *DocumentID;
+    long VersionNumber;
+    char *Source;
+    char *Date;
+    char *Headline;
+    char *OriginCity;
+} WAISDocumentHeadlines;
+
+typedef struct WAISDocumentCodes {
+    any *DocumentID;
+    long VersionNumber;
+    char *StockCodes;
+    char *CompanyCodes;
+    char *IndustryCodes;
+} WAISDocumentCodes;
+
+typedef struct WAISSearchResponse {
+    char *SeedWordsUsed;
+    WAISDocumentHeader **DocHeaders;
+    WAISDocumentShortHeader **ShortHeaders;
+    WAISDocumentLongHeader **LongHeaders;
+    WAISDocumentText **Text;
+    WAISDocumentHeadlines **Headlines;
+    WAISDocumentCodes **Codes;
+    diagnosticRecord **Diagnostics;
+} WAISSearchResponse;
+
+/*----------------------------------------------------------------------*/
+/* Functions */
+
+char *generate_search_apdu(char *buff,	/* buffer to hold the apdu */
+			   long *buff_len,	/* number of bytes written to the buffer */
+			   char *seed_words,	/* string of the seed words */
+			   char *database_name,
+			   DocObj **docobjs,
+			   long maxDocsRetrieved);
+
+DocObj *makeDocObjUsingWholeDocument(any *aDocID, char *type);
+DocObj *makeDocObjUsingBytes(any *aDocID, char *type, long start, long end);
+DocObj *makeDocObjUsingLines(any *aDocID, char *type, long start, long end);
+DocObj *makeDocObjUsingParagraphs(any *aDocID, char *type, any *start, any *end);
+void freeDocObj(DocObj *doc);
+
+WAISInitResponse *makeWAISInitResponse(long chunkCode, long chunkIDLen,
+				       char *chunkMarker, char *highlightMarker,
+				       char *deHighlightMarker, char *newLineChars);
+void freeWAISInitResponse(WAISInitResponse *init);
+
+WAISSearch *makeWAISSearch(char *seedWords,
+			   DocObj **docs,
+			   char **textList,
+			   long dateFactor,
+			   char *beginDateRange,
+			   char *endDateRange,
+			   long maxDocsRetrieved);
+void freeWAISSearch(WAISSearch *query);
+
+WAISDocumentHeader *makeWAISDocumentHeader(any *aDocID,
+					   long versionNumber,
+					   long score,
+					   long bestMatch,
+					   long docLen,
+					   long lines,
+					   char **types,
+					   char *source,
+					   char *date,
+					   char *headline,
+					   char *originCity);
+void freeWAISDocumentHeader(WAISDocumentHeader *header);
+char *writeWAISDocumentHeader(WAISDocumentHeader *header, char *buffer, long *len);
+char *readWAISDocumentHeader(WAISDocumentHeader **header, char *buffer);
+
+WAISDocumentShortHeader *makeWAISDocumentShortHeader(any *aDocID,
+						     long versionNumber,
+						     long score,
+						     long bestMatch,
+						     long docLen,
+						     long lines);
+void freeWAISDocumentShortHeader(WAISDocumentShortHeader *header);
+char *writeWAISDocumentShortHeader(WAISDocumentShortHeader *header,
+				   char *buffer, long *len);
+char *readWAISDocumentShortHeader(WAISDocumentShortHeader **header, char *buffer);
+
+WAISDocumentLongHeader *makeWAISDocumentLongHeader(any *aDocID,
+						   long versionNumber,
+						   long score,
+						   long bestMatch,
+						   long docLen,
+						   long lines,
+						   char **types,
+						   char *source,
+						   char *date, char *headline,
+						   char *originCity,
+						   char *stockCodes,
+						   char *companyCodes,
+						   char *industryCodes);
+void freeWAISDocumentLongHeader(WAISDocumentLongHeader *header);
+char *writeWAISDocumentLongHeader(WAISDocumentLongHeader *header,
+				  char *buffer,
+				  long *len);
+char *readWAISDocumentLongHeader(WAISDocumentLongHeader **header, char *buffer);
+
+WAISSearchResponse *makeWAISSearchResponse(char *seedWordsUsed,
+					   WAISDocumentHeader **docHeaders,
+					   WAISDocumentShortHeader **shortHeaders,
+					   WAISDocumentLongHeader **longHeaders,
+					   WAISDocumentText **text, WAISDocumentHeadlines **headlines,
+					   WAISDocumentCodes **codes,
+					   diagnosticRecord ** diagnostics);
+void freeWAISSearchResponse(WAISSearchResponse * response);
+
+WAISDocumentText *makeWAISDocumentText(any *aDocID, long versionNumber,
+				       any *documentText);
+void freeWAISDocumentText(WAISDocumentText *docText);
+char *writeWAISDocumentText(WAISDocumentText *docText, char *buffer, long *len);
+char *readWAISDocumentText(WAISDocumentText **docText, char *buffer);
+
+WAISDocumentHeadlines *makeWAISDocumentHeadlines(any *aDocID,
+						 long versionNumber,
+						 char *source,
+						 char *date,
+						 char *headline,
+						 char *originCity);
+void freeWAISDocumentHeadlines(WAISDocumentHeadlines *docHeadline);
+char *writeWAISDocumentHeadlines(WAISDocumentHeadlines *docHeadline,
+				 char *buffer,
+				 long *len);
+char *readWAISDocumentHeadlines(WAISDocumentHeadlines **docHeadline, char *buffer);
+
+WAISDocumentCodes *makeWAISDocumentCodes(any *aDocID,
+					 long versionNumber,
+					 char *stockCodes,
+					 char *companyCodes,
+					 char *industryCodes);
+void freeWAISDocumentCodes(WAISDocumentCodes *docCodes);
+char *writeWAISDocumentCodes(WAISDocumentCodes *docCodes, char *buffer, long *len);
+char *readWAISDocumentCodes(WAISDocumentCodes **docCodes, char *buffer);
+
+any *makeWAISTextQuery(DocObj **docs);
+DocObj **readWAISTextQuery(any *terms);
+
+void CSTFreeWAISInitResponse(WAISInitResponse *init);
+void CSTFreeWAISSearch(WAISSearch *query);
+void CSTFreeDocObj(DocObj *doc);
+void CSTFreeWAISDocumentHeader(WAISDocumentHeader *header);
+void CSTFreeWAISDocumentShortHeader(WAISDocumentShortHeader *header);
+void CSTFreeWAISDocumentLongHeader(WAISDocumentLongHeader *header);
+void CSTFreeWAISSearchResponse(WAISSearchResponse * response);
+void CSTFreeWAISDocumentText(WAISDocumentText *docText);
+void CSTFreeWAISDocHeadlines(WAISDocumentHeadlines *docHeadline);
+void CSTFreeWAISDocumentCodes(WAISDocumentCodes *docCodes);
+void CSTFreeWAISTextQuery(any *query);
+
+/*----------------------------------------------------------------------*/
+
+#endif /* ndef _H_WAIS_protocol_ */
+
+/*
+ *	Routines originally from WMessage.h -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* WIDE AREA INFORMATION SERVER SOFTWARE
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+ * 3.26.90
+ */
+
+/* wais-message.h
+ *
+ * This is the header outside of WAIS Z39.50 messages.  The header will be
+ * printable ascii, so as to be transportable.  This header will precede each
+ * Z39.50 APDU, or zero-length message if it is an ACK or NACK.  Be sure to
+ * change hdr_vers current value if you change the structure of the header.
+ *
+ * The characters in the header are case insensitive so that the systems from
+ * the past that only handle one case can at least read the header.
+ *
+ * 7.5.90 HWM - added constants
+ * 7/5/90 brewster added funtion prototypes and comments
+ * 11/30/90 HWM - went to version 2 (inits and typed retrieval)
+ */
+
+#ifndef WMESSAGE_H
+#define WMESSAGE_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#include <HTVMS_WaisUI.h>
+
+typedef struct wais_header {
+    char msg_len[10];		/* length in bytes of following message */
+    char msg_type;		/* type of message: 'z'=Z39.50 APDU,
+				   'a'=ACK, 'n'=NACK */
+    char hdr_vers;		/* version of this header, currently = '2' */
+    char server[10];		/* name or address of server */
+    char compression;		/* <sp>=no compression, 'u'=unix compress */
+    char encoding;		/* <sp>=no encoding, 'h'=hexize,
+				   'u'=uuencode */
+    char msg_checksum;		/* XOR of every byte of message */
+} WAISMessage;
+
+#define HEADER_LENGTH	25	/* number of bytes needed to write a
+				   wais-header (not sizeof(wais_header)) */
+
+#define HEADER_VERSION	(long)'2'
+
+/* message type */
+#define Z3950			'z'
+#define ACK			'a'
+#define	NAK			'n'
+
+/* compression */
+#define NO_COMPRESSION		' '
+#define UNIX_COMPRESSION	'u'
+
+/* encoding */
+#define NO_ENCODING		' '
+#define HEX_ENCODING		'h'	/* Swartz 4/3 encoding */
+#define IBM_HEXCODING		'i'	/* same as h but uses characters acceptable for IBM mainframes */
+#define UUENCODE		'u'
+
+void readWAISPacketHeader(char *msgBuffer, WAISMessage * header_struct);
+long getWAISPacketLength(WAISMessage * header);
+void writeWAISPacketHeader(char *header, long dataLen, long type,
+			   char *server, long compression,
+			   long encoding, long version);
+
+#endif /* ndef WMESSAGE_H */
diff --git a/WWW/Library/Implementation/HTVMS_WaisUI.c b/WWW/Library/Implementation/HTVMS_WaisUI.c
new file mode 100644
index 00000000..d8f73019
--- /dev/null
+++ b/WWW/Library/Implementation/HTVMS_WaisUI.c
@@ -0,0 +1,2280 @@
+/*
+ * $LynxId: HTVMS_WaisUI.c,v 1.17 2010/10/29 21:10:14 tom Exp $
+ *								HTVMS_WAISUI.c
+ *
+ *	Adaptation for Lynx by F.Macrides (macrides@sci.wfeb.edu)
+ *
+ *	30-May-1994 FM	Initial version.
+ *
+ *----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from UI.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* WIDE AREA INFORMATION SERVER SOFTWARE:
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+ *
+ * Brewster@think.com
+ */
+
+/*
+ * this is a simple ui toolkit for building other ui's on top.
+ * -brewster
+ *
+ * top level functions:
+ *   generate_search_apdu
+ *   generate_retrieval_apdu
+ *   interpret_message
+ *
+ */
+
+/* to do:
+ *   generate multiple queries for long documents.
+ *     this will crash if the file being retrieved is larger than 100k.
+ *   do log_write()
+ *
+ */
+
+#include <HTUtils.h>
+
+#ifdef VMS
+#include <HTVMS_WaisUI.h>
+#include <HTVMS_WaisProt.h>
+#include <HTTCP.h>
+
+#undef MAXINT			/* we don't need it here, and www_tcp.h may conflict */
+#include <math.h>
+
+#include <LYexit.h>
+#include <LYLeaks.h>
+
+void log_write(char *s GCC_UNUSED)
+{
+    return;
+}
+
+/*----------------------------------------------------------------------*/
+
+/* returns a pointer in the buffer of the first free byte.
+   if it overflows, then NULL is returned
+ */
+char *generate_search_apdu(char *buff,	/* buffer to hold the apdu */
+			   long *buff_len,	/* length of the buffer changed to reflect new data written */
+			   char *seed_words,	/* string of the seed words */
+			   char *database_name,
+			   DocObj **docobjs,
+			   long maxDocsRetrieved)
+{
+    /* local variables */
+
+    SearchAPDU *search3;
+    char *end_ptr;
+    static char *database_names[2] =
+    {"", 0};
+    any refID;
+    WAISSearch *query;
+
+    refID.size = 1;
+    refID.bytes = "3";
+
+    database_names[0] = database_name;
+    query = makeWAISSearch(seed_words,
+			   docobjs,	/* DocObjsPtr */
+			   0,
+			   1,	/* DateFactor */
+			   0,	/* BeginDateRange */
+			   0,	/* EndDateRange */
+			   maxDocsRetrieved
+	);
+
+    search3 = makeSearchAPDU(30,
+			     5000,	/* should be large */
+			     30,
+			     1,	/* replace indicator */
+			     "",	/* result set name */
+			     database_names,	/* database name */
+			     QT_RelevanceFeedbackQuery,		/* query_type */
+			     0,	/* element name */
+			     NULL,	/* reference ID */
+			     query);
+
+    end_ptr = writeSearchAPDU(search3, buff, buff_len);
+
+    CSTFreeWAISSearch(query);
+    freeSearchAPDU(search3);
+    return (end_ptr);
+}
+
+/*----------------------------------------------------------------------*/
+
+/* returns a pointer into the buffer of the next free byte.
+   if it overflowed, then NULL is returned
+ */
+
+char *generate_retrieval_apdu(char *buff,
+			      long *buff_len,	/* length of the buffer changed to reflect new data written */
+			      any *docID,
+			      long chunk_type,
+			      long start,
+			      long end,
+			      char *type,
+			      char *database_name)
+{
+    SearchAPDU *search;
+    char *end_ptr;
+
+    static char *database_names[2];
+    static char *element_names[3];
+    any refID;
+
+    DocObj *DocObjs[2];
+    any *query;			/* changed from char* by brewster */
+
+    if (NULL == type)
+	type = s_strdup("TEXT");
+
+    database_names[0] = database_name;
+    database_names[1] = NULL;
+
+    element_names[0] = " ";
+    element_names[1] = ES_DocumentText;
+    element_names[2] = NULL;
+
+    refID.size = 1;
+    refID.bytes = "3";
+
+    switch (chunk_type) {
+    case CT_line:
+	DocObjs[0] = makeDocObjUsingLines(docID, type, start, end);
+	break;
+    case CT_byte:
+	DocObjs[0] = makeDocObjUsingBytes(docID, type, start, end);
+	break;
+    }
+    DocObjs[1] = NULL;
+
+    query = makeWAISTextQuery(DocObjs);
+    search = makeSearchAPDU(10, 16, 15,
+			    1,	/* replace indicator */
+			    "FOO",	/* result set name */
+			    database_names,	/* database name */
+			    QT_TextRetrievalQuery,	/* query_type */
+			    element_names,	/* element name */
+			    &refID,	/* reference ID */
+			    query);
+    end_ptr = writeSearchAPDU(search, buff, buff_len);
+    CSTFreeWAISTextQuery(query);
+    freeSearchAPDU(search);
+    return (end_ptr);
+}
+
+/*----------------------------------------------------------------------*/
+
+/* this is a safe version of unix 'read' it does all the checking
+ * and looping necessary
+ * to those trying to modify the transport code to use non-UNIX streams:
+ *  This is the function to modify!
+ */
+static long read_from_stream(int d, char *buf, long nbytes)
+{
+    long didRead;
+    long toRead = nbytes;
+    long totalRead = 0;		/* paranoia */
+
+    while (toRead > 0) {
+	didRead = NETREAD(d, buf, (int) toRead);
+	if (didRead == HT_INTERRUPTED)
+	    return (HT_INTERRUPTED);
+	if (didRead == -1)	/* error */
+	    return (-1);
+	if (didRead == 0)	/* eof */
+	    return (-2);	/* maybe this should return 0? */
+	toRead -= didRead;
+	buf += didRead;
+	totalRead += didRead;
+    }
+    if (totalRead != nbytes)	/* we overread for some reason */
+	return (-totalRead);	/* bad news */
+    return (totalRead);
+}
+
+/*----------------------------------------------------------------------*/
+
+/* returns the length of the response, 0 if an error */
+
+static long transport_message(long connection,
+			      char *request_message,
+			      long request_length,
+			      char *response_message,
+			      long response_buffer_length)
+{
+    WAISMessage header;
+    long response_length;
+    int rv;
+
+    /* Write out message.  Read back header.  Figure out response length. */
+
+    if (request_length + HEADER_LENGTH !=
+	NETWRITE(connection, request_message,
+		 (int) (request_length + HEADER_LENGTH)))
+	return 0;
+
+    /* read for the first '0' */
+
+    while (1) {
+	rv = read_from_stream(connection, response_message, 1);
+	if (rv == HT_INTERRUPTED)
+	    return HT_INTERRUPTED;
+	if (rv < 0)
+	    return 0;
+	if ('0' == response_message[0])
+	    break;
+    }
+
+    rv = read_from_stream(connection, response_message + 1, HEADER_LENGTH - 1);
+    if (rv == HT_INTERRUPTED)
+	return HT_INTERRUPTED;
+    if (rv < 0)
+	return 0;
+
+    readWAISPacketHeader(response_message, &header);
+    {
+	char length_array[11];
+
+	StrNCpy(length_array, header.msg_len, 10);
+	length_array[10] = '\0';
+	response_length = atol(length_array);
+	/*
+	   if(verbose){
+	   printf("WAIS header: '%s' length_array: '%s'\n",
+	   response_message, length_array);
+	   }
+	 */
+	if (response_length > response_buffer_length) {
+	    /* we got a message that is too long, therefore empty the message out,
+	       and return 0 */
+	    long i;
+
+	    for (i = 0; i < response_length; i++) {
+		rv = read_from_stream(connection,
+				      response_message + HEADER_LENGTH,
+				      1);
+		if (rv == HT_INTERRUPTED)
+		    return HT_INTERRUPTED;
+		if (rv < 0)
+		    return 0;
+	    }
+	    return (0);
+	}
+    }
+    rv = read_from_stream(connection,
+			  response_message + HEADER_LENGTH,
+			  response_length);
+    if (rv == HT_INTERRUPTED)
+	return HT_INTERRUPTED;
+    if (rv < 0)
+	return 0;
+    return (response_length);
+}
+
+/*----------------------------------------------------------------------*/
+
+/* returns the number of bytes written.  0 if an error */
+long interpret_message(char *request_message,
+		       long request_length,	/* length of the buffer */
+		       char *response_message,
+		       long response_buffer_length,
+		       long connection,
+		       boolean verbose GCC_UNUSED)
+{
+    long response_length;
+
+    /* ?
+       if(verbose){
+       printf ("sending");
+       if(hostname_internal && strlen(hostname_internal) > 0)
+       printf(" to host %s", hostname_internal);
+       if(service_name && strlen(service_name) > 0)
+       printf(" for service %s", service_name);
+       printf("\n");
+       twais_dsply_rsp_apdu(request_message + HEADER_LENGTH,
+       request_length);
+       }
+
+     */
+
+    writeWAISPacketHeader(request_message,
+			  request_length,
+			  (long) 'z',	/* Z39.50 */
+			  "wais      ",		/* server name */
+			  (long) NO_COMPRESSION,	/* no compression */
+			  (long) NO_ENCODING, (long) HEADER_VERSION);
+    if (connection != 0) {
+	response_length = transport_message(connection, request_message,
+					    request_length,
+					    response_message,
+					    response_buffer_length);
+	if (response_length == HT_INTERRUPTED)
+	    return (HT_INTERRUPTED);
+    } else
+	return (0);
+
+    return (response_length);
+}
+
+/*----------------------------------------------------------------------*/
+
+/* modifies the string to exclude all seeker codes. sets length to
+   the new length. */
+static char *delete_seeker_codes(char *string, long *length)
+{
+    long original_count;	/* index into the original string */
+    long new_count = 0;		/* index into the collapsed string */
+
+    for (original_count = 0; original_count < *length; original_count++) {
+	if (27 == string[original_count]) {
+	    /* then we have an escape code */
+	    /* if the next letter is '(' or ')', then ignore two letters */
+	    if ('(' == string[original_count + 1] ||
+		')' == string[original_count + 1])
+		original_count += 1;	/* it is a term marker */
+	    else
+		original_count += 4;	/* it is a paragraph marker */
+	} else
+	    string[new_count++] = string[original_count];
+    }
+    *length = new_count;
+    return (string);
+}
+
+/*----------------------------------------------------------------------*/
+
+#if defined(VMS) && defined(__GNUC__)	/* 10-AUG-1995 [pr] */
+/*
+  Workaround for an obscure bug in gcc's 2.6.[123] and 2.7.0 vax/vms port;
+  sometimes global variables will end up not being defined properly,
+  causing first gas to assume they're routines, then the linker to complain
+  about unresolved symbols, and finally the program to reference the wrong
+  objects (provoking ACCVIO).  It's triggered by the specific ordering of
+  variable usage in the source code, hence rarely appears.  This bug is
+  fixed in gcc 2.7.1, and was not present in 2.6.0 and earlier.
+
+   Make a reference to VAXCRTL's _ctype_[], and also one to this dummy
+   variable itself to prevent any "defined but not used" warning.
+ */
+static __const void *__const ctype_dummy[] =
+{&_ctype_, &ctype_dummy};
+#endif /* VMS && __GNUC__ */
+
+/* returns a pointer to a string with good stuff */
+char *trim_junk(char *headline)
+{
+    long length = strlen(headline) + 1;		/* include the trailing null */
+    size_t i;
+
+    headline = delete_seeker_codes(headline, &length);
+    /* delete leading spaces */
+    for (i = 0; i < strlen(headline); i++) {
+	if (isprint(headline[i])) {
+	    break;
+	}
+    }
+    headline = headline + i;
+    /* delete trailing stuff */
+    for (i = strlen(headline) - 1; i > 0; i--) {
+	if (isprint(headline[i])) {
+	    break;
+	}
+	headline[i] = '\0';
+    }
+    return (headline);
+}
+
+/*----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from ZProt.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* WIDE AREA INFORMATION SERVER SOFTWARE:`
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+ *
+ * 3.26.90	Harry Morris, morris@think.com
+ * 3.30.90  Harry Morris - Changed any->bits to any->bytes
+ * 4.11.90  HWM - generalized conditional includes (see c-dialect.h)
+ */
+
+#define RESERVE_SPACE_FOR_HEADER(spaceLeft)		\
+	*spaceLeft -= HEADER_LEN;
+
+#define RELEASE_HEADER_SPACE(spaceLeft)			\
+	if (*spaceLeft > 0)				\
+	  *spaceLeft += HEADER_LEN;
+
+/*----------------------------------------------------------------------*/
+
+InitResponseAPDU *makeInitResponseAPDU(boolean result,
+				       boolean search,
+				       boolean present,
+				       boolean deleteIt,
+				       boolean accessControl,
+				       boolean resourceControl,
+				       long prefSize,
+				       long maxMsgSize,
+				       char *auth,
+				       char *id,
+				       char *name,
+				       char *version,
+				       any *refID,
+				       void *userInfo)
+/* build an initResponse APDU with user specified information */
+{
+    InitResponseAPDU *init = (InitResponseAPDU *) s_malloc((size_t) sizeof(InitResponseAPDU));
+
+    init->PDUType = initResponseAPDU;
+    init->Result = result;
+    init->willSearch = search;
+    init->willPresent = present;
+    init->willDelete = deleteIt;
+    init->supportAccessControl = accessControl;
+    init->supportResourceControl = resourceControl;
+    init->PreferredMessageSize = prefSize;
+    init->MaximumRecordSize = maxMsgSize;
+    init->IDAuthentication = s_strdup(auth);
+    init->ImplementationID = s_strdup(id);
+    init->ImplementationName = s_strdup(name);
+    init->ImplementationVersion = s_strdup(version);
+    init->ReferenceID = duplicateAny(refID);
+    init->UserInformationField = userInfo;	/* not copied! */
+
+    return (init);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeInitResponseAPDU(InitResponseAPDU *init)
+/* free an initAPDU */
+{
+    s_free(init->IDAuthentication);
+    s_free(init->ImplementationID);
+    s_free(init->ImplementationName);
+    s_free(init->ImplementationVersion);
+    freeAny(init->ReferenceID);
+    s_free(init);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeInitResponseAPDU(InitResponseAPDU *init, char *buffer, long *len)
+/* write the initResponse to a buffer, adding system information */
+{
+    char *buf = buffer + HEADER_LEN;	/* leave room for the header-length-indicator */
+    long size;
+    bit_map *optionsBM = NULL;
+
+    RESERVE_SPACE_FOR_HEADER(len);
+
+    buf = writePDUType(init->PDUType, buf, len);
+    buf = writeBoolean(init->Result, buf, len);
+    buf = writeProtocolVersion(buf, len);
+
+    optionsBM = makeBitMap((unsigned long) 5, init->willSearch, init->willPresent,
+			   init->willDelete, init->supportAccessControl,
+			   init->supportResourceControl);
+    buf = writeBitMap(optionsBM, DT_Options, buf, len);
+    freeBitMap(optionsBM);
+
+    buf = writeNum(init->PreferredMessageSize,
+		   DT_PreferredMessageSize,
+		   buf,
+		   len);
+    buf = writeNum(init->MaximumRecordSize,
+		   DT_MaximumRecordSize,
+		   buf,
+		   len);
+    buf = writeString(init->IDAuthentication,
+		      DT_IDAuthentication,
+		      buf,
+		      len);
+    buf = writeString(init->ImplementationID,
+		      DT_ImplementationID,
+		      buf,
+		      len);
+    buf = writeString(init->ImplementationName,
+		      DT_ImplementationName,
+		      buf,
+		      len);
+    buf = writeString(init->ImplementationVersion,
+		      DT_ImplementationVersion,
+		      buf,
+		      len);
+    buf = writeAny(init->ReferenceID,
+		   DT_ReferenceID,
+		   buf,
+		   len);
+
+    /* go back and write the header-length-indicator */
+    RELEASE_HEADER_SPACE(len);
+    size = buf - buffer - HEADER_LEN;
+    writeBinaryInteger(size, HEADER_LEN, buffer, len);
+
+    if (init->UserInformationField != NULL)
+	buf = writeInitResponseInfo(init, buf, len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readInitResponseAPDU(InitResponseAPDU **init, char *buffer)
+{
+    char *buf = buffer;
+    boolean search, present, delete, accessControl, resourceControl;
+    long prefSize, maxMsgSize;
+    char *auth, *id, *name, *version;
+    long size;
+    pdu_type pduType;
+    bit_map *versionBM = NULL;
+    bit_map *optionsBM = NULL;
+    boolean result;
+    any *refID = NULL;
+    void *userInfo = NULL;
+
+    auth = id = name = version = NULL;
+    refID = NULL;
+
+    /* read required part */
+    buf = readBinaryInteger(&size, HEADER_LEN, buf);
+    buf = readPDUType(&pduType, buf);
+    buf = readBoolean(&result, buf);
+    buf = readBitMap(&versionBM, buf);
+    buf = readBitMap(&optionsBM, buf);
+    buf = readNum(&prefSize, buf);
+    buf = readNum(&maxMsgSize, buf);
+
+    /* decode optionsBM */
+    search = bitAtPos(0, optionsBM);
+    present = bitAtPos(1, optionsBM);
+    delete = bitAtPos(2, optionsBM);
+    accessControl = bitAtPos(3, optionsBM);
+    resourceControl = bitAtPos(4, optionsBM);
+
+    /* read optional part */
+    while (buf < (buffer + size + HEADER_LEN)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_IDAuthentication:
+	    buf = readString(&auth, buf);
+	    break;
+	case DT_ImplementationID:
+	    buf = readString(&id, buf);
+	    break;
+	case DT_ImplementationName:
+	    buf = readString(&name, buf);
+	    break;
+	case DT_ImplementationVersion:
+	    buf = readString(&version, buf);
+	    break;
+	case DT_ReferenceID:
+	    buf = readAny(&refID, buf);
+	    break;
+	default:
+	    freeBitMap(versionBM);
+	    freeBitMap(optionsBM);
+	    s_free(auth);
+	    s_free(id);
+	    s_free(name);
+	    s_free(version);
+	    freeAny(refID);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    buf = readInitResponseInfo(&userInfo, buf);
+    if (buf == NULL) {
+	freeBitMap(versionBM);
+	freeBitMap(optionsBM);
+	s_free(auth);
+	s_free(id);
+	s_free(name);
+	s_free(version);
+	freeAny(refID);
+    }
+    RETURN_ON_NULL(buf);
+
+    /* construct the basic init object */
+    *init = makeInitResponseAPDU(result,
+				 search,
+				 present,
+				 delete,
+				 accessControl,
+				 resourceControl,
+				 prefSize,
+				 maxMsgSize,
+				 auth,
+				 id,
+				 name,
+				 version,
+				 refID,
+				 userInfo);
+
+    freeBitMap(versionBM);
+    freeBitMap(optionsBM);
+    s_free(auth);
+    s_free(id);
+    s_free(name);
+    s_free(version);
+    freeAny(refID);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+InitResponseAPDU *replyToInitAPDU(InitAPDU * init, boolean result, void *userInfo)
+/* respond to an init message in the default way - echoing back
+   the init info
+ */
+{
+    InitResponseAPDU *initResp;
+
+    initResp = makeInitResponseAPDU(result,
+				    init->willSearch,
+				    init->willPresent,
+				    init->willDelete,
+				    init->supportAccessControl,
+				    init->supportResourceControl,
+				    init->PreferredMessageSize,
+				    init->MaximumRecordSize,
+				    init->IDAuthentication,
+				    defaultImplementationID(),
+				    defaultImplementationName(),
+				    defaultImplementationVersion(),
+				    init->ReferenceID,
+				    userInfo);
+    return (initResp);
+}
+
+/*----------------------------------------------------------------------*/
+
+SearchAPDU *makeSearchAPDU(long small,
+			   long large,
+			   long medium,
+			   boolean replace,
+			   char *name,
+			   char **databases,
+			   char *type,
+			   char **elements,
+			   any *refID,
+			   void *queryInfo)
+{
+    char *ptr = NULL;
+    long i;
+    SearchAPDU *query = (SearchAPDU *) s_malloc((size_t) sizeof(SearchAPDU));
+
+    query->PDUType = searchAPDU;
+    query->SmallSetUpperBound = small;
+    query->LargeSetLowerBound = large;
+    query->MediumSetPresentNumber = medium;
+    query->ReplaceIndicator = replace;
+    query->ResultSetName = s_strdup(name);
+    query->DatabaseNames = NULL;
+    if (databases != NULL) {
+	for (i = 0, ptr = databases[i]; ptr != NULL; ptr = databases[++i]) {
+	    if (query->DatabaseNames == NULL)
+		query->DatabaseNames = (char **) s_malloc((size_t) (sizeof(char
+									   *)
+								    * 2));
+
+	    else
+		query->DatabaseNames = (char **) s_realloc((char *) query->DatabaseNames,
+							   (size_t) (sizeof(char
+									    *) *
+								     (i + 2)));
+
+	    query->DatabaseNames[i] = s_strdup(ptr);
+	    query->DatabaseNames[i + 1] = NULL;
+	}
+    }
+    query->QueryType = s_strdup(type);
+    query->ElementSetNames = NULL;
+    if (elements != NULL) {
+	for (i = 0, ptr = elements[i]; ptr != NULL; ptr = elements[++i]) {
+	    if (query->ElementSetNames == NULL)
+		query->ElementSetNames =
+		    (char **) s_malloc((size_t) (sizeof(char *) * 2));
+
+	    else
+		query->ElementSetNames = (char **) s_realloc((char *) query->ElementSetNames,
+							     (size_t) (sizeof(char
+									      *) *
+								       (i + 2)));
+
+	    query->ElementSetNames[i] = s_strdup(ptr);
+	    query->ElementSetNames[i + 1] = NULL;
+	}
+    }
+    query->ReferenceID = duplicateAny(refID);
+    query->Query = queryInfo;	/* not copied! */
+    return (query);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeSearchAPDU(SearchAPDU *query)
+{
+    s_free(query->ResultSetName);
+    s_free(query->QueryType);
+    doList((void **) query->DatabaseNames, fs_free);	/* can't use the macro here ! */
+    s_free(query->DatabaseNames);
+    doList((void **) query->ElementSetNames, fs_free);	/* can't use the macro here ! */
+    s_free(query->ElementSetNames);
+    freeAny(query->ReferenceID);
+    s_free(query);
+}
+
+/*----------------------------------------------------------------------*/
+
+#define DB_DELIMITER	"\037"	/* hex 1F occurs between each database name */
+#define ES_DELIMITER_1	"\037"	/* separates database name from element name */
+#define ES_DELIMITER_2	"\036"	/* hex 1E separates <db,es> groups from one another */
+
+char *writeSearchAPDU(SearchAPDU *query, char *buffer, long *len)
+{
+    char *buf = buffer + HEADER_LEN;	/* leave room for the header-length-indicator */
+    long size, i;
+    char *ptr = NULL;
+    char *scratch = NULL;
+
+    RESERVE_SPACE_FOR_HEADER(len);
+
+    buf = writePDUType(query->PDUType, buf, len);
+    buf = writeBinaryInteger(query->SmallSetUpperBound, (size_t) 3, buf, len);
+    buf = writeBinaryInteger(query->LargeSetLowerBound, (size_t) 3, buf, len);
+    buf = writeBinaryInteger(query->MediumSetPresentNumber, (size_t) 3, buf, len);
+    buf = writeBoolean(query->ReplaceIndicator, buf, len);
+    buf = writeString(query->ResultSetName, DT_ResultSetName, buf, len);
+    /* write database names */
+    if (query->DatabaseNames != NULL) {
+	for (i = 0, scratch = NULL, ptr = query->DatabaseNames[i]; ptr != NULL;
+	     ptr = query->DatabaseNames[++i]) {
+	    if (scratch == NULL)
+		scratch = s_strdup(ptr);
+	    else {
+		size_t newScratchSize = (size_t) (strlen(scratch) +
+						  strlen(ptr) + 2);
+
+		scratch = (char *) s_realloc(scratch, newScratchSize);
+		s_strncat(scratch, DB_DELIMITER, 2, newScratchSize);
+		s_strncat(scratch, ptr, strlen(ptr) + 1, newScratchSize);
+	    }
+	}
+	buf = writeString(scratch, DT_DatabaseNames, buf, len);
+	s_free(scratch);
+    }
+    buf = writeString(query->QueryType, DT_QueryType, buf, len);
+    /* write element set names */
+    if (query->ElementSetNames != NULL) {
+	for (i = 0, scratch = NULL, ptr = query->ElementSetNames[i];
+	     ptr != NULL;
+	     ptr = query->ElementSetNames[++i]) {
+	    if (scratch == NULL) {
+		if (query->ElementSetNames[i + 1] == NULL)	/* there is a single element set name */
+		{
+		    scratch = (char *) s_malloc((size_t) strlen(ptr) + 2);
+		    StrNCpy(scratch, ES_DELIMITER_1, 2);
+		    s_strncat(scratch, ptr, strlen(ptr) + 1, strlen(ptr) + 2);
+		} else {	/* this is the first of a series of element set names */
+		    size_t newScratchSize = (size_t) (strlen(ptr) +
+						      strlen(query->ElementSetNames[i
+										    + 1])
+						      + 2);
+
+		    scratch = s_strdup(ptr);	/* the database name */
+		    ptr = query->ElementSetNames[++i];	/* the element set name */
+		    scratch = (char *) s_realloc(scratch, newScratchSize);
+		    s_strncat(scratch, ES_DELIMITER_1, 2, newScratchSize);
+		    s_strncat(scratch, ptr, strlen(ptr) + 1, newScratchSize);
+		}
+	    } else {
+		char *esPtr = query->ElementSetNames[++i];	/* the element set name */
+		size_t newScratchSize = (size_t) (strlen(scratch) +
+						  strlen(ptr) +
+						  strlen(esPtr) +
+						  3);
+
+		scratch = (char *) s_realloc(scratch, newScratchSize);
+		s_strncat(scratch, ES_DELIMITER_2, 2, newScratchSize);
+		s_strncat(scratch, ptr, strlen(ptr) + 1, newScratchSize);
+		s_strncat(scratch, ES_DELIMITER_1, 2, newScratchSize);
+		s_strncat(scratch, esPtr, strlen(esPtr) + 1, newScratchSize);
+	    }
+	}
+	buf = writeString(scratch, DT_ElementSetNames, buf, len);
+	s_free(scratch);
+    }
+    buf = writeAny(query->ReferenceID, DT_ReferenceID, buf, len);
+
+    /* go back and write the header-length-indicator */
+    RELEASE_HEADER_SPACE(len);
+    size = buf - buffer - HEADER_LEN;
+    writeBinaryInteger(size, HEADER_LEN, buffer, len);
+
+    if (query->Query != NULL)
+	buf = writeSearchInfo(query, buf, len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+SearchResponseAPDU *makeSearchResponseAPDU(long result,
+					   long count,
+					   long recordsReturned,
+					   long nextPos,
+					   long resultStatus,
+					   long presentStatus,
+					   any *refID,
+					   void *records)
+{
+    SearchResponseAPDU *query =
+    (SearchResponseAPDU *) s_malloc((size_t) sizeof(SearchResponseAPDU));
+
+    query->PDUType = searchResponseAPDU;
+    query->SearchStatus = result;
+    query->ResultCount = count;
+    query->NumberOfRecordsReturned = recordsReturned;
+    query->NextResultSetPosition = nextPos;
+    query->ResultSetStatus = resultStatus;
+    query->PresentStatus = presentStatus;
+    query->ReferenceID = duplicateAny(refID);
+    query->DatabaseDiagnosticRecords = records;
+    return (query);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeSearchResponseAPDU(SearchResponseAPDU *queryResponse)
+{
+    freeAny(queryResponse->ReferenceID);
+    s_free(queryResponse);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeSearchResponseAPDU(SearchResponseAPDU *queryResponse, char *buffer,
+			      long *len)
+{
+    char *buf = buffer + HEADER_LEN;	/* leave room for the header-length-indicator */
+    long size;
+
+    RESERVE_SPACE_FOR_HEADER(len);
+
+    buf = writePDUType(queryResponse->PDUType,
+		       buf,
+		       len);
+    buf = writeBinaryInteger(queryResponse->SearchStatus,
+			     (size_t) 1,
+			     buf,
+			     len);
+    buf = writeBinaryInteger(queryResponse->ResultCount,
+			     (size_t) 3,
+			     buf,
+			     len);
+    buf = writeBinaryInteger(queryResponse->NumberOfRecordsReturned,
+			     (size_t) 3,
+			     buf,
+			     len);
+    buf = writeBinaryInteger(queryResponse->NextResultSetPosition,
+			     (size_t) 3,
+			     buf,
+			     len);
+    buf = writeNum(queryResponse->ResultSetStatus,
+		   DT_ResultSetStatus,
+		   buf,
+		   len);
+    buf = writeNum(queryResponse->PresentStatus,
+		   DT_PresentStatus,
+		   buf,
+		   len);
+    buf = writeAny(queryResponse->ReferenceID,
+		   DT_ReferenceID,
+		   buf,
+		   len);
+
+    /* go back and write the header-length-indicator */
+    RELEASE_HEADER_SPACE(len);
+    size = buf - buffer - HEADER_LEN;
+    writeBinaryInteger(size, HEADER_LEN, buffer, len);
+
+    if (queryResponse->DatabaseDiagnosticRecords != NULL)
+	buf = writeSearchResponseInfo(queryResponse, buf, len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readSearchResponseAPDU(SearchResponseAPDU **queryResponse, char *buffer)
+{
+    char *buf = buffer;
+    long size;
+    pdu_type pduType;
+    long result, count, recordsReturned, nextPos;
+    long resultStatus, presentStatus;
+    any *refID = NULL;
+    void *userInfo = NULL;
+
+    /* read required part */
+    buf = readBinaryInteger(&size, HEADER_LEN, buf);
+    buf = readPDUType(&pduType, buf);
+    buf = readBinaryInteger(&result, (size_t) 1, buf);
+    buf = readBinaryInteger(&count, (size_t) 3, buf);
+    buf = readBinaryInteger(&recordsReturned, (size_t) 3, buf);
+    buf = readBinaryInteger(&nextPos, (size_t) 3, buf);
+
+    resultStatus = presentStatus = UNUSED;
+    refID = NULL;
+
+    /* read optional part */
+    while (buf < (buffer + size + HEADER_LEN)) {
+	data_tag tag = peekTag(buf);
+
+	switch (tag) {
+	case DT_ResultSetStatus:
+	    buf = readNum(&resultStatus, buf);
+	    break;
+	case DT_PresentStatus:
+	    buf = readNum(&presentStatus, buf);
+	    break;
+	case DT_ReferenceID:
+	    buf = readAny(&refID, buf);
+	    break;
+	default:
+	    freeAny(refID);
+	    REPORT_READ_ERROR(buf);
+	    break;
+	}
+    }
+
+    buf = readSearchResponseInfo(&userInfo, buf);
+    if (buf == NULL)
+	freeAny(refID);
+    RETURN_ON_NULL(buf);
+
+    /* construct the search object */
+    *queryResponse = makeSearchResponseAPDU(result,
+					    count,
+					    recordsReturned,
+					    nextPos,
+					    (long) resultStatus,
+					    (long) presentStatus,
+					    refID,
+					    userInfo);
+
+    freeAny(refID);
+
+    return (buf);
+}
+
+/*
+ *	Routines originally from ZUtil.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* WIDE AREA INFORMATION SERVER SOFTWARE:
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+ *
+ * 3.26.90	Harry Morris, morris@think.com
+ * 3.30.90  Harry Morris - Changed any->bits to any->bytes
+ * 4.11.90  HWM - fixed include file names, changed
+ *		- writeCompressedIntegerWithPadding() to
+ *		  writeCompressedIntWithPadding()
+ *		- generalized conditional includes (see c-dialect.h)
+ * 3.7.91   Jonny Goldman.  Replaced "short" in makeBitMap with "int" line 632.
+ */
+
+char *readErrorPosition = NULL;	/* pos where buf stoped making sense */
+
+/*----------------------------------------------------------------------*/
+/* A note on error handling
+   read - these are low level routines, they do not check the type tags
+   which (sometimes) preceed the data (this is done by the higher
+   level functions which call these functions).  There is no
+   attempt made to check that the reading does not exceed the read
+   buffer.  Such cases should be very rare and usually will be
+   caught by the calling functions. (note - it is unlikely that
+   a series of low level reads will go far off the edge without
+   triggering a type error.  However, it is possible for a single
+   bad read in an array function (eg. readAny) to attempt to read a
+   large ammount, possibly causing a segmentation violation or out
+   of memory condition.
+ */
+/*----------------------------------------------------------------------*/
+
+diagnosticRecord *makeDiag(boolean surrogate, char *code, char *addInfo)
+{
+    diagnosticRecord *diag =
+    (diagnosticRecord *) s_malloc((size_t) sizeof(diagnosticRecord));
+
+    diag->SURROGATE = surrogate;
+    MemCpy(diag->DIAG, code, DIAGNOSTIC_CODE_SIZE);
+    diag->ADDINFO = s_strdup(addInfo);
+
+    return (diag);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeDiag(diagnosticRecord * diag)
+{
+    if (diag != NULL) {
+	if (diag->ADDINFO != NULL)
+	    s_free(diag->ADDINFO);
+	s_free(diag);
+    }
+}
+
+/*----------------------------------------------------------------------*/
+
+#define END_OF_RECORD	0x1D
+
+char *writeDiag(diagnosticRecord * diag, char *buffer, long *len)
+/* diagnostics (as per Appendix D) have a very weird format - this changes
+   in SR-1
+ */
+{
+    char *buf = buffer;
+    long length;
+
+    if (diag == NULL)		/* handle unspecified optional args */
+	return (buf);
+
+    buf = writeTag(DT_DatabaseDiagnosticRecords, buf, len);
+    CHECK_FOR_SPACE_LEFT(0, len);
+
+    length = 3;
+    if (diag->ADDINFO != NULL)
+	length += strlen(diag->ADDINFO);
+
+    if (length >= 0xFFFF)	/* make sure the length is reasonable */
+    {
+	length = 0xFFFF - 1;
+	diag->ADDINFO[0xFFFF - 3 - 1] = '\0';
+    }
+
+    buf = writeBinaryInteger(length, 2, buf, len);
+
+    CHECK_FOR_SPACE_LEFT(1, len);
+    buf[0] = diag->DIAG[0];
+    buf++;
+
+    CHECK_FOR_SPACE_LEFT(1, len);
+    buf[0] = diag->DIAG[1];
+    buf++;
+
+    if (length > 3) {
+	CHECK_FOR_SPACE_LEFT(3, len);
+	MemCpy(buf, diag->ADDINFO, length - 3);
+	buf += length - 3;
+    }
+
+    CHECK_FOR_SPACE_LEFT(1, len);
+    buf[0] = diag->SURROGATE;
+    buf++;
+
+    CHECK_FOR_SPACE_LEFT(1, len);
+    buf[0] = END_OF_RECORD;
+    buf++;
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readDiag(diagnosticRecord ** diag, char *buffer)
+{
+    char *buf = buffer;
+    diagnosticRecord *d = (diagnosticRecord *) s_malloc((size_t) sizeof(diagnosticRecord));
+    data_tag tag;
+    long len;
+
+    buf = readTag(&tag, buf);
+
+    buf = readBinaryInteger(&len, 2, buf);
+
+    d->DIAG[0] = buf[0];
+    d->DIAG[1] = buf[1];
+    d->DIAG[2] = '\0';
+
+    if (len > 3) {
+	d->ADDINFO = (char *) s_malloc((size_t) (len - 3 + 1));
+	MemCpy(d->ADDINFO, (char *) (buf + 2), len - 3);
+	d->ADDINFO[len - 3] = '\0';
+    } else
+	d->ADDINFO = NULL;
+
+    d->SURROGATE = buf[len - 1];
+
+    *diag = d;
+
+    return (buf + len + 1);
+}
+
+/*----------------------------------------------------------------------*/
+
+#define continueBit	0x80
+#define dataMask	0x7F
+#define dataBits	7
+
+char *writeCompressedInteger(unsigned long num, char *buf, long *len)
+/* write a binary integer in the format described on p. 40.
+   this might be sped up
+*/
+{
+    char byte;
+    unsigned long i;
+    unsigned long size;
+
+    size = writtenCompressedIntSize(num);
+    CHECK_FOR_SPACE_LEFT(size, len);
+
+    for (i = size - 1; i != 0; i--) {
+	byte = num & dataMask;
+	if (i != (size - 1))	/* turn on continue bit */
+	    byte = (char) (byte | continueBit);
+	buf[i] = byte;
+	num = num >> dataBits;	/* don't and here */
+    }
+
+    return (buf + size);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readCompressedInteger(unsigned long *num, char *buf)
+/* read a binary integer in the format described on p. 40.
+   this might be sped up
+*/
+{
+    long i = 0;
+    unsigned char byte;
+
+    *num = 0;
+
+    do {
+	byte = buf[i++];
+	*num = *num << dataBits;
+	*num += (byte & dataMask);
+    }
+    while (byte & continueBit);
+
+    return (buf + i);
+}
+
+/*----------------------------------------------------------------------*/
+
+#define pad	128		/* high bit is set */
+
+char *writeCompressedIntWithPadding(unsigned long num,
+				    unsigned long size,
+				    char *buffer,
+				    long *len)
+/* Like writeCompressedInteger, except writes padding (128) to make
+   sure that size bytes are used.  This can be read correctly by
+   readCompressedInteger()
+*/
+{
+    char *buf = buffer;
+    unsigned long needed, padding;
+    long i;
+
+    CHECK_FOR_SPACE_LEFT(size, len);
+
+    needed = writtenCompressedIntSize(num);
+    padding = size - needed;
+    i = padding - 1;
+
+    for (i = padding - 1; i >= 0; i--) {
+	buf[i] = pad;
+    }
+
+    buf = writeCompressedInteger(num, buf + padding, len);
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+unsigned long writtenCompressedIntSize(unsigned long num)
+/* return the number of bytes needed to represnet the value num in
+   compressed format.  curently limited to 4 bytes
+ */
+{
+    if (num < CompressedInt1Byte)
+	return (1);
+    else if (num < CompressedInt2Byte)
+	return (2);
+    else if (num < CompressedInt3Byte)
+	return (3);
+    else
+	return (4);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeTag(data_tag tag, char *buf, long *len)
+/* write out a data tag */
+{
+    return (writeCompressedInteger(tag, buf, len));
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readTag(data_tag *tag, char *buf)
+/* read a data tag */
+{
+    return (readCompressedInteger(tag, buf));
+}
+
+/*----------------------------------------------------------------------*/
+
+unsigned long writtenTagSize(data_tag tag)
+{
+    return (writtenCompressedIntSize(tag));
+}
+
+/*----------------------------------------------------------------------*/
+
+data_tag peekTag(char *buf)
+/* read a data tag without advancing the buffer */
+{
+    data_tag tag;
+
+    readTag(&tag, buf);
+    return (tag);
+}
+
+/*----------------------------------------------------------------------*/
+
+any *makeAny(unsigned long size, char *data)
+{
+    any *a = (any *) s_malloc((size_t) sizeof(any));
+
+    a->size = size;
+    a->bytes = data;
+    return (a);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeAny(any *a)
+/* destroy an any and its associated data.  Assumes a->bytes was
+   allocated using the s_malloc family of libraries
+ */
+{
+    if (a != NULL) {
+	if (a->bytes != NULL)
+	    s_free(a->bytes);
+	s_free(a);
+    }
+}
+
+/*----------------------------------------------------------------------*/
+
+any *duplicateAny(any *a)
+{
+    any *copy = NULL;
+
+    if (a == NULL)
+	return (NULL);
+
+    copy = (any *) s_malloc((size_t) sizeof(any));
+
+    copy->size = a->size;
+    if (a->bytes == NULL)
+	copy->bytes = NULL;
+    else {
+	copy->bytes = (char *) s_malloc((size_t) copy->size);
+	MemCpy(copy->bytes, a->bytes, copy->size);
+    }
+    return (copy);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeAny(any *a, data_tag tag, char *buffer, long *len)
+/* write an any + tag and size info */
+{
+    char *buf = buffer;
+
+    if (a == NULL)		/* handle unspecified optional args */
+	return (buf);
+
+    /* write the tags */
+    buf = writeTag(tag, buf, len);
+    buf = writeCompressedInteger(a->size, buf, len);
+
+    /* write the bytes */
+    CHECK_FOR_SPACE_LEFT(a->size, len);
+    MemCpy(buf, a->bytes, a->size);
+
+    return (buf + a->size);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readAny(any **anAny, char *buffer)
+/* read an any + tag and size info */
+{
+    char *buf;
+    any *a;
+    data_tag tag;
+
+    a = (any *) s_malloc((size_t) sizeof(any));
+
+    buf = buffer;
+
+    buf = readTag(&tag, buf);
+
+    buf = readCompressedInteger(&a->size, buf);
+
+    /* now simply copy the bytes */
+    a->bytes = (char *) s_malloc((size_t) a->size);
+    MemCpy(a->bytes, buf, a->size);
+    *anAny = a;
+
+    return (buf + a->size);
+}
+
+/*----------------------------------------------------------------------*/
+
+unsigned long writtenAnySize(data_tag tag, any *a)
+{
+    unsigned long size;
+
+    if (a == NULL)
+	return (0);
+
+    size = writtenTagSize(tag);
+    size += writtenCompressedIntSize(a->size);
+    size += a->size;
+    return (size);
+}
+
+/*----------------------------------------------------------------------*/
+
+any *stringToAny(char *s)
+{
+    any *a = NULL;
+
+    if (s == NULL)
+	return (NULL);
+
+    a = (any *) s_malloc((size_t) sizeof(any));
+
+    a->size = strlen(s);
+    a->bytes = (char *) s_malloc((size_t) a->size);
+    MemCpy(a->bytes, s, a->size);
+    return (a);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *anyToString(any *a)
+{
+    char *s = NULL;
+
+    if (a == NULL)
+	return (NULL);
+
+    s = s_malloc((size_t) (a->size + 1));
+    MemCpy(s, a->bytes, a->size);
+    s[a->size] = '\0';
+    return (s);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeString(char *s, data_tag tag, char *buffer, long *len)
+/* Write a C style string.  The terminating null is not written.
+   This function is not part of the Z39.50 spec.  It is provided
+   for the convienience of those wishing to pass C strings in
+   the place of an any.
+ */
+{
+    char *buf = buffer;
+    any *data = NULL;
+
+    if (s == NULL)
+	return (buffer);	/* handle unused optional item before making an any */
+    data = (any *) s_malloc((size_t) sizeof(any));
+
+    data->size = strlen(s);
+    data->bytes = s;		/* save a copy here by not using stringToAny() */
+    buf = writeAny(data, tag, buf, len);
+    s_free(data);		/* don't use freeAny() since it will free s too */
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readString(char **s, char *buffer)
+/* Read an any and convert it into a C style string.
+   This function is not part of the Z39.50 spec.  It is provided
+   for the convienience of those wishing to pass C strings in
+   the place of an any.
+ */
+{
+    any *data = NULL;
+    char *buf = readAny(&data, buffer);
+
+    *s = anyToString(data);
+    freeAny(data);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+unsigned long writtenStringSize(data_tag tag, char *s)
+{
+    unsigned long size;
+
+    if (s == NULL)
+	return (0);
+
+    size = writtenTagSize(tag);
+    size += writtenCompressedIntSize(size);
+    size += strlen(s);
+    return (size);
+}
+
+/*----------------------------------------------------------------------*/
+
+any *longToAny(long num)
+/* a convienience function */
+{
+    char s[40];
+
+    sprintf(s, "%ld", num);
+
+    return (stringToAny(s));
+}
+
+/*----------------------------------------------------------------------*/
+
+long anyToLong(any *a)
+/* a convienience function */
+{
+    long num;
+    char *str = NULL;
+
+    str = anyToString(a);
+    sscanf(str, "%ld", &num);	/* could check the result and return
+				   an error */
+    s_free(str);
+    return (num);
+}
+
+/*----------------------------------------------------------------------*/
+
+#define bitsPerByte	8
+
+bit_map *makeBitMap(unsigned long numBits,...)
+/* construct and return a bitmap with numBits elements */
+{
+    va_list ap;
+    unsigned long i, j;
+    bit_map *bm = NULL;
+
+    LYva_start(ap, numBits);
+
+    bm = (bit_map *) s_malloc((size_t) sizeof(bit_map));
+
+    bm->size = (unsigned long) (ceil((double) numBits / bitsPerByte));
+    bm->bytes = (char *) s_malloc((size_t) bm->size);
+
+    /* fill up the bits */
+    for (i = 0; i < bm->size; i++)	/* iterate over bytes */
+    {
+	char byte = 0;
+
+	for (j = 0; j < bitsPerByte; j++)	/* iterate over bits */
+	{
+	    if ((i * bitsPerByte + j) < numBits) {
+		boolean bit = false;
+
+		bit = (boolean) va_arg(ap, boolean);
+
+		if (bit) {
+		    byte = byte | (1 << (bitsPerByte - j - 1));
+		}
+	    }
+	}
+	bm->bytes[i] = byte;
+    }
+
+    va_end(ap);
+    return (bm);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeBitMap(bit_map *bm)
+/* destroy a bit map created by makeBitMap() */
+{
+    s_free(bm->bytes);
+    s_free(bm);
+}
+
+/*----------------------------------------------------------------------*/
+
+/* use this routine to interpret a bit map.  pos specifies the bit
+   number.  bit 0 is the Leftmost bit of the first byte.
+   Could do bounds checking.
+ */
+
+boolean bitAtPos(unsigned long pos, bit_map *bm)
+{
+    if (pos > bm->size * bitsPerByte)
+	return false;
+    else
+	return ((bm->bytes[(pos / bitsPerByte)] &
+		 (0x80 >> (pos % bitsPerByte))) ?
+		true : false);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeBitMap(bit_map *bm, data_tag tag, char *buffer, long *len)
+/* write a bitmap + type and size info */
+{
+    return (writeAny((any *) bm, tag, buffer, len));
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readBitMap(bit_map **bm, char *buffer)
+/* read a bitmap + type and size info */
+{
+    char *c;
+
+    c = readAny((any **) bm, buffer);
+    return (c);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeByte(unsigned long byte, char *buf, long *len)
+{
+    CHECK_FOR_SPACE_LEFT(1, len);
+    buf[0] = byte & 0xFF;	/* we really only want the first byte */
+    return (buf + 1);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readByte(unsigned char *byte, char *buf)
+{
+    *byte = buf[0];
+    return (buf + 1);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeBoolean(boolean flag, char *buf, long *len)
+{
+    return (writeByte(flag, buf, len));
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readBoolean(boolean *flag, char *buffer)
+{
+    unsigned char byte;
+    char *buf = readByte(&byte, buffer);
+
+    *flag = (byte == true) ? true : false;
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writePDUType(pdu_type pduType, char *buf, long *len)
+/* PDUType is a single byte */
+{
+    return (writeBinaryInteger((long) pduType, (unsigned long) 1, buf, len));
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readPDUType(pdu_type *pduType, char *buf)
+/* PDUType is a single byte */
+{
+    return (readBinaryInteger((long *) pduType, (unsigned long) 1, buf));
+}
+
+/*----------------------------------------------------------------------*/
+
+pdu_type peekPDUType(char *buf)
+/* read the next pdu without advancing the buffer, Note that this
+   function is to be used on a buffer that is known to contain an
+   APDU.  The pdu_type is written HEADER_LEN bytes into the buffer
+ */
+{
+    pdu_type pdu;
+
+    readPDUType(&pdu, buf + HEADER_LEN);
+    return (pdu);
+}
+
+/*----------------------------------------------------------------------*/
+
+#define BINARY_INTEGER_BYTES	sizeof(long)	/* the number of bytes used by
+						   a "binary integer" */
+char *writeBinaryInteger(long num, unsigned long size, char *buf, long *len)
+/* write out first size bytes of num - no type info
+  XXX should this take unsigned longs instead ???  */
+{
+    long i;
+    char byte;
+
+    if (size < 1 || size > BINARY_INTEGER_BYTES)
+	return (NULL);		/* error */
+
+    CHECK_FOR_SPACE_LEFT(size, len);
+
+    for (i = size - 1; i >= 0; i--) {
+	byte = (char) (num & 255);
+	buf[i] = byte;
+	num = num >> bitsPerByte;	/* don't and here */
+    }
+
+    return (buf + size);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readBinaryInteger(long *num, unsigned long size, char *buf)
+/* read in first size bytes of num - no type info
+  XXX this should take unsigned longs instead !!! */
+{
+    unsigned long i;
+    unsigned char byte;
+
+    if (size < 1 || size > BINARY_INTEGER_BYTES)
+	return (buf);		/* error */
+    *num = 0;
+
+    for (i = 0; i < size; i++) {
+	byte = buf[i];
+	*num = *num << bitsPerByte;
+	*num += byte;
+    }
+
+    return (buf + size);
+}
+
+/*----------------------------------------------------------------------*/
+
+unsigned long writtenCompressedBinIntSize(long num)
+/* return the number of bytes needed to represent the value num.
+   currently limited to max of 4 bytes
+   Only compresses for positive nums - negatives get whole 4 bytes
+ */
+{
+    if (num < 0L)
+	return (4);
+    else if (num < 256L)	/* 2**8 */
+	return (1);
+    else if (num < 65536L)	/* 2**16 */
+	return (2);
+    else if (num < 16777216L)	/* 2**24 */
+	return (3);
+    else
+	return (4);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeNum(long num, data_tag tag, char *buffer, long *len)
+/* write a binary integer + size and tag info */
+{
+    char *buf = buffer;
+    long size = writtenCompressedBinIntSize(num);
+
+    if (num == UNUSED)
+	return (buffer);
+
+    buf = writeTag(tag, buf, len);
+    buf = writeCompressedInteger(size, buf, len);
+    buf = writeBinaryInteger(num, (unsigned long) size, buf, len);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readNum(long *num, char *buffer)
+/* read a binary integer + size and tag info */
+{
+    char *buf = buffer;
+    data_tag tag;
+    unsigned long size;
+    unsigned long val;
+
+    buf = readTag(&tag, buf);
+    buf = readCompressedInteger(&val, buf);
+    size = (unsigned long) val;
+    buf = readBinaryInteger(num, size, buf);
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+unsigned long writtenNumSize(data_tag tag, long num)
+{
+    long dataSize = writtenCompressedBinIntSize(num);
+    long size;
+
+    size = writtenTagSize(tag);	/* space for the tag */
+    size += writtenCompressedIntSize(dataSize);		/* space for the size */
+    size += dataSize;		/* space for the data */
+
+    return (size);
+}
+
+/*----------------------------------------------------------------------*/
+
+typedef void (voidfunc) (void *);
+
+void doList(void **list, voidfunc * func)
+/* call func on each element of the NULL terminated list of pointers */
+{
+    register long i;
+    register void *ptr = NULL;
+
+    if (list == NULL)
+	return;
+    for (i = 0, ptr = list[i]; ptr != NULL; ptr = list[++i])
+	(*func) (ptr);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *writeProtocolVersion(char *buf, long *len)
+/* write a bitmap describing the protocols available */
+{
+    static bit_map *version = NULL;
+
+    if (version == NULL) {
+	version = makeBitMap((unsigned long) 1, true);	/* version 1! */
+    }
+
+    return (writeBitMap(version, DT_ProtocolVersion, buf, len));
+}
+
+/*----------------------------------------------------------------------*/
+
+char *defaultImplementationID(void)
+{
+    static char ImplementationID[] = "TMC";
+
+    return (ImplementationID);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *defaultImplementationName(void)
+{
+    static char ImplementationName[] = "Thinking Machines Corporation Z39.50";
+
+    return (ImplementationName);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *defaultImplementationVersion(void)
+{
+    static char ImplementationVersion[] = "2.0A";
+
+    return (ImplementationVersion);
+}
+
+/*----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from ZType1.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* WIDE AREA INFORMATION SERVER SOFTWARE:
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+ *
+ * 3.26.90	Harry Morris, morris@think.com
+ * 4.11.90  HWM - generalized conditional includes (see c-dialect.h)
+ */
+/*----------------------------------------------------------------------*/
+
+query_term *makeAttributeTerm(char *use,
+			      char *relation,
+			      char *position,
+			      char *structure,
+			      char *truncation,
+			      char *completeness,
+			      any *term)
+{
+    query_term *qt = (query_term *) s_malloc((size_t) sizeof(query_term));
+
+    qt->TermType = TT_Attribute;
+
+    /* copy in the attributes */
+    StrNCpy(qt->Use, use, ATTRIBUTE_SIZE);
+    StrNCpy(qt->Relation, relation, ATTRIBUTE_SIZE);
+    StrNCpy(qt->Position, position, ATTRIBUTE_SIZE);
+    StrNCpy(qt->Structure, structure, ATTRIBUTE_SIZE);
+    StrNCpy(qt->Truncation, truncation, ATTRIBUTE_SIZE);
+    StrNCpy(qt->Completeness, completeness, ATTRIBUTE_SIZE);
+
+    qt->Term = duplicateAny(term);
+
+    qt->ResultSetID = NULL;
+
+    return (qt);
+}
+
+/*----------------------------------------------------------------------*/
+
+query_term *makeResultSetTerm(any *resultSet)
+{
+    query_term *qt = (query_term *) s_malloc((size_t) sizeof(query_term));
+
+    qt->TermType = TT_ResultSetID;
+
+    qt->ResultSetID = duplicateAny(resultSet);
+
+    qt->Term = NULL;
+
+    return (qt);
+}
+
+/*----------------------------------------------------------------------*/
+
+query_term *makeOperatorTerm(char *operatorCode)
+{
+    query_term *qt = (query_term *) s_malloc((size_t) sizeof(query_term));
+
+    qt->TermType = TT_Operator;
+
+    StrNCpy(qt->Operator, operatorCode, OPERATOR_SIZE);
+
+    qt->Term = NULL;
+    qt->ResultSetID = NULL;
+
+    return (qt);
+}
+
+/*----------------------------------------------------------------------*/
+
+void freeTerm(void *param)
+{
+    query_term *qt = (query_term *) param;
+
+    switch (qt->TermType) {
+    case TT_Attribute:
+	freeAny(qt->Term);
+	break;
+    case TT_ResultSetID:
+	freeAny(qt->ResultSetID);
+	break;
+    case TT_Operator:
+	/* do nothing */
+	break;
+    default:
+	panic("Implementation error: Unknown term type %ld",
+	      qt->TermType);
+	break;
+    }
+    s_free(qt);
+}
+
+/*----------------------------------------------------------------------*/
+
+#define ATTRIBUTE_LIST_SIZE	ATTRIBUTE_SIZE * 6
+#define AT_DELIMITER	" "
+
+char *writeQueryTerm(query_term *qt, char *buffer, long *len)
+{
+    char *buf = buffer;
+    char attributes[ATTRIBUTE_LIST_SIZE];
+
+    switch (qt->TermType) {
+    case TT_Attribute:
+	StrNCpy(attributes, qt->Use, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, AT_DELIMITER, sizeof(AT_DELIMITER) + 1, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, qt->Relation, ATTRIBUTE_SIZE, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, AT_DELIMITER, sizeof(AT_DELIMITER) + 1, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, qt->Position, ATTRIBUTE_SIZE, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, AT_DELIMITER, sizeof(AT_DELIMITER) + 1, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, qt->Structure, ATTRIBUTE_SIZE, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, AT_DELIMITER, sizeof(AT_DELIMITER) + 1, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, qt->Truncation, ATTRIBUTE_SIZE, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, AT_DELIMITER, sizeof(AT_DELIMITER) + 1, ATTRIBUTE_LIST_SIZE);
+	s_strncat(attributes, qt->Completeness, ATTRIBUTE_SIZE, ATTRIBUTE_LIST_SIZE);
+	buf = writeString(attributes, DT_AttributeList, buf, len);
+	buf = writeAny(qt->Term, DT_Term, buf, len);
+	break;
+    case TT_ResultSetID:
+	buf = writeAny(qt->ResultSetID, DT_ResultSetID, buf, len);
+	break;
+    case TT_Operator:
+	buf = writeString(qt->Operator, DT_Operator, buf, len);
+	break;
+    default:
+	panic("Implementation error: Unknown term type %ld",
+	      qt->TermType);
+	break;
+    }
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *readQueryTerm(query_term **qt, char *buffer)
+{
+    char *buf = buffer;
+    char *attributeList = NULL;
+    char *operator = NULL;
+    any *term;
+    char *use = NULL;
+    char *relation = NULL;
+    char *position = NULL;
+    char *structure = NULL;
+    char *truncation = NULL;
+    char *completeness;
+    any *resultSetID = NULL;
+    data_tag tag;
+
+    tag = peekTag(buffer);
+
+    switch (tag) {
+    case DT_AttributeList:
+	buf = readString(&attributeList, buf);
+	buf = readAny(&term, buf);
+	use = strtok(attributeList, AT_DELIMITER);
+	relation = strtok(NULL, AT_DELIMITER);
+	position = strtok(NULL, AT_DELIMITER);
+	structure = strtok(NULL, AT_DELIMITER);
+	truncation = strtok(NULL, AT_DELIMITER);
+	completeness = strtok(NULL, AT_DELIMITER);
+	*qt = makeAttributeTerm(use, relation, position, structure,
+				truncation, completeness, term);
+	s_free(attributeList);
+	freeAny(term);
+	break;
+    case DT_ResultSetID:
+	buf = readAny(&resultSetID, buf);
+	*qt = makeResultSetTerm(resultSetID);
+	freeAny(resultSetID);
+	break;
+    case DT_Operator:
+	buf = readString(&operator, buf);
+	*qt = makeOperatorTerm(operator);
+	s_free(operator);
+	break;
+    default:
+	REPORT_READ_ERROR(buf);
+	break;
+    }
+
+    return (buf);
+}
+
+/*----------------------------------------------------------------------*/
+
+static unsigned long getQueryTermSize(query_term *qt);
+
+static unsigned long getQueryTermSize(query_term *qt)
+/* figure out how many bytes it will take to write this query */
+{
+    unsigned long size = 0;
+    static char attributes[] = "11 22 33 44 55 66";	/* we just need this to
+
+							   calculate its written
+							   size */
+
+    switch (qt->TermType) {
+    case TT_Attribute:
+	size = writtenStringSize(DT_AttributeList, attributes);
+	size += writtenAnySize(DT_Term, qt->Term);
+	break;
+    case TT_ResultSetID:
+	size = writtenAnySize(DT_ResultSetID, qt->ResultSetID);
+	break;
+    case TT_Operator:
+	size = writtenStringSize(DT_Operator, qt->Operator);
+	break;
+    default:
+	panic("Implementation error: Unknown term type %ld",
+	      qt->TermType);
+	break;
+    }
+
+    return (size);
+}
+
+/*----------------------------------------------------------------------*/
+
+/* A query is simply a null terminated list of query terms.  For
+   transmission, a query is written into an any which is sent as
+   the user information field. */
+
+any *writeQuery(query_term **terms)
+{
+    any *info = NULL;
+    char *writePos = NULL;
+    char *data = NULL;
+    unsigned long size = 0;
+    long remaining = 0;
+    long i;
+    query_term *qt = NULL;
+
+    if (terms == NULL)
+	return (NULL);
+
+    /* calculate the size of write buffer */
+    for (i = 0, qt = terms[i]; qt != NULL; qt = terms[++i])
+	size += getQueryTermSize(qt);
+
+    data = (char *) s_malloc((size_t) size);
+
+    /* write the terms */
+    writePos = data;
+    remaining = size;
+    for (i = 0, qt = terms[i]; qt != NULL; qt = terms[++i])
+	writePos = writeQueryTerm(qt, writePos, &remaining);
+
+    info = makeAny(size, data);
+
+    return (info);
+}
+
+/*----------------------------------------------------------------------*/
+
+query_term **readQuery(any *info)
+{
+    char *readPos = info->bytes;
+    query_term **terms = NULL;
+    query_term *qt = NULL;
+    long numTerms = 0L;
+    char tmp[100];
+
+    sprintf(tmp, "readquery: bytes: %ld", info->size);
+    log_write(tmp);
+
+    while (readPos < info->bytes + info->size) {
+	readPos = readQueryTerm(&qt, readPos);
+
+	if (terms == NULL) {
+	    terms = (query_term **) s_malloc((size_t) (sizeof(query_term *) * 2));
+	} else {
+	    terms =
+		(query_term **) s_realloc((char *) terms,
+					  (size_t) (sizeof(query_term *) *
+						      (numTerms + 2)));
+	}
+	if (qt == NULL)
+	    log_write("qt = null");
+	terms[numTerms++] = qt;
+	terms[numTerms] = NULL;
+    }
+
+    return (terms);
+}
+
+/*----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from panic.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* WIDE AREA INFORMATION SERVER SOFTWARE:
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+ *
+ * Morris@think.com
+ */
+
+/* panic is an error system interface.  On the Mac, it will pop
+ * up a little window to explain the problem.
+ * On a unix box, it will print out the error and call perror()
+ */
+
+/*----------------------------------------------------------------------*/
+
+static void exitAction(long error);
+
+static void exitAction(long error GCC_UNUSED)
+{
+    exit_immediately(EXIT_SUCCESS);
+}
+
+/*----------------------------------------------------------------------*/
+
+#define PANIC_HEADER "Fatal Error:  "
+
+void panic(char *format,...)
+{
+    va_list ap;			/* the variable arguments */
+
+    fprintf(stderr, PANIC_HEADER);
+    LYva_start(ap, format);	/* init ap */
+    vfprintf(stderr, format, ap);	/* print the contents */
+    va_end(ap);			/* free ap */
+    fflush(stderr);
+
+    exitAction(0);
+}
+
+/*----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from cutil.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+/* Wide AREA INFORMATION SERVER SOFTWARE
+ * No guarantees or restrictions.  See the readme file for the full standard
+ * disclaimer.
+ *
+ * 3.26.90	Harry Morris, morris@think.com
+ * 4.11.90  HWM - generalized conditional includes (see c-dialect.h)
+ */
+
+/*----------------------------------------------------------------------*/
+
+void fs_checkPtr(void *ptr)
+/* If the ptr is NULL, give an error */
+{
+    if (ptr == NULL)
+	panic("checkPtr found a NULL pointer");
+}
+
+/*----------------------------------------------------------------------*/
+
+void *fs_malloc(size_t size)
+/* does safety checks and optional accounting */
+{
+    register void *ptr = NULL;
+
+    ptr = (void *) calloc((size_t) size, (size_t) 1);
+    s_checkPtr(ptr);
+
+    return (ptr);
+}
+
+/*----------------------------------------------------------------------*/
+
+void *fs_realloc(void *ptr, size_t size)
+/* does safety checks and optional accounting
+   note - we don't know how big ptr's memory is, so we can't ensure
+   that any new memory allocated is NULLed!
+ */
+{
+    register void *nptr = NULL;
+
+    if (ptr == NULL)		/* this is really a malloc */
+	return (s_malloc(size));
+
+    nptr = (void *) realloc(ptr, size);
+    s_checkPtr(ptr);
+
+    return (nptr);
+}
+
+/*----------------------------------------------------------------------*/
+
+void fs_free(void *ptr)
+/* does safety checks and optional accounting */
+{
+    if (ptr != NULL)		/* some non-ansi compilers/os's cant handle freeing null */
+    {				/* if we knew the size of this block of memory, we could clear it - oh well */
+	free(ptr);
+	ptr = NULL;
+    }
+}
+
+/*----------------------------------------------------------------------*/
+
+char *s_strdup(char *s)
+
+/* return a copy of s.  This is identical to the standard library routine
+   strdup(), except that it is safe.  If s == NULL or malloc fails,
+   appropriate action is taken.
+ */
+{
+    unsigned long len;
+    char *copy = NULL;
+
+    if (s == NULL)		/* saftey check to postpone stupid errors */
+	return (NULL);
+
+    len = strlen(s);		/* length of string - terminator */
+    copy = (char *) s_malloc((size_t) (sizeof(char) * (len + 1)));
+
+    StrNCpy(copy, s, len + 1);
+    return (copy);
+}
+
+/*----------------------------------------------------------------------*/
+
+char *fs_strncat(char *dst, char *src, size_t maxToAdd, size_t maxTotal)
+
+/* like strncat, except the fourth argument limits the maximum total
+   length of the resulting string
+ */
+{
+    size_t dstSize = strlen(dst);
+    size_t srcSize = strlen(src);
+
+    if (dstSize + srcSize < maxTotal)	/* use regular old strncat */
+	return (StrNCat(dst, src, maxToAdd));
+    else {
+	size_t truncateTo = maxTotal - dstSize - 1;
+	char saveChar = src[truncateTo];
+	char *result = NULL;
+
+	src[truncateTo] = '\0';
+	result = StrNCat(dst, src, maxToAdd);
+	src[truncateTo] = saveChar;
+	return (result);
+    }
+}
+
+/*----------------------------------------------------------------------*/
+
+char char_downcase(unsigned long long_ch)
+{
+    unsigned char ch = long_ch & 0xFF;	/* just want one byte */
+
+    /* when ansi is the way of the world, this can be tolower */
+    return (((ch >= 'A') && (ch <= 'Z')) ? (ch + 'a' - 'A') : ch);
+}
+
+char *string_downcase(char *word)
+{
+    long i = 0;
+
+    while (word[i] != '\0') {
+	word[i] = char_downcase((unsigned long) word[i]);
+	i++;
+    }
+    return (word);
+}
+
+/*----------------------------------------------------------------------*/
+#endif /* VMS */
diff --git a/WWW/Library/Implementation/HTVMS_WaisUI.h b/WWW/Library/Implementation/HTVMS_WaisUI.h
new file mode 100644
index 00000000..4f072a51
--- /dev/null
+++ b/WWW/Library/Implementation/HTVMS_WaisUI.h
@@ -0,0 +1,664 @@
+/*							HTVMS_WAISUI.h
+ *
+ *	Adaptation for Lynx by F.Macrides (macrides@sci.wfeb.edu)
+ *
+ *	31-May-1994 FM	Initial version.
+ */
+
+#ifndef HTVMSWAIS_H
+#define HTVMSWAIS_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    void log_write(char *);
+
+/*
+ *	Routines originally from Panic.h -- FM
+ *
+ *----------------------------------------------------------------------*/
+
+    void panic(char *format,...);
+
+/*----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from CUtil.h -- FM
+ *
+ *----------------------------------------------------------------------*/
+
+/* types and constants */
+
+#ifndef boolean
+#define boolean unsigned long
+#endif				/* boolean */
+
+#ifndef true
+#define true	(boolean)1L
+#endif				/* true */
+
+#ifndef false
+#define false	(boolean)0L	/* used to be (!true), but broke
+				   some compilers */
+#endif				/* false */
+
+#ifndef TRUE
+#define TRUE	true
+#endif				/* TRUE */
+
+#ifndef FALSE
+#define FALSE	false
+#endif				/* FALSE */
+
+/*----------------------------------------------------------------------*/
+/* functions */
+
+/* enhanced memory handling functions - don't call them directly, use the
+   macros below */
+    void fs_checkPtr(void *ptr);
+    void *fs_malloc(size_t size);
+    void *fs_realloc(void *ptr, size_t size);
+    void fs_free(void *ptr);
+    char *fs_strncat(char *dst, char *src, size_t maxToAdd, size_t maxTotal);
+
+/* macros for memory functions.  call these in your program.  */
+#define s_checkPtr(ptr)		fs_checkPtr(ptr)
+#define s_malloc(size)		fs_malloc(size)
+#define s_realloc(ptr,size)	fs_realloc((ptr),(size))
+#define s_free(ptr)		{ fs_free((char*)ptr); ptr = NULL; }
+#define s_strncat(dst,src,maxToAdd,maxTotal)	fs_strncat((dst),(src),(maxToAdd),(maxTotal))
+
+    char *s_strdup(char *s);
+
+#define IS_DELIMITER	1
+#define	NOT_DELIMITER	!IS_DELIMITER
+
+    char char_downcase(unsigned long ch);
+    char *string_downcase(char *word);
+
+/*----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from ZUtil.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+
+/* Data types / constants */
+
+/* bytes to leave for the header size info */
+#define HEADER_LEN	(size_t)2
+
+    typedef long pdu_type;
+
+#define	initAPDU			(pdu_type)20
+#define	initResponseAPDU		(pdu_type)21
+#define	searchAPDU			(pdu_type)22
+#define	searchResponseAPDU		(pdu_type)23
+#define	presentAPDU			(pdu_type)24
+#define	presentResponseAPDU		(pdu_type)25
+#define	deteteAPDU			(pdu_type)26
+#define	deleteResponseAPDU		(pdu_type)27
+#define	accessControlAPDU		(pdu_type)28
+#define	accessControlResponseAPDU	(pdu_type)29
+#define	resourceControlAPDU		(pdu_type)30
+#define	resourceControlResponseAPDU	(pdu_type)31
+
+    typedef struct any {	/* an any is a non-ascii string of characters */
+	unsigned long size;
+	char *bytes;
+    } any;
+
+    typedef any bit_map;	/* a bit_map is a group of packed bits */
+
+    typedef unsigned long data_tag;
+
+#define DT_PDUType			(data_tag)1
+#define	DT_ReferenceID			(data_tag)2
+#define	DT_ProtocolVersion		(data_tag)3
+#define	DT_Options			(data_tag)4
+#define	DT_PreferredMessageSize		(data_tag)5
+#define	DT_MaximumRecordSize		(data_tag)6
+#define	DT_IDAuthentication		(data_tag)7
+#define	DT_ImplementationID		(data_tag)8
+#define	DT_ImplementationName		(data_tag)9
+#define	DT_ImplementationVersion	(data_tag)10
+#define	DT_UserInformationField		(data_tag)11
+#define	DT_Result			(data_tag)12
+#define	DT_SmallSetUpperBound		(data_tag)13
+#define	DT_LargeSetLowerBound		(data_tag)14
+#define	DT_MediumSetPresentNumber	(data_tag)15
+#define	DT_ReplaceIndicator		(data_tag)16
+#define	DT_ResultSetName		(data_tag)17
+#define	DT_DatabaseNames		(data_tag)18
+#define DT_ElementSetNames		(data_tag)19
+#define	DT_QueryType			(data_tag)20
+#define	DT_Query			(data_tag)21
+#define	DT_SearchStatus			(data_tag)22
+#define	DT_ResultCount			(data_tag)23
+#define	DT_NumberOfRecordsReturned	(data_tag)24
+#define	DT_NextResultSetPosition	(data_tag)25
+#define	DT_ResultSetStatus		(data_tag)26
+#define	DT_PresentStatus		(data_tag)27
+#define	DT_DatabaseDiagnosticRecords	(data_tag)28
+#define	DT_NumberOfRecordsRequested	(data_tag)29
+#define	DT_ResultSetStartPosition	(data_tag)30
+#define	DT_ResultSetID			(data_tag)31
+#define	DT_DeleteOperation		(data_tag)32
+#define	DT_DeleteStatus			(data_tag)33
+#define	DT_NumberNotDeleted		(data_tag)34
+#define	DT_BulkStatuses			(data_tag)35
+#define	DT_DeleteMSG			(data_tag)36
+#define	DT_SecurityChallenge		(data_tag)37
+#define	DT_SecurityChallengeResponse	(data_tag)38
+#define	DT_SuspendedFlag		(data_tag)39
+#define	DT_ResourceReport		(data_tag)40
+#define	DT_PartialResultsAvailable	(data_tag)41
+#define	DT_ContinueFlag			(data_tag)42
+#define	DT_ResultSetWanted		(data_tag)43
+
+#define UNUSED	-1
+
+/* number of bytes required to represent the following sizes in compressed
+   integer format
+ */
+#define CompressedInt1Byte	128	/* 2 ^ 7 */
+#define CompressedInt2Byte	16384	/* 2 ^ 14 */
+#define CompressedInt3Byte	2097152		/* 2 ^ 21 */
+/* others may follow ... */
+
+/* types of query */
+#define QT_0	"0"		/* query whose non-standard format has been agreed upon
+				   client and server */
+/* values for InitAPDU option element */
+#define	WILL_USE		TRUE
+#define WILL_NOT_USE		FALSE
+#define WILL_SUPPORT		TRUE
+#define WILL_NOT_SUPPORT	FALSE
+
+/* values for InitResponseAPDU result element */
+#define ACCEPT	TRUE
+#define REJECT	FALSE
+
+/* values for SearchResponseAPDU search status element */
+#define	SUCCESS	0		/* intuitive huh? */
+#define FAILURE	1
+
+/* values for SearchResponseAPDU result set status element */
+#define	SUBSET	1
+#define INTERIM	2
+#define NONE	3
+
+/* values for SearchResponseAPDU present status element */
+/* SUCCESS already defined */
+#define PARTIAL_1	1
+#define PARTIAL_2	2
+#define PARTIAL_3	3
+#define PARTIAL_4	4
+#define PS_NONE		5	/* can't use NONE since it was used by result
+				   set status */
+
+#define DIAGNOSTIC_CODE_SIZE	(size_t)3
+
+    typedef struct diagnosticRecord {
+	boolean SURROGATE;
+	char DIAG[DIAGNOSTIC_CODE_SIZE];
+	char *ADDINFO;
+    } diagnosticRecord;
+
+#define D_PermanentSystemError	       "S1"
+#define D_TemporarySystemError         "S2"
+#define D_UnsupportedSearch            "S3"
+#define D_TermsOnlyStopWords           "S5"
+#define D_TooManyArgumentWords         "S6"
+#define D_TooManyBooleanOperators      "S7"
+#define D_TooManyTruncatedWords        "S8"
+#define D_TooMany IncompleteSubfields  "S9"
+#define D_TruncatedWordsTooShort       "SA"
+#define D_InvalidFormatForRecordNumber "SB"
+#define D_TooManyCharactersInSearch    "SC"
+#define D_TooManyRecordsRetrieved      "SD"
+#define D_PresentRequestOutOfRange     "SF"
+#define D_SystemErrorInPresentRecords  "SG"
+#define D_RecordNotAuthorizedToBeSent  "SH"
+#define D_RecordExceedsPrefMessageSize "SI"
+#define D_RecordExceedsMaxRecordSize   "SJ"
+#define D_ResultSetNotSuppAsSearchTerm "SK"
+#define D_OnlyOneRsltSetAsSrchTermSupp "SL"
+#define D_OnlyANDingOfASnglRsltSetSupp "SM"
+#define D_RsltSetExistsNoReplace       "SN"
+#define D_ResultSetNamingNotSupported  "SO"
+#define D_CombinationDatabasesNotSupp  "SP"
+#define D_ElementSetNamesNotSupported  "SQ"
+#define D_ElementSetNameNotValid       "SR"
+#define D_OnlyASingleElmntSetNameSupp  "SS"
+#define D_ResultSetDeletedByTarget     "ST"
+#define D_ResultSetIsInUse             "SU"
+#define D_DatabasesIsLocked            "SV"
+#define D_TerminatedByNoContinueResp   "SW"
+#define D_ResultSetDoesNotExist        "SX"
+#define D_ResExNoResultsAvailable      "SY"
+#define D_ResExUnpredictableResults    "SZ"
+#define D_ResExValidSubsetOfResults    "T1"
+#define D_AccessControlFailure         "T2"
+#define D_SecurityNotIssuedReqTerm     "T3"
+#define D_SecurityNotBeIssuedRecNotInc "T4"
+
+/*----------------------------------------------------------------------*/
+
+/* for internal error handling */
+
+    extern char *readErrorPosition;	/* pos where buf stoped making sense */
+
+/* the following are macros so that they can return OUT of the function
+   which calls them
+ */
+
+#define RETURN_ON_NULL(var)					\
+	if (var == NULL)					\
+	  return(NULL);		/* jump out of caller */
+
+#define REPORT_READ_ERROR(pos)					\
+	{ readErrorPosition = (pos);				\
+	  return(NULL); /* jump out of caller */		\
+    }
+
+#define CHECK_FOR_SPACE_LEFT(spaceNeeded,spaceLeft)		\
+	{ if (*spaceLeft >= spaceNeeded)			\
+	    (*spaceLeft) -= spaceNeeded;			\
+	  else							\
+	   { *spaceLeft = 0;					\
+	     return(NULL); /* jump out of the caller */		\
+	   }							\
+	}
+
+/*----------------------------------------------------------------------*/
+
+    diagnosticRecord *makeDiag(boolean surrogate, char *code, char *addInfo);
+    void freeDiag(diagnosticRecord * diag);
+    char *writeDiag(diagnosticRecord * diag, char *buffer, long *len);
+    char *readDiag(diagnosticRecord ** diag, char *buffer);
+
+    char *writeCompressedInteger(unsigned long num, char *buf, long *len);
+    char *readCompressedInteger(unsigned long *num, char *buf);
+    char *writeCompressedIntWithPadding(unsigned long num, unsigned long size,
+					char *buffer, long *len);
+    unsigned long writtenCompressedIntSize(unsigned long num);
+
+    char *writeTag(data_tag tag, char *buf, long *len);
+    char *readTag(data_tag *tag, char *buf);
+    data_tag peekTag(char *buf);
+    unsigned long writtenTagSize(data_tag tag);
+
+    any *makeAny(unsigned long size, char *data);
+    void freeAny(any *a);
+    any *duplicateAny(any *a);
+    char *writeAny(any *a, data_tag tag, char *buffer, long *len);
+    char *readAny(any **anAny, char *buffer);
+    unsigned long writtenAnySize(data_tag tag, any *a);
+
+    any *stringToAny(char *s);
+    char *anyToString(any *a);
+    unsigned long writtenStringSize(data_tag tag, char *s);
+
+    any *longToAny(long Num);
+    long anyToLong(any *a);
+
+    char *writeString(char *s, data_tag tag, char *buffer, long *len);
+    char *readString(char **s, char *buffer);
+
+    bit_map *makeBitMap(unsigned long numBits,...);
+
+    void freeBitMap(bit_map *bm);
+    boolean bitAtPos(unsigned long pos, bit_map *bm);
+    char *writeBitMap(bit_map *bm, data_tag tag, char *buffer, long *len);
+    char *readBitMap(bit_map **bm, char *buffer);
+
+    char *writeByte(unsigned long byte, char *buf, long *len);
+    char *readByte(unsigned char *byte, char *buf);
+
+    char *writeBoolean(boolean flag, char *buf, long *len);
+    char *readBoolean(boolean *flag, char *buf);
+
+    char *writePDUType(pdu_type pduType, char *buf, long *len);
+    char *readPDUType(pdu_type *pduType, char *buf);
+    pdu_type peekPDUType(char *buf);
+
+    char *writeBinaryInteger(long num, unsigned long size,
+			     char *buf, long *len);
+    char *readBinaryInteger(long *num, unsigned long size, char *buf);
+    unsigned long writtenCompressedBinIntSize(long num);
+
+    char *writeNum(long num, data_tag tag, char *buffer, long *len);
+    char *readNum(long *num, char *buffer);
+    unsigned long writtenNumSize(data_tag tag, long num);
+
+    void doList(void **list, void (*func) (void *));
+
+    char *writeProtocolVersion(char *buf, long *len);
+    char *defaultImplementationID(void);
+    char *defaultImplementationName(void);
+    char *defaultImplementationVersion(void);
+
+/*----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from ZType1.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+
+/* This file implements the type 1 query defined in appendices B & C
+   of the SR 1 spec.
+ */
+
+/*----------------------------------------------------------------------*/
+/* types and constants */
+
+/* new data tags */
+#define	DT_AttributeList	(data_tag)44
+#define DT_Term			(data_tag)45
+#define DT_Operator		(data_tag)46
+
+#define QT_BooleanQuery	"1"	/* standard boolean query */
+
+/* general attribute code - use in place of any attribute */
+#define IGNORE			"ig"
+
+/* use value codes */
+#define	UV_ISBN			"ub"
+#define	CORPORATE_NAME		"uc"
+#define	ISSN			"us"
+#define	PERSONAL_NAME		"up"
+#define	SUBJECT			"uj"
+#define	TITLE			"ut"
+#define	GEOGRAPHIC_NAME		"ug"
+#define	CODEN			"ud"
+#define	SUBJECT_SUBDIVISION	"ue"
+#define	SERIES_TITLE		"uf"
+#define	MICROFORM_GENERATION	"uh"
+#define	PLACE_OF_PUBLICATION	"ui"
+#define	NUC_CODE		"uk"
+#define	LANGUAGE		"ul"
+#define	COMBINATION_OF_USE_VALUES	"um"
+#define	SYSTEM_CONTROL_NUMBER	"un"
+#define	DATE			"uo"
+#define	LC_CONTROL_NUMBER	"ur"
+#define	MUSIC_PUBLISHERS_NUMBER	"uu"
+#define	GOVERNMENT_DOCUMENTS_NUMBER	"uv"
+#define	SUBJECT_CLASSIFICATION	"uw"
+#define	RECORD_TYPE		"uy"
+
+/* relation value codes */
+#define	EQUAL			"re"
+#define	GREATER_THAN		"rg"
+#define	GREATER_THAN_OR_EQUAL	"ro"
+#define	LESS_THAN		"rl"
+#define	LESS_THAN_OR_EQUAL	"rp"
+#define	NOT_EQUAL		"rn"
+
+/* position value codes */
+#define	FIRST_IN_FIELD		"pf"
+#define	FIRST_IN_SUBFIELD	"ps"
+#define	FIRST_IN_A_SUBFIELD	"pa"
+#define	FIRST_IN_NOT_A_SUBFIELD	"pt"
+#define	ANY_POSITION_IN_FIELD	"py"
+
+/* structure value codes */
+#define	PHRASE			"sp"
+#define	WORD			"sw"
+#define	KEY			"sk"
+#define	WORD_LIST		"sl"
+
+/* truncation value codes */
+#define	NO_TRUNCATION		"tn"
+#define	RIGHT_TRUNCATION	"tr"
+#define	PROC_NUM_INCLUDED_IN_SEARCH_ARG	"ti"
+
+/* completeness value codes */
+#define	INCOMPLETE_SUBFIELD	"ci"
+#define	COMPLETE_SUBFIELD	"cs"
+#define	COMPLETEFIELD		"cf"
+
+/* operator codes */
+#define AND	"a"
+#define OR	"o"
+#define AND_NOT	"n"
+
+/* term types */
+#define TT_Attribute		1
+#define	TT_ResultSetID		2
+#define	TT_Operator		3
+
+#define ATTRIBUTE_SIZE		3
+#define OPERATOR_SIZE		2
+
+    typedef struct query_term {
+	/* type */
+	long TermType;
+	/* for term */
+	char Use[ATTRIBUTE_SIZE];
+	char Relation[ATTRIBUTE_SIZE];
+	char Position[ATTRIBUTE_SIZE];
+	char Structure[ATTRIBUTE_SIZE];
+	char Truncation[ATTRIBUTE_SIZE];
+	char Completeness[ATTRIBUTE_SIZE];
+	any *Term;
+	/* for result set */
+	any *ResultSetID;
+	/* for operator */
+	char Operator[OPERATOR_SIZE];
+    } query_term;
+
+/*----------------------------------------------------------------------*/
+/* functions */
+
+    query_term *makeAttributeTerm(char *use, char *relation, char *position, char *structure,
+				  char *truncation, char *completeness, any *term);
+    query_term *makeResultSetTerm(any *resultSet);
+    query_term *makeOperatorTerm(char *operatorCode);
+    void freeTerm(void *qt);
+    char *writeQueryTerm(query_term *qt, char *buffer, long *len);
+    char *readQueryTerm(query_term **qt, char *buffer);
+    any *writeQuery(query_term **terms);
+    query_term **readQuery(any *info);
+
+/*----------------------------------------------------------------------*/
+
+/*
+ *	Routines originally from UI.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+
+    char *generate_retrieval_apdu(char *buff,
+				  long *buff_len,
+				  any *docID,
+				  long chunk_type,
+				  long start_line, long end_line,
+				  char *type,
+				  char *database_name);
+
+    long interpret_message(char *request_message,
+			   long request_length,
+			   char *response_message,
+			   long response_buffer_length,		/* length of the buffer (modified) */
+			   long connection,
+			   boolean verbose);
+
+    char *trim_junk(char *headline);
+
+/*
+ *	Routines originally from ZProt.c -- FM
+ *
+ *----------------------------------------------------------------------*/
+
+/* APDU types */
+
+    typedef struct InitAPDU {
+	pdu_type PDUType;
+	boolean willSearch, willPresent, willDelete;
+	boolean supportAccessControl, supportResourceControl;
+	long PreferredMessageSize;
+	long MaximumRecordSize;
+	char *IDAuthentication;
+	char *ImplementationID;
+	char *ImplementationName;
+	char *ImplementationVersion;
+	any *ReferenceID;
+	void *UserInformationField;
+    } InitAPDU;
+
+    typedef struct InitResponseAPDU {
+	pdu_type PDUType;
+	boolean Result;
+	boolean willSearch, willPresent, willDelete;
+	boolean supportAccessControl, supportResourceControl;
+	long PreferredMessageSize;
+	long MaximumRecordSize;
+	char *IDAuthentication;
+	char *ImplementationID;
+	char *ImplementationName;
+	char *ImplementationVersion;
+	any *ReferenceID;
+	void *UserInformationField;
+    } InitResponseAPDU;
+
+    typedef struct SearchAPDU {
+	pdu_type PDUType;
+	long SmallSetUpperBound;
+	long LargeSetLowerBound;
+	long MediumSetPresentNumber;
+	boolean ReplaceIndicator;
+	char *ResultSetName;
+	char **DatabaseNames;
+	char *QueryType;
+	char **ElementSetNames;
+	any *ReferenceID;
+	void *Query;
+    } SearchAPDU;
+
+    typedef struct SearchResponseAPDU {
+	pdu_type PDUType;
+	long SearchStatus;
+	long ResultCount;
+	long NumberOfRecordsReturned;
+	long NextResultSetPosition;
+	long ResultSetStatus;
+	long PresentStatus;
+	any *ReferenceID;
+	void *DatabaseDiagnosticRecords;
+    } SearchResponseAPDU;
+
+    typedef struct PresentAPDU {
+	pdu_type PDUType;
+	long NumberOfRecordsRequested;
+	long ResultSetStartPosition;
+	char *ResultSetID;
+	char *ElementSetNames;
+	any *ReferenceID;
+	void *PresentInfo;
+    } PresentAPDU;
+
+    typedef struct PresentResponseAPDU {
+	pdu_type PDUType;
+	boolean PresentStatus;
+	long NumberOfRecordsReturned;
+	long NextResultSetPosition;
+	any *ReferenceID;
+	void *DatabaseDiagnosticRecords;
+    } PresentResponseAPDU;
+
+/*----------------------------------------------------------------------*/
+/* Functions */
+
+    InitAPDU *makeInitAPDU(boolean search, boolean present, boolean deleteIt,
+			   boolean accessControl, boolean resourceControl, long prefMsgSize,
+			   long maxMsgSize,
+			   char *auth,
+			   char *id,
+			   char *name,
+			   char *version,
+			   any *refID,
+			   void *userInfo);
+    void freeInitAPDU(InitAPDU * init);
+    char *writeInitAPDU(InitAPDU * init, char *buffer, long *len);
+    char *readInitAPDU(InitAPDU ** init, char *buffer);
+
+    InitResponseAPDU *makeInitResponseAPDU(boolean result,
+					   boolean search,
+					   boolean present,
+					   boolean deleteIt,
+					   boolean accessControl,
+					   boolean resourceControl,
+					   long prefMsgSize,
+					   long maxMsgSize,
+					   char *auth,
+					   char *id,
+					   char *name,
+					   char *version,
+					   any *refID,
+					   void *userInfo);
+    void freeInitResponseAPDU(InitResponseAPDU *init);
+    char *writeInitResponseAPDU(InitResponseAPDU *init, char *buffer, long *len);
+    char *readInitResponseAPDU(InitResponseAPDU **init, char *buffer);
+    InitResponseAPDU *replyToInitAPDU(InitAPDU * init, boolean result, void *userInfo);
+
+    SearchAPDU *makeSearchAPDU(long small, long large, long medium,
+			       boolean replace, char *name, char **databases,
+			       char *type, char **elements, any *refID, void *queryInfo);
+    void freeSearchAPDU(SearchAPDU *query);
+    char *writeSearchAPDU(SearchAPDU *query, char *buffer, long *len);
+    char *readSearchAPDU(SearchAPDU **query, char *buffer);
+
+    SearchResponseAPDU *makeSearchResponseAPDU(long result, long count,
+					       long recordsReturned, long nextPos,
+					       long resultStatus, long presentStatus,
+					       any *refID, void *records);
+    void freeSearchResponseAPDU(SearchResponseAPDU *queryResponse);
+    char *writeSearchResponseAPDU(SearchResponseAPDU *queryResponse, char
+				  *buffer, long *len);
+    char *readSearchResponseAPDU(SearchResponseAPDU **queryResponse, char *buffer);
+
+    PresentAPDU *makePresentAPDU(long recsReq, long startPos,
+				 char *resultID, any *refID, void *info);
+    void freePresentAPDU(PresentAPDU * present);
+    char *writePresentAPDU(PresentAPDU * present, char *buffer, long *len);
+    char *readPresentAPDU(PresentAPDU ** present, char *buffer);
+
+    PresentResponseAPDU *makePresentResponseAPDU(boolean status, long recsRet,
+						 long nextPos, any *refID,
+						 void *records);
+    void freePresentResponseAPDU(PresentResponseAPDU * present);
+    char *writePresentResponseAPDU(PresentResponseAPDU * present, char
+				   *buffer, long *len);
+    char *readPresentResponseAPDU(PresentResponseAPDU ** present, char *buffer);
+
+/*----------------------------------------------------------------------*/
+/* user extension hooks: */
+
+    extern char *writeInitInfo(InitAPDU * init, char *buffer, long *len);
+    extern char *readInitInfo(void **info, char *buffer);
+
+    extern char *writeInitResponseInfo(InitResponseAPDU *init, char *buffer, long *len);
+    extern char *readInitResponseInfo(void **info, char *buffer);
+
+    extern char *writeSearchInfo(SearchAPDU *query, char *buffer, long *len);
+    extern char *readSearchInfo(void **info, char *buffer);
+
+    extern char *writeSearchResponseInfo(SearchResponseAPDU *query, char
+					 *buffer, long *len);
+    extern char *readSearchResponseInfo(void **info, char *buffer);
+
+    extern char *writePresentInfo(PresentAPDU * present, char *buffer, long *len);
+    extern char *readPresentInfo(void **info, char *buffer);
+
+    extern char *writePresentResponseInfo(PresentResponseAPDU * present, char
+					  *buffer, long *len);
+    extern char *readPresentResponseInfo(void **info, char *buffer);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTVMSWAIS_H */
diff --git a/WWW/Library/Implementation/HTWAIS.c b/WWW/Library/Implementation/HTWAIS.c
new file mode 100644
index 00000000..5c998ea8
--- /dev/null
+++ b/WWW/Library/Implementation/HTWAIS.c
@@ -0,0 +1,1082 @@
+/*
+ * $LynxId: HTWAIS.c,v 1.36 2011/06/11 12:13:32 tom Exp $
+ *
+ *	WorldWideWeb - Wide Area Informaion Server Access	HTWAIS.c
+ *	==================================================
+ *
+ *	This module allows a WWW server or client to read data from a
+ *	remote	WAIS
+ *  server, and provide that data to a WWW client in hypertext form.
+ *  Source files, once retrieved, are stored and used to provide
+ *  information about the index when that is acessed.
+ *
+ *  Authors
+ *	BK	Brewster Kahle, Thinking Machines, <Brewster@think.com>
+ *	TBL	Tim Berners-Lee, CERN <timbl@info.cern.ch>
+ *	FM	Foteos Macrides, WFEB <macrides@sci.wfeb.edu>
+ *
+ *  History
+ *	   Sep 91	TBL adapted shell-ui.c (BK) with HTRetrieve.c from WWW.
+ *	   Feb 91	TBL Generated HTML cleaned up a bit (quotes, escaping)
+ *			    Refers to lists of sources.
+ *	   Mar 93	TBL Lib 2.0 compatible module made.
+ *	   May 94	FM  Added DIRECT_WAIS support for VMS.
+ *
+ *  Bugs
+ *	Uses C stream i/o to read and write sockets, which won't work
+ *	on VMS TCP systems.
+ *
+ *	Should cache connections.
+ *
+ *	ANSI C only as written
+ *
+ *  Bugs fixed
+ *	NT Nathan Torkington (Nathan.Torkington@vuw.ac.nz)
+ *
+ *  WAIS comments:
+ *
+ *	1.	Separate directories for different system's .o would help
+ *	2.	Document ids are rather long!
+ *
+ * W WW Address mapping convention:
+ *
+ *	/servername/database/type/length/document-id
+ *
+ *	/servername/database?word+word+word
+ */
+/* WIDE AREA INFORMATION SERVER SOFTWARE:
+   No guarantees or restrictions.  See the readme file for the full standard
+   disclaimer.
+
+   Brewster@think.com
+*/
+
+#include <HTUtils.h>
+#include <HTParse.h>
+#include <HTAccess.h>		/* We implement a protocol */
+#include <HTML.h>		/* The object we will generate */
+#include <HTWSRC.h>
+#include <HTTCP.h>
+#include <HTCJK.h>
+#include <HTAlert.h>
+#include <LYStrings.h>
+
+#undef lines			/* term.h conflict with wais.h */
+#undef alloca			/* alloca.h conflict with wais.h */
+
+/*			From WAIS
+ *			---------
+ */
+#ifdef VMS
+#include <HTVMS_WaisUI.h>
+#include <HTVMS_WaisProt.h>
+#elif defined(HAVE_WAIS_H)
+#include <wais.h>
+#else
+#include <ui.h>
+#endif /* VMS */
+
+#define MAX_MESSAGE_LEN 100000
+#define CHARS_PER_PAGE 10000	/* number of chars retrieved in each request */
+
+#define WAISSEARCH_DATE "Fri Jul 19 1991"
+
+/*			FROM WWW
+ *			--------
+ */
+#include <LYUtils.h>
+#include <LYLeaks.h>
+
+#define DIRECTORY "/cnidr.org:210/directory-of-servers"
+/* #define DIRECTORY "/quake.think.com:210/directory-of-servers" */
+
+#define BIG 1024		/* identifier size limit  @@@@@ */
+
+#define BUFFER_SIZE 4096	/* Arbitrary size for efficiency */
+
+#define HEX_ESCAPE '%'
+
+static BOOL as_gate;		/* Client is using us as gateway */
+
+static char line[2048];		/* For building strings to display */
+
+				/* Must be able to take id */
+
+#define PUTC(c) (*target->isa->put_character)(target, c)
+#define PUTS(s) (*target->isa->put_string)(target, s)
+#define START(e) (*target->isa->start_element)(target, e, 0, 0, -1, 0)
+#define END(e) (*target->isa->end_element)(target, e, 0)
+#define MAYBE_END(e) if (HTML_dtd.tags[e].contents != SGML_EMPTY) \
+			(*target->isa->end_element)(target, e, 0)
+#define FREE_TARGET (*target->isa->_free)(target)
+
+struct _HTStructured {
+    const HTStructuredClass *isa;
+    /* ... */
+};
+
+/* ------------------------------------------------------------------------ */
+/* ---------------- Local copy of connect_to_server calls ----------------- */
+/* ------------------------------------------------------------------------ */
+/* Returns 1 on success, 0 on fail, -1 on interrupt. */
+static int fd_mosaic_connect_to_server(char *host_name,
+				       long port,
+				       long *fd)
+{
+    char *dummy = NULL;
+    int status;
+    int result;
+
+    HTSprintf0(&dummy, "%s//%s:%ld/", STR_WAIS_URL, host_name, port);
+
+    status = HTDoConnect(dummy, "WAIS", 210, (int *) fd);
+    if (status == HT_INTERRUPTED) {
+	result = -1;
+    } else if (status < 0) {
+	result = 0;
+    } else {
+	result = 1;
+    }
+    FREE(dummy);
+    return result;
+}
+
+/* Returns 1 on success, 0 on fail, -1 on interrupt. */
+#ifdef VMS
+static int mosaic_connect_to_server(char *host_name,
+				    long port,
+				    long *fdp)
+#else
+static int mosaic_connect_to_server(char *host_name,
+				    long port,
+				    FILE **fp)
+#endif				/* VMS */
+{
+#ifndef VMS
+    FILE *file;
+#endif /* VMS */
+    long fd;
+    int rv;
+
+    rv = fd_mosaic_connect_to_server(host_name, port, &fd);
+    if (rv == 0) {
+	HTAlert(gettext("Could not connect to WAIS server."));
+	return 0;
+    } else if (rv == -1) {
+	HTAlert(CONNECTION_INTERRUPTED);
+	return -1;
+    }
+#ifndef VMS
+    if ((file = fdopen(fd, "r+")) == NULL) {
+	HTAlert(gettext("Could not open WAIS connection for reading."));
+	return 0;
+    }
+
+    *fp = file;
+#else
+    *fdp = fd;
+#endif /* VMS */
+    return 1;
+}
+/* ------------------------------------------------------------------------ */
+/* ------------------------------------------------------------------------ */
+
+/*								showDiags
+*/
+/* modified from Jonny G's version in ui/question.c */
+static void showDiags(HTStream *target, diagnosticRecord ** d)
+{
+    long i;
+
+    for (i = 0; d[i] != NULL; i++) {
+	if (d[i]->ADDINFO != NULL) {
+	    PUTS(gettext("Diagnostic code is "));
+	    PUTS(d[i]->DIAG);
+	    PUTC(' ');
+	    PUTS(d[i]->ADDINFO);
+	    PUTC('\n');
+	}
+    }
+}
+
+/*	Matrix of allowed characters in filenames
+ *	-----------------------------------------
+ */
+
+static BOOL acceptable[256];
+static BOOL acceptable_inited = NO;
+
+static void init_acceptable(void)
+{
+    unsigned int i;
+    char *good =
+    "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789./-_$";
+
+    for (i = 0; i < 256; i++)
+	acceptable[i] = NO;
+    for (; *good; good++)
+	acceptable[(unsigned int) *good] = YES;
+    acceptable_inited = YES;
+}
+
+/*	Transform file identifier into WWW address
+ *	------------------------------------------
+ *
+ *
+ * On exit,
+ *	returns		nil if error
+ *			pointer to malloced string (must be freed) if ok
+ */
+static char *WWW_from_archie(char *file)
+{
+    char *end;
+    char *result;
+    char *colon;
+
+    for (end = file; *end > ' '; end++) ;	/* assumes ASCII encoding */
+    result = (char *) malloc(10 + (end - file));
+    if (!result)
+	return result;		/* Malloc error */
+    strcpy(result, "file://");
+    StrNCat(result, file, end - file);
+    colon = strchr(result + 7, ':');	/* Expect colon after host */
+    if (colon) {
+	for (; colon[0]; colon[0] = colon[1], colon++) ;	/* move down */
+    }
+    return result;
+}				/* WWW_from_archie */
+
+/*	Transform document identifier into URL
+ *	--------------------------------------
+ *
+ *  Bugs: A static buffer of finite size is used!
+ *	The format of the docid MUST be good!
+ *
+ *  On exit,
+ *	returns		nil if error
+ *			pointer to malloced string (must be freed) if ok
+ */
+static char hex[17] = "0123456789ABCDEF";
+
+static char *WWW_from_WAIS(any *docid)
+{
+    static char buf[BIG];
+    char *q = buf;
+    char *p = (docid->bytes);
+    char *result = NULL;
+    int i, l;
+
+    if (TRACE) {
+	char *p2;
+
+	fprintf(tfp, "WAIS id (%d bytes) is ", (int) docid->size);
+	for (p2 = docid->bytes; p2 < docid->bytes + docid->size; p2++) {
+	    if ((*p2 >= ' ') && (*p2 <= '~'))	/* Assume ASCII! */
+		fprintf(tfp, "%c", *p2);
+	    else
+		fprintf(tfp, "<%x>", (unsigned) *p2);
+	}
+	fprintf(tfp, "\n");
+    }
+    for (p = docid->bytes;
+	 (p < docid->bytes + docid->size) && (q < &buf[BIG]);) {
+	CTRACE((tfp, "    Record type %d, length %d\n", p[0], p[1]));
+	if (*p > 10) {
+	    CTRACE((tfp, "Eh?  DOCID record type of %d!\n", *p));
+	    return 0;
+	} {			/* Bug fix -- allow any byte value 15 Apr 93 */
+	    unsigned int i2 = (unsigned) *p++;
+
+	    if (i2 > 99) {
+		*q++ = (i2 / 100) + '0';
+		i2 = i2 % 100;
+	    }
+	    if (i2 > 9) {
+		*q++ = (i2 / 10) + '0';
+		i2 = i2 % 10;
+	    }
+	    *q++ = i2 + '0';	/* Record type */
+	}
+	*q++ = '=';		/* Separate */
+	l = *p++;		/* Length */
+	for (i = 0; i < l; i++, p++) {
+	    if (!acceptable[UCH(*p)]) {
+		*q++ = HEX_ESCAPE;	/* Means hex coming */
+		*q++ = hex[(*p) >> 4];
+		*q++ = hex[(*p) & 15];
+	    } else
+		*q++ = *p;
+	}
+	*q++ = ';';		/* Terminate field */
+    }
+    *q++ = 0;			/* Terminate string */
+    CTRACE((tfp, "WWW form of id: %s\n", buf));
+    StrAllocCopy(result, buf);
+    return result;
+}				/* WWW_from_WAIS */
+
+/*	Transform URL into WAIS document identifier
+ *	-------------------------------------------
+ *
+ *  On entry,
+ *	docname		points to valid name produced originally by
+ *			WWW_from_WAIS
+ *  On exit,
+ *	docid->size	is valid
+ *	docid->bytes	is malloced and must later be freed.
+ */
+static any *WAIS_from_WWW(any *docid, char *docname)
+{
+    char *z;			/* Output pointer */
+    char *sor;			/* Start of record - points to size field. */
+    char *p;			/* Input pointer */
+    char *q;			/* Poisition of "=" */
+    char *s;			/* Position of semicolon */
+    int n;			/* size */
+
+    CTRACE((tfp, "WWW id (to become WAIS id): %s\n", docname));
+    for (n = 0, p = docname; *p; p++) {		/* Count sizes of strings */
+	n++;
+	if (*p == ';')
+	    n--;		/* Not converted */
+	else if (*p == HEX_ESCAPE)
+	    n = n - 2;		/* Save two bytes */
+	docid->size = n;
+    }
+
+    if (!(docid->bytes = (char *) malloc(docid->size)))		/* result record */
+	outofmem(__FILE__, "WAIS_from_WWW");
+    z = docid->bytes;
+
+    for (p = docname; *p;) {	/* Convert of strings */
+	/* Record type */
+
+	*z = 0;			/* Initialize record type */
+	while (*p >= '0' && *p <= '9') {
+	    *z = *z * 10 + (*p++ - '0');	/* Decode decimal record type */
+	}
+	z++;
+	if (*p != '=')
+	    return 0;
+	q = p;
+
+/*	  *z++ = *p++ - '0';
+	q = strchr(p , '=');
+	if (!q) return 0;
+*/
+	s = strchr(q, ';');	/* (Check only) */
+	if (!s)
+	    return 0;		/* Bad! No ';'; */
+	sor = z;		/* Remember where the size field was */
+	z++;			/* Skip record size for now     */
+	for (p = q + 1; *p != ';';) {
+	    if (*p == HEX_ESCAPE) {
+		char c;
+		unsigned int b;
+
+		p++;
+		c = *p++;
+		b = from_hex(c);
+		c = *p++;
+		if (!c)
+		    break;	/* Odd number of chars! */
+		*z++ = (b << 4) + from_hex(c);
+	    } else {
+		*z++ = *p++;	/* Record */
+	    }
+	}
+	*sor = (z - sor - 1);	/* Fill in size -- not counting size itself */
+	p++;			/* After semicolon: start of next record */
+    }
+
+    if (TRACE) {
+	char *p2;
+
+	fprintf(tfp, "WAIS id (%d bytes) is ", (int) docid->size);
+	for (p2 = docid->bytes; p2 < docid->bytes + docid->size; p2++) {
+	    if ((*p2 >= ' ') && (*p2 <= '~'))	/* Assume ASCII! */
+		fprintf(tfp, "%c", *p2);
+	    else
+		fprintf(tfp, "<%x>", (unsigned) *p2);
+	}
+	fprintf(tfp, "\n");
+    }
+    return docid;		/* Ok */
+
+}				/* WAIS_from_WWW */
+
+/*	Send a plain text record to the client		output_text_record()
+ *	--------------------------------------
+ */
+static void output_text_record(HTStream *target,
+			       WAISDocumentText *record,
+			       boolean binary)
+{
+    unsigned long count;
+
+    /* printf(" Text\n");
+       print_any("     DocumentID:  ", record->DocumentID);
+       printf("     VersionNumber:  %d\n", record->VersionNumber);
+     */
+
+    if (binary) {
+	(*target->isa->put_block) (target,
+				   record->DocumentText->bytes,
+				   record->DocumentText->size);
+	return;
+    }
+
+    for (count = 0; count < record->DocumentText->size; count++) {
+	long ch = (unsigned char) record->DocumentText->bytes[count];
+
+	if (ch == 27) {		/* What is this in for?  Tim */
+	    /* then we have an escape code */
+	    /* if the next letter is '(' or ')', then ignore two letters */
+	    if ('(' == record->DocumentText->bytes[count + 1] ||
+		')' == record->DocumentText->bytes[count + 1])
+		count += 1;	/* it is a term marker */
+	    else
+		count += 4;	/* it is a paragraph marker */
+	} else if (ch == '\n' || ch == '\r') {
+	    PUTC('\n');
+	} else if (IS_CJK_TTY || ch == '\t' || isprint(ch)) {
+	    PUTC(ch);
+	}
+    }
+}				/* output text record */
+
+/*	Format A Search response for the client		display_search_response
+ *	---------------------------------------
+ */
+/* modified from tracy shen's version in wutil.c
+ * displays either a text record or a set of headlines.
+ */
+static void display_search_response(HTStructured * target, SearchResponseAPDU *response,
+				    char *the_database,
+				    char *keywords)
+{
+    WAISSearchResponse *info;
+    long i, k;
+
+    BOOL archie = strstr(the_database, "archie") != 0;	/* Special handling */
+
+    CTRACE((tfp, "HTWAIS: Displaying search response\n"));
+    PUTS(gettext("Index "));
+    START(HTML_EM);
+    PUTS(the_database);
+    END(HTML_EM);
+    sprintf(line, gettext(" contains the following %d item%s relevant to \""),
+	    (int) (response->NumberOfRecordsReturned),
+	    response->NumberOfRecordsReturned == 1 ? "" : "s");
+    PUTS(line);
+    START(HTML_EM);
+    PUTS(keywords);
+    END(HTML_EM);
+    PUTS("\".\n");
+    PUTS(gettext("The first figure after each entry is its relative score, "));
+    PUTS(gettext("the second is the number of lines in the item."));
+    START(HTML_BR);
+    START(HTML_BR);
+    PUTC('\n');
+    START(HTML_OL);
+
+    if (response->DatabaseDiagnosticRecords != 0) {
+	info = (WAISSearchResponse *) response->DatabaseDiagnosticRecords;
+	i = 0;
+
+	if (info->Diagnostics != NULL)
+	    showDiags((HTStream *) target, info->Diagnostics);
+
+	if (info->DocHeaders != 0) {
+	    for (k = 0; info->DocHeaders[k] != 0; k++) {
+		WAISDocumentHeader *head = info->DocHeaders[k];
+		char *headline = trim_junk(head->Headline);
+		any *docid = head->DocumentID;
+		char *docname;	/* printable version of docid */
+
+		i++;
+		/*
+		 * Make a printable string out of the document id.
+		 */
+		CTRACE((tfp, "HTWAIS:  %2ld: Score: %4ld, lines:%4ld '%s'\n",
+			i,
+			(long int) (info->DocHeaders[k]->Score),
+			(long int) (info->DocHeaders[k]->Lines),
+			headline));
+
+		START(HTML_LI);
+
+		if (archie) {
+		    char *www_name = WWW_from_archie(headline);
+
+		    if (www_name) {
+			HTStartAnchor(target, NULL, www_name);
+			PUTS(headline);
+			END(HTML_A);
+			FREE(www_name);
+		    } else {
+			PUTS(headline);
+			PUTS(gettext(" (bad file name)"));
+		    }
+		} else {	/* Not archie */
+		    docname = WWW_from_WAIS(docid);
+		    if (docname) {
+			if ((head->Types) &&
+			    (!strcmp(head->Types[0], "URL"))) {
+			    HTStartAnchor(target, NULL, headline);
+			} else {
+			    char *dbname = HTEscape(the_database, URL_XPALPHAS);
+			    char *w3_address = NULL;
+
+			    HTSprintf0(&w3_address,
+				       "/%s/%s/%d/%s",
+				       dbname,
+				       head->Types ? head->Types[0] : "TEXT",
+				       (int) (head->DocumentLength),
+				       docname);
+			    HTStartAnchor(target, NULL, w3_address);
+			    FREE(w3_address);
+			    FREE(dbname);
+			}
+			PUTS(headline);
+			END(HTML_A);
+			FREE(docname);
+		    } else {
+			PUTS(gettext("(bad doc id)"));
+		    }
+		}
+
+		sprintf(line, "%5ld  %5ld  ",
+			head->Score,
+			head->Lines);
+		PUTS(line);
+		MAYBE_END(HTML_LI);
+	    }			/* next document header */
+	}
+	/* if there were any document headers */
+	if (info->ShortHeaders != 0) {
+	    k = 0;
+	    while (info->ShortHeaders[k] != 0) {
+		i++;
+		PUTS(gettext("(Short Header record, can't display)"));
+	    }
+	}
+	if (info->LongHeaders != 0) {
+	    k = 0;
+	    while (info->LongHeaders[k] != 0) {
+		i++;
+		PUTS(gettext("\nLong Header record, can't display\n"));
+	    }
+	}
+	if (info->Text != 0) {
+	    k = 0;
+	    while (info->Text[k] != 0) {
+		i++;
+		PUTS(gettext("\nText record\n"));
+		output_text_record((HTStream *) target,
+				   info->Text[k++], false);
+	    }
+	}
+	if (info->Headlines != 0) {
+	    k = 0;
+	    while (info->Headlines[k] != 0) {
+		i++;
+		PUTS(gettext("\nHeadline record, can't display\n"));
+		/* dsply_headline_record( info->Headlines[k++]); */
+	    }
+	}
+	if (info->Codes != 0) {
+	    k = 0;
+	    while (info->Codes[k] != 0) {
+		i++;
+		PUTS(gettext("\nCode record, can't display\n"));
+		/* dsply_code_record( info->Codes[k++]); */
+	    }
+	}
+    }				/* Loop: display user info */
+    END(HTML_OL);
+    PUTC('\n');
+}
+
+/*		Load by name					HTLoadWAIS
+ *		============
+ *
+ *  This renders any object or search as required.
+ */
+int HTLoadWAIS(const char *arg,
+	       HTParentAnchor *anAnchor,
+	       HTFormat format_out,
+	       HTStream *sink)
+#define MAX_KEYWORDS_LENGTH 1000
+#define MAX_SERVER_LENGTH 1000
+#define MAX_DATABASE_LENGTH 1000
+#define MAX_SERVICE_LENGTH 1000
+#define MAXDOCS 200
+
+{
+    char *key;			/* pointer to keywords in URL */
+    char *request_message = NULL;	/* arbitrary message limit */
+    char *response_message = NULL;	/* arbitrary message limit */
+    long request_buffer_length;	/* how of the request is left */
+    SearchResponseAPDU *retrieval_response = 0;
+    char keywords[MAX_KEYWORDS_LENGTH + 1];
+    char *the_server_name;
+    char *wais_database = NULL;	/* name of current database */
+    char *www_database;		/* Same name escaped */
+    char *service;
+    char *doctype;
+    char *doclength;
+    long document_length = 0;
+    char *docname = 0;
+
+#ifdef VMS
+    long connection = 0;
+
+#else
+    FILE *connection = NULL;
+#endif /* VMS */
+    char *names;		/* Copy of arg to be hacked up */
+    BOOL ok = NO;
+    int return_status = HT_LOADED;
+    int rv;
+
+    if (!acceptable_inited)
+	init_acceptable();
+
+    /* Decipher and check syntax of WWW address:
+     * ----------------------------------------
+     *
+     * First we remove the "wais:" if it was specified.  920110
+     */
+    names = HTParse(arg, "", PARSE_HOST | PARSE_PATH | PARSE_PUNCTUATION);
+    key = strchr(names, '?');
+
+    if (key) {
+	char *p;
+
+	*key++ = 0;		/* Split off keywords */
+	for (p = key; *p; p++)
+	    if (*p == '+')
+		*p = ' ';
+	HTUnEscape(key);
+    }
+    if (names[0] == '/') {
+	the_server_name = names + 1;
+	if ((as_gate = (*the_server_name == '/')) != 0)
+	    the_server_name++;	/* Accept one or two */
+	www_database = strchr(the_server_name, '/');
+	if (www_database) {
+	    *www_database++ = 0;	/* Separate database name */
+	    doctype = strchr(www_database, '/');
+	    if (key)
+		ok = YES;	/* Don't need doc details */
+	    else if (doctype) {	/* If not search parse doc details */
+		*doctype++ = 0;	/* Separate rest of doc address */
+		doclength = strchr(doctype, '/');
+		if (doclength) {
+		    *doclength++ = 0;
+		    document_length = atol(doclength);
+		    if (document_length) {
+			docname = strchr(doclength, '/');
+			if (docname) {
+			    *docname++ = 0;
+			    ok = YES;	/* To avoid a goto! */
+			}	/* if docname */
+		    }		/* if document_length valid */
+		}		/* if doclength */
+	    } else {		/* no doctype?  Assume index required */
+		if (!key)
+		    key = "";
+		ok = YES;
+	    }			/* if doctype */
+	}			/* if database */
+    }
+
+    if (!ok)
+	return HTLoadError(sink, 500, gettext("Syntax error in WAIS URL"));
+
+    CTRACE((tfp, "HTWAIS: Parsed OK\n"));
+
+    service = strchr(names, ':');
+    if (service)
+	*service++ = 0;
+    else
+	service = "210";
+
+    if (the_server_name[0] == 0) {
+#ifdef VMS
+	connection = 0;
+#else
+	connection = NULL;
+#endif /* VMS */
+
+    } else if (!(key && !*key)) {
+	int status;
+
+	CTRACE((tfp, "===WAIS=== calling mosaic_connect_to_server\n"));
+	status = mosaic_connect_to_server(the_server_name,
+					  atoi(service),
+					  &connection);
+	if (status == 0) {
+	    CTRACE((tfp, "===WAIS=== connection failed\n"));
+	    FREE(names);
+	    return HT_NOT_LOADED;
+	} else if (status == -1) {
+	    CTRACE((tfp, "===WAIS=== connection interrupted\n"));
+	    FREE(names);
+	    return HT_NOT_LOADED;
+	}
+    }
+
+    StrAllocCopy(wais_database, www_database);
+    HTUnEscape(wais_database);
+
+    /*
+     * This below fixed size stuff is terrible.
+     */
+#ifdef VMS
+    if ((request_message = typecallocn(char, MAX_MESSAGE_LEN)) == 0)
+	  outofmem(__FILE__, "HTLoadWAIS");
+    if ((response_message = typecallocn(char, MAX_MESSAGE_LEN)) == 0)
+	  outofmem(__FILE__, "HTLoadWAIS");
+
+#else
+    request_message = (char *) s_malloc((size_t) MAX_MESSAGE_LEN * sizeof(char));
+    response_message = (char *) s_malloc((size_t) MAX_MESSAGE_LEN * sizeof(char));
+#endif /* VMS */
+
+    /*
+     * If keyword search is performed but there are no keywords, the user has
+     * followed a link to the index itself.  It would be appropriate at this
+     * point to send him the .SRC file - how?
+     */
+    if (key && !*key) {		/* I N D E X */
+#ifdef CACHE_FILE_PREFIX
+	char *filename = NULL;
+	FILE *fp;
+#endif
+	HTStructured *target = HTML_new(anAnchor, format_out, sink);
+
+	START(HTML_HEAD);
+	PUTC('\n');
+	HTStartIsIndex(target, HTWAIS_SOLICIT_QUERY, NULL);
+	PUTC('\n');
+
+	{
+	    START(HTML_TITLE);
+	    PUTS(wais_database);
+	    PUTS(gettext(" (WAIS Index)"));
+	    END(HTML_TITLE);
+	    PUTC('\n');
+	    END(HTML_HEAD);
+	    PUTC('\n');
+
+	    START(HTML_H1);
+	    PUTS(gettext("WAIS Index: "));
+	    START(HTML_EM);
+	    PUTS(wais_database);
+	    END(HTML_EM);
+	    END(HTML_H1);
+	    PUTC('\n');
+	    PUTS(gettext("This is a link for searching the "));
+	    START(HTML_EM);
+	    PUTS(wais_database);
+	    END(HTML_EM);
+	    PUTS(gettext(" WAIS Index.\n"));
+
+	}
+	/*
+	 * If we have seen a source file for this database, use that.
+	 */
+#ifdef CACHE_FILE_PREFIX
+	HTSprintf0(&filename, "%sWSRC-%s:%s:%.100s.txt",
+		   CACHE_FILE_PREFIX,
+		   the_server_name, service, www_database);
+
+	fp = fopen(filename, "r");	/* Have we found this already? */
+	CTRACE((tfp, "HTWAIS: Description of server %s %s.\n",
+		filename,
+		fp ? "exists already" : "does NOT exist!"));
+
+	if (fp) {
+	    char c;
+
+	    START(HTML_PRE);	/* Preformatted description */
+	    PUTC('\n');
+	    while ((c = getc(fp)) != EOF)
+		PUTC(c);	/* Transfer file */
+	    END(HTML_PRE);
+	    fclose(fp);
+	}
+	FREE(filename);
+#endif
+	START(HTML_P);
+	PUTS(gettext("\nEnter the 's'earch command and then specify search words.\n"));
+
+	FREE_TARGET;
+    } else if (key) {		/* S E A R C H */
+	char *p;
+	HTStructured *target;
+
+	StrNCpy(keywords, key, MAX_KEYWORDS_LENGTH);
+	while ((p = strchr(keywords, '+')) != 0)
+	    *p = ' ';
+
+	/*
+	 * Send advance title to get something fast to the other end.
+	 */
+	target = HTML_new(anAnchor, format_out, sink);
+
+	START(HTML_HEAD);
+	PUTC('\n');
+	HTStartIsIndex(target, HTWAIS_SOLICIT_QUERY, NULL);
+	PUTC('\n');
+	START(HTML_TITLE);
+	PUTS(keywords);
+	PUTS(gettext(" (in "));
+	PUTS(wais_database);
+	PUTC(')');
+	END(HTML_TITLE);
+	PUTC('\n');
+	END(HTML_HEAD);
+	PUTC('\n');
+
+	START(HTML_H1);
+	PUTS(gettext("WAIS Search of \""));
+	START(HTML_EM);
+	PUTS(keywords);
+	END(HTML_EM);
+	PUTS(gettext("\" in: "));
+	START(HTML_EM);
+	PUTS(wais_database);
+	END(HTML_EM);
+	END(HTML_H1);
+	PUTC('\n');
+
+	request_buffer_length = MAX_MESSAGE_LEN;	/* Amount left */
+	CTRACE((tfp, "HTWAIS: Search for `%s' in `%s'\n",
+		keywords, wais_database));
+	if (NULL ==
+	    generate_search_apdu(request_message + HEADER_LENGTH,
+				 &request_buffer_length,
+				 keywords, wais_database, NULL, MAXDOCS)) {
+#ifdef VMS
+	    HTAlert(gettext("HTWAIS: Request too large."));
+	    return_status = HT_NOT_LOADED;
+	    FREE_TARGET;
+	    goto CleanUp;
+#else
+	    panic("request too large");
+#endif /* VMS */
+	}
+
+	HTProgress(gettext("Searching WAIS database..."));
+	rv = interpret_message(request_message,
+			       MAX_MESSAGE_LEN - request_buffer_length,
+			       response_message,
+			       MAX_MESSAGE_LEN,
+			       connection,
+			       false	/* true verbose */
+	    );
+
+	if (rv == HT_INTERRUPTED) {
+	    HTAlert(gettext("Search interrupted."));
+	    return_status = HT_INTERRUPTED;
+	    FREE_TARGET;
+	    goto CleanUp;
+	} else if (!rv) {
+#ifdef VMS
+	    HTAlert(HTWAIS_MESSAGE_TOO_BIG);
+	    return_status = HT_NOT_LOADED;
+	    FREE_TARGET;
+	    goto CleanUp;
+#else
+	    panic("returned message too large");
+#endif /* VMS */
+	} else {		/* returned message ok */
+	    SearchResponseAPDU *query_response = 0;
+
+	    readSearchResponseAPDU(&query_response,
+				   response_message + HEADER_LENGTH);
+	    display_search_response(target,
+				    query_response, wais_database, keywords);
+	    if (query_response->DatabaseDiagnosticRecords)
+		freeWAISSearchResponse(query_response->DatabaseDiagnosticRecords);
+	    freeSearchResponseAPDU(query_response);
+	}			/* returned message not too large */
+	FREE_TARGET;
+    } else {			/* D O C U M E N T    F E T C H */
+	HTFormat format_in;
+	boolean binary;		/* how to transfer stuff coming over */
+	HTStream *target;
+	long count;
+	any doc_chunk;
+	any *docid = &doc_chunk;
+
+	CTRACE((tfp,
+		"HTWAIS: Retrieve document id `%s' type `%s' length %ld\n",
+		NonNull(docname), doctype, document_length));
+
+	format_in =
+	    !strcmp(doctype, "WSRC") ? HTAtom_for("application/x-wais-source") :
+	    !strcmp(doctype, "TEXT") ? HTAtom_for("text/plain") :
+	    !strcmp(doctype, "HTML") ? HTAtom_for("text/html") :
+	    !strcmp(doctype, "GIF") ? HTAtom_for("image/gif") :
+	    HTAtom_for("application/octet-stream");
+	binary =
+	    0 != strcmp(doctype, "WSRC") &&
+	    0 != strcmp(doctype, "TEXT") &&
+	    0 != strcmp(doctype, "HTML");
+
+	target = HTStreamStack(format_in, format_out, sink, anAnchor);
+	if (!target)
+	    return HTLoadError(sink, 500,
+			       gettext("Can't convert format of WAIS document"));
+	/*
+	 * Decode hex or litteral format for document ID.
+	 */
+	WAIS_from_WWW(docid, docname);
+
+	/*
+	 * Loop over slices of the document.
+	 */
+	for (count = 0;
+	     count * CHARS_PER_PAGE < document_length;
+	     count++) {
+#ifdef VMS
+	    char *type = NULL;
+
+	    StrAllocCopy(type, doctype);
+#else
+	    char *type = s_strdup(doctype);	/* Gets freed I guess */
+#endif /* VMS */
+	    request_buffer_length = MAX_MESSAGE_LEN;	/* Amount left */
+	    CTRACE((tfp, "HTWAIS: Slice number %ld\n", count));
+
+	    if (HTCheckForInterrupt()) {
+		HTAlert(TRANSFER_INTERRUPTED);
+		(*target->isa->_abort) (target, NULL);
+#ifdef VMS
+		FREE(type);
+#endif /* VMS */
+		return_status = HT_NOT_LOADED;
+		goto CleanUp;
+	    }
+
+	    if (0 ==
+		generate_retrieval_apdu(request_message + HEADER_LENGTH,
+					&request_buffer_length,
+					docid,
+					CT_byte,
+					count * CHARS_PER_PAGE,
+					(((count + 1) * CHARS_PER_PAGE <= document_length)
+					 ? (count + 1) * CHARS_PER_PAGE
+					 : document_length),
+					type,
+					wais_database)) {
+#ifdef VMS
+		HTAlert(gettext("HTWAIS: Request too long."));
+		return_status = HT_NOT_LOADED;
+		FREE_TARGET;
+		FREE(type);
+		FREE(docid->bytes);
+		goto CleanUp;
+#else
+		panic("request too long");
+#endif /* VMS */
+	    }
+
+	    /*
+	     * Actually do the transaction given by request_message.
+	     */
+	    HTProgress(gettext("Fetching WAIS document..."));
+	    rv = interpret_message(request_message,
+				   MAX_MESSAGE_LEN - request_buffer_length,
+				   response_message,
+				   MAX_MESSAGE_LEN,
+				   connection,
+				   false	/* true verbose */
+		);
+	    if (rv == HT_INTERRUPTED) {
+		HTAlert(TRANSFER_INTERRUPTED);
+		return_status = HT_INTERRUPTED;
+		FREE_TARGET;
+		FREE(type);
+		FREE(docid->bytes);
+		goto CleanUp;
+	    } else if (!rv) {
+#ifdef VMS
+		HTAlert(HTWAIS_MESSAGE_TOO_BIG);
+		return_status = HT_NOT_LOADED;
+		FREE_TARGET;
+		FREE(type);
+		FREE(docid->bytes);
+		goto CleanUp;
+#else
+		panic("Returned message too large");
+#endif /* VMS */
+	    }
+
+	    /*
+	     * Parse the result which came back into memory.
+	     */
+	    readSearchResponseAPDU(&retrieval_response,
+				   response_message + HEADER_LENGTH);
+
+	    if (NULL ==
+		((WAISSearchResponse *)
+		 retrieval_response->DatabaseDiagnosticRecords)->Text) {
+		/* display_search_response(target, retrieval_response,
+		   wais_database, keywords); */
+		PUTS(gettext("No text was returned!\n"));
+		/* panic("No text was returned"); */
+	    } else {
+		output_text_record(target,
+				   ((WAISSearchResponse *)
+				    retrieval_response->DatabaseDiagnosticRecords)->Text[0],
+				   binary);
+	    }			/* If text existed */
+
+#ifdef VMS
+	    FREE(type);
+#endif /* VMS */
+	}			/* Loop over slices */
+
+	FREE_TARGET;
+	FREE(docid->bytes);
+
+	freeWAISSearchResponse(retrieval_response->DatabaseDiagnosticRecords);
+	freeSearchResponseAPDU(retrieval_response);
+
+    }				/* If document rather than search */
+
+  CleanUp:
+    /*
+     * (This postponed until later, after a timeout:)
+     */
+#ifdef VMS
+    if (connection)
+	NETCLOSE((int) connection);
+#else
+    if (connection)
+	fclose(connection);
+#endif /* VMS */
+    FREE(wais_database);
+#ifdef VMS
+    FREE(request_message);
+    FREE(response_message);
+#else
+    s_free(request_message);
+    s_free(response_message);
+#endif /* VMS */
+    FREE(names);
+    return (return_status);
+}
+
+#ifdef GLOBALDEF_IS_MACRO
+#define _HTWAIS_C_1_INIT { "wais", HTLoadWAIS, NULL }
+GLOBALDEF(HTProtocol, HTWAIS, _HTWAIS_C_1_INIT);
+#else
+GLOBALDEF HTProtocol HTWAIS =
+{"wais", HTLoadWAIS, NULL};
+#endif /* GLOBALDEF_IS_MACRO */
diff --git a/WWW/Library/Implementation/HTWAIS.h b/WWW/Library/Implementation/HTWAIS.h
new file mode 100644
index 00000000..4ba6f678
--- /dev/null
+++ b/WWW/Library/Implementation/HTWAIS.h
@@ -0,0 +1,43 @@
+/*                                                    WAIS protocol module for the W3 library
+                                 WAIS PROTOCOL INTERFACE
+
+   This module does not actually perform the WAIS protocol directly, but it does using one
+   or more libraries of the freeWAIS distribution.  The ui.a library came with the old free
+   WAIS from TMC,  the client.a and wais.a libraries are needed from the freeWAIS from
+   CNIDR.
+
+   If you include this module in the library, you must also
+
+      Register the HTWAIS protocol at initialisation (e.g., HTInit or HTSInit) by compiling
+      it with -DDIRECT_WAIS
+
+      Link with the WAIS libraries
+
+   The wais source files are parsed by a separate and independent module, HTWSRC .   You
+   can include HTWSRC without including direct wais using this module, and your WWW code
+   will be able to read source files, and access WAIS indexes through a gateway.
+
+   A WAIS-WWW gateway is just a normal W3 server with a libwww compiled with this module.
+
+   Anyways, this interface won't change much:
+
+ */
+#ifndef HTWAIS_H
+#define HTWAIS_H
+
+#include <HTAccess.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#ifdef GLOBALREF_IS_MACRO
+    extern GLOBALREF (HTProtocol, HTWAIS);
+
+#else
+    GLOBALREF HTProtocol HTWAIS;
+#endif				/* GLOBALDEF_IS_MACRO */
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTWAIS_H */
diff --git a/WWW/Library/Implementation/HTWSRC.c b/WWW/Library/Implementation/HTWSRC.c
new file mode 100644
index 00000000..cd161009
--- /dev/null
+++ b/WWW/Library/Implementation/HTWSRC.c
@@ -0,0 +1,487 @@
+/*
+ * $LynxId: HTWSRC.c,v 1.28 2011/06/11 12:11:53 tom Exp $
+ *
+ *			Parse WAIS Source file			HTWSRC.c
+ *			======================
+ *
+ *	This module parses a stream with WAIS source file
+ *	format information on it and creates a structured stream.
+ *	That structured stream is then converted into whatever.
+ *
+ *	3 June 93	Bug fix: Won't crash if no description
+ */
+
+#define HTSTREAM_INTERNAL 1
+
+#include <HTUtils.h>
+
+#include <HTWSRC.h>
+#include <LYUtils.h>
+
+#include <HTML.h>
+#include <HTParse.h>
+
+#include <LYLeaks.h>
+
+#define BIG 10000		/* Arbitrary limit to value length */
+#define PARAM_MAX BIG
+#define CACHE_PERIOD (7*86400)	/* Time to keep .src file in seconds */
+
+struct _HTStructured {
+    const HTStructuredClass *isa;
+    /* ... */
+};
+
+#define PUTC(c) (*me->target->isa->put_character)(me->target, c)
+#define PUTS(s) (*me->target->isa->put_string)(me->target, s)
+#define START(e) (*me->target->isa->start_element)(me->target, e, 0, 0, -1, 0)
+#define END(e) (*me->target->isa->end_element)(me->target, e, 0)
+#define MAYBE_END(e) if (HTML_dtd.tags[e].contents != SGML_EMPTY) \
+			(*me->target->isa->end_element)(me->target, e, 0)
+
+/*	Here are the parameters which can be specified in a  source file
+*/
+static const char *par_name[] =
+{
+    "version",
+    "ip-address",
+#define PAR_IP_NAME 2
+    "ip-name",
+#define PAR_TCP_PORT 3
+    "tcp-port",
+#define PAR_DATABASE_NAME 4
+    "database-name",
+#define PAR_COST 5
+    "cost",
+#define PAR_COST_UNIT 6
+    "cost-unit",
+#define PAR_FREE 7
+    "free",
+#define PAR_MAINTAINER 8
+    "maintainer",
+#define PAR_DESCRIPTION 9
+    "description",
+    "keyword-list",
+    "source",
+    "window-geometry",
+    "configuration",
+    "script",
+    "update-time",
+    "contact-at",
+    "last-contacted",
+    "confidence",
+    "num-docs-to-request",
+    "font",
+    "font-size",
+#define PAR_UNKNOWN 22
+    "unknown",
+    0,				/* Terminate list */
+#define PAR_COUNT 23
+};
+
+enum tokenstate {
+    beginning,
+    before_tag,
+    colon,
+    before_value,
+    value,
+    bracketed_value,
+    quoted_value,
+    escape_in_quoted,
+    done
+};
+
+/*		Stream Object
+ *		------------
+ *
+ *	The target is the structured stream down which the
+ *	parsed results will go.
+ *
+ *	all the static stuff below should go in here to make it reentrant
+ */
+
+struct _HTStream {
+    const HTStreamClass *isa;
+    HTStructured *target;
+    char *par_value[PAR_COUNT];
+    enum tokenstate state;
+    char param[BIG + 1];
+    int param_number;
+    int param_count;
+};
+
+/*	Decode one hex character
+*/
+char from_hex(char c)
+{
+    return (char) ((c >= '0') && (c <= '9') ? c - '0'
+		   : (c >= 'A') && (c <= 'F') ? c - 'A' + 10
+		   : (c >= 'a') && (c <= 'f') ? c - 'a' + 10
+		   : 0);
+}
+
+/*			State machine
+ *			-------------
+ *
+ * On entry,
+ *	me->state	is a valid state (see WSRC_init)
+ *	c		is the next character
+ * On exit,
+ *	returns 1	Done with file
+ *		0	Continue. me->state is updated if necessary.
+ *		-1	Syntax error error
+ */
+
+/*		Treat One Character
+ *		-------------------
+ */
+static void WSRCParser_put_character(HTStream *me, int c)
+{
+    switch (me->state) {
+    case beginning:
+	if (c == '(')
+	    me->state = before_tag;
+	break;
+
+    case before_tag:
+	if (c == ')') {
+	    me->state = done;
+	    return;		/* Done with input file */
+	} else if (c == ':') {
+	    me->param_count = 0;
+	    me->state = colon;
+	}			/* Ignore other text */
+	break;
+
+    case colon:
+	if (WHITE(c)) {
+	    me->param[me->param_count++] = 0;	/* Terminate */
+	    for (me->param_number = 0;
+		 par_name[me->param_number];
+		 me->param_number++) {
+		if (0 == strcmp(par_name[me->param_number], me->param)) {
+		    break;
+		}
+	    }
+	    if (!par_name[me->param_number]) {	/* Unknown field */
+		CTRACE((tfp, "HTWSRC: Unknown field `%s' in source file\n",
+			me->param));
+		me->param_number = PAR_UNKNOWN;
+		me->state = before_value;	/* Could be better ignore */
+		return;
+	    }
+	    me->state = before_value;
+	} else {
+	    if (me->param_count < PARAM_MAX)
+		me->param[me->param_count++] = (char) c;
+	}
+	break;
+
+    case before_value:
+	if (c == ')') {
+	    me->state = done;
+	    return;		/* Done with input file */
+	}
+	if (WHITE(c))
+	    return;		/* Skip white space */
+	me->param_count = 0;
+	if (c == '"') {
+	    me->state = quoted_value;
+	    break;
+	}
+	me->state = (c == '"') ? quoted_value :
+	    (c == '(') ? bracketed_value : value;
+	me->param[me->param_count++] = (char) c;	/* Don't miss first character */
+	break;
+
+    case value:
+	if (WHITE(c)) {
+	    me->param[me->param_count] = 0;
+	    StrAllocCopy(me->par_value[me->param_number], me->param);
+	    me->state = before_tag;
+	} else {
+	    if (me->param_count < PARAM_MAX)
+		me->param[me->param_count++] = (char) c;
+	}
+	break;
+
+    case bracketed_value:
+	if (c == ')') {
+	    me->param[me->param_count] = 0;
+	    StrAllocCopy(me->par_value[me->param_number], me->param);
+	    me->state = before_tag;
+	    break;
+	}
+	if (me->param_count < PARAM_MAX)
+	    me->param[me->param_count++] = (char) c;
+	break;
+
+    case quoted_value:
+	if (c == '"') {
+	    me->param[me->param_count] = 0;
+	    StrAllocCopy(me->par_value[me->param_number], me->param);
+	    me->state = before_tag;
+	    break;
+	}
+
+	if (c == '\\') {	/* Ignore escape but switch state */
+	    me->state = escape_in_quoted;
+	    break;
+	}
+	/* Fall through! */
+
+    case escape_in_quoted:
+	if (me->param_count < PARAM_MAX)
+	    me->param[me->param_count++] = (char) c;
+	me->state = quoted_value;
+	break;
+
+    case done:			/* Ignore anything after EOF */
+	return;
+
+    }				/* switch me->state */
+}
+
+/*			Open Cache file
+ *			===============
+ *
+ *   Bugs: Maybe for filesystem-challenged platforms (MSDOS for example) we
+ *   should make a hash code for the filename.
+ */
+
+#ifdef CACHE_FILE_PREFIX
+static BOOL write_cache(HTStream *me)
+{
+    FILE *fp;
+    char *cache_file_name = NULL;
+    char *www_database;
+    int result = NO;
+
+    if (!me->par_value[PAR_DATABASE_NAME]
+	|| !me->par_value[PAR_IP_NAME]
+	)
+	return NO;
+
+    www_database = HTEscape(me->par_value[PAR_DATABASE_NAME], URL_XALPHAS);
+    HTSprintf0(&cache_file_name, "%sWSRC-%s:%s:%.100s.txt",
+	       CACHE_FILE_PREFIX,
+	       me->par_value[PAR_IP_NAME],
+	       (me->par_value[PAR_TCP_PORT]
+		? me->par_value[PAR_TCP_PORT]
+		: "210"),
+	       www_database);
+
+    if ((fp = fopen(cache_file_name, TXT_W)) != 0) {
+	result = YES;
+	if (me->par_value[PAR_DESCRIPTION])
+	    fputs(me->par_value[PAR_DESCRIPTION], fp);
+	else
+	    fputs("Description not available\n", fp);
+	fclose(fp);
+    }
+    FREE(www_database);
+    FREE(cache_file_name);
+    return result;
+}
+#endif
+
+/*			Output equivalent HTML
+ *			----------------------
+ *
+ */
+
+static void give_parameter(HTStream *me, int p)
+{
+    PUTS(par_name[p]);
+    if (me->par_value[p]) {
+	PUTS(": ");
+	PUTS(me->par_value[p]);
+	PUTS("; ");
+    } else {
+	PUTS(gettext(" NOT GIVEN in source file; "));
+    }
+}
+
+/*			Generate Outout
+ *			===============
+ */
+static void WSRC_gen_html(HTStream *me, int source_file)
+{
+    if (me->par_value[PAR_DATABASE_NAME]) {
+	char *shortname = 0;
+	int l;
+
+	StrAllocCopy(shortname, me->par_value[PAR_DATABASE_NAME]);
+	l = (int) strlen(shortname);
+	if (l > 4 && !strcasecomp(shortname + l - 4, ".src")) {
+	    shortname[l - 4] = 0;	/* Chop of .src -- boring! */
+	}
+
+	START(HTML_HEAD);
+	PUTC('\n');
+	START(HTML_TITLE);
+	PUTS(shortname);
+	PUTS(source_file ? gettext(" WAIS source file") : INDEX_SEGMENT);
+	END(HTML_TITLE);
+	PUTC('\n');
+	END(HTML_HEAD);
+
+	START(HTML_H1);
+	PUTS(shortname);
+	PUTS(source_file ? gettext(" description") : INDEX_SEGMENT);
+	END(HTML_H1);
+	PUTC('\n');
+	FREE(shortname);
+    }
+
+    START(HTML_DL);		/* Definition list of details */
+
+    if (source_file) {
+	START(HTML_DT);
+	PUTS(gettext("Access links"));
+	MAYBE_END(HTML_DT);
+	START(HTML_DD);
+	if (me->par_value[PAR_IP_NAME] &&
+	    me->par_value[PAR_DATABASE_NAME]) {
+
+	    char *WSRC_address = NULL;
+	    char *www_database;
+
+	    www_database = HTEscape(me->par_value[PAR_DATABASE_NAME],
+				    URL_XALPHAS);
+	    HTSprintf0(&WSRC_address, "%s//%s%s%s/%s",
+		       STR_WAIS_URL,
+		       me->par_value[PAR_IP_NAME],
+		       me->par_value[PAR_TCP_PORT] ? ":" : "",
+		       (me->par_value[PAR_TCP_PORT]
+			? me->par_value[PAR_TCP_PORT]
+			: ""),
+		       www_database);
+
+	    HTStartAnchor(me->target, NULL, WSRC_address);
+	    PUTS(gettext("Direct access"));
+	    END(HTML_A);
+	    /** Proxy will be used if defined, so let user know that - FM **/
+	    PUTS(gettext(" (or via proxy server, if defined)"));
+
+	    FREE(www_database);
+	    FREE(WSRC_address);
+
+	} else {
+	    give_parameter(me, PAR_IP_NAME);
+	    give_parameter(me, PAR_DATABASE_NAME);
+	}
+	MAYBE_END(HTML_DD);
+
+    }
+    /* end if source_file */
+    if (me->par_value[PAR_MAINTAINER]) {
+	START(HTML_DT);
+	PUTS(gettext("Maintainer"));
+	MAYBE_END(HTML_DT);
+	START(HTML_DD);
+	PUTS(me->par_value[PAR_MAINTAINER]);
+	MAYBE_END(HTML_DD);
+    }
+    if (me->par_value[PAR_IP_NAME]) {
+	START(HTML_DT);
+	PUTS(gettext("Host"));
+	MAYBE_END(HTML_DT);
+	START(HTML_DD);
+	PUTS(me->par_value[PAR_IP_NAME]);
+	MAYBE_END(HTML_DD);
+    }
+
+    END(HTML_DL);
+
+    if (me->par_value[PAR_DESCRIPTION]) {
+	START(HTML_PRE);	/* Preformatted description */
+	PUTS(me->par_value[PAR_DESCRIPTION]);
+	END(HTML_PRE);
+    }
+
+    (*me->target->isa->_free) (me->target);
+
+    return;
+}				/* generate html */
+
+static void WSRCParser_put_string(HTStream *context, const char *str)
+{
+    const char *p;
+
+    for (p = str; *p; p++)
+	WSRCParser_put_character(context, *p);
+}
+
+static void WSRCParser_write(HTStream *context, const char *str,
+			     int l)
+{
+    const char *p;
+    const char *e = str + l;
+
+    for (p = str; p < e; p++)
+	WSRCParser_put_character(context, *p);
+}
+
+static void WSRCParser_free(HTStream *me)
+{
+    WSRC_gen_html(me, YES);
+#ifdef CACHE_FILE_PREFIX
+    write_cache(me);
+#endif
+    {
+	int p;
+
+	for (p = 0; par_name[p]; p++) {		/* Clear out old values */
+	    FREE(me->par_value[p]);
+	}
+    }
+    FREE(me);
+}
+
+static void WSRCParser_abort(HTStream *me, HTError e GCC_UNUSED)
+{
+    WSRCParser_free(me);
+}
+
+/*		Stream subclass		-- method routines
+ *		---------------
+ */
+
+static HTStreamClass WSRCParserClass =
+{
+    "WSRCParser",
+    WSRCParser_free,
+    WSRCParser_abort,
+    WSRCParser_put_character,
+    WSRCParser_put_string,
+    WSRCParser_write
+};
+
+/*		Converter from WAIS Source to whatever
+ *		--------------------------------------
+ */
+HTStream *HTWSRCConvert(HTPresentation *pres, HTParentAnchor *anchor,
+			HTStream *sink)
+{
+    HTStream *me = (HTStream *) malloc(sizeof(*me));
+
+    if (!me)
+	outofmem(__FILE__, "HTWSRCConvert");
+
+    assert(me != NULL);
+
+    me->isa = &WSRCParserClass;
+    me->target = HTML_new(anchor, pres->rep_out, sink);
+
+    {
+	int p;
+
+	for (p = 0; p < PAR_COUNT; p++) {	/* Clear out parameter values */
+	    me->par_value[p] = 0;
+	}
+    }
+    me->state = beginning;
+
+    return me;
+}
diff --git a/WWW/Library/Implementation/HTWSRC.h b/WWW/Library/Implementation/HTWSRC.h
new file mode 100644
index 00000000..152d27ab
--- /dev/null
+++ b/WWW/Library/Implementation/HTWSRC.h
@@ -0,0 +1,43 @@
+/*                                                             A parser for WAIS source files
+                                 WAIS SOURCE FILE PARSER
+
+   This converter returns a stream object into which a WAIS source file can be
+   written.  The result is put via a structured stream into whatever format was
+   required for the output stream.
+
+   See also:  HTWAIS protocol interface module
+
+ */
+#ifndef HTWSRC_H
+#define HTWSRC_H
+
+#include <HTFormat.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern char from_hex(char c);
+
+    extern HTStream *HTWSRCConvert(HTPresentation *pres,
+				   HTParentAnchor *anchor,
+				   HTStream *sink);
+
+/*
+
+Escaping Strings
+
+   HTDeSlash takes out the invlaid characters in a URL path ELEMENT by
+   converting them into hex-escaped characters.  HTEnSlash does the reverse.
+
+   Each returns a pointer to a newly allocated string which must eventually be
+   freed by the caller.
+
+ */
+    extern char *HTDeSlash(const char *str);
+
+    extern char *HTEnSlash(const char *str);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTWSRC_H */
diff --git a/WWW/Library/Implementation/HText.h b/WWW/Library/Implementation/HText.h
new file mode 100644
index 00000000..84ec87c7
--- /dev/null
+++ b/WWW/Library/Implementation/HText.h
@@ -0,0 +1,219 @@
+/*
+ * $LynxId: HText.h,v 1.16 2010/09/25 11:41:08 tom Exp $
+ *                                                           Rich Hypertext object for libWWW
+ *                                RICH HYPERTEXT OBJECT
+ *
+ * This is the C interface to the Objective-C (or whatever) Style-oriented
+ * HyperText class.  It is used when a style-oriented text object is available
+ * or craeted in order to display hypertext.
+ */
+#ifndef HTEXT_H
+#define HTEXT_H
+
+#include <HTAnchor.h>
+#include <HTStyle.h>
+#include <HTStream.h>
+#include <SGML.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+#ifndef THINK_C
+#ifndef HyperText		/* Objective C version defined HyperText */
+    typedef struct _HText HText;	/* Normal Library */
+#endif
+#else
+    class CHyperText;		/* Mac Think-C browser hook */
+    typedef CHyperText HText;
+#endif
+
+    extern HText *HTMainText;	/* Pointer to current main text */
+    extern HTParentAnchor *HTMainAnchor;	/* Pointer to current text's anchor */
+
+    extern const char *HTAppName;	/* Application name */
+    extern const char *HTAppVersion;	/* Application version */
+
+/*
+
+Creation and deletion
+
+  HTEXT_NEW: CREATE HYPERTEXT OBJECT
+
+   There are several methods depending on how much you want to specify.  The
+   output stream is used with objects which need to output the hypertext to a
+   stream.  The structure is for objects which need to refer to the structure
+   which is kep by the creating stream.
+
+ */
+    extern HText *HText_new(HTParentAnchor *anchor);
+
+    extern HText *HText_new2(HTParentAnchor *anchor,
+			     HTStream *output_stream);
+
+    extern HText *HText_new3(HTParentAnchor *anchor,
+			     HTStream *output_stream,
+			     HTStructured * structure);
+
+/*
+
+  FREE HYPERTEXT OBJECT
+
+ */
+    extern void HText_free(HText *me);
+
+/*
+
+Object Building methods
+
+   These are used by a parser to build the text in an object HText_beginAppend
+   must be called, then any combination of other append calls, then
+   HText_endAppend.  This allows optimised handling using buffers and caches
+   which are flushed at the end.
+
+ */
+    extern void HText_beginAppend(HText *text);
+
+    extern void HText_endAppend(HText *text);
+
+/*
+
+  SET THE STYLE FOR FUTURE TEXT
+
+ */
+
+    extern void HText_setStyle(HText *text, HTStyle *style);
+
+/*
+
+  ADD ONE CHARACTER
+
+ */
+    extern void HText_appendCharacter(HText *text, int ch);
+
+/*
+
+  ADD A ZERO-TERMINATED STRING
+
+ */
+
+    extern void HText_appendText(HText *text, const char *str);
+
+/*
+
+  NEW PARAGRAPH
+
+   and similar things
+
+ */
+    extern void HText_appendParagraph(HText *text);
+
+    extern void HText_appendLineBreak(HText *text);
+
+    extern void HText_appendHorizontalRule(HText *text);
+
+/*
+
+  START/END SENSITIVE TEXT
+
+ */
+
+/*
+
+   The anchor object is created and passed to HText_beginAnchor.  The senstive
+   text is added to the text object, and then HText_endAnchor is called. 
+   Anchors may not be nested.
+
+ */
+    extern int HText_beginAnchor(HText *text, int underline,
+				 HTChildAnchor *anc);
+    extern void HText_endAnchor(HText *text, int number);
+    extern BOOL HText_isAnchorBlank(HText *text, int number);
+
+/*
+
+  APPEND AN INLINE IMAGE
+
+   The image is handled by the creation of an anchor whose destination is the
+   image document to be included.  The semantics is the intended inline display
+   of the image.
+
+   An alternative implementation could be, for example, to begin an anchor,
+   append the alternative text or "IMAGE", then end the anchor.  This would
+   simply generate some text linked to the image itself as a separate document.
+
+ */
+    extern void HText_appendImage(HText *text, HTChildAnchor *anc,
+				  const char *alternative_text,
+				  int alignment,
+				  int isMap);
+
+/*
+
+  RETURN THE ANCHOR ASSOCIATED WITH THIS NODE
+
+ */
+    extern HTParentAnchor *HText_nodeAnchor(HText *me);
+
+/*
+
+Browsing functions
+
+ */
+
+/*
+
+  BRING TO FRONT AND HIGHLIGHT IT
+
+ */
+
+    extern BOOL HText_select(HText *text);
+    extern BOOL HText_selectAnchor(HText *text, HTChildAnchor *anchor);
+
+/*
+
+Editing functions
+
+   These are called from the application.  There are many more functions not
+   included here from the orginal text object.  These functions NEED NOT BE
+   IMPLEMENTED in a browser which cannot edit.
+
+ */
+/*      Style handling:
+*/
+/*      Apply this style to the selection
+*/
+    extern void HText_applyStyle(HText *me, HTStyle *style);
+
+/*      Update all text with changed style.
+*/
+    extern void HText_updateStyle(HText *me, HTStyle *style);
+
+/*      Return style of  selection
+*/
+    extern HTStyle *HText_selectionStyle(HText *me, HTStyleSheet *sheet);
+
+/*      Paste in styled text
+*/
+    extern void HText_replaceSel(HText *me, const char *aString,
+				 HTStyle *aStyle);
+
+/*      Apply this style to the selection and all similarly formatted text
+ *      (style recovery only)
+ */
+    extern void HTextApplyToSimilar(HText *me, HTStyle *style);
+
+/*      Select the first unstyled run.
+ *      (style recovery only)
+ */
+    extern void HTextSelectUnstyled(HText *me, HTStyleSheet *sheet);
+
+/*      Anchor handling:
+*/
+    extern void HText_unlinkSelection(HText *me);
+    extern HTAnchor *HText_referenceSelected(HText *me);
+    extern HTAnchor *HText_linkSelTo(HText *me, HTAnchor * anchor);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* HTEXT_H */
diff --git a/WWW/Library/Implementation/HTioctl.h b/WWW/Library/Implementation/HTioctl.h
new file mode 100644
index 00000000..99f86321
--- /dev/null
+++ b/WWW/Library/Implementation/HTioctl.h
@@ -0,0 +1,11 @@
+/*
+ *  A routine to mimic the ioctl function for UCX.
+ *  Bjorn S. Nilsson, 25-Nov-1993. Based on an example in the UCX manual.
+ */
+#include <iodef.h>
+#define IOC_OUT (int)0x40000000
+extern int vaxc$get_sdc(), sys$qiow();
+
+#ifndef UCX$C_IOCTL
+#define UCX$C_IOCTL TCPIP$C_IOCTL
+#endif
diff --git a/WWW/Library/Implementation/LYLeaks.h b/WWW/Library/Implementation/LYLeaks.h
new file mode 100644
index 00000000..b3672734
--- /dev/null
+++ b/WWW/Library/Implementation/LYLeaks.h
@@ -0,0 +1,299 @@
+/*
+ * $LynxId: LYLeaks.h,v 1.14 2012/02/10 00:15:56 tom Exp $
+ */
+#ifndef __LYLEAKS_H
+/*
+ *	Avoid include redundancy
+ *	Include only if finding memory leaks.
+ */
+#define __LYLEAKS_H
+
+/*
+ *  Copyright (c) 1994, University of Kansas, All Rights Reserved
+ *
+ *  Include File:	LYLeaks.h
+ *  Purpose:		Header to convert requests for allocation to Lynx
+ *			custom functions to track memory leaks.
+ *  Remarks/Portability/Dependencies/Restrictions:
+ *	For the stdlib.h allocation functions to be overriden by the
+ *		Lynx memory tracking functions all modules allocating,
+ *		freeing, or resizing memory must have LY_FIND_LEAKS
+ *		defined before including this file.
+ *	This header file should be included in every source file which
+ *		does any memory manipulation through use of the
+ *		stdlib.h memory functions.
+ *	For proper reporting of memory leaks, the function LYLeaks
+ *		should be registered for execution by atexit as the
+ *		very first executable statement in main.
+ *	This code is slow and should not be used except in debugging
+ *		circumstances (don't define LY_FIND_LEAKS).
+ *	If you are using LY_FIND_LEAKS and don't want the LYLeak*
+ *		memory functions to be used in a certain file,
+ *		define NO_MEMORY_TRACKING before including this file.
+ *	The only safe way to call the LYLeak* functions is to use
+ *		the below macros because they depend on the static
+ *		string created by __FILE__ to not be dynamic in
+ *		nature (don't free it and assume will exist at all
+ *		times during execution).
+ *	If you are using LY_FIND_LEAKS and LY_FIND_LEAKS_EXTENDED and
+ *		want only normal memory tracking (not extended for
+ *		HTSprintf/HTSprintf0) to be used in a certain file,
+ *		define NO_EXTENDED_MEMORY_TRACKING and don't define
+ *		NO_MEMORY_TRACKING before including this file.
+ *  Revision History:
+ *	05-26-94	created for Lynx 2-3-1, Garrett Arch Blythe
+ *	10-30-97	modified to handle StrAllocCopy() and
+ *			StrAllocCat(). - KW & FM
+ *	1999-10-17	modified to handle HTSprintf0 and HTSprintf(),
+ *			and to provide mark_malloced, if
+ *			LY_FIND_LEAKS_EXTENDED is defined. - kw
+ *	2003-01-22	add sequence-id for counting mallocs/frees -TD
+ *	2004-04-27	ANSIfy'd -TD
+ *	2012-02-09	add bstring interfaces -TD
+ */
+
+/* Undefine this to get no improved HTSprintf0/HTSprintf tracking: */
+#define LY_FIND_LEAKS_EXTENDED
+
+/*
+ *  Required includes
+ */
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ *	Constant defines
+ */
+#define MAX_CONTENT_LENGTH 50
+#ifdef VMS
+#define LEAKAGE_SINK "sys$login:Lynx.leaks"
+#else
+#define LEAKAGE_SINK "Lynx.leaks"
+#endif				/* VMS */
+/*
+ * Data structures
+ */ typedef struct SourceLocation_tag {
+	/*
+	 * The file name and line number of where an event took place.
+	 */
+	const char *cp_FileName;
+	short ssi_LineNumber;
+    } SourceLocation;
+
+    typedef struct AllocationList_tag {
+	/*
+	 * A singly linked list.
+	 */
+	struct AllocationList_tag *ALp_Next;
+
+	/*
+	 * Count the number of mallocs.
+	 */
+	long st_Sequence;
+
+	/*
+	 * The memory pointer allocated.  If set to NULL, then an invalid request
+	 * was made.  The invalid pointer also.
+	 */
+	void *vp_Alloced;
+	void *vp_BadRequest;
+
+	/*
+	 * The size in bytes of the allocated memory.
+	 */
+	size_t st_Bytes;
+
+	/*
+	 * The source location of specific event (calloc, malloc, free).  realloc
+	 * kept separate since will track last realloc on pointer.
+	 */
+	SourceLocation SL_memory;
+	SourceLocation SL_realloc;
+    } AllocationList;
+
+/*
+ *  Global variable declarations
+ */
+
+/*
+ *  Macros
+ */
+#if defined(LY_FIND_LEAKS) && !defined(NO_MEMORY_TRACKING)
+/*
+ * Only use these macros if we are to track memory allocations.  The reason for
+ * using a macro instead of a define is that we want to track where the initial
+ * allocation took place or where the last reallocation took place.  Track
+ * where the allocation took place by the __FILE__ and __LINE__ defines which
+ * are automatic to the compiler.
+ */
+#ifdef malloc
+#undef malloc
+#endif				/* malloc */
+#define malloc(st_bytes) LYLeakMalloc(st_bytes, __FILE__, __LINE__)
+
+#ifdef calloc
+#undef calloc
+#endif				/* calloc */
+#define calloc(st_number, st_bytes) LYLeakCalloc(st_number, st_bytes, \
+	__FILE__, __LINE__)
+
+#ifdef realloc
+#undef realloc
+#endif				/* realloc */
+#define realloc(vp_alloced, st_newbytes) LYLeakRealloc(vp_alloced, \
+	st_newbytes, __FILE__, __LINE__)
+
+#ifdef free
+#undef free
+#endif				/* free */
+#define free(vp_alloced) LYLeakFree(vp_alloced, __FILE__, __LINE__)
+
+/*
+ * Added the following two defines to track Lynx's frequent use of those
+ * macros.  - KW 1997-10-12
+ */
+#ifdef StrAllocCopy
+#undef StrAllocCopy
+#endif				/* StrAllocCopy */
+#define StrAllocCopy(dest, src) LYLeakSACopy(&(dest), src, __FILE__, __LINE__)
+
+#ifdef StrAllocCat
+#undef StrAllocCat
+#endif				/* StrAllocCat */
+#define StrAllocCat(dest, src)  LYLeakSACat(&(dest), src, __FILE__, __LINE__)
+
+#ifdef BStrAlloc
+#undef BStrAlloc
+#endif
+#define BStrAlloc(d,n)   LYLeakSABAlloc( &(d), n, __FILE__, __LINE__)
+
+#ifdef BStrCopy
+#undef BStrCopy
+#endif
+#define BStrCopy(d,s)  LYLeakSABCopy( &(d), BStrData(s), BStrLen(s), __FILE__, __LINE__)
+
+#ifdef BStrCopy0
+#undef BStrCopy0
+#endif
+#define BStrCopy0(d,s)  LYLeakSABCopy0( &(d), s, __FILE__, __LINE__)
+
+#ifdef BStrCat
+#undef BStrCat
+#endif
+#define BStrCat(d,s)  LYLeakSABCat( &(d), BStrData(s), BStrLen(s), __FILE__, __LINE__)
+
+#ifdef BStrCat0
+#undef BStrCat0
+#endif
+#define BStrCat0(d,s)  LYLeakSABCat0( &(d), s, __FILE__, __LINE__)
+
+#define mark_malloced(a,size) LYLeak_mark_malloced(a,size, __FILE__, __LINE__)
+
+#if defined(LY_FIND_LEAKS_EXTENDED) && !defined(NO_EXTENDED_MEMORY_TRACKING)
+
+#ifdef HTSprintf0
+#undef HTSprintf0
+#endif				/* HTSprintf0 */
+#define HTSprintf0 (Get_htsprintf0_fn(__FILE__,__LINE__))
+
+#ifdef HTSprintf
+#undef HTSprintf
+#endif				/* HTSprintf */
+#define HTSprintf (Get_htsprintf_fn(__FILE__,__LINE__))
+
+#endif				/* LY_FIND_LEAKS_EXTENDED and not NO_EXTENDED_MEMORY_TRACKING */
+
+#else				/* LY_FIND_LEAKS && !NO_MEMORY_TRACKING */
+
+#define mark_malloced(a,size)	/* no-op */
+#define LYLeakSequence() (-1)
+
+#endif				/* LY_FIND_LEAKS && !NO_MEMORY_TRACKING */
+
+#if defined(LY_FIND_LEAKS)
+#define PUBLIC_IF_FIND_LEAKS	/* nothing */
+#else
+#define PUBLIC_IF_FIND_LEAKS static
+#endif
+
+/*
+ * Function declarations.
+ * See the appropriate source file for usage.
+ */
+#ifndef LYLeakSequence
+    extern long LYLeakSequence(void);
+#endif
+    extern void LYLeaks(void);
+
+#ifdef LY_FIND_LEAKS_EXTENDED
+    extern AllocationList *LYLeak_mark_malloced(void *vp_alloced,
+						size_t st_bytes,
+						const char *cp_File,
+						const short ssi_Line);
+#endif				/* LY_FIND_LEAKS_EXTENDED */
+    extern void *LYLeakMalloc(size_t st_bytes, const char *cp_File,
+			      const short ssi_Line);
+    extern void *LYLeakCalloc(size_t st_number, size_t st_bytes, const char *cp_File,
+			      const short ssi_Line);
+    extern void *LYLeakRealloc(void *vp_alloced,
+			       size_t st_newbytes,
+			       const char *cp_File,
+			       const short ssi_Line);
+    extern void LYLeakFree(void *vp_alloced,
+			   const char *cp_File,
+			   const short ssi_Line);
+    extern char *LYLeakSACopy(char **dest,
+			      const char *src,
+			      const char *cp_File,
+			      const short ssi_Line);
+    extern char *LYLeakSACat(char **dest,
+			     const char *src,
+			     const char *cp_File,
+			     const short ssi_Line);
+    extern void LYLeakSABAlloc(bstring **dest,
+			       int len,
+			       const char *cp_File,
+			       const short ssi_Line);
+    extern void LYLeakSABCopy(bstring **dest,
+			      const char *src,
+			      int len,
+			      const char *cp_File,
+			      const short ssi_Line);
+    extern void LYLeakSABCopy0(bstring **dest,
+			       const char *src,
+			       const char *cp_File,
+			       const short ssi_Line);
+    extern void LYLeakSABCat(bstring **dest,
+			     const char *src,
+			     int len,
+			     const char *cp_File,
+			     const short ssi_Line);
+    extern void LYLeakSABCat0(bstring **dest,
+			      const char *src,
+			      const char *cp_File,
+			      const short ssi_Line);
+    extern void LYLeakSABFree(bstring **ptr,
+			      const char *cp_File,
+			      const short ssi_Line);
+
+#ifdef LY_FIND_LEAKS_EXTENDED
+/*
+ * Trick to get tracking of var arg functions without relying on var arg
+ * preprocessor macros:
+ */
+    typedef char *HTSprintflike(char **, const char *,...);
+    extern HTSprintflike *Get_htsprintf_fn(const char *cp_File,
+					   const short ssi_Line);
+    extern HTSprintflike *Get_htsprintf0_fn(const char *cp_File,
+					    const short ssi_Line);
+#endif				/* LY_FIND_LEAKS_EXTENDED */
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* __LYLEAKS_H */
diff --git a/WWW/Library/Implementation/LYexit.h b/WWW/Library/Implementation/LYexit.h
new file mode 100644
index 00000000..d32e2079
--- /dev/null
+++ b/WWW/Library/Implementation/LYexit.h
@@ -0,0 +1,67 @@
+#ifndef __LYEXIT_H
+/*
+ *	Avoid include redundancy
+ */
+#define __LYEXIT_H
+
+/*
+ *	Copyright (c) 1994, University of Kansas, All Rights Reserved
+ *
+ *	Include File:	LYexit.h
+ *	Purpose:	Provide an atexit function for libraries without such.
+ *	Remarks/Portability/Dependencies/Restrictions:
+ *		Include this header in every file that you have an exit or
+ *			atexit statment.
+ *	Revision History:
+ *		06-15-94	created Lynx 2-3-1 Garrett Arch Blythe
+ */
+
+/*
+ *	Required includes
+ */
+#ifdef _WINDOWS
+#include <process.h>		/* declares exit() */
+#endif
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ *	Constant defines
+ */
+#ifdef exit
+#undef exit
+#endif
+#define exit(code) LYexit(code)
+#define atexit LYatexit
+#define ATEXITSIZE 50
+
+/*
+ *	Data structures
+ */
+
+/*
+ * Global variable declarations
+ */
+
+/*
+ * Macros
+ */
+
+/*
+ * Function declarations
+ */
+    extern void outofmem(const char *fname, const char *func);
+    extern void reset_signals(void);
+    extern void exit_immediately(int status) GCC_NORETURN;
+    extern void LYexit(int status) GCC_NORETURN;
+    extern int LYatexit(void (*function) (void));
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* __LYEXIT_H */
diff --git a/WWW/Library/Implementation/SGML.c b/WWW/Library/Implementation/SGML.c
new file mode 100644
index 00000000..86908a01
--- /dev/null
+++ b/WWW/Library/Implementation/SGML.c
@@ -0,0 +1,4978 @@
+/*
+ * $LynxId: SGML.c,v 1.148 2012/02/10 18:32:26 tom Exp $
+ *
+ *			General SGML Parser code		SGML.c
+ *			========================
+ *
+ *	This module implements an HTStream object.  To parse an
+ *	SGML file, create this object which is a parser.  The object
+ *	is (currently) created by being passed a DTD structure,
+ *	and a target HTStructured object at which to throw the parsed stuff.
+ *
+ *	 6 Feb 93  Binary searches used. Interface modified.
+ */
+
+#define HTSTREAM_INTERNAL 1
+
+#include <HTUtils.h>
+
+#include <SGML.h>
+#include <HTMLDTD.h>
+#include <HTAccess.h>
+#include <HTCJK.h>		/* FIXME: this doesn't belong in SGML.c */
+#include <UCMap.h>
+#include <UCDefs.h>
+#include <UCAux.h>
+
+#include <HTChunk.h>
+#include <HTUtils.h>
+
+#include <LYCharSets.h>
+#include <LYCharVals.h>		/* S/390 -- gil -- 0635 */
+#include <LYGlobalDefs.h>
+#include <LYStrings.h>
+#include <LYLeaks.h>
+#include <LYUtils.h>
+
+#ifdef USE_COLOR_STYLE
+# include <LYStyle.h>
+#endif
+#ifdef USE_PRETTYSRC
+# include <LYPrettySrc.h>
+#endif
+
+#define AssumeCP1252(context) \
+	(((context)->inUCLYhndl == LATIN1 \
+	  || (context)->inUCLYhndl == US_ASCII) \
+	 && html5_charsets)
+
+#define INVALID (-1)
+
+static int sgml_offset;
+
+#ifdef USE_PRETTYSRC
+
+static char *entity_string;	/* this is used for printing entity name.
+
+				   Unconditionally added since redundant assigments don't hurt much */
+
+static void fake_put_character(void *p GCC_UNUSED,
+			       char c GCC_UNUSED)
+{
+}
+
+#define START TRUE
+#define STOP FALSE
+
+#define PUTS_TR(x) psrc_convert_string = TRUE; PUTS(x)
+
+#endif
+
+/* my_casecomp() - optimized by the first character, NOT_ASCII ok */
+#define my_casecomp(a,b)  ((TOUPPER(*a) == TOUPPER(*b)) ? \
+			AS_casecomp(a,b) : \
+			(TOASCII(TOUPPER(*a)) - TOASCII(TOUPPER(*b))))
+
+ /* will use partially inlined version */
+#define orig_HTChunkPutUtf8Char HTChunkPutUtf8Char
+#undef HTChunkPutUtf8Char
+
+/* ...used for comments and attributes value like href... */
+#define HTChunkPutUtf8Char(ch,x) \
+    { \
+    if ((TOASCII(x) < 128)  && (ch->size < ch->allocated)) \
+	ch->data[ch->size++] = (char)x; \
+    else \
+	orig_HTChunkPutUtf8Char(ch,x); \
+    }
+
+#define PUTS(str) ((*context->actions->put_string)(context->target, str))
+#define PUTC(ch)  ((*context->actions->put_character)(context->target, (char) ch))
+#define PUTUTF8(code) (UCPutUtf8_charstring((HTStream *)context->target, \
+		      (putc_func_t*)(context->actions->put_character), code))
+
+#ifdef USE_PRETTYSRC
+#define PRETTYSRC_PUTC(c) if (psrc_view) PUTC(c)
+#else
+#define PRETTYSRC_PUTC(c)	/* nothing */
+#endif
+
+/*the following macros are used for pretty source view. */
+#define IS_C(attr) (attr.type == HTMLA_CLASS)
+
+HTCJKlang HTCJK = NOCJK;	/* CJK enum value.              */
+BOOL HTPassEightBitRaw = FALSE;	/* Pass 161-172,174-255 raw.    */
+BOOL HTPassEightBitNum = FALSE;	/* Pass ^ numeric entities raw. */
+BOOL HTPassHighCtrlRaw = FALSE;	/* Pass 127-160,173,&#127; raw. */
+BOOL HTPassHighCtrlNum = FALSE;	/* Pass &#128;-&#159; raw.      */
+
+/*	The State (context) of the parser
+ *
+ *	This is passed with each call to make the parser reentrant
+ *
+ */
+
+#define MAX_ATTRIBUTES 36	/* Max number of attributes per element */
+
+/*		Element Stack
+ *		-------------
+ *	This allows us to return down the stack reselecting styles.
+ *	As we return, attribute values will be garbage in general.
+ */
+typedef struct _HTElement HTElement;
+struct _HTElement {
+    HTElement *next;		/* Previously nested element or 0 */
+    HTTag *tag;			/* The tag at this level  */
+};
+
+typedef enum {
+    S_text = 0
+    ,S_attr
+    ,S_attr_gap
+    ,S_comment
+    ,S_cro
+    ,S_doctype
+    ,S_dollar
+    ,S_dollar_dq
+    ,S_dollar_paren
+    ,S_dollar_paren_dq
+    ,S_dollar_paren_sq
+    ,S_dollar_sq
+    ,S_dquoted
+    ,S_end
+    ,S_entity
+    ,S_equals
+    ,S_ero
+    ,S_esc
+    ,S_esc_dq
+    ,S_esc_sq
+    ,S_exclamation
+    ,S_in_kanji
+    ,S_incro
+    ,S_junk_tag
+    ,S_litteral
+    ,S_marked
+    ,S_nonascii_text
+    ,S_nonascii_text_dq
+    ,S_nonascii_text_sq
+    ,S_paren
+    ,S_paren_dq
+    ,S_paren_sq
+    ,S_pcdata
+    ,S_pi
+    ,S_script
+    ,S_sgmlatt
+    ,S_sgmlele
+    ,S_sgmlent
+    ,S_squoted
+    ,S_tag
+    ,S_tag_gap
+    ,S_tagname_slash
+    ,S_value
+} sgml_state;
+
+/*	Internal Context Data Structure
+ *	-------------------------------
+ */
+struct _HTStream {
+
+    const HTStreamClass *isa;	/* inherited from HTStream */
+
+    const SGML_dtd *dtd;
+    const HTStructuredClass *actions;	/* target class  */
+    HTStructured *target;	/* target object */
+
+    HTTag *current_tag;
+    HTTag *slashedtag;
+    const HTTag *unknown_tag;
+    BOOL extended_html;		/* xhtml */
+    BOOL strict_xml;		/* xml */
+    BOOL inSELECT;
+    BOOL no_lynx_specialcodes;
+    int current_attribute_number;
+    HTChunk *string;
+    int leading_spaces;
+    int trailing_spaces;
+    HTElement *element_stack;
+    sgml_state state;
+    unsigned char kanji_buf;
+#ifdef CALLERDATA
+    void *callerData;
+#endif				/* CALLERDATA */
+    BOOL present[MAX_ATTRIBUTES];	/* Flags: attribute is present? */
+    char *value[MAX_ATTRIBUTES];	/* NULL, or strings alloc'd with StrAllocCopy_extra() */
+
+    BOOL lead_exclamation;
+    BOOL first_dash;
+    BOOL end_comment;
+    BOOL doctype_bracket;
+    BOOL first_bracket;
+    BOOL second_bracket;
+    BOOL isHex;
+
+    HTParentAnchor *node_anchor;
+    LYUCcharset *inUCI;		/* pointer to anchor UCInfo */
+    int inUCLYhndl;		/* charset we are fed       */
+    LYUCcharset *outUCI;	/* anchor UCInfo for target */
+    int outUCLYhndl;		/* charset for target       */
+    char utf_count;
+    UCode_t utf_char;
+    char utf_buf[8];
+    char *utf_buf_p;
+    UCTransParams T;
+    int current_tag_charset;	/* charset to pass attributes */
+
+    char *recover;
+    int recover_index;
+    char *include;
+    char *active_include;
+    int include_index;
+    char *url;
+    char *csi;
+    int csi_index;
+#ifdef USE_PRETTYSRC
+    BOOL cur_attr_is_href;
+    BOOL cur_attr_is_name;
+#endif
+};
+
+#ifdef NO_LYNX_TRACE
+#define state_name(n) "state"
+#else
+static const char *state_name(sgml_state n)
+{
+    const char *result = "?";
+    /* *INDENT-OFF* */
+    switch (n) {
+    case S_attr:                result = "S_attr";              break;
+    case S_attr_gap:            result = "S_attr_gap";          break;
+    case S_comment:             result = "S_comment";           break;
+    case S_cro:                 result = "S_cro";               break;
+    case S_doctype:             result = "S_doctype";           break;
+    case S_dollar:              result = "S_dollar";            break;
+    case S_dollar_dq:           result = "S_dollar_dq";         break;
+    case S_dollar_paren:        result = "S_dollar_paren";      break;
+    case S_dollar_paren_dq:     result = "S_dollar_paren_dq";   break;
+    case S_dollar_paren_sq:     result = "S_dollar_paren_sq";   break;
+    case S_dollar_sq:           result = "S_dollar_sq";         break;
+    case S_dquoted:             result = "S_dquoted";           break;
+    case S_end:                 result = "S_end";               break;
+    case S_entity:              result = "S_entity";            break;
+    case S_equals:              result = "S_equals";            break;
+    case S_ero:                 result = "S_ero";               break;
+    case S_esc:                 result = "S_esc";               break;
+    case S_esc_dq:              result = "S_esc_dq";            break;
+    case S_esc_sq:              result = "S_esc_sq";            break;
+    case S_exclamation:         result = "S_exclamation";       break;
+    case S_in_kanji:            result = "S_in_kanji";          break;
+    case S_incro:               result = "S_incro";             break;
+    case S_pi:                  result = "S_pi";                break;
+    case S_junk_tag:            result = "S_junk_tag";          break;
+    case S_litteral:            result = "S_litteral";          break;
+    case S_marked:              result = "S_marked";            break;
+    case S_nonascii_text:       result = "S_nonascii_text";     break;
+    case S_nonascii_text_dq:    result = "S_nonascii_text_dq";  break;
+    case S_nonascii_text_sq:    result = "S_nonascii_text_sq";  break;
+    case S_paren:               result = "S_paren";             break;
+    case S_paren_dq:            result = "S_paren_dq";          break;
+    case S_paren_sq:            result = "S_paren_sq";          break;
+    case S_pcdata:              result = "S_pcdata";            break;
+    case S_script:              result = "S_script";            break;
+    case S_sgmlatt:             result = "S_sgmlatt";           break;
+    case S_sgmlele:             result = "S_sgmlele";           break;
+    case S_sgmlent:             result = "S_sgmlent";           break;
+    case S_squoted:             result = "S_squoted";           break;
+    case S_tag:                 result = "S_tag";               break;
+    case S_tag_gap:             result = "S_tag_gap";           break;
+    case S_tagname_slash:       result = "S_tagname_slash";     break;
+    case S_text:                result = "S_text";              break;
+    case S_value:               result = "S_value";             break;
+    }
+    /* *INDENT-ON* */
+
+    return result;
+}
+#endif
+
+/* storage for Element Stack */
+#define DEPTH 10
+static HTElement pool[DEPTH];
+static int depth = 0;
+
+static HTElement *pool_alloc(void)
+{
+    depth++;
+    if (depth > DEPTH)
+	return (HTElement *) malloc(sizeof(HTElement));
+    return (pool + depth - 1);
+}
+
+static void pool_free(HTElement * e)
+{
+    if (depth > DEPTH)
+	FREE(e);
+    depth--;
+    return;
+}
+
+#ifdef USE_PRETTYSRC
+
+static void HTMLSRC_apply_markup(HTStream *context,
+				 HTlexeme lexeme,
+				 int start)
+{
+    HT_tagspec *ts = *((start ? lexeme_start : lexeme_end) + lexeme);
+
+    while (ts) {
+#ifdef USE_COLOR_STYLE
+	if (ts->start) {
+	    current_tag_style = ts->style;
+	    force_current_tag_style = TRUE;
+	    forced_classname = ts->class_name;
+	    force_classname = TRUE;
+	}
+#endif
+	CTRACE((tfp, ts->start ? "SRCSTART %d\n" : "SRCSTOP %d\n", (int) lexeme));
+	if (ts->start)
+	    (*context->actions->start_element) (context->target,
+						(int) ts->element,
+						ts->present,
+						(STRING2PTR) ts->value,
+						context->current_tag_charset,
+						&context->include);
+	else
+	    (*context->actions->end_element) (context->target,
+					      (int) ts->element,
+					      &context->include);
+	ts = ts->next;
+    }
+}
+
+#define PSRCSTART(x)	HTMLSRC_apply_markup(context,HTL_##x,START)
+#define PSRCSTOP(x)   HTMLSRC_apply_markup(context,HTL_##x,STOP)
+
+#define attr_is_href context->cur_attr_is_href
+#define attr_is_name context->cur_attr_is_name
+#endif
+
+static void set_chartrans_handling(HTStream *context,
+				   HTParentAnchor *anchor,
+				   int chndl)
+{
+    if (chndl < 0) {
+	/*
+	 * Nothing was set for the parser in earlier stages, so the HTML
+	 * parser's UCLYhndl should still be its default.  - FM
+	 */
+	chndl = HTAnchor_getUCLYhndl(anchor, UCT_STAGE_STRUCTURED);
+	if (chndl < 0)
+	    /*
+	     * That wasn't set either, so seek the HText default.  - FM
+	     */
+	    chndl = HTAnchor_getUCLYhndl(anchor, UCT_STAGE_HTEXT);
+	if (chndl < 0)
+	    /*
+	     * That wasn't set either, so assume the current display character
+	     * set.  - FM
+	     */
+	    chndl = current_char_set;
+	/*
+	 * Try to set the HText and HTML stages' chartrans info with the
+	 * default lock level (will not be changed if it was set previously
+	 * with a higher lock level).  - FM
+	 */
+	HTAnchor_setUCInfoStage(anchor, chndl,
+				UCT_STAGE_HTEXT,
+				UCT_SETBY_DEFAULT);
+	HTAnchor_setUCInfoStage(anchor, chndl,
+				UCT_STAGE_STRUCTURED,
+				UCT_SETBY_DEFAULT);
+	/*
+	 * Get the chartrans info for output to the HTML parser.  - FM
+	 */
+	context->outUCI = HTAnchor_getUCInfoStage(anchor,
+						  UCT_STAGE_STRUCTURED);
+	context->outUCLYhndl = HTAnchor_getUCLYhndl(context->node_anchor,
+						    UCT_STAGE_STRUCTURED);
+    }
+    /*
+     * Set the in->out transformation parameters.  - FM
+     */
+    UCSetTransParams(&context->T,
+		     context->inUCLYhndl, context->inUCI,
+		     context->outUCLYhndl, context->outUCI);
+    /*
+     * This is intended for passing the SGML parser's input charset as an
+     * argument in each call to the HTML parser's start tag function, but it
+     * would be better to call a Lynx_HTML_parser function to set an element in
+     * its HTStructured object, itself, if this were needed.  - FM
+     */
+#ifndef EXP_JAPANESEUTF8_SUPPORT
+    if (IS_CJK_TTY) {
+	context->current_tag_charset = -1;
+    } else
+#endif
+    if (context->T.transp) {
+	context->current_tag_charset = context->inUCLYhndl;
+    } else if (context->T.decode_utf8) {
+	context->current_tag_charset = context->inUCLYhndl;
+    } else if (context->T.do_8bitraw ||
+	       context->T.use_raw_char_in) {
+	context->current_tag_charset = context->inUCLYhndl;
+    } else if (context->T.output_utf8 ||
+	       context->T.trans_from_uni) {
+	context->current_tag_charset = UCGetLYhndl_byMIME("utf-8");
+    } else {
+	context->current_tag_charset = LATIN1;
+    }
+}
+
+static void change_chartrans_handling(HTStream *context)
+{
+    int new_LYhndl = HTAnchor_getUCLYhndl(context->node_anchor,
+					  UCT_STAGE_PARSER);
+
+    if (new_LYhndl != context->inUCLYhndl &&
+	new_LYhndl >= 0) {
+	/*
+	 * Something changed.  but ignore if a META wants an unknown charset.
+	 */
+	LYUCcharset *new_UCI = HTAnchor_getUCInfoStage(context->node_anchor,
+						       UCT_STAGE_PARSER);
+
+	if (new_UCI) {
+	    LYUCcharset *next_UCI = HTAnchor_getUCInfoStage(context->node_anchor,
+							    UCT_STAGE_STRUCTURED);
+	    int next_LYhndl = HTAnchor_getUCLYhndl(context->node_anchor, UCT_STAGE_STRUCTURED);
+
+	    context->inUCI = new_UCI;
+	    context->inUCLYhndl = new_LYhndl;
+	    context->outUCI = next_UCI;
+	    context->outUCLYhndl = next_LYhndl;
+	    set_chartrans_handling(context,
+				   context->node_anchor, next_LYhndl);
+	}
+    }
+}
+
+#ifdef USE_COLOR_STYLE
+#include <AttrList.h>
+static int current_is_class = 0;
+#endif
+
+/*	Handle Attribute
+ *	----------------
+ */
+/* PUBLIC const char * SGML_default = "";   ?? */
+
+static void handle_attribute_name(HTStream *context, const char *s)
+{
+    HTTag *tag = context->current_tag;
+    const attr *attributes = tag->attributes;
+    int high, low, i, diff;
+
+#ifdef USE_PRETTYSRC
+    if (psrc_view) {
+	attr_is_href = FALSE;
+	attr_is_name = FALSE;
+    }
+#endif
+    /*
+     * Ignore unknown tag.  - KW
+     */
+    if (tag == context->unknown_tag) {
+#ifdef USE_PRETTYSRC
+	if (psrc_view)
+	    context->current_attribute_number = 1;	/* anything !=INVALID */
+#endif
+	return;
+    }
+
+    /*
+     * Binary search for attribute name.
+     */
+    for (low = 0, high = tag->number_of_attributes;
+	 high > low;
+	 diff < 0 ? (low = i + 1) : (high = i)) {
+	i = (low + (high - low) / 2);
+	diff = my_casecomp(attributes[i].name, s);
+	if (diff == 0) {	/* success: found it */
+	    context->current_attribute_number = i;
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		attr_is_name = (BOOL) (attributes[i].type == HTMLA_ANAME);
+		attr_is_href = (BOOL) (attributes[i].type == HTMLA_HREF);
+	    } else
+#endif
+	    {
+		context->present[i] = YES;
+		Clear_extra(context->value[i]);
+#ifdef USE_COLOR_STYLE
+#   ifdef USE_PRETTYSRC
+		current_is_class = IS_C(attributes[i]);
+#   else
+		current_is_class = (!strcasecomp("class", s));
+#   endif
+		CTRACE((tfp, "SGML: found attribute %s, %d\n", s, current_is_class));
+#endif
+	    }
+	    return;
+	}
+	/* if */
+    }				/* for */
+
+    CTRACE((tfp, "SGML: Unknown attribute %s for tag %s\n",
+	    s, NonNull(context->current_tag->name)));
+    context->current_attribute_number = INVALID;	/* Invalid */
+}
+
+/*	Handle attribute value
+ *	----------------------
+ */
+static void handle_attribute_value(HTStream *context, const char *s)
+{
+    if (context->current_attribute_number != INVALID) {
+	StrAllocCopy_extra(context->value[context->current_attribute_number], s);
+#ifdef USE_COLOR_STYLE
+	if (current_is_class) {
+	    StrNCpy(class_string, s, TEMPSTRINGSIZE);
+	    CTRACE((tfp, "SGML: class is '%s'\n", s));
+	} else {
+	    CTRACE((tfp, "SGML: attribute value is '%s'\n", s));
+	}
+#endif
+    } else {
+	CTRACE((tfp, "SGML: Attribute value %s ***ignored\n", s));
+    }
+    context->current_attribute_number = INVALID;	/* can't have two assignments! */
+}
+
+/*
+ *  Translate some Unicodes to Lynx special codes and output them.
+ *  Special codes - ones those output depend on parsing.
+ *
+ *  Additional issue, like handling bidirectional text if necessary
+ *  may be called from here:  zwnj (8204), zwj (8205), lrm (8206), rlm (8207)
+ *  - currently they are ignored in SGML.c and LYCharUtils.c
+ *  but also in UCdomap.c because they are non printable...
+ *
+ */
+static BOOL put_special_unicodes(HTStream *context, UCode_t code)
+{
+    /* (Tgf_nolyspcl) */
+    if (context->no_lynx_specialcodes) {
+	/*
+	 * We were asked by a "DTD" flag to not generate lynx specials.  - kw
+	 */
+	return NO;
+    }
+
+    if (code == CH_NBSP) {	/* S/390 -- gil -- 0657 */
+	/*
+	 * Use Lynx special character for nbsp.
+	 */
+#ifdef USE_PRETTYSRC
+	if (!psrc_view)
+#endif
+	    PUTC(HT_NON_BREAK_SPACE);
+    } else if (code == CH_SHY) {
+	/*
+	 * Use Lynx special character for shy.
+	 */
+#ifdef USE_PRETTYSRC
+	if (!psrc_view)
+#endif
+	    PUTC(LY_SOFT_HYPHEN);
+    } else if (code == 8194 || code == 8201) {
+	/*
+	 * Use Lynx special character for ensp or thinsp.
+	 *
+	 * Originally, Lynx use space '32' as word delimiter and omits this
+	 * space at end of line if word is wrapped to the next line.  There are
+	 * several other spaces in the Unicode repertoire and we should teach
+	 * Lynx to understand them, not only as regular characters but in the
+	 * context of line wrapping.  Unfortunately, if we use HT_EN_SPACE we
+	 * override the chartrans tables for those spaces with a single '32'
+	 * for all (but do line wrapping more fancy).
+	 *
+	 * We may treat emsp as one or two ensp (below).
+	 */
+#ifdef USE_PRETTYSRC
+	if (!psrc_view)
+#endif
+	    PUTC(HT_EN_SPACE);
+    } else if (code == 8195) {
+	/*
+	 * Use Lynx special character for emsp.
+	 */
+#ifdef USE_PRETTYSRC
+	if (!psrc_view) {
+#endif
+	    /* PUTC(HT_EN_SPACE);  let's stay with a single space :) */
+	    PUTC(HT_EN_SPACE);
+#ifdef USE_PRETTYSRC
+	}
+#endif
+    } else {
+	/*
+	 * Return NO if nothing done.
+	 */
+	return NO;
+    }
+    /*
+     * We have handled it.
+     */
+    return YES;
+}
+
+#ifdef USE_PRETTYSRC
+static void put_pretty_entity(HTStream *context, int term)
+{
+    PSRCSTART(entity);
+    PUTC('&');
+    PUTS(entity_string);
+    if (term)
+	PUTC((char) term);
+    PSRCSTOP(entity);
+}
+
+static void put_pretty_number(HTStream *context)
+{
+    PSRCSTART(entity);
+    PUTS((context->isHex ? "&#x" : "&#"));
+    PUTS(entity_string);
+    PUTC(';');
+    PSRCSTOP(entity);
+}
+#endif /* USE_PRETTYSRC */
+
+/*	Handle entity
+ *	-------------
+ *
+ * On entry,
+ *	s	contains the entity name zero terminated
+ * Bugs:
+ *	If the entity name is unknown, the terminator is treated as
+ *	a printable non-special character in all cases, even if it is '<'
+ * Bug-fix:
+ *	Modified SGML_character() so we only come here with terminator
+ *	as '\0' and check a FoundEntity flag. -- Foteos Macrides
+ *
+ * Modified more (for use with Lynx character translation code):
+ */
+static char replace_buf[64];	/* buffer for replacement strings */
+static BOOL FoundEntity = FALSE;
+
+static void handle_entity(HTStream *context, int term)
+{
+    UCode_t code;
+    long uck = -1;
+    const char *s = context->string->data;
+
+    /*
+     * Handle all entities normally.  - FM
+     */
+    FoundEntity = FALSE;
+    if ((code = HTMLGetEntityUCValue(s)) != 0) {
+	/*
+	 * We got a Unicode value for the entity name.  Check for special
+	 * Unicodes.  - FM
+	 */
+	if (put_special_unicodes(context, code)) {
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		put_pretty_entity(context, term);
+	    }
+#endif
+	    FoundEntity = TRUE;
+	    return;
+	}
+	/*
+	 * Seek a translation from the chartrans tables.
+	 */
+	if ((uck = UCTransUniChar(code, context->outUCLYhndl)) >= 32 &&
+/* =============== work in ASCII below here ===============  S/390 -- gil -- 0672 */
+	    uck < 256 &&
+	    (uck < 127 ||
+	     uck >= LYlowest_eightbit[context->outUCLYhndl])) {
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		put_pretty_entity(context, term);
+	    } else
+#endif
+		PUTC(FROMASCII((char) uck));
+	    FoundEntity = TRUE;
+	    return;
+	} else if ((uck == -4 ||
+		    (context->T.repl_translated_C0 &&
+		     uck > 0 && uck < 32)) &&
+	    /*
+	     * Not found; look for replacement string.
+	     */
+		   (uck = UCTransUniCharStr(replace_buf, 60, code,
+					    context->outUCLYhndl, 0) >= 0)) {
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		put_pretty_entity(context, term);
+	    } else
+#endif
+		PUTS(replace_buf);
+	    FoundEntity = TRUE;
+	    return;
+	}
+	/*
+	 * If we're displaying UTF-8, try that now.  - FM
+	 */
+#ifndef USE_PRETTYSRC
+	if (context->T.output_utf8 && PUTUTF8(code)) {
+	    FoundEntity = TRUE;
+	    return;
+	}
+#else
+	if (context->T.output_utf8 && (psrc_view
+				       ? (UCPutUtf8_charstring((HTStream *) context->target,
+							       (putc_func_t *) (fake_put_character),
+							       code))
+				       : PUTUTF8(code))) {
+
+	    if (psrc_view) {
+		put_pretty_entity(context, term);
+	    }
+
+	    FoundEntity = TRUE;
+	    return;
+	}
+#endif
+	/*
+	 * If it's safe ASCII, use it.  - FM
+	 */
+	if (code >= 32 && code < 127) {
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		put_pretty_entity(context, term);
+	    } else
+#endif
+
+		PUTC(FROMASCII((char) code));
+	    FoundEntity = TRUE;
+	    return;
+	}
+/* =============== work in ASCII above here ===============  S/390 -- gil -- 0682 */
+	/*
+	 * Ignore zwnj (8204) and zwj (8205), if we get to here.  Note that
+	 * zwnj may have been handled as <WBR> by the calling function.  - FM
+	 */
+	if (!strcmp(s, "zwnj") ||
+	    !strcmp(s, "zwj")) {
+	    CTRACE((tfp, "handle_entity: Ignoring '%s'.\n", s));
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		put_pretty_entity(context, term);
+	    }
+#endif
+	    FoundEntity = TRUE;
+	    return;
+	}
+	/*
+	 * Ignore lrm (8206), and rln (8207), if we get to here.  - FM
+	 */
+	if (!strcmp(s, "lrm") ||
+	    !strcmp(s, "rlm")) {
+	    CTRACE((tfp, "handle_entity: Ignoring '%s'.\n", s));
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		put_pretty_entity(context, term);
+	    }
+#endif
+	    FoundEntity = TRUE;
+	    return;
+	}
+    }
+
+    /*
+     * If entity string not found, display as text.
+     */
+#ifdef USE_PRETTYSRC
+    if (psrc_view)
+	PSRCSTART(badseq);
+#endif
+    CTRACE((tfp, "SGML: Unknown entity '%s' %" PRI_UCode_t " %ld\n", s, code, uck));	/* S/390 -- gil -- 0695 */
+    PUTC('&');
+    PUTS(s);
+    if (term != '\0')
+	PUTC(term);
+#ifdef USE_PRETTYSRC
+    if (psrc_view)
+	PSRCSTOP(badseq);
+#endif
+}
+
+/*	Handle comment
+ *	--------------
+ */
+static void handle_comment(HTStream *context)
+{
+    const char *s = context->string->data;
+
+    CTRACE((tfp, "SGML Comment:\n<%s>\n", s));
+
+    if (context->csi == NULL &&
+	StrNCmp(s, "!--#", 4) == 0 &&
+	LYCheckForCSI(context->node_anchor, &context->url) == TRUE) {
+	LYDoCSI(context->url, s, &context->csi);
+    } else {
+	LYCommentHacks(context->node_anchor, context->string->data);
+    }
+
+    return;
+}
+
+/*	Handle identifier
+ *	-----------------
+ */
+static void handle_identifier(HTStream *context)
+{
+    const char *s = context->string->data;
+
+    CTRACE((tfp, "SGML Identifier:\n<%s>\n", s));
+
+    return;
+}
+
+/*	Handle doctype
+ *	--------------
+ */
+static void handle_doctype(HTStream *context)
+{
+    const char *s = context->string->data;
+
+    CTRACE((tfp, "SGML Doctype:\n<%s>\n", s));
+    if (strstr(s, "DTD XHTML ") != 0) {
+	CTRACE((tfp, "...processing extended HTML\n"));
+	context->extended_html = TRUE;
+    }
+
+    return;
+}
+
+/*	Handle marked
+ *	-------------
+ */
+static void handle_marked(HTStream *context)
+{
+    const char *s = context->string->data;
+
+    CTRACE((tfp, "SGML Marked Section:\n<%s>\n", s));
+
+    if (!StrNCmp(context->string->data, "![INCLUDE[", 10)) {
+	context->string->data[context->string->size - 3] = '\0';
+	StrAllocCat(context->include, context->string->data + 10);
+	/* @@@ This needs to take charset into account! @@@
+	   the wrong assumptions will be made about the data's
+	   charset once it is in include - kw */
+
+    } else if (!StrNCmp(context->string->data, "![CDATA[", 8)) {
+	(*context->actions->put_block) (context->target,
+					context->string->data + 8,
+					context->string->size - 11);
+
+    }
+    return;
+}
+
+/*	Handle processing instruction
+ *	-----------------------------
+ */
+static void handle_processing_instruction(HTStream *context)
+{
+    const char *s = context->string->data;
+
+    CTRACE((tfp, "SGML Processing instruction:\n<%s>\n", s));
+
+    if (!StrNCmp(s, "?xml ", 5)) {
+	int flag = context->T.decode_utf8;
+
+	context->strict_xml = TRUE;
+	/*
+	 * Switch to UTF-8 if the encoding is explicitly "utf-8".
+	 */
+	if (!flag) {
+	    char *t = strstr(s, "encoding=");
+
+	    if (t != 0) {
+		t += 9;
+		if (*t == '"')
+		    ++t;
+		flag = !StrNCmp(t, "utf-8", 5);
+	    }
+	    if (flag) {
+		CTRACE((tfp, "...Use UTF-8 for XML\n"));
+		context->T.decode_utf8 = TRUE;
+	    }
+	}
+    }
+
+    return;
+}
+
+/*	Handle sgmlent
+ *	--------------
+ */
+static void handle_sgmlent(HTStream *context)
+{
+    const char *s = context->string->data;
+
+    CTRACE((tfp, "SGML Entity Declaration:\n<%s>\n", s));
+
+    return;
+}
+
+/*	Handle sgmlent
+ *	--------------
+ */
+static void handle_sgmlele(HTStream *context)
+{
+    const char *s = context->string->data;
+
+    CTRACE((tfp, "SGML Element Declaration:\n<%s>\n", s));
+
+    return;
+}
+
+/*	Handle sgmlatt
+ *	--------------
+ */
+static void handle_sgmlatt(HTStream *context)
+{
+    const char *s = context->string->data;
+
+    CTRACE((tfp, "SGML Attribute Declaration:\n<%s>\n", s));
+
+    return;
+}
+
+/*
+ * Convenience macros - tags (elements) are identified sometimes by an int or
+ * enum value ('TAGNUM'), sometimes by a pointer to HTTag ('TAGP').  - kw
+ */
+#define TAGNUM_OF_TAGP(t) (HTMLElement) (t - context->dtd->tags)
+#define TAGP_OF_TAGNUM(e) (context->dtd->tags + e)
+
+/*
+ * The following implement special knowledge about OBJECT.  As long as
+ * HTML_OBJECT is the only tag for which an alternative variant exist, they can
+ * be simple macros.  - kw
+ */
+/* does 'TAGNUM' e have an alternative (variant) parsing mode? */
+#define HAS_ALT_TAGNUM(e) (e == HTML_OBJECT)
+
+/* return 'TAGNUM' of the alternative mode for 'TAGNUM' e, if any. */
+#define ALT_TAGNUM(e) ((e == HTML_OBJECT) ? HTML_ALT_OBJECT : e)
+
+/* return 'TAGNUM' of the normal mode for 'TAGNUM' e which may be alt. */
+#define NORMAL_TAGNUM(e) (((int)(e) >= HTML_ELEMENTS) ? HTML_OBJECT : (HTMLElement)e)
+
+/* More convenience stuff. - kw */
+#define ALT_TAGP_OF_TAGNUM(e) TAGP_OF_TAGNUM(ALT_TAGNUM(e))
+#define NORMAL_TAGP_OF_TAGNUM(e) TAGP_OF_TAGNUM(NORMAL_TAGNUM(e))
+
+#define ALT_TAGP(t) ALT_TAGP_OF_TAGNUM(TAGNUM_OF_TAGP(t))
+#define NORMAL_TAGP(t) NORMAL_TAGP_OF_TAGNUM(TAGNUM_OF_TAGP(t))
+
+static BOOL element_valid_within(HTTag * new_tag, HTTag * stacked_tag, int direct)
+{
+    BOOL result = YES;
+    TagClass usecontains, usecontained;
+
+    if (stacked_tag && new_tag) {
+	usecontains = (direct ? stacked_tag->contains : stacked_tag->icontains);
+	usecontained = (direct ? new_tag->contained : new_tag->icontained);
+	if (new_tag == stacked_tag) {
+	    result = (BOOL) ((Tgc_same & usecontains) &&
+			     (Tgc_same & usecontained));
+	} else {
+	    result = (BOOL) ((new_tag->tagclass & usecontains) &&
+			     (stacked_tag->tagclass & usecontained));
+	}
+    }
+    return result;
+}
+
+typedef enum {
+    close_NO = 0,
+    close_error = 1,
+    close_valid = 2
+} canclose_t;
+
+static canclose_t can_close(HTTag * new_tag, HTTag * stacked_tag)
+{
+    canclose_t result;
+
+    if (!stacked_tag) {
+	result = close_NO;
+    } else if (stacked_tag->flags & Tgf_endO) {
+	result = close_valid;
+    } else if (new_tag == stacked_tag) {
+	result = ((Tgc_same & new_tag->canclose)
+		  ? close_error
+		  : close_NO);
+    } else {
+	result = ((stacked_tag->tagclass & new_tag->canclose)
+		  ? close_error
+		  : close_NO);
+    }
+    return result;
+}
+
+static void do_close_stacked(HTStream *context)
+{
+    HTElement *stacked = context->element_stack;
+    HTMLElement e;
+
+    if (!stacked)
+	return;			/* stack was empty */
+    if (context->inSELECT && !strcasecomp(stacked->tag->name, "SELECT")) {
+	context->inSELECT = FALSE;
+    }
+    e = NORMAL_TAGNUM(TAGNUM_OF_TAGP(stacked->tag));
+#ifdef USE_PRETTYSRC
+    if (!psrc_view)		/* Don't actually pass call on if viewing psrc - kw */
+#endif
+	(*context->actions->end_element) (context->target,
+					  (int) e,
+					  &context->include);
+    context->element_stack = stacked->next;
+    pool_free(stacked);
+    context->no_lynx_specialcodes =
+	(BOOL) (context->element_stack
+		? (context->element_stack->tag->flags & Tgf_nolyspcl)
+		: NO);
+}
+
+static int is_on_stack(HTStream *context, HTTag * old_tag)
+{
+    HTElement *stacked = context->element_stack;
+    int i = 1;
+
+    for (; stacked; stacked = stacked->next, i++) {
+	if (stacked->tag == old_tag ||
+	    stacked->tag == ALT_TAGP(old_tag))
+	    return i;
+    }
+    return 0;
+}
+
+/*	End element
+ *	-----------
+ */
+static void end_element(HTStream *context, HTTag * old_tag)
+{
+    BOOL extra_action_taken = NO;
+    canclose_t canclose_check = close_valid;
+    int stackpos = is_on_stack(context, old_tag);
+
+    if (!Old_DTD) {
+	while (canclose_check != close_NO &&
+	       context->element_stack &&
+	       (stackpos > 1 || (!extra_action_taken && stackpos == 0))) {
+	    if (stackpos == 0 && (old_tag->flags & Tgf_startO) &&
+		element_valid_within(old_tag, context->element_stack->tag, YES)) {
+		CTRACE((tfp, "SGML: </%s> ignored\n", old_tag->name));
+		return;
+	    }
+	    canclose_check = can_close(old_tag, context->element_stack->tag);
+	    if (canclose_check != close_NO) {
+		CTRACE((tfp, "SGML: End </%s> \t<- %s end </%s>\n",
+			context->element_stack->tag->name,
+			((canclose_check == close_valid)
+			 ? "supplied,"
+			 : "***forced by"),
+			old_tag->name));
+		do_close_stacked(context);
+		extra_action_taken = YES;
+		stackpos = is_on_stack(context, old_tag);
+	    }
+	}
+
+	if (stackpos == 0 && old_tag->contents != SGML_EMPTY) {
+	    CTRACE((tfp, "SGML: Still open %s, ***no open %s for </%s>\n",
+		    context->element_stack ?
+		    context->element_stack->tag->name : "none",
+		    old_tag->name,
+		    old_tag->name));
+	    return;
+	}
+	if (stackpos > 1) {
+	    CTRACE((tfp,
+		    "SGML: Nesting <%s>...<%s> \t<- ***invalid end </%s>\n",
+		    old_tag->name,
+		    context->element_stack ?
+		    context->element_stack->tag->name : "none",
+		    old_tag->name));
+	    return;
+	}
+    }
+    /* Now let the non-extended code deal with the rest. - kw */
+
+    /*
+     * If we are in a SELECT block, ignore anything but a SELECT end tag.  - FM
+     */
+    if (context->inSELECT) {
+	if (!strcasecomp(old_tag->name, "SELECT")) {
+	    /*
+	     * Turn off the inSELECT flag and fall through.  - FM
+	     */
+	    context->inSELECT = FALSE;
+	} else {
+	    /*
+	     * Ignore the end tag.  - FM
+	     */
+	    CTRACE((tfp, "SGML: ***Ignoring end tag </%s> in SELECT block.\n",
+		    old_tag->name));
+	    return;
+	}
+    }
+    /*
+     * Handle the end tag.  - FM
+     */
+    CTRACE((tfp, "SGML: End </%s>\n", old_tag->name));
+    if (old_tag->contents == SGML_EMPTY) {
+	CTRACE((tfp, "SGML: ***Illegal end tag </%s> found.\n",
+		old_tag->name));
+	return;
+    }
+#ifdef WIND_DOWN_STACK
+    while (context->element_stack)	/* Loop is error path only */
+#else
+    if (context->element_stack)	/* Substitute and remove one stack element */
+#endif /* WIND_DOWN_STACK */
+    {
+	int status = HT_OK;
+	HTMLElement e;
+	HTElement *N = context->element_stack;
+	HTTag *t = (N->tag != old_tag) ? NORMAL_TAGP(N->tag) : N->tag;
+
+	if (old_tag != t) {	/* Mismatch: syntax error */
+	    if (context->element_stack->next) {		/* This is not the last level */
+		CTRACE((tfp,
+			"SGML: Found </%s> when expecting </%s>. </%s> ***assumed.\n",
+			old_tag->name, t->name, t->name));
+	    } else {		/* last level */
+		CTRACE((tfp,
+			"SGML: Found </%s> when expecting </%s>. </%s> ***Ignored.\n",
+			old_tag->name, t->name, old_tag->name));
+		return;		/* Ignore */
+	    }
+	}
+
+	e = NORMAL_TAGNUM(TAGNUM_OF_TAGP(t));
+	CTRACE2(TRACE_SGML, (tfp, "tagnum(%p) = %d\n", (void *) t, (int) e));
+#ifdef USE_PRETTYSRC
+	if (!psrc_view)		/* Don't actually pass call on if viewing psrc - kw */
+#endif
+	    status = (*context->actions->end_element) (context->target,
+						       (int) e,
+						       &context->include);
+	if (status == HT_PARSER_REOPEN_ELT) {
+	    CTRACE((tfp, "SGML: Restart <%s>\n", t->name));
+	    (*context->actions->start_element) (context->target,
+						(int) e,
+						NULL,
+						NULL,
+						context->current_tag_charset,
+						&context->include);
+	} else if (status == HT_PARSER_OTHER_CONTENT) {
+	    CTRACE((tfp, "SGML: Continue with other content model for <%s>\n", t->name));
+	    context->element_stack->tag = ALT_TAGP_OF_TAGNUM(e);
+	} else {
+	    context->element_stack = N->next;	/* Remove from stack */
+	    pool_free(N);
+	}
+	context->no_lynx_specialcodes =
+	    (BOOL) (context->element_stack
+		    ? (context->element_stack->tag->flags & Tgf_nolyspcl)
+		    : NO);
+#ifdef WIND_DOWN_STACK
+	if (old_tag == t)
+	    return;		/* Correct sequence */
+#else
+	return;
+#endif /* WIND_DOWN_STACK */
+
+	/* Syntax error path only */
+
+    }
+    CTRACE((tfp, "SGML: Extra end tag </%s> found and ignored.\n",
+	    old_tag->name));
+}
+
+/*	Start a element
+*/
+static void start_element(HTStream *context)
+{
+    int status;
+    HTTag *new_tag = context->current_tag;
+    HTMLElement e = TAGNUM_OF_TAGP(new_tag);
+    BOOL ok = FALSE;
+
+    BOOL valid = YES;
+    BOOL direct_container = YES;
+    BOOL extra_action_taken = NO;
+    canclose_t canclose_check = close_valid;
+
+    if (!Old_DTD) {
+	while (context->element_stack &&
+	       (canclose_check == close_valid ||
+		(canclose_check == close_error &&
+		 new_tag == context->element_stack->tag)) &&
+	       !(valid = element_valid_within(new_tag,
+					      context->element_stack->tag,
+					      direct_container))) {
+	    canclose_check = can_close(new_tag, context->element_stack->tag);
+	    if (canclose_check != close_NO) {
+		CTRACE((tfp, "SGML: End </%s> \t<- %s start <%s>\n",
+			context->element_stack->tag->name,
+			((canclose_check == close_valid)
+			 ? "supplied,"
+			 : "***forced by"),
+			new_tag->name));
+		do_close_stacked(context);
+		extra_action_taken = YES;
+		if (canclose_check == close_error)
+		    direct_container = NO;
+	    } else {
+		CTRACE((tfp,
+			"SGML: Still open %s \t<- ***invalid start <%s>\n",
+			context->element_stack->tag->name,
+			new_tag->name));
+	    }
+	}
+	if (context->element_stack && !valid &&
+	    (context->element_stack->tag->flags & Tgf_strict) &&
+	    !(valid = element_valid_within(new_tag,
+					   context->element_stack->tag,
+					   direct_container))) {
+	    CTRACE((tfp, "SGML: Still open %s \t<- ***ignoring start <%s>\n",
+		    context->element_stack->tag->name,
+		    new_tag->name));
+	    return;
+	}
+
+	if (context->element_stack &&
+	    !extra_action_taken &&
+	    (canclose_check == close_NO) &&
+	    !valid && (new_tag->flags & Tgf_mafse)) {
+	    BOOL has_attributes = NO;
+	    int i = 0;
+
+	    for (; i < new_tag->number_of_attributes && !has_attributes; i++)
+		has_attributes = context->present[i];
+	    if (!has_attributes) {
+		CTRACE((tfp,
+			"SGML: Still open %s, ***converting invalid <%s> to </%s>\n",
+			context->element_stack->tag->name,
+			new_tag->name,
+			new_tag->name));
+		end_element(context, new_tag);
+		return;
+	    }
+	}
+
+	if (context->element_stack &&
+	    (canclose_check == close_error) &&
+	    !element_valid_within(new_tag,
+				  context->element_stack->tag,
+				  direct_container)) {
+	    CTRACE((tfp, "SGML: Still open %s \t<- ***invalid start <%s>\n",
+		    context->element_stack->tag->name,
+		    new_tag->name));
+	}
+    }
+    /* Fall through to the non-extended code - kw */
+
+    /*
+     * If we are not in a SELECT block, check if this is a SELECT start tag. 
+     * Otherwise (i.e., we are in a SELECT block) accept only OPTION as valid,
+     * terminate the SELECT block if it is any other form-related element, and
+     * otherwise ignore it.  - FM
+     */
+    if (!context->inSELECT) {
+	/*
+	 * We are not in a SELECT block, so check if this starts one.  - FM
+	 * (frequent case!)
+	 */
+	/* my_casecomp() - optimized by the first character */
+	if (!my_casecomp(new_tag->name, "SELECT")) {
+	    /*
+	     * Set the inSELECT flag and fall through.  - FM
+	     */
+	    context->inSELECT = TRUE;
+	}
+    } else {
+	/*
+	 * We are in a SELECT block.  - FM
+	 */
+	if (strcasecomp(new_tag->name, "OPTION")) {
+	    /*
+	     * Ugh, it is not an OPTION.  - FM
+	     */
+	    switch (e) {
+	    case HTML_INPUT:
+	    case HTML_TEXTAREA:
+	    case HTML_SELECT:
+	    case HTML_BUTTON:
+	    case HTML_FIELDSET:
+	    case HTML_LABEL:
+	    case HTML_LEGEND:
+	    case HTML_FORM:
+		ok = TRUE;
+		break;
+	    default:
+		break;
+	    }
+	    if (ok) {
+		/*
+		 * It is another form-related start tag, so terminate the
+		 * current SELECT block and fall through.  - FM
+		 */
+		CTRACE((tfp,
+			"SGML: ***Faking SELECT end tag before <%s> start tag.\n",
+			new_tag->name));
+		end_element(context, SGMLFindTag(context->dtd, "SELECT"));
+	    } else {
+		/*
+		 * Ignore the start tag.  - FM
+		 */
+		CTRACE((tfp,
+			"SGML: ***Ignoring start tag <%s> in SELECT block.\n",
+			new_tag->name));
+		return;
+	    }
+	}
+    }
+    /*
+     * Handle the start tag.  - FM
+     */
+    CTRACE((tfp, "SGML: Start <%s>\n", new_tag->name));
+    status = (*context->actions->start_element) (context->target,
+						 (int) TAGNUM_OF_TAGP(new_tag),
+						 context->present,
+						 (STRING2PTR) context->value,	/* coerce type for think c */
+						 context->current_tag_charset,
+						 &context->include);
+    if (status == HT_PARSER_OTHER_CONTENT)
+	new_tag = ALT_TAGP(new_tag);	/* this is only returned for OBJECT */
+    if (new_tag->contents != SGML_EMPTY) {	/* i.e., tag not empty */
+	HTElement *N = pool_alloc();
+
+	if (N == NULL)
+	    outofmem(__FILE__, "start_element");
+
+	assert(N != NULL);
+
+	N->next = context->element_stack;
+	N->tag = new_tag;
+	context->element_stack = N;
+	context->no_lynx_specialcodes = (BOOLEAN) (new_tag->flags & Tgf_nolyspcl);
+
+    } else if (e == HTML_META) {
+	/*
+	 * Check for result of META tag.  - KW & FM
+	 */
+	change_chartrans_handling(context);
+    }
+}
+
+/*		Find Tag in DTD tag list
+ *		------------------------
+ *
+ * On entry,
+ *	dtd	points to dtd structure including valid tag list
+ *	string	points to name of tag in question
+ *
+ * On exit,
+ *	returns:
+ *		NULL		tag not found
+ *		else		address of tag structure in dtd
+ */
+HTTag *SGMLFindTag(const SGML_dtd * dtd,
+		   const char *s)
+{
+    int high, low, i, diff;
+    static HTTag *last[64] =
+    {NULL};			/*optimize using the previous results */
+    HTTag **res = last + (UCH(*s) % 64);	/*pointer arithmetic */
+
+    if (*res) {
+	if ((*res)->name == NULL)
+	    return NULL;
+	if (!strcasecomp((*res)->name, s))
+	    return *res;
+    }
+
+    for (low = 0, high = dtd->number_of_tags;
+	 high > low;
+	 diff < 0 ? (low = i + 1) : (high = i)) {	/* Binary search */
+	i = (low + (high - low) / 2);
+	/* my_casecomp() - optimized by the first character, NOT_ASCII ok */
+	diff = my_casecomp(dtd->tags[i].name, s);	/* Case insensitive */
+	if (diff == 0) {	/* success: found it */
+	    *res = &dtd->tags[i];
+	    return *res;
+	}
+    }
+    if (IsNmStart(*s)) {
+	/*
+	 * Unrecognized, but may be valid.  - KW
+	 */
+	return &HTTag_unrecognized;
+    }
+    return NULL;
+}
+
+/*________________________________________________________________________
+ *			Public Methods
+ */
+
+/*	Could check that we are back to bottom of stack! @@  */
+/*	Do check! - FM					     */
+/*							     */
+static void SGML_free(HTStream *context)
+{
+    int i;
+    HTElement *cur;
+    HTTag *t;
+
+    /*
+     * Free the buffers.  - FM
+     */
+    FREE(context->recover);
+    FREE(context->url);
+    FREE(context->csi);
+    FREE(context->include);
+    FREE(context->active_include);
+
+    /*
+     * Wind down stack if any elements are open.  - FM
+     */
+    while (context->element_stack) {
+	cur = context->element_stack;
+	t = cur->tag;
+	context->element_stack = cur->next;	/* Remove from stack */
+	pool_free(cur);
+#ifdef USE_PRETTYSRC
+	if (!psrc_view)		/* Don't actually call on target if viewing psrc - kw */
+#endif
+	    (*context->actions->end_element)
+		(context->target,
+		 (int) NORMAL_TAGNUM(TAGNUM_OF_TAGP(t)),
+		 &context->include);
+	FREE(context->include);
+    }
+
+    /*
+     * Finish off the target.  - FM
+     */
+    (*context->actions->_free) (context->target);
+
+    /*
+     * Free the strings and context structure.  - FM
+     */
+    HTChunkFree(context->string);
+    for (i = 0; i < MAX_ATTRIBUTES; i++)
+	FREE_extra(context->value[i]);
+    FREE(context);
+
+#ifdef USE_PRETTYSRC
+    sgml_in_psrc_was_initialized = FALSE;
+#endif
+}
+
+static void SGML_abort(HTStream *context, HTError e)
+{
+    int i;
+    HTElement *cur;
+
+    /*
+     * Abort the target.  - FM
+     */
+    (*context->actions->_abort) (context->target, e);
+
+    /*
+     * Free the buffers.  - FM
+     */
+    FREE(context->recover);
+    FREE(context->include);
+    FREE(context->active_include);
+    FREE(context->url);
+    FREE(context->csi);
+
+    /*
+     * Free stack memory if any elements were left open.  - KW
+     */
+    while (context->element_stack) {
+	cur = context->element_stack;
+	context->element_stack = cur->next;	/* Remove from stack */
+	pool_free(cur);
+    }
+
+    /*
+     * Free the strings and context structure.  - FM
+     */
+    HTChunkFree(context->string);
+    for (i = 0; i < MAX_ATTRIBUTES; i++)
+	FREE_extra(context->value[i]);
+    FREE(context);
+
+#ifdef USE_PRETTYSRC
+    sgml_in_psrc_was_initialized = FALSE;
+#endif
+}
+
+/*	Read and write user callback handle
+ *	-----------------------------------
+ *
+ *   The callbacks from the SGML parser have an SGML context parameter.
+ *   These calls allow the caller to associate his own context with a
+ *   particular SGML context.
+ */
+
+#ifdef CALLERDATA
+void *SGML_callerData(HTStream *context)
+{
+    return context->callerData;
+}
+
+void SGML_setCallerData(HTStream *context, void *data)
+{
+    context->callerData = data;
+}
+#endif /* CALLERDATA */
+
+#ifdef USE_PRETTYSRC
+static void transform_tag(HTStream *context, HTChunk *string)
+{
+    if (!context->strict_xml) {
+	if (tagname_transform != 1) {
+	    if (tagname_transform == 0)
+		LYLowerCase(string->data);
+	    else
+		LYUpperCase(string->data);
+	}
+    }
+}
+#endif /* USE_PRETTYSRC */
+
+static BOOL ignore_when_empty(HTTag * tag)
+{
+    BOOL result = FALSE;
+
+    if (!LYPreparsedSource
+	&& LYxhtml_parsing
+	&& tag->name != 0
+	&& !(tag->flags & Tgf_mafse)
+	&& tag->contents != SGML_EMPTY
+	&& tag->tagclass != Tgc_Plike
+	&& (tag->tagclass == Tgc_SELECTlike
+	    || (tag->contains && tag->icontains))) {
+	result = TRUE;
+    }
+    CTRACE((tfp, "SGML Do%s ignore_when_empty:%s\n",
+	    result ? "" : " not",
+	    NonNull(tag->name)));
+    return result;
+}
+
+static void discard_empty(HTStream *context)
+{
+    static HTTag empty_tag;
+
+    CTRACE((tfp, "SGML discarding empty %s\n",
+	    NonNull(context->current_tag->name)));
+    CTRACE_FLUSH(tfp);
+
+    memset(&empty_tag, 0, sizeof(empty_tag));
+    context->current_tag = &empty_tag;
+    context->string->size = 0;
+
+    /* do not call end_element() if start_element() was not called */
+}
+
+#ifdef USE_PRETTYSRC
+static BOOL end_if_prettysrc(HTStream *context, HTChunk *string, int end_ch)
+{
+    BOOL result = psrc_view;
+
+    if (psrc_view) {
+	if (attr_is_name) {
+	    HTStartAnchor(context->target, string->data, NULL);
+	    (*context->actions->end_element) (context->target,
+					      HTML_A,
+					      &context->include);
+	} else if (attr_is_href) {
+	    PSRCSTART(href);
+	    HTStartAnchor(context->target, NULL, string->data);
+	}
+	PUTS_TR(string->data);
+	if (attr_is_href) {
+	    (*context->actions->end_element) (context->target,
+					      HTML_A,
+					      &context->include);
+	    PSRCSTOP(href);
+	}
+	if (end_ch)
+	    PUTC(end_ch);
+	PSRCSTOP(attrval);
+    }
+    return result;
+}
+#endif
+
+static void SGML_character(HTStream *context, int c_in)
+{
+    const SGML_dtd *dtd = context->dtd;
+    HTChunk *string = context->string;
+    const char *EntityName;
+    HTTag *testtag = NULL;
+    BOOLEAN chk;		/* Helps (?) walk through all the else ifs... */
+    UCode_t clong, uck = 0;	/* Enough bits for UCS4 ... */
+    int testlast;
+
+    unsigned char c;
+    unsigned char saved_char_in = '\0';
+
+    ++sgml_offset;
+
+    /*
+     * Now some fun with the preprocessor.  Use copies for c and unsign_c ==
+     * clong, so that we can revert back to the unchanged c_in.  - KW
+     */
+#define unsign_c clong
+
+    c = UCH(c_in);
+    clong = UCH(c);		/* a.k.a. unsign_c */
+
+    if (context->T.decode_utf8) {
+	/*
+	 * Combine UTF-8 into Unicode.  Incomplete characters silently ignored. 
+	 * From Linux kernel's console.c.  - KW
+	 */
+	if (TOASCII(UCH(c)) > 127) {	/* S/390 -- gil -- 0710 */
+	    /*
+	     * We have an octet from a multibyte character.  - FM
+	     */
+	    if (context->utf_count > 0 && (TOASCII(c) & 0xc0) == 0x80) {
+		context->utf_char = (context->utf_char << 6) | (TOASCII(c) & 0x3f);
+		context->utf_count--;
+		*(context->utf_buf_p) = (char) c;
+		(context->utf_buf_p)++;
+		if (context->utf_count == 0) {
+		    /*
+		     * We have all of the bytes, so terminate the buffer and
+		     * set 'clong' to the UCode_t value.  - FM
+		     */
+		    *(context->utf_buf_p) = '\0';
+		    clong = context->utf_char;
+		    if (clong < 256) {
+			c = UCH(clong & 0xff);
+		    }
+		    /* lynx does not use left-to-right */
+		    if (clong == 0x200e)
+			return;
+		    goto top1;
+		} else {
+		    /*
+		     * Wait for more.  - KW
+		     */
+		    return;
+		}
+	    } else {
+		/*
+		 * Start handling a new multibyte character.  - FM
+		 */
+		context->utf_buf_p = context->utf_buf;
+		*(context->utf_buf_p) = (char) c;
+		(context->utf_buf_p)++;
+		if ((c & 0xe0) == 0xc0) {
+		    context->utf_count = 1;
+		    context->utf_char = (c & 0x1f);
+		} else if ((c & 0xf0) == 0xe0) {
+		    context->utf_count = 2;
+		    context->utf_char = (c & 0x0f);
+		} else if ((c & 0xf8) == 0xf0) {
+		    context->utf_count = 3;
+		    context->utf_char = (c & 0x07);
+		} else if ((c & 0xfc) == 0xf8) {
+		    context->utf_count = 4;
+		    context->utf_char = (c & 0x03);
+		} else if ((c & 0xfe) == 0xfc) {
+		    context->utf_count = 5;
+		    context->utf_char = (c & 0x01);
+		} else {
+		    /*
+		     * Garbage.  - KW
+		     */
+		    context->utf_count = 0;
+		    context->utf_buf_p = context->utf_buf;
+		    *(context->utf_buf_p) = '\0';
+		}
+		/*
+		 * Wait for more.  - KW
+		 */
+		return;
+	    }
+	} else {
+	    /*
+	     * Got an ASCII char.  - KW
+	     */
+	    context->utf_count = 0;
+	    context->utf_buf_p = context->utf_buf;
+	    *(context->utf_buf_p) = '\0';
+	    /*  goto top;  */
+	}
+    }
+    /* end of context->T.decode_utf8      S/390 -- gil -- 0726 */
+#ifdef NOTDEFINED
+    /*
+     * If we have a koi8-r input and do not have koi8-r as the output, save the
+     * raw input in saved_char_in before we potentially convert it to Unicode. 
+     * - FM
+     */
+    if (context->T.strip_raw_char_in)
+	saved_char_in = c;
+#endif /* NOTDEFINED */
+
+    /*
+     * If we want the raw input converted to Unicode, try that now.  - FM
+     */
+    if (context->T.trans_to_uni &&
+#ifdef EXP_JAPANESEUTF8_SUPPORT
+	((strcmp(LYCharSet_UC[context->inUCLYhndl].MIMEname, "euc-jp") == 0) ||
+	 (strcmp(LYCharSet_UC[context->inUCLYhndl].MIMEname, "shift_jis") == 0))) {
+	if (strcmp(LYCharSet_UC[context->inUCLYhndl].MIMEname, "shift_jis") == 0) {
+	    if (context->utf_count == 0) {
+		if (IS_SJIS_HI1((unsigned char) c) ||
+		    IS_SJIS_HI2((unsigned char) c)) {
+		    context->utf_buf[0] = (char) c;
+		    context->utf_count = 1;
+		    clong = -11;
+		}
+	    } else {
+		if (IS_SJIS_LO((unsigned char) c)) {
+		    context->utf_buf[1] = (char) c;
+		    clong = UCTransJPToUni(context->utf_buf, 2, context->inUCLYhndl);
+		}
+		context->utf_count = 0;
+	    }
+	} else {
+	    if (context->utf_count == 0) {
+		if (IS_EUC_HI((unsigned char) c)) {
+		    context->utf_buf[0] = (char) c;
+		    context->utf_count = 1;
+		    clong = -11;
+		}
+	    } else {
+		if (IS_EUC_LOX((unsigned char) c)) {
+		    context->utf_buf[1] = (char) c;
+		    clong = UCTransJPToUni(context->utf_buf, 2, context->inUCLYhndl);
+		}
+		context->utf_count = 0;
+	    }
+	}
+	goto top1;
+    } else if (context->T.trans_to_uni &&
+#endif
+	       ((TOASCII(unsign_c) >= LYlowest_eightbit[context->inUCLYhndl]) ||	/* S/390 -- gil -- 0744 */
+		(unsign_c < ' ' && unsign_c != 0 &&
+		 context->T.trans_C0_to_uni))) {
+	/*
+	 * Convert the octet to Unicode.  - FM
+	 */
+	clong = UCTransToUni((char) c, context->inUCLYhndl);
+	if (clong > 0) {
+	    saved_char_in = c;
+	    if (clong < 256) {
+		c = FROMASCII(UCH(clong));
+	    }
+	}
+	goto top1;
+    } else if (unsign_c < ' ' && unsign_c != 0 &&	/* S/390 -- gil -- 0768 */
+	       context->T.trans_C0_to_uni) {
+	/*
+	 * This else if may be too ugly to keep.  - KW
+	 */
+	if (context->T.trans_from_uni &&
+	    (((clong = UCTransToUni((char) c, context->inUCLYhndl)) >= ' ') ||
+	     (context->T.transp &&
+	      (clong = UCTransToUni((char) c, context->inUCLYhndl)) > 0))) {
+	    saved_char_in = c;
+	    if (clong < 256) {
+		c = FROMASCII(UCH(clong));
+	    }
+	    goto top1;
+	} else {
+	    uck = -1;
+	    if (context->T.transp) {
+		uck = UCTransCharStr(replace_buf, 60, (char) c,
+				     context->inUCLYhndl,
+				     context->inUCLYhndl, NO);
+	    }
+	    if (!context->T.transp || uck < 0) {
+		uck = UCTransCharStr(replace_buf, 60, (char) c,
+				     context->inUCLYhndl,
+				     context->outUCLYhndl, YES);
+	    }
+	    if (uck == 0) {
+		return;
+	    } else if (uck < 0) {
+		goto top0a;
+	    }
+	    c = UCH(replace_buf[0]);
+	    if (c && replace_buf[1]) {
+		if (context->state == S_text) {
+		    PUTS(replace_buf);
+		    return;
+		}
+		StrAllocCat(context->recover, replace_buf + 1);
+	    }
+	    goto top0a;
+	}			/*  Next line end of ugly stuff for C0. - KW */
+    } else {			/* end of context->T.trans_to_uni  S/390 -- gil -- 0791 */
+	goto top0a;
+    }
+
+    /*
+     * At this point we have either unsign_c a.k.a.  clong in Unicode (and c in
+     * latin1 if clong is in the latin1 range), or unsign_c and c will have to
+     * be passed raw.  - KW
+     */
+/*
+ *  We jump up to here from below if we have
+ *  stuff in the recover, insert, or csi buffers
+ *  to process.	 We zero saved_char_in, in effect
+ *  as a flag that the octet is not that of the
+ *  actual call to this function.  This may be OK
+ *  for now, for the stuff this function adds to
+ *  its recover buffer, but it might not be for
+ *  stuff other functions added to the insert or
+ *  csi buffer, so bear that in mind. - FM
+ *  Stuff from the recover buffer is now handled
+ *  as UTF-8 if we can expect that's what it is,
+ *  and in that case we don't come back up here. - kw
+ */
+  top:
+    saved_char_in = '\0';
+/*
+ *  We jump to here from above when we don't have
+ *  UTF-8 input, haven't converted to Unicode, and
+ *  want clong set to the input octet (unsigned)
+ *  without zeroing its saved_char_in copy (which
+ *  is signed). - FM
+ */
+  top0a:
+    *(context->utf_buf) = '\0';
+    clong = UCH(c);
+/*
+ *  We jump to here from above if we have converted
+ *  the input, or a multibyte sequence across calls,
+ *  to a Unicode value and loaded it into clong (to
+ *  which unsign_c has been defined), and from below
+ *  when we are recycling a character (e.g., because
+ *  it terminated an entity but is not the standard
+ *  semi-colon).  The character will already have
+ *  been put through the Unicode conversions. - FM
+ */
+  top1:
+    /*
+     * Ignore low ISO 646 7-bit control characters if HTCJK is not set.  - FM
+     */
+    /*
+     * Works for both ASCII and EBCDIC. -- gil
+     * S/390 -- gil -- 0811
+     */
+    if (TOASCII(unsign_c) < 32 &&
+	c != '\t' && c != '\n' && c != '\r' &&
+	!IS_CJK_TTY)
+	goto after_switch;
+
+    /*
+     * Ignore 127 if we don't have HTPassHighCtrlRaw or HTCJK set.  - FM
+     */
+#define PASSHICTRL (context->T.transp || \
+		    unsign_c >= LYlowest_eightbit[context->inUCLYhndl])
+    if (TOASCII(c) == 127 &&	/* S/390 -- gil -- 0830 */
+	!(PASSHICTRL || IS_CJK_TTY))
+	goto after_switch;
+
+    /*
+     * Ignore 8-bit control characters 128 - 159 if neither HTPassHighCtrlRaw
+     * nor HTCJK is set.  - FM
+     */
+    if (TOASCII(unsign_c) > 127 && TOASCII(unsign_c) < 160 &&	/* S/390 -- gil -- 0847 */
+	!(PASSHICTRL || IS_CJK_TTY)) {
+	/*
+	 * If we happen to be reading from an "ISO-8859-1" or "US-ASCII"
+	 * document, allow the cp-1252 codes, to accommodate the HTML5 draft
+	 * recommendation for replacement encoding:
+	 *
+	 * http://www.whatwg.org/specs/web-apps/current-work/multipage/infrastructure.html#character-encodings-0
+	 */
+	if (AssumeCP1252(context)) {
+	    clong = LYcp1252ToUnicode((UCode_t) c);
+	    goto top1;
+	}
+	goto after_switch;
+    }
+
+    /* Almost all CJK characters are double byte but only Japanese
+     * JIS X0201 Kana is single byte. To prevent to fail SGML parsing
+     * we have to take care of them here. -- TH
+     */
+    if ((HTCJK == JAPANESE) && (context->state == S_in_kanji) &&
+	!IS_JAPANESE_2BYTE(context->kanji_buf, UCH(c))
+#ifdef EXP_JAPANESEUTF8_SUPPORT
+	&& !context->T.decode_utf8
+#endif
+	) {
+#ifdef CONV_JISX0201KANA_JISX0208KANA
+	if (IS_SJIS_X0201KANA(context->kanji_buf)) {
+	    unsigned char sjis_hi, sjis_lo;
+
+	    JISx0201TO0208_SJIS(context->kanji_buf, &sjis_hi, &sjis_lo);
+	    PUTC(sjis_hi);
+	    PUTC(sjis_lo);
+	} else
+#endif
+	    PUTC(context->kanji_buf);
+	context->state = S_text;
+    }
+
+    /*
+     * Handle character based on context->state.
+     */
+    CTRACE2(TRACE_SGML, (tfp, "SGML before %s|%.*s|%c|\n",
+			 state_name(context->state),
+			 string->size,
+			 NonNull(string->data),
+			 UCH(c)));
+    switch (context->state) {
+
+    case S_in_kanji:
+	/*
+	 * Note that if we don't have a CJK input, then this is not the second
+	 * byte of a CJK di-byte, and we're trashing the input.  That's why
+	 * 8-bit characters followed by, for example, '<' can cause the tag to
+	 * be treated as text, not markup.  We could try to deal with it by
+	 * holding each first byte and then checking byte pairs, but that
+	 * doesn't seem worth the overhead (see below).  - FM
+	 */
+	context->state = S_text;
+	PUTC(context->kanji_buf);
+	PUTC(c);
+	break;
+
+    case S_tagname_slash:
+	/*
+	 * We had something link "<name/" so far, set state to S_text but keep
+	 * context->slashedtag as a flag; except if we get '>' directly
+	 * after the "<name/", and really have a tag for that name in
+	 * context->slashedtag, in which case keep state as is and let code
+	 * below deal with it.  - kw
+	 */
+	if (!(c == '>' && context->slashedtag && TOASCII(unsign_c) < 127)) {
+	    context->state = S_text;
+	}
+	/* fall through in any case! */
+    case S_text:
+	if (IS_CJK_TTY && ((TOASCII(c) & 0200) != 0)
+#ifdef EXP_JAPANESEUTF8_SUPPORT
+	    && !context->T.decode_utf8
+#endif
+	    ) {			/* S/390 -- gil -- 0864 */
+	    /*
+	     * Setting up for Kanji multibyte handling (based on Takuya ASADA's
+	     * (asada@three-a.co.jp) CJK Lynx).  Note that if the input is not
+	     * in fact CJK, the next byte also will be mishandled, as explained
+	     * above.  Toggle raw mode off in such cases, or select the "7 bit
+	     * approximations" display character set, which is largely
+	     * equivalent to having raw mode off with CJK.  - FM
+	     */
+	    context->state = S_in_kanji;
+	    context->kanji_buf = c;
+	    break;
+	} else if (IS_CJK_TTY && TOASCII(c) == '\033') {	/* S/390 -- gil -- 0881 */
+	    /*
+	     * Setting up for CJK escape sequence handling (based on Takuya
+	     * ASADA's (asada@three-a.co.jp) CJK Lynx).  - FM
+	     */
+	    context->state = S_esc;
+	    PUTC(c);
+	    break;
+	}
+
+	if (c == '&' || c == '<') {
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {	/*there is nothing useful in the element_stack */
+		testtag = context->current_tag;
+	    } else
+#endif
+	    {
+		testtag = context->element_stack ?
+		    context->element_stack->tag : NULL;
+	    }
+	}
+
+	if (c == '&' && TOASCII(unsign_c) < 127 &&	/* S/390 -- gil -- 0898 */
+	    (!testtag ||
+	     (testtag->contents == SGML_MIXED ||
+	      testtag->contents == SGML_ELEMENT ||
+	      testtag->contents == SGML_PCDATA ||
+#ifdef USE_PRETTYSRC
+	      testtag->contents == SGML_EMPTY ||
+#endif
+	      testtag->contents == SGML_RCDATA))) {
+	    /*
+	     * Setting up for possible entity, without the leading '&'.  - FM
+	     */
+	    string->size = 0;
+	    context->state = S_ero;
+	} else if (c == '<' && TOASCII(unsign_c) < 127) {	/* S/390 -- gil -- 0915 */
+	    /*
+	     * Setting up for possible tag.  - FM
+	     */
+	    string->size = 0;
+	    if (testtag && testtag->contents == SGML_PCDATA) {
+		context->state = S_pcdata;
+	    } else if (testtag && (testtag->contents == SGML_LITTERAL
+				   || testtag->contents == SGML_CDATA)) {
+		context->state = S_litteral;
+	    } else if (testtag && (testtag->contents == SGML_SCRIPT)) {
+		context->state = S_script;
+	    } else {
+		context->state = S_tag;
+	    }
+	    context->slashedtag = NULL;
+	} else if (context->slashedtag &&
+		   context->slashedtag->name &&
+		   (c == '/' ||
+		    (c == '>' && context->state == S_tagname_slash)) &&
+		   TOASCII(unsign_c) < 127) {
+	    /*
+	     * We got either the second slash of a pending "<NAME/blah blah/"
+	     * shortref construct, or the '>' of a mere "<NAME/>".  In both
+	     * cases generate a "</NAME>" end tag in the recover buffer for
+	     * reparsing unless NAME is really an empty element.  - kw
+	     */
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(abracket);
+		PUTC(c);
+		PSRCSTOP(abracket);
+	    } else
+#endif
+		if (context->slashedtag != context->unknown_tag &&
+		    !ReallyEmptyTag(context->slashedtag)) {
+		if (context->recover == NULL) {
+		    StrAllocCopy(context->recover, "</");
+		    context->recover_index = 0;
+		} else {
+		    StrAllocCat(context->recover, "</");
+		}
+		StrAllocCat(context->recover, context->slashedtag->name);
+		StrAllocCat(context->recover, ">");
+	    }
+	    context->slashedtag = NULL;
+
+	} else if (context->element_stack &&
+		   (context->element_stack->tag->flags & Tgf_frecyc)) {
+	    /*
+	     * The element stack says we are within the contents of an element
+	     * that the next stage (HTML.c) may want to feed us back again (via
+	     * the *include string).  So try to output text in UTF-8 if
+	     * possible, using the same logic as for attribute values (which
+	     * should be in line with what context->current_tag_charset
+	     * indicates).  - kw
+	     */
+	    if (context->T.decode_utf8 &&
+		*context->utf_buf) {
+		PUTS(context->utf_buf);
+		context->utf_buf_p = context->utf_buf;
+		*(context->utf_buf_p) = '\0';
+	    } else if (!IS_CJK_TTY &&
+		       (context->T.output_utf8 ||
+			context->T.trans_from_uni)) {
+		if (LYIsASCII(clong)) {
+		    PUTC(c);
+		} else if (clong == 0xfffd && saved_char_in &&
+			   HTPassEightBitRaw &&
+			   saved_char_in >=
+			   LYlowest_eightbit[context->outUCLYhndl]) {
+		    PUTUTF8((UCode_t) (0xf000 | saved_char_in));
+		} else {
+		    PUTUTF8(clong);
+		}
+	    } else if (saved_char_in && context->T.use_raw_char_in) {
+		PUTC(saved_char_in);
+	    } else {
+		PUTC(c);
+	    }
+
+#define PASS8859SPECL context->T.pass_160_173_raw
+	    /*
+	     * Convert 160 (nbsp) to Lynx special character if neither
+	     * HTPassHighCtrlRaw nor HTCJK is set.  - FM
+	     */
+	} else if (unsign_c == CH_NBSP &&	/* S/390 -- gil -- 0932 */
+		   !context->no_lynx_specialcodes &&
+		   !(PASS8859SPECL || IS_CJK_TTY)) {
+	    PUTC(HT_NON_BREAK_SPACE);
+	    /*
+	     * Convert 173 (shy) to Lynx special character if neither
+	     * HTPassHighCtrlRaw nor HTCJK is set.  - FM
+	     */
+	} else if (unsign_c == CH_SHY &&	/* S/390 -- gil -- 0949 */
+		   !context->no_lynx_specialcodes &&
+		   !(PASS8859SPECL || IS_CJK_TTY)) {
+	    PUTC(LY_SOFT_HYPHEN);
+	    /*
+	     * Handle the case in which we think we have a character which
+	     * doesn't need further processing (e.g., a koi8-r input for a
+	     * koi8-r output).  - FM
+	     */
+	} else if (context->T.use_raw_char_in && saved_char_in) {
+	    /*
+	     * Only if the original character is still in saved_char_in,
+	     * otherwise we may be iterating from a goto top.  - KW
+	     */
+	    PUTC(saved_char_in);
+/******************************************************************
+ * I.  LATIN-1 OR UCS2 TO DISPLAY CHARSET
+ ******************************************************************/
+	} else if ((chk = (BOOL) (context->T.trans_from_uni &&
+				  TOASCII(unsign_c) >= 160)) &&		/* S/390 -- gil -- 0968 */
+		   (uck = UCTransUniChar(unsign_c,
+					 context->outUCLYhndl)) >= ' ' &&
+		   uck < 256) {
+	    CTRACE((tfp, "UCTransUniChar returned 0x%.2" PRI_UCode_t
+		    ":'%c'.\n",
+		    uck, FROMASCII((char)uck)));
+	    /*
+	     * We got one octet from the conversions, so use it.  - FM
+	     */
+	    PUTC(FROMASCII((char) uck));
+	} else if ((chk &&
+		    (uck == -4 ||
+		     (context->T.repl_translated_C0 &&
+		      uck > 0 && uck < 32))) &&
+	    /*
+	     * Not found; look for replacement string.  - KW
+	     */
+		   (uck = UCTransUniCharStr(replace_buf, 60, clong,
+					    context->outUCLYhndl,
+					    0) >= 0)) {
+	    /*
+	     * Got a replacement string.  No further tests for validity -
+	     * assume that whoever defined replacement strings knew what she
+	     * was doing.  - KW
+	     */
+	    PUTS(replace_buf);
+	    /*
+	     * If we're displaying UTF-8, try that now.  - FM
+	     */
+	} else if (context->T.output_utf8 && PUTUTF8(clong)) {
+	    ;			/* do nothing more */
+	    /*
+	     * If it's any other (> 160) 8-bit character, and we have not set
+	     * HTPassEightBitRaw nor HTCJK, nor have the "ISO Latin 1"
+	     * character set selected, back translate for our character set.  -
+	     * FM
+	     */
+#define IncludesLatin1Enc \
+		(context->outUCLYhndl == LATIN1 || \
+		 (context->outUCI && \
+		  (context->outUCI->enc & (UCT_CP_SUPERSETOF_LAT1))))
+
+#define PASSHI8BIT (HTPassEightBitRaw || \
+		    (context->T.do_8bitraw && !context->T.trans_from_uni))
+
+	} else if (unsign_c > 160 && unsign_c < 256 &&
+		   !(PASSHI8BIT || IS_CJK_TTY) &&
+		   !IncludesLatin1Enc) {
+#ifdef USE_PRETTYSRC
+	    int psrc_view_backup = 0;
+#endif
+
+	    string->size = 0;
+	    EntityName = HTMLGetEntityName((UCode_t) (unsign_c - 160));
+	    HTChunkPuts(string, EntityName);
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    /* we need to disable it temporarily */
+	    if (psrc_view) {
+		psrc_view_backup = 1;
+		psrc_view = 0;
+	    }
+#endif
+	    handle_entity(context, '\0');
+#ifdef USE_PRETTYSRC
+	    /* we need to disable it temporarily */
+	    if (psrc_view_backup)
+		psrc_view = TRUE;
+#endif
+
+	    string->size = 0;
+	    if (!FoundEntity)
+		PUTC(';');
+	    /*
+	     * If we get to here and have an ASCII char, pass the character.  -
+	     * KW
+	     */
+	} else if (TOASCII(unsign_c) < 127 && unsign_c > 0) {	/* S/390 -- gil -- 0987 */
+	    PUTC(c);
+	    /*
+	     * If we get to here, and should have translated, translation has
+	     * failed so far.  - KW
+	     *
+	     * We should have sent UTF-8 output to the parser already, but what
+	     * the heck, try again.  - FM
+	     */
+	} else if (context->T.output_utf8 && *context->utf_buf) {
+	    PUTS(context->utf_buf);
+	    context->utf_buf_p = context->utf_buf;
+	    *(context->utf_buf_p) = '\0';
+#ifdef NOTDEFINED
+	    /*
+	     * Check for a strippable koi8-r 8-bit character.  - FM
+	     */
+	} else if (context->T.strip_raw_char_in && saved_char_in &&
+		   (saved_char_in >= 0xc0) &&
+		   (saved_char_in < 255)) {
+	    /*
+	     * KOI8 special:  strip high bit, gives (somewhat) readable ASCII
+	     * or KOI7 - it was constructed that way!  - KW
+	     */
+	    PUTC((saved_char_in & 0x7f));
+	    saved_char_in = '\0';
+#endif /* NOTDEFINED */
+	    /*
+	     * If we don't actually want the character, make it safe and output
+	     * that now.  - FM
+	     */
+	} else if (TOASCII(UCH(c)) <	/* S/390 -- gil -- 0997 */
+		   LYlowest_eightbit[context->outUCLYhndl] ||
+		   (context->T.trans_from_uni && !HTPassEightBitRaw)) {
+	    /*
+	     * If we get to here, pass the character.  - FM
+	     */
+	} else {
+	    PUTC(c);
+	}
+	break;
+
+	/*
+	 * Found '<' in SGML_PCDATA content; treat this mode nearly like
+	 * S_litteral, but recognize '<!' and '<?' to filter out comments and
+	 * processing instructions.  - kw
+	 */
+    case S_pcdata:
+	if (!string->size && TOASCII(unsign_c) < 127) {		/* first after '<' */
+	    if (c == '!') {	/* <! */
+		/*
+		 * Terminate and set up for possible comment, identifier,
+		 * declaration, or marked section as under S_tag.  - kw
+		 */
+		context->state = S_exclamation;
+		context->lead_exclamation = TRUE;
+		context->doctype_bracket = FALSE;
+		context->first_bracket = FALSE;
+		HTChunkPutc(string, c);
+		break;
+	    } else if (c == '?') {	/* <? - ignore as a PI until '>' - kw */
+		CTRACE((tfp,
+			"SGML: Found PI in PCDATA, junking it until '>'\n"));
+#ifdef USE_PRETTYSRC
+		if (psrc_view) {
+		    PSRCSTART(abracket);
+		    PUTS("<?");
+		    PSRCSTOP(abracket);
+		}
+#endif
+		context->state = S_pi;
+		break;
+	    }
+	}
+	goto case_S_litteral;
+
+	/*
+	 * Found '<' in SGML_SCRIPT content; treat this mode nearly like
+	 * S_litteral, but recognize '<!' to allow the content to be treated as
+	 * a comment by lynx.
+	 */
+    case S_script:
+	if (!string->size && TOASCII(unsign_c) < 127) {		/* first after '<' */
+	    if (c == '!') {	/* <! */
+		/*
+		 * Terminate and set up for possible comment, identifier,
+		 * declaration, or marked section as under S_tag.  - kw
+		 */
+		context->state = S_exclamation;
+		context->lead_exclamation = TRUE;
+		context->doctype_bracket = FALSE;
+		context->first_bracket = FALSE;
+		HTChunkPutc(string, c);
+		break;
+	    }
+	}
+	goto case_S_litteral;
+
+	/*
+	 * In litteral mode, waits only for specific end tag (for compatibility
+	 * with old servers, and for Lynx).  - FM
+	 */
+      case_S_litteral:
+    case S_litteral:
+	/*PSRC:this case not understood completely by HV, not done */
+	HTChunkPutc(string, c);
+#ifdef USE_PRETTYSRC
+	if (psrc_view) {
+	    /* there is nothing useful in the element_stack */
+	    testtag = context->current_tag;
+	} else
+#endif
+	    testtag = (context->element_stack
+		       ? context->element_stack->tag
+		       : NULL);
+
+	if (testtag == NULL || testtag->name == NULL) {
+	    string->size--;
+	    context->state = S_text;
+	    goto top1;
+	}
+
+	/*
+	 * Normally when we get the closing ">",
+	 *      testtag contains something like "TITLE"
+	 *      string contains something like "/title>"
+	 * so we decrement by 2 to compare the final character of each.
+	 */
+	testlast = string->size - 2 - context->trailing_spaces - context->leading_spaces;
+
+	if (TOUPPER(c) != ((testlast < 0)
+			   ? '/'
+			   : testtag->name[testlast])) {
+	    int i;
+
+	    /*
+	     * If complete match, end litteral.
+	     */
+	    if ((c == '>') &&
+		testlast >= 0 && !testtag->name[testlast]) {
+#ifdef USE_PRETTYSRC
+		if (psrc_view) {
+		    char *trailing = NULL;
+
+		    if (context->trailing_spaces) {
+			StrAllocCopy(trailing,
+				     string->data
+				     + string->size
+				     - 1
+				     - context->trailing_spaces);
+			trailing[context->trailing_spaces] = '\0';
+		    }
+
+		    PSRCSTART(abracket);
+		    PUTS("</");
+		    PSRCSTOP(abracket);
+		    PSRCSTART(tag);
+
+		    strcpy(string->data, context->current_tag->name);
+		    transform_tag(context, string);
+		    PUTS(string->data);
+
+		    if (trailing) {
+			PUTS(trailing);
+			FREE(trailing);
+		    }
+
+		    PSRCSTOP(tag);
+		    PSRCSTART(abracket);
+		    PUTC('>');
+		    PSRCSTOP(abracket);
+
+		    context->current_tag = NULL;
+		} else
+#endif
+		    end_element(context, context->element_stack->tag);
+
+		string->size = 0;
+		context->current_attribute_number = INVALID;
+		context->state = S_text;
+		context->leading_spaces = 0;
+		context->trailing_spaces = 0;
+		break;
+	    }
+
+	    /*
+	     * Allow whitespace between the "<" or ">" and the keyword, for
+	     * error-recovery.
+	     */
+	    if (isspace(UCH(c))) {
+		if (testlast == -1) {
+		    context->leading_spaces += 1;
+		    CTRACE2(TRACE_SGML, (tfp, "leading spaces: %d\n", context->leading_spaces));
+		    break;
+		} else if (testlast > 0) {
+		    context->trailing_spaces += 1;
+		    CTRACE2(TRACE_SGML, (tfp, "trailing spaces: %d\n", context->trailing_spaces));
+		    break;
+		}
+	    }
+
+	    /*
+	     * Mismatch - recover.
+	     */
+	    context->leading_spaces = 0;
+	    context->trailing_spaces = 0;
+	    if (((testtag->contents != SGML_LITTERAL &&
+		  (testtag->flags & Tgf_strict)) ||
+		 (context->state == S_pcdata &&
+		  (testtag->flags & (Tgf_strict | Tgf_endO)))) &&
+		(testlast > -1 &&
+		 (c == '>' || testlast > 0 || IsNmStart(c)))) {
+		context->state = S_end;
+		string->size--;
+		for (i = 0; i < string->size; i++)	/* remove '/' */
+		    string->data[i] = string->data[i + 1];
+		if ((string->size == 1) ? IsNmStart(c) : IsNmChar(c))
+		    break;
+		string->size--;
+		goto top1;
+	    }
+	    if (context->state == S_pcdata &&
+		(testtag->flags & (Tgf_strict | Tgf_endO)) &&
+		(testlast < 0 && IsNmStart(c))) {
+		context->state = S_tag;
+		break;
+	    }
+	    /*
+	     * If Mismatch:  recover string literally.
+	     */
+	    PUTC('<');
+	    for (i = 0; i < string->size - 1; i++)	/* recover, except last c */
+		PUTC(string->data[i]);
+	    string->size = 0;
+	    context->state = S_text;
+	    goto top1;		/* to recover last c */
+	}
+	break;
+
+	/*
+	 * Character reference (numeric entity) or named entity.
+	 */
+    case S_ero:
+	if (c == '#') {
+	    /*
+	     * Setting up for possible numeric entity.
+	     */
+	    context->state = S_cro;	/* &# is Char Ref Open */
+	    break;
+	}
+	context->state = S_entity;	/* Fall through! */
+
+	/*
+	 * Handle possible named entity.
+	 */
+    case S_entity:
+	if (TOASCII(unsign_c) < 127 && (string->size ?	/* S/390 -- gil -- 1029 */
+					isalnum(UCH(c)) : isalpha(UCH(c)))) {
+	    /* Should probably use IsNmStart/IsNmChar above (is that right?),
+	       but the world is not ready for that - there's &nbsp: (note
+	       colon!) and stuff around. */
+	    /*
+	     * Accept valid ASCII character.  - FM
+	     */
+	    HTChunkPutc(string, c);
+	} else if (string->size == 0) {
+	    /*
+	     * It was an ampersand that's just text, so output the ampersand
+	     * and recycle this character.  - FM
+	     */
+#ifdef USE_PRETTYSRC
+	    if (psrc_view)
+		PSRCSTART(badseq);
+#endif
+	    PUTC('&');
+#ifdef USE_PRETTYSRC
+	    if (psrc_view)
+		PSRCSTOP(badseq);
+#endif
+	    context->state = S_text;
+	    goto top1;
+	} else {
+	    /*
+	     * Terminate entity name and try to handle it.  - FM
+	     */
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    entity_string = string->data;
+#endif
+	    /* S/390 -- gil -- 1039 */
+	    /* CTRACE((tfp, "%s: %d: %s\n", __FILE__, __LINE__, string->data)); */
+	    if (!strcmp(string->data, "zwnj") &&
+		(!context->element_stack ||
+		 (context->element_stack->tag &&
+		  context->element_stack->tag->contents == SGML_MIXED))) {
+		/*
+		 * Handle zwnj (8204) as <WBR>.  - FM
+		 */
+		char temp[8];
+
+		CTRACE((tfp,
+			"SGML_character: Handling 'zwnj' entity as 'WBR' element.\n"));
+
+		if (c != ';') {
+		    sprintf(temp, "<WBR>%c", c);
+		} else {
+		    sprintf(temp, "<WBR>");
+		}
+		if (context->recover == NULL) {
+		    StrAllocCopy(context->recover, temp);
+		    context->recover_index = 0;
+		} else {
+		    StrAllocCat(context->recover, temp);
+		}
+		string->size = 0;
+		context->state = S_text;
+		break;
+	    } else {
+		handle_entity(context, '\0');
+	    }
+	    string->size = 0;
+	    context->state = S_text;
+	    /*
+	     * Don't eat the terminator if we didn't find the entity name and
+	     * therefore sent the raw string via handle_entity(), or if the
+	     * terminator is not the "standard" semi-colon for HTML.  - FM
+	     */
+#ifdef USE_PRETTYSRC
+	    if (psrc_view && FoundEntity && c == ';') {
+		PSRCSTART(entity);
+		PUTC(c);
+		PSRCSTOP(entity);
+	    }
+#endif
+	    if (!FoundEntity || c != ';')
+		goto top1;
+	}
+	break;
+
+	/*
+	 * Check for a numeric entity.
+	 */
+    case S_cro:
+	if (TOASCII(unsign_c) < 127 && TOLOWER(UCH(c)) == 'x') {	/* S/390 -- gil -- 1060 */
+	    context->isHex = TRUE;
+	    context->state = S_incro;
+	} else if (TOASCII(unsign_c) < 127 && isdigit(UCH(c))) {
+	    /*
+	     * Accept only valid ASCII digits.  - FM
+	     */
+	    HTChunkPutc(string, c);	/* accumulate a character NUMBER */
+	    context->isHex = FALSE;
+	    context->state = S_incro;
+	} else if (string->size == 0) {
+	    /*
+	     * No 'x' or digit following the "&#" so recover them and recycle
+	     * the character.  - FM
+	     */
+#ifdef USE_PRETTYSRC
+	    if (psrc_view)
+		PSRCSTART(badseq);
+#endif
+	    PUTC('&');
+	    PUTC('#');
+#ifdef USE_PRETTYSRC
+	    if (psrc_view)
+		PSRCSTOP(badseq);
+#endif
+	    context->state = S_text;
+	    goto top1;
+	}
+	break;
+
+	/*
+	 * Handle a numeric entity.
+	 */
+    case S_incro:
+	/* S/390 -- gil -- 1075 */
+	if ((TOASCII(unsign_c) < 127) &&
+	    (context->isHex
+	     ? isxdigit(UCH(c))
+	     : isdigit(UCH(c)))) {
+	    /*
+	     * Accept only valid hex or ASCII digits.  - FM
+	     */
+	    HTChunkPutc(string, c);	/* accumulate a character NUMBER */
+	} else if (string->size == 0) {
+	    /*
+	     * No hex digit following the "&#x" so recover them and recycle the
+	     * character.  - FM
+	     */
+#ifdef USE_PRETTYSRC
+	    if (psrc_view)
+		PSRCSTART(badseq);
+#endif
+	    PUTS("&#x");
+#ifdef USE_PRETTYSRC
+	    if (psrc_view)
+		PSRCSTOP(badseq);
+#endif
+	    context->isHex = FALSE;
+	    context->state = S_text;
+	    goto top1;
+	} else {
+	    /*
+	     * Terminate the numeric entity and try to handle it.  - FM
+	     */
+	    UCode_t code;
+	    int i;
+
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    entity_string = string->data;
+#endif
+	    if (UCScanCode(&code, string->data, context->isHex)) {
+
+/* =============== work in ASCII below here ===============  S/390 -- gil -- 1092 */
+		if (AssumeCP1252(context)) {
+		    code = LYcp1252ToUnicode(code);
+		}
+		/*
+		 * Check for special values.  - FM
+		 */
+		if ((code == 8204) &&
+		    (!context->element_stack ||
+		     (context->element_stack->tag &&
+		      context->element_stack->tag->contents == SGML_MIXED))) {
+		    /*
+		     * Handle zwnj (8204) as <WBR>.  - FM
+		     */
+		    char temp[8];
+
+		    CTRACE((tfp,
+			    "SGML_character: Handling '8204' (zwnj) reference as 'WBR' element.\n"));
+
+		    /*
+		     * Include the terminator if it is not the standard
+		     * semi-colon.  - FM
+		     */
+		    if (c != ';') {
+			sprintf(temp, "<WBR>%c", c);
+		    } else {
+			sprintf(temp, "<WBR>");
+		    }
+		    /*
+		     * Add the replacement string to the recover buffer for
+		     * processing.  - FM
+		     */
+		    if (context->recover == NULL) {
+			StrAllocCopy(context->recover, temp);
+			context->recover_index = 0;
+		    } else {
+			StrAllocCat(context->recover, temp);
+		    }
+		    string->size = 0;
+		    context->isHex = FALSE;
+		    context->state = S_text;
+		    break;
+		} else if (put_special_unicodes(context, code)) {
+		    /*
+		     * We handled the value as a special character, so recycle
+		     * the terminator or break.  - FM
+		     */
+#ifdef USE_PRETTYSRC
+		    if (psrc_view) {
+			PSRCSTART(entity);
+			PUTS((context->isHex ? "&#x" : "&#"));
+			PUTS(entity_string);
+			if (c == ';')
+			    PUTC(';');
+			PSRCSTOP(entity);
+		    }
+#endif
+		    string->size = 0;
+		    context->isHex = FALSE;
+		    context->state = S_text;
+		    if (c != ';')
+			goto top1;
+		    break;
+		}
+		/*
+		 * Seek a translation from the chartrans tables.
+		 */
+		if ((uck = UCTransUniChar(code,
+					  context->outUCLYhndl)) >= 32 &&
+		    uck < 256 &&
+		    (uck < 127 ||
+		     uck >= LYlowest_eightbit[context->outUCLYhndl])) {
+#ifdef USE_PRETTYSRC
+		    if (!psrc_view) {
+#endif
+			PUTC(FROMASCII((char) uck));
+#ifdef USE_PRETTYSRC
+		    } else {
+			put_pretty_number(context);
+		    }
+#endif
+		} else if ((uck == -4 ||
+			    (context->T.repl_translated_C0 &&
+			     uck > 0 && uck < 32)) &&
+		    /*
+		     * Not found; look for replacement string.
+		     */
+			   (uck = UCTransUniCharStr(replace_buf, 60, code,
+						    context->outUCLYhndl,
+						    0) >= 0)) {
+#ifdef USE_PRETTYSRC
+		    if (psrc_view) {
+			put_pretty_number(context);
+		    } else
+#endif
+			PUTS(replace_buf);
+		    /*
+		     * If we're displaying UTF-8, try that now.  - FM
+		     */
+		} else if (context->T.output_utf8 && PUTUTF8(code)) {
+		    ;		/* do nothing more */
+		    /*
+		     * Ignore 8205 (zwj), 8206 (lrm), and 8207 (rln), if we get
+		     * to here.  - FM
+		     */
+		} else if (code == 8205 ||
+			   code == 8206 ||
+			   code == 8207) {
+		    if (TRACE) {
+			string->size--;
+			LYStrNCpy(replace_buf,
+				  string->data,
+				  (string->size < 64 ? string->size : 63));
+			fprintf(tfp,
+				"SGML_character: Ignoring '%s%s'.\n",
+				(context->isHex ? "&#x" : "&#"),
+				replace_buf);
+		    }
+#ifdef USE_PRETTYSRC
+		    if (psrc_view) {
+			PSRCSTART(badseq);
+			PUTS((context->isHex ? "&#x" : "&#"));
+			PUTS(entity_string);
+			if (c == ';')
+			    PUTC(';');
+			PSRCSTOP(badseq);
+		    }
+#endif
+		    string->size = 0;
+		    context->isHex = FALSE;
+		    context->state = S_text;
+		    if (c != ';')
+			goto top1;
+		    break;
+		    /*
+		     * Show the numeric entity if we get to here and the value:
+		     * (1) Is greater than 255 (but use ASCII characters for
+		     * spaces or dashes).
+		     * (2) Is less than 32, and not valid or we don't have
+		     * HTCJK set.
+		     * (3) Is 127 and we don't have HTPassHighCtrlRaw or HTCJK
+		     * set.
+		     * (4) Is 128 - 159 and we don't have HTPassHighCtrlNum
+		     * set.
+		     * - FM
+		     */
+		} else if ((code > 255) ||
+			   (code < ' ' &&	/* S/390 -- gil -- 1140 */
+			    code != '\t' && code != '\n' && code != '\r' &&
+			    !IS_CJK_TTY) ||
+			   (TOASCII(code) == 127 &&
+			    !(HTPassHighCtrlRaw || IS_CJK_TTY)) ||
+			   (TOASCII(code) > 127 && code < 160 &&
+			    !HTPassHighCtrlNum)) {
+		    /*
+		     * Unhandled or illegal value.  Recover the "&#" or "&#x"
+		     * and digit(s), and recycle the terminator.  - FM
+		     */
+#ifdef USE_PRETTYSRC
+		    if (psrc_view) {
+			PSRCSTART(badseq);
+		    }
+#endif
+		    if (context->isHex) {
+			PUTS("&#x");
+			context->isHex = FALSE;
+		    } else {
+			PUTS("&#");
+		    }
+		    string->size--;
+		    for (i = 0; i < string->size; i++)	/* recover */
+			PUTC(string->data[i]);
+#ifdef USE_PRETTYSRC
+		    if (psrc_view) {
+			PSRCSTOP(badseq);
+		    }
+#endif
+		    string->size = 0;
+		    context->isHex = FALSE;
+		    context->state = S_text;
+		    goto top1;
+		} else if (TOASCII(code) < 161 ||	/* S/390 -- gil -- 1162 */
+			   HTPassEightBitNum ||
+			   IncludesLatin1Enc) {
+		    /*
+		     * No conversion needed.  - FM
+		     */
+#ifdef USE_PRETTYSRC
+		    if (psrc_view) {
+			put_pretty_number(context);
+		    } else
+#endif
+			PUTC(FROMASCII((char) code));
+		} else {
+		    /*
+		     * Handle as named entity.  - FM
+		     */
+		    code -= 160;
+		    EntityName = HTMLGetEntityName(code);
+		    if (EntityName && EntityName[0] != '\0') {
+			string->size = 0;
+			HTChunkPuts(string, EntityName);
+			HTChunkTerminate(string);
+			handle_entity(context, '\0');
+			/*
+			 * Add a semi-colon if something went wrong and
+			 * handle_entity() sent the string.  - FM
+			 */
+			if (!FoundEntity) {
+			    PUTC(';');
+			}
+		    } else {
+			/*
+			 * Our conversion failed, so recover the "&#" and
+			 * digit(s), and recycle the terminator.  - FM
+			 */
+#ifdef USE_PRETTYSRC
+			if (psrc_view)
+			    PSRCSTART(badseq);
+#endif
+			if (context->isHex) {
+			    PUTS("&#x");
+			    context->isHex = FALSE;
+			} else {
+			    PUTS("&#");
+			}
+			string->size--;
+			for (i = 0; i < string->size; i++)	/* recover */
+			    PUTC(string->data[i]);
+#ifdef USE_PRETTYSRC
+			if (psrc_view)
+			    PSRCSTOP(badseq);
+#endif
+			string->size = 0;
+			context->isHex = FALSE;
+			context->state = S_text;
+			goto top1;
+		    }
+		}
+		/*
+		 * If we get to here, we succeeded.  Hoorah!!!  - FM
+		 */
+		string->size = 0;
+		context->isHex = FALSE;
+		context->state = S_text;
+		/*
+		 * Don't eat the terminator if it's not the "standard"
+		 * semi-colon for HTML.  - FM
+		 */
+		if (c != ';') {
+		    goto top1;
+		}
+	    } else {
+		/*
+		 * Not an entity, and don't know why not, so add the terminator
+		 * to the string, output the "&#" or "&#x", and process the
+		 * string via the recover element.  - FM
+		 */
+		string->size--;
+		HTChunkPutc(string, c);
+		HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+		if (psrc_view)
+		    PSRCSTART(badseq);
+#endif
+		if (context->isHex) {
+		    PUTS("&#x");
+		    context->isHex = FALSE;
+		} else {
+		    PUTS("&#");
+		}
+#ifdef USE_PRETTYSRC
+		if (psrc_view)
+		    PSRCSTOP(badseq);
+#endif
+		if (context->recover == NULL) {
+		    StrAllocCopy(context->recover, string->data);
+		    context->recover_index = 0;
+		} else {
+		    StrAllocCat(context->recover, string->data);
+		}
+		string->size = 0;
+		context->isHex = FALSE;
+		context->state = S_text;
+		break;
+	    }
+	}
+	break;
+
+	/*
+	 * Tag
+	 */
+    case S_tag:		/* new tag */
+	if (TOASCII(unsign_c) < 127 && (string->size ?	/* S/390 -- gil -- 1179 */
+					IsNmChar(c) : IsNmStart(c))) {
+	    /*
+	     * Add valid ASCII character.  - FM
+	     */
+	    HTChunkPutc(string, c);
+	} else if (c == '!' && !string->size) {		/* <! */
+	    /*
+	     * Terminate and set up for possible comment, identifier,
+	     * declaration, or marked section.  - FM
+	     */
+	    context->state = S_exclamation;
+	    context->lead_exclamation = TRUE;
+	    context->doctype_bracket = FALSE;
+	    context->first_bracket = FALSE;
+	    HTChunkPutc(string, c);
+	    break;
+	} else if (!string->size &&
+		   (TOASCII(unsign_c) <= 160 &&		/* S/390 -- gil -- 1196 */
+		    (c != '/' && c != '?' && c != '_' && c != ':'))) {
+	    /*
+	     * '<' must be followed by an ASCII letter to be a valid start tag. 
+	     * Here it isn't, nor do we have a '/' for an end tag, nor one of
+	     * some other characters with a special meaning for SGML or which
+	     * are likely to be legal Name Start characters in XML or some
+	     * other extension.  So recover the '<' and following character as
+	     * data.  - FM & KW
+	     */
+	    context->state = S_text;
+#ifdef USE_PRETTYSRC
+	    if (psrc_view)
+		PSRCSTART(badseq);
+#endif
+	    PUTC('<');
+#ifdef USE_PRETTYSRC
+	    if (psrc_view)
+		PSRCSTOP(badseq);
+#endif
+	    goto top1;
+	} else {		/* End of tag name */
+	    /*
+	     * Try to handle tag.  - FM
+	     */
+	    HTTag *t;
+
+	    if (c == '/') {
+		if (string->size == 0) {
+		    context->state = S_end;
+		    break;
+		}
+		CTRACE((tfp, "SGML: `<%.*s/' found!\n", string->size, string->data));
+	    }
+	    HTChunkTerminate(string);
+
+	    t = SGMLFindTag(dtd, string->data);
+	    if (t == context->unknown_tag &&
+		((c == ':' &&
+		  string->size == 4 && 0 == strcasecomp(string->data, "URL")) ||
+		 (string->size > 4 && 0 == strncasecomp(string->data, "URL:", 4)))) {
+		/*
+		 * Treat <URL:  as text rather than a junk tag, so we display
+		 * it and the URL (Lynxism 8-).  - FM
+		 */
+#ifdef USE_PRETTYSRC
+		if (psrc_view)
+		    PSRCSTART(badseq);
+#endif
+		PUTC('<');
+		PUTS(string->data);	/* recover */
+		PUTC(c);
+#ifdef USE_PRETTYSRC
+		if (psrc_view)
+		    PSRCSTOP(badseq);
+#endif
+		CTRACE((tfp, "SGML: Treating <%s%c as text\n",
+			string->data, c));
+		string->size = 0;
+		context->state = S_text;
+		break;
+	    }
+	    if (c == '/' && t) {
+		/*
+		 * Element name was ended by '/'.  Remember the tag that ended
+		 * thusly, we'll interpret this as either an indication of an
+		 * empty element (if '>' follows directly) or do some
+		 * SGMLshortref-ish treatment.  - kw
+		 */
+		context->slashedtag = t;
+	    }
+	    if (!t) {
+		if (c == '?' && string->size <= 1) {
+		    CTRACE((tfp, "SGML: Found PI, looking for '>'\n"));
+#ifdef USE_PRETTYSRC
+		    if (psrc_view) {
+			PSRCSTART(abracket);
+			PUTS("<?");
+			PSRCSTOP(abracket);
+		    }
+#endif
+		    string->size = 0;
+		    context->state = S_pi;
+		    HTChunkPutc(string, c);
+		    break;
+		}
+		CTRACE((tfp, "SGML: *** Invalid element %s\n",
+			string->data));
+
+#ifdef USE_PRETTYSRC
+		if (psrc_view) {
+		    PSRCSTART(abracket);
+		    PUTC('<');
+		    PSRCSTOP(abracket);
+		    PSRCSTART(badtag);
+		    transform_tag(context, string);
+		    PUTS(string->data);
+		    if (c == '>') {
+			PSRCSTOP(badtag);
+			PSRCSTART(abracket);
+			PUTC('>');
+			PSRCSTOP(abracket);
+		    } else {
+			PUTC(c);
+		    }
+		}
+#endif
+		context->state = (c == '>') ? S_text : S_junk_tag;
+		break;
+	    } else if (t == context->unknown_tag) {
+		CTRACE((tfp, "SGML: *** Unknown element \"%s\"\n",
+			string->data));
+		/*
+		 * Fall through and treat like valid tag for attribute parsing. 
+		 * - KW
+		 */
+
+	    }
+	    context->current_tag = t;
+
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(abracket);
+		PUTC('<');
+		PSRCSTOP(abracket);
+		if (t != context->unknown_tag)
+		    PSRCSTART(tag);
+		else
+		    PSRCSTART(badtag);
+		transform_tag(context, string);
+		PUTS(string->data);
+		if (t != context->unknown_tag)
+		    PSRCSTOP(tag);
+		else
+		    PSRCSTOP(badtag);
+	    }
+	    if (!psrc_view)	/*don't waste time */
+#endif
+	    {
+		/*
+		 * Clear out attributes.
+		 */
+		memset((void *) context->present, 0, sizeof(BOOL) *
+		         (unsigned) (context->current_tag->number_of_attributes));
+	    }
+
+	    string->size = 0;
+	    context->current_attribute_number = INVALID;
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		if (c == '>' || c == '<' || (c == '/' && context->slashedtag)) {
+		    if (c != '<') {
+			PSRCSTART(abracket);
+			PUTC(c);
+			PSRCSTOP(abracket);
+			context->state = (c == '>') ? S_text : S_tagname_slash;
+		    } else {
+			context->state = S_tag;
+		    }
+		} else {
+		    if (!WHITE(c))
+			PUTC(c);
+		    context->state = S_tag_gap;
+		}
+	    } else
+#endif
+	    if (c == '>' || c == '<' || (c == '/' && context->slashedtag)) {
+		if (context->current_tag->name)
+		    start_element(context);
+		context->state = (c == '>') ? S_text :
+		    (c == '<') ? S_tag : S_tagname_slash;
+	    } else {
+		context->state = S_tag_gap;
+	    }
+	}
+	break;
+
+    case S_exclamation:
+	if (context->lead_exclamation && c == '-') {
+	    /*
+	     * Set up for possible comment.  - FM
+	     */
+	    context->lead_exclamation = FALSE;
+	    context->first_dash = TRUE;
+	    HTChunkPutc(string, c);
+	    break;
+	}
+	if (context->lead_exclamation && c == '[') {
+	    /*
+	     * Set up for possible marked section.  - FM
+	     */
+	    context->lead_exclamation = FALSE;
+	    context->first_bracket = TRUE;
+	    context->second_bracket = FALSE;
+	    HTChunkPutc(string, c);
+	    context->state = S_marked;
+	    break;
+	}
+	if (context->first_dash && c == '-') {
+	    /*
+	     * Set up to handle comment.  - FM
+	     */
+	    context->lead_exclamation = FALSE;
+	    context->first_dash = FALSE;
+	    context->end_comment = FALSE;
+	    HTChunkPutc(string, c);
+	    context->state = S_comment;
+	    break;
+	}
+	context->lead_exclamation = FALSE;
+	context->first_dash = FALSE;
+	if (c == '>') {
+	    /*
+	     * Try to handle identifier.  - FM
+	     */
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(sgmlspecial);
+		PUTC('<');
+		PUTS(string->data);
+		PUTC('>');
+		PSRCSTOP(sgmlspecial);
+	    } else
+#endif
+		handle_identifier(context);
+	    string->size = 0;
+	    context->state = S_text;
+	    break;
+	}
+	if (WHITE(c)) {
+	    if (string->size == 8 &&
+		!strncasecomp(string->data, "!DOCTYPE", 8)) {
+		/*
+		 * Set up for DOCTYPE declaration.  - FM
+		 */
+		HTChunkPutc(string, c);
+		context->doctype_bracket = FALSE;
+		context->state = S_doctype;
+		break;
+	    }
+	    if (string->size == 7 &&
+		!strncasecomp(string->data, "!ENTITY", 7)) {
+		/*
+		 * Set up for ENTITY declaration.  - FM
+		 */
+		HTChunkPutc(string, c);
+		context->first_dash = FALSE;
+		context->end_comment = TRUE;
+		context->state = S_sgmlent;
+		break;
+	    }
+	    if (string->size == 8 &&
+		!strncasecomp(string->data, "!ELEMENT", 8)) {
+		/*
+		 * Set up for ELEMENT declaration.  - FM
+		 */
+		HTChunkPutc(string, c);
+		context->first_dash = FALSE;
+		context->end_comment = TRUE;
+		context->state = S_sgmlele;
+		break;
+	    }
+	    if (string->size == 8 &&
+		!strncasecomp(string->data, "!ATTLIST", 8)) {
+		/*
+		 * Set up for ATTLIST declaration.  - FM
+		 */
+		HTChunkPutc(string, c);
+		context->first_dash = FALSE;
+		context->end_comment = TRUE;
+		context->state = S_sgmlatt;
+		break;
+	    }
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_comment:		/* Expecting comment. - FM */
+	if (historical_comments) {
+	    /*
+	     * Any '>' terminates.  - FM
+	     */
+	    if (c == '>') {
+		HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+		if (psrc_view) {
+		    PSRCSTART(comm);
+		    PUTC('<');
+		    PUTS_TR(string->data);
+		    PUTC('>');
+		    PSRCSTOP(comm);
+		} else
+#endif
+		    handle_comment(context);
+		string->size = 0;
+		context->end_comment = FALSE;
+		context->first_dash = FALSE;
+		context->state = S_text;
+		break;
+	    }
+	    goto S_comment_put_c;
+	}
+	if (!context->first_dash && c == '-') {
+	    HTChunkPutc(string, c);
+	    context->first_dash = TRUE;
+	    break;
+	}
+	if (context->first_dash && c == '-') {
+	    HTChunkPutc(string, c);
+	    context->first_dash = FALSE;
+	    if (!context->end_comment)
+		context->end_comment = TRUE;
+	    else if (!minimal_comments)
+		/*
+		 * Validly treat '--' pairs as successive comments (for
+		 * minimal, any "--WHITE>" terminates).  - FM
+		 */
+		context->end_comment = FALSE;
+	    break;
+	}
+	if (context->end_comment && c == '>') {
+	    /*
+	     * Terminate and handle the comment.  - FM
+	     */
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(comm);
+		PUTC('<');
+		PUTS_TR(string->data);
+		PUTC('>');
+		PSRCSTOP(comm);
+	    } else
+#endif
+		handle_comment(context);
+	    string->size = 0;
+	    context->end_comment = FALSE;
+	    context->first_dash = FALSE;
+	    context->state = S_text;
+	    break;
+	}
+	context->first_dash = FALSE;
+	if (context->end_comment && !isspace(UCH(c)))
+	    context->end_comment = FALSE;
+
+      S_comment_put_c:
+	if (context->T.decode_utf8 &&
+	    *context->utf_buf) {
+	    HTChunkPuts(string, context->utf_buf);
+	    context->utf_buf_p = context->utf_buf;
+	    *(context->utf_buf_p) = '\0';
+	} else if (!IS_CJK_TTY &&
+		   (context->T.output_utf8 ||
+		    context->T.trans_from_uni)) {
+	    if (clong == 0xfffd && saved_char_in &&
+		HTPassEightBitRaw &&
+		saved_char_in >=
+		LYlowest_eightbit[context->outUCLYhndl]) {
+		HTChunkPutUtf8Char(string,
+				   (UCode_t) (0xf000 | saved_char_in));
+	    } else {
+		HTChunkPutUtf8Char(string, clong);
+	    }
+	} else if (saved_char_in && context->T.use_raw_char_in) {
+	    HTChunkPutc(string, saved_char_in);
+	} else {
+	    HTChunkPutc(string, c);
+	}
+	break;
+
+    case S_doctype:		/* Expecting DOCTYPE. - FM */
+	if (context->doctype_bracket) {
+	    HTChunkPutc(string, c);
+	    if (c == ']')
+		context->doctype_bracket = FALSE;
+	    break;
+	}
+	if (c == '[' && WHITE(string->data[string->size - 1])) {
+	    HTChunkPutc(string, c);
+	    context->doctype_bracket = TRUE;
+	    break;
+	}
+	if (c == '>') {
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(sgmlspecial);
+		PUTC('<');
+		PUTS(string->data);
+		PUTC('>');
+		PSRCSTOP(sgmlspecial);
+	    } else
+#endif
+		handle_doctype(context);
+	    string->size = 0;
+	    context->state = S_text;
+	    break;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_marked:		/* Expecting marked section. - FM */
+	if (context->first_bracket && c == '[') {
+	    HTChunkPutc(string, c);
+	    context->first_bracket = FALSE;
+	    context->second_bracket = TRUE;
+	    break;
+	}
+	if (context->second_bracket && c == ']' &&
+	    string->data[string->size - 1] == ']') {
+	    HTChunkPutc(string, c);
+	    context->second_bracket = FALSE;
+	    break;
+	}
+	if (!context->second_bracket && c == '>') {
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(sgmlspecial);
+		PUTC('<');
+		PUTS(string->data);
+		PUTC('>');
+		PSRCSTOP(sgmlspecial);
+	    } else
+#endif
+		handle_marked(context);
+	    string->size = 0;
+	    context->state = S_text;
+	    break;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_sgmlent:		/* Expecting ENTITY. - FM */
+	if (!context->first_dash && c == '-') {
+	    HTChunkPutc(string, c);
+	    context->first_dash = TRUE;
+	    break;
+	}
+	if (context->first_dash && c == '-') {
+	    HTChunkPutc(string, c);
+	    context->first_dash = FALSE;
+	    if (!context->end_comment)
+		context->end_comment = TRUE;
+	    else
+		context->end_comment = FALSE;
+	    break;
+	}
+	if (context->end_comment && c == '>') {
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(sgmlspecial);
+		PUTC('<');
+		PUTS(string->data);
+		PUTC('>');
+		PSRCSTOP(sgmlspecial);
+	    } else
+#endif
+		handle_sgmlent(context);
+	    string->size = 0;
+	    context->end_comment = FALSE;
+	    context->first_dash = FALSE;
+	    context->state = S_text;
+	    break;
+	}
+	context->first_dash = FALSE;
+	HTChunkPutc(string, c);
+	break;
+
+    case S_sgmlele:		/* Expecting ELEMENT. - FM */
+	if (!context->first_dash && c == '-') {
+	    HTChunkPutc(string, c);
+	    context->first_dash = TRUE;
+	    break;
+	}
+	if (context->first_dash && c == '-') {
+	    HTChunkPutc(string, c);
+	    context->first_dash = FALSE;
+	    if (!context->end_comment)
+		context->end_comment = TRUE;
+	    else
+		context->end_comment = FALSE;
+	    break;
+	}
+	if (context->end_comment && c == '>') {
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(sgmlspecial);
+		PUTC('<');
+		PUTS(string->data);
+		PUTC('>');
+		PSRCSTOP(sgmlspecial);
+	    } else
+#endif
+		handle_sgmlele(context);
+	    string->size = 0;
+	    context->end_comment = FALSE;
+	    context->first_dash = FALSE;
+	    context->state = S_text;
+	    break;
+	}
+	context->first_dash = FALSE;
+	HTChunkPutc(string, c);
+	break;
+
+    case S_sgmlatt:		/* Expecting ATTLIST. - FM */
+	if (!context->first_dash && c == '-') {
+	    HTChunkPutc(string, c);
+	    context->first_dash = TRUE;
+	    break;
+	}
+	if (context->first_dash && c == '-') {
+	    HTChunkPutc(string, c);
+	    context->first_dash = FALSE;
+	    if (!context->end_comment)
+		context->end_comment = TRUE;
+	    else
+		context->end_comment = FALSE;
+	    break;
+	}
+	if (context->end_comment && c == '>') {
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(sgmlspecial);
+		PUTC('<');
+		PUTS(string->data);
+		PUTC('>');
+		PSRCSTOP(sgmlspecial);
+	    } else
+#endif
+		handle_sgmlatt(context);
+	    string->size = 0;
+	    context->end_comment = FALSE;
+	    context->first_dash = FALSE;
+	    context->state = S_text;
+	    break;
+	}
+	context->first_dash = FALSE;
+	HTChunkPutc(string, c);
+	break;
+
+    case S_tag_gap:		/* Expecting attribute or '>' */
+	if (WHITE(c)) {
+	    /* PUTC(c); - no, done as special case */
+	    break;		/* Gap between attributes */
+	}
+	if (c == '>') {		/* End of tag */
+#ifdef USE_PRETTYSRC
+	    if (!psrc_view)
+#endif
+		if (context->current_tag->name)
+		    start_element(context);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(abracket);
+		PUTC('>');
+		PSRCSTOP(abracket);
+	    }
+#endif
+	    context->state = S_text;
+	    break;
+	}
+	HTChunkPutc(string, c);
+	context->state = S_attr;	/* Get attribute */
+	break;
+
+	/* accumulating value */
+    case S_attr:
+	if (WHITE(c) || (c == '>') || (c == '=')) {	/* End of word */
+	    if ((c == '>')
+		&& (string->size == 1)
+		&& (string->data[0] == '/')) {
+		if (context->extended_html
+		    && ignore_when_empty(context->current_tag)) {
+		    discard_empty(context);
+		}
+	    } else {
+		HTChunkTerminate(string);
+		handle_attribute_name(context, string->data);
+	    }
+#ifdef USE_PRETTYSRC
+	    if (!psrc_view) {
+#endif
+		string->size = 0;
+		if (c == '>') {	/* End of tag */
+		    if (context->current_tag->name)
+			start_element(context);
+		    context->state = S_text;
+		    break;
+		}
+#ifdef USE_PRETTYSRC
+	    } else {
+		PUTC(' ');
+		if (context->current_attribute_number == INVALID)
+		    PSRCSTART(badattr);
+		else
+		    PSRCSTART(attrib);
+		if (attrname_transform != 1) {
+		    if (attrname_transform == 0)
+			LYLowerCase(string->data);
+		    else
+			LYUpperCase(string->data);
+		}
+		PUTS(string->data);
+		if (c == '=' || WHITE(c))
+		    PUTC(c);
+		if (c == '=' || c == '>') {
+		    if (context->current_attribute_number == INVALID) {
+			PSRCSTOP(badattr);
+		    } else {
+			PSRCSTOP(attrib);
+		    }
+		}
+		if (c == '>') {
+		    PSRCSTART(abracket);
+		    PUTC('>');
+		    PSRCSTOP(abracket);
+		    context->state = S_text;
+		    break;
+		}
+		string->size = 0;
+	    }
+#endif
+	    context->state = (c == '=' ? S_equals : S_attr_gap);
+	} else {
+	    HTChunkPutc(string, c);
+	}
+	break;
+
+    case S_attr_gap:		/* Expecting attribute or '=' or '>' */
+	if (WHITE(c)) {
+	    PRETTYSRC_PUTC(c);
+	    break;		/* Gap after attribute */
+	}
+	if (c == '>') {		/* End of tag */
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		if (context->current_attribute_number == INVALID) {
+		    PSRCSTOP(badattr);
+		} else {
+		    PSRCSTOP(attrib);
+		}
+		PSRCSTART(abracket);
+		PUTC('>');
+		PSRCSTOP(abracket);
+	    } else
+#endif
+	    if (context->current_tag->name)
+		start_element(context);
+	    context->state = S_text;
+	    break;
+	} else if (c == '=') {
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PUTC('=');
+		if (context->current_attribute_number == INVALID) {
+		    PSRCSTOP(badattr);
+		} else {
+		    PSRCSTOP(attrib);
+		}
+	    }
+#endif
+	    context->state = S_equals;
+	    break;
+	}
+	HTChunkPutc(string, c);
+	context->state = S_attr;	/* Get next attribute */
+	break;
+
+    case S_equals:		/* After attr = */
+	if (WHITE(c)) {
+	    PRETTYSRC_PUTC(c);
+	    break;		/* Before attribute value */
+	}
+	if (c == '>') {		/* End of tag */
+	    CTRACE((tfp, "SGML: found = but no value\n"));
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(abracket);
+		PUTC('>');
+		PSRCSTOP(abracket);
+	    } else
+#endif
+	    if (context->current_tag->name)
+		start_element(context);
+	    context->state = S_text;
+	    break;
+
+	} else if (c == '\'') {
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(attrval);
+		PUTC(c);
+	    }
+#endif
+	    context->state = S_squoted;
+	    break;
+
+	} else if (c == '"') {
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PSRCSTART(attrval);
+		PUTC(c);
+	    }
+#endif
+	    context->state = S_dquoted;
+	    break;
+	}
+#ifdef USE_PRETTYSRC
+	if (psrc_view)
+	    PSRCSTART(attrval);
+#endif
+	context->state = S_value;
+	/*  no break!  fall through to S_value and process current `c`   */
+
+    case S_value:
+	if (WHITE(c) || (c == '>')) {	/* End of word */
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (!end_if_prettysrc(context, string, 0))
+#endif
+	    {
+#ifdef CJK_EX			/* Quick hack. - JH7AYN */
+		if (IS_CJK_TTY) {
+		    if (string->data[0] == '$') {
+			if (string->data[1] == 'B' || string->data[1] == '@') {
+			    char *jis_buf = 0;
+
+			    HTSprintf0(&jis_buf, "\033%s", string->data);
+			    TO_EUC((const unsigned char *) jis_buf,
+				   (unsigned char *) string->data);
+			    FREE(jis_buf);
+			}
+		    }
+		}
+#endif
+		handle_attribute_value(context, string->data);
+	    }
+	    string->size = 0;
+	    if (c == '>') {	/* End of tag */
+#ifdef USE_PRETTYSRC
+		if (psrc_view) {
+		    PSRCSTART(abracket);
+		    PUTC('>');
+		    PSRCSTOP(abracket);
+		} else
+#endif
+		if (context->current_tag->name)
+		    start_element(context);
+		context->state = S_text;
+		break;
+	    } else
+		context->state = S_tag_gap;
+	} else if (context->T.decode_utf8 &&
+		   *context->utf_buf) {
+	    HTChunkPuts(string, context->utf_buf);
+	    context->utf_buf_p = context->utf_buf;
+	    *(context->utf_buf_p) = '\0';
+	} else if (!IS_CJK_TTY &&
+		   (context->T.output_utf8 ||
+		    context->T.trans_from_uni)) {
+	    if (clong == 0xfffd && saved_char_in &&
+		HTPassEightBitRaw &&
+		saved_char_in >=
+		LYlowest_eightbit[context->outUCLYhndl]) {
+		HTChunkPutUtf8Char(string,
+				   (UCode_t) (0xf000 | saved_char_in));
+	    } else {
+		HTChunkPutUtf8Char(string, clong);
+	    }
+	} else if (saved_char_in && context->T.use_raw_char_in) {
+	    HTChunkPutc(string, saved_char_in);
+	} else {
+	    HTChunkPutc(string, c);
+	}
+	break;
+
+    case S_squoted:		/* Quoted attribute value */
+	if (c == '\'') {	/* End of attribute value */
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (!end_if_prettysrc(context, string, '\''))
+#endif
+		handle_attribute_value(context, string->data);
+	    string->size = 0;
+	    context->state = S_tag_gap;
+	} else if (TOASCII(c) == '\033') {	/* S/390 -- gil -- 1213 */
+	    /*
+	     * Setting up for possible single quotes in CJK escape sequences. 
+	     * - Takuya ASADA (asada@three-a.co.jp)
+	     */
+	    context->state = S_esc_sq;
+	    HTChunkPutc(string, c);
+	} else if (context->T.decode_utf8 &&
+		   *context->utf_buf) {
+	    HTChunkPuts(string, context->utf_buf);
+	    context->utf_buf_p = context->utf_buf;
+	    *(context->utf_buf_p) = '\0';
+	} else if (!IS_CJK_TTY &&
+		   (context->T.output_utf8 ||
+		    context->T.trans_from_uni)) {
+	    if (clong == 0xfffd && saved_char_in &&
+		HTPassEightBitRaw &&
+		saved_char_in >=
+		LYlowest_eightbit[context->outUCLYhndl]) {
+		HTChunkPutUtf8Char(string,
+				   (UCode_t) (0xf000 | saved_char_in));
+	    } else {
+		HTChunkPutUtf8Char(string, clong);
+	    }
+	} else if (saved_char_in && context->T.use_raw_char_in) {
+	    HTChunkPutc(string, saved_char_in);
+	} else {
+	    HTChunkPutc(string, c);
+	}
+	break;
+
+    case S_dquoted:		/* Quoted attribute value */
+	if (c == '"' ||		/* Valid end of attribute value */
+	    (soft_dquotes &&	/*  If emulating old Netscape bug, treat '>' */
+	     c == '>')) {	/*  as a co-terminator of dquoted and tag    */
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (!end_if_prettysrc(context, string, (char) c))
+#endif
+		handle_attribute_value(context, string->data);
+	    string->size = 0;
+	    context->state = S_tag_gap;
+	    if (c == '>')	/* We emulated the Netscape bug, so we go  */
+		goto top1;	/* back and treat it as the tag terminator */
+	} else if (TOASCII(c) == '\033') {	/* S/390 -- gil -- 1230 */
+	    /*
+	     * Setting up for possible double quotes in CJK escape sequences. 
+	     * - Takuya ASADA (asada@three-a.co.jp)
+	     */
+	    context->state = S_esc_dq;
+	    HTChunkPutc(string, c);
+	} else if (context->T.decode_utf8 &&
+		   *context->utf_buf) {
+	    HTChunkPuts(string, context->utf_buf);
+	    context->utf_buf_p = context->utf_buf;
+	    *(context->utf_buf_p) = '\0';
+	} else if (!IS_CJK_TTY &&
+		   (context->T.output_utf8 ||
+		    context->T.trans_from_uni)) {
+	    if (clong == 0xfffd && saved_char_in &&
+		HTPassEightBitRaw &&
+		saved_char_in >=
+		LYlowest_eightbit[context->outUCLYhndl]) {
+		HTChunkPutUtf8Char(string,
+				   (UCode_t) (0xf000 | saved_char_in));
+	    } else {
+		HTChunkPutUtf8Char(string, clong);
+	    }
+	} else if (saved_char_in && context->T.use_raw_char_in) {
+	    HTChunkPutc(string, saved_char_in);
+	} else {
+	    HTChunkPutc(string, c);
+	}
+	break;
+
+    case S_end:		/* </ */
+	if (TOASCII(unsign_c) < 127 && (string->size ?	/* S/390 -- gil -- 1247 */
+					IsNmChar(c) : IsNmStart(c))) {
+	    HTChunkPutc(string, c);
+	} else {		/* End of end tag name */
+	    HTTag *t = 0;
+
+#ifdef USE_PRETTYSRC
+	    BOOL psrc_tagname_processed = FALSE;
+#endif
+
+	    HTChunkTerminate(string);
+	    if (!*string->data) {	/* Empty end tag */
+		if (context->element_stack)
+		    t = context->element_stack->tag;
+	    } else {
+		t = SGMLFindTag(dtd, string->data);
+	    }
+	    if (!t || t == context->unknown_tag) {
+		CTRACE((tfp, "Unknown end tag </%s>\n", string->data));
+#ifdef USE_PRETTYSRC
+		if (psrc_view) {
+		    PSRCSTART(abracket);
+		    PUTS("</");
+		    PSRCSTOP(abracket);
+		    PSRCSTART(badtag);
+		    transform_tag(context, string);
+		    PUTS(string->data);
+		    if (c != '>') {
+			PUTC(c);
+		    } else {
+			PSRCSTOP(badtag);
+			PSRCSTART(abracket);
+			PUTC('>');
+			PSRCSTOP(abracket);
+		    }
+		    psrc_tagname_processed = TRUE;
+		}
+	    } else if (psrc_view) {
+#endif
+	    } else {
+		BOOL tag_OK = (BOOL) (c == '>' || WHITE(c));
+		HTMLElement e = TAGNUM_OF_TAGP(t);
+		int branch = 2;	/* it can be 0,1,2 */
+
+		context->current_tag = t;
+		if (HAS_ALT_TAGNUM(TAGNUM_OF_TAGP(t)) &&
+		    context->element_stack &&
+		    ALT_TAGP(t) == context->element_stack->tag)
+		    context->element_stack->tag = NORMAL_TAGP(context->element_stack->tag);
+
+		if (tag_OK && Old_DTD) {
+		    switch (e) {
+		    case HTML_DD:
+		    case HTML_DT:
+		    case HTML_LI:
+		    case HTML_LH:
+		    case HTML_TD:
+		    case HTML_TH:
+		    case HTML_TR:
+		    case HTML_THEAD:
+		    case HTML_TFOOT:
+		    case HTML_TBODY:
+		    case HTML_COLGROUP:
+			branch = 0;
+			break;
+
+		    case HTML_A:
+		    case HTML_B:
+		    case HTML_BLINK:
+		    case HTML_CITE:
+		    case HTML_EM:
+		    case HTML_FONT:
+		    case HTML_FORM:
+		    case HTML_I:
+		    case HTML_P:
+		    case HTML_STRONG:
+		    case HTML_TT:
+		    case HTML_U:
+			branch = 1;
+			break;
+		    default:
+			break;
+		    }
+		}
+
+		/*
+		 * Just handle ALL end tags normally :-) - kw
+		 */
+		if (!Old_DTD) {
+		    end_element(context, context->current_tag);
+		} else if (tag_OK && (branch == 0)) {
+		    /*
+		     * Don't treat these end tags as invalid, nor act on them. 
+		     * - FM
+		     */
+		    CTRACE((tfp, "SGML: `</%s%c' found!  Ignoring it.\n",
+			    string->data, c));
+		    string->size = 0;
+		    context->current_attribute_number = INVALID;
+		    if (c != '>') {
+			context->state = S_junk_tag;
+		    } else {
+			context->current_tag = NULL;
+			context->state = S_text;
+		    }
+		    break;
+		} else if (tag_OK && (branch == 1)) {
+		    /*
+		     * Handle end tags for container elements declared as
+		     * SGML_EMPTY to prevent "expected tag substitution" but
+		     * still processed via HTML_end_element() in HTML.c with
+		     * checks there to avoid throwing the HTML.c stack out of
+		     * whack (Ugh, what a hack!  8-).  - FM
+		     */
+		    if (context->inSELECT) {
+			/*
+			 * We are in a SELECT block.  - FM
+			 */
+			if (strcasecomp(string->data, "FORM")) {
+			    /*
+			     * It is not at FORM end tag, so ignore it.  - FM
+			     */
+			    CTRACE((tfp,
+				    "SGML: ***Ignoring end tag </%s> in SELECT block.\n",
+				    string->data));
+			} else {
+			    /*
+			     * End the SELECT block and then handle the FORM
+			     * end tag.  - FM
+			     */
+			    CTRACE((tfp,
+				    "SGML: ***Faking SELECT end tag before </%s> end tag.\n",
+				    string->data));
+			    end_element(context,
+					SGMLFindTag(context->dtd, "SELECT"));
+			    CTRACE((tfp, "SGML: End </%s>\n", string->data));
+
+#ifdef USE_PRETTYSRC
+			    if (!psrc_view)	/* Don't actually call if viewing psrc - kw */
+#endif
+				(*context->actions->end_element)
+				    (context->target,
+				     (int) TAGNUM_OF_TAGP(context->current_tag),
+				     &context->include);
+			}
+		    } else if (!strcasecomp(string->data, "P")) {
+			/*
+			 * Treat a P end tag like a P start tag (Ugh, what a
+			 * hack!  8-).  - FM
+			 */
+			CTRACE((tfp,
+				"SGML: `</%s%c' found!  Treating as '<%s%c'.\n",
+				string->data, c, string->data, c));
+			{
+			    int i;
+
+			    for (i = 0;
+				 i < context->current_tag->number_of_attributes;
+				 i++) {
+				context->present[i] = NO;
+			    }
+			}
+			if (context->current_tag->name)
+			    start_element(context);
+		    } else {
+			CTRACE((tfp, "SGML: End </%s>\n", string->data));
+
+#ifdef USE_PRETTYSRC
+			if (!psrc_view)		/* Don't actually call if viewing psrc - kw */
+#endif
+			    (*context->actions->end_element)
+				(context->target,
+				 (int) TAGNUM_OF_TAGP(context->current_tag),
+				 &context->include);
+		    }
+		    string->size = 0;
+		    context->current_attribute_number = INVALID;
+		    if (c != '>') {
+			context->state = S_junk_tag;
+		    } else {
+			context->current_tag = NULL;
+			context->state = S_text;
+		    }
+		    break;
+		} else {
+		    /*
+		     * Handle all other end tags normally.  - FM
+		     */
+		    end_element(context, context->current_tag);
+		}
+	    }
+
+#ifdef USE_PRETTYSRC
+	    if (psrc_view && !psrc_tagname_processed) {
+		PSRCSTART(abracket);
+		PUTS("</");
+		PSRCSTOP(abracket);
+		PSRCSTART(tag);
+		if (tagname_transform != 1) {
+		    if (tagname_transform == 0)
+			LYLowerCase(string->data);
+		    else
+			LYUpperCase(string->data);
+		}
+		PUTS(string->data);
+		PSRCSTOP(tag);
+		if (c != '>') {
+		    PSRCSTART(badtag);
+		    PUTC(c);
+		} else {
+		    PSRCSTART(abracket);
+		    PUTC('>');
+		    PSRCSTOP(abracket);
+		}
+	    }
+#endif
+
+	    string->size = 0;
+	    context->current_attribute_number = INVALID;
+	    if (c != '>') {
+		if (!WHITE(c))
+		    CTRACE((tfp, "SGML: `</%s%c' found!\n", string->data, c));
+		context->state = S_junk_tag;
+	    } else {
+		context->current_tag = NULL;
+		context->state = S_text;
+	    }
+	}
+	break;
+
+    case S_esc:		/* Expecting '$'or '(' following CJK ESC. */
+	if (c == '$') {
+	    context->state = S_dollar;
+	} else if (c == '(') {
+	    context->state = S_paren;
+	} else {
+	    context->state = S_text;
+	}
+	PUTC(c);
+	break;
+
+    case S_dollar:		/* Expecting '@', 'B', 'A' or '(' after CJK "ESC$". */
+	if (c == '@' || c == 'B' || c == 'A') {
+	    context->state = S_nonascii_text;
+	} else if (c == '(') {
+	    context->state = S_dollar_paren;
+	}
+	PUTC(c);
+	break;
+
+    case S_dollar_paren:	/* Expecting 'C' after CJK "ESC$(". */
+	if (c == 'C') {
+	    context->state = S_nonascii_text;
+	} else {
+	    context->state = S_text;
+	}
+	PUTC(c);
+	break;
+
+    case S_paren:		/* Expecting 'B', 'J', 'T' or 'I' after CJK "ESC(". */
+	if (c == 'B' || c == 'J' || c == 'T') {
+	    context->state = S_text;
+	} else if (c == 'I') {
+	    context->state = S_nonascii_text;
+	} else {
+	    context->state = S_text;
+	}
+	PUTC(c);
+	break;
+
+    case S_nonascii_text:	/* Expecting CJK ESC after non-ASCII text. */
+	if (TOASCII(c) == '\033') {	/* S/390 -- gil -- 1264 */
+	    context->state = S_esc;
+	}
+	PUTC(c);
+	if (c < 32)
+	    context->state = S_text;
+	break;
+
+    case S_esc_sq:		/* Expecting '$'or '(' following CJK ESC. */
+	if (c == '$') {
+	    context->state = S_dollar_sq;
+	} else if (c == '(') {
+	    context->state = S_paren_sq;
+	} else {
+	    context->state = S_squoted;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_dollar_sq:		/* Expecting '@', 'B', 'A' or '(' after CJK "ESC$". */
+	if (c == '@' || c == 'B' || c == 'A') {
+	    context->state = S_nonascii_text_sq;
+	} else if (c == '(') {
+	    context->state = S_dollar_paren_sq;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_dollar_paren_sq:	/* Expecting 'C' after CJK "ESC$(". */
+	if (c == 'C') {
+	    context->state = S_nonascii_text_sq;
+	} else {
+	    context->state = S_squoted;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_paren_sq:		/* Expecting 'B', 'J', 'T' or 'I' after CJK "ESC(". */
+	if (c == 'B' || c == 'J' || c == 'T') {
+	    context->state = S_squoted;
+	} else if (c == 'I') {
+	    context->state = S_nonascii_text_sq;
+	} else {
+	    context->state = S_squoted;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_nonascii_text_sq:	/* Expecting CJK ESC after non-ASCII text. */
+	if (TOASCII(c) == '\033') {	/* S/390 -- gil -- 1281 */
+	    context->state = S_esc_sq;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_esc_dq:		/* Expecting '$'or '(' following CJK ESC. */
+	if (c == '$') {
+	    context->state = S_dollar_dq;
+	} else if (c == '(') {
+	    context->state = S_paren_dq;
+	} else {
+	    context->state = S_dquoted;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_dollar_dq:		/* Expecting '@', 'B', 'A' or '(' after CJK "ESC$". */
+	if (c == '@' || c == 'B' || c == 'A') {
+	    context->state = S_nonascii_text_dq;
+	} else if (c == '(') {
+	    context->state = S_dollar_paren_dq;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_dollar_paren_dq:	/* Expecting 'C' after CJK "ESC$(". */
+	if (c == 'C') {
+	    context->state = S_nonascii_text_dq;
+	} else {
+	    context->state = S_dquoted;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_paren_dq:		/* Expecting 'B', 'J', 'T' or 'I' after CJK "ESC(". */
+	if (c == 'B' || c == 'J' || c == 'T') {
+	    context->state = S_dquoted;
+	} else if (c == 'I') {
+	    context->state = S_nonascii_text_dq;
+	} else {
+	    context->state = S_dquoted;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_nonascii_text_dq:	/* Expecting CJK ESC after non-ASCII text. */
+	if (TOASCII(c) == '\033') {	/* S/390 -- gil -- 1298 */
+	    context->state = S_esc_dq;
+	}
+	HTChunkPutc(string, c);
+	break;
+
+    case S_junk_tag:
+    case S_pi:
+	if (c == '>') {
+	    HTChunkTerminate(string);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		if (context->state == S_junk_tag) {
+		    PSRCSTOP(badtag);
+		}
+		PSRCSTART(abracket);
+		PUTC('>');
+		PSRCSTOP(abracket);
+	    }
+#endif
+	    if (context->state == S_pi)
+		handle_processing_instruction(context);
+	    string->size = 0;
+	    context->current_tag = NULL;
+	    context->state = S_text;
+	} else {
+	    HTChunkPutc(string, c);
+#ifdef USE_PRETTYSRC
+	    if (psrc_view) {
+		PUTC(c);
+	    }
+#endif
+	}
+
+    }				/* switch on context->state */
+    CTRACE2(TRACE_SGML, (tfp, "SGML after  %s|%.*s|%c|\n",
+			 state_name(context->state),
+			 string->size,
+			 NonNull(string->data),
+			 UCH(c)));
+
+  after_switch:
+    /*
+     * Check whether an external function has added anything to the include
+     * buffer.  If so, move the new stuff to the beginning of active_include. 
+     * - kw
+     */
+    if (context->include != NULL) {
+	if (context->include[0] == '\0') {
+	    FREE(context->include);
+	} else {
+	    if (context->active_include &&
+		context->active_include[context->include_index] != '\0')
+		StrAllocCat(context->include,
+			    context->active_include + context->include_index);
+	    FREE(context->active_include);
+	    context->active_include = context->include;
+	    context->include_index = 0;
+	    context->include = NULL;
+	}
+    }
+
+    /*
+     * Check whether we've added anything to the recover buffer.  - FM
+     */
+    if (context->recover != NULL) {
+	if (context->recover[context->recover_index] == '\0') {
+	    FREE(context->recover);
+	    context->recover_index = 0;
+	} else {
+	    c = UCH(context->recover[context->recover_index]);
+	    context->recover_index++;
+	    goto top;
+	}
+    }
+
+    /*
+     * Check whether an external function had added anything to the include
+     * buffer; it should now be in active_include.  - FM / kw
+     */
+    if (context->active_include != NULL) {
+	if (context->active_include[context->include_index] == '\0') {
+	    FREE(context->active_include);
+	    context->include_index = 0;
+	} else {
+	    if (context->current_tag_charset == UTF8_handle ||
+		context->T.trans_from_uni) {
+		/*
+		 * If it looks like we would have fed UTF-8 to the next
+		 * processing stage, assume that whatever we were fed back is
+		 * in UTF-8 form, too.  This won't be always true for all uses
+		 * of the include buffer, but it's a start.  - kw
+		 */
+		char *puni = context->active_include + context->include_index;
+
+		c = UCH(*puni);
+		clong = UCGetUniFromUtf8String(&puni);
+		if (clong < 256 && clong >= 0) {
+		    c = UCH((clong & 0xff));
+		}
+		saved_char_in = '\0';
+		context->include_index = (int) (puni
+						- context->active_include
+						+ 1);
+		goto top1;
+	    } else {
+		/*
+		 * Otherwise assume no UTF-8 - do charset-naive processing and
+		 * hope for the best.  - kw
+		 */
+		c = UCH(context->active_include[context->include_index]);
+		context->include_index++;
+		goto top;
+	    }
+	}
+    }
+
+    /*
+     * Check whether an external function has added anything to the csi buffer. 
+     * - FM
+     */
+    if (context->csi != NULL) {
+	if (context->csi[context->csi_index] == '\0') {
+	    FREE(context->csi);
+	    context->csi_index = 0;
+	} else {
+	    c = UCH(context->csi[context->csi_index]);
+	    context->csi_index++;
+	    goto top;
+	}
+    }
+}				/* SGML_character */
+
+static void InferUtfFromBom(HTStream *context, int chndl)
+{
+    HTAnchor_setUCInfoStage(context->node_anchor, chndl,
+			    UCT_STAGE_PARSER,
+			    UCT_SETBY_PARSER);
+    change_chartrans_handling(context);
+}
+
+/*
+ * Avoid rewrite of SGML_character() to handle hypothetical case of UTF-16
+ * webpages, by pretending that the data is UTF-8.
+ */
+static void SGML_widechar(HTStream *context, int ch)
+{
+    if (!UCPutUtf8_charstring(context, SGML_character, (UCode_t) ch)) {
+	SGML_character(context, ch);
+    }
+}
+
+static void SGML_write(HTStream *context, const char *str, int l)
+{
+    const char *p;
+    const char *e = str + l;
+
+    if (sgml_offset == 0) {
+	if (l > 3
+	    && !MemCmp(str, "\357\273\277", 3)) {
+	    CTRACE((tfp, "SGML_write found UTF-8 BOM\n"));
+	    InferUtfFromBom(context, UTF8_handle);
+	    str += 3;
+	} else if (l > 2) {
+	    if (!MemCmp(str, "\377\376", 2)) {
+		CTRACE((tfp, "SGML_write found UCS-2 LE BOM\n"));
+		InferUtfFromBom(context, UTF8_handle);
+		str += 2;
+		context->T.ucs_mode = -1;
+	    } else if (!MemCmp(str, "\376\377", 2)) {
+		CTRACE((tfp, "SGML_write found UCS-2 BE BOM\n"));
+		InferUtfFromBom(context, UTF8_handle);
+		str += 2;
+		context->T.ucs_mode = 1;
+	    }
+	}
+    }
+    switch (context->T.ucs_mode) {
+    case -1:
+	for (p = str; p < e; p += 2)
+	    SGML_widechar(context, (UCH(p[1]) << 8) | UCH(p[0]));
+	break;
+    case 1:
+	for (p = str; p < e; p += 2)
+	    SGML_widechar(context, (UCH(p[0]) << 8) | UCH(p[1]));
+	break;
+    default:
+	for (p = str; p < e; p++)
+	    SGML_character(context, *p);
+	break;
+    }
+}
+
+static void SGML_string(HTStream *context, const char *str)
+{
+    SGML_write(context, str, (int) strlen(str));
+}
+
+/*_______________________________________________________________________
+*/
+
+/*	Structured Object Class
+ *	-----------------------
+ */
+const HTStreamClass SGMLParser =
+{
+    "SGMLParser",
+    SGML_free,
+    SGML_abort,
+    SGML_character,
+    SGML_string,
+    SGML_write,
+};
+
+/*	Create SGML Engine
+ *	------------------
+ *
+ * On entry,
+ *	dtd		represents the DTD, along with
+ *	actions		is the sink for the data as a set of routines.
+ *
+ */
+
+HTStream *SGML_new(const SGML_dtd * dtd,
+		   HTParentAnchor *anchor,
+		   HTStructured * target)
+{
+    HTStream *context = typecalloc(struct _HTStream);
+
+    if (!context)
+	outofmem(__FILE__, "SGML_begin");
+
+    assert(context != NULL);
+
+    context->isa = &SGMLParser;
+    context->string = HTChunkCreate(128);	/* Grow by this much */
+    context->dtd = dtd;
+    context->target = target;
+    context->actions = (const HTStructuredClass *) (((HTStream *) target)->isa);
+    /* Ugh: no OO */
+    context->unknown_tag = &HTTag_unrecognized;
+    context->current_tag = context->slashedtag = NULL;
+    context->state = S_text;
+#ifdef CALLERDATA
+    context->callerData = (void *) callerData;
+#endif /* CALLERDATA */
+
+    context->node_anchor = anchor;	/* Could be NULL? */
+    context->utf_buf_p = context->utf_buf;
+    UCTransParams_clear(&context->T);
+    context->inUCLYhndl = HTAnchor_getUCLYhndl(anchor,
+					       UCT_STAGE_PARSER);
+    if (context->inUCLYhndl < 0) {
+	HTAnchor_copyUCInfoStage(anchor,
+				 UCT_STAGE_PARSER,
+				 UCT_STAGE_MIME,
+				 -1);
+	context->inUCLYhndl = HTAnchor_getUCLYhndl(anchor,
+						   UCT_STAGE_PARSER);
+    }
+#ifdef CAN_SWITCH_DISPLAY_CHARSET	/* Allow a switch to a more suitable display charset */
+    else if (anchor->UCStages
+	     && anchor->UCStages->s[UCT_STAGE_PARSER].LYhndl >= 0
+	     && anchor->UCStages->s[UCT_STAGE_PARSER].LYhndl != current_char_set) {
+	int o = anchor->UCStages->s[UCT_STAGE_PARSER].LYhndl;
+
+	anchor->UCStages->s[UCT_STAGE_PARSER].LYhndl = -1;	/* Force reset */
+	HTAnchor_resetUCInfoStage(anchor, o, UCT_STAGE_PARSER,
+	/* Preserve change this: */
+				  anchor->UCStages->s[UCT_STAGE_PARSER].lock);
+    }
+#endif
+
+    context->inUCI = HTAnchor_getUCInfoStage(anchor,
+					     UCT_STAGE_PARSER);
+    set_chartrans_handling(context, anchor, -1);
+
+    context->recover = NULL;
+    context->recover_index = 0;
+    context->include = NULL;
+    context->active_include = NULL;
+    context->include_index = 0;
+    context->url = NULL;
+    context->csi = NULL;
+    context->csi_index = 0;
+
+#ifdef USE_PRETTYSRC
+    if (psrc_view) {
+	psrc_view = FALSE;
+	mark_htext_as_source = TRUE;
+	SGML_string(context,
+		    "<HTML><HEAD><TITLE>source</TITLE></HEAD><BODY><PRE>");
+	psrc_view = TRUE;
+	psrc_convert_string = FALSE;
+	sgml_in_psrc_was_initialized = TRUE;
+    }
+#endif
+
+    sgml_offset = 0;
+    return context;
+}
+
+/*
+ * Return the offset within the document where we're parsing.  This is used
+ * to help identify anchors which shift around while reparsing.
+ */
+int SGML_offset(void)
+{
+    int result = sgml_offset;
+
+#ifdef USE_PRETTYSRC
+    result += psrc_view;
+#endif
+    return result;
+}
+
+/*		Asian character conversion functions
+ *		====================================
+ *
+ *	Added 24-Mar-96 by FM, based on:
+ *
+ ////////////////////////////////////////////////////////////////////////
+Copyright (c) 1993 Electrotechnical Laboratory (ETL)
+
+Permission to use, copy, modify, and distribute this material
+for any purpose and without fee is hereby granted, provided
+that the above copyright notice and this permission notice
+appear in all copies, and that the name of ETL not be
+used in advertising or publicity pertaining to this
+material without the specific, prior written permission
+of an authorized representative of ETL.
+ETL MAKES NO REPRESENTATIONS ABOUT THE ACCURACY OR SUITABILITY
+OF THIS MATERIAL FOR ANY PURPOSE.  IT IS PROVIDED "AS IS",
+WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES.
+/////////////////////////////////////////////////////////////////////////
+Content-Type:	program/C; charset=US-ASCII
+Program:	SJIS.c
+Author:		Yutaka Sato <ysato@etl.go.jp>
+Description:
+History:
+	930923	extracted from codeconv.c of cosmos
+///////////////////////////////////////////////////////////////////////
+*/
+
+static int TREAT_SJIS = 1;
+
+void JISx0201TO0208_EUC(unsigned IHI,
+			unsigned ILO,
+			unsigned char *OHI,
+			unsigned char *OLO)
+{
+    static const char *table[] =
+    {
+	"\241\243",		/* A1,A3 */
+	"\241\326",		/* A1,D6 */
+	"\241\327",		/* A1,D7 */
+	"\241\242",		/* A1,A2 */
+	"\241\246",		/* A1,A6 */
+	"\245\362",		/* A5,F2 */
+	"\245\241",		/* A5,A1 */
+	"\245\243",		/* A5,A3 */
+	"\245\245",		/* A5,A5 */
+	"\245\247",		/* A5,A7 */
+	"\245\251",		/* A5,A9 */
+	"\245\343",		/* A5,E3 */
+	"\245\345",		/* A5,E5 */
+	"\245\347",		/* A5,E7 */
+	"\245\303",		/* A5,C3 */
+	"\241\274",		/* A1,BC */
+	"\245\242",		/* A5,A2 */
+	"\245\244",		/* A5,A4 */
+	"\245\246",		/* A5,A6 */
+	"\245\250",		/* A5,A8 */
+	"\245\252",		/* A5,AA */
+	"\245\253",		/* A5,AB */
+	"\245\255",		/* A5,AD */
+	"\245\257",		/* A5,AF */
+	"\245\261",		/* A5,B1 */
+	"\245\263",		/* A5,B3 */
+	"\245\265",		/* A5,B5 */
+	"\245\267",		/* A5,B7 */
+	"\245\271",		/* A5,B9 */
+	"\245\273",		/* A5,BB */
+	"\245\275",		/* A5,BD */
+	"\245\277",		/* A5,BF */
+	"\245\301",		/* A5,C1 */
+	"\245\304",		/* A5,C4 */
+	"\245\306",		/* A5,C6 */
+	"\245\310",		/* A5,C8 */
+	"\245\312",		/* A5,CA */
+	"\245\313",		/* A5,CB */
+	"\245\314",		/* A5,CC */
+	"\245\315",		/* A5,CD */
+	"\245\316",		/* A5,CE */
+	"\245\317",		/* A5,CF */
+	"\245\322",		/* A5,D2 */
+	"\245\325",		/* A5,D5 */
+	"\245\330",		/* A5,D8 */
+	"\245\333",		/* A5,DB */
+	"\245\336",		/* A5,DE */
+	"\245\337",		/* A5,DF */
+	"\245\340",		/* A5,E0 */
+	"\245\341",		/* A5,E1 */
+	"\245\342",		/* A5,E2 */
+	"\245\344",		/* A5,E4 */
+	"\245\346",		/* A5,E6 */
+	"\245\350",		/* A5,E8 */
+	"\245\351",		/* A5,E9 */
+	"\245\352",		/* A5,EA */
+	"\245\353",		/* A5,EB */
+	"\245\354",		/* A5,EC */
+	"\245\355",		/* A5,ED */
+	"\245\357",		/* A5,EF */
+	"\245\363",		/* A5,F3 */
+	"\241\253",		/* A1,AB */
+	"\241\254"		/* A1,AC */
+    };
+
+    if ((IHI == 0x8E) && (ILO >= 0xA1) && (ILO <= 0xDF)) {
+	*OHI = UCH(table[ILO - 0xA1][0]);
+	*OLO = UCH(table[ILO - 0xA1][1]);
+    } else {
+	*OHI = UCH(IHI);
+	*OLO = UCH(ILO);
+    }
+}
+
+static int IS_SJIS_STR(const unsigned char *str)
+{
+    const unsigned char *s;
+    unsigned char ch;
+    int is_sjis = 0;
+
+    s = str;
+    while ((ch = *s++) != '\0') {
+	if (ch & 0x80)
+	    if (IS_SJIS(ch, *s, is_sjis))
+		return 1;
+    }
+    return 0;
+}
+
+unsigned char *SJIS_TO_JIS1(unsigned HI,
+			    unsigned LO,
+			    unsigned char *JCODE)
+{
+    HI = UCH(HI - (unsigned) UCH((HI <= 0x9F) ? 0x71 : 0xB1));
+    HI = UCH((HI << 1) + 1);
+    if (0x7F < LO)
+	LO--;
+    if (0x9E <= LO) {
+	LO = UCH(LO - UCH(0x7D));
+	HI++;
+    } else {
+	LO = UCH(LO - UCH(0x1F));
+    }
+    JCODE[0] = UCH(HI);
+    JCODE[1] = UCH(LO);
+    return JCODE;
+}
+
+unsigned char *JIS_TO_SJIS1(unsigned HI,
+			    unsigned LO,
+			    unsigned char *SJCODE)
+{
+    if (HI & 1)
+	LO = UCH(LO + UCH(0x1F));
+    else
+	LO = UCH(LO + UCH(0x7D));
+    if (0x7F <= LO)
+	LO++;
+
+    HI = UCH(((HI - 0x21) >> 1) + 0x81);
+    if (0x9F < HI)
+	HI = UCH(HI + UCH(0x40));
+    SJCODE[0] = UCH(HI);
+    SJCODE[1] = UCH(LO);
+    return SJCODE;
+}
+
+unsigned char *EUC_TO_SJIS1(unsigned HI,
+			    unsigned LO,
+			    unsigned char *SJCODE)
+{
+    if (HI == 0x8E) {
+	unsigned char HI_data[2];
+	unsigned char LO_data[2];
+
+	HI_data[0] = UCH(HI);
+	LO_data[0] = UCH(LO);
+	JISx0201TO0208_EUC(HI, LO, HI_data, LO_data);
+    }
+    JIS_TO_SJIS1(UCH(HI & 0x7F), UCH(LO & 0x7F), SJCODE);
+    return SJCODE;
+}
+
+void JISx0201TO0208_SJIS(unsigned I,
+			 unsigned char *OHI,
+			 unsigned char *OLO)
+{
+    unsigned char SJCODE[2];
+
+    JISx0201TO0208_EUC(0x8E, I, OHI, OLO);
+    JIS_TO_SJIS1(UCH(*OHI & 0x7F), UCH(*OLO & 0x7F), SJCODE);
+    *OHI = SJCODE[0];
+    *OLO = SJCODE[1];
+}
+
+unsigned char *SJIS_TO_EUC1(unsigned HI,
+			    unsigned LO,
+			    unsigned char *data)
+{
+    SJIS_TO_JIS1(HI, LO, data);
+    data[0] |= 0x80;
+    data[1] |= 0x80;
+    return data;
+}
+
+unsigned char *SJIS_TO_EUC(unsigned char *src,
+			   unsigned char *dst)
+{
+    unsigned char hi, lo, *sp, *dp;
+    int in_sjis = 0;
+
+    in_sjis = IS_SJIS_STR(src);
+    for (sp = src, dp = dst; (hi = sp[0]) != '\0';) {
+	lo = sp[1];
+	if (TREAT_SJIS && IS_SJIS(hi, lo, in_sjis)) {
+	    SJIS_TO_JIS1(hi, lo, dp);
+	    dp[0] |= 0x80;
+	    dp[1] |= 0x80;
+	    dp += 2;
+	    sp += 2;
+	} else
+	    *dp++ = *sp++;
+    }
+    *dp = 0;
+    return dst;
+}
+
+unsigned char *EUC_TO_SJIS(unsigned char *src,
+			   unsigned char *dst)
+{
+    unsigned char *sp, *dp;
+
+    for (sp = src, dp = dst; *sp;) {
+	if (*sp & 0x80) {
+	    if (sp[1] && (sp[1] & 0x80)) {
+		JIS_TO_SJIS1(UCH(sp[0] & 0x7F), UCH(sp[1] & 0x7F), dp);
+		dp += 2;
+		sp += 2;
+	    } else {
+		sp++;
+	    }
+	} else {
+	    *dp++ = *sp++;
+	}
+    }
+    *dp = 0;
+    return dst;
+}
+
+#define Strcpy(a,b)	(strcpy((char*)a,(const char*)b),&a[strlen((const char*)a)])
+
+unsigned char *EUC_TO_JIS(unsigned char *src,
+			  unsigned char *dst,
+			  const char *toK,
+			  const char *toA)
+{
+    unsigned char kana_mode = 0;
+    unsigned char cch;
+    unsigned char *sp = src;
+    unsigned char *dp = dst;
+    int is_JIS = 0;
+
+    while ((cch = *sp++) != '\0') {
+	if (cch & 0x80) {
+	    if (!IS_EUC(cch, *sp)) {
+		if (cch == 0xA0 && is_JIS)	/* ignore NBSP */
+		    continue;
+		is_JIS++;
+		*dp++ = cch;
+		continue;
+	    }
+	    if (!kana_mode) {
+		kana_mode = UCH(~kana_mode);
+		dp = Strcpy(dp, toK);
+	    }
+	    if (*sp & 0x80) {
+		*dp++ = UCH(cch & ~0x80);
+		*dp++ = UCH(*sp++ & ~0x80);
+	    }
+	} else {
+	    if (kana_mode) {
+		kana_mode = UCH(~kana_mode);
+		dp = Strcpy(dp, toA);
+	    }
+	    *dp++ = cch;
+	}
+    }
+    if (kana_mode)
+	dp = Strcpy(dp, toA);
+
+    if (dp)
+	*dp = 0;
+    return dst;
+}
+
+#define	IS_JIS7(c1,c2)	(0x20<(c1)&&(c1)<0x7F && 0x20<(c2)&&(c2)<0x7F)
+#define SO		('N'-0x40)
+#define SI		('O'-0x40)
+
+static int repair_JIS = 0;
+
+static const unsigned char *repairJIStoEUC(const unsigned char *src,
+					   unsigned char **dstp)
+{
+    const unsigned char *s;
+    unsigned char *d, ch1, ch2;
+
+    d = *dstp;
+    s = src;
+    while ((ch1 = s[0]) && (ch2 = s[1])) {
+	s += 2;
+	if (ch1 == '(')
+	    if (ch2 == 'B' || ch2 == 'J') {
+		*dstp = d;
+		return s;
+	    }
+	if (!IS_JIS7(ch1, ch2))
+	    return 0;
+
+	*d++ = UCH(0x80 | ch1);
+	*d++ = UCH(0x80 | ch2);
+    }
+    return 0;
+}
+
+unsigned char *TO_EUC(const unsigned char *jis,
+		      unsigned char *euc)
+{
+    const unsigned char *s;
+    unsigned char c, jis_stat;
+    unsigned char *d;
+    int to1B, to2B;
+    int in_sjis = 0;
+    static int nje;
+    int n8bits;
+    int is_JIS;
+
+    nje++;
+    n8bits = 0;
+    s = jis;
+    d = euc;
+    jis_stat = 0;
+    to2B = TO_2BCODE;
+    to1B = TO_1BCODE;
+    in_sjis = IS_SJIS_STR(jis);
+    is_JIS = 0;
+
+    while ((c = *s++) != '\0') {
+	if (c == 0x80)
+	    continue;		/* ignore it */
+	if (c == 0xA0 && is_JIS)
+	    continue;		/* ignore Non-breaking space */
+
+	if (c == to2B && jis_stat == 0 && repair_JIS) {
+	    if (*s == 'B' || *s == '@') {
+		const unsigned char *ts;
+
+		if ((ts = repairJIStoEUC(s + 1, &d)) != NULL) {
+		    s = ts;
+		    continue;
+		}
+	    }
+	}
+	if (c == CH_ESC) {
+	    if (*s == to2B) {
+		if ((s[1] == 'B') || (s[1] == '@')) {
+		    jis_stat = 0x80;
+		    s += 2;
+		    is_JIS++;
+		    continue;
+		}
+		jis_stat = 0;
+	    } else if (*s == to1B) {
+		jis_stat = 0;
+		if ((s[1] == 'B') || (s[1] == 'J') || (s[1] == 'H')) {
+		    s += 2;
+		    continue;
+		}
+	    } else if (*s == ',') {	/* MULE */
+		jis_stat = 0;
+	    }
+	}
+	if (c & 0x80)
+	    n8bits++;
+
+	if (IS_SJIS(c, *s, in_sjis)) {
+	    SJIS_TO_EUC1(c, *s, d);
+	    d += 2;
+	    s++;
+	    is_JIS++;
+	} else if (jis_stat) {
+	    if (c <= 0x20 || 0x7F <= c) {
+		*d++ = c;
+		if (c == '\n')
+		    jis_stat = 0;
+	    } else {
+		if (IS_JIS7(c, *s)) {
+		    *d++ = jis_stat | c;
+		    *d++ = jis_stat | *s++;
+		} else
+		    *d++ = c;
+	    }
+	} else {
+	    if (n8bits == 0 && (c == SI || c == SO)) {
+	    } else {
+		*d++ = c;
+	    }
+	}
+    }
+    *d = 0;
+    return euc;
+}
+
+#define non94(ch) ((ch) <= 0x20 || (ch) == 0x7F)
+
+static int is_EUC_JP(unsigned char *euc)
+{
+    unsigned char *cp;
+    int ch1, ch2;
+
+    for (cp = euc; (ch1 = *cp) != '\0'; cp++) {
+	if (ch1 & 0x80) {
+	    ch2 = cp[1] & 0xFF;
+	    if ((ch2 & 0x80) == 0) {
+		/* sv1log("NOT_EUC1[%x][%x]\n",ch1,ch2); */
+		return 0;
+	    }
+	    if (non94(ch1 & 0x7F) || non94(ch2 & 0x7F)) {
+		/* sv1log("NOT_EUC2[%x][%x]\n",ch1,ch2); */
+		return 0;
+	    }
+	    cp++;
+	}
+    }
+    return 1;
+}
+
+void TO_SJIS(const unsigned char *arg,
+	     unsigned char *sjis)
+{
+    unsigned char *euc;
+
+    euc = typeMallocn(unsigned char, strlen((const char *) arg) + 1);
+
+#ifdef CJK_EX
+    if (!euc)
+	outofmem(__FILE__, "TO_SJIS");
+#endif
+    TO_EUC(arg, euc);
+    if (is_EUC_JP(euc))
+	EUC_TO_SJIS(euc, sjis);
+    else
+	strcpy((char *) sjis, (const char *) arg);
+    free(euc);
+}
+
+void TO_JIS(const unsigned char *arg,
+	    unsigned char *jis)
+{
+    unsigned char *euc;
+
+    if (arg[0] == 0) {
+	jis[0] = 0;
+	return;
+    }
+    euc = typeMallocn(unsigned char, strlen((const char *)arg) + 1);
+#ifdef CJK_EX
+    if (!euc)
+	outofmem(__FILE__, "TO_JIS");
+#endif
+    TO_EUC(arg, euc);
+    is_EUC_JP(euc);
+    EUC_TO_JIS(euc, jis, TO_KANJI, TO_ASCII);
+
+    free(euc);
+}
diff --git a/WWW/Library/Implementation/SGML.h b/WWW/Library/Implementation/SGML.h
new file mode 100644
index 00000000..9fccdda2
--- /dev/null
+++ b/WWW/Library/Implementation/SGML.h
@@ -0,0 +1,286 @@
+/*
+ * $LynxId: SGML.h,v 1.46 2012/02/10 18:32:26 tom Exp $
+ *			       SGML parse and stream definition for libwww
+ *                             SGML AND STRUCTURED STREAMS
+ *
+ * The SGML parser is a state machine.	It is called for every character
+ * of the input stream.	 The DTD data structure contains pointers
+ * to functions which are called to implement the actual effect of the
+ * text read. When these functions are called, the attribute structures pointed to by the
+ * DTD are valid, and the function is passed a pointer to the current tag structure, and an
+ * "element stack" which represents the state of nesting within SGML elements.
+ *
+ * The following aspects are from Dan Connolly's suggestions:  Binary search,
+ * Structured object scheme basically, SGML content enum type.
+ *
+ * (c) Copyright CERN 1991 - See Copyright.html
+ *
+ */
+#ifndef SGML_H
+#define SGML_H
+
+#include <HTStream.h>
+#include <HTAnchor.h>
+#include <LYJustify.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ *
+ * SGML content types
+ *
+ */ typedef enum {
+	SGML_EMPTY,		/* No content. */
+	SGML_LITTERAL,		/* Literal character data.  Recognize exact close tag only.
+				   Old www server compatibility only!  Not SGML */
+	SGML_CDATA,		/* Character data.  Recognize </ only.
+				   (But we treat it just as SGML_LITTERAL.) */
+	SGML_SCRIPT,		/* Like CDATA, but allow it to be a comment */
+	SGML_RCDATA,		/* Replaceable character data. Should recognize </ and &ref;
+				   (but we treat it like SGML_MIXED for old times' sake). */
+	SGML_MIXED,		/* Elements and parsed character data.
+				   Recognize all markup. */
+	SGML_ELEMENT,		/* Any data found should be regarded as an error.
+				   (But we treat it just like SGML_MIXED.) */
+	SGML_PCDATA		/* Should contain no elements but &ref; is parsed.
+				   (We treat it like SGML_CDATA wrt. contained tags
+				   i.e. pass them on literally, i.e. like we should
+				   treat SGML_RCDATA) (added by KW). */
+    } SGMLContent;
+
+    typedef struct {
+	const char *name;	/* The name of the attribute */
+#ifdef USE_PRETTYSRC
+	char type;		/* code of the type of the attribute. Code
+				   values are in HTMLDTD.h */
+#endif
+    } attr;
+
+    typedef const attr *AttrList;
+
+    typedef struct {
+	const char *name;
+	AttrList list;
+    } AttrType;
+
+    typedef int TagClass;
+
+    /* textflow */
+#define Tgc_FONTlike	0x00001	/* S,STRIKE,I,B,TT,U,BIG,SMALL,STYLE,BLINK;BR,TAB */
+#define Tgc_EMlike	0x00002	/* EM,STRONG,DFN,CODE,SAMP,KBD,VAR,CITE,Q,INS,DEL,SPAN,.. */
+#define Tgc_MATHlike	0x00004	/* SUB,SUP,MATH,COMMENT */
+#define Tgc_Alike	0x00008	/* A */
+#define Tgc_formula	0x00010	/* not used until math is supported better... */
+    /* used for special structures: forms, tables,... */
+#define Tgc_TRlike	0x00020	/* TR and similar */
+#define Tgc_SELECTlike	0x00040	/* SELECT,INPUT,TEXTAREA(,...) */
+    /* structure */
+#define Tgc_FORMlike	0x00080	/* FORM itself */
+#define Tgc_Plike	0x00100	/* P,H1..H6,... structures containing text or
+				   insertion but not other structures */
+#define Tgc_DIVlike	0x00200	/* ADDRESS,FIG,BDO,NOTE,FN,DIV,CENTER;FIG
+				   structures which can contain other structures */
+#define Tgc_LIlike	0x00400	/* LH,LI,DT,DD;TH,TD structure-like, only valid
+				   within certain other structures */
+#define Tgc_ULlike	0x00800	/* UL,OL,DL,DIR,MENU;TABLE;XMP,LISTING
+				   special in some way, cannot contain (parsed)
+				   text directly */
+    /* insertions */
+#define Tgc_BRlike	0x01000	/* BR,IMG,TAB allowed in any text */
+#define Tgc_APPLETlike	0x02000	/* APPLET,OBJECT,EMBED,SCRIPT;BUTTON */
+#define Tgc_HRlike	0x04000	/* HR,MARQUEE can contain all kinds of things
+				   and/or are not allowed (?) in running text */
+#define Tgc_MAPlike	0x08000	/* MAP,AREA some specials that never contain
+				   (directly or indirectly) other things than
+				   special insertions */
+#define Tgc_outer	0x10000	/* HTML,FRAMESET,FRAME,PLAINTEXT; */
+#define Tgc_BODYlike	0x20000	/* BODY,BODYTEXT,NOFRAMES,TEXTFLOW; */
+#define Tgc_HEADstuff	0x40000	/* HEAD,BASE,STYLE,TITLE; */
+    /* special relations */
+#define Tgc_same	0x80000
+
+/*
+ * Groups for contains-data.
+ */
+#define Tgc_INLINElike	(Tgc_Alike | Tgc_APPLETlike | Tgc_BRlike | Tgc_EMlike | Tgc_FONTlike | Tgc_SELECTlike)
+#define Tgc_LISTlike	(Tgc_LIlike | Tgc_ULlike)
+#define Tgc_BLOCKlike	(Tgc_DIVlike | Tgc_LISTlike)
+
+/* Some more properties of tags (or rather, elements) and rules how
+   to deal with them. - kw */
+    typedef int TagFlags;
+
+#define Tgf_endO	0x00001	/* end tag can be Omitted */
+#define Tgf_startO	0x00002	/* start tag can be Omitted */
+#define Tgf_mafse	0x00004	/* Make Attribute-Free Start-tag End instead
+				   (if found invalid) */
+#define Tgf_strict	0x00008	/* Ignore contained invalid elements,
+				   don't pass them on; or other variant
+				   handling for some content types */
+#define Tgf_nreie	0x00010	/* Not Really Empty If Empty,
+				   used by color style code */
+#define Tgf_frecyc	0x00020	/* Pass element content on in a form that
+				   allows recycling, i.e. don't translate to
+				   output (display) character set yet (treat
+				   content similar to attribute values) */
+#define Tgf_nolyspcl	0x00040	/* Don't generate lynx special characters
+				   for soft hyphen and various spaces (nbsp,
+				   ensp,..) */
+
+/*		A tag structure describes an SGML element.
+ *		-----------------------------------------
+ *
+ *
+ *	name		is the string which comes after the tag opener "<".
+ *
+ *	attributes	points to a zero-terminated array
+ *			of attribute names.
+ *
+ *	litteral	determines how the SGML engine parses the characters
+ *			within the element.  If set, tag openers are ignored
+ *			except for that which opens a matching closing tag.
+ *
+ */
+    typedef struct _tag HTTag;
+    struct _tag {
+	const char *name;	/* The name of the tag */
+#ifdef USE_COLOR_STYLE
+	unsigned name_len;	/* The length of the name */
+#endif
+#ifdef USE_JUSTIFY_ELTS
+	BOOL can_justify;	/* justification allowed? */
+#endif
+	AttrList attributes;	/* The list of acceptable attributes */
+	int number_of_attributes;	/* Number of possible attributes */
+	const AttrType *attr_types;
+	SGMLContent contents;	/* End only on end tag @@ */
+	TagClass tagclass;
+	TagClass contains;	/* which classes of elements this one can contain directly */
+	TagClass icontains;	/* which classes of elements this one can contain indirectly */
+	TagClass contained;	/* in which classes can this tag be contained ? */
+	TagClass icontained;	/* in which classes can this tag be indirectly contained ? */
+	TagClass canclose;	/* which classes of elements can this one close
+				   if something looks wrong ? */
+	TagFlags flags;
+    };
+
+/*		DTD Information
+ *		---------------
+ *
+ *  Not the whole DTD, but all this parser uses of it.
+ */
+    typedef struct {
+	HTTag *tags;		/* Must be in strcmp order by name */
+	int number_of_tags;
+	STRING2PTR entity_names;	/* Must be in strcmp order by name */
+	size_t number_of_entities;
+	/*  "entity_names" table probably unused,
+	 *  see comments in HTMLDTD.c near the top
+	 */
+    } SGML_dtd;
+
+/*	SGML context passed to parsers
+*/
+    typedef struct _HTSGMLContext *HTSGMLContext;	/* Hidden */
+
+/*__________________________________________________________________________
+*/
+
+/*
+
+Structured Object definition
+
+   A structured object is something which can reasonably be represented
+   in SGML.  I'll rephrase that.  A structured object is an ordered
+   tree-structured arrangement of data which is representable as text.
+   The SGML parser outputs to a Structured object.  A Structured object
+   can output its contents to another Structured Object.  It's a kind of
+   typed stream.  The architecture is largely Dan Conolly's.  Elements and
+   entities are passed to the sob by number, implying a knowledge of the
+   DTD.	 Knowledge of the SGML syntax is not here, though.
+
+   Superclass: HTStream
+
+   The creation methods will vary on the type of Structured Object.
+   Maybe the callerData is enough info to pass along.
+
+ */
+    typedef struct _HTStructured HTStructured;
+
+    typedef struct _HTStructuredClass {
+
+	const char *name;	/* Just for diagnostics */
+
+	void (*_free) (HTStructured * me);
+
+	void (*_abort) (HTStructured * me, HTError e);
+
+	void (*put_character) (HTStructured * me, int ch);
+
+	void (*put_string) (HTStructured * me, const char *str);
+
+	void (*put_block) (HTStructured * me, const char *str, int len);
+
+	/* HTStreamClass ends here */
+
+	int (*start_element) (HTStructured * me, int element_number,
+			      const BOOL *attribute_present,
+			      STRING2PTR attribute_value,
+			      int charset,
+			      char **include);
+
+	int (*end_element) (HTStructured * me, int element_number,
+			    char **include);
+
+	int (*put_entity) (HTStructured * me, int entity_number);
+
+    } HTStructuredClass;
+
+/*
+  Equivalents to the following functions possibly could be generalised
+  into additional HTStructuredClass members.  For now they don't do
+  anything target-specific. - kw
+  */
+    extern BOOLEAN LYCheckForCSI(HTParentAnchor *anchor, char **url);
+    extern void LYDoCSI(char *url, const char *comment, char **csi);
+    extern BOOLEAN LYCommentHacks(HTParentAnchor *anchor, const char *comment);
+
+/*
+
+Find a Tag by Name
+
+   Returns a pointer to the tag within the DTD.
+
+ */
+    extern HTTag *SGMLFindTag(const SGML_dtd * dtd,
+			      const char *string);
+
+/*
+ * Return the current offset within the file that SGML is parsing
+ */
+    extern int SGML_offset(void);
+
+/*
+
+Create an SGML parser
+
+ */
+/*
+ * On entry,
+ *	dtd		must point to a DTD structure as defined above
+ *	callbacks	must point to user routines.
+ *	callData	is returned in callbacks transparently.
+ * On exit,
+ *		The default tag starter has been processed.
+ */
+    extern HTStream *SGML_new(const SGML_dtd * dtd,
+			      HTParentAnchor *anchor,
+			      HTStructured * target);
+
+    extern const HTStreamClass SGMLParser;
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* SGML_H */
diff --git a/WWW/Library/Implementation/UCAux.h b/WWW/Library/Implementation/UCAux.h
new file mode 100644
index 00000000..e0b93e60
--- /dev/null
+++ b/WWW/Library/Implementation/UCAux.h
@@ -0,0 +1,77 @@
+/*
+ * $LynxId: UCAux.h,v 1.18 2010/11/07 21:20:59 tom Exp $
+ */
+#ifndef UCAUX_H
+#define UCAUX_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifndef UCDEFS_H
+#include <UCDefs.h>
+#endif /* UCDEFS_H */
+
+#ifndef HTSTREAM_H
+#include <HTStream.h>
+#endif /* HTSTREAM_H */
+
+#ifndef UCMAP_H
+#include <UCMap.h>
+#endif /* UCMAP_H */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    extern BOOL UCCanUniTranslateFrom(int from);
+    extern BOOL UCCanTranslateUniTo(int to);
+    extern BOOL UCCanTranslateFromTo(int from, int to);
+    extern BOOL UCNeedNotTranslate(int from,
+				   int to);
+
+    struct _UCTransParams {
+	BOOL transp;
+	BOOL do_cjk;
+	BOOL decode_utf8;
+	BOOL output_utf8;
+	BOOL use_raw_char_in;
+	BOOL strip_raw_char_in;
+	BOOL pass_160_173_raw;
+	BOOL do_8bitraw;
+	BOOL trans_to_uni;
+	BOOL trans_C0_to_uni;
+	BOOL repl_translated_C0;
+	BOOL trans_from_uni;
+	int ucs_mode;
+    };
+    typedef struct _UCTransParams UCTransParams;
+
+    extern void UCSetTransParams(UCTransParams * pT, int cs_in,
+				 const LYUCcharset *p_in,
+				 int cs_out,
+				 const LYUCcharset *p_out);
+
+    extern void UCTransParams_clear(UCTransParams * pT);
+
+    extern void UCSetBoxChars(int cset,
+			      int *pvert_out,
+			      int *phori_out,
+			      int vert_in,
+			      int hori_in);
+
+    typedef void putc_func_t (HTStream *me,
+			      int ch);
+
+    extern BOOL UCPutUtf8_charstring(HTStream *target,
+				     putc_func_t *actions,
+				     UCode_t code);
+
+    extern BOOL UCConvertUniToUtf8(UCode_t code,
+				   char *buffer);
+
+    extern UCode_t UCGetUniFromUtf8String(char **ppuni);
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* UCAUX_H */
diff --git a/WWW/Library/Implementation/UCDefs.h b/WWW/Library/Implementation/UCDefs.h
new file mode 100644
index 00000000..7555beaa
--- /dev/null
+++ b/WWW/Library/Implementation/UCDefs.h
@@ -0,0 +1,106 @@
+/*
+ * $LynxId: UCDefs.h,v 1.17 2009/03/10 20:02:44 tom Exp $
+ *
+ * Definitions for Unicode character-translations
+ */
+
+#ifndef UCDEFS_H
+#define UCDEFS_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+typedef struct _LYUCcharset {
+    int UChndl;			/* -1 for "old" charsets, >= 0 for chartrans tables */
+
+    const char *MIMEname;
+    int enc;
+    int codepage;		/* if positive, an IBM OS/2 specific number;
+				   if negative, flag for no table translation */
+
+    /* parameters below are not used by chartrans mechanism, */
+    /* they describe some relationships against built-in Latin1 charset... */
+    int repertoire;		/* unused */
+    int codepoints;		/* subset/superset of Latin1 ? */
+    int cpranges;		/* unused, obsolete by LYlowest_eightbit;
+				   "which ranges have valid displayable chars
+				   (including nbsp and shy)" */
+    int like8859;		/* currently used for nbsp and shy only
+				   (but UCT_R_8859SPECL assumed for any UCT_R_8BIT...);
+				   "for which ranges is it like 8859-1" */
+} LYUCcharset;
+
+typedef enum {
+    UCT_ENC_7BIT,
+    UCT_ENC_8BIT,
+    UCT_ENC_8859,		/* no displayable chars in 0x80-0x9F */
+    UCT_ENC_8BIT_C0,		/* 8-bit + some chars in C0 control area */
+    UCT_ENC_MAYBE2022,
+    UCT_ENC_CJK,
+    UCT_ENC_16BIT,
+    UCT_ENC_UTF8
+} eUCT_ENC;
+
+#define UCT_REP_SUBSETOF_LAT1 0x01
+#define UCT_REP_SUPERSETOF_LAT1 0x02
+#define UCT_REP_IS_LAT1 UCT_REP_SUBSETOF_LAT1 | UCT_REP_SUPERSETOF_LAT1
+/*
+ *  Assume everything we deal with is included in the UCS2 reperoire,
+ *  so a flag for _REP_SUBSETOF_UCS2 would be redundant.
+ */
+
+/*
+ *  More general description how the code points relate to 8859-1 and UCS:
+ */
+#define UCT_CP_SUBSETOF_LAT1 0x01	/* implies UCT_CP_SUBSETOF_UCS2 */
+#define UCT_CP_SUPERSETOF_LAT1 0x02
+#define UCT_CP_SUBSETOF_UCS2 0x04
+
+#define UCT_CP_IS_LAT1 UCT_CP_SUBSETOF_LAT1 | UCT_CP_SUPERSETOF_LAT1
+
+/*
+ *  More specific bitflags for practically important code point ranges:
+ */
+#define UCT_R_LOWCTRL 0x08	/* 0x00-0x1F, for completeness */
+#define UCT_R_7BITINV 0x10	/* invariant???, displayable 7bit chars */
+#define UCT_R_7BITNAT 0x20	/* displayable 7bit, national??? */
+#define UCT_R_HIGHCTRL 0x40	/* chars in 0x80-0x9F range */
+#define UCT_R_8859SPECL 0x80	/* special chars in 8859-x sets: nbsp and shy */
+#define UCT_R_HIGH8BIT 0x100	/* rest of 0xA0-0xFF range */
+
+#define UCT_R_ASCII UCT_R_7BITINV | UCT_R_7BITNAT	/* displayable US-ASCII */
+#define UCT_R_LAT1  UCT_R_ASCII   | UCT_R_8859SPECL | UCT_R_HIGH8BIT
+#define UCT_R_8BIT  UCT_R_LAT1    | UCT_R_HIGHCTRL	/* full 8bit range */
+
+/*
+ *  For the following some comments are in HTAnchor.c.
+ */
+typedef enum {
+    UCT_STAGE_MIME,
+    UCT_STAGE_PARSER,		/* What the parser (SGML.c) gets to see */
+    UCT_STAGE_STRUCTURED,	/* What the structured stream (HTML) gets fed */
+    UCT_STAGE_HTEXT,		/* What gets fed to the HText_* functions */
+    UCT_STAGEMAX
+} eUCT_STAGE;
+
+typedef enum {
+    UCT_SETBY_NONE,
+    UCT_SETBY_DEFAULT,
+    UCT_SETBY_LINK,		/* set by A or LINK CHARSET= hint */
+    UCT_SETBY_STRUCTURED,	/* structured stream stage (HTML.c) */
+    UCT_SETBY_PARSER,		/* set by SGML parser or similar */
+    UCT_SETBY_MIME		/* set explicitly by MIME charset parameter */
+} eUCT_SETBY;
+
+typedef struct _UCStageInfo {
+    int lock;			/* by what it has been set */
+    int LYhndl;
+    LYUCcharset C;
+} UCStageInfo;
+
+typedef struct _UCAnchorInfo {
+    struct _UCStageInfo s[UCT_STAGEMAX];
+} UCAnchorInfo;
+
+#endif /* UCDEFS_H */
diff --git a/WWW/Library/Implementation/UCMap.h b/WWW/Library/Implementation/UCMap.h
new file mode 100644
index 00000000..b55fa6bd
--- /dev/null
+++ b/WWW/Library/Implementation/UCMap.h
@@ -0,0 +1,110 @@
+/*
+ * $LynxId: UCMap.h,v 1.27 2011/12/01 02:00:57 tom Exp $
+ */
+#ifndef UCMAP_H
+#define UCMAP_H
+
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    typedef enum {
+	ucError = -1,
+	ucZeroWidth = -2,
+	ucInvalidHash = -3,
+	ucNotFound = -4,
+	ucNeedMore = -10,
+	ucCannotConvert = -11,
+	ucCannotOutput = -12,
+	ucBufferTooSmall = -13,
+	ucUnknown = -14
+    } UCStatus;
+
+    typedef long UCode_t;
+
+    extern BOOL UCScanCode(UCode_t *, const char *, BOOL);
+
+    extern int UCTransUniChar(UCode_t unicode,
+			      int charset_out);
+    extern int UCTransUniCharStr(char *outbuf,
+				 int buflen,
+				 UCode_t unicode,
+				 int charset_out,
+				 int chk_single_flag);
+    extern int UCTransChar(int ch_in,
+			   int charset_in,
+			   int charset_out);
+    extern int UCReverseTransChar(int ch_out,
+				  int charset_in,
+				  int charset_out);
+    extern int UCTransCharStr(char *outbuf,
+			      int buflen,
+			      int ch_in,
+			      int charset_in,
+			      int charset_out,
+			      int chk_single_flag);
+#ifdef EXP_JAPANESEUTF8_SUPPORT
+    extern UCode_t UCTransJPToUni(char *inbuf,
+				  int buflen,
+				  int charset_in);
+#endif
+    extern UCode_t UCTransToUni(int ch_in,
+				int charset_in);
+    extern int UCGetRawUniMode_byLYhndl(int i);
+    extern int UCGetLYhndl_byMIME(const char *p);	/* returns -1 if name not recognized */
+    extern int safeUCGetLYhndl_byMIME(const char *p);	/* returns LATIN1 if name not recognized */
+
+#ifdef USE_LOCALE_CHARSET
+    extern void LYFindLocaleCharset(void);
+#endif
+
+    extern int UCLYhndl_for_unspec;
+    extern int UCLYhndl_for_unrec;
+    extern int UCLYhndl_HTFile_for_unspec;
+    extern int UCLYhndl_HTFile_for_unrec;
+
+/* easy to type: */
+    extern int LATIN1;		/* UCGetLYhndl_byMIME("iso-8859-1") */
+    extern int US_ASCII;	/* UCGetLYhndl_byMIME("us-ascii")   */
+    extern int UTF8_handle;	/* UCGetLYhndl_byMIME("utf-8")      */
+
+#undef TRANSPARENT		/* defined on Solaris in <sys/stream.h> */
+    extern int TRANSPARENT;	/* UCGetLYhndl_byMIME("x-transparent")  */
+
+/*
+In general, Lynx translates letters from document charset to display charset.
+If document charset is not specified or not recognized by Lynx, we fall back
+to different assumptions below, read also lynx.cfg for info.
+
+UCLYhndl_for_unspec -  assume this as charset for documents that don't
+                       specify a charset parameter in HTTP headers or via META
+                       this corresponds to "assume_charset"
+
+UCLYhndl_HTFile_for_unspec -  assume this as charset of local file
+                       this corresponds to "assume_local_charset"
+
+UCLYhndl_for_unrec  -  in case a charset parameter is not recognized;
+                       this corresponds to "assume_unrec_charset"
+
+UCLYhndl_HTFile_for_unrec  - the same but only for local files,
+                             currently not used.
+
+current_char_set  -	this corresponds to "display charset",
+			declared in LYCharSets.c and really important.
+
+All external charset information is available in so called MIME format.
+For internal needs Lynx uses charset handlers as integers
+from UCGetLYhndl_byMIME().  However, there is no way to recover
+from user's error in configuration file lynx.cfg or command line switches,
+those unrecognized MIME names are assumed as LATIN1 (via safeUCGetLYhndl...).
+*/
+
+#define UCTRANS_NOTFOUND (-4)
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* UCMAP_H */
diff --git a/WWW/Library/Implementation/Version.make b/WWW/Library/Implementation/Version.make
new file mode 100644
index 00000000..4b4b380f
--- /dev/null
+++ b/WWW/Library/Implementation/Version.make
@@ -0,0 +1 @@
+VC = 2.14
diff --git a/WWW/Library/Implementation/dtd_util.c b/WWW/Library/Implementation/dtd_util.c
new file mode 100644
index 00000000..4e18fdf7
--- /dev/null
+++ b/WWW/Library/Implementation/dtd_util.c
@@ -0,0 +1,1405 @@
+/*
+ * $LynxId: dtd_util.c,v 1.76 2010/09/25 00:30:23 tom Exp $
+ *
+ * Given a SGML_dtd structure, write a corresponding flat file, or "C" source.
+ * Given the flat-file, write the "C" source.
+ *
+ * TODO: use symbols for HTMLA_NORMAL, etc.
+ */
+
+#include <HTUtils.h>
+#include <HTMLDTD.h>
+#include <string.h>
+
+/*
+ * Tweaks to build standalone.
+ */
+#undef exit
+
+BOOLEAN WWW_TraceFlag = FALSE;
+FILE *TraceFP(void)
+{
+    return stderr;
+}
+
+/*
+ * Begin the actual utility.
+ */
+#define GETOPT "chl:o:ts"
+
+#define NOTE(message) fprintf(output, message "\n");
+/* *INDENT-OFF* */
+#ifdef USE_PRETTYSRC
+# define N HTMLA_NORMAL
+# define i HTMLA_ANAME
+# define h HTMLA_HREF
+# define c HTMLA_CLASS
+# define x HTMLA_AUXCLASS
+# define T(t) , t
+#else
+# define T(t)			/*nothing */
+#endif
+
+#define ATTR_TYPE(name) { #name, name##_attr_list }
+
+static const attr core_attr_list[] = {
+	{ "CLASS"         T(c) },
+	{ "ID"            T(i) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr i18n_attr_list[] = {
+	{ "DIR"           T(N) },
+	{ "LANG"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr events_attr_list[] = {
+	{ "ONCLICK"       T(N) },
+	{ "ONDBLCLICK"    T(N) },
+	{ "ONKEYDOWN"     T(N) },
+	{ "ONKEYPRESS"    T(N) },
+	{ "ONKEYUP"       T(N) },
+	{ "ONMOUSEDOWN"   T(N) },
+	{ "ONMOUSEMOVE"   T(N) },
+	{ "ONMOUSEOUT"    T(N) },
+	{ "ONMOUSEOVER"   T(N) },
+	{ "ONMOUSEUP"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr align_attr_list[] = {
+	{ "ALIGN"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr cellalign_attr_list[] = {
+	{ "ALIGN"         T(N) },
+	{ "CHAR"          T(N) },
+	{ "CHAROFF"       T(N) },
+	{ "VALIGN"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr bgcolor_attr_list[] = {
+	{ "BGCOLOR"       T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+#undef T
+/* *INDENT-ON* */
+
+static void failed(const char *s)
+{
+    perror(s);
+    exit(EXIT_FAILURE);
+}
+
+static void usage(void)
+{
+    static const char *tbl[] =
+    {
+	"Usage: dtd_util [options]",
+	"",
+	"Options:",
+	"  -c           generate C-source"
+	"  -h           generate C-header"
+	"  -l           load",
+	"  -o filename  specify output (default: stdout)",
+	"  -s           strict (HTML DTD 0)",
+	"  -t           tagsoup (HTML DTD 1)",
+    };
+    unsigned n;
+
+    for (n = 0; n < TABLESIZE(tbl); ++n) {
+	fprintf(stderr, "%s\n", tbl[n]);
+    }
+    exit(EXIT_FAILURE);
+}
+
+static const char *SGMLContent2s(SGMLContent contents)
+{
+    char *value = "?";
+
+    switch (contents) {
+    case SGML_EMPTY:
+	value = "SGML_EMPTY";
+	break;
+    case SGML_LITTERAL:
+	value = "SGML_LITTERAL";
+	break;
+    case SGML_CDATA:
+	value = "SGML_CDATA";
+	break;
+    case SGML_SCRIPT:
+	value = "SGML_SCRIPT";
+	break;
+    case SGML_RCDATA:
+	value = "SGML_RCDATA";
+	break;
+    case SGML_MIXED:
+	value = "SGML_MIXED";
+	break;
+    case SGML_ELEMENT:
+	value = "SGML_ELEMENT";
+	break;
+    case SGML_PCDATA:
+	value = "SGML_PCDATA";
+	break;
+    }
+    return value;
+}
+
+static SGMLContent s2SGMLContent(const char *value)
+{
+    static SGMLContent table[] =
+    {
+	SGML_EMPTY,
+	SGML_LITTERAL,
+	SGML_CDATA,
+	SGML_SCRIPT,
+	SGML_RCDATA,
+	SGML_MIXED,
+	SGML_ELEMENT,
+	SGML_PCDATA
+    };
+    unsigned n;
+    SGMLContent result = SGML_EMPTY;
+
+    for (n = 0; n < TABLESIZE(table); ++n) {
+	if (!strcmp(SGMLContent2s(table[n]), value)) {
+	    result = table[n];
+	    break;
+	}
+    }
+    return result;
+}
+
+static void PrintF(FILE *, int, const char *,...) GCC_PRINTFLIKE(3, 4);
+
+static void PrintF(FILE *output, int width, const char *fmt,...)
+{
+    char buffer[BUFSIZ];
+    va_list ap;
+
+    va_start(ap, fmt);
+    vsprintf(buffer, fmt, ap);
+    va_end(ap);
+
+    fprintf(output, "%-*s", width, buffer);
+}
+
+static int same_AttrList(AttrList a, AttrList b)
+{
+    int result = 1;
+
+    if (a && b) {
+	while (a->name && b->name) {
+	    if (strcmp(a->name, b->name)) {
+		result = 0;
+		break;
+	    }
+	    ++a, ++b;
+	}
+	if (a->name || b->name)
+	    result = 0;
+    } else {
+	result = 0;
+    }
+    return result;
+}
+
+static int first_attrs(const SGML_dtd * dtd, int which)
+{
+    int check;
+    int result = TRUE;
+
+    for (check = 0; check < which; ++check) {
+	if (dtd->tags[check].attributes == dtd->tags[which].attributes) {
+	    result = FALSE;
+	    break;
+	} else if (same_AttrList(dtd->tags[check].attributes,
+				 dtd->tags[which].attributes)) {
+	    result = FALSE;
+	    dtd->tags[which].attributes = dtd->tags[check].attributes;
+	    break;
+	}
+    }
+    return result;
+}
+
+static char *no_dashes(char *target, const char *source)
+{
+    int j;
+
+    for (j = 0; (target[j] = source[j]) != '\0'; ++j) {
+	if (!isalnum(target[j]))
+	    target[j] = '_';
+    }
+    return target;
+}
+
+/* the second "OBJECT" is treated specially */
+static int first_object(const SGML_dtd * dtd, int which)
+{
+    int check;
+
+    for (check = 0; check <= which; ++check) {
+	if (!strcmp(dtd->tags[check].name, "OBJECT"))
+	    break;
+    }
+    return (check == which);
+}
+
+static const char *NameOfAttrs(const SGML_dtd * dtd, int which)
+{
+    int check;
+    const char *result = dtd->tags[which].name;
+
+    for (check = 0; check < which; ++check) {
+	if (dtd->tags[check].attributes == dtd->tags[which].attributes) {
+	    result = dtd->tags[check].name;
+	    break;
+	}
+    }
+    /* special cases to match existing headers */
+    if (!strcmp(result, "ABBR"))
+	result = "GEN";
+    else if (!strcmp(result, "BLOCKQUOTE"))
+	result = "BQ";
+    else if (!strcmp(result, "BASEFONT"))
+	result = "FONT";
+    else if (!strcmp(result, "CENTER"))
+	result = "DIV";
+    else if (!strcmp(result, "DIR"))
+	result = "UL";
+    else if (!strcmp(result, "H1"))
+	result = "H";
+    else if (!strcmp(result, "TBODY"))
+	result = "TR";
+    return result;
+}
+
+static const char *DEF_name(const SGML_dtd * dtd, int which)
+{
+    const char *result = dtd->tags[which].name;
+
+    if (!strcmp(result, "OBJECT") && !first_object(dtd, which))
+	result = "OBJECT_PCDATA";
+    return result;
+}
+
+typedef struct {
+    const char *name;
+    const attr *attrs;
+    int count;
+    int which;
+} AttrInfo;
+
+static int compare_attr_types(const void *a, const void *b)
+{
+    const AttrType *p = (const AttrType *) a;
+    const AttrType *q = (const AttrType *) b;
+    int result = 0;
+
+    /* keep lowercase AttrType lists before uppercase, since latter are derived */
+    if (isupper(p->name[0]) ^ isupper(q->name[0])) {
+	if (isupper(p->name[0])) {
+	    result = 1;
+	} else {
+	    result = -1;
+	}
+    } else {
+	result = strcmp(p->name, q->name);
+    }
+    return result;
+}
+
+static int len_AttrTypes(const AttrType * data)
+{
+    int result = 0;
+
+    for (result = 0; data[result].name != 0; ++result) {
+	;
+    }
+    return result;
+}
+
+static AttrType *sorted_AttrTypes(const AttrType * source)
+{
+    AttrType *result = 0;
+    unsigned number = len_AttrTypes(source);
+
+    if (number != 0) {
+	result = typecallocn(AttrType, number + 1);
+	if (result != 0) {
+	    MemCpy(result, source, number * sizeof(*result));
+	    qsort(result, number, sizeof(*result), compare_attr_types);
+	}
+    }
+
+    return result;
+}
+
+static int compare_attr(const void *a, const void *b)
+{
+    const AttrInfo *p = (const AttrInfo *) a;
+    const AttrInfo *q = (const AttrInfo *) b;
+
+    return strcmp(p->name, q->name);
+}
+
+static int len_AttrList(AttrList data)
+{
+    int result = 0;
+
+    for (result = 0; data[result].name != 0; ++result) {
+	;
+    }
+    return result;
+}
+
+static void sort_uniq_AttrList(attr * data)
+{
+    unsigned have = len_AttrList(data);
+    unsigned j, k;
+
+    qsort(data, have, sizeof(*data), compare_attr);
+    /*
+     * Eliminate duplicates
+     */
+    for (j = 0; j < have; ++j) {
+	for (k = j; data[k].name; ++k) {
+	    if (data[k + 1].name == 0)
+		break;
+	    if (strcmp(data[j].name, data[k + 1].name)) {
+		break;
+	    }
+	}
+	data[j] = data[k];
+    }
+    memset(data + j, 0, sizeof(data[0]));
+}
+
+static attr *copy_AttrList(AttrList data)
+{
+    unsigned need = len_AttrList(data);
+    unsigned n;
+
+    attr *result = (attr *) calloc(need + 1, sizeof(attr));
+
+    for (n = 0; n < need; ++n)
+	result[n] = data[n];
+    sort_uniq_AttrList(result);
+    return result;
+}
+
+static attr *merge_AttrLists(const AttrType * data)
+{
+    const AttrType *at;
+    attr *result = 0;
+    unsigned need = 1;
+    unsigned have = 0;
+    unsigned j;
+
+    for (at = data; at->name; ++at) {
+	need += len_AttrList(at->list);
+    }
+    result = (attr *) calloc(need + 1, sizeof(attr));
+    for (at = data; at->name; ++at) {
+	if (!strcmp(at->name, "events")) {
+	    ;			/* lynx does not use events */
+	} else {
+	    for (j = 0; at->list[j].name; ++j) {
+		result[have++] = at->list[j];
+	    }
+	}
+    }
+    sort_uniq_AttrList(result);
+    return result;
+}
+
+static int clean_AttrList(attr * target, AttrList source)
+{
+    int result = 0;
+    int j, k;
+
+    for (j = 0; target[j].name != 0; ++j) {
+	for (k = 0; source[k].name != 0; ++k) {
+	    if (!strcmp(target[j].name, source[k].name)) {
+		k = j--;
+		for (;;) {
+		    target[k] = target[k + 1];
+		    if (target[k++].name == 0)
+			break;
+		}
+		++result;
+		break;
+	    }
+	}
+    }
+    return result;
+}
+
+/*
+ * Actually COUNT the number of attributes, to make it possible to edit a
+ * attribute-table in src0_HTMLDTD.h and have all of the files updated by
+ * just doing a "make sources".
+ */
+static int AttrCount(HTTag * tag)
+{
+    return len_AttrList(tag->attributes);
+}
+
+static AttrInfo *sorted_attrs(const SGML_dtd * dtd, unsigned *countp)
+{
+    int j;
+
+    AttrInfo *data = (AttrInfo *) calloc(dtd->number_of_tags, sizeof(AttrInfo));
+    unsigned count = 0;
+
+    /* get the attribute-data */
+    for (j = 0; j < dtd->number_of_tags; ++j) {
+	if (first_attrs(dtd, j)) {
+	    data[count].name = NameOfAttrs(dtd, j);
+	    data[count].attrs = dtd->tags[j].attributes;
+	    data[count].count = AttrCount(&(dtd->tags[j]));
+	    data[count].which = j;
+	    ++count;
+	}
+    }
+    /* sort the data by the name of their associated tag */
+    qsort(data, count, sizeof(*data), compare_attr);
+    *countp = count;
+    return data;
+}
+
+static void dump_src_HTTag_Defines(FILE *output, const SGML_dtd * dtd, int which)
+{
+    HTTag *tag = &(dtd->tags[which]);
+
+#define myFMT "0x%05X"
+    fprintf(output,
+	    "#define T_%-13s "
+	    myFMT "," myFMT "," myFMT "," myFMT "," myFMT "," myFMT
+	    "," myFMT "\n",
+	    DEF_name(dtd, which),
+	    tag->tagclass,
+	    tag->contains,
+	    tag->icontains,
+	    tag->contained,
+	    tag->icontained,
+	    tag->canclose,
+	    tag->flags);
+}
+
+static void dump_AttrItem(FILE *output, const attr * data)
+{
+    char buffer[BUFSIZ];
+    char pretty = 'N';
+
+    sprintf(buffer, "\"%s\"", data->name);
+#ifdef USE_PRETTYSRC
+    switch (data->type) {
+    case HTMLA_NORMAL:
+	pretty = 'N';
+	break;
+    case HTMLA_ANAME:
+	pretty = 'i';
+	break;
+    case HTMLA_HREF:
+	pretty = 'h';
+	break;
+    case HTMLA_CLASS:
+	pretty = 'c';
+	break;
+    case HTMLA_AUXCLASS:
+	pretty = 'x';
+	break;
+    }
+#endif
+    fprintf(output, "\t{ %-15s T(%c) },\n", buffer, pretty);
+}
+
+static void dump_AttrItem0(FILE *output)
+{
+    fprintf(output, "\t{ 0               T(N) }\t/* Terminate list */\n");
+}
+
+static void dump_src_AttrType(FILE *output, const char *name, AttrList data, const char **from)
+{
+    int n;
+
+    fprintf(output, "static const attr %s_attr_list[] = {\n", name);
+    if (data != 0) {
+	for (n = 0; data[n].name != 0; ++n) {
+	    dump_AttrItem(output, data + n);
+	}
+    }
+    fprintf(output, "\t{ 0               T(N) }	/* Terminate list */\n");
+    fprintf(output, "};\n");
+    NOTE("");
+    fprintf(output, "static const AttrType %s_attr_type[] = {\n", name);
+    if (from != 0) {
+	while (*from != 0) {
+	    fprintf(output, "\t{ ATTR_TYPE(%s) },\n", *from);
+	    ++from;
+	}
+    } else {
+	fprintf(output, "\t{ ATTR_TYPE(%s) },\n", name);
+    }
+    fprintf(output, "\t{ 0, 0 },\n");
+    fprintf(output, "};\n");
+    NOTE("");
+}
+
+static void dump_src_HTTag_Attrs(FILE *output, const SGML_dtd * dtd, int which)
+{
+    HTTag *tag = &(dtd->tags[which]);
+    attr *list = merge_AttrLists(tag->attr_types);
+    char buffer[BUFSIZ];
+    int n;
+    int limit = len_AttrList(list);
+
+    sprintf(buffer, "static const attr %s_attr[] = {", NameOfAttrs(dtd, which));
+    fprintf(output,
+	    "%-40s/* %s attributes */\n", buffer, tag->name);
+    for (n = 0; n < limit; ++n) {
+	dump_AttrItem(output, list + n);
+    }
+    dump_AttrItem0(output);
+    fprintf(output, "};\n");
+    NOTE("");
+    free(list);
+}
+
+static void dump_src_HTTag(FILE *output, const SGML_dtd * dtd, int which)
+{
+    HTTag *tag = &(dtd->tags[which]);
+    char *P_macro = "P";
+
+#ifdef USE_JUSTIFY_ELTS
+    if (!tag->can_justify)
+	P_macro = "P0";
+#endif
+    PrintF(output, 19, " { %s(%s),", P_macro, tag->name);
+    PrintF(output, 24, "ATTR_DATA(%s), ", NameOfAttrs(dtd, which));
+    PrintF(output, 14, "%s,", SGMLContent2s(tag->contents));
+    fprintf(output, "T_%s", DEF_name(dtd, which));
+    fprintf(output, "},\n");
+}
+
+static void dump_source(FILE *output, const SGML_dtd * dtd, int dtd_version)
+{
+    static AttrType generic_types[] =
+    {
+	ATTR_TYPE(core),
+	ATTR_TYPE(i18n),
+	ATTR_TYPE(events),
+	ATTR_TYPE(align),
+	ATTR_TYPE(cellalign),
+	ATTR_TYPE(bgcolor),
+	{0, 0}
+    };
+    AttrType *gt;
+
+    const char *marker = "src_HTMLDTD_H";
+    int j;
+
+    unsigned count = 0;
+    AttrInfo *data = sorted_attrs(dtd, &count);
+
+    fprintf(output, "/* %cLynxId%c */\n", '$', '$');
+    fprintf(output, "#ifndef %s%d\n", marker, dtd_version);
+    fprintf(output, "#define %s%d 1\n\n", marker, dtd_version);
+
+    /*
+     * If we ifdef this for once, and make the table names distinct, we can
+     * #include the strict- and tagsoup-output directly in HTMLDTD.c
+     */
+    NOTE("#ifndef once_HTMLDTD");
+    NOTE("#define once_HTMLDTD 1");
+    NOTE("");
+
+    /* construct TagClass-define's */
+    for (j = 0; j <= dtd->number_of_tags; ++j) {
+	dump_src_HTTag_Defines(output, dtd, j);
+    }
+    NOTE("#define T__UNREC_	0x00000,0x00000,0x00000,0x00000,0x00000,0x00000,0x00000");
+
+    /* construct attribute-tables */
+    NOTE("#ifdef USE_PRETTYSRC");
+    NOTE("# define N HTMLA_NORMAL");
+    NOTE("# define i HTMLA_ANAME");
+    NOTE("# define h HTMLA_HREF");
+    NOTE("# define c HTMLA_CLASS");
+    NOTE("# define x HTMLA_AUXCLASS");
+    NOTE("# define T(t) , t");
+    NOTE("#else");
+    NOTE("# define T(t)			/*nothing */");
+    NOTE("#endif");
+    NOTE("/* *INDENT-OFF* */");
+    NOTE("");
+    NOTE("#define ATTR_TYPE(name) #name, name##_attr_list");
+    NOTE("");
+    NOTE("/* generic attributes, used in different tags */");
+    for (gt = generic_types; gt->name != 0; ++gt) {
+	dump_src_AttrType(output, gt->name, gt->list, 0);
+    }
+    NOTE("");
+    NOTE("/* tables defining attributes per-tag in terms of generic attributes (editable) */");
+    for (j = 0; j < (int) count; ++j) {
+	int which = data[j].which;
+
+	if (first_attrs(dtd, which)) {
+	    HTTag *tag = &(dtd->tags[which]);
+	    const AttrType *types = tag->attr_types;
+	    const char *name = NameOfAttrs(dtd, which);
+	    attr *list = 0;
+	    const char *from_attr[10];
+	    int from_size = 0;
+
+	    while (types->name != 0) {
+		from_attr[from_size++] = types->name;
+		if (!strcmp(types->name, name)) {
+		    list = copy_AttrList(types->list);
+		    for (gt = generic_types; gt->name != 0; ++gt) {
+			if (clean_AttrList(list, gt->list)) {
+			    int k;
+			    int found = 0;
+
+			    for (k = 0; k < from_size; ++k) {
+				if (!strcmp(from_attr[k], gt->name)) {
+				    found = 1;
+				    break;
+				}
+			    }
+			    if (!found)
+				from_attr[from_size++] = gt->name;
+			    break;
+			}
+		    }
+		}
+		++types;
+	    }
+	    from_attr[from_size] = 0;
+
+	    if (list != 0) {
+		dump_src_AttrType(output, name, list, from_attr);
+		free(list);
+	    }
+	}
+    }
+    NOTE("");
+    NOTE("/* attribute lists for the runtime (generated by dtd_util) */");
+    for (j = 0; j < (int) count; ++j) {
+	dump_src_HTTag_Attrs(output, dtd, data[j].which);
+    }
+    NOTE("/* *INDENT-ON* */");
+    NOTE("");
+    NOTE("/* justification-flags */");
+    NOTE("#undef N");
+    NOTE("#undef i");
+    NOTE("#undef h");
+    NOTE("#undef c");
+    NOTE("#undef x");
+    NOTE("");
+    NOTE("#undef T");
+    NOTE("");
+    NOTE("/* tag-names */");
+    for (j = 0; j <= dtd->number_of_tags; ++j) {
+	fprintf(output, "#undef %s\n", DEF_name(dtd, j));
+    }
+    NOTE("");
+    NOTE("/* these definitions are used in the tags-tables */");
+    NOTE("#undef P");
+    NOTE("#undef P_");
+    NOTE("#ifdef USE_COLOR_STYLE");
+    NOTE("#define P_(x) #x, (sizeof #x) -1");
+    NOTE("#define NULL_HTTag_ NULL, 0");
+    NOTE("#else");
+    NOTE("#define P_(x) #x");
+    NOTE("#define NULL_HTTag_ NULL");
+    NOTE("#endif");
+    NOTE("");
+    NOTE("#ifdef USE_JUSTIFY_ELTS");
+    NOTE("#define P(x) P_(x), 1");
+    NOTE("#define P0(x) P_(x), 0");
+    NOTE("#define NULL_HTTag NULL_HTTag_,0");
+    NOTE("#else");
+    NOTE("#define P(x) P_(x)");
+    NOTE("#define P0(x) P_(x)");
+    NOTE("#define NULL_HTTag NULL_HTTag_");
+    NOTE("#endif");
+    NOTE("");
+    NOTE("#define ATTR_DATA(name) name##_attr, HTML_##name##_ATTRIBUTES, name##_attr_type");
+    NOTE("");
+    NOTE("#endif /* once_HTMLDTD */");
+    NOTE("/* *INDENT-OFF* */");
+
+    /* construct the tags table */
+    fprintf(output,
+	    "static const HTTag tags_table%d[HTML_ALL_ELEMENTS] = {\n",
+	    dtd_version);
+    for (j = 0; j <= dtd->number_of_tags; ++j) {
+	if (j == dtd->number_of_tags) {
+	    NOTE("/* additional (alternative variants), not counted in HTML_ELEMENTS: */");
+	    NOTE("/* This one will be used as a temporary substitute within the parser when");
+	    NOTE("   it has been signalled to parse OBJECT content as MIXED. - kw */");
+	}
+	dump_src_HTTag(output, dtd, j);
+    }
+    fprintf(output, "};\n");
+
+    NOTE("/* *INDENT-ON* */");
+    NOTE("");
+    fprintf(output, "#endif /* %s%d */\n", marker, dtd_version);
+
+    free(data);
+}
+
+static void dump_hdr_attr(FILE *output, AttrInfo * data)
+{
+    int j;
+    char buffer[BUFSIZ];
+
+    for (j = 0; j < data->count; ++j) {
+	PrintF(output, 33, "#define HTML_%s_%s",
+	       data->name,
+	       no_dashes(buffer, data->attrs[j].name));
+	fprintf(output, "%2d\n", j);
+    }
+    PrintF(output, 33, "#define HTML_%s_ATTRIBUTES", data->name);
+    fprintf(output, "%2d\n", data->count);
+    fprintf(output, "\n");
+}
+
+static void dump_header(FILE *output, const SGML_dtd * dtd)
+{
+    const char *marker = "hdr_HTMLDTD_H";
+    int j;
+
+    unsigned count = 0;
+    AttrInfo *data = sorted_attrs(dtd, &count);
+
+    fprintf(output, "/* %cLynxId%c */\n", '$', '$');
+    fprintf(output, "#ifndef %s\n", marker);
+    fprintf(output, "#define %s 1\n\n", marker);
+
+    NOTE("#ifdef __cplusplus");
+    NOTE("extern \"C\" {");
+    NOTE("#endif");
+
+    NOTE("/*");
+    NOTE("");
+    NOTE("   Element Numbers");
+    NOTE("");
+    NOTE("   Must Match all tables by element!");
+    NOTE("   These include tables in HTMLDTD.c");
+    NOTE("   and code in HTML.c.");
+    NOTE("");
+    NOTE(" */");
+
+    fprintf(output, "    typedef enum {\n");
+    for (j = 0; j < dtd->number_of_tags; ++j) {
+	fprintf(output, "\tHTML_%s,\n", dtd->tags[j].name);
+    }
+    NOTE("\tHTML_ALT_OBJECT");
+    NOTE("    } HTMLElement;\n");
+    NOTE("/* Notes: HTML.c uses a different extension of the");
+    NOTE("          HTML_ELEMENTS space privately, see");
+    NOTE("          HTNestedList.h.");
+    NOTE("");
+    NOTE("   Do NOT replace HTML_ELEMENTS with");
+    NOTE("   TABLESIZE(mumble_dtd.tags).");
+    NOTE("");
+    NOTE("   Keep the following defines in synch with");
+    NOTE("   the above enum!");
+    NOTE(" */");
+    NOTE("");
+    NOTE("/* # of elements generally visible to Lynx code */");
+    fprintf(output, "#define HTML_ELEMENTS %d\n", dtd->number_of_tags);
+    NOTE("");
+    NOTE("/* # of elements visible to SGML parser */");
+    fprintf(output, "#define HTML_ALL_ELEMENTS %d\n", dtd->number_of_tags + 1);
+    NOTE("");
+    NOTE("/*");
+    NOTE("");
+    NOTE("   Attribute numbers");
+    NOTE("");
+    NOTE("   Identifier is HTML_<element>_<attribute>.");
+    NOTE("   These must match the tables in HTML.c!");
+    NOTE("");
+    NOTE(" */");
+
+    /* output the sorted list */
+    for (j = 0; j < (int) count; ++j) {
+	dump_hdr_attr(output, data + j);
+    }
+    free(data);
+
+    NOTE("#ifdef __cplusplus");
+    NOTE("}");
+    NOTE("#endif");
+
+    fprintf(output, "#endif\t\t\t\t/* %s */\n", marker);
+}
+
+#define FMT_NUM_ATTRS "%d attributes:\n"
+#define FMT_ONE_ATTR  "%d:%d:%s\n"
+#define NUM_ONE_ATTR  3
+
+static void dump_flat_attrs(FILE *output,
+			    const attr * attributes,
+			    int number_of_attributes)
+{
+    int n;
+
+    fprintf(output, "\t\t" FMT_NUM_ATTRS, number_of_attributes);
+    for (n = 0; n < number_of_attributes; ++n) {
+	fprintf(output, "\t\t\t" FMT_ONE_ATTR, n,
+#ifdef USE_PRETTYSRC
+		attributes[n].type,
+#else
+		0,		/* need placeholder for source-compat */
+#endif
+		attributes[n].name
+	    );
+    }
+}
+
+static void dump_flat_attr_types(FILE *output, const AttrType * attr_types)
+{
+    const AttrType *p = sorted_AttrTypes(attr_types);
+    int number = len_AttrTypes(attr_types);
+
+    fprintf(output, "\t\t%d attr_types\n", number);
+
+    if (p != 0) {
+	while (p->name != 0) {
+	    fprintf(output, "\t\t\t%s\n", p->name);
+	    ++p;
+	}
+    }
+}
+
+static void dump_flat_SGMLContent(FILE *output, const char *name, SGMLContent contents)
+{
+    fprintf(output, "\t\t%s: %s\n", name, SGMLContent2s(contents));
+}
+
+#define DUMP(name) \
+	if (theClass & Tgc_##name) {\
+	    fprintf(output, " " #name); \
+	    theClass &= ~(Tgc_##name); \
+	}
+
+static void dump_flat_TagClass(FILE *output, const char *name, TagClass theClass)
+{
+    fprintf(output, "\t\t%s:", name);
+    DUMP(FONTlike);
+    DUMP(EMlike);
+    DUMP(MATHlike);
+    DUMP(Alike);
+    DUMP(formula);
+    DUMP(TRlike);
+    DUMP(SELECTlike);
+    DUMP(FORMlike);
+    DUMP(Plike);
+    DUMP(DIVlike);
+    DUMP(LIlike);
+    DUMP(ULlike);
+    DUMP(BRlike);
+    DUMP(APPLETlike);
+    DUMP(HRlike);
+    DUMP(MAPlike);
+    DUMP(outer);
+    DUMP(BODYlike);
+    DUMP(HEADstuff);
+    DUMP(same);
+    if (theClass)
+	fprintf(output, " OOPS:%#x", theClass);
+    fprintf(output, "\n");
+}
+
+#undef DUMP
+
+#define DUMP(name) \
+	if (theFlags & Tgf_##name) {\
+	    fprintf(output, " " #name); \
+	    theFlags &= ~(Tgf_##name); \
+	}
+
+static void dump_flat_TagFlags(FILE *output, const char *name, TagFlags theFlags)
+{
+    fprintf(output, "\t\t%s:", name);
+    DUMP(endO);
+    DUMP(startO);
+    DUMP(mafse);
+    DUMP(strict);
+    DUMP(nreie);
+    DUMP(frecyc);
+    DUMP(nolyspcl);
+    if (theFlags)
+	fprintf(output, " OOPS:%#x", theFlags);
+    fprintf(output, "\n");
+}
+
+#undef DUMP
+
+static void dump_flat_HTTag(FILE *output, unsigned n, HTTag * tag)
+{
+    fprintf(output, "\t%u:%s\n", n, tag->name);
+#ifdef USE_JUSTIFY_ELTS
+    fprintf(output, "\t\t%s\n", tag->can_justify ? "justify" : "nojustify");
+#endif
+    dump_flat_attrs(output, tag->attributes, AttrCount(tag));
+    dump_flat_attr_types(output, tag->attr_types);
+    dump_flat_SGMLContent(output, "contents", tag->contents);
+    dump_flat_TagClass(output, "tagclass", tag->tagclass);
+    dump_flat_TagClass(output, "contains", tag->contains);
+    dump_flat_TagClass(output, "icontains", tag->icontains);
+    dump_flat_TagClass(output, "contained", tag->contained);
+    dump_flat_TagClass(output, "icontained", tag->icontained);
+    dump_flat_TagClass(output, "canclose", tag->canclose);
+    dump_flat_TagFlags(output, "flags", tag->flags);
+}
+
+static int count_attr_types(AttrType * attr_types, HTTag * tag)
+{
+    int count = 0;
+    const AttrType *p;
+    AttrType *q;
+
+    if ((p = tag->attr_types) != 0) {
+	while (p->name != 0) {
+	    if ((q = attr_types) != 0) {
+		while (q->name != 0) {
+		    if (!strcmp(q->name, p->name)) {
+			--count;
+			break;
+		    }
+		    ++q;
+		}
+		*q = *p;
+	    }
+	    ++count;
+	    ++p;
+	}
+    }
+    return count;
+}
+
+static void dump_flatfile(FILE *output, const SGML_dtd * dtd)
+{
+    AttrType *attr_types = 0;
+    int pass;
+    unsigned count = 0;
+    unsigned n;
+
+    /* merge all of the attr_types data */
+    for (pass = 0; pass < 2; ++pass) {
+	for (n = 0; (int) n < dtd->number_of_tags; ++n) {
+	    count += count_attr_types(attr_types, &(dtd->tags[n]));
+	}
+	if (pass == 0) {
+	    attr_types = typecallocn(AttrType, count + 1);
+	    count = 0;
+	} else {
+	    count = len_AttrTypes(attr_types);
+	    qsort(attr_types, count, sizeof(*attr_types), compare_attr_types);
+	    fprintf(output, "%d attr_types\n", count);
+	    for (n = 0; n < count; ++n) {
+		fprintf(output, "\t%d:%s\n", n, attr_types[n].name);
+		dump_flat_attrs(output, attr_types[n].list,
+				len_AttrList(attr_types[n].list));
+	    }
+	}
+    }
+
+    fprintf(output, "%d tags\n", dtd->number_of_tags);
+    for (n = 0; (int) n < dtd->number_of_tags; ++n) {
+	dump_flat_HTTag(output, n, &(dtd->tags[n]));
+    }
+#if 0
+    fprintf(output, "%d entities\n", dtd->number_of_entities);
+    for (n = 0; n < dtd->number_of_entities; ++n) {
+    }
+#endif
+}
+
+static char *get_line(FILE *input)
+{
+    char temp[1024];
+    char *result = 0;
+
+    if (fgets(temp, (int) sizeof(temp), input) != 0) {
+	result = strdup(temp);
+    }
+    return result;
+}
+
+#define LOAD(name) \
+	if (!strcmp(data, #name)) {\
+	    *theClass |= Tgc_##name; \
+	    continue; \
+	}
+
+static int load_flat_TagClass(FILE *input, const char *name, TagClass * theClass)
+{
+    char prefix[80];
+    char *next = get_line(input);
+    char *data;
+    int result = 0;
+
+    *theClass = 0;
+    if (next != 0) {
+	sprintf(prefix, "\t\t%s:", name);
+	data = strtok(next, "\n ");
+
+	if (data != 0 && !strcmp(data, prefix)) {
+	    result = 1;
+
+	    while ((data = strtok(NULL, "\n ")) != 0) {
+
+		LOAD(FONTlike);
+		LOAD(EMlike);
+		LOAD(MATHlike);
+		LOAD(Alike);
+		LOAD(formula);
+		LOAD(TRlike);
+		LOAD(SELECTlike);
+		LOAD(FORMlike);
+		LOAD(Plike);
+		LOAD(DIVlike);
+		LOAD(LIlike);
+		LOAD(ULlike);
+		LOAD(BRlike);
+		LOAD(APPLETlike);
+		LOAD(HRlike);
+		LOAD(MAPlike);
+		LOAD(outer);
+		LOAD(BODYlike);
+		LOAD(HEADstuff);
+		LOAD(same);
+
+		fprintf(stderr, "Unexpected TagClass '%s'\n", data);
+		result = 0;
+		break;
+	    }
+	} else if (data) {
+	    fprintf(stderr, "load_flat_TagClass: '%s' vs '%s'\n", data, prefix);
+	}
+	free(next);
+    } else {
+	fprintf(stderr, "Did not find contents\n");
+    }
+    return result;
+}
+
+#undef LOAD
+
+#define LOAD(name) \
+	if (!strcmp(data, #name)) {\
+	    *flags |= Tgf_##name; \
+	    continue; \
+	}
+
+static int load_flat_TagFlags(FILE *input, const char *name, TagFlags * flags)
+{
+    char prefix[80];
+    char *next = get_line(input);
+    char *data;
+    int result = 0;
+
+    *flags = 0;
+    if (next != 0) {
+	sprintf(prefix, "\t\t%s:", name);
+	data = strtok(next, "\n ");
+
+	if (data != 0 && !strcmp(data, prefix)) {
+	    result = 1;
+
+	    while ((data = strtok(NULL, "\n ")) != 0) {
+
+		LOAD(endO);
+		LOAD(startO);
+		LOAD(mafse);
+		LOAD(strict);
+		LOAD(nreie);
+		LOAD(frecyc);
+		LOAD(nolyspcl);
+
+		fprintf(stderr, "Unexpected TagFlag '%s'\n", data);
+		result = 0;
+		break;
+	    }
+	} else if (data) {
+	    fprintf(stderr, "load_flat_TagFlags: '%s' vs '%s'\n", data, prefix);
+	}
+	free(next);
+    }
+    return result;
+}
+
+#undef LOAD
+
+static int load_flat_AttrList(FILE *input, AttrList * attrs, int *length)
+{
+    attr *attributes;
+    int j, jcmp, code;
+    int result = 1;
+    char name[1024];
+
+#ifdef USE_PRETTYSRC
+    int atype;
+#endif
+
+    if (fscanf(input, FMT_NUM_ATTRS, length) == 1
+	&& *length > 0
+	&& (attributes = typecallocn(attr, (size_t) (*length + 1))) != 0) {
+	*attrs = attributes;
+	for (j = 0; j < *length; ++j) {
+	    code = fscanf(input, FMT_ONE_ATTR,
+			  &jcmp,
+			  &atype,
+			  name
+		);
+	    if (code == NUM_ONE_ATTR && (j == jcmp)) {
+		attributes[j].name = strdup(name);
+#ifdef USE_PRETTYSRC
+		attributes[j].type = atype;
+#endif
+	    } else {
+		fprintf(stderr, "Did not find attributes\n");
+		result = 0;
+		break;
+	    }
+	}
+	if (*length > 1)
+	    qsort(attributes, *length, sizeof(attributes[0]), compare_attr);
+    }
+    return result;
+}
+
+static int load_flat_HTTag(FILE *input, unsigned nref, HTTag * tag, AttrType * allTypes)
+{
+    int result = 0;
+    unsigned ncmp = 0;
+    char name[1024];
+    int code;
+    int j;
+
+    code = fscanf(input, "%d:%s\n", &ncmp, name);
+    if (code == 2 && (nref == ncmp)) {
+	result = 1;
+	tag->name = strdup(name);
+#ifdef USE_COLOR_STYLE
+	tag->name_len = strlen(tag->name);
+#endif
+#ifdef USE_JUSTIFY_ELTS
+	if (fscanf(input, "%s\n", name) == 1) {
+	    tag->can_justify = !strcmp(name, "justify");
+	} else {
+	    fprintf(stderr, "Did not find can_justify\n");
+	    result = 0;
+	}
+#endif
+	if (result) {
+	    result = load_flat_AttrList(input, &(tag->attributes), &(tag->number_of_attributes));
+	}
+	if (result) {
+	    AttrType *myTypes;
+	    int k, count;
+	    char *next = get_line(input);
+
+	    if (next != 0
+		&& sscanf(next, "%d attr_types\n", &count)
+		&& (myTypes = typecallocn(AttrType, (size_t) (count + 1)))
+		!= 0) {
+		tag->attr_types = myTypes;
+		for (k = 0; k < count; ++k) {
+		    next = get_line(input);
+		    if (next != 0
+			&& sscanf(next, "%s\n", name)) {
+			for (j = 0; allTypes[j].name != 0; ++j) {
+			    if (!strcmp(allTypes[j].name, name)) {
+				myTypes[k].name = strdup(name);
+				myTypes[k].list = allTypes[j].list;
+				break;
+			    }
+			}
+		    } else {
+			result = 0;
+			break;
+		    }
+		}
+		if (result && count > 1)
+		    qsort(myTypes, count, sizeof(myTypes[0]), compare_attr_types);
+	    }
+	}
+	if (result) {
+	    char *next = get_line(input);
+
+	    if (next != 0
+		&& sscanf(next, "\t\tcontents: %s\n", name)) {
+		tag->contents = s2SGMLContent(name);
+		free(next);
+	    } else {
+		fprintf(stderr, "Did not find contents\n");
+		result = 0;
+	    }
+	}
+	if (result) {
+	    result = load_flat_TagClass(input, "tagclass", &(tag->tagclass));
+	}
+	if (result) {
+	    result = load_flat_TagClass(input, "contains", &(tag->contains));
+	}
+	if (result) {
+	    result = load_flat_TagClass(input, "icontains", &(tag->icontains));
+	}
+	if (result) {
+	    result = load_flat_TagClass(input, "contained", &(tag->contained));
+	}
+	if (result) {
+	    result = load_flat_TagClass(input, "icontained", &(tag->icontained));
+	}
+	if (result) {
+	    result = load_flat_TagClass(input, "canclose", &(tag->canclose));
+	}
+	if (result) {
+	    result = load_flat_TagFlags(input, "flags", &(tag->flags));
+	}
+    } else {
+	fprintf(stderr, "load_flat_HTTag error\n");
+    }
+    return result;
+}
+
+static int load_flat_AttrType(FILE *input, AttrType * types, size_t ncmp)
+{
+    int result = 0;
+    int ntst;
+    char name[1024];
+
+    if (fscanf(input, "%d:%s\n", &ntst, name) == 2
+	&& (ntst == (int) ncmp)) {
+	result = 1;
+	types->name = strdup(name);
+	if (!load_flat_AttrList(input, &(types->list), &ntst))
+	    result = 0;
+    }
+    return result;
+}
+
+static SGML_dtd *load_flatfile(FILE *input)
+{
+    AttrType *attr_types = 0;
+    SGML_dtd *result = 0;
+    size_t n;
+    size_t number_of_attrs = 0;
+    size_t number_of_tags = 0;
+    HTTag *tag;
+    int code;
+
+    code = fscanf(input, "%d attr_types\n", &number_of_attrs);
+    if (code
+	&& number_of_attrs
+	&& (attr_types = typecallocn(AttrType, number_of_attrs + 1)) != 0) {
+	for (n = 0; n < number_of_attrs; ++n) {
+	    if (!load_flat_AttrType(input, attr_types + n, n)) {
+		break;
+	    }
+	}
+    }
+
+    code = fscanf(input, "%d tags\n", &number_of_tags);
+    if (code == 1) {
+	if ((result = typecalloc(SGML_dtd)) != 0
+	    && (result->tags = typecallocn(HTTag, (number_of_tags + 2))) != 0) {
+	    for (n = 0; n < number_of_tags; ++n) {
+		if (load_flat_HTTag(input, n, &(result->tags[n]), attr_types)) {
+		    result->number_of_tags = (n + 1);
+		} else {
+		    break;
+		}
+	    }
+	    tag = 0;
+	    for (n = 0; n < number_of_tags; ++n) {
+		if (result->tags[n].name != 0
+		    && !strcmp(result->tags[n].name, "OBJECT")) {
+		    tag = result->tags + number_of_tags;
+		    *tag = result->tags[n];
+		    tag->contents = SGML_MIXED;
+		    tag->flags = Tgf_strict;
+		    break;
+		}
+	    }
+	    if (tag == 0) {
+		fprintf(stderr, "Did not find OBJECT tag\n");
+		result = 0;
+	    }
+	}
+    }
+    return result;
+}
+
+int main(int argc, char *argv[])
+{
+    const SGML_dtd *the_dtd = &HTML_dtd;
+    int ch;
+    int dtd_version = 0;
+    int c_option = FALSE;
+    int h_option = FALSE;
+    int l_option = FALSE;
+    FILE *input = stdin;
+    FILE *output = stdout;
+
+    while ((ch = getopt(argc, argv, GETOPT)) != -1) {
+	switch (ch) {
+	case 'c':
+	    c_option = TRUE;
+	    break;
+	case 'h':
+	    h_option = TRUE;
+	    break;
+	case 'l':
+	    l_option = TRUE;
+	    input = fopen(optarg, "r");
+	    if (input == 0)
+		failed(optarg);
+	    break;
+	case 'o':
+	    output = fopen(optarg, "w");
+	    if (output == 0)
+		failed(optarg);
+	    break;
+	case 't':
+	    dtd_version = 1;
+	    break;
+	case 's':
+	    dtd_version = 0;
+	    break;
+	default:
+	    usage();
+	}
+    }
+
+    HTSwitchDTD(dtd_version);
+    if (l_option)
+	the_dtd = load_flatfile(input);
+
+    if (the_dtd != 0) {
+	if (c_option)
+	    dump_source(output, the_dtd, dtd_version);
+	if (h_option)
+	    dump_header(output, the_dtd);
+	if (!c_option && !h_option)
+	    dump_flatfile(output, the_dtd);
+    }
+
+    return EXIT_SUCCESS;
+}
diff --git a/WWW/Library/Implementation/hdr_HTMLDTD.h b/WWW/Library/Implementation/hdr_HTMLDTD.h
new file mode 100644
index 00000000..9e4d47b0
--- /dev/null
+++ b/WWW/Library/Implementation/hdr_HTMLDTD.h
@@ -0,0 +1,980 @@
+/* $LynxId: hdr_HTMLDTD.h,v 1.22 2011/10/07 00:54:36 Kihara.Hideto Exp $ */
+#ifndef hdr_HTMLDTD_H
+#define hdr_HTMLDTD_H 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+
+   Element Numbers
+
+   Must Match all tables by element!
+   These include tables in HTMLDTD.c
+   and code in HTML.c.
+
+ */
+    typedef enum {
+	HTML_A,
+	HTML_ABBR,
+	HTML_ACRONYM,
+	HTML_ADDRESS,
+	HTML_APPLET,
+	HTML_AREA,
+	HTML_AU,
+	HTML_AUTHOR,
+	HTML_B,
+	HTML_BANNER,
+	HTML_BASE,
+	HTML_BASEFONT,
+	HTML_BDO,
+	HTML_BGSOUND,
+	HTML_BIG,
+	HTML_BLINK,
+	HTML_BLOCKQUOTE,
+	HTML_BODY,
+	HTML_BODYTEXT,
+	HTML_BQ,
+	HTML_BR,
+	HTML_BUTTON,
+	HTML_CAPTION,
+	HTML_CENTER,
+	HTML_CITE,
+	HTML_CODE,
+	HTML_COL,
+	HTML_COLGROUP,
+	HTML_COMMENT,
+	HTML_CREDIT,
+	HTML_DD,
+	HTML_DEL,
+	HTML_DFN,
+	HTML_DIR,
+	HTML_DIV,
+	HTML_DL,
+	HTML_DLC,
+	HTML_DT,
+	HTML_EM,
+	HTML_EMBED,
+	HTML_FIELDSET,
+	HTML_FIG,
+	HTML_FN,
+	HTML_FONT,
+	HTML_FORM,
+	HTML_FRAME,
+	HTML_FRAMESET,
+	HTML_H1,
+	HTML_H2,
+	HTML_H3,
+	HTML_H4,
+	HTML_H5,
+	HTML_H6,
+	HTML_HEAD,
+	HTML_HR,
+	HTML_HTML,
+	HTML_HY,
+	HTML_I,
+	HTML_IFRAME,
+	HTML_IMG,
+	HTML_INPUT,
+	HTML_INS,
+	HTML_ISINDEX,
+	HTML_KBD,
+	HTML_KEYGEN,
+	HTML_LABEL,
+	HTML_LEGEND,
+	HTML_LH,
+	HTML_LI,
+	HTML_LINK,
+	HTML_LISTING,
+	HTML_MAP,
+	HTML_MARQUEE,
+	HTML_MATH,
+	HTML_MENU,
+	HTML_META,
+	HTML_NEXTID,
+	HTML_NOFRAMES,
+	HTML_NOTE,
+	HTML_OBJECT,
+	HTML_OL,
+	HTML_OPTION,
+	HTML_OVERLAY,
+	HTML_P,
+	HTML_PARAM,
+	HTML_PLAINTEXT,
+	HTML_PRE,
+	HTML_Q,
+	HTML_S,
+	HTML_SAMP,
+	HTML_SCRIPT,
+	HTML_SELECT,
+	HTML_SHY,
+	HTML_SMALL,
+	HTML_SPAN,
+	HTML_SPOT,
+	HTML_STRIKE,
+	HTML_STRONG,
+	HTML_STYLE,
+	HTML_SUB,
+	HTML_SUP,
+	HTML_TAB,
+	HTML_TABLE,
+	HTML_TBODY,
+	HTML_TD,
+	HTML_TEXTAREA,
+	HTML_TEXTFLOW,
+	HTML_TFOOT,
+	HTML_TH,
+	HTML_THEAD,
+	HTML_TITLE,
+	HTML_TR,
+	HTML_TT,
+	HTML_U,
+	HTML_UL,
+	HTML_VAR,
+	HTML_WBR,
+	HTML_XMP,
+	HTML_ALT_OBJECT
+    } HTMLElement;
+
+/* Notes: HTML.c uses a different extension of the
+          HTML_ELEMENTS space privately, see
+          HTNestedList.h.
+
+   Do NOT replace HTML_ELEMENTS with
+   TABLESIZE(mumble_dtd.tags).
+
+   Keep the following defines in synch with
+   the above enum!
+ */
+
+/* # of elements generally visible to Lynx code */
+#define HTML_ELEMENTS 118
+
+/* # of elements visible to SGML parser */
+#define HTML_ALL_ELEMENTS 119
+
+/*
+
+   Attribute numbers
+
+   Identifier is HTML_<element>_<attribute>.
+   These must match the tables in HTML.c!
+
+ */
+#define HTML_A_ACCESSKEY          0
+#define HTML_A_CHARSET            1
+#define HTML_A_CLASS              2
+#define HTML_A_CLEAR              3
+#define HTML_A_COORDS             4
+#define HTML_A_DIR                5
+#define HTML_A_HREF               6
+#define HTML_A_HREFLANG           7
+#define HTML_A_ID                 8
+#define HTML_A_ISMAP              9
+#define HTML_A_LANG              10
+#define HTML_A_MD                11
+#define HTML_A_NAME              12
+#define HTML_A_NOTAB             13
+#define HTML_A_ONBLUR            14
+#define HTML_A_ONFOCUS           15
+#define HTML_A_REL               16
+#define HTML_A_REV               17
+#define HTML_A_SHAPE             18
+#define HTML_A_STYLE             19
+#define HTML_A_TABINDEX          20
+#define HTML_A_TARGET            21
+#define HTML_A_TITLE             22
+#define HTML_A_TYPE              23
+#define HTML_A_URN               24
+#define HTML_A_ATTRIBUTES        25
+
+#define HTML_ADDRESS_CLASS        0
+#define HTML_ADDRESS_CLEAR        1
+#define HTML_ADDRESS_DIR          2
+#define HTML_ADDRESS_ID           3
+#define HTML_ADDRESS_LANG         4
+#define HTML_ADDRESS_NOWRAP       5
+#define HTML_ADDRESS_STYLE        6
+#define HTML_ADDRESS_TITLE        7
+#define HTML_ADDRESS_ATTRIBUTES   8
+
+#define HTML_APPLET_ALIGN         0
+#define HTML_APPLET_ALT           1
+#define HTML_APPLET_CLASS         2
+#define HTML_APPLET_CLEAR         3
+#define HTML_APPLET_CODE          4
+#define HTML_APPLET_CODEBASE      5
+#define HTML_APPLET_DIR           6
+#define HTML_APPLET_DOWNLOAD      7
+#define HTML_APPLET_HEIGHT        8
+#define HTML_APPLET_HSPACE        9
+#define HTML_APPLET_ID           10
+#define HTML_APPLET_LANG         11
+#define HTML_APPLET_NAME         12
+#define HTML_APPLET_STYLE        13
+#define HTML_APPLET_TITLE        14
+#define HTML_APPLET_VSPACE       15
+#define HTML_APPLET_WIDTH        16
+#define HTML_APPLET_ATTRIBUTES   17
+
+#define HTML_AREA_ACCESSKEY       0
+#define HTML_AREA_ALT             1
+#define HTML_AREA_CLASS           2
+#define HTML_AREA_CLEAR           3
+#define HTML_AREA_COORDS          4
+#define HTML_AREA_DIR             5
+#define HTML_AREA_HREF            6
+#define HTML_AREA_ID              7
+#define HTML_AREA_LANG            8
+#define HTML_AREA_NOHREF          9
+#define HTML_AREA_NOTAB          10
+#define HTML_AREA_ONBLUR         11
+#define HTML_AREA_ONFOCUS        12
+#define HTML_AREA_SHAPE          13
+#define HTML_AREA_STYLE          14
+#define HTML_AREA_TABINDEX       15
+#define HTML_AREA_TARGET         16
+#define HTML_AREA_TITLE          17
+#define HTML_AREA_ATTRIBUTES     18
+
+#define HTML_BASE_CLASS           0
+#define HTML_BASE_HREF            1
+#define HTML_BASE_ID              2
+#define HTML_BASE_STYLE           3
+#define HTML_BASE_TARGET          4
+#define HTML_BASE_TITLE           5
+#define HTML_BASE_ATTRIBUTES      6
+
+#define HTML_BGSOUND_CLASS        0
+#define HTML_BGSOUND_CLEAR        1
+#define HTML_BGSOUND_DIR          2
+#define HTML_BGSOUND_ID           3
+#define HTML_BGSOUND_LANG         4
+#define HTML_BGSOUND_LOOP         5
+#define HTML_BGSOUND_SRC          6
+#define HTML_BGSOUND_STYLE        7
+#define HTML_BGSOUND_TITLE        8
+#define HTML_BGSOUND_ATTRIBUTES   9
+
+#define HTML_BODY_ALINK           0
+#define HTML_BODY_BACKGROUND      1
+#define HTML_BODY_BGCOLOR         2
+#define HTML_BODY_CLASS           3
+#define HTML_BODY_CLEAR           4
+#define HTML_BODY_DIR             5
+#define HTML_BODY_ID              6
+#define HTML_BODY_LANG            7
+#define HTML_BODY_LINK            8
+#define HTML_BODY_ONLOAD          9
+#define HTML_BODY_ONUNLOAD       10
+#define HTML_BODY_STYLE          11
+#define HTML_BODY_TEXT           12
+#define HTML_BODY_TITLE          13
+#define HTML_BODY_VLINK          14
+#define HTML_BODY_ATTRIBUTES     15
+
+#define HTML_BODYTEXT_CLASS       0
+#define HTML_BODYTEXT_CLEAR       1
+#define HTML_BODYTEXT_DATA        2
+#define HTML_BODYTEXT_DIR         3
+#define HTML_BODYTEXT_ID          4
+#define HTML_BODYTEXT_LANG        5
+#define HTML_BODYTEXT_NAME        6
+#define HTML_BODYTEXT_OBJECT      7
+#define HTML_BODYTEXT_REF         8
+#define HTML_BODYTEXT_STYLE       9
+#define HTML_BODYTEXT_TITLE      10
+#define HTML_BODYTEXT_TYPE       11
+#define HTML_BODYTEXT_VALUE      12
+#define HTML_BODYTEXT_VALUETYPE  13
+#define HTML_BODYTEXT_ATTRIBUTES 14
+
+#define HTML_BQ_CITE              0
+#define HTML_BQ_CLASS             1
+#define HTML_BQ_CLEAR             2
+#define HTML_BQ_DIR               3
+#define HTML_BQ_ID                4
+#define HTML_BQ_LANG              5
+#define HTML_BQ_NOWRAP            6
+#define HTML_BQ_STYLE             7
+#define HTML_BQ_TITLE             8
+#define HTML_BQ_ATTRIBUTES        9
+
+#define HTML_BUTTON_ACCESSKEY     0
+#define HTML_BUTTON_CLASS         1
+#define HTML_BUTTON_CLEAR         2
+#define HTML_BUTTON_DIR           3
+#define HTML_BUTTON_DISABLED      4
+#define HTML_BUTTON_ID            5
+#define HTML_BUTTON_LANG          6
+#define HTML_BUTTON_NAME          7
+#define HTML_BUTTON_ONBLUR        8
+#define HTML_BUTTON_ONFOCUS       9
+#define HTML_BUTTON_READONLY     10
+#define HTML_BUTTON_STYLE        11
+#define HTML_BUTTON_TABINDEX     12
+#define HTML_BUTTON_TITLE        13
+#define HTML_BUTTON_TYPE         14
+#define HTML_BUTTON_VALUE        15
+#define HTML_BUTTON_ATTRIBUTES   16
+
+#define HTML_CAPTION_ACCESSKEY    0
+#define HTML_CAPTION_ALIGN        1
+#define HTML_CAPTION_CLASS        2
+#define HTML_CAPTION_CLEAR        3
+#define HTML_CAPTION_DIR          4
+#define HTML_CAPTION_ID           5
+#define HTML_CAPTION_LANG         6
+#define HTML_CAPTION_STYLE        7
+#define HTML_CAPTION_TITLE        8
+#define HTML_CAPTION_ATTRIBUTES   9
+
+#define HTML_COL_ALIGN            0
+#define HTML_COL_CHAR             1
+#define HTML_COL_CHAROFF          2
+#define HTML_COL_CLASS            3
+#define HTML_COL_CLEAR            4
+#define HTML_COL_DIR              5
+#define HTML_COL_ID               6
+#define HTML_COL_LANG             7
+#define HTML_COL_SPAN             8
+#define HTML_COL_STYLE            9
+#define HTML_COL_TITLE           10
+#define HTML_COL_VALIGN          11
+#define HTML_COL_WIDTH           12
+#define HTML_COL_ATTRIBUTES      13
+
+#define HTML_DEL_CITE             0
+#define HTML_DEL_CLASS            1
+#define HTML_DEL_DATETIME         2
+#define HTML_DEL_DIR              3
+#define HTML_DEL_ID               4
+#define HTML_DEL_LANG             5
+#define HTML_DEL_STYLE            6
+#define HTML_DEL_TITLE            7
+#define HTML_DEL_ATTRIBUTES       8
+
+#define HTML_DIV_ALIGN            0
+#define HTML_DIV_CLASS            1
+#define HTML_DIV_CLEAR            2
+#define HTML_DIV_DIR              3
+#define HTML_DIV_ID               4
+#define HTML_DIV_LANG             5
+#define HTML_DIV_STYLE            6
+#define HTML_DIV_TITLE            7
+#define HTML_DIV_ATTRIBUTES       8
+
+#define HTML_DL_CLASS             0
+#define HTML_DL_CLEAR             1
+#define HTML_DL_COMPACT           2
+#define HTML_DL_DIR               3
+#define HTML_DL_ID                4
+#define HTML_DL_LANG              5
+#define HTML_DL_STYLE             6
+#define HTML_DL_TITLE             7
+#define HTML_DL_ATTRIBUTES        8
+
+#define HTML_EMBED_ALIGN          0
+#define HTML_EMBED_ALT            1
+#define HTML_EMBED_BORDER         2
+#define HTML_EMBED_CLASS          3
+#define HTML_EMBED_CLEAR          4
+#define HTML_EMBED_DIR            5
+#define HTML_EMBED_HEIGHT         6
+#define HTML_EMBED_ID             7
+#define HTML_EMBED_IMAGEMAP       8
+#define HTML_EMBED_ISMAP          9
+#define HTML_EMBED_LANG          10
+#define HTML_EMBED_MD            11
+#define HTML_EMBED_NAME          12
+#define HTML_EMBED_NOFLOW        13
+#define HTML_EMBED_PARAMS        14
+#define HTML_EMBED_SRC           15
+#define HTML_EMBED_STYLE         16
+#define HTML_EMBED_TITLE         17
+#define HTML_EMBED_UNITS         18
+#define HTML_EMBED_USEMAP        19
+#define HTML_EMBED_WIDTH         20
+#define HTML_EMBED_ATTRIBUTES    21
+
+#define HTML_FIG_ALIGN            0
+#define HTML_FIG_BORDER           1
+#define HTML_FIG_CLASS            2
+#define HTML_FIG_CLEAR            3
+#define HTML_FIG_DIR              4
+#define HTML_FIG_HEIGHT           5
+#define HTML_FIG_ID               6
+#define HTML_FIG_IMAGEMAP         7
+#define HTML_FIG_ISOBJECT         8
+#define HTML_FIG_LANG             9
+#define HTML_FIG_MD              10
+#define HTML_FIG_NOFLOW          11
+#define HTML_FIG_SRC             12
+#define HTML_FIG_STYLE           13
+#define HTML_FIG_TITLE           14
+#define HTML_FIG_UNITS           15
+#define HTML_FIG_WIDTH           16
+#define HTML_FIG_ATTRIBUTES      17
+
+#define HTML_FONT_CLASS           0
+#define HTML_FONT_CLEAR           1
+#define HTML_FONT_COLOR           2
+#define HTML_FONT_DIR             3
+#define HTML_FONT_END             4
+#define HTML_FONT_FACE            5
+#define HTML_FONT_ID              6
+#define HTML_FONT_LANG            7
+#define HTML_FONT_SIZE            8
+#define HTML_FONT_STYLE           9
+#define HTML_FONT_TITLE          10
+#define HTML_FONT_ATTRIBUTES     11
+
+#define HTML_FORM_ACCEPT          0
+#define HTML_FORM_ACCEPT_CHARSET  1
+#define HTML_FORM_ACTION          2
+#define HTML_FORM_CLASS           3
+#define HTML_FORM_CLEAR           4
+#define HTML_FORM_DIR             5
+#define HTML_FORM_ENCTYPE         6
+#define HTML_FORM_ID              7
+#define HTML_FORM_LANG            8
+#define HTML_FORM_METHOD          9
+#define HTML_FORM_ONRESET        10
+#define HTML_FORM_ONSUBMIT       11
+#define HTML_FORM_SCRIPT         12
+#define HTML_FORM_STYLE          13
+#define HTML_FORM_SUBJECT        14
+#define HTML_FORM_TARGET         15
+#define HTML_FORM_TITLE          16
+#define HTML_FORM_ATTRIBUTES     17
+
+#define HTML_FRAME_CLASS          0
+#define HTML_FRAME_FRAMEBORDER    1
+#define HTML_FRAME_ID             2
+#define HTML_FRAME_LONGDESC       3
+#define HTML_FRAME_MARGINHEIGHT   4
+#define HTML_FRAME_MARGINWIDTH    5
+#define HTML_FRAME_NAME           6
+#define HTML_FRAME_NORESIZE       7
+#define HTML_FRAME_SCROLLING      8
+#define HTML_FRAME_SRC            9
+#define HTML_FRAME_STYLE         10
+#define HTML_FRAME_TITLE         11
+#define HTML_FRAME_ATTRIBUTES    12
+
+#define HTML_FRAMESET_COLS        0
+#define HTML_FRAMESET_ONLOAD      1
+#define HTML_FRAMESET_ONUNLOAD    2
+#define HTML_FRAMESET_ROWS        3
+#define HTML_FRAMESET_ATTRIBUTES  4
+
+#define HTML_GEN_CLASS            0
+#define HTML_GEN_CLEAR            1
+#define HTML_GEN_DIR              2
+#define HTML_GEN_ID               3
+#define HTML_GEN_LANG             4
+#define HTML_GEN_STYLE            5
+#define HTML_GEN_TITLE            6
+#define HTML_GEN_ATTRIBUTES       7
+
+#define HTML_H_ALIGN              0
+#define HTML_H_CLASS              1
+#define HTML_H_CLEAR              2
+#define HTML_H_DINGBAT            3
+#define HTML_H_DIR                4
+#define HTML_H_ID                 5
+#define HTML_H_LANG               6
+#define HTML_H_MD                 7
+#define HTML_H_NOWRAP             8
+#define HTML_H_SEQNUM             9
+#define HTML_H_SKIP              10
+#define HTML_H_SRC               11
+#define HTML_H_STYLE             12
+#define HTML_H_TITLE             13
+#define HTML_H_ATTRIBUTES        14
+
+#define HTML_HR_ALIGN             0
+#define HTML_HR_CLASS             1
+#define HTML_HR_CLEAR             2
+#define HTML_HR_DIR               3
+#define HTML_HR_ID                4
+#define HTML_HR_LANG              5
+#define HTML_HR_MD                6
+#define HTML_HR_NOSHADE           7
+#define HTML_HR_SIZE              8
+#define HTML_HR_SRC               9
+#define HTML_HR_STYLE            10
+#define HTML_HR_TITLE            11
+#define HTML_HR_WIDTH            12
+#define HTML_HR_ATTRIBUTES       13
+
+#define HTML_IFRAME_ALIGN         0
+#define HTML_IFRAME_CLASS         1
+#define HTML_IFRAME_FRAMEBORDER   2
+#define HTML_IFRAME_HEIGHT        3
+#define HTML_IFRAME_ID            4
+#define HTML_IFRAME_LONGDESC      5
+#define HTML_IFRAME_MARGINHEIGHT  6
+#define HTML_IFRAME_MARGINWIDTH   7
+#define HTML_IFRAME_NAME          8
+#define HTML_IFRAME_SCROLLING     9
+#define HTML_IFRAME_SRC          10
+#define HTML_IFRAME_STYLE        11
+#define HTML_IFRAME_TITLE        12
+#define HTML_IFRAME_WIDTH        13
+#define HTML_IFRAME_ATTRIBUTES   14
+
+#define HTML_IMG_ALIGN            0
+#define HTML_IMG_ALT              1
+#define HTML_IMG_BORDER           2
+#define HTML_IMG_CLASS            3
+#define HTML_IMG_CLEAR            4
+#define HTML_IMG_DIR              5
+#define HTML_IMG_HEIGHT           6
+#define HTML_IMG_HSPACE           7
+#define HTML_IMG_ID               8
+#define HTML_IMG_ISMAP            9
+#define HTML_IMG_ISOBJECT        10
+#define HTML_IMG_LANG            11
+#define HTML_IMG_LONGDESC        12
+#define HTML_IMG_MD              13
+#define HTML_IMG_NAME            14
+#define HTML_IMG_SRC             15
+#define HTML_IMG_STYLE           16
+#define HTML_IMG_TITLE           17
+#define HTML_IMG_UNITS           18
+#define HTML_IMG_USEMAP          19
+#define HTML_IMG_VSPACE          20
+#define HTML_IMG_WIDTH           21
+#define HTML_IMG_ATTRIBUTES      22
+
+#define HTML_INPUT_ACCEPT         0
+#define HTML_INPUT_ACCEPT_CHARSET 1
+#define HTML_INPUT_ACCESSKEY      2
+#define HTML_INPUT_ALIGN          3
+#define HTML_INPUT_ALT            4
+#define HTML_INPUT_CHECKED        5
+#define HTML_INPUT_CLASS          6
+#define HTML_INPUT_CLEAR          7
+#define HTML_INPUT_DIR            8
+#define HTML_INPUT_DISABLED       9
+#define HTML_INPUT_ERROR         10
+#define HTML_INPUT_HEIGHT        11
+#define HTML_INPUT_ID            12
+#define HTML_INPUT_ISMAP         13
+#define HTML_INPUT_LANG          14
+#define HTML_INPUT_MAX           15
+#define HTML_INPUT_MAXLENGTH     16
+#define HTML_INPUT_MD            17
+#define HTML_INPUT_MIN           18
+#define HTML_INPUT_NAME          19
+#define HTML_INPUT_NOTAB         20
+#define HTML_INPUT_ONBLUR        21
+#define HTML_INPUT_ONCHANGE      22
+#define HTML_INPUT_ONFOCUS       23
+#define HTML_INPUT_ONSELECT      24
+#define HTML_INPUT_READONLY      25
+#define HTML_INPUT_SIZE          26
+#define HTML_INPUT_SRC           27
+#define HTML_INPUT_STYLE         28
+#define HTML_INPUT_TABINDEX      29
+#define HTML_INPUT_TITLE         30
+#define HTML_INPUT_TYPE          31
+#define HTML_INPUT_USEMAP        32
+#define HTML_INPUT_VALUE         33
+#define HTML_INPUT_WIDTH         34
+#define HTML_INPUT_ATTRIBUTES    35
+
+#define HTML_ISINDEX_ACTION       0
+#define HTML_ISINDEX_CLASS        1
+#define HTML_ISINDEX_DIR          2
+#define HTML_ISINDEX_HREF         3
+#define HTML_ISINDEX_ID           4
+#define HTML_ISINDEX_LANG         5
+#define HTML_ISINDEX_PROMPT       6
+#define HTML_ISINDEX_STYLE        7
+#define HTML_ISINDEX_TITLE        8
+#define HTML_ISINDEX_ATTRIBUTES   9
+
+#define HTML_KEYGEN_CHALLENGE     0
+#define HTML_KEYGEN_CLASS         1
+#define HTML_KEYGEN_DIR           2
+#define HTML_KEYGEN_ID            3
+#define HTML_KEYGEN_LANG          4
+#define HTML_KEYGEN_NAME          5
+#define HTML_KEYGEN_STYLE         6
+#define HTML_KEYGEN_TITLE         7
+#define HTML_KEYGEN_ATTRIBUTES    8
+
+#define HTML_LABEL_ACCESSKEY      0
+#define HTML_LABEL_CLASS          1
+#define HTML_LABEL_CLEAR          2
+#define HTML_LABEL_DIR            3
+#define HTML_LABEL_FOR            4
+#define HTML_LABEL_ID             5
+#define HTML_LABEL_LANG           6
+#define HTML_LABEL_ONBLUR         7
+#define HTML_LABEL_ONFOCUS        8
+#define HTML_LABEL_STYLE          9
+#define HTML_LABEL_TITLE         10
+#define HTML_LABEL_ATTRIBUTES    11
+
+#define HTML_LI_CLASS             0
+#define HTML_LI_CLEAR             1
+#define HTML_LI_DINGBAT           2
+#define HTML_LI_DIR               3
+#define HTML_LI_ID                4
+#define HTML_LI_LANG              5
+#define HTML_LI_MD                6
+#define HTML_LI_SKIP              7
+#define HTML_LI_SRC               8
+#define HTML_LI_STYLE             9
+#define HTML_LI_TITLE            10
+#define HTML_LI_TYPE             11
+#define HTML_LI_VALUE            12
+#define HTML_LI_ATTRIBUTES       13
+
+#define HTML_LINK_CHARSET         0
+#define HTML_LINK_CLASS           1
+#define HTML_LINK_DIR             2
+#define HTML_LINK_HREF            3
+#define HTML_LINK_HREFLANG        4
+#define HTML_LINK_ID              5
+#define HTML_LINK_LANG            6
+#define HTML_LINK_MEDIA           7
+#define HTML_LINK_REL             8
+#define HTML_LINK_REV             9
+#define HTML_LINK_STYLE          10
+#define HTML_LINK_TARGET         11
+#define HTML_LINK_TITLE          12
+#define HTML_LINK_TYPE           13
+#define HTML_LINK_ATTRIBUTES     14
+
+#define HTML_MAP_CLASS            0
+#define HTML_MAP_CLEAR            1
+#define HTML_MAP_DIR              2
+#define HTML_MAP_ID               3
+#define HTML_MAP_LANG             4
+#define HTML_MAP_NAME             5
+#define HTML_MAP_STYLE            6
+#define HTML_MAP_TITLE            7
+#define HTML_MAP_ATTRIBUTES       8
+
+#define HTML_MATH_BOX             0
+#define HTML_MATH_CLASS           1
+#define HTML_MATH_CLEAR           2
+#define HTML_MATH_DIR             3
+#define HTML_MATH_ID              4
+#define HTML_MATH_LANG            5
+#define HTML_MATH_STYLE           6
+#define HTML_MATH_TITLE           7
+#define HTML_MATH_ATTRIBUTES      8
+
+#define HTML_META_CHARSET         0
+#define HTML_META_CONTENT         1
+#define HTML_META_HTTP_EQUIV      2
+#define HTML_META_NAME            3
+#define HTML_META_SCHEME          4
+#define HTML_META_ATTRIBUTES      5
+
+#define HTML_NEXTID_N             0
+#define HTML_NEXTID_ATTRIBUTES    1
+
+#define HTML_NOTE_CLASS           0
+#define HTML_NOTE_CLEAR           1
+#define HTML_NOTE_DIR             2
+#define HTML_NOTE_ID              3
+#define HTML_NOTE_LANG            4
+#define HTML_NOTE_MD              5
+#define HTML_NOTE_ROLE            6
+#define HTML_NOTE_SRC             7
+#define HTML_NOTE_STYLE           8
+#define HTML_NOTE_TITLE           9
+#define HTML_NOTE_ATTRIBUTES     10
+
+#define HTML_OBJECT_ALIGN         0
+#define HTML_OBJECT_ARCHIVE       1
+#define HTML_OBJECT_BORDER        2
+#define HTML_OBJECT_CLASS         3
+#define HTML_OBJECT_CLASSID       4
+#define HTML_OBJECT_CODEBASE      5
+#define HTML_OBJECT_CODETYPE      6
+#define HTML_OBJECT_DATA          7
+#define HTML_OBJECT_DECLARE       8
+#define HTML_OBJECT_DIR           9
+#define HTML_OBJECT_HEIGHT       10
+#define HTML_OBJECT_HSPACE       11
+#define HTML_OBJECT_ID           12
+#define HTML_OBJECT_ISMAP        13
+#define HTML_OBJECT_LANG         14
+#define HTML_OBJECT_NAME         15
+#define HTML_OBJECT_NOTAB        16
+#define HTML_OBJECT_SHAPES       17
+#define HTML_OBJECT_STANDBY      18
+#define HTML_OBJECT_STYLE        19
+#define HTML_OBJECT_TABINDEX     20
+#define HTML_OBJECT_TITLE        21
+#define HTML_OBJECT_TYPE         22
+#define HTML_OBJECT_USEMAP       23
+#define HTML_OBJECT_VSPACE       24
+#define HTML_OBJECT_WIDTH        25
+#define HTML_OBJECT_ATTRIBUTES   26
+
+#define HTML_OL_CLASS             0
+#define HTML_OL_CLEAR             1
+#define HTML_OL_COMPACT           2
+#define HTML_OL_CONTINUE          3
+#define HTML_OL_DIR               4
+#define HTML_OL_ID                5
+#define HTML_OL_LANG              6
+#define HTML_OL_SEQNUM            7
+#define HTML_OL_START             8
+#define HTML_OL_STYLE             9
+#define HTML_OL_TITLE            10
+#define HTML_OL_TYPE             11
+#define HTML_OL_ATTRIBUTES       12
+
+#define HTML_OPTION_CLASS         0
+#define HTML_OPTION_CLEAR         1
+#define HTML_OPTION_DIR           2
+#define HTML_OPTION_DISABLED      3
+#define HTML_OPTION_ERROR         4
+#define HTML_OPTION_ID            5
+#define HTML_OPTION_LABEL         6
+#define HTML_OPTION_LANG          7
+#define HTML_OPTION_SELECTED      8
+#define HTML_OPTION_SHAPE         9
+#define HTML_OPTION_STYLE        10
+#define HTML_OPTION_TITLE        11
+#define HTML_OPTION_VALUE        12
+#define HTML_OPTION_ATTRIBUTES   13
+
+#define HTML_OVERLAY_CLASS        0
+#define HTML_OVERLAY_HEIGHT       1
+#define HTML_OVERLAY_ID           2
+#define HTML_OVERLAY_IMAGEMAP     3
+#define HTML_OVERLAY_MD           4
+#define HTML_OVERLAY_SRC          5
+#define HTML_OVERLAY_STYLE        6
+#define HTML_OVERLAY_TITLE        7
+#define HTML_OVERLAY_UNITS        8
+#define HTML_OVERLAY_WIDTH        9
+#define HTML_OVERLAY_X           10
+#define HTML_OVERLAY_Y           11
+#define HTML_OVERLAY_ATTRIBUTES  12
+
+#define HTML_P_ALIGN              0
+#define HTML_P_CLASS              1
+#define HTML_P_CLEAR              2
+#define HTML_P_DIR                3
+#define HTML_P_ID                 4
+#define HTML_P_LANG               5
+#define HTML_P_NOWRAP             6
+#define HTML_P_STYLE              7
+#define HTML_P_TITLE              8
+#define HTML_P_ATTRIBUTES         9
+
+#define HTML_PARAM_ACCEPT         0
+#define HTML_PARAM_ACCEPT_CHARSET 1
+#define HTML_PARAM_ACCEPT_ENCODING 2
+#define HTML_PARAM_CLASS          3
+#define HTML_PARAM_CLEAR          4
+#define HTML_PARAM_DATA           5
+#define HTML_PARAM_DIR            6
+#define HTML_PARAM_ID             7
+#define HTML_PARAM_LANG           8
+#define HTML_PARAM_NAME           9
+#define HTML_PARAM_OBJECT        10
+#define HTML_PARAM_REF           11
+#define HTML_PARAM_STYLE         12
+#define HTML_PARAM_TITLE         13
+#define HTML_PARAM_TYPE          14
+#define HTML_PARAM_VALUE         15
+#define HTML_PARAM_VALUEREF      16
+#define HTML_PARAM_VALUETYPE     17
+#define HTML_PARAM_ATTRIBUTES    18
+
+#define HTML_Q_CITE               0
+#define HTML_Q_CLASS              1
+#define HTML_Q_CLEAR              2
+#define HTML_Q_DIR                3
+#define HTML_Q_ID                 4
+#define HTML_Q_LANG               5
+#define HTML_Q_STYLE              6
+#define HTML_Q_TITLE              7
+#define HTML_Q_ATTRIBUTES         8
+
+#define HTML_SCRIPT_CHARSET       0
+#define HTML_SCRIPT_CLASS         1
+#define HTML_SCRIPT_CLEAR         2
+#define HTML_SCRIPT_DEFER         3
+#define HTML_SCRIPT_DIR           4
+#define HTML_SCRIPT_EVENT         5
+#define HTML_SCRIPT_FOR           6
+#define HTML_SCRIPT_ID            7
+#define HTML_SCRIPT_LANG          8
+#define HTML_SCRIPT_LANGUAGE      9
+#define HTML_SCRIPT_NAME         10
+#define HTML_SCRIPT_SCRIPTENGINE 11
+#define HTML_SCRIPT_SRC          12
+#define HTML_SCRIPT_STYLE        13
+#define HTML_SCRIPT_TITLE        14
+#define HTML_SCRIPT_TYPE         15
+#define HTML_SCRIPT_ATTRIBUTES   16
+
+#define HTML_SELECT_ALIGN         0
+#define HTML_SELECT_CLASS         1
+#define HTML_SELECT_CLEAR         2
+#define HTML_SELECT_DIR           3
+#define HTML_SELECT_DISABLED      4
+#define HTML_SELECT_ERROR         5
+#define HTML_SELECT_HEIGHT        6
+#define HTML_SELECT_ID            7
+#define HTML_SELECT_LANG          8
+#define HTML_SELECT_MD            9
+#define HTML_SELECT_MULTIPLE     10
+#define HTML_SELECT_NAME         11
+#define HTML_SELECT_NOTAB        12
+#define HTML_SELECT_ONBLUR       13
+#define HTML_SELECT_ONCHANGE     14
+#define HTML_SELECT_ONFOCUS      15
+#define HTML_SELECT_SIZE         16
+#define HTML_SELECT_STYLE        17
+#define HTML_SELECT_TABINDEX     18
+#define HTML_SELECT_TITLE        19
+#define HTML_SELECT_UNITS        20
+#define HTML_SELECT_WIDTH        21
+#define HTML_SELECT_ATTRIBUTES   22
+
+#define HTML_STYLE_CLASS          0
+#define HTML_STYLE_DIR            1
+#define HTML_STYLE_ID             2
+#define HTML_STYLE_LANG           3
+#define HTML_STYLE_MEDIA          4
+#define HTML_STYLE_NOTATION       5
+#define HTML_STYLE_STYLE          6
+#define HTML_STYLE_TITLE          7
+#define HTML_STYLE_TYPE           8
+#define HTML_STYLE_ATTRIBUTES     9
+
+#define HTML_TAB_ALIGN            0
+#define HTML_TAB_CLASS            1
+#define HTML_TAB_CLEAR            2
+#define HTML_TAB_DIR              3
+#define HTML_TAB_DP               4
+#define HTML_TAB_ID               5
+#define HTML_TAB_INDENT           6
+#define HTML_TAB_LANG             7
+#define HTML_TAB_STYLE            8
+#define HTML_TAB_TITLE            9
+#define HTML_TAB_TO              10
+#define HTML_TAB_ATTRIBUTES      11
+
+#define HTML_TABLE_ALIGN          0
+#define HTML_TABLE_BACKGROUND     1
+#define HTML_TABLE_BORDER         2
+#define HTML_TABLE_CELLPADDING    3
+#define HTML_TABLE_CELLSPACING    4
+#define HTML_TABLE_CLASS          5
+#define HTML_TABLE_CLEAR          6
+#define HTML_TABLE_COLS           7
+#define HTML_TABLE_COLSPEC        8
+#define HTML_TABLE_DIR            9
+#define HTML_TABLE_DP            10
+#define HTML_TABLE_FRAME         11
+#define HTML_TABLE_ID            12
+#define HTML_TABLE_LANG          13
+#define HTML_TABLE_NOFLOW        14
+#define HTML_TABLE_NOWRAP        15
+#define HTML_TABLE_RULES         16
+#define HTML_TABLE_STYLE         17
+#define HTML_TABLE_SUMMARY       18
+#define HTML_TABLE_TITLE         19
+#define HTML_TABLE_UNITS         20
+#define HTML_TABLE_WIDTH         21
+#define HTML_TABLE_ATTRIBUTES    22
+
+#define HTML_TD_ABBR              0
+#define HTML_TD_ALIGN             1
+#define HTML_TD_AXES              2
+#define HTML_TD_AXIS              3
+#define HTML_TD_BACKGROUND        4
+#define HTML_TD_CHAR              5
+#define HTML_TD_CHAROFF           6
+#define HTML_TD_CLASS             7
+#define HTML_TD_CLEAR             8
+#define HTML_TD_COLSPAN           9
+#define HTML_TD_DIR              10
+#define HTML_TD_DP               11
+#define HTML_TD_HEADERS          12
+#define HTML_TD_HEIGHT           13
+#define HTML_TD_ID               14
+#define HTML_TD_LANG             15
+#define HTML_TD_NOWRAP           16
+#define HTML_TD_ROWSPAN          17
+#define HTML_TD_SCOPE            18
+#define HTML_TD_STYLE            19
+#define HTML_TD_TITLE            20
+#define HTML_TD_VALIGN           21
+#define HTML_TD_WIDTH            22
+#define HTML_TD_ATTRIBUTES       23
+
+#define HTML_TEXTAREA_ACCEPT_CHARSET 0
+#define HTML_TEXTAREA_ACCESSKEY   1
+#define HTML_TEXTAREA_ALIGN       2
+#define HTML_TEXTAREA_CLASS       3
+#define HTML_TEXTAREA_CLEAR       4
+#define HTML_TEXTAREA_COLS        5
+#define HTML_TEXTAREA_DIR         6
+#define HTML_TEXTAREA_DISABLED    7
+#define HTML_TEXTAREA_ERROR       8
+#define HTML_TEXTAREA_ID          9
+#define HTML_TEXTAREA_LANG       10
+#define HTML_TEXTAREA_NAME       11
+#define HTML_TEXTAREA_NOTAB      12
+#define HTML_TEXTAREA_ONBLUR     13
+#define HTML_TEXTAREA_ONCHANGE   14
+#define HTML_TEXTAREA_ONFOCUS    15
+#define HTML_TEXTAREA_ONSELECT   16
+#define HTML_TEXTAREA_READONLY   17
+#define HTML_TEXTAREA_ROWS       18
+#define HTML_TEXTAREA_STYLE      19
+#define HTML_TEXTAREA_TABINDEX   20
+#define HTML_TEXTAREA_TITLE      21
+#define HTML_TEXTAREA_ATTRIBUTES 22
+
+#define HTML_TR_ALIGN             0
+#define HTML_TR_CHAR              1
+#define HTML_TR_CHAROFF           2
+#define HTML_TR_CLASS             3
+#define HTML_TR_CLEAR             4
+#define HTML_TR_DIR               5
+#define HTML_TR_DP                6
+#define HTML_TR_ID                7
+#define HTML_TR_LANG              8
+#define HTML_TR_NOWRAP            9
+#define HTML_TR_STYLE            10
+#define HTML_TR_TITLE            11
+#define HTML_TR_VALIGN           12
+#define HTML_TR_ATTRIBUTES       13
+
+#define HTML_UL_CLASS             0
+#define HTML_UL_CLEAR             1
+#define HTML_UL_COMPACT           2
+#define HTML_UL_DINGBAT           3
+#define HTML_UL_DIR               4
+#define HTML_UL_ID                5
+#define HTML_UL_LANG              6
+#define HTML_UL_MD                7
+#define HTML_UL_PLAIN             8
+#define HTML_UL_SRC               9
+#define HTML_UL_STYLE            10
+#define HTML_UL_TITLE            11
+#define HTML_UL_TYPE             12
+#define HTML_UL_WRAP             13
+#define HTML_UL_ATTRIBUTES       14
+
+#ifdef __cplusplus
+}
+#endif
+#endif				/* hdr_HTMLDTD_H */
diff --git a/WWW/Library/Implementation/makefile.in b/WWW/Library/Implementation/makefile.in
new file mode 100644
index 00000000..1b7118f9
--- /dev/null
+++ b/WWW/Library/Implementation/makefile.in
@@ -0,0 +1,378 @@
+# $LynxId: makefile.in,v 1.30 2010/09/19 19:29:35 tom Exp $
+# Make WWW under unix for a.n.other unix system (bsd)
+# Use this as a template
+
+# For W3 distribution, machine type for subdirectories
+WWW_MACH	= Implementation
+WWWINC		= $(top_srcdir)/WWW/Library/Implementation
+
+ECHO =		@DONT_ECHO_CC@
+LFLAGS =
+
+prefix		= @prefix@
+exec_prefix	= @exec_prefix@
+top_srcdir	= @top_srcdir@
+srcdir		= @srcdir@
+VPATH		= $(srcdir)
+
+LYFLAGS		= # FIXME: set in parent makefile
+
+CC		= @CC@
+DEFS		= @DEFS@
+EXTRA_CPPFLAGS	= @EXTRA_CPPFLAGS@
+CPPFLAGS	= @CPPFLAGS@
+
+AR		= @AR@
+ARFLAGS		= @ARFLAGS@
+
+RANLIB		= @RANLIB@
+
+o		= .@OBJEXT@
+x		= @EXEEXT@
+
+INTLDIR_CPPFLAGS= @INTLDIR_CPPFLAGS@ -I$(top_srcdir)/intl
+
+CPP		= @CPP@
+CPPOPTS		= $(DEFS) $(LYFLAGS) \
+		-I../../.. \
+		-I../../../src \
+		-I$(top_srcdir) \
+		-I$(top_srcdir)/src \
+		$(INTLDIR_CPPFLAGS) -I$(WWWINC) $(EXTRA_CPPFLAGS) $(CPPFLAGS)
+
+LY_CFLAGS	= @CFLAGS@
+CFLAGS		= $(CPPOPTS) $(LY_CFLAGS)
+
+LINT		= @LINT@
+LINTOPTS	=
+
+CTAGS		= @CTAGS@
+
+# Directory for installed binary:
+BINDIR		= @bindir@
+
+# Where is the W3 object library to be installed (not normally done)?
+#_________________ OK if normal W3 distribution
+# Where is the WWW source root?
+WWW = $(top_srcdir)/WWW
+
+#  Where should temporary (object) files go?
+WTMP = ../..
+
+# (Version.make)
+VC = 2.14
+#______________________________________________________________________
+# (originally CommonMakefile)
+
+#  If this env var is set to something else Some makes will use that instead
+SHELL = @CONFIG_SHELL@
+
+#	.h files are distributed but originally are made from the
+#	self-documenting hypertext files.
+
+.SUFFIXES: .h .html
+.html.h:
+#	- chmod +w $*.h
+	www -w90 -na -to text/x-c $*.html > $*.h
+#	chmod -w $*.h
+
+# If this is actually run in a subdirectory,
+#
+# WWW = ../../..
+# WWW = ../..	For [cernlib] build in this directory
+
+CMN = $(WWW)/Library/Implementation/
+
+# Where shall we put the objects and built library?
+
+LOB = .
+
+# Only needed if HTWAIS.c is to be compiled. Put into your Makefile.include
+#  uncomment these and fill in WAISINC for adding direct wais access
+#  to Lynx.
+@MAKE_WAIS@HTWAIS_c = $(CMN)/HTWAIS.c
+@MAKE_WAIS@HTWAIS_o = $(LOB)/HTWAIS$o
+@MAKE_WAIS@WAIS = YES
+#WAISINC = -I../../../../freeWAIS-0.202/ir
+@MAKE_WAIS@WAISCFLAGS = -DDIRECT_WAIS
+#
+
+# add -DNEW_GATEWAY here for the new gateway config stuff
+CFLAGS2 = $(CFLAGS) $(LYFLAGS) $(WAISCFLAGS) -I$(CMN) -DACCESS_AUTH
+
+COMPILE	= $(ECHO) $(CC) $(CFLAGS2) -c
+
+COMMON = $(LOB)/HTParse$o $(LOB)/HTAccess$o $(LOB)/HTTP$o \
+	$(LOB)/HTFile$o	$(LOB)/HTBTree$o $(LOB)/HTFTP$o $(LOB)/HTTCP$o \
+	$(LOB)/SGML$o $(LOB)/HTMLDTD$o $(LOB)/HTChunk$o \
+	$(LOB)/HTPlain$o \
+	$(LOB)/HTMLGen$o \
+	$(LOB)/HTAtom$o $(LOB)/HTAnchor$o $(LOB)/HTStyle$o \
+	$(LOB)/HTList$o $(LOB)/HTString$o \
+	$(LOB)/HTRules$o $(LOB)/HTFormat$o  $(LOB)/HTMIME$o \
+	$(LOB)/HTNews$o  $(LOB)/HTGopher$o \
+	$(LOB)/HTTelnet$o $(LOB)/HTFinger$o $(LOB)/HTWSRC$o $(HTWAIS_o) \
+	$(LOB)/HTAAUtil$o $(LOB)/HTAABrow$o \
+	$(LOB)/HTGroup$o \
+	$(LOB)/HTAAProt$o \
+	$(LOB)/HTAssoc$o  $(LOB)/HTLex$o    $(LOB)/HTUU$o \
+	$(LOB)/HTDOS$o
+
+CFILES = $(CMN)HTParse.c $(CMN)HTAccess.c $(CMN)HTTP.c $(CMN)HTFile.c \
+	$(CMN)HTBTree.c \
+	$(CMN)HTFTP.c	$(CMN)HTTCP.c	  $(CMN)SGML.c \
+	$(CMN)HTMLDTD.c \
+	$(CMN)HTPlain.c	\
+	$(CMN)HTMLGen.c \
+	$(CMN)HTChunk.c $(CMN)HTAtom.c    $(CMN)HTAnchor.c $(CMN)HTStyle.c \
+	$(CMN)HTList.c  $(CMN)HTString.c  $(CMN)HTRules.c \
+	$(CMN)HTFormat.c $(CMN)HTMIME.c \
+	$(CMN)HTNews.c  $(CMN)HTGopher.c  $(CMN)HTTelnet.c \
+	$(CMN)HTFinger.c $(HTWAIS_c)	  $(CMN)HTWSRC.c \
+	$(CMN)HTAABrow.c \
+	$(CMN)HTGroup.c  \
+	$(CMN)HTAAProt.c \
+	$(CMN)HTAssoc.c  $(CMN)HTLex.c    $(CMN)HTUU.c
+
+HFILES = $(CMN)HTParse.h $(CMN)HTAccess.h $(CMN)HTTP.h $(CMN)HTFile.h \
+	$(CMN)HTBTree.h $(CMN)HTFTP.h $(CMN)HTTCP.h \
+	$(CMN)SGML.h $(CMN)HTML.h $(CMN)HTMLDTD.h $(CMN)HTChunk.h \
+	$(CMN)HTPlain.h	\
+	$(CMN)HTFWriter.h	$(CMN)HTMLGen.h \
+	$(CMN)HTStream.h \
+	$(CMN)HTAtom.h $(CMN)HTAnchor.h $(CMN)HTStyle.h \
+	$(CMN)HTList.h \
+	$(CMN)HTString.h $(CMN)HTRules.h \
+	$(CMN)HTFormat.h $(CMN)HTInit.h \
+	$(CMN)HTMIME.h $(CMN)HTNews.h \
+	$(CMN)HTGopher.h \
+	$(CMN)HTUtils.h $(CMN)www_tcp.h $(CMN)HText.h \
+	$(CMN)HTTelnet.h $(CMN)HTFinger.h \
+	$(CMN)HTWAIS.h  $(CMN)HTWSRC.h \
+	$(CMN)HTAABrow.h \
+	$(CMN)HTGroup.h  \
+	$(CMN)HTAAProt.h \
+	$(CMN)HTAssoc.h  $(CMN)HTLex.h    $(CMN)HTUU.h
+
+C_SRC		= $(COMMON:$o=.c)
+
+all : $(LOB)/libwww.a
+
+lint:
+	$(LINT) $(LINTOPTS) $(CPPOPTS) $(C_SRC) 2>&1 |tee ../../../lint.libwww
+
+.SUFFIXES: $o .i .h .html
+
+.c$o:
+	@RULE_CC@
+	@ECHO_CC@$(CC) $(CPPOPTS) $(CFLAGS) -c $(srcdir)/$*.c
+
+.c.i:
+	@RULE_CC@
+	@ECHO_CC@$(CPP) -C $(CPPOPTS) $(srcdir)/$*.c >$@
+
+depend :
+	makedepend -fmakefile -- $(CFLAGS) -- $(CFILES)
+
+#	Library
+#
+#  On SGI, ranlib is unnecessary and does not exist so we ignore errors
+# for that step
+$(LOB)/libwww.a : $(COMMON)
+	$(AR) $(ARFLAGS) $(LOB)/libwww.a $(COMMON)
+	-$(RANLIB) $(LOB)/libwww.a
+
+#	Clean up everything generatable except final products
+clean :
+	rm -f core *.core *.leaks *.[oi] *.bak tags TAGS
+	rm -f dtd_util$x
+	rm -f $(LOB)/*$o
+
+distclean : clean
+	@echo made $@
+
+tags:
+	$(CTAGS) *.[ch]
+
+#			Common code
+#			-----------
+
+$(LOB)/HTList$o : $(CMN)HTList.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(COMPILE) $(CMN)HTList.c
+
+$(LOB)/HTAnchor$o : $(CMN)HTAnchor.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(COMPILE) $(CMN)HTAnchor.c
+
+$(LOB)/HTFormat$o : $(CMN)HTFormat.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(COMPILE) $(CMN)HTFormat.c
+
+$(LOB)/HTMIME$o : $(CMN)HTMIME.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(COMPILE) $(CMN)HTMIME.c
+
+$(LOB)/HTNews$o : $(CMN)HTNews.c $(CMN)HTUtils.h $(CMN)HTList.h\
+	 $(CMN)HTMLDTD.h
+	$(COMPILE) $(CMN)HTNews.c
+
+$(LOB)/HTGopher$o : $(CMN)HTGopher.c $(CMN)HTUtils.h $(CMN)HTList.h \
+	 $(CMN)HTMLDTD.h
+	$(COMPILE) $(CMN)HTGopher.c
+
+$(LOB)/HTTelnet$o : $(CMN)HTTelnet.c $(CMN)HTUtils.h $(CMN)HTTelnet.h $(CMN)../../../userdefs.h
+	$(COMPILE) $(CMN)HTTelnet.c
+
+$(LOB)/HTFinger$o : $(CMN)HTFinger.c $(CMN)HTUtils.h $(CMN)HTList.h \
+	$(CMN)HTMLDTD.h
+	$(COMPILE) $(CMN)HTFinger.c
+
+$(LOB)/HTStyle$o : $(CMN)HTStyle.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTStyle.c
+
+$(LOB)/HTAtom$o : $(CMN)HTAtom.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(COMPILE) $(CMN)HTAtom.c
+
+$(LOB)/HTChunk$o : $(CMN)HTChunk.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTChunk.c
+
+$(LOB)/HTString$o : $(CMN)HTString.c $(CMN)HTUtils.h $(CMN)Version.make
+	$(COMPILE) -DVC=\"$(VC)\" $(CMN)HTString.c
+
+$(LOB)/HTRules$o : $(CMN)HTRules.c $(CMN)HTUtils.h $(CMN)Version.make \
+	 $(CMN)HTAAProt.h
+	$(COMPILE) -DVC=\"$(VC)\" $(CMN)HTRules.c
+
+$(LOB)/SGML$o : $(CMN)SGML.c $(CMN)HTUtils.h $(CMN)UCAux.h
+	$(COMPILE) $(CMN)SGML.c
+
+$(LOB)/HTMLGen$o : $(CMN)HTMLGen.c $(CMN)HTUtils.h $(CMN)HTMLDTD.h
+	$(COMPILE) $(CMN)HTMLGen.c
+
+$(LOB)/HTMLDTD$o : $(CMN)HTMLDTD.c $(CMN)SGML.h
+	$(COMPILE) $(CMN)HTMLDTD.c
+
+$(LOB)/HTPlain$o : $(CMN)HTPlain.c $(CMN)HTPlain.h $(CMN)HTStream.h \
+	 $(CMN)UCAux.h
+	$(COMPILE) $(CMN)HTPlain.c
+
+$(LOB)/HTWAIS$o : $(CMN)HTWAIS.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(COMPILE) $(WAISINC) $(CMN)HTWAIS.c
+
+$(LOB)/HTWSRC$o : $(CMN)HTWSRC.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(COMPILE) $(CMN)HTWSRC.c
+
+#	Access Authorization
+
+$(LOB)/HTAAUtil$o : $(CMN)HTAAUtil.c $(CMN)HTAAUtil.h \
+	 $(CMN)HTUtils.h $(CMN)HTString.h
+	$(COMPILE) $(CMN)HTAAUtil.c
+
+$(LOB)/HTGroup$o : $(CMN)HTGroup.c $(CMN)HTGroup.h \
+	 $(CMN)HTAAUtil.h \
+	 $(CMN)HTAssoc.h $(CMN)HTLex.h
+	$(COMPILE) $(CMN)HTGroup.c
+
+$(LOB)/HTAABrow$o : $(CMN)HTAABrow.c $(CMN)HTAABrow.h \
+	 $(CMN)HTAAUtil.h $(CMN)HTUU.h \
+	 $(CMN)HTUtils.h $(CMN)HTString.h \
+	 $(CMN)HTParse.h $(CMN)HTList.h \
+	 $(CMN)HTAssoc.h
+	$(COMPILE) $(CMN)HTAABrow.c
+
+$(LOB)/HTAAProt$o : $(CMN)HTAAProt.c $(CMN)HTAAProt.h \
+	 $(CMN)HTUtils.h $(CMN)HTAAUtil.h \
+	 $(CMN)HTAssoc.h $(CMN)HTLex.h
+	$(COMPILE) $(CMN)HTAAProt.c
+
+$(LOB)/HTAssoc$o : $(CMN)HTAssoc.c $(CMN)HTAssoc.h \
+	$(CMN)HTUtils.h $(CMN)HTString.h $(CMN)HTList.h
+	$(COMPILE) $(CMN)HTAssoc.c
+
+$(LOB)/HTLex$o : $(CMN)HTLex.c $(CMN)HTLex.h $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTLex.c
+
+$(LOB)/HTUU$o : $(CMN)HTUU.c $(CMN)HTUU.h $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTUU.c
+
+
+#	Communications & Files
+
+$(LOB)/HTTP$o : $(CMN)HTTP.c $(CMN)HTUtils.h $(CMN)HTAABrow.h
+	$(COMPILE) $(CMN)HTTP.c
+
+$(LOB)/HTTCP$o : $(CMN)HTTCP.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTTCP.c
+
+$(LOB)/HTFile$o : $(CMN)HTFile.c $(CMN)HTUtils.h \
+	 $(CMN)HTMLDTD.h
+	$(COMPILE) $(CMN)HTFile.c
+
+$(LOB)/HTBTree$o : $(CMN)HTBTree.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTBTree.c
+
+$(LOB)/HTFTP$o : $(CMN)HTFTP.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTFTP.c
+
+$(LOB)/HTAccess$o : $(CMN)HTAccess.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTAccess.c
+
+$(LOB)/HTParse$o : $(CMN)HTParse.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTParse.c
+
+$(LOB)/HTVMS_WaisUI$o : $(CMN)HTVMS_WaisUI.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTVMS_WaisUI.c
+
+$(LOB)/HTDOS$o : $(CMN)HTDOS.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)HTDOS.c
+
+# Utilities
+$(LOB)/dtd_util$o : $(CMN)dtd_util.c $(CMN)HTUtils.h
+	$(COMPILE) $(CMN)dtd_util.c
+
+DTD_UTIL = $(LOB)/dtd_util$o $(LOB)/HTMLDTD$o
+
+sources: dtd_util$x src0_HTMLDTD.txt src1_HTMLDTD.txt
+	-rm -f *_HTMLDTD.h
+	./dtd_util$x -l src0_HTMLDTD.txt -s -c -o src0_HTMLDTD.h
+	./dtd_util$x -l src1_HTMLDTD.txt -t -c -o src1_HTMLDTD.h
+	./dtd_util$x -l src0_HTMLDTD.txt -s -h -o hdr_HTMLDTD.h
+
+dtd_util$x: $(DTD_UTIL)
+	$(CC) $(CC_OPTS) $(LDFLAGS) -o $@  $(DTD_UTIL) $(LIBS)
+
+check: dtd_util$x
+	@echo "** comparing builtin src0_HTMLDTD.txt"
+	./dtd_util$x >HTMLDTD.log
+	-diff -u src0_HTMLDTD.txt HTMLDTD.log
+
+	@echo "** comparing reloaded src0_HTMLDTD.txt"
+	./dtd_util$x -l src0_HTMLDTD.txt >HTMLDTD.log
+	-diff -u src0_HTMLDTD.txt HTMLDTD.log
+
+	@echo "** comparing header generated from builtin"
+	./dtd_util$x -s -h -o HTMLDTD.log
+	-diff -u hdr_HTMLDTD.h HTMLDTD.log
+	./dtd_util$x -t -h -o HTMLDTD.log
+	-diff -u hdr_HTMLDTD.h HTMLDTD.log
+
+	@echo "** comparing header generated by load"
+	./dtd_util$x -s -h -o HTMLDTD.log -l src0_HTMLDTD.txt
+	-diff -u hdr_HTMLDTD.h HTMLDTD.log
+	./dtd_util$x -t -h -o HTMLDTD.log -l src1_HTMLDTD.txt
+	-diff -u hdr_HTMLDTD.h HTMLDTD.log
+
+	@echo "** comparing strict source generated from builtin"
+	./dtd_util$x -s -c -o HTMLDTD.log
+	-diff -u src0_HTMLDTD.h HTMLDTD.log
+
+	@echo "** comparing strict source generated by load"
+	./dtd_util$x -s -c -o HTMLDTD.log -l src0_HTMLDTD.txt
+	-diff -u src0_HTMLDTD.h HTMLDTD.log
+
+	@echo "** comparing tagsoup source generated from builtin"
+	./dtd_util$x -t -c -o HTMLDTD.log
+	-diff -u src1_HTMLDTD.h HTMLDTD.log
+
+	@echo "** comparing tagsoup source generated by load"
+	./dtd_util$x -t -c -o HTMLDTD.log -l src1_HTMLDTD.txt
+	-diff -u src1_HTMLDTD.h HTMLDTD.log
+
+# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/WWW/Library/Implementation/src0_HTMLDTD.h b/WWW/Library/Implementation/src0_HTMLDTD.h
new file mode 100644
index 00000000..83884709
--- /dev/null
+++ b/WWW/Library/Implementation/src0_HTMLDTD.h
@@ -0,0 +1,2422 @@
+/* $LynxId: src0_HTMLDTD.h,v 1.45 2011/10/07 00:54:36 Kihara.Hideto Exp $ */
+#ifndef src_HTMLDTD_H0
+#define src_HTMLDTD_H0 1
+
+#ifndef once_HTMLDTD
+#define once_HTMLDTD 1
+
+#define T_A             0x00008,0x0B007,0x0FF17,0x37787,0x77BA7,0x8604F,0x00014
+#define T_ABBR          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000
+#define T_ACRONYM       0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000
+#define T_ADDRESS       0x00200,0x0F14F,0x8FFFF,0x36680,0xB6FAF,0x80317,0x00000
+#define T_APPLET        0x02000,0x0B0CF,0x8FFFF,0x37F9F,0xB7FBF,0x8300F,0x00000
+#define T_AREA          0x08000,0x00000,0x00000,0x08000,0x3FFFF,0x00F1F,0x00001
+#define T_AU            0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000
+#define T_AUTHOR        0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000
+#define T_B             0x00001,0x8B04F,0xAFFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_BANNER        0x00200,0x0FB8F,0x0FFFF,0x30000,0x30000,0x8031F,0x00000
+#define T_BASE          0x40000,0x00000,0x00000,0x50000,0x50000,0x8000F,0x00001
+#define T_BASEFONT      0x01000,0x00000,0x00000,0x377AF,0x37FAF,0x8F000,0x00001
+#define T_BDO           0x00100,0x0B04F,0x8FFFF,0x36680,0xB6FAF,0x0033F,0x00000
+#define T_BGSOUND       0x01000,0x00000,0x00000,0x777AF,0x77FAF,0x8730F,0x00001
+#define T_BIG           0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_BLINK         0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00001,0x00014
+#define T_BLOCKQUOTE    0x00200,0xAFBCF,0xAFFFF,0xB6680,0xB6FAF,0x8031F,0x00000
+#define T_BODY          0x20000,0x2FB8F,0x2FFFF,0x30000,0x30000,0xDFF7F,0x00003
+#define T_BODYTEXT      0x20000,0x0FB8F,0xAFFFF,0x30200,0xB7FAF,0x8F17F,0x00003
+#define T_BQ            0x00200,0xAFBCF,0xAFFFF,0xB6680,0xB6FAF,0x8031F,0x00000
+#define T_BR            0x01000,0x00000,0x00000,0x377BF,0x77FBF,0x8101F,0x00001
+#define T_BUTTON        0x02000,0x0BB07,0x0FF37,0x0378F,0x37FBF,0x8115F,0x00000
+#define T_CAPTION       0x00100,0x0B04F,0x8FFFF,0x06A00,0xB6FA7,0x8035F,0x00000
+#define T_CENTER        0x00200,0x8FBCF,0x8FFFF,0xB6680,0xB6FA7,0x8071F,0x00000
+#define T_CITE          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00010
+#define T_CODE          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00000
+#define T_COL           0x04000,0x00000,0x00000,0x00820,0x36FA7,0x88F5F,0x00001
+#define T_COLGROUP      0x00020,0x04000,0x04000,0x00800,0x36FA7,0x8875F,0x00001
+#define T_COMMENT       0x00004,0x00000,0x00000,0xA77AF,0x7FFFF,0x00003,0x00000
+#define T_CREDIT        0x00100,0x0B04F,0x8FFFF,0x06A00,0xB7FBF,0x8030F,0x00000
+#define T_DD            0x00400,0x0FBCF,0x8FFFF,0x00800,0xB6FFF,0x8071F,0x00001
+#define T_DEL           0x00002,0x8BBCF,0x8FFFF,0xA7F8F,0xF7FBF,0x00003,0x00000
+#define T_DFN           0x00002,0x8B0CF,0x8FFFF,0x8778F,0xF7FBF,0x00003,0x00000
+#define T_DIR           0x00800,0x0B400,0x0F75F,0x37680,0x36FB7,0x84F7F,0x00000
+#define T_DIV           0x00200,0x8FBCF,0x8FFFF,0xB66A0,0xB7FFF,0x8031F,0x00004
+#define T_DL            0x00800,0x0C480,0x8FFFF,0x36680,0xB7FB7,0x0075F,0x00000
+#define T_DLC           0x00800,0x0C480,0x8FFFF,0x36680,0xB7FB7,0x0075F,0x00000
+#define T_DT            0x00400,0x0B04F,0x0B1FF,0x00800,0x17FFF,0x8071F,0x00001
+#define T_EM            0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00010
+#define T_EMBED         0x02000,0x8F107,0x8FFF7,0xB6FBF,0xB7FBF,0x1FF7F,0x00001
+#define T_FIELDSET      0x00200,0x8FB4F,0x8FF7F,0x86787,0xB7FF7,0x8805F,0x00000
+#define T_FIG           0x00200,0x0FB00,0x8FFFF,0x36680,0xB6FBF,0x8834F,0x00000
+#define T_FN            0x00200,0x8FBCF,0x8FFFF,0xB6680,0xB7EBF,0x8114F,0x00000
+#define T_FONT          0x00001,0x8B04F,0x8FFFF,0xB778F,0xF7FBF,0x00001,0x00014
+#define T_FORM          0x00080,0x0FF6F,0x0FF7F,0x36E07,0x32F07,0x88DFF,0x00000
+#define T_FRAME         0x10000,0x00000,0x00000,0x10000,0x10000,0x9FFFF,0x00001
+#define T_FRAMESET      0x10000,0x90000,0x90000,0x90000,0x93000,0x9FFFF,0x00000
+#define T_H1            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H2            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H3            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H4            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H5            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H6            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_HEAD          0x40000,0x4F000,0x47000,0x10000,0x10000,0x9FF7F,0x00007
+#define T_HR            0x04000,0x00000,0x00000,0x3FE80,0x3FFBF,0x87F37,0x00001
+#define T_HTML          0x10000,0x7FB8F,0x7FFFF,0x00000,0x00000,0x1FFFF,0x00003
+#define T_HY            0x01000,0x00000,0x00000,0x3779F,0x77FBF,0x8101F,0x00001
+#define T_I             0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_IFRAME        0x02000,0x8FBCF,0x8FFFF,0xB679F,0xB6FBF,0xD315F,0x00000
+#define T_IMG           0x01000,0x00000,0x00000,0x3779F,0x37FBF,0x80000,0x00001
+#define T_INPUT         0x00040,0x00000,0x00000,0x03F87,0x37F87,0x8904F,0x00001
+#define T_INS           0x00002,0x8BBCF,0x8FFFF,0xA7F8F,0xF7FBF,0x00003,0x00000
+#define T_ISINDEX       0x08000,0x00000,0x00000,0x7778F,0x7FFAF,0x80007,0x00001
+#define T_KBD           0x00002,0x00000,0x00000,0x2778F,0x77FBF,0x00003,0x00000
+#define T_KEYGEN        0x00040,0x00000,0x00000,0x07FB7,0x37FB7,0x80070,0x00001
+#define T_LABEL         0x00002,0x0304F,0x0FFFF,0x0679F,0x36FBF,0x00007,0x00000
+#define T_LEGEND        0x00002,0x0B04F,0x8FF7F,0x00200,0xB7FA7,0x00003,0x00000
+#define T_LH            0x00400,0x0BB7F,0x8FFFF,0x00800,0x97FFF,0x8071F,0x00001
+#define T_LI            0x00400,0x0BBFF,0x8FFFF,0x00800,0x97FFF,0x8071F,0x00001
+#define T_LINK          0x08000,0x00000,0x00000,0x50000,0x50000,0x0FF7F,0x00001
+#define T_LISTING       0x00800,0x00000,0x00000,0x36600,0x36F00,0x80F1F,0x00000
+#define T_MAP           0x08000,0x08000,0x08000,0x37FCF,0x37FBF,0x0051F,0x00000
+#define T_MARQUEE       0x04000,0x0000F,0x8F01F,0x37787,0xB7FA7,0x8301C,0x00000
+#define T_MATH          0x00004,0x0B05F,0x8FFFF,0x2778F,0xF7FBF,0x0001F,0x00000
+#define T_MENU          0x00800,0x0B400,0x0F75F,0x17680,0x36FB7,0x88F7F,0x00000
+#define T_META          0x08000,0x00000,0x00000,0x50000,0x50000,0x0FF7F,0x00001
+#define T_NEXTID        0x01000,0x00000,0x00000,0x50000,0x1FFF7,0x00001,0x00001
+#define T_NOFRAMES      0x20000,0x2FB8F,0x0FFFF,0x17000,0x17000,0x0CF5F,0x00000
+#define T_NOTE          0x00200,0x0BBAF,0x8FFFF,0x376B0,0xB7FFF,0x8031F,0x00000
+#define T_OBJECT        0x02000,0x8FBCF,0x8FFFF,0xB679F,0xB6FBF,0x83D5F,0x00020
+#define T_OL            0x00800,0x0C400,0x8FFFF,0x37680,0xB7FB7,0x88F7F,0x00000
+#define T_OPTION        0x08000,0x00000,0x00000,0x00040,0x37FFF,0x8031F,0x00001
+#define T_OVERLAY       0x04000,0x00000,0x00000,0x00200,0x37FBF,0x83F7F,0x00001
+#define T_P             0x00100,0x0B04F,0x8FFFF,0x36680,0xB6FA7,0x80117,0x00001
+#define T_PARAM         0x01000,0x00000,0x00000,0x33500,0x37FFF,0x81560,0x00001
+#define T_PLAINTEXT     0x10000,0xFFFFF,0xFFFFF,0x90000,0x90000,0x3FFFF,0x00001
+#define T_PRE           0x00200,0x0F04F,0x0F05E,0x36680,0x36FF0,0x8071E,0x00000
+#define T_Q             0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00000
+#define T_S             0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00000
+#define T_SAMP          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00010
+#define T_SCRIPT        0x02000,0x00000,0x00000,0x77F9F,0x77FFF,0x87D5F,0x00000
+#define T_SELECT        0x00040,0x08000,0x08000,0x03FAF,0x33FBF,0x80D5F,0x00008
+#define T_SHY           0x01000,0x00000,0x00000,0x3779F,0x77FBF,0x8101F,0x00001
+#define T_SMALL         0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_SPAN          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x80003,0x00000
+#define T_SPOT          0x00008,0x00000,0x00000,0x3FFF7,0x3FFF7,0x00008,0x00001
+#define T_STRIKE        0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00000
+#define T_STRONG        0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00010
+#define T_STYLE         0x40000,0x00000,0x00000,0x7638F,0x76FAF,0x8001F,0x00000
+#define T_SUB           0x00004,0x8B05F,0x8FFFF,0x8779F,0xF7FBF,0x00007,0x00000
+#define T_SUP           0x00004,0x8B05F,0x8FFFF,0x8779F,0xF7FBF,0x00007,0x00000
+#define T_TAB           0x01000,0x00000,0x00000,0x3778F,0x57FAF,0x00001,0x00001
+#define T_TABLE         0x00800,0x0F1E0,0x8FFFF,0x36680,0xB6FA7,0x8C57F,0x00000
+#define T_TBODY         0x00020,0x00020,0x8FFFF,0x00880,0xB7FB7,0x8C75F,0x00003
+#define T_TD            0x00400,0x0FBCF,0x8FFFF,0x00020,0xB7FB7,0x8C75F,0x00001
+#define T_TEXTAREA      0x00040,0x00000,0x00000,0x07F8F,0x33FBF,0x80D5F,0x00040
+#define T_TEXTFLOW      0x20000,0x8FBFF,0x9FFFF,0x977B0,0xB7FB7,0x9B00F,0x00003
+#define T_TFOOT         0x00020,0x00020,0x8FFFF,0x00800,0xB7FB7,0x8CF5F,0x00001
+#define T_TH            0x00400,0x0FBCF,0x0FFFF,0x00020,0xB7FB7,0x8CF5F,0x00001
+#define T_THEAD         0x00020,0x00020,0x8FFFF,0x00800,0xB7FB7,0x8CF5F,0x00001
+#define T_TITLE         0x40000,0x00000,0x00000,0x50000,0x50000,0x0031F,0x0000C
+#define T_TR            0x00020,0x00400,0x8FFFF,0x00820,0xB7FB7,0x8C75F,0x00001
+#define T_TT            0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00010
+#define T_U             0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_UL            0x00800,0x0C480,0x8FFFF,0x36680,0xB7FFF,0x8075F,0x00000
+#define T_VAR           0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00000
+#define T_WBR           0x00001,0x00000,0x00000,0x3778F,0x77FBF,0x8101F,0x00001
+#define T_XMP           0x00800,0x00000,0x00000,0x367E0,0x36FFF,0x0875F,0x00001
+#define T_OBJECT_PCDATA 0x02000,0x8FBCF,0x8FFFF,0xB679F,0xB6FBF,0x83D5F,0x00008
+#define T__UNREC_	0x00000,0x00000,0x00000,0x00000,0x00000,0x00000,0x00000
+#ifdef USE_PRETTYSRC
+# define N HTMLA_NORMAL
+# define i HTMLA_ANAME
+# define h HTMLA_HREF
+# define c HTMLA_CLASS
+# define x HTMLA_AUXCLASS
+# define T(t) , t
+#else
+# define T(t)			/*nothing */
+#endif
+/* *INDENT-OFF* */
+
+#define ATTR_TYPE(name) #name, name##_attr_list
+
+/* generic attributes, used in different tags */
+static const attr core_attr_list[] = {
+	{ "CLASS"         T(c) },
+	{ "ID"            T(i) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType core_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ 0, 0 },
+};
+
+static const attr i18n_attr_list[] = {
+	{ "DIR"           T(N) },
+	{ "LANG"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType i18n_attr_type[] = {
+	{ ATTR_TYPE(i18n) },
+	{ 0, 0 },
+};
+
+static const attr events_attr_list[] = {
+	{ "ONCLICK"       T(N) },
+	{ "ONDBLCLICK"    T(N) },
+	{ "ONKEYDOWN"     T(N) },
+	{ "ONKEYPRESS"    T(N) },
+	{ "ONKEYUP"       T(N) },
+	{ "ONMOUSEDOWN"   T(N) },
+	{ "ONMOUSEMOVE"   T(N) },
+	{ "ONMOUSEOUT"    T(N) },
+	{ "ONMOUSEOVER"   T(N) },
+	{ "ONMOUSEUP"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType events_attr_type[] = {
+	{ ATTR_TYPE(events) },
+	{ 0, 0 },
+};
+
+static const attr align_attr_list[] = {
+	{ "ALIGN"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType align_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ 0, 0 },
+};
+
+static const attr cellalign_attr_list[] = {
+	{ "ALIGN"         T(N) },
+	{ "CHAR"          T(N) },
+	{ "CHAROFF"       T(N) },
+	{ "VALIGN"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType cellalign_attr_type[] = {
+	{ ATTR_TYPE(cellalign) },
+	{ 0, 0 },
+};
+
+static const attr bgcolor_attr_list[] = {
+	{ "BGCOLOR"       T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType bgcolor_attr_type[] = {
+	{ ATTR_TYPE(bgcolor) },
+	{ 0, 0 },
+};
+
+
+/* tables defining attributes per-tag in terms of generic attributes (editable) */
+static const attr A_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "CHARSET"       T(N) },
+	{ "CLEAR"         T(N) },
+	{ "COORDS"        T(N) },
+	{ "HREF"          T(h) },
+	{ "HREFLANG"      T(N) },
+	{ "ISMAP"         T(N) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(i) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "REL"           T(N) },
+	{ "REV"           T(N) },
+	{ "SHAPE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TARGET"        T(N) },
+	{ "TYPE"          T(N) },
+	{ "URN"           T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType A_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(A) },
+	{ 0, 0 },
+};
+
+static const attr ADDRESS_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "NOWRAP"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType ADDRESS_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(ADDRESS) },
+	{ 0, 0 },
+};
+
+static const attr APPLET_attr_list[] = {
+	{ "ALT"           T(N) },
+	{ "CLEAR"         T(N) },
+	{ "CODE"          T(N) },
+	{ "CODEBASE"      T(h) },
+	{ "DOWNLOAD"      T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "NAME"          T(i) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType APPLET_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(APPLET) },
+	{ 0, 0 },
+};
+
+static const attr AREA_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "ALT"           T(N) },
+	{ "CLEAR"         T(N) },
+	{ "COORDS"        T(N) },
+	{ "HREF"          T(h) },
+	{ "NOHREF"        T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "SHAPE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TARGET"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType AREA_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(AREA) },
+	{ 0, 0 },
+};
+
+static const attr BASE_attr_list[] = {
+	{ "HREF"          T(h) },
+	{ "TARGET"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BASE_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(BASE) },
+	{ 0, 0 },
+};
+
+static const attr BGSOUND_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "LOOP"          T(N) },
+	{ "SRC"           T(h) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BGSOUND_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BGSOUND) },
+	{ 0, 0 },
+};
+
+static const attr BODY_attr_list[] = {
+	{ "ALINK"         T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "CLEAR"         T(N) },
+	{ "LINK"          T(N) },
+	{ "ONLOAD"        T(N) },
+	{ "ONUNLOAD"      T(N) },
+	{ "TEXT"          T(N) },
+	{ "VLINK"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BODY_attr_type[] = {
+	{ ATTR_TYPE(bgcolor) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BODY) },
+	{ 0, 0 },
+};
+
+static const attr BODYTEXT_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DATA"          T(N) },
+	{ "NAME"          T(N) },
+	{ "OBJECT"        T(N) },
+	{ "REF"           T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ "VALUETYPE"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BODYTEXT_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BODYTEXT) },
+	{ 0, 0 },
+};
+
+static const attr BQ_attr_list[] = {
+	{ "CITE"          T(h) },
+	{ "CLEAR"         T(N) },
+	{ "NOWRAP"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BQ_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BQ) },
+	{ 0, 0 },
+};
+
+static const attr BUTTON_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "CLEAR"         T(N) },
+	{ "DISABLED"      T(N) },
+	{ "NAME"          T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "READONLY"      T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BUTTON_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BUTTON) },
+	{ 0, 0 },
+};
+
+static const attr CAPTION_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType CAPTION_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(CAPTION) },
+	{ 0, 0 },
+};
+
+static const attr COL_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "SPAN"          T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType COL_attr_type[] = {
+	{ ATTR_TYPE(cellalign) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(COL) },
+	{ 0, 0 },
+};
+
+static const attr DEL_attr_list[] = {
+	{ "CITE"          T(N) },
+	{ "DATETIME"      T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType DEL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(DEL) },
+	{ 0, 0 },
+};
+
+static const attr DIV_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType DIV_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(DIV) },
+	{ 0, 0 },
+};
+
+static const attr DL_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType DL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(DL) },
+	{ 0, 0 },
+};
+
+static const attr EMBED_attr_list[] = {
+	{ "ALT"           T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLEAR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "IMAGEMAP"      T(N) },
+	{ "ISMAP"         T(N) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(i) },
+	{ "NOFLOW"        T(N) },
+	{ "PARAMS"        T(N) },
+	{ "SRC"           T(h) },
+	{ "UNITS"         T(N) },
+	{ "USEMAP"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType EMBED_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(EMBED) },
+	{ 0, 0 },
+};
+
+static const attr FIG_attr_list[] = {
+	{ "BORDER"        T(N) },
+	{ "CLEAR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "IMAGEMAP"      T(N) },
+	{ "ISOBJECT"      T(N) },
+	{ "MD"            T(N) },
+	{ "NOFLOW"        T(N) },
+	{ "SRC"           T(h) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FIG_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(FIG) },
+	{ 0, 0 },
+};
+
+static const attr FONT_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "COLOR"         T(N) },
+	{ "END"           T(N) },
+	{ "FACE"          T(N) },
+	{ "SIZE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FONT_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(FONT) },
+	{ 0, 0 },
+};
+
+static const attr FORM_attr_list[] = {
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACTION"        T(h) },
+	{ "CLEAR"         T(N) },
+	{ "ENCTYPE"       T(N) },
+	{ "METHOD"        T(N) },
+	{ "ONRESET"       T(N) },
+	{ "ONSUBMIT"      T(N) },
+	{ "SCRIPT"        T(N) },
+	{ "SUBJECT"       T(N) },
+	{ "TARGET"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FORM_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(FORM) },
+	{ 0, 0 },
+};
+
+static const attr FRAME_attr_list[] = {
+	{ "FRAMEBORDER"   T(N) },
+	{ "LONGDESC"      T(h) },
+	{ "MARGINHEIGHT"  T(N) },
+	{ "MARGINWIDTH"   T(N) },
+	{ "NAME"          T(N) },
+	{ "NORESIZE"      T(N) },
+	{ "SCROLLING"     T(N) },
+	{ "SRC"           T(h) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FRAME_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(FRAME) },
+	{ 0, 0 },
+};
+
+static const attr FRAMESET_attr_list[] = {
+	{ "COLS"          T(N) },
+	{ "ONLOAD"        T(N) },
+	{ "ONUNLOAD"      T(N) },
+	{ "ROWS"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FRAMESET_attr_type[] = {
+	{ ATTR_TYPE(FRAMESET) },
+	{ 0, 0 },
+};
+
+static const attr GEN_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType GEN_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(GEN) },
+	{ 0, 0 },
+};
+
+static const attr H_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "MD"            T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "SEQNUM"        T(N) },
+	{ "SKIP"          T(N) },
+	{ "SRC"           T(h) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType H_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(H) },
+	{ 0, 0 },
+};
+
+static const attr HR_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "MD"            T(N) },
+	{ "NOSHADE"       T(N) },
+	{ "SIZE"          T(N) },
+	{ "SRC"           T(h) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType HR_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(HR) },
+	{ 0, 0 },
+};
+
+static const attr IFRAME_attr_list[] = {
+	{ "FRAMEBORDER"   T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "LONGDESC"      T(h) },
+	{ "MARGINHEIGHT"  T(N) },
+	{ "MARGINWIDTH"   T(N) },
+	{ "NAME"          T(N) },
+	{ "SCROLLING"     T(N) },
+	{ "SRC"           T(h) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType IFRAME_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(IFRAME) },
+	{ 0, 0 },
+};
+
+static const attr IMG_attr_list[] = {
+	{ "ALT"           T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLEAR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ISMAP"         T(N) },
+	{ "ISOBJECT"      T(N) },
+	{ "LONGDESC"      T(h) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(N) },
+	{ "SRC"           T(h) },
+	{ "UNITS"         T(N) },
+	{ "USEMAP"        T(h) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType IMG_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(IMG) },
+	{ 0, 0 },
+};
+
+static const attr INPUT_attr_list[] = {
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCESSKEY"     T(N) },
+	{ "ALT"           T(N) },
+	{ "CHECKED"       T(N) },
+	{ "CLEAR"         T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ISMAP"         T(N) },
+	{ "MAX"           T(N) },
+	{ "MAXLENGTH"     T(N) },
+	{ "MD"            T(N) },
+	{ "MIN"           T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "ONSELECT"      T(N) },
+	{ "READONLY"      T(N) },
+	{ "SIZE"          T(N) },
+	{ "SRC"           T(h) },
+	{ "TABINDEX"      T(N) },
+	{ "TYPE"          T(N) },
+	{ "USEMAP"        T(N) },
+	{ "VALUE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType INPUT_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(INPUT) },
+	{ 0, 0 },
+};
+
+static const attr ISINDEX_attr_list[] = {
+	{ "ACTION"        T(h) },
+	{ "HREF"          T(h) },
+	{ "PROMPT"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType ISINDEX_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(ISINDEX) },
+	{ 0, 0 },
+};
+
+static const attr KEYGEN_attr_list[] = {
+	{ "CHALLENGE"     T(N) },
+	{ "NAME"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType KEYGEN_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(KEYGEN) },
+	{ 0, 0 },
+};
+
+static const attr LABEL_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "CLEAR"         T(N) },
+	{ "FOR"           T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType LABEL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(LABEL) },
+	{ 0, 0 },
+};
+
+static const attr LI_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "MD"            T(N) },
+	{ "SKIP"          T(N) },
+	{ "SRC"           T(h) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType LI_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(LI) },
+	{ 0, 0 },
+};
+
+static const attr LINK_attr_list[] = {
+	{ "CHARSET"       T(N) },
+	{ "HREF"          T(h) },
+	{ "HREFLANG"      T(N) },
+	{ "MEDIA"         T(N) },
+	{ "REL"           T(N) },
+	{ "REV"           T(N) },
+	{ "TARGET"        T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType LINK_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(LINK) },
+	{ 0, 0 },
+};
+
+static const attr MAP_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "NAME"          T(i) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType MAP_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(MAP) },
+	{ 0, 0 },
+};
+
+static const attr MATH_attr_list[] = {
+	{ "BOX"           T(N) },
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType MATH_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(MATH) },
+	{ 0, 0 },
+};
+
+static const attr META_attr_list[] = {
+	{ "CHARSET"       T(N) },
+	{ "CONTENT"       T(N) },
+	{ "HTTP-EQUIV"    T(N) },
+	{ "NAME"          T(N) },
+	{ "SCHEME"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType META_attr_type[] = {
+	{ ATTR_TYPE(META) },
+	{ 0, 0 },
+};
+
+static const attr NEXTID_attr_list[] = {
+	{ "N"             T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType NEXTID_attr_type[] = {
+	{ ATTR_TYPE(NEXTID) },
+	{ 0, 0 },
+};
+
+static const attr NOTE_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "MD"            T(N) },
+	{ "ROLE"          T(x) },
+	{ "SRC"           T(h) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType NOTE_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(NOTE) },
+	{ 0, 0 },
+};
+
+static const attr OBJECT_attr_list[] = {
+	{ "ARCHIVE"       T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASSID"       T(h) },
+	{ "CODEBASE"      T(h) },
+	{ "CODETYPE"      T(N) },
+	{ "DATA"          T(h) },
+	{ "DECLARE"       T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ISMAP"         T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "SHAPES"        T(N) },
+	{ "STANDBY"       T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TYPE"          T(N) },
+	{ "USEMAP"        T(h) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType OBJECT_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(OBJECT) },
+	{ 0, 0 },
+};
+
+static const attr OL_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "CONTINUE"      T(N) },
+	{ "SEQNUM"        T(N) },
+	{ "START"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType OL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(OL) },
+	{ 0, 0 },
+};
+
+static const attr OPTION_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "LABEL"         T(N) },
+	{ "SELECTED"      T(N) },
+	{ "SHAPE"         T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType OPTION_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(OPTION) },
+	{ 0, 0 },
+};
+
+static const attr OVERLAY_attr_list[] = {
+	{ "HEIGHT"        T(N) },
+	{ "IMAGEMAP"      T(N) },
+	{ "MD"            T(N) },
+	{ "SRC"           T(h) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ "X"             T(N) },
+	{ "Y"             T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType OVERLAY_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(OVERLAY) },
+	{ 0, 0 },
+};
+
+static const attr P_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "NOWRAP"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType P_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(P) },
+	{ 0, 0 },
+};
+
+static const attr PARAM_attr_list[] = {
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCEPT-ENCODING" T(N) },
+	{ "CLEAR"         T(N) },
+	{ "DATA"          T(N) },
+	{ "NAME"          T(N) },
+	{ "OBJECT"        T(N) },
+	{ "REF"           T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ "VALUEREF"      T(N) },
+	{ "VALUETYPE"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType PARAM_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(PARAM) },
+	{ 0, 0 },
+};
+
+static const attr Q_attr_list[] = {
+	{ "CITE"          T(h) },
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType Q_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(Q) },
+	{ 0, 0 },
+};
+
+static const attr SCRIPT_attr_list[] = {
+	{ "CHARSET"       T(N) },
+	{ "CLEAR"         T(N) },
+	{ "DEFER"         T(N) },
+	{ "EVENT"         T(N) },
+	{ "FOR"           T(N) },
+	{ "LANGUAGE"      T(N) },
+	{ "NAME"          T(N) },
+	{ "SCRIPTENGINE"  T(N) },
+	{ "SRC"           T(h) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType SCRIPT_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(SCRIPT) },
+	{ 0, 0 },
+};
+
+static const attr SELECT_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "MD"            T(N) },
+	{ "MULTIPLE"      T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "SIZE"          T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType SELECT_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(SELECT) },
+	{ 0, 0 },
+};
+
+static const attr STYLE_attr_list[] = {
+	{ "MEDIA"         T(N) },
+	{ "NOTATION"      T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType STYLE_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(STYLE) },
+	{ 0, 0 },
+};
+
+static const attr TAB_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DP"            T(N) },
+	{ "INDENT"        T(N) },
+	{ "TO"            T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TAB_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TAB) },
+	{ 0, 0 },
+};
+
+static const attr TABLE_attr_list[] = {
+	{ "BACKGROUND"    T(h) },
+	{ "BORDER"        T(N) },
+	{ "CELLPADDING"   T(N) },
+	{ "CELLSPACING"   T(N) },
+	{ "CLEAR"         T(N) },
+	{ "COLS"          T(N) },
+	{ "COLSPEC"       T(N) },
+	{ "DP"            T(N) },
+	{ "FRAME"         T(N) },
+	{ "NOFLOW"        T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "RULES"         T(N) },
+	{ "SUMMARY"       T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TABLE_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TABLE) },
+	{ 0, 0 },
+};
+
+static const attr TD_attr_list[] = {
+	{ "ABBR"          T(N) },
+	{ "AXES"          T(N) },
+	{ "AXIS"          T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "CLEAR"         T(N) },
+	{ "COLSPAN"       T(N) },
+	{ "DP"            T(N) },
+	{ "HEADERS"       T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "ROWSPAN"       T(N) },
+	{ "SCOPE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TD_attr_type[] = {
+	{ ATTR_TYPE(cellalign) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TD) },
+	{ 0, 0 },
+};
+
+static const attr TEXTAREA_attr_list[] = {
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCESSKEY"     T(N) },
+	{ "CLEAR"         T(N) },
+	{ "COLS"          T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "ONSELECT"      T(N) },
+	{ "READONLY"      T(N) },
+	{ "ROWS"          T(N) },
+	{ "TABINDEX"      T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TEXTAREA_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TEXTAREA) },
+	{ 0, 0 },
+};
+
+static const attr TR_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DP"            T(N) },
+	{ "NOWRAP"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TR_attr_type[] = {
+	{ ATTR_TYPE(cellalign) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TR) },
+	{ 0, 0 },
+};
+
+static const attr UL_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "MD"            T(N) },
+	{ "PLAIN"         T(N) },
+	{ "SRC"           T(h) },
+	{ "TYPE"          T(N) },
+	{ "WRAP"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType UL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(UL) },
+	{ 0, 0 },
+};
+
+
+/* attribute lists for the runtime (generated by dtd_util) */
+static const attr A_attr[] = {          /* A attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "CHARSET"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COORDS"        T(N) },
+	{ "DIR"           T(N) },
+	{ "HREF"          T(h) },
+	{ "HREFLANG"      T(N) },
+	{ "ID"            T(i) },
+	{ "ISMAP"         T(N) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(i) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "REL"           T(N) },
+	{ "REV"           T(N) },
+	{ "SHAPE"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "URN"           T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr ADDRESS_attr[] = {    /* ADDRESS attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr APPLET_attr[] = {     /* APPLET attributes */
+	{ "ALIGN"         T(N) },
+	{ "ALT"           T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "CODE"          T(N) },
+	{ "CODEBASE"      T(h) },
+	{ "DIR"           T(N) },
+	{ "DOWNLOAD"      T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(i) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr AREA_attr[] = {       /* AREA attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "ALT"           T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COORDS"        T(N) },
+	{ "DIR"           T(N) },
+	{ "HREF"          T(h) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOHREF"        T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "SHAPE"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BASE_attr[] = {       /* BASE attributes */
+	{ "CLASS"         T(c) },
+	{ "HREF"          T(h) },
+	{ "ID"            T(i) },
+	{ "STYLE"         T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BGSOUND_attr[] = {    /* BGSOUND attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "LOOP"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BODY_attr[] = {       /* BODY attributes */
+	{ "ALINK"         T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "BGCOLOR"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "LINK"          T(N) },
+	{ "ONLOAD"        T(N) },
+	{ "ONUNLOAD"      T(N) },
+	{ "STYLE"         T(N) },
+	{ "TEXT"          T(N) },
+	{ "TITLE"         T(N) },
+	{ "VLINK"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BODYTEXT_attr[] = {   /* BODYTEXT attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DATA"          T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "OBJECT"        T(N) },
+	{ "REF"           T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ "VALUETYPE"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BQ_attr[] = {         /* BLOCKQUOTE attributes */
+	{ "CITE"          T(h) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BUTTON_attr[] = {     /* BUTTON attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "READONLY"      T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr CAPTION_attr[] = {    /* CAPTION attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr COL_attr[] = {        /* COL attributes */
+	{ "ALIGN"         T(N) },
+	{ "CHAR"          T(N) },
+	{ "CHAROFF"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "SPAN"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VALIGN"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr DEL_attr[] = {        /* DEL attributes */
+	{ "CITE"          T(N) },
+	{ "CLASS"         T(c) },
+	{ "DATETIME"      T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr DIV_attr[] = {        /* CENTER attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr DL_attr[] = {         /* DL attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr EMBED_attr[] = {      /* EMBED attributes */
+	{ "ALIGN"         T(N) },
+	{ "ALT"           T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "IMAGEMAP"      T(N) },
+	{ "ISMAP"         T(N) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(i) },
+	{ "NOFLOW"        T(N) },
+	{ "PARAMS"        T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "USEMAP"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FIG_attr[] = {        /* FIG attributes */
+	{ "ALIGN"         T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "IMAGEMAP"      T(N) },
+	{ "ISOBJECT"      T(N) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NOFLOW"        T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FONT_attr[] = {       /* BASEFONT attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COLOR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "END"           T(N) },
+	{ "FACE"          T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "SIZE"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FORM_attr[] = {       /* FORM attributes */
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACTION"        T(h) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ENCTYPE"       T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "METHOD"        T(N) },
+	{ "ONRESET"       T(N) },
+	{ "ONSUBMIT"      T(N) },
+	{ "SCRIPT"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "SUBJECT"       T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FRAME_attr[] = {      /* FRAME attributes */
+	{ "CLASS"         T(c) },
+	{ "FRAMEBORDER"   T(N) },
+	{ "ID"            T(i) },
+	{ "LONGDESC"      T(h) },
+	{ "MARGINHEIGHT"  T(N) },
+	{ "MARGINWIDTH"   T(N) },
+	{ "NAME"          T(N) },
+	{ "NORESIZE"      T(N) },
+	{ "SCROLLING"     T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FRAMESET_attr[] = {   /* FRAMESET attributes */
+	{ "COLS"          T(N) },
+	{ "ONLOAD"        T(N) },
+	{ "ONUNLOAD"      T(N) },
+	{ "ROWS"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr GEN_attr[] = {        /* ABBR attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr H_attr[] = {          /* H1 attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "SEQNUM"        T(N) },
+	{ "SKIP"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr HR_attr[] = {         /* HR attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NOSHADE"       T(N) },
+	{ "SIZE"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr IFRAME_attr[] = {     /* IFRAME attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "FRAMEBORDER"   T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "LONGDESC"      T(h) },
+	{ "MARGINHEIGHT"  T(N) },
+	{ "MARGINWIDTH"   T(N) },
+	{ "NAME"          T(N) },
+	{ "SCROLLING"     T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr IMG_attr[] = {        /* IMG attributes */
+	{ "ALIGN"         T(N) },
+	{ "ALT"           T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ID"            T(i) },
+	{ "ISMAP"         T(N) },
+	{ "ISOBJECT"      T(N) },
+	{ "LANG"          T(N) },
+	{ "LONGDESC"      T(h) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "USEMAP"        T(h) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr INPUT_attr[] = {      /* INPUT attributes */
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCESSKEY"     T(N) },
+	{ "ALIGN"         T(N) },
+	{ "ALT"           T(N) },
+	{ "CHECKED"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "ISMAP"         T(N) },
+	{ "LANG"          T(N) },
+	{ "MAX"           T(N) },
+	{ "MAXLENGTH"     T(N) },
+	{ "MD"            T(N) },
+	{ "MIN"           T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "ONSELECT"      T(N) },
+	{ "READONLY"      T(N) },
+	{ "SIZE"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "USEMAP"        T(N) },
+	{ "VALUE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr ISINDEX_attr[] = {    /* ISINDEX attributes */
+	{ "ACTION"        T(h) },
+	{ "CLASS"         T(c) },
+	{ "DIR"           T(N) },
+	{ "HREF"          T(h) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "PROMPT"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr KEYGEN_attr[] = {     /* KEYGEN attributes */
+	{ "CHALLENGE"     T(N) },
+	{ "CLASS"         T(c) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr LABEL_attr[] = {      /* LABEL attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "FOR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr LI_attr[] = {         /* LI attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "SKIP"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr LINK_attr[] = {       /* LINK attributes */
+	{ "CHARSET"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "DIR"           T(N) },
+	{ "HREF"          T(h) },
+	{ "HREFLANG"      T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MEDIA"         T(N) },
+	{ "REL"           T(N) },
+	{ "REV"           T(N) },
+	{ "STYLE"         T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr MAP_attr[] = {        /* MAP attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(i) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr MATH_attr[] = {       /* MATH attributes */
+	{ "BOX"           T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr META_attr[] = {       /* META attributes */
+	{ "CHARSET"       T(N) },
+	{ "CONTENT"       T(N) },
+	{ "HTTP-EQUIV"    T(N) },
+	{ "NAME"          T(N) },
+	{ "SCHEME"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr NEXTID_attr[] = {     /* NEXTID attributes */
+	{ "N"             T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr NOTE_attr[] = {       /* NOTE attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "ROLE"          T(x) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr OBJECT_attr[] = {     /* OBJECT attributes */
+	{ "ALIGN"         T(N) },
+	{ "ARCHIVE"       T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLASSID"       T(h) },
+	{ "CODEBASE"      T(h) },
+	{ "CODETYPE"      T(N) },
+	{ "DATA"          T(h) },
+	{ "DECLARE"       T(N) },
+	{ "DIR"           T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ID"            T(i) },
+	{ "ISMAP"         T(N) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "SHAPES"        T(N) },
+	{ "STANDBY"       T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "USEMAP"        T(h) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr OL_attr[] = {         /* OL attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "CONTINUE"      T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "SEQNUM"        T(N) },
+	{ "START"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr OPTION_attr[] = {     /* OPTION attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "ID"            T(i) },
+	{ "LABEL"         T(N) },
+	{ "LANG"          T(N) },
+	{ "SELECTED"      T(N) },
+	{ "SHAPE"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr OVERLAY_attr[] = {    /* OVERLAY attributes */
+	{ "CLASS"         T(c) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "IMAGEMAP"      T(N) },
+	{ "MD"            T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ "X"             T(N) },
+	{ "Y"             T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr P_attr[] = {          /* P attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr PARAM_attr[] = {      /* PARAM attributes */
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCEPT-ENCODING" T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DATA"          T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "OBJECT"        T(N) },
+	{ "REF"           T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ "VALUEREF"      T(N) },
+	{ "VALUETYPE"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr Q_attr[] = {          /* Q attributes */
+	{ "CITE"          T(h) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr SCRIPT_attr[] = {     /* SCRIPT attributes */
+	{ "CHARSET"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DEFER"         T(N) },
+	{ "DIR"           T(N) },
+	{ "EVENT"         T(N) },
+	{ "FOR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "LANGUAGE"      T(N) },
+	{ "NAME"          T(N) },
+	{ "SCRIPTENGINE"  T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr SELECT_attr[] = {     /* SELECT attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "MULTIPLE"      T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "SIZE"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr STYLE_attr[] = {      /* STYLE attributes */
+	{ "CLASS"         T(c) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MEDIA"         T(N) },
+	{ "NOTATION"      T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TAB_attr[] = {        /* TAB attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DP"            T(N) },
+	{ "ID"            T(i) },
+	{ "INDENT"        T(N) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TO"            T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TABLE_attr[] = {      /* TABLE attributes */
+	{ "ALIGN"         T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "BORDER"        T(N) },
+	{ "CELLPADDING"   T(N) },
+	{ "CELLSPACING"   T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COLS"          T(N) },
+	{ "COLSPEC"       T(N) },
+	{ "DIR"           T(N) },
+	{ "DP"            T(N) },
+	{ "FRAME"         T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOFLOW"        T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "RULES"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "SUMMARY"       T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TD_attr[] = {         /* TD attributes */
+	{ "ABBR"          T(N) },
+	{ "ALIGN"         T(N) },
+	{ "AXES"          T(N) },
+	{ "AXIS"          T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "CHAR"          T(N) },
+	{ "CHAROFF"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COLSPAN"       T(N) },
+	{ "DIR"           T(N) },
+	{ "DP"            T(N) },
+	{ "HEADERS"       T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "ROWSPAN"       T(N) },
+	{ "SCOPE"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VALIGN"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TEXTAREA_attr[] = {   /* TEXTAREA attributes */
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCESSKEY"     T(N) },
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COLS"          T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "ONSELECT"      T(N) },
+	{ "READONLY"      T(N) },
+	{ "ROWS"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TR_attr[] = {         /* TBODY attributes */
+	{ "ALIGN"         T(N) },
+	{ "CHAR"          T(N) },
+	{ "CHAROFF"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DP"            T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VALIGN"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr UL_attr[] = {         /* DIR attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "PLAIN"         T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "WRAP"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+/* *INDENT-ON* */
+
+/* justification-flags */
+#undef N
+#undef i
+#undef h
+#undef c
+#undef x
+
+#undef T
+
+/* tag-names */
+#undef A
+#undef ABBR
+#undef ACRONYM
+#undef ADDRESS
+#undef APPLET
+#undef AREA
+#undef AU
+#undef AUTHOR
+#undef B
+#undef BANNER
+#undef BASE
+#undef BASEFONT
+#undef BDO
+#undef BGSOUND
+#undef BIG
+#undef BLINK
+#undef BLOCKQUOTE
+#undef BODY
+#undef BODYTEXT
+#undef BQ
+#undef BR
+#undef BUTTON
+#undef CAPTION
+#undef CENTER
+#undef CITE
+#undef CODE
+#undef COL
+#undef COLGROUP
+#undef COMMENT
+#undef CREDIT
+#undef DD
+#undef DEL
+#undef DFN
+#undef DIR
+#undef DIV
+#undef DL
+#undef DLC
+#undef DT
+#undef EM
+#undef EMBED
+#undef FIELDSET
+#undef FIG
+#undef FN
+#undef FONT
+#undef FORM
+#undef FRAME
+#undef FRAMESET
+#undef H1
+#undef H2
+#undef H3
+#undef H4
+#undef H5
+#undef H6
+#undef HEAD
+#undef HR
+#undef HTML
+#undef HY
+#undef I
+#undef IFRAME
+#undef IMG
+#undef INPUT
+#undef INS
+#undef ISINDEX
+#undef KBD
+#undef KEYGEN
+#undef LABEL
+#undef LEGEND
+#undef LH
+#undef LI
+#undef LINK
+#undef LISTING
+#undef MAP
+#undef MARQUEE
+#undef MATH
+#undef MENU
+#undef META
+#undef NEXTID
+#undef NOFRAMES
+#undef NOTE
+#undef OBJECT
+#undef OL
+#undef OPTION
+#undef OVERLAY
+#undef P
+#undef PARAM
+#undef PLAINTEXT
+#undef PRE
+#undef Q
+#undef S
+#undef SAMP
+#undef SCRIPT
+#undef SELECT
+#undef SHY
+#undef SMALL
+#undef SPAN
+#undef SPOT
+#undef STRIKE
+#undef STRONG
+#undef STYLE
+#undef SUB
+#undef SUP
+#undef TAB
+#undef TABLE
+#undef TBODY
+#undef TD
+#undef TEXTAREA
+#undef TEXTFLOW
+#undef TFOOT
+#undef TH
+#undef THEAD
+#undef TITLE
+#undef TR
+#undef TT
+#undef U
+#undef UL
+#undef VAR
+#undef WBR
+#undef XMP
+#undef OBJECT_PCDATA
+
+/* these definitions are used in the tags-tables */
+#undef P
+#undef P_
+#ifdef USE_COLOR_STYLE
+#define P_(x) #x, (sizeof #x) -1
+#define NULL_HTTag_ NULL, 0
+#else
+#define P_(x) #x
+#define NULL_HTTag_ NULL
+#endif
+
+#ifdef USE_JUSTIFY_ELTS
+#define P(x) P_(x), 1
+#define P0(x) P_(x), 0
+#define NULL_HTTag NULL_HTTag_,0
+#else
+#define P(x) P_(x)
+#define P0(x) P_(x)
+#define NULL_HTTag NULL_HTTag_
+#endif
+
+#define ATTR_DATA(name) name##_attr, HTML_##name##_ATTRIBUTES, name##_attr_type
+
+#endif /* once_HTMLDTD */
+/* *INDENT-OFF* */
+static const HTTag tags_table0[HTML_ALL_ELEMENTS] = {
+ { P(A),           ATTR_DATA(A),           SGML_EMPTY,   T_A},
+ { P(ABBR),        ATTR_DATA(GEN),         SGML_MIXED,   T_ABBR},
+ { P(ACRONYM),     ATTR_DATA(GEN),         SGML_MIXED,   T_ACRONYM},
+ { P(ADDRESS),     ATTR_DATA(ADDRESS),     SGML_MIXED,   T_ADDRESS},
+ { P(APPLET),      ATTR_DATA(APPLET),      SGML_MIXED,   T_APPLET},
+ { P(AREA),        ATTR_DATA(AREA),        SGML_EMPTY,   T_AREA},
+ { P(AU),          ATTR_DATA(GEN),         SGML_MIXED,   T_AU},
+ { P(AUTHOR),      ATTR_DATA(GEN),         SGML_MIXED,   T_AUTHOR},
+ { P(B),           ATTR_DATA(GEN),         SGML_EMPTY,   T_B},
+ { P0(BANNER),     ATTR_DATA(GEN),         SGML_MIXED,   T_BANNER},
+ { P(BASE),        ATTR_DATA(BASE),        SGML_EMPTY,   T_BASE},
+ { P(BASEFONT),    ATTR_DATA(FONT),        SGML_EMPTY,   T_BASEFONT},
+ { P(BDO),         ATTR_DATA(GEN),         SGML_MIXED,   T_BDO},
+ { P(BGSOUND),     ATTR_DATA(BGSOUND),     SGML_EMPTY,   T_BGSOUND},
+ { P(BIG),         ATTR_DATA(GEN),         SGML_MIXED,   T_BIG},
+ { P(BLINK),       ATTR_DATA(GEN),         SGML_EMPTY,   T_BLINK},
+ { P(BLOCKQUOTE),  ATTR_DATA(BQ),          SGML_MIXED,   T_BLOCKQUOTE},
+ { P(BODY),        ATTR_DATA(BODY),        SGML_MIXED,   T_BODY},
+ { P(BODYTEXT),    ATTR_DATA(BODYTEXT),    SGML_MIXED,   T_BODYTEXT},
+ { P(BQ),          ATTR_DATA(BQ),          SGML_MIXED,   T_BQ},
+ { P(BR),          ATTR_DATA(GEN),         SGML_EMPTY,   T_BR},
+ { P(BUTTON),      ATTR_DATA(BUTTON),      SGML_MIXED,   T_BUTTON},
+ { P(CAPTION),     ATTR_DATA(CAPTION),     SGML_MIXED,   T_CAPTION},
+ { P(CENTER),      ATTR_DATA(DIV),         SGML_MIXED,   T_CENTER},
+ { P(CITE),        ATTR_DATA(GEN),         SGML_EMPTY,   T_CITE},
+ { P(CODE),        ATTR_DATA(GEN),         SGML_MIXED,   T_CODE},
+ { P(COL),         ATTR_DATA(COL),         SGML_EMPTY,   T_COL},
+ { P(COLGROUP),    ATTR_DATA(COL),         SGML_EMPTY,   T_COLGROUP},
+ { P(COMMENT),     ATTR_DATA(GEN),         SGML_MIXED,   T_COMMENT},
+ { P(CREDIT),      ATTR_DATA(GEN),         SGML_MIXED,   T_CREDIT},
+ { P(DD),          ATTR_DATA(GEN),         SGML_EMPTY,   T_DD},
+ { P(DEL),         ATTR_DATA(DEL),         SGML_MIXED,   T_DEL},
+ { P(DFN),         ATTR_DATA(GEN),         SGML_MIXED,   T_DFN},
+ { P(DIR),         ATTR_DATA(UL),          SGML_MIXED,   T_DIR},
+ { P(DIV),         ATTR_DATA(DIV),         SGML_MIXED,   T_DIV},
+ { P(DL),          ATTR_DATA(DL),          SGML_MIXED,   T_DL},
+ { P(DLC),         ATTR_DATA(DL),          SGML_MIXED,   T_DLC},
+ { P(DT),          ATTR_DATA(GEN),         SGML_EMPTY,   T_DT},
+ { P(EM),          ATTR_DATA(GEN),         SGML_EMPTY,   T_EM},
+ { P(EMBED),       ATTR_DATA(EMBED),       SGML_EMPTY,   T_EMBED},
+ { P(FIELDSET),    ATTR_DATA(GEN),         SGML_MIXED,   T_FIELDSET},
+ { P(FIG),         ATTR_DATA(FIG),         SGML_MIXED,   T_FIG},
+ { P(FN),          ATTR_DATA(GEN),         SGML_MIXED,   T_FN},
+ { P(FONT),        ATTR_DATA(FONT),        SGML_EMPTY,   T_FONT},
+ { P(FORM),        ATTR_DATA(FORM),        SGML_EMPTY,   T_FORM},
+ { P(FRAME),       ATTR_DATA(FRAME),       SGML_EMPTY,   T_FRAME},
+ { P(FRAMESET),    ATTR_DATA(FRAMESET),    SGML_MIXED,   T_FRAMESET},
+ { P0(H1),         ATTR_DATA(H),           SGML_MIXED,   T_H1},
+ { P0(H2),         ATTR_DATA(H),           SGML_MIXED,   T_H2},
+ { P0(H3),         ATTR_DATA(H),           SGML_MIXED,   T_H3},
+ { P0(H4),         ATTR_DATA(H),           SGML_MIXED,   T_H4},
+ { P0(H5),         ATTR_DATA(H),           SGML_MIXED,   T_H5},
+ { P0(H6),         ATTR_DATA(H),           SGML_MIXED,   T_H6},
+ { P(HEAD),        ATTR_DATA(GEN),         SGML_MIXED,   T_HEAD},
+ { P(HR),          ATTR_DATA(HR),          SGML_EMPTY,   T_HR},
+ { P(HTML),        ATTR_DATA(GEN),         SGML_MIXED,   T_HTML},
+ { P(HY),          ATTR_DATA(GEN),         SGML_EMPTY,   T_HY},
+ { P(I),           ATTR_DATA(GEN),         SGML_EMPTY,   T_I},
+ { P(IFRAME),      ATTR_DATA(IFRAME),      SGML_MIXED,   T_IFRAME},
+ { P(IMG),         ATTR_DATA(IMG),         SGML_EMPTY,   T_IMG},
+ { P(INPUT),       ATTR_DATA(INPUT),       SGML_EMPTY,   T_INPUT},
+ { P(INS),         ATTR_DATA(DEL),         SGML_MIXED,   T_INS},
+ { P(ISINDEX),     ATTR_DATA(ISINDEX),     SGML_EMPTY,   T_ISINDEX},
+ { P(KBD),         ATTR_DATA(GEN),         SGML_MIXED,   T_KBD},
+ { P(KEYGEN),      ATTR_DATA(KEYGEN),      SGML_EMPTY,   T_KEYGEN},
+ { P(LABEL),       ATTR_DATA(LABEL),       SGML_MIXED,   T_LABEL},
+ { P(LEGEND),      ATTR_DATA(CAPTION),     SGML_MIXED,   T_LEGEND},
+ { P(LH),          ATTR_DATA(GEN),         SGML_EMPTY,   T_LH},
+ { P(LI),          ATTR_DATA(LI),          SGML_EMPTY,   T_LI},
+ { P(LINK),        ATTR_DATA(LINK),        SGML_EMPTY,   T_LINK},
+ { P(LISTING),     ATTR_DATA(GEN),         SGML_LITTERAL,T_LISTING},
+ { P(MAP),         ATTR_DATA(MAP),         SGML_MIXED,   T_MAP},
+ { P(MARQUEE),     ATTR_DATA(GEN),         SGML_MIXED,   T_MARQUEE},
+ { P(MATH),        ATTR_DATA(MATH),        SGML_LITTERAL,T_MATH},
+ { P(MENU),        ATTR_DATA(UL),          SGML_MIXED,   T_MENU},
+ { P(META),        ATTR_DATA(META),        SGML_EMPTY,   T_META},
+ { P(NEXTID),      ATTR_DATA(NEXTID),      SGML_EMPTY,   T_NEXTID},
+ { P(NOFRAMES),    ATTR_DATA(GEN),         SGML_MIXED,   T_NOFRAMES},
+ { P(NOTE),        ATTR_DATA(NOTE),        SGML_MIXED,   T_NOTE},
+ { P(OBJECT),      ATTR_DATA(OBJECT),      SGML_LITTERAL,T_OBJECT},
+ { P(OL),          ATTR_DATA(OL),          SGML_MIXED,   T_OL},
+ { P(OPTION),      ATTR_DATA(OPTION),      SGML_EMPTY,   T_OPTION},
+ { P(OVERLAY),     ATTR_DATA(OVERLAY),     SGML_EMPTY,   T_OVERLAY},
+ { P(P),           ATTR_DATA(P),           SGML_EMPTY,   T_P},
+ { P(PARAM),       ATTR_DATA(PARAM),       SGML_EMPTY,   T_PARAM},
+ { P(PLAINTEXT),   ATTR_DATA(GEN),         SGML_LITTERAL,T_PLAINTEXT},
+ { P0(PRE),        ATTR_DATA(GEN),         SGML_MIXED,   T_PRE},
+ { P(Q),           ATTR_DATA(Q),           SGML_MIXED,   T_Q},
+ { P(S),           ATTR_DATA(GEN),         SGML_MIXED,   T_S},
+ { P(SAMP),        ATTR_DATA(GEN),         SGML_MIXED,   T_SAMP},
+ { P(SCRIPT),      ATTR_DATA(SCRIPT),      SGML_LITTERAL,T_SCRIPT},
+ { P(SELECT),      ATTR_DATA(SELECT),      SGML_MIXED,   T_SELECT},
+ { P(SHY),         ATTR_DATA(GEN),         SGML_EMPTY,   T_SHY},
+ { P(SMALL),       ATTR_DATA(GEN),         SGML_MIXED,   T_SMALL},
+ { P(SPAN),        ATTR_DATA(GEN),         SGML_MIXED,   T_SPAN},
+ { P(SPOT),        ATTR_DATA(GEN),         SGML_EMPTY,   T_SPOT},
+ { P(STRIKE),      ATTR_DATA(GEN),         SGML_MIXED,   T_STRIKE},
+ { P(STRONG),      ATTR_DATA(GEN),         SGML_EMPTY,   T_STRONG},
+ { P(STYLE),       ATTR_DATA(STYLE),       SGML_LITTERAL,T_STYLE},
+ { P(SUB),         ATTR_DATA(GEN),         SGML_MIXED,   T_SUB},
+ { P(SUP),         ATTR_DATA(GEN),         SGML_MIXED,   T_SUP},
+ { P(TAB),         ATTR_DATA(TAB),         SGML_EMPTY,   T_TAB},
+ { P(TABLE),       ATTR_DATA(TABLE),       SGML_MIXED,   T_TABLE},
+ { P(TBODY),       ATTR_DATA(TR),          SGML_EMPTY,   T_TBODY},
+ { P(TD),          ATTR_DATA(TD),          SGML_EMPTY,   T_TD},
+ { P(TEXTAREA),    ATTR_DATA(TEXTAREA),    SGML_LITTERAL,T_TEXTAREA},
+ { P(TEXTFLOW),    ATTR_DATA(BODYTEXT),    SGML_MIXED,   T_TEXTFLOW},
+ { P(TFOOT),       ATTR_DATA(TR),          SGML_EMPTY,   T_TFOOT},
+ { P(TH),          ATTR_DATA(TD),          SGML_EMPTY,   T_TH},
+ { P(THEAD),       ATTR_DATA(TR),          SGML_EMPTY,   T_THEAD},
+ { P(TITLE),       ATTR_DATA(GEN),         SGML_RCDATA,  T_TITLE},
+ { P(TR),          ATTR_DATA(TR),          SGML_EMPTY,   T_TR},
+ { P(TT),          ATTR_DATA(GEN),         SGML_EMPTY,   T_TT},
+ { P(U),           ATTR_DATA(GEN),         SGML_EMPTY,   T_U},
+ { P(UL),          ATTR_DATA(UL),          SGML_MIXED,   T_UL},
+ { P(VAR),         ATTR_DATA(GEN),         SGML_MIXED,   T_VAR},
+ { P(WBR),         ATTR_DATA(GEN),         SGML_EMPTY,   T_WBR},
+ { P0(XMP),        ATTR_DATA(GEN),         SGML_LITTERAL,T_XMP},
+/* additional (alternative variants), not counted in HTML_ELEMENTS: */
+/* This one will be used as a temporary substitute within the parser when
+   it has been signalled to parse OBJECT content as MIXED. - kw */
+ { P(OBJECT),      ATTR_DATA(OBJECT),      SGML_MIXED,   T_OBJECT_PCDATA},
+};
+/* *INDENT-ON* */
+
+#endif /* src_HTMLDTD_H0 */
diff --git a/WWW/Library/Implementation/src0_HTMLDTD.txt b/WWW/Library/Implementation/src0_HTMLDTD.txt
new file mode 100644
index 00000000..87bebeea
--- /dev/null
+++ b/WWW/Library/Implementation/src0_HTMLDTD.txt
@@ -0,0 +1,3664 @@
+59 attr_types
+	0:align
+		1 attributes:
+			0:0:ALIGN
+	1:bgcolor
+		1 attributes:
+			0:0:BGCOLOR
+	2:cellalign
+		4 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:0:VALIGN
+	3:core
+		4 attributes:
+			0:4:CLASS
+			1:1:ID
+			2:0:STYLE
+			3:0:TITLE
+	4:events
+		10 attributes:
+			0:0:ONCLICK
+			1:0:ONDBLCLICK
+			2:0:ONKEYDOWN
+			3:0:ONKEYPRESS
+			4:0:ONKEYUP
+			5:0:ONMOUSEDOWN
+			6:0:ONMOUSEMOVE
+			7:0:ONMOUSEOUT
+			8:0:ONMOUSEOVER
+			9:0:ONMOUSEUP
+	5:i18n
+		2 attributes:
+			0:0:DIR
+			1:0:LANG
+	6:A
+		19 attributes:
+			0:0:ACCESSKEY
+			1:0:CHARSET
+			2:0:CLEAR
+			3:0:COORDS
+			4:2:HREF
+			5:0:HREFLANG
+			6:0:ISMAP
+			7:0:MD
+			8:1:NAME
+			9:0:NOTAB
+			10:0:ONBLUR
+			11:0:ONFOCUS
+			12:0:REL
+			13:0:REV
+			14:0:SHAPE
+			15:0:TABINDEX
+			16:0:TARGET
+			17:0:TYPE
+			18:0:URN
+	7:ADDRESS
+		2 attributes:
+			0:0:CLEAR
+			1:0:NOWRAP
+	8:APPLET
+		10 attributes:
+			0:0:ALT
+			1:0:CLEAR
+			2:0:CODE
+			3:2:CODEBASE
+			4:0:DOWNLOAD
+			5:0:HEIGHT
+			6:0:HSPACE
+			7:1:NAME
+			8:0:VSPACE
+			9:0:WIDTH
+	9:AREA
+		12 attributes:
+			0:0:ACCESSKEY
+			1:0:ALT
+			2:0:CLEAR
+			3:0:COORDS
+			4:2:HREF
+			5:0:NOHREF
+			6:0:NOTAB
+			7:0:ONBLUR
+			8:0:ONFOCUS
+			9:0:SHAPE
+			10:0:TABINDEX
+			11:0:TARGET
+	10:BASE
+		2 attributes:
+			0:2:HREF
+			1:0:TARGET
+	11:BGSOUND
+		3 attributes:
+			0:0:CLEAR
+			1:0:LOOP
+			2:2:SRC
+	12:BODY
+		8 attributes:
+			0:0:ALINK
+			1:2:BACKGROUND
+			2:0:CLEAR
+			3:0:LINK
+			4:0:ONLOAD
+			5:0:ONUNLOAD
+			6:0:TEXT
+			7:0:VLINK
+	13:BODYTEXT
+		8 attributes:
+			0:0:CLEAR
+			1:0:DATA
+			2:0:NAME
+			3:0:OBJECT
+			4:0:REF
+			5:0:TYPE
+			6:0:VALUE
+			7:0:VALUETYPE
+	14:BQ
+		3 attributes:
+			0:2:CITE
+			1:0:CLEAR
+			2:0:NOWRAP
+	15:BUTTON
+		10 attributes:
+			0:0:ACCESSKEY
+			1:0:CLEAR
+			2:0:DISABLED
+			3:0:NAME
+			4:0:ONBLUR
+			5:0:ONFOCUS
+			6:0:READONLY
+			7:0:TABINDEX
+			8:0:TYPE
+			9:0:VALUE
+	16:CAPTION
+		2 attributes:
+			0:0:ACCESSKEY
+			1:0:CLEAR
+	17:COL
+		3 attributes:
+			0:0:CLEAR
+			1:0:SPAN
+			2:0:WIDTH
+	18:DEL
+		2 attributes:
+			0:0:CITE
+			1:0:DATETIME
+	19:DIV
+		1 attributes:
+			0:0:CLEAR
+	20:DL
+		2 attributes:
+			0:0:CLEAR
+			1:0:COMPACT
+	21:EMBED
+		14 attributes:
+			0:0:ALT
+			1:0:BORDER
+			2:0:CLEAR
+			3:0:HEIGHT
+			4:0:IMAGEMAP
+			5:0:ISMAP
+			6:0:MD
+			7:1:NAME
+			8:0:NOFLOW
+			9:0:PARAMS
+			10:2:SRC
+			11:0:UNITS
+			12:0:USEMAP
+			13:0:WIDTH
+	22:FIG
+		10 attributes:
+			0:0:BORDER
+			1:0:CLEAR
+			2:0:HEIGHT
+			3:0:IMAGEMAP
+			4:0:ISOBJECT
+			5:0:MD
+			6:0:NOFLOW
+			7:2:SRC
+			8:0:UNITS
+			9:0:WIDTH
+	23:FONT
+		5 attributes:
+			0:0:CLEAR
+			1:0:COLOR
+			2:0:END
+			3:0:FACE
+			4:0:SIZE
+	24:FORM
+		11 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:2:ACTION
+			3:0:CLEAR
+			4:0:ENCTYPE
+			5:0:METHOD
+			6:0:ONRESET
+			7:0:ONSUBMIT
+			8:0:SCRIPT
+			9:0:SUBJECT
+			10:0:TARGET
+	25:FRAME
+		8 attributes:
+			0:0:FRAMEBORDER
+			1:2:LONGDESC
+			2:0:MARGINHEIGHT
+			3:0:MARGINWIDTH
+			4:0:NAME
+			5:0:NORESIZE
+			6:0:SCROLLING
+			7:2:SRC
+	26:FRAMESET
+		4 attributes:
+			0:0:COLS
+			1:0:ONLOAD
+			2:0:ONUNLOAD
+			3:0:ROWS
+	27:GEN
+		1 attributes:
+			0:0:CLEAR
+	28:H
+		7 attributes:
+			0:0:CLEAR
+			1:0:DINGBAT
+			2:0:MD
+			3:0:NOWRAP
+			4:0:SEQNUM
+			5:0:SKIP
+			6:2:SRC
+	29:HR
+		6 attributes:
+			0:0:CLEAR
+			1:0:MD
+			2:0:NOSHADE
+			3:0:SIZE
+			4:2:SRC
+			5:0:WIDTH
+	30:IFRAME
+		9 attributes:
+			0:0:FRAMEBORDER
+			1:0:HEIGHT
+			2:2:LONGDESC
+			3:0:MARGINHEIGHT
+			4:0:MARGINWIDTH
+			5:0:NAME
+			6:0:SCROLLING
+			7:2:SRC
+			8:0:WIDTH
+	31:IMG
+		15 attributes:
+			0:0:ALT
+			1:0:BORDER
+			2:0:CLEAR
+			3:0:HEIGHT
+			4:0:HSPACE
+			5:0:ISMAP
+			6:0:ISOBJECT
+			7:2:LONGDESC
+			8:0:MD
+			9:0:NAME
+			10:2:SRC
+			11:0:UNITS
+			12:2:USEMAP
+			13:0:VSPACE
+			14:0:WIDTH
+	32:INPUT
+		28 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:0:ACCESSKEY
+			3:0:ALT
+			4:0:CHECKED
+			5:0:CLEAR
+			6:0:DISABLED
+			7:0:ERROR
+			8:0:HEIGHT
+			9:0:ISMAP
+			10:0:MAX
+			11:0:MAXLENGTH
+			12:0:MD
+			13:0:MIN
+			14:0:NAME
+			15:0:NOTAB
+			16:0:ONBLUR
+			17:0:ONCHANGE
+			18:0:ONFOCUS
+			19:0:ONSELECT
+			20:0:READONLY
+			21:0:SIZE
+			22:2:SRC
+			23:0:TABINDEX
+			24:0:TYPE
+			25:0:USEMAP
+			26:0:VALUE
+			27:0:WIDTH
+	33:ISINDEX
+		3 attributes:
+			0:2:ACTION
+			1:2:HREF
+			2:0:PROMPT
+	34:KEYGEN
+		2 attributes:
+			0:0:CHALLENGE
+			1:0:NAME
+	35:LABEL
+		5 attributes:
+			0:0:ACCESSKEY
+			1:0:CLEAR
+			2:0:FOR
+			3:0:ONBLUR
+			4:0:ONFOCUS
+	36:LI
+		7 attributes:
+			0:0:CLEAR
+			1:0:DINGBAT
+			2:0:MD
+			3:0:SKIP
+			4:2:SRC
+			5:0:TYPE
+			6:0:VALUE
+	37:LINK
+		8 attributes:
+			0:0:CHARSET
+			1:2:HREF
+			2:0:HREFLANG
+			3:0:MEDIA
+			4:0:REL
+			5:0:REV
+			6:0:TARGET
+			7:0:TYPE
+	38:MAP
+		2 attributes:
+			0:0:CLEAR
+			1:1:NAME
+	39:MATH
+		2 attributes:
+			0:0:BOX
+			1:0:CLEAR
+	40:META
+		5 attributes:
+			0:0:CHARSET
+			1:0:CONTENT
+			2:0:HTTP-EQUIV
+			3:0:NAME
+			4:0:SCHEME
+	41:NEXTID
+		1 attributes:
+			0:0:N
+	42:NOTE
+		4 attributes:
+			0:0:CLEAR
+			1:0:MD
+			2:8:ROLE
+			3:2:SRC
+	43:OBJECT
+		19 attributes:
+			0:0:ARCHIVE
+			1:0:BORDER
+			2:2:CLASSID
+			3:2:CODEBASE
+			4:0:CODETYPE
+			5:2:DATA
+			6:0:DECLARE
+			7:0:HEIGHT
+			8:0:HSPACE
+			9:0:ISMAP
+			10:0:NAME
+			11:0:NOTAB
+			12:0:SHAPES
+			13:0:STANDBY
+			14:0:TABINDEX
+			15:0:TYPE
+			16:2:USEMAP
+			17:0:VSPACE
+			18:0:WIDTH
+	44:OL
+		6 attributes:
+			0:0:CLEAR
+			1:0:COMPACT
+			2:0:CONTINUE
+			3:0:SEQNUM
+			4:0:START
+			5:0:TYPE
+	45:OPTION
+		7 attributes:
+			0:0:CLEAR
+			1:0:DISABLED
+			2:0:ERROR
+			3:0:LABEL
+			4:0:SELECTED
+			5:0:SHAPE
+			6:0:VALUE
+	46:OVERLAY
+		8 attributes:
+			0:0:HEIGHT
+			1:0:IMAGEMAP
+			2:0:MD
+			3:2:SRC
+			4:0:UNITS
+			5:0:WIDTH
+			6:0:X
+			7:0:Y
+	47:P
+		2 attributes:
+			0:0:CLEAR
+			1:0:NOWRAP
+	48:PARAM
+		12 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:0:ACCEPT-ENCODING
+			3:0:CLEAR
+			4:0:DATA
+			5:0:NAME
+			6:0:OBJECT
+			7:0:REF
+			8:0:TYPE
+			9:0:VALUE
+			10:0:VALUEREF
+			11:0:VALUETYPE
+	49:Q
+		2 attributes:
+			0:2:CITE
+			1:0:CLEAR
+	50:SCRIPT
+		10 attributes:
+			0:0:CHARSET
+			1:0:CLEAR
+			2:0:DEFER
+			3:0:EVENT
+			4:0:FOR
+			5:0:LANGUAGE
+			6:0:NAME
+			7:0:SCRIPTENGINE
+			8:2:SRC
+			9:0:TYPE
+	51:SELECT
+		15 attributes:
+			0:0:CLEAR
+			1:0:DISABLED
+			2:0:ERROR
+			3:0:HEIGHT
+			4:0:MD
+			5:0:MULTIPLE
+			6:0:NAME
+			7:0:NOTAB
+			8:0:ONBLUR
+			9:0:ONCHANGE
+			10:0:ONFOCUS
+			11:0:SIZE
+			12:0:TABINDEX
+			13:0:UNITS
+			14:0:WIDTH
+	52:STYLE
+		3 attributes:
+			0:0:MEDIA
+			1:0:NOTATION
+			2:0:TYPE
+	53:TAB
+		4 attributes:
+			0:0:CLEAR
+			1:0:DP
+			2:0:INDENT
+			3:0:TO
+	54:TABLE
+		15 attributes:
+			0:2:BACKGROUND
+			1:0:BORDER
+			2:0:CELLPADDING
+			3:0:CELLSPACING
+			4:0:CLEAR
+			5:0:COLS
+			6:0:COLSPEC
+			7:0:DP
+			8:0:FRAME
+			9:0:NOFLOW
+			10:0:NOWRAP
+			11:0:RULES
+			12:0:SUMMARY
+			13:0:UNITS
+			14:0:WIDTH
+	55:TD
+		13 attributes:
+			0:0:ABBR
+			1:0:AXES
+			2:0:AXIS
+			3:2:BACKGROUND
+			4:0:CLEAR
+			5:0:COLSPAN
+			6:0:DP
+			7:0:HEADERS
+			8:0:HEIGHT
+			9:0:NOWRAP
+			10:0:ROWSPAN
+			11:0:SCOPE
+			12:0:WIDTH
+	56:TEXTAREA
+		15 attributes:
+			0:0:ACCEPT-CHARSET
+			1:0:ACCESSKEY
+			2:0:CLEAR
+			3:0:COLS
+			4:0:DISABLED
+			5:0:ERROR
+			6:0:NAME
+			7:0:NOTAB
+			8:0:ONBLUR
+			9:0:ONCHANGE
+			10:0:ONFOCUS
+			11:0:ONSELECT
+			12:0:READONLY
+			13:0:ROWS
+			14:0:TABINDEX
+	57:TR
+		3 attributes:
+			0:0:CLEAR
+			1:0:DP
+			2:0:NOWRAP
+	58:UL
+		8 attributes:
+			0:0:CLEAR
+			1:0:COMPACT
+			2:0:DINGBAT
+			3:0:MD
+			4:0:PLAIN
+			5:2:SRC
+			6:0:TYPE
+			7:0:WRAP
+118 tags
+	0:A
+		justify
+		25 attributes:
+			0:0:ACCESSKEY
+			1:0:CHARSET
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:COORDS
+			5:0:DIR
+			6:2:HREF
+			7:0:HREFLANG
+			8:1:ID
+			9:0:ISMAP
+			10:0:LANG
+			11:0:MD
+			12:1:NAME
+			13:0:NOTAB
+			14:0:ONBLUR
+			15:0:ONFOCUS
+			16:0:REL
+			17:0:REV
+			18:0:SHAPE
+			19:0:STYLE
+			20:0:TABINDEX
+			21:0:TARGET
+			22:0:TITLE
+			23:0:TYPE
+			24:0:URN
+		4 attr_types
+			core
+			events
+			i18n
+			A
+		contents: SGML_EMPTY
+		tagclass: Alike
+		contains: FONTlike EMlike MATHlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike formula Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike SELECTlike APPLETlike HRlike same
+		flags: mafse nreie
+	1:ABBR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	2:ACRONYM
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	3:ADDRESS
+		justify
+		8 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:NOWRAP
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			ADDRESS
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike Plike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike formula Plike DIVlike same
+		flags:
+	4:APPLET
+		justify
+		17 attributes:
+			0:0:ALIGN
+			1:0:ALT
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:CODE
+			5:2:CODEBASE
+			6:0:DIR
+			7:0:DOWNLOAD
+			8:0:HEIGHT
+			9:0:HSPACE
+			10:1:ID
+			11:0:LANG
+			12:1:NAME
+			13:0:STYLE
+			14:0:TITLE
+			15:0:VSPACE
+			16:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			APPLET
+		contents: SGML_MIXED
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike BRlike APPLETlike same
+		flags:
+	5:AREA
+		justify
+		18 attributes:
+			0:0:ACCESSKEY
+			1:0:ALT
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:COORDS
+			5:0:DIR
+			6:2:HREF
+			7:1:ID
+			8:0:LANG
+			9:0:NOHREF
+			10:0:NOTAB
+			11:0:ONBLUR
+			12:0:ONFOCUS
+			13:0:SHAPE
+			14:0:STYLE
+			15:0:TABINDEX
+			16:0:TARGET
+			17:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			AREA
+		contents: SGML_EMPTY
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: MAPlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike ULlike
+		flags: endO
+	6:AU
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	7:AUTHOR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	8:B
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	9:BANNER
+		nojustify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: outer BODYlike
+		icontained: outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags:
+	10:BASE
+		justify
+		6 attributes:
+			0:4:CLASS
+			1:2:HREF
+			2:1:ID
+			3:0:STYLE
+			4:0:TARGET
+			5:0:TITLE
+		2 attr_types
+			core
+			BASE
+		contents: SGML_EMPTY
+		tagclass: HEADstuff
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: outer HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike same
+		flags: endO
+	11:BASEFONT
+		justify
+		11 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COLOR
+			3:0:DIR
+			4:0:END
+			5:0:FACE
+			6:1:ID
+			7:0:LANG
+			8:0:SIZE
+			9:0:STYLE
+			10:0:TITLE
+		3 attr_types
+			core
+			i18n
+			FONT
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: BRlike APPLETlike HRlike MAPlike same
+		flags: endO
+	12:BDO
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike Plike DIVlike
+		flags:
+	13:BGSOUND
+		justify
+		9 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:LOOP
+			6:2:SRC
+			7:0:STYLE
+			8:0:TITLE
+		3 attr_types
+			core
+			i18n
+			BGSOUND
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike Plike DIVlike BRlike APPLETlike HRlike same
+		flags: endO
+	14:BIG
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	15:BLINK
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	16:BLOCKQUOTE
+		justify
+		9 attributes:
+			0:2:CITE
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NOWRAP
+			7:0:STYLE
+			8:0:TITLE
+		3 attr_types
+			core
+			i18n
+			BQ
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags:
+	17:BODY
+		justify
+		15 attributes:
+			0:0:ALINK
+			1:2:BACKGROUND
+			2:0:BGCOLOR
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:1:ID
+			7:0:LANG
+			8:0:LINK
+			9:0:ONLOAD
+			10:0:ONUNLOAD
+			11:0:STYLE
+			12:0:TEXT
+			13:0:TITLE
+			14:0:VLINK
+		4 attr_types
+			bgcolor
+			core
+			i18n
+			BODY
+		contents: SGML_MIXED
+		tagclass: BODYlike
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike
+		contained: outer BODYlike
+		icontained: outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer HEADstuff same
+		flags: endO startO
+	18:BODYTEXT
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DATA
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NAME
+			7:0:OBJECT
+			8:0:REF
+			9:0:STYLE
+			10:0:TITLE
+			11:0:TYPE
+			12:0:VALUE
+			13:0:VALUETYPE
+		3 attr_types
+			core
+			i18n
+			BODYTEXT
+		contents: SGML_MIXED
+		tagclass: BODYlike
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		contained: DIVlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike BRlike APPLETlike HRlike MAPlike same
+		flags: endO startO
+	19:BQ
+		justify
+		9 attributes:
+			0:2:CITE
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NOWRAP
+			7:0:STYLE
+			8:0:TITLE
+		3 attr_types
+			core
+			i18n
+			BQ
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags:
+	20:BR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula BRlike same
+		flags: endO
+	21:BUTTON
+		justify
+		16 attributes:
+			0:0:ACCESSKEY
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:0:DISABLED
+			5:1:ID
+			6:0:LANG
+			7:0:NAME
+			8:0:ONBLUR
+			9:0:ONFOCUS
+			10:0:READONLY
+			11:0:STYLE
+			12:0:TABINDEX
+			13:0:TITLE
+			14:0:TYPE
+			15:0:VALUE
+		4 attr_types
+			core
+			events
+			i18n
+			BUTTON
+		contents: SGML_MIXED
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Plike DIVlike ULlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike formula TRlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike BRlike same
+		flags:
+	22:CAPTION
+		justify
+		9 attributes:
+			0:0:ACCESSKEY
+			1:0:ALIGN
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:STYLE
+			8:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			CAPTION
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: DIVlike ULlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike same
+		flags:
+	23:CENTER
+		justify
+		8 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		4 attr_types
+			align
+			core
+			i18n
+			DIV
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags:
+	24:CITE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: EMlike
+		flags: nreie
+	25:CODE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: EMlike
+		flags:
+	26:COL
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:1:ID
+			7:0:LANG
+			8:0:SPAN
+			9:0:STYLE
+			10:0:TITLE
+			11:0:VALIGN
+			12:0:WIDTH
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			COL
+		contents: SGML_EMPTY
+		tagclass: HRlike
+		contains:
+		icontains:
+		contained: TRlike ULlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike MAPlike same
+		flags: endO
+	27:COLGROUP
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:1:ID
+			7:0:LANG
+			8:0:SPAN
+			9:0:STYLE
+			10:0:TITLE
+			11:0:VALIGN
+			12:0:WIDTH
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			COL
+		contents: SGML_EMPTY
+		tagclass: TRlike
+		contains: HRlike
+		icontains: HRlike
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike MAPlike same
+		flags: endO
+	28:COMMENT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: MATHlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike
+		flags:
+	29:CREDIT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: DIVlike ULlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike Plike DIVlike same
+		flags:
+	30:DD
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags: endO
+	31:DEL
+		justify
+		8 attributes:
+			0:0:CITE
+			1:4:CLASS
+			2:0:DATETIME
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			DEL
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	32:DFN
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	33:DIR
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:PLAIN
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+			12:0:TYPE
+			13:0:WRAP
+		3 attr_types
+			core
+			i18n
+			UL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: LIlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike BRlike APPLETlike HRlike MAPlike
+		contained: FORMlike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike HRlike same
+		flags:
+	34:DIV
+		justify
+		8 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		4 attr_types
+			align
+			core
+			i18n
+			DIV
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: TRlike FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags: mafse
+	35:DL
+		justify
+		8 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			DL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: FORMlike LIlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike
+		flags:
+	36:DLC
+		justify
+		8 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			DL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: FORMlike LIlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike
+		flags:
+	37:DT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike BRlike APPLETlike MAPlike
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags: endO
+	38:EM
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags: nreie
+	39:EMBED
+		justify
+		21 attributes:
+			0:0:ALIGN
+			1:0:ALT
+			2:0:BORDER
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:HEIGHT
+			7:1:ID
+			8:0:IMAGEMAP
+			9:0:ISMAP
+			10:0:LANG
+			11:0:MD
+			12:1:NAME
+			13:0:NOFLOW
+			14:0:PARAMS
+			15:2:SRC
+			16:0:STYLE
+			17:0:TITLE
+			18:0:UNITS
+			19:0:USEMAP
+			20:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			EMBED
+		contents: SGML_EMPTY
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Plike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer
+		flags: endO
+	40:FIELDSET
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike APPLETlike HRlike same
+		icontained: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike MAPlike same
+		flags:
+	41:FIG
+		justify
+		17 attributes:
+			0:0:ALIGN
+			1:0:BORDER
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:DIR
+			5:0:HEIGHT
+			6:1:ID
+			7:0:IMAGEMAP
+			8:0:ISOBJECT
+			9:0:LANG
+			10:0:MD
+			11:0:NOFLOW
+			12:2:SRC
+			13:0:STYLE
+			14:0:TITLE
+			15:0:UNITS
+			16:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			FIG
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike SELECTlike Plike DIVlike MAPlike same
+		flags:
+	42:FN
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike SELECTlike Plike BRlike same
+		flags:
+	43:FONT
+		justify
+		11 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COLOR
+			3:0:DIR
+			4:0:END
+			5:0:FACE
+			6:1:ID
+			7:0:LANG
+			8:0:SIZE
+			9:0:STYLE
+			10:0:TITLE
+		3 attr_types
+			core
+			i18n
+			FONT
+		contents: SGML_EMPTY
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	44:FORM
+		justify
+		17 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:2:ACTION
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:ENCTYPE
+			7:1:ID
+			8:0:LANG
+			9:0:METHOD
+			10:0:ONRESET
+			11:0:ONSUBMIT
+			12:0:SCRIPT
+			13:0:STYLE
+			14:0:SUBJECT
+			15:0:TARGET
+			16:0:TITLE
+		3 attr_types
+			core
+			i18n
+			FORM
+		contents: SGML_EMPTY
+		tagclass: FORMlike
+		contains: FONTlike EMlike MATHlike Alike TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: FONTlike EMlike MATHlike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Plike DIVlike LIlike ULlike APPLETlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike LIlike ULlike MAPlike same
+		flags:
+	45:FRAME
+		justify
+		12 attributes:
+			0:4:CLASS
+			1:0:FRAMEBORDER
+			2:1:ID
+			3:2:LONGDESC
+			4:0:MARGINHEIGHT
+			5:0:MARGINWIDTH
+			6:0:NAME
+			7:0:NORESIZE
+			8:0:SCROLLING
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+		2 attr_types
+			core
+			FRAME
+		contents: SGML_EMPTY
+		tagclass: outer
+		contains:
+		icontains:
+		contained: outer
+		icontained: outer
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer same
+		flags: endO
+	46:FRAMESET
+		justify
+		4 attributes:
+			0:0:COLS
+			1:0:ONLOAD
+			2:0:ONUNLOAD
+			3:0:ROWS
+		1 attr_types
+			FRAMESET
+		contents: SGML_MIXED
+		tagclass: outer
+		contains: outer same
+		icontains: outer same
+		contained: outer same
+		icontained: BRlike APPLETlike outer same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer same
+		flags:
+	47:H1
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	48:H2
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	49:H3
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	50:H4
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	51:H5
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	52:H6
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	53:HEAD
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: HEADstuff
+		contains: BRlike APPLETlike HRlike MAPlike HEADstuff
+		icontains: BRlike APPLETlike HRlike HEADstuff
+		contained: outer
+		icontained: outer
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer same
+		flags: endO startO mafse
+	54:HR
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:MD
+			7:0:NOSHADE
+			8:0:SIZE
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+			12:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			HR
+		contents: SGML_EMPTY
+		tagclass: HRlike
+		contains:
+		icontains:
+		contained: FORMlike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula TRlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike same
+		flags: endO
+	55:HTML
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: outer
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff
+		contained:
+		icontained:
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer
+		flags: endO startO
+	56:HY
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula BRlike same
+		flags: endO
+	57:I
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	58:IFRAME
+		justify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:FRAMEBORDER
+			3:0:HEIGHT
+			4:1:ID
+			5:2:LONGDESC
+			6:0:MARGINHEIGHT
+			7:0:MARGINWIDTH
+			8:0:NAME
+			9:0:SCROLLING
+			10:2:SRC
+			11:0:STYLE
+			12:0:TITLE
+			13:0:WIDTH
+		3 attr_types
+			align
+			core
+			IFRAME
+		contents: SGML_MIXED
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike BRlike APPLETlike outer HEADstuff same
+		flags:
+	59:IMG
+		justify
+		22 attributes:
+			0:0:ALIGN
+			1:0:ALT
+			2:0:BORDER
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:HEIGHT
+			7:0:HSPACE
+			8:1:ID
+			9:0:ISMAP
+			10:0:ISOBJECT
+			11:0:LANG
+			12:2:LONGDESC
+			13:0:MD
+			14:0:NAME
+			15:2:SRC
+			16:0:STYLE
+			17:0:TITLE
+			18:0:UNITS
+			19:2:USEMAP
+			20:0:VSPACE
+			21:0:WIDTH
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			IMG
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: same
+		flags: endO
+	60:INPUT
+		justify
+		35 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:0:ACCESSKEY
+			3:0:ALIGN
+			4:0:ALT
+			5:0:CHECKED
+			6:4:CLASS
+			7:0:CLEAR
+			8:0:DIR
+			9:0:DISABLED
+			10:0:ERROR
+			11:0:HEIGHT
+			12:1:ID
+			13:0:ISMAP
+			14:0:LANG
+			15:0:MAX
+			16:0:MAXLENGTH
+			17:0:MD
+			18:0:MIN
+			19:0:NAME
+			20:0:NOTAB
+			21:0:ONBLUR
+			22:0:ONCHANGE
+			23:0:ONFOCUS
+			24:0:ONSELECT
+			25:0:READONLY
+			26:0:SIZE
+			27:2:SRC
+			28:0:STYLE
+			29:0:TABINDEX
+			30:0:TITLE
+			31:0:TYPE
+			32:0:USEMAP
+			33:0:VALUE
+			34:0:WIDTH
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			INPUT
+		contents: SGML_EMPTY
+		tagclass: SELECTlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike
+		icontained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike SELECTlike BRlike MAPlike same
+		flags: endO
+	61:INS
+		justify
+		8 attributes:
+			0:0:CITE
+			1:4:CLASS
+			2:0:DATETIME
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			DEL
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	62:ISINDEX
+		justify
+		9 attributes:
+			0:2:ACTION
+			1:4:CLASS
+			2:0:DIR
+			3:2:HREF
+			4:1:ID
+			5:0:LANG
+			6:0:PROMPT
+			7:0:STYLE
+			8:0:TITLE
+		3 attr_types
+			core
+			i18n
+			ISINDEX
+		contents: SGML_EMPTY
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike same
+		flags: endO
+	63:KBD
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike
+		flags:
+	64:KEYGEN
+		justify
+		8 attributes:
+			0:0:CHALLENGE
+			1:4:CLASS
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:NAME
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			KEYGEN
+		contents: SGML_EMPTY
+		tagclass: SELECTlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: formula TRlike SELECTlike same
+		flags: endO
+	65:LABEL
+		justify
+		11 attributes:
+			0:0:ACCESSKEY
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:0:FOR
+			5:1:ID
+			6:0:LANG
+			7:0:ONBLUR
+			8:0:ONFOCUS
+			9:0:STYLE
+			10:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			LABEL
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike
+		flags:
+	66:LEGEND
+		justify
+		9 attributes:
+			0:0:ACCESSKEY
+			1:0:ALIGN
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:STYLE
+			8:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			CAPTION
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: DIVlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike
+		flags:
+	67:LH
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike ULlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags: endO
+	68:LI
+		justify
+		13 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DINGBAT
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:MD
+			7:0:SKIP
+			8:2:SRC
+			9:0:STYLE
+			10:0:TITLE
+			11:0:TYPE
+			12:0:VALUE
+		4 attr_types
+			core
+			events
+			i18n
+			LI
+		contents: SGML_EMPTY
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags: endO
+	69:LINK
+		justify
+		14 attributes:
+			0:0:CHARSET
+			1:4:CLASS
+			2:0:DIR
+			3:2:HREF
+			4:0:HREFLANG
+			5:1:ID
+			6:0:LANG
+			7:0:MEDIA
+			8:0:REL
+			9:0:REV
+			10:0:STYLE
+			11:0:TARGET
+			12:0:TITLE
+			13:0:TYPE
+		4 attr_types
+			core
+			events
+			i18n
+			LINK
+		contents: SGML_EMPTY
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: outer HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		flags: endO
+	70:LISTING
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_LITTERAL
+		tagclass: ULlike
+		contains:
+		icontains:
+		contained: DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike ULlike same
+		flags:
+	71:MAP
+		justify
+		8 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:1:NAME
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			MAP
+		contents: SGML_MIXED
+		tagclass: MAPlike
+		contains: MAPlike
+		icontains: MAPlike
+		contained: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike LIlike
+		flags:
+	72:MARQUEE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: HRlike
+		contains: FONTlike EMlike MATHlike Alike
+		icontains: FONTlike EMlike MATHlike Alike formula BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: MATHlike Alike formula BRlike APPLETlike same
+		flags:
+	73:MATH
+		justify
+		8 attributes:
+			0:0:BOX
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			MATH
+		contents: SGML_LITTERAL
+		tagclass: MATHlike
+		contains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike MATHlike Alike formula
+		flags:
+	74:MENU
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:PLAIN
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+			12:0:TYPE
+			13:0:WRAP
+		3 attr_types
+			core
+			i18n
+			UL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: LIlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike BRlike APPLETlike HRlike MAPlike
+		contained: FORMlike DIVlike LIlike BRlike APPLETlike HRlike outer
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike MAPlike same
+		flags:
+	75:META
+		justify
+		5 attributes:
+			0:0:CHARSET
+			1:0:CONTENT
+			2:0:HTTP-EQUIV
+			3:0:NAME
+			4:0:SCHEME
+		1 attr_types
+			META
+		contents: SGML_EMPTY
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: outer HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		flags: endO
+	76:NEXTID
+		justify
+		1 attributes:
+			0:0:N
+		1 attr_types
+			NEXTID
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer
+		canclose: FONTlike
+		flags: endO
+	77:NOFRAMES
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: BODYlike
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: BRlike APPLETlike HRlike outer
+		icontained: BRlike APPLETlike HRlike outer
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike HRlike MAPlike
+		flags:
+	78:NOTE
+		justify
+		10 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:MD
+			6:8:ROLE
+			7:2:SRC
+			8:0:STYLE
+			9:0:TITLE
+		3 attr_types
+			core
+			i18n
+			NOTE
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike ULlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: formula TRlike FORMlike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags:
+	79:OBJECT
+		justify
+		26 attributes:
+			0:0:ALIGN
+			1:0:ARCHIVE
+			2:0:BORDER
+			3:4:CLASS
+			4:2:CLASSID
+			5:2:CODEBASE
+			6:0:CODETYPE
+			7:2:DATA
+			8:0:DECLARE
+			9:0:DIR
+			10:0:HEIGHT
+			11:0:HSPACE
+			12:1:ID
+			13:0:ISMAP
+			14:0:LANG
+			15:0:NAME
+			16:0:NOTAB
+			17:0:SHAPES
+			18:0:STANDBY
+			19:0:STYLE
+			20:0:TABINDEX
+			21:0:TITLE
+			22:0:TYPE
+			23:2:USEMAP
+			24:0:VSPACE
+			25:0:WIDTH
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			OBJECT
+		contents: SGML_LITTERAL
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike LIlike ULlike BRlike APPLETlike same
+		flags: frecyc
+	80:OL
+		justify
+		12 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:CONTINUE
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:SEQNUM
+			8:0:START
+			9:0:STYLE
+			10:0:TITLE
+			11:0:TYPE
+		3 attr_types
+			core
+			i18n
+			OL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: LIlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike MAPlike same
+		flags:
+	81:OPTION
+		justify
+		13 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:0:DISABLED
+			4:0:ERROR
+			5:1:ID
+			6:0:LABEL
+			7:0:LANG
+			8:0:SELECTED
+			9:0:SHAPE
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALUE
+		4 attr_types
+			core
+			events
+			i18n
+			OPTION
+		contents: SGML_EMPTY
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: SELECTlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags: endO
+	82:OVERLAY
+		justify
+		12 attributes:
+			0:4:CLASS
+			1:0:HEIGHT
+			2:1:ID
+			3:0:IMAGEMAP
+			4:0:MD
+			5:2:SRC
+			6:0:STYLE
+			7:0:TITLE
+			8:0:UNITS
+			9:0:WIDTH
+			10:0:X
+			11:0:Y
+		2 attr_types
+			core
+			OVERLAY
+		contents: SGML_EMPTY
+		tagclass: HRlike
+		contains:
+		icontains:
+		contained: DIVlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike same
+		flags: endO
+	83:P
+		justify
+		9 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NOWRAP
+			7:0:STYLE
+			8:0:TITLE
+		4 attr_types
+			align
+			core
+			i18n
+			P
+		contents: SGML_EMPTY
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags: endO
+	84:PARAM
+		justify
+		18 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:0:ACCEPT-ENCODING
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DATA
+			6:0:DIR
+			7:1:ID
+			8:0:LANG
+			9:0:NAME
+			10:0:OBJECT
+			11:0:REF
+			12:0:STYLE
+			13:0:TITLE
+			14:0:TYPE
+			15:0:VALUE
+			16:0:VALUEREF
+			17:0:VALUETYPE
+		3 attr_types
+			core
+			i18n
+			PARAM
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: Plike LIlike BRlike APPLETlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: TRlike SELECTlike Plike LIlike BRlike same
+		flags: endO
+	85:PLAINTEXT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_LITTERAL
+		tagclass: outer
+		contains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff same
+		contained: outer same
+		icontained: outer same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		flags: endO
+	86:PRE
+		nojustify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike HRlike MAPlike
+		icontains: EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike HRlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags:
+	87:Q
+		justify
+		8 attributes:
+			0:2:CITE
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			Q
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	88:S
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags:
+	89:SAMP
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: EMlike
+		flags: nreie
+	90:SCRIPT
+		justify
+		16 attributes:
+			0:0:CHARSET
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DEFER
+			4:0:DIR
+			5:0:EVENT
+			6:0:FOR
+			7:1:ID
+			8:0:LANG
+			9:0:LANGUAGE
+			10:0:NAME
+			11:0:SCRIPTENGINE
+			12:2:SRC
+			13:0:STYLE
+			14:0:TITLE
+			15:0:TYPE
+		3 attr_types
+			core
+			i18n
+			SCRIPT
+		contents: SGML_LITTERAL
+		tagclass: APPLETlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike LIlike ULlike BRlike APPLETlike HRlike same
+		flags:
+	91:SELECT
+		justify
+		22 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:0:DISABLED
+			5:0:ERROR
+			6:0:HEIGHT
+			7:1:ID
+			8:0:LANG
+			9:0:MD
+			10:0:MULTIPLE
+			11:0:NAME
+			12:0:NOTAB
+			13:0:ONBLUR
+			14:0:ONCHANGE
+			15:0:ONFOCUS
+			16:0:SIZE
+			17:0:STYLE
+			18:0:TABINDEX
+			19:0:TITLE
+			20:0:UNITS
+			21:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			SELECT
+		contents: SGML_MIXED
+		tagclass: SELECTlike
+		contains: MAPlike
+		icontains: MAPlike
+		contained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike LIlike ULlike same
+		flags: strict
+	92:SHY
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula BRlike same
+		flags: endO
+	93:SMALL
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	94:SPAN
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike same
+		flags:
+	95:SPOT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: Alike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		canclose: Alike
+		flags: endO
+	96:STRIKE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags:
+	97:STRONG
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags: nreie
+	98:STYLE
+		justify
+		9 attributes:
+			0:4:CLASS
+			1:0:DIR
+			2:1:ID
+			3:0:LANG
+			4:0:MEDIA
+			5:0:NOTATION
+			6:0:STYLE
+			7:0:TITLE
+			8:0:TYPE
+		3 attr_types
+			core
+			i18n
+			STYLE
+		contents: SGML_LITTERAL
+		tagclass: HEADstuff
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike APPLETlike HRlike outer BODYlike HEADstuff
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula same
+		flags:
+	99:SUB
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: MATHlike
+		contains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike MATHlike
+		flags:
+	100:SUP
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: MATHlike
+		contains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike MATHlike
+		flags:
+	101:TAB
+		justify
+		11 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:0:DP
+			5:1:ID
+			6:0:INDENT
+			7:0:LANG
+			8:0:STYLE
+			9:0:TITLE
+			10:0:TO
+		4 attr_types
+			align
+			core
+			i18n
+			TAB
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer HEADstuff
+		canclose: FONTlike
+		flags: endO
+	102:TABLE
+		justify
+		22 attributes:
+			0:0:ALIGN
+			1:2:BACKGROUND
+			2:0:BORDER
+			3:0:CELLPADDING
+			4:0:CELLSPACING
+			5:4:CLASS
+			6:0:CLEAR
+			7:0:COLS
+			8:0:COLSPEC
+			9:0:DIR
+			10:0:DP
+			11:0:FRAME
+			12:1:ID
+			13:0:LANG
+			14:0:NOFLOW
+			15:0:NOWRAP
+			16:0:RULES
+			17:0:STYLE
+			18:0:SUMMARY
+			19:0:TITLE
+			20:0:UNITS
+			21:0:WIDTH
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			TABLE
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: TRlike SELECTlike FORMlike Plike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike LIlike HRlike MAPlike same
+		flags:
+	103:TBODY
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:DP
+			7:1:ID
+			8:0:LANG
+			9:0:NOWRAP
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALIGN
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			TR
+		contents: SGML_EMPTY
+		tagclass: TRlike
+		contains: TRlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike ULlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike HRlike MAPlike same
+		flags: endO startO
+	104:TD
+		justify
+		23 attributes:
+			0:0:ABBR
+			1:0:ALIGN
+			2:0:AXES
+			3:0:AXIS
+			4:2:BACKGROUND
+			5:0:CHAR
+			6:0:CHAROFF
+			7:4:CLASS
+			8:0:CLEAR
+			9:0:COLSPAN
+			10:0:DIR
+			11:0:DP
+			12:0:HEADERS
+			13:0:HEIGHT
+			14:1:ID
+			15:0:LANG
+			16:0:NOWRAP
+			17:0:ROWSPAN
+			18:0:SCOPE
+			19:0:STYLE
+			20:0:TITLE
+			21:0:VALIGN
+			22:0:WIDTH
+		4 attr_types
+			cellalign
+			core
+			i18n
+			TD
+		contents: SGML_EMPTY
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: TRlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike HRlike MAPlike same
+		flags: endO
+	105:TEXTAREA
+		justify
+		22 attributes:
+			0:0:ACCEPT-CHARSET
+			1:0:ACCESSKEY
+			2:0:ALIGN
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:COLS
+			6:0:DIR
+			7:0:DISABLED
+			8:0:ERROR
+			9:1:ID
+			10:0:LANG
+			11:0:NAME
+			12:0:NOTAB
+			13:0:ONBLUR
+			14:0:ONCHANGE
+			15:0:ONFOCUS
+			16:0:ONSELECT
+			17:0:READONLY
+			18:0:ROWS
+			19:0:STYLE
+			20:0:TABINDEX
+			21:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			TEXTAREA
+		contents: SGML_LITTERAL
+		tagclass: SELECTlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike LIlike ULlike same
+		flags: nolyspcl
+	106:TEXTFLOW
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DATA
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NAME
+			7:0:OBJECT
+			8:0:REF
+			9:0:STYLE
+			10:0:TITLE
+			11:0:TYPE
+			12:0:VALUE
+			13:0:VALUETYPE
+		3 attr_types
+			core
+			i18n
+			BODYTEXT
+		contents: SGML_MIXED
+		tagclass: BODYlike
+		contains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer same
+		contained: formula TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer same
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike BRlike APPLETlike MAPlike outer same
+		flags: endO startO
+	107:TFOOT
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:DP
+			7:1:ID
+			8:0:LANG
+			9:0:NOWRAP
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALIGN
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			TR
+		contents: SGML_EMPTY
+		tagclass: TRlike
+		contains: TRlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike HRlike MAPlike same
+		flags: endO
+	108:TH
+		justify
+		23 attributes:
+			0:0:ABBR
+			1:0:ALIGN
+			2:0:AXES
+			3:0:AXIS
+			4:2:BACKGROUND
+			5:0:CHAR
+			6:0:CHAROFF
+			7:4:CLASS
+			8:0:CLEAR
+			9:0:COLSPAN
+			10:0:DIR
+			11:0:DP
+			12:0:HEADERS
+			13:0:HEIGHT
+			14:1:ID
+			15:0:LANG
+			16:0:NOWRAP
+			17:0:ROWSPAN
+			18:0:SCOPE
+			19:0:STYLE
+			20:0:TITLE
+			21:0:VALIGN
+			22:0:WIDTH
+		4 attr_types
+			cellalign
+			core
+			i18n
+			TD
+		contents: SGML_EMPTY
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: TRlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike HRlike MAPlike same
+		flags: endO
+	109:THEAD
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:DP
+			7:1:ID
+			8:0:LANG
+			9:0:NOWRAP
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALIGN
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			TR
+		contents: SGML_EMPTY
+		tagclass: TRlike
+		contains: TRlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike HRlike MAPlike same
+		flags: endO
+	110:TITLE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_RCDATA
+		tagclass: HEADstuff
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: outer HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike
+		flags: mafse strict
+	111:TR
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:DP
+			7:1:ID
+			8:0:LANG
+			9:0:NOWRAP
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALIGN
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			TR
+		contents: SGML_EMPTY
+		tagclass: TRlike
+		contains: LIlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: TRlike ULlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike HRlike MAPlike same
+		flags: endO
+	112:TT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: nreie
+	113:U
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	114:UL
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:PLAIN
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+			12:0:TYPE
+			13:0:WRAP
+		3 attr_types
+			core
+			i18n
+			UL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: FORMlike LIlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike same
+		flags:
+	115:VAR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags:
+	116:WBR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: FONTlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula BRlike same
+		flags: endO
+	117:XMP
+		nojustify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_LITTERAL
+		tagclass: ULlike
+		contains:
+		icontains:
+		contained: TRlike SELECTlike FORMlike Plike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike MAPlike
+		flags: endO
diff --git a/WWW/Library/Implementation/src1_HTMLDTD.h b/WWW/Library/Implementation/src1_HTMLDTD.h
new file mode 100644
index 00000000..a56e4a09
--- /dev/null
+++ b/WWW/Library/Implementation/src1_HTMLDTD.h
@@ -0,0 +1,2422 @@
+/* $LynxId: src1_HTMLDTD.h,v 1.45 2011/10/07 00:54:36 Kihara.Hideto Exp $ */
+#ifndef src_HTMLDTD_H1
+#define src_HTMLDTD_H1 1
+
+#ifndef once_HTMLDTD
+#define once_HTMLDTD 1
+
+#define T_A             0x00008,0x0B007,0x0FF17,0x37787,0x77BA7,0x8604F,0x00014
+#define T_ABBR          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000
+#define T_ACRONYM       0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000
+#define T_ADDRESS       0x00200,0x0F14F,0x8FFFF,0x36680,0xB6FAF,0x80317,0x00000
+#define T_APPLET        0x02000,0x0B0CF,0x8FFFF,0x37F9F,0xB7FBF,0x8300F,0x00000
+#define T_AREA          0x08000,0x00000,0x00000,0x08000,0x3FFFF,0x00F1F,0x00001
+#define T_AU            0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000
+#define T_AUTHOR        0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000
+#define T_B             0x00001,0x8B04F,0xAFFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_BANNER        0x00200,0x0FB8F,0x0FFFF,0x30000,0x30000,0x8031F,0x00000
+#define T_BASE          0x40000,0x00000,0x00000,0x50000,0x50000,0x8000F,0x00001
+#define T_BASEFONT      0x01000,0x00000,0x00000,0x377AF,0x37FAF,0x8F000,0x00001
+#define T_BDO           0x00100,0x0B04F,0x8FFFF,0x36680,0xB6FAF,0x0033F,0x00000
+#define T_BGSOUND       0x01000,0x00000,0x00000,0x777AF,0x77FAF,0x8730F,0x00001
+#define T_BIG           0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_BLINK         0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00001,0x00014
+#define T_BLOCKQUOTE    0x00200,0xAFBCF,0xAFFFF,0xB6680,0xB6FAF,0x8031F,0x00000
+#define T_BODY          0x20000,0x2FB8F,0x2FFFF,0x30000,0x30000,0xDFF7F,0x00003
+#define T_BODYTEXT      0x20000,0x0FB8F,0xAFFFF,0x30200,0xB7FAF,0x8F17F,0x00003
+#define T_BQ            0x00200,0xAFBCF,0xAFFFF,0xB6680,0xB6FAF,0x8031F,0x00000
+#define T_BR            0x01000,0x00000,0x00000,0x377BF,0x77FBF,0x8101F,0x00001
+#define T_BUTTON        0x02000,0x0BB07,0x0FF37,0x0378F,0x37FBF,0x8115F,0x00000
+#define T_CAPTION       0x00100,0x0B04F,0x8FFFF,0x06A00,0xB6FA7,0x8035F,0x00000
+#define T_CENTER        0x00200,0x8FBCF,0x8FFFF,0xB6680,0xB6FA7,0x8071F,0x00000
+#define T_CITE          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00010
+#define T_CODE          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00000
+#define T_COL           0x04000,0x00000,0x00000,0x00820,0x36FA7,0x88F5F,0x00001
+#define T_COLGROUP      0x00020,0x04000,0x04000,0x00800,0x36FA7,0x8875F,0x00001
+#define T_COMMENT       0x00004,0x00000,0x00000,0xA77AF,0x7FFFF,0x00003,0x00000
+#define T_CREDIT        0x00100,0x0B04F,0x8FFFF,0x06A00,0xB7FBF,0x8030F,0x00000
+#define T_DD            0x00400,0x0FBCF,0x8FFFF,0x00800,0xB6FFF,0x8071F,0x00001
+#define T_DEL           0x00002,0x8BBCF,0x8FFFF,0xA7F8F,0xF7FBF,0x00003,0x00000
+#define T_DFN           0x00002,0x8B0CF,0x8FFFF,0x8778F,0xF7FBF,0x00003,0x00000
+#define T_DIR           0x00800,0x0B400,0x0F75F,0x37680,0x36FB7,0x84F7F,0x00000
+#define T_DIV           0x00200,0x8FBCF,0x8FFFF,0xB66A0,0xB7FFF,0x8031F,0x00004
+#define T_DL            0x00800,0x0C480,0x8FFFF,0x36680,0xB7FB7,0x0075F,0x00000
+#define T_DLC           0x00800,0x0C480,0x8FFFF,0x36680,0xB7FB7,0x0075F,0x00000
+#define T_DT            0x00400,0x0B04F,0x0B1FF,0x00800,0x17FFF,0x8071F,0x00001
+#define T_EM            0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00010
+#define T_EMBED         0x02000,0x8F107,0x8FFF7,0xB6FBF,0xB7FBF,0x1FF7F,0x00001
+#define T_FIELDSET      0x00200,0x8FB4F,0x8FF7F,0x86787,0xB7FF7,0x8805F,0x00000
+#define T_FIG           0x00200,0x0FB00,0x8FFFF,0x36680,0xB6FBF,0x8834F,0x00000
+#define T_FN            0x00200,0x8FBCF,0x8FFFF,0xB6680,0xB7EBF,0x8114F,0x00000
+#define T_FONT          0x00001,0x8B04F,0x8FFFF,0xB778F,0xF7FBF,0x00001,0x00014
+#define T_FORM          0x00080,0x0FF6F,0x0FF7F,0x36E07,0x32F07,0x88DFF,0x00000
+#define T_FRAME         0x10000,0x00000,0x00000,0x10000,0x10000,0x9FFFF,0x00001
+#define T_FRAMESET      0x10000,0x90000,0x90000,0x90000,0x93000,0x9FFFF,0x00000
+#define T_H1            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H2            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H3            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H4            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H5            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_H6            0x00100,0x0B04F,0x0B05F,0x36680,0x37FAF,0x80117,0x00000
+#define T_HEAD          0x40000,0x4F000,0x47000,0x10000,0x10000,0x9FF7F,0x00007
+#define T_HR            0x04000,0x00000,0x00000,0x3FE80,0x3FFBF,0x87F37,0x00001
+#define T_HTML          0x10000,0x7FB8F,0x7FFFF,0x00000,0x00000,0x1FFFF,0x00003
+#define T_HY            0x01000,0x00000,0x00000,0x3779F,0x77FBF,0x8101F,0x00001
+#define T_I             0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_IFRAME        0x02000,0x8FBCF,0x8FFFF,0xB679F,0xB6FBF,0xD315F,0x00000
+#define T_IMG           0x01000,0x00000,0x00000,0x3779F,0x37FBF,0x80000,0x00001
+#define T_INPUT         0x00040,0x00000,0x00000,0x03F87,0x37F87,0x8904F,0x00001
+#define T_INS           0x00002,0x8BBCF,0x8FFFF,0xA7F8F,0xF7FBF,0x00003,0x00000
+#define T_ISINDEX       0x08000,0x00000,0x00000,0x7778F,0x7FFAF,0x80007,0x00001
+#define T_KBD           0x00002,0x00000,0x00000,0x2778F,0x77FBF,0x00003,0x00000
+#define T_KEYGEN        0x00040,0x00000,0x00000,0x07FB7,0x37FB7,0x80070,0x00001
+#define T_LABEL         0x00002,0x0304F,0x0FFFF,0x0679F,0x36FBF,0x00007,0x00000
+#define T_LEGEND        0x00002,0x0B04F,0x8FF7F,0x00200,0xB7FA7,0x00003,0x00000
+#define T_LH            0x00400,0x0BB7F,0x8FFFF,0x00800,0x97FFF,0x8071F,0x00001
+#define T_LI            0x00400,0x0BBFF,0x8FFFF,0x00800,0x97FFF,0x8071F,0x00001
+#define T_LINK          0x08000,0x00000,0x00000,0x50000,0x50000,0x0FF7F,0x00001
+#define T_LISTING       0x00800,0x00000,0x00000,0x36600,0x36F00,0x80F1F,0x00000
+#define T_MAP           0x08000,0x08000,0x08000,0x37FCF,0x37FBF,0x0051F,0x00000
+#define T_MARQUEE       0x04000,0x0000F,0x8F01F,0x37787,0xB7FA7,0x8301C,0x00000
+#define T_MATH          0x00004,0x0B05F,0x8FFFF,0x2778F,0xF7FBF,0x0001F,0x00000
+#define T_MENU          0x00800,0x0B400,0x0F75F,0x17680,0x36FB7,0x88F7F,0x00000
+#define T_META          0x08000,0x00000,0x00000,0x50000,0x50000,0x0FF7F,0x00001
+#define T_NEXTID        0x01000,0x00000,0x00000,0x50000,0x1FFF7,0x00001,0x00001
+#define T_NOFRAMES      0x20000,0x2FB8F,0x0FFFF,0x17000,0x17000,0x0CF5F,0x00000
+#define T_NOTE          0x00200,0x0BBAF,0x8FFFF,0x376B0,0xB7FFF,0x8031F,0x00000
+#define T_OBJECT        0x02000,0x8FBCF,0x8FFFF,0xB679F,0xB6FBF,0x83D5F,0x00020
+#define T_OL            0x00800,0x0C400,0x8FFFF,0x37680,0xB7FB7,0x88F7F,0x00000
+#define T_OPTION        0x08000,0x00000,0x00000,0x00040,0x37FFF,0x8031F,0x00001
+#define T_OVERLAY       0x04000,0x00000,0x00000,0x00200,0x37FBF,0x83F7F,0x00001
+#define T_P             0x00100,0x0B04F,0x8FFFF,0x36680,0xB6FA7,0x80117,0x00001
+#define T_PARAM         0x01000,0x00000,0x00000,0x33500,0x37FFF,0x81560,0x00001
+#define T_PLAINTEXT     0x10000,0xFFFFF,0xFFFFF,0x90000,0x90000,0x3FFFF,0x00001
+#define T_PRE           0x00200,0x0F04F,0x0F05E,0x36680,0x36FF0,0x8071E,0x00000
+#define T_Q             0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00000
+#define T_S             0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00000
+#define T_SAMP          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00010
+#define T_SCRIPT        0x02000,0x00000,0x00000,0x77F9F,0x77FFF,0x87D5F,0x00000
+#define T_SELECT        0x00040,0x08000,0x08000,0x03FAF,0x33FBF,0x80D5F,0x00008
+#define T_SHY           0x01000,0x00000,0x00000,0x3779F,0x77FBF,0x8101F,0x00001
+#define T_SMALL         0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_SPAN          0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x80003,0x00000
+#define T_SPOT          0x00008,0x00000,0x00000,0x3FFF7,0x3FFF7,0x00008,0x00001
+#define T_STRIKE        0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00000
+#define T_STRONG        0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00010
+#define T_STYLE         0x40000,0x00000,0x00000,0x7638F,0x76FAF,0x8001F,0x00000
+#define T_SUB           0x00004,0x8B05F,0x8FFFF,0x8779F,0xF7FBF,0x00007,0x00000
+#define T_SUP           0x00004,0x8B05F,0x8FFFF,0x8779F,0xF7FBF,0x00007,0x00000
+#define T_TAB           0x01000,0x00000,0x00000,0x3778F,0x57FAF,0x00001,0x00001
+#define T_TABLE         0x00800,0x0F1E0,0x8FFFF,0x36680,0xB6FA7,0x8C57F,0x00000
+#define T_TBODY         0x00020,0x00020,0x8FFFF,0x00880,0xB7FB7,0x8C75F,0x00003
+#define T_TD            0x00400,0x0FBCF,0x8FFFF,0x00020,0xB7FB7,0x8C75F,0x00001
+#define T_TEXTAREA      0x00040,0x00000,0x00000,0x07F8F,0x33FBF,0x80D5F,0x00040
+#define T_TEXTFLOW      0x20000,0x8FBFF,0x9FFFF,0x977B0,0xB7FB7,0x9B00F,0x00003
+#define T_TFOOT         0x00020,0x00020,0x8FFFF,0x00800,0xB7FB7,0x8CF5F,0x00001
+#define T_TH            0x00400,0x0FBCF,0x0FFFF,0x00020,0xB7FB7,0x8CF5F,0x00001
+#define T_THEAD         0x00020,0x00020,0x8FFFF,0x00800,0xB7FB7,0x8CF5F,0x00001
+#define T_TITLE         0x40000,0x00000,0x00000,0x50000,0x50000,0x0031F,0x0000C
+#define T_TR            0x00020,0x00400,0x8FFFF,0x00820,0xB7FB7,0x8C75F,0x00001
+#define T_TT            0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00010
+#define T_U             0x00001,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014
+#define T_UL            0x00800,0x0C480,0x8FFFF,0x36680,0xB7FFF,0x8075F,0x00000
+#define T_VAR           0x00002,0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00000
+#define T_WBR           0x00001,0x00000,0x00000,0x3778F,0x77FBF,0x8101F,0x00001
+#define T_XMP           0x00800,0x00000,0x00000,0x367E0,0x36FFF,0x0875F,0x00001
+#define T_OBJECT_PCDATA 0x02000,0x8FBCF,0x8FFFF,0xB679F,0xB6FBF,0x83D5F,0x00008
+#define T__UNREC_	0x00000,0x00000,0x00000,0x00000,0x00000,0x00000,0x00000
+#ifdef USE_PRETTYSRC
+# define N HTMLA_NORMAL
+# define i HTMLA_ANAME
+# define h HTMLA_HREF
+# define c HTMLA_CLASS
+# define x HTMLA_AUXCLASS
+# define T(t) , t
+#else
+# define T(t)			/*nothing */
+#endif
+/* *INDENT-OFF* */
+
+#define ATTR_TYPE(name) #name, name##_attr_list
+
+/* generic attributes, used in different tags */
+static const attr core_attr_list[] = {
+	{ "CLASS"         T(c) },
+	{ "ID"            T(i) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType core_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ 0, 0 },
+};
+
+static const attr i18n_attr_list[] = {
+	{ "DIR"           T(N) },
+	{ "LANG"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType i18n_attr_type[] = {
+	{ ATTR_TYPE(i18n) },
+	{ 0, 0 },
+};
+
+static const attr events_attr_list[] = {
+	{ "ONCLICK"       T(N) },
+	{ "ONDBLCLICK"    T(N) },
+	{ "ONKEYDOWN"     T(N) },
+	{ "ONKEYPRESS"    T(N) },
+	{ "ONKEYUP"       T(N) },
+	{ "ONMOUSEDOWN"   T(N) },
+	{ "ONMOUSEMOVE"   T(N) },
+	{ "ONMOUSEOUT"    T(N) },
+	{ "ONMOUSEOVER"   T(N) },
+	{ "ONMOUSEUP"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType events_attr_type[] = {
+	{ ATTR_TYPE(events) },
+	{ 0, 0 },
+};
+
+static const attr align_attr_list[] = {
+	{ "ALIGN"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType align_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ 0, 0 },
+};
+
+static const attr cellalign_attr_list[] = {
+	{ "ALIGN"         T(N) },
+	{ "CHAR"          T(N) },
+	{ "CHAROFF"       T(N) },
+	{ "VALIGN"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType cellalign_attr_type[] = {
+	{ ATTR_TYPE(cellalign) },
+	{ 0, 0 },
+};
+
+static const attr bgcolor_attr_list[] = {
+	{ "BGCOLOR"       T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType bgcolor_attr_type[] = {
+	{ ATTR_TYPE(bgcolor) },
+	{ 0, 0 },
+};
+
+
+/* tables defining attributes per-tag in terms of generic attributes (editable) */
+static const attr A_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "CHARSET"       T(N) },
+	{ "CLEAR"         T(N) },
+	{ "COORDS"        T(N) },
+	{ "HREF"          T(h) },
+	{ "HREFLANG"      T(N) },
+	{ "ISMAP"         T(N) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(i) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "REL"           T(N) },
+	{ "REV"           T(N) },
+	{ "SHAPE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TARGET"        T(N) },
+	{ "TYPE"          T(N) },
+	{ "URN"           T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType A_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(A) },
+	{ 0, 0 },
+};
+
+static const attr ADDRESS_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "NOWRAP"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType ADDRESS_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(ADDRESS) },
+	{ 0, 0 },
+};
+
+static const attr APPLET_attr_list[] = {
+	{ "ALT"           T(N) },
+	{ "CLEAR"         T(N) },
+	{ "CODE"          T(N) },
+	{ "CODEBASE"      T(h) },
+	{ "DOWNLOAD"      T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "NAME"          T(i) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType APPLET_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(APPLET) },
+	{ 0, 0 },
+};
+
+static const attr AREA_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "ALT"           T(N) },
+	{ "CLEAR"         T(N) },
+	{ "COORDS"        T(N) },
+	{ "HREF"          T(h) },
+	{ "NOHREF"        T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "SHAPE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TARGET"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType AREA_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(AREA) },
+	{ 0, 0 },
+};
+
+static const attr BASE_attr_list[] = {
+	{ "HREF"          T(h) },
+	{ "TARGET"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BASE_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(BASE) },
+	{ 0, 0 },
+};
+
+static const attr BGSOUND_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "LOOP"          T(N) },
+	{ "SRC"           T(h) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BGSOUND_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BGSOUND) },
+	{ 0, 0 },
+};
+
+static const attr BODY_attr_list[] = {
+	{ "ALINK"         T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "CLEAR"         T(N) },
+	{ "LINK"          T(N) },
+	{ "ONLOAD"        T(N) },
+	{ "ONUNLOAD"      T(N) },
+	{ "TEXT"          T(N) },
+	{ "VLINK"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BODY_attr_type[] = {
+	{ ATTR_TYPE(bgcolor) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BODY) },
+	{ 0, 0 },
+};
+
+static const attr BODYTEXT_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DATA"          T(N) },
+	{ "NAME"          T(N) },
+	{ "OBJECT"        T(N) },
+	{ "REF"           T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ "VALUETYPE"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BODYTEXT_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BODYTEXT) },
+	{ 0, 0 },
+};
+
+static const attr BQ_attr_list[] = {
+	{ "CITE"          T(h) },
+	{ "CLEAR"         T(N) },
+	{ "NOWRAP"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BQ_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BQ) },
+	{ 0, 0 },
+};
+
+static const attr BUTTON_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "CLEAR"         T(N) },
+	{ "DISABLED"      T(N) },
+	{ "NAME"          T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "READONLY"      T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType BUTTON_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(BUTTON) },
+	{ 0, 0 },
+};
+
+static const attr CAPTION_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType CAPTION_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(CAPTION) },
+	{ 0, 0 },
+};
+
+static const attr COL_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "SPAN"          T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType COL_attr_type[] = {
+	{ ATTR_TYPE(cellalign) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(COL) },
+	{ 0, 0 },
+};
+
+static const attr DEL_attr_list[] = {
+	{ "CITE"          T(N) },
+	{ "DATETIME"      T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType DEL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(DEL) },
+	{ 0, 0 },
+};
+
+static const attr DIV_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType DIV_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(DIV) },
+	{ 0, 0 },
+};
+
+static const attr DL_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType DL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(DL) },
+	{ 0, 0 },
+};
+
+static const attr EMBED_attr_list[] = {
+	{ "ALT"           T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLEAR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "IMAGEMAP"      T(N) },
+	{ "ISMAP"         T(N) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(i) },
+	{ "NOFLOW"        T(N) },
+	{ "PARAMS"        T(N) },
+	{ "SRC"           T(h) },
+	{ "UNITS"         T(N) },
+	{ "USEMAP"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType EMBED_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(EMBED) },
+	{ 0, 0 },
+};
+
+static const attr FIG_attr_list[] = {
+	{ "BORDER"        T(N) },
+	{ "CLEAR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "IMAGEMAP"      T(N) },
+	{ "ISOBJECT"      T(N) },
+	{ "MD"            T(N) },
+	{ "NOFLOW"        T(N) },
+	{ "SRC"           T(h) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FIG_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(FIG) },
+	{ 0, 0 },
+};
+
+static const attr FONT_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "COLOR"         T(N) },
+	{ "END"           T(N) },
+	{ "FACE"          T(N) },
+	{ "SIZE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FONT_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(FONT) },
+	{ 0, 0 },
+};
+
+static const attr FORM_attr_list[] = {
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACTION"        T(h) },
+	{ "CLEAR"         T(N) },
+	{ "ENCTYPE"       T(N) },
+	{ "METHOD"        T(N) },
+	{ "ONRESET"       T(N) },
+	{ "ONSUBMIT"      T(N) },
+	{ "SCRIPT"        T(N) },
+	{ "SUBJECT"       T(N) },
+	{ "TARGET"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FORM_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(FORM) },
+	{ 0, 0 },
+};
+
+static const attr FRAME_attr_list[] = {
+	{ "FRAMEBORDER"   T(N) },
+	{ "LONGDESC"      T(h) },
+	{ "MARGINHEIGHT"  T(N) },
+	{ "MARGINWIDTH"   T(N) },
+	{ "NAME"          T(N) },
+	{ "NORESIZE"      T(N) },
+	{ "SCROLLING"     T(N) },
+	{ "SRC"           T(h) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FRAME_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(FRAME) },
+	{ 0, 0 },
+};
+
+static const attr FRAMESET_attr_list[] = {
+	{ "COLS"          T(N) },
+	{ "ONLOAD"        T(N) },
+	{ "ONUNLOAD"      T(N) },
+	{ "ROWS"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType FRAMESET_attr_type[] = {
+	{ ATTR_TYPE(FRAMESET) },
+	{ 0, 0 },
+};
+
+static const attr GEN_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType GEN_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(GEN) },
+	{ 0, 0 },
+};
+
+static const attr H_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "MD"            T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "SEQNUM"        T(N) },
+	{ "SKIP"          T(N) },
+	{ "SRC"           T(h) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType H_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(H) },
+	{ 0, 0 },
+};
+
+static const attr HR_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "MD"            T(N) },
+	{ "NOSHADE"       T(N) },
+	{ "SIZE"          T(N) },
+	{ "SRC"           T(h) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType HR_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(HR) },
+	{ 0, 0 },
+};
+
+static const attr IFRAME_attr_list[] = {
+	{ "FRAMEBORDER"   T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "LONGDESC"      T(h) },
+	{ "MARGINHEIGHT"  T(N) },
+	{ "MARGINWIDTH"   T(N) },
+	{ "NAME"          T(N) },
+	{ "SCROLLING"     T(N) },
+	{ "SRC"           T(h) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType IFRAME_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(IFRAME) },
+	{ 0, 0 },
+};
+
+static const attr IMG_attr_list[] = {
+	{ "ALT"           T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLEAR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ISMAP"         T(N) },
+	{ "ISOBJECT"      T(N) },
+	{ "LONGDESC"      T(h) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(N) },
+	{ "SRC"           T(h) },
+	{ "UNITS"         T(N) },
+	{ "USEMAP"        T(h) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType IMG_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(IMG) },
+	{ 0, 0 },
+};
+
+static const attr INPUT_attr_list[] = {
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCESSKEY"     T(N) },
+	{ "ALT"           T(N) },
+	{ "CHECKED"       T(N) },
+	{ "CLEAR"         T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ISMAP"         T(N) },
+	{ "MAX"           T(N) },
+	{ "MAXLENGTH"     T(N) },
+	{ "MD"            T(N) },
+	{ "MIN"           T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "ONSELECT"      T(N) },
+	{ "READONLY"      T(N) },
+	{ "SIZE"          T(N) },
+	{ "SRC"           T(h) },
+	{ "TABINDEX"      T(N) },
+	{ "TYPE"          T(N) },
+	{ "USEMAP"        T(N) },
+	{ "VALUE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType INPUT_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(INPUT) },
+	{ 0, 0 },
+};
+
+static const attr ISINDEX_attr_list[] = {
+	{ "ACTION"        T(h) },
+	{ "HREF"          T(h) },
+	{ "PROMPT"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType ISINDEX_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(ISINDEX) },
+	{ 0, 0 },
+};
+
+static const attr KEYGEN_attr_list[] = {
+	{ "CHALLENGE"     T(N) },
+	{ "NAME"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType KEYGEN_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(KEYGEN) },
+	{ 0, 0 },
+};
+
+static const attr LABEL_attr_list[] = {
+	{ "ACCESSKEY"     T(N) },
+	{ "CLEAR"         T(N) },
+	{ "FOR"           T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType LABEL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(LABEL) },
+	{ 0, 0 },
+};
+
+static const attr LI_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "MD"            T(N) },
+	{ "SKIP"          T(N) },
+	{ "SRC"           T(h) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType LI_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(LI) },
+	{ 0, 0 },
+};
+
+static const attr LINK_attr_list[] = {
+	{ "CHARSET"       T(N) },
+	{ "HREF"          T(h) },
+	{ "HREFLANG"      T(N) },
+	{ "MEDIA"         T(N) },
+	{ "REL"           T(N) },
+	{ "REV"           T(N) },
+	{ "TARGET"        T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType LINK_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(LINK) },
+	{ 0, 0 },
+};
+
+static const attr MAP_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "NAME"          T(i) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType MAP_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(MAP) },
+	{ 0, 0 },
+};
+
+static const attr MATH_attr_list[] = {
+	{ "BOX"           T(N) },
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType MATH_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(MATH) },
+	{ 0, 0 },
+};
+
+static const attr META_attr_list[] = {
+	{ "CHARSET"       T(N) },
+	{ "CONTENT"       T(N) },
+	{ "HTTP-EQUIV"    T(N) },
+	{ "NAME"          T(N) },
+	{ "SCHEME"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType META_attr_type[] = {
+	{ ATTR_TYPE(META) },
+	{ 0, 0 },
+};
+
+static const attr NEXTID_attr_list[] = {
+	{ "N"             T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType NEXTID_attr_type[] = {
+	{ ATTR_TYPE(NEXTID) },
+	{ 0, 0 },
+};
+
+static const attr NOTE_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "MD"            T(N) },
+	{ "ROLE"          T(x) },
+	{ "SRC"           T(h) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType NOTE_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(NOTE) },
+	{ 0, 0 },
+};
+
+static const attr OBJECT_attr_list[] = {
+	{ "ARCHIVE"       T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASSID"       T(h) },
+	{ "CODEBASE"      T(h) },
+	{ "CODETYPE"      T(N) },
+	{ "DATA"          T(h) },
+	{ "DECLARE"       T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ISMAP"         T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "SHAPES"        T(N) },
+	{ "STANDBY"       T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TYPE"          T(N) },
+	{ "USEMAP"        T(h) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType OBJECT_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(OBJECT) },
+	{ 0, 0 },
+};
+
+static const attr OL_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "CONTINUE"      T(N) },
+	{ "SEQNUM"        T(N) },
+	{ "START"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType OL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(OL) },
+	{ 0, 0 },
+};
+
+static const attr OPTION_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "LABEL"         T(N) },
+	{ "SELECTED"      T(N) },
+	{ "SHAPE"         T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType OPTION_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(OPTION) },
+	{ 0, 0 },
+};
+
+static const attr OVERLAY_attr_list[] = {
+	{ "HEIGHT"        T(N) },
+	{ "IMAGEMAP"      T(N) },
+	{ "MD"            T(N) },
+	{ "SRC"           T(h) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ "X"             T(N) },
+	{ "Y"             T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType OVERLAY_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(OVERLAY) },
+	{ 0, 0 },
+};
+
+static const attr P_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "NOWRAP"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType P_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(P) },
+	{ 0, 0 },
+};
+
+static const attr PARAM_attr_list[] = {
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCEPT-ENCODING" T(N) },
+	{ "CLEAR"         T(N) },
+	{ "DATA"          T(N) },
+	{ "NAME"          T(N) },
+	{ "OBJECT"        T(N) },
+	{ "REF"           T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ "VALUEREF"      T(N) },
+	{ "VALUETYPE"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType PARAM_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(PARAM) },
+	{ 0, 0 },
+};
+
+static const attr Q_attr_list[] = {
+	{ "CITE"          T(h) },
+	{ "CLEAR"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType Q_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(Q) },
+	{ 0, 0 },
+};
+
+static const attr SCRIPT_attr_list[] = {
+	{ "CHARSET"       T(N) },
+	{ "CLEAR"         T(N) },
+	{ "DEFER"         T(N) },
+	{ "EVENT"         T(N) },
+	{ "FOR"           T(N) },
+	{ "LANGUAGE"      T(N) },
+	{ "NAME"          T(N) },
+	{ "SCRIPTENGINE"  T(N) },
+	{ "SRC"           T(h) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType SCRIPT_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(SCRIPT) },
+	{ 0, 0 },
+};
+
+static const attr SELECT_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "MD"            T(N) },
+	{ "MULTIPLE"      T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "SIZE"          T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType SELECT_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(SELECT) },
+	{ 0, 0 },
+};
+
+static const attr STYLE_attr_list[] = {
+	{ "MEDIA"         T(N) },
+	{ "NOTATION"      T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType STYLE_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(STYLE) },
+	{ 0, 0 },
+};
+
+static const attr TAB_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DP"            T(N) },
+	{ "INDENT"        T(N) },
+	{ "TO"            T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TAB_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TAB) },
+	{ 0, 0 },
+};
+
+static const attr TABLE_attr_list[] = {
+	{ "BACKGROUND"    T(h) },
+	{ "BORDER"        T(N) },
+	{ "CELLPADDING"   T(N) },
+	{ "CELLSPACING"   T(N) },
+	{ "CLEAR"         T(N) },
+	{ "COLS"          T(N) },
+	{ "COLSPEC"       T(N) },
+	{ "DP"            T(N) },
+	{ "FRAME"         T(N) },
+	{ "NOFLOW"        T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "RULES"         T(N) },
+	{ "SUMMARY"       T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TABLE_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TABLE) },
+	{ 0, 0 },
+};
+
+static const attr TD_attr_list[] = {
+	{ "ABBR"          T(N) },
+	{ "AXES"          T(N) },
+	{ "AXIS"          T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "CLEAR"         T(N) },
+	{ "COLSPAN"       T(N) },
+	{ "DP"            T(N) },
+	{ "HEADERS"       T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "ROWSPAN"       T(N) },
+	{ "SCOPE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TD_attr_type[] = {
+	{ ATTR_TYPE(cellalign) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TD) },
+	{ 0, 0 },
+};
+
+static const attr TEXTAREA_attr_list[] = {
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCESSKEY"     T(N) },
+	{ "CLEAR"         T(N) },
+	{ "COLS"          T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "ONSELECT"      T(N) },
+	{ "READONLY"      T(N) },
+	{ "ROWS"          T(N) },
+	{ "TABINDEX"      T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TEXTAREA_attr_type[] = {
+	{ ATTR_TYPE(align) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TEXTAREA) },
+	{ 0, 0 },
+};
+
+static const attr TR_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "DP"            T(N) },
+	{ "NOWRAP"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType TR_attr_type[] = {
+	{ ATTR_TYPE(cellalign) },
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(events) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(TR) },
+	{ 0, 0 },
+};
+
+static const attr UL_attr_list[] = {
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "MD"            T(N) },
+	{ "PLAIN"         T(N) },
+	{ "SRC"           T(h) },
+	{ "TYPE"          T(N) },
+	{ "WRAP"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const AttrType UL_attr_type[] = {
+	{ ATTR_TYPE(core) },
+	{ ATTR_TYPE(i18n) },
+	{ ATTR_TYPE(UL) },
+	{ 0, 0 },
+};
+
+
+/* attribute lists for the runtime (generated by dtd_util) */
+static const attr A_attr[] = {          /* A attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "CHARSET"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COORDS"        T(N) },
+	{ "DIR"           T(N) },
+	{ "HREF"          T(h) },
+	{ "HREFLANG"      T(N) },
+	{ "ID"            T(i) },
+	{ "ISMAP"         T(N) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(i) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "REL"           T(N) },
+	{ "REV"           T(N) },
+	{ "SHAPE"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "URN"           T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr ADDRESS_attr[] = {    /* ADDRESS attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr APPLET_attr[] = {     /* APPLET attributes */
+	{ "ALIGN"         T(N) },
+	{ "ALT"           T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "CODE"          T(N) },
+	{ "CODEBASE"      T(h) },
+	{ "DIR"           T(N) },
+	{ "DOWNLOAD"      T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(i) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr AREA_attr[] = {       /* AREA attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "ALT"           T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COORDS"        T(N) },
+	{ "DIR"           T(N) },
+	{ "HREF"          T(h) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOHREF"        T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "SHAPE"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BASE_attr[] = {       /* BASE attributes */
+	{ "CLASS"         T(c) },
+	{ "HREF"          T(h) },
+	{ "ID"            T(i) },
+	{ "STYLE"         T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BGSOUND_attr[] = {    /* BGSOUND attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "LOOP"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BODY_attr[] = {       /* BODY attributes */
+	{ "ALINK"         T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "BGCOLOR"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "LINK"          T(N) },
+	{ "ONLOAD"        T(N) },
+	{ "ONUNLOAD"      T(N) },
+	{ "STYLE"         T(N) },
+	{ "TEXT"          T(N) },
+	{ "TITLE"         T(N) },
+	{ "VLINK"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BODYTEXT_attr[] = {   /* BODYTEXT attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DATA"          T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "OBJECT"        T(N) },
+	{ "REF"           T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ "VALUETYPE"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BQ_attr[] = {         /* BLOCKQUOTE attributes */
+	{ "CITE"          T(h) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr BUTTON_attr[] = {     /* BUTTON attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "READONLY"      T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr CAPTION_attr[] = {    /* CAPTION attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr COL_attr[] = {        /* COL attributes */
+	{ "ALIGN"         T(N) },
+	{ "CHAR"          T(N) },
+	{ "CHAROFF"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "SPAN"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VALIGN"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr DEL_attr[] = {        /* DEL attributes */
+	{ "CITE"          T(N) },
+	{ "CLASS"         T(c) },
+	{ "DATETIME"      T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr DIV_attr[] = {        /* CENTER attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr DL_attr[] = {         /* DL attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr EMBED_attr[] = {      /* EMBED attributes */
+	{ "ALIGN"         T(N) },
+	{ "ALT"           T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "IMAGEMAP"      T(N) },
+	{ "ISMAP"         T(N) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(i) },
+	{ "NOFLOW"        T(N) },
+	{ "PARAMS"        T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "USEMAP"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FIG_attr[] = {        /* FIG attributes */
+	{ "ALIGN"         T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "IMAGEMAP"      T(N) },
+	{ "ISOBJECT"      T(N) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NOFLOW"        T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FONT_attr[] = {       /* BASEFONT attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COLOR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "END"           T(N) },
+	{ "FACE"          T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "SIZE"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FORM_attr[] = {       /* FORM attributes */
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACTION"        T(h) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ENCTYPE"       T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "METHOD"        T(N) },
+	{ "ONRESET"       T(N) },
+	{ "ONSUBMIT"      T(N) },
+	{ "SCRIPT"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "SUBJECT"       T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FRAME_attr[] = {      /* FRAME attributes */
+	{ "CLASS"         T(c) },
+	{ "FRAMEBORDER"   T(N) },
+	{ "ID"            T(i) },
+	{ "LONGDESC"      T(h) },
+	{ "MARGINHEIGHT"  T(N) },
+	{ "MARGINWIDTH"   T(N) },
+	{ "NAME"          T(N) },
+	{ "NORESIZE"      T(N) },
+	{ "SCROLLING"     T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr FRAMESET_attr[] = {   /* FRAMESET attributes */
+	{ "COLS"          T(N) },
+	{ "ONLOAD"        T(N) },
+	{ "ONUNLOAD"      T(N) },
+	{ "ROWS"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr GEN_attr[] = {        /* ABBR attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr H_attr[] = {          /* H1 attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "SEQNUM"        T(N) },
+	{ "SKIP"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr HR_attr[] = {         /* HR attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "NOSHADE"       T(N) },
+	{ "SIZE"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr IFRAME_attr[] = {     /* IFRAME attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "FRAMEBORDER"   T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "LONGDESC"      T(h) },
+	{ "MARGINHEIGHT"  T(N) },
+	{ "MARGINWIDTH"   T(N) },
+	{ "NAME"          T(N) },
+	{ "SCROLLING"     T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr IMG_attr[] = {        /* IMG attributes */
+	{ "ALIGN"         T(N) },
+	{ "ALT"           T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ID"            T(i) },
+	{ "ISMAP"         T(N) },
+	{ "ISOBJECT"      T(N) },
+	{ "LANG"          T(N) },
+	{ "LONGDESC"      T(h) },
+	{ "MD"            T(N) },
+	{ "NAME"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "USEMAP"        T(h) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr INPUT_attr[] = {      /* INPUT attributes */
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCESSKEY"     T(N) },
+	{ "ALIGN"         T(N) },
+	{ "ALT"           T(N) },
+	{ "CHECKED"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "ISMAP"         T(N) },
+	{ "LANG"          T(N) },
+	{ "MAX"           T(N) },
+	{ "MAXLENGTH"     T(N) },
+	{ "MD"            T(N) },
+	{ "MIN"           T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "ONSELECT"      T(N) },
+	{ "READONLY"      T(N) },
+	{ "SIZE"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "USEMAP"        T(N) },
+	{ "VALUE"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr ISINDEX_attr[] = {    /* ISINDEX attributes */
+	{ "ACTION"        T(h) },
+	{ "CLASS"         T(c) },
+	{ "DIR"           T(N) },
+	{ "HREF"          T(h) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "PROMPT"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr KEYGEN_attr[] = {     /* KEYGEN attributes */
+	{ "CHALLENGE"     T(N) },
+	{ "CLASS"         T(c) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr LABEL_attr[] = {      /* LABEL attributes */
+	{ "ACCESSKEY"     T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "FOR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr LI_attr[] = {         /* LI attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "SKIP"          T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr LINK_attr[] = {       /* LINK attributes */
+	{ "CHARSET"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "DIR"           T(N) },
+	{ "HREF"          T(h) },
+	{ "HREFLANG"      T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MEDIA"         T(N) },
+	{ "REL"           T(N) },
+	{ "REV"           T(N) },
+	{ "STYLE"         T(N) },
+	{ "TARGET"        T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr MAP_attr[] = {        /* MAP attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(i) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr MATH_attr[] = {       /* MATH attributes */
+	{ "BOX"           T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr META_attr[] = {       /* META attributes */
+	{ "CHARSET"       T(N) },
+	{ "CONTENT"       T(N) },
+	{ "HTTP-EQUIV"    T(N) },
+	{ "NAME"          T(N) },
+	{ "SCHEME"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr NEXTID_attr[] = {     /* NEXTID attributes */
+	{ "N"             T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr NOTE_attr[] = {       /* NOTE attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "ROLE"          T(x) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr OBJECT_attr[] = {     /* OBJECT attributes */
+	{ "ALIGN"         T(N) },
+	{ "ARCHIVE"       T(N) },
+	{ "BORDER"        T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLASSID"       T(h) },
+	{ "CODEBASE"      T(h) },
+	{ "CODETYPE"      T(N) },
+	{ "DATA"          T(h) },
+	{ "DECLARE"       T(N) },
+	{ "DIR"           T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "HSPACE"        T(N) },
+	{ "ID"            T(i) },
+	{ "ISMAP"         T(N) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "SHAPES"        T(N) },
+	{ "STANDBY"       T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "USEMAP"        T(h) },
+	{ "VSPACE"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr OL_attr[] = {         /* OL attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "CONTINUE"      T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "SEQNUM"        T(N) },
+	{ "START"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr OPTION_attr[] = {     /* OPTION attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "ID"            T(i) },
+	{ "LABEL"         T(N) },
+	{ "LANG"          T(N) },
+	{ "SELECTED"      T(N) },
+	{ "SHAPE"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VALUE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr OVERLAY_attr[] = {    /* OVERLAY attributes */
+	{ "CLASS"         T(c) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "IMAGEMAP"      T(N) },
+	{ "MD"            T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ "X"             T(N) },
+	{ "Y"             T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr P_attr[] = {          /* P attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr PARAM_attr[] = {      /* PARAM attributes */
+	{ "ACCEPT"        T(N) },
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCEPT-ENCODING" T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DATA"          T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "OBJECT"        T(N) },
+	{ "REF"           T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "VALUE"         T(N) },
+	{ "VALUEREF"      T(N) },
+	{ "VALUETYPE"     T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr Q_attr[] = {          /* Q attributes */
+	{ "CITE"          T(h) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr SCRIPT_attr[] = {     /* SCRIPT attributes */
+	{ "CHARSET"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DEFER"         T(N) },
+	{ "DIR"           T(N) },
+	{ "EVENT"         T(N) },
+	{ "FOR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "LANGUAGE"      T(N) },
+	{ "NAME"          T(N) },
+	{ "SCRIPTENGINE"  T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr SELECT_attr[] = {     /* SELECT attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "MULTIPLE"      T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "SIZE"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr STYLE_attr[] = {      /* STYLE attributes */
+	{ "CLASS"         T(c) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MEDIA"         T(N) },
+	{ "NOTATION"      T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TAB_attr[] = {        /* TAB attributes */
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DP"            T(N) },
+	{ "ID"            T(i) },
+	{ "INDENT"        T(N) },
+	{ "LANG"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TO"            T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TABLE_attr[] = {      /* TABLE attributes */
+	{ "ALIGN"         T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "BORDER"        T(N) },
+	{ "CELLPADDING"   T(N) },
+	{ "CELLSPACING"   T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COLS"          T(N) },
+	{ "COLSPEC"       T(N) },
+	{ "DIR"           T(N) },
+	{ "DP"            T(N) },
+	{ "FRAME"         T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOFLOW"        T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "RULES"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "SUMMARY"       T(N) },
+	{ "TITLE"         T(N) },
+	{ "UNITS"         T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TD_attr[] = {         /* TD attributes */
+	{ "ABBR"          T(N) },
+	{ "ALIGN"         T(N) },
+	{ "AXES"          T(N) },
+	{ "AXIS"          T(N) },
+	{ "BACKGROUND"    T(h) },
+	{ "CHAR"          T(N) },
+	{ "CHAROFF"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COLSPAN"       T(N) },
+	{ "DIR"           T(N) },
+	{ "DP"            T(N) },
+	{ "HEADERS"       T(N) },
+	{ "HEIGHT"        T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "ROWSPAN"       T(N) },
+	{ "SCOPE"         T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VALIGN"        T(N) },
+	{ "WIDTH"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TEXTAREA_attr[] = {   /* TEXTAREA attributes */
+	{ "ACCEPT-CHARSET" T(N) },
+	{ "ACCESSKEY"     T(N) },
+	{ "ALIGN"         T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COLS"          T(N) },
+	{ "DIR"           T(N) },
+	{ "DISABLED"      T(N) },
+	{ "ERROR"         T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NAME"          T(N) },
+	{ "NOTAB"         T(N) },
+	{ "ONBLUR"        T(N) },
+	{ "ONCHANGE"      T(N) },
+	{ "ONFOCUS"       T(N) },
+	{ "ONSELECT"      T(N) },
+	{ "READONLY"      T(N) },
+	{ "ROWS"          T(N) },
+	{ "STYLE"         T(N) },
+	{ "TABINDEX"      T(N) },
+	{ "TITLE"         T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr TR_attr[] = {         /* TBODY attributes */
+	{ "ALIGN"         T(N) },
+	{ "CHAR"          T(N) },
+	{ "CHAROFF"       T(N) },
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "DIR"           T(N) },
+	{ "DP"            T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "NOWRAP"        T(N) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "VALIGN"        T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+static const attr UL_attr[] = {         /* DIR attributes */
+	{ "CLASS"         T(c) },
+	{ "CLEAR"         T(N) },
+	{ "COMPACT"       T(N) },
+	{ "DINGBAT"       T(N) },
+	{ "DIR"           T(N) },
+	{ "ID"            T(i) },
+	{ "LANG"          T(N) },
+	{ "MD"            T(N) },
+	{ "PLAIN"         T(N) },
+	{ "SRC"           T(h) },
+	{ "STYLE"         T(N) },
+	{ "TITLE"         T(N) },
+	{ "TYPE"          T(N) },
+	{ "WRAP"          T(N) },
+	{ 0               T(N) }	/* Terminate list */
+};
+
+/* *INDENT-ON* */
+
+/* justification-flags */
+#undef N
+#undef i
+#undef h
+#undef c
+#undef x
+
+#undef T
+
+/* tag-names */
+#undef A
+#undef ABBR
+#undef ACRONYM
+#undef ADDRESS
+#undef APPLET
+#undef AREA
+#undef AU
+#undef AUTHOR
+#undef B
+#undef BANNER
+#undef BASE
+#undef BASEFONT
+#undef BDO
+#undef BGSOUND
+#undef BIG
+#undef BLINK
+#undef BLOCKQUOTE
+#undef BODY
+#undef BODYTEXT
+#undef BQ
+#undef BR
+#undef BUTTON
+#undef CAPTION
+#undef CENTER
+#undef CITE
+#undef CODE
+#undef COL
+#undef COLGROUP
+#undef COMMENT
+#undef CREDIT
+#undef DD
+#undef DEL
+#undef DFN
+#undef DIR
+#undef DIV
+#undef DL
+#undef DLC
+#undef DT
+#undef EM
+#undef EMBED
+#undef FIELDSET
+#undef FIG
+#undef FN
+#undef FONT
+#undef FORM
+#undef FRAME
+#undef FRAMESET
+#undef H1
+#undef H2
+#undef H3
+#undef H4
+#undef H5
+#undef H6
+#undef HEAD
+#undef HR
+#undef HTML
+#undef HY
+#undef I
+#undef IFRAME
+#undef IMG
+#undef INPUT
+#undef INS
+#undef ISINDEX
+#undef KBD
+#undef KEYGEN
+#undef LABEL
+#undef LEGEND
+#undef LH
+#undef LI
+#undef LINK
+#undef LISTING
+#undef MAP
+#undef MARQUEE
+#undef MATH
+#undef MENU
+#undef META
+#undef NEXTID
+#undef NOFRAMES
+#undef NOTE
+#undef OBJECT
+#undef OL
+#undef OPTION
+#undef OVERLAY
+#undef P
+#undef PARAM
+#undef PLAINTEXT
+#undef PRE
+#undef Q
+#undef S
+#undef SAMP
+#undef SCRIPT
+#undef SELECT
+#undef SHY
+#undef SMALL
+#undef SPAN
+#undef SPOT
+#undef STRIKE
+#undef STRONG
+#undef STYLE
+#undef SUB
+#undef SUP
+#undef TAB
+#undef TABLE
+#undef TBODY
+#undef TD
+#undef TEXTAREA
+#undef TEXTFLOW
+#undef TFOOT
+#undef TH
+#undef THEAD
+#undef TITLE
+#undef TR
+#undef TT
+#undef U
+#undef UL
+#undef VAR
+#undef WBR
+#undef XMP
+#undef OBJECT_PCDATA
+
+/* these definitions are used in the tags-tables */
+#undef P
+#undef P_
+#ifdef USE_COLOR_STYLE
+#define P_(x) #x, (sizeof #x) -1
+#define NULL_HTTag_ NULL, 0
+#else
+#define P_(x) #x
+#define NULL_HTTag_ NULL
+#endif
+
+#ifdef USE_JUSTIFY_ELTS
+#define P(x) P_(x), 1
+#define P0(x) P_(x), 0
+#define NULL_HTTag NULL_HTTag_,0
+#else
+#define P(x) P_(x)
+#define P0(x) P_(x)
+#define NULL_HTTag NULL_HTTag_
+#endif
+
+#define ATTR_DATA(name) name##_attr, HTML_##name##_ATTRIBUTES, name##_attr_type
+
+#endif /* once_HTMLDTD */
+/* *INDENT-OFF* */
+static const HTTag tags_table1[HTML_ALL_ELEMENTS] = {
+ { P(A),           ATTR_DATA(A),           SGML_MIXED,   T_A},
+ { P(ABBR),        ATTR_DATA(GEN),         SGML_MIXED,   T_ABBR},
+ { P(ACRONYM),     ATTR_DATA(GEN),         SGML_MIXED,   T_ACRONYM},
+ { P(ADDRESS),     ATTR_DATA(ADDRESS),     SGML_MIXED,   T_ADDRESS},
+ { P(APPLET),      ATTR_DATA(APPLET),      SGML_MIXED,   T_APPLET},
+ { P(AREA),        ATTR_DATA(AREA),        SGML_EMPTY,   T_AREA},
+ { P(AU),          ATTR_DATA(GEN),         SGML_MIXED,   T_AU},
+ { P(AUTHOR),      ATTR_DATA(GEN),         SGML_MIXED,   T_AUTHOR},
+ { P(B),           ATTR_DATA(GEN),         SGML_MIXED,   T_B},
+ { P0(BANNER),     ATTR_DATA(GEN),         SGML_MIXED,   T_BANNER},
+ { P(BASE),        ATTR_DATA(BASE),        SGML_EMPTY,   T_BASE},
+ { P(BASEFONT),    ATTR_DATA(FONT),        SGML_EMPTY,   T_BASEFONT},
+ { P(BDO),         ATTR_DATA(GEN),         SGML_MIXED,   T_BDO},
+ { P(BGSOUND),     ATTR_DATA(BGSOUND),     SGML_EMPTY,   T_BGSOUND},
+ { P(BIG),         ATTR_DATA(GEN),         SGML_MIXED,   T_BIG},
+ { P(BLINK),       ATTR_DATA(GEN),         SGML_MIXED,   T_BLINK},
+ { P(BLOCKQUOTE),  ATTR_DATA(BQ),          SGML_MIXED,   T_BLOCKQUOTE},
+ { P(BODY),        ATTR_DATA(BODY),        SGML_MIXED,   T_BODY},
+ { P(BODYTEXT),    ATTR_DATA(BODYTEXT),    SGML_MIXED,   T_BODYTEXT},
+ { P(BQ),          ATTR_DATA(BQ),          SGML_MIXED,   T_BQ},
+ { P(BR),          ATTR_DATA(GEN),         SGML_EMPTY,   T_BR},
+ { P(BUTTON),      ATTR_DATA(BUTTON),      SGML_MIXED,   T_BUTTON},
+ { P(CAPTION),     ATTR_DATA(CAPTION),     SGML_MIXED,   T_CAPTION},
+ { P(CENTER),      ATTR_DATA(DIV),         SGML_MIXED,   T_CENTER},
+ { P(CITE),        ATTR_DATA(GEN),         SGML_MIXED,   T_CITE},
+ { P(CODE),        ATTR_DATA(GEN),         SGML_MIXED,   T_CODE},
+ { P(COL),         ATTR_DATA(COL),         SGML_EMPTY,   T_COL},
+ { P(COLGROUP),    ATTR_DATA(COL),         SGML_ELEMENT, T_COLGROUP},
+ { P(COMMENT),     ATTR_DATA(GEN),         SGML_PCDATA,  T_COMMENT},
+ { P(CREDIT),      ATTR_DATA(GEN),         SGML_MIXED,   T_CREDIT},
+ { P(DD),          ATTR_DATA(GEN),         SGML_MIXED,   T_DD},
+ { P(DEL),         ATTR_DATA(DEL),         SGML_MIXED,   T_DEL},
+ { P(DFN),         ATTR_DATA(GEN),         SGML_MIXED,   T_DFN},
+ { P(DIR),         ATTR_DATA(UL),          SGML_MIXED,   T_DIR},
+ { P(DIV),         ATTR_DATA(DIV),         SGML_MIXED,   T_DIV},
+ { P(DL),          ATTR_DATA(DL),          SGML_MIXED,   T_DL},
+ { P(DLC),         ATTR_DATA(DL),          SGML_MIXED,   T_DLC},
+ { P(DT),          ATTR_DATA(GEN),         SGML_MIXED,   T_DT},
+ { P(EM),          ATTR_DATA(GEN),         SGML_MIXED,   T_EM},
+ { P(EMBED),       ATTR_DATA(EMBED),       SGML_EMPTY,   T_EMBED},
+ { P(FIELDSET),    ATTR_DATA(GEN),         SGML_MIXED,   T_FIELDSET},
+ { P(FIG),         ATTR_DATA(FIG),         SGML_MIXED,   T_FIG},
+ { P(FN),          ATTR_DATA(GEN),         SGML_MIXED,   T_FN},
+ { P(FONT),        ATTR_DATA(FONT),        SGML_MIXED,   T_FONT},
+ { P(FORM),        ATTR_DATA(FORM),        SGML_MIXED,   T_FORM},
+ { P(FRAME),       ATTR_DATA(FRAME),       SGML_EMPTY,   T_FRAME},
+ { P(FRAMESET),    ATTR_DATA(FRAMESET),    SGML_ELEMENT, T_FRAMESET},
+ { P0(H1),         ATTR_DATA(H),           SGML_MIXED,   T_H1},
+ { P0(H2),         ATTR_DATA(H),           SGML_MIXED,   T_H2},
+ { P0(H3),         ATTR_DATA(H),           SGML_MIXED,   T_H3},
+ { P0(H4),         ATTR_DATA(H),           SGML_MIXED,   T_H4},
+ { P0(H5),         ATTR_DATA(H),           SGML_MIXED,   T_H5},
+ { P0(H6),         ATTR_DATA(H),           SGML_MIXED,   T_H6},
+ { P(HEAD),        ATTR_DATA(GEN),         SGML_ELEMENT, T_HEAD},
+ { P(HR),          ATTR_DATA(HR),          SGML_EMPTY,   T_HR},
+ { P(HTML),        ATTR_DATA(GEN),         SGML_MIXED,   T_HTML},
+ { P(HY),          ATTR_DATA(GEN),         SGML_EMPTY,   T_HY},
+ { P(I),           ATTR_DATA(GEN),         SGML_MIXED,   T_I},
+ { P(IFRAME),      ATTR_DATA(IFRAME),      SGML_MIXED,   T_IFRAME},
+ { P(IMG),         ATTR_DATA(IMG),         SGML_EMPTY,   T_IMG},
+ { P(INPUT),       ATTR_DATA(INPUT),       SGML_EMPTY,   T_INPUT},
+ { P(INS),         ATTR_DATA(DEL),         SGML_MIXED,   T_INS},
+ { P(ISINDEX),     ATTR_DATA(ISINDEX),     SGML_EMPTY,   T_ISINDEX},
+ { P(KBD),         ATTR_DATA(GEN),         SGML_MIXED,   T_KBD},
+ { P(KEYGEN),      ATTR_DATA(KEYGEN),      SGML_EMPTY,   T_KEYGEN},
+ { P(LABEL),       ATTR_DATA(LABEL),       SGML_MIXED,   T_LABEL},
+ { P(LEGEND),      ATTR_DATA(CAPTION),     SGML_MIXED,   T_LEGEND},
+ { P(LH),          ATTR_DATA(GEN),         SGML_MIXED,   T_LH},
+ { P(LI),          ATTR_DATA(LI),          SGML_MIXED,   T_LI},
+ { P(LINK),        ATTR_DATA(LINK),        SGML_EMPTY,   T_LINK},
+ { P(LISTING),     ATTR_DATA(GEN),         SGML_LITTERAL,T_LISTING},
+ { P(MAP),         ATTR_DATA(MAP),         SGML_ELEMENT, T_MAP},
+ { P(MARQUEE),     ATTR_DATA(GEN),         SGML_MIXED,   T_MARQUEE},
+ { P(MATH),        ATTR_DATA(MATH),        SGML_PCDATA,  T_MATH},
+ { P(MENU),        ATTR_DATA(UL),          SGML_MIXED,   T_MENU},
+ { P(META),        ATTR_DATA(META),        SGML_EMPTY,   T_META},
+ { P(NEXTID),      ATTR_DATA(NEXTID),      SGML_EMPTY,   T_NEXTID},
+ { P(NOFRAMES),    ATTR_DATA(GEN),         SGML_MIXED,   T_NOFRAMES},
+ { P(NOTE),        ATTR_DATA(NOTE),        SGML_MIXED,   T_NOTE},
+ { P(OBJECT),      ATTR_DATA(OBJECT),      SGML_LITTERAL,T_OBJECT},
+ { P(OL),          ATTR_DATA(OL),          SGML_MIXED,   T_OL},
+ { P(OPTION),      ATTR_DATA(OPTION),      SGML_PCDATA,  T_OPTION},
+ { P(OVERLAY),     ATTR_DATA(OVERLAY),     SGML_PCDATA,  T_OVERLAY},
+ { P(P),           ATTR_DATA(P),           SGML_MIXED,   T_P},
+ { P(PARAM),       ATTR_DATA(PARAM),       SGML_EMPTY,   T_PARAM},
+ { P(PLAINTEXT),   ATTR_DATA(GEN),         SGML_LITTERAL,T_PLAINTEXT},
+ { P0(PRE),        ATTR_DATA(GEN),         SGML_MIXED,   T_PRE},
+ { P(Q),           ATTR_DATA(Q),           SGML_MIXED,   T_Q},
+ { P(S),           ATTR_DATA(GEN),         SGML_MIXED,   T_S},
+ { P(SAMP),        ATTR_DATA(GEN),         SGML_MIXED,   T_SAMP},
+ { P(SCRIPT),      ATTR_DATA(SCRIPT),      SGML_SCRIPT,  T_SCRIPT},
+ { P(SELECT),      ATTR_DATA(SELECT),      SGML_ELEMENT, T_SELECT},
+ { P(SHY),         ATTR_DATA(GEN),         SGML_EMPTY,   T_SHY},
+ { P(SMALL),       ATTR_DATA(GEN),         SGML_MIXED,   T_SMALL},
+ { P(SPAN),        ATTR_DATA(GEN),         SGML_MIXED,   T_SPAN},
+ { P(SPOT),        ATTR_DATA(GEN),         SGML_EMPTY,   T_SPOT},
+ { P(STRIKE),      ATTR_DATA(GEN),         SGML_MIXED,   T_STRIKE},
+ { P(STRONG),      ATTR_DATA(GEN),         SGML_MIXED,   T_STRONG},
+ { P(STYLE),       ATTR_DATA(STYLE),       SGML_CDATA,   T_STYLE},
+ { P(SUB),         ATTR_DATA(GEN),         SGML_MIXED,   T_SUB},
+ { P(SUP),         ATTR_DATA(GEN),         SGML_MIXED,   T_SUP},
+ { P(TAB),         ATTR_DATA(TAB),         SGML_EMPTY,   T_TAB},
+ { P(TABLE),       ATTR_DATA(TABLE),       SGML_ELEMENT, T_TABLE},
+ { P(TBODY),       ATTR_DATA(TR),          SGML_ELEMENT, T_TBODY},
+ { P(TD),          ATTR_DATA(TD),          SGML_MIXED,   T_TD},
+ { P(TEXTAREA),    ATTR_DATA(TEXTAREA),    SGML_PCDATA,  T_TEXTAREA},
+ { P(TEXTFLOW),    ATTR_DATA(BODYTEXT),    SGML_MIXED,   T_TEXTFLOW},
+ { P(TFOOT),       ATTR_DATA(TR),          SGML_ELEMENT, T_TFOOT},
+ { P(TH),          ATTR_DATA(TD),          SGML_MIXED,   T_TH},
+ { P(THEAD),       ATTR_DATA(TR),          SGML_ELEMENT, T_THEAD},
+ { P(TITLE),       ATTR_DATA(GEN),         SGML_PCDATA,  T_TITLE},
+ { P(TR),          ATTR_DATA(TR),          SGML_MIXED,   T_TR},
+ { P(TT),          ATTR_DATA(GEN),         SGML_MIXED,   T_TT},
+ { P(U),           ATTR_DATA(GEN),         SGML_MIXED,   T_U},
+ { P(UL),          ATTR_DATA(UL),          SGML_MIXED,   T_UL},
+ { P(VAR),         ATTR_DATA(GEN),         SGML_MIXED,   T_VAR},
+ { P(WBR),         ATTR_DATA(GEN),         SGML_EMPTY,   T_WBR},
+ { P0(XMP),        ATTR_DATA(GEN),         SGML_LITTERAL,T_XMP},
+/* additional (alternative variants), not counted in HTML_ELEMENTS: */
+/* This one will be used as a temporary substitute within the parser when
+   it has been signalled to parse OBJECT content as MIXED. - kw */
+ { P(OBJECT),      ATTR_DATA(OBJECT),      SGML_MIXED,   T_OBJECT_PCDATA},
+};
+/* *INDENT-ON* */
+
+#endif /* src_HTMLDTD_H1 */
diff --git a/WWW/Library/Implementation/src1_HTMLDTD.txt b/WWW/Library/Implementation/src1_HTMLDTD.txt
new file mode 100644
index 00000000..6e7ac733
--- /dev/null
+++ b/WWW/Library/Implementation/src1_HTMLDTD.txt
@@ -0,0 +1,3664 @@
+59 attr_types
+	0:align
+		1 attributes:
+			0:0:ALIGN
+	1:bgcolor
+		1 attributes:
+			0:0:BGCOLOR
+	2:cellalign
+		4 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:0:VALIGN
+	3:core
+		4 attributes:
+			0:4:CLASS
+			1:1:ID
+			2:0:STYLE
+			3:0:TITLE
+	4:events
+		10 attributes:
+			0:0:ONCLICK
+			1:0:ONDBLCLICK
+			2:0:ONKEYDOWN
+			3:0:ONKEYPRESS
+			4:0:ONKEYUP
+			5:0:ONMOUSEDOWN
+			6:0:ONMOUSEMOVE
+			7:0:ONMOUSEOUT
+			8:0:ONMOUSEOVER
+			9:0:ONMOUSEUP
+	5:i18n
+		2 attributes:
+			0:0:DIR
+			1:0:LANG
+	6:A
+		19 attributes:
+			0:0:ACCESSKEY
+			1:0:CHARSET
+			2:0:CLEAR
+			3:0:COORDS
+			4:2:HREF
+			5:0:HREFLANG
+			6:0:ISMAP
+			7:0:MD
+			8:1:NAME
+			9:0:NOTAB
+			10:0:ONBLUR
+			11:0:ONFOCUS
+			12:0:REL
+			13:0:REV
+			14:0:SHAPE
+			15:0:TABINDEX
+			16:0:TARGET
+			17:0:TYPE
+			18:0:URN
+	7:ADDRESS
+		2 attributes:
+			0:0:CLEAR
+			1:0:NOWRAP
+	8:APPLET
+		10 attributes:
+			0:0:ALT
+			1:0:CLEAR
+			2:0:CODE
+			3:2:CODEBASE
+			4:0:DOWNLOAD
+			5:0:HEIGHT
+			6:0:HSPACE
+			7:1:NAME
+			8:0:VSPACE
+			9:0:WIDTH
+	9:AREA
+		12 attributes:
+			0:0:ACCESSKEY
+			1:0:ALT
+			2:0:CLEAR
+			3:0:COORDS
+			4:2:HREF
+			5:0:NOHREF
+			6:0:NOTAB
+			7:0:ONBLUR
+			8:0:ONFOCUS
+			9:0:SHAPE
+			10:0:TABINDEX
+			11:0:TARGET
+	10:BASE
+		2 attributes:
+			0:2:HREF
+			1:0:TARGET
+	11:BGSOUND
+		3 attributes:
+			0:0:CLEAR
+			1:0:LOOP
+			2:2:SRC
+	12:BODY
+		8 attributes:
+			0:0:ALINK
+			1:2:BACKGROUND
+			2:0:CLEAR
+			3:0:LINK
+			4:0:ONLOAD
+			5:0:ONUNLOAD
+			6:0:TEXT
+			7:0:VLINK
+	13:BODYTEXT
+		8 attributes:
+			0:0:CLEAR
+			1:0:DATA
+			2:0:NAME
+			3:0:OBJECT
+			4:0:REF
+			5:0:TYPE
+			6:0:VALUE
+			7:0:VALUETYPE
+	14:BQ
+		3 attributes:
+			0:2:CITE
+			1:0:CLEAR
+			2:0:NOWRAP
+	15:BUTTON
+		10 attributes:
+			0:0:ACCESSKEY
+			1:0:CLEAR
+			2:0:DISABLED
+			3:0:NAME
+			4:0:READONLY
+			5:0:ONBLUR
+			6:0:ONFOCUS
+			7:0:TABINDEX
+			8:0:TYPE
+			9:0:VALUE
+	16:CAPTION
+		2 attributes:
+			0:0:ACCESSKEY
+			1:0:CLEAR
+	17:COL
+		3 attributes:
+			0:0:CLEAR
+			1:0:SPAN
+			2:0:WIDTH
+	18:DEL
+		2 attributes:
+			0:0:CITE
+			1:0:DATETIME
+	19:DIV
+		1 attributes:
+			0:0:CLEAR
+	20:DL
+		2 attributes:
+			0:0:CLEAR
+			1:0:COMPACT
+	21:EMBED
+		14 attributes:
+			0:0:ALT
+			1:0:BORDER
+			2:0:CLEAR
+			3:0:HEIGHT
+			4:0:IMAGEMAP
+			5:0:ISMAP
+			6:0:MD
+			7:1:NAME
+			8:0:NOFLOW
+			9:0:PARAMS
+			10:2:SRC
+			11:0:UNITS
+			12:0:USEMAP
+			13:0:WIDTH
+	22:FIG
+		10 attributes:
+			0:0:BORDER
+			1:0:CLEAR
+			2:0:HEIGHT
+			3:0:IMAGEMAP
+			4:0:ISOBJECT
+			5:0:MD
+			6:0:NOFLOW
+			7:2:SRC
+			8:0:UNITS
+			9:0:WIDTH
+	23:FONT
+		5 attributes:
+			0:0:CLEAR
+			1:0:COLOR
+			2:0:END
+			3:0:FACE
+			4:0:SIZE
+	24:FORM
+		11 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:2:ACTION
+			3:0:CLEAR
+			4:0:ENCTYPE
+			5:0:METHOD
+			6:0:ONRESET
+			7:0:ONSUBMIT
+			8:0:SCRIPT
+			9:0:SUBJECT
+			10:0:TARGET
+	25:FRAME
+		8 attributes:
+			0:0:FRAMEBORDER
+			1:2:LONGDESC
+			2:0:MARGINHEIGHT
+			3:0:MARGINWIDTH
+			4:0:NAME
+			5:0:NORESIZE
+			6:0:SCROLLING
+			7:2:SRC
+	26:FRAMESET
+		4 attributes:
+			0:0:COLS
+			1:0:ONLOAD
+			2:0:ONUNLOAD
+			3:0:ROWS
+	27:GEN
+		1 attributes:
+			0:0:CLEAR
+	28:H
+		7 attributes:
+			0:0:CLEAR
+			1:0:DINGBAT
+			2:0:MD
+			3:0:NOWRAP
+			4:0:SEQNUM
+			5:0:SKIP
+			6:2:SRC
+	29:HR
+		6 attributes:
+			0:0:CLEAR
+			1:0:MD
+			2:0:NOSHADE
+			3:0:SIZE
+			4:2:SRC
+			5:0:WIDTH
+	30:IFRAME
+		9 attributes:
+			0:0:FRAMEBORDER
+			1:0:HEIGHT
+			2:2:LONGDESC
+			3:0:MARGINHEIGHT
+			4:0:MARGINWIDTH
+			5:0:NAME
+			6:0:SCROLLING
+			7:2:SRC
+			8:0:WIDTH
+	31:IMG
+		15 attributes:
+			0:0:ALT
+			1:0:BORDER
+			2:0:CLEAR
+			3:0:HEIGHT
+			4:0:HSPACE
+			5:0:ISMAP
+			6:0:ISOBJECT
+			7:2:LONGDESC
+			8:0:MD
+			9:0:NAME
+			10:2:SRC
+			11:0:UNITS
+			12:2:USEMAP
+			13:0:VSPACE
+			14:0:WIDTH
+	32:INPUT
+		28 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:0:ACCESSKEY
+			3:0:ALT
+			4:0:CHECKED
+			5:0:CLEAR
+			6:0:DISABLED
+			7:0:ERROR
+			8:0:HEIGHT
+			9:0:ISMAP
+			10:0:MAX
+			11:0:MAXLENGTH
+			12:0:MD
+			13:0:MIN
+			14:0:NAME
+			15:0:NOTAB
+			16:0:ONBLUR
+			17:0:ONCHANGE
+			18:0:ONFOCUS
+			19:0:ONSELECT
+			20:0:READONLY
+			21:0:SIZE
+			22:2:SRC
+			23:0:TABINDEX
+			24:0:TYPE
+			25:0:USEMAP
+			26:0:VALUE
+			27:0:WIDTH
+	33:ISINDEX
+		3 attributes:
+			0:2:ACTION
+			1:2:HREF
+			2:0:PROMPT
+	34:KEYGEN
+		2 attributes:
+			0:0:CHALLENGE
+			1:0:NAME
+	35:LABEL
+		5 attributes:
+			0:0:ACCESSKEY
+			1:0:CLEAR
+			2:0:FOR
+			3:0:ONBLUR
+			4:0:ONFOCUS
+	36:LI
+		7 attributes:
+			0:0:CLEAR
+			1:0:DINGBAT
+			2:0:MD
+			3:0:SKIP
+			4:2:SRC
+			5:0:TYPE
+			6:0:VALUE
+	37:LINK
+		8 attributes:
+			0:0:CHARSET
+			1:2:HREF
+			2:0:HREFLANG
+			3:0:MEDIA
+			4:0:REL
+			5:0:REV
+			6:0:TARGET
+			7:0:TYPE
+	38:MAP
+		2 attributes:
+			0:0:CLEAR
+			1:1:NAME
+	39:MATH
+		2 attributes:
+			0:0:BOX
+			1:0:CLEAR
+	40:META
+		5 attributes:
+			0:0:CHARSET
+			1:0:CONTENT
+			2:0:HTTP-EQUIV
+			3:0:NAME
+			4:0:SCHEME
+	41:NEXTID
+		1 attributes:
+			0:0:N
+	42:NOTE
+		4 attributes:
+			0:0:CLEAR
+			1:0:MD
+			2:8:ROLE
+			3:2:SRC
+	43:OBJECT
+		19 attributes:
+			0:0:ARCHIVE
+			1:0:BORDER
+			2:2:CLASSID
+			3:2:CODEBASE
+			4:0:CODETYPE
+			5:2:DATA
+			6:0:DECLARE
+			7:0:HEIGHT
+			8:0:HSPACE
+			9:0:ISMAP
+			10:0:NAME
+			11:0:NOTAB
+			12:0:SHAPES
+			13:0:STANDBY
+			14:0:TABINDEX
+			15:0:TYPE
+			16:2:USEMAP
+			17:0:VSPACE
+			18:0:WIDTH
+	44:OL
+		6 attributes:
+			0:0:CLEAR
+			1:0:COMPACT
+			2:0:CONTINUE
+			3:0:SEQNUM
+			4:0:START
+			5:0:TYPE
+	45:OPTION
+		7 attributes:
+			0:0:CLEAR
+			1:0:DISABLED
+			2:0:ERROR
+			3:0:LABEL
+			4:0:SELECTED
+			5:0:SHAPE
+			6:0:VALUE
+	46:OVERLAY
+		8 attributes:
+			0:0:HEIGHT
+			1:0:IMAGEMAP
+			2:0:MD
+			3:2:SRC
+			4:0:UNITS
+			5:0:WIDTH
+			6:0:X
+			7:0:Y
+	47:P
+		2 attributes:
+			0:0:CLEAR
+			1:0:NOWRAP
+	48:PARAM
+		12 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:0:ACCEPT-ENCODING
+			3:0:CLEAR
+			4:0:DATA
+			5:0:NAME
+			6:0:OBJECT
+			7:0:REF
+			8:0:TYPE
+			9:0:VALUE
+			10:0:VALUEREF
+			11:0:VALUETYPE
+	49:Q
+		2 attributes:
+			0:2:CITE
+			1:0:CLEAR
+	50:SCRIPT
+		10 attributes:
+			0:0:CHARSET
+			1:0:CLEAR
+			2:0:DEFER
+			3:0:EVENT
+			4:0:FOR
+			5:0:LANGUAGE
+			6:0:NAME
+			7:0:SCRIPTENGINE
+			8:2:SRC
+			9:0:TYPE
+	51:SELECT
+		15 attributes:
+			0:0:CLEAR
+			1:0:DISABLED
+			2:0:ERROR
+			3:0:HEIGHT
+			4:0:MD
+			5:0:MULTIPLE
+			6:0:NAME
+			7:0:NOTAB
+			8:0:ONBLUR
+			9:0:ONCHANGE
+			10:0:ONFOCUS
+			11:0:SIZE
+			12:0:TABINDEX
+			13:0:UNITS
+			14:0:WIDTH
+	52:STYLE
+		3 attributes:
+			0:0:MEDIA
+			1:0:NOTATION
+			2:0:TYPE
+	53:TAB
+		4 attributes:
+			0:0:CLEAR
+			1:0:DP
+			2:0:INDENT
+			3:0:TO
+	54:TABLE
+		15 attributes:
+			0:2:BACKGROUND
+			1:0:BORDER
+			2:0:CELLPADDING
+			3:0:CELLSPACING
+			4:0:CLEAR
+			5:0:COLS
+			6:0:COLSPEC
+			7:0:DP
+			8:0:FRAME
+			9:0:NOFLOW
+			10:0:NOWRAP
+			11:0:RULES
+			12:0:SUMMARY
+			13:0:UNITS
+			14:0:WIDTH
+	55:TD
+		13 attributes:
+			0:0:ABBR
+			1:0:AXES
+			2:0:AXIS
+			3:2:BACKGROUND
+			4:0:CLEAR
+			5:0:COLSPAN
+			6:0:DP
+			7:0:HEADERS
+			8:0:HEIGHT
+			9:0:NOWRAP
+			10:0:ROWSPAN
+			11:0:SCOPE
+			12:0:WIDTH
+	56:TEXTAREA
+		15 attributes:
+			0:0:ACCEPT-CHARSET
+			1:0:ACCESSKEY
+			2:0:CLEAR
+			3:0:COLS
+			4:0:DISABLED
+			5:0:ERROR
+			6:0:NAME
+			7:0:NOTAB
+			8:0:ONBLUR
+			9:0:ONCHANGE
+			10:0:ONFOCUS
+			11:0:ONSELECT
+			12:0:READONLY
+			13:0:ROWS
+			14:0:TABINDEX
+	57:TR
+		3 attributes:
+			0:0:CLEAR
+			1:0:DP
+			2:0:NOWRAP
+	58:UL
+		8 attributes:
+			0:0:CLEAR
+			1:0:COMPACT
+			2:0:DINGBAT
+			3:0:MD
+			4:0:PLAIN
+			5:2:SRC
+			6:0:TYPE
+			7:0:WRAP
+118 tags
+	0:A
+		justify
+		25 attributes:
+			0:0:ACCESSKEY
+			1:0:CHARSET
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:COORDS
+			5:0:DIR
+			6:2:HREF
+			7:0:HREFLANG
+			8:1:ID
+			9:0:ISMAP
+			10:0:LANG
+			11:0:MD
+			12:1:NAME
+			13:0:NOTAB
+			14:0:ONBLUR
+			15:0:ONFOCUS
+			16:0:REL
+			17:0:REV
+			18:0:SHAPE
+			19:0:STYLE
+			20:0:TABINDEX
+			21:0:TARGET
+			22:0:TITLE
+			23:0:TYPE
+			24:0:URN
+		4 attr_types
+			core
+			events
+			i18n
+			A
+		contents: SGML_MIXED
+		tagclass: Alike
+		contains: FONTlike EMlike MATHlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike formula Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike SELECTlike APPLETlike HRlike same
+		flags: mafse nreie
+	1:ABBR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	2:ACRONYM
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	3:ADDRESS
+		justify
+		8 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:NOWRAP
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			ADDRESS
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike Plike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike formula Plike DIVlike same
+		flags:
+	4:APPLET
+		justify
+		17 attributes:
+			0:0:ALIGN
+			1:0:ALT
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:CODE
+			5:2:CODEBASE
+			6:0:DIR
+			7:0:DOWNLOAD
+			8:0:HEIGHT
+			9:0:HSPACE
+			10:1:ID
+			11:0:LANG
+			12:1:NAME
+			13:0:STYLE
+			14:0:TITLE
+			15:0:VSPACE
+			16:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			APPLET
+		contents: SGML_MIXED
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike BRlike APPLETlike same
+		flags:
+	5:AREA
+		justify
+		18 attributes:
+			0:0:ACCESSKEY
+			1:0:ALT
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:COORDS
+			5:0:DIR
+			6:2:HREF
+			7:1:ID
+			8:0:LANG
+			9:0:NOHREF
+			10:0:NOTAB
+			11:0:ONBLUR
+			12:0:ONFOCUS
+			13:0:SHAPE
+			14:0:STYLE
+			15:0:TABINDEX
+			16:0:TARGET
+			17:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			AREA
+		contents: SGML_EMPTY
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: MAPlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike ULlike
+		flags: endO
+	6:AU
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	7:AUTHOR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	8:B
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	9:BANNER
+		nojustify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: outer BODYlike
+		icontained: outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags:
+	10:BASE
+		justify
+		6 attributes:
+			0:4:CLASS
+			1:2:HREF
+			2:1:ID
+			3:0:STYLE
+			4:0:TARGET
+			5:0:TITLE
+		2 attr_types
+			core
+			BASE
+		contents: SGML_EMPTY
+		tagclass: HEADstuff
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: outer HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike same
+		flags: endO
+	11:BASEFONT
+		justify
+		11 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COLOR
+			3:0:DIR
+			4:0:END
+			5:0:FACE
+			6:1:ID
+			7:0:LANG
+			8:0:SIZE
+			9:0:STYLE
+			10:0:TITLE
+		3 attr_types
+			core
+			i18n
+			FONT
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: BRlike APPLETlike HRlike MAPlike same
+		flags: endO
+	12:BDO
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike Plike DIVlike
+		flags:
+	13:BGSOUND
+		justify
+		9 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:LOOP
+			6:2:SRC
+			7:0:STYLE
+			8:0:TITLE
+		3 attr_types
+			core
+			i18n
+			BGSOUND
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike Plike DIVlike BRlike APPLETlike HRlike same
+		flags: endO
+	14:BIG
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	15:BLINK
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	16:BLOCKQUOTE
+		justify
+		9 attributes:
+			0:2:CITE
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NOWRAP
+			7:0:STYLE
+			8:0:TITLE
+		3 attr_types
+			core
+			i18n
+			BQ
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags:
+	17:BODY
+		justify
+		15 attributes:
+			0:0:ALINK
+			1:2:BACKGROUND
+			2:0:BGCOLOR
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:1:ID
+			7:0:LANG
+			8:0:LINK
+			9:0:ONLOAD
+			10:0:ONUNLOAD
+			11:0:STYLE
+			12:0:TEXT
+			13:0:TITLE
+			14:0:VLINK
+		4 attr_types
+			bgcolor
+			core
+			i18n
+			BODY
+		contents: SGML_MIXED
+		tagclass: BODYlike
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike
+		contained: outer BODYlike
+		icontained: outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer HEADstuff same
+		flags: endO startO
+	18:BODYTEXT
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DATA
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NAME
+			7:0:OBJECT
+			8:0:REF
+			9:0:STYLE
+			10:0:TITLE
+			11:0:TYPE
+			12:0:VALUE
+			13:0:VALUETYPE
+		3 attr_types
+			core
+			i18n
+			BODYTEXT
+		contents: SGML_MIXED
+		tagclass: BODYlike
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		contained: DIVlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike BRlike APPLETlike HRlike MAPlike same
+		flags: endO startO
+	19:BQ
+		justify
+		9 attributes:
+			0:2:CITE
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NOWRAP
+			7:0:STYLE
+			8:0:TITLE
+		3 attr_types
+			core
+			i18n
+			BQ
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags:
+	20:BR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula BRlike same
+		flags: endO
+	21:BUTTON
+		justify
+		16 attributes:
+			0:0:ACCESSKEY
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:0:DISABLED
+			5:1:ID
+			6:0:LANG
+			7:0:NAME
+			8:0:ONBLUR
+			9:0:ONFOCUS
+			10:0:READONLY
+			11:0:STYLE
+			12:0:TABINDEX
+			13:0:TITLE
+			14:0:TYPE
+			15:0:VALUE
+		4 attr_types
+			core
+			events
+			i18n
+			BUTTON
+		contents: SGML_MIXED
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Plike DIVlike ULlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike formula TRlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike BRlike same
+		flags:
+	22:CAPTION
+		justify
+		9 attributes:
+			0:0:ACCESSKEY
+			1:0:ALIGN
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:STYLE
+			8:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			CAPTION
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: DIVlike ULlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike same
+		flags:
+	23:CENTER
+		justify
+		8 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		4 attr_types
+			align
+			core
+			i18n
+			DIV
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags:
+	24:CITE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: EMlike
+		flags: nreie
+	25:CODE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: EMlike
+		flags:
+	26:COL
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:1:ID
+			7:0:LANG
+			8:0:SPAN
+			9:0:STYLE
+			10:0:TITLE
+			11:0:VALIGN
+			12:0:WIDTH
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			COL
+		contents: SGML_EMPTY
+		tagclass: HRlike
+		contains:
+		icontains:
+		contained: TRlike ULlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike MAPlike same
+		flags: endO
+	27:COLGROUP
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:1:ID
+			7:0:LANG
+			8:0:SPAN
+			9:0:STYLE
+			10:0:TITLE
+			11:0:VALIGN
+			12:0:WIDTH
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			COL
+		contents: SGML_ELEMENT
+		tagclass: TRlike
+		contains: HRlike
+		icontains: HRlike
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike MAPlike same
+		flags: endO
+	28:COMMENT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_PCDATA
+		tagclass: MATHlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike
+		flags:
+	29:CREDIT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: DIVlike ULlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike Plike DIVlike same
+		flags:
+	30:DD
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags: endO
+	31:DEL
+		justify
+		8 attributes:
+			0:0:CITE
+			1:4:CLASS
+			2:0:DATETIME
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			DEL
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	32:DFN
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	33:DIR
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:PLAIN
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+			12:0:TYPE
+			13:0:WRAP
+		3 attr_types
+			core
+			i18n
+			UL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: LIlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike BRlike APPLETlike HRlike MAPlike
+		contained: FORMlike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike HRlike same
+		flags:
+	34:DIV
+		justify
+		8 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		4 attr_types
+			align
+			core
+			i18n
+			DIV
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: TRlike FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags: mafse
+	35:DL
+		justify
+		8 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			DL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: FORMlike LIlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike
+		flags:
+	36:DLC
+		justify
+		8 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			DL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: FORMlike LIlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike
+		flags:
+	37:DT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike BRlike APPLETlike MAPlike
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags: endO
+	38:EM
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags: nreie
+	39:EMBED
+		justify
+		21 attributes:
+			0:0:ALIGN
+			1:0:ALT
+			2:0:BORDER
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:HEIGHT
+			7:1:ID
+			8:0:IMAGEMAP
+			9:0:ISMAP
+			10:0:LANG
+			11:0:MD
+			12:1:NAME
+			13:0:NOFLOW
+			14:0:PARAMS
+			15:2:SRC
+			16:0:STYLE
+			17:0:TITLE
+			18:0:UNITS
+			19:0:USEMAP
+			20:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			EMBED
+		contents: SGML_EMPTY
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Plike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer
+		flags: endO
+	40:FIELDSET
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike APPLETlike HRlike same
+		icontained: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike MAPlike same
+		flags:
+	41:FIG
+		justify
+		17 attributes:
+			0:0:ALIGN
+			1:0:BORDER
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:DIR
+			5:0:HEIGHT
+			6:1:ID
+			7:0:IMAGEMAP
+			8:0:ISOBJECT
+			9:0:LANG
+			10:0:MD
+			11:0:NOFLOW
+			12:2:SRC
+			13:0:STYLE
+			14:0:TITLE
+			15:0:UNITS
+			16:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			FIG
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike SELECTlike Plike DIVlike MAPlike same
+		flags:
+	42:FN
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike SELECTlike Plike BRlike same
+		flags:
+	43:FONT
+		justify
+		11 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COLOR
+			3:0:DIR
+			4:0:END
+			5:0:FACE
+			6:1:ID
+			7:0:LANG
+			8:0:SIZE
+			9:0:STYLE
+			10:0:TITLE
+		3 attr_types
+			core
+			i18n
+			FONT
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	44:FORM
+		justify
+		17 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:2:ACTION
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:ENCTYPE
+			7:1:ID
+			8:0:LANG
+			9:0:METHOD
+			10:0:ONRESET
+			11:0:ONSUBMIT
+			12:0:SCRIPT
+			13:0:STYLE
+			14:0:SUBJECT
+			15:0:TARGET
+			16:0:TITLE
+		3 attr_types
+			core
+			i18n
+			FORM
+		contents: SGML_MIXED
+		tagclass: FORMlike
+		contains: FONTlike EMlike MATHlike Alike TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: FONTlike EMlike MATHlike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Plike DIVlike LIlike ULlike APPLETlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike LIlike ULlike MAPlike same
+		flags:
+	45:FRAME
+		justify
+		12 attributes:
+			0:4:CLASS
+			1:0:FRAMEBORDER
+			2:1:ID
+			3:2:LONGDESC
+			4:0:MARGINHEIGHT
+			5:0:MARGINWIDTH
+			6:0:NAME
+			7:0:NORESIZE
+			8:0:SCROLLING
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+		2 attr_types
+			core
+			FRAME
+		contents: SGML_EMPTY
+		tagclass: outer
+		contains:
+		icontains:
+		contained: outer
+		icontained: outer
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer same
+		flags: endO
+	46:FRAMESET
+		justify
+		4 attributes:
+			0:0:COLS
+			1:0:ONLOAD
+			2:0:ONUNLOAD
+			3:0:ROWS
+		1 attr_types
+			FRAMESET
+		contents: SGML_ELEMENT
+		tagclass: outer
+		contains: outer same
+		icontains: outer same
+		contained: outer same
+		icontained: BRlike APPLETlike outer same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer same
+		flags:
+	47:H1
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	48:H2
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	49:H3
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	50:H4
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	51:H5
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	52:H6
+		nojustify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:NOWRAP
+			9:0:SEQNUM
+			10:0:SKIP
+			11:2:SRC
+			12:0:STYLE
+			13:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			H
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags:
+	53:HEAD
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_ELEMENT
+		tagclass: HEADstuff
+		contains: BRlike APPLETlike HRlike MAPlike HEADstuff
+		icontains: BRlike APPLETlike HRlike HEADstuff
+		contained: outer
+		icontained: outer
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer same
+		flags: endO startO mafse
+	54:HR
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:MD
+			7:0:NOSHADE
+			8:0:SIZE
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+			12:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			HR
+		contents: SGML_EMPTY
+		tagclass: HRlike
+		contains:
+		icontains:
+		contained: FORMlike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike formula TRlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike same
+		flags: endO
+	55:HTML
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: outer
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff
+		contained:
+		icontained:
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer
+		flags: endO startO
+	56:HY
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula BRlike same
+		flags: endO
+	57:I
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	58:IFRAME
+		justify
+		14 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:FRAMEBORDER
+			3:0:HEIGHT
+			4:1:ID
+			5:2:LONGDESC
+			6:0:MARGINHEIGHT
+			7:0:MARGINWIDTH
+			8:0:NAME
+			9:0:SCROLLING
+			10:2:SRC
+			11:0:STYLE
+			12:0:TITLE
+			13:0:WIDTH
+		3 attr_types
+			align
+			core
+			IFRAME
+		contents: SGML_MIXED
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike BRlike APPLETlike outer HEADstuff same
+		flags:
+	59:IMG
+		justify
+		22 attributes:
+			0:0:ALIGN
+			1:0:ALT
+			2:0:BORDER
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:HEIGHT
+			7:0:HSPACE
+			8:1:ID
+			9:0:ISMAP
+			10:0:ISOBJECT
+			11:0:LANG
+			12:2:LONGDESC
+			13:0:MD
+			14:0:NAME
+			15:2:SRC
+			16:0:STYLE
+			17:0:TITLE
+			18:0:UNITS
+			19:2:USEMAP
+			20:0:VSPACE
+			21:0:WIDTH
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			IMG
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: same
+		flags: endO
+	60:INPUT
+		justify
+		35 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:0:ACCESSKEY
+			3:0:ALIGN
+			4:0:ALT
+			5:0:CHECKED
+			6:4:CLASS
+			7:0:CLEAR
+			8:0:DIR
+			9:0:DISABLED
+			10:0:ERROR
+			11:0:HEIGHT
+			12:1:ID
+			13:0:ISMAP
+			14:0:LANG
+			15:0:MAX
+			16:0:MAXLENGTH
+			17:0:MD
+			18:0:MIN
+			19:0:NAME
+			20:0:NOTAB
+			21:0:ONBLUR
+			22:0:ONCHANGE
+			23:0:ONFOCUS
+			24:0:ONSELECT
+			25:0:READONLY
+			26:0:SIZE
+			27:2:SRC
+			28:0:STYLE
+			29:0:TABINDEX
+			30:0:TITLE
+			31:0:TYPE
+			32:0:USEMAP
+			33:0:VALUE
+			34:0:WIDTH
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			INPUT
+		contents: SGML_EMPTY
+		tagclass: SELECTlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike
+		icontained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike SELECTlike BRlike MAPlike same
+		flags: endO
+	61:INS
+		justify
+		8 attributes:
+			0:0:CITE
+			1:4:CLASS
+			2:0:DATETIME
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			DEL
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	62:ISINDEX
+		justify
+		9 attributes:
+			0:2:ACTION
+			1:4:CLASS
+			2:0:DIR
+			3:2:HREF
+			4:1:ID
+			5:0:LANG
+			6:0:PROMPT
+			7:0:STYLE
+			8:0:TITLE
+		3 attr_types
+			core
+			i18n
+			ISINDEX
+		contents: SGML_EMPTY
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike same
+		flags: endO
+	63:KBD
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike
+		flags:
+	64:KEYGEN
+		justify
+		8 attributes:
+			0:0:CHALLENGE
+			1:4:CLASS
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:NAME
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			KEYGEN
+		contents: SGML_EMPTY
+		tagclass: SELECTlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: formula TRlike SELECTlike same
+		flags: endO
+	65:LABEL
+		justify
+		11 attributes:
+			0:0:ACCESSKEY
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:0:FOR
+			5:1:ID
+			6:0:LANG
+			7:0:ONBLUR
+			8:0:ONFOCUS
+			9:0:STYLE
+			10:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			LABEL
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike
+		flags:
+	66:LEGEND
+		justify
+		9 attributes:
+			0:0:ACCESSKEY
+			1:0:ALIGN
+			2:4:CLASS
+			3:0:CLEAR
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:STYLE
+			8:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			CAPTION
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: DIVlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike
+		flags:
+	67:LH
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike ULlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags: endO
+	68:LI
+		justify
+		13 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DINGBAT
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:MD
+			7:0:SKIP
+			8:2:SRC
+			9:0:STYLE
+			10:0:TITLE
+			11:0:TYPE
+			12:0:VALUE
+		4 attr_types
+			core
+			events
+			i18n
+			LI
+		contents: SGML_MIXED
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags: endO
+	69:LINK
+		justify
+		14 attributes:
+			0:0:CHARSET
+			1:4:CLASS
+			2:0:DIR
+			3:2:HREF
+			4:0:HREFLANG
+			5:1:ID
+			6:0:LANG
+			7:0:MEDIA
+			8:0:REL
+			9:0:REV
+			10:0:STYLE
+			11:0:TARGET
+			12:0:TITLE
+			13:0:TYPE
+		4 attr_types
+			core
+			events
+			i18n
+			LINK
+		contents: SGML_EMPTY
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: outer HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		flags: endO
+	70:LISTING
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_LITTERAL
+		tagclass: ULlike
+		contains:
+		icontains:
+		contained: DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike LIlike ULlike same
+		flags:
+	71:MAP
+		justify
+		8 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:1:NAME
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			MAP
+		contents: SGML_ELEMENT
+		tagclass: MAPlike
+		contains: MAPlike
+		icontains: MAPlike
+		contained: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike LIlike
+		flags:
+	72:MARQUEE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: HRlike
+		contains: FONTlike EMlike MATHlike Alike
+		icontains: FONTlike EMlike MATHlike Alike formula BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: MATHlike Alike formula BRlike APPLETlike same
+		flags:
+	73:MATH
+		justify
+		8 attributes:
+			0:0:BOX
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			MATH
+		contents: SGML_PCDATA
+		tagclass: MATHlike
+		contains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike MATHlike Alike formula
+		flags:
+	74:MENU
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:PLAIN
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+			12:0:TYPE
+			13:0:WRAP
+		3 attr_types
+			core
+			i18n
+			UL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: LIlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike BRlike APPLETlike HRlike MAPlike
+		contained: FORMlike DIVlike LIlike BRlike APPLETlike HRlike outer
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike MAPlike same
+		flags:
+	75:META
+		justify
+		5 attributes:
+			0:0:CHARSET
+			1:0:CONTENT
+			2:0:HTTP-EQUIV
+			3:0:NAME
+			4:0:SCHEME
+		1 attr_types
+			META
+		contents: SGML_EMPTY
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: outer HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		flags: endO
+	76:NEXTID
+		justify
+		1 attributes:
+			0:0:N
+		1 attr_types
+			NEXTID
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer
+		canclose: FONTlike
+		flags: endO
+	77:NOFRAMES
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: BODYlike
+		contains: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike BODYlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: BRlike APPLETlike HRlike outer
+		icontained: BRlike APPLETlike HRlike outer
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike HRlike MAPlike
+		flags:
+	78:NOTE
+		justify
+		10 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:MD
+			6:8:ROLE
+			7:2:SRC
+			8:0:STYLE
+			9:0:TITLE
+		3 attr_types
+			core
+			i18n
+			NOTE
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike ULlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: formula TRlike FORMlike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags:
+	79:OBJECT
+		justify
+		26 attributes:
+			0:0:ALIGN
+			1:0:ARCHIVE
+			2:0:BORDER
+			3:4:CLASS
+			4:2:CLASSID
+			5:2:CODEBASE
+			6:0:CODETYPE
+			7:2:DATA
+			8:0:DECLARE
+			9:0:DIR
+			10:0:HEIGHT
+			11:0:HSPACE
+			12:1:ID
+			13:0:ISMAP
+			14:0:LANG
+			15:0:NAME
+			16:0:NOTAB
+			17:0:SHAPES
+			18:0:STANDBY
+			19:0:STYLE
+			20:0:TABINDEX
+			21:0:TITLE
+			22:0:TYPE
+			23:2:USEMAP
+			24:0:VSPACE
+			25:0:WIDTH
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			OBJECT
+		contents: SGML_LITTERAL
+		tagclass: APPLETlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike APPLETlike HRlike outer BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike LIlike ULlike BRlike APPLETlike same
+		flags: frecyc
+	80:OL
+		justify
+		12 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:CONTINUE
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:SEQNUM
+			8:0:START
+			9:0:STYLE
+			10:0:TITLE
+			11:0:TYPE
+		3 attr_types
+			core
+			i18n
+			OL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: LIlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike MAPlike same
+		flags:
+	81:OPTION
+		justify
+		13 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:0:DISABLED
+			4:0:ERROR
+			5:1:ID
+			6:0:LABEL
+			7:0:LANG
+			8:0:SELECTED
+			9:0:SHAPE
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALUE
+		4 attr_types
+			core
+			events
+			i18n
+			OPTION
+		contents: SGML_PCDATA
+		tagclass: MAPlike
+		contains:
+		icontains:
+		contained: SELECTlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike same
+		flags: endO
+	82:OVERLAY
+		justify
+		12 attributes:
+			0:4:CLASS
+			1:0:HEIGHT
+			2:1:ID
+			3:0:IMAGEMAP
+			4:0:MD
+			5:2:SRC
+			6:0:STYLE
+			7:0:TITLE
+			8:0:UNITS
+			9:0:WIDTH
+			10:0:X
+			11:0:Y
+		2 attr_types
+			core
+			OVERLAY
+		contents: SGML_PCDATA
+		tagclass: HRlike
+		contains:
+		icontains:
+		contained: DIVlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike DIVlike LIlike ULlike BRlike APPLETlike same
+		flags: endO
+	83:P
+		justify
+		9 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NOWRAP
+			7:0:STYLE
+			8:0:TITLE
+		4 attr_types
+			align
+			core
+			i18n
+			P
+		contents: SGML_MIXED
+		tagclass: Plike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike formula Plike same
+		flags: endO
+	84:PARAM
+		justify
+		18 attributes:
+			0:0:ACCEPT
+			1:0:ACCEPT-CHARSET
+			2:0:ACCEPT-ENCODING
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DATA
+			6:0:DIR
+			7:1:ID
+			8:0:LANG
+			9:0:NAME
+			10:0:OBJECT
+			11:0:REF
+			12:0:STYLE
+			13:0:TITLE
+			14:0:TYPE
+			15:0:VALUE
+			16:0:VALUEREF
+			17:0:VALUETYPE
+		3 attr_types
+			core
+			i18n
+			PARAM
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: Plike LIlike BRlike APPLETlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike
+		canclose: TRlike SELECTlike Plike LIlike BRlike same
+		flags: endO
+	85:PLAINTEXT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_LITTERAL
+		tagclass: outer
+		contains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike HEADstuff same
+		contained: outer same
+		icontained: outer same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		flags: endO
+	86:PRE
+		nojustify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: DIVlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike HRlike MAPlike
+		icontains: EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike HRlike MAPlike
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: EMlike MATHlike Alike formula Plike DIVlike LIlike same
+		flags:
+	87:Q
+		justify
+		8 attributes:
+			0:2:CITE
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:STYLE
+			7:0:TITLE
+		3 attr_types
+			core
+			i18n
+			Q
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags:
+	88:S
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags:
+	89:SAMP
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: EMlike
+		flags: nreie
+	90:SCRIPT
+		justify
+		16 attributes:
+			0:0:CHARSET
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DEFER
+			4:0:DIR
+			5:0:EVENT
+			6:0:FOR
+			7:1:ID
+			8:0:LANG
+			9:0:LANGUAGE
+			10:0:NAME
+			11:0:SCRIPTENGINE
+			12:2:SRC
+			13:0:STYLE
+			14:0:TITLE
+			15:0:TYPE
+		3 attr_types
+			core
+			i18n
+			SCRIPT
+		contents: SGML_SCRIPT
+		tagclass: APPLETlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike LIlike ULlike BRlike APPLETlike HRlike same
+		flags:
+	91:SELECT
+		justify
+		22 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:0:DISABLED
+			5:0:ERROR
+			6:0:HEIGHT
+			7:1:ID
+			8:0:LANG
+			9:0:MD
+			10:0:MULTIPLE
+			11:0:NAME
+			12:0:NOTAB
+			13:0:ONBLUR
+			14:0:ONCHANGE
+			15:0:ONFOCUS
+			16:0:SIZE
+			17:0:STYLE
+			18:0:TABINDEX
+			19:0:TITLE
+			20:0:UNITS
+			21:0:WIDTH
+		4 attr_types
+			align
+			core
+			i18n
+			SELECT
+		contents: SGML_ELEMENT
+		tagclass: SELECTlike
+		contains: MAPlike
+		icontains: MAPlike
+		contained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike LIlike ULlike same
+		flags: strict
+	92:SHY
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula BRlike same
+		flags: endO
+	93:SMALL
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	94:SPAN
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike same
+		flags:
+	95:SPOT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: Alike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer BODYlike
+		canclose: Alike
+		flags: endO
+	96:STRIKE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags:
+	97:STRONG
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike
+		flags: nreie
+	98:STYLE
+		justify
+		9 attributes:
+			0:4:CLASS
+			1:0:DIR
+			2:1:ID
+			3:0:LANG
+			4:0:MEDIA
+			5:0:NOTATION
+			6:0:STYLE
+			7:0:TITLE
+			8:0:TYPE
+		3 attr_types
+			core
+			i18n
+			STYLE
+		contents: SGML_CDATA
+		tagclass: HEADstuff
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike APPLETlike HRlike outer BODYlike HEADstuff
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula same
+		flags:
+	99:SUB
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: MATHlike
+		contains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike MATHlike
+		flags:
+	100:SUP
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: MATHlike
+		contains: FONTlike EMlike MATHlike Alike formula SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike formula FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike EMlike MATHlike
+		flags:
+	101:TAB
+		justify
+		11 attributes:
+			0:0:ALIGN
+			1:4:CLASS
+			2:0:CLEAR
+			3:0:DIR
+			4:0:DP
+			5:1:ID
+			6:0:INDENT
+			7:0:LANG
+			8:0:STYLE
+			9:0:TITLE
+			10:0:TO
+		4 attr_types
+			align
+			core
+			i18n
+			TAB
+		contents: SGML_EMPTY
+		tagclass: BRlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer HEADstuff
+		canclose: FONTlike
+		flags: endO
+	102:TABLE
+		justify
+		22 attributes:
+			0:0:ALIGN
+			1:2:BACKGROUND
+			2:0:BORDER
+			3:0:CELLPADDING
+			4:0:CELLSPACING
+			5:4:CLASS
+			6:0:CLEAR
+			7:0:COLS
+			8:0:COLSPEC
+			9:0:DIR
+			10:0:DP
+			11:0:FRAME
+			12:1:ID
+			13:0:LANG
+			14:0:NOFLOW
+			15:0:NOWRAP
+			16:0:RULES
+			17:0:STYLE
+			18:0:SUMMARY
+			19:0:TITLE
+			20:0:UNITS
+			21:0:WIDTH
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			TABLE
+		contents: SGML_ELEMENT
+		tagclass: ULlike
+		contains: TRlike SELECTlike FORMlike Plike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike TRlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike Plike LIlike HRlike MAPlike same
+		flags:
+	103:TBODY
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:DP
+			7:1:ID
+			8:0:LANG
+			9:0:NOWRAP
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALIGN
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			TR
+		contents: SGML_ELEMENT
+		tagclass: TRlike
+		contains: TRlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike ULlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike HRlike MAPlike same
+		flags: endO startO
+	104:TD
+		justify
+		23 attributes:
+			0:0:ABBR
+			1:0:ALIGN
+			2:0:AXES
+			3:0:AXIS
+			4:2:BACKGROUND
+			5:0:CHAR
+			6:0:CHAROFF
+			7:4:CLASS
+			8:0:CLEAR
+			9:0:COLSPAN
+			10:0:DIR
+			11:0:DP
+			12:0:HEADERS
+			13:0:HEIGHT
+			14:1:ID
+			15:0:LANG
+			16:0:NOWRAP
+			17:0:ROWSPAN
+			18:0:SCOPE
+			19:0:STYLE
+			20:0:TITLE
+			21:0:VALIGN
+			22:0:WIDTH
+		4 attr_types
+			cellalign
+			core
+			i18n
+			TD
+		contents: SGML_MIXED
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: TRlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike HRlike MAPlike same
+		flags: endO
+	105:TEXTAREA
+		justify
+		22 attributes:
+			0:0:ACCEPT-CHARSET
+			1:0:ACCESSKEY
+			2:0:ALIGN
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:COLS
+			6:0:DIR
+			7:0:DISABLED
+			8:0:ERROR
+			9:1:ID
+			10:0:LANG
+			11:0:NAME
+			12:0:NOTAB
+			13:0:ONBLUR
+			14:0:ONCHANGE
+			15:0:ONFOCUS
+			16:0:ONSELECT
+			17:0:READONLY
+			18:0:ROWS
+			19:0:STYLE
+			20:0:TABINDEX
+			21:0:TITLE
+		5 attr_types
+			align
+			core
+			events
+			i18n
+			TEXTAREA
+		contents: SGML_PCDATA
+		tagclass: SELECTlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike LIlike ULlike same
+		flags: nolyspcl
+	106:TEXTFLOW
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DATA
+			3:0:DIR
+			4:1:ID
+			5:0:LANG
+			6:0:NAME
+			7:0:OBJECT
+			8:0:REF
+			9:0:STYLE
+			10:0:TITLE
+			11:0:TYPE
+			12:0:VALUE
+			13:0:VALUETYPE
+		3 attr_types
+			core
+			i18n
+			BODYTEXT
+		contents: SGML_MIXED
+		tagclass: BODYlike
+		contains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike outer same
+		contained: formula TRlike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer same
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike BRlike APPLETlike MAPlike outer same
+		flags: endO startO
+	107:TFOOT
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:DP
+			7:1:ID
+			8:0:LANG
+			9:0:NOWRAP
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALIGN
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			TR
+		contents: SGML_ELEMENT
+		tagclass: TRlike
+		contains: TRlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike HRlike MAPlike same
+		flags: endO
+	108:TH
+		justify
+		23 attributes:
+			0:0:ABBR
+			1:0:ALIGN
+			2:0:AXES
+			3:0:AXIS
+			4:2:BACKGROUND
+			5:0:CHAR
+			6:0:CHAROFF
+			7:4:CLASS
+			8:0:CLEAR
+			9:0:COLSPAN
+			10:0:DIR
+			11:0:DP
+			12:0:HEADERS
+			13:0:HEIGHT
+			14:1:ID
+			15:0:LANG
+			16:0:NOWRAP
+			17:0:ROWSPAN
+			18:0:SCOPE
+			19:0:STYLE
+			20:0:TITLE
+			21:0:VALIGN
+			22:0:WIDTH
+		4 attr_types
+			cellalign
+			core
+			i18n
+			TD
+		contents: SGML_MIXED
+		tagclass: LIlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike FORMlike Plike DIVlike ULlike BRlike APPLETlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike
+		contained: TRlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike HRlike MAPlike same
+		flags: endO
+	109:THEAD
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:DP
+			7:1:ID
+			8:0:LANG
+			9:0:NOWRAP
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALIGN
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			TR
+		contents: SGML_ELEMENT
+		tagclass: TRlike
+		contains: TRlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: ULlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike ULlike HRlike MAPlike same
+		flags: endO
+	110:TITLE
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_PCDATA
+		tagclass: HEADstuff
+		contains:
+		icontains:
+		contained: outer HEADstuff
+		icontained: outer HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula Plike DIVlike
+		flags: mafse strict
+	111:TR
+		justify
+		13 attributes:
+			0:0:ALIGN
+			1:0:CHAR
+			2:0:CHAROFF
+			3:4:CLASS
+			4:0:CLEAR
+			5:0:DIR
+			6:0:DP
+			7:1:ID
+			8:0:LANG
+			9:0:NOWRAP
+			10:0:STYLE
+			11:0:TITLE
+			12:0:VALIGN
+		5 attr_types
+			cellalign
+			core
+			events
+			i18n
+			TR
+		contents: SGML_MIXED
+		tagclass: TRlike
+		contains: LIlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: TRlike ULlike
+		icontained: FONTlike EMlike MATHlike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike HRlike MAPlike same
+		flags: endO
+	112:TT
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: nreie
+	113:U
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: FONTlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags: mafse nreie
+	114:UL
+		justify
+		14 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:COMPACT
+			3:0:DINGBAT
+			4:0:DIR
+			5:1:ID
+			6:0:LANG
+			7:0:MD
+			8:0:PLAIN
+			9:2:SRC
+			10:0:STYLE
+			11:0:TITLE
+			12:0:TYPE
+			13:0:WRAP
+		3 attr_types
+			core
+			i18n
+			UL
+		contents: SGML_MIXED
+		tagclass: ULlike
+		contains: FORMlike LIlike HRlike MAPlike
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FORMlike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike same
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike same
+		flags:
+	115:VAR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_MIXED
+		tagclass: EMlike
+		contains: FONTlike EMlike MATHlike Alike SELECTlike BRlike APPLETlike MAPlike same
+		icontains: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike MAPlike same
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike BODYlike same
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff same
+		canclose: FONTlike
+		flags:
+	116:WBR
+		justify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_EMPTY
+		tagclass: FONTlike
+		contains:
+		icontains:
+		contained: FONTlike EMlike MATHlike Alike FORMlike Plike DIVlike LIlike BRlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike FORMlike Plike DIVlike LIlike ULlike BRlike APPLETlike HRlike outer BODYlike HEADstuff
+		canclose: FONTlike EMlike MATHlike Alike formula BRlike same
+		flags: endO
+	117:XMP
+		nojustify
+		7 attributes:
+			0:4:CLASS
+			1:0:CLEAR
+			2:0:DIR
+			3:1:ID
+			4:0:LANG
+			5:0:STYLE
+			6:0:TITLE
+		4 attr_types
+			core
+			events
+			i18n
+			GEN
+		contents: SGML_LITTERAL
+		tagclass: ULlike
+		contains:
+		icontains:
+		contained: TRlike SELECTlike FORMlike Plike DIVlike LIlike APPLETlike HRlike outer BODYlike
+		icontained: FONTlike EMlike MATHlike Alike formula TRlike SELECTlike FORMlike Plike DIVlike LIlike ULlike APPLETlike HRlike outer BODYlike
+		canclose: FONTlike EMlike MATHlike Alike formula SELECTlike Plike DIVlike LIlike MAPlike
+		flags: endO
diff --git a/WWW/Library/Implementation/tidy_tls.h b/WWW/Library/Implementation/tidy_tls.h
new file mode 100644
index 00000000..25564404
--- /dev/null
+++ b/WWW/Library/Implementation/tidy_tls.h
@@ -0,0 +1,139 @@
+/*
+ * $LynxId: tidy_tls.h,v 1.3 2011/05/11 10:53:36 tom Exp $
+ * Copyright 2008,2011 Thomas E. Dickey
+ */
+#ifndef TIDY_TLS_H
+#define TIDY_TLS_H
+
+#include <gnutls/gnutls.h>
+
+#define OPENSSL_VERSION_NUMBER (0x0090604F)
+#define SSLEAY_VERSION_NUMBER OPENSSL_VERSION_NUMBER
+
+#define SSLeay_add_ssl_algorithms()   SSL_library_init()
+
+#define SSL_ST_OK       (1)
+
+#define SSL_OP_ALL      (0x000FFFFF)
+#define SSL_OP_NO_SSLv2 (0x00100000)
+#define SSL_OP_NO_SSLv3 (0x00200000)
+#define SSL_OP_NO_TLSv1 (0x00400000)
+
+#define SSL_get_cipher_name(ssl)    SSL_CIPHER_get_name(SSL_get_current_cipher(ssl))
+#define SSL_get_cipher(ssl)         SSL_get_cipher_name(ssl)
+#define SSL_get_cipher_bits(ssl,bp) SSL_CIPHER_get_bits(SSL_get_current_cipher(ssl),(bp))
+#define SSL_get_cipher_version(ssl) SSL_CIPHER_get_version(SSL_get_current_cipher(ssl))
+
+#define TIDY_TLS_BUFSIZE 256
+
+typedef struct {
+    char common_name[TIDY_TLS_BUFSIZE];
+    char country[TIDY_TLS_BUFSIZE];
+    char email[TIDY_TLS_BUFSIZE];
+    char locality_name[TIDY_TLS_BUFSIZE];
+    char organization[TIDY_TLS_BUFSIZE];
+    char organizational_unit_name[TIDY_TLS_BUFSIZE];
+    char state_or_province_name[TIDY_TLS_BUFSIZE];
+} X509_NAME;
+
+typedef struct _SSL SSL;
+
+typedef gnutls_datum_t X509;
+
+typedef struct {
+    gnutls_connection_end_t connend;
+    struct {
+	int protocol[GNUTLS_MAX_ALGORITHM_NUM];
+	int encrypts[GNUTLS_MAX_ALGORITHM_NUM];
+	int compress[GNUTLS_MAX_ALGORITHM_NUM];
+	int key_xchg[GNUTLS_MAX_ALGORITHM_NUM];
+	int msg_code[GNUTLS_MAX_ALGORITHM_NUM];
+    } priority;
+} SSL_METHOD;
+
+typedef struct {
+    SSL *ssl;
+    int error;
+    const gnutls_datum_t *cert_list;
+#define current_cert cert_list
+} X509_STORE_CTX;
+
+typedef struct {
+    gnutls_certificate_type_t cert;
+    gnutls_cipher_algorithm_t encrypts;
+    gnutls_compression_method_t compress;
+    gnutls_kx_algorithm_t key_xchg;
+    gnutls_mac_algorithm_t msg_code;
+    gnutls_protocol_t protocol;
+} SSL_CIPHER;
+
+typedef struct _SSL_CTX {
+    SSL_METHOD *method;
+    char *certfile;
+    int certfile_type;
+    char *keyfile;
+    int keyfile_type;
+    unsigned long options;
+
+    int (*verify_callback) (int, X509_STORE_CTX *);
+    int verify_mode;
+
+} SSL_CTX;
+
+struct _SSL {
+    gnutls_session_t gnutls_state;
+
+    gnutls_certificate_client_credentials gnutls_cred;
+
+    SSL_CTX *ctx;
+    SSL_CIPHER ciphersuite;
+
+    int last_error;
+    int shutdown;
+    int state;
+    unsigned long options;
+
+    int (*verify_callback) (int, X509_STORE_CTX *);
+    int verify_mode;
+
+    gnutls_transport_ptr_t rfd;
+    gnutls_transport_ptr_t wfd;
+};
+
+/* use either SSL_VERIFY_NONE or SSL_VERIFY_PEER, the last 2 options
+ * are 'ored' with SSL_VERIFY_PEER if they are desired */
+#define SSL_VERIFY_PEER			0x01
+/* *INDENT-OFF* */
+extern SSL *SSL_new(SSL_CTX * ctx);
+extern SSL_CIPHER *SSL_get_current_cipher(SSL * ssl);
+extern SSL_CTX *SSL_CTX_new(SSL_METHOD * method);
+extern SSL_METHOD *SSLv23_client_method(void);
+extern const X509 *SSL_get_peer_certificate(SSL * ssl);
+extern X509_NAME *X509_get_issuer_name(const X509 * cert);
+extern X509_NAME *X509_get_subject_name(const X509 * cert);
+extern char *X509_NAME_oneline(X509_NAME * name, char *buf, int len);
+extern const char *ERR_error_string(unsigned long e, char *buf);
+extern const char *RAND_file_name(char *buf, size_t len);
+extern const char *SSL_CIPHER_get_name(SSL_CIPHER * cipher);
+extern const char *SSL_CIPHER_get_version(SSL_CIPHER * cipher);
+extern int RAND_bytes(unsigned char *buf, int num);
+extern int RAND_load_file(const char *name, long maxbytes);
+extern int RAND_status(void);
+extern int RAND_write_file(const char *name);
+extern int SSL_CIPHER_get_bits(SSL_CIPHER * cipher, int *bits);
+extern int SSL_CTX_set_default_verify_paths(SSL_CTX * ctx);
+extern int SSL_connect(SSL * ssl);
+extern int SSL_library_init(void);
+extern int SSL_read(SSL * ssl, void *buf, int len);
+extern int SSL_set_fd(SSL * ssl, int fd);
+extern int SSL_write(SSL * ssl, const void *buf, int len);
+extern unsigned long ERR_get_error(void);
+extern unsigned long SSL_CTX_set_options(SSL_CTX * ctx, unsigned long options);
+extern void RAND_seed(const void *buf, int num);
+extern void SSL_CTX_free(SSL_CTX * ctx);
+extern void SSL_CTX_set_verify(SSL_CTX * ctx, int verify_mode, int (*verify_callback) (int, X509_STORE_CTX *));
+extern void SSL_free(SSL * ssl);
+extern void SSL_load_error_strings(void);
+/* *INDENT-ON* */
+
+#endif /* TIDY_TLS_H */
diff --git a/WWW/Library/Implementation/www_tcp.h b/WWW/Library/Implementation/www_tcp.h
new file mode 100644
index 00000000..63178adf
--- /dev/null
+++ b/WWW/Library/Implementation/www_tcp.h
@@ -0,0 +1,983 @@
+/*                System dependencies in the W3 library
+ * $LynxId: www_tcp.h,v 1.53 2011/05/24 23:48:50 tom Exp $
+ *
+                                   SYSTEM DEPENDENCIES
+
+   System-system differences for TCP include files and macros.  This
+   file includes for each system the files necessary for network and
+   file I/O.  It should be used in conjunction with HTUtils.h to help
+   ensure portability across as many platforms and flavors of platforms
+   as possible.
+
+  AUTHORS
+
+  TBL                Tim Berners-Lee, W3 project, CERN, <timbl@info.cern.ch>
+  EvA                     Eelco van Asperen <evas@cs.few.eur.nl>
+  MA                      Marc Andreessen NCSA
+  AT                      Aleksandar Totic <atotic@ncsa.uiuc.edu>
+  SCW                     Susan C. Weber <sweber@kyle.eitech.com>
+
+  HISTORY:
+  22 Feb 91               Written (TBL) as part of the WWW library.
+  16 Jan 92               PC code from EvA
+  22 Apr 93               Merged diffs bits from xmosaic release
+  29 Apr 93               Windows/NT code from SCW
+  20 May 94		  A.Harper Add support for VMS CMU TCP/IP transport
+   3 Oct 94		  A.Harper Add support for VMS SOCKETSHR/NETLIB
+  15 Jul 95               S. Bjorndahl Gnu C for VMS Globaldef/ref support
+
+*/
+
+#ifndef TCP_H
+#define TCP_H
+
+/*
+
+Default values
+
+   These values may be reset and altered by system-specific sections
+   later on.  there are also a bunch of defaults at the end .
+
+ */
+/* Default values of those: */
+	/* Routine to close a TCP-IP socket         */
+#define NETCLOSE close
+	/* Routine to read from a TCP-IP socket     */
+#define NETREAD(s,p,n) \
+	HTDoRead(s, p, (unsigned)(n))
+	/* Routine to write to a TCP-IP socket      */
+#define NETWRITE(s,p,n)		write(s, p, (size_t)(n))
+#define SOCKET_READ(s,b,l)	read(s,b,(size_t)(l))
+#define IOCTL(s,cmd,arg)	ioctl(s,(long)(cmd),arg)
+#define SOCKET_ERRNO errno	/* normal socket errno */
+
+/* Unless stated otherwise, */
+#define SELECT			/* Can handle >1 channel.               */
+#define GOT_SYSTEM		/* Can call shell with string           */
+
+#ifdef UNIX
+#define GOT_PIPE
+#endif /* UNIX */
+
+#define INVSOC (-1)		/* Unix invalid socket */
+		/* NB: newer libwww has something different for Windows */
+
+#ifndef VMS
+
+#include <sys/types.h>
+
+#if defined(__BORLANDC__)
+#define DECL_ERRNO
+#endif
+
+#if defined(__DJGPP__) || defined(__BORLANDC__)
+#undef HAVE_DIRENT_H
+#define HAVE_DIRENT_H
+#undef HAVE_SYS_FILIO_H
+#endif /* DJGPP or __BORLANDC__ */
+
+#if defined(_MSC_VER)
+#undef HAVE_DIRENT_H
+#define HAVE_DIRENT_H
+#undef HAVE_SYS_FILIO_H
+#endif /* _MSC_VER */
+
+#ifdef HAVE_DIRENT_H
+# include <dirent.h>
+# define D_NAMLEN(dirent) strlen((dirent)->d_name)
+# define STRUCT_DIRENT struct dirent
+#else
+# define D_NAMLEN(dirent) (dirent)->d_namlen
+# define STRUCT_DIRENT struct direct
+# ifdef HAVE_SYS_NDIR_H
+#  include <sys/ndir.h>
+# endif
+# ifdef HAVE_SYS_DIR_H
+#  include <sys/dir.h>
+# endif
+# ifdef HAVE_NDIR_H
+#  include <ndir.h>
+# endif
+#endif /* HAVE_DIRENT_H */
+
+#ifdef HAVE_STRUCT_DIRENT64
+# undef STRUCT_DIRENT
+# define STRUCT_DIRENT struct dirent64
+#endif
+
+#if !(defined(DOSPATH) || defined(__EMX__) || defined(__CYGWIN__))
+#define STRUCT_DIRENT__D_INO 1
+#endif
+
+#endif /* !VMS */
+
+#ifdef TIME_WITH_SYS_TIME
+# include <sys/time.h>
+# include <time.h>
+#else
+# ifdef HAVE_SYS_TIME_H
+#  include <sys/time.h>
+# else
+#  include <time.h>
+# endif
+#endif
+
+#if defined(_AIX) && !defined(AIX)
+#define AIX
+#endif /* _AIX */
+
+#ifndef __CYGWIN__
+#ifdef WIN_EX
+#define HAVE_FTIME 1
+#define HAVE_SYS_TIMEB_H 1
+#endif
+#endif /* __CYGWIN__ */
+
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#else
+#ifdef HAVE_SYS_FCNTL_H
+#include <sys/fcntl.h>
+#endif
+#endif
+
+#ifdef HAVE_STRING_H
+#include <string.h>		/* For bzero etc */
+#endif /* HAVE_STRING_H */
+
+/*
+
+  MACROS FOR CONVERTING CHARACTERS
+
+ */
+#ifndef TOASCII
+#ifdef EBCDIC			/* S/390 -- gil -- 1327 */
+
+extern const char un_IBM1047[];
+extern const unsigned char IBM1047[];
+
+/* For debugging
+#include <assert.h>
+#define   TOASCII(c) (assert((c)>=0 && (c)<256), un_IBM1047[c])
+*/
+/* for production */
+#define   TOASCII(c) (un_IBM1047[c])
+
+#define FROMASCII(c) (IBM1047[c])
+
+#else /* EBCDIC */
+
+#if '0' != 48
+error Host character set is not ASCII.
+#endif
+
+#define TOASCII(c) (c)
+#define FROMASCII(c) (c)
+
+#endif				/* EBCDIC */
+#endif				/* !TOASCII */
+
+/* convert a char to an unsigned, needed if we have signed characters for ctype.h */
+#define UCH(ch) ((unsigned char)(ch))
+
+/*
+ * These parameters were provided by Nigel Horne, using BeOS professional 5.0
+ */
+#ifdef  __BEOS__
+#undef NETREAD
+#undef NETWRITE
+#undef NETCLOSE
+#define NETREAD(s,b,l)  recv((s),(b),(l),0)
+#define NETWRITE(s,b,l) send((s),(b),(l),0)
+#define NETCLOSE(s)     closesocket(s)
+#endif
+
+/*
+IBM-PC running Windows NT
+
+	These parameters provided by  Susan C. Weber <sweber@kyle.eitech.com>.
+*/
+
+#ifdef _WINDOWS
+
+#ifndef _WINDOWS_NSL
+#define _WINDOWS_NSL
+#endif
+
+#include <fcntl.h>		/* For HTFile.c */
+#include <sys/types.h>		/* For HTFile.c */
+#include <sys/stat.h>		/* For HTFile.c */
+#undef NETREAD
+#undef NETWRITE
+#undef NETCLOSE
+#undef IOCTL
+extern int ws_netread(int fd, char *buf, int len);
+
+#define NETREAD(s,b,l)  ws_netread((s),(b),(l))		/* 1997/11/06 (Thu) */
+#define NETWRITE(s,b,l) send((s),(b),(l),0)
+#define NETCLOSE(s)     closesocket(s)
+#define IOCTL(s,cmd,arg)	ioctlsocket(s,cmd,arg)
+#include <io.h>
+#include <string.h>
+#include <process.h>
+#include <time.h>
+#include <errno.h>
+#include <direct.h>
+
+#ifdef ENABLE_IPV6
+#undef  USE_WINSOCK2_H
+#define USE_WINSOCK2_H
+
+/* Avoid including <winsock*.h> in <windows.h> */
+#ifndef WIN32_LEAN_AND_MEAN
+#error Define "WIN32_LEAN_AND_MEAN" in your makefile
+#endif
+
+#ifdef _WINSOCKAPI_
+#error windows.h included before winsock2.h
+#endif
+
+#if defined(_MSC_VER) && (!defined(_WIN32_WINNT) || _WIN32_WINNT < 0x0501)
+/*
+ * Needed to pull in the real getaddrinfo() and not the inline version
+ * in <wspiAPI.H> which doesn't support IPv6 (IPv4 only). <wspiAPI.H> is
+ * included from <ws2tcpip.h> for <= 0x0500 SDKs.
+ */
+#undef  _WIN32_WINNT
+#define _WIN32_WINNT 0x0501
+#endif
+#endif /* ENABLE_IPV6 */
+
+#ifdef USE_WINSOCK2_H
+#include <winsock2.h>		/* normally included in windows.h */
+
+#ifdef ENABLE_IPV6
+#include <ws2tcpip.h>
+#endif
+
+#undef EINPROGRESS
+#undef EALREADY
+#undef EISCONN
+#undef EINTR
+#undef EAGAIN
+#undef ENOTCONN
+#undef ECONNRESET
+#undef ETIMEDOUT
+
+#define EINPROGRESS  WSAEINPROGRESS
+#define EALREADY     WSAEALREADY
+#define EISCONN      WSAEISCONN
+#define EINTR        WSAEINTR
+/* fine EAGAIN       WSAEAGAIN */
+#define ENOTCONN     WSAENOTCONN
+#define ECONNRESET   WSAECONNRESET
+#define ETIMEDOUT    WSAETIMEDOUT
+
+#else /* USE_WINSOCK2_H */
+
+#include <winsock.h>
+
+#if defined(_MSC_VER) || defined(__MINGW32__)
+#undef EINTR
+#undef EAGAIN
+#endif /* _MSC_VER */
+
+#define EINPROGRESS          (WSABASEERR+36)
+#define EALREADY             (WSABASEERR+37)
+#define EISCONN              (WSABASEERR+56)
+#define EINTR                (WSABASEERR+4)
+#define EAGAIN               (WSABASEERR+1002)
+#define ENOTCONN             (WSABASEERR+57)
+#define ECONNRESET           (WSABASEERR+54)
+#define ETIMEDOUT             WSAETIMEDOUT
+
+#endif /* USE_WINSOCK2_H */
+
+#undef  SOCKET_ERRNO
+#define SOCKET_ERRNO          WSAGetLastError()
+
+#define INCLUDES_DONE
+#define TCP_INCLUDES_DONE
+#endif /* WINDOWS */
+
+/*
+
+VAX/VMS
+
+   Under VMS, there are many versions of TCP-IP. Define one if you do
+   not use Digital's UCX product:
+
+  UCX                     DEC's "Ultrix connection" (default)
+  CMU_TCP                 Available via FTP from sacusr.mp.usbr.gov
+  SOCKETSHR               Eckhart Meyer's interface to NETLIB
+  WIN_TCP                 From Wollongong, now GEC software.
+  MULTINET                From SRI, became TGV, then Cisco.
+  DECNET                  Cern's TCP socket emulation over DECnet
+  TCPIP_SERVICES          TCP/IP Services (newer than UCX)
+
+   WIN_TCP, MULTINET and DECNET do not interfere with the
+   unix i/o library, and so they need special calls to read, write and
+   close sockets.  In these cases the socket number is a VMS channel
+   number, so we make the @@@ HORRIBLE @@@ assumption that a channel
+   number will be greater than 10 but a unix file descriptor less than
+   10.  It works.
+
+ */
+#ifdef VMS
+
+#ifdef UCX
+#undef IOCTL
+#define IOCTL(s,cmd,arg)	HTioctl(s,cmd,arg)
+#endif /* UCX */
+
+#ifdef WIN_TCP
+#undef SOCKET_READ
+#undef NETWRITE
+#undef NETCLOSE
+#define SOCKET_READ(s,b,l)  ((s)>10 ? netread((s),(b),(l)) : read((s),(b),(l)))
+#define NETWRITE(s,b,l)     ((s)>10 ? netwrite((s),(b),(l)) : write((s),(b),(l)))
+#define NETCLOSE(s)         ((s)>10 ? netclose(s) : close(s))
+#undef IOCTL
+#define IOCTL(a,b,c) -1		/* disables ioctl function            */
+#define NO_IOCTL		/* flag to check if ioctl is disabled */
+#endif /* WIN_TCP */
+
+#ifdef CMU_TCP
+#undef SOCKET_READ
+#undef NETREAD
+#undef NETWRITE
+#undef NETCLOSE
+#define SOCKET_READ(s,b,l) (cmu_get_sdc((s)) != 0 ? cmu_read((s),(b),(l)) : read((s),(b),(l)))
+#define NETREAD(s,b,l)     (cmu_get_sdc((s)) != 0 ? HTDoRead((s),(b),(l)) : read((s),(b),(l)))
+#define NETWRITE(s,b,l)    (cmu_get_sdc((s)) != 0 ? cmu_write((s),(b),(l)) : write((s),(b),(l)))
+#define NETCLOSE(s)        (cmu_get_sdc((s)) != 0 ? cmu_close((s)) : close((s)))
+#endif /* CMU_TCP */
+
+#ifdef MULTINET
+#undef NETCLOSE
+#undef SOCKET_READ
+#undef NETWRITE
+#undef IOCTL
+#undef SOCKET_ERRNO
+/*
+ *  Delete these socket_foo() prototypes as MultiNet adds them
+ *  to it's socket library headers.  Compiler warnings due to
+ *  the absence of arguments in the generic prototypes here will
+ *  include the names of those which can be deleted. - FM
+ */
+extern int socket_read();
+extern int socket_write();
+extern int socket_close();
+extern int socket_ioctl();
+
+#define SOCKET_READ(s,b,l)  ((s)>10 ? socket_read((s),(b),(l)) : \
+				read((s),(b),(l)))
+#define NETWRITE(s,b,l)     ((s)>10 ? socket_write((s),(b),(l)) : \
+                                write((s),(b),(l)))
+#define NETCLOSE(s)         ((s)>10 ? socket_close(s) : close(s))
+#define IOCTL(s,cmd,arg)	socket_ioctl(s,cmd,arg)
+#define SOCKET_ERRNO socket_errno
+#endif /* MULTINET */
+
+#ifdef SOCKETSHR_TCP
+#undef SOCKET_READ
+#undef NETREAD
+#undef NETWRITE
+#undef NETCLOSE
+#undef IOCTL
+#define SOCKET_READ(s,b,l)  (si_get_sdc((s)) != 0 ? si_read((s),(b),(l)) : \
+                                read((s),(b),(l)))
+#define NETREAD(s,b,l)      (si_get_sdc((s)) != 0 ? HTDoRead((s),(b),(l)) : \
+                                read((s),(b),(l)))
+#define NETWRITE(s,b,l)     (si_get_sdc((s)) != 0 ? si_write((s),(b),(l)) : \
+                                write((s),(b),(l)))
+#define NETCLOSE(s)         (si_get_sdc((s)) != 0 ? si_close((s)) : close((s)))
+#define IOCTL(s,cmd,arg)	si_ioctl(s,cmd,arg)
+#endif /* SOCKETSHR_TCP */
+
+#ifdef TCPIP_SERVICES
+/*
+ * TCPIP Services has all of the entrypoints including ioctl().
+ */
+#undef NETWRITE
+#define NETWRITE(s,b,l) send((s),(char *)(b),(l),0)
+
+#define TYPE_FD_SET int
+
+#if 0				/* this should be declared via time.h */
+typedef TYPE_FD_SET fd_set;
+#endif
+
+#endif /* TCPIP_SERVICES */
+
+#include <string.h>
+
+#include <file.h>
+#include <stat.h>
+#include <unixio.h>
+#include <unixlib.h>
+
+#define INCLUDES_DONE
+
+#ifdef MULTINET			/* Include from standard Multinet directories */
+/*
+ *  Delete any of these multinet_foo() and associated prototypes
+ *  as MultiNet adds them to its socket library headers.  You'll
+ *  get compiler warnings about them, due the absence of arguments
+ *  in the generic prototyping here, and the warnings will include
+ *  the names of the functions whose prototype entries can be
+ *  deleted here. - FM
+ */
+extern int multinet_accept();
+extern int multinet_bind();
+extern int multinet_connect();
+extern int multinet_gethostname();
+extern int multinet_getsockname();
+extern unsigned short multinet_htons(unsigned short __val);
+extern unsigned short multinet_ntohs(unsigned short __val);
+extern int multinet_listen();
+extern int multinet_select();
+extern int multinet_socket();
+extern char *vms_errno_string();
+
+#ifndef __SOCKET_TYPEDEFS
+#define __SOCKET_TYPEDEFS 1
+#endif /* !__SOCKET_TYPEDEFS */
+
+#include <time.h>
+#include <types.h>
+/*
+ * DEC C before version 5.2 added some typedefs to <types.h> which happen
+ * to be suppressed if the version-4 compatibility define is set.  In
+ * particular, lynx uses "off_t".  VAX-C used "unsigned", DEC-C uses "int".
+ */
+#if defined(_DECC_V4_SOURCE) && !defined(____OFF_T)
+#undef off_t
+#define off_t int
+#endif
+
+#ifdef __TIME_T
+#undef  __TYPES
+#define __TYPES 1
+#define __TYPES_LOADED 1
+#endif /* __TIME_T */
+
+#ifdef __SOCKET_TYPEDEFS
+#undef __SOCKET_TYPEDEFS
+#endif /* __SOCKET_TYPEDEFS */
+
+#include "multinet_root:[multinet.include.sys]types.h"
+
+#ifndef __SOCKET_TYPEDEFS
+#define __SOCKET_TYPEDEFS 1
+#endif /* !__SOCKET_TYPEDEFS */
+
+#include "multinet_root:[multinet.include]errno.h"
+
+#ifdef __TYPES
+#undef  __TIME_T
+#define __TIME_T 1
+#endif /* __TYPE */
+
+#ifdef __TIME_LOADED
+#undef  __TIME
+#define __TIME 1		/* to avoid double definitions in in.h */
+#endif /* __TIME_LOADED */
+
+#include "multinet_root:[multinet.include.sys]time.h"
+
+#define MULTINET_NO_PROTOTYPES	/* DECC is compatible-but-different */
+#include "multinet_root:[multinet.include.sys]socket.h"
+#undef MULTINET_NO_PROTOTYPES
+#include "multinet_root:[multinet.include.netinet]in.h"
+#include "multinet_root:[multinet.include.arpa]inet.h"
+#include "multinet_root:[multinet.include]netdb.h"
+#include "multinet_root:[multinet.include.sys]ioctl.h"
+#define TCP_INCLUDES_DONE
+/*
+ *  Uncomment this if you get compiler messages
+ *  about struct timeval having no linkage. - FM
+ */
+/*#define NO_TIMEVAL*/
+#ifdef NO_TIMEVAL
+struct timeval {
+    long tv_sec;		/* seconds since Jan. 1, 1970 */
+    long tv_usec;		/* microseconds */
+};
+#endif /* NO_TIMEVAL */
+#endif /* MULTINET */
+
+#ifdef DECNET
+#include <types.h>
+#include <errno.h>
+#include <time.h>
+#include <types.h>		/* for socket.h */
+#include <socket.h>
+#include <dn>
+#include <dnetdb>
+/* #include "vms.h" */
+#define TCP_INCLUDES_DONE
+#endif /* DECNET */
+
+#ifdef UCX
+#include <types.h>
+#include <errno.h>
+#include <time.h>
+#include <socket.h>
+#include <in.h>
+#include <inet.h>
+#if defined(TCPWARE) && !defined(__DECC)
+#include "tcpware_include:netdb.h"
+#include "tcpware_include:ucx$inetdef.h"
+#else
+#include <netdb.h>
+#ifdef MUCX
+#include <multinet_root:[multinet.include.vms]ucx$inetdef.h>
+#else
+#include <ucx$inetdef.h>
+#endif /* MUCX */
+#endif /* TCPWARE */
+#define TCP_INCLUDES_DONE
+#endif /* UCX */
+
+#ifdef CMU_TCP
+#include <types.h>
+#include <errno.h>
+#include "cmuip_root:[syslib]time.h"
+#include "cmuip_root:[syslib]socket.h"
+#include <in.h>
+#include <inet.h>
+#include <netdb.h>
+#include "cmuip_root:[syslib]ioctl.h"
+#define TCP_INCLUDES_DONE
+#endif /* CMU_TCP */
+
+#ifdef SOCKETSHR_TCP
+#include <types.h>
+#include <errno.h>
+#include <time.h>
+#include <socket.h>
+#include <in.h>
+#include <inet.h>
+#include <netdb.h>
+#include "socketshr_library:socketshr.h"
+#include "socketshr_library:ioctl.h"
+#define TCP_INCLUDES_DONE
+#endif /* SOCKETSHR_TCP */
+
+#ifdef TCPIP_SERVICES
+#include <types.h>
+#include <errno.h>
+#include <time.h>
+#include <ioctl.h>
+#include <socket.h>
+#include <in.h>
+#include <inet.h>
+#include <netdb.h>
+#define TCP_INCLUDES_DONE
+#endif /* TCPIP_SERVICES */
+
+#ifdef WIN_TCP
+#include <types.h>
+#include <errno.h>
+#include <time.h>
+#include <socket.h>
+#include <in.h>
+#include <inet.h>
+#include <netdb.h>
+#ifndef NO_IOCTL
+#include <ioctl.h>
+#endif /* !NO_IOCTL */
+#define TCP_INCLUDES_DONE
+#endif /* WIN_TCP */
+
+#ifndef TCP_INCLUDES_DONE
+#include <types.h>
+#include <errno.h>
+#include <time.h>
+#ifdef VMS_SOCKET_HEADERS
+/*
+ *  Not all versions of VMS have the full set of headers
+ *  for socket library functions, because the TCP/IP
+ *  packages were layered products.  If we want these
+ *  specifically, instead of those for the above packages,
+ *  the module should be compiled with VMS_SOCKET_HEADERS
+ *  defined instead of layered product definitions, above.
+ *  If the module is not using socket library functions,
+ *  none of the definitions need be used, and we include
+ *  only the above three headers. - FM
+ */
+#include <socket.h>
+#include <in.h>
+#include <inet.h>
+#include <netdb.h>
+#include <ioctl.h>
+#endif /* VMS_SOCKET_HEADERS */
+#define TCP_INCLUDES_DONE
+#endif /* !TCP_INCLUDES_DONE */
+
+/*
+ * On VMS machines, the linker needs to be told to put global data sections
+ * into a data segment using these storage classes.  (MarkDonszelmann)
+ */
+#if defined(VAXC) && !defined(__DECC)
+#define GLOBALDEF globaldef
+#define GLOBALREF globalref
+#else
+#ifdef __GNUC__			/* this added by Sterling Bjorndahl */
+#define GLOBALREF_IS_MACRO 1
+#define GLOBALDEF_IS_MACRO 1
+#include <gnu_hacks.h>		/* defines GLOBALREF and GLOBALDEF for GNUC on VMS */
+#endif /* __GNUC__ */
+#endif /* VAXC && !DECC */
+
+#include <perror.h>
+#ifndef errno
+extern int errno;
+#endif /* !errno */
+
+#endif /* VMS */
+
+/*
+ * On non-VMS machines and for DECC on VMS, the GLOBALDEF and GLOBALREF
+ * storage types default to normal C storage types.
+ */
+#ifndef GLOBALREF
+#define GLOBALDEF
+#define GLOBALREF extern
+#endif /* !GLOBALREF */
+
+#ifdef __DJGPP__
+#undef SELECT
+#define TCP_INCLUDES_DONE
+#undef  IOCTL
+#define IOCTL(s,cmd,arg)	ioctlsocket(s,cmd,(char*)(arg))
+#define DECL_ERRNO
+#include <errno.h>
+#include <sys/types.h>
+#include <io.h>
+#include <sys/ioctl.h>
+#include <sys/socket.h>
+#include <arpa/inet.h>
+#include <tcp.h>
+#ifdef word
+#undef word
+#endif /* word */
+#ifdef set_timeout
+#undef set_timeout
+#endif /* set_timeout */
+#define select select_s
+
+#undef NETWRITE
+#define NETWRITE write_s
+#undef NETREAD
+#define NETREAD read_s
+#undef NETCLOSE
+#define NETCLOSE close_s
+#ifdef UNIX
+#undef UNIX
+#endif /* UNIX */
+#ifdef HAVE_GETTEXT
+#define gettext gettext__
+#endif
+#if !defined(NCURSES) && !defined(USE_SLANG)
+#define HAVE_CBREAK 1
+#endif /* !NCURSES && !USE_SLANG */
+#if defined(USE_SLANG) && !defined(NO_DJ_KEYHANDLER) && defined(HAVE_CONFIG_H)
+#define DJGPP_KEYHANDLER
+#endif /* USE_SLANG && !NO_DJ_KEYHANDLER  && HAVE_CONFIG_H */
+#endif /* DJGPP */
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif /* HAVE_UNISTD_H */
+
+#ifdef HAVE_SYS_FILIO_H
+#include <sys/filio.h>
+#endif /* HAVE_SYS_FILIO_H */
+
+#if !defined(HAVE_LSTAT) && !defined(lstat)
+#define lstat(path,block) stat(path,block)
+#endif
+
+#if defined(DECL_ERRNO) && !defined(errno)
+extern int errno;
+#endif /* DECL_ERRNO */
+
+/*
+Regular BSD unix versions
+=========================
+   These are a default unix where not already defined specifically.
+ */
+#ifndef INCLUDES_DONE
+#include <sys/types.h>
+#ifdef HAVE_STRING_H
+#include <string.h>
+#endif /* HAVE_STRING_H */
+#include <errno.h>		/* independent */
+#ifdef __MVS__			/* S/390 -- gil -- 1361 */
+#include <time.h>
+#endif /* __MVS__ */
+#ifdef SCO
+#include <sys/timeb.h>
+#include <time.h>
+#endif /* SCO */
+#if defined(AIX) || defined(SVR4)
+#include <time.h>
+#endif /* AIX || SVR4 */
+#include <sys/time.h>		/* independent */
+#include <sys/stat.h>
+#ifndef __MVS__			/* S/390 -- gil -- 1373 */
+#include <sys/param.h>
+#endif /* __MVS__ */
+#include <sys/file.h>		/* For open() etc */
+
+#if defined(NeXT) || defined(sony_news)
+#ifndef mode_t
+typedef unsigned short mode_t;
+#endif /* !mode_t */
+
+#endif /* NeXT || sony_news */
+
+#define INCLUDES_DONE
+#endif /* Normal includes */
+
+/* FIXME: this should be autoconf'd */
+/* Interactive UNIX for i386 and i486 -- Thanks to jeffrey@itm.itm.org */
+#ifdef ISC
+#include <net/errno.h>
+#include <sys/types.h>
+#include <sys/tty.h>
+#include <sys/sioctl.h>
+#include <sys/bsdtypes.h>
+#ifndef MERGE
+#define MERGE
+#include <sys/pty.h>
+#undef MERGE
+#else
+#include <sys/pty.h>
+#endif /* !MERGE */
+#ifndef USE_DIRENT
+#define USE_DIRENT		/* sys V style directory open */
+#endif /* USE_DIRENT */
+#include <sys/dirent.h>
+#endif /* ISC */
+
+/*	Directory reading stuff - BSD or SYS V
+*/
+#ifdef HAVE_CONFIG_H
+
+# ifdef HAVE_LIMITS_H
+#  include <limits.h>
+# endif	/* HAVE_LIMITS_H */
+# if !defined(MAXINT) && defined(INT_MAX)
+#  define MAXINT INT_MAX
+# endif	/* !MAXINT && INT_MAX */
+
+#else
+
+#if !(defined(VM) || defined(VMS) || defined(THINK_C) || defined(PCNFS) || defined(_WINDOWS))
+#define DECL_SYS_ERRLIST 1
+#endif
+
+#if defined(VMS)
+#define socklen_t unsigned
+#else
+#define socklen_t int		/* used for default LY_SOCKLEN definition */
+#endif
+
+#endif /* !HAVE_CONFIG_H */
+
+#ifdef HAVE_LIBINTL_H
+#include <libintl.h>
+#endif
+
+#ifdef HAVE_LIBGETTEXT_H
+#include <libgettext.h>
+#endif
+
+#define N_(s) s
+
+#ifndef HAVE_GETTEXT
+#define gettext(s) s
+#endif
+
+#ifndef NLS_TEXTDOMAIN
+#define NLS_TEXTDOMAIN "lynx"
+#endif
+
+/*
+Defaults
+========
+  INCLUDE FILES FOR TCP
+ */
+#ifndef TCP_INCLUDES_DONE
+#ifndef NO_IOCTL
+#include <sys/ioctl.h>		/* EJB */
+#endif /* !NO_IOCTL */
+#include <sys/socket.h>
+#include <netinet/in.h>
+#ifdef HAVE_ARPA_INET_H
+#include <arpa/inet.h>		/* Must be after netinet/in.h */
+#endif
+#include <netdb.h>
+#endif /* TCP includes */
+
+typedef unsigned short PortNumber;
+
+#ifndef S_ISLNK
+#define S_ISLNK(m)	(((m) & S_IFMT) == S_IFLNK)
+#endif /* S_ISLNK */
+
+#ifndef S_ISDIR
+#define S_ISDIR(m)	(((m) & S_IFMT) == S_IFDIR)
+#endif /* S_ISDIR */
+
+#ifndef S_ISREG
+#define S_ISREG(m)	(((m) & S_IFMT) == S_IFREG)
+#endif /* S_ISREG */
+
+#ifndef S_ISUID
+#define S_ISUID  0004000
+#endif
+#ifndef S_ISGID
+#define S_ISGID  0002000
+#endif
+#ifndef S_ISVTX
+#define S_ISVTX  0001000
+#endif
+
+#ifndef S_IRWXU
+#define S_IRWXU 00700
+#endif
+
+#ifndef S_IRUSR
+#define S_IRUSR 00400
+#endif
+#ifndef S_IWUSR
+#define S_IWUSR 00200
+#endif
+#ifndef S_IXUSR
+#define S_IXUSR 00100
+#endif
+
+#ifndef S_IRWXG
+#define S_IRWXG 00070
+#endif
+
+#ifndef S_IRGRP
+#define S_IRGRP 00040
+#endif
+#ifndef S_IWGRP
+#define S_IWGRP 00020
+#endif
+#ifndef S_IXGRP
+#define S_IXGRP 00010
+#endif
+
+#ifndef S_IRWXO
+#define S_IRWXO 00007
+#endif
+
+#ifndef S_IROTH
+#define S_IROTH 00004
+#endif
+#ifndef S_IWOTH
+#define S_IWOTH 00002
+#endif
+#ifndef S_IXOTH
+#define S_IXOTH 00001
+#endif
+
+/*
+
+ROUGH ESTIMATE OF MAX PATH LENGTH
+
+*/
+#ifndef HT_MAX_PATH
+#ifdef MAXPATHLEN
+#define HT_MAX_PATH MAXPATHLEN
+#else
+#ifdef PATH_MAX
+#define HT_MAX_PATH PATH_MAX
+#else
+#define HT_MAX_PATH 1024	/* Any better ideas? */
+#endif
+#endif
+#endif /* HT_MAX_PATH */
+
+#if HT_MAX_PATH < 256
+#undef HT_MAX_PATH
+#define HT_MAX_PATH 256
+#endif
+
+/*
+  MACROS FOR MANIPULATING MASKS FOR SELECT()
+ */
+#ifdef SELECT
+#ifndef FD_SET
+#ifndef TYPE_FD_SET
+#define TYPE_FD_SET unsigned
+typedef TYPE_FD_SET fd_set;
+#endif /* !TYPE_FD_SET */
+
+#define FD_SET(fd,pmask)   (*(pmask)) |=  (1 << (fd))
+#define FD_CLR(fd,pmask)   (*(pmask)) &= ~(1 << (fd))
+#define FD_ZERO(pmask)     (*(pmask)) = 0
+#define FD_ISSET(fd,pmask) (*(pmask) & (1 << (fd)))
+#endif /* !FD_SET */
+#endif /* SELECT */
+
+/*
+ * Macro for setting errno - only define this if you really can do it.
+ */
+#if defined(CAN_SET_ERRNO) || (!defined(errno) && (!defined(VMS) || defined(UCX)))
+#define set_errno(value) errno = value
+#else
+#define set_errno(value)	/* we do not know how */
+#endif
+
+/*
+ * IPv6 support
+ */
+#if defined(HAVE_GETADDRINFO) && defined(ENABLE_IPV6)
+#if defined(HAVE_GAI_STRERROR)
+#define INET6
+#elif defined(_WINDOWS)
+#define INET6
+#ifndef WIN_EX
+#error Define "WIN_EX" in your makefile.
+#endif
+#ifndef _MSC_VER		/* MSVC has this inlined in <ws2tcpip.h> */
+#undef  gai_strerror
+#define gai_strerror(err) w32_strerror (err)
+#endif
+#endif
+#endif /* HAVE_GETADDRINFO && ENABLE_IPV6 */
+
+#ifdef INET6
+typedef struct sockaddr_storage SockA;
+
+#ifdef SIN6_LEN
+#define SOCKADDR_LEN(soc_address) (((struct sockaddr *)&soc_address)->sa_len)
+#else
+#ifndef SA_LEN
+#define SA_LEN(x) (((x)->sa_family == AF_INET6) \
+		   ? sizeof(struct sockaddr_in6) \
+		   : (((x)->sa_family == AF_INET) \
+		      ? sizeof(struct sockaddr_in) \
+		      : sizeof(struct sockaddr)))	/* AF_UNSPEC? */
+#endif
+#define SOCKADDR_LEN(soc_address) (socklen_t) (SA_LEN((struct sockaddr *)&soc_address))
+#endif /* SIN6_LEN */
+#else
+typedef struct sockaddr_in SockA;
+
+#define SOCKADDR_LEN(soc_address) sizeof(soc_address)
+#endif /* INET6 */
+
+#ifndef MAXHOSTNAMELEN
+#define MAXHOSTNAMELEN 128	/* Max label is 63. Should handle 2 of those */
+#endif /* MAXHOSTNAMELEN */
+
+#endif /* TCP_H */
diff --git a/WWW/Library/Implementation/www_wait.h b/WWW/Library/Implementation/www_wait.h
new file mode 100644
index 00000000..3e40e889
--- /dev/null
+++ b/WWW/Library/Implementation/www_wait.h
@@ -0,0 +1,34 @@
+#ifndef WWW_WAIT_H
+#define WWW_WAIT_H 1
+
+#include <HTUtils.h>
+
+#ifdef HAVE_SYS_WAIT_H
+#include <sys/wait.h>
+#endif
+
+#ifndef WEXITSTATUS
+# ifdef HAVE_TYPE_UNIONWAIT
+#  define	WEXITSTATUS(status)	(status.w_retcode)
+# else
+#  define	WEXITSTATUS(status)	(((status) & 0xff00) >> 8)
+# endif
+#endif
+
+#ifndef WTERMSIG
+# ifdef HAVE_TYPE_UNIONWAIT
+#  define	WTERMSIG(status)	(status.w_termsig)
+# else
+#  define	WTERMSIG(status)	((status) & 0x7f)
+# endif
+#endif
+
+#ifndef WSTOPSIG
+# ifdef HAVE_TYPE_UNIONWAIT
+#  define	WSTOPSIG(status)	(status.w_stopsig)
+# else
+#  define	WSTOPSIG(status)	WEXITSTATUS(status)
+# endif
+#endif
+
+#endif /* WWW_WAIT_H */
diff --git a/WWW/Library/djgpp/CommonMakefile b/WWW/Library/djgpp/CommonMakefile
new file mode 100644
index 00000000..87a9306f
--- /dev/null
+++ b/WWW/Library/djgpp/CommonMakefile
@@ -0,0 +1,334 @@
+#	Common Makefile for W3 Library Code
+#	-----------------------------------
+#
+#	(c) CERN 1990, 1991 -- see Copyright.html for conditions
+#
+# This file should be invariant between systems.
+#	DEPENDENCIES NOT COMPLETE @@
+#
+#	make		Compile and link the software (private version)
+#	make install	Copy it into the system (implies make)
+#	make update	Copy installed version into installed version
+#	make uninstall	Unlink installed version from the system
+#	make clean	Remove intermediate files
+#	make cleanall	Remove intremediate files and products
+#
+# Macros required to be defined already for make:
+#
+# CC		The C compiler
+# CFLAGS	Flags for $(CC) -- except the -I which are below
+# LFLAGS	Flags for ld
+# LYFLAGS	Flags for Lynx
+#
+# WWW		The WWW source tree directory
+#
+# Macros needed for make install:
+#
+# LIBDIR	Directory for installed library
+#______________________________________________________________________
+
+#  If this env var is set to something else Some makes will use that instead
+SHELL = /bin/sh
+
+#	.h files are distributed but originally are made from the
+#	self-documenting hypertext files.
+
+.SUFFIXES: .h .html .htm
+.html.h:
+#	- chmod +w $*.h
+#	www -w90 -na -to text/x-c $*.html > $*.h
+#	chmod -w $*.h
+
+# If this is actually run in a subdirectory,
+#
+WWW = ../..
+# WWW = ../..	For [cernlib] build in this directory
+
+WC = $(WWW)/Library
+CMN = $(WWW)/Library/Implementation/
+VMS = $(CMN)vms
+# Where shall we put the objects and built library?
+
+LOB = $(WTMP)/Library/$(WWW_MACH)
+
+# Only needed if HTWAIS.c is to be compiled. Put into your Makefile.include
+#  uncomment these and fill in WAISINC for adding direct wais access
+#  to Lynx.
+#HTWAIS = $(LOB)/HTWAIS.o
+#WAIS = YES
+#WAISINC = -I../../../../freeWAIS-0.202/ir
+#WAISCFLAGS = -DDIRECT_WAIS
+#
+
+# This path, if relative, is taken relative to the directory
+# in which this makefile is, not the pwd.  This screws up the
+# recursive invocation
+# include $(CMN)Version.make
+include $(ABS)$(WWW)/Library/Implementation/Version.make
+
+# XMOsAIC hack is only for server to cope with xmosaic kludge for mmedia
+#
+# add -DNEW_GATEWAY here for the new gateway config stuff
+CFLAGS2 = $(CFLAGS) $(LYFLAGS) $(WAISCFLAGS) -I$(CMN) -DACCESS_AUTH
+
+CERNLIBBIN = $(WWW)/bin
+
+COMMON = $(LOB)/HTParse.o $(LOB)/HTAccess.o $(LOB)/HTTP.o \
+	$(LOB)/HTFile.o	$(LOB)/HTBTree.o $(LOB)/HTFTP.o $(LOB)/HTTCP.o \
+	$(LOB)/SGML.o $(LOB)/HTMLDTD.o $(LOB)/HTChunk.o \
+	$(LOB)/HTPlain.o \
+	$(LOB)/HTMLGen.o \
+	$(LOB)/HTAtom.o $(LOB)/HTAnchor.o $(LOB)/HTStyle.o \
+	$(LOB)/HTList.o $(LOB)/HTString.o $(LOB)/HTDOS.o \
+	$(LOB)/HTRules.o $(LOB)/HTFormat.o  $(LOB)/HTMIME.o \
+	$(LOB)/HTNews.o $(LOB)/HTGopher.o \
+	$(LOB)/HTTelnet.o $(LOB)/HTFinger.o $(LOB)/HTWSRC.o $(HTWAIS) \
+	$(LOB)/HTAAUtil.o $(LOB)/HTAABrow.o \
+	$(LOB)/HTGroup.o  \
+	$(LOB)/HTAAProt.o \
+	$(LOB)/HTAssoc.o  $(LOB)/HTLex.o    $(LOB)/HTUU.o
+
+CFILES = $(CMN)HTParse.c $(CMN)HTAccess.c $(CMN)HTTP.c $(CMN)HTFile.c \
+	$(CMN)HTBTree.c \
+	$(CMN)HTFTP.c	 $(CMN)HTTCP.c	   $(CMN)SGML.c \
+	$(CMN)HTMLDTD.c \
+	$(CMN)HTPlain.c	 \
+	$(CMN)HTDOS.c	 $(CMN)HTMLGen.c \
+	$(CMN)HTChunk.c	 $(CMN)HTAtom.c	  $(CMN)HTAnchor.c $(CMN)HTStyle.c \
+	$(CMN)HTList.c	 $(CMN)HTString.c $(CMN)HTRules.c \
+	$(CMN)HTFormat.c $(CMN)HTMIME.c \
+	$(CMN)HTNews.c	 $(CMN)HTGopher.c $(CMN)HTTelnet.c \
+	$(CMN)HTFinger.c $(CMN)HTWAIS.c	  $(CMN)HTWSRC.c \
+	$(CMN)HTAAUtil.c $(CMN)HTAABrow.c \
+	$(CMN)HTGroup.c  \
+	$(CMN)HTAAProt.c \
+	$(CMN)HTAssoc.c  $(CMN)HTLex.c    $(CMN)HTUU.c
+
+HFILES = $(CMN)HTParse.h $(CMN)HTAccess.h $(CMN)HTTP.h $(CMN)HTFile.h \
+	$(CMN)HTBTree.h $(CMN)HTFTP.h $(CMN)HTTCP.h \
+	$(CMN)SGML.h $(CMN)HTML.h $(CMN)HTMLDTD.h $(CMN)HTChunk.h \
+	$(CMN)HTPlain.h	\
+	$(CMN)HTFWriter.h	$(CMN)HTMLGen.h $(CMN)HTDOS.h \
+	$(CMN)HTStream.h \
+	$(CMN)HTAtom.h $(CMN)HTAnchor.h $(CMN)HTStyle.h \
+	$(CMN)HTList.h \
+	$(CMN)HTString.h $(CMN)HTRules.h \
+	$(CMN)HTFormat.h $(CMN)HTInit.h \
+	$(CMN)HTMIME.h $(CMN)HTNews.h \
+	$(CMN)HTGopher.h \
+	$(CMN)HTUtils.h $(CMN)www_tcp.h $(CMN)HText.h \
+	$(CMN)HTTelnet.h $(CMN)HTFinger.h \
+	$(CMN)HTWAIS.h  $(CMN)HTWSRC.h \
+	$(CMN)HTAAUtil.h $(CMN)HTAABrow.h \
+	$(CMN)HTGroup.h  \
+	$(CMN)HTAAProt.h \
+	$(CMN)HTAssoc.h  $(CMN)HTLex.h    $(CMN)HTUU.h
+
+SOURCES = $(CFILES) $(HFILES) $(CMN)Version.make \
+	$(CMN)CommonMakefile $(CMN)Makefile \
+	$(WWW)/README.txt $(WWW)/Copyright.txt $(WWW)/BUILD $(WWW)/Makefile
+SPECIFIC = $(WWW)/All/*/Makefile.include $(WWW)/All/Implementation/Makefile* \
+	$(VMS)/descrip.mms $(VMS)/build_multinet.com \
+	$(VMS)/COPYING.LIB $(VMS)/setup.com $(VMS)/multinet.opt \
+	$(VMS)/HTVMSUtils.h $(VMS)/HTVMSUtils.c
+
+
+#	Library
+#
+#  On SGI, ranlib is unnecessary and does not exist so we ignore errors
+# for that step
+$(LOB)/libwww.a : $(COMMON)
+	ar r $(LOB)/libwww.a $(COMMON)
+	-ranlib $(LOB)/libwww.a
+
+#	Clean up everything generatable except final products
+clean :
+	rm -f $(LOB)/*.o
+
+#	Clean up everything generatable including final products
+
+cleanall : clean
+	rm -f $(LOB)/libwww.a
+
+#	Install W3 library into system space (not normally necessary)
+
+install : libwww.a
+	if [ ! -r $(LIBDIR) ] mkdir $(LIBDIR)
+	cp libwww.a $(LIBDIR)/libwww.a
+
+uninstall :
+	rm $(LIBDIR)/libwww.a
+
+#		Distribution use only:
+#		----------------------
+
+#	Needs www version 2.4 or later to do this
+inc : $(HFILES)
+	echo Include files generated from hypertext.
+
+binary : /pub/www/bin/$(WWW_MACH)/libwww_$(VC).a
+	echo FTP archive binary Libray $(VC) for $(WWW_MACH) up to date.
+
+
+/pub/www/bin/$(WWW_MACH)/libwww_$(VC).a : libwww.a
+	-mkdir /pub/www/bin/$(WWW_MACH)
+	cp libwww.a /pub/www/bin/$(WWW_MACH)/libwww_$(VC).a
+
+#	Source Distribution:
+
+distribute :  /pub/www/README.txt /pub/www/Copyright.txt
+	(cd $(WWW)/..; WWW=WWW ABS=`pwd`/ make $(MFLAGS) \
+		-f WWW/Library/Implementation/CommonMakefile \
+		/pub/www/src/WWWLibrary_$(VC).tar.Z)
+	(cd ../Implementation; cvs tag \
+	    `sed -e 's/VC = /v/' Version.make | sed -e 's?\.?/?'` )
+	echo Distribution of Library version $(VC) up to date.
+
+/pub/www/src/WWWLibrary_$(VC).tar.Z : $(SOURCES)
+	tar cf /pub/www/src/WWWLibrary_$(VC).tar \
+	    $(SOURCES)  $(SPECIFIC) $(WC)/*/Makefile
+	compress /pub/www/src/WWWLibrary_$(VC).tar
+
+
+#	Hypertext supplied in text format
+#	---------------------------------
+
+$(WWW)/README.txt : $(WWW)/../README.html
+	www -n -p66 http://www.w3.org/hypertext/README.html \
+		> $(WWW)/README.txt
+/pub/www/README.txt : $(WWW)/README.txt
+	cp $(WWW)/README.txt /pub/www/README.txt
+
+$(WWW)/Copyright.txt : $(WWW)/../Copyright.html
+	www -n -p66 http://www.w3.org/hypertext/Copyright.html \
+		> $(WWW)/Copyright.txt
+/pub/www/Copyright.txt : $(WWW)/Copyright.txt
+	cp $(WWW)/Copyright.txt /pub/www/Copyright.txt
+
+#			Common code
+#			-----------
+
+#	Directory for object files
+
+$(LOB)/HTList.o : $(OE) $(CMN)HTList.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTList.c
+
+$(LOB)/HTAnchor.o : $(OE) $(CMN)HTAnchor.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTAnchor.c
+
+$(LOB)/HTFormat.o : $(OE) $(CMN)HTFormat.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTFormat.c
+
+$(LOB)/HTMIME.o : $(OE) $(CMN)HTMIME.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTMIME.c
+
+$(LOB)/HTDOS.o : $(OE) $(CMN)HTDOS.c $(CMN)HTUtils.h $(CMN)../../../userdefs.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTDOS.c
+
+$(LOB)/HTNews.o : $(OE) $(CMN)HTNews.c $(CMN)HTUtils.h $(CMN)HTList.h\
+	 $(CMN)HTMLDTD.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTNews.c
+
+$(LOB)/HTGopher.o : $(OE) $(CMN)HTGopher.c $(CMN)HTUtils.h $(CMN)HTList.h \
+	 $(CMN)HTMLDTD.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTGopher.c
+
+$(LOB)/HTTelnet.o : $(OE) $(CMN)HTTelnet.c $(CMN)HTUtils.h $(CMN)HTTelnet.h $(CMN)../../../userdefs.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTTelnet.c
+
+$(LOB)/HTFinger.o : $(OE) $(CMN)HTFinger.c $(CMN)HTUtils.h $(CMN)HTList.h \
+	$(CMN)HTMLDTD.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTFinger.c
+
+$(LOB)/HTStyle.o : $(OE) $(CMN)HTStyle.c $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTStyle.c
+
+$(LOB)/HTAtom.o : $(OE) $(CMN)HTAtom.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTAtom.c
+
+$(LOB)/HTChunk.o : $(OE) $(CMN)HTChunk.c $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTChunk.c
+
+$(LOB)/HTString.o : $(OE) $(CMN)HTString.c $(CMN)HTUtils.h $(CMN)Version.make
+	$(CC) -c  $(CFLAGS2) -DVC=\"$(VC)\" $(CMN)HTString.c
+
+$(LOB)/HTRules.o : $(OE) $(CMN)HTRules.c $(CMN)HTUtils.h $(CMN)Version.make \
+	 $(CMN)HTAAProt.h
+	$(CC) -c  $(CFLAGS2) -DVC=\"$(VC)\" $(CMN)HTRules.c
+
+$(LOB)/SGML.o : $(OE) $(CMN)SGML.c $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)SGML.c
+
+$(LOB)/HTMLGen.o : $(OE) $(CMN)HTMLGen.c $(CMN)HTUtils.h $(CMN)HTMLDTD.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTMLGen.c
+
+$(LOB)/HTMLDTD.o : $(OE) $(CMN)HTMLDTD.c $(CMN)SGML.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTMLDTD.c
+
+$(LOB)/HTPlain.o : $(OE) $(CMN)HTPlain.c $(CMN)HTPlain.h $(CMN)HTStream.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTPlain.c
+
+$(LOB)/HTWAIS.o : $(OE) $(CMN)HTWAIS.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(CC) -c  $(CFLAGS2) $(WAISINC) $(CMN)HTWAIS.c
+
+$(LOB)/HTWSRC.o : $(OE) $(CMN)HTWSRC.c $(CMN)HTUtils.h $(CMN)HTList.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTWSRC.c
+
+#	Access Authorization
+
+$(LOB)/HTAAUtil.o : $(OE) $(CMN)HTAAUtil.c $(CMN)HTAAUtil.h \
+	 $(CMN)HTUtils.h $(CMN)HTString.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTAAUtil.c
+
+$(LOB)/HTGroup.o : $(OE) $(CMN)HTGroup.c $(CMN)HTGroup.h \
+	 $(CMN)HTAAUtil.h \
+	 $(CMN)HTAssoc.h $(CMN)HTLex.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTGroup.c
+
+$(LOB)/HTAABrow.o : $(OE) $(CMN)HTAABrow.c $(CMN)HTAABrow.h \
+	 $(CMN)HTAAUtil.h $(CMN)HTUU.h \
+	 $(CMN)HTUtils.h $(CMN)HTString.h \
+	 $(CMN)HTParse.h $(CMN)HTList.h \
+	 $(CMN)HTAssoc.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTAABrow.c
+
+$(LOB)/HTAAProt.o : $(OE) $(CMN)HTAAProt.c $(CMN)HTAAProt.h \
+	 $(CMN)HTUtils.h $(CMN)HTAAUtil.h \
+	 $(CMN)HTAssoc.h $(CMN)HTLex.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTAAProt.c
+
+$(LOB)/HTAssoc.o : $(OE) $(CMN)HTAssoc.c $(CMN)HTAssoc.h \
+	$(CMN)HTUtils.h $(CMN)HTString.h $(CMN)HTList.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTAssoc.c
+
+$(LOB)/HTLex.o : $(OE) $(CMN)HTLex.c $(CMN)HTLex.h $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTLex.c
+
+$(LOB)/HTUU.o : $(OE) $(CMN)HTUU.c $(CMN)HTUU.h $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTUU.c
+
+
+#	Communications & Files
+
+$(LOB)/HTTP.o : $(OE) $(CMN)HTTP.c $(CMN)HTUtils.h $(CMN)HTAABrow.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTTP.c
+
+$(LOB)/HTTCP.o : $(OE) $(CMN)HTTCP.c $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTTCP.c
+
+$(LOB)/HTFile.o : $(OE) $(CMN)HTFile.c $(CMN)HTUtils.h \
+	 $(CMN)HTMLDTD.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTFile.c
+
+$(LOB)/HTBTree.o : $(OE) $(CMN)HTBTree.c $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTBTree.c
+
+$(LOB)/HTFTP.o : $(OE) $(CMN)HTFTP.c $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTFTP.c
+
+$(LOB)/HTAccess.o : $(OE)  $(CMN)HTAccess.c $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTAccess.c
+
+$(LOB)/HTParse.o : $(OE) $(CMN)HTParse.c $(CMN)HTUtils.h
+	$(CC) -c  $(CFLAGS2) $(CMN)HTParse.c
+
diff --git a/WWW/Library/djgpp/makefile b/WWW/Library/djgpp/makefile
new file mode 100644
index 00000000..f46ad1fc
--- /dev/null
+++ b/WWW/Library/djgpp/makefile
@@ -0,0 +1,59 @@
+#  Make WWW under unix for a.n.other unix system (bsd)
+#   Use this as a template
+
+# For W3 distribution, machine type for subdirectories
+WWW_MACH = djgpp
+
+# The ASIS repository's name for the machine we are on
+#ASIS_MACH = hardware/os
+
+# Use this option to enable optional and *experimental* color style.
+#ENABLE_COLOR_STYLE = -DUSE_COLOR_STYLE
+
+# comment this line to suppress DIRED support
+DIRED_DEFS = -DDIRED_SUPPORT
+
+CFLAGS= -O2 $(MCFLAGS) $(INTLFLAGS) $(SSLFLAGS) $(SSLINC)
+
+MCFLAGS = \
+ $(DIRED_DEFS) \
+ $(ENABLE_COLOR_STYLE) \
+ -DDISP_PARTIAL \
+ -DDOSPATH \
+ -DUSE_FILE_UPLOAD \
+ -DNOUSERS \
+ -DUSE_SOURCE_CACHE \
+ -DUSE_PRETTYSRC \
+ -DUSE_ZLIB \
+ -I../Implementation \
+ -I../../../src \
+ -I../../.. \
+ -I/djgpp/pdcur26 \
+ -I/djgpp/watt32/inc
+
+LFLAGS =
+CC = gcc
+
+# Uncomment the following to enable Internationalization.
+#INTLFLAGS = -DHAVE_GETTEXT -DHAVE_LIBINTL_H
+
+# Uncomment the following to enable SSL.
+#SSLFLAGS = -DUSE_SSL
+#SSLINC = -I/dev/env/DJDIR/include/openssl
+
+# Directory for installed binary:
+!BINDIR = /usr/local/bin
+
+# Where is the W3 object library to be installed (not normally done)?
+LIBDIR = $(WWW)/Library/Implementation/$(WWW_MACH)
+
+#_________________ OK if normal W3 distribution
+# Where is the WWW source root?
+WWW = ../..
+
+#  Where should temporary (object) files go?
+WTMP = ../..
+
+include $(WWW)/Library/Implementation/Version.make
+#include $(WWW)/Library/Implementation/CommonMakefile
+include ./CommonMakefile
diff --git a/WWW/Library/djgpp/makefile.sla b/WWW/Library/djgpp/makefile.sla
new file mode 100644
index 00000000..79e87b88
--- /dev/null
+++ b/WWW/Library/djgpp/makefile.sla
@@ -0,0 +1,40 @@
+#  Make WWW under unix for a.n.other unix system (bsd)
+#   Use this as a template
+
+# For W3 distribution, machine type for subdirectories
+WWW_MACH = djgpp
+
+# The ASIS repository's name for the machine we are on
+#ASIS_MACH = hardware/os
+
+CFLAGS = -O2 -DUSE_SLANG -DUSE_ZLIB -DDOSPATH -DNOUSERS -DDISP_PARTIAL \
+-DDIRED_SUPPORT -DUSE_SOURCE_CACHE -DUSE_PRETTYSRC \
+-I../Implementation \
+-I/dev/env/DJDIR/watt32/inc \
+-I../../../src \
+-I../../.. $(SLANGINC) $(INTLFLAGS) $(SSLFLAGS) $(SSLINC)
+
+LFLAGS =
+CC = gcc
+#INTLFLAGS = -DHAVE_GETTEXT -DHAVE_LIBINTL_H
+
+# Uncomment the following to enable SSL.
+#SSLFLAGS = -DUSE_SSL
+#SSLINC = -I/dev/env/DJDIR/include/openssl
+
+# Directory for installed binary:
+!BINDIR = /usr/local/bin
+
+# Where is the W3 object library to be installed (not normally done)?
+LIBDIR = $(WWW)/Library/Implementation/$(WWW_MACH)
+
+#_________________ OK if normal W3 distribution
+# Where is the WWW source root?
+WWW = ../..
+
+#  Where should temporary (object) files go?
+WTMP = ../..
+
+include $(WWW)/Library/Implementation/Version.make
+#include $(WWW)/Library/Implementation/CommonMakefile
+include ./CommonMakefile
diff --git a/WWW/Library/vms/COPYING.LIB b/WWW/Library/vms/COPYING.LIB
new file mode 100644
index 00000000..eb685a5e
--- /dev/null
+++ b/WWW/Library/vms/COPYING.LIB
@@ -0,0 +1,481 @@
+		  GNU LIBRARY GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1991 Free Software Foundation, Inc.
+                    675 Mass Ave, Cambridge, MA 02139, USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the library GPL.  It is
+ numbered 2 because it goes with version 2 of the ordinary GPL.]
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Library General Public License, applies to some
+specially designated Free Software Foundation software, and to any
+other libraries whose authors decide to use it.  You can use it for
+your libraries, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if
+you distribute copies of the library, or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link a program with the library, you must provide
+complete object files to the recipients so that they can relink them
+with the library, after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  Our method of protecting your rights has two steps: (1) copyright
+the library, and (2) offer you this license which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  Also, for each distributor's protection, we want to make certain
+that everyone understands that there is no warranty for this free
+library.  If the library is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original
+version, so that any problems introduced by others will not reflect on
+the original authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that companies distributing free
+software will individually obtain patent licenses, thus in effect
+transforming the program into proprietary software.  To prevent this,
+we have made it clear that any patent must be licensed for everyone's
+free use or not licensed at all.
+
+  Most GNU software, including some libraries, is covered by the ordinary
+GNU General Public License, which was designed for utility programs.  This
+license, the GNU Library General Public License, applies to certain
+designated libraries.  This license is quite different from the ordinary
+one; be sure to read it in full, and don't assume that anything in it is
+the same as in the ordinary license.
+
+  The reason we have a separate public license for some libraries is that
+they blur the distinction we usually make between modifying or adding to a
+program and simply using it.  Linking a program with a library, without
+changing the library, is in some sense simply using the library, and is
+analogous to running a utility program or application program.  However, in
+a textual and legal sense, the linked executable is a combined work, a
+derivative of the original library, and the ordinary General Public License
+treats it as such.
+
+  Because of this blurred distinction, using the ordinary General
+Public License for libraries did not effectively promote software
+sharing, because most developers did not use the libraries.  We
+concluded that weaker conditions might promote sharing better.
+
+  However, unrestricted linking of non-free programs would deprive the
+users of those programs of all benefit from the free status of the
+libraries themselves.  This Library General Public License is intended to
+permit developers of non-free programs to use free libraries, while
+preserving your freedom as a user of such programs to change the free
+libraries that are incorporated in them.  (We have not seen how to achieve
+this as regards changes in header files, but we have achieved it as regards
+changes in the actual functions of the Library.)  The hope is that this
+will lead to faster development of free libraries.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, while the latter only
+works together with the library.
+
+  Note that it is possible for a library to be covered by the ordinary
+General Public License rather than by this special one.
+
+		  GNU LIBRARY GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library which
+contains a notice placed by the copyright holder or other authorized
+party saying it may be distributed under the terms of this Library
+General Public License (also called "this License").  Each licensee is
+addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+  
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+  6. As an exception to the Sections above, you may also compile or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Accompany the work with a written offer, valid for at
+    least three years, to give the same user the materials
+    specified in Subsection 6a, above, for a charge no more
+    than the cost of performing this distribution.
+
+    c) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    d) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the source code distributed need not include anything that is normally
+distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded.  In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Library General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+			    NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
+
+     Appendix: How to Apply These Terms to Your New Libraries
+
+  If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change.  You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+  To apply these terms, attach the following notices to the library.  It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the library's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This library is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Library General Public
+    License as published by the Free Software Foundation; either
+    version 2 of the License, or (at your option) any later version.
+
+    This library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+    Library General Public License for more details.
+
+    You should have received a copy of the GNU Library General Public
+    License along with this library; if not, write to the Free
+    Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the
+  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+  <signature of Ty Coon>, 1 April 1990
+  Ty Coon, President of Vice
+
+That's all there is to it!
diff --git a/WWW/Library/vms/descrip.mms b/WWW/Library/vms/descrip.mms
new file mode 100644
index 00000000..fe275bb2
--- /dev/null
+++ b/WWW/Library/vms/descrip.mms
@@ -0,0 +1,206 @@
+!	Make WorldWideWeb LIBRARY under VMS
+!       =======================================================
+!
+! History:
+!  14 Aug 91 (TBL)	Reconstituted
+!  25 Jun 92 (JFG)	Added TCP socket emulation over DECnet
+!  07 Sep 93 (MD)	Remade for version 2.09a
+!  10 Dec 93 (FM)	Upgrade for version 2.14 with Lynx v2.1
+!  13 Dec 93 (FM)	Added conditional compilations for VAXC vs. DECC
+!			(MMS can't handle a MODULE list as large as the
+!			 WWWLibrary has become, so this just illustrates
+!			 how you'd set it up if it could 8-).
+!  26 Oct 94 (RLD)	Updated to work with VAX/VMS v5.5-1 and AXP/VMS v6.1
+!  31 Oct 94 (RLD)      Updated for Lynx v2.3.4, supporting OpenCMU and
+!                       TCPWare
+!  18 Nov 94 (FM)	Updated for SOCKETSHR/NETLIB
+!  07 Dec 94 (FM)	Updated for DECC/VAX, VAXC/VAX and DECC/AXP
+!  03 May 95 (FM)	Include /NoMember for DECC (not the default on AXP,
+!			and the code assumes byte alignment).
+!  07 Jul 95 (FM)	Added GNUC support.
+!  15 Sep 06 (TD)	Cleanup...
+!
+! Bugs:
+!	The dependencies are anything but complete - they were
+!	just enough to allow the files to be compiled.
+!
+! Instructions:
+! 	Copy [WWW.LIBRARY.VMS]DESCRIP.MMS into [WWW.LIBRARY.IMPLEMENTATION]
+!	Use the correct command line for your TCP/IP implementation,
+!	inside the IMPLEMENTATION directory:
+!
+!	$ MMS/MACRO=(MULTINET=1)		for VAXC - MultiNet
+!	$ MMS/MACRO=(WIN_TCP=1)			for VAXC - Wollongong TCP/IP
+!	$ MMS/MACRO=(UCX=1)			for VAXC - UCX
+!	$ MMS/MACRO=(CMU_TCP=1)			for VAXC - OpenCMU TCP/IP
+!	$ MMS/MACRO=(SOCKETSHR_TCP=1)		for VAXC - SOCKETSHR/NETLIB
+!	$ MMS/MACRO=(TCPWARE=1)			for VAXC - TCPWare TCP/IP
+!	$ MMS/MACRO=(DECNET=1)		for VAXC - socket emulation over DECnet
+!
+!	$ MMS/MACRO=(MULTINET=1,DEC_C=1)	for DECC - MultiNet
+!	$ MMS/MACRO=(WIN_TCP=1,DEC_C=1)		for DECC - Wollongong TCP/IP
+!	$ MMS/MACRO=(UCX=1,DEC_C=1)		for DECC - UCX
+!	$ MMS/MACRO=(CMU_TCP=1,DEC_C=1)		for DECC - OpenCMU TCP/IP
+!	$ MMS/MACRO=(SOCKETSHR_TCP=1,DEC_C=1)	for DECC - SOCKETSHR/NETLIB
+!	$ MMS/MACRO=(TCPWARE=1,DEC_C=1)		for DECC - TCPWare TCP/IP
+!	$ MMS/MACRO=(DECNET=1,DEC_C=1)	for DECC - socket emulation over DECnet
+!
+!	$ MMS/MACRO=(MULTINET=1,GNU_C=1)	for GNUC - MultiNet
+!	$ MMS/MACRO=(WIN_TCP=1,GNU_C=1)		for GNUC - Wollongong TCP/IP
+!	$ MMS/MACRO=(UCX=1,GNU_C=1)		for GNUC - UCX
+!	$ MMS/MACRO=(CMU_TCP=1,GNU_C=1)		for GNUC - OpenCMU TCP/IP
+!	$ MMS/MACRO=(SOCKETSHR_TCP=1,GNU_C=1)	for GNUC - SOCKETSHR/NETLIB
+!	$ MMS/MACRO=(TCPWARE=1,GNU_C=1)		for GNUC - TCPWare TCP/IP
+!	$ MMS/MACRO=(DECNET=1,GNU_C=1)	for GNUC - socket emulation over DECnet
+!
+! To compile with debug mode:
+!
+!	$ MMS/MACRO=(MULTINET=1, DEBUG=1)	for Multinet
+!
+!
+! If you are on HEP net and want to build using the really latest sources on
+! PRIAM:: then define an extra macro U=PRIAM::, e.g.
+!
+!	$ MMS/MACRO=(MULTINET=1, U=PRIAM::)	for Multinet
+!
+! This will copy the sources from PRIAM as necessary. You can also try
+!
+!	$ MMS/MACRO=(U=PRIAM::) descrip.mms
+!
+! to update this file.
+
+
+.include Version.make
+
+! debug flags
+.ifdef DEBUG
+DEBUGFLAGS = /Debug /NoOptimize
+.endif
+
+INCLUDES = /Include=([-.Implementation],[---.src],[---])
+
+! defines valid for all compilations
+EXTRADEFINES = ACCESS_AUTH, VC="""$(VC)"""
+
+.ifdef WIN_TCP
+NETWORK_DEF = WIN_TCP
+.else
+.ifdef CMU_TCP
+NETWORK_DEF = CMU_TCP
+.else
+.ifdef SOCKETSHR_TCP
+NETWORK_DEF = SOCKETSHR_TCP
+.else
+.ifdef UCX
+NETWORK_DEF = UCX
+.else
+.ifdef TCPWARE
+NETWORK_DEF = TCPWARE,UCX
+.else
+.ifdef DECnet
+NETWORK_DEF = DECNET
+.else !  Default to MultiNet
+NETWORK_DEF = MULTINET
+.endif !  DECnet
+.endif !  TCPWARE
+.endif !  UCX
+.endif !  SOCKETSHR_TCP
+.endif !  CMU_TCP
+.endif !  WIN_TCP
+
+! DECC flags for all compilations
+.ifdef DEC_C
+MY_CFLAGS = /decc/Prefix=All /NoMember /Warning=(disable=implicitfunc) $(INCLUDES)
+.else
+MY_CFLAGS = $(INCLUDES)
+.endif
+
+CFLAGS = $(DEBUGFLAGS) $(MY_CFLAGS) /Define=($(EXTRADEFINES), $(NETWORK_DEF))
+
+.ifdef GNU_C
+CC = gcc
+.endif
+
+!HEADERS = HTUtils.h, HTStream.h, www_tcp.h, HText.h -
+!        HTParse.h, HTAccess.h, HTTP.h, HTFile.h, -
+!	HTBTree.h, HTTCP.h, SGML.h, -
+!	HTML.h, HTMLDTD.h, HTChunk.h, HTPlain.h, -
+!	HTFwriter.h, HTMLGen.h, -
+!	HTAtom.h, HTAnchor.h, HTStyle.h, -
+!	HTList.h, HTString.h, HTAlert.h, -
+!	HTRules.h, HTFormat.h, HTInit.h, -
+!	HTMIME.h, HTTelnet.h, -
+!	HTFinger.h, HTAABrow.h, -
+!	HTAAProt.h, HTAAUtil.h, -
+!	HTAssoc.h, HTUU.h, -
+!	HTVMSUtils.h,
+
+MODULES = HTParse, HTAccess, HTTP, HTFile, HTBTree, HTFTP, HTTCP, HTString, -
+	SGML, HTMLDTD, HTChunk, HTPlain, HTMLGen, -
+	HTAtom, HTAnchor, HTStyle, HTList, HTRules, HTFormat, -
+	HTMIME, HTNews, HTGopher, HTTelnet, HTFinger, -
+	HTWSRC, HTAAUtil, HTAABrow, HTGroup, -
+	HTAAProt, HTAssoc, HTLex, HTUU, HTVMSUtils, -
+	HTWAIS, HTVMS_WaisUI, HTVMS_WaisProt
+
+!.ifdef DECNET  ! Strip FTP, Gopher, News, WAIS
+!HEADERS = $(COMMON_HEADERS)
+!MODULES = $(COMMON_MODULES)
+!.else
+!HEADERS = $(COMMON_HEADERS), $(EXTRA_HEADERS), $(WAIS_HEADER)
+!MODULES = $(COMMON_MODULES), $(EXTRA_MODULES), $(WAIS_MODULE)
+!.endif
+
+!___________________________________________________________________
+! WWW Library
+
+!library : $(HEADERS)  wwwlib($(MODULES))
+library : wwwlib($(MODULES))
+ 	@ Continue
+
+build_www.com : descrip.mms
+	$(MMS) /NoAction /From_Sources /Output = build_www.com /Macro = ($(NETWORK_DEF)=1)
+
+clean :
+	- Set Protection = (Owner:RWED) *.*;-1
+	- Purge /NoLog /NoConfirm
+	- Delete /NoLog /NoConfirm *.obj;,*.olb;
+
+!___________________________________________________________________
+! Simple Dependencies
+
+
+!HTString.obj :	HTString.c HTString.h www_tcp.h Version.make HTUtils.h
+!HTAtom.obj :	HTAtom.c HTAtom.h HTUtils.h HTString.h
+!HTChunk.obj :	HTChunk.c HTChunk.h HTUtils.h
+!HTList.obj :	HTList.c HTList.h HTUtils.h
+!HTBTree.obj :	HTBTree.c HTBTree.h HTUtils.h
+!HTMLDTD.obj :	HTMLDTD.c HTMLDTD.h SGML.h
+!HTPlain.obj :	HTPlain.c HTPlain.h HTStream.h
+!HTMLGen.obj :	HTMLGen.c HTMLGen.h HTUtils.h HTMLDTD.h
+!HTRules.obj :	HTRules.c HTRules.h HTUtils.h Version.make
+!HTMIME.obj :	HTMIME.c HTMIME.h HTUtils.h HTList.h
+!HTTelnet.obj :	HTTelnet.c HTTelnet.h HTUtils.h
+!HTWAIS.obj :	HTWAIS.c HTWAIS.h HTUtils.h HTList.h
+!HTWSRC.obj :	HTWSRC.c HTWSRC.h HTUtils.h HTList.h
+!HTAccess.obj :	HTAccess.c HTAccess.h HTUtils.h
+!HTAnchor.obj :	HTAnchor.c HTAnchor.h HTUtils.h HTList.h
+!HTFile.obj :	HTFile.c HTFile.h HTUtils.h HTVMSUtils.h
+!HTFormat.obj :	HTFormat.c HTFormat.h HTUtils.h HTML.h SGML.h HTPlain.h HTMLGen.h HTList.h
+!HTFTP.obj :	HTFTP.c HTFTP.h HTUtils.h
+!HTGopher.obj :	HTGopher.c HTGopher.h HTUtils.h HTList.h
+!HTFinger.obj :	HTFinger.c HTFinger.h HTUtils.h HTList.h
+!HTNews.obj :	HTNews.c HTNews.h HTUtils.h HTList.h
+!HTParse.obj :	HTParse.c HTParse.h HTUtils.h
+!HTStyle.obj :	HTStyle.c HTStyle.h HTUtils.h
+!HTTCP.obj :	HTTCP.c HTTCP.h HTUtils.h www_tcp.h
+!HTTP.obj :	HTTP.c HTTP.h HTUtils.h
+!SGML.obj :	SGML.c SGML.h HTUtils.h
+!HTAABrow.obj :	HTAABrow.c HTUtils.h
+!HTAAProt.obj :	HTAAProt.c HTUtils.h
+!HTAAUtil.obj :	HTAAUtil.c HTUtils.h
+!HTGroup.obj :	HTGroup.c HTUtils.h
+!HTLex.obj :	HTLex.c HTUtils.h
+!HTAssoc.obj :	HTAssoc.c HTAssoc.h HTAAUtil.h HTString.h
+!HTUU.obj :	HTUU.c HTUU.h HTUtils.h
+!HTVMSUtils.obj :	HTVMSUtils.c HTVMSUtils.h HTUtils.h
diff --git a/WWW/Library/vms/libmake.com b/WWW/Library/vms/libmake.com
new file mode 100644
index 00000000..6ef7c077
--- /dev/null
+++ b/WWW/Library/vms/libmake.com
@@ -0,0 +1,233 @@
+$ v0 = 0
+$ v = f$verify(v0)
+$! $LynxId: libmake.com,v 1.15 2011/05/23 23:58:48 tom Exp $
+$!			LIBMAKE.COM
+$!
+$!   Command file to build the WWWLibrary on VMS systems.
+$!
+$!   11-Jul-2010	Ch. Gartmann
+$!	add support for "MULTINETUCX"
+$!   01-Jul-2007	T.Dickey
+$!	add support for "TCPIP" (TCPIP Services)
+$!   23-Oct-2004	T.Dickey
+$!	cleanup, remove duplication, etc.
+$!   08-Oct-1997	F.Macrides		macrides@sci.wfeb.edu
+$!	Added comments and minor tweaks for convenient addition of
+$!	compiler definitions and compiler and linker options.
+$!   26-Jul-1995	F.Macrides		macrides@sci.wfeb.edu
+$!	Adding support for GNUC.
+$!   03-May-1995	F.Macrides		macrides@sci.wfeb.edu
+$!	Include /nomember for compilations with DECC.  It's not the
+$!	default on AXP and the code assumes byte alignment.
+$!   07-Dec-1994	F.Macrides		macrides@sci.wfeb.edu
+$!	Updated for DECC/VAX, VAXC/VAX and DECC/AXP
+$!   03-NOV-1994	A.Harper		A.Harper@kcl.ac.uk
+$!	Mods to support SOCKETSHR/NETLIB and add a /DEBUG/NOOPT option
+$!   02-Jun-1994	F.Macrides		macrides@sci.wfeb.edu
+$!	Mods to support TCPWare (To use non-blocking connects, you need
+$!	the DRIVERS_V405B.INC patch from FTP.PROCESS.COM for TCPware for
+$!	OpenVMS Version 4.0-5, or a higher version of TCPWare, which will
+$!	have that bug in the TCPDRIVER fixed.  Otherwise, add NO_IOCTL to
+$!	the /define=(...) list.)
+$!   20-May-1994	Andy Harper		A.Harper@bay.cc.kcl.ac.uk
+$!	Added support for the CMU TCP/IP transport
+$!   13-Dec-1993	F.Macrides		macrides@sci.wfeb.edu
+$!	Mods for conditional compilations with VAXC versus DECC
+$!   10-Dec-1993	F.Macrides		macrides@sci.wfeb.edu
+$!	Initial version, for WWWLibrary v2.14 with Lynx v2.1
+$!
+$ ON CONTROL_Y THEN GOTO CLEANUP
+$ ON ERROR THEN GOTO CLEANUP
+$!
+$!	Compiler definitions can be added here as a comma separated
+$!	list with a lead comma, e.g., ",HAVE_FOO_H,DO_BLAH".  They
+$!	will apply only to the libwww-FM modules. - FM
+$!
+$ extra_defs = ",ACCESS_AUTH"
+$!
+$!	Include-paths can be added here as a comma separated
+$!	list with a lead comma, e.g., ",foo".
+$!
+$ extra_incs = ""
+$!
+$ extra_libs = ""
+$!
+$!	If no TCP/IP agent is specified (as the first argument),
+$!	prompt for a number from the list.   Note that the agent
+$!	must be the first argument if the debugger mode is to be
+$!	set via a second argument (see below). - FM
+$!
+$ agent = 0
+$ IF P1 .EQS. ""
+$ THEN
+$ 	write sys$output "Acceptable TCP/IP agents are"
+$ 	write sys$output " [1] MultiNet (default)"
+$ 	write sys$output " [2] UCX"
+$ 	write sys$output " [3] WIN_TCP"
+$	write sys$output " [4] CMU_TCP"
+$	write sys$output " [5] SOCKETSHR_TCP"
+$	write sys$output " [6] TCPWARE"
+$ 	write sys$output " [7] DECNET"
+$ 	write sys$output " [8] TCPIP"
+$ 	write sys$output " [9] Multinet UCX emulation"
+$ 	read sys$command/prompt="Agent [1,2,3,4,5,6,7,8,9] (RETURN = [1]) " agent
+$ ENDIF
+$ if agent .eq. 1 .or. agent .eqs. "" .or. p1 .eqs. "MULTINET" then -
+    transport = "MULTINET"
+$ if agent .eq. 2 .or. p1 .eqs. "UCX"           then transport = "UCX"
+$ if agent .eq. 3 .or. p1 .eqs. "WIN_TCP"       then transport = "WIN_TCP"
+$ if agent .eq. 4 .or. p1 .eqs. "CMU_TCP"       then transport = "CMU_TCP"
+$ if agent .eq. 5 .or. p1 .eqs. "SOCKETSHR_TCP" then transport = "SOCKETSHR_TCP"
+$ if agent .eq. 6 .or. p1 .eqs. "TCPWARE"       then transport = "TCPWARE"
+$ if agent .eq. 7 .or. p1 .eqs. "DECNET"        then transport = "DECNET"
+$ if agent .eq. 8 .or. p1 .eqs. "TCPIP"         then transport = "TCPIP"
+$ IF agent .EQ. 9 .OR. P1 .EQS. "MULTINETUCX"
+$    THEN
+$    transport = "UCX"
+$    extra_defs = extra_defs + ",MUCX"
+$ ENDIF
+$!
+$ if transport .eqs. "SOCKETSHR_TCP" then extra_defs = extra_defs + ",_DECC_V4_SOURCE"
+$ if transport .eqs. "TCPIP"         then extra_defs = extra_defs + ",TCPIP_SERVICES"
+$ if transport .eqs. "TCPWARE"       then extra_defs = extra_defs + ",UCX"
+$!
+$  if option .eqs. "TCPIP"
+$  then
+$     if f$trnlnm("TCPIP$IPC_SHR") .eqs. "" then define TCPIP$IPC_SHR SYS$LIBRARY:TCPIP$IPC_SHR
+$  endif
+$!
+$ if P2 .nes. ""
+$ then
+$   count_parm = 0
+$ parse_p2:
+$   value_parm = f$element('count_parm, ",", "''p2'")
+$   if value_parm .nes. ","
+$   then
+$      if value_parm .eqs. "BZLIB"
+$      then
+$         write sys$output "** adding BZlib to build."
+$         extra_defs = extra_defs + ",USE_BZLIB"
+$         extra_incs = extra_incs + "," + BZLIB_INC
+$         extra_libs = extra_libs + "," + BZLIB_LIB + "libbz2/LIB"
+$      endif
+$      if value_parm .eqs. "SLANG"
+$      then
+$         write sys$output "** adding SLang to build."
+$         extra_defs = extra_defs + ",USE_SLANG"
+$         extra_incs = extra_incs + "," + SLANG_INC
+$         extra_libs = extra_libs + "," + SLANG_LIB + "slang.olb/lib"
+$      endif
+$      if value_parm .eqs. "SSL"
+$      then
+$         write sys$output "** adding SSL to build."
+$         IF F$TYPE( ssl_lib ) .EQS. "" THEN ssl_lib = F$TRNLNM("SSLLIB")
+$         IF F$TYPE( ssl_inc ) .EQS. "" THEN ssl_inc = F$TRNLNM("SSLINCLUDE")
+$         extra_defs = extra_defs + ",USE_SSL,USE_OPENSSL_INCL"
+$         extra_libs = extra_libs + "," + SSL_LIB + "libssl/LIB," + SSL_LIB + "libcrypto/LIB"
+$!
+$!	The "#include <openssl/ssl.h>" requires a logical variable "openssl".
+$!
+$         define/nolog openssl 'SSL_INC
+$      endif
+$      if value_parm .eqs. "ZLIB"
+$      then
+$         write sys$output "** adding Zlib to build."
+$         extra_defs = extra_defs + ",USE_ZLIB"
+$         extra_incs = extra_incs + "," + ZLIB_INC
+$         extra_libs = extra_libs + "," + ZLIB_LIB + "libz/LIB"
+$      endif
+$      count_parm = count_parm + 1
+$      goto parse_p2
+$   endif
+$ endif
+$!
+$!	Compiler options can be specified here.  If there was
+$!	a second argument (with any value), then debugger mode
+$!	with no optimization will be specified as well. - FM
+$!
+$ cc_opts = ""
+$ if p3 .nes. "" then cc_opts = cc_opts + "/DEBUG/NOOPT"
+$!
+$ all_defs = transport + extra_defs
+$ all_incs = "[-.Implementation],[---.src],[---.src.chrtrans],[---]" + extra_incs
+$!
+$ IF f$getsyi("ARCH_NAME") .eqs. "Alpha" .or. -
+     f$getsyi("ARCH_NAME") .eqs. "IA64" .or. -
+     f$trnlnm("VAXCMSG") .eqs. "DECC$MSG" .or. -
+     f$trnlnm("DECC$CC_DEFAULT") .eqs. "/DECC" .or. -
+     f$trnlnm("DECC$CC_DEFAULT") .eqs. "/VAXC"
+$ THEN
+$! DECC:
+$  If transport .eqs. "UCX" .or. transport .eqs. "TCPWARE"
+$  Then
+$    cc := cc/decc/prefix=all /nomember 'cc_opts'-
+	  /warning=(disable=implicitfunc)-
+	  /DEFINE=('all_defs) -
+	  /INCLUDE=('all_incs)
+$  Else
+$    if transport .eqs. "MULTINET" then -
+	extra_defs = extra_defs + ",_DECC_V4_SOURCE,__SOCKET_TYPEDEFS"
+$    cc := cc/decc/prefix=all /nomember 'cc_opts'-
+	  /warning=(disable=implicitfunc)-
+	  /DEFINE=('all_defs) -
+	  /INCLUDE=('all_incs)
+$  EndIf
+$ ELSE
+$  IF f$search("gnu_cc:[000000]gcclib.olb") .nes. ""
+$  THEN
+$! GNUC:
+$    cc := gcc/DEFINE=('all_defs) 'cc_opts' /INCLUDE=('all_incs)
+$  ELSE
+$! VAXC:
+$    cc := cc/DEFINE=('all_defs) 'cc_opts' /INCLUDE=('all_incs)
+$  ENDIF
+$ ENDIF
+$ v1 = f$verify(1)
+$ show sym cc
+$ cc [-.Implementation]HTString.c
+$ cc [-.Implementation]HTParse.c
+$ cc [-.Implementation]HTAccess.c
+$ cc [-.Implementation]HTTP.c
+$ cc [-.Implementation]HTFile.c
+$ cc [-.Implementation]HTBTree.c
+$ cc [-.Implementation]HTFTP.c
+$ cc [-.Implementation]HTTCP.c
+$ cc [-.Implementation]SGML.c
+$ cc [-.Implementation]HTMLDTD.c
+$ cc [-.Implementation]HTChunk.c
+$ cc [-.Implementation]HTPlain.c
+$ cc [-.Implementation]HTMLGen.c
+$ cc [-.Implementation]HTAtom.c
+$ cc [-.Implementation]HTAnchor.c
+$ cc [-.Implementation]HTStyle.c
+$ cc [-.Implementation]HTList.c
+$ cc [-.Implementation]HTRules.c
+$ cc [-.Implementation]HTFormat.c
+$ cc [-.Implementation]HTMIME.c
+$ cc [-.Implementation]HTNews.c
+$ cc [-.Implementation]HTGopher.c
+$ cc [-.Implementation]HTTelnet.c
+$ cc [-.Implementation]HTFinger.c
+$ cc [-.Implementation]HTWSRC.c
+$ cc [-.Implementation]HTAAUtil.c
+$ cc [-.Implementation]HTAABrow.c
+$ cc [-.Implementation]HTGroup.c
+$ cc [-.Implementation]HTAAProt.c
+$ cc [-.Implementation]HTAssoc.c
+$ cc [-.Implementation]HTLex.c
+$ cc [-.Implementation]HTUU.c
+$ cc [-.Implementation]HTVMSUtils.c
+$ cc [-.Implementation]HTWAIS.c
+$ cc [-.Implementation]HTVMS_WaisUI.c
+$ cc [-.Implementation]HTVMS_WaisProt.c
+$!
+$ result = "[-.Implementation]WWWLib_''transport'.olb"
+$ If f$search("''result'") .eqs. "" Then -
+    LIBRARY/Create 'result
+$ LIBRARY/Replace 'result *.obj
+$ Delete/nolog/noconf *.obj;*
+$!
+$ v1 = f$verify(v0)
+$ CLEANUP:
+$    v1 = f$verify(v)
+$exit
diff --git a/aclocal.m4 b/aclocal.m4
new file mode 100644
index 00000000..f61c6399
--- /dev/null
+++ b/aclocal.m4
@@ -0,0 +1,6840 @@
+dnl $LynxId: aclocal.m4,v 1.190 2012/01/17 01:00:06 tom Exp $
+dnl Macros for auto-configure script.
+dnl by T.E.Dickey <dickey@invisible-island.net>
+dnl and Jim Spath <jspath@mail.bcpl.lib.md.us>
+dnl and Philippe De Muyter <phdm@macqel.be>
+dnl
+dnl Created: 1997/01/28
+dnl Updated: 2011/06/12
+dnl
+dnl The autoconf used in Lynx development is GNU autoconf 2.13 or 2.52, patched
+dnl by Thomas Dickey.  See your local GNU archives, and this URL:
+dnl http://invisible-island.net/autoconf/autoconf.html
+dnl
+dnl ---------------------------------------------------------------------------
+dnl
+dnl Copyright 1997-2011,2012 by Thomas E. Dickey
+dnl
+dnl Permission to use, copy, modify, and distribute this software and its
+dnl documentation for any purpose and without fee is hereby granted,
+dnl provided that the above copyright notice appear in all copies and that
+dnl both that copyright notice and this permission notice appear in
+dnl supporting documentation, and that the name of the above listed
+dnl copyright holder(s) not be used in advertising or publicity pertaining
+dnl to distribution of the software without specific, written prior
+dnl permission.
+dnl
+dnl THE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD
+dnl TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+dnl AND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE
+dnl LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+dnl WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+dnl ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+dnl OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+dnl
+dnl ---------------------------------------------------------------------------
+dnl A few macros (the AM_xxx ones) are originally from gettext 0.10.35 (but
+dnl are modified), and are part of this file due to mechanical limitations of
+dnl autoconf.
+dnl ---------------------------------------------------------------------------
+dnl ---------------------------------------------------------------------------
+dnl AM_GNU_GETTEXT version: 12 updated: 2010/06/19 07:02:11
+dnl --------------
+dnl Usage: Just like AM_WITH_NLS, which see.
+AC_DEFUN([AM_GNU_GETTEXT],
+  [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+   AC_REQUIRE([AC_PROG_CC])dnl
+   AC_REQUIRE([AC_CANONICAL_HOST])dnl
+   AC_REQUIRE([AC_PROG_RANLIB])dnl
+   AC_REQUIRE([AC_ISC_POSIX])dnl
+   AC_REQUIRE([AC_HEADER_STDC])dnl
+   AC_REQUIRE([AC_C_CONST])dnl
+   AC_REQUIRE([AC_C_INLINE])dnl
+   AC_REQUIRE([AC_TYPE_OFF_T])dnl
+   AC_REQUIRE([AC_TYPE_SIZE_T])dnl
+   AC_REQUIRE([AC_FUNC_ALLOCA])dnl
+   AC_REQUIRE([AC_FUNC_MMAP])dnl
+   AC_REQUIRE([jm_GLIBC21])dnl
+
+   AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
+stdlib.h string.h unistd.h sys/param.h])
+   AC_CHECK_FUNCS([feof_unlocked fgets_unlocked getcwd getegid geteuid \
+getgid getuid mempcpy munmap putenv setenv setlocale stpcpy strchr strcasecmp \
+strdup strtoul tsearch __argz_count __argz_stringify __argz_next])
+
+   AM_ICONV
+   AM_LANGINFO_CODESET
+   AM_LC_MESSAGES
+   AM_WITH_NLS([$1],[$2],[$3],[$4])
+
+   if test "x$CATOBJEXT" != "x"; then
+     if test "x$ALL_LINGUAS" = "x"; then
+       LINGUAS=
+     else
+       AC_MSG_CHECKING(for catalogs to be installed)
+       NEW_LINGUAS=
+       for presentlang in $ALL_LINGUAS; do
+         useit=no
+         for desiredlang in ${LINGUAS-$ALL_LINGUAS}; do
+           # Use the presentlang catalog if desiredlang is
+           #   a. equal to presentlang, or
+           #   b. a variant of presentlang (because in this case,
+           #      presentlang can be used as a fallback for messages
+           #      which are not translated in the desiredlang catalog).
+           case "$desiredlang" in
+             "$presentlang"*) useit=yes;;
+           esac
+         done
+         if test $useit = yes; then
+           NEW_LINGUAS="$NEW_LINGUAS $presentlang"
+         fi
+       done
+       LINGUAS=$NEW_LINGUAS
+       AC_MSG_RESULT($LINGUAS)
+     fi
+
+     dnl Construct list of names of catalog files to be constructed.
+     if test -n "$LINGUAS"; then
+       for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
+     fi
+   fi
+
+   dnl Enable libtool support if the surrounding package wishes it.
+   INTL_LIBTOOL_SUFFIX_PREFIX=ifelse([$1], use-libtool, [l], [])
+   AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl AM_ICONV version: 12 updated: 2007/07/30 19:12:03
+dnl --------
+dnl Inserted as requested by gettext 0.10.40
+dnl File from /usr/share/aclocal
+dnl iconv.m4
+dnl ====================
+dnl serial AM2
+dnl
+dnl From Bruno Haible.
+dnl
+dnl ====================
+dnl Modified to use CF_FIND_LINKAGE and CF_ADD_SEARCHPATH, to broaden the
+dnl range of locations searched.  Retain the same cache-variable naming to
+dnl allow reuse with the other gettext macros -Thomas E Dickey
+AC_DEFUN([AM_ICONV],
+[
+  dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
+  dnl those with the standalone portable GNU libiconv installed).
+
+  AC_ARG_WITH([libiconv-prefix],
+[  --with-libiconv-prefix=DIR
+                          search for libiconv in DIR/include and DIR/lib], [
+    CF_ADD_OPTIONAL_PATH($withval, libiconv)
+   ])
+
+  AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
+    CF_FIND_LINKAGE(CF__ICONV_HEAD,
+      CF__ICONV_BODY,
+      iconv,
+      am_cv_func_iconv=yes,
+      am_cv_func_iconv=["no, consider installing GNU libiconv"])])
+
+  if test "$am_cv_func_iconv" = yes; then
+    AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
+
+    AC_CACHE_CHECK([if the declaration of iconv() needs const.],
+		   am_cv_proto_iconv_const,[
+      AC_TRY_COMPILE(CF__ICONV_HEAD [
+extern
+#ifdef __cplusplus
+"C"
+#endif
+#if defined(__STDC__) || defined(__cplusplus)
+size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
+#else
+size_t iconv();
+#endif
+],[], am_cv_proto_iconv_const=no,
+      am_cv_proto_iconv_const=yes)])
+
+    if test "$am_cv_proto_iconv_const" = yes ; then
+      am_cv_proto_iconv_arg1="const"
+    else
+      am_cv_proto_iconv_arg1=""
+    fi
+
+    AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1,
+      [Define as const if the declaration of iconv() needs const.])
+  fi
+
+  LIBICONV=
+  if test "$cf_cv_find_linkage_iconv" = yes; then
+    CF_ADD_INCDIR($cf_cv_header_path_iconv)
+    if test -n "$cf_cv_library_file_iconv" ; then
+      LIBICONV="-liconv"
+      CF_ADD_LIBDIR($cf_cv_library_path_iconv)
+    fi
+  fi
+
+  AC_SUBST(LIBICONV)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl AM_LANGINFO_CODESET version: 3 updated: 2002/10/27 23:21:42
+dnl -------------------
+dnl Inserted as requested by gettext 0.10.40
+dnl File from /usr/share/aclocal
+dnl codeset.m4
+dnl ====================
+dnl serial AM1
+dnl
+dnl From Bruno Haible.
+AC_DEFUN([AM_LANGINFO_CODESET],
+[
+  AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
+    [AC_TRY_LINK([#include <langinfo.h>],
+      [char* cs = nl_langinfo(CODESET);],
+      am_cv_langinfo_codeset=yes,
+      am_cv_langinfo_codeset=no)
+    ])
+  if test $am_cv_langinfo_codeset = yes; then
+    AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
+      [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
+  fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl AM_LC_MESSAGES version: 4 updated: 2002/10/27 23:21:42
+dnl --------------
+dnl Inserted as requested by gettext 0.10.40
+dnl File from /usr/share/aclocal
+dnl lcmessage.m4
+dnl ====================
+dnl Check whether LC_MESSAGES is available in <locale.h>.
+dnl Ulrich Drepper <drepper@cygnus.com>, 1995.
+dnl
+dnl This file can be copied and used freely without restrictions.  It can
+dnl be used in projects which are not available under the GNU General Public
+dnl License or the GNU Library General Public License but which still want
+dnl to provide support for the GNU gettext functionality.
+dnl Please note that the actual code of the GNU gettext library is covered
+dnl by the GNU Library General Public License, and the rest of the GNU
+dnl gettext package package is covered by the GNU General Public License.
+dnl They are *not* in the public domain.
+dnl
+dnl serial 2
+dnl
+AC_DEFUN([AM_LC_MESSAGES],
+  [if test $ac_cv_header_locale_h = yes; then
+    AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
+      [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
+       am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
+    if test $am_cv_val_LC_MESSAGES = yes; then
+      AC_DEFINE(HAVE_LC_MESSAGES, 1,
+        [Define if your <locale.h> file defines LC_MESSAGES.])
+    fi
+  fi])dnl
+dnl ---------------------------------------------------------------------------
+dnl AM_PATH_PROG_WITH_TEST version: 8 updated: 2009/01/11 20:31:12
+dnl ----------------------
+dnl Inserted as requested by gettext 0.10.40
+dnl File from /usr/share/aclocal
+dnl progtest.m4
+dnl ====================
+dnl Search path for a program which passes the given test.
+dnl Ulrich Drepper <drepper@cygnus.com>, 1996.
+dnl
+dnl This file can be copied and used freely without restrictions.  It can
+dnl be used in projects which are not available under the GNU General Public
+dnl License or the GNU Library General Public License but which still want
+dnl to provide support for the GNU gettext functionality.
+dnl Please note that the actual code of the GNU gettext library is covered
+dnl by the GNU Library General Public License, and the rest of the GNU
+dnl gettext package package is covered by the GNU General Public License.
+dnl They are *not* in the public domain.
+dnl
+dnl serial 2
+dnl
+dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
+dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
+AC_DEFUN([AM_PATH_PROG_WITH_TEST],
+[# Extract the first word of "$2", so it can be a program name with args.
+AC_REQUIRE([CF_PATHSEP])
+set dummy $2; ac_word=[$]2
+AC_MSG_CHECKING([for $ac_word])
+AC_CACHE_VAL(ac_cv_path_$1,
+[case "[$]$1" in
+  [[\\/]*|?:[\\/]]*)
+  ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
+  ;;
+  *)
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
+  for ac_dir in ifelse([$5], , $PATH, [$5]); do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word$ac_exeext; then
+      if [$3]; then
+	ac_cv_path_$1="$ac_dir/$ac_word$ac_exeext"
+	break
+      fi
+    fi
+  done
+  IFS="$ac_save_ifs"
+dnl If no 4th arg is given, leave the cache variable unset,
+dnl so AC_PATH_PROGS will keep looking.
+ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
+])dnl
+  ;;
+esac])dnl
+$1="$ac_cv_path_$1"
+if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
+  AC_MSG_RESULT([$]$1)
+else
+  AC_MSG_RESULT(no)
+fi
+AC_SUBST($1)dnl
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl AM_WITH_NLS version: 24 updated: 2010/06/20 09:24:28
+dnl -----------
+dnl Inserted as requested by gettext 0.10.40
+dnl File from /usr/share/aclocal
+dnl gettext.m4
+dnl ====================
+dnl Macro to add for using GNU gettext.
+dnl Ulrich Drepper <drepper@cygnus.com>, 1995.
+dnl ====================
+dnl Modified to use CF_FIND_LINKAGE and CF_ADD_SEARCHPATH, to broaden the
+dnl range of locations searched.  Retain the same cache-variable naming to
+dnl allow reuse with the other gettext macros -Thomas E Dickey
+dnl ====================
+dnl
+dnl This file can be copied and used freely without restrictions.  It can
+dnl be used in projects which are not available under the GNU General Public
+dnl License or the GNU Library General Public License but which still want
+dnl to provide support for the GNU gettext functionality.
+dnl Please note that the actual code of the GNU gettext library is covered
+dnl by the GNU Library General Public License, and the rest of the GNU
+dnl gettext package package is covered by the GNU General Public License.
+dnl They are *not* in the public domain.
+dnl
+dnl serial 10
+dnl
+dnl Usage: AM_WITH_NLS([TOOLSYMBOL], [NEEDSYMBOL], [LIBDIR], [ENABLED]).
+dnl If TOOLSYMBOL is specified and is 'use-libtool', then a libtool library
+dnl    $(top_builddir)/intl/libintl.la will be created (shared and/or static,
+dnl    depending on --{enable,disable}-{shared,static} and on the presence of
+dnl    AM-DISABLE-SHARED). Otherwise, a static library
+dnl    $(top_builddir)/intl/libintl.a will be created.
+dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
+dnl    implementations (in libc or libintl) without the ngettext() function
+dnl    will be ignored.
+dnl LIBDIR is used to find the intl libraries.  If empty,
+dnl    the value `$(top_builddir)/intl/' is used.
+dnl ENABLED is used to control the default for the related --enable-nls, since
+dnl    not all application developers want this feature by default, e.g., lynx.
+dnl
+dnl The result of the configuration is one of three cases:
+dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled
+dnl    and used.
+dnl    Catalog format: GNU --> install in $(datadir)
+dnl    Catalog extension: .mo after installation, .gmo in source tree
+dnl 2) GNU gettext has been found in the system's C library.
+dnl    Catalog format: GNU --> install in $(datadir)
+dnl    Catalog extension: .mo after installation, .gmo in source tree
+dnl 3) No internationalization, always use English msgid.
+dnl    Catalog format: none
+dnl    Catalog extension: none
+dnl The use of .gmo is historical (it was needed to avoid overwriting the
+dnl GNU format catalogs when building on a platform with an X/Open gettext),
+dnl but we keep it in order not to force irrelevant filename changes on the
+dnl maintainers.
+dnl
+AC_DEFUN([AM_WITH_NLS],
+[AC_MSG_CHECKING([whether NLS is requested])
+  dnl Default is enabled NLS
+  ifelse([$4],,[
+  AC_ARG_ENABLE(nls,
+    [  --disable-nls           do not use Native Language Support],
+    USE_NLS=$enableval, USE_NLS=yes)],[
+  AC_ARG_ENABLE(nls,
+    [  --enable-nls            use Native Language Support],
+    USE_NLS=$enableval, USE_NLS=no)])
+  AC_MSG_RESULT($USE_NLS)
+  AC_SUBST(USE_NLS)
+
+  BUILD_INCLUDED_LIBINTL=no
+  USE_INCLUDED_LIBINTL=no
+  INTLLIBS=
+
+  dnl If we use NLS figure out what method
+  if test "$USE_NLS" = "yes"; then
+    AC_DEFINE(ENABLE_NLS, 1,
+      [Define to 1 if translation of program messages to the user's native language
+ is requested.])
+    AC_MSG_CHECKING([whether included gettext is requested])
+    AC_ARG_WITH(included-gettext,
+      [  --with-included-gettext use the GNU gettext library included here],
+      nls_cv_force_use_gnu_gettext=$withval,
+      nls_cv_force_use_gnu_gettext=no)
+    AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
+
+    nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
+    if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
+      dnl User does not insist on using GNU NLS library.  Figure out what
+      dnl to use.  If GNU gettext is available we use this.  Else we have
+      dnl to fall back to GNU NLS library.
+      CATOBJEXT=NONE
+
+      cf_save_LIBS_1="$LIBS"
+      CF_ADD_LIBS($LIBICONV)
+      AC_CACHE_CHECK([for libintl.h and gettext()], cf_cv_func_gettext,[
+        CF_FIND_LINKAGE(CF__INTL_HEAD,
+        CF__INTL_BODY,
+        intl,
+        cf_cv_func_gettext=yes,
+        cf_cv_func_gettext=no)
+      ])
+      LIBS="$cf_save_LIBS_1"
+
+      if test "$cf_cv_func_gettext" = yes ; then
+        AC_DEFINE(HAVE_LIBINTL_H)
+
+        dnl If an already present or preinstalled GNU gettext() is found,
+        dnl use it.  But if this macro is used in GNU gettext, and GNU
+        dnl gettext is already preinstalled in libintl, we update this
+        dnl libintl.  (Cf. the install rule in intl/Makefile.in.)
+        if test "$PACKAGE" != gettext; then
+          AC_DEFINE(HAVE_GETTEXT, 1,
+              [Define if the GNU gettext() function is already present or preinstalled.])
+
+          CF_ADD_INCDIR($cf_cv_header_path_intl)
+
+          if test -n "$cf_cv_library_file_intl" ; then
+            dnl If iconv() is in a separate libiconv library, then anyone
+            dnl linking with libintl{.a,.so} also needs to link with
+            dnl libiconv.
+            INTLLIBS="$cf_cv_library_file_intl $LIBICONV"
+            CF_ADD_LIBDIR($cf_cv_library_path_intl,INTLLIBS)
+          fi
+
+          gt_save_LIBS="$LIBS"
+          LIBS="$LIBS $INTLLIBS"
+          AC_CHECK_FUNCS(dcgettext)
+          LIBS="$gt_save_LIBS"
+
+          dnl Search for GNU msgfmt in the PATH.
+          AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
+              [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1], :)
+          AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
+
+          dnl Search for GNU xgettext in the PATH.
+          AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
+              [$ac_dir/$ac_word --omit-header /dev/null >/dev/null 2>&1], :)
+
+          CATOBJEXT=.gmo
+        fi
+      fi
+
+      if test "$CATOBJEXT" = "NONE"; then
+        dnl GNU gettext is not found in the C library.
+        dnl Fall back on GNU gettext library.
+        nls_cv_use_gnu_gettext=yes
+      fi
+    fi
+
+    if test "$nls_cv_use_gnu_gettext" = "yes"; then
+      if test ! -d $srcdir/intl ; then
+        AC_MSG_ERROR(no NLS library is packaged with this application)
+      fi
+      dnl Mark actions used to generate GNU NLS library.
+      INTLOBJS="\$(GETTOBJS)"
+      AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
+          [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1], :)
+      AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
+      AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
+          [$ac_dir/$ac_word --omit-header /dev/null >/dev/null 2>&1], :)
+      AC_SUBST(MSGFMT)
+      BUILD_INCLUDED_LIBINTL=yes
+      USE_INCLUDED_LIBINTL=yes
+      CATOBJEXT=.gmo
+      INTLLIBS="ifelse([$3],[],\$(top_builddir)/intl,[$3])/libintl.ifelse([$1], use-libtool, [l], [])a $LIBICONV"
+      LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
+    fi
+
+    dnl This could go away some day; the PATH_PROG_WITH_TEST already does it.
+    dnl Test whether we really found GNU msgfmt.
+    if test "$GMSGFMT" != ":"; then
+      dnl If it is no GNU msgfmt we define it as : so that the
+      dnl Makefiles still can work.
+      if $GMSGFMT --statistics /dev/null >/dev/null 2>&1; then
+        : ;
+      else
+        AC_MSG_RESULT(
+          [found msgfmt program is not GNU msgfmt; ignore it])
+        GMSGFMT=":"
+      fi
+    fi
+
+    dnl This could go away some day; the PATH_PROG_WITH_TEST already does it.
+    dnl Test whether we really found GNU xgettext.
+    if test "$XGETTEXT" != ":"; then
+        dnl If it is no GNU xgettext we define it as : so that the
+        dnl Makefiles still can work.
+      if $XGETTEXT --omit-header /dev/null >/dev/null 2>&1; then
+        : ;
+      else
+        AC_MSG_RESULT(
+          [found xgettext program is not GNU xgettext; ignore it])
+        XGETTEXT=":"
+      fi
+    fi
+
+    dnl We need to process the po/ directory.
+    POSUB=po
+  fi
+
+  AC_OUTPUT_COMMANDS(
+   [for ac_file in $CONFIG_FILES; do
+
+      # Support "outfile[:infile[:infile...]]"
+      case "$ac_file" in
+        *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+      esac
+
+      # PO directories have a Makefile.in generated from Makefile.inn.
+      case "$ac_file" in */[Mm]akefile.in)
+        # Adjust a relative srcdir.
+        ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
+        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
+        ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
+        ac_base=`basename $ac_file .in`
+        # In autoconf-2.13 it is called $ac_given_srcdir.
+        # In autoconf-2.50 it is called $srcdir.
+        test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
+
+        case "$ac_given_srcdir" in
+          .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
+          /*) top_srcdir="$ac_given_srcdir" ;;
+          *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
+        esac
+
+        if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
+          rm -f "$ac_dir/POTFILES"
+          test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
+          sed -e "/^#/d" -e "/^[ 	]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," -e "\$s/\(.*\) \\\\/\1/" < "$ac_given_srcdir/$ac_dir/POTFILES.in" > "$ac_dir/POTFILES"
+          test -n "$as_me" && echo "$as_me: creating $ac_dir/$ac_base" || echo "creating $ac_dir/$ac_base"
+          sed -e "/POTFILES =/r $ac_dir/POTFILES" "$ac_dir/$ac_base.in" > "$ac_dir/$ac_base"
+        fi
+        ;;
+      esac
+    done])
+
+  dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL
+  dnl to 'yes' because some of the testsuite requires it.
+  if test "$PACKAGE" = gettext; then
+    BUILD_INCLUDED_LIBINTL=yes
+  fi
+
+  dnl intl/plural.c is generated from intl/plural.y. It requires bison,
+  dnl because plural.y uses bison specific features. It requires at least
+  dnl bison-1.26 because earlier versions generate a plural.c that doesn't
+  dnl compile.
+  dnl bison is only needed for the maintainer (who touches plural.y). But in
+  dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put
+  dnl the rule in general Makefile. Now, some people carelessly touch the
+  dnl files or have a broken "make" program, hence the plural.c rule will
+  dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not
+  dnl present or too old.
+  if test "$nls_cv_use_gnu_gettext" = "yes"; then
+    AC_CHECK_PROGS([INTLBISON], [bison])
+    if test -z "$INTLBISON"; then
+      ac_verc_fail=yes
+    else
+      dnl Found it, now check the version.
+      AC_MSG_CHECKING([version of bison])
+changequote(<<,>>)dnl
+      ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
+      case $ac_prog_version in
+        '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+        1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*)
+changequote([,])dnl
+           ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+        *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+      esac
+    AC_MSG_RESULT([$ac_prog_version])
+    fi
+    if test $ac_verc_fail = yes; then
+      INTLBISON=:
+    fi
+  fi
+
+  dnl These rules are solely for the distribution goal.  While doing this
+  dnl we only have to keep exactly one list of the available catalogs
+  dnl in configure.in.
+  for lang in $ALL_LINGUAS; do
+    GMOFILES="$GMOFILES $lang.gmo"
+    POFILES="$POFILES $lang.po"
+  done
+
+  dnl Make all variables we use known to autoconf.
+  AC_SUBST(BUILD_INCLUDED_LIBINTL)
+  AC_SUBST(USE_INCLUDED_LIBINTL)
+  AC_SUBST(CATALOGS)
+  AC_SUBST(CATOBJEXT)
+  AC_SUBST(GMOFILES)
+  AC_SUBST(INTLLIBS)
+  AC_SUBST(INTLOBJS)
+  AC_SUBST(POFILES)
+  AC_SUBST(POSUB)
+
+  dnl For backward compatibility. Some configure.ins may be using this.
+  nls_cv_header_intl=
+  nls_cv_header_libgt=
+
+  dnl For backward compatibility. Some Makefiles may be using this.
+  DATADIRNAME=share
+  AC_SUBST(DATADIRNAME)
+
+  dnl For backward compatibility. Some Makefiles may be using this.
+  INSTOBJEXT=.mo
+  AC_SUBST(INSTOBJEXT)
+
+  dnl For backward compatibility. Some Makefiles may be using this.
+  GENCAT=gencat
+  AC_SUBST(GENCAT)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ACVERSION_CHECK version: 2 updated: 2011/05/08 11:22:03
+dnl ------------------
+dnl Conditionally generate script according to whether we're using a given autoconf.
+dnl
+dnl $1 = version to compare against
+dnl $2 = code to use if AC_ACVERSION is at least as high as $1.
+dnl $3 = code to use if AC_ACVERSION is older than $1.
+define(CF_ACVERSION_CHECK,
+[
+ifdef([m4_version_compare],
+[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])],
+[CF_ACVERSION_COMPARE(
+AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])),
+AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ACVERSION_COMPARE version: 2 updated: 2011/04/14 20:56:50
+dnl --------------------
+dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1,
+dnl                      MAJOR2, MINOR2, TERNARY2,
+dnl                      PRINTABLE2, not FOUND, FOUND)
+define(CF_ACVERSION_COMPARE,
+[ifelse(builtin([eval], [$2 < $5]), 1,
+[ifelse([$8], , ,[$8])],
+[ifelse([$9], , ,[$9])])])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_CFLAGS version: 10 updated: 2010/05/26 05:38:42
+dnl -------------
+dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
+dnl The second parameter if given makes this macro verbose.
+dnl
+dnl Put any preprocessor definitions that use quoted strings in $EXTRA_CPPFLAGS,
+dnl to simplify use of $CPPFLAGS in compiler checks, etc., that are easily
+dnl confused by the quotes (which require backslashes to keep them usable).
+AC_DEFUN([CF_ADD_CFLAGS],
+[
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $1
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+				CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,$cf_tst_cppflags)
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+	ifelse([$2],,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)])
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+	ifelse([$2],,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)])
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+	ifelse([$2],,,[CF_VERBOSE(add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags)])
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+AC_SUBST(EXTRA_CPPFLAGS)
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_INCDIR version: 13 updated: 2010/05/26 16:44:57
+dnl -------------
+dnl Add an include-directory to $CPPFLAGS.  Don't add /usr/include, since it's
+dnl redundant.  We don't normally need to add -I/usr/local/include for gcc,
+dnl but old versions (and some misinstalled ones) need that.  To make things
+dnl worse, gcc 3.x may give error messages if -I/usr/local/include is added to
+dnl the include-path).
+AC_DEFUN([CF_ADD_INCDIR],
+[
+if test -n "$1" ; then
+  for cf_add_incdir in $1
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  AC_TRY_COMPILE([#include <stdio.h>],
+				  [printf("Hello")],
+				  [],
+				  [cf_have_incdir=yes])
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  CF_VERBOSE(adding $cf_add_incdir to include-path)
+		  ifelse([$2],,CPPFLAGS,[$2])="$ifelse([$2],,CPPFLAGS,[$2]) -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_LIB version: 2 updated: 2010/06/02 05:03:05
+dnl ----------
+dnl Add a library, used to enforce consistency.
+dnl
+dnl $1 = library to add, without the "-l"
+dnl $2 = variable to update (default $LIBS)
+AC_DEFUN([CF_ADD_LIB],[CF_ADD_LIBS(-l$1,ifelse($2,,LIBS,[$2]))])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_LIBDIR version: 9 updated: 2010/05/26 16:44:57
+dnl -------------
+dnl	Adds to the library-path
+dnl
+dnl	Some machines have trouble with multiple -L options.
+dnl
+dnl $1 is the (list of) directory(s) to add
+dnl $2 is the optional name of the variable to update (default LDFLAGS)
+dnl
+AC_DEFUN([CF_ADD_LIBDIR],
+[
+if test -n "$1" ; then
+  for cf_add_libdir in $1
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        CF_VERBOSE(adding $cf_add_libdir to library-path)
+        ifelse([$2],,LDFLAGS,[$2])="-L$cf_add_libdir $ifelse([$2],,LDFLAGS,[$2])"
+      fi
+    fi
+  done
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_LIBS version: 1 updated: 2010/06/02 05:03:05
+dnl -----------
+dnl Add one or more libraries, used to enforce consistency.
+dnl
+dnl $1 = libraries to add, with the "-l", etc.
+dnl $2 = variable to update (default $LIBS)
+AC_DEFUN([CF_ADD_LIBS],[ifelse($2,,LIBS,[$2])="$1 [$]ifelse($2,,LIBS,[$2])"])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_LIB_AFTER version: 2 updated: 2010/11/08 20:33:46
+dnl ----------------
+dnl Add a given library after another, e.g., following the one it satisfies a
+dnl dependency for.
+dnl
+dnl $1 = the first library
+dnl $2 = its dependency
+AC_DEFUN([CF_ADD_LIB_AFTER],[
+CF_VERBOSE(...before $LIBS)
+LIBS=`echo "$LIBS" | sed -e "s/[[ 	]][[ 	]]*/ /g" -e "s,$1 ,$1 $2 ," -e 's/  / /g'`
+CF_VERBOSE(...after  $LIBS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_OPTIONAL_PATH version: 1 updated: 2007/07/29 12:33:33
+dnl --------------------
+dnl Add an optional search-path to the compile/link variables.
+dnl See CF_WITH_PATH
+dnl
+dnl $1 = shell variable containing the result of --with-XXX=[DIR]
+dnl $2 = module to look for.
+AC_DEFUN([CF_ADD_OPTIONAL_PATH],[
+  case "$1" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+      CF_ADD_SEARCHPATH([$1], [AC_MSG_ERROR(cannot find $2 under $1)])
+      ;;
+  esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_SEARCHPATH version: 5 updated: 2009/01/11 20:40:21
+dnl -----------------
+dnl Set $CPPFLAGS and $LDFLAGS with the directories given via the parameter.
+dnl They can be either the common root of include- and lib-directories, or the
+dnl lib-directory (to allow for things like lib64 directories).
+dnl See also CF_FIND_LINKAGE.
+dnl
+dnl $1 is the list of colon-separated directory names to search.
+dnl $2 is the action to take if a parameter does not yield a directory.
+AC_DEFUN([CF_ADD_SEARCHPATH],
+[
+AC_REQUIRE([CF_PATHSEP])
+for cf_searchpath in `echo "$1" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+		CF_ADD_INCDIR($cf_searchpath/include)
+	elif test -d $cf_searchpath/../include ; then
+		CF_ADD_INCDIR($cf_searchpath/../include)
+	ifelse([$2],,,[else
+$2])
+	fi
+	if test -d $cf_searchpath/lib; then
+		CF_ADD_LIBDIR($cf_searchpath/lib)
+	elif test -d $cf_searchpath ; then
+		CF_ADD_LIBDIR($cf_searchpath)
+	ifelse([$2],,,[else
+$2])
+	fi
+done
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_ADD_SUBDIR_PATH version: 3 updated: 2010/07/03 20:58:12
+dnl ------------------
+dnl Append to a search-list for a nonstandard header/lib-file
+dnl	$1 = the variable to return as result
+dnl	$2 = the package name
+dnl	$3 = the subdirectory, e.g., bin, include or lib
+dnl $4 = the directory under which we will test for subdirectories
+dnl $5 = a directory that we do not want $4 to match
+AC_DEFUN([CF_ADD_SUBDIR_PATH],
+[
+test "$4" != "$5" && \
+test -d "$4" && \
+ifelse([$5],NONE,,[(test $5 = NONE || test "$4" != "$5") &&]) {
+	test -n "$verbose" && echo "	... testing for $3-directories under $4"
+	test -d $4/$3 &&          $1="[$]$1 $4/$3"
+	test -d $4/$3/$2 &&       $1="[$]$1 $4/$3/$2"
+	test -d $4/$3/$2/$3 &&    $1="[$]$1 $4/$3/$2/$3"
+	test -d $4/$2/$3 &&       $1="[$]$1 $4/$2/$3"
+	test -d $4/$2/$3/$2 &&    $1="[$]$1 $4/$2/$3/$2"
+}
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ALT_CHAR_SET version: 7 updated: 2010/10/23 15:54:49
+dnl ---------------
+dnl Check for existence of alternate-character-set support in curses, so we
+dnl can decide to use it for box characters.
+dnl
+AC_DEFUN([CF_ALT_CHAR_SET],
+[
+AC_MSG_CHECKING([if curses supports alternate-character set])
+AC_CACHE_VAL(cf_cv_alt_char_set,[
+for mapname in acs_map _acs_map
+do
+	AC_TRY_LINK([
+#include <${cf_cv_ncurses_header:-curses.h}>
+	],[chtype x = $mapname['l']; $mapname['m'] = 0],
+	[cf_cv_alt_char_set=$mapname
+	 break],
+	[cf_cv_alt_char_set=no])
+done
+	])
+AC_MSG_RESULT($cf_cv_alt_char_set)
+test $cf_cv_alt_char_set != no && AC_DEFINE_UNQUOTED(ALT_CHAR_SET,$cf_cv_alt_char_set)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ANSI_CC_CHECK version: 11 updated: 2011/07/01 19:47:45
+dnl ----------------
+dnl This was originally adapted from the macros 'fp_PROG_CC_STDC' and
+dnl 'fp_C_PROTOTYPES' in the sharutils 4.2 distribution.
+AC_DEFUN([CF_ANSI_CC_CHECK],
+[
+# This should have been defined by AC_PROG_CC
+: ${CC:=cc}
+
+# Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content
+# into CC.  This will not help with broken scripts that wrap the compiler with
+# options, but eliminates a more common category of user confusion.
+AC_MSG_CHECKING(\$CC variable)
+case "$CC" in #(vi
+*[[\ \	]]-[[IUD]]*)
+	AC_MSG_RESULT(broken)
+	AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options)
+	# humor him...
+	cf_flags=`echo "$CC" | sed -e 's/^[[^ 	]]*[[ 	]]//'`
+	CC=`echo "$CC" | sed -e 's/[[ 	]].*//'`
+	CF_ADD_CFLAGS($cf_flags)
+	;;
+*)
+	AC_MSG_RESULT(ok)
+	;;
+esac
+
+AC_CACHE_CHECK(for ${CC:-cc} option to accept ANSI C, cf_cv_ansi_cc,[
+cf_cv_ansi_cc=no
+cf_save_CFLAGS="$CFLAGS"
+cf_save_CPPFLAGS="$CPPFLAGS"
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX			-qlanglvl=ansi
+# Ultrix and OSF/1	-std1
+# HP-UX			-Aa -D_HPUX_SOURCE
+# SVR4			-Xc
+# UnixWare 1.2		(cannot use -Xc, since ANSI/POSIX clashes)
+for cf_arg in "-DCC_HAS_PROTOS" \
+	"" \
+	-qlanglvl=ansi \
+	-std1 \
+	-Ae \
+	"-Aa -D_HPUX_SOURCE" \
+	-Xc
+do
+	CF_ADD_CFLAGS($cf_arg)
+	AC_TRY_COMPILE(
+[
+#ifndef CC_HAS_PROTOS
+#if !defined(__STDC__) || (__STDC__ != 1)
+choke me
+#endif
+#endif
+],[
+	int test (int i, double x);
+	struct s1 {int (*f) (int a);};
+	struct s2 {int (*f) (double a);};],
+	[cf_cv_ansi_cc="$cf_arg"; break])
+done
+CFLAGS="$cf_save_CFLAGS"
+CPPFLAGS="$cf_save_CPPFLAGS"
+])
+
+if test "$cf_cv_ansi_cc" != "no"; then
+if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
+	CF_ADD_CFLAGS($cf_cv_ansi_cc)
+else
+	AC_DEFINE(CC_HAS_PROTOS)
+fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ANSI_CC_REQD version: 4 updated: 2008/03/23 14:48:54
+dnl ---------------
+dnl For programs that must use an ANSI compiler, obtain compiler options that
+dnl will make it recognize prototypes.  We'll do preprocessor checks in other
+dnl macros, since tools such as unproto can fake prototypes, but only part of
+dnl the preprocessor.
+AC_DEFUN([CF_ANSI_CC_REQD],
+[AC_REQUIRE([CF_ANSI_CC_CHECK])
+if test "$cf_cv_ansi_cc" = "no"; then
+	AC_MSG_ERROR(
+[Your compiler does not appear to recognize prototypes.
+You have the following choices:
+	a. adjust your compiler options
+	b. get an up-to-date compiler
+	c. use a wrapper such as unproto])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ARG_DISABLE version: 3 updated: 1999/03/30 17:24:31
+dnl --------------
+dnl Allow user to disable a normally-on option.
+AC_DEFUN([CF_ARG_DISABLE],
+[CF_ARG_OPTION($1,[$2],[$3],[$4],yes)])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ARG_ENABLE version: 3 updated: 1999/03/30 17:24:31
+dnl -------------
+dnl Allow user to enable a normally-off option.
+AC_DEFUN([CF_ARG_ENABLE],
+[CF_ARG_OPTION($1,[$2],[$3],[$4],no)])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_ARG_OPTION version: 4 updated: 2010/05/26 05:38:42
+dnl -------------
+dnl Restricted form of AC_ARG_ENABLE that ensures user doesn't give bogus
+dnl values.
+dnl
+dnl Parameters:
+dnl $1 = option name
+dnl $2 = help-string
+dnl $3 = action to perform if option is not default
+dnl $4 = action if perform if option is default
+dnl $5 = default option value (either 'yes' or 'no')
+AC_DEFUN([CF_ARG_OPTION],
+[AC_ARG_ENABLE([$1],[$2],[test "$enableval" != ifelse([$5],no,yes,no) && enableval=ifelse([$5],no,no,yes)
+  if test "$enableval" != "$5" ; then
+ifelse([$3],,[    :]dnl
+,[    $3]) ifelse([$4],,,[
+  else
+    $4])
+  fi],[enableval=$5 ifelse([$4],,,[
+  $4
+])dnl
+  ])])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_AR_FLAGS version: 5 updated: 2010/05/20 20:24:29
+dnl -----------
+dnl Check for suitable "ar" (archiver) options for updating an archive.
+AC_DEFUN([CF_AR_FLAGS],[
+AC_REQUIRE([CF_PROG_AR])
+
+AC_CACHE_CHECK(for options to update archives, cf_cv_ar_flags,[
+	cf_cv_ar_flags=unknown
+	for cf_ar_flags in -curv curv -crv crv -cqv cqv -rv rv
+	do
+
+		# check if $ARFLAGS already contains this choice
+		if test "x$ARFLAGS" != "x" ; then
+			cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
+			if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
+				cf_cv_ar_flags=
+				break
+			fi
+		fi
+
+		rm -f conftest.$ac_cv_objext
+		rm -f conftest.a
+
+		cat >conftest.$ac_ext <<EOF
+#line __oline__ "configure"
+int	testdata[[3]] = { 123, 456, 789 };
+EOF
+		if AC_TRY_EVAL(ac_compile) ; then
+			echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&AC_FD_CC
+			$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext 2>&AC_FD_CC 1>/dev/null
+			if test -f conftest.a ; then
+				cf_cv_ar_flags=$cf_ar_flags
+				break
+			fi
+		else
+			CF_VERBOSE(cannot compile test-program)
+			break
+		fi
+	done
+	rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext
+])
+
+if test -n "$ARFLAGS" ; then
+	if test -n "$cf_cv_ar_flags" ; then
+		ARFLAGS="$ARFLAGS $cf_cv_ar_flags"
+	fi
+else
+	ARFLAGS=$cf_cv_ar_flags
+fi
+
+AC_SUBST(ARFLAGS)
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_BOOL_DEFS version: 4 updated: 2010/10/23 15:54:49
+dnl ------------
+dnl Check if curses.h defines TRUE/FALSE (it does under SVr4).
+AC_DEFUN([CF_BOOL_DEFS],
+[
+AC_MSG_CHECKING(if TRUE/FALSE are defined)
+AC_CACHE_VAL(cf_cv_bool_defs,[
+AC_TRY_COMPILE([
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <stdio.h>],[int x = TRUE, y = FALSE],
+	[cf_cv_bool_defs=yes],
+	[cf_cv_bool_defs=no])])
+AC_MSG_RESULT($cf_cv_bool_defs)
+if test "$cf_cv_bool_defs" = no ; then
+	AC_DEFINE(TRUE,(1))
+	AC_DEFINE(FALSE,(0))
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_BUILD_CC version: 6 updated: 2006/10/14 15:23:15
+dnl -----------
+dnl If we're cross-compiling, allow the user to override the tools and their
+dnl options.  The configure script is oriented toward identifying the host
+dnl compiler, etc., but we need a build compiler to generate parts of the
+dnl source.
+dnl
+dnl $1 = default for $CPPFLAGS
+dnl $2 = default for $LIBS
+AC_DEFUN([CF_BUILD_CC],[
+AC_REQUIRE([CF_PROG_EXT])
+if test "$cross_compiling" = yes ; then
+
+	# defaults that we might want to override
+	: ${BUILD_CFLAGS:=''}
+	: ${BUILD_CPPFLAGS:='ifelse([$1],,,[$1])'}
+	: ${BUILD_LDFLAGS:=''}
+	: ${BUILD_LIBS:='ifelse([$2],,,[$2])'}
+	: ${BUILD_EXEEXT:='$x'}
+	: ${BUILD_OBJEXT:='o'}
+
+	AC_ARG_WITH(build-cc,
+		[  --with-build-cc=XXX     the build C compiler ($BUILD_CC)],
+		[BUILD_CC="$withval"],
+		[AC_CHECK_PROGS(BUILD_CC, gcc cc cl)])
+	AC_MSG_CHECKING(for native build C compiler)
+	AC_MSG_RESULT($BUILD_CC)
+
+	AC_MSG_CHECKING(for native build C preprocessor)
+	AC_ARG_WITH(build-cpp,
+		[  --with-build-cpp=XXX    the build C preprocessor ($BUILD_CPP)],
+		[BUILD_CPP="$withval"],
+		[BUILD_CPP='${BUILD_CC} -E'])
+	AC_MSG_RESULT($BUILD_CPP)
+
+	AC_MSG_CHECKING(for native build C flags)
+	AC_ARG_WITH(build-cflags,
+		[  --with-build-cflags=XXX the build C compiler-flags ($BUILD_CFLAGS)],
+		[BUILD_CFLAGS="$withval"])
+	AC_MSG_RESULT($BUILD_CFLAGS)
+
+	AC_MSG_CHECKING(for native build C preprocessor-flags)
+	AC_ARG_WITH(build-cppflags,
+		[  --with-build-cppflags=XXX the build C preprocessor-flags ($BUILD_CPPFLAGS)],
+		[BUILD_CPPFLAGS="$withval"])
+	AC_MSG_RESULT($BUILD_CPPFLAGS)
+
+	AC_MSG_CHECKING(for native build linker-flags)
+	AC_ARG_WITH(build-ldflags,
+		[  --with-build-ldflags=XXX the build linker-flags ($BUILD_LDFLAGS)],
+		[BUILD_LDFLAGS="$withval"])
+	AC_MSG_RESULT($BUILD_LDFLAGS)
+
+	AC_MSG_CHECKING(for native build linker-libraries)
+	AC_ARG_WITH(build-libs,
+		[  --with-build-libs=XXX   the build libraries (${BUILD_LIBS})],
+		[BUILD_LIBS="$withval"])
+	AC_MSG_RESULT($BUILD_LIBS)
+
+	# this assumes we're on Unix.
+	BUILD_EXEEXT=
+	BUILD_OBJEXT=o
+
+	: ${BUILD_CC:='${CC}'}
+
+	if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then
+		AC_MSG_ERROR([Cross-build requires two compilers.
+Use --with-build-cc to specify the native compiler.])
+	fi
+
+else
+	: ${BUILD_CC:='${CC}'}
+	: ${BUILD_CPP:='${CPP}'}
+	: ${BUILD_CFLAGS:='${CFLAGS}'}
+	: ${BUILD_CPPFLAGS:='${CPPFLAGS}'}
+	: ${BUILD_LDFLAGS:='${LDFLAGS}'}
+	: ${BUILD_LIBS:='${LIBS}'}
+	: ${BUILD_EXEEXT:='$x'}
+	: ${BUILD_OBJEXT:='o'}
+fi
+
+AC_SUBST(BUILD_CC)
+AC_SUBST(BUILD_CPP)
+AC_SUBST(BUILD_CFLAGS)
+AC_SUBST(BUILD_CPPFLAGS)
+AC_SUBST(BUILD_LDFLAGS)
+AC_SUBST(BUILD_LIBS)
+AC_SUBST(BUILD_EXEEXT)
+AC_SUBST(BUILD_OBJEXT)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_BUNDLED_INTL version: 16 updated: 2010/10/23 15:55:05
+dnl ---------------
+dnl Top-level macro for configuring an application with a bundled copy of
+dnl the intl and po directories for gettext.
+dnl
+dnl $1 specifies either Makefile or makefile, defaulting to the former.
+dnl $2 if nonempty sets the option to --enable-nls rather than to --disable-nls
+dnl
+dnl Sets variables which can be used to substitute in makefiles:
+dnl	GT_YES       - "#" comment unless building intl library, otherwise empty
+dnl	GT_NO        - "#" comment if building intl library, otherwise empty
+dnl	INTLDIR_MAKE - to make ./intl directory
+dnl	MSG_DIR_MAKE - to make ./po directory
+dnl	SUB_MAKEFILE - list of makefiles in ./intl, ./po directories
+dnl
+dnl Defines:
+dnl	HAVE_LIBGETTEXT_H if we're using ./intl
+dnl	NLS_TEXTDOMAIN
+dnl
+dnl Environment:
+dnl	ALL_LINGUAS if set, lists the root names of the ".po" files.
+dnl	CONFIG_H assumed to be "config.h"
+dnl	PACKAGE must be set, used as default for textdomain
+dnl	VERSION may be set, otherwise extract from "VERSION" file.
+dnl
+AC_DEFUN([CF_BUNDLED_INTL],[
+cf_makefile=ifelse($1,,Makefile,$1)
+
+dnl Set of available languages (based on source distribution).  Note that
+dnl setting $LINGUAS overrides $ALL_LINGUAS.  Some environments set $LINGUAS
+dnl rather than $LC_ALL
+test -z "$ALL_LINGUAS" && ALL_LINGUAS=`test -d $srcdir/po && cd $srcdir/po && echo *.po|sed -e 's/\.po//g' -e 's/*//'`
+
+# Allow override of "config.h" definition:
+: ${CONFIG_H:=config.h}
+AC_SUBST(CONFIG_H)
+
+if test -z "$PACKAGE" ; then
+	AC_MSG_ERROR([[CF_BUNDLED_INTL] used without setting [PACKAGE] variable])
+fi
+
+if test -z "$VERSION" ; then
+if test -f $srcdir/VERSION ; then
+	VERSION=`sed -e '2,$d' $srcdir/VERSION|cut -f1`
+else
+	VERSION=unknown
+fi
+fi
+AC_SUBST(VERSION)
+
+AM_GNU_GETTEXT(,,,[$2])
+
+if test "$USE_NLS" = yes ; then
+	AC_ARG_WITH(textdomain,
+		[  --with-textdomain=PKG   NLS text-domain (default is package name)],
+		[NLS_TEXTDOMAIN=$withval],
+		[NLS_TEXTDOMAIN=$PACKAGE])
+	AC_DEFINE_UNQUOTED(NLS_TEXTDOMAIN,"$NLS_TEXTDOMAIN")
+	AC_SUBST(NLS_TEXTDOMAIN)
+fi
+
+INTLDIR_MAKE=
+MSG_DIR_MAKE=
+SUB_MAKEFILE=
+
+dnl this updates SUB_MAKEFILE and MSG_DIR_MAKE:
+CF_OUR_MESSAGES($1)
+
+if test "$USE_INCLUDED_LIBINTL" = yes ; then
+        if test "$nls_cv_force_use_gnu_gettext" = yes ; then
+		:
+	elif test "$nls_cv_use_gnu_gettext" = yes ; then
+		:
+	else
+		INTLDIR_MAKE="#"
+	fi
+	if test -z "$INTLDIR_MAKE"; then
+		AC_DEFINE(HAVE_LIBGETTEXT_H)
+		for cf_makefile in \
+			$srcdir/intl/Makefile.in \
+			$srcdir/intl/makefile.in
+		do
+			if test -f "$cf_makefile" ; then
+				SUB_MAKEFILE="$SUB_MAKEFILE `echo \"${cf_makefile}\"|sed -e 's,^'$srcdir/',,' -e 's/\.in$//'`:${cf_makefile}"
+				break
+			fi
+		done
+	fi
+else
+	INTLDIR_MAKE="#"
+	if test "$USE_NLS" = yes ; then
+		AC_CHECK_HEADERS(libintl.h)
+	fi
+fi
+
+if test -z "$INTLDIR_MAKE" ; then
+	CPPFLAGS="$CPPFLAGS -I../intl"
+fi
+
+dnl FIXME:  we use this in lynx (the alternative is a spurious dependency upon
+dnl GNU make)
+if test "$BUILD_INCLUDED_LIBINTL" = yes ; then
+	GT_YES="#"
+	GT_NO=
+else
+	GT_YES=
+	GT_NO="#"
+fi
+
+AC_SUBST(INTLDIR_MAKE)
+AC_SUBST(MSG_DIR_MAKE)
+AC_SUBST(GT_YES)
+AC_SUBST(GT_NO)
+
+dnl FIXME:  the underlying AM_GNU_GETTEXT macro either needs some fixes or a
+dnl little documentation.  It doesn't define anything so that we can ifdef our
+dnl own code, except ENABLE_NLS, which is too vague to be of any use.
+
+if test "$USE_INCLUDED_LIBINTL" = yes ; then
+	if test "$nls_cv_force_use_gnu_gettext" = yes ; then
+		AC_DEFINE(HAVE_GETTEXT)
+	elif test "$nls_cv_use_gnu_gettext" = yes ; then
+		AC_DEFINE(HAVE_GETTEXT)
+	fi
+	if test -n "$nls_cv_header_intl" ; then
+		AC_DEFINE(HAVE_LIBINTL_H)
+	fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59
+dnl --------------
+dnl Check if we're accidentally using a cache from a different machine.
+dnl Derive the system name, as a check for reusing the autoconf cache.
+dnl
+dnl If we've packaged config.guess and config.sub, run that (since it does a
+dnl better job than uname).  Normally we'll use AC_CANONICAL_HOST, but allow
+dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM
+dnl which is useful in cross-compiles.
+dnl
+dnl Note: we would use $ac_config_sub, but that is one of the places where
+dnl autoconf 2.5x broke compatibility with autoconf 2.13
+AC_DEFUN([CF_CHECK_CACHE],
+[
+if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
+	ifelse([$1],,[AC_CANONICAL_HOST],[$1])
+	system_name="$host_os"
+else
+	system_name="`(uname -s -r) 2>/dev/null`"
+	if test -z "$system_name" ; then
+		system_name="`(hostname) 2>/dev/null`"
+	fi
+fi
+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name")
+AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"])
+
+test -z "$system_name" && system_name="$cf_cv_system_name"
+test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name)
+
+if test ".$system_name" != ".$cf_cv_system_name" ; then
+	AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name))
+	AC_MSG_ERROR("Please remove config.cache and try again.")
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_CFLAGS version: 2 updated: 2001/12/30 19:09:58
+dnl ---------------
+dnl Conditionally add to $CFLAGS and $CPPFLAGS values which are derived from
+dnl a build-configuration such as imake.  These have the pitfall that they
+dnl often contain compiler-specific options which we cannot use, mixed with
+dnl preprocessor options that we usually can.
+AC_DEFUN([CF_CHECK_CFLAGS],
+[
+CF_VERBOSE(checking additions to CFLAGS)
+cf_check_cflags="$CFLAGS"
+cf_check_cppflags="$CPPFLAGS"
+CF_ADD_CFLAGS($1,yes)
+if test "$cf_check_cflags" != "$CFLAGS" ; then
+AC_TRY_LINK([#include <stdio.h>],[printf("Hello world");],,
+	[CF_VERBOSE(test-compile failed.  Undoing change to \$CFLAGS)
+	 if test "$cf_check_cppflags" != "$CPPFLAGS" ; then
+		 CF_VERBOSE(but keeping change to \$CPPFLAGS)
+	 fi
+	 CFLAGS="$cf_check_flags"])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_ERRNO version: 11 updated: 2010/05/26 05:38:42
+dnl --------------
+dnl Check for data that is usually declared in <stdio.h> or <errno.h>, e.g.,
+dnl the 'errno' variable.  Define a DECL_xxx symbol if we must declare it
+dnl ourselves.
+dnl
+dnl $1 = the name to check
+dnl $2 = the assumed type
+AC_DEFUN([CF_CHECK_ERRNO],
+[
+AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[
+    AC_TRY_COMPILE([
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#include <stdio.h>
+#include <sys/types.h>
+#include <errno.h> ],
+    ifelse([$2],,int,[$2]) x = (ifelse([$2],,int,[$2])) $1,
+    [cf_cv_dcl_$1=yes],
+    [cf_cv_dcl_$1=no])
+])
+
+if test "$cf_cv_dcl_$1" = no ; then
+    CF_UPPER(cf_result,decl_$1)
+    AC_DEFINE_UNQUOTED($cf_result)
+fi
+
+# It's possible (for near-UNIX clones) that the data doesn't exist
+CF_CHECK_EXTERN_DATA($1,ifelse([$2],,int,[$2]))
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_EXTERN_DATA version: 3 updated: 2001/12/30 18:03:23
+dnl --------------------
+dnl Check for existence of external data in the current set of libraries.  If
+dnl we can modify it, it's real enough.
+dnl $1 = the name to check
+dnl $2 = its type
+AC_DEFUN([CF_CHECK_EXTERN_DATA],
+[
+AC_CACHE_CHECK(if external $1 exists, cf_cv_have_$1,[
+    AC_TRY_LINK([
+#undef $1
+extern $2 $1;
+],
+    [$1 = 2],
+    [cf_cv_have_$1=yes],
+    [cf_cv_have_$1=no])
+])
+
+if test "$cf_cv_have_$1" = yes ; then
+    CF_UPPER(cf_result,have_$1)
+    AC_DEFINE_UNQUOTED($cf_result)
+fi
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_FUNCDECL version: 7 updated: 2009/10/15 19:39:18
+dnl -----------------
+dnl Check if a function is declared by including a set of include files.
+dnl Invoke the corresponding actions according to whether it is found or not.
+dnl
+dnl Gcc (unlike other compilers) will only warn about the miscast assignment
+dnl in the first test, but most compilers will oblige with an error in the
+dnl second test.
+dnl
+dnl CF_CHECK_FUNCDECL(INCLUDES, FUNCTION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
+AC_DEFUN([CF_CHECK_FUNCDECL],
+[
+AC_MSG_CHECKING([for $2 declaration])
+AC_CACHE_VAL(ac_cv_func_decl_$2,
+[AC_TRY_COMPILE([$1],
+[#ifndef $2
+extern	int	$2();
+#endif],[
+AC_TRY_COMPILE([$1],
+[#ifndef $2
+int	(*p)() = $2;
+#endif],[
+eval "ac_cv_func_decl_$2=yes"],[
+eval "ac_cv_func_decl_$2=no"])],[
+eval "ac_cv_func_decl_$2=yes"])])
+if eval "test \"`echo '$ac_cv_func_'decl_$2`\" = yes"; then
+  AC_MSG_RESULT(yes)
+  ifelse([$3], , :, [$3])
+else
+  AC_MSG_RESULT(no)
+ifelse([$4], , , [$4
+])dnl
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_FUNCDECLS version: 4 updated: 1999/03/30 12:24:31
+dnl ------------------
+dnl Check if functions are declared by including a set of include files.
+dnl and define DECL_XXX if not.
+dnl
+dnl CF_CHECK_FUNCDECLS(INCLUDES, FUNCTION... [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
+AC_DEFUN([CF_CHECK_FUNCDECLS],
+[for ac_func in $2
+do
+CF_CHECK_FUNCDECL([$1], $ac_func,
+[$3],
+[
+  CF_UPPER(ac_tr_func,DECL_$ac_func)
+  AC_DEFINE_UNQUOTED($ac_tr_func) $4])dnl
+done
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_IPV6 version: 3 updated: 2004/01/22 17:38:22
+dnl -------------
+dnl Check for IPV6 configuration.
+AC_DEFUN([CF_CHECK_IPV6],[
+CF_FIND_IPV6_TYPE
+CF_FIND_IPV6_LIBS
+
+CF_FUNC_GETADDRINFO
+
+if test "$cf_cv_getaddrinfo" != "yes"; then
+	if test "$cf_cv_ipv6type" != "linux"; then
+		AC_MSG_WARN(
+[You must get working getaddrinfo() function,
+or you can specify "--disable-ipv6"])
+	else
+		AC_MSG_WARN(
+[The getaddrinfo() implementation on your system seems be buggy.
+You should upgrade your system library to the newest version
+of GNU C library (aka glibc).])
+	fi
+fi
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_SSL_X509 version: 4 updated: 2008/12/11 19:00:39
+dnl -----------------
+dnl Check for X509 support in the SSL library.
+define([CF_CHECK_SSL_X509],[
+AC_MSG_CHECKING(for X509 support)
+AC_TRY_LINK(CF__SSL_HEAD [
+#include <openssl/x509.h>],
+	[X509_verify_cert_error_string(X509_STORE_CTX_get_error(NULL))],
+	[cf_x509_support=yes],
+	[cf_x509_support=no])
+AC_MSG_RESULT($cf_x509_support)
+
+if test "$cf_x509_support" = yes ; then
+	AC_DEFINE(USE_X509_SUPPORT)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_TYPE version: 2 updated: 2008/01/06 14:56:47
+dnl -------------
+dnl Add a 3rd parameter to AC_CHECK_TYPE, working around autoconf 2.5x's
+dnl deliberate incompatibility.
+dnl	$1 = name of type to check for
+dnl	$2 = default type
+dnl	$3 = additional #include's and related preprocessor lines.
+ifdef([m4_HAS_AC_CT_FOURARGS], [m4_undefine([m4_HAS_AC_CT_FOURARGS])])dnl
+ifelse(m4_PACKAGE_VERSION, [fnord_acsalt], [],
+[ifdef([m4_version_compare],[m4_define([m4_HAS_AC_CT_FOURARGS])])])dnl
+AC_DEFUN([CF_CHECK_TYPE],
+[
+ifdef([m4_HAS_AC_CT_FOURARGS],[
+	AC_CHECK_TYPE([$1],ac_cv_type_$1=yes,ac_cv_type_$1=no,[$3])
+	],[
+	AC_MSG_CHECKING(for $1)
+	AC_TRY_COMPILE([
+#if STDC_HEADERS
+#include <stdlib.h>
+#include <stddef.h>
+#endif
+$3
+],[
+	static $1 dummy; if (sizeof(dummy)) return 0; else return 1;],
+	ac_cv_type_$1=yes,
+	ac_cv_type_$1=no)
+	AC_MSG_RESULT($ac_cv_type_$1)
+])dnl
+if test $ac_cv_type_$1 = no; then
+	AC_DEFINE($1, $2)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_COLOR_CURSES version: 7 updated: 2010/10/23 15:54:49
+dnl ---------------
+dnl Check if curses supports color.  (Note that while SVr3 curses supports
+dnl color, it does this differently from SVr4 curses; more work would be needed
+dnl to accommodate SVr3).
+dnl
+AC_DEFUN([CF_COLOR_CURSES],
+[
+AC_MSG_CHECKING(if curses supports color attributes)
+AC_CACHE_VAL(cf_cv_color_curses,[
+	AC_TRY_LINK([
+#include <${cf_cv_ncurses_header:-curses.h}>
+],
+	[chtype x = COLOR_BLUE;
+	 has_colors();
+	 start_color();
+#ifndef NCURSES_BROKEN
+	 wbkgd(curscr, getbkgd(stdscr)); /* X/Open XPG4 aka SVr4 Curses */
+#endif
+	],
+	[cf_cv_color_curses=yes],
+	[cf_cv_color_curses=no])
+	])
+AC_MSG_RESULT($cf_cv_color_curses)
+if test $cf_cv_color_curses = yes ; then
+	AC_DEFINE(COLOR_CURSES)
+	test ".$cf_cv_ncurses_broken" != .yes && AC_DEFINE(HAVE_GETBKGD)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_CHTYPE version: 7 updated: 2010/10/23 15:54:49
+dnl ----------------
+dnl Test if curses defines 'chtype' (usually a 'long' type for SysV curses).
+AC_DEFUN([CF_CURSES_CHTYPE],
+[
+AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
+AC_CACHE_CHECK(for chtype typedef,cf_cv_chtype_decl,[
+	AC_TRY_COMPILE([#include <${cf_cv_ncurses_header:-curses.h}>],
+		[chtype foo],
+		[cf_cv_chtype_decl=yes],
+		[cf_cv_chtype_decl=no])])
+if test $cf_cv_chtype_decl = yes ; then
+	AC_DEFINE(HAVE_TYPE_CHTYPE)
+	AC_CACHE_CHECK(if chtype is scalar or struct,cf_cv_chtype_type,[
+		AC_TRY_COMPILE([#include <${cf_cv_ncurses_header:-curses.h}>],
+			[chtype foo; long x = foo],
+			[cf_cv_chtype_type=scalar],
+			[cf_cv_chtype_type=struct])])
+	if test $cf_cv_chtype_type = scalar ; then
+		AC_DEFINE(TYPE_CHTYPE_IS_SCALAR)
+	fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_CONFIG version: 2 updated: 2006/10/29 11:06:27
+dnl ----------------
+dnl Tie together the configure-script macros for curses.  It may be ncurses,
+dnl but unless asked, we do not make a special search for ncurses.  However,
+dnl still check for the ncurses version number, for use in other macros.
+AC_DEFUN([CF_CURSES_CONFIG],
+[
+CF_CURSES_CPPFLAGS
+CF_NCURSES_VERSION
+CF_CURSES_LIBS
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_CPPFLAGS version: 11 updated: 2011/04/09 14:51:08
+dnl ------------------
+dnl Look for the curses headers.
+AC_DEFUN([CF_CURSES_CPPFLAGS],[
+
+AC_CACHE_CHECK(for extra include directories,cf_cv_curses_incdir,[
+cf_cv_curses_incdir=no
+case $host_os in #(vi
+hpux10.*) #(vi
+	if test "x$cf_cv_screen" = "xcurses_colr"
+	then
+		test -d /usr/include/curses_colr && \
+		cf_cv_curses_incdir="-I/usr/include/curses_colr"
+	fi
+	;;
+sunos3*|sunos4*)
+	if test "x$cf_cv_screen" = "xcurses_5lib"
+	then
+		test -d /usr/5lib && \
+		test -d /usr/5include && \
+		cf_cv_curses_incdir="-I/usr/5include"
+	fi
+	;;
+esac
+])
+test "$cf_cv_curses_incdir" != no && CPPFLAGS="$CPPFLAGS $cf_cv_curses_incdir"
+
+CF_CURSES_HEADER
+CF_TERM_HEADER
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_FUNCS version: 17 updated: 2011/05/14 16:07:29
+dnl ---------------
+dnl Curses-functions are a little complicated, since a lot of them are macros.
+AC_DEFUN([CF_CURSES_FUNCS],
+[
+AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
+AC_REQUIRE([CF_XOPEN_CURSES])
+AC_REQUIRE([CF_CURSES_TERM_H])
+AC_REQUIRE([CF_CURSES_UNCTRL_H])
+for cf_func in $1
+do
+	CF_UPPER(cf_tr_func,$cf_func)
+	AC_MSG_CHECKING(for ${cf_func})
+	CF_MSG_LOG(${cf_func})
+	AC_CACHE_VAL(cf_cv_func_$cf_func,[
+		eval cf_result='$ac_cv_func_'$cf_func
+		if test ".$cf_result" != ".no"; then
+			AC_TRY_LINK(CF__CURSES_HEAD,
+			[
+#ifndef ${cf_func}
+long foo = (long)(&${cf_func});
+if (foo + 1234 > 5678)
+	${cf_cv_main_return:-return}(foo);
+#endif
+			],
+			[cf_result=yes],
+			[cf_result=no])
+		fi
+		eval 'cf_cv_func_'$cf_func'=$cf_result'
+	])
+	# use the computed/retrieved cache-value:
+	eval 'cf_result=$cf_cv_func_'$cf_func
+	AC_MSG_RESULT($cf_result)
+	if test $cf_result != no; then
+		AC_DEFINE_UNQUOTED(HAVE_${cf_tr_func})
+	fi
+done
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_HEADER version: 3 updated: 2011/05/01 19:47:45
+dnl ----------------
+dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common
+dnl variations of ncurses' installs.
+dnl
+dnl $1 = ncurses when looking for ncurses, or is empty
+AC_DEFUN([CF_CURSES_HEADER],[
+AC_CACHE_CHECK(if we have identified curses headers,cf_cv_ncurses_header,[
+cf_cv_ncurses_header=none
+for cf_header in ifelse($1,,,[ \
+    $1/ncurses.h \
+	$1/curses.h]) \
+	ncurses.h \
+	curses.h ifelse($1,,[ncurses/ncurses.h ncurses/curses.h])
+do
+AC_TRY_COMPILE([#include <${cf_header}>],
+	[initscr(); tgoto("?", 0,0)],
+	[cf_cv_ncurses_header=$cf_header; break],[])
+done
+])
+
+if test "$cf_cv_ncurses_header" = none ; then
+	AC_MSG_ERROR(No curses header-files found)
+fi
+
+# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
+AC_CHECK_HEADERS($cf_cv_ncurses_header)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_LIBS version: 35 updated: 2011/08/09 21:06:37
+dnl --------------
+dnl Look for the curses libraries.  Older curses implementations may require
+dnl termcap/termlib to be linked as well.  Call CF_CURSES_CPPFLAGS first.
+AC_DEFUN([CF_CURSES_LIBS],[
+
+AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
+AC_MSG_CHECKING(if we have identified curses libraries)
+AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+    [initscr(); tgoto("?", 0,0)],
+    cf_result=yes,
+    cf_result=no)
+AC_MSG_RESULT($cf_result)
+
+if test "$cf_result" = no ; then
+case $host_os in #(vi
+freebsd*) #(vi
+    AC_CHECK_LIB(mytinfo,tgoto,[CF_ADD_LIBS(-lmytinfo)])
+    ;;
+hpux10.*) #(vi
+	# Looking at HPUX 10.20, the Hcurses library is the oldest (1997), cur_colr
+	# next (1998), and xcurses "newer" (2000).  There is no header file for
+	# Hcurses; the subdirectory curses_colr has the headers (curses.h and
+	# term.h) for cur_colr
+	if test "x$cf_cv_screen" = "xcurses_colr"
+	then
+		AC_CHECK_LIB(cur_colr,initscr,[
+			CF_ADD_LIBS(-lcur_colr)
+			ac_cv_func_initscr=yes
+			],[
+		AC_CHECK_LIB(Hcurses,initscr,[
+			# HP's header uses __HP_CURSES, but user claims _HP_CURSES.
+			CF_ADD_LIBS(-lHcurses)
+			CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES"
+			ac_cv_func_initscr=yes
+			])])
+	fi
+    ;;
+linux*)
+	case `arch 2>/dev/null` in
+	x86_64)
+		if test -d /lib64
+		then
+			CF_ADD_LIBDIR(/lib64)
+		else
+			CF_ADD_LIBDIR(/lib)
+		fi
+		;;
+	*)
+		CF_ADD_LIBDIR(/lib)
+		;;
+	esac
+    ;;
+sunos3*|sunos4*)
+	if test "x$cf_cv_screen" = "xcurses_5lib"
+	then
+		if test -d /usr/5lib ; then
+			CF_ADD_LIBDIR(/usr/5lib)
+			CF_ADD_LIBS(-lcurses -ltermcap)
+		fi
+    fi
+    ac_cv_func_initscr=yes
+    ;;
+esac
+
+if test ".$ac_cv_func_initscr" != .yes ; then
+    cf_save_LIBS="$LIBS"
+    cf_term_lib=""
+    cf_curs_lib=""
+
+    if test ".${cf_cv_ncurses_version:-no}" != .no
+    then
+        cf_check_list="ncurses curses cursesX"
+    else
+        cf_check_list="cursesX curses ncurses"
+    fi
+
+    # Check for library containing tgoto.  Do this before curses library
+    # because it may be needed to link the test-case for initscr.
+    AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[
+        for cf_term_lib in $cf_check_list otermcap termcap termlib unknown
+        do
+            AC_CHECK_LIB($cf_term_lib,tgoto,[break])
+        done
+    ])
+
+    # Check for library containing initscr
+    test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
+ 	for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown
+    do
+        AC_CHECK_LIB($cf_curs_lib,initscr,[break])
+    done
+    test $cf_curs_lib = unknown && AC_MSG_ERROR(no curses library found)
+
+    LIBS="-l$cf_curs_lib $cf_save_LIBS"
+    if test "$cf_term_lib" = unknown ; then
+        AC_MSG_CHECKING(if we can link with $cf_curs_lib library)
+        AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+            [initscr()],
+            [cf_result=yes],
+            [cf_result=no])
+        AC_MSG_RESULT($cf_result)
+        test $cf_result = no && AC_MSG_ERROR(Cannot link curses library)
+    elif test "$cf_curs_lib" = "$cf_term_lib" ; then
+        :
+    elif test "$cf_term_lib" != predefined ; then
+        AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries)
+        AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+            [initscr(); tgoto((char *)0, 0, 0);],
+            [cf_result=no],
+            [
+            LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
+            AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+                [initscr()],
+                [cf_result=yes],
+                [cf_result=error])
+            ])
+        AC_MSG_RESULT($cf_result)
+    fi
+fi
+fi
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_TERM_H version: 9 updated: 2011/04/09 18:19:55
+dnl ----------------
+dnl SVr4 curses should have term.h as well (where it puts the definitions of
+dnl the low-level interface).  This may not be true in old/broken implementations,
+dnl as well as in misconfigured systems (e.g., gcc configured for Solaris 2.4
+dnl running with Solaris 2.5.1).
+AC_DEFUN([CF_CURSES_TERM_H],
+[
+AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
+
+AC_CACHE_CHECK(for term.h, cf_cv_term_header,[
+
+# If we found <ncurses/curses.h>, look for <ncurses/term.h>, but always look
+# for <term.h> if we do not find the variant.
+
+cf_header_list="term.h ncurses/term.h ncursesw/term.h"
+
+case ${cf_cv_ncurses_header:-curses.h} in #(vi
+*/*)
+	cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`term.h
+	cf_header_list="$cf_header_item $cf_header_list"
+	;;
+esac
+
+for cf_header in $cf_header_list
+do
+	AC_TRY_COMPILE([
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <${cf_header}>],
+	[WINDOW *x],
+	[cf_cv_term_header=$cf_header
+	 break],
+	[cf_cv_term_header=no])
+done
+
+case $cf_cv_term_header in #(vi
+no)
+	# If curses is ncurses, some packagers still mess it up by trying to make
+	# us use GNU termcap.  This handles the most common case.
+	for cf_header in ncurses/term.h ncursesw/term.h
+	do
+		AC_TRY_COMPILE([
+#include <${cf_cv_ncurses_header:-curses.h}>
+#ifdef NCURSES_VERSION
+#include <${cf_header}>
+#else
+make an error
+#endif],
+			[WINDOW *x],
+			[cf_cv_term_header=$cf_header
+			 break],
+			[cf_cv_term_header=no])
+	done
+	;;
+esac
+])
+
+case $cf_cv_term_header in #(vi
+term.h) #(vi
+	AC_DEFINE(HAVE_TERM_H)
+	;;
+ncurses/term.h) #(vi
+	AC_DEFINE(HAVE_NCURSES_TERM_H)
+	;;
+ncursesw/term.h)
+	AC_DEFINE(HAVE_NCURSESW_TERM_H)
+	;;
+esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURSES_UNCTRL_H version: 1 updated: 2011/04/09 18:19:55
+dnl ------------------
+dnl Any X/Open curses implementation must have unctrl.h, but ncurses packages
+dnl may put it in a subdirectory (along with ncurses' other headers, of
+dnl course).  Packages which put the headers in inconsistent locations are
+dnl broken).
+AC_DEFUN([CF_CURSES_UNCTRL_H],
+[
+AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
+
+AC_CACHE_CHECK(for unctrl.h, cf_cv_unctrl_header,[
+
+# If we found <ncurses/curses.h>, look for <ncurses/unctrl.h>, but always look
+# for <unctrl.h> if we do not find the variant.
+
+cf_header_list="unctrl.h ncurses/unctrl.h ncursesw/unctrl.h"
+
+case ${cf_cv_ncurses_header:-curses.h} in #(vi
+*/*)
+	cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`unctrl.h
+	cf_header_list="$cf_header_item $cf_header_list"
+	;;
+esac
+
+for cf_header in $cf_header_list
+do
+	AC_TRY_COMPILE([
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <${cf_header}>],
+	[WINDOW *x],
+	[cf_cv_unctrl_header=$cf_header
+	 break],
+	[cf_cv_unctrl_header=no])
+done
+
+case $cf_cv_unctrl_header in #(vi
+no)
+	AC_MSG_WARN(unctrl.h header not found)
+	;;
+esac
+])
+
+case $cf_cv_unctrl_header in #(vi
+unctrl.h) #(vi
+	AC_DEFINE(HAVE_UNCTRL_H)
+	;;
+ncurses/unctrl.h) #(vi
+	AC_DEFINE(HAVE_NCURSES_UNCTRL_H)
+	;;
+ncursesw/unctrl.h)
+	AC_DEFINE(HAVE_NCURSESW_UNCTRL_H)
+	;;
+esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURS_PERFORMANCE version: 4 updated: 2010/10/23 15:54:49
+dnl -------------------
+dnl Solaris 2.x curses provides a "performance" tradeoff according to whether
+dnl CURS_PERFORMANCE is defined.  If defined, the implementation defines macros
+dnl that access the WINDOW structure.  Otherwise, function calls are used.
+AC_DEFUN([CF_CURS_PERFORMANCE],
+[
+AC_MSG_CHECKING([for curses performance tradeoff])
+AC_CACHE_VAL(cf_cv_curs_performance,[
+    cf_cv_curs_performance=no
+    AC_TRY_COMPILE([
+#include <${cf_cv_ncurses_header:-curses.h}>],[
+#if defined(wbkgdset) && defined(clearok) && defined(getbkgd)
+	int x = ERR;
+#else
+	int x = ;	/* force an error */
+#endif
+	],[
+	AC_TRY_COMPILE([
+#define CURS_PERFORMANCE
+#include <${cf_cv_ncurses_header:-curses.h}>],[
+#if defined(wbkgdset) && defined(clearok) && defined(getbkgd)
+	int x = ;	/* force an error */
+#else
+	int x = ERR;
+#endif
+	],[cf_cv_curs_performance=yes])])])
+AC_MSG_RESULT($cf_cv_curs_performance)
+test $cf_cv_curs_performance = yes && AC_DEFINE(CURS_PERFORMANCE)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_CURS_TOUCHLINE version: 3 updated: 2010/10/23 15:54:49
+dnl -----------------
+dnl Check for the flavor of the touchline function, to distinguish between BSD
+dnl and SYSV.  This is needed on NetBSD 1.5 which has a partial implementation
+dnl of SVR4 curses.
+AC_DEFUN([CF_CURS_TOUCHLINE],[
+AC_CACHE_CHECK(for curses touchline function,cf_cv_curs_touchline,[
+	AC_TRY_LINK([
+#include <${cf_cv_ncurses_header:-curses.h}>],
+	[touchline(stdscr, 1,2,3);],
+	[cf_cv_curs_touchline=bsd],
+	[AC_TRY_LINK([
+#include <${cf_cv_ncurses_header:-curses.h}>],
+		[touchline(stdscr, 1,2);],
+		[cf_cv_curs_touchline=sysv],
+		[cf_cv_curs_touchline=bsd])])])
+case "$cf_cv_curs_touchline" in #(vi
+bsd) #(vi
+	AC_DEFINE(HAVE_BSD_TOUCHLINE)
+	;;
+sysv)
+	AC_DEFINE(HAVE_SYSV_TOUCHLINE)
+	;;
+esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_DEFINE_PROG version: 3 updated: 2002/10/27 18:21:42
+dnl --------------
+dnl Check for a program in the given list $3, defining the corresponding
+dnl program variable $2.
+dnl
+AC_DEFUN([CF_DEFINE_PROG],[
+AC_MSG_CHECKING(for $1)
+AC_CACHE_VAL(cf_cv_$2,[
+	cf_cv_$2=unknown
+	for cv_path in $3
+	do
+		if test -f $cv_path ; then
+			cf_cv_$2=$cv_path
+			break
+		fi
+	done
+	])
+AC_MSG_RESULT($cf_cv_$2)
+AC_DEFINE_UNQUOTED($2,"$cf_cv_$2")
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52
+dnl ----------
+dnl "dirname" is not portable, so we fake it with a shell script.
+AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_DISABLE_ECHO version: 11 updated: 2009/12/13 13:16:57
+dnl ---------------
+dnl You can always use "make -n" to see the actual options, but it's hard to
+dnl pick out/analyze warning messages when the compile-line is long.
+dnl
+dnl Sets:
+dnl	ECHO_LT - symbol to control if libtool is verbose
+dnl	ECHO_LD - symbol to prefix "cc -o" lines
+dnl	RULE_CC - symbol to put before implicit "cc -c" lines (e.g., .c.o)
+dnl	SHOW_CC - symbol to put before explicit "cc -c" lines
+dnl	ECHO_CC - symbol to put before any "cc" line
+dnl
+AC_DEFUN([CF_DISABLE_ECHO],[
+AC_MSG_CHECKING(if you want to see long compiling messages)
+CF_ARG_DISABLE(echo,
+	[  --disable-echo          display "compiling" commands],
+	[
+    ECHO_LT='--silent'
+    ECHO_LD='@echo linking [$]@;'
+    RULE_CC='@echo compiling [$]<'
+    SHOW_CC='@echo compiling [$]@'
+    ECHO_CC='@'
+],[
+    ECHO_LT=''
+    ECHO_LD=''
+    RULE_CC=''
+    SHOW_CC=''
+    ECHO_CC=''
+])
+AC_MSG_RESULT($enableval)
+AC_SUBST(ECHO_LT)
+AC_SUBST(ECHO_LD)
+AC_SUBST(RULE_CC)
+AC_SUBST(SHOW_CC)
+AC_SUBST(ECHO_CC)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_DISABLE_RPATH_HACK version: 2 updated: 2011/02/13 13:31:33
+dnl ---------------------
+dnl The rpath-hack makes it simpler to build programs, particularly with the
+dnl *BSD ports which may have essential libraries in unusual places.  But it
+dnl can interfere with building an executable for the base system.  Use this
+dnl option in that case.
+AC_DEFUN([CF_DISABLE_RPATH_HACK],
+[
+AC_MSG_CHECKING(if rpath-hack should be disabled)
+CF_ARG_DISABLE(rpath-hack,
+	[  --disable-rpath-hack    don't add rpath options for additional libraries],
+	[cf_disable_rpath_hack=yes],
+	[cf_disable_rpath_hack=no])
+AC_MSG_RESULT($cf_disable_rpath_hack)
+if test "$cf_disable_rpath_hack" = no ; then
+	CF_RPATH_HACK
+fi
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_ERRNO version: 5 updated: 1997/11/30 12:44:39
+dnl --------
+dnl Check if 'errno' is declared in <errno.h>
+AC_DEFUN([CF_ERRNO],
+[
+CF_CHECK_ERRNO(errno)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FANCY_CURSES version: 5 updated: 2010/10/23 15:54:49
+dnl ---------------
+AC_DEFUN([CF_FANCY_CURSES],
+[
+AC_MSG_CHECKING(if curses supports fancy attributes)
+AC_CACHE_VAL(cf_cv_fancy_curses,[
+	AC_TRY_LINK([
+#include <${cf_cv_ncurses_header:-curses.h}>
+],
+	[attrset(A_UNDERLINE|A_BOLD|A_REVERSE);
+	 wattrset(stdscr, A_BLINK|A_DIM);
+	 attroff(A_BOLD);
+	 keypad(stdscr,TRUE);
+	],
+	[cf_cv_fancy_curses=yes],
+	[cf_cv_fancy_curses=no])
+	])
+AC_MSG_RESULT($cf_cv_fancy_curses)
+test $cf_cv_fancy_curses = yes && AC_DEFINE(FANCY_CURSES)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FIND_IPV6_LIBS version: 7 updated: 2007/07/29 13:35:20
+dnl -----------------
+dnl Based on the IPV6 stack type, look for the corresponding library.
+AC_DEFUN([CF_FIND_IPV6_LIBS],[
+AC_REQUIRE([CF_FIND_IPV6_TYPE])
+
+cf_ipv6lib=none
+cf_ipv6dir=none
+
+AC_MSG_CHECKING(for IPv6 library if required)
+case $cf_cv_ipv6type in #(vi
+solaris) #(vi
+	;;
+inria) #(vi
+	;;
+kame) #(vi
+	dnl http://www.kame.net/
+	cf_ipv6lib=inet6
+	cf_ipv6dir=v6
+	;;
+linux-glibc) #(vi
+	;;
+linux-libinet6) #(vi
+	dnl http://www.v6.linux.or.jp/
+	cf_ipv6lib=inet6
+	cf_ipv6dir=inet6
+	;;
+toshiba) #(vi
+	cf_ipv6lib=inet6
+	cf_ipv6dir=v6
+	;;
+v6d) #(vi
+	cf_ipv6lib=v6
+	cf_ipv6dir=v6
+	;;
+zeta)
+	cf_ipv6lib=inet6
+	cf_ipv6dir=v6
+	;;
+esac
+AC_MSG_RESULT($cf_ipv6lib)
+
+if test "$cf_ipv6lib" != "none"; then
+
+	AC_TRY_LINK([
+#include <sys/types.h>
+#include <netdb.h>
+#include <netinet/in.h>
+#include <netinet/ip6.h>],
+	[getaddrinfo(0, 0, 0, 0)],,[
+	CF_HEADER_PATH(cf_search,$cf_ipv6dir)
+	for cf_incdir in $cf_search
+	do
+		cf_header=$cf_incdir/netinet/ip6.h
+		if test -f $cf_header
+		then
+			CF_ADD_INCDIR($cf_incdir)
+			test -n "$verbose" && echo "	... found $cf_header" 1>&AC_FD_MSG
+			break
+		fi
+		test -n "$verbose" && echo "	... tested $cf_header" 1>&AC_FD_MSG
+	done
+	])
+
+	CF_FIND_LIBRARY([$cf_ipv6lib],[$cf_ipv6dir],[
+#include <sys/types.h>
+#include <netdb.h>
+#include <netinet/in.h>
+#include <netinet/ip6.h>],
+	[getaddrinfo(0, 0, 0, 0)],
+	[getaddrinfo],
+	noexit)
+	if test $cf_found_library = no ; then
+		AC_MSG_ERROR(
+[No $cf_ipv6lib library found, cannot continue.  You must fetch lib$cf_ipv6lib.a
+from an appropriate IPv6 kit and compile beforehand.])
+	fi
+fi
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FIND_IPV6_TYPE version: 5 updated: 2001/10/11 20:46:17
+dnl -----------------
+AC_DEFUN([CF_FIND_IPV6_TYPE],[
+AC_CACHE_CHECK(ipv6 stack type, cf_cv_ipv6type, [
+cf_cv_ipv6type=unknown
+for i in solaris inria kame linux-glibc linux-libinet6 toshiba v6d zeta
+do
+	case $i in #(vi
+	solaris) #(vi
+		if test "SunOS" = "`uname -s`"
+		then
+		  if test -f /usr/include/netinet/ip6.h
+		  then
+			cf_cv_ipv6type=$i
+		  fi
+		fi
+		;;
+	inria) #(vi
+		dnl http://www.kame.net/
+		AC_EGREP_CPP(yes, [
+#include <netinet/in.h>
+#ifdef IPV6_INRIA_VERSION
+yes
+#endif],	[cf_cv_ipv6type=$i])
+		;;
+	kame) #(vi
+		dnl http://www.kame.net/
+		AC_EGREP_CPP(yes, [
+#include <netinet/in.h>
+#ifdef __KAME__
+yes
+#endif],	[cf_cv_ipv6type=$i])
+		;;
+	linux-glibc) #(vi
+		dnl http://www.v6.linux.or.jp/
+		AC_EGREP_CPP(yes, [
+#include <features.h>
+#if defined(__GLIBC__) && __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 1
+yes
+#endif],	[cf_cv_ipv6type=$i])
+		;;
+	linux-libinet6) #(vi
+		dnl http://www.v6.linux.or.jp/
+		if test -d /usr/inet6
+		then
+			cf_cv_ipv6type=$i
+		elif test -f /usr/include/netinet/ip6.h
+		then
+			cf_cv_ipv6type=$i
+		fi
+		;;
+	toshiba) #(vi
+		AC_EGREP_CPP(yes, [
+#include <sys/param.h>
+#ifdef _TOSHIBA_INET6
+yes
+#endif],	[cf_cv_ipv6type=$i])
+		;;
+	v6d) #(vi
+		AC_EGREP_CPP(yes, [
+#include </usr/local/v6/include/sys/v6config.h>
+#ifdef __V6D__
+yes
+#endif],	[cf_cv_ipv6type=$i])
+		;;
+	zeta)
+		AC_EGREP_CPP(yes, [
+#include <sys/param.h>
+#ifdef _ZETA_MINAMI_INET6
+yes
+#endif],	[cf_cv_ipv6type=$i])
+		;;
+	esac
+	if test "$cf_cv_ipv6type" != "unknown"; then
+		break
+	fi
+done
+])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FIND_LIBRARY version: 9 updated: 2008/03/23 14:48:54
+dnl ---------------
+dnl Look for a non-standard library, given parameters for AC_TRY_LINK.  We
+dnl prefer a standard location, and use -L options only if we do not find the
+dnl library in the standard library location(s).
+dnl	$1 = library name
+dnl	$2 = library class, usually the same as library name
+dnl	$3 = includes
+dnl	$4 = code fragment to compile/link
+dnl	$5 = corresponding function-name
+dnl	$6 = flag, nonnull if failure should not cause an error-exit
+dnl
+dnl Sets the variable "$cf_libdir" as a side-effect, so we can see if we had
+dnl to use a -L option.
+AC_DEFUN([CF_FIND_LIBRARY],
+[
+	eval 'cf_cv_have_lib_'$1'=no'
+	cf_libdir=""
+	AC_CHECK_FUNC($5,
+		eval 'cf_cv_have_lib_'$1'=yes',[
+		cf_save_LIBS="$LIBS"
+		AC_MSG_CHECKING(for $5 in -l$1)
+		LIBS="-l$1 $LIBS"
+		AC_TRY_LINK([$3],[$4],
+			[AC_MSG_RESULT(yes)
+			 eval 'cf_cv_have_lib_'$1'=yes'
+			],
+			[AC_MSG_RESULT(no)
+			CF_LIBRARY_PATH(cf_search,$2)
+			for cf_libdir in $cf_search
+			do
+				AC_MSG_CHECKING(for -l$1 in $cf_libdir)
+				LIBS="-L$cf_libdir -l$1 $cf_save_LIBS"
+				AC_TRY_LINK([$3],[$4],
+					[AC_MSG_RESULT(yes)
+			 		 eval 'cf_cv_have_lib_'$1'=yes'
+					 break],
+					[AC_MSG_RESULT(no)
+					 LIBS="$cf_save_LIBS"])
+			done
+			])
+		])
+eval 'cf_found_library=[$]cf_cv_have_lib_'$1
+ifelse($6,,[
+if test $cf_found_library = no ; then
+	AC_MSG_ERROR(Cannot link $1 library)
+fi
+])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FIND_LINKAGE version: 19 updated: 2010/05/29 16:31:02
+dnl ---------------
+dnl Find a library (specifically the linkage used in the code fragment),
+dnl searching for it if it is not already in the library path.
+dnl See also CF_ADD_SEARCHPATH.
+dnl
+dnl Parameters (4-on are optional):
+dnl     $1 = headers for library entrypoint
+dnl     $2 = code fragment for library entrypoint
+dnl     $3 = the library name without the "-l" option or ".so" suffix.
+dnl     $4 = action to perform if successful (default: update CPPFLAGS, etc)
+dnl     $5 = action to perform if not successful
+dnl     $6 = module name, if not the same as the library name
+dnl     $7 = extra libraries
+dnl
+dnl Sets these variables:
+dnl     $cf_cv_find_linkage_$3 - yes/no according to whether linkage is found
+dnl     $cf_cv_header_path_$3 - include-directory if needed
+dnl     $cf_cv_library_path_$3 - library-directory if needed
+dnl     $cf_cv_library_file_$3 - library-file if needed, e.g., -l$3
+AC_DEFUN([CF_FIND_LINKAGE],[
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_$3=
+cf_cv_library_path_$3=
+
+CF_MSG_LOG([Starting [FIND_LINKAGE]($3,$6)])
+
+cf_save_LIBS="$LIBS"
+
+AC_TRY_LINK([$1],[$2],[
+	cf_cv_find_linkage_$3=yes
+	cf_cv_header_path_$3=/usr/include
+	cf_cv_library_path_$3=/usr/lib
+],[
+
+LIBS="-l$3 $7 $cf_save_LIBS"
+
+AC_TRY_LINK([$1],[$2],[
+	cf_cv_find_linkage_$3=yes
+	cf_cv_header_path_$3=/usr/include
+	cf_cv_library_path_$3=/usr/lib
+	cf_cv_library_file_$3="-l$3"
+],[
+	cf_cv_find_linkage_$3=no
+	LIBS="$cf_save_LIBS"
+
+    CF_VERBOSE(find linkage for $3 library)
+    CF_MSG_LOG([Searching for headers in [FIND_LINKAGE]($3,$6)])
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+    CF_HEADER_PATH(cf_search,ifelse([$6],,[$3],[$6]))
+    for cf_cv_header_path_$3 in $cf_search
+    do
+      if test -d $cf_cv_header_path_$3 ; then
+        CF_VERBOSE(... testing $cf_cv_header_path_$3)
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_$3"
+        AC_TRY_COMPILE([$1],[$2],[
+            CF_VERBOSE(... found $3 headers in $cf_cv_header_path_$3)
+            cf_cv_find_linkage_$3=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break],[
+            CPPFLAGS="$cf_save_CPPFLAGS"
+            ])
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_$3" = maybe ; then
+
+      CF_MSG_LOG([Searching for $3 library in [FIND_LINKAGE]($3,$6)])
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+      ifelse([$6],,,[
+        CPPFLAGS="$cf_test_CPPFLAGS"
+        LIBS="-l$3 $7 $cf_save_LIBS"
+        AC_TRY_LINK([$1],[$2],[
+            CF_VERBOSE(... found $3 library in system)
+            cf_cv_find_linkage_$3=yes])
+            CPPFLAGS="$cf_save_CPPFLAGS"
+            LIBS="$cf_save_LIBS"
+            ])
+
+      if test "$cf_cv_find_linkage_$3" != yes ; then
+        CF_LIBRARY_PATH(cf_search,$3)
+        for cf_cv_library_path_$3 in $cf_search
+        do
+          if test -d $cf_cv_library_path_$3 ; then
+            CF_VERBOSE(... testing $cf_cv_library_path_$3)
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-l$3 $7 $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_$3"
+            AC_TRY_LINK([$1],[$2],[
+                CF_VERBOSE(... found $3 library in $cf_cv_library_path_$3)
+                cf_cv_find_linkage_$3=yes
+                cf_cv_library_file_$3="-l$3"
+                break],[
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+                ])
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_$3=no
+    fi
+    ],$7)
+])
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_$3" = yes ; then
+ifelse([$4],,[
+	CF_ADD_INCDIR($cf_cv_header_path_$3)
+	CF_ADD_LIBDIR($cf_cv_library_path_$3)
+	CF_ADD_LIB($3)
+],[$4])
+else
+ifelse([$5],,AC_MSG_WARN(Cannot find $3 library),[$5])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FIONBIO version: 2 updated: 1998/02/24 06:51:46
+dnl ----------
+dnl Check for availability of fcntl versus ioctl(,FIONBIO,).  Lynx uses this
+dnl for Sequent (ptx), and it is needed for OS/2 EMX.
+AC_DEFUN([CF_FIONBIO],
+[
+AC_CACHE_CHECK(if we should use fcntl or ioctl,cf_cv_fionbio,[
+AC_TRY_LINK([
+#include <sys/types.h>
+#include <sys/ioctl.h>
+],[
+        int ret = ioctl(0, FIONBIO, (char *)0);
+	],[cf_cv_fionbio=ioctl],[
+AC_TRY_LINK([
+#include <sys/types.h>
+#if HAVE_FCNTL_H
+#include <fcntl.h>
+#else
+#if HAVE_SYS_FCNTL_H
+#include <sys/fcntl.h>
+#endif
+#endif],[
+        int ret = fcntl(0, F_SETFL, O_NONBLOCK);
+	],
+	[cf_cv_fionbio=fcntl],
+	[cf_cv_fionbio=unknown])])
+])
+test "$cf_cv_fionbio" = "fcntl" && AC_DEFINE(USE_FCNTL)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_CURSES_VERSION version: 5 updated: 2010/10/23 15:54:49
+dnl ----------------------
+dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS.
+dnl It's a character string "SVR4", not documented.
+AC_DEFUN([CF_FUNC_CURSES_VERSION],
+[
+AC_CACHE_CHECK(for function curses_version, cf_cv_func_curses_version,[
+AC_TRY_RUN([
+#include <${cf_cv_ncurses_header:-curses.h}>
+int main()
+{
+	char temp[1024];
+	sprintf(temp, "%s\n", curses_version());
+	${cf_cv_main_return:-return}(0);
+}]
+,[cf_cv_func_curses_version=yes]
+,[cf_cv_func_curses_version=no]
+,[cf_cv_func_curses_version=unknown])
+rm -f core])
+test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION)
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_GETADDRINFO version: 7 updated: 2010/10/23 15:52:32
+dnl -------------------
+dnl Look for a working version of getaddrinfo(), for IPV6 support.
+AC_DEFUN([CF_FUNC_GETADDRINFO],[
+AC_CACHE_CHECK(working getaddrinfo, cf_cv_getaddrinfo,[
+AC_TRY_RUN([
+#include <sys/types.h>
+#include <netdb.h>
+#include <string.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+
+#define expect(a,b) if (strcmp(a,b) != 0) goto bad
+
+int main()
+{
+   int passive, gaierr, inet4 = 0, inet6 = 0;
+   struct addrinfo hints, *ai, *aitop;
+   char straddr[INET6_ADDRSTRLEN], strport[16];
+
+   for (passive = 0; passive <= 1; passive++) {
+     memset(&hints, 0, sizeof(hints));
+     hints.ai_family = AF_UNSPEC;
+     hints.ai_flags = passive ? AI_PASSIVE : 0;
+     hints.ai_socktype = SOCK_STREAM;
+     if ((gaierr = getaddrinfo(NULL, "54321", &hints, &aitop)) != 0) {
+       (void)gai_strerror(gaierr);
+       goto bad;
+     }
+     for (ai = aitop; ai; ai = ai->ai_next) {
+       if (ai->ai_addr == NULL ||
+           ai->ai_addrlen == 0 ||
+           getnameinfo(ai->ai_addr, ai->ai_addrlen,
+                       straddr, sizeof(straddr), strport, sizeof(strport),
+                       NI_NUMERICHOST|NI_NUMERICSERV) != 0) {
+         goto bad;
+       }
+       switch (ai->ai_family) {
+       case AF_INET:
+         expect(strport, "54321");
+         if (passive) {
+           expect(straddr, "0.0.0.0");
+         } else {
+           expect(straddr, "127.0.0.1");
+         }
+         inet4++;
+         break;
+       case AF_INET6:
+         expect(strport, "54321");
+         if (passive) {
+           expect(straddr, "::");
+         } else {
+           expect(straddr, "::1");
+         }
+         inet6++;
+         break;
+       case AF_UNSPEC:
+         goto bad;
+         break;
+       default:
+         /* another family support? */
+         break;
+       }
+     }
+   }
+
+   if (!(inet4 == 0 || inet4 == 2))
+     goto bad;
+   if (!(inet6 == 0 || inet6 == 2))
+     goto bad;
+
+   if (aitop)
+     freeaddrinfo(aitop);
+   ${cf_cv_main_return:-return}(0);
+
+  bad:
+   if (aitop)
+     freeaddrinfo(aitop);
+   ${cf_cv_main_return:-return}(1);
+}
+],
+[cf_cv_getaddrinfo=yes],
+[cf_cv_getaddrinfo=no],
+[cf_cv_getaddrinfo=unknown])
+])
+if test "$cf_cv_getaddrinfo" = yes ; then
+	AC_DEFINE(HAVE_GAI_STRERROR)
+	AC_DEFINE(HAVE_GETADDRINFO)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_LSTAT version: 2 updated: 1997/09/07 13:00:21
+dnl -------------
+dnl A conventional existence-check for 'lstat' won't work with the Linux
+dnl version of gcc 2.7.0, since the symbol is defined only within <sys/stat.h>
+dnl as an inline function.
+dnl
+dnl So much for portability.
+AC_DEFUN([CF_FUNC_LSTAT],
+[
+AC_MSG_CHECKING(for lstat)
+AC_CACHE_VAL(ac_cv_func_lstat,[
+AC_TRY_LINK([
+#include <sys/types.h>
+#include <sys/stat.h>],
+	[lstat(".", (struct stat *)0)],
+	[ac_cv_func_lstat=yes],
+	[ac_cv_func_lstat=no])
+	])
+AC_MSG_RESULT($ac_cv_func_lstat )
+if test $ac_cv_func_lstat = yes; then
+	AC_DEFINE(HAVE_LSTAT)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_SIGACTION version: 2 updated: 1999/07/28 06:09:35
+dnl -----------------
+dnl Check if we have the sigaction function and related structures.
+AC_DEFUN([CF_FUNC_SIGACTION],[
+AC_CACHE_CHECK(for sigaction and structs,cf_cv_func_sigaction,[
+AC_TRY_LINK([
+#include <sys/types.h>
+#include <signal.h>],
+	[struct sigaction act;
+	act.sa_handler = SIG_DFL;
+#ifdef SA_RESTART
+	act.sa_flags |= SA_RESTART;
+#endif /* SA_RESTART */
+	sigaction(1, &act, 0);
+	],
+	[cf_cv_func_sigaction=yes],
+	[cf_cv_func_sigaction=no])
+])
+test "$cf_cv_func_sigaction" = yes && AC_DEFINE(HAVE_SIGACTION)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_WAIT version: 2 updated: 1997/10/21 19:45:33
+dnl ------------
+dnl Test for the presence of <sys/wait.h>, 'union wait', arg-type of 'wait()'
+dnl and/or 'waitpid()'.
+dnl
+dnl Note that we cannot simply grep for 'union wait' in the wait.h file,
+dnl because some Posix systems turn this on only when a BSD variable is
+dnl defined.
+dnl
+dnl I don't use AC_HEADER_SYS_WAIT, because it defines HAVE_SYS_WAIT_H, which
+dnl would conflict with an attempt to test that header directly.
+dnl
+AC_DEFUN([CF_FUNC_WAIT],
+[
+AC_REQUIRE([CF_UNION_WAIT])
+if test $cf_cv_type_unionwait = yes; then
+
+	AC_MSG_CHECKING(if union wait can be used as wait-arg)
+	AC_CACHE_VAL(cf_cv_arg_union_wait,[
+		AC_TRY_COMPILE($cf_wait_headers,
+ 			[union wait x; wait(&x)],
+			[cf_cv_arg_union_wait=yes],
+			[cf_cv_arg_union_wait=no])
+		])
+	AC_MSG_RESULT($cf_cv_arg_union_wait)
+	test $cf_cv_arg_union_wait = yes && AC_DEFINE(WAIT_USES_UNION)
+
+	AC_MSG_CHECKING(if union wait can be used as waitpid-arg)
+	AC_CACHE_VAL(cf_cv_arg_union_waitpid,[
+		AC_TRY_COMPILE($cf_wait_headers,
+ 			[union wait x; waitpid(0, &x, 0)],
+			[cf_cv_arg_union_waitpid=yes],
+			[cf_cv_arg_union_waitpid=no])
+		])
+	AC_MSG_RESULT($cf_cv_arg_union_waitpid)
+	test $cf_cv_arg_union_waitpid = yes && AC_DEFINE(WAITPID_USES_UNION)
+
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_GCC_ATTRIBUTES version: 14 updated: 2010/10/23 15:52:32
+dnl -----------------
+dnl Test for availability of useful gcc __attribute__ directives to quiet
+dnl compiler warnings.  Though useful, not all are supported -- and contrary
+dnl to documentation, unrecognized directives cause older compilers to barf.
+AC_DEFUN([CF_GCC_ATTRIBUTES],
+[
+if test "$GCC" = yes
+then
+cat > conftest.i <<EOF
+#ifndef GCC_PRINTF
+#define GCC_PRINTF 0
+#endif
+#ifndef GCC_SCANF
+#define GCC_SCANF 0
+#endif
+#ifndef GCC_NORETURN
+#define GCC_NORETURN /* nothing */
+#endif
+#ifndef GCC_UNUSED
+#define GCC_UNUSED /* nothing */
+#endif
+EOF
+if test "$GCC" = yes
+then
+	AC_CHECKING([for $CC __attribute__ directives])
+cat > conftest.$ac_ext <<EOF
+#line __oline__ "${as_me:-configure}"
+#include "confdefs.h"
+#include "conftest.h"
+#include "conftest.i"
+#if	GCC_PRINTF
+#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
+#else
+#define GCC_PRINTFLIKE(fmt,var) /*nothing*/
+#endif
+#if	GCC_SCANF
+#define GCC_SCANFLIKE(fmt,var)  __attribute__((format(scanf,fmt,var)))
+#else
+#define GCC_SCANFLIKE(fmt,var)  /*nothing*/
+#endif
+extern void wow(char *,...) GCC_SCANFLIKE(1,2);
+extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
+extern void foo(void) GCC_NORETURN;
+int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { return 0; }
+EOF
+	cf_printf_attribute=no
+	cf_scanf_attribute=no
+	for cf_attribute in scanf printf unused noreturn
+	do
+		CF_UPPER(cf_ATTRIBUTE,$cf_attribute)
+		cf_directive="__attribute__(($cf_attribute))"
+		echo "checking for $CC $cf_directive" 1>&AC_FD_CC
+
+		case $cf_attribute in #(vi
+		printf) #(vi
+			cf_printf_attribute=yes
+			cat >conftest.h <<EOF
+#define GCC_$cf_ATTRIBUTE 1
+EOF
+			;;
+		scanf) #(vi
+			cf_scanf_attribute=yes
+			cat >conftest.h <<EOF
+#define GCC_$cf_ATTRIBUTE 1
+EOF
+			;;
+		*) #(vi
+			cat >conftest.h <<EOF
+#define GCC_$cf_ATTRIBUTE $cf_directive
+EOF
+			;;
+		esac
+
+		if AC_TRY_EVAL(ac_compile); then
+			test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
+			cat conftest.h >>confdefs.h
+			case $cf_attribute in #(vi
+			printf) #(vi
+				if test "$cf_printf_attribute" = no ; then
+					cat >>confdefs.h <<EOF
+#define GCC_PRINTFLIKE(fmt,var) /* nothing */
+EOF
+				else
+					cat >>confdefs.h <<EOF
+#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
+EOF
+				fi
+				;;
+			scanf) #(vi
+				if test "$cf_scanf_attribute" = no ; then
+					cat >>confdefs.h <<EOF
+#define GCC_SCANFLIKE(fmt,var) /* nothing */
+EOF
+				else
+					cat >>confdefs.h <<EOF
+#define GCC_SCANFLIKE(fmt,var)  __attribute__((format(scanf,fmt,var)))
+EOF
+				fi
+				;;
+			esac
+		fi
+	done
+else
+	fgrep define conftest.i >>confdefs.h
+fi
+rm -rf conftest*
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_GCC_VERSION version: 5 updated: 2010/04/24 11:02:31
+dnl --------------
+dnl Find version of gcc
+AC_DEFUN([CF_GCC_VERSION],[
+AC_REQUIRE([AC_PROG_CC])
+GCC_VERSION=none
+if test "$GCC" = yes ; then
+	AC_MSG_CHECKING(version of $CC)
+	GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
+	test -z "$GCC_VERSION" && GCC_VERSION=unknown
+	AC_MSG_RESULT($GCC_VERSION)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_GCC_WARNINGS version: 27 updated: 2010/10/23 15:52:32
+dnl ---------------
+dnl Check if the compiler supports useful warning options.  There's a few that
+dnl we don't use, simply because they're too noisy:
+dnl
+dnl	-Wconversion (useful in older versions of gcc, but not in gcc 2.7.x)
+dnl	-Wredundant-decls (system headers make this too noisy)
+dnl	-Wtraditional (combines too many unrelated messages, only a few useful)
+dnl	-Wwrite-strings (too noisy, but should review occasionally).  This
+dnl		is enabled for ncurses using "--enable-const".
+dnl	-pedantic
+dnl
+dnl Parameter:
+dnl	$1 is an optional list of gcc warning flags that a particular
+dnl		application might want to use, e.g., "no-unused" for
+dnl		-Wno-unused
+dnl Special:
+dnl	If $with_ext_const is "yes", add a check for -Wwrite-strings
+dnl
+AC_DEFUN([CF_GCC_WARNINGS],
+[
+AC_REQUIRE([CF_GCC_VERSION])
+CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
+
+cat > conftest.$ac_ext <<EOF
+#line __oline__ "${as_me:-configure}"
+int main(int argc, char *argv[[]]) { return (argv[[argc-1]] == 0) ; }
+EOF
+
+if test "$INTEL_COMPILER" = yes
+then
+# The "-wdXXX" options suppress warnings:
+# remark #1419: external declaration in primary source file
+# remark #1683: explicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem)
+# remark #1684: conversion from pointer to same-sized integral type (potential portability problem)
+# remark #193: zero used for undefined preprocessing identifier
+# remark #593: variable "curs_sb_left_arrow" was set but never used
+# remark #810: conversion from "int" to "Dimension={unsigned short}" may lose significant bits
+# remark #869: parameter "tw" was never referenced
+# remark #981: operands are evaluated in unspecified order
+# warning #279: controlling expression is constant
+
+	AC_CHECKING([for $CC warning options])
+	cf_save_CFLAGS="$CFLAGS"
+	EXTRA_CFLAGS="-Wall"
+	for cf_opt in \
+		wd1419 \
+		wd1683 \
+		wd1684 \
+		wd193 \
+		wd593 \
+		wd279 \
+		wd810 \
+		wd869 \
+		wd981
+	do
+		CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
+		if AC_TRY_EVAL(ac_compile); then
+			test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
+			EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
+		fi
+	done
+	CFLAGS="$cf_save_CFLAGS"
+
+elif test "$GCC" = yes
+then
+	AC_CHECKING([for $CC warning options])
+	cf_save_CFLAGS="$CFLAGS"
+	EXTRA_CFLAGS=
+	cf_warn_CONST=""
+	test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
+	for cf_opt in W Wall \
+		Wbad-function-cast \
+		Wcast-align \
+		Wcast-qual \
+		Winline \
+		Wmissing-declarations \
+		Wmissing-prototypes \
+		Wnested-externs \
+		Wpointer-arith \
+		Wshadow \
+		Wstrict-prototypes \
+		Wundef $cf_warn_CONST $1
+	do
+		CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
+		if AC_TRY_EVAL(ac_compile); then
+			test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
+			case $cf_opt in #(vi
+			Wcast-qual) #(vi
+				CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES"
+				;;
+			Winline) #(vi
+				case $GCC_VERSION in
+				[[34]].*)
+					CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
+					continue;;
+				esac
+				;;
+			esac
+			EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
+		fi
+	done
+	CFLAGS="$cf_save_CFLAGS"
+fi
+rm -rf conftest*
+
+AC_SUBST(EXTRA_CFLAGS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_GNUTLS version: 21 updated: 2010/06/20 18:21:35
+dnl ---------
+dnl Check for gnutls library (TLS "is" SSL)
+dnl $1 = the [optional] directory in which the library may be found
+dnl $2 = the [optional] stub file to provide OpenSSL compatibility
+AC_DEFUN([CF_GNUTLS],[
+	AC_REQUIRE([CF_PKG_CONFIG])
+	cf_cv_have_gnutls=no
+	cf_cv_pkg_config_ssl=no
+
+	CF_ADD_OPTIONAL_PATH($1, [ssl library])
+
+	cf_pkg_gnutls=none
+	if test "x$PKG_CONFIG" != xnone; then
+		cf_pkg_gnutls=ifelse([$2],,gnutls-openssl,gnutls)
+		case $1 in #(vi
+		no) #(vi
+			;;
+		yes) # if no explicit directory given, try pkg-config
+			CF_VERBOSE(checking pkg-config for $cf_pkg_gnutls)
+			if "$PKG_CONFIG" --exists $cf_pkg_gnutls ; then
+				CF_VERBOSE(... found $cf_pkg_gnutls in pkg-config)
+				cf_cv_have_gnutls=yes
+				cf_cv_pkg_config_ssl=yes
+
+				cf_cflags_ssl=`$PKG_CONFIG --cflags $cf_pkg_gnutls`
+				cf_libs_ssl=`$PKG_CONFIG --libs $cf_pkg_gnutls`
+
+				if test -n "$cf_cflags_ssl" ; then
+					case "$cf_cflags_ssl" in #(vi
+					*-I*) #(vi
+						cf_cv_header_path_gnutls=`echo "$cf_cflags_ssl" | sed -e 's/^.*-I//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_header_path_gnutls=/usr/include
+						;;
+					esac
+					if test -d $cf_cv_header_path_gnutls/gnutls ; then
+						cf_cv_header_path_gnutls=$cf_cv_header_path_gnutls/gnutls
+					fi
+					CF_ADD_CFLAGS($cf_cflags_ssl)
+				fi
+
+				if test -n "$cf_libs_ssl" ; then
+					case "x$cf_libs_ssl" in #(vi
+					*-L*) #(vi
+						cf_cv_library_path_gnutls=`echo "$cf_libs_ssl" | sed -e 's/^.*-L//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_library_path_gnutls=/usr/lib
+						;;
+					esac
+					CF_VERBOSE(adding $cf_libs_ssl to LIBS)
+					CF_ADD_LIBS($cf_libs_ssl)
+				fi
+			else
+				CF_VERBOSE(... did not find $cf_pkg_gnutls in pkg-config)
+				cf_pkg_gnutls=none
+			fi
+			;;
+		esac
+	fi
+
+	ifelse([$2],,[AC_DEFINE(USE_GNUTLS_INCL)],[AC_DEFINE(USE_GNUTLS_FUNCS)])
+
+	if test "$cf_cv_have_gnutls" = no ; then
+		cf_gnutls_CPPFLAGS=$CPPFLAGS
+
+		CF_FIND_LINKAGE(CF__SSL_HEAD,
+			CF__SSL_BODY,
+			gnutls,
+			cf_cv_have_gnutls=yes,
+			cf_cv_have_gnutls=no,
+			,
+			ifelse([$2],,[-lgnutls-openssl -lgnutls-extra -lgnutls -lgcrypt],[-lgnutls -lgcrypt]))
+
+		CPPFLAGS=$cf_gnutls_CPPFLAGS
+	fi
+
+	if test "$cf_cv_have_gnutls" = yes ; then
+		if test -n "$cf_cv_header_path_gnutls" ; then
+			AC_DEFINE(USE_SSL)
+			case $cf_cv_header_path_gnutls in
+				/usr/include/gnutls)
+				;;
+			*)
+				CF_ADD_INCDIR($cf_cv_header_path_gnutls)
+				;;
+			esac
+		fi
+		if test -n "$cf_cv_library_path_gnutls" ; then
+			CF_ADD_LIBDIR($cf_cv_library_path_gnutls)
+		fi
+		CF_ADD_LIBS(-lgnutls -lgcrypt)
+
+		ifelse([$2],,
+			[if test "$cf_pkg_gnutls" = none ; then
+				AC_CHECK_LIB(gnutls-openssl,SSL_connect,
+					[CF_ADD_LIBS(-lgnutls-openssl)],
+					[AC_CHECK_LIB(gnutls-extra,SSL_connect,
+					[CF_ADD_LIBS(-lgnutls-extra)],
+					[AC_MSG_ERROR(cannot find gnutls openssl functions)])])
+			fi],[EXTRA_OBJS="$EXTRA_OBJS $2"])
+
+		CF_CHECK_SSL_X509
+	fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_GNU_SOURCE version: 6 updated: 2005/07/09 13:23:07
+dnl -------------
+dnl Check if we must define _GNU_SOURCE to get a reasonable value for
+dnl _XOPEN_SOURCE, upon which many POSIX definitions depend.  This is a defect
+dnl (or misfeature) of glibc2, which breaks portability of many applications,
+dnl since it is interwoven with GNU extensions.
+dnl
+dnl Well, yes we could work around it...
+AC_DEFUN([CF_GNU_SOURCE],
+[
+AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[
+AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifndef _XOPEN_SOURCE
+make an error
+#endif],
+	[cf_cv_gnu_source=no],
+	[cf_save="$CPPFLAGS"
+	 CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+	 AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifdef _XOPEN_SOURCE
+make an error
+#endif],
+	[cf_cv_gnu_source=no],
+	[cf_cv_gnu_source=yes])
+	CPPFLAGS="$cf_save"
+	])
+])
+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_HEADER_PATH version: 12 updated: 2010/05/05 05:22:40
+dnl --------------
+dnl Construct a search-list of directories for a nonstandard header-file
+dnl
+dnl Parameters
+dnl	$1 = the variable to return as result
+dnl	$2 = the package name
+AC_DEFUN([CF_HEADER_PATH],
+[
+$1=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+			CF_ADD_SUBDIR_PATH($1,$2,include,$cf_header_path,NONE)
+			cf_header_path_list="$cf_header_path_list [$]$1"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+CF_SUBDIR_PATH($1,$2,include)
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    $1="[$]$1 $includedir"
+	test -d $includedir/$2 && $1="[$]$1 $includedir/$2"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && $1="[$]$1 $oldincludedir"
+	test -d $oldincludedir/$2 && $1="[$]$1 $oldincludedir/$2"
+}
+
+$1="[$]$1 $cf_header_path_list"
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_HELP_MESSAGE version: 3 updated: 1998/01/14 10:56:23
+dnl ---------------
+dnl Insert text into the help-message, for readability, from AC_ARG_WITH.
+AC_DEFUN([CF_HELP_MESSAGE],
+[AC_DIVERT_HELP([$1])dnl
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_INET_ADDR version: 5 updated: 2010/06/20 09:24:28
+dnl ------------
+dnl For Lynx, check if the libraries we have found give us inet_aton, or
+dnl inet_addr.  If not, try to find the latter function with -lbind or
+dnl -lresolv, and put that on the end of the libraries, i.e., after the network
+dnl libraries.
+dnl
+dnl FIXME: the inner cases will probably need work on the header files.
+AC_DEFUN([CF_INET_ADDR],[
+AC_CACHE_CHECK(for inet_aton function,cf_cv_have_inet_aton,[
+AC_TRY_LINK([#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+],[inet_aton(0, (struct in_addr *)0)],
+    [cf_cv_have_inet_aton=yes],
+    [cf_cv_have_inet_aton=no])])
+if test "$cf_cv_have_inet_aton" = yes ; then
+    AC_DEFINE(HAVE_INET_ATON)
+else
+    AC_CACHE_CHECK(for inet_addr function,cf_cv_have_inet_addr,[
+    AC_TRY_LINK([#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+    ],[inet_addr(0)],
+	[cf_cv_have_inet_addr=yes],
+	[cf_cv_have_inet_addr=no])])
+    if test "$cf_cv_have_inet_addr" = no ; then
+	AC_CACHE_CHECK(for library with inet_addr,cf_cv_lib_inet_addr,[
+	    cf_save_LIBS="$LIBS"
+	    for cf_inetlib in -lbind -lresolv
+	    do
+		LIBS="$cf_save_LIBS $cf_inetlib"
+		AC_TRY_LINK([#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+		],[inet_addr(0)],
+		    [cf_cv_lib_inet_addr=$cf_inetlib],
+		    [cf_cv_lib_inet_addr=no])
+		LIBS="$cf_save_LIBS"
+		test "$cf_cv_lib_inet_addr" != no && break
+	    done
+	])
+	if test "$cf_cv_lib_inet_addr" != no ; then
+	    CF_ADD_LIBS($cf_cv_lib_inet_addr)
+	else
+	    AC_MSG_WARN(Unable to find library for inet_addr function)
+	fi
+    fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_INTEL_COMPILER version: 4 updated: 2010/05/26 05:38:42
+dnl -----------------
+dnl Check if the given compiler is really the Intel compiler for Linux.  It
+dnl tries to imitate gcc, but does not return an error when it finds a mismatch
+dnl between prototypes, e.g., as exercised by CF_MISSING_CHECK.
+dnl
+dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to
+dnl ensure that it is not mistaken for gcc/g++.  It is normally invoked from
+dnl the wrappers for gcc and g++ warnings.
+dnl
+dnl $1 = GCC (default) or GXX
+dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS
+dnl $3 = CFLAGS (default) or CXXFLAGS
+AC_DEFUN([CF_INTEL_COMPILER],[
+ifelse([$2],,INTEL_COMPILER,[$2])=no
+
+if test "$ifelse([$1],,[$1],GCC)" = yes ; then
+	case $host_os in
+	linux*|gnu*)
+		AC_MSG_CHECKING(if this is really Intel ifelse([$1],GXX,C++,C) compiler)
+		cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])"
+		ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -no-gcc"
+		AC_TRY_COMPILE([],[
+#ifdef __INTEL_COMPILER
+#else
+make an error
+#endif
+],[ifelse([$2],,INTEL_COMPILER,[$2])=yes
+cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
+],[])
+		ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS"
+		AC_MSG_RESULT($ifelse([$2],,INTEL_COMPILER,[$2]))
+		;;
+	esac
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_LARGEFILE version: 7 updated: 2007/06/02 11:58:50
+dnl ------------
+dnl Add checks for large file support.
+AC_DEFUN([CF_LARGEFILE],[
+ifdef([AC_FUNC_FSEEKO],[
+    AC_SYS_LARGEFILE
+    if test "$enable_largefile" != no ; then
+	AC_FUNC_FSEEKO
+
+	# Normally we would collect these definitions in the config.h,
+	# but (like _XOPEN_SOURCE), some environments rely on having these
+	# defined before any of the system headers are included.  Another
+	# case comes up with C++, e.g., on AIX the compiler compiles the
+	# header files by themselves before looking at the body files it is
+	# told to compile.  For ncurses, those header files do not include
+	# the config.h
+	test "$ac_cv_sys_large_files"      != no && CPPFLAGS="$CPPFLAGS -D_LARGE_FILES "
+	test "$ac_cv_sys_largefile_source" != no && CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE "
+	test "$ac_cv_sys_file_offset_bits" != no && CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits "
+
+	AC_CACHE_CHECK(whether to use struct dirent64, cf_cv_struct_dirent64,[
+		AC_TRY_COMPILE([
+#include <sys/types.h>
+#include <dirent.h>
+		],[
+		/* if transitional largefile support is setup, this is true */
+		extern struct dirent64 * readdir(DIR *);
+		struct dirent64 *x = readdir((DIR *)0);
+		struct dirent *y = readdir((DIR *)0);
+		int z = x - y;
+		],
+		[cf_cv_struct_dirent64=yes],
+		[cf_cv_struct_dirent64=no])
+	])
+	test "$cf_cv_struct_dirent64" = yes && AC_DEFINE(HAVE_STRUCT_DIRENT64)
+    fi
+])
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_LASTLOG version: 4 updated: 2002/10/27 23:21:42
+dnl ----------
+dnl Check for header defining _PATH_LASTLOG, or failing that, see if the lastlog
+dnl file exists.
+AC_DEFUN([CF_LASTLOG],
+[
+AC_CHECK_HEADERS(lastlog.h paths.h)
+AC_CACHE_CHECK(for lastlog path,cf_cv_path_lastlog,[
+AC_TRY_COMPILE([
+#include <sys/types.h>
+#ifdef HAVE_LASTLOG_H
+#include <lastlog.h>
+#else
+#ifdef HAVE_PATHS_H
+#include <paths.h>
+#endif
+#endif],[char *path = _PATH_LASTLOG],
+	[cf_cv_path_lastlog="_PATH_LASTLOG"],
+	[if test -f /usr/adm/lastlog ; then
+	 	cf_cv_path_lastlog=/usr/adm/lastlog
+	else
+		cf_cv_path_lastlog=no
+	fi])
+])
+test $cf_cv_path_lastlog != no && AC_DEFINE(USE_LASTLOG)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_LD_RPATH_OPT version: 5 updated: 2011/07/17 14:48:41
+dnl ---------------
+dnl For the given system and compiler, find the compiler flags to pass to the
+dnl loader to use the "rpath" feature.
+AC_DEFUN([CF_LD_RPATH_OPT],
+[
+AC_REQUIRE([CF_CHECK_CACHE])
+
+LD_RPATH_OPT=
+AC_MSG_CHECKING(for an rpath option)
+case $cf_cv_system_name in #(vi
+irix*) #(vi
+	if test "$GCC" = yes; then
+		LD_RPATH_OPT="-Wl,-rpath,"
+	else
+		LD_RPATH_OPT="-rpath "
+	fi
+	;;
+linux*|gnu*|k*bsd*-gnu) #(vi
+	LD_RPATH_OPT="-Wl,-rpath,"
+	;;
+openbsd[[2-9]].*|mirbsd*) #(vi
+	LD_RPATH_OPT="-Wl,-rpath,"
+	;;
+dragonfly*|freebsd*) #(vi
+	LD_RPATH_OPT="-rpath "
+	;;
+netbsd*) #(vi
+	LD_RPATH_OPT="-Wl,-rpath,"
+	;;
+osf*|mls+*) #(vi
+	LD_RPATH_OPT="-rpath "
+	;;
+solaris2*) #(vi
+	LD_RPATH_OPT="-R"
+	;;
+*)
+	;;
+esac
+AC_MSG_RESULT($LD_RPATH_OPT)
+
+case "x$LD_RPATH_OPT" in #(vi
+x-R*)
+	AC_MSG_CHECKING(if we need a space after rpath option)
+	cf_save_LIBS="$LIBS"
+	CF_ADD_LIBS(${LD_RPATH_OPT}$libdir)
+	AC_TRY_LINK(, , cf_rpath_space=no, cf_rpath_space=yes)
+	LIBS="$cf_save_LIBS"
+	AC_MSG_RESULT($cf_rpath_space)
+	test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT "
+	;;
+esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_LIBRARY_PATH version: 9 updated: 2010/03/28 12:52:50
+dnl ---------------
+dnl Construct a search-list of directories for a nonstandard library-file
+dnl
+dnl Parameters
+dnl	$1 = the variable to return as result
+dnl	$2 = the package name
+AC_DEFUN([CF_LIBRARY_PATH],
+[
+$1=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+			CF_ADD_SUBDIR_PATH($1,$2,lib,$cf_library_path,NONE)
+			cf_library_path_list="$cf_library_path_list [$]$1"
+			;;
+		esac
+	done
+fi
+
+CF_SUBDIR_PATH($1,$2,lib)
+
+$1="$cf_library_path_list [$]$1"
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_LOCALE version: 4 updated: 2003/02/16 08:16:04
+dnl ---------
+dnl Check if we have setlocale() and its header, <locale.h>
+dnl The optional parameter $1 tells what to do if we do have locale support.
+AC_DEFUN([CF_LOCALE],
+[
+AC_MSG_CHECKING(for setlocale())
+AC_CACHE_VAL(cf_cv_locale,[
+AC_TRY_LINK([#include <locale.h>],
+	[setlocale(LC_ALL, "")],
+	[cf_cv_locale=yes],
+	[cf_cv_locale=no])
+	])
+AC_MSG_RESULT($cf_cv_locale)
+test $cf_cv_locale = yes && { ifelse($1,,AC_DEFINE(LOCALE),[$1]) }
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_MAKE_TAGS version: 6 updated: 2010/10/23 15:52:32
+dnl ------------
+dnl Generate tags/TAGS targets for makefiles.  Do not generate TAGS if we have
+dnl a monocase filesystem.
+AC_DEFUN([CF_MAKE_TAGS],[
+AC_REQUIRE([CF_MIXEDCASE_FILENAMES])
+
+AC_CHECK_PROGS(CTAGS, exctags ctags)
+AC_CHECK_PROGS(ETAGS, exetags etags)
+
+AC_CHECK_PROG(MAKE_LOWER_TAGS, ${CTAGS:-ctags}, yes, no)
+
+if test "$cf_cv_mixedcase" = yes ; then
+	AC_CHECK_PROG(MAKE_UPPER_TAGS, ${ETAGS:-etags}, yes, no)
+else
+	MAKE_UPPER_TAGS=no
+fi
+
+if test "$MAKE_UPPER_TAGS" = yes ; then
+	MAKE_UPPER_TAGS=
+else
+	MAKE_UPPER_TAGS="#"
+fi
+
+if test "$MAKE_LOWER_TAGS" = yes ; then
+	MAKE_LOWER_TAGS=
+else
+	MAKE_LOWER_TAGS="#"
+fi
+
+AC_SUBST(CTAGS)
+AC_SUBST(ETAGS)
+
+AC_SUBST(MAKE_UPPER_TAGS)
+AC_SUBST(MAKE_LOWER_TAGS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_MATH_LIB version: 8 updated: 2010/05/29 16:31:02
+dnl -----------
+dnl Checks for libraries.  At least one UNIX system, Apple Macintosh
+dnl Rhapsody 5.5, does not have -lm.  We cannot use the simpler
+dnl AC_CHECK_LIB(m,sin), because that fails for C++.
+AC_DEFUN([CF_MATH_LIB],
+[
+AC_CACHE_CHECK(if -lm needed for math functions,
+	cf_cv_need_libm,[
+	AC_TRY_LINK([
+	#include <stdio.h>
+	#include <math.h>
+	],
+	[double x = rand(); printf("result = %g\n", ]ifelse([$2],,sin(x),$2)[)],
+	[cf_cv_need_libm=no],
+	[cf_cv_need_libm=yes])])
+if test "$cf_cv_need_libm" = yes
+then
+ifelse($1,,[
+	CF_ADD_LIB(m)
+],[$1=-lm])
+fi
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55
+dnl ----------------------
+dnl Check if the file-system supports mixed-case filenames.  If we're able to
+dnl create a lowercase name and see it as uppercase, it doesn't support that.
+AC_DEFUN([CF_MIXEDCASE_FILENAMES],
+[
+AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
+if test "$cross_compiling" = yes ; then
+	case $target_alias in #(vi
+	*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
+		cf_cv_mixedcase=no
+		;;
+	*)
+		cf_cv_mixedcase=yes
+		;;
+	esac
+else
+	rm -f conftest CONFTEST
+	echo test >conftest
+	if test -f CONFTEST ; then
+		cf_cv_mixedcase=no
+	else
+		cf_cv_mixedcase=yes
+	fi
+	rm -f conftest CONFTEST
+fi
+])
+test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_MSG_LOG version: 5 updated: 2010/10/23 15:52:32
+dnl ----------
+dnl Write a debug message to config.log, along with the line number in the
+dnl configure script.
+AC_DEFUN([CF_MSG_LOG],[
+echo "${as_me:-configure}:__oline__: testing $* ..." 1>&AC_FD_CC
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_BROKEN version: 7 updated: 2010/10/23 15:54:49
+dnl -----------------
+dnl Check for pre-1.9.9g ncurses (among other problems, the most obvious is
+dnl that color combinations don't work).
+AC_DEFUN([CF_NCURSES_BROKEN],
+[
+AC_REQUIRE([CF_NCURSES_VERSION])
+if test "$cf_cv_ncurses_version" != no ; then
+AC_MSG_CHECKING(for obsolete/broken version of ncurses)
+AC_CACHE_VAL(cf_cv_ncurses_broken,[
+AC_TRY_COMPILE([
+#include <${cf_cv_ncurses_header:-curses.h}>],[
+#if defined(NCURSES_VERSION) && defined(wgetbkgd)
+	make an error
+#else
+	int x = 1
+#endif
+],
+	[cf_cv_ncurses_broken=no],
+	[cf_cv_ncurses_broken=yes])
+])
+AC_MSG_RESULT($cf_cv_ncurses_broken)
+if test "$cf_cv_ncurses_broken" = yes ; then
+	AC_MSG_WARN(hmm... you should get an up-to-date version of ncurses)
+	AC_DEFINE(NCURSES_BROKEN)
+fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_CC_CHECK version: 4 updated: 2007/07/29 10:39:05
+dnl -------------------
+dnl Check if we can compile with ncurses' header file
+dnl $1 is the cache variable to set
+dnl $2 is the header-file to include
+dnl $3 is the root name (ncurses or ncursesw)
+AC_DEFUN([CF_NCURSES_CC_CHECK],[
+	AC_TRY_COMPILE([
+]ifelse($3,ncursesw,[
+#define _XOPEN_SOURCE_EXTENDED
+#undef  HAVE_LIBUTF8_H	/* in case we used CF_UTF8_LIB */
+#define HAVE_LIBUTF8_H	/* to force ncurses' header file to use cchar_t */
+])[
+#include <$2>],[
+#ifdef NCURSES_VERSION
+]ifelse($3,ncursesw,[
+#ifndef WACS_BSSB
+	make an error
+#endif
+])[
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+	make an error
+#endif
+#endif
+	]
+	,[$1=$2]
+	,[$1=no])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_CONFIG version: 9 updated: 2011/11/26 15:42:05
+dnl -----------------
+dnl Tie together the configure-script macros for ncurses.
+dnl Prefer the "-config" script from ncurses 6.x, to simplify analysis.
+dnl Allow that to be overridden using the $NCURSES_CONFIG environment variable.
+dnl
+dnl $1 is the root library name (default: "ncurses")
+AC_DEFUN([CF_NCURSES_CONFIG],
+[
+cf_ncuconfig_root=ifelse($1,,ncurses,$1)
+
+echo "Looking for ${cf_ncuconfig_root}-config"
+
+CF_ACVERSION_CHECK(2.52,
+	[AC_CHECK_TOOLS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)],
+	[AC_PATH_PROGS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)])
+
+if test "$NCURSES_CONFIG" != none ; then
+
+CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`"
+CF_ADD_LIBS(`$NCURSES_CONFIG --libs`)
+
+# even with config script, some packages use no-override for curses.h
+CF_CURSES_HEADER(ifelse($1,,ncurses,$1))
+
+dnl like CF_NCURSES_CPPFLAGS
+AC_DEFINE(NCURSES)
+
+dnl like CF_NCURSES_LIBS
+CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_ncuconfig_root)
+AC_DEFINE_UNQUOTED($cf_nculib_ROOT)
+
+dnl like CF_NCURSES_VERSION
+cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+
+else
+
+CF_NCURSES_CPPFLAGS(ifelse($1,,ncurses,$1))
+CF_NCURSES_LIBS(ifelse($1,,ncurses,$1))
+
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_CPPFLAGS version: 20 updated: 2010/11/20 17:02:38
+dnl -------------------
+dnl Look for the SVr4 curses clone 'ncurses' in the standard places, adjusting
+dnl the CPPFLAGS variable so we can include its header.
+dnl
+dnl The header files may be installed as either curses.h, or ncurses.h (would
+dnl be obsolete, except that some packagers prefer this name to distinguish it
+dnl from a "native" curses implementation).  If not installed for overwrite,
+dnl the curses.h file would be in an ncurses subdirectory (e.g.,
+dnl /usr/include/ncurses), but someone may have installed overwriting the
+dnl vendor's curses.  Only very old versions (pre-1.9.2d, the first autoconf'd
+dnl version) of ncurses don't define either __NCURSES_H or NCURSES_VERSION in
+dnl the header.
+dnl
+dnl If the installer has set $CFLAGS or $CPPFLAGS so that the ncurses header
+dnl is already in the include-path, don't even bother with this, since we cannot
+dnl easily determine which file it is.  In this case, it has to be <curses.h>.
+dnl
+dnl The optional parameter gives the root name of the library, in case it is
+dnl not installed as the default curses library.  That is how the
+dnl wide-character version of ncurses is installed.
+AC_DEFUN([CF_NCURSES_CPPFLAGS],
+[AC_REQUIRE([CF_WITH_CURSES_DIR])
+
+AC_PROVIDE([CF_CURSES_CPPFLAGS])dnl
+cf_ncuhdr_root=ifelse($1,,ncurses,$1)
+
+test -n "$cf_cv_curses_dir" && \
+test "$cf_cv_curses_dir" != "no" && { \
+  CF_ADD_INCDIR($cf_cv_curses_dir/include/$cf_ncuhdr_root)
+}
+
+AC_CACHE_CHECK(for $cf_ncuhdr_root header in include-path, cf_cv_ncurses_h,[
+	cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
+	( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+	for cf_header in $cf_header_list
+	do
+		CF_NCURSES_CC_CHECK(cf_cv_ncurses_h,$cf_header,$1)
+		test "$cf_cv_ncurses_h" != no && break
+	done
+])
+
+CF_NCURSES_HEADER
+CF_TERM_HEADER
+
+# some applications need this, but should check for NCURSES_VERSION
+AC_DEFINE(NCURSES)
+
+CF_NCURSES_VERSION
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_HEADER version: 2 updated: 2008/03/23 14:48:54
+dnl -----------------
+dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common
+dnl variations of ncurses' installs.
+dnl
+dnl See also CF_CURSES_HEADER, which sets the same cache variable.
+AC_DEFUN([CF_NCURSES_HEADER],[
+
+if test "$cf_cv_ncurses_h" != no ; then
+	cf_cv_ncurses_header=$cf_cv_ncurses_h
+else
+
+AC_CACHE_CHECK(for $cf_ncuhdr_root include-path, cf_cv_ncurses_h2,[
+	test -n "$verbose" && echo
+	CF_HEADER_PATH(cf_search,$cf_ncuhdr_root)
+	test -n "$verbose" && echo search path $cf_search
+	cf_save2_CPPFLAGS="$CPPFLAGS"
+	for cf_incdir in $cf_search
+	do
+		CF_ADD_INCDIR($cf_incdir)
+		for cf_header in \
+			ncurses.h \
+			curses.h
+		do
+			CF_NCURSES_CC_CHECK(cf_cv_ncurses_h2,$cf_header,$1)
+			if test "$cf_cv_ncurses_h2" != no ; then
+				cf_cv_ncurses_h2=$cf_incdir/$cf_header
+				test -n "$verbose" && echo $ac_n "	... found $ac_c" 1>&AC_FD_MSG
+				break
+			fi
+			test -n "$verbose" && echo "	... tested $cf_incdir/$cf_header" 1>&AC_FD_MSG
+		done
+		CPPFLAGS="$cf_save2_CPPFLAGS"
+		test "$cf_cv_ncurses_h2" != no && break
+	done
+	test "$cf_cv_ncurses_h2" = no && AC_MSG_ERROR(not found)
+	])
+
+	CF_DIRNAME(cf_1st_incdir,$cf_cv_ncurses_h2)
+	cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
+	if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
+		cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+	fi
+	CF_ADD_INCDIR($cf_1st_incdir)
+
+fi
+
+# Set definitions to allow ifdef'ing for ncurses.h
+
+case $cf_cv_ncurses_header in # (vi
+*ncurses.h)
+	AC_DEFINE(HAVE_NCURSES_H)
+	;;
+esac
+
+case $cf_cv_ncurses_header in # (vi
+ncurses/curses.h|ncurses/ncurses.h)
+	AC_DEFINE(HAVE_NCURSES_NCURSES_H)
+	;;
+ncursesw/curses.h|ncursesw/ncurses.h)
+	AC_DEFINE(HAVE_NCURSESW_NCURSES_H)
+	;;
+esac
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_LIBS version: 16 updated: 2010/11/20 17:02:38
+dnl ---------------
+dnl Look for the ncurses library.  This is a little complicated on Linux,
+dnl because it may be linked with the gpm (general purpose mouse) library.
+dnl Some distributions have gpm linked with (bsd) curses, which makes it
+dnl unusable with ncurses.  However, we don't want to link with gpm unless
+dnl ncurses has a dependency, since gpm is normally set up as a shared library,
+dnl and the linker will record a dependency.
+dnl
+dnl The optional parameter gives the root name of the library, in case it is
+dnl not installed as the default curses library.  That is how the
+dnl wide-character version of ncurses is installed.
+AC_DEFUN([CF_NCURSES_LIBS],
+[AC_REQUIRE([CF_NCURSES_CPPFLAGS])
+
+cf_nculib_root=ifelse($1,,ncurses,$1)
+	# This works, except for the special case where we find gpm, but
+	# ncurses is in a nonstandard location via $LIBS, and we really want
+	# to link gpm.
+cf_ncurses_LIBS=""
+cf_ncurses_SAVE="$LIBS"
+AC_CHECK_LIB(gpm,Gpm_Open,
+	[AC_CHECK_LIB(gpm,initscr,
+		[LIBS="$cf_ncurses_SAVE"],
+		[cf_ncurses_LIBS="-lgpm"])])
+
+case $host_os in #(vi
+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).
+	if test "$cf_nculib_root" = ncurses ; then
+		AC_CHECK_LIB(mytinfo,tgoto,[cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"])
+	fi
+	;;
+esac
+
+CF_ADD_LIBS($cf_ncurses_LIBS)
+
+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+then
+	CF_ADD_LIBS(-l$cf_nculib_root)
+else
+	CF_FIND_LIBRARY($cf_nculib_root,$cf_nculib_root,
+		[#include <${cf_cv_ncurses_header:-curses.h}>],
+		[initscr()],
+		initscr)
+fi
+
+if test -n "$cf_ncurses_LIBS" ; then
+	AC_MSG_CHECKING(if we can link $cf_nculib_root without $cf_ncurses_LIBS)
+	cf_ncurses_SAVE="$LIBS"
+	for p in $cf_ncurses_LIBS ; do
+		q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+		if test "$q" != "$LIBS" ; then
+			LIBS="$q"
+		fi
+	done
+	AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+		[initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);],
+		[AC_MSG_RESULT(yes)],
+		[AC_MSG_RESULT(no)
+		 LIBS="$cf_ncurses_SAVE"])
+fi
+
+CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_nculib_root)
+AC_DEFINE_UNQUOTED($cf_nculib_ROOT)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_VERSION version: 13 updated: 2010/10/23 15:54:49
+dnl ------------------
+dnl Check for the version of ncurses, to aid in reporting bugs, etc.
+dnl Call CF_CURSES_CPPFLAGS first, or CF_NCURSES_CPPFLAGS.  We don't use
+dnl AC_REQUIRE since that does not work with the shell's if/then/else/fi.
+AC_DEFUN([CF_NCURSES_VERSION],
+[
+AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
+AC_CACHE_CHECK(for ncurses version, cf_cv_ncurses_version,[
+	cf_cv_ncurses_version=no
+	cf_tempfile=out$$
+	rm -f $cf_tempfile
+	AC_TRY_RUN([
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <stdio.h>
+int main()
+{
+	FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+	fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+	fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+	fprintf(fp, "old\n");
+# else
+	make an error
+# endif
+#endif
+	${cf_cv_main_return:-return}(0);
+}],[
+	cf_cv_ncurses_version=`cat $cf_tempfile`],,[
+
+	# This will not work if the preprocessor splits the line after the
+	# Autoconf token.  The 'unproto' program does that.
+	cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header:-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+	cf_try="$ac_cpp conftest.$ac_ext 2>&AC_FD_CC | grep '^Autoconf ' >conftest.out"
+	AC_TRY_EVAL(cf_try)
+	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"
+		rm -f conftest.out
+	fi
+])
+	rm -f $cf_tempfile
+])
+test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NETLIBS version: 8 updated: 2011/10/03 05:24:34
+dnl ----------
+dnl After checking for functions in the default $LIBS, make a further check
+dnl for the functions that are netlib-related (these aren't always in the
+dnl libc, etc., and have to be handled specially because there are conflicting
+dnl and broken implementations.
+dnl Common library requirements (in order):
+dnl	-lresolv -lsocket -lnsl
+dnl	-lnsl -lsocket
+dnl	-lsocket
+dnl	-lbsd
+dnl	-lnetwork
+AC_DEFUN([CF_NETLIBS],[
+cf_test_netlibs=no
+
+AC_MSG_CHECKING(for network libraries)
+
+AC_CACHE_VAL(cf_cv_netlibs,[
+AC_MSG_RESULT(working...)
+
+cf_cv_netlibs=""
+cf_test_netlibs=yes
+
+case $host_os in #(vi
+mingw32) # (vi
+	AC_CHECK_HEADERS( windows.h winsock.h winsock2.h )
+
+	if test "$ac_cv_header_winsock2_h" = "yes" ; then
+		cf_winsock_lib="-lws2_32"
+	elif test "$ac_cv_header_winsock_h" = "yes" ; then
+		cf_winsock_lib="-lwsock32"
+	fi
+
+	cf_save_LIBS="$LIBS"
+	CF_ADD_LIBS($cf_winsock_lib)
+
+	AC_TRY_LINK([
+#ifdef HAVE_WINDOWS_H
+#undef WIN32_LEAN_AND_MEAN
+#define WIN32_LEAN_AND_MEAN
+#include <windows.h>
+#ifdef HAVE_WINSOCK2_H
+#include <winsock2.h>
+#else
+#ifdef HAVE_WINSOCK_H
+#include <winsock.h>
+#endif
+#endif
+#endif
+],[
+	char buffer[1024];
+	gethostname(buffer, sizeof(buffer));],
+	[cf_cv_netlibs="$cf_winsock_lib $cf_cv_netlibs"],
+	[AC_MSG_ERROR(Cannot link against winsock library)])
+
+	LIBS="$cf_save_LIBS"
+	;;
+*)
+	AC_CHECK_FUNCS(gethostname,,[
+		CF_RECHECK_FUNC(gethostname,nsl,cf_cv_netlibs,[
+			CF_RECHECK_FUNC(gethostname,socket,cf_cv_netlibs)])])
+
+	AC_CHECK_LIB(inet, main, cf_cv_netlibs="-linet $cf_cv_netlibs")
+
+	if test "$ac_cv_func_lsocket" != no ; then
+	AC_CHECK_FUNCS(socket,,[
+		CF_RECHECK_FUNC(socket,socket,cf_cv_netlibs,[
+			CF_RECHECK_FUNC(socket,bsd,cf_cv_netlibs)])])
+	fi
+
+	AC_CHECK_FUNCS(gethostbyname,,[
+		CF_RECHECK_FUNC(gethostbyname,nsl,cf_cv_netlibs)])
+
+	AC_CHECK_FUNCS(inet_ntoa,,[
+		CF_RECHECK_FUNC(inet_ntoa,nsl,cf_cv_netlibs)])
+
+	AC_CHECK_FUNCS(gethostbyname,,[
+		CF_RECHECK_FUNC(gethostbyname,network,cf_cv_netlibs)])
+
+	AC_CHECK_FUNCS(strcasecmp,,[
+		CF_RECHECK_FUNC(strcasecmp,resolv,cf_cv_netlibs)])
+	;;
+esac
+])
+
+case $cf_cv_netlibs in #(vi
+*ws2_32*)
+	AC_DEFINE(USE_WINSOCK2_H)
+	;;
+esac
+
+CF_ADD_LIBS($cf_cv_netlibs)
+test $cf_test_netlibs = no && echo "$cf_cv_netlibs" >&AC_FD_MSG
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NGROUPS version: 3 updated: 2001/12/27 07:55:07
+dnl ----------
+dnl Check for the symbol NGROUPS
+AC_DEFUN([CF_NGROUPS],
+[
+AC_MSG_CHECKING(if NGROUPS is defined)
+AC_CACHE_VAL(cf_cv_ngroups,[
+AC_TRY_COMPILE([
+#if HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif
+#if HAVE_LIMITS_H
+#include <limits.h>
+#endif
+],[int x = NGROUPS],
+	[cf_cv_ngroups=yes],
+	[AC_TRY_COMPILE([
+#if HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif
+#if HAVE_LIMITS_H
+#include <limits.h>
+#endif
+],[int x = NGROUPS_MAX],
+		[cf_cv_ngroups=NGROUPS_MAX],
+		[cf_cv_ngroups=no])
+	])
+AC_MSG_RESULT($cf_cv_ngroups)
+])
+if test "$cf_cv_ngroups" = no ; then
+	AC_DEFINE(NGROUPS,16)
+elif test "$cf_cv_ngroups" = NGROUPS_MAX ; then
+	AC_DEFINE(NGROUPS,NGROUPS_MAX)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NO_LEAKS_OPTION version: 4 updated: 2006/12/16 14:24:05
+dnl ------------------
+dnl see CF_WITH_NO_LEAKS
+AC_DEFUN([CF_NO_LEAKS_OPTION],[
+AC_MSG_CHECKING(if you want to use $1 for testing)
+AC_ARG_WITH($1,
+	[$2],
+	[AC_DEFINE($3)ifelse([$4],,[
+	 $4
+])
+	: ${with_cflags:=-g}
+	: ${with_no_leaks:=yes}
+	 with_$1=yes],
+	[with_$1=])
+AC_MSG_RESULT(${with_$1:-no})
+
+case .$with_cflags in #(vi
+.*-g*)
+	case .$CFLAGS in #(vi
+	.*-g*) #(vi
+		;;
+	*)
+		CF_ADD_CFLAGS([-g])
+		;;
+	esac
+	;;
+esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_NSS_COMPAT version: 3 updated: 2010/06/20 09:24:28
+dnl -------------
+dnl Check for NSS compatible SSL libraries
+dnl $1 = the [optional] directory in which the library may be found
+AC_DEFUN([CF_NSS_COMPAT],[
+check=`pkg-config --version 2>/dev/null`
+if test -n "$check" ; then
+	cf_ssl_library=`pkg-config --libs nss`
+	cf_ssl_cflags=`pkg-config --cflags nss`
+else
+	# Without pkg-config, we'll kludge in some defaults
+	cf_ssl_library="-lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl"
+	cf_ssl_cflags="-I/usr/include/nss3 -I/usr/include/nspr4"
+fi
+cf_ssl_library="-lnss_compat_ossl $cf_ssl_library"
+
+case "$1" in #(vi
+no) #(vi
+	cf_ssl_root=
+	;;
+yes) #(vi
+	AC_CHECK_LIB(nss_compat_ossl, SSL_get_version,[],[
+		cf_ssl_root=/usr/local/nss_compat_ossl
+		if test -d $cf_ssl_root ; then
+			CF_VERBOSE(assume it is in $cf_ssl_root)
+			cf_ssl_library="-L$cf_ssl_root/lib $cf_ssl_library"
+		else
+			AC_MSG_ERROR(cannot find NSS compilant libraries)
+		fi
+	],
+	[-lnss_compat_ossl])
+	;;
+*)
+	if test -d $1 ; then
+		if test -d $1/include ; then
+			cf_ssl_root=$1
+		elif test -d $1/../include ; then
+			cf_ssl_root=$1/..
+		else
+			AC_MSG_ERROR(cannot find NSS compilant library under $1)
+		fi
+		cf_ssl_library="-L$cf_ssl_root/lib $cf_ssl_library"
+	else
+		AC_MSG_WARN(expected a directory: $1)
+	fi
+	;;
+esac
+CF_ADD_LIBS($cf_ssl_library)
+
+cf_ssl_subincs=yes
+if test -n "$cf_ssl_root" ; then
+	if test -d $cf_ssl_root/include ; then
+		cf_ssl_cflags="-I$cf_ssl_root/include  $cf_ssl_cflags"
+		test -d $cf_ssl_root/include/nss_compat_ossl || cf_ssl_subincs=no
+	fi
+fi
+CF_ADD_CFLAGS($cf_ssl_cflags)
+
+if test "$cf_ssl_subincs" = yes ; then
+AC_MSG_CHECKING(for NSS compilant include directory)
+AC_TRY_COMPILE([
+#include <stdio.h>
+#include <nss_compat_ossl/nss_compat_ossl.h>],
+	[SSL_shutdown((SSL *)0)],
+	[cf_ssl_incl=yes],
+	[cf_ssl_incl=no])
+AC_MSG_RESULT($cf_ssl_incl)
+test "$cf_ssl_incl" = yes && AC_DEFINE(USE_NSS_COMPAT_INCL)
+fi
+
+AC_MSG_CHECKING(if we can link to NSS compilant library)
+AC_TRY_LINK([
+#include <stdio.h>
+#ifdef USE_NSS_COMPAT_INCL
+#include <nss_compat_ossl/nss_compat_ossl.h>
+#else
+#include <ssl.h>
+#endif
+],
+	[SSL_shutdown((SSL *)0)],
+	[cf_ssl_library=yes],
+	[cf_ssl_library=no])
+AC_MSG_RESULT($cf_ssl_library)
+if test "$cf_ssl_library" = yes ; then
+	AC_DEFINE(USE_SSL)
+	AC_DEFINE(USE_X509_SUPPORT)
+else
+	AC_MSG_ERROR(Cannot link with NSS compilant libraries)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_OUR_MESSAGES version: 7 updated: 2004/09/12 19:45:55
+dnl ---------------
+dnl Check if we use the messages included with this program
+dnl
+dnl $1 specifies either Makefile or makefile, defaulting to the former.
+dnl
+dnl Sets variables which can be used to substitute in makefiles:
+dnl	MSG_DIR_MAKE - to make ./po directory
+dnl	SUB_MAKEFILE - makefile in ./po directory (see CF_BUNDLED_INTL)
+dnl
+AC_DEFUN([CF_OUR_MESSAGES],
+[
+cf_makefile=ifelse($1,,Makefile,$1)
+
+use_our_messages=no
+if test "$USE_NLS" = yes ; then
+if test -d $srcdir/po ; then
+AC_MSG_CHECKING(if we should use included message-library)
+	AC_ARG_ENABLE(included-msgs,
+	[  --disable-included-msgs use included messages, for i18n support],
+	[use_our_messages=$enableval],
+	[use_our_messages=yes])
+fi
+AC_MSG_RESULT($use_our_messages)
+fi
+
+MSG_DIR_MAKE="#"
+if test "$use_our_messages" = yes
+then
+	SUB_MAKEFILE="$SUB_MAKEFILE po/$cf_makefile.in:$srcdir/po/$cf_makefile.inn"
+	MSG_DIR_MAKE=
+fi
+
+AC_SUBST(MSG_DIR_MAKE)
+AC_SUBST(SUB_MAKEFILE)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PATHSEP version: 5 updated: 2010/05/26 05:38:42
+dnl ----------
+dnl Provide a value for the $PATH and similar separator
+AC_DEFUN([CF_PATHSEP],
+[
+	case $cf_cv_system_name in
+	os2*)	PATH_SEPARATOR=';'  ;;
+	*)	PATH_SEPARATOR=':'  ;;
+	esac
+ifelse([$1],,,[$1=$PATH_SEPARATOR])
+	AC_SUBST(PATH_SEPARATOR)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PATH_PROG version: 8 updated: 2010/10/23 16:12:25
+dnl ------------
+dnl Check for a given program, defining corresponding symbol.
+dnl	$1 = environment variable, which is suffixed by "_PATH" in the #define.
+dnl	$2 = program name to find.
+dnl	$3 = optional list of additional program names to test.
+dnl
+dnl If there is more than one token in the result, #define the remaining tokens
+dnl to $1_ARGS.  We need this for 'install' in particular.
+dnl
+dnl FIXME: we should allow this to be overridden by environment variables
+dnl
+AC_DEFUN([CF_PATH_PROG],[
+AC_REQUIRE([CF_PATHSEP])
+test -z "[$]$1" && $1=$2
+AC_PATH_PROGS($1,[$]$1 $2 $3,[$]$1)
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_$1
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+			CF_PATH_SYNTAX(cf_temp,break)
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+	CF_MSG_LOG(defining path for ${cf_path_prog})
+	AC_DEFINE_UNQUOTED($1_PATH,"$cf_path_prog")
+	test -n "$cf_path_args" && AC_DEFINE_UNQUOTED($1_ARGS,"$cf_path_args")
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PATH_SYNTAX version: 13 updated: 2010/05/26 05:38:42
+dnl --------------
+dnl Check the argument to see that it looks like a pathname.  Rewrite it if it
+dnl begins with one of the prefix/exec_prefix variables, and then again if the
+dnl result begins with 'NONE'.  This is necessary to work around autoconf's
+dnl delayed evaluation of those symbols.
+AC_DEFUN([CF_PATH_SYNTAX],[
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".[$]$1" in #(vi
+.\[$]\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX
+  ;;
+.\[$]{*prefix}*) #(vi
+  eval $1="[$]$1"
+  case ".[$]$1" in #(vi
+  .NONE/*)
+    $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  ifelse([$2],,[AC_MSG_ERROR([expected a pathname, not \"[$]$1\"])],$2)
+  ;;
+esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PDCURSES_X11 version: 12 updated: 2011/11/26 15:42:05
+dnl ---------------
+dnl Configure for PDCurses' X11 library
+AC_DEFUN([CF_PDCURSES_X11],[
+AC_REQUIRE([CF_X_ATHENA])
+
+CF_ACVERSION_CHECK(2.52,
+	[AC_CHECK_TOOLS(XCURSES_CONFIG, xcurses-config, none)],
+	[AC_PATH_PROGS(XCURSES_CONFIG, xcurses-config, none)])
+
+if test "$XCURSES_CONFIG" != none ; then
+
+CPPFLAGS="$CPPFLAGS `$XCURSES_CONFIG --cflags`"
+CF_ADD_LIBS(`$XCURSES_CONFIG --libs`)
+
+cf_cv_lib_XCurses=yes
+
+else
+
+LDFLAGS="$LDFLAGS $X_LIBS"
+CF_CHECK_CFLAGS($X_CFLAGS)
+AC_CHECK_LIB(X11,XOpenDisplay,
+	[CF_ADD_LIBS(-lX11)],,
+	[$X_PRE_LIBS $LIBS $X_EXTRA_LIBS])
+AC_CACHE_CHECK(for XCurses library,cf_cv_lib_XCurses,[
+CF_ADD_LIBS(-lXCurses)
+AC_TRY_LINK([
+#include <xcurses.h>
+char *XCursesProgramName = "test";
+],[XCursesExit();],
+[cf_cv_lib_XCurses=yes],
+[cf_cv_lib_XCurses=no])
+])
+
+fi
+
+if test $cf_cv_lib_XCurses = yes ; then
+	AC_DEFINE(UNIX)
+	AC_DEFINE(XCURSES)
+	AC_CHECK_HEADER(xcurses.h, AC_DEFINE(HAVE_XCURSES))
+else
+	AC_MSG_ERROR(Cannot link with XCurses)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PKG_CONFIG version: 7 updated: 2011/04/29 04:53:22
+dnl -------------
+dnl Check for the package-config program, unless disabled by command-line.
+AC_DEFUN([CF_PKG_CONFIG],
+[
+AC_MSG_CHECKING(if you want to use pkg-config)
+AC_ARG_WITH(pkg-config,
+	[  --with-pkg-config{=path} enable/disable use of pkg-config],
+	[cf_pkg_config=$withval],
+	[cf_pkg_config=yes])
+AC_MSG_RESULT($cf_pkg_config)
+
+case $cf_pkg_config in #(vi
+no) #(vi
+	PKG_CONFIG=none
+	;;
+yes) #(vi
+	CF_ACVERSION_CHECK(2.52,
+		[AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)],
+		[AC_PATH_PROG(PKG_CONFIG, pkg-config, none)])
+	;;
+*)
+	PKG_CONFIG=$withval
+	;;
+esac
+
+test -z "$PKG_CONFIG" && PKG_CONFIG=none
+if test "$PKG_CONFIG" != none ; then
+	CF_PATH_SYNTAX(PKG_CONFIG)
+fi
+
+AC_SUBST(PKG_CONFIG)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_POSIX_C_SOURCE version: 8 updated: 2010/05/26 05:38:42
+dnl -----------------
+dnl Define _POSIX_C_SOURCE to the given level, and _POSIX_SOURCE if needed.
+dnl
+dnl	POSIX.1-1990				_POSIX_SOURCE
+dnl	POSIX.1-1990 and			_POSIX_SOURCE and
+dnl		POSIX.2-1992 C-Language			_POSIX_C_SOURCE=2
+dnl		Bindings Option
+dnl	POSIX.1b-1993				_POSIX_C_SOURCE=199309L
+dnl	POSIX.1c-1996				_POSIX_C_SOURCE=199506L
+dnl	X/Open 2000				_POSIX_C_SOURCE=200112L
+dnl
+dnl Parameters:
+dnl	$1 is the nominal value for _POSIX_C_SOURCE
+AC_DEFUN([CF_POSIX_C_SOURCE],
+[
+cf_POSIX_C_SOURCE=ifelse([$1],,199506L,[$1])
+
+cf_save_CFLAGS="$CFLAGS"
+cf_save_CPPFLAGS="$CPPFLAGS"
+
+CF_REMOVE_DEFINE(cf_trim_CFLAGS,$cf_save_CFLAGS,_POSIX_C_SOURCE)
+CF_REMOVE_DEFINE(cf_trim_CPPFLAGS,$cf_save_CPPFLAGS,_POSIX_C_SOURCE)
+
+AC_CACHE_CHECK(if we should define _POSIX_C_SOURCE,cf_cv_posix_c_source,[
+	CF_MSG_LOG(if the symbol is already defined go no further)
+	AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifndef _POSIX_C_SOURCE
+make an error
+#endif],
+	[cf_cv_posix_c_source=no],
+	[cf_want_posix_source=no
+	 case .$cf_POSIX_C_SOURCE in #(vi
+	 .[[12]]??*) #(vi
+		cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
+		;;
+	 .2) #(vi
+		cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
+		cf_want_posix_source=yes
+		;;
+	 .*)
+		cf_want_posix_source=yes
+		;;
+	 esac
+	 if test "$cf_want_posix_source" = yes ; then
+		AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifdef _POSIX_SOURCE
+make an error
+#endif],[],
+		cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE")
+	 fi
+	 CF_MSG_LOG(ifdef from value $cf_POSIX_C_SOURCE)
+	 CFLAGS="$cf_trim_CFLAGS"
+	 CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
+	 CF_MSG_LOG(if the second compile does not leave our definition intact error)
+	 AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifndef _POSIX_C_SOURCE
+make an error
+#endif],,
+	 [cf_cv_posix_c_source=no])
+	 CFLAGS="$cf_save_CFLAGS"
+	 CPPFLAGS="$cf_save_CPPFLAGS"
+	])
+])
+
+if test "$cf_cv_posix_c_source" != no ; then
+	CFLAGS="$cf_trim_CFLAGS"
+	CPPFLAGS="$cf_trim_CPPFLAGS"
+	CF_ADD_CFLAGS($cf_cv_posix_c_source)
+fi
+
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PROG_AR version: 1 updated: 2009/01/01 20:15:22
+dnl ----------
+dnl Check for archiver "ar".
+AC_DEFUN([CF_PROG_AR],[
+AC_CHECK_TOOL(AR, ar, ar)
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_PROG_CC_U_D version: 1 updated: 2005/07/14 16:59:30
+dnl --------------
+dnl Check if C (preprocessor) -U and -D options are processed in the order
+dnl given rather than by type of option.  Some compilers insist on apply all
+dnl of the -U options after all of the -D options.  Others allow mixing them,
+dnl and may predefine symbols that conflict with those we define.
+AC_DEFUN([CF_PROG_CC_U_D],
+[
+AC_CACHE_CHECK(if $CC -U and -D options work together,cf_cv_cc_u_d_options,[
+	cf_save_CPPFLAGS="$CPPFLAGS"
+	CPPFLAGS="-UU_D_OPTIONS -DU_D_OPTIONS -DD_U_OPTIONS -UD_U_OPTIONS"
+	AC_TRY_COMPILE([],[
+#ifndef U_D_OPTIONS
+make an undefined-error
+#endif
+#ifdef  D_U_OPTIONS
+make a defined-error
+#endif
+	],[
+	cf_cv_cc_u_d_options=yes],[
+	cf_cv_cc_u_d_options=no])
+	CPPFLAGS="$cf_save_CPPFLAGS"
+])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18
+dnl -----------
+dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX.
+AC_DEFUN([CF_PROG_EXT],
+[
+AC_REQUIRE([CF_CHECK_CACHE])
+case $cf_cv_system_name in
+os2*)
+    CFLAGS="$CFLAGS -Zmt"
+    CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__"
+    CXXFLAGS="$CXXFLAGS -Zmt"
+    # autoconf's macro sets -Zexe and suffix both, which conflict:w
+    LDFLAGS="$LDFLAGS -Zmt -Zcrtdll"
+    ac_cv_exeext=.exe
+    ;;
+esac
+
+AC_EXEEXT
+AC_OBJEXT
+
+PROG_EXT="$EXEEXT"
+AC_SUBST(PROG_EXT)
+test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT")
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PROG_LINT version: 2 updated: 2009/08/12 04:43:14
+dnl ------------
+AC_DEFUN([CF_PROG_LINT],
+[
+AC_CHECK_PROGS(LINT, tdlint lint alint splint lclint)
+AC_SUBST(LINT_OPTS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_PROG_RANLIB version: 1 updated: 2009/01/01 20:15:22
+dnl --------------
+dnl Check for ranlib.
+dnl
+dnl TODO: make this conditionally depend on autoconf version, since the later
+dnl versions of autoconf use check-tool.
+AC_DEFUN([CF_PROG_RANLIB],[
+AC_CHECK_TOOL(RANLIB, ranlib, ':')
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_RECHECK_FUNC version: 3 updated: 2000/10/18 19:29:13
+dnl ---------------
+dnl Re-check on a function to see if we can pick it up by adding a library.
+dnl	$1 = function to check
+dnl	$2 = library to check in
+dnl	$3 = environment to update (e.g., $LIBS)
+dnl	$4 = what to do if this fails
+dnl
+dnl This uses 'unset' if the shell happens to support it, but leaves the
+dnl configuration variable set to 'unknown' if not.  This is a little better
+dnl than the normal autoconf test, which gives misleading results if a test
+dnl for the function is made (e.g., with AC_CHECK_FUNC) after this macro is
+dnl used (autoconf does not distinguish between a null token and one that is
+dnl set to 'no').
+AC_DEFUN([CF_RECHECK_FUNC],[
+AC_CHECK_LIB($2,$1,[
+	CF_UPPER(cf_tr_func,$1)
+	AC_DEFINE_UNQUOTED(HAVE_$cf_tr_func)
+	ac_cv_func_$1=yes
+	if test "$cf_used_lib_$2" != yes ; then cf_used_lib_$2=yes; $3="-l$2 [$]$3"; fi],[
+	ac_cv_func_$1=unknown
+	unset ac_cv_func_$1 2>/dev/null
+	$4],
+	[[$]$3])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_REMOVE_BROKEN version: 3 updated: 1997/11/23 14:49:44
+dnl ----------------
+dnl Check for broken definition of 'remove()'.  This is (in particular) broken
+dnl on the older version of SCO (I'd cite version if I knew where to look) by
+dnl having <stdio.h> #define remove to __unlink, which appears in no library.
+dnl
+dnl Fortuitously, we can combine this with a more general test: do we have
+dnl 'unlink()' but no 'remove()'.  Note, however, that we cannot simply #define
+dnl remove to unlink, but have to make a fallback function.
+dnl
+AC_DEFUN([CF_REMOVE_BROKEN],
+[
+AC_MSG_CHECKING(for broken/missing definition of remove)
+AC_CACHE_VAL(cf_cv_baddef_remove,[
+AC_TRY_LINK(
+	[#include <stdio.h>],
+	[remove("dummy")],
+	[cf_cv_baddef_remove=no],
+	[AC_TRY_LINK(
+		[#include <stdio.h>
+		int __unlink(name) { return unlink(name); } ],
+		[remove("dummy")],
+		[cf_cv_baddef_remove=yes],
+		[cf_cv_baddef_remove=unknown])
+	])
+])
+AC_MSG_RESULT($cf_cv_baddef_remove)
+test "$cf_cv_baddef_remove" != no && AC_DEFINE(NEED_REMOVE)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_REMOVE_DEFINE version: 3 updated: 2010/01/09 11:05:50
+dnl ----------------
+dnl Remove all -U and -D options that refer to the given symbol from a list
+dnl of C compiler options.  This works around the problem that not all
+dnl compilers process -U and -D options from left-to-right, so a -U option
+dnl cannot be used to cancel the effect of a preceding -D option.
+dnl
+dnl $1 = target (which could be the same as the source variable)
+dnl $2 = source (including '$')
+dnl $3 = symbol to remove
+define([CF_REMOVE_DEFINE],
+[
+$1=`echo "$2" | \
+	sed	-e 's/-[[UD]]'"$3"'\(=[[^ 	]]*\)\?[[ 	]]/ /g' \
+		-e 's/-[[UD]]'"$3"'\(=[[^ 	]]*\)\?[$]//g'`
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_RPATH_HACK version: 9 updated: 2011/02/13 13:31:33
+dnl -------------
+AC_DEFUN([CF_RPATH_HACK],
+[
+AC_REQUIRE([CF_LD_RPATH_OPT])
+AC_MSG_CHECKING(for updated LDFLAGS)
+if test -n "$LD_RPATH_OPT" ; then
+	AC_MSG_RESULT(maybe)
+
+	AC_CHECK_PROGS(cf_ldd_prog,ldd,no)
+	cf_rpath_list="/usr/lib /lib"
+	if test "$cf_ldd_prog" != no
+	then
+		cf_rpath_oops=
+
+AC_TRY_LINK([#include <stdio.h>],
+		[printf("Hello");],
+		[cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort -u`
+		 cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[[ 	]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort -u`])
+
+		# If we passed the link-test, but get a "not found" on a given library,
+		# this could be due to inept reconfiguration of gcc to make it only
+		# partly honor /usr/local/lib (or whatever).  Sometimes this behavior
+		# is intentional, e.g., installing gcc in /usr/bin and suppressing the
+		# /usr/local libraries.
+		if test -n "$cf_rpath_oops"
+		then
+			for cf_rpath_src in $cf_rpath_oops
+			do
+				for cf_rpath_dir in \
+					/usr/local \
+					/usr/pkg \
+					/opt/sfw
+				do
+					if test -f $cf_rpath_dir/lib/$cf_rpath_src
+					then
+						CF_VERBOSE(...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src)
+						LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib"
+						break
+					fi
+				done
+			done
+		fi
+	fi
+
+	CF_VERBOSE(...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS)
+
+	CF_RPATH_HACK_2(LDFLAGS)
+	CF_RPATH_HACK_2(LIBS)
+
+	CF_VERBOSE(...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS)
+fi
+AC_SUBST(EXTRA_LDFLAGS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_RPATH_HACK_2 version: 6 updated: 2010/04/17 16:31:24
+dnl ---------------
+dnl Do one set of substitutions for CF_RPATH_HACK, adding an rpath option to
+dnl EXTRA_LDFLAGS for each -L option found.
+dnl
+dnl $cf_rpath_list contains a list of directories to ignore.
+dnl
+dnl $1 = variable name to update.  The LDFLAGS variable should be the only one,
+dnl      but LIBS often has misplaced -L options.
+AC_DEFUN([CF_RPATH_HACK_2],
+[
+CF_VERBOSE(...checking $1 [$]$1)
+
+cf_rpath_dst=
+for cf_rpath_src in [$]$1
+do
+	case $cf_rpath_src in #(vi
+	-L*) #(vi
+
+		# check if this refers to a directory which we will ignore
+		cf_rpath_skip=no
+		if test -n "$cf_rpath_list"
+		then
+			for cf_rpath_item in $cf_rpath_list
+			do
+				if test "x$cf_rpath_src" = "x-L$cf_rpath_item"
+				then
+					cf_rpath_skip=yes
+					break
+				fi
+			done
+		fi
+
+		if test "$cf_rpath_skip" = no
+		then
+			# transform the option
+			if test "$LD_RPATH_OPT" = "-R " ; then
+				cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"`
+			else
+				cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"`
+			fi
+
+			# if we have not already added this, add it now
+			cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"`
+			if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS"
+			then
+				CF_VERBOSE(...Filter $cf_rpath_src ->$cf_rpath_tmp)
+				EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
+			fi
+		fi
+		;;
+	esac
+	cf_rpath_dst="$cf_rpath_dst $cf_rpath_src"
+done
+$1=$cf_rpath_dst
+
+CF_VERBOSE(...checked $1 [$]$1)
+AC_SUBST(EXTRA_LDFLAGS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SET_ERRNO version: 4 updated: 2010/10/23 15:52:32
+dnl ------------
+dnl Check if 'errno' is declared in a fashion that lets us set it.
+AC_DEFUN([CF_SET_ERRNO],
+[
+AC_CACHE_CHECK(if we can set errno,cf_cv_set_errno,[
+AC_TRY_RUN([
+#include <errno.h>
+int main()
+{
+	errno = 255;
+	${cf_cv_main_return:-return}(errno != 255);
+}],
+	[cf_cv_set_errno=yes],
+	[cf_cv_set_errno=no],
+	[AC_TRY_LINK(
+		[#include <errno.h>],
+		[errno = 255],
+		[cf_cv_set_errno=maybe],
+		[cf_cv_set_errno=no])])
+])
+test "$cf_cv_set_errno" != no && AC_DEFINE(CAN_SET_ERRNO)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SIGWINCH version: 1 updated: 2006/04/02 16:41:09
+dnl -----------
+dnl Use this macro after CF_XOPEN_SOURCE, but do not require it (not all
+dnl programs need this test).
+dnl
+dnl This is really a MacOS X 10.4.3 workaround.  Defining _POSIX_C_SOURCE
+dnl forces SIGWINCH to be undefined (breaks xterm, ncurses).  Oddly, the struct
+dnl winsize declaration is left alone - we may revisit this if Apple choose to
+dnl break that part of the interface as well.
+AC_DEFUN([CF_SIGWINCH],
+[
+AC_CACHE_CHECK(if SIGWINCH is defined,cf_cv_define_sigwinch,[
+	AC_TRY_COMPILE([
+#include <sys/types.h>
+#include <sys/signal.h>
+],[int x = SIGWINCH],
+	[cf_cv_define_sigwinch=yes],
+	[AC_TRY_COMPILE([
+#undef _XOPEN_SOURCE
+#undef _POSIX_SOURCE
+#undef _POSIX_C_SOURCE
+#include <sys/types.h>
+#include <sys/signal.h>
+],[int x = SIGWINCH],
+	[cf_cv_define_sigwinch=maybe],
+	[cf_cv_define_sigwinch=no])
+])
+])
+
+if test "$cf_cv_define_sigwinch" = maybe ; then
+AC_CACHE_CHECK(for actual SIGWINCH definition,cf_cv_fixup_sigwinch,[
+cf_cv_fixup_sigwinch=unknown
+cf_sigwinch=32
+while test $cf_sigwinch != 1
+do
+	AC_TRY_COMPILE([
+#undef _XOPEN_SOURCE
+#undef _POSIX_SOURCE
+#undef _POSIX_C_SOURCE
+#include <sys/types.h>
+#include <sys/signal.h>
+],[
+#if SIGWINCH != $cf_sigwinch
+make an error
+#endif
+int x = SIGWINCH],
+	[cf_cv_fixup_sigwinch=$cf_sigwinch
+	 break])
+
+cf_sigwinch=`expr $cf_sigwinch - 1`
+done
+])
+
+	if test "$cf_cv_fixup_sigwinch" != unknown ; then
+		CPPFLAGS="$CPPFLAGS -DSIGWINCH=$cf_cv_fixup_sigwinch"
+	fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SIZECHANGE version: 8 updated: 2000/11/04 12:22:16
+dnl -------------
+dnl Check for definitions & structures needed for window size-changing
+dnl FIXME: check that this works with "snake" (HP-UX 10.x)
+AC_DEFUN([CF_SIZECHANGE],
+[
+AC_REQUIRE([CF_STRUCT_TERMIOS])
+AC_CACHE_CHECK(declaration of size-change, cf_cv_sizechange,[
+    cf_cv_sizechange=unknown
+    cf_save_CPPFLAGS="$CPPFLAGS"
+
+for cf_opts in "" "NEED_PTEM_H"
+do
+
+    CPPFLAGS="$cf_save_CPPFLAGS"
+    test -n "$cf_opts" && CPPFLAGS="$CPPFLAGS -D$cf_opts"
+    AC_TRY_COMPILE([#include <sys/types.h>
+#ifdef HAVE_TERMIOS_H
+#include <termios.h>
+#else
+#ifdef HAVE_TERMIO_H
+#include <termio.h>
+#endif
+#endif
+#ifdef NEED_PTEM_H
+/* This is a workaround for SCO:  they neglected to define struct winsize in
+ * termios.h -- it's only in termio.h and ptem.h
+ */
+#include        <sys/stream.h>
+#include        <sys/ptem.h>
+#endif
+#if !defined(sun) || !defined(HAVE_TERMIOS_H)
+#include <sys/ioctl.h>
+#endif
+],[
+#ifdef TIOCGSIZE
+	struct ttysize win;	/* FIXME: what system is this? */
+	int y = win.ts_lines;
+	int x = win.ts_cols;
+#else
+#ifdef TIOCGWINSZ
+	struct winsize win;
+	int y = win.ws_row;
+	int x = win.ws_col;
+#else
+	no TIOCGSIZE or TIOCGWINSZ
+#endif /* TIOCGWINSZ */
+#endif /* TIOCGSIZE */
+	],
+	[cf_cv_sizechange=yes],
+	[cf_cv_sizechange=no])
+
+	CPPFLAGS="$cf_save_CPPFLAGS"
+	if test "$cf_cv_sizechange" = yes ; then
+		echo "size-change succeeded ($cf_opts)" >&AC_FD_CC
+		test -n "$cf_opts" && cf_cv_sizechange="$cf_opts"
+		break
+	fi
+done
+])
+if test "$cf_cv_sizechange" != no ; then
+	AC_DEFINE(HAVE_SIZECHANGE)
+	case $cf_cv_sizechange in #(vi
+	NEED*)
+		AC_DEFINE_UNQUOTED($cf_cv_sizechange )
+		;;
+	esac
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SLANG_CPPFLAGS version: 9 updated: 2010/04/03 15:30:05
+dnl -----------------
+dnl Look for the slang header files in the standard places, adjusting the
+dnl CPPFLAGS variable.
+dnl
+dnl $1 = parameter to search for "slang2" class, e.g., for pkgsrc.
+AC_DEFUN([CF_SLANG_CPPFLAGS],
+[
+AC_CACHE_CHECK(for $1 header file,cf_cv_$1_header,[
+	cf_cv_$1_header=no
+	AC_TRY_COMPILE([#include <slang.h>],
+	[printf("%s\n", SLANG_VERSION)],
+	[cf_cv_$1_header=predefined],[
+	CF_HEADER_PATH(cf_search,$1)
+	for cf_incdir in $cf_search
+	do
+		for cf_header in \
+			slang.h
+		do
+			echo trying $cf_incdir/$cf_header 1>&AC_FD_CC
+			if egrep "SLANG_VERSION" $cf_incdir/$cf_header 1>&AC_FD_CC 2>&1; then
+				cf_cv_$1_header=$cf_incdir/$cf_header
+				break
+			fi
+		done
+		test "$cf_cv_$1_header" != no && break
+	done
+	])])
+
+if test "x$cf_cv_$1_header" != xno
+then
+	AC_DEFINE(USE_SLANG)
+
+	CF_DIRNAME(cf_incdir,$cf_cv_$1_header)
+
+	case $cf_cv_$1_header in # (vi
+	predefined) # (vi
+		;;
+	*)
+		CF_ADD_INCDIR($cf_incdir)
+		;;
+	esac
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SLANG_LIBS version: 8 updated: 2010/04/03 15:30:05
+dnl -------------
+dnl Look for the slang library.
+dnl
+dnl $1 = the actual library name, usually "slang"
+AC_DEFUN([CF_SLANG_LIBS],
+[
+cf_slang_LIBS1="$LIBS"
+CF_TERMCAP_LIBS
+cf_slang_LIBS2="$LIBS"
+AC_CHECK_FUNC(acos,,[CF_RECHECK_FUNC(acos,m,LIBS)])
+case $host_os in #(vi
+os2*)
+	CF_FIND_LIBRARY(video,video,
+		[#include <sys/video.h>],
+		[v_init()],
+		v_init)
+	;;
+esac
+CF_FIND_LIBRARY($1,$1,
+	[#include <slang.h>],
+	[SLtt_get_screen_size()],
+	SLtt_get_screen_size)
+cf_slang_LIBS3="$LIBS"
+AC_MSG_CHECKING(if we can link $1 without termcap)
+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
+	cf_exclude="$cf_slang_LIBS2"
+fi
+LIBS=`echo ".$cf_slang_LIBS3" | sed -e "s%$cf_exclude%%" -e 's%^.%%'`
+AC_TRY_LINK([#include <slang.h>],
+	[SLtt_get_screen_size()],
+	[cf_result=yes],
+	[cf_result=no])
+AC_MSG_RESULT($cf_result)
+test $cf_result = no && LIBS="$cf_slang_LIBS3"
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SLANG_UNIX_DEFS version: 5 updated: 2010/09/26 10:23:14
+dnl ------------------
+dnl Slang's header files rely on some predefined symbols to declare variables
+dnl that we might find useful.  This check is needed, because those symbols
+dnl are generally not available.
+AC_DEFUN([CF_SLANG_UNIX_DEFS],
+[
+
+CF_SLANG_CPPFLAGS(slang)
+if test "x$cf_cv_slang_header" != xno
+then
+	CF_SLANG_LIBS(slang)
+else
+	CF_SLANG_CPPFLAGS(slang2)
+	if test "x$cf_cv_slang2_header" != xno
+	then
+		CF_SLANG_LIBS(slang2)
+	else
+		AC_MSG_ERROR(cannot find slang headers)
+	fi
+fi
+
+# There's an unofficial set of patches for slang that gives it some limited
+# UTF8 capability.  Unfortunately it won't compile unless one defines UTF8.
+AC_CACHE_CHECK(if we must define UTF8,cf_cv_slang_utf8,[
+	AC_TRY_COMPILE([#include <slang.h>],
+	[SLtt_get_screen_size()],
+	[cf_cv_slang_utf8=no],
+	[
+	AC_TRY_COMPILE([
+#define UTF8
+#include <slang.h>],
+	[SLtt_get_screen_size()],
+	[cf_cv_slang_utf8=yes],
+	[cf_cv_slang_utf8=unknown])])
+])
+
+if test "$cf_cv_slang_utf8" = yes ; then
+	AC_DEFINE(UTF8)
+fi
+
+AC_CACHE_CHECK(if we must tell slang this is UNIX,cf_cv_slang_unix,[
+AC_TRY_LINK([#include <slang.h>],
+	[
+#ifdef REAL_UNIX_SYSTEM
+make an error
+#else
+extern int SLang_TT_Baud_Rate;
+SLang_TT_Baud_Rate = 1
+#endif
+],
+	[cf_cv_slang_unix=yes],
+	[cf_cv_slang_unix=no])
+])
+test $cf_cv_slang_unix = yes && AC_DEFINE(REAL_UNIX_SYSTEM)
+
+CF_CHECK_TYPE(SLsmg_Color_Type,int,[#include <slang.h>])
+CF_CHECK_TYPE(SLtt_Char_Type,unsigned long,[#include <slang.h>])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SOCKS version: 8 updated: 2010/05/05 20:27:55
+dnl --------
+dnl Check for socks library
+dnl $1 = the [optional] directory in which the library may be found
+AC_DEFUN([CF_SOCKS],[
+  CF_ADD_OPTIONAL_PATH($1, [socks library])
+  CF_FIND_LINKAGE([
+#include <stdio.h>
+],[
+      Raccept((char *)0)
+],
+      socks)
+
+  if test "x$cf_cv_find_linkage_socks" = "xyes" ; then
+    AC_DEFINE(SOCKS)
+
+    AC_DEFINE(accept,Raccept)
+    AC_DEFINE(bind,Rbind)
+    AC_DEFINE(connect,Rconnect)
+    AC_DEFINE(getpeername,Rgetpeername)
+    AC_DEFINE(getsockname,Rgetsockname)
+    AC_DEFINE(listen,Rlisten)
+    AC_DEFINE(recvfrom,Rrecvfrom)
+    AC_DEFINE(select,Rselect)
+  else
+    AC_MSG_ERROR(cannot link with socks library)
+  fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SOCKS5 version: 11 updated: 2010/06/20 09:24:28
+dnl ---------
+dnl Check for socks5 configuration
+dnl $1 = the [optional] directory in which the library may be found
+AC_DEFUN([CF_SOCKS5],[
+  CF_ADD_OPTIONAL_PATH($1, [socks5 library])
+
+CF_ADD_LIBS(-lsocks5)
+
+AC_DEFINE(USE_SOCKS5)
+AC_DEFINE(SOCKS)
+
+AC_MSG_CHECKING(if the socks library uses socks4 prefix)
+cf_use_socks4=error
+AC_TRY_LINK([
+#include <socks.h>],[
+	Rinit((char *)0)],
+	[AC_DEFINE(USE_SOCKS4_PREFIX)
+	 cf_use_socks4=yes],
+	[AC_TRY_LINK([#include <socks.h>],
+		[SOCKSinit((char *)0)],
+		[cf_use_socks4=no],
+		[AC_MSG_ERROR(Cannot link with socks5 library)])])
+AC_MSG_RESULT($cf_use_socks4)
+
+if test "$cf_use_socks4" = "yes" ; then
+	AC_DEFINE(accept,Raccept)
+	AC_DEFINE(bind,Rbind)
+	AC_DEFINE(connect,Rconnect)
+	AC_DEFINE(getpeername,Rgetpeername)
+	AC_DEFINE(getsockname,Rgetsockname)
+	AC_DEFINE(listen,Rlisten)
+	AC_DEFINE(recvfrom,Rrecvfrom)
+	AC_DEFINE(select,Rselect)
+else
+	AC_DEFINE(accept,SOCKSaccept)
+	AC_DEFINE(getpeername,SOCKSgetpeername)
+	AC_DEFINE(getsockname,SOCKSgetsockname)
+	AC_DEFINE(recvfrom,SOCKSrecvfrom)
+fi
+
+AC_MSG_CHECKING(if socks5p.h is available)
+AC_TRY_COMPILE([
+#define INCLUDE_PROTOTYPES
+#include <socks.h>],[
+	init((char *)0)],
+	[cf_use_socks5p_h=yes],
+	[cf_use_socks5p_h=no])
+AC_MSG_RESULT($cf_use_socks5p_h)
+
+test "$cf_use_socks5p_h" = yes && AC_DEFINE(INCLUDE_PROTOTYPES)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SRAND version: 10 updated: 2011/06/12 19:28:32
+dnl --------
+dnl Check for functions similar to srand() and rand().  lrand48() and random()
+dnl return a 31-bit value, while rand() returns a value less than RAND_MAX
+dnl which usually is only 16-bits.
+dnl
+dnl On MirOS, use arc4random_push() and arc4random().
+dnl Some systems support an asymmetric variation of this interface.
+AC_DEFUN([CF_SRAND],[
+AC_CACHE_CHECK(for random-integer functions, cf_cv_srand_func,[
+cf_cv_srand_func=unknown
+for cf_func in arc4random_push/arc4random arc4random_stir/arc4random srandom/random srand48/lrand48 srand/rand
+do
+	CF_SRAND_PARSE($cf_func,cf_srand_func,cf_rand_func)
+
+AC_TRY_LINK([
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+],[long seed = 1; $cf_srand_func(seed); seed = $cf_rand_func()],
+[cf_cv_srand_func=$cf_func
+ break])
+done
+])
+if test "$cf_cv_srand_func" != unknown ; then
+	AC_CACHE_CHECK(for range of random-integers, cf_cv_rand_max,[
+		case $cf_cv_srand_func in
+		srand/rand)
+			cf_cv_rand_max=RAND_MAX
+			cf_rand_max=16
+			;;
+		*/arc4random)
+			cf_cv_rand_max=0xFFFFFFFFUL
+			cf_rand_max=32
+			;;
+		*)
+			cf_cv_rand_max=INT_MAX
+			cf_rand_max=31
+			;;
+		esac
+		AC_TRY_COMPILE([
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+		],[long x = $cf_cv_rand_max],,
+		[cf_cv_rand_max="(1L<<$cf_rand_max)-1"])
+	])
+
+	case $cf_cv_srand_func in
+	*/arc4random)
+		AC_MSG_CHECKING(if <bsd/stdlib.h> should be included)
+		AC_TRY_COMPILE([#include <bsd/stdlib.h>],
+					   [void *arc4random(int);
+						void *x = arc4random(1)],
+					   [cf_bsd_stdlib_h=no],
+					   [AC_TRY_COMPILE([#include <bsd/stdlib.h>],
+									   [unsigned x = arc4random()],
+									   [cf_bsd_stdlib_h=yes],
+									   [cf_bsd_stdlib_h=no])])
+	    AC_MSG_RESULT($cf_bsd_stdlib_h)
+		if test "$cf_bsd_stdlib_h" = yes
+		then
+			AC_DEFINE(HAVE_BSD_STDLIB_H)
+		else
+			AC_MSG_CHECKING(if <bsd/random.h> should be included)
+			AC_TRY_COMPILE([#include <bsd/random.h>],
+						   [void *arc4random(int);
+							void *x = arc4random(1)],
+						   [cf_bsd_random_h=no],
+						   [AC_TRY_COMPILE([#include <bsd/random.h>],
+										   [unsigned x = arc4random()],
+										   [cf_bsd_random_h=yes],
+										   [cf_bsd_random_h=no])])
+			AC_MSG_RESULT($cf_bsd_random_h)
+			if test "$cf_bsd_random_h" = yes
+			then
+				AC_DEFINE(HAVE_BSD_RANDOM_H)
+			else
+				AC_MSG_WARN(no header file found for arc4random)
+			fi
+		fi
+		;;
+	esac
+
+	CF_SRAND_PARSE($cf_func,cf_srand_func,cf_rand_func)
+
+	CF_UPPER(cf_rand_max,ifelse($1,,my_,$1)rand_max)
+	AC_DEFINE_UNQUOTED(ifelse($1,,my_,$1)srand,$cf_srand_func)
+	AC_DEFINE_UNQUOTED(ifelse($1,,my_,$1)rand, $cf_rand_func)
+	AC_DEFINE_UNQUOTED([$]cf_rand_max, $cf_cv_rand_max)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SRAND_PARSE version: 1 updated: 2007/04/22 12:01:07
+dnl --------------
+dnl Parse the loop variable for CF_SRAND, with a workaround for asymmetric
+dnl variations.
+define([CF_SRAND_PARSE],[
+	$2=`echo $1 | sed -e 's%/.*%%'`
+	$3=`echo $1 | sed -e 's%.*/%%'`
+
+	case [$]$2 in #(vi
+	arc4random_stir)
+		$2='(void)'
+		;;
+	esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SSL version: 22 updated: 2010/06/20 09:24:28
+dnl ------
+dnl Check for ssl library
+dnl $1 = [optional] directory in which the library may be found, set by AC_ARG_WITH
+AC_DEFUN([CF_SSL],[
+	AC_REQUIRE([CF_PKG_CONFIG])
+	cf_cv_have_ssl=no
+	cf_cv_pkg_config_ssl=no
+
+	# command-line option, etc., override default behavior
+	CF_ADD_OPTIONAL_PATH($1, [ssl library])
+
+	if test "x$PKG_CONFIG" != xnone; then
+		case $1 in #(vi
+		no) #(vi
+			;;
+		yes) # if no explicit directory given, try pkg-config
+			if "$PKG_CONFIG" --exists openssl ; then
+				cf_cv_have_ssl=yes
+				cf_cv_pkg_config_ssl=yes
+
+				cf_cflags_ssl=`$PKG_CONFIG --cflags openssl`
+				cf_libs_ssl=`$PKG_CONFIG --libs openssl`
+
+				if test -n "$cf_cflags_ssl" ; then
+					case "$cf_cflags_ssl" in #(vi
+					*-I*) #(vi
+						cf_cv_header_path_ssl=`echo "$cf_cflags_ssl" | sed -e 's/^.*-I//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_header_path_ssl=/usr/include
+						;;
+					esac
+					if test -d $cf_cv_header_path_ssl/openssl ; then
+						cf_cv_header_path_ssl=$cf_cv_header_path_ssl/openssl
+					fi
+					CF_ADD_CFLAGS($cf_cflags_ssl)
+
+					# workaround for broken openssl package using kerberos
+					case "$cf_cflags_ssl" in #(vi
+					*kerberos*)
+						cf_cv_have_ssl=maybe
+						;;
+					esac
+				fi
+
+				if test -n "$cf_libs_ssl" ; then
+					case "x$cf_libs_ssl" in #(vi
+					*-L*) #(vi
+						cf_cv_library_path_ssl=`echo "$cf_libs_ssl" | sed -e 's/^.*-L//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_library_path_ssl=/usr/lib
+						;;
+					esac
+					CF_VERBOSE(adding $cf_libs_ssl to LIBS)
+					CF_ADD_LIBS($cf_libs_ssl)
+				fi
+			fi
+			;;
+		esac
+	fi
+
+	if test "$cf_cv_have_ssl" != yes; then
+		case $host_os in #(vi
+		mingw*) #(vi
+			cf_extra_ssl_libs="-lcrypto -lgdi32"
+			;;
+		*)
+			# openssl 0.9.6 and up use dynamic loading for engines.
+			cf_extra_ssl_libs="-lcrypto"
+			case "x$LIBS" in #(vi
+			*-ldl) #(vi
+				;;
+			*)
+				AC_CHECK_LIB(dl,dlsym,
+					[cf_extra_ssl_libs="$cf_extra_ssl_libs -ldl"])
+				;;
+			esac
+			;;
+		esac
+
+		CF_FIND_LINKAGE(CF__SSL_HEAD,
+			CF__SSL_BODY,
+			ssl,
+			cf_cv_have_ssl=yes,
+			cf_cv_have_ssl=no,
+			openssl,
+			$cf_extra_ssl_libs)
+
+		if test "$cf_cv_pkg_config_ssl" != yes ; then
+			if test "$cf_cv_have_ssl" = yes ; then
+				if test -n "$cf_cv_library_path_ssl" ; then
+					CF_ADD_LIBDIR($cf_cv_library_path_ssl)
+				fi
+				CF_ADD_LIBS(-lssl $cf_extra_ssl_libs)
+				if test -n "$cf_cv_header_path_ssl" ; then
+					case $cf_cv_header_path_ssl in #(vi
+					/usr/include/openssl) #(vi
+						;;
+					*)
+						CF_ADD_INCDIR($cf_cv_header_path_ssl)
+						;;
+					esac
+				fi
+			fi
+		fi
+	fi
+
+	if test "$cf_cv_have_ssl" = yes ; then
+		AC_DEFINE(USE_SSL)
+		if test -n "$cf_cv_header_path_ssl" ; then
+			case $cf_cv_header_path_ssl in #(vi
+			*/openssl)
+				AC_DEFINE(USE_OPENSSL_INCL)
+				;;
+			esac
+		fi
+		CF_CHECK_SSL_X509
+	fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_STRIP_G_OPT version: 3 updated: 2002/12/21 19:25:52
+dnl --------------
+dnl	Remove "-g" option from the compiler options
+AC_DEFUN([CF_STRIP_G_OPT],
+[$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_STRIP_O_OPT version: 3 updated: 2001/02/02 19:06:08
+dnl --------------
+dnl	Remove "-O" option from the compiler options
+AC_DEFUN([CF_STRIP_O_OPT],[
+$1=`echo ${$1} | sed -e 's/-O[[1-9]]\? //' -e 's/-O[[1-9]]\?$//'`
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_STRUCT_TERMIOS version: 6 updated: 2011/04/16 11:52:53
+dnl -----------------
+dnl Some machines require _POSIX_SOURCE to completely define struct termios.
+AC_DEFUN([CF_STRUCT_TERMIOS],[
+AC_REQUIRE([CF_XOPEN_SOURCE])
+
+AC_CHECK_HEADERS( \
+termio.h \
+termios.h \
+unistd.h \
+)
+
+if test "$ISC" = yes ; then
+	AC_CHECK_HEADERS( sys/termio.h )
+fi
+if test "$ac_cv_header_termios_h" = yes ; then
+	case "$CFLAGS $CPPFLAGS" in
+	*-D_POSIX_SOURCE*)
+		termios_bad=dunno ;;
+	*)	termios_bad=maybe ;;
+	esac
+	if test "$termios_bad" = maybe ; then
+	AC_MSG_CHECKING(whether termios.h needs _POSIX_SOURCE)
+	AC_TRY_COMPILE([#include <termios.h>],
+		[struct termios foo; int x = foo.c_iflag],
+		termios_bad=no, [
+		AC_TRY_COMPILE([
+#define _POSIX_SOURCE
+#include <termios.h>],
+			[struct termios foo; int x = foo.c_iflag],
+			termios_bad=unknown,
+			termios_bad=yes AC_DEFINE(_POSIX_SOURCE))
+			])
+	AC_MSG_RESULT($termios_bad)
+	fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SUBDIR_PATH version: 6 updated: 2010/04/21 06:20:50
+dnl --------------
+dnl Construct a search-list for a nonstandard header/lib-file
+dnl	$1 = the variable to return as result
+dnl	$2 = the package name
+dnl	$3 = the subdirectory, e.g., bin, include or lib
+AC_DEFUN([CF_SUBDIR_PATH],
+[
+$1=
+
+CF_ADD_SUBDIR_PATH($1,$2,$3,/usr,$prefix)
+CF_ADD_SUBDIR_PATH($1,$2,$3,$prefix,NONE)
+CF_ADD_SUBDIR_PATH($1,$2,$3,/usr/local,$prefix)
+CF_ADD_SUBDIR_PATH($1,$2,$3,/opt,$prefix)
+CF_ADD_SUBDIR_PATH($1,$2,$3,[$]HOME,$prefix)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SUBST version: 4 updated: 2006/06/17 12:33:03
+dnl --------
+dnl	Shorthand macro for substituting things that the user may override
+dnl	with an environment variable.
+dnl
+dnl	$1 = long/descriptive name
+dnl	$2 = environment variable
+dnl	$3 = default value
+AC_DEFUN([CF_SUBST],
+[AC_CACHE_VAL(cf_cv_subst_$2,[
+AC_MSG_CHECKING(for $1 (symbol $2))
+CF_SUBST_IF([-z "[$]$2"], [$2], [$3])
+cf_cv_subst_$2=[$]$2
+AC_MSG_RESULT([$]$2)
+])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SUBST_IF version: 2 updated: 2006/06/17 12:33:03
+dnl -----------
+dnl	Shorthand macro for substituting things that the user may override
+dnl	with an environment variable.
+dnl
+dnl	$1 = condition to pass to "test"
+dnl	$2 = environment variable
+dnl	$3 = value if the test succeeds
+dnl	$4 = value if the test fails
+AC_DEFUN([CF_SUBST_IF],
+[
+if test $1 ; then
+	$2=$3
+ifelse($4,,,[else
+	$2=$4])
+fi
+AC_SUBST($2)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SYSTEM_MAIL_FLAGS version: 3 updated: 1998/11/18 14:45:34
+dnl --------------------
+AC_DEFUN([CF_SYSTEM_MAIL_FLAGS],
+[
+AC_MSG_CHECKING([system mail flags])
+AC_CACHE_VAL(cf_cv_system_mail_flags,[
+	case $cf_cv_SYSTEM_MAIL in
+	*/mmdf/*)
+		[cf_cv_system_mail_flags="-mlruxto,cc\\\\*"]
+        	;;
+	*)
+        	[cf_cv_system_mail_flags="-t -oi"]
+	esac
+	])
+AC_MSG_RESULT($cf_cv_system_mail_flags)
+AC_DEFINE_UNQUOTED(SYSTEM_MAIL_FLAGS, "$cf_cv_system_mail_flags")
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SYSV_UTMP version: 5 updated: 2001/12/27 12:55:07
+dnl ------------
+dnl Check if this is a SYSV flavor of UTMP
+AC_DEFUN([CF_SYSV_UTMP],
+[
+AC_CACHE_CHECK(if $cf_cv_have_utmp is SYSV flavor,cf_cv_sysv_utmp,[
+test "$cf_cv_have_utmp" = "utmp" && cf_prefix="ut" || cf_prefix="utx"
+AC_TRY_LINK([
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>],[
+struct $cf_cv_have_utmp x;
+	set${cf_prefix}ent ();
+	get${cf_prefix}id(&x);
+	put${cf_prefix}line(&x);
+	end${cf_prefix}ent();],
+	[cf_cv_sysv_utmp=yes],
+	[cf_cv_sysv_utmp=no])
+])
+test $cf_cv_sysv_utmp = yes && AC_DEFINE(USE_SYSV_UTMP)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_SYS_ERRLIST version: 6 updated: 2001/12/30 13:03:23
+dnl --------------
+dnl Check for declaration of sys_nerr and sys_errlist in one of stdio.h and
+dnl errno.h.  Declaration of sys_errlist on BSD4.4 interferes with our
+dnl declaration.  Reported by Keith Bostic.
+AC_DEFUN([CF_SYS_ERRLIST],
+[
+    CF_CHECK_ERRNO(sys_nerr)
+    CF_CHECK_ERRNO(sys_errlist)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_TAR_OPTIONS version: 2 updated: 2005/08/24 20:15:11
+dnl --------------
+dnl This is just a list of the most common tar options, allowing for variants
+dnl that can operate with the "-" standard input/output option.
+AC_DEFUN([CF_TAR_OPTIONS],
+[
+case ifelse($1,,tar,$1) in
+*pax|*pax$EXEEXT)
+	TAR_UP_OPTIONS="-w"
+	TAR_DOWN_OPTIONS="-r"
+	TAR_PIPE_OPTIONS=""
+	TAR_FILE_OPTIONS="-f"
+	;;
+*star|*star$EXEEXT)
+	TAR_UP_OPTIONS="-c -f"
+	TAR_DOWN_OPTIONS="-x -U -f"
+	TAR_PIPE_OPTIONS="-"
+	TAR_FILE_OPTIONS=""
+	;;
+*tar|*tar$EXEEXT)
+	# FIXME: some versions of tar require, some don't allow the "-"
+	TAR_UP_OPTIONS="-cf"
+	TAR_DOWN_OPTIONS="-xf"
+	TAR_PIPE_OPTIONS="-"
+	TAR_FILE_OPTIONS=""
+	;;
+esac
+
+AC_SUBST(TAR_UP_OPTIONS)
+AC_SUBST(TAR_DOWN_OPTIONS)
+AC_SUBST(TAR_FILE_OPTIONS)
+AC_SUBST(TAR_PIPE_OPTIONS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_TERMCAP_LIBS version: 13 updated: 2011/06/08 18:09:57
+dnl ---------------
+dnl Look for termcap libraries, or the equivalent in terminfo.
+dnl
+dnl The optional parameter may be "ncurses", "ncursesw".
+AC_DEFUN([CF_TERMCAP_LIBS],
+[
+AC_CACHE_VAL(cf_cv_termlib,[
+cf_cv_termlib=none
+AC_TRY_LINK([],[char *x=(char*)tgoto("",0,0)],
+[AC_TRY_LINK([],[int x=tigetstr("")],
+	[cf_cv_termlib=terminfo],
+	[cf_cv_termlib=termcap])
+	CF_VERBOSE(using functions in predefined $cf_cv_termlib LIBS)
+],[
+ifelse([$1],,,[
+case "$1" in # (vi
+ncurses*)
+	CF_NCURSES_CONFIG($1)
+	cf_cv_termlib=terminfo
+	;;
+esac
+])
+if test "$cf_cv_termlib" = none; then
+	# FreeBSD's linker gives bogus results for AC_CHECK_LIB, saying that
+	# tgetstr lives in -lcurses when it is only an unsatisfied extern.
+	cf_save_LIBS="$LIBS"
+	for cf_lib in curses ncurses termlib termcap
+	do
+	LIBS="-l$cf_lib $cf_save_LIBS"
+	for cf_func in tigetstr tgetstr
+	do
+		AC_MSG_CHECKING(for $cf_func in -l$cf_lib)
+		AC_TRY_LINK([],[int x=$cf_func("")],[cf_result=yes],[cf_result=no])
+		AC_MSG_RESULT($cf_result)
+		if test "$cf_result" = yes ; then
+			if test "$cf_func" = tigetstr ; then
+				cf_cv_termlib=terminfo
+			else
+				cf_cv_termlib=termcap
+			fi
+			break
+		fi
+	done
+		test "$cf_result" = yes && break
+	done
+	test "$cf_result" = no && LIBS="$cf_save_LIBS"
+fi
+if test "$cf_cv_termlib" = none; then
+	# allow curses library for broken AIX system.
+	AC_CHECK_LIB(curses, initscr, [CF_ADD_LIBS(-lcurses)])
+	AC_CHECK_LIB(termcap, tgoto, [CF_ADD_LIBS(-ltermcap) cf_cv_termlib=termcap])
+fi
+])
+if test "$cf_cv_termlib" = none; then
+	AC_MSG_WARN([Cannot find -ltermlib, -lcurses, or -ltermcap])
+fi
+])])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_TERMIO_AND_CURSES version: 4 updated: 2010/10/23 15:54:49
+dnl --------------------
+dnl Check if including termio.h with <curses.h> dies like on sysv68
+dnl FIXME: this is too Lynx-specific
+AC_DEFUN([CF_TERMIO_AND_CURSES],
+[
+AC_CACHE_CHECK(if we can include termio.h with curses,cf_cv_termio_and_curses,[
+    cf_save_CFLAGS="$CPPFLAGS"
+    CPPFLAGS="$CPPFLAGS -DHAVE_CONFIG_H -I. -I${srcdir:-.} -I${srcdir:-.}/src -I${srcdir:-.}/WWW/Library/Implementation"
+    touch lynx_cfg.h
+    AC_TRY_COMPILE([
+#include <$1>
+#include <termio.h>],
+    [putchar(0x0a)],
+    [cf_cv_termio_and_curses=yes],
+    [cf_cv_termio_and_curses=no])
+    CPPFLAGS="$cf_save_CFLAGS"
+    rm -f lynx_cfg.h
+])
+
+test $cf_cv_termio_and_curses = yes && AC_DEFINE(TERMIO_AND_CURSES)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_TERMIO_AND_TERMIOS version: 2 updated: 1997/08/28 20:22:00
+dnl ---------------------
+dnl Check if including both termio.h and termios.h die like on DG.UX
+AC_DEFUN([CF_TERMIO_AND_TERMIOS],
+[
+AC_MSG_CHECKING([termio.h and termios.h])
+AC_CACHE_VAL(cf_cv_termio_and_termios,[
+    AC_TRY_COMPILE([
+#if HAVE_TERMIO_H
+#include <termio.h>
+#endif
+#if HAVE_TERMIOS_H
+#include <termios.h>
+#endif ],
+    [putchar (0x0a)],
+    [cf_cv_termio_and_termios=yes],
+    [cf_cv_termio_and_termios=no])])
+AC_MSG_RESULT($cf_cv_termio_and_termios)
+test $cf_cv_termio_and_termios = no && AC_DEFINE(TERMIO_AND_TERMIOS)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_TERM_HEADER version: 2 updated: 2010/10/23 15:54:49
+dnl --------------
+dnl Look for term.h, which is part of X/Open curses.  It defines the interface
+dnl to terminfo database.  Usually it is in the same include-path as curses.h,
+dnl but some packagers change this, breaking various applications.
+AC_DEFUN([CF_TERM_HEADER],[
+AC_CACHE_CHECK(for terminfo header, cf_cv_term_header,[
+case ${cf_cv_ncurses_header} in #(vi
+*/ncurses.h|*/ncursesw.h) #(vi
+	cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[[^.]]*\.h$%term.h%'`
+	;;
+*)
+	cf_term_header=term.h
+	;;
+esac
+
+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
+do
+AC_TRY_COMPILE([#include <stdio.h>
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <$cf_test>
+],[int x = auto_left_margin],[
+	cf_cv_term_header="$cf_test"],[
+	cf_cv_term_header=unknown
+	])
+	test "$cf_cv_term_header" != unknown && break
+done
+])
+
+# Set definitions to allow ifdef'ing to accommodate subdirectories
+
+case $cf_cv_term_header in # (vi
+*term.h)
+	AC_DEFINE(HAVE_TERM_H)
+	;;
+esac
+
+case $cf_cv_term_header in # (vi
+ncurses/term.h) #(vi
+	AC_DEFINE(HAVE_NCURSES_TERM_H)
+	;;
+ncursesw/term.h)
+	AC_DEFINE(HAVE_NCURSESW_TERM_H)
+	;;
+esac
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_TM_GMTOFF version: 2 updated: 1997/08/28 23:57:55
+dnl ------------
+dnl Check if the tm-struct defines the '.tm_gmtoff' member (useful in decoding
+dnl dates).
+AC_DEFUN([CF_TM_GMTOFF],
+[
+AC_MSG_CHECKING([for tm.tm_gmtoff])
+AC_CACHE_VAL(cf_cv_tm_gmtoff,[
+	AC_TRY_COMPILE([
+#ifdef TIME_WITH_SYS_TIME
+#	include <sys/time.h>
+#	include <time.h>
+#else
+#	ifdef HAVE_SYS_TIME_H
+#		include <sys/time.h>
+#	else
+#		include <time.h>
+#	endif
+#endif
+],[
+	struct tm foo;
+	long bar = foo.tm_gmtoff],
+	[cf_cv_tm_gmtoff=yes],
+	[cf_cv_tm_gmtoff=no])])
+AC_MSG_RESULT($cf_cv_tm_gmtoff)
+test $cf_cv_tm_gmtoff = no && AC_DEFINE(DONT_HAVE_TM_GMTOFF)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_TRY_PKG_CONFIG version: 4 updated: 2010/06/14 17:42:30
+dnl -----------------
+dnl This is a simple wrapper to use for pkg-config, for libraries which may be
+dnl available in that form.
+dnl
+dnl $1 = package name
+dnl $2 = extra logic to use, if any, after updating CFLAGS and LIBS
+dnl $3 = logic to use if pkg-config does not have the package
+AC_DEFUN([CF_TRY_PKG_CONFIG],[
+AC_REQUIRE([CF_PKG_CONFIG])
+
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists $1; then
+	CF_VERBOSE(found package $1)
+	cf_pkgconfig_incs="`$PKG_CONFIG --cflags $1 2>/dev/null`"
+	cf_pkgconfig_libs="`$PKG_CONFIG --libs   $1 2>/dev/null`"
+	CF_VERBOSE(package $1 CFLAGS: $cf_pkgconfig_incs)
+	CF_VERBOSE(package $1 LIBS: $cf_pkgconfig_libs)
+	CF_ADD_CFLAGS($cf_pkgconfig_incs)
+	CF_ADD_LIBS($cf_pkgconfig_libs)
+	ifelse([$2],,:,[$2])
+else
+	ifelse([$3],,:,[$3])
+fi
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_TRY_XOPEN_SOURCE version: 1 updated: 2011/10/30 17:09:50
+dnl -------------------
+dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we
+dnl can define it successfully.
+AC_DEFUN([CF_TRY_XOPEN_SOURCE],[
+AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
+	AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+],[
+#ifndef _XOPEN_SOURCE
+make an error
+#endif],
+	[cf_cv_xopen_source=no],
+	[cf_save="$CPPFLAGS"
+	 CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
+	 AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+],[
+#ifdef _XOPEN_SOURCE
+make an error
+#endif],
+	[cf_cv_xopen_source=no],
+	[cf_cv_xopen_source=$cf_XOPEN_SOURCE])
+	CPPFLAGS="$cf_save"
+	])
+])
+
+if test "$cf_cv_xopen_source" != no ; then
+	CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE)
+	CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE)
+	cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+	CF_ADD_CFLAGS($cf_temp_xopen_source)
+fi
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_TTYTYPE version: 5 updated: 2010/10/23 15:54:49
+dnl ----------
+AC_DEFUN([CF_TTYTYPE],
+[
+AC_MSG_CHECKING(if ttytype is declared in curses library)
+AC_CACHE_VAL(cf_cv_have_ttytype,[
+	AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+	[char *x = &ttytype[1]; *x = 1],
+	[cf_cv_have_ttytype=yes],
+	[cf_cv_have_ttytype=no])
+	])
+AC_MSG_RESULT($cf_cv_have_ttytype)
+test $cf_cv_have_ttytype = yes && AC_DEFINE(HAVE_TTYTYPE)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_TYPE_LONG_LONG version: 2 updated: 2010/09/23 04:08:01
+dnl -----------------
+dnl Check for long long type.
+AC_DEFUN([CF_TYPE_LONG_LONG],[
+AC_CACHE_CHECK(for long long type,cf_cv_type_long_long,[
+	cat >conftest.$ac_ext <<_CFEOF
+#include "confdefs.h"
+int
+main (void)
+{
+	long long foo = 123456789123456789LL;
+	return (foo == 0);
+}
+_CFEOF
+	(eval [$]ac_compile) 2>conftest.err
+	ac_status=$?
+	if test $ac_status = 0 && test -s conftest.err
+	then
+		fgrep warning conftest.err >/dev/null 2>&1 && ac_status=1
+	fi
+	if test $ac_status != 0
+	then
+		cf_cv_type_long_long=no
+	else
+		cf_cv_type_long_long=yes
+	fi
+	test -s conftest.err && cat conftest.err >&5
+	rm -f conftest*
+])
+
+if test "$cf_cv_type_long_long" = yes ; then
+	AC_DEFINE(HAVE_LONG_LONG)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UNION_WAIT version: 5 updated: 1997/11/23 14:49:44
+dnl -------------
+dnl Check to see if the BSD-style union wait is declared.  Some platforms may
+dnl use this, though it is deprecated in favor of the 'int' type in Posix.
+dnl Some vendors provide a bogus implementation that declares union wait, but
+dnl uses the 'int' type instead; we try to spot these by checking for the
+dnl associated macros.
+dnl
+dnl Ahem.  Some implementers cast the status value to an int*, as an attempt to
+dnl use the macros for either union wait or int.  So we do a check compile to
+dnl see if the macros are defined and apply to an int.
+dnl
+dnl Sets: $cf_cv_type_unionwait
+dnl Defines: HAVE_TYPE_UNIONWAIT
+AC_DEFUN([CF_UNION_WAIT],
+[
+AC_REQUIRE([CF_WAIT_HEADERS])
+AC_MSG_CHECKING([for union wait])
+AC_CACHE_VAL(cf_cv_type_unionwait,[
+	AC_TRY_LINK($cf_wait_headers,
+	[int x;
+	 int y = WEXITSTATUS(x);
+	 int z = WTERMSIG(x);
+	 wait(&x);
+	],
+	[cf_cv_type_unionwait=no
+	 echo compiles ok w/o union wait 1>&AC_FD_CC
+	],[
+	AC_TRY_LINK($cf_wait_headers,
+	[union wait x;
+#ifdef WEXITSTATUS
+	 int y = WEXITSTATUS(x);
+#endif
+#ifdef WTERMSIG
+	 int z = WTERMSIG(x);
+#endif
+	 wait(&x);
+	],
+	[cf_cv_type_unionwait=yes
+	 echo compiles ok with union wait and possibly macros too 1>&AC_FD_CC
+	],
+	[cf_cv_type_unionwait=no])])])
+AC_MSG_RESULT($cf_cv_type_unionwait)
+test $cf_cv_type_unionwait = yes && AC_DEFINE(HAVE_TYPE_UNIONWAIT)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59
+dnl --------
+dnl Make an uppercase version of a variable
+dnl $1=uppercase($2)
+AC_DEFUN([CF_UPPER],
+[
+$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UTF8_LIB version: 7 updated: 2010/06/20 09:24:28
+dnl -----------
+dnl Check for multibyte support, and if not found, utf8 compatibility library
+AC_DEFUN([CF_UTF8_LIB],
+[
+AC_CACHE_CHECK(for multibyte character support,cf_cv_utf8_lib,[
+	cf_save_LIBS="$LIBS"
+	AC_TRY_LINK([
+#include <stdlib.h>],[putwc(0,0);],
+	[cf_cv_utf8_lib=yes],
+	[CF_FIND_LINKAGE([
+#include <libutf8.h>],[putwc(0,0);],utf8,
+		[cf_cv_utf8_lib=add-on],
+		[cf_cv_utf8_lib=no])
+])])
+
+# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
+# ncurses/ncursesw:
+if test "$cf_cv_utf8_lib" = "add-on" ; then
+	AC_DEFINE(HAVE_LIBUTF8_H)
+	CF_ADD_INCDIR($cf_cv_header_path_utf8)
+	CF_ADD_LIBDIR($cf_cv_library_path_utf8)
+	CF_ADD_LIBS($cf_cv_library_file_utf8)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UTMP version: 9 updated: 2008/01/25 17:18:00
+dnl -------
+dnl Check for UTMP/UTMPX headers
+AC_DEFUN([CF_UTMP],
+[
+AC_REQUIRE([CF_LASTLOG])
+
+AC_CACHE_CHECK(for utmp implementation,cf_cv_have_utmp,[
+	cf_cv_have_utmp=no
+for cf_header in utmpx utmp ; do
+cf_utmp_includes="
+#include <sys/types.h>
+#include <${cf_header}.h>
+#define getutent getutxent
+#ifdef USE_LASTLOG
+#include <lastlog.h>	/* may conflict with utmpx.h on Linux */
+#endif
+"
+	AC_TRY_COMPILE([$cf_utmp_includes],
+	[struct $cf_header x;
+	 char *name = x.ut_name; /* utmp.h and compatible definitions */
+	],
+	[cf_cv_have_utmp=$cf_header
+	 break],
+	[
+	AC_TRY_COMPILE([$cf_utmp_includes],
+	[struct $cf_header x;
+	 char *name = x.ut_user; /* utmpx.h must declare this */
+	],
+	[cf_cv_have_utmp=$cf_header
+	 break
+	])])
+done
+])
+
+if test $cf_cv_have_utmp != no ; then
+	AC_DEFINE(HAVE_UTMP)
+	test $cf_cv_have_utmp = utmpx && AC_DEFINE(UTMPX_FOR_UTMP)
+	CF_UTMP_UT_HOST
+	CF_UTMP_UT_SYSLEN
+	CF_UTMP_UT_NAME
+	CF_UTMP_UT_XSTATUS
+	CF_UTMP_UT_XTIME
+	CF_UTMP_UT_SESSION
+	CF_SYSV_UTMP
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UTMP_UT_HOST version: 7 updated: 2007/03/13 19:17:11
+dnl ---------------
+dnl Check if UTMP/UTMPX struct defines ut_host member
+AC_DEFUN([CF_UTMP_UT_HOST],
+[
+if test $cf_cv_have_utmp != no ; then
+AC_MSG_CHECKING(if ${cf_cv_have_utmp}.ut_host is declared)
+AC_CACHE_VAL(cf_cv_have_utmp_ut_host,[
+	AC_TRY_COMPILE([
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>],
+	[struct $cf_cv_have_utmp x; char *y = &x.ut_host[0]],
+	[cf_cv_have_utmp_ut_host=yes],
+	[cf_cv_have_utmp_ut_host=no])
+	])
+AC_MSG_RESULT($cf_cv_have_utmp_ut_host)
+test $cf_cv_have_utmp_ut_host != no && AC_DEFINE(HAVE_UTMP_UT_HOST)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UTMP_UT_NAME version: 4 updated: 2007/03/13 19:17:11
+dnl ---------------
+dnl Check if UTMP/UTMPX struct defines ut_name member
+AC_DEFUN([CF_UTMP_UT_NAME],
+[
+if test $cf_cv_have_utmp != no ; then
+AC_CACHE_CHECK(if ${cf_cv_have_utmp}.ut_name is declared,cf_cv_have_utmp_ut_name,[
+	cf_cv_have_utmp_ut_name=no
+cf_utmp_includes="
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>
+#define getutent getutxent
+#ifdef USE_LASTLOG
+#include <lastlog.h>		/* may conflict with utmpx.h on Linux */
+#endif
+"
+for cf_header in ut_name ut_user ; do
+	AC_TRY_COMPILE([$cf_utmp_includes],
+	[struct $cf_cv_have_utmp x;
+	 char *name = x.$cf_header;
+	],
+	[cf_cv_have_utmp_ut_name=$cf_header
+	 break])
+done
+])
+
+case $cf_cv_have_utmp_ut_name in #(vi
+no) #(vi
+	AC_MSG_ERROR(Cannot find declaration for ut.ut_name)
+	;;
+ut_user)
+	AC_DEFINE(ut_name,ut_user)
+	;;
+esac
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UTMP_UT_SESSION version: 5 updated: 2007/03/13 19:17:11
+dnl ------------------
+dnl Check if UTMP/UTMPX struct defines ut_session member
+AC_DEFUN([CF_UTMP_UT_SESSION],
+[
+if test $cf_cv_have_utmp != no ; then
+AC_CACHE_CHECK(if ${cf_cv_have_utmp}.ut_session is declared, cf_cv_have_utmp_ut_session,[
+	AC_TRY_COMPILE([
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>],
+	[struct $cf_cv_have_utmp x; long y = x.ut_session],
+	[cf_cv_have_utmp_ut_session=yes],
+	[cf_cv_have_utmp_ut_session=no])
+])
+if test $cf_cv_have_utmp_ut_session != no ; then
+	AC_DEFINE(HAVE_UTMP_UT_SESSION)
+fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UTMP_UT_SYSLEN version: 1 updated: 2008/01/25 17:18:00
+dnl -----------------
+dnl Check if UTMP/UTMPX struct defines ut_syslen member
+AC_DEFUN([CF_UTMP_UT_SYSLEN],
+[
+if test $cf_cv_have_utmp != no ; then
+AC_MSG_CHECKING(if ${cf_cv_have_utmp}.ut_syslen is declared)
+AC_CACHE_VAL(cf_cv_have_utmp_ut_syslen,[
+	AC_TRY_COMPILE([
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>],
+	[struct $cf_cv_have_utmp x; int y = x.ut_syslen],
+	[cf_cv_have_utmp_ut_syslen=yes],
+	[cf_cv_have_utmp_ut_syslen=no])
+	])
+AC_MSG_RESULT($cf_cv_have_utmp_ut_syslen)
+test $cf_cv_have_utmp_ut_syslen != no && AC_DEFINE(HAVE_UTMP_UT_SYSLEN)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UTMP_UT_XSTATUS version: 3 updated: 2001/12/27 12:55:07
+dnl ------------------
+dnl Check for known variants on the UTMP/UTMPX struct's exit-status as reported
+dnl by various people:
+dnl
+dnl	ut_exit.__e_exit (HPUX 11 - David Ellement, also in glibc2)
+dnl	ut_exit.e_exit (SVR4)
+dnl	ut_exit.ut_e_exit (os390 - Greg Smith)
+dnl	ut_exit.ut_exit (Tru64 4.0f - Jeremie Petit, 4.0e - Tomas Vanhala)
+dnl
+dnl Note: utmp_xstatus is not a conventional compatibility definition in the
+dnl system header files.
+AC_DEFUN([CF_UTMP_UT_XSTATUS],
+[
+if test $cf_cv_have_utmp != no ; then
+AC_CACHE_CHECK(for exit-status in $cf_cv_have_utmp,cf_cv_have_utmp_ut_xstatus,[
+for cf_result in \
+	ut_exit.__e_exit \
+	ut_exit.e_exit \
+	ut_exit.ut_e_exit \
+	ut_exit.ut_exit
+do
+AC_TRY_COMPILE([
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>],
+	[struct $cf_cv_have_utmp x; long y = x.$cf_result = 0],
+	[cf_cv_have_utmp_ut_xstatus=$cf_result
+	 break],
+	[cf_cv_have_utmp_ut_xstatus=no])
+done
+])
+if test $cf_cv_have_utmp_ut_xstatus != no ; then
+	AC_DEFINE(HAVE_UTMP_UT_XSTATUS)
+	AC_DEFINE_UNQUOTED(ut_xstatus,$cf_cv_have_utmp_ut_xstatus)
+fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_UTMP_UT_XTIME version: 7 updated: 2007/03/13 19:17:11
+dnl ----------------
+dnl Check if UTMP/UTMPX struct defines ut_xtime member
+AC_DEFUN([CF_UTMP_UT_XTIME],
+[
+if test $cf_cv_have_utmp != no ; then
+AC_CACHE_CHECK(if ${cf_cv_have_utmp}.ut_xtime is declared, cf_cv_have_utmp_ut_xtime,[
+	AC_TRY_COMPILE([
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>],
+	[struct $cf_cv_have_utmp x; long y = x.ut_xtime = 0],
+	[cf_cv_have_utmp_ut_xtime=yes],
+	[AC_TRY_COMPILE([
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>],
+	[struct $cf_cv_have_utmp x; long y = x.ut_tv.tv_sec],
+	[cf_cv_have_utmp_ut_xtime=define],
+	[cf_cv_have_utmp_ut_xtime=no])
+	])
+])
+if test $cf_cv_have_utmp_ut_xtime != no ; then
+	AC_DEFINE(HAVE_UTMP_UT_XTIME)
+	if test $cf_cv_have_utmp_ut_xtime = define ; then
+		AC_DEFINE(ut_xtime,ut_tv.tv_sec)
+	fi
+fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_VERBOSE version: 3 updated: 2007/07/29 09:55:12
+dnl ----------
+dnl Use AC_VERBOSE w/o the warnings
+AC_DEFUN([CF_VERBOSE],
+[test -n "$verbose" && echo "	$1" 1>&AC_FD_MSG
+CF_MSG_LOG([$1])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WAIT_HEADERS version: 2 updated: 1997/10/21 19:45:33
+dnl ---------------
+dnl Build up an expression $cf_wait_headers with the header files needed to
+dnl compile against the prototypes for 'wait()', 'waitpid()', etc.  Assume it's
+dnl Posix, which uses <sys/types.h> and <sys/wait.h>, but allow SVr4 variation
+dnl with <wait.h>.
+AC_DEFUN([CF_WAIT_HEADERS],
+[
+AC_HAVE_HEADERS(sys/wait.h)
+cf_wait_headers="#include <sys/types.h>
+"
+if test $ac_cv_header_sys_wait_h = yes; then
+cf_wait_headers="$cf_wait_headers
+#include <sys/wait.h>
+"
+else
+AC_HAVE_HEADERS(wait.h)
+AC_HAVE_HEADERS(waitstatus.h)
+if test $ac_cv_header_wait_h = yes; then
+cf_wait_headers="$cf_wait_headers
+#include <wait.h>
+"
+fi
+if test $ac_cv_header_waitstatus_h = yes; then
+cf_wait_headers="$cf_wait_headers
+#include <waitstatus.h>
+"
+fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WIDEC_CURSES version: 4 updated: 2010/10/23 15:54:49
+dnl ---------------
+dnl Check for curses implementations that can handle wide-characters
+AC_DEFUN([CF_WIDEC_CURSES],
+[
+AC_CACHE_CHECK(if curses supports wide characters,cf_cv_widec_curses,[
+AC_TRY_LINK([
+#include <stdlib.h>
+#include <${cf_cv_ncurses_header:-curses.h}>],[
+    wchar_t temp[2];
+    wchar_t wch = 'A';
+    temp[0] = wch;
+    waddnwstr(stdscr, temp, 1);
+],
+[cf_cv_widec_curses=yes],
+[cf_cv_widec_curses=no])
+])
+
+if test "$cf_cv_widec_curses" = yes ; then
+	AC_DEFINE(WIDEC_CURSES)
+
+	# This is needed on Tru64 5.0 to declare mbstate_t
+	AC_CACHE_CHECK(if we must include wchar.h to declare mbstate_t,cf_cv_widec_mbstate,[
+	AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <${cf_cv_ncurses_header:-curses.h}>],
+[mbstate_t state],
+[cf_cv_widec_mbstate=no],
+[AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <wchar.h>
+#include <${cf_cv_ncurses_header:-curses.h}>],
+[mbstate_t state],
+[cf_cv_widec_mbstate=yes],
+[cf_cv_widec_mbstate=unknown])])])
+
+if test "$cf_cv_widec_mbstate" = yes ; then
+	AC_DEFINE(NEED_WCHAR_H)
+fi
+
+if test "$cf_cv_widec_mbstate" != unknown ; then
+	AC_DEFINE(HAVE_MBSTATE_T)
+fi
+
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_BZLIB version: 4 updated: 2007/07/29 13:19:54
+dnl -------------
+dnl Check for libbz2 aka "bzlib"
+dnl
+dnl $1 = optional path for headers/library
+AC_DEFUN([CF_WITH_BZLIB],[
+  CF_ADD_OPTIONAL_PATH($1)
+
+  CF_FIND_LINKAGE([
+#include <stdio.h>
+#include <bzlib.h>
+],[
+    BZ2_bzopen("name","mode")
+],bz2,,,bzlib)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_CURSES_DIR version: 3 updated: 2010/11/20 17:02:38
+dnl ------------------
+dnl Wrapper for AC_ARG_WITH to specify directory under which to look for curses
+dnl libraries.
+AC_DEFUN([CF_WITH_CURSES_DIR],[
+
+AC_MSG_CHECKING(for specific curses-directory)
+AC_ARG_WITH(curses-dir,
+	[  --with-curses-dir=DIR   directory in which (n)curses is installed],
+	[cf_cv_curses_dir=$withval],
+	[cf_cv_curses_dir=no])
+AC_MSG_RESULT($cf_cv_curses_dir)
+
+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+then
+	CF_PATH_SYNTAX(withval)
+	if test -d "$cf_cv_curses_dir"
+	then
+		CF_ADD_INCDIR($cf_cv_curses_dir/include)
+		CF_ADD_LIBDIR($cf_cv_curses_dir/lib)
+	fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_DBMALLOC version: 7 updated: 2010/06/21 17:26:47
+dnl ----------------
+dnl Configure-option for dbmalloc.  The optional parameter is used to override
+dnl the updating of $LIBS, e.g., to avoid conflict with subsequent tests.
+AC_DEFUN([CF_WITH_DBMALLOC],[
+CF_NO_LEAKS_OPTION(dbmalloc,
+	[  --with-dbmalloc         test: use Conor Cahill's dbmalloc library],
+	[USE_DBMALLOC])
+
+if test "$with_dbmalloc" = yes ; then
+	AC_CHECK_HEADER(dbmalloc.h,
+		[AC_CHECK_LIB(dbmalloc,[debug_malloc]ifelse([$1],,[],[,$1]))])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_DMALLOC version: 7 updated: 2010/06/21 17:26:47
+dnl ---------------
+dnl Configure-option for dmalloc.  The optional parameter is used to override
+dnl the updating of $LIBS, e.g., to avoid conflict with subsequent tests.
+AC_DEFUN([CF_WITH_DMALLOC],[
+CF_NO_LEAKS_OPTION(dmalloc,
+	[  --with-dmalloc          test: use Gray Watson's dmalloc library],
+	[USE_DMALLOC])
+
+if test "$with_dmalloc" = yes ; then
+	AC_CHECK_HEADER(dmalloc.h,
+		[AC_CHECK_LIB(dmalloc,[dmalloc_debug]ifelse([$1],,[],[,$1]))])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_IDNA version: 8 updated: 2010/11/26 15:10:07
+dnl ------------
+dnl Check for libidn, use it if found.
+dnl
+dnl $1 = optional path for headers/library
+AC_DEFUN([CF_WITH_IDNA],[
+  CF_ADD_OPTIONAL_PATH($1)
+
+  CF_FIND_LINKAGE([
+#include <stdio.h>
+#include <idna.h>
+],[
+	char *output = 0;
+    int code = idna_to_ascii_8z("name", &output, IDNA_USE_STD3_ASCII_RULES);
+],idn,,,,[$LIBICONV])
+
+if test "x$cf_cv_find_linkage_idn" = xyes ; then
+	AC_DEFINE(USE_IDNA)
+fi 
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_PATH version: 10 updated: 2010/10/23 15:44:18
+dnl ------------
+dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just
+dnl defaulting to yes/no.
+dnl
+dnl $1 = option name
+dnl $2 = help-text
+dnl $3 = environment variable to set
+dnl $4 = default value, shown in the help-message, must be a constant
+dnl $5 = default value, if it's an expression & cannot be in the help-message
+dnl
+AC_DEFUN([CF_WITH_PATH],
+[AC_ARG_WITH($1,[$2 ](default: ifelse([$4],,empty,[$4])),,
+ifelse([$4],,[withval="${$3}"],[withval="${$3:-ifelse([$5],,[$4],[$5])}"]))dnl
+if ifelse([$5],,true,[test -n "$5"]) ; then
+CF_PATH_SYNTAX(withval)
+fi
+$3="$withval"
+AC_SUBST($3)dnl
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_ZLIB version: 4 updated: 2011/05/28 12:10:58
+dnl ------------
+dnl check for libz aka "zlib"
+AC_DEFUN([CF_WITH_ZLIB],[
+  CF_ADD_OPTIONAL_PATH($1)
+
+  CF_FIND_LINKAGE([
+#include <zlib.h>
+],[
+	gzopen("name","mode")
+],z,,,zlib)
+
+AC_CHECK_FUNCS( \
+	zError \
+)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_XOPEN_CURSES version: 11 updated: 2011/01/18 18:15:30
+dnl ---------------
+dnl Test if we should define X/Open source for curses, needed on Digital Unix
+dnl 4.x, to see the extended functions, but breaks on IRIX 6.x.
+dnl
+dnl The getbegyx() check is needed for HPUX, which omits legacy macros such
+dnl as getbegy().  The latter is better design, but the former is standard.
+AC_DEFUN([CF_XOPEN_CURSES],
+[
+AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
+AC_CACHE_CHECK(if we must define _XOPEN_SOURCE_EXTENDED,cf_cv_need_xopen_extension,[
+AC_TRY_LINK([
+#include <stdlib.h>
+#include <${cf_cv_ncurses_header:-curses.h}>],[
+#if defined(NCURSES_VERSION_PATCH)
+#if (NCURSES_VERSION_PATCH < 20100501) && (NCURSES_VERSION_PATCH >= 20100403)
+	make an error
+#endif
+#endif
+	long x = winnstr(stdscr, "", 0);
+	int x1, y1;
+	getbegyx(stdscr, y1, x1)],
+	[cf_cv_need_xopen_extension=no],
+	[AC_TRY_LINK([
+#define _XOPEN_SOURCE_EXTENDED
+#include <stdlib.h>
+#include <${cf_cv_ncurses_header:-curses.h}>],[
+#ifdef NCURSES_VERSION
+	cchar_t check;
+	int check2 = curs_set((int)sizeof(check));
+#endif
+	long x = winnstr(stdscr, "", 0);
+	int x1, y1;
+	getbegyx(stdscr, y1, x1)],
+	[cf_cv_need_xopen_extension=yes],
+	[cf_cv_need_xopen_extension=unknown])])])
+test $cf_cv_need_xopen_extension = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_XOPEN_SOURCE version: 42 updated: 2012/01/07 08:26:49
+dnl ---------------
+dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions,
+dnl or adapt to the vendor's definitions to get equivalent functionality,
+dnl without losing the common non-POSIX features.
+dnl
+dnl Parameters:
+dnl	$1 is the nominal value for _XOPEN_SOURCE
+dnl	$2 is the nominal value for _POSIX_C_SOURCE
+AC_DEFUN([CF_XOPEN_SOURCE],[
+
+cf_XOPEN_SOURCE=ifelse([$1],,500,[$1])
+cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2])
+cf_xopen_source=
+
+case $host_os in #(vi
+aix[[4-7]]*) #(vi
+	cf_xopen_source="-D_ALL_SOURCE"
+	;;
+cygwin) #(vi
+	cf_XOPEN_SOURCE=600
+	;;
+darwin[[0-8]].*) #(vi
+	cf_xopen_source="-D_APPLE_C_SOURCE"
+	;;
+darwin*) #(vi
+	cf_xopen_source="-D_DARWIN_C_SOURCE"
+	cf_XOPEN_SOURCE=
+	;;
+freebsd*|dragonfly*) #(vi
+	# 5.x headers associate
+	#	_XOPEN_SOURCE=600 with _POSIX_C_SOURCE=200112L
+	#	_XOPEN_SOURCE=500 with _POSIX_C_SOURCE=199506L
+	cf_POSIX_C_SOURCE=200112L
+	cf_XOPEN_SOURCE=600
+	cf_xopen_source="-D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
+	;;
+hpux11*) #(vi
+	cf_xopen_source="-D_HPUX_SOURCE -D_XOPEN_SOURCE=500"
+	;;
+hpux*) #(vi
+	cf_xopen_source="-D_HPUX_SOURCE"
+	;;
+irix[[56]].*) #(vi
+	cf_xopen_source="-D_SGI_SOURCE"
+	cf_XOPEN_SOURCE=
+	;;
+linux*|gnu*|mint*|k*bsd*-gnu) #(vi
+	CF_GNU_SOURCE
+	;;
+mirbsd*) #(vi
+	# setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types
+	cf_XOPEN_SOURCE=
+	CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
+	;;
+netbsd*) #(vi
+	cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
+	;;
+openbsd[[4-9]]*) #(vi
+	# setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw
+	cf_xopen_source="-D_BSD_SOURCE"
+	cf_XOPEN_SOURCE=600
+	;;
+openbsd*) #(vi
+	# setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
+	;;
+osf[[45]]*) #(vi
+	cf_xopen_source="-D_OSF_SOURCE"
+	;;
+nto-qnx*) #(vi
+	cf_xopen_source="-D_QNX_SOURCE"
+	;;
+sco*) #(vi
+	# setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
+	;;
+solaris2.*) #(vi
+	cf_xopen_source="-D__EXTENSIONS__"
+	;;
+*)
+	CF_TRY_XOPEN_SOURCE
+	CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
+	;;
+esac
+
+if test -n "$cf_xopen_source" ; then
+	CF_ADD_CFLAGS($cf_xopen_source)
+fi
+
+dnl In anything but the default case, we may have system-specific setting
+dnl which is still not guaranteed to provide all of the entrypoints that
+dnl _XOPEN_SOURCE would yield.
+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
+	AC_MSG_CHECKING(if _XOPEN_SOURCE really is set)
+	AC_TRY_COMPILE([#include <stdlib.h>],[
+#ifndef _XOPEN_SOURCE
+make an error
+#endif],
+	[cf_XOPEN_SOURCE_set=yes],
+	[cf_XOPEN_SOURCE_set=no])
+	AC_MSG_RESULT($cf_XOPEN_SOURCE_set)
+	if test $cf_XOPEN_SOURCE_set = yes
+	then
+		AC_TRY_COMPILE([#include <stdlib.h>],[
+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
+make an error
+#endif],
+		[cf_XOPEN_SOURCE_set_ok=yes],
+		[cf_XOPEN_SOURCE_set_ok=no])
+		if test $cf_XOPEN_SOURCE_set_ok = no
+		then
+			AC_MSG_WARN(_XOPEN_SOURCE is lower than requested)
+		fi
+	else
+		CF_TRY_XOPEN_SOURCE
+	fi
+fi
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_X_ATHENA version: 20 updated: 2010/11/09 05:18:02
+dnl -----------
+dnl Check for Xaw (Athena) libraries
+dnl
+dnl Sets $cf_x_athena according to the flavor of Xaw which is used.
+AC_DEFUN([CF_X_ATHENA],
+[
+cf_x_athena=${cf_x_athena:-Xaw}
+
+AC_MSG_CHECKING(if you want to link with Xaw 3d library)
+withval=
+AC_ARG_WITH(Xaw3d,
+	[  --with-Xaw3d            link with Xaw 3d library])
+if test "$withval" = yes ; then
+	cf_x_athena=Xaw3d
+	AC_MSG_RESULT(yes)
+else
+	AC_MSG_RESULT(no)
+fi
+
+AC_MSG_CHECKING(if you want to link with neXT Athena library)
+withval=
+AC_ARG_WITH(neXtaw,
+	[  --with-neXtaw           link with neXT Athena library])
+if test "$withval" = yes ; then
+	cf_x_athena=neXtaw
+	AC_MSG_RESULT(yes)
+else
+	AC_MSG_RESULT(no)
+fi
+
+AC_MSG_CHECKING(if you want to link with Athena-Plus library)
+withval=
+AC_ARG_WITH(XawPlus,
+	[  --with-XawPlus          link with Athena-Plus library])
+if test "$withval" = yes ; then
+	cf_x_athena=XawPlus
+	AC_MSG_RESULT(yes)
+else
+	AC_MSG_RESULT(no)
+fi
+
+cf_x_athena_lib=""
+
+if test "$PKG_CONFIG" != none ; then
+	cf_athena_list=
+	test "$cf_x_athena" = Xaw && cf_athena_list="xaw8 xaw7 xaw6"
+	for cf_athena_pkg in \
+		$cf_athena_list \
+		${cf_x_athena} \
+		${cf_x_athena}-devel \
+		lib${cf_x_athena} \
+		lib${cf_x_athena}-devel
+	do
+		CF_TRY_PKG_CONFIG($cf_athena_pkg,[
+			cf_x_athena_lib="$cf_pkgconfig_libs"
+			CF_UPPER(cf_x_athena_LIBS,HAVE_LIB_$cf_x_athena)
+			AC_DEFINE_UNQUOTED($cf_x_athena_LIBS)
+
+AC_CACHE_CHECK(for usable $cf_x_athena/Xmu package,cf_cv_xaw_compat,[
+AC_TRY_LINK([
+#include <X11/Xmu/CharSet.h>
+],[
+int check = XmuCompareISOLatin1("big", "small")
+],[cf_cv_xaw_compat=yes],[cf_cv_xaw_compat=no])])
+
+			if test "$cf_cv_xaw_compat" = no
+			then
+				# workaround for broken ".pc" files...
+				case "$cf_x_athena_lib" in #(vi
+				*-lXmu*) #(vi
+					;;
+				*)
+					CF_VERBOSE(work around broken package)
+					CF_TRY_PKG_CONFIG(xmu,,[CF_ADD_LIB_AFTER(-lXt,-lXmu)])
+					;;
+				esac
+			fi
+
+			break])
+	done
+fi
+
+if test -z "$cf_x_athena_lib" ; then
+	CF_X_EXT
+	CF_X_TOOLKIT
+	CF_X_ATHENA_CPPFLAGS($cf_x_athena)
+	CF_X_ATHENA_LIBS($cf_x_athena)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_X_ATHENA_CPPFLAGS version: 5 updated: 2010/05/26 17:35:30
+dnl --------------------
+dnl Normally invoked by CF_X_ATHENA, with $1 set to the appropriate flavor of
+dnl the Athena widgets, e.g., Xaw, Xaw3d, neXtaw.
+AC_DEFUN([CF_X_ATHENA_CPPFLAGS],
+[
+cf_x_athena_root=ifelse([$1],,Xaw,[$1])
+cf_x_athena_inc=""
+
+for cf_path in default \
+	/usr/contrib/X11R6 \
+	/usr/contrib/X11R5 \
+	/usr/lib/X11R5 \
+	/usr/local
+do
+	if test -z "$cf_x_athena_inc" ; then
+		cf_save="$CPPFLAGS"
+		cf_test=X11/$cf_x_athena_root/SimpleMenu.h
+		if test $cf_path != default ; then
+			CPPFLAGS="$cf_save -I$cf_path/include"
+			AC_MSG_CHECKING(for $cf_test in $cf_path)
+		else
+			AC_MSG_CHECKING(for $cf_test)
+		fi
+		AC_TRY_COMPILE([
+#include <X11/Intrinsic.h>
+#include <$cf_test>],[],
+			[cf_result=yes],
+			[cf_result=no])
+		AC_MSG_RESULT($cf_result)
+		if test "$cf_result" = yes ; then
+			cf_x_athena_inc=$cf_path
+			break
+		else
+			CPPFLAGS="$cf_save"
+		fi
+	fi
+done
+
+if test -z "$cf_x_athena_inc" ; then
+	AC_MSG_WARN(
+[Unable to successfully find Athena header files with test program])
+elif test "$cf_x_athena_inc" != default ; then
+	CPPFLAGS="$CPPFLAGS -I$cf_x_athena_inc"
+fi
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_X_ATHENA_LIBS version: 12 updated: 2011/07/17 19:55:02
+dnl ----------------
+dnl Normally invoked by CF_X_ATHENA, with $1 set to the appropriate flavor of
+dnl the Athena widgets, e.g., Xaw, Xaw3d, neXtaw.
+AC_DEFUN([CF_X_ATHENA_LIBS],
+[AC_REQUIRE([CF_X_TOOLKIT])
+cf_x_athena_root=ifelse([$1],,Xaw,[$1])
+cf_x_athena_lib=""
+
+for cf_path in default \
+	/usr/contrib/X11R6 \
+	/usr/contrib/X11R5 \
+	/usr/lib/X11R5 \
+	/usr/local
+do
+	for cf_lib in \
+		${cf_x_athena_root} \
+		${cf_x_athena_root}7 \
+		${cf_x_athena_root}6
+	do
+	for cf_libs in \
+		"-l$cf_lib -lXmu" \
+		"-l$cf_lib -lXpm -lXmu" \
+		"-l${cf_lib}_s -lXmu_s"
+	do
+		if test -z "$cf_x_athena_lib" ; then
+			cf_save="$LIBS"
+			cf_test=XawSimpleMenuAddGlobalActions
+			if test $cf_path != default ; then
+				CF_ADD_LIBS(-L$cf_path/lib $cf_libs)
+				AC_MSG_CHECKING(for $cf_libs in $cf_path)
+			else
+				CF_ADD_LIBS($cf_libs)
+				AC_MSG_CHECKING(for $cf_test in $cf_libs)
+			fi
+			AC_TRY_LINK([
+#include <X11/Intrinsic.h>
+#include <X11/$cf_x_athena_root/SimpleMenu.h>
+],[
+$cf_test((XtAppContext) 0)],
+				[cf_result=yes],
+				[cf_result=no])
+			AC_MSG_RESULT($cf_result)
+			if test "$cf_result" = yes ; then
+				cf_x_athena_lib="$cf_libs"
+				break
+			fi
+			LIBS="$cf_save"
+		fi
+	done # cf_libs
+		test -n "$cf_x_athena_lib" && break
+	done # cf_lib
+done
+
+if test -z "$cf_x_athena_lib" ; then
+	AC_MSG_ERROR(
+[Unable to successfully link Athena library (-l$cf_x_athena_root) with test program])
+fi
+
+CF_UPPER(cf_x_athena_LIBS,HAVE_LIB_$cf_x_athena)
+AC_DEFINE_UNQUOTED($cf_x_athena_LIBS)
+])
+dnl ---------------------------------------------------------------------------
+dnl CF_X_EXT version: 3 updated: 2010/06/02 05:03:05
+dnl --------
+AC_DEFUN([CF_X_EXT],[
+CF_TRY_PKG_CONFIG(Xext,,[
+	AC_CHECK_LIB(Xext,XextCreateExtension,
+		[CF_ADD_LIB(Xext)])])
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_X_TOOLKIT version: 20 updated: 2010/11/19 05:43:04
+dnl ------------
+dnl Check for X Toolkit libraries
+dnl
+AC_DEFUN([CF_X_TOOLKIT],
+[
+AC_REQUIRE([AC_PATH_XTRA])
+AC_REQUIRE([CF_CHECK_CACHE])
+
+cf_have_X_LIBS=no
+
+CF_TRY_PKG_CONFIG(xt,[
+
+	case "x$LIBS" in #(vi
+	*-lX11*) #(vi
+		;;
+	*)
+# we have an "xt" package, but it may omit Xt's dependency on X11
+AC_CACHE_CHECK(for usable X dependency,cf_cv_xt_x11_compat,[
+AC_TRY_LINK([
+#include <X11/Xlib.h>
+],[
+	int rc1 = XDrawLine((Display*) 0, (Drawable) 0, (GC) 0, 0, 0, 0, 0);
+	int rc2 = XClearWindow((Display*) 0, (Window) 0);
+	int rc3 = XMoveWindow((Display*) 0, (Window) 0, 0, 0);
+	int rc4 = XMoveResizeWindow((Display*)0, (Window)0, 0, 0, 0, 0);
+],[cf_cv_xt_x11_compat=yes],[cf_cv_xt_x11_compat=no])])
+		if test "$cf_cv_xt_x11_compat" = no
+		then
+			CF_VERBOSE(work around broken X11 dependency)
+			# 2010/11/19 - good enough until a working Xt on Xcb is delivered.
+			CF_TRY_PKG_CONFIG(x11,,[CF_ADD_LIB_AFTER(-lXt,-lX11)])
+		fi
+		;;
+	esac
+
+AC_CACHE_CHECK(for usable X Toolkit package,cf_cv_xt_ice_compat,[
+AC_TRY_LINK([
+#include <X11/Shell.h>
+],[int num = IceConnectionNumber(0)
+],[cf_cv_xt_ice_compat=yes],[cf_cv_xt_ice_compat=no])])
+
+	if test "$cf_cv_xt_ice_compat" = no
+	then
+		# workaround for broken ".pc" files used for X Toolkit.
+		case "x$X_PRE_LIBS" in #(vi
+		*-lICE*)
+			case "x$LIBS" in #(vi
+			*-lICE*) #(vi
+				;;
+			*)
+				CF_VERBOSE(work around broken ICE dependency)
+				CF_TRY_PKG_CONFIG(ice,
+					[CF_TRY_PKG_CONFIG(sm)],
+					[CF_ADD_LIB_AFTER(-lXt,$X_PRE_LIBS)])
+				;;
+			esac
+			;;
+		esac
+	fi
+
+	cf_have_X_LIBS=yes
+],[
+
+	LDFLAGS="$X_LIBS $LDFLAGS"
+	CF_CHECK_CFLAGS($X_CFLAGS)
+
+	AC_CHECK_FUNC(XOpenDisplay,,[
+	AC_CHECK_LIB(X11,XOpenDisplay,
+		[CF_ADD_LIB(X11)],,
+		[$X_PRE_LIBS $LIBS $X_EXTRA_LIBS])])
+
+	AC_CHECK_FUNC(XtAppInitialize,,[
+	AC_CHECK_LIB(Xt, XtAppInitialize,
+		[AC_DEFINE(HAVE_LIBXT)
+		 cf_have_X_LIBS=Xt
+		 LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS"],,
+		[$X_PRE_LIBS $LIBS $X_EXTRA_LIBS])])
+])
+
+if test $cf_have_X_LIBS = no ; then
+	AC_MSG_WARN(
+[Unable to successfully link X Toolkit library (-lXt) with
+test program.  You will have to check and add the proper libraries by hand
+to makefile.])
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF__CURSES_HEAD version: 2 updated: 2010/10/23 15:54:49
+dnl ---------------
+dnl Define a reusable chunk which includes <curses.h> and <term.h> when they
+dnl are both available.
+define([CF__CURSES_HEAD],[
+#ifdef HAVE_XCURSES
+#include <xcurses.h>
+char * XCursesProgramName = "test";
+#else
+#include <${cf_cv_ncurses_header:-curses.h}>
+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
+#include <ncursesw/term.h>
+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
+#include <ncurses/term.h>
+#elif defined(HAVE_TERM_H)
+#include <term.h>
+#endif
+#endif
+])
+dnl ---------------------------------------------------------------------------
+dnl CF__ICONV_BODY version: 2 updated: 2007/07/26 17:35:47
+dnl --------------
+dnl Test-code needed for iconv compile-checks
+define([CF__ICONV_BODY],[
+	iconv_t cd = iconv_open("","");
+	iconv(cd,NULL,NULL,NULL,NULL);
+	iconv_close(cd);]
+)dnl
+dnl ---------------------------------------------------------------------------
+dnl CF__ICONV_HEAD version: 1 updated: 2007/07/26 15:57:03
+dnl --------------
+dnl Header-files needed for iconv compile-checks
+define([CF__ICONV_HEAD],[
+#include <stdlib.h>
+#include <iconv.h>]
+)dnl
+dnl ---------------------------------------------------------------------------
+dnl CF__INTL_BODY version: 1 updated: 2007/07/26 17:35:47
+dnl -------------
+dnl Test-code needed for libintl compile-checks
+dnl $1 = parameter 2 from AM_WITH_NLS
+define([CF__INTL_BODY],[
+    bindtextdomain ("", "");
+    return (int) gettext ("")
+            ifelse([$1], need-ngettext, [ + (int) ngettext ("", "", 0)], [])
+            [ + _nl_msg_cat_cntr]
+])
+dnl ---------------------------------------------------------------------------
+dnl CF__INTL_HEAD version: 1 updated: 2007/07/26 17:35:47
+dnl -------------
+dnl Header-files needed for libintl compile-checks
+define([CF__INTL_HEAD],[
+#include <libintl.h>
+extern int _nl_msg_cat_cntr;
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF__SSL_BODY version: 2 updated: 2008/04/13 10:56:06
+dnl ------------
+dnl Body for test-compile of SSL code.
+define([CF__SSL_BODY],[
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF__SSL_HEAD version: 2 updated: 2008/04/13 10:56:06
+dnl ------------
+dnl Headers for test-compile of SSL code.
+define([CF__SSL_HEAD],[
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl jm_GLIBC21 version: 3 updated: 2002/10/27 23:21:42
+dnl ----------
+dnl Inserted as requested by gettext 0.10.40
+dnl File from /usr/share/aclocal
+dnl glibc21.m4
+dnl ====================
+dnl serial 2
+dnl
+dnl Test for the GNU C Library, version 2.1 or newer.
+dnl From Bruno Haible.
+AC_DEFUN([jm_GLIBC21],
+  [
+    AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer,
+      ac_cv_gnu_library_2_1,
+      [AC_EGREP_CPP([Lucky GNU user],
+	[
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
+  Lucky GNU user
+ #endif
+#endif
+	],
+	ac_cv_gnu_library_2_1=yes,
+	ac_cv_gnu_library_2_1=no)
+      ]
+    )
+    AC_SUBST(GLIBC21)
+    GLIBC21="$ac_cv_gnu_library_2_1"
+  ]
+)
diff --git a/build.com b/build.com
new file mode 100644
index 00000000..9fac4bec
--- /dev/null
+++ b/build.com
@@ -0,0 +1,467 @@
+$ v0 = 0
+$ v = f$verify(v0)
+$! $LynxId: build.com,v 1.19 2011/05/23 23:49:53 tom Exp $
+$!			BUILD.COM
+$!
+$!   Command file to build LYNX.EXE on VMS systems.
+$!   Also invokes build of the WWWLibrary if its
+$!    object library does not already exist.
+$!
+$!
+$!   11-Jun-2010	Ch. Gartmann
+$!	add support for "Multinet UCX emulation"
+$!   01-Jul-2007	T.Dickey
+$!	add support for "TCPIP" (TCPIP Services)
+$!   04-Nov-2004	T.Dickey
+$!	workarounds to build with IA64 platform.
+$!   23-Oct-2004	T.Dickey
+$!	cleanup, remove duplication, etc.
+$!   08-Oct-1997	F.Macrides		macrides@sci.wfeb.edu
+$!	Added comments and minor tweaks for convenient addition of
+$!	compiler definitions and compiler and linker options.
+$!   28-Jun-1997	F.Macrides		macrides@sci.wfeb.edu
+$!	Added chartrans support.
+$!   29-Feb-1996	F.Macrides		macrides@sci.wfeb.edu
+$!	Added LYMap to the compilation and link lists.
+$!   26-Jul-1995	F.Macrides		macrides@sci.wfeb.edu
+$!	Reorganized the option files into ones for the transport and
+$!	ones for the compiler, and adding support for GNUC.
+$!   14-Jun-1995	F.Macrides		macrides@sci.wfeb.edu
+$!	Added LYList.
+$!   03-May-1995	F.Macrides		macrides@sci.wfeb.edu
+$!	Include /nomember for compilations with DECC.  It's not the
+$!	default on AXP and the code assumes byte alignment.
+$!   23-Mar-1995	F.Macrides		macrides@sci.wfeb.edu
+$!	Replaced references to v2.3.8 or v2.3.9 with v2.3-FM to avoid
+$!	any confusion with official releases at UKans.
+$!   16-Mar-1995	F.Macrides		macrides@sci.wfeb.edu
+$!	Updated to permit submission to BATCH.
+$!   17-Feb-1995	F.Macrides		macriees@sci.wfeb.edu
+$!	Updated for v2.3-FM
+$!   07-Dec-1994	F.Macrides		macrides@sci.wfeb.edu
+$!	Updated for DECC/VAX, VAXC/VAX and DECC/AXP
+$!   03-OCT-1994	A.Harper		A.Harper@kcl.ac.uk
+$!	Mods to support SOCKETSHR/NETLIB and add a /DEBUG/NOOPT option
+$!   02-Jun-1994	F.Macrides		macrides@sci.wfeb.edu
+$!	Mods to support TCPWare (To use non-blocking connects, you need
+$!	the DRIVERS_V405B.INC patch from FTP.PROCESS.COM for TCPware for
+$!	OpenVMS Version 4.0-5, or a higher version of TCPWare, which will
+$!	have that bug in the TCPDRIVER fixed.  Otherwise, add NO_IOCTL to
+$!	the $ cc := cc/define=(...) list in [.WWW.Library.VMS]libmake.com).
+$!   20-May-1994	Andy Harper		A.Harper@bay.cc.kcl.ac.uk
+$!	Mods to support CMU TCP/IP
+$!   13-Dec-1993	F.Macrides		macrides@sci.wfeb.edu
+$!	Mods for conditional compilations with VAXC versus DECC
+$!   10-Dec-1993	F.Macrides		macrides@sci.wfeb.edu
+$!	Initial version, for Lynx v2.1
+$!
+$ ON CONTROL_Y THEN GOTO CLEANUP
+$ ON ERROR THEN GOTO CLEANUP
+$ proc = f$environment("PROCEDURE")
+$ where = f$parse(proc,,,"DEVICE") + f$parse(proc,,,"DIRECTORY")
+$ set default 'where'
+$ write sys$output "Default directory:"
+$ show default
+$ write sys$output ""
+$!
+$!	Compiler definitions can be added here as a comma separated
+$!	list with a lead comma, e.g., ",HAVE_FOO_H,DO_BLAH".  The
+$!	definitions will apply only to the LYfoo.c modules.  Ones
+$!	for the libwww-FM modules can be added equivalently in
+$!	[.WWW.Library.vms]libmake.com. - FM
+$!
+$ extra_defs = ""
+$!
+$!	Include-paths can be added here as a comma separated
+$!	list with a lead comma, e.g., ",foo".
+$!
+$ extra_incs = ""
+$!
+$!	Library definitions can be added here as a comma separated
+$!	list with a lead comma, e.g., ",foo/LIB".
+$!
+$ extra_libs = ""
+$!
+$!	If no TCP/IP agent is specified (as the first argument),
+$!	prompt for a number from the list.   Note that the agent
+$!	must be the first argument if the debugger mode is to be
+$!	set via a second argument (see below). - FM
+$!
+$ agent = 0
+$ IF P1 .EQS. ""
+$ THEN
+$   If f$mode() .eqs. "BATCH"
+$   Then
+$	write sys$output "TCP/IP agent not specified!"
+$	write sys$output "Defaulting to MULTINET"
+$	agent = 1
+$   Else
+$ 	write sys$output "Acceptable TCP/IP agents are"
+$ 	write sys$output " [1] MULTINET (default)"
+$ 	write sys$output " [2] UCX"
+$ 	write sys$output " [3] WIN_TCP"
+$	write sys$output " [4] CMU_TCP"
+$	write sys$output " [5] SOCKETSHR_TCP"
+$	write sys$output " [6] TCPWARE"
+$	write sys$output " [7] DECNET"
+$	write sys$output " [8] TCPIP"
+$	write sys$output " [9] Multinet with UCX emulation"
+$ 	read sys$command/prompt="Agent [1,2,3,4,5,6,7,8,9] (RETURN = [1]) " agent
+$   EndIf
+$ ENDIF
+$ option = ""
+$ if agent .eq. 1 .or. agent .eqs. "" .or. p1 .eqs. "" .or. p1 .eqs. "MULTINET" then -
+    option = "MULTINET"
+$ if agent .eq. 2 .or. p1 .eqs. "UCX"           then option = "UCX"
+$ if agent .eq. 3 .or. p1 .eqs. "WIN_TCP"       then option = "WIN_TCP"
+$ if agent .eq. 4 .or. p1 .eqs. "CMU_TCP"       then option = "CMU_TCP"
+$ if agent .eq. 5 .or. p1 .eqs. "SOCKETSHR_TCP" then option = "SOCKETSHR_TCP"
+$ if agent .eq. 6 .or. p1 .eqs. "TCPWARE"       then option = "TCPWARE"
+$ if agent .eq. 7 .or. p1 .eqs. "DECNET"        then option = "DECNET"
+$ if agent .eq. 8 .or. p1 .eqs. "TCPIP"         then option = "TCPIP"
+$ if agent .eq. 9 .or. p1 .eqs. "MULTINETUCX"        
+$    then
+$    option = "UCX"
+$    mucx = 1
+$    extra_defs = extra_defs + ",MUCX"
+$ ELSE
+$    mucx = 0
+$ ENDIF
+$!
+$ if option .eqs. ""
+$ then
+$    write sys$output "TCP/IP agent could not be determined"
+$    exit 18
+$ endif
+$!
+$ if option .eqs. "TCPWARE"
+$ then
+$    write sys$output "Building Lynx for TCPWARE with UCX emulation..."
+$    extra_defs = extra_defs + ",UCX"
+$ endif
+$!
+$ optfile = "''option'"
+$!
+$!	Compiler and linker options can be specified here.  If
+$!	there was a second argument (with any value), then debugger
+$!	mode with no optimization will be specified as well.  The
+$!	compiler options will apply only to the LYfoo.c and UCfoo.c
+$!	modules.  Ones for the libwww-FM modules can be specified
+$!	in [.WWW.Library.vms]libmake.com. - FM
+$!
+$ cc_opts = ""
+$ link_opts = ""
+$!
+$!	The second parameter is a comma-separated list of the optional
+$!	libraries:
+$!		bzlib, slang, ssl, zlib
+$!	Because these are normally not installed in a standard place,
+$!	you must define their locations (see below for the symbols ending
+$!	with "_INC" or "_LIB").
+$!
+$ if P2 .nes. ""
+$ then
+$   count_parm = 0
+$ parse_p2:
+$   value_parm = f$element('count_parm, ",", "''p2'")
+$   if value_parm .nes. ","
+$   then
+$      if value_parm .eqs. "BZLIB"
+$      then
+$         write sys$output "** adding BZlib to build."
+$         extra_defs = extra_defs + ",USE_BZLIB"
+$         extra_incs = extra_incs + "," + BZLIB_INC
+$         extra_libs = extra_libs + "," + BZLIB_LIB + "libbz2/LIB"
+$      endif
+$      if value_parm .eqs. "SLANG"
+$      then
+$         write sys$output "** adding SLang to build."
+$         extra_defs = extra_defs + ",USE_SLANG"
+$         extra_incs = extra_incs + "," + SLANG_INC
+$         extra_libs = extra_libs + "," + SLANG_LIB + "slang.olb/lib"
+$      endif
+$      if value_parm .eqs. "SSL"
+$      then
+$         write sys$output "** adding SSL to build."
+$         IF F$TYPE( ssl_lib ) .EQS. "" THEN ssl_lib = F$TRNLNM("SSLLIB")
+$         IF F$TYPE( ssl_inc ) .EQS. "" THEN ssl_inc = F$TRNLNM("SSLINCLUDE")
+$         extra_defs = extra_defs + ",USE_SSL,USE_OPENSSL_INCL"
+$         extra_libs = extra_libs + "," + SSL_LIB + "libssl/LIB," + SSL_LIB + "libcrypto/LIB"
+$!
+$!	The "#include <openssl/ssl.h>" requires a logical variable "openssl".
+$!
+$         define/nolog openssl 'SSL_INC
+$      endif
+$      if value_parm .eqs. "ZLIB"
+$      then
+$         write sys$output "** adding Zlib to build."
+$         extra_defs = extra_defs + ",USE_ZLIB"
+$         extra_incs = extra_incs + "," + ZLIB_INC
+$         extra_libs = extra_libs + "," + ZLIB_LIB + "libz/LIB"
+$      endif
+$      count_parm = count_parm + 1
+$      goto parse_p2
+$   endif
+$ endif
+$!
+$!	The third parameter is nonempty to make a debug build
+$!
+$ if P3 .nes. ""
+$   then
+$      debug_arg = "DEBUG"
+$      cc_opts = cc_opts + "/DEBUG/NOOPT"
+$      link_opts = link_opts + "/DEBUG"
+$   else
+$      debug_arg = ""
+$ endif
+$!
+$ IF f$search("[.WWW.Library.Implementation]WWWLib_''option'.olb") .nes. ""
+$ THEN
+$   write sys$output "  WWWLib_''option'.olb already exists."
+$   If f$mode() .eqs. "BATCH"
+$   Then
+$	write sys$output "  Updating WWWLib_''option'.olb"
+$   Else
+$	read sys$command/prompt="  Update it [default Y]? " reply
+$	if reply .nes. "" .and. -
+	   f$extract(0,1,f$edit(reply, "TRIM, UPCASE")) .nes. "Y" then -
+$	   goto Compile_CHRTRANS
+$   EndIf
+$ ENDIF
+$ v1 = f$verify(1)
+$!
+$!	Build the WWWLibrary
+$!
+$ set default [.WWW.Library.VMS]
+$ v1 = f$verify(v0)
+$ @libmake "''option'" "''P2'" "''debug_arg'"
+$ v1 = f$verify(1)
+$ set default [-.-.-]
+$ v1 = f$verify(v0)
+$ ON CONTROL_Y THEN GOTO CLEANUP
+$ ON ERROR THEN GOTO CLEANUP
+$!
+$Compile_CHRTRANS:
+$ IF f$search("[.src.chrtrans]makeuctb.exe") .nes. ""
+$ THEN
+$   write sys$output "  [.src.chrtrans]makeuctb.exe already exists."
+$   If f$mode() .eqs. "BATCH"
+$   Then
+$	write sys$output "  Updating makeuctb.exe and chrtrans header files."
+$   Else
+$	read sys$command -
+	   /prompt="  Update it and chrtrans header files [default Y]? " reply
+$	if reply .nes. "" .and. -
+	   f$extract(0,1,f$edit(reply, "TRIM, UPCASE")) .nes. "Y" then -
+$	   goto Compile_SRC
+$   EndIf
+$ ENDIF
+$!
+$ v1 = f$verify(1)
+$!
+$!	Build the chrtrans modules.
+$!
+$ set default [.src.chrtrans]
+$ v1 = 'f$verify(v0)
+$ @build-chrtrans
+$ v1 = f$verify(1)
+$ set default [-.-]
+$ v1 = f$verify(v0)
+$ ON CONTROL_Y THEN GOTO CLEANUP
+$ ON ERROR THEN GOTO CLEANUP
+$!
+$Compile_SRC:
+$ v1 = f$verify(1)
+$!
+$!	Compile the Lynx [.SRC] modules
+$!
+$ set default [.SRC]
+$ v1 = f$verify(v0)
+$ IF f$getsyi("ARCH_NAME") .eqs. "Alpha" .or. -
+     f$getsyi("ARCH_NAME") .eqs. "IA64" .or. -
+     f$trnlnm("VAXCMSG") .eqs. "DECC$MSG" .or. -
+     f$trnlnm("DECC$CC_DEFAULT") .eqs. "/DECC" .or. -
+     f$trnlnm("DECC$CC_DEFAULT") .eqs. "/VAXC"
+$ THEN
+$  compiler := "DECC"
+$!
+$  if option .eqs. "UCX"
+$     then
+$     optfile = "UCXSHR"
+$     IF mucx THEN optfile = "MULTINET_UCX"
+$  ENDIF
+$  if option .eqs. "TCPIP"         then optfile = "TCPIPSHR"
+$  if option .eqs. "TCPWARE"       then optfile = "TCPWARESHR"
+$!
+$  if option .eqs. "SOCKETSHR_TCP" then extra_defs = extra_defs + ",_DECC_V4_SOURCE"
+$  if option .eqs. "TCPIP"         then extra_defs = extra_defs + ",TCPIP_SERVICES"
+$  if option .eqs. "MULTINET" then -
+	extra_defs = extra_defs + ",_DECC_V4_SOURCE,__SOCKET_TYPEDEFS"
+$!
+$  if option .eqs. "TCPIP"
+$  then
+$     if f$trnlnm("TCPIP$IPC_SHR") .eqs. "" then define TCPIP$IPC_SHR SYS$LIBRARY:TCPIP$IPC_SHR
+$  endif
+$!
+$  v1 = f$verify(1)
+$! DECC:
+$  cc := cc/decc/prefix=all/nomember'cc_opts' -
+	   /DEFINE=(ACCESS_AUTH,'option''extra_defs',__VMS_CURSES)-
+	   /INCLUDE=([],[-],[-.WWW.Library.Implementation],[.chrtrans]'extra_incs')
+$  v1 = f$verify(v0)
+$ ELSE
+$  IF option .eqs. "UCX"
+$     THEN
+$     optfile = "UCXSHR"
+$     IF mucx THEN optfile = "MULTINET_UCX"
+$  ENDIF
+$  if option .eqs. "TCPIP"         then optfile = "TCPIPOLB"
+$  if option .eqs. "TCPWARE"       then optfile = "TCPWAREOLB"
+$  IF f$search("gnu_cc:[000000]gcclib.olb") .nes. ""
+$  THEN
+$   compiler := "GNUC"
+$   v1 = f$verify(1)
+$! GNUC:
+$   cc := gcc'cc_opts' -
+	     /DEFINE=(ACCESS_AUTH,'option''extra_defs')-
+	     /INCLUDE=([],[-],[-.WWW.Library.Implementation],[.chrtrans]'extra_incs')
+$   v1 = f$verify(v0)
+$  ELSE
+$   compiler := "VAXC"
+$   v1 = f$verify(1)
+$! VAXC:
+$   cc := cc'cc_opts' -
+	    /DEFINE=(ACCESS_AUTH,'option''extra_defs')-
+	    /INCLUDE=([],[-],[-.WWW.Library.Implementation],[.chrtrans]'extra_incs')
+$   v1 = f$verify(v0)
+$  ENDIF
+$ ENDIF
+$ v1 = f$verify(1)
+$!
+$ cc DefaultStyle
+$ cc GridText
+$ cc HTAlert
+$ cc HTFWriter
+$ cc HTInit
+$ cc HTML
+$ cc LYBookmark
+$ cc LYCgi
+$ cc LYCharSets
+$ cc LYCharUtils
+$ cc LYClean
+$ cc LYCookie
+$ cc/nooptimize LYCurses
+$ cc LYDownload
+$ cc LYEdit
+$ cc LYEditmap
+$ cc LYexit
+$ cc LYForms
+$ cc LYGetFile
+$ cc LYHistory
+$ cc LYJump
+$ cc LYKeymap
+$ cc LYLeaks
+$ cc LYList
+$ cc LYMail
+$ cc LYMain
+$ cc LYMainLoop
+$ cc LYMap
+$ cc LYMktime
+$ cc LYNews
+$ cc LYOptions
+$ cc LYPrint
+$ cc LYrcFile
+$ cc LYReadCFG
+$ cc LYSearch
+$ cc LYSession
+$ cc LYShowInfo
+$ cc LYStrings
+$ cc LYTraversal
+$ cc LYUpload
+$ cc LYUtils
+$ cc PARSDATE
+$ cc TRSTable
+$ cc UCAuto
+$ cc UCAux
+$ cc UCdomap
+$!
+$!	Link the objects and libaries.
+$!
+$ IF f$getsyi("ARCH_NAME") .eqs. "IA64"
+$ THEN
+$    optslibs="''extra_libs'"
+$ ELSE
+$    optslibs=", sys$disk:[]''optfile'.opt/opt, sys$disk:[]''compiler'.opt/opt ''extra_libs'"
+$ ENDIF
+$!
+$ link/exe=lynx.exe/map=lynx 'link_opts' -
+DefaultStyle.obj, -
+GridText.obj, -
+HTAlert.obj, -
+HTFWriter.obj, -
+HTInit.obj, -
+HTML.obj, -
+LYBookmark.obj, -
+LYCgi.obj, -
+LYCharSets.obj, -
+LYCharUtils.obj, -
+LYClean.obj, -
+LYCookie.obj, -
+LYCurses.obj, -
+LYDownload.obj, -
+LYEdit.obj, -
+LYEditmap.obj, -
+LYexit.obj, -
+LYForms.obj, -
+LYGetFile.obj, -
+LYHistory.obj, -
+LYJump.obj, -
+LYKeymap.obj, -
+LYLeaks.obj, -
+LYList.obj, -
+LYMail.obj, -
+LYMain.obj, -
+LYMainLoop.obj, -
+LYMap.obj, -
+LYMktime.obj, -
+LYNews.obj, -
+LYOptions.obj, -
+LYPrint.obj, -
+LYrcFile.obj, -
+LYReadCFG.obj, -
+LYSearch.obj, -
+LYSession.obj, -
+LYShowInfo.obj, -
+LYStrings.obj, -
+LYTraversal.obj, -
+LYUpload.obj, -
+LYUtils.obj, -
+Parsdate.obj, -
+TRSTable.obj, -
+UCAuto.obj, -
+UCAux.obj, -
+UCdomap.obj, -
+[-.WWW.Library.Implementation]WWWLib_'option'.olb/library 'optslibs
+$!
+$!	Copy the executable to the top directory and restore the default.
+$!
+$ copy lynx.exe [-]
+$ set def [-]
+$!
+$ v1 = f$verify(v0)
+$!
+$!  Issue message on how to include LYNX.HLP in the system HELP library
+$!
+$ write sys$output ""
+$ write sys$output "  To install or update lynx.hlp in the system HELP library,"
+$ write sys$output "  use:"
+$ write sys$output "        library/replace sys$help:helplib.hlb lynx.hlp"
+$ write sys$output ""
+$!
+$ CLEANUP:
+$    v1 = f$verify(v0)
+$    set default 'where'
+$    write sys$output "Default directory:"
+$    show default
+$    v1 = f$verify(v)
+$ exit
diff --git a/clean.com b/clean.com
new file mode 100644
index 00000000..8a1fa20c
--- /dev/null
+++ b/clean.com
@@ -0,0 +1,22 @@
+$! Command file to remove files created by build.com -T.Dickey
+$ set noverify
+$ delete [...]*.obj;*
+$ delete [...]*.olb;*
+$ delete [...]*.lis;*
+$ delete [...]*.map;*
+$ delete [...]*.exe;*
+$
+$	name = ""
+$ loop_tbl :
+$	last = name
+$	name = F$SEARCH("[.src.chrtrans]*.tbl;",1)
+$	if name .nes. "" .and. name .nes. last
+$	then
+$		head = "[.src.chrtrans]" + F$PARSE(name,,,"NAME","SYNTAX_ONLY") + ".h"
+$		if f$search("''head'",2) .nes. ""
+$		then
+$			write sys$output "head " + head
+$			delete 'head;*
+$		endif
+$		goto loop_tbl
+$	endif
diff --git a/config.guess b/config.guess
new file mode 100755
index 00000000..e4b69669
--- /dev/null
+++ b/config.guess
@@ -0,0 +1,1511 @@
+#! /bin/sh
+# Attempt to guess a canonical system name.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+#   2911 Free Software Foundation, Inc.
+
+timestamp='2011-01-01'
+
+# This file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+
+# Originally written by Per Bothner.  Please send patches (context
+# diff format) to <config-patches@gnu.org> and include a ChangeLog
+# entry.
+#
+# This script attempts to guess a canonical system name similar to
+# config.sub.  If it succeeds, it prints the system name on stdout, and
+# exits with 0.  Otherwise, it exits with 1.
+#
+# You can get the latest version of this script from:
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit ;;
+    --version | -v )
+       echo "$version" ; exit ;;
+    --help | --h* | -h )
+       echo "$usage"; exit ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )	# Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help" >&2
+       exit 1 ;;
+    * )
+       break ;;
+  esac
+done
+
+if test $# != 0; then
+  echo "$me: too many arguments$help" >&2
+  exit 1
+fi
+
+trap 'exit 1' 1 2 15
+
+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+# compiler to aid in system detection is discouraged as it requires
+# temporary files to be created and, as you can see below, it is a
+# headache to deal with in a portable fashion.
+
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+# Portable tmp directory creation inspired by the Autoconf team.
+
+set_cc_for_build='
+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
+: ${TMPDIR=/tmp} ;
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
+dummy=$tmp/dummy ;
+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
+case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,)    echo "int x;" > $dummy.c ;
+	for c in cc gcc c89 c99 ; do
+	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
+	     CC_FOR_BUILD="$c"; break ;
+	  fi ;
+	done ;
+	if test x"$CC_FOR_BUILD" = x ; then
+	  CC_FOR_BUILD=no_compiler_found ;
+	fi
+	;;
+ ,,*)   CC_FOR_BUILD=$CC ;;
+ ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
+esac ; set_cc_for_build= ;'
+
+# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+# (ghazi@noc.rutgers.edu 1994-08-24)
+if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+	PATH=$PATH:/.attbin ; export PATH
+fi
+
+UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
+UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
+UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+
+# Note: order is significant - the case branches are not exclusive.
+
+case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+    *:NetBSD:*:*)
+	# NetBSD (nbsd) targets should (where applicable) match one or
+	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
+	# switched to ELF, *-*-netbsd* would select the old
+	# object file format.  This provides both forward
+	# compatibility and a consistent mechanism for selecting the
+	# object file format.
+	#
+	# Note: NetBSD doesn't particularly care about the vendor
+	# portion of the name.  We always set it to "unknown".
+	sysctl="sysctl -n hw.machine_arch"
+	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
+	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+	case "${UNAME_MACHINE_ARCH}" in
+	    armeb) machine=armeb-unknown ;;
+	    arm*) machine=arm-unknown ;;
+	    sh3el) machine=shl-unknown ;;
+	    sh3eb) machine=sh-unknown ;;
+	    sh5el) machine=sh5le-unknown ;;
+	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+	esac
+	# The Operating System including object format, if it has switched
+	# to ELF recently, or will in the future.
+	case "${UNAME_MACHINE_ARCH}" in
+	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+		eval $set_cc_for_build
+		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+			| grep -q __ELF__
+		then
+		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+		    # Return netbsd for either.  FIX?
+		    os=netbsd
+		else
+		    os=netbsdelf
+		fi
+		;;
+	    *)
+		os=netbsd
+		;;
+	esac
+	# The OS release
+	# Debian GNU/NetBSD machines have a different userland, and
+	# thus, need a distinct triplet. However, they do not need
+	# kernel version information, so it can be replaced with a
+	# suitable tag, in the style of linux-gnu.
+	case "${UNAME_VERSION}" in
+	    Debian*)
+		release='-gnu'
+		;;
+	    *)
+		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+		;;
+	esac
+	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+	# contains redundant information, the shorter form:
+	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+	echo "${machine}-${os}${release}"
+	exit ;;
+    *:OpenBSD:*:*)
+	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+	exit ;;
+    *:ekkoBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+	exit ;;
+    *:SolidBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+	exit ;;
+    macppc:MirBSD:*:*)
+	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+	exit ;;
+    *:MirBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+	exit ;;
+    alpha:OSF1:*:*)
+	case $UNAME_RELEASE in
+	    *4.0)
+		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+		;;
+	    *5.*)
+		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+		;;
+	esac
+	# According to Compaq, /usr/sbin/psrinfo has been available on
+	# OSF/1 and Tru64 systems produced since 1995.  I hope that
+	# covers most systems running today.  This code pipes the CPU
+	# types through head -n 1, so we only detect the type of CPU 0.
+	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+	case "$ALPHA_CPU_TYPE" in
+	    "EV4 (21064)")
+		UNAME_MACHINE="alpha" ;;
+	    "EV4.5 (21064)")
+		UNAME_MACHINE="alpha" ;;
+	    "LCA4 (21066/21068)")
+		UNAME_MACHINE="alpha" ;;
+	    "EV5 (21164)")
+		UNAME_MACHINE="alphaev5" ;;
+	    "EV5.6 (21164A)")
+		UNAME_MACHINE="alphaev56" ;;
+	    "EV5.6 (21164PC)")
+		UNAME_MACHINE="alphapca56" ;;
+	    "EV5.7 (21164PC)")
+		UNAME_MACHINE="alphapca57" ;;
+	    "EV6 (21264)")
+		UNAME_MACHINE="alphaev6" ;;
+	    "EV6.7 (21264A)")
+		UNAME_MACHINE="alphaev67" ;;
+	    "EV6.8CB (21264C)")
+		UNAME_MACHINE="alphaev68" ;;
+	    "EV6.8AL (21264B)")
+		UNAME_MACHINE="alphaev68" ;;
+	    "EV6.8CX (21264D)")
+		UNAME_MACHINE="alphaev68" ;;
+	    "EV6.9A (21264/EV69A)")
+		UNAME_MACHINE="alphaev69" ;;
+	    "EV7 (21364)")
+		UNAME_MACHINE="alphaev7" ;;
+	    "EV7.9 (21364A)")
+		UNAME_MACHINE="alphaev79" ;;
+	esac
+	# A Pn.n version is a patched version.
+	# A Vn.n version is a released version.
+	# A Tn.n version is a released field test version.
+	# A Xn.n version is an unreleased experimental baselevel.
+	# 1.2 uses "1.2" for uname -r.
+	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
+	exitcode=$?
+	trap '' 0
+	exit $exitcode ;;
+    Alpha\ *:Windows_NT*:*)
+	# How do we know it's Interix rather than the generic POSIX subsystem?
+	# Should we change UNAME_MACHINE based on the output of uname instead
+	# of the specific Alpha model?
+	echo alpha-pc-interix
+	exit ;;
+    21064:Windows_NT:50:3)
+	echo alpha-dec-winnt3.5
+	exit ;;
+    Amiga*:UNIX_System_V:4.0:*)
+	echo m68k-unknown-sysv4
+	exit ;;
+    *:[Aa]miga[Oo][Ss]:*:*)
+	echo ${UNAME_MACHINE}-unknown-amigaos
+	exit ;;
+    *:[Mm]orph[Oo][Ss]:*:*)
+	echo ${UNAME_MACHINE}-unknown-morphos
+	exit ;;
+    *:OS/390:*:*)
+	echo i370-ibm-openedition
+	exit ;;
+    *:z/VM:*:*)
+	echo s390-ibm-zvmoe
+	exit ;;
+    *:OS400:*:*)
+	echo powerpc-ibm-os400
+	exit ;;
+    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+	echo arm-acorn-riscix${UNAME_RELEASE}
+	exit ;;
+    arm:riscos:*:*|arm:RISCOS:*:*)
+	echo arm-unknown-riscos
+	exit ;;
+    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+	echo hppa1.1-hitachi-hiuxmpp
+	exit ;;
+    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
+	if test "`(/bin/universe) 2>/dev/null`" = att ; then
+		echo pyramid-pyramid-sysv3
+	else
+		echo pyramid-pyramid-bsd
+	fi
+	exit ;;
+    NILE*:*:*:dcosx)
+	echo pyramid-pyramid-svr4
+	exit ;;
+    DRS?6000:unix:4.0:6*)
+	echo sparc-icl-nx6
+	exit ;;
+    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+	case `/usr/bin/uname -p` in
+	    sparc) echo sparc-icl-nx7; exit ;;
+	esac ;;
+    s390x:SunOS:*:*)
+	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    sun4H:SunOS:5.*:*)
+	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
+	echo i386-pc-auroraux${UNAME_RELEASE}
+	exit ;;
+    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
+	eval $set_cc_for_build
+	SUN_ARCH="i386"
+	# If there is a compiler, see if it is configured for 64-bit objects.
+	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
+	# This test works for both compilers.
+	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
+		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+		grep IS_64BIT_ARCH >/dev/null
+	    then
+		SUN_ARCH="x86_64"
+	    fi
+	fi
+	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    sun4*:SunOS:6*:*)
+	# According to config.sub, this is the proper way to canonicalize
+	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
+	# it's likely to be more like Solaris than SunOS4.
+	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    sun4*:SunOS:*:*)
+	case "`/usr/bin/arch -k`" in
+	    Series*|S4*)
+		UNAME_RELEASE=`uname -v`
+		;;
+	esac
+	# Japanese Language versions have a version number like `4.1.3-JL'.
+	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+	exit ;;
+    sun3*:SunOS:*:*)
+	echo m68k-sun-sunos${UNAME_RELEASE}
+	exit ;;
+    sun*:*:4.2BSD:*)
+	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+	case "`/bin/arch`" in
+	    sun3)
+		echo m68k-sun-sunos${UNAME_RELEASE}
+		;;
+	    sun4)
+		echo sparc-sun-sunos${UNAME_RELEASE}
+		;;
+	esac
+	exit ;;
+    aushp:SunOS:*:*)
+	echo sparc-auspex-sunos${UNAME_RELEASE}
+	exit ;;
+    # The situation for MiNT is a little confusing.  The machine name
+    # can be virtually everything (everything which is not
+    # "atarist" or "atariste" at least should have a processor
+    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
+    # to the lowercase version "mint" (or "freemint").  Finally
+    # the system name "TOS" denotes a system which is actually not
+    # MiNT.  But MiNT is downward compatible to TOS, so this should
+    # be no problem.
+    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+	echo m68k-atari-mint${UNAME_RELEASE}
+	exit ;;
+    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+	echo m68k-atari-mint${UNAME_RELEASE}
+	exit ;;
+    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+	echo m68k-atari-mint${UNAME_RELEASE}
+	exit ;;
+    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+	echo m68k-milan-mint${UNAME_RELEASE}
+	exit ;;
+    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+	echo m68k-hades-mint${UNAME_RELEASE}
+	exit ;;
+    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+	echo m68k-unknown-mint${UNAME_RELEASE}
+	exit ;;
+    m68k:machten:*:*)
+	echo m68k-apple-machten${UNAME_RELEASE}
+	exit ;;
+    powerpc:machten:*:*)
+	echo powerpc-apple-machten${UNAME_RELEASE}
+	exit ;;
+    RISC*:Mach:*:*)
+	echo mips-dec-mach_bsd4.3
+	exit ;;
+    RISC*:ULTRIX:*:*)
+	echo mips-dec-ultrix${UNAME_RELEASE}
+	exit ;;
+    VAX*:ULTRIX*:*:*)
+	echo vax-dec-ultrix${UNAME_RELEASE}
+	exit ;;
+    2020:CLIX:*:* | 2430:CLIX:*:*)
+	echo clipper-intergraph-clix${UNAME_RELEASE}
+	exit ;;
+    mips:*:*:UMIPS | mips:*:*:RISCos)
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+#ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
+	int main (int argc, char *argv[]) {
+#else
+	int main (argc, argv) int argc; char *argv[]; {
+#endif
+	#if defined (host_mips) && defined (MIPSEB)
+	#if defined (SYSTYPE_SYSV)
+	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+	#endif
+	#if defined (SYSTYPE_SVR4)
+	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+	#endif
+	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+	#endif
+	#endif
+	  exit (-1);
+	}
+EOF
+	$CC_FOR_BUILD -o $dummy $dummy.c &&
+	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+	  SYSTEM_NAME=`$dummy $dummyarg` &&
+	    { echo "$SYSTEM_NAME"; exit; }
+	echo mips-mips-riscos${UNAME_RELEASE}
+	exit ;;
+    Motorola:PowerMAX_OS:*:*)
+	echo powerpc-motorola-powermax
+	exit ;;
+    Motorola:*:4.3:PL8-*)
+	echo powerpc-harris-powermax
+	exit ;;
+    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+	echo powerpc-harris-powermax
+	exit ;;
+    Night_Hawk:Power_UNIX:*:*)
+	echo powerpc-harris-powerunix
+	exit ;;
+    m88k:CX/UX:7*:*)
+	echo m88k-harris-cxux7
+	exit ;;
+    m88k:*:4*:R4*)
+	echo m88k-motorola-sysv4
+	exit ;;
+    m88k:*:3*:R3*)
+	echo m88k-motorola-sysv3
+	exit ;;
+    AViiON:dgux:*:*)
+	# DG/UX returns AViiON for all architectures
+	UNAME_PROCESSOR=`/usr/bin/uname -p`
+	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+	then
+	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+	       [ ${TARGET_BINARY_INTERFACE}x = x ]
+	    then
+		echo m88k-dg-dgux${UNAME_RELEASE}
+	    else
+		echo m88k-dg-dguxbcs${UNAME_RELEASE}
+	    fi
+	else
+	    echo i586-dg-dgux${UNAME_RELEASE}
+	fi
+	exit ;;
+    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
+	echo m88k-dolphin-sysv3
+	exit ;;
+    M88*:*:R3*:*)
+	# Delta 88k system running SVR3
+	echo m88k-motorola-sysv3
+	exit ;;
+    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+	echo m88k-tektronix-sysv3
+	exit ;;
+    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+	echo m68k-tektronix-bsd
+	exit ;;
+    *:IRIX*:*:*)
+	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+	exit ;;
+    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
+	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
+    i*86:AIX:*:*)
+	echo i386-ibm-aix
+	exit ;;
+    ia64:AIX:*:*)
+	if [ -x /usr/bin/oslevel ] ; then
+		IBM_REV=`/usr/bin/oslevel`
+	else
+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+	fi
+	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+	exit ;;
+    *:AIX:2:3)
+	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+		eval $set_cc_for_build
+		sed 's/^		//' << EOF >$dummy.c
+		#include <sys/systemcfg.h>
+
+		main()
+			{
+			if (!__power_pc())
+				exit(1);
+			puts("powerpc-ibm-aix3.2.5");
+			exit(0);
+			}
+EOF
+		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+		then
+			echo "$SYSTEM_NAME"
+		else
+			echo rs6000-ibm-aix3.2.5
+		fi
+	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+		echo rs6000-ibm-aix3.2.4
+	else
+		echo rs6000-ibm-aix3.2
+	fi
+	exit ;;
+    *:AIX:*:[4567])
+	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
+	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+		IBM_ARCH=rs6000
+	else
+		IBM_ARCH=powerpc
+	fi
+	if [ -x /usr/bin/oslevel ] ; then
+		IBM_REV=`/usr/bin/oslevel`
+	else
+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+	fi
+	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+	exit ;;
+    *:AIX:*:*)
+	echo rs6000-ibm-aix
+	exit ;;
+    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+	echo romp-ibm-bsd4.4
+	exit ;;
+    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
+	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
+	exit ;;                             # report: romp-ibm BSD 4.3
+    *:BOSX:*:*)
+	echo rs6000-bull-bosx
+	exit ;;
+    DPX/2?00:B.O.S.:*:*)
+	echo m68k-bull-sysv3
+	exit ;;
+    9000/[34]??:4.3bsd:1.*:*)
+	echo m68k-hp-bsd
+	exit ;;
+    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+	echo m68k-hp-bsd4.4
+	exit ;;
+    9000/[34678]??:HP-UX:*:*)
+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+	case "${UNAME_MACHINE}" in
+	    9000/31? )            HP_ARCH=m68000 ;;
+	    9000/[34]?? )         HP_ARCH=m68k ;;
+	    9000/[678][0-9][0-9])
+		if [ -x /usr/bin/getconf ]; then
+		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+		    case "${sc_cpu_version}" in
+                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+                      532)                      # CPU_PA_RISC2_0
+                        case "${sc_kernel_bits}" in
+                          32) HP_ARCH="hppa2.0n" ;;
+                          64) HP_ARCH="hppa2.0w" ;;
+			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
+                        esac ;;
+                    esac
+		fi
+		if [ "${HP_ARCH}" = "" ]; then
+		    eval $set_cc_for_build
+		    sed 's/^              //' << EOF >$dummy.c
+
+              #define _HPUX_SOURCE
+              #include <stdlib.h>
+              #include <unistd.h>
+
+              int main ()
+              {
+              #if defined(_SC_KERNEL_BITS)
+                  long bits = sysconf(_SC_KERNEL_BITS);
+              #endif
+                  long cpu  = sysconf (_SC_CPU_VERSION);
+
+                  switch (cpu)
+              	{
+              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+              	case CPU_PA_RISC2_0:
+              #if defined(_SC_KERNEL_BITS)
+              	    switch (bits)
+              		{
+              		case 64: puts ("hppa2.0w"); break;
+              		case 32: puts ("hppa2.0n"); break;
+              		default: puts ("hppa2.0"); break;
+              		} break;
+              #else  /* !defined(_SC_KERNEL_BITS) */
+              	    puts ("hppa2.0"); break;
+              #endif
+              	default: puts ("hppa1.0"); break;
+              	}
+                  exit (0);
+              }
+EOF
+		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+		    test -z "$HP_ARCH" && HP_ARCH=hppa
+		fi ;;
+	esac
+	if [ ${HP_ARCH} = "hppa2.0w" ]
+	then
+	    eval $set_cc_for_build
+
+	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
+	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
+	    # generating 64-bit code.  GNU and HP use different nomenclature:
+	    #
+	    # $ CC_FOR_BUILD=cc ./config.guess
+	    # => hppa2.0w-hp-hpux11.23
+	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+	    # => hppa64-hp-hpux11.23
+
+	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+		grep -q __LP64__
+	    then
+		HP_ARCH="hppa2.0w"
+	    else
+		HP_ARCH="hppa64"
+	    fi
+	fi
+	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+	exit ;;
+    ia64:HP-UX:*:*)
+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+	echo ia64-hp-hpux${HPUX_REV}
+	exit ;;
+    3050*:HI-UX:*:*)
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#include <unistd.h>
+	int
+	main ()
+	{
+	  long cpu = sysconf (_SC_CPU_VERSION);
+	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
+	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
+	     results, however.  */
+	  if (CPU_IS_PA_RISC (cpu))
+	    {
+	      switch (cpu)
+		{
+		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
+		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
+		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
+		  default: puts ("hppa-hitachi-hiuxwe2"); break;
+		}
+	    }
+	  else if (CPU_IS_HP_MC68K (cpu))
+	    puts ("m68k-hitachi-hiuxwe2");
+	  else puts ("unknown-hitachi-hiuxwe2");
+	  exit (0);
+	}
+EOF
+	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+		{ echo "$SYSTEM_NAME"; exit; }
+	echo unknown-hitachi-hiuxwe2
+	exit ;;
+    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+	echo hppa1.1-hp-bsd
+	exit ;;
+    9000/8??:4.3bsd:*:*)
+	echo hppa1.0-hp-bsd
+	exit ;;
+    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+	echo hppa1.0-hp-mpeix
+	exit ;;
+    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+	echo hppa1.1-hp-osf
+	exit ;;
+    hp8??:OSF1:*:*)
+	echo hppa1.0-hp-osf
+	exit ;;
+    i*86:OSF1:*:*)
+	if [ -x /usr/sbin/sysversion ] ; then
+	    echo ${UNAME_MACHINE}-unknown-osf1mk
+	else
+	    echo ${UNAME_MACHINE}-unknown-osf1
+	fi
+	exit ;;
+    parisc*:Lites*:*:*)
+	echo hppa1.1-hp-lites
+	exit ;;
+    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+	echo c1-convex-bsd
+	exit ;;
+    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+	if getsysinfo -f scalar_acc
+	then echo c32-convex-bsd
+	else echo c2-convex-bsd
+	fi
+	exit ;;
+    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+	echo c34-convex-bsd
+	exit ;;
+    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+	echo c38-convex-bsd
+	exit ;;
+    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+	echo c4-convex-bsd
+	exit ;;
+    CRAY*Y-MP:*:*:*)
+	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    CRAY*[A-Z]90:*:*:*)
+	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+	      -e 's/\.[^.]*$/.X/'
+	exit ;;
+    CRAY*TS:*:*:*)
+	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    CRAY*T3E:*:*:*)
+	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    CRAY*SV1:*:*:*)
+	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    *:UNICOS/mp:*:*)
+	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+	exit ;;
+    5000:UNIX_System_V:4.*:*)
+	FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+	exit ;;
+    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+	exit ;;
+    sparc*:BSD/OS:*:*)
+	echo sparc-unknown-bsdi${UNAME_RELEASE}
+	exit ;;
+    *:BSD/OS:*:*)
+	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+	exit ;;
+    *:FreeBSD:*:*)
+	case ${UNAME_MACHINE} in
+	    pc98)
+		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	    amd64)
+		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	    *)
+		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	esac
+	exit ;;
+    i*:CYGWIN*:*)
+	echo ${UNAME_MACHINE}-pc-cygwin
+	exit ;;
+    *:MINGW*:*)
+	echo ${UNAME_MACHINE}-pc-mingw32
+	exit ;;
+    i*:windows32*:*)
+	# uname -m includes "-pc" on this system.
+	echo ${UNAME_MACHINE}-mingw32
+	exit ;;
+    i*:PW*:*)
+	echo ${UNAME_MACHINE}-pc-pw32
+	exit ;;
+    *:Interix*:*)
+	case ${UNAME_MACHINE} in
+	    x86)
+		echo i586-pc-interix${UNAME_RELEASE}
+		exit ;;
+	    authenticamd | genuineintel | EM64T)
+		echo x86_64-unknown-interix${UNAME_RELEASE}
+		exit ;;
+	    IA64)
+		echo ia64-unknown-interix${UNAME_RELEASE}
+		exit ;;
+	esac ;;
+    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+	echo i${UNAME_MACHINE}-pc-mks
+	exit ;;
+    8664:Windows_NT:*)
+	echo x86_64-pc-mks
+	exit ;;
+    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+	# How do we know it's Interix rather than the generic POSIX subsystem?
+	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+	# UNAME_MACHINE based on the output of uname instead of i386?
+	echo i586-pc-interix
+	exit ;;
+    i*:UWIN*:*)
+	echo ${UNAME_MACHINE}-pc-uwin
+	exit ;;
+    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
+	echo x86_64-unknown-cygwin
+	exit ;;
+    p*:CYGWIN*:*)
+	echo powerpcle-unknown-cygwin
+	exit ;;
+    prep*:SunOS:5.*:*)
+	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    *:GNU:*:*)
+	# the GNU system
+	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+	exit ;;
+    *:GNU/*:*:*)
+	# other systems with GNU libc and userland
+	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+	exit ;;
+    i*86:Minix:*:*)
+	echo ${UNAME_MACHINE}-pc-minix
+	exit ;;
+    alpha:Linux:*:*)
+	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+	    EV5)   UNAME_MACHINE=alphaev5 ;;
+	    EV56)  UNAME_MACHINE=alphaev56 ;;
+	    PCA56) UNAME_MACHINE=alphapca56 ;;
+	    PCA57) UNAME_MACHINE=alphapca56 ;;
+	    EV6)   UNAME_MACHINE=alphaev6 ;;
+	    EV67)  UNAME_MACHINE=alphaev67 ;;
+	    EV68*) UNAME_MACHINE=alphaev68 ;;
+	esac
+	objdump --private-headers /bin/sh | grep -q ld.so.1
+	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+	exit ;;
+    arm*:Linux:*:*)
+	eval $set_cc_for_build
+	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null | \
+	    grep -q __ARM_EABI__
+	then
+	    echo ${UNAME_MACHINE}-unknown-linux-gnu
+	else
+	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+	fi
+	exit ;;
+    avr32*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    cris:Linux:*:*)
+	echo cris-axis-linux-gnu
+	exit ;;
+    crisv32:Linux:*:*)
+	echo crisv32-axis-linux-gnu
+	exit ;;
+    frv:Linux:*:*)
+	echo frv-unknown-linux-gnu
+	exit ;;
+    i*86:Linux:*:*)
+	LIBC=gnu
+	eval $set_cc_for_build
+	sed 's/^        //' << EOF >$dummy.c
+	#ifdef __dietlibc__
+	LIBC=dietlibc
+	#endif
+EOF
+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
+	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+	exit ;;
+    ia64:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    m32r*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    m68*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    mips:Linux:*:* | mips64:Linux:*:*)
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#undef CPU
+	#undef ${UNAME_MACHINE}
+	#undef ${UNAME_MACHINE}el
+	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+	CPU=${UNAME_MACHINE}el
+	#else
+	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+	CPU=${UNAME_MACHINE}
+	#else
+	CPU=
+	#endif
+	#endif
+EOF
+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+	;;
+    or32:Linux:*:*)
+	echo or32-unknown-linux-gnu
+	exit ;;
+    padre:Linux:*:*)
+	echo sparc-unknown-linux-gnu
+	exit ;;
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
+	echo hppa64-unknown-linux-gnu
+	exit ;;
+    parisc:Linux:*:* | hppa:Linux:*:*)
+	# Look for CPU level
+	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
+	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+	  *)    echo hppa-unknown-linux-gnu ;;
+	esac
+	exit ;;
+    ppc64:Linux:*:*)
+	echo powerpc64-unknown-linux-gnu
+	exit ;;
+    ppc:Linux:*:*)
+	echo powerpc-unknown-linux-gnu
+	exit ;;
+    s390:Linux:*:* | s390x:Linux:*:*)
+	echo ${UNAME_MACHINE}-ibm-linux
+	exit ;;
+    sh64*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    sh*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    sparc:Linux:*:* | sparc64:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    tile*:Linux:*:*)
+	echo ${UNAME_MACHINE}-tilera-linux-gnu
+	exit ;;
+    vax:Linux:*:*)
+	echo ${UNAME_MACHINE}-dec-linux-gnu
+	exit ;;
+    x86_64:Linux:*:*)
+	echo x86_64-unknown-linux-gnu
+	exit ;;
+    xtensa*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    i*86:DYNIX/ptx:4*:*)
+	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+	# earlier versions are messed up and put the nodename in both
+	# sysname and nodename.
+	echo i386-sequent-sysv4
+	exit ;;
+    i*86:UNIX_SV:4.2MP:2.*)
+	# Unixware is an offshoot of SVR4, but it has its own version
+	# number series starting with 2...
+	# I am not positive that other SVR4 systems won't match this,
+	# I just have to hope.  -- rms.
+	# Use sysv4.2uw... so that sysv4* matches it.
+	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+	exit ;;
+    i*86:OS/2:*:*)
+	# If we were able to find `uname', then EMX Unix compatibility
+	# is probably installed.
+	echo ${UNAME_MACHINE}-pc-os2-emx
+	exit ;;
+    i*86:XTS-300:*:STOP)
+	echo ${UNAME_MACHINE}-unknown-stop
+	exit ;;
+    i*86:atheos:*:*)
+	echo ${UNAME_MACHINE}-unknown-atheos
+	exit ;;
+    i*86:syllable:*:*)
+	echo ${UNAME_MACHINE}-pc-syllable
+	exit ;;
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
+	echo i386-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    i*86:*DOS:*:*)
+	echo ${UNAME_MACHINE}-pc-msdosdjgpp
+	exit ;;
+    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+	else
+		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+	fi
+	exit ;;
+    i*86:*:5:[678]*)
+	# UnixWare 7.x, OpenUNIX and OpenServer 6.
+	case `/bin/uname -X | grep "^Machine"` in
+	    *486*)	     UNAME_MACHINE=i486 ;;
+	    *Pentium)	     UNAME_MACHINE=i586 ;;
+	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+	esac
+	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+	exit ;;
+    i*86:*:3.2:*)
+	if test -f /usr/options/cb.name; then
+		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
+	elif /bin/uname -X 2>/dev/null >/dev/null ; then
+		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
+			&& UNAME_MACHINE=i586
+		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
+			&& UNAME_MACHINE=i686
+		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
+			&& UNAME_MACHINE=i686
+		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+	else
+		echo ${UNAME_MACHINE}-pc-sysv32
+	fi
+	exit ;;
+    pc:*:*:*)
+	# Left here for compatibility:
+	# uname -m prints for DJGPP always 'pc', but it prints nothing about
+	# the processor, so we play safe by assuming i586.
+	# Note: whatever this is, it MUST be the same as what config.sub
+	# prints for the "djgpp" host, or else GDB configury will decide that
+	# this is a cross-build.
+	echo i586-pc-msdosdjgpp
+	exit ;;
+    Intel:Mach:3*:*)
+	echo i386-pc-mach3
+	exit ;;
+    paragon:*:*:*)
+	echo i860-intel-osf1
+	exit ;;
+    i860:*:4.*:*) # i860-SVR4
+	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+	else # Add other i860-SVR4 vendors below as they are discovered.
+	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
+	fi
+	exit ;;
+    mini*:CTIX:SYS*5:*)
+	# "miniframe"
+	echo m68010-convergent-sysv
+	exit ;;
+    mc68k:UNIX:SYSTEM5:3.51m)
+	echo m68k-convergent-sysv
+	exit ;;
+    M680?0:D-NIX:5.3:*)
+	echo m68k-diab-dnix
+	exit ;;
+    M68*:*:R3V[5678]*:*)
+	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
+    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
+	OS_REL=''
+	test -r /etc/.relid \
+	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+	   && { echo i486-ncr-sysv4; exit; } ;;
+    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
+	OS_REL='.3'
+	test -r /etc/.relid \
+	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
+	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
+	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+	echo m68k-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    mc68030:UNIX_System_V:4.*:*)
+	echo m68k-atari-sysv4
+	exit ;;
+    TSUNAMI:LynxOS:2.*:*)
+	echo sparc-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    rs6000:LynxOS:2.*:*)
+	echo rs6000-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
+	echo powerpc-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    SM[BE]S:UNIX_SV:*:*)
+	echo mips-dde-sysv${UNAME_RELEASE}
+	exit ;;
+    RM*:ReliantUNIX-*:*:*)
+	echo mips-sni-sysv4
+	exit ;;
+    RM*:SINIX-*:*:*)
+	echo mips-sni-sysv4
+	exit ;;
+    *:SINIX-*:*:*)
+	if uname -p 2>/dev/null >/dev/null ; then
+		UNAME_MACHINE=`(uname -p) 2>/dev/null`
+		echo ${UNAME_MACHINE}-sni-sysv4
+	else
+		echo ns32k-sni-sysv
+	fi
+	exit ;;
+    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+	              # says <Richard.M.Bartel@ccMail.Census.GOV>
+	echo i586-unisys-sysv4
+	exit ;;
+    *:UNIX_System_V:4*:FTX*)
+	# From Gerald Hewes <hewes@openmarket.com>.
+	# How about differentiating between stratus architectures? -djm
+	echo hppa1.1-stratus-sysv4
+	exit ;;
+    *:*:*:FTX*)
+	# From seanf@swdc.stratus.com.
+	echo i860-stratus-sysv4
+	exit ;;
+    i*86:VOS:*:*)
+	# From Paul.Green@stratus.com.
+	echo ${UNAME_MACHINE}-stratus-vos
+	exit ;;
+    *:VOS:*:*)
+	# From Paul.Green@stratus.com.
+	echo hppa1.1-stratus-vos
+	exit ;;
+    mc68*:A/UX:*:*)
+	echo m68k-apple-aux${UNAME_RELEASE}
+	exit ;;
+    news*:NEWS-OS:6*:*)
+	echo mips-sony-newsos6
+	exit ;;
+    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+	if [ -d /usr/nec ]; then
+	        echo mips-nec-sysv${UNAME_RELEASE}
+	else
+	        echo mips-unknown-sysv${UNAME_RELEASE}
+	fi
+	exit ;;
+    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
+	echo powerpc-be-beos
+	exit ;;
+    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
+	echo powerpc-apple-beos
+	exit ;;
+    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
+	echo i586-pc-beos
+	exit ;;
+    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
+	echo i586-pc-haiku
+	exit ;;
+    SX-4:SUPER-UX:*:*)
+	echo sx4-nec-superux${UNAME_RELEASE}
+	exit ;;
+    SX-5:SUPER-UX:*:*)
+	echo sx5-nec-superux${UNAME_RELEASE}
+	exit ;;
+    SX-6:SUPER-UX:*:*)
+	echo sx6-nec-superux${UNAME_RELEASE}
+	exit ;;
+    SX-7:SUPER-UX:*:*)
+	echo sx7-nec-superux${UNAME_RELEASE}
+	exit ;;
+    SX-8:SUPER-UX:*:*)
+	echo sx8-nec-superux${UNAME_RELEASE}
+	exit ;;
+    SX-8R:SUPER-UX:*:*)
+	echo sx8r-nec-superux${UNAME_RELEASE}
+	exit ;;
+    Power*:Rhapsody:*:*)
+	echo powerpc-apple-rhapsody${UNAME_RELEASE}
+	exit ;;
+    *:Rhapsody:*:*)
+	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+	exit ;;
+    *:Darwin:*:*)
+	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+	case $UNAME_PROCESSOR in
+	    i386)
+		eval $set_cc_for_build
+		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+		    if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+			(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+			grep IS_64BIT_ARCH >/dev/null
+		    then
+			UNAME_PROCESSOR="x86_64"
+		    fi
+		fi ;;
+	    unknown) UNAME_PROCESSOR=powerpc ;;
+	esac
+	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+	exit ;;
+    *:procnto*:*:* | *:QNX:[0123456789]*:*)
+	UNAME_PROCESSOR=`uname -p`
+	if test "$UNAME_PROCESSOR" = "x86"; then
+	    UNAME_PROCESSOR=i386
+	    UNAME_MACHINE=pc
+	fi
+	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+	exit ;;
+    *:QNX:*:4*)
+	echo i386-pc-qnx
+	exit ;;
+    NEO-?:NONSTOP_KERNEL:*:*)
+	echo neo-tandem-nsk${UNAME_RELEASE}
+	exit ;;
+    NSE-?:NONSTOP_KERNEL:*:*)
+	echo nse-tandem-nsk${UNAME_RELEASE}
+	exit ;;
+    NSR-?:NONSTOP_KERNEL:*:*)
+	echo nsr-tandem-nsk${UNAME_RELEASE}
+	exit ;;
+    *:NonStop-UX:*:*)
+	echo mips-compaq-nonstopux
+	exit ;;
+    BS2000:POSIX*:*:*)
+	echo bs2000-siemens-sysv
+	exit ;;
+    DS/*:UNIX_System_V:*:*)
+	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+	exit ;;
+    *:Plan9:*:*)
+	# "uname -m" is not consistent, so use $cputype instead. 386
+	# is converted to i386 for consistency with other x86
+	# operating systems.
+	if test "$cputype" = "386"; then
+	    UNAME_MACHINE=i386
+	else
+	    UNAME_MACHINE="$cputype"
+	fi
+	echo ${UNAME_MACHINE}-unknown-plan9
+	exit ;;
+    *:TOPS-10:*:*)
+	echo pdp10-unknown-tops10
+	exit ;;
+    *:TENEX:*:*)
+	echo pdp10-unknown-tenex
+	exit ;;
+    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+	echo pdp10-dec-tops20
+	exit ;;
+    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+	echo pdp10-xkl-tops20
+	exit ;;
+    *:TOPS-20:*:*)
+	echo pdp10-unknown-tops20
+	exit ;;
+    *:ITS:*:*)
+	echo pdp10-unknown-its
+	exit ;;
+    SEI:*:*:SEIUX)
+	echo mips-sei-seiux${UNAME_RELEASE}
+	exit ;;
+    *:DragonFly:*:*)
+	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+	exit ;;
+    *:*VMS:*:*)
+	UNAME_MACHINE=`(uname -p) 2>/dev/null`
+	case "${UNAME_MACHINE}" in
+	    A*) echo alpha-dec-vms ; exit ;;
+	    I*) echo ia64-dec-vms ; exit ;;
+	    V*) echo vax-dec-vms ; exit ;;
+	esac ;;
+    *:XENIX:*:SysV)
+	echo i386-pc-xenix
+	exit ;;
+    i*86:skyos:*:*)
+	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
+	exit ;;
+    i*86:rdos:*:*)
+	echo ${UNAME_MACHINE}-pc-rdos
+	exit ;;
+    i*86:AROS:*:*)
+	echo ${UNAME_MACHINE}-pc-aros
+	exit ;;
+esac
+
+#echo '(No uname command or uname output not recognized.)' 1>&2
+#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+
+eval $set_cc_for_build
+cat >$dummy.c <<EOF
+#ifdef _SEQUENT_
+# include <sys/types.h>
+# include <sys/utsname.h>
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
+     I don't know....  */
+  printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include <sys/param.h>
+  printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+          "4"
+#else
+	  ""
+#endif
+         ); exit (0);
+#endif
+#endif
+
+#if defined (__arm) && defined (__acorn) && defined (__unix)
+  printf ("arm-acorn-riscix\n"); exit (0);
+#endif
+
+#if defined (hp300) && !defined (hpux)
+  printf ("m68k-hp-bsd\n"); exit (0);
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+  int version;
+  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+  if (version < 4)
+    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+  else
+    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+  exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+  printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+  printf ("ns32k-encore-mach\n"); exit (0);
+#else
+  printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+  printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+  printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+  printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+    struct utsname un;
+
+    uname(&un);
+
+    if (strncmp(un.version, "V2", 2) == 0) {
+	printf ("i386-sequent-ptx2\n"); exit (0);
+    }
+    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+	printf ("i386-sequent-ptx1\n"); exit (0);
+    }
+    printf ("i386-sequent-ptx\n"); exit (0);
+
+#endif
+
+#if defined (vax)
+# if !defined (ultrix)
+#  include <sys/param.h>
+#  if defined (BSD)
+#   if BSD == 43
+      printf ("vax-dec-bsd4.3\n"); exit (0);
+#   else
+#    if BSD == 199006
+      printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#    else
+      printf ("vax-dec-bsd\n"); exit (0);
+#    endif
+#   endif
+#  else
+    printf ("vax-dec-bsd\n"); exit (0);
+#  endif
+# else
+    printf ("vax-dec-ultrix\n"); exit (0);
+# endif
+#endif
+
+#if defined (alliant) && defined (i860)
+  printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+  exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+	{ echo "$SYSTEM_NAME"; exit; }
+
+# Apollos put the system type in the environment.
+
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
+
+# Convex versions that predate uname can use getsysinfo(1)
+
+if [ -x /usr/convex/getsysinfo ]
+then
+    case `getsysinfo -f cpu_type` in
+    c1*)
+	echo c1-convex-bsd
+	exit ;;
+    c2*)
+	if getsysinfo -f scalar_acc
+	then echo c32-convex-bsd
+	else echo c2-convex-bsd
+	fi
+	exit ;;
+    c34*)
+	echo c34-convex-bsd
+	exit ;;
+    c38*)
+	echo c38-convex-bsd
+	exit ;;
+    c4*)
+	echo c4-convex-bsd
+	exit ;;
+    esac
+fi
+
+cat >&2 <<EOF
+$0: unable to guess system type
+
+This script, last modified $timestamp, has failed to recognize
+the operating system you are using. It is advised that you
+download the most up to date version of the config scripts from
+
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+and
+  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+
+If the version you run ($0) is already up to date, please
+send the following data and any information you think might be
+pertinent to <config-patches@gnu.org> in order to provide the needed
+information to handle your system.
+
+config.guess timestamp = $timestamp
+
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
+
+hostinfo               = `(hostinfo) 2>/dev/null`
+/bin/universe          = `(/bin/universe) 2>/dev/null`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
+/bin/arch              = `(/bin/arch) 2>/dev/null`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+UNAME_MACHINE = ${UNAME_MACHINE}
+UNAME_RELEASE = ${UNAME_RELEASE}
+UNAME_SYSTEM  = ${UNAME_SYSTEM}
+UNAME_VERSION = ${UNAME_VERSION}
+EOF
+
+exit 1
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/config.hin b/config.hin
new file mode 100644
index 00000000..27e88682
--- /dev/null
+++ b/config.hin
@@ -0,0 +1,382 @@
+/*
+ * $LynxId: config.hin,v 1.126 2011/05/28 15:12:53 tom Exp $
+ * vile:cmode
+ *
+ * The configure script translates "config.hin" into "lynx_cfg.h"
+ */
+#ifndef LYNX_CFG_H
+#define LYNX_CFG_H 1
+
+#undef ALL_CHARSETS		/* AC_ARG_WITH(charsets) */
+#undef ALT_CHAR_SET		/* CF_ALT_CHAR_SET */
+#undef ARCHIVE_ONLY		/* CF_ARG_DISABLE(dired-archive) */
+#undef BZIP2_PATH		/* CF_PATH_PROG(bzip2) */
+#undef CAN_SET_ERRNO		/* CF_SET_ERRNO */
+#undef CHMOD_PATH		/* CF_PATH_PROG(chmod) */
+#undef CJK_EX			/* CF_ARG_ENABLE(cjk) */
+#undef COLOR_CURSES		/* CF_COLOR_CURSES */
+#undef COMPRESS_PATH		/* CF_PATH_PROG(compress) */
+#undef COPY_PATH		/* CF_PATH_PROG(cp) */
+#undef CURS_PERFORMANCE		/* CF_CURS_PERFORMANCE */
+#undef DEBUG			/* configure --enable-debug */
+#undef DECL_ERRNO
+#undef DECL_GETGRGID
+#undef DECL_GETGRNAM
+#undef DECL_STRSTR
+#undef DECL_SYS_ERRLIST
+#undef DIRED_SUPPORT		/* AC_ARG_WITH(dired) */
+#undef DISABLE_BIBP		/* CF_ARG_DISABLE(bibp-urls) */
+#undef DISABLE_FINGER		/* CF_ARG_DISABLE(finger) */
+#undef DISABLE_FTP		/* CF_ARG_DISABLE(ftp) */
+#undef DISABLE_GOPHER		/* CF_ARG_DISABLE(gopher) */
+#undef DISABLE_NEWS		/* CF_ARG_DISABLE(news) */
+#undef DISP_PARTIAL		/* CF_ARG_ENABLE(partial) */
+#undef DONT_HAVE_TM_GMTOFF	/* CF_TM_GMTOFF */
+#undef DONT_TRACK_INTERNAL_LINKS /* CF_ARG_DISABLE(internal-links) */
+#undef ENABLE_IPV6		/* CF_CHECK_IPV6 */
+#undef ENABLE_NLS		/* defined if NLS is requested */
+#undef ENABLE_OPTS_CHANGE_EXEC	/* CF_ARG_ENABLE(change-exec) */
+#undef EXEC_LINKS		/* CF_ARG_ENABLE(exec-links) */
+#undef EXEC_SCRIPTS		/* CF_ARG_ENABLE(exec-scripts) */
+#undef EXP_CHARTRANS_AUTOSWITCH	/* CF_ARG_ENABLE(font-switch) */
+#undef EXP_JAPANESEUTF8_SUPPORT	/* CF_ARG_ENABLE(japanese-utf8) */
+#undef EXP_KEYBOARD_LAYOUT	/* CF_ARG_ENABLE(kbd-layout) */
+#undef EXP_NESTED_TABLES	/* CF_ARG_ENABLE(nested-tables) */
+#undef FANCY_CURSES		/* CF_FANCY_CURSES */
+#undef GCC_NORETURN		/* CF_GCC_ATTRIBUTES */
+#undef GCC_PRINTF		/* CF_GCC_ATTRIBUTES */
+#undef GCC_UNUSED		/* CF_GCC_ATTRIBUTES */
+#undef GETGROUPS_T		/* AC_TYPE_GETGROUPS */
+#undef GZIP_PATH		/* CF_PATH_PROG(gzip) */
+#undef HAVE_ALLOCA		/* AM_GNU_GETTEXT/AC_FUNC_ALLOCA */
+#undef HAVE_ALLOCA_H		/* AM_GNU_GETTEXT/AC_FUNC_ALLOCA */
+#undef HAVE_ARGZ_H		/* AM_GNU_GETTEXT */
+#undef HAVE_ARPA_INET_H
+#undef HAVE_ASSUME_DEFAULT_COLORS /* ncurses extension */
+#undef HAVE_BSD_RANDOM_H	/* CF_SRAND */
+#undef HAVE_BSD_STDLIB_H	/* CF_SRAND */
+#undef HAVE_BSD_TOUCHLINE	/* CF_CURS_TOUCHLINE */
+#undef HAVE_CATGETS		/* defined if you want to use non-GNU catgets */
+#undef HAVE_CBREAK
+#undef HAVE_CTERMID
+#undef HAVE_CURSESX_H
+#undef HAVE_CURSES_VERSION	/* CF_FUNC_CURSES_VERSION */
+#undef HAVE_CUSERID
+#undef HAVE_DCGETTEXT		/* AM_GNU_GETTEXT */
+#undef HAVE_DEFINE_KEY
+#undef HAVE_DELSCREEN		/* CF_CURSES_FUNCS  */
+#undef HAVE_DIRENT_H		/* AC_HEADER_DIRENT */
+#undef HAVE_FCNTL_H		/* have <fcntl.h> */
+#undef HAVE_FTIME
+#undef HAVE_GAI_STRERROR	/* CF_CHECK_IPV6 */
+#undef HAVE_GETADDRINFO		/* CF_CHECK_IPV6 */
+#undef HAVE_GETATTRS
+#undef HAVE_GETBEGX
+#undef HAVE_GETBEGY
+#undef HAVE_GETBKGD		/* CF_COLOR_CURSES */
+#undef HAVE_GETCWD
+#undef HAVE_GETGROUPS
+#undef HAVE_GETTEXT		/* defined if you want to use non-GNU gettext */
+#undef HAVE_GETTIMEOFDAY
+#undef HAVE_GETUID
+#undef HAVE_GNUTLS_PRIORITY_SET_DIRECT
+#undef HAVE_H_ERRNO
+#undef HAVE_ICONV		/* AM_ICONV */
+#undef HAVE_INET_ATON		/* CF_INET_ADDR */
+#undef HAVE_INTTYPES_H
+#undef HAVE_JCURSES_H
+#undef HAVE_KEYPAD
+#undef HAVE_LANGINFO_CODESET	/* AM_LANGINFO_CODESET */
+#undef HAVE_LC_MESSAGES		/* locale messages */
+#undef HAVE_LIBDBMALLOC		/* --with-dbmalloc */
+#undef HAVE_LIBDMALLOC		/* --with-dmalloc */
+#undef HAVE_LIBGETTEXT_H	/* defined if you want to use bundled gettext */
+#undef HAVE_LIBINTL_H		/* AM_GNU_GETTEXT, or cleanup from that */
+#undef HAVE_LIBUTF8_H		/* may be needed for libncursesw */
+#undef HAVE_LIMITS_H
+#undef HAVE_LOCALE_H
+#undef HAVE_LONG_LONG		/* CF_TYPE_LONG_LONG */
+#undef HAVE_LSTAT		/* CF_FUNC_LSTAT */
+#undef HAVE_MALLOC_H		/* AM_GNU_GETTEXT */
+#undef HAVE_MBSTATE_T		/* CF_WIDEC_CURSES */
+#undef HAVE_MKDTEMP
+#undef HAVE_MKTEMP
+#undef HAVE_MMAP		/* AM_GNU_GETTEXT */
+#undef HAVE_MUNMAP		/* AM_GNU_GETTEXT */
+#undef HAVE_NAPMS
+#undef HAVE_NCURSESW_NCURSES_H	/* defined if we include <ncursesw/ncurses.h> */
+#undef HAVE_NCURSESW_TERM_H	/* have <ncursesw/term.h> */
+#undef HAVE_NCURSES_H		/* defined if we include <ncurses.h> */
+#undef HAVE_NCURSES_NCURSES_H	/* defined if we include <ncurses/ncurses.h> */
+#undef HAVE_NCURSES_TERM_H	/* have <ncurses/term.h> */
+#undef HAVE_NEWPAD
+#undef HAVE_NEWTERM
+#undef HAVE_NL_TYPES_H		/* AM_GNU_GETTEXT */
+#undef HAVE_PNOUTREFRESH
+#undef HAVE_POPEN
+#undef HAVE_PUTENV
+#undef HAVE_READDIR
+#undef HAVE_RESIZETERM
+#undef HAVE_RESOLV_H
+#undef HAVE_SETENV		/* AM_GNU_GETTEXT */
+#undef HAVE_SETLOCALE
+#undef HAVE_SETUID
+#undef HAVE_SIGACTION		/* CF_FUNC_SIGACTION */
+#undef HAVE_SIZECHANGE		/* CF_SIZECHANGE */
+#undef HAVE_STDARG_H		/* CF_VARARGS */
+#undef HAVE_STDLIB_H
+#undef HAVE_STPCPY		/* AM_GNU_GETTEXT */
+#undef HAVE_STRCASECMP		/* AM_GNU_GETTEXT */
+#undef HAVE_STRCHR		/* AM_GNU_GETTEXT */
+#undef HAVE_STRERROR
+#undef HAVE_STRING_H
+#undef HAVE_STRUCT_DIRENT64	/* CF_LARGEFILE */
+#undef HAVE_SYSLOG_H
+#undef HAVE_SYSV_TOUCHLINE	/* CF_CURS_TOUCHLINE */
+#undef HAVE_SYS_DIR_H		/* AC_HEADER_DIRENT */
+#undef HAVE_SYS_FCNTL_H		/* have <sys/fcntl.h> */
+#undef HAVE_SYS_FILIO_H		/* have <sys/filio.h> */
+#undef HAVE_SYS_IOCTL_H		/* have <sys/ioctl.h> */
+#undef HAVE_SYS_NDIR_H		/* AC_HEADER_DIRENT */
+#undef HAVE_SYS_PARAM_H		/* AM_GNU_GETTEXT */
+#undef HAVE_SYS_TIMEB_H		/* have <sys/timeb.h> */
+#undef HAVE_SYS_TIME_H		/* have <sys/time.h> */
+#undef HAVE_SYS_WAIT_H		/* have <sys/wait.h> */
+#undef HAVE_TERMIOS_H		/* have <termios.h> */
+#undef HAVE_TERMIO_H		/* have <termio.h> */
+#undef HAVE_TERM_H		/* have <term.h> */
+#undef HAVE_TOUCHLINE
+#undef HAVE_TOUCHWIN
+#undef HAVE_TRUNCATE
+#undef HAVE_TTYNAME
+#undef HAVE_TTYTYPE
+#undef HAVE_TYPE_CHTYPE		/* CF_CURSES_CHTYPE */
+#undef HAVE_TYPE_UNIONWAIT	/* CF_UNION_WAIT */
+#undef HAVE_UNISTD_H		/* have <unistd.h> */
+#undef HAVE_UNSETENV
+#undef HAVE_USE_DEFAULT_COLORS	/* ncurses extension */
+#undef HAVE_USE_LEGACY_CODING	/* ncurses extension */
+#undef HAVE_USLEEP
+#undef HAVE_UTMP		/* CF_UTMP */
+#undef HAVE_UTMP_UT_HOST	/* CF_UTMP_UT_HOST */
+#undef HAVE_UTMP_UT_SESSION	/* CF_UTMP_UT_SESSION */
+#undef HAVE_UTMP_UT_XSTATUS	/* CF_UTMP_UT_XSTATUS */
+#undef HAVE_UTMP_UT_XTIME	/* CF_UTMP_UT_XTIME */
+#undef HAVE_VALUES_H		/* AM_GNU_GETTEXT */
+#undef HAVE_VARARGS_H		/* CF_VARARGS */
+#undef HAVE_VASPRINTF
+#undef HAVE_VFORK_H		/* have <vfork.h> */
+#undef HAVE_WAIS_H
+#undef HAVE_WAITPID
+#undef HAVE_WATTR_GET
+#undef HAVE_WBORDER
+#undef HAVE_WINDOWS_H		/* CF_NETLIBS */
+#undef HAVE_WINSOCK2_H		/* CF_NETLIBS */
+#undef HAVE_WINSOCK_H		/* CF_NETLIBS */
+#undef HAVE_WREDRAWLN
+#undef HAVE_WRESIZE
+#undef HAVE_XCURSES		/* CF_PDCURSES_X11 */
+#undef HAVE_ZERROR
+#undef HAVE__NC_FREEALL		/* ncurses debugging extension */
+#undef HAVE__NC_FREE_AND_EXIT	/* ncurses debugging extension */
+#undef HAVE___ARGZ_COUNT	/* AM_GNU_GETTEXT */
+#undef HAVE___ARGZ_NEXT		/* AM_GNU_GETTEXT */
+#undef HAVE___ARGZ_STRINGIFY	/* AM_GNU_GETTEXT */
+#undef ICONV_CONST
+#undef IGNORE_CTRL_C		/* FIXME: make tests? */
+#undef INCLUDE_PROTOTYPES	/* CF_SOCKS5 */
+#undef INSTALL_ARGS		/* CF_PATH_PROG(install) */
+#undef INSTALL_PATH		/* CF_PATH_PROG(install) */
+#undef LINUX			/* FIXME: make tests? */
+#undef LOCALE			/* for locale support */
+#undef LONG_LIST		/* CF_ARG_DISABLE(long-list) */
+#undef LYNXCGI_LINKS		/* CF_ARG_ENABLE(cgi-links) */
+#undef LYNX_CFG_FILE		/* $sysconfdir/lynx.cfg */
+#undef LYNX_LSS_FILE		/* $sysconfdir/lynx.lss */
+#undef LYNX_RAND_MAX		/* CF_SRAND */
+#undef LY_FIND_LEAKS		/* CF_ARG_ENABLE(find-leaks) */
+#undef LY_TRACELINE		/* CF_ARG_ENABLE(vertrace) */
+#undef MIME_LIBDIR		/* CF_WITH_PATH(mime-libdir */
+#undef MKDIR_PATH		/* CF_PATH_PROG(mkdir) */
+#undef MV_PATH			/* CF_PATH_PROG(mv) */
+#undef NCURSES			/* defined for ncurses support */
+#undef NCURSES_BROKEN		/* defined for ncurses color support */
+#undef NEED_PTEM_H		/* CF_SIZECHANGE */
+#undef NEED_REMOVE		/* CF_REMOVE_BROKEN */
+#undef NEED_WCHAR_H		/* CF_WIDEC_CURSES */
+#undef NGROUPS			/* CF_NGROUPS */
+#undef NLS_TEXTDOMAIN		/* NLS_TEXTDOMAIN */
+#undef NO_CHANGE_EXECUTE_PERMS	/* CF_ARG_DISABLE(dired-xpermit) */
+#undef NO_CONFIG_INFO		/* CF_ARG_DISABLE(config-info) */
+#undef NO_EXTENDED_HTMLDTD	/* CF_ARG_DISABLE(extended-dtd) */
+#undef NO_LYNX_TRACE		/* CF_ARG_DISABLE(trace) */
+#undef NO_OPTION_FORMS		/* CF_ARG_DISABLE(forms-options) */
+#undef NO_OPTION_MENU		/* CF_ARG_DISABLE(option-menu) */
+#undef NO_PARENT_DIR_REFERENCE	/* CF_ARG_DISABLE(parent-dir-refs) */
+#undef NSL_FORK			/* CF_ARG_ENABLE(nsl-fork) */
+#undef OK_INSTALL
+#undef OK_OVERRIDE		/* CF_ARG_DISABLE(dired-override) */
+#undef OK_PERMIT		/* CF_ARG_DISABLE(dired-permit) */
+#undef REAL_UNIX_SYSTEM		/* CF_SLANG_UNIX_DEFS */
+#undef RLOGIN_PATH		/* CF_PATH_PROG(rlogin) */
+#undef RM_PATH			/* CF_PATH_PROG(rm) */
+#undef SETFONT_PATH		/* CF_PATH_PROG(setfont) */
+#undef SIZEOF_INT		/* AC_CHECK_SIZEOF(int) */
+#undef SIZEOF_LONG		/* AC_CHECK_SIZEOF(long) */
+#undef SIZEOF_OFF_T		/* AC_CHECK_SIZEOF(off_t) */
+#undef SIZEOF_TIME_T		/* AC_CHECK_SIZEOF(time_t) */
+#undef SLsmg_Color_Type		/* CF_SLANG_UNIX_DEFS */
+#undef SLtt_Char_Type		/* CF_SLANG_UNIX_DEFS */
+#undef SOCKS			/* CF_SOCKS, CF_SOCKS5 */
+#undef STDC_HEADERS
+#undef SYSTEM_MAIL		/* CF_DEFINE_PROG */
+#undef SYSTEM_MAIL_FLAGS	/* CF_SYSTEM_MAIL_FLAGS */
+#undef SYSTEM_NAME		/* CF_CHECK_CACHE */
+#undef TAR_DOWN_OPTIONS		/* CF_TAR_OPTIONS */
+#undef TAR_FILE_OPTIONS		/* CF_TAR_OPTIONS */
+#undef TAR_PATH			/* CF_PATH_PROG(tar) */
+#undef TAR_PIPE_OPTIONS		/* CF_TAR_OPTIONS */
+#undef TAR_UP_OPTIONS		/* CF_TAR_OPTIONS */
+#undef TELNET_PATH		/* CF_PATH_PROG(telnet) */
+#undef TERMIO_AND_CURSES	/* CF_TERMIO_AND_CURSES workaround */
+#undef TERMIO_AND_TERMIOS	/* CF_TERMIO_AND_TERMIOS workaround */
+#undef TIME_WITH_SYS_TIME	/* AC_HEADER_TIME */
+#undef TN3270_PATH		/* CF_PATH_PROG(tn3270) */
+#undef TOUCH_PATH		/* CF_PATH_PROG(touch) */
+#undef ULTRIX			/* config.sub */
+#undef UNCOMPRESS_PATH		/* CF_PATH_PROG(gunzip) */
+#undef UNDERLINE_LINKS		/* CF_ARG_ENABLE(underlines) */
+#undef UNIX
+#undef UNZIP_PATH		/* CF_PATH_PROG(unzip) */
+#undef USE_ADDRLIST_PAGE	/* CF_ARG_DISABLE(addrlist-page) */
+#undef USE_ALT_BINDINGS		/* CF_ARG_DISABLE(alt-bindings) */
+#undef USE_ASCII_CTYPES		/* CF_ARG_DISABLE(ascii-ctypes) */
+#undef USE_BZLIB		/* AC_ARG_WITH(bzlib) */
+#undef USE_CACHEJAR		/* CF_ARG_DISABLE(session-cache) */
+#undef USE_CHARSET_CHOICE	/* CF_ARG_DISABLE(charset-choice) */
+#undef USE_COLOR_STYLE		/* CF_ARG_DISABLE(color-style) */
+#undef USE_DEFAULT_COLORS	/* CF_ARG_DISABLE(default-colors) */
+#undef USE_EXECVP		/* CF_ARG_DISABLE(full-paths) */
+#undef USE_EXTERNALS		/* CF_ARG_ENABLE(externs) */
+#undef USE_FCNTL		/* CF_FIONBIO */
+#undef USE_FILE_UPLOAD		/* CF_ARG_DISABLE(file-upload) */
+#undef USE_GNUTLS_FUNCS		/* CF_GNUTLS */
+#undef USE_GNUTLS_INCL		/* CF_GNUTLS */
+#undef USE_IDNA			/* CF_ARG_DISABLE(idna) */
+#undef USE_JUSTIFY_ELTS		/* CF_ARG_DISABLE(justify-elts) */
+#undef USE_LOCALE_CHARSET	/* CF_ARG_DISABLE(locale-charset) */
+#undef USE_OPENSSL_INCL		/* CF_SSL */
+#undef USE_PERSISTENT_COOKIES	/* CF_ARG_DISABLE(persistent-cookies) */
+#undef USE_PRETTYSRC		/* CF_ARG_DISABLE(prettysrc) */
+#undef USE_PROGRESSBAR		/* CF_ARG_DISABLE(progressbar) */
+#undef USE_READPROGRESS		/* CF_ARG_DISABLE(read-eta) */
+#undef USE_SCROLLBAR		/* CF_ARG_DISABLE(scrollbar) */
+#undef USE_SESSIONS		/* CF_ARG_DISABLE(sessions) */
+#undef USE_SLANG		/* AC_ARG_WITH(screen=slang) */
+#undef USE_SOCKS4_PREFIX	/* CF_SOCKS5 */
+#undef USE_SOCKS5		/* CF_SOCKS5 */
+#undef USE_SOURCE_CACHE		/* CF_ARG_DISABLE(source-cache) */
+#undef USE_SSL			/* CF_SSL */
+#undef USE_SYSV_UTMP		/* CF_UTMP */
+#undef USE_X509_SUPPORT		/* CF_GNUTLS, CF_SSL */
+#undef USE_ZLIB			/* AC_ARG_WITH(zlib) */
+#undef UTF8			/* CF_SLANG_CPPFLAGS */
+#undef UTMPX_FOR_UTMP		/* use <utmpx.h> since <utmp.h> not found */
+#undef UUDECODE_PATH		/* CF_PATH_PROG(uudecode) */
+#undef WAITPID_USES_UNION	/* CF_FUNC_WAIT */
+#undef WAIT_USES_UNION		/* CF_FUNC_WAIT */
+#undef WIDEC_CURSES		/* CF_WIDEC_CURSES */
+#undef XCURSES			/* CF_PDCURSES_X11 */
+#undef ZCAT_PATH		/* CF_PATH_PROG(zcat) */
+#undef ZIP_PATH			/* CF_PATH_PROG(zip) */
+#undef _WINDOWS_NSL		/* CF_ARG_ENABLE(nsl-fork) */
+#undef inline			/* AC_C_INLINE */
+#undef lynx_rand		/* CF_SRAND */
+#undef lynx_srand		/* CF_SRAND */
+#undef mode_t			/* AC_TYPE_MODE_T */
+#undef off_t			/* AC_TYPE_OFF_T */
+#undef pid_t			/* AC_TYPE_PID_T */
+#undef socklen_t		/* CF_CHECK_TYPE(socklen_t,...) */
+#undef ssize_t			/* CF_CHECK_TYPE(ssize_t,...) */
+#undef uid_t			/* AC_TYPE_UID_T */
+#undef ut_name			/* CF_UTMP */
+#undef ut_xstatus		/* CF_UTMP_UT_XSTATUS */
+#undef ut_xtime			/* CF_UTMP_UT_XTIME */
+
+#ifdef GZIP_PATH
+#undef OK_GZIP			/* CF_ARG_DISABLE(dired-gzip) */
+#endif
+
+#ifdef TAR_PATH
+#undef OK_TAR			/* CF_ARG_DISABLE(dired-tar) */
+#endif
+
+#ifdef UUDECODE_PATH
+#undef OK_UUDECODE		/* CF_ARG_DISABLE(dired-uudecode) */
+#endif
+
+#ifdef ZIP_PATH
+#undef OK_ZIP			/* CF_ARG_DISABLE(dired-zip) */
+#endif
+
+/*
+ * U/Win defines vfork() as a macro in vfork.h, which is included from unistd.h.
+ */
+#ifndef HAVE_VFORK_H
+#undef vfork			/* AC_FUNC_FORK */
+#endif
+
+/* 'const' may be defined externally by the compiler-wrapper, as in 'unproto'
+ * or by AC_C_CONST
+ */
+#ifndef const
+#undef const
+#endif
+
+/*
+ * The configure script generates LYHelp.h (handcrafted makefiles may not do
+ * this, so we set a definition):
+ */
+#define HAVE_LYHELP_H 1
+
+/* FIXME:DGUX (done in $host_os case-statement) */
+/* FIXME:DGUX_OLD */
+/* FIXME:HP_TERMINAL */
+/* FIXME:REVERSE_CLEAR_SCREEN_PROBLEM */
+/* FIXME:SHORTENED_RBIND */
+/* FIXME:SNAKE */
+/* FIXME:SVR4_BSDSELECT (done in $host_os case-statement) */
+
+/* Some older socks libraries, especially AIX need special definitions */
+#if defined(_AIX) && !defined(USE_SOCKS5)
+#undef accept
+#undef bind
+#undef connect
+#undef getpeername
+#undef getsockname
+#undef listen
+#undef recvfrom
+#undef select
+#endif
+
+#ifdef HAVE_SYSLOG_H
+#undef SYSLOG_REQUESTED_URLS	/* CF_ARG_ENABLE(syslog) */
+#endif
+
+#ifndef HAVE_LSTAT
+#define lstat stat
+#endif
+
+#ifdef DECL_GETGRGID
+extern struct group * getgrgid ();
+#endif
+
+#ifdef DECL_GETGRNAM
+extern struct group * getgrnam ();
+#endif
+
+#ifdef DECL_STRSTR
+extern char * strstr ();
+#endif
+
+#endif /* LYNX_CFG_H */
diff --git a/config.sub b/config.sub
new file mode 100755
index 00000000..7c62c346
--- /dev/null
+++ b/config.sub
@@ -0,0 +1,1760 @@
+#! /bin/sh
+# Configuration validation subroutine script.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+#   2011 Free Software Foundation, Inc.
+
+timestamp='2011-04-01'
+
+# This file is (in principle) common to ALL GNU software.
+# The presence of a machine in this file suggests that SOME GNU software
+# can handle that machine.  It does not imply ALL GNU software can.
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+
+# Please send patches to <config-patches@gnu.org>.  Submit a context
+# diff and a properly formatted GNU ChangeLog entry.
+#
+# Configuration subroutine to validate and canonicalize a configuration type.
+# Supply the specified configuration type as an argument.
+# If it is invalid, we print an error message on stderr and exit with code 1.
+# Otherwise, we print the canonical config type on stdout and succeed.
+
+# You can get the latest version of this script from:
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+
+# This file is supposed to be the same for all GNU packages
+# and recognize all the CPU types, system types and aliases
+# that are meaningful with *any* GNU software.
+# Each package is responsible for reporting which valid configurations
+# it does not support.  The user should be able to distinguish
+# a failure to support a valid configuration from a meaningless
+# configuration.
+
+# The goal of this file is to map all the various variations of a given
+# machine specification into a single specification in the form:
+#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+# or in some cases, the newer four-part form:
+#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
+# It is wrong to echo any other type of specification.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS
+       $0 [OPTION] ALIAS
+
+Canonicalize a configuration name.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.sub ($timestamp)
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit ;;
+    --version | -v )
+       echo "$version" ; exit ;;
+    --help | --h* | -h )
+       echo "$usage"; exit ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )	# Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help"
+       exit 1 ;;
+
+    *local*)
+       # First pass through any local machine types.
+       echo $1
+       exit ;;
+
+    * )
+       break ;;
+  esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+    exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+    exit 1;;
+esac
+
+# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
+# Here we must recognize all the valid KERNEL-OS combinations.
+maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+case $maybe_os in
+  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
+  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
+  knetbsd*-gnu* | netbsd*-gnu* | \
+  kopensolaris*-gnu* | \
+  storm-chaos* | os2-emx* | rtmk-nova*)
+    os=-$maybe_os
+    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
+    ;;
+  *)
+    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
+    if [ $basic_machine != $1 ]
+    then os=`echo $1 | sed 's/.*-/-/'`
+    else os=; fi
+    ;;
+esac
+
+### Let's recognize common machines as not being operating systems so
+### that things like config.sub decstation-3100 work.  We also
+### recognize some manufacturers as not being operating systems, so we
+### can provide default operating systems below.
+case $os in
+	-sun*os*)
+		# Prevent following clause from handling this invalid input.
+		;;
+	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
+	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
+	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
+	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
+	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
+	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
+	-apple | -axis | -knuth | -cray | -microblaze)
+		os=
+		basic_machine=$1
+		;;
+	-bluegene*)
+		os=-cnk
+		;;
+	-sim | -cisco | -oki | -wec | -winbond)
+		os=
+		basic_machine=$1
+		;;
+	-scout)
+		;;
+	-wrs)
+		os=-vxworks
+		basic_machine=$1
+		;;
+	-chorusos*)
+		os=-chorusos
+		basic_machine=$1
+		;;
+	-chorusrdb)
+		os=-chorusrdb
+		basic_machine=$1
+		;;
+	-hiux*)
+		os=-hiuxwe2
+		;;
+	-sco6)
+		os=-sco5v6
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco5)
+		os=-sco3.2v5
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco4)
+		os=-sco3.2v4
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco3.2.[4-9]*)
+		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco3.2v[4-9]*)
+		# Don't forget version if it is 3.2v4 or newer.
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco5v6*)
+		# Don't forget version if it is 3.2v4 or newer.
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco*)
+		os=-sco3.2v2
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-udk*)
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-isc)
+		os=-isc2.2
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-clix*)
+		basic_machine=clipper-intergraph
+		;;
+	-isc*)
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-lynx*)
+		os=-lynxos
+		;;
+	-ptx*)
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
+		;;
+	-windowsnt*)
+		os=`echo $os | sed -e 's/windowsnt/winnt/'`
+		;;
+	-psos*)
+		os=-psos
+		;;
+	-mint | -mint[0-9]*)
+		basic_machine=m68k-atari
+		os=-mint
+		;;
+esac
+
+# Decode aliases for certain CPU-COMPANY combinations.
+case $basic_machine in
+	# Recognize the basic CPU types without company name.
+	# Some are omitted here because they have special meanings below.
+	1750a | 580 \
+	| a29k \
+	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
+	| am33_2.0 \
+	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
+	| bfin \
+	| c4x | clipper \
+	| d10v | d30v | dlx | dsp16xx \
+	| fido | fr30 | frv \
+	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+	| i370 | i860 | i960 | ia64 \
+	| ip2k | iq2000 \
+	| lm32 \
+	| m32c | m32r | m32rle | m68000 | m68k | m88k \
+	| maxq | mb | microblaze | mcore | mep | metag \
+	| mips | mipsbe | mipseb | mipsel | mipsle \
+	| mips16 \
+	| mips64 | mips64el \
+	| mips64octeon | mips64octeonel \
+	| mips64orion | mips64orionel \
+	| mips64r5900 | mips64r5900el \
+	| mips64vr | mips64vrel \
+	| mips64vr4100 | mips64vr4100el \
+	| mips64vr4300 | mips64vr4300el \
+	| mips64vr5000 | mips64vr5000el \
+	| mips64vr5900 | mips64vr5900el \
+	| mipsisa32 | mipsisa32el \
+	| mipsisa32r2 | mipsisa32r2el \
+	| mipsisa64 | mipsisa64el \
+	| mipsisa64r2 | mipsisa64r2el \
+	| mipsisa64sb1 | mipsisa64sb1el \
+	| mipsisa64sr71k | mipsisa64sr71kel \
+	| mipstx39 | mipstx39el \
+	| mn10200 | mn10300 \
+	| moxie \
+	| mt \
+	| msp430 \
+	| nds32 | nds32le | nds32be \
+	| nios | nios2 \
+	| ns16k | ns32k \
+	| open8 \
+	| or32 \
+	| pdp10 | pdp11 | pj | pjl \
+	| powerpc | powerpc64 | powerpc64le | powerpcle \
+	| pyramid \
+	| rx \
+	| score \
+	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+	| sh64 | sh64le \
+	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
+	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
+	| spu \
+	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
+	| ubicom32 \
+	| v850 | v850e \
+	| we32k \
+	| x86 | xc16x | xstormy16 | xtensa \
+	| z8k | z80)
+		basic_machine=$basic_machine-unknown
+		;;
+	c54x)
+		basic_machine=tic54x-unknown
+		;;
+	c55x)
+		basic_machine=tic55x-unknown
+		;;
+	c6x)
+		basic_machine=tic6x-unknown
+		;;
+	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
+		# Motorola 68HC11/12.
+		basic_machine=$basic_machine-unknown
+		os=-none
+		;;
+	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+		;;
+	ms1)
+		basic_machine=mt-unknown
+		;;
+	strongarm | thumb | xscale)
+		basic_machine=arm-unknown
+		;;
+	xscaleeb)
+		basic_machine=armeb-unknown
+		;;
+	xscaleel)
+		basic_machine=armel-unknown
+		;;
+	# We use `pc' rather than `unknown'
+	# because (1) that's what they normally are, and
+	# (2) the word "unknown" tends to confuse beginning users.
+	i*86 | x86_64)
+		basic_machine=$basic_machine-pc
+		;;
+	# Object if more than one company name word.
+	*-*-*)
+		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+		exit 1
+		;;
+	# Recognize the basic CPU types with company name.
+	580-* \
+	| a29k-* \
+	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
+	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
+	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
+	| avr-* | avr32-* \
+	| bfin-* | bs2000-* \
+	| c[123]* | c30-* | [cjt]90-* | c4x-* \
+	| clipper-* | craynv-* | cydra-* \
+	| d10v-* | d30v-* | dlx-* \
+	| elxsi-* \
+	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
+	| h8300-* | h8500-* \
+	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+	| i*86-* | i860-* | i960-* | ia64-* \
+	| ip2k-* | iq2000-* \
+	| lm32-* \
+	| m32c-* | m32r-* | m32rle-* \
+	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
+	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
+	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
+	| mips16-* \
+	| mips64-* | mips64el-* \
+	| mips64octeon-* | mips64octeonel-* \
+	| mips64orion-* | mips64orionel-* \
+	| mips64r5900-* | mips64r5900el-* \
+	| mips64vr-* | mips64vrel-* \
+	| mips64vr4100-* | mips64vr4100el-* \
+	| mips64vr4300-* | mips64vr4300el-* \
+	| mips64vr5000-* | mips64vr5000el-* \
+	| mips64vr5900-* | mips64vr5900el-* \
+	| mipsisa32-* | mipsisa32el-* \
+	| mipsisa32r2-* | mipsisa32r2el-* \
+	| mipsisa64-* | mipsisa64el-* \
+	| mipsisa64r2-* | mipsisa64r2el-* \
+	| mipsisa64sb1-* | mipsisa64sb1el-* \
+	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
+	| mipstx39-* | mipstx39el-* \
+	| mmix-* \
+	| mt-* \
+	| msp430-* \
+	| nds32-* | nds32le-* | nds32be-* \
+	| nios-* | nios2-* \
+	| none-* | np1-* | ns16k-* | ns32k-* \
+	| open8-* \
+	| orion-* \
+	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
+	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
+	| pyramid-* \
+	| romp-* | rs6000-* | rx-* \
+	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
+	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
+	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
+	| sparclite-* \
+	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
+	| tahoe-* \
+	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+	| tile-* | tilegx-* \
+	| tron-* \
+	| ubicom32-* \
+	| v850-* | v850e-* | vax-* \
+	| we32k-* \
+	| x86-* | x86_64-* | xc16x-* | xps100-* \
+	| xstormy16-* | xtensa*-* \
+	| ymp-* \
+	| z8k-* | z80-*)
+		;;
+	# Recognize the basic CPU types without company name, with glob match.
+	xtensa*)
+		basic_machine=$basic_machine-unknown
+		;;
+	# Recognize the various machine names and aliases which stand
+	# for a CPU type and a company and sometimes even an OS.
+	386bsd)
+		basic_machine=i386-unknown
+		os=-bsd
+		;;
+	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
+		basic_machine=m68000-att
+		;;
+	3b*)
+		basic_machine=we32k-att
+		;;
+	a29khif)
+		basic_machine=a29k-amd
+		os=-udi
+		;;
+	abacus)
+		basic_machine=abacus-unknown
+		;;
+	adobe68k)
+		basic_machine=m68010-adobe
+		os=-scout
+		;;
+	alliant | fx80)
+		basic_machine=fx80-alliant
+		;;
+	altos | altos3068)
+		basic_machine=m68k-altos
+		;;
+	am29k)
+		basic_machine=a29k-none
+		os=-bsd
+		;;
+	amd64)
+		basic_machine=x86_64-pc
+		;;
+	amd64-*)
+		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	amdahl)
+		basic_machine=580-amdahl
+		os=-sysv
+		;;
+	amiga | amiga-*)
+		basic_machine=m68k-unknown
+		;;
+	amigaos | amigados)
+		basic_machine=m68k-unknown
+		os=-amigaos
+		;;
+	amigaunix | amix)
+		basic_machine=m68k-unknown
+		os=-sysv4
+		;;
+	apollo68)
+		basic_machine=m68k-apollo
+		os=-sysv
+		;;
+	apollo68bsd)
+		basic_machine=m68k-apollo
+		os=-bsd
+		;;
+	aros)
+		basic_machine=i386-pc
+		os=-aros
+		;;
+	aux)
+		basic_machine=m68k-apple
+		os=-aux
+		;;
+	balance)
+		basic_machine=ns32k-sequent
+		os=-dynix
+		;;
+	blackfin)
+		basic_machine=bfin-unknown
+		os=-linux
+		;;
+	blackfin-*)
+		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
+		os=-linux
+		;;
+	bluegene*)
+		basic_machine=powerpc-ibm
+		os=-cnk
+		;;
+	c54x-*)
+		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	c55x-*)
+		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	c6x-*)
+		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	c90)
+		basic_machine=c90-cray
+		os=-unicos
+		;;
+	cegcc)
+		basic_machine=arm-unknown
+		os=-cegcc
+		;;
+	convex-c1)
+		basic_machine=c1-convex
+		os=-bsd
+		;;
+	convex-c2)
+		basic_machine=c2-convex
+		os=-bsd
+		;;
+	convex-c32)
+		basic_machine=c32-convex
+		os=-bsd
+		;;
+	convex-c34)
+		basic_machine=c34-convex
+		os=-bsd
+		;;
+	convex-c38)
+		basic_machine=c38-convex
+		os=-bsd
+		;;
+	cray | j90)
+		basic_machine=j90-cray
+		os=-unicos
+		;;
+	craynv)
+		basic_machine=craynv-cray
+		os=-unicosmp
+		;;
+	cr16 | cr16-*)
+		basic_machine=cr16-unknown
+		os=-elf
+		;;
+	crds | unos)
+		basic_machine=m68k-crds
+		;;
+	crisv32 | crisv32-* | etraxfs*)
+		basic_machine=crisv32-axis
+		;;
+	cris | cris-* | etrax*)
+		basic_machine=cris-axis
+		;;
+	crx)
+		basic_machine=crx-unknown
+		os=-elf
+		;;
+	da30 | da30-*)
+		basic_machine=m68k-da30
+		;;
+	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
+		basic_machine=mips-dec
+		;;
+	decsystem10* | dec10*)
+		basic_machine=pdp10-dec
+		os=-tops10
+		;;
+	decsystem20* | dec20*)
+		basic_machine=pdp10-dec
+		os=-tops20
+		;;
+	delta | 3300 | motorola-3300 | motorola-delta \
+	      | 3300-motorola | delta-motorola)
+		basic_machine=m68k-motorola
+		;;
+	delta88)
+		basic_machine=m88k-motorola
+		os=-sysv3
+		;;
+	dicos)
+		basic_machine=i686-pc
+		os=-dicos
+		;;
+	djgpp)
+		basic_machine=i586-pc
+		os=-msdosdjgpp
+		;;
+	dpx20 | dpx20-*)
+		basic_machine=rs6000-bull
+		os=-bosx
+		;;
+	dpx2* | dpx2*-bull)
+		basic_machine=m68k-bull
+		os=-sysv3
+		;;
+	ebmon29k)
+		basic_machine=a29k-amd
+		os=-ebmon
+		;;
+	elxsi)
+		basic_machine=elxsi-elxsi
+		os=-bsd
+		;;
+	encore | umax | mmax)
+		basic_machine=ns32k-encore
+		;;
+	es1800 | OSE68k | ose68k | ose | OSE)
+		basic_machine=m68k-ericsson
+		os=-ose
+		;;
+	fx2800)
+		basic_machine=i860-alliant
+		;;
+	genix)
+		basic_machine=ns32k-ns
+		;;
+	gmicro)
+		basic_machine=tron-gmicro
+		os=-sysv
+		;;
+	go32)
+		basic_machine=i386-pc
+		os=-go32
+		;;
+	h3050r* | hiux*)
+		basic_machine=hppa1.1-hitachi
+		os=-hiuxwe2
+		;;
+	h8300hms)
+		basic_machine=h8300-hitachi
+		os=-hms
+		;;
+	h8300xray)
+		basic_machine=h8300-hitachi
+		os=-xray
+		;;
+	h8500hms)
+		basic_machine=h8500-hitachi
+		os=-hms
+		;;
+	harris)
+		basic_machine=m88k-harris
+		os=-sysv3
+		;;
+	hp300-*)
+		basic_machine=m68k-hp
+		;;
+	hp300bsd)
+		basic_machine=m68k-hp
+		os=-bsd
+		;;
+	hp300hpux)
+		basic_machine=m68k-hp
+		os=-hpux
+		;;
+	hp3k9[0-9][0-9] | hp9[0-9][0-9])
+		basic_machine=hppa1.0-hp
+		;;
+	hp9k2[0-9][0-9] | hp9k31[0-9])
+		basic_machine=m68000-hp
+		;;
+	hp9k3[2-9][0-9])
+		basic_machine=m68k-hp
+		;;
+	hp9k6[0-9][0-9] | hp6[0-9][0-9])
+		basic_machine=hppa1.0-hp
+		;;
+	hp9k7[0-79][0-9] | hp7[0-79][0-9])
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k78[0-9] | hp78[0-9])
+		# FIXME: really hppa2.0-hp
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
+		# FIXME: really hppa2.0-hp
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k8[0-9][13679] | hp8[0-9][13679])
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k8[0-9][0-9] | hp8[0-9][0-9])
+		basic_machine=hppa1.0-hp
+		;;
+	hppa-next)
+		os=-nextstep3
+		;;
+	hppaosf)
+		basic_machine=hppa1.1-hp
+		os=-osf
+		;;
+	hppro)
+		basic_machine=hppa1.1-hp
+		os=-proelf
+		;;
+	i370-ibm* | ibm*)
+		basic_machine=i370-ibm
+		;;
+# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
+	i*86v32)
+		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		os=-sysv32
+		;;
+	i*86v4*)
+		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		os=-sysv4
+		;;
+	i*86v)
+		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		os=-sysv
+		;;
+	i*86sol2)
+		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		os=-solaris2
+		;;
+	i386mach)
+		basic_machine=i386-mach
+		os=-mach
+		;;
+	i386-vsta | vsta)
+		basic_machine=i386-unknown
+		os=-vsta
+		;;
+	iris | iris4d)
+		basic_machine=mips-sgi
+		case $os in
+		    -irix*)
+			;;
+		    *)
+			os=-irix4
+			;;
+		esac
+		;;
+	isi68 | isi)
+		basic_machine=m68k-isi
+		os=-sysv
+		;;
+	m68knommu)
+		basic_machine=m68k-unknown
+		os=-linux
+		;;
+	m68knommu-*)
+		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
+		os=-linux
+		;;
+	m88k-omron*)
+		basic_machine=m88k-omron
+		;;
+	magnum | m3230)
+		basic_machine=mips-mips
+		os=-sysv
+		;;
+	merlin)
+		basic_machine=ns32k-utek
+		os=-sysv
+		;;
+	microblaze)
+		basic_machine=microblaze-xilinx
+		;;
+	mingw32)
+		basic_machine=i386-pc
+		os=-mingw32
+		;;
+	mingw32ce)
+		basic_machine=arm-unknown
+		os=-mingw32ce
+		;;
+	miniframe)
+		basic_machine=m68000-convergent
+		;;
+	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
+		basic_machine=m68k-atari
+		os=-mint
+		;;
+	mips3*-*)
+		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
+		;;
+	mips3*)
+		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
+		;;
+	monitor)
+		basic_machine=m68k-rom68k
+		os=-coff
+		;;
+	morphos)
+		basic_machine=powerpc-unknown
+		os=-morphos
+		;;
+	msdos)
+		basic_machine=i386-pc
+		os=-msdos
+		;;
+	ms1-*)
+		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+		;;
+	mvs)
+		basic_machine=i370-ibm
+		os=-mvs
+		;;
+	ncr3000)
+		basic_machine=i486-ncr
+		os=-sysv4
+		;;
+	netbsd386)
+		basic_machine=i386-unknown
+		os=-netbsd
+		;;
+	netwinder)
+		basic_machine=armv4l-rebel
+		os=-linux
+		;;
+	news | news700 | news800 | news900)
+		basic_machine=m68k-sony
+		os=-newsos
+		;;
+	news1000)
+		basic_machine=m68030-sony
+		os=-newsos
+		;;
+	news-3600 | risc-news)
+		basic_machine=mips-sony
+		os=-newsos
+		;;
+	necv70)
+		basic_machine=v70-nec
+		os=-sysv
+		;;
+	next | m*-next)
+		basic_machine=m68k-next
+		case $os in
+		    -nextstep*)
+			;;
+		    -ns2*)
+		      os=-nextstep2
+			;;
+		    *)
+		      os=-nextstep3
+			;;
+		esac
+		;;
+	nh3000)
+		basic_machine=m68k-harris
+		os=-cxux
+		;;
+	nh[45]000)
+		basic_machine=m88k-harris
+		os=-cxux
+		;;
+	nindy960)
+		basic_machine=i960-intel
+		os=-nindy
+		;;
+	mon960)
+		basic_machine=i960-intel
+		os=-mon960
+		;;
+	nonstopux)
+		basic_machine=mips-compaq
+		os=-nonstopux
+		;;
+	np1)
+		basic_machine=np1-gould
+		;;
+	neo-tandem)
+		basic_machine=neo-tandem
+		;;
+	nse-tandem)
+		basic_machine=nse-tandem
+		;;
+	nsr-tandem)
+		basic_machine=nsr-tandem
+		;;
+	op50n-* | op60c-*)
+		basic_machine=hppa1.1-oki
+		os=-proelf
+		;;
+	openrisc | openrisc-*)
+		basic_machine=or32-unknown
+		;;
+	os400)
+		basic_machine=powerpc-ibm
+		os=-os400
+		;;
+	OSE68000 | ose68000)
+		basic_machine=m68000-ericsson
+		os=-ose
+		;;
+	os68k)
+		basic_machine=m68k-none
+		os=-os68k
+		;;
+	pa-hitachi)
+		basic_machine=hppa1.1-hitachi
+		os=-hiuxwe2
+		;;
+	paragon)
+		basic_machine=i860-intel
+		os=-osf
+		;;
+	parisc)
+		basic_machine=hppa-unknown
+		os=-linux
+		;;
+	parisc-*)
+		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
+		os=-linux
+		;;
+	pbd)
+		basic_machine=sparc-tti
+		;;
+	pbb)
+		basic_machine=m68k-tti
+		;;
+	pc532 | pc532-*)
+		basic_machine=ns32k-pc532
+		;;
+	pc98)
+		basic_machine=i386-pc
+		;;
+	pc98-*)
+		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pentium | p5 | k5 | k6 | nexgen | viac3)
+		basic_machine=i586-pc
+		;;
+	pentiumpro | p6 | 6x86 | athlon | athlon_*)
+		basic_machine=i686-pc
+		;;
+	pentiumii | pentium2 | pentiumiii | pentium3)
+		basic_machine=i686-pc
+		;;
+	pentium4)
+		basic_machine=i786-pc
+		;;
+	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
+		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pentiumpro-* | p6-* | 6x86-* | athlon-*)
+		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
+		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pentium4-*)
+		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pn)
+		basic_machine=pn-gould
+		;;
+	power)
+		basic_machine=power-ibm
+		;;
+	ppc | ppcbe)
+		basic_machine=powerpc-unknown
+		;;
+	ppc-* | ppcbe-*)
+		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	ppcle | powerpclittle | ppc-le | powerpc-little)
+		basic_machine=powerpcle-unknown
+		;;
+	ppcle-* | powerpclittle-*)
+		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	ppc64)
+		basic_machine=powerpc64-unknown
+		;;
+	ppc64-*)
+		basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+		basic_machine=powerpc64le-unknown
+		;;
+	ppc64le-* | powerpc64little-*)
+		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	ps2)
+		basic_machine=i386-ibm
+		;;
+	pw32)
+		basic_machine=i586-unknown
+		os=-pw32
+		;;
+	rdos)
+		basic_machine=i386-pc
+		os=-rdos
+		;;
+	rom68k)
+		basic_machine=m68k-rom68k
+		os=-coff
+		;;
+	rm[46]00)
+		basic_machine=mips-siemens
+		;;
+	rtpc | rtpc-*)
+		basic_machine=romp-ibm
+		;;
+	s390 | s390-*)
+		basic_machine=s390-ibm
+		;;
+	s390x | s390x-*)
+		basic_machine=s390x-ibm
+		;;
+	sa29200)
+		basic_machine=a29k-amd
+		os=-udi
+		;;
+	sb1)
+		basic_machine=mipsisa64sb1-unknown
+		;;
+	sb1el)
+		basic_machine=mipsisa64sb1el-unknown
+		;;
+	sde)
+		basic_machine=mipsisa32-sde
+		os=-elf
+		;;
+	sei)
+		basic_machine=mips-sei
+		os=-seiux
+		;;
+	sequent)
+		basic_machine=i386-sequent
+		;;
+	sh)
+		basic_machine=sh-hitachi
+		os=-hms
+		;;
+	sh5el)
+		basic_machine=sh5le-unknown
+		;;
+	sh64)
+		basic_machine=sh64-unknown
+		;;
+	sparclite-wrs | simso-wrs)
+		basic_machine=sparclite-wrs
+		os=-vxworks
+		;;
+	sps7)
+		basic_machine=m68k-bull
+		os=-sysv2
+		;;
+	spur)
+		basic_machine=spur-unknown
+		;;
+	st2000)
+		basic_machine=m68k-tandem
+		;;
+	stratus)
+		basic_machine=i860-stratus
+		os=-sysv4
+		;;
+	strongarm-* | thumb-*)
+		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	sun2)
+		basic_machine=m68000-sun
+		;;
+	sun2os3)
+		basic_machine=m68000-sun
+		os=-sunos3
+		;;
+	sun2os4)
+		basic_machine=m68000-sun
+		os=-sunos4
+		;;
+	sun3os3)
+		basic_machine=m68k-sun
+		os=-sunos3
+		;;
+	sun3os4)
+		basic_machine=m68k-sun
+		os=-sunos4
+		;;
+	sun4os3)
+		basic_machine=sparc-sun
+		os=-sunos3
+		;;
+	sun4os4)
+		basic_machine=sparc-sun
+		os=-sunos4
+		;;
+	sun4sol2)
+		basic_machine=sparc-sun
+		os=-solaris2
+		;;
+	sun3 | sun3-*)
+		basic_machine=m68k-sun
+		;;
+	sun4)
+		basic_machine=sparc-sun
+		;;
+	sun386 | sun386i | roadrunner)
+		basic_machine=i386-sun
+		;;
+	sv1)
+		basic_machine=sv1-cray
+		os=-unicos
+		;;
+	symmetry)
+		basic_machine=i386-sequent
+		os=-dynix
+		;;
+	t3e)
+		basic_machine=alphaev5-cray
+		os=-unicos
+		;;
+	t90)
+		basic_machine=t90-cray
+		os=-unicos
+		;;
+	# This must be matched before tile*.
+	tilegx*)
+		basic_machine=tilegx-unknown
+		os=-linux-gnu
+		;;
+	tile*)
+		basic_machine=tile-unknown
+		os=-linux-gnu
+		;;
+	tx39)
+		basic_machine=mipstx39-unknown
+		;;
+	tx39el)
+		basic_machine=mipstx39el-unknown
+		;;
+	toad1)
+		basic_machine=pdp10-xkl
+		os=-tops20
+		;;
+	tower | tower-32)
+		basic_machine=m68k-ncr
+		;;
+	tpf)
+		basic_machine=s390x-ibm
+		os=-tpf
+		;;
+	udi29k)
+		basic_machine=a29k-amd
+		os=-udi
+		;;
+	ultra3)
+		basic_machine=a29k-nyu
+		os=-sym1
+		;;
+	v810 | necv810)
+		basic_machine=v810-nec
+		os=-none
+		;;
+	vaxv)
+		basic_machine=vax-dec
+		os=-sysv
+		;;
+	vms)
+		basic_machine=vax-dec
+		os=-vms
+		;;
+	vpp*|vx|vx-*)
+		basic_machine=f301-fujitsu
+		;;
+	vxworks960)
+		basic_machine=i960-wrs
+		os=-vxworks
+		;;
+	vxworks68)
+		basic_machine=m68k-wrs
+		os=-vxworks
+		;;
+	vxworks29k)
+		basic_machine=a29k-wrs
+		os=-vxworks
+		;;
+	w65*)
+		basic_machine=w65-wdc
+		os=-none
+		;;
+	w89k-*)
+		basic_machine=hppa1.1-winbond
+		os=-proelf
+		;;
+	xbox)
+		basic_machine=i686-pc
+		os=-mingw32
+		;;
+	xps | xps100)
+		basic_machine=xps100-honeywell
+		;;
+	xscale-* | xscalee[bl]-*)
+		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
+		;;
+	ymp)
+		basic_machine=ymp-cray
+		os=-unicos
+		;;
+	z8k-*-coff)
+		basic_machine=z8k-unknown
+		os=-sim
+		;;
+	z80-*-coff)
+		basic_machine=z80-unknown
+		os=-sim
+		;;
+	none)
+		basic_machine=none-none
+		os=-none
+		;;
+
+# Here we handle the default manufacturer of certain CPU types.  It is in
+# some cases the only manufacturer, in others, it is the most popular.
+	w89k)
+		basic_machine=hppa1.1-winbond
+		;;
+	op50n)
+		basic_machine=hppa1.1-oki
+		;;
+	op60c)
+		basic_machine=hppa1.1-oki
+		;;
+	romp)
+		basic_machine=romp-ibm
+		;;
+	mmix)
+		basic_machine=mmix-knuth
+		;;
+	rs6000)
+		basic_machine=rs6000-ibm
+		;;
+	vax)
+		basic_machine=vax-dec
+		;;
+	pdp10)
+		# there are many clones, so DEC is not a safe bet
+		basic_machine=pdp10-unknown
+		;;
+	pdp11)
+		basic_machine=pdp11-dec
+		;;
+	we32k)
+		basic_machine=we32k-att
+		;;
+	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
+		basic_machine=sh-unknown
+		;;
+	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
+		basic_machine=sparc-sun
+		;;
+	cydra)
+		basic_machine=cydra-cydrome
+		;;
+	orion)
+		basic_machine=orion-highlevel
+		;;
+	orion105)
+		basic_machine=clipper-highlevel
+		;;
+	mac | mpw | mac-mpw)
+		basic_machine=m68k-apple
+		;;
+	pmac | pmac-mpw)
+		basic_machine=powerpc-apple
+		;;
+	*-unknown)
+		# Make sure to match an already-canonicalized machine name.
+		;;
+	*)
+		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+		exit 1
+		;;
+esac
+
+# Here we canonicalize certain aliases for manufacturers.
+case $basic_machine in
+	*-digital*)
+		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+		;;
+	*-commodore*)
+		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+		;;
+	*)
+		;;
+esac
+
+# Decode manufacturer-specific aliases for certain operating systems.
+
+if [ x"$os" != x"" ]
+then
+case $os in
+	# First match some system type aliases
+	# that might get confused with valid system types.
+	# -solaris* is a basic system type, with this one exception.
+	-auroraux)
+		os=-auroraux
+		;;
+	-solaris1 | -solaris1.*)
+		os=`echo $os | sed -e 's|solaris1|sunos4|'`
+		;;
+	-solaris)
+		os=-solaris2
+		;;
+	-svr4*)
+		os=-sysv4
+		;;
+	-unixware*)
+		os=-sysv4.2uw
+		;;
+	-gnu/linux*)
+		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
+		;;
+	# First accept the basic system types.
+	# The portable systems comes first.
+	# Each alternative MUST END IN A *, to match a version number.
+	# -sysv* is not here because it comes later, after sysvr4.
+	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
+	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
+	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
+	      | -sym* | -kopensolaris* \
+	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
+	      | -aos* | -aros* \
+	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
+	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
+	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+	      | -openbsd* | -solidbsd* \
+	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
+	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
+	      | -chorusos* | -chorusrdb* | -cegcc* \
+	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+	      | -mingw32* | -linux-gnu* | -linux-android* \
+	      | -linux-newlib* | -linux-uclibc* \
+	      | -uxpv* | -beos* | -mpeix* | -udk* \
+	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+	# Remember, each alternative MUST END IN *, to match a version number.
+		;;
+	-qnx*)
+		case $basic_machine in
+		    x86-* | i*86-*)
+			;;
+		    *)
+			os=-nto$os
+			;;
+		esac
+		;;
+	-nto-qnx*)
+		;;
+	-nto*)
+		os=`echo $os | sed -e 's|nto|nto-qnx|'`
+		;;
+	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
+	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
+	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
+		;;
+	-mac*)
+		os=`echo $os | sed -e 's|mac|macos|'`
+		;;
+	-linux-dietlibc)
+		os=-linux-dietlibc
+		;;
+	-linux*)
+		os=`echo $os | sed -e 's|linux|linux-gnu|'`
+		;;
+	-sunos5*)
+		os=`echo $os | sed -e 's|sunos5|solaris2|'`
+		;;
+	-sunos6*)
+		os=`echo $os | sed -e 's|sunos6|solaris3|'`
+		;;
+	-opened*)
+		os=-openedition
+		;;
+	-os400*)
+		os=-os400
+		;;
+	-wince*)
+		os=-wince
+		;;
+	-osfrose*)
+		os=-osfrose
+		;;
+	-osf*)
+		os=-osf
+		;;
+	-utek*)
+		os=-bsd
+		;;
+	-dynix*)
+		os=-bsd
+		;;
+	-acis*)
+		os=-aos
+		;;
+	-atheos*)
+		os=-atheos
+		;;
+	-syllable*)
+		os=-syllable
+		;;
+	-386bsd)
+		os=-bsd
+		;;
+	-ctix* | -uts*)
+		os=-sysv
+		;;
+	-nova*)
+		os=-rtmk-nova
+		;;
+	-ns2)
+		os=-nextstep2
+		;;
+	-nsk*)
+		os=-nsk
+		;;
+	# Preserve the version number of sinix5.
+	-sinix5.*)
+		os=`echo $os | sed -e 's|sinix|sysv|'`
+		;;
+	-sinix*)
+		os=-sysv4
+		;;
+	-tpf*)
+		os=-tpf
+		;;
+	-triton*)
+		os=-sysv3
+		;;
+	-oss*)
+		os=-sysv3
+		;;
+	-svr4)
+		os=-sysv4
+		;;
+	-svr3)
+		os=-sysv3
+		;;
+	-sysvr4)
+		os=-sysv4
+		;;
+	# This must come after -sysvr4.
+	-sysv*)
+		;;
+	-ose*)
+		os=-ose
+		;;
+	-es1800*)
+		os=-ose
+		;;
+	-xenix)
+		os=-xenix
+		;;
+	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+		os=-mint
+		;;
+	-aros*)
+		os=-aros
+		;;
+	-kaos*)
+		os=-kaos
+		;;
+	-zvmoe)
+		os=-zvmoe
+		;;
+	-dicos*)
+		os=-dicos
+		;;
+	-nacl*)
+		;;
+	-none)
+		;;
+	*)
+		# Get rid of the `-' at the beginning of $os.
+		os=`echo $os | sed 's/[^-]*-//'`
+		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
+		exit 1
+		;;
+esac
+else
+
+# Here we handle the default operating systems that come with various machines.
+# The value should be what the vendor currently ships out the door with their
+# machine or put another way, the most popular os provided with the machine.
+
+# Note that if you're going to try to match "-MANUFACTURER" here (say,
+# "-sun"), then you have to tell the case statement up towards the top
+# that MANUFACTURER isn't an operating system.  Otherwise, code above
+# will signal an error saying that MANUFACTURER isn't an operating
+# system, and we'll never get to this point.
+
+case $basic_machine in
+	score-*)
+		os=-elf
+		;;
+	spu-*)
+		os=-elf
+		;;
+	*-acorn)
+		os=-riscix1.2
+		;;
+	arm*-rebel)
+		os=-linux
+		;;
+	arm*-semi)
+		os=-aout
+		;;
+	c4x-* | tic4x-*)
+		os=-coff
+		;;
+	tic54x-*)
+		os=-coff
+		;;
+	tic55x-*)
+		os=-coff
+		;;
+	tic6x-*)
+		os=-coff
+		;;
+	# This must come before the *-dec entry.
+	pdp10-*)
+		os=-tops20
+		;;
+	pdp11-*)
+		os=-none
+		;;
+	*-dec | vax-*)
+		os=-ultrix4.2
+		;;
+	m68*-apollo)
+		os=-domain
+		;;
+	i386-sun)
+		os=-sunos4.0.2
+		;;
+	m68000-sun)
+		os=-sunos3
+		# This also exists in the configure program, but was not the
+		# default.
+		# os=-sunos4
+		;;
+	m68*-cisco)
+		os=-aout
+		;;
+	mep-*)
+		os=-elf
+		;;
+	mips*-cisco)
+		os=-elf
+		;;
+	mips*-*)
+		os=-elf
+		;;
+	or32-*)
+		os=-coff
+		;;
+	*-tti)	# must be before sparc entry or we get the wrong os.
+		os=-sysv3
+		;;
+	sparc-* | *-sun)
+		os=-sunos4.1.1
+		;;
+	*-be)
+		os=-beos
+		;;
+	*-haiku)
+		os=-haiku
+		;;
+	*-ibm)
+		os=-aix
+		;;
+	*-knuth)
+		os=-mmixware
+		;;
+	*-wec)
+		os=-proelf
+		;;
+	*-winbond)
+		os=-proelf
+		;;
+	*-oki)
+		os=-proelf
+		;;
+	*-hp)
+		os=-hpux
+		;;
+	*-hitachi)
+		os=-hiux
+		;;
+	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
+		os=-sysv
+		;;
+	*-cbm)
+		os=-amigaos
+		;;
+	*-dg)
+		os=-dgux
+		;;
+	*-dolphin)
+		os=-sysv3
+		;;
+	m68k-ccur)
+		os=-rtu
+		;;
+	m88k-omron*)
+		os=-luna
+		;;
+	*-next)
+		os=-nextstep
+		;;
+	*-sequent)
+		os=-ptx
+		;;
+	*-crds)
+		os=-unos
+		;;
+	*-ns)
+		os=-genix
+		;;
+	i370-*)
+		os=-mvs
+		;;
+	*-next)
+		os=-nextstep3
+		;;
+	*-gould)
+		os=-sysv
+		;;
+	*-highlevel)
+		os=-bsd
+		;;
+	*-encore)
+		os=-bsd
+		;;
+	*-sgi)
+		os=-irix
+		;;
+	*-siemens)
+		os=-sysv4
+		;;
+	*-masscomp)
+		os=-rtu
+		;;
+	f30[01]-fujitsu | f700-fujitsu)
+		os=-uxpv
+		;;
+	*-rom68k)
+		os=-coff
+		;;
+	*-*bug)
+		os=-coff
+		;;
+	*-apple)
+		os=-macos
+		;;
+	*-atari*)
+		os=-mint
+		;;
+	*)
+		os=-none
+		;;
+esac
+fi
+
+# Here we handle the case where we know the os, and the CPU type, but not the
+# manufacturer.  We pick the logical manufacturer.
+vendor=unknown
+case $basic_machine in
+	*-unknown)
+		case $os in
+			-riscix*)
+				vendor=acorn
+				;;
+			-sunos*)
+				vendor=sun
+				;;
+			-cnk*|-aix*)
+				vendor=ibm
+				;;
+			-beos*)
+				vendor=be
+				;;
+			-hpux*)
+				vendor=hp
+				;;
+			-mpeix*)
+				vendor=hp
+				;;
+			-hiux*)
+				vendor=hitachi
+				;;
+			-unos*)
+				vendor=crds
+				;;
+			-dgux*)
+				vendor=dg
+				;;
+			-luna*)
+				vendor=omron
+				;;
+			-genix*)
+				vendor=ns
+				;;
+			-mvs* | -opened*)
+				vendor=ibm
+				;;
+			-os400*)
+				vendor=ibm
+				;;
+			-ptx*)
+				vendor=sequent
+				;;
+			-tpf*)
+				vendor=ibm
+				;;
+			-vxsim* | -vxworks* | -windiss*)
+				vendor=wrs
+				;;
+			-aux*)
+				vendor=apple
+				;;
+			-hms*)
+				vendor=hitachi
+				;;
+			-mpw* | -macos*)
+				vendor=apple
+				;;
+			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+				vendor=atari
+				;;
+			-vos*)
+				vendor=stratus
+				;;
+		esac
+		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
+		;;
+esac
+
+echo $basic_machine$os
+exit
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/configure b/configure
new file mode 100755
index 00000000..da579b3d
--- /dev/null
+++ b/configure
@@ -0,0 +1,43190 @@
+#! /bin/sh
+# From configure.in 2.8.8dev.9.
+# Guess values for system-dependent variables and create Makefiles.
+# Generated by Autoconf 2.52.20101002.
+#
+# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+# Free Software Foundation, Inc.
+# This configure script is free software; the Free Software Foundation
+# gives unlimited permission to copy, distribute and modify it.
+
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+
+# Name of the executable.
+as_me=`echo "$0" |sed 's,.*[\\/],,'`
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+as_executable_p="test -f"
+
+# Support unset when possible.
+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+# NLS nuisances.
+$as_unset LANG || test "${LANG+set}" != set || { LANG=C; export LANG; }
+$as_unset LC_ALL || test "${LC_ALL+set}" != set || { LC_ALL=C; export LC_ALL; }
+$as_unset LC_TIME || test "${LC_TIME+set}" != set || { LC_TIME=C; export LC_TIME; }
+$as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set || { LC_CTYPE=C; export LC_CTYPE; }
+$as_unset LANGUAGE || test "${LANGUAGE+set}" != set || { LANGUAGE=C; export LANGUAGE; }
+$as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set || { LC_COLLATE=C; export LC_COLLATE; }
+$as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set || { LC_NUMERIC=C; export LC_NUMERIC; }
+$as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set || { LC_MESSAGES=C; export LC_MESSAGES; }
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS=" 	$as_nl"
+
+# CDPATH.
+$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; }
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+exec 6>&1
+
+#
+# Initializations.
+#
+ac_default_prefix=/usr/local
+cross_compiling=no
+subdirs=
+MFLAGS= MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Maximum number of lines to put in a shell here document.
+# This variable seems obsolete.  It should probably be removed, and
+# only ac_max_sed_lines should be used.
+: ${ac_max_here_lines=38}
+
+ac_unique_file="userdefs.h"
+ac_default_prefix=/usr/local
+# Factoring default headers for most tests.
+ac_includes_default="\
+#include <stdio.h>
+#if HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#if HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
+#if STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# if HAVE_STDLIB_H
+#  include <stdlib.h>
+# endif
+#endif
+#if HAVE_STRING_H
+# if !STDC_HEADERS && HAVE_MEMORY_H
+#  include <memory.h>
+# endif
+# include <string.h>
+#endif
+#if HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#if HAVE_INTTYPES_H
+# include <inttypes.h>
+#else
+# if HAVE_STDINT_H
+#  include <stdint.h>
+# endif
+#endif
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif"
+
+# Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+cache_file=/dev/null
+exec_prefix=NONE
+no_create=
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+verbose=
+x_includes=NONE
+x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datadir='${prefix}/share'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+libdir='${exec_prefix}/lib'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+infodir='${prefix}/info'
+mandir='${prefix}/man'
+
+# Identity of this package.
+PACKAGE_NAME=
+PACKAGE_TARNAME=
+PACKAGE_VERSION=
+PACKAGE_STRING=
+PACKAGE_BUGREPORT=
+
+ac_prev=
+for ac_option
+do
+  # If the previous option needs an argument, assign it.
+  if test -n "$ac_prev"; then
+    eval "$ac_prev=\$ac_option"
+    ac_prev=
+    continue
+  fi
+
+  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
+
+  # Accept the important Cygnus configure options, so we can diagnose typos.
+
+  case $ac_option in
+
+  -bindir | --bindir | --bindi | --bind | --bin | --bi)
+    ac_prev=bindir ;;
+  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+    bindir=$ac_optarg ;;
+
+  -build | --build | --buil | --bui | --bu)
+    ac_prev=build_alias ;;
+  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+    build_alias=$ac_optarg ;;
+
+  -cache-file | --cache-file | --cache-fil | --cache-fi \
+  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+    ac_prev=cache_file ;;
+  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+    cache_file=$ac_optarg ;;
+
+  --config-cache | -C)
+    cache_file=config.cache ;;
+
+  -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+    ac_prev=datadir ;;
+  -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+  | --da=*)
+    datadir=$ac_optarg ;;
+
+  -disable-* | --disable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    eval "enable_$ac_feature=no" ;;
+
+  -enable-* | --enable-*)
+    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+      *) ac_optarg=yes ;;
+    esac
+    eval "enable_$ac_feature='$ac_optarg'" ;;
+
+  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+  | --exec | --exe | --ex)
+    ac_prev=exec_prefix ;;
+  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+  | --exec=* | --exe=* | --ex=*)
+    exec_prefix=$ac_optarg ;;
+
+  -gas | --gas | --ga | --g)
+    # Obsolete; use --with-gas.
+    with_gas=yes ;;
+
+  -help | --help | --hel | --he | -h)
+    ac_init_help=long ;;
+  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+    ac_init_help=recursive ;;
+  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+    ac_init_help=short ;;
+
+  -host | --host | --hos | --ho)
+    ac_prev=host_alias ;;
+  -host=* | --host=* | --hos=* | --ho=*)
+    host_alias=$ac_optarg ;;
+
+  -includedir | --includedir | --includedi | --included | --include \
+  | --includ | --inclu | --incl | --inc)
+    ac_prev=includedir ;;
+  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+  | --includ=* | --inclu=* | --incl=* | --inc=*)
+    includedir=$ac_optarg ;;
+
+  -infodir | --infodir | --infodi | --infod | --info | --inf)
+    ac_prev=infodir ;;
+  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+    infodir=$ac_optarg ;;
+
+  -libdir | --libdir | --libdi | --libd)
+    ac_prev=libdir ;;
+  -libdir=* | --libdir=* | --libdi=* | --libd=*)
+    libdir=$ac_optarg ;;
+
+  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+  | --libexe | --libex | --libe)
+    ac_prev=libexecdir ;;
+  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+  | --libexe=* | --libex=* | --libe=*)
+    libexecdir=$ac_optarg ;;
+
+  -localstatedir | --localstatedir | --localstatedi | --localstated \
+  | --localstate | --localstat | --localsta | --localst \
+  | --locals | --local | --loca | --loc | --lo)
+    ac_prev=localstatedir ;;
+  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+  | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+  | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+    localstatedir=$ac_optarg ;;
+
+  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+    ac_prev=mandir ;;
+  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+    mandir=$ac_optarg ;;
+
+  -nfp | --nfp | --nf)
+    # Obsolete; use --without-fp.
+    with_fp=no ;;
+
+  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+  | --no-cr | --no-c)
+    no_create=yes ;;
+
+  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+    no_recursion=yes ;;
+
+  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+  | --oldin | --oldi | --old | --ol | --o)
+    ac_prev=oldincludedir ;;
+  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+    oldincludedir=$ac_optarg ;;
+
+  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+    ac_prev=prefix ;;
+  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+    prefix=$ac_optarg ;;
+
+  -program-prefix | --program-prefix | --program-prefi | --program-pref \
+  | --program-pre | --program-pr | --program-p)
+    ac_prev=program_prefix ;;
+  -program-prefix=* | --program-prefix=* | --program-prefi=* \
+  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+    program_prefix=$ac_optarg ;;
+
+  -program-suffix | --program-suffix | --program-suffi | --program-suff \
+  | --program-suf | --program-su | --program-s)
+    ac_prev=program_suffix ;;
+  -program-suffix=* | --program-suffix=* | --program-suffi=* \
+  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+    program_suffix=$ac_optarg ;;
+
+  -program-transform-name | --program-transform-name \
+  | --program-transform-nam | --program-transform-na \
+  | --program-transform-n | --program-transform- \
+  | --program-transform | --program-transfor \
+  | --program-transfo | --program-transf \
+  | --program-trans | --program-tran \
+  | --progr-tra | --program-tr | --program-t)
+    ac_prev=program_transform_name ;;
+  -program-transform-name=* | --program-transform-name=* \
+  | --program-transform-nam=* | --program-transform-na=* \
+  | --program-transform-n=* | --program-transform-=* \
+  | --program-transform=* | --program-transfor=* \
+  | --program-transfo=* | --program-transf=* \
+  | --program-trans=* | --program-tran=* \
+  | --progr-tra=* | --program-tr=* | --program-t=*)
+    program_transform_name=$ac_optarg ;;
+
+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+  | -silent | --silent | --silen | --sile | --sil)
+    silent=yes ;;
+
+  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+    ac_prev=sbindir ;;
+  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+  | --sbi=* | --sb=*)
+    sbindir=$ac_optarg ;;
+
+  -sharedstatedir | --sharedstatedir | --sharedstatedi \
+  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+  | --sharedst | --shareds | --shared | --share | --shar \
+  | --sha | --sh)
+    ac_prev=sharedstatedir ;;
+  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+  | --sha=* | --sh=*)
+    sharedstatedir=$ac_optarg ;;
+
+  -site | --site | --sit)
+    ac_prev=site ;;
+  -site=* | --site=* | --sit=*)
+    site=$ac_optarg ;;
+
+  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+    ac_prev=srcdir ;;
+  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+    srcdir=$ac_optarg ;;
+
+  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+  | --syscon | --sysco | --sysc | --sys | --sy)
+    ac_prev=sysconfdir ;;
+  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+    sysconfdir=$ac_optarg ;;
+
+  -target | --target | --targe | --targ | --tar | --ta | --t)
+    ac_prev=target_alias ;;
+  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+    target_alias=$ac_optarg ;;
+
+  -v | -verbose | --verbose | --verbos | --verbo | --verb)
+    verbose=yes ;;
+
+  -version | --version | --versio | --versi | --vers | -V)
+    ac_init_version=: ;;
+
+  -with-* | --with-*)
+    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package| sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+      *) ac_optarg=yes ;;
+    esac
+    eval "with_$ac_package='$ac_optarg'" ;;
+
+  -without-* | --without-*)
+    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package | sed 's/-/_/g'`
+    eval "with_$ac_package=no" ;;
+
+  --x)
+    # Obsolete; use --with-x.
+    with_x=yes ;;
+
+  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+  | --x-incl | --x-inc | --x-in | --x-i)
+    ac_prev=x_includes ;;
+  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+    x_includes=$ac_optarg ;;
+
+  -x-libraries | --x-libraries | --x-librarie | --x-librari \
+  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+    ac_prev=x_libraries ;;
+  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+    x_libraries=$ac_optarg ;;
+
+  -*) { echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+   { (exit 1); exit 1; }; }
+    ;;
+
+  *=*)
+    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+   { (exit 1); exit 1; }; }
+    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
+    eval "$ac_envvar='$ac_optarg'"
+    export $ac_envvar ;;
+
+  *)
+    # FIXME: should be removed in autoconf 3.0.
+    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+    ;;
+
+  esac
+done
+
+if test -n "$ac_prev"; then
+  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+  { echo "$as_me: error: missing argument to $ac_option" >&2
+   { (exit 1); exit 1; }; }
+fi
+
+# Be sure to have absolute paths.
+for ac_var in exec_prefix prefix
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
+    *)  { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# Be sure to have absolute paths.
+for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
+              localstatedir libdir includedir oldincludedir infodir mandir
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* ) ;;
+    *)  { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: should be removed in autoconf 3.0.
+if test "x$host_alias" != x; then
+  if test "x$build_alias" = x; then
+    cross_compiling=maybe
+    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
+    If a cross compiler is detected then cross compile mode will be used." >&2
+  elif test "x$build_alias" != "x$host_alias"; then
+    cross_compiling=yes
+  fi
+fi
+
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
+
+test "$silent" = yes && exec 6>/dev/null
+
+# Find the source files, if location was not specified.
+if test -z "$srcdir"; then
+  ac_srcdir_defaulted=yes
+  # Try the directory containing this script, then its parent.
+  ac_prog=$0
+  ac_confdir=`echo "$ac_prog" | sed 's%[\\/][^\\/][^\\/]*$%%'`
+  test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
+  srcdir=$ac_confdir
+  if test ! -r $srcdir/$ac_unique_file; then
+    srcdir=..
+  fi
+else
+  ac_srcdir_defaulted=no
+fi
+if test ! -r $srcdir/$ac_unique_file; then
+  if test "$ac_srcdir_defaulted" = yes; then
+    { echo "$as_me: error: cannot find sources in $ac_confdir or .." >&2
+   { (exit 1); exit 1; }; }
+  else
+    { echo "$as_me: error: cannot find sources in $srcdir" >&2
+   { (exit 1); exit 1; }; }
+  fi
+fi
+srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
+ac_env_build_alias_set=${build_alias+set}
+ac_env_build_alias_value=$build_alias
+ac_cv_env_build_alias_set=${build_alias+set}
+ac_cv_env_build_alias_value=$build_alias
+ac_env_host_alias_set=${host_alias+set}
+ac_env_host_alias_value=$host_alias
+ac_cv_env_host_alias_set=${host_alias+set}
+ac_cv_env_host_alias_value=$host_alias
+ac_env_target_alias_set=${target_alias+set}
+ac_env_target_alias_value=$target_alias
+ac_cv_env_target_alias_set=${target_alias+set}
+ac_cv_env_target_alias_value=$target_alias
+ac_env_CC_set=${CC+set}
+ac_env_CC_value=$CC
+ac_cv_env_CC_set=${CC+set}
+ac_cv_env_CC_value=$CC
+ac_env_CFLAGS_set=${CFLAGS+set}
+ac_env_CFLAGS_value=$CFLAGS
+ac_cv_env_CFLAGS_set=${CFLAGS+set}
+ac_cv_env_CFLAGS_value=$CFLAGS
+ac_env_LDFLAGS_set=${LDFLAGS+set}
+ac_env_LDFLAGS_value=$LDFLAGS
+ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
+ac_cv_env_LDFLAGS_value=$LDFLAGS
+ac_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_env_CPPFLAGS_value=$CPPFLAGS
+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_cv_env_CPPFLAGS_value=$CPPFLAGS
+ac_env_CPP_set=${CPP+set}
+ac_env_CPP_value=$CPP
+ac_cv_env_CPP_set=${CPP+set}
+ac_cv_env_CPP_value=$CPP
+
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+  # Omit some internal or obsolete options to make the list less imposing.
+  # This message is too long to be a string in the A/UX 3.1 sh.
+  cat <<EOF
+\`configure' configures this package to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE.  See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+  -h, --help              display this help and exit
+      --help=short        display options specific to this package
+      --help=recursive    display the short help of all the included packages
+  -V, --version           display version information and exit
+  -q, --quiet, --silent   do not print \`checking...' messages
+      --cache-file=FILE   cache test results in FILE [disabled]
+  -C, --config-cache      alias for \`--cache-file=config.cache'
+  -n, --no-create         do not create output files
+      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
+
+EOF
+
+  cat <<EOF
+Installation directories:
+  --prefix=PREFIX         install architecture-independent files in PREFIX
+                          [$ac_default_prefix]
+  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
+                          [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+  --bindir=DIR            user executables [EPREFIX/bin]
+  --sbindir=DIR           system admin executables [EPREFIX/sbin]
+  --libexecdir=DIR        program executables [EPREFIX/libexec]
+  --datadir=DIR           read-only architecture-independent data [PREFIX/share]
+  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
+  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
+  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
+  --libdir=DIR            object code libraries [EPREFIX/lib]
+  --includedir=DIR        C header files [PREFIX/include]
+  --oldincludedir=DIR     C header files for non-gcc [/usr/include]
+  --infodir=DIR           info documentation [PREFIX/info]
+  --mandir=DIR            man documentation [PREFIX/man]
+EOF
+
+  cat <<\EOF
+
+Program names:
+  --program-prefix=PREFIX            prepend PREFIX to installed program names
+  --program-suffix=SUFFIX            append SUFFIX to installed program names
+  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
+
+X features:
+  --x-includes=DIR    X include files are in DIR
+  --x-libraries=DIR   X library files are in DIR
+
+System types:
+  --build=BUILD           configure for building on BUILD [guessed]
+  --host=HOST       build programs to run on HOST [BUILD]
+  --target=TARGET   configure for building compilers for TARGET [HOST]
+EOF
+fi
+
+if test -n "$ac_init_help"; then
+
+  cat <<\EOF
+
+Optional Packages:
+  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+
+Optional Features:
+  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
+  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
+
+  --with-system-type=XXX  test: override derived host system-type
+  --with-destdir=XXX      set DESTDIR destination for install (default: $DESTDIR)
+  --with-build-cc=XXX     the build C compiler ($BUILD_CC)
+  --with-build-cpp=XXX    the build C preprocessor ($BUILD_CPP)
+  --with-build-cflags=XXX the build C compiler-flags ($BUILD_CFLAGS)
+  --with-build-cppflags=XXX the build C preprocessor-flags ($BUILD_CPPFLAGS)
+  --with-build-ldflags=XXX the build linker-flags ($BUILD_LDFLAGS)
+  --with-build-libs=XXX   the build libraries (${BUILD_LIBS})
+Development Options:
+  --disable-echo          display "compiling" commands
+  --enable-find-leaks     logic for testing memory leaks
+  --enable-debug          compile w/ debugging (if \$CFLAGS is set, add -g there, too)
+  --disable-trace         disable logic for trace code
+  --enable-vertrace       verbose trace code
+  --enable-warnings       GCC compiler warnings
+  --with-dbmalloc         test: use Conor Cahill's dbmalloc library
+  --with-dmalloc          test: use Gray Watson's dmalloc library
+Basic Configuration Options:
+  --disable-largefile     omit support for large files
+  --with-libiconv-prefix=DIR
+                          search for libiconv in DIR/include and DIR/lib
+  --enable-nls            use Native Language Support
+  --with-included-gettext use the GNU gettext library included here
+  --with-textdomain=PKG   NLS text-domain (default is package name)
+  --disable-included-msgs use included messages, for i18n support
+  --with-nls-datadir=DIR  NLS data, parent of locale (default: PREFIX/DATADIR)
+  --disable-full-paths    control whether full utility pathnames are used
+  --with-nss-compat{=path}       link with nss_compat library if available
+  --with-ssl{=path}       link with ssl library if available
+  --with-gnutls{=path}    link with gnutls support
+  --enable-gnutls-compat  link with gnutls-openssl compat
+  --with-socks{=path}     link with socks library if available
+  --with-socks5{=path}    link with socks5 library if available
+  --with-pkg-config{=path} enable/disable use of pkg-config
+  --enable-ipv6           use ipv6 (with ipv4) support
+  --with-screen=XXX       select screen type (XXX is curses (default),
+                          ncurses, ncursesw, pdcurses or slang)
+  --with-curses-dir=DIR   directory in which (n)curses is installed
+  --enable-widec          enable wide-curses features
+  --disable-color-style   use color style (ncurses/curses)
+  --with-lss-file{=path}  specify the default style-sheet file
+                          (default: SYSCONFDIR/lynx.lss)
+  --with-cfg-file{=path}  specify the default configuration file
+                          (default: SYSCONFDIR/lynx.cfg)
+  --enable-htmlized-cfg   build htmlized lynx.cfg
+  --enable-local-docs     link local doc-directory to help-page
+  --with-mime-libdir=DIR  MIME data, mime.types and mailcap (default: /etc)
+  --enable-locale-charset use locale-charset selection logic
+  --with-charsets=list    limit charsets to given list of MIME names
+Experimental Options:
+  --disable-bibp-urls     disable support for bibp: URLs
+  --disable-config-info   disable browsable configuration-info
+  --disable-forms-options disable forms-based options
+  --disable-menu-options  disable old-style option menu
+  --disable-sessions      use sessions code
+  --disable-session-cache use session-caching code
+  --disable-addrlist-page disable address-list page
+  --enable-cjk            use experimental CJK logic
+  --enable-japanese-utf8  use experimental Japanese UTF-8 logic
+  --enable-default-colors enable use of default-colors (ncurses/slang)
+  --enable-kbd-layout     use experimental keyboard-layout support
+  --enable-nested-tables  use experimental nested-table support
+Miscellaneous Options:
+  --disable-alt-bindings  disable alternative line-edit bindings
+  --disable-ascii-ctypes  disable use of ascii case-conversion
+  --disable-extended-dtd  disable extended HTML DTD logic
+  --disable-file-upload   disable file-upload support
+  --disable-idna          disable IDNA support
+  --disable-justify-elts  disable element-justification logic
+  --disable-partial       disable partial-display logic
+  --disable-persistent-cookies  disable persistent-cookie support
+  --disable-prettysrc     disable colorization of HTML source
+  --disable-progressbar   disable progress-bar
+  --disable-read-eta      disable read-progress message shows ETA
+  --disable-source-cache  do not cache HTML source for parse mode changes
+  --disable-scrollbar     disable scrollbar with mouse
+  --enable-charset-choice use charset-selection logic
+  --enable-externs        use external commands
+  --enable-font-switch    use Linux setfont for character-translation
+  --enable-cgi-links      support cgi links w/o a http daemon
+  --enable-change-exec    allow users to change exec options
+  --enable-exec-links     allow lynx to execute programs accessed via a link
+  --enable-exec-scripts   allow lynx to execute programs inferred from a link
+  --enable-internal-links handle following links to same doc differently
+  --enable-nsl-fork       fork NSL requests, allowing them to be aborted
+  --enable-syslog         log URL requests via syslog
+  --enable-underlines     underline links rather than using boldface
+  --enable-gzip-help      install gzip'ed help files
+  --with-bzlib            use libbz2 for decompression of some bzip2 files
+  --with-zlib             use zlib for decompression of some gzip files
+Other Network Services:
+  --disable-finger        disable FINGER logic
+  --disable-gopher        disable GOPHER logic
+  --disable-news          disable NEWS logic
+  --disable-ftp           disable FTP logic
+  --enable-wais           enable WAIS logic
+Directory Editor Options:
+  --disable-dired          disable optional directory-editor, DirEd
+  --disable-dired-dearchive disable dearchiving commands
+  --disable-dired-override disable DirEd override keymap
+  --disable-dired-permit  disable chmod/attrib commands
+  --disable-dired-xpermit disable chmod/attrib commands
+  --disable-dired-tar     disable "tar" command
+  --disable-dired-uudecode disable "uudecode" command
+  --disable-dired-zip     disable "zip", "unzip"  commands
+  --disable-dired-gzip    disable "gzip", "gunzip" commands
+  --disable-long-list     disable long "ls -l" directory listings
+  --disable-parent-dir-refs
+                          disable "Up-to" links in directory listings
+Special Libraries for PDCurses X11:
+  --with-Xaw3d            link with Xaw 3d library
+  --with-neXtaw           link with neXT Athena library
+  --with-XawPlus          link with Athena-Plus library
+  --with-x                use the X Window System
+  --disable-rpath-hack    don't add rpath options for additional libraries
+
+Some influential environment variables:
+  CC          C compiler command
+  CFLAGS      C compiler flags
+  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
+              nonstandard directory <lib dir>
+  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
+              headers in a nonstandard directory <include dir>
+  CPP         C preprocessor
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+EOF
+fi
+
+if test "$ac_init_help" = "recursive"; then
+  # If there are subdirs, report their specific --help.
+  ac_popdir=`pwd`
+  for ac_subdir in : $ac_subdirs_all; do test "x$ac_subdir" = x: && continue
+    cd $ac_subdir
+    # A "../" for each directory in /$ac_subdir.
+    ac_dots=`echo $ac_subdir |
+             sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
+
+    case $srcdir in
+    .) # No --srcdir option.  We are building in place.
+      ac_sub_srcdir=$srcdir ;;
+    [\\/]* | ?:[\\/]* ) # Absolute path.
+      ac_sub_srcdir=$srcdir/$ac_subdir ;;
+    *) # Relative path.
+      ac_sub_srcdir=$ac_dots$srcdir/$ac_subdir ;;
+    esac
+
+    # Check for guested configure; otherwise get Cygnus style configure.
+    if test -f $ac_sub_srcdir/configure.gnu; then
+      echo
+      $SHELL $ac_sub_srcdir/configure.gnu  --help=recursive
+    elif test -f $ac_sub_srcdir/configure; then
+      echo
+      $SHELL $ac_sub_srcdir/configure  --help=recursive
+    elif test -f $ac_sub_srcdir/configure.ac ||
+           test -f $ac_sub_srcdir/configure.in; then
+      echo
+      $ac_configure --help
+    else
+      echo "$as_me: WARNING: no configuration information is in $ac_subdir" >&2
+    fi
+    cd $ac_popdir
+  done
+fi
+
+test -n "$ac_init_help" && exit 0
+if $ac_init_version; then
+  cat <<\EOF
+
+Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+EOF
+  exit 0
+fi
+exec 5>config.log
+cat >&5 <<EOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by $as_me, which was
+generated by GNU Autoconf 2.52.20101002.  Invocation command line was
+
+  $ $0 $@
+
+EOF
+{
+cat <<_ASUNAME
+## ---------- ##
+## Platform.  ##
+## ---------- ##
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
+
+/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+hostinfo               = `(hostinfo) 2>/dev/null               || echo unknown`
+/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
+/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
+
+PATH = $PATH
+
+_ASUNAME
+} >&5
+
+cat >&5 <<EOF
+## ------------ ##
+## Core tests.  ##
+## ------------ ##
+
+EOF
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Also quote any args containing shell meta-characters.
+ac_configure_args=
+ac_sep=
+for ac_arg
+do
+  case $ac_arg in
+  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+  | --no-cr | --no-c) ;;
+  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
+  *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+    ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"`
+    ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
+    ac_sep=" " ;;
+  *) ac_configure_args="$ac_configure_args$ac_sep$ac_arg"
+     ac_sep=" " ;;
+  esac
+  # Get rid of the leading space.
+done
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log.  We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+trap 'exit_status=$?
+  # Save into config.log some information that might help in debugging.
+  echo >&5
+  echo "## ----------------- ##" >&5
+  echo "## Cache variables.  ##" >&5
+  echo "## ----------------- ##" >&5
+  echo >&5
+  # The following way of writing the cache mishandles newlines in values,
+{
+  (set) 2>&1 |
+    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      sed -n \
+        "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
+    	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
+      ;;
+    *)
+      sed -n \
+        "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+} >&5
+  sed "/^$/d" confdefs.h >conftest.log
+  if test -s conftest.log; then
+    echo >&5
+    echo "## ------------ ##" >&5
+    echo "## confdefs.h.  ##" >&5
+    echo "## ------------ ##" >&5
+    echo >&5
+    cat conftest.log >&5
+  fi
+  (echo; echo) >&5
+  test "$ac_signal" != 0 &&
+    echo "$as_me: caught signal $ac_signal" >&5
+  echo "$as_me: exit $exit_status" >&5
+  rm -rf conftest* confdefs* core core.* *.core conf$$* $ac_clean_files &&
+    exit $exit_status
+     ' 0
+for ac_signal in 1 2 13 15; do
+  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -rf conftest* confdefs.h
+# AIX cpp loses on an empty file, so make sure it contains at least a newline.
+echo >confdefs.h
+
+# Let the site file select an alternate cache file if it wants to.
+# Prefer explicitly selected file to automatically selected ones.
+if test -z "$CONFIG_SITE"; then
+  if test "x$prefix" != xNONE; then
+    CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+  else
+    CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
+  fi
+fi
+for ac_site_file in $CONFIG_SITE; do
+  if test -r "$ac_site_file"; then
+    { echo "$as_me:995: loading site script $ac_site_file" >&5
+echo "$as_me: loading site script $ac_site_file" >&6;}
+    cat "$ac_site_file" >&5
+    . "$ac_site_file"
+  fi
+done
+
+if test -r "$cache_file"; then
+  # Some versions of bash will fail to source /dev/null (special
+  # files actually), so we avoid doing that.
+  if test -f "$cache_file"; then
+    { echo "$as_me:1006: loading cache $cache_file" >&5
+echo "$as_me: loading cache $cache_file" >&6;}
+    case $cache_file in
+      [\\/]* | ?:[\\/]* ) . $cache_file;;
+      *)                      . ./$cache_file;;
+    esac
+  fi
+else
+  { echo "$as_me:1014: creating cache $cache_file" >&5
+echo "$as_me: creating cache $cache_file" >&6;}
+  >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in `(set) 2>&1 |
+               sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
+  eval ac_old_set=\$ac_cv_env_${ac_var}_set
+  eval ac_new_set=\$ac_env_${ac_var}_set
+  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
+  eval ac_new_val="\$ac_env_${ac_var}_value"
+  case $ac_old_set,$ac_new_set in
+    set,)
+      { echo "$as_me:1030: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,set)
+      { echo "$as_me:1034: error: \`$ac_var' was not set in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,);;
+    *)
+      if test "x$ac_old_val" != "x$ac_new_val"; then
+        { echo "$as_me:1040: error: \`$ac_var' has changed since the previous run:" >&5
+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+        { echo "$as_me:1042:   former value:  $ac_old_val" >&5
+echo "$as_me:   former value:  $ac_old_val" >&2;}
+        { echo "$as_me:1044:   current value: $ac_new_val" >&5
+echo "$as_me:   current value: $ac_new_val" >&2;}
+        ac_cache_corrupted=:
+      fi;;
+  esac
+  # Pass precious variables to config.status.  It doesn't matter if
+  # we pass some twice (in addition to the command line arguments).
+  if test "$ac_new_set" = set; then
+    case $ac_new_val in
+    *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"`
+      ac_configure_args="$ac_configure_args '$ac_arg'"
+      ;;
+    *) ac_configure_args="$ac_configure_args $ac_var=$ac_new_val"
+       ;;
+    esac
+  fi
+done
+if $ac_cache_corrupted; then
+  { echo "$as_me:1063: error: changes in the environment can compromise the build" >&5
+echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+  { { echo "$as_me:1065: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ac_main_return=return
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+  *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T='	' ;;
+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+  *)      ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+echo "#! $SHELL" >conftest.sh
+echo  "exit 0"   >>conftest.sh
+chmod +x conftest.sh
+if { (echo "$as_me:1086: PATH=\".;.\"; conftest.sh") >&5
+  (PATH=".;."; conftest.sh) 2>&5
+  ac_status=$?
+  echo "$as_me:1089: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  ac_path_separator=';'
+else
+  ac_path_separator=:
+fi
+PATH_SEPARATOR="$ac_path_separator"
+rm -f conftest.sh
+
+# autoconf 2.5x defaults to no cache file; we need the cache file's information
+# for building the config page.  But start with it empty to avoid confusion by
+# people who don't do a "make distclean" after applying patches.
+cache_file=config.cache
+rm -f config.cache; touch config.cache
+
+CONFIG_H=lynx_cfg.h
+ac_config_headers="$ac_config_headers $CONFIG_H:config.hin"
+
+ac_aux_dir=
+for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
+  if test -f $ac_dir/install-sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install-sh -c"
+    break
+  elif test -f $ac_dir/install.sh; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/install.sh -c"
+    break
+  elif test -f $ac_dir/shtool; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/shtool install -c"
+    break
+  fi
+done
+if test -z "$ac_aux_dir"; then
+  { { echo "$as_me:1124: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
+echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+ac_config_guess="$SHELL $ac_aux_dir/config.guess"
+ac_config_sub="$SHELL $ac_aux_dir/config.sub"
+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
+
+# Make sure we can run config.sub.
+$ac_config_sub sun4 >/dev/null 2>&1 ||
+  { { echo "$as_me:1134: error: cannot run $ac_config_sub" >&5
+echo "$as_me: error: cannot run $ac_config_sub" >&2;}
+   { (exit 1); exit 1; }; }
+
+echo "$as_me:1138: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6
+if test "${ac_cv_build+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_build_alias=$build_alias
+test -z "$ac_cv_build_alias" &&
+  ac_cv_build_alias=`$ac_config_guess`
+test -z "$ac_cv_build_alias" &&
+  { { echo "$as_me:1147: error: cannot guess build type; you must specify one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+   { (exit 1); exit 1; }; }
+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
+  { { echo "$as_me:1151: error: $ac_config_sub $ac_cv_build_alias failed." >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:1156: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6
+build=$ac_cv_build
+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+echo "$as_me:1163: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6
+if test "${ac_cv_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_host_alias=$host_alias
+test -z "$ac_cv_host_alias" &&
+  ac_cv_host_alias=$ac_cv_build_alias
+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
+  { { echo "$as_me:1172: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:1177: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6
+host=$ac_cv_host
+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
+	echo "$as_me:1185: checking target system type" >&5
+echo $ECHO_N "checking target system type... $ECHO_C" >&6
+if test "${ac_cv_target+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_target_alias=$target_alias
+test "x$ac_cv_target_alias" = "x" &&
+  ac_cv_target_alias=$ac_cv_host_alias
+ac_cv_target=`$ac_config_sub $ac_cv_target_alias` ||
+  { { echo "$as_me:1194: error: $ac_config_sub $ac_cv_target_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_target_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:1199: result: $ac_cv_target" >&5
+echo "${ECHO_T}$ac_cv_target" >&6
+target=$ac_cv_target
+target_cpu=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+target_vendor=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+target_os=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+# The aliases save the names the user supplied, while $host etc.
+# will get canonicalized.
+test -n "$target_alias" &&
+  test "$program_prefix$program_suffix$program_transform_name" = \
+    NONENONEs,x,x, &&
+  program_prefix=${target_alias}-
+	system_name="$host_os"
+else
+	system_name="`(uname -s -r) 2>/dev/null`"
+	if test -z "$system_name" ; then
+		system_name="`(hostname) 2>/dev/null`"
+	fi
+fi
+test -n "$system_name" && cat >>confdefs.h <<EOF
+#define SYSTEM_NAME "$system_name"
+EOF
+
+if test "${cf_cv_system_name+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cf_cv_system_name="$system_name"
+fi
+
+test -z "$system_name" && system_name="$cf_cv_system_name"
+test -n "$cf_cv_system_name" && echo "$as_me:1230: result: Configuring for $cf_cv_system_name" >&5
+echo "${ECHO_T}Configuring for $cf_cv_system_name" >&6
+
+if test ".$system_name" != ".$cf_cv_system_name" ; then
+	echo "$as_me:1234: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
+echo "${ECHO_T}Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&6
+	{ { echo "$as_me:1236: error: \"Please remove config.cache and try again.\"" >&5
+echo "$as_me: error: \"Please remove config.cache and try again.\"" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# Check whether --with-system-type or --without-system-type was given.
+if test "${with_system_type+set}" = set; then
+  withval="$with_system_type"
+  { echo "$as_me:1244: WARNING: overriding system type $host_os to $withval" >&5
+echo "$as_me: WARNING: overriding system type $host_os to $withval" >&2;}
+ host_os=$withval
+fi;
+
+test "$program_prefix" != NONE &&
+  program_transform_name="s,^,$program_prefix,;$program_transform_name"
+# Use a double $ so make ignores it.
+test "$program_suffix" != NONE &&
+  program_transform_name="s,\$,$program_suffix,;$program_transform_name"
+# Double any \ or $.  echo might interpret backslashes.
+# By default was `s,x,x', remove it if useless.
+cat <<\_ACEOF >conftest.sed
+s/[\\$]/&&/g;s/;s,x,x,$//
+_ACEOF
+program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
+rm conftest.sed
+
+PACKAGE=lynx
+# $Format: "VERSION=$ProjectVersion$"$
+VERSION=2.8.8dev.11
+
+echo "$as_me:1266: checking for DESTDIR" >&5
+echo $ECHO_N "checking for DESTDIR... $ECHO_C" >&6
+
+# Check whether --with-destdir or --without-destdir was given.
+if test "${with_destdir+set}" = set; then
+  withval="$with_destdir"
+
+else
+  withval="${DESTDIR:-$DESTDIR}"
+fi; if test -n "$DESTDIR" ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$withval" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval withval="$withval"
+  case ".$withval" in #(vi
+  .NONE/*)
+    withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  { { echo "$as_me:1302: error: expected a pathname, not \"$withval\"" >&5
+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
+   { (exit 1); exit 1; }; }
+  ;;
+esac
+
+fi
+DESTDIR="$withval"
+
+echo "$as_me:1311: result: $DESTDIR" >&5
+echo "${ECHO_T}$DESTDIR" >&6
+
+case $host_os in
+openedition)
+	: ${CFLAGS="-D_ALL_SOURCE -Wl,EDIT=NO"}
+	: ${CC=c89}
+	;;
+esac
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ac_main_return=return
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+echo "$as_me:1330: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="${ac_tool_prefix}gcc"
+echo "$as_me:1345: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:1353: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:1356: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+echo "$as_me:1365: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_CC="gcc"
+echo "$as_me:1380: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:1388: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:1391: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+echo "$as_me:1404: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="${ac_tool_prefix}cc"
+echo "$as_me:1419: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:1427: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:1430: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:1439: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_CC="cc"
+echo "$as_me:1454: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:1462: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:1465: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+fi
+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 "$as_me:1478: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_prog_rejected=no
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
+  ac_prog_rejected=yes
+  continue
+fi
+ac_cv_prog_CC="cc"
+echo "$as_me:1498: found $ac_dir/$ac_word" >&5
+break
+done
+
+if test $ac_prog_rejected = yes; then
+  # We found a bogon in the path, so make sure we never use it.
+  set dummy $ac_cv_prog_CC
+  shift
+  if test $# != 0; then
+    # We chose a different compiler from the bogus one.
+    # However, it has the same basename, so the bogon will be chosen
+    # first if we set CC to just the basename; use the full file name.
+    shift
+    set dummy "$ac_dir/$ac_word" ${1+"$@"}
+    shift
+    ac_cv_prog_CC="$@"
+  fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:1520: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:1523: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  for ac_prog in cl
+  do
+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:1534: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+echo "$as_me:1549: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:1557: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:1560: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+    test -n "$CC" && break
+  done
+fi
+if test -z "$CC"; then
+  ac_ct_CC=$CC
+  for ac_prog in cl
+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 "$as_me:1573: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_CC="$ac_prog"
+echo "$as_me:1588: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:1596: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:1599: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ac_ct_CC" && break
+done
+
+  CC=$ac_ct_CC
+fi
+
+fi
+
+test -z "$CC" && { { echo "$as_me:1611: error: no acceptable cc found in \$PATH" >&5
+echo "$as_me: error: no acceptable cc found in \$PATH" >&2;}
+   { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:1616:" \
+     "checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:1619: \"$ac_compiler --version </dev/null >&5\"") >&5
+  (eval $ac_compiler --version </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:1622: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:1624: \"$ac_compiler -v </dev/null >&5\"") >&5
+  (eval $ac_compiler -v </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:1627: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:1629: \"$ac_compiler -V </dev/null >&5\"") >&5
+  (eval $ac_compiler -V </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:1632: \$? = $ac_status" >&5
+  (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 1636 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+echo "$as_me:1652: checking for C compiler default output" >&5
+echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+if { (eval echo "$as_me:1655: \"$ac_link_default\"") >&5
+  (eval $ac_link_default) 2>&5
+  ac_status=$?
+  echo "$as_me:1658: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # Find the output, starting from the most likely.  This scheme is
+# not robust to junk in `.', hence go to wildcards (a.*) only as a last
+# resort.
+for ac_file in `ls a.exe conftest.exe 2>/dev/null;
+                ls a.out conftest 2>/dev/null;
+                ls a.* conftest.* 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.dbg | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
+    a.out ) # We found the default executable, but exeext='' is most
+            # certainly right.
+            break;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+          # FIXME: I believe we export ac_cv_exeext for Libtool --akim.
+          export ac_cv_exeext
+          break;;
+    * ) break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+{ { echo "$as_me:1681: error: C compiler cannot create executables" >&5
+echo "$as_me: error: C compiler cannot create executables" >&2;}
+   { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+echo "$as_me:1687: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6
+
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:1692: checking whether the C compiler works" >&5
+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+  if { ac_try='./$ac_file'
+  { (eval echo "$as_me:1698: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1701: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+    cross_compiling=no
+  else
+    if test "$cross_compiling" = maybe; then
+	cross_compiling=yes
+    else
+	{ { echo "$as_me:1708: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'." >&5
+echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'." >&2;}
+   { (exit 1); exit 1; }; }
+    fi
+  fi
+fi
+echo "$as_me:1716: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+rm -f a.out a.exe conftest$ac_cv_exeext
+ac_clean_files=$ac_clean_files_save
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:1723: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
+echo "$as_me:1725: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6
+
+echo "$as_me:1728: checking for executable suffix" >&5
+echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
+if { (eval echo "$as_me:1730: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:1733: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in `(ls conftest.exe; ls conftest; ls conftest.*) 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.dbg | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+          export ac_cv_exeext
+          break;;
+    * ) break;;
+  esac
+done
+else
+  { { echo "$as_me:1749: error: cannot compute EXEEXT: cannot compile and link" >&5
+echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest$ac_cv_exeext
+echo "$as_me:1755: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+echo "$as_me:1761: checking for object suffix" >&5
+echo $ECHO_N "checking for object suffix... $ECHO_C" >&6
+if test "${ac_cv_objext+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1767 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (eval echo "$as_me:1779: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1782: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.dbg | *.pdb | *.xSYM | *.map | *.inf ) ;;
+    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+       break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+{ { echo "$as_me:1794: error: cannot compute OBJEXT: cannot compile" >&5
+echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+echo "$as_me:1801: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+echo "$as_me:1805: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1811 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+#ifndef __GNUC__
+       choke me
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1826: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1829: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1832: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1835: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_compiler_gnu=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_compiler_gnu=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:1847: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+CFLAGS="-g"
+echo "$as_me:1853: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_g+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1859 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1871: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1874: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1877: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1880: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_prog_cc_g=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_prog_cc_g=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:1890: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+if test "$ac_test_CFLAGS" = set; then
+  CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+  if test "$GCC" = yes; then
+    CFLAGS="-g -O2"
+  else
+    CFLAGS="-g"
+  fi
+else
+  if test "$GCC" = yes; then
+    CFLAGS="-O2"
+  else
+    CFLAGS=
+  fi
+fi
+# Some people use a C++ compiler to compile C.  Since we use `exit',
+# in C++ we need to declare it.  In case someone uses the same compiler
+# for both compiling C and C++ we need to have the C++ compiler decide
+# the declaration of exit, since it's the most demanding environment.
+cat >conftest.$ac_ext <<_ACEOF
+#ifndef __cplusplus
+  choke me
+#endif
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1917: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1920: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1923: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1926: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  for ac_declaration in \
+   ''\
+   '#include <stdlib.h>' \
+   'extern "C" void std::exit (int) throw (); using std::exit;' \
+   'extern "C" void std::exit (int); using std::exit;' \
+   'extern "C" void exit (int) throw ();' \
+   'extern "C" void exit (int);' \
+   'void exit (int);'
+do
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1938 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+$ac_declaration
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1951: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1954: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1957: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1960: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+continue
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1970 "configure"
+#include "confdefs.h"
+$ac_declaration
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1982: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1985: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1988: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1991: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+rm -rf conftest*
+if test -n "$ac_declaration"; then
+  echo '#ifdef __cplusplus' >>confdefs.h
+  echo $ac_declaration      >>confdefs.h
+  echo '#endif'             >>confdefs.h
+fi
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ac_main_return=return
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ac_main_return=return
+echo "$as_me:2025: checking how to run the C preprocessor" >&5
+echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+  CPP=
+fi
+if test -z "$CPP"; then
+  if test "${ac_cv_prog_CPP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+      # Double quotes because CPP needs to be expanded
+    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+    do
+      ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2046 "configure"
+#include "confdefs.h"
+#include <assert.h>
+                     Syntax error
+_ACEOF
+if { (eval echo "$as_me:2051: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2057: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether non-existent headers
+  # can be detected and how.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2080 "configure"
+#include "confdefs.h"
+#include <ac_nonexistent.h>
+_ACEOF
+if { (eval echo "$as_me:2084: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2090: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  # Broken: success on invalid input.
+continue
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+  break
+fi
+
+    done
+    ac_cv_prog_CPP=$CPP
+
+fi
+  CPP=$ac_cv_prog_CPP
+else
+  ac_cv_prog_CPP=$CPP
+fi
+echo "$as_me:2127: result: $CPP" >&5
+echo "${ECHO_T}$CPP" >&6
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2137 "configure"
+#include "confdefs.h"
+#include <assert.h>
+                     Syntax error
+_ACEOF
+if { (eval echo "$as_me:2142: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2148: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether non-existent headers
+  # can be detected and how.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2171 "configure"
+#include "confdefs.h"
+#include <ac_nonexistent.h>
+_ACEOF
+if { (eval echo "$as_me:2175: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2181: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  # Broken: success on invalid input.
+continue
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+  :
+else
+  { { echo "$as_me:2209: error: C preprocessor \"$CPP\" fails sanity check" >&5
+echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ac_main_return=return
+
+echo "$as_me:2221: checking whether ln -s works" >&5
+echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
+LN_S=$as_ln_s
+if test "$LN_S" = "ln -s"; then
+  echo "$as_me:2225: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+  echo "$as_me:2228: result: no, using $LN_S" >&5
+echo "${ECHO_T}no, using $LN_S" >&6
+fi
+
+case $host_os in
+mingw*)
+LN_S="cp -p"
+echo "$as_me:2235: result: Override: No symbolic links in mingw." >&5
+echo "${ECHO_T}Override: No symbolic links in mingw." >&6
+	;;
+*)
+	;;
+esac
+echo "$as_me:2241: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6
+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
+if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.make <<\EOF
+all:
+	@echo 'ac_maketemp="${MAKE}"'
+EOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
+if test -n "$ac_maketemp"; then
+  eval ac_cv_prog_make_${ac_make}_set=yes
+else
+  eval ac_cv_prog_make_${ac_make}_set=no
+fi
+rm -f conftest.make
+fi
+if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
+  echo "$as_me:2261: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+  SET_MAKE=
+else
+  echo "$as_me:2265: result: no" >&5
+echo "${ECHO_T}no" >&6
+  SET_MAKE="MAKE=${MAKE-make}"
+fi
+
+# Find a good install program.  We prefer a C program (faster),
+# so one script is as good as another.  But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# ./install, which can be erroneously created by make from ./install.sh.
+echo "$as_me:2282: checking for a BSD compatible install" >&5
+echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+    ac_save_IFS=$IFS; IFS=$ac_path_separator
+  for ac_dir in $PATH; do
+    IFS=$ac_save_IFS
+    # Account for people who put trailing slashes in PATH elements.
+    case $ac_dir/ in
+    / | ./ | .// | /cC/* \
+    | /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* \
+    | /usr/ucb/* ) ;;
+    *)
+      # OSF1 and SCO ODT 3.0 have their own names for install.
+      # Don't use installbsd from OSF since it installs stuff as root
+      # by default.
+      for ac_prog in ginstall scoinst install; do
+        if $as_executable_p "$ac_dir/$ac_prog"; then
+	  if test $ac_prog = install &&
+            grep dspmsg "$ac_dir/$ac_prog" >/dev/null 2>&1; then
+	    # AIX install.  It has an incompatible calling convention.
+	    :
+	  elif test $ac_prog = install &&
+	    grep pwplus "$ac_dir/$ac_prog" >/dev/null 2>&1; then
+	    # program-specific install script used by HP pwplus--don't use.
+	    :
+	  else
+	    ac_cv_path_install="$ac_dir/$ac_prog -c"
+	    break 2
+	  fi
+	fi
+      done
+      ;;
+    esac
+  done
+
+fi
+  if test "${ac_cv_path_install+set}" = set; then
+    INSTALL=$ac_cv_path_install
+  else
+    # As a last resort, use the slow shell script.  We don't cache a
+    # path for INSTALL within a source directory, because that will
+    # break other packages using the cache if that directory is
+    # removed, or if the path is relative.
+    INSTALL=$ac_install_sh
+  fi
+fi
+echo "$as_me:2331: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+for ac_prog in 'bison -y' byacc
+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 "$as_me:2346: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_YACC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$YACC"; then
+  ac_cv_prog_YACC="$YACC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_YACC="$ac_prog"
+echo "$as_me:2361: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+YACC=$ac_cv_prog_YACC
+if test -n "$YACC"; then
+  echo "$as_me:2369: result: $YACC" >&5
+echo "${ECHO_T}$YACC" >&6
+else
+  echo "$as_me:2372: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$YACC" && break
+done
+test -n "$YACC" || YACC="yacc"
+
+for ac_prog in tdlint lint alint splint lclint
+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 "$as_me:2384: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_LINT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$LINT"; then
+  ac_cv_prog_LINT="$LINT" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_LINT="$ac_prog"
+echo "$as_me:2399: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+LINT=$ac_cv_prog_LINT
+if test -n "$LINT"; then
+  echo "$as_me:2407: result: $LINT" >&5
+echo "${ECHO_T}$LINT" >&6
+else
+  echo "$as_me:2410: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$LINT" && break
+done
+
+echo "$as_me:2417: checking if filesystem supports mixed-case filenames" >&5
+echo $ECHO_N "checking if filesystem supports mixed-case filenames... $ECHO_C" >&6
+if test "${cf_cv_mixedcase+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+if test "$cross_compiling" = yes ; then
+	case $target_alias in #(vi
+	*-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
+		cf_cv_mixedcase=no
+		;;
+	*)
+		cf_cv_mixedcase=yes
+		;;
+	esac
+else
+	rm -f conftest CONFTEST
+	echo test >conftest
+	if test -f CONFTEST ; then
+		cf_cv_mixedcase=no
+	else
+		cf_cv_mixedcase=yes
+	fi
+	rm -f conftest CONFTEST
+fi
+
+fi
+echo "$as_me:2444: result: $cf_cv_mixedcase" >&5
+echo "${ECHO_T}$cf_cv_mixedcase" >&6
+test "$cf_cv_mixedcase" = yes && cat >>confdefs.h <<\EOF
+#define MIXEDCASE_FILENAMES 1
+EOF
+
+for ac_prog in exctags ctags
+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 "$as_me:2454: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CTAGS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CTAGS"; then
+  ac_cv_prog_CTAGS="$CTAGS" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CTAGS="$ac_prog"
+echo "$as_me:2469: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+CTAGS=$ac_cv_prog_CTAGS
+if test -n "$CTAGS"; then
+  echo "$as_me:2477: result: $CTAGS" >&5
+echo "${ECHO_T}$CTAGS" >&6
+else
+  echo "$as_me:2480: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$CTAGS" && break
+done
+
+for ac_prog in exetags etags
+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 "$as_me:2491: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ETAGS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ETAGS"; then
+  ac_cv_prog_ETAGS="$ETAGS" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ETAGS="$ac_prog"
+echo "$as_me:2506: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ETAGS=$ac_cv_prog_ETAGS
+if test -n "$ETAGS"; then
+  echo "$as_me:2514: result: $ETAGS" >&5
+echo "${ECHO_T}$ETAGS" >&6
+else
+  echo "$as_me:2517: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ETAGS" && break
+done
+
+# Extract the first word of "${CTAGS:-ctags}", so it can be a program name with args.
+set dummy ${CTAGS:-ctags}; ac_word=$2
+echo "$as_me:2526: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_MAKE_LOWER_TAGS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$MAKE_LOWER_TAGS"; then
+  ac_cv_prog_MAKE_LOWER_TAGS="$MAKE_LOWER_TAGS" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_MAKE_LOWER_TAGS="yes"
+echo "$as_me:2541: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_MAKE_LOWER_TAGS" && ac_cv_prog_MAKE_LOWER_TAGS="no"
+fi
+fi
+MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS
+if test -n "$MAKE_LOWER_TAGS"; then
+  echo "$as_me:2550: result: $MAKE_LOWER_TAGS" >&5
+echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6
+else
+  echo "$as_me:2553: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test "$cf_cv_mixedcase" = yes ; then
+	# Extract the first word of "${ETAGS:-etags}", so it can be a program name with args.
+set dummy ${ETAGS:-etags}; ac_word=$2
+echo "$as_me:2560: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_MAKE_UPPER_TAGS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$MAKE_UPPER_TAGS"; then
+  ac_cv_prog_MAKE_UPPER_TAGS="$MAKE_UPPER_TAGS" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_MAKE_UPPER_TAGS="yes"
+echo "$as_me:2575: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_MAKE_UPPER_TAGS" && ac_cv_prog_MAKE_UPPER_TAGS="no"
+fi
+fi
+MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS
+if test -n "$MAKE_UPPER_TAGS"; then
+  echo "$as_me:2584: result: $MAKE_UPPER_TAGS" >&5
+echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6
+else
+  echo "$as_me:2587: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+else
+	MAKE_UPPER_TAGS=no
+fi
+
+if test "$MAKE_UPPER_TAGS" = yes ; then
+	MAKE_UPPER_TAGS=
+else
+	MAKE_UPPER_TAGS="#"
+fi
+
+if test "$MAKE_LOWER_TAGS" = yes ; then
+	MAKE_LOWER_TAGS=
+else
+	MAKE_LOWER_TAGS="#"
+fi
+
+echo "$as_me:2607: checking for AIX" >&5
+echo $ECHO_N "checking for AIX... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 2610 "configure"
+#include "confdefs.h"
+#ifdef _AIX
+  yes
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "yes" >/dev/null 2>&1; then
+  echo "$as_me:2619: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+cat >>confdefs.h <<\EOF
+#define _ALL_SOURCE 1
+EOF
+
+else
+  echo "$as_me:2626: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+rm -rf conftest*
+
+echo "$as_me:2631: checking for POSIXized ISC" >&5
+echo $ECHO_N "checking for POSIXized ISC... $ECHO_C" >&6
+if test -d /etc/conf/kconfig.d &&
+   grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
+then
+  echo "$as_me:2636: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+  ISC=yes # If later tests want to check for ISC.
+
+cat >>confdefs.h <<\EOF
+#define _POSIX_SOURCE 1
+EOF
+
+  if test "$GCC" = yes; then
+    CC="$CC -posix"
+  else
+    CC="$CC -Xp"
+  fi
+else
+  echo "$as_me:2650: result: no" >&5
+echo "${ECHO_T}no" >&6
+  ISC=
+fi
+
+case $cf_cv_system_name in
+os2*)
+    CFLAGS="$CFLAGS -Zmt"
+    CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__"
+    CXXFLAGS="$CXXFLAGS -Zmt"
+    # autoconf's macro sets -Zexe and suffix both, which conflict:w
+    LDFLAGS="$LDFLAGS -Zmt -Zcrtdll"
+    ac_cv_exeext=.exe
+    ;;
+esac
+
+PROG_EXT="$EXEEXT"
+
+test -n "$PROG_EXT" && cat >>confdefs.h <<EOF
+#define PROG_EXT "$PROG_EXT"
+EOF
+
+if test "$cross_compiling" = yes ; then
+
+	# defaults that we might want to override
+	: ${BUILD_CFLAGS:=''}
+	: ${BUILD_CPPFLAGS:='#'}
+	: ${BUILD_LDFLAGS:=''}
+	: ${BUILD_LIBS:=''}
+	: ${BUILD_EXEEXT:='$x'}
+	: ${BUILD_OBJEXT:='o'}
+
+# Check whether --with-build-cc or --without-build-cc was given.
+if test "${with_build_cc+set}" = set; then
+  withval="$with_build_cc"
+  BUILD_CC="$withval"
+else
+  for ac_prog in gcc cc cl
+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 "$as_me:2691: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_BUILD_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$BUILD_CC"; then
+  ac_cv_prog_BUILD_CC="$BUILD_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_BUILD_CC="$ac_prog"
+echo "$as_me:2706: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+BUILD_CC=$ac_cv_prog_BUILD_CC
+if test -n "$BUILD_CC"; then
+  echo "$as_me:2714: result: $BUILD_CC" >&5
+echo "${ECHO_T}$BUILD_CC" >&6
+else
+  echo "$as_me:2717: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$BUILD_CC" && break
+done
+
+fi;
+	echo "$as_me:2725: checking for native build C compiler" >&5
+echo $ECHO_N "checking for native build C compiler... $ECHO_C" >&6
+	echo "$as_me:2727: result: $BUILD_CC" >&5
+echo "${ECHO_T}$BUILD_CC" >&6
+
+	echo "$as_me:2730: checking for native build C preprocessor" >&5
+echo $ECHO_N "checking for native build C preprocessor... $ECHO_C" >&6
+
+# Check whether --with-build-cpp or --without-build-cpp was given.
+if test "${with_build_cpp+set}" = set; then
+  withval="$with_build_cpp"
+  BUILD_CPP="$withval"
+else
+  BUILD_CPP='${BUILD_CC} -E'
+fi;
+	echo "$as_me:2740: result: $BUILD_CPP" >&5
+echo "${ECHO_T}$BUILD_CPP" >&6
+
+	echo "$as_me:2743: checking for native build C flags" >&5
+echo $ECHO_N "checking for native build C flags... $ECHO_C" >&6
+
+# Check whether --with-build-cflags or --without-build-cflags was given.
+if test "${with_build_cflags+set}" = set; then
+  withval="$with_build_cflags"
+  BUILD_CFLAGS="$withval"
+fi;
+	echo "$as_me:2751: result: $BUILD_CFLAGS" >&5
+echo "${ECHO_T}$BUILD_CFLAGS" >&6
+
+	echo "$as_me:2754: checking for native build C preprocessor-flags" >&5
+echo $ECHO_N "checking for native build C preprocessor-flags... $ECHO_C" >&6
+
+# Check whether --with-build-cppflags or --without-build-cppflags was given.
+if test "${with_build_cppflags+set}" = set; then
+  withval="$with_build_cppflags"
+  BUILD_CPPFLAGS="$withval"
+fi;
+	echo "$as_me:2762: result: $BUILD_CPPFLAGS" >&5
+echo "${ECHO_T}$BUILD_CPPFLAGS" >&6
+
+	echo "$as_me:2765: checking for native build linker-flags" >&5
+echo $ECHO_N "checking for native build linker-flags... $ECHO_C" >&6
+
+# Check whether --with-build-ldflags or --without-build-ldflags was given.
+if test "${with_build_ldflags+set}" = set; then
+  withval="$with_build_ldflags"
+  BUILD_LDFLAGS="$withval"
+fi;
+	echo "$as_me:2773: result: $BUILD_LDFLAGS" >&5
+echo "${ECHO_T}$BUILD_LDFLAGS" >&6
+
+	echo "$as_me:2776: checking for native build linker-libraries" >&5
+echo $ECHO_N "checking for native build linker-libraries... $ECHO_C" >&6
+
+# Check whether --with-build-libs or --without-build-libs was given.
+if test "${with_build_libs+set}" = set; then
+  withval="$with_build_libs"
+  BUILD_LIBS="$withval"
+fi;
+	echo "$as_me:2784: result: $BUILD_LIBS" >&5
+echo "${ECHO_T}$BUILD_LIBS" >&6
+
+	# this assumes we're on Unix.
+	BUILD_EXEEXT=
+	BUILD_OBJEXT=o
+
+	: ${BUILD_CC:='${CC}'}
+
+	if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then
+		{ { echo "$as_me:2794: error: Cross-build requires two compilers.
+Use --with-build-cc to specify the native compiler." >&5
+echo "$as_me: error: Cross-build requires two compilers.
+Use --with-build-cc to specify the native compiler." >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+
+else
+	: ${BUILD_CC:='${CC}'}
+	: ${BUILD_CPP:='${CPP}'}
+	: ${BUILD_CFLAGS:='${CFLAGS}'}
+	: ${BUILD_CPPFLAGS:='${CPPFLAGS}'}
+	: ${BUILD_LDFLAGS:='${LDFLAGS}'}
+	: ${BUILD_LIBS:='${LIBS}'}
+	: ${BUILD_EXEEXT:='$x'}
+	: ${BUILD_OBJEXT:='o'}
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+echo "$as_me:2815: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$RANLIB"; then
+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+echo "$as_me:2830: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+  echo "$as_me:2838: result: $RANLIB" >&5
+echo "${ECHO_T}$RANLIB" >&6
+else
+  echo "$as_me:2841: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+  ac_ct_RANLIB=$RANLIB
+  # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+echo "$as_me:2850: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_RANLIB"; then
+  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_RANLIB="ranlib"
+echo "$as_me:2865: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB="':'"
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+  echo "$as_me:2874: result: $ac_ct_RANLIB" >&5
+echo "${ECHO_T}$ac_ct_RANLIB" >&6
+else
+  echo "$as_me:2877: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  RANLIB=$ac_ct_RANLIB
+else
+  RANLIB="$ac_cv_prog_RANLIB"
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ar; ac_word=$2
+echo "$as_me:2889: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$AR"; then
+  ac_cv_prog_AR="$AR" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_AR="${ac_tool_prefix}ar"
+echo "$as_me:2904: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+AR=$ac_cv_prog_AR
+if test -n "$AR"; then
+  echo "$as_me:2912: result: $AR" >&5
+echo "${ECHO_T}$AR" >&6
+else
+  echo "$as_me:2915: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_AR"; then
+  ac_ct_AR=$AR
+  # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
+echo "$as_me:2924: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_AR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_AR"; then
+  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_AR="ar"
+echo "$as_me:2939: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_ac_ct_AR" && ac_cv_prog_ac_ct_AR="ar"
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+  echo "$as_me:2948: result: $ac_ct_AR" >&5
+echo "${ECHO_T}$ac_ct_AR" >&6
+else
+  echo "$as_me:2951: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  AR=$ac_ct_AR
+else
+  AR="$ac_cv_prog_AR"
+fi
+
+echo "$as_me:2960: checking for options to update archives" >&5
+echo $ECHO_N "checking for options to update archives... $ECHO_C" >&6
+if test "${cf_cv_ar_flags+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_cv_ar_flags=unknown
+	for cf_ar_flags in -curv curv -crv crv -cqv cqv -rv rv
+	do
+
+		# check if $ARFLAGS already contains this choice
+		if test "x$ARFLAGS" != "x" ; then
+			cf_check_ar_flags=`echo "x$ARFLAGS" | sed -e "s/$cf_ar_flags\$//" -e "s/$cf_ar_flags / /"`
+			if test "x$ARFLAGS" != "$cf_check_ar_flags" ; then
+				cf_cv_ar_flags=
+				break
+			fi
+		fi
+
+		rm -f conftest.$ac_cv_objext
+		rm -f conftest.a
+
+		cat >conftest.$ac_ext <<EOF
+#line 2983 "configure"
+int	testdata[3] = { 123, 456, 789 };
+EOF
+		if { (eval echo "$as_me:2986: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:2989: \$? = $ac_status" >&5
+  (exit $ac_status); } ; then
+			echo "$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext" >&5
+			$AR $ARFLAGS $cf_ar_flags conftest.a conftest.$ac_cv_objext 2>&5 1>/dev/null
+			if test -f conftest.a ; then
+				cf_cv_ar_flags=$cf_ar_flags
+				break
+			fi
+		else
+			test -n "$verbose" && echo "	cannot compile test-program" 1>&6
+
+echo "${as_me:-configure}:3000: testing cannot compile test-program ..." 1>&5
+
+			break
+		fi
+	done
+	rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext
+
+fi
+echo "$as_me:3008: result: $cf_cv_ar_flags" >&5
+echo "${ECHO_T}$cf_cv_ar_flags" >&6
+
+if test -n "$ARFLAGS" ; then
+	if test -n "$cf_cv_ar_flags" ; then
+		ARFLAGS="$ARFLAGS $cf_cv_ar_flags"
+	fi
+else
+	ARFLAGS=$cf_cv_ar_flags
+fi
+
+echo "$as_me:3019: checking if you want to see long compiling messages" >&5
+echo $ECHO_N "checking if you want to see long compiling messages... $ECHO_C" >&6
+
+# Check whether --enable-echo or --disable-echo was given.
+if test "${enable_echo+set}" = set; then
+  enableval="$enable_echo"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+
+    ECHO_LT='--silent'
+    ECHO_LD='@echo linking $@;'
+    RULE_CC='@echo compiling $<'
+    SHOW_CC='@echo compiling $@'
+    ECHO_CC='@'
+
+  else
+
+    ECHO_LT=''
+    ECHO_LD=''
+    RULE_CC=''
+    SHOW_CC=''
+    ECHO_CC=''
+
+  fi
+else
+  enableval=yes
+
+    ECHO_LT=''
+    ECHO_LD=''
+    RULE_CC=''
+    SHOW_CC=''
+    ECHO_CC=''
+
+fi;
+echo "$as_me:3053: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+# special case for WWW/*
+if test -n "$ECHO_CC" ; then
+	DONT_ECHO_CC="$SHOW_CC ;"
+else
+	DONT_ECHO_CC=''
+fi
+
+echo "$as_me:3063: checking if you want to check memory-leaks" >&5
+echo $ECHO_N "checking if you want to check memory-leaks... $ECHO_C" >&6
+
+# Check whether --enable-find-leaks or --disable-find-leaks was given.
+if test "${enable_find_leaks+set}" = set; then
+  enableval="$enable_find_leaks"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    with_leak_checks=yes
+  else
+    with_leak_checks=no
+  fi
+else
+  enableval=no
+  with_leak_checks=no
+
+fi;
+echo "$as_me:3080: result: $with_leak_checks" >&5
+echo "${ECHO_T}$with_leak_checks" >&6
+test "$with_leak_checks" = "yes" && cat >>confdefs.h <<\EOF
+#define LY_FIND_LEAKS 1
+EOF
+
+# The comment about adding -g to $CFLAGS is unclear.  Autoconf tries to add
+# a -g flag; we remove it if the user's $CFLAGS was not set and debugging is
+# disabled.
+echo "$as_me:3089: checking if you want to enable debug-code" >&5
+echo $ECHO_N "checking if you want to enable debug-code... $ECHO_C" >&6
+
+# Check whether --enable-debug or --disable-debug was given.
+if test "${enable_debug+set}" = set; then
+  enableval="$enable_debug"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    with_debug=yes
+  else
+    with_debug=no
+  fi
+else
+  enableval=no
+  with_debug=no
+
+fi;
+echo "$as_me:3106: result: $with_debug" >&5
+echo "${ECHO_T}$with_debug" >&6
+if test "$with_debug" = "yes" ; then
+	case $host_os in
+	ultrix*|osf*)
+		test -z "$ORIGINAL_CFLAGS" &&
+CFLAGS=`echo ${CFLAGS} | sed -e 's/-O[1-9]\? //' -e 's/-O[1-9]\?$//'`
+
+		if test -z "$GCC" ; then
+			CFLAGS="$CFLAGS -g3"
+		fi
+		;;
+	esac
+else
+	case $host_os in
+	osf*) #(vi
+		test -z "$GCC" && CFLAGS="$CFLAGS -std1"
+		test -z "$ORIGINAL_CFLAGS" && CFLAGS=`echo ${CFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'`
+		;;
+	*)
+		test -z "$ORIGINAL_CFLAGS" && CFLAGS=`echo ${CFLAGS} | sed -e 's%-g %%' -e 's%-g$%%'`
+		;;
+	esac
+fi
+
+echo "$as_me:3131: checking if you want to enable lynx trace code *recommended* " >&5
+echo $ECHO_N "checking if you want to enable lynx trace code *recommended* ... $ECHO_C" >&6
+
+# Check whether --enable-trace or --disable-trace was given.
+if test "${enable_trace+set}" = set; then
+  enableval="$enable_trace"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    with_trace=$enableval
+  else
+    with_trace=yes
+  fi
+else
+  enableval=yes
+  with_trace=yes
+
+fi;
+echo "$as_me:3148: result: $with_trace" >&5
+echo "${ECHO_T}$with_trace" >&6
+test $with_trace = no && cat >>confdefs.h <<\EOF
+#define NO_LYNX_TRACE 1
+EOF
+
+echo "$as_me:3154: checking if you want verbose trace code" >&5
+echo $ECHO_N "checking if you want verbose trace code... $ECHO_C" >&6
+
+# Check whether --enable-vertrace or --disable-vertrace was given.
+if test "${enable_vertrace+set}" = set; then
+  enableval="$enable_vertrace"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    with_vertrace=yes
+  else
+    with_vertrace=no
+  fi
+else
+  enableval=no
+  with_vertrace=no
+
+fi;
+echo "$as_me:3171: result: $with_vertrace" >&5
+echo "${ECHO_T}$with_vertrace" >&6
+test $with_vertrace = yes && cat >>confdefs.h <<\EOF
+#define LY_TRACELINE __LINE__
+EOF
+
+if test -n "$GCC"
+then
+echo "$as_me:3179: checking if you want to turn on gcc warnings" >&5
+echo $ECHO_N "checking if you want to turn on gcc warnings... $ECHO_C" >&6
+
+# Check whether --enable-warnings or --disable-warnings was given.
+if test "${enable_warnings+set}" = set; then
+  enableval="$enable_warnings"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    with_warnings=yes
+  else
+    with_warnings=no
+  fi
+else
+  enableval=no
+  with_warnings=no
+
+fi;
+echo "$as_me:3196: result: $with_warnings" >&5
+echo "${ECHO_T}$with_warnings" >&6
+if test "$with_warnings" = "yes"
+then
+
+if test "$GCC" = yes
+then
+cat > conftest.i <<EOF
+#ifndef GCC_PRINTF
+#define GCC_PRINTF 0
+#endif
+#ifndef GCC_SCANF
+#define GCC_SCANF 0
+#endif
+#ifndef GCC_NORETURN
+#define GCC_NORETURN /* nothing */
+#endif
+#ifndef GCC_UNUSED
+#define GCC_UNUSED /* nothing */
+#endif
+EOF
+if test "$GCC" = yes
+then
+	{ echo "$as_me:3219: checking for $CC __attribute__ directives..." >&5
+echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
+cat > conftest.$ac_ext <<EOF
+#line 3222 "${as_me:-configure}"
+#include "confdefs.h"
+#include "conftest.h"
+#include "conftest.i"
+#if	GCC_PRINTF
+#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
+#else
+#define GCC_PRINTFLIKE(fmt,var) /*nothing*/
+#endif
+#if	GCC_SCANF
+#define GCC_SCANFLIKE(fmt,var)  __attribute__((format(scanf,fmt,var)))
+#else
+#define GCC_SCANFLIKE(fmt,var)  /*nothing*/
+#endif
+extern void wow(char *,...) GCC_SCANFLIKE(1,2);
+extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
+extern void foo(void) GCC_NORETURN;
+int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; }
+EOF
+	cf_printf_attribute=no
+	cf_scanf_attribute=no
+	for cf_attribute in scanf printf unused noreturn
+	do
+
+cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+		cf_directive="__attribute__(($cf_attribute))"
+		echo "checking for $CC $cf_directive" 1>&5
+
+		case $cf_attribute in #(vi
+		printf) #(vi
+			cf_printf_attribute=yes
+			cat >conftest.h <<EOF
+#define GCC_$cf_ATTRIBUTE 1
+EOF
+			;;
+		scanf) #(vi
+			cf_scanf_attribute=yes
+			cat >conftest.h <<EOF
+#define GCC_$cf_ATTRIBUTE 1
+EOF
+			;;
+		*) #(vi
+			cat >conftest.h <<EOF
+#define GCC_$cf_ATTRIBUTE $cf_directive
+EOF
+			;;
+		esac
+
+		if { (eval echo "$as_me:3271: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:3274: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+			test -n "$verbose" && echo "$as_me:3276: result: ... $cf_attribute" >&5
+echo "${ECHO_T}... $cf_attribute" >&6
+			cat conftest.h >>confdefs.h
+			case $cf_attribute in #(vi
+			printf) #(vi
+				if test "$cf_printf_attribute" = no ; then
+					cat >>confdefs.h <<EOF
+#define GCC_PRINTFLIKE(fmt,var) /* nothing */
+EOF
+				else
+					cat >>confdefs.h <<EOF
+#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
+EOF
+				fi
+				;;
+			scanf) #(vi
+				if test "$cf_scanf_attribute" = no ; then
+					cat >>confdefs.h <<EOF
+#define GCC_SCANFLIKE(fmt,var) /* nothing */
+EOF
+				else
+					cat >>confdefs.h <<EOF
+#define GCC_SCANFLIKE(fmt,var)  __attribute__((format(scanf,fmt,var)))
+EOF
+				fi
+				;;
+			esac
+		fi
+	done
+else
+	fgrep define conftest.i >>confdefs.h
+fi
+rm -rf conftest*
+fi
+
+GCC_VERSION=none
+if test "$GCC" = yes ; then
+	echo "$as_me:3313: checking version of $CC" >&5
+echo $ECHO_N "checking version of $CC... $ECHO_C" >&6
+	GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
+	test -z "$GCC_VERSION" && GCC_VERSION=unknown
+	echo "$as_me:3317: result: $GCC_VERSION" >&5
+echo "${ECHO_T}$GCC_VERSION" >&6
+fi
+
+INTEL_COMPILER=no
+
+if test "$GCC" = yes ; then
+	case $host_os in
+	linux*|gnu*)
+		echo "$as_me:3326: checking if this is really Intel C compiler" >&5
+echo $ECHO_N "checking if this is really Intel C compiler... $ECHO_C" >&6
+		cf_save_CFLAGS="$CFLAGS"
+		CFLAGS="$CFLAGS -no-gcc"
+		cat >conftest.$ac_ext <<_ACEOF
+#line 3331 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+#ifdef __INTEL_COMPILER
+#else
+make an error
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:3348: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:3351: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:3354: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:3357: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  INTEL_COMPILER=yes
+cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+		CFLAGS="$cf_save_CFLAGS"
+		echo "$as_me:3368: result: $INTEL_COMPILER" >&5
+echo "${ECHO_T}$INTEL_COMPILER" >&6
+		;;
+	esac
+fi
+
+cat > conftest.$ac_ext <<EOF
+#line 3375 "${as_me:-configure}"
+int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
+EOF
+
+if test "$INTEL_COMPILER" = yes
+then
+# The "-wdXXX" options suppress warnings:
+# remark #1419: external declaration in primary source file
+# remark #1683: explicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem)
+# remark #1684: conversion from pointer to same-sized integral type (potential portability problem)
+# remark #193: zero used for undefined preprocessing identifier
+# remark #593: variable "curs_sb_left_arrow" was set but never used
+# remark #810: conversion from "int" to "Dimension={unsigned short}" may lose significant bits
+# remark #869: parameter "tw" was never referenced
+# remark #981: operands are evaluated in unspecified order
+# warning #279: controlling expression is constant
+
+	{ echo "$as_me:3392: checking for $CC warning options..." >&5
+echo "$as_me: checking for $CC warning options..." >&6;}
+	cf_save_CFLAGS="$CFLAGS"
+	EXTRA_CFLAGS="-Wall"
+	for cf_opt in \
+		wd1419 \
+		wd1683 \
+		wd1684 \
+		wd193 \
+		wd593 \
+		wd279 \
+		wd810 \
+		wd869 \
+		wd981
+	do
+		CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
+		if { (eval echo "$as_me:3408: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:3411: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+			test -n "$verbose" && echo "$as_me:3413: result: ... -$cf_opt" >&5
+echo "${ECHO_T}... -$cf_opt" >&6
+			EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
+		fi
+	done
+	CFLAGS="$cf_save_CFLAGS"
+
+elif test "$GCC" = yes
+then
+	{ echo "$as_me:3422: checking for $CC warning options..." >&5
+echo "$as_me: checking for $CC warning options..." >&6;}
+	cf_save_CFLAGS="$CFLAGS"
+	EXTRA_CFLAGS=
+	cf_warn_CONST=""
+	test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
+	for cf_opt in W Wall \
+		Wbad-function-cast \
+		Wcast-align \
+		Wcast-qual \
+		Winline \
+		Wmissing-declarations \
+		Wmissing-prototypes \
+		Wnested-externs \
+		Wpointer-arith \
+		Wshadow \
+		Wstrict-prototypes \
+		Wundef $cf_warn_CONST
+	do
+		CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
+		if { (eval echo "$as_me:3442: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:3445: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+			test -n "$verbose" && echo "$as_me:3447: result: ... -$cf_opt" >&5
+echo "${ECHO_T}... -$cf_opt" >&6
+			case $cf_opt in #(vi
+			Wcast-qual) #(vi
+				CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES"
+				;;
+			Winline) #(vi
+				case $GCC_VERSION in
+				[34].*)
+					test -n "$verbose" && echo "	feature is broken in gcc $GCC_VERSION" 1>&6
+
+echo "${as_me:-configure}:3458: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
+
+					continue;;
+				esac
+				;;
+			esac
+			EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
+		fi
+	done
+	CFLAGS="$cf_save_CFLAGS"
+fi
+rm -rf conftest*
+
+fi
+fi
+
+echo "$as_me:3474: checking if you want to use dbmalloc for testing" >&5
+echo $ECHO_N "checking if you want to use dbmalloc for testing... $ECHO_C" >&6
+
+# Check whether --with-dbmalloc or --without-dbmalloc was given.
+if test "${with_dbmalloc+set}" = set; then
+  withval="$with_dbmalloc"
+  cat >>confdefs.h <<\EOF
+#define USE_DBMALLOC 1
+EOF
+
+	: ${with_cflags:=-g}
+	: ${with_no_leaks:=yes}
+	 with_dbmalloc=yes
+else
+  with_dbmalloc=
+fi;
+echo "$as_me:3490: result: ${with_dbmalloc:-no}" >&5
+echo "${ECHO_T}${with_dbmalloc:-no}" >&6
+
+case .$with_cflags in #(vi
+.*-g*)
+	case .$CFLAGS in #(vi
+	.*-g*) #(vi
+		;;
+	*)
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in -g
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+		;;
+	esac
+	;;
+esac
+
+if test "$with_dbmalloc" = yes ; then
+	echo "$as_me:3584: checking for dbmalloc.h" >&5
+echo $ECHO_N "checking for dbmalloc.h... $ECHO_C" >&6
+if test "${ac_cv_header_dbmalloc_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 3590 "configure"
+#include "confdefs.h"
+#include <dbmalloc.h>
+_ACEOF
+if { (eval echo "$as_me:3594: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:3600: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  ac_cv_header_dbmalloc_h=yes
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  ac_cv_header_dbmalloc_h=no
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:3619: result: $ac_cv_header_dbmalloc_h" >&5
+echo "${ECHO_T}$ac_cv_header_dbmalloc_h" >&6
+if test $ac_cv_header_dbmalloc_h = yes; then
+
+echo "$as_me:3623: checking for debug_malloc in -ldbmalloc" >&5
+echo $ECHO_N "checking for debug_malloc in -ldbmalloc... $ECHO_C" >&6
+if test "${ac_cv_lib_dbmalloc_debug_malloc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldbmalloc  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 3631 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char debug_malloc ();
+int
+main ()
+{
+debug_malloc ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:3650: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:3653: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:3656: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:3659: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dbmalloc_debug_malloc=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dbmalloc_debug_malloc=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:3670: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5
+echo "${ECHO_T}$ac_cv_lib_dbmalloc_debug_malloc" >&6
+if test $ac_cv_lib_dbmalloc_debug_malloc = yes; then
+  cat >>confdefs.h <<EOF
+#define HAVE_LIBDBMALLOC 1
+EOF
+
+  LIBS="-ldbmalloc $LIBS"
+
+fi
+
+fi
+
+fi
+
+echo "$as_me:3685: checking if you want to use dmalloc for testing" >&5
+echo $ECHO_N "checking if you want to use dmalloc for testing... $ECHO_C" >&6
+
+# Check whether --with-dmalloc or --without-dmalloc was given.
+if test "${with_dmalloc+set}" = set; then
+  withval="$with_dmalloc"
+  cat >>confdefs.h <<\EOF
+#define USE_DMALLOC 1
+EOF
+
+	: ${with_cflags:=-g}
+	: ${with_no_leaks:=yes}
+	 with_dmalloc=yes
+else
+  with_dmalloc=
+fi;
+echo "$as_me:3701: result: ${with_dmalloc:-no}" >&5
+echo "${ECHO_T}${with_dmalloc:-no}" >&6
+
+case .$with_cflags in #(vi
+.*-g*)
+	case .$CFLAGS in #(vi
+	.*-g*) #(vi
+		;;
+	*)
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in -g
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+		;;
+	esac
+	;;
+esac
+
+if test "$with_dmalloc" = yes ; then
+	echo "$as_me:3795: checking for dmalloc.h" >&5
+echo $ECHO_N "checking for dmalloc.h... $ECHO_C" >&6
+if test "${ac_cv_header_dmalloc_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 3801 "configure"
+#include "confdefs.h"
+#include <dmalloc.h>
+_ACEOF
+if { (eval echo "$as_me:3805: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:3811: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  ac_cv_header_dmalloc_h=yes
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  ac_cv_header_dmalloc_h=no
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:3830: result: $ac_cv_header_dmalloc_h" >&5
+echo "${ECHO_T}$ac_cv_header_dmalloc_h" >&6
+if test $ac_cv_header_dmalloc_h = yes; then
+
+echo "$as_me:3834: checking for dmalloc_debug in -ldmalloc" >&5
+echo $ECHO_N "checking for dmalloc_debug in -ldmalloc... $ECHO_C" >&6
+if test "${ac_cv_lib_dmalloc_dmalloc_debug+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldmalloc  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 3842 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char dmalloc_debug ();
+int
+main ()
+{
+dmalloc_debug ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:3861: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:3864: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:3867: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:3870: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dmalloc_dmalloc_debug=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dmalloc_dmalloc_debug=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:3881: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5
+echo "${ECHO_T}$ac_cv_lib_dmalloc_dmalloc_debug" >&6
+if test $ac_cv_lib_dmalloc_dmalloc_debug = yes; then
+  cat >>confdefs.h <<EOF
+#define HAVE_LIBDMALLOC 1
+EOF
+
+  LIBS="-ldmalloc $LIBS"
+
+fi
+
+fi
+
+fi
+
+cat >>confdefs.h <<\EOF
+#define UNIX 1
+EOF
+
+echo "$as_me:3900: checking for $CC option to accept ANSI C" >&5
+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_stdc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_prog_cc_stdc=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+#line 3908 "configure"
+#include "confdefs.h"
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
+  ;
+  return 0;
+}
+_ACEOF
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX			-qlanglvl=ansi
+# Ultrix and OSF/1	-std1
+# HP-UX 10.20 and later	-Ae
+# HP-UX older versions	-Aa -D_HPUX_SOURCE
+# SVR4			-Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+  CC="$ac_save_CC $ac_arg"
+  rm -f conftest.$ac_objext
+if { (eval echo "$as_me:3957: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:3960: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:3963: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:3966: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_prog_cc_stdc=$ac_arg
+break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext
+done
+rm -f conftest.$ac_ext conftest.$ac_objext
+CC=$ac_save_CC
+
+fi
+
+case "x$ac_cv_prog_cc_stdc" in
+  x|xno)
+    echo "$as_me:3983: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6 ;;
+  *)
+    echo "$as_me:3986: result: $ac_cv_prog_cc_stdc" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
+    CC="$CC $ac_cv_prog_cc_stdc" ;;
+esac
+
+echo "$as_me:3991: checking for an ANSI C-conforming const" >&5
+echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6
+if test "${ac_cv_c_const+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 3997 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+/* FIXME: Include the comments suggested by Paul. */
+#ifndef __cplusplus
+  /* Ultrix mips cc rejects this.  */
+  typedef int charset[2];
+  const charset x;
+  /* SunOS 4.1.1 cc rejects this.  */
+  char const *const *ccp;
+  char **p;
+  /* NEC SVR4.0.2 mips cc rejects this.  */
+  struct point {int x, y;};
+  static struct point const zero = {0,0};
+  /* AIX XL C 1.02.0.0 rejects this.
+     It does not let you subtract one const X* pointer from another in
+     an arm of an if-expression whose if-part is not a constant
+     expression */
+  const char *g = "string";
+  ccp = &g + (g ? g-g : 0);
+  /* HPUX 7.0 cc rejects these. */
+  ++ccp;
+  p = (char**) ccp;
+  ccp = (char const *const *) p;
+  { /* SCO 3.2v4 cc rejects this.  */
+    char *t;
+    char const *s = 0 ? (char *) 0 : (char const *) 0;
+
+    *t++ = 0;
+  }
+  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
+    int x[] = {25, 17};
+    const int *foo = &x[0];
+    ++foo;
+  }
+  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
+    typedef const int *iptr;
+    iptr p = 0;
+    ++p;
+  }
+  { /* AIX XL C 1.02.0.0 rejects this saying
+       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
+    struct s { int j; const int *ap[3]; };
+    struct s *b; b->j = 5;
+  }
+  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
+    const int foo = 10;
+  }
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:4055: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:4058: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:4061: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4064: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_const=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_c_const=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:4074: result: $ac_cv_c_const" >&5
+echo "${ECHO_T}$ac_cv_c_const" >&6
+if test $ac_cv_c_const = no; then
+
+cat >>confdefs.h <<\EOF
+#define const
+EOF
+
+fi
+
+case $cf_cv_system_name in
+os2*)
+    CFLAGS="$CFLAGS -Zmt"
+    CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__"
+    CXXFLAGS="$CXXFLAGS -Zmt"
+    # autoconf's macro sets -Zexe and suffix both, which conflict:w
+    LDFLAGS="$LDFLAGS -Zmt -Zcrtdll"
+    ac_cv_exeext=.exe
+    ;;
+esac
+
+PROG_EXT="$EXEEXT"
+
+test -n "$PROG_EXT" && cat >>confdefs.h <<EOF
+#define PROG_EXT "$PROG_EXT"
+EOF
+
+TRY_CFLAGS=
+case $host_os in
+aix4*)
+	TRY_CFLAGS="$TRY_CFLAGS -DAIX4 -D_BSD=44 -D_AIX"
+	LIBS="$LIBS -lbsd"
+	;;
+aix*)
+	TRY_CFLAGS="$TRY_CFLAGS -D_ACS_COMPAT_CODE"
+	LIBS="$LIBS -lbsd"
+	;;
+apollo*)
+	TRY_CFLAGS="$TRY_CFLAGS -D_BUILTINS -W0,-opt,4"
+	;;
+bsdi*)
+	TRY_CFLAGS="$TRY_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 "$as_me:4122: checking for strcmp in -lc_s" >&5
+echo $ECHO_N "checking for strcmp in -lc_s... $ECHO_C" >&6
+if test "${ac_cv_lib_c_s_strcmp+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lc_s  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 4130 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char strcmp ();
+int
+main ()
+{
+strcmp ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:4149: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:4152: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:4155: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4158: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_c_s_strcmp=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_c_s_strcmp=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:4169: result: $ac_cv_lib_c_s_strcmp" >&5
+echo "${ECHO_T}$ac_cv_lib_c_s_strcmp" >&6
+if test $ac_cv_lib_c_s_strcmp = yes; then
+  cat >>confdefs.h <<EOF
+#define HAVE_LIBC_S 1
+EOF
+
+  LIBS="-lc_s $LIBS"
+
+fi
+
+	;;
+convex*)
+	TRY_CFLAGS="$TRY_CFLAGS -D__STDC__ -Dunix"
+	;;
+cygwin*)
+	TRY_CFLAGS="$TRY_CFLAGS -DWIN_EX -D_WINDOWS_NSL"
+	LIBS="$LIBS -luser32"
+	;;
+dgux*)
+	TRY_CFLAGS="$TRY_CFLAGS -DDGUX"
+	;;
+hpux*)
+	TRY_CFLAGS="$TRY_CFLAGS -DSNAKE -D_XOPEN_SOURCE_EXTENDED"
+	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -Wp,-H600000 -DSYS_HPUX"
+	;;
+isc*)
+	# -DPOSIX_JC is necessary, else LYBookmark.c never finds out what a mode_t is.
+	TRY_CFLAGS="$TRY_CFLAGS -DISC -DPOSIX_JC"
+	LIBS="$LIBS -linet -lnsl_s -lcposix"
+	;;
+irix6.*) #(vi
+	TRY_CFLAGS="$TRY_CFLAGS -DSYS_IRIX64"
+	;;
+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.
+	;;
+linux*)
+	TRY_CFLAGS="$TRY_CFLAGS -DLINUX"
+	;;
+mingw*)
+	# put these directly in CPPFLAGS since they will not work in lynx_cfg.h
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in \
+		-DWIN32_LEAN_AND_MEAN \
+		-DDOSPATH \
+		-DNOSIGHUP \
+		-DNOUSERS \
+		-DWIN_EX \
+		-D_CONSOLE \
+		-D_MBCS \
+		-D_WINDOWS \
+		-D_WIN_CC \
+		-D__WIN32__ \
+
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	EXTRA_OBJS="$EXTRA_OBJS Xsystem\$o"
+	;;
+msdosdjgpp*)
+	LIBS="$LIBS -lwatt"
+	TRY_CFLAGS="$TRY_CFLAGS -DDOSPATH -DNOUSERS"
+	;;
+next*)
+	TRY_CFLAGS="$TRY_CFLAGS -DNEXT"
+	;;
+openbsd* | ekkobsd* | mirbsd*)
+	LIBS="$LIBS -lcompat"
+	;;
+osf4*)
+	# The -Olimit flag (see below) is no longer available with
+	# Digital C 5.2, which is bundled with Digital UNIX 4.0.
+	TRY_CFLAGS="$TRY_CFLAGS -DDSYS5 -DSYS_TRU64"
+	;;
+osf*)
+	# Increase the maximum size of functions that will be optimized.
+	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 4000"
+	TRY_CFLAGS="$TRY_CFLAGS -DDSYS5 -DSYS_TRU64"
+	;;
+sco3.2v5*)
+	test $ac_cv_c_compiler_gnu != yes && TRY_CFLAGS="$TRY_CFLAGS -belf"
+	;;
+sco*)
+	LIBS="$LIBS -lmalloc"
+	# It's a little late to do much, but try to warn user if he's using
+	# SCO's cc (which is reported to have broken const/volatile).
+	case "$CC" in #(vi
+	cc|*/cc)
+		{ echo "$as_me:4334: WARNING: You should consider using gcc or rcc if available" >&5
+echo "$as_me: WARNING: You should consider using gcc or rcc if available" >&2;}
+		unset ac_cv_prog_CC
+		for ac_prog in gcc rcc
+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 "$as_me:4341: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="$ac_prog"
+echo "$as_me:4356: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:4364: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:4367: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$CC" && break
+done
+test -n "$CC" || CC="$CC"
+
+		;;
+	esac
+	;;
+sequent-ptx)
+	TRY_CFLAGS="$TRY_CFLAGS -DSVR4_BSDSELECT -DNO_IOCTL -DUSE_FCNTL"
+	;;
+sequent-ptx2)
+	TRY_CFLAGS="$TRY_CFLAGS -DSVR4_BSDSELECT"
+	;;
+sony-newsos*)
+	TRY_CFLAGS="$TRY_CFLAGS -I/usr/sony/include"
+
+for ac_header in jcurses.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:4390: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 4396 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:4400: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:4406: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:4425: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+	;;
+svr4)
+	TRY_CFLAGS="$TRY_CFLAGS -DSVR4_BSDSELECT -DSVR4"
+	;;
+sunos3*)
+	TRY_CFLAGS="$TRY_CFLAGS -DSUN"
+	;;
+sunos4*)
+	TRY_CFLAGS="$TRY_CFLAGS -DSUN -DSUN4"
+	;;
+ultrix*)
+	# Increase the maximum size of functions that will be optimized.
+	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 600 -G 7"
+	TRY_CFLAGS="$TRY_CFLAGS -DULTRIX"
+
+for ac_header in cursesX.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:4453: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 4459 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:4463: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:4469: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:4488: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+ cat >>confdefs.h <<\EOF
+#define HAVE_CURSESX_H 1
+EOF
+
+		 cf_cv_ncurses_header=cursesX.h
+fi
+done
+
+	;;
+esac
+
+case $host_os in
+mingw*)
+	EXTRA_OBJS="$EXTRA_OBJS LYIcon\$o"
+	;;
+esac
+
+# This should have been defined by AC_PROG_CC
+: ${CC:=cc}
+
+# Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content
+# into CC.  This will not help with broken scripts that wrap the compiler with
+# options, but eliminates a more common category of user confusion.
+echo "$as_me:4517: checking \$CC variable" >&5
+echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6
+case "$CC" in #(vi
+*[\ \	]-[IUD]*)
+	echo "$as_me:4521: result: broken" >&5
+echo "${ECHO_T}broken" >&6
+	{ echo "$as_me:4523: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
+echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;}
+	# humor him...
+	cf_flags=`echo "$CC" | sed -e 's/^[^ 	]*[ 	]//'`
+	CC=`echo "$CC" | sed -e 's/[ 	].*//'`
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_flags
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	;;
+*)
+	echo "$as_me:4609: result: ok" >&5
+echo "${ECHO_T}ok" >&6
+	;;
+esac
+
+echo "$as_me:4614: checking for ${CC:-cc} option to accept ANSI C" >&5
+echo $ECHO_N "checking for ${CC:-cc} option to accept ANSI C... $ECHO_C" >&6
+if test "${cf_cv_ansi_cc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_ansi_cc=no
+cf_save_CFLAGS="$CFLAGS"
+cf_save_CPPFLAGS="$CPPFLAGS"
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX			-qlanglvl=ansi
+# Ultrix and OSF/1	-std1
+# HP-UX			-Aa -D_HPUX_SOURCE
+# SVR4			-Xc
+# UnixWare 1.2		(cannot use -Xc, since ANSI/POSIX clashes)
+for cf_arg in "-DCC_HAS_PROTOS" \
+	"" \
+	-qlanglvl=ansi \
+	-std1 \
+	-Ae \
+	"-Aa -D_HPUX_SOURCE" \
+	-Xc
+do
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_arg
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 4718 "configure"
+#include "confdefs.h"
+
+#ifndef CC_HAS_PROTOS
+#if !defined(__STDC__) || (__STDC__ != 1)
+choke me
+#endif
+#endif
+
+int
+main ()
+{
+
+	int test (int i, double x);
+	struct s1 {int (*f) (int a);};
+	struct s2 {int (*f) (double a);};
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:4739: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:4742: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:4745: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4748: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ansi_cc="$cf_arg"; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+CFLAGS="$cf_save_CFLAGS"
+CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+echo "$as_me:4761: result: $cf_cv_ansi_cc" >&5
+echo "${ECHO_T}$cf_cv_ansi_cc" >&6
+
+if test "$cf_cv_ansi_cc" != "no"; then
+if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_cv_ansi_cc
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+else
+	cat >>confdefs.h <<\EOF
+#define CC_HAS_PROTOS 1
+EOF
+
+fi
+fi
+
+if test "$cf_cv_ansi_cc" = "no"; then
+	{ { echo "$as_me:4854: error: Your compiler does not appear to recognize prototypes.
+You have the following choices:
+	a. adjust your compiler options
+	b. get an up-to-date compiler
+	c. use a wrapper such as unproto" >&5
+echo "$as_me: error: Your compiler does not appear to recognize prototypes.
+You have the following choices:
+	a. adjust your compiler options
+	b. get an up-to-date compiler
+	c. use a wrapper such as unproto" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# Check whether --enable-largefile or --disable-largefile was given.
+if test "${enable_largefile+set}" = set; then
+  enableval="$enable_largefile"
+
+fi;
+if test "$enable_largefile" != no; then
+
+  echo "$as_me:4874: checking for special C compiler options needed for large files" >&5
+echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_largefile_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_sys_largefile_CC=no
+     if test "$GCC" != yes; then
+       ac_save_CC=$CC
+       while :; do
+     	 # IRIX 6.2 and later do not support large files by default,
+     	 # so use the C compiler's -n32 option if that helps.
+         cat >conftest.$ac_ext <<_ACEOF
+#line 4886 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+     	 rm -f conftest.$ac_objext
+if { (eval echo "$as_me:4906: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:4909: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:4912: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4915: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext
+     	 CC="$CC -n32"
+     	 rm -f conftest.$ac_objext
+if { (eval echo "$as_me:4925: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:4928: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:4931: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4934: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_sys_largefile_CC=' -n32'; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext
+         break
+       done
+       CC=$ac_save_CC
+       rm -f conftest.$ac_ext
+    fi
+fi
+echo "$as_me:4948: result: $ac_cv_sys_largefile_CC" >&5
+echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6
+  if test "$ac_cv_sys_largefile_CC" != no; then
+    CC=$CC$ac_cv_sys_largefile_CC
+  fi
+
+  echo "$as_me:4954: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_file_offset_bits+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_file_offset_bits=no
+  cat >conftest.$ac_ext <<_ACEOF
+#line 4962 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:4982: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:4985: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:4988: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4991: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5000 "configure"
+#include "confdefs.h"
+#define _FILE_OFFSET_BITS 64
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5021: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5024: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5027: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5030: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_sys_file_offset_bits=64; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:5041: result: $ac_cv_sys_file_offset_bits" >&5
+echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6
+if test "$ac_cv_sys_file_offset_bits" != no; then
+
+cat >>confdefs.h <<EOF
+#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
+EOF
+
+fi
+rm -rf conftest*
+  echo "$as_me:5051: checking for _LARGE_FILES value needed for large files" >&5
+echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_large_files+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_large_files=no
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5059 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5079: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5082: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5085: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5088: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5097 "configure"
+#include "confdefs.h"
+#define _LARGE_FILES 1
+#include <sys/types.h>
+ /* Check that off_t can represent 2**63 - 1 correctly.
+    We can't simply define LARGE_OFF_T to be 9223372036854775807,
+    since some C++ compilers masquerading as C compilers
+    incorrectly reject 9223372036854775807.  */
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
+  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
+		       && LARGE_OFF_T % 2147483647 == 1)
+		      ? 1 : -1];
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5118: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5121: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5124: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5127: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_sys_large_files=1; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:5138: result: $ac_cv_sys_large_files" >&5
+echo "${ECHO_T}$ac_cv_sys_large_files" >&6
+if test "$ac_cv_sys_large_files" != no; then
+
+cat >>confdefs.h <<EOF
+#define _LARGE_FILES $ac_cv_sys_large_files
+EOF
+
+fi
+rm -rf conftest*
+fi
+
+    if test "$enable_largefile" != no ; then
+	echo "$as_me:5151: checking for _LARGEFILE_SOURCE value needed for large files" >&5
+echo $ECHO_N "checking for _LARGEFILE_SOURCE value needed for large files... $ECHO_C" >&6
+if test "${ac_cv_sys_largefile_source+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  while :; do
+  ac_cv_sys_largefile_source=no
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5159 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+return !fseeko;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5171: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5174: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5177: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5180: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5189 "configure"
+#include "confdefs.h"
+#define _LARGEFILE_SOURCE 1
+#include <stdio.h>
+int
+main ()
+{
+return !fseeko;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5202: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5205: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5208: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5211: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_sys_largefile_source=1; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  break
+done
+fi
+echo "$as_me:5222: result: $ac_cv_sys_largefile_source" >&5
+echo "${ECHO_T}$ac_cv_sys_largefile_source" >&6
+if test "$ac_cv_sys_largefile_source" != no; then
+
+cat >>confdefs.h <<EOF
+#define _LARGEFILE_SOURCE $ac_cv_sys_largefile_source
+EOF
+
+fi
+rm -rf conftest*
+
+# We used to try defining _XOPEN_SOURCE=500 too, to work around a bug
+# in glibc 2.1.3, but that breaks too many other things.
+# If you want fseeko and ftello with glibc, upgrade to a fixed glibc.
+echo "$as_me:5236: checking for fseeko" >&5
+echo $ECHO_N "checking for fseeko... $ECHO_C" >&6
+if test "${ac_cv_func_fseeko+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5242 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+return fseeko && fseeko (stdin, 0, 0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:5254: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:5257: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:5260: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5263: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_fseeko=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_fseeko=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:5273: result: $ac_cv_func_fseeko" >&5
+echo "${ECHO_T}$ac_cv_func_fseeko" >&6
+if test $ac_cv_func_fseeko = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_FSEEKO 1
+EOF
+
+fi
+
+	# Normally we would collect these definitions in the config.h,
+	# but (like _XOPEN_SOURCE), some environments rely on having these
+	# defined before any of the system headers are included.  Another
+	# case comes up with C++, e.g., on AIX the compiler compiles the
+	# header files by themselves before looking at the body files it is
+	# told to compile.  For ncurses, those header files do not include
+	# the config.h
+	test "$ac_cv_sys_large_files"      != no && CPPFLAGS="$CPPFLAGS -D_LARGE_FILES "
+	test "$ac_cv_sys_largefile_source" != no && CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE "
+	test "$ac_cv_sys_file_offset_bits" != no && CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits "
+
+	echo "$as_me:5294: checking whether to use struct dirent64" >&5
+echo $ECHO_N "checking whether to use struct dirent64... $ECHO_C" >&6
+if test "${cf_cv_struct_dirent64+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+		cat >conftest.$ac_ext <<_ACEOF
+#line 5301 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <dirent.h>
+
+int
+main ()
+{
+
+		/* if transitional largefile support is setup, this is true */
+		extern struct dirent64 * readdir(DIR *);
+		struct dirent64 *x = readdir((DIR *)0);
+		struct dirent *y = readdir((DIR *)0);
+		int z = x - y;
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5322: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5325: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5328: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5331: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_struct_dirent64=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_struct_dirent64=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:5342: result: $cf_cv_struct_dirent64" >&5
+echo "${ECHO_T}$cf_cv_struct_dirent64" >&6
+	test "$cf_cv_struct_dirent64" = yes && cat >>confdefs.h <<\EOF
+#define HAVE_STRUCT_DIRENT64 1
+EOF
+
+    fi
+
+if test -z "$ALL_LINGUAS" ; then
+	ALL_LINGUAS=`test -d $srcdir/po && cd $srcdir/po && echo *.po|sed -e 's/\.po//g' -e 's/*//'`
+
+	case $cf_cv_system_name in
+	os2*)	PATH_SEPARATOR=';'  ;;
+	*)	PATH_SEPARATOR=':'  ;;
+	esac
+
+# Extract the first word of "msginit", so it can be a program name with args.
+
+set dummy msginit; ac_word=$2
+echo "$as_me:5361: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_MSGINIT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case "$MSGINIT" in
+  [\\/]*|?:[\\/]*)
+  ac_cv_path_MSGINIT="$MSGINIT" # Let the user override the test with a path.
+  ;;
+  *)
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word$ac_exeext; then
+      if $ac_dir/$ac_word --no-translator --version /dev/null >/dev/null 2>&1; then
+	ac_cv_path_MSGINIT="$ac_dir/$ac_word$ac_exeext"
+	break
+      fi
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_MSGINIT" && ac_cv_path_MSGINIT=":"
+  ;;
+esac
+fi
+MSGINIT="$ac_cv_path_MSGINIT"
+if test "$MSGINIT" != ":"; then
+  echo "$as_me:5388: result: $MSGINIT" >&5
+echo "${ECHO_T}$MSGINIT" >&6
+else
+  echo "$as_me:5391: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+	if test "$MSGINIT" != ":" ; then
+		test -n "$verbose" && echo "	adding en.po" 1>&6
+
+echo "${as_me:-configure}:5398: testing adding en.po ..." 1>&5
+
+		ALL_LINGUAS="$ALL_LINGUAS en"
+	fi
+fi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+echo "$as_me:5407: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$RANLIB"; then
+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+echo "$as_me:5422: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+  echo "$as_me:5430: result: $RANLIB" >&5
+echo "${ECHO_T}$RANLIB" >&6
+else
+  echo "$as_me:5433: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+  ac_ct_RANLIB=$RANLIB
+  # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+echo "$as_me:5442: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_RANLIB"; then
+  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_RANLIB="ranlib"
+echo "$as_me:5457: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+  echo "$as_me:5466: result: $ac_ct_RANLIB" >&5
+echo "${ECHO_T}$ac_ct_RANLIB" >&6
+else
+  echo "$as_me:5469: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  RANLIB=$ac_ct_RANLIB
+else
+  RANLIB="$ac_cv_prog_RANLIB"
+fi
+
+echo "$as_me:5478: checking for ANSI C header files" >&5
+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
+if test "${ac_cv_header_stdc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5484 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <float.h>
+
+_ACEOF
+if { (eval echo "$as_me:5492: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:5498: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  ac_cv_header_stdc=yes
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  ac_cv_header_stdc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+
+if test $ac_cv_header_stdc = yes; then
+  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5520 "configure"
+#include "confdefs.h"
+#include <string.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "memchr" >/dev/null 2>&1; then
+  :
+else
+  ac_cv_header_stdc=no
+fi
+rm -rf conftest*
+
+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 <<_ACEOF
+#line 5538 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "free" >/dev/null 2>&1; then
+  :
+else
+  ac_cv_header_stdc=no
+fi
+rm -rf conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+  if test "$cross_compiling" = yes; then
+  :
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5559 "configure"
+#include "confdefs.h"
+#include <ctype.h>
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) (('a' <= (c) && (c) <= 'i') \
+                     || ('j' <= (c) && (c) <= 'r') \
+                     || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+int
+main ()
+{
+  int i;
+  for (i = 0; i < 256; i++)
+    if (XOR (islower (i), ISLOWER (i))
+        || toupper (i) != TOUPPER (i))
+      $ac_main_return(2);
+  $ac_main_return (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:5585: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:5588: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:5590: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5593: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_header_stdc=no
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+fi
+echo "$as_me:5606: result: $ac_cv_header_stdc" >&5
+echo "${ECHO_T}$ac_cv_header_stdc" >&6
+if test $ac_cv_header_stdc = yes; then
+
+cat >>confdefs.h <<\EOF
+#define STDC_HEADERS 1
+EOF
+
+fi
+
+echo "$as_me:5616: checking for inline" >&5
+echo $ECHO_N "checking for inline... $ECHO_C" >&6
+if test "${ac_cv_c_inline+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_c_inline=no
+for ac_kw in inline __inline__ __inline; do
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5624 "configure"
+#include "confdefs.h"
+#ifndef __cplusplus
+static $ac_kw int static_foo () {return 0; }
+$ac_kw int foo () {return 0; }
+#endif
+
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5633: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5636: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5639: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5642: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_inline=$ac_kw; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+
+fi
+echo "$as_me:5653: result: $ac_cv_c_inline" >&5
+echo "${ECHO_T}$ac_cv_c_inline" >&6
+case $ac_cv_c_inline in
+  inline | yes) ;;
+  no)
+cat >>confdefs.h <<\EOF
+#define inline
+EOF
+ ;;
+  *)  cat >>confdefs.h <<EOF
+#define inline $ac_cv_c_inline
+EOF
+ ;;
+esac
+
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+                  inttypes.h stdint.h unistd.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:5674: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5680 "configure"
+#include "confdefs.h"
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5686: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5689: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5692: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5695: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_Header=no"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:5705: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+echo "$as_me:5715: checking for off_t" >&5
+echo $ECHO_N "checking for off_t... $ECHO_C" >&6
+if test "${ac_cv_type_off_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5721 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((off_t *) 0)
+  return 0;
+if (sizeof (off_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5736: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5739: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5742: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5745: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_off_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_off_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:5755: result: $ac_cv_type_off_t" >&5
+echo "${ECHO_T}$ac_cv_type_off_t" >&6
+if test $ac_cv_type_off_t = yes; then
+  :
+else
+
+cat >>confdefs.h <<EOF
+#define off_t long
+EOF
+
+fi
+
+echo "$as_me:5767: checking for size_t" >&5
+echo $ECHO_N "checking for size_t... $ECHO_C" >&6
+if test "${ac_cv_type_size_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5773 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((size_t *) 0)
+  return 0;
+if (sizeof (size_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:5788: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:5791: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:5794: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5797: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_size_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_size_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:5807: result: $ac_cv_type_size_t" >&5
+echo "${ECHO_T}$ac_cv_type_size_t" >&6
+if test $ac_cv_type_size_t = yes; then
+  :
+else
+
+cat >>confdefs.h <<EOF
+#define size_t unsigned
+EOF
+
+fi
+
+# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
+# for constant arguments.  Useless!
+echo "$as_me:5821: checking for working alloca.h" >&5
+echo $ECHO_N "checking for working alloca.h... $ECHO_C" >&6
+if test "${ac_cv_working_alloca_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5827 "configure"
+#include "confdefs.h"
+#include <alloca.h>
+int
+main ()
+{
+char *p = (char *) alloca (2 * sizeof (int));
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:5839: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:5842: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:5845: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5848: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_working_alloca_h=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_working_alloca_h=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:5858: result: $ac_cv_working_alloca_h" >&5
+echo "${ECHO_T}$ac_cv_working_alloca_h" >&6
+if test $ac_cv_working_alloca_h = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_ALLOCA_H 1
+EOF
+
+fi
+
+echo "$as_me:5868: checking for alloca" >&5
+echo $ECHO_N "checking for alloca... $ECHO_C" >&6
+if test "${ac_cv_func_alloca_works+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5874 "configure"
+#include "confdefs.h"
+#ifdef __GNUC__
+# define alloca __builtin_alloca
+#else
+# ifdef _MSC_VER
+#  include <malloc.h>
+#  define alloca _alloca
+# else
+#  if HAVE_ALLOCA_H
+#   include <alloca.h>
+#  else
+#   ifdef _AIX
+ #pragma alloca
+#   else
+#    ifndef alloca /* predefined by HP cc +Olibcalls */
+char *alloca ();
+#    endif
+#   endif
+#  endif
+# endif
+#endif
+
+int
+main ()
+{
+char *p = (char *) alloca (1);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:5906: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:5909: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:5912: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5915: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_alloca_works=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_alloca_works=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:5925: result: $ac_cv_func_alloca_works" >&5
+echo "${ECHO_T}$ac_cv_func_alloca_works" >&6
+
+if test $ac_cv_func_alloca_works = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_ALLOCA 1
+EOF
+
+else
+  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
+# that cause trouble.  Some versions do not even contain alloca or
+# contain a buggy version.  If you still want to use their alloca,
+# use ar to extract alloca.o from them instead of compiling alloca.c.
+
+ALLOCA=alloca.$ac_objext
+
+cat >>confdefs.h <<\EOF
+#define C_ALLOCA 1
+EOF
+
+echo "$as_me:5946: checking whether \`alloca.c' needs Cray hooks" >&5
+echo $ECHO_N "checking whether \`alloca.c' needs Cray hooks... $ECHO_C" >&6
+if test "${ac_cv_os_cray+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5952 "configure"
+#include "confdefs.h"
+#if defined(CRAY) && ! defined(CRAY2)
+webecray
+#else
+wenotbecray
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "webecray" >/dev/null 2>&1; then
+  ac_cv_os_cray=yes
+else
+  ac_cv_os_cray=no
+fi
+rm -rf conftest*
+
+fi
+echo "$as_me:5970: result: $ac_cv_os_cray" >&5
+echo "${ECHO_T}$ac_cv_os_cray" >&6
+if test $ac_cv_os_cray = yes; then
+  for ac_func in _getb67 GETB67 getb67; do
+    as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:5975: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5981 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:6012: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6015: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:6018: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6021: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:6031: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+
+cat >>confdefs.h <<EOF
+#define CRAY_STACKSEG_END $ac_func
+EOF
+
+    break
+fi
+
+  done
+fi
+
+echo "$as_me:6045: checking stack direction for C alloca" >&5
+echo $ECHO_N "checking stack direction for C alloca... $ECHO_C" >&6
+if test "${ac_cv_c_stack_direction+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$cross_compiling" = yes; then
+  ac_cv_c_stack_direction=0
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 6054 "configure"
+#include "confdefs.h"
+int
+find_stack_direction ()
+{
+  static char *addr = 0;
+  auto char dummy;
+  if (addr == 0)
+    {
+      addr = &dummy;
+      return find_stack_direction ();
+    }
+  else
+    return (&dummy > addr) ? 1 : -1;
+}
+
+int
+main ()
+{
+  $ac_main_return (find_stack_direction () < 0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:6077: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6080: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:6082: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6085: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_stack_direction=1
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_c_stack_direction=-1
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+echo "$as_me:6097: result: $ac_cv_c_stack_direction" >&5
+echo "${ECHO_T}$ac_cv_c_stack_direction" >&6
+
+cat >>confdefs.h <<EOF
+#define STACK_DIRECTION $ac_cv_c_stack_direction
+EOF
+
+fi
+
+for ac_header in stdlib.h unistd.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:6109: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 6115 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:6119: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:6125: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:6144: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+for ac_func in getpagesize
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:6157: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 6163 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:6194: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6197: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:6200: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6203: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:6213: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+echo "$as_me:6223: checking for working mmap" >&5
+echo $ECHO_N "checking for working mmap... $ECHO_C" >&6
+if test "${ac_cv_func_mmap_fixed_mapped+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$cross_compiling" = yes; then
+  ac_cv_func_mmap_fixed_mapped=no
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 6232 "configure"
+#include "confdefs.h"
+$ac_includes_default
+/* Thanks to Mike Haertel and Jim Avera for this test.
+   Here is a matrix of mmap possibilities:
+	mmap private not fixed
+	mmap private fixed at somewhere currently unmapped
+	mmap private fixed at somewhere already mapped
+	mmap shared not fixed
+	mmap shared fixed at somewhere currently unmapped
+	mmap shared fixed at somewhere already mapped
+   For private mappings, we should verify that changes cannot be read()
+   back from the file, nor mmap's back from the file at a different
+   address.  (There have been systems where private was not correctly
+   implemented like the infamous i386 svr4.0, and systems where the
+   VM page cache was not coherent with the file system buffer cache
+   like early versions of FreeBSD and possibly contemporary NetBSD.)
+   For shared mappings, we should conversely verify that changes get
+   propogated back to all the places they're supposed to be.
+
+   Grep wants private fixed already mapped.
+   The main things grep needs to know about mmap are:
+   * does it exist and is it safe to write into the mmap'd area
+   * how to use it (BSD variants)  */
+
+#include <fcntl.h>
+#include <sys/mman.h>
+
+#if !STDC_HEADERS && !HAVE_STDLIB_H
+char *malloc ();
+#endif
+
+/* This mess was copied from the GNU getpagesize.h.  */
+#if !HAVE_GETPAGESIZE
+/* Assume that all systems that can run configure have sys/param.h.  */
+# if !HAVE_SYS_PARAM_H
+#  define HAVE_SYS_PARAM_H 1
+# endif
+
+# ifdef _SC_PAGESIZE
+#  define getpagesize() sysconf(_SC_PAGESIZE)
+# else /* no _SC_PAGESIZE */
+#  if HAVE_SYS_PARAM_H
+#   include <sys/param.h>
+#   ifdef EXEC_PAGESIZE
+#    define getpagesize() EXEC_PAGESIZE
+#   else /* no EXEC_PAGESIZE */
+#    ifdef NBPG
+#     define getpagesize() NBPG * CLSIZE
+#     ifndef CLSIZE
+#      define CLSIZE 1
+#     endif /* no CLSIZE */
+#    else /* no NBPG */
+#     ifdef NBPC
+#      define getpagesize() NBPC
+#     else /* no NBPC */
+#      ifdef PAGESIZE
+#       define getpagesize() PAGESIZE
+#      endif /* PAGESIZE */
+#     endif /* no NBPC */
+#    endif /* no NBPG */
+#   endif /* no EXEC_PAGESIZE */
+#  else /* no HAVE_SYS_PARAM_H */
+#   define getpagesize() 8192	/* punt totally */
+#  endif /* no HAVE_SYS_PARAM_H */
+# endif /* no _SC_PAGESIZE */
+
+#endif /* no HAVE_GETPAGESIZE */
+
+int
+main ()
+{
+  char *data, *data2, *data3;
+  int i, pagesize;
+  int fd;
+
+  pagesize = getpagesize ();
+
+  /* First, make a file with some known garbage in it. */
+  data = (char *) malloc (pagesize);
+  if (!data)
+    $ac_main_return (1);
+  for (i = 0; i < pagesize; ++i)
+    *(data + i) = rand ();
+  umask (0);
+  fd = creat ("conftest.mmap", 0600);
+  if (fd < 0)
+    $ac_main_return (1);
+  if (write (fd, data, pagesize) != pagesize)
+    $ac_main_return (1);
+  close (fd);
+
+  /* Next, try to mmap the file at a fixed address which already has
+     something else allocated at it.  If we can, also make sure that
+     we see the same garbage.  */
+  fd = open ("conftest.mmap", O_RDWR);
+  if (fd < 0)
+    $ac_main_return (1);
+  data2 = (char *) malloc (2 * pagesize);
+  if (!data2)
+    $ac_main_return (1);
+  data2 += (pagesize - ((int) data2 & (pagesize - 1))) & (pagesize - 1);
+  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
+                     MAP_PRIVATE | MAP_FIXED, fd, 0L))
+    $ac_main_return (1);
+  for (i = 0; i < pagesize; ++i)
+    if (*(data + i) != *(data2 + i))
+      $ac_main_return (1);
+
+  /* Finally, make sure that changes to the mapped area do not
+     percolate back to the file as seen by read().  (This is a bug on
+     some variants of i386 svr4.0.)  */
+  for (i = 0; i < pagesize; ++i)
+    *(data2 + i) = *(data2 + i) + 1;
+  data3 = (char *) malloc (pagesize);
+  if (!data3)
+    $ac_main_return (1);
+  if (read (fd, data3, pagesize) != pagesize)
+    $ac_main_return (1);
+  for (i = 0; i < pagesize; ++i)
+    if (*(data + i) != *(data3 + i))
+      $ac_main_return (1);
+  close (fd);
+  $ac_main_return (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:6359: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6362: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:6364: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6367: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_mmap_fixed_mapped=yes
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_mmap_fixed_mapped=no
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+echo "$as_me:6379: result: $ac_cv_func_mmap_fixed_mapped" >&5
+echo "${ECHO_T}$ac_cv_func_mmap_fixed_mapped" >&6
+if test $ac_cv_func_mmap_fixed_mapped = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_MMAP 1
+EOF
+
+fi
+rm -f conftest.mmap
+
+    echo "$as_me:6390: checking whether we are using the GNU C Library 2.1 or newer" >&5
+echo $ECHO_N "checking whether we are using the GNU C Library 2.1 or newer... $ECHO_C" >&6
+if test "${ac_cv_gnu_library_2_1+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 6396 "configure"
+#include "confdefs.h"
+
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
+  Lucky GNU user
+ #endif
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "Lucky GNU user" >/dev/null 2>&1; then
+  ac_cv_gnu_library_2_1=yes
+else
+  ac_cv_gnu_library_2_1=no
+fi
+rm -rf conftest*
+
+fi
+echo "$as_me:6416: result: $ac_cv_gnu_library_2_1" >&5
+echo "${ECHO_T}$ac_cv_gnu_library_2_1" >&6
+
+    GLIBC21="$ac_cv_gnu_library_2_1"
+
+cf_makefile=makefile
+
+test -z "$ALL_LINGUAS" && ALL_LINGUAS=`test -d $srcdir/po && cd $srcdir/po && echo *.po|sed -e 's/\.po//g' -e 's/*//'`
+
+# Allow override of "config.h" definition:
+: ${CONFIG_H:=config.h}
+
+if test -z "$PACKAGE" ; then
+	{ { echo "$as_me:6429: error: CF_BUNDLED_INTL used without setting PACKAGE variable" >&5
+echo "$as_me: error: CF_BUNDLED_INTL used without setting PACKAGE variable" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+if test -z "$VERSION" ; then
+if test -f $srcdir/VERSION ; then
+	VERSION=`sed -e '2,$d' $srcdir/VERSION|cut -f1`
+else
+	VERSION=unknown
+fi
+fi
+
+for ac_header in argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
+stdlib.h string.h unistd.h sys/param.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:6446: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 6452 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:6456: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:6462: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:6481: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+for ac_func in feof_unlocked fgets_unlocked getcwd getegid geteuid \
+getgid getuid mempcpy munmap putenv setenv setlocale stpcpy strchr strcasecmp \
+strdup strtoul tsearch __argz_count __argz_stringify __argz_next
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:6496: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 6502 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:6533: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6536: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:6539: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6542: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:6552: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+# Check whether --with-libiconv-prefix or --without-libiconv-prefix was given.
+if test "${with_libiconv_prefix+set}" = set; then
+  withval="$with_libiconv_prefix"
+
+  case "$withval" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$withval" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 6600 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6612: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6615: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6618: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6621: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:6638: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 6679 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6691: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6694: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6697: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6700: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:6717: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:6733: error: cannot find libiconv under $withval" >&5
+echo "$as_me: error: cannot find libiconv under $withval" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:6758: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:6787: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:6796: error: cannot find libiconv under $withval" >&5
+echo "$as_me: error: cannot find libiconv under $withval" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+fi;
+
+  echo "$as_me:6807: checking for iconv" >&5
+echo $ECHO_N "checking for iconv... $ECHO_C" >&6
+if test "${am_cv_func_iconv+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_iconv=
+cf_cv_library_path_iconv=
+
+echo "${as_me:-configure}:6818: testing Starting FIND_LINKAGE(iconv,) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 6823 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+int
+main ()
+{
+
+	iconv_t cd = iconv_open("","");
+	iconv(cd,NULL,NULL,NULL,NULL);
+	iconv_close(cd);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:6842: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6845: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:6848: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6851: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_iconv=yes
+	cf_cv_header_path_iconv=/usr/include
+	cf_cv_library_path_iconv=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-liconv  $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 6865 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+int
+main ()
+{
+
+	iconv_t cd = iconv_open("","");
+	iconv(cd,NULL,NULL,NULL,NULL);
+	iconv_close(cd);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:6884: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6887: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:6890: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6893: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_iconv=yes
+	cf_cv_header_path_iconv=/usr/include
+	cf_cv_library_path_iconv=/usr/lib
+	cf_cv_library_file_iconv="-liconv"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_iconv=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for iconv library" 1>&6
+
+echo "${as_me:-configure}:6910: testing find linkage for iconv library ..." 1>&5
+
+echo "${as_me:-configure}:6912: testing Searching for headers in FIND_LINKAGE(iconv,) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/iconv &&       cf_search="$cf_search $cf_header_path/include/iconv"
+	test -d $cf_header_path/include/iconv/include &&    cf_search="$cf_search $cf_header_path/include/iconv/include"
+	test -d $cf_header_path/iconv/include &&       cf_search="$cf_search $cf_header_path/iconv/include"
+	test -d $cf_header_path/iconv/include/iconv &&    cf_search="$cf_search $cf_header_path/iconv/include/iconv"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/iconv &&       cf_search="$cf_search /usr/include/iconv"
+	test -d /usr/include/iconv/include &&    cf_search="$cf_search /usr/include/iconv/include"
+	test -d /usr/iconv/include &&       cf_search="$cf_search /usr/iconv/include"
+	test -d /usr/iconv/include/iconv &&    cf_search="$cf_search /usr/iconv/include/iconv"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/iconv &&       cf_search="$cf_search $prefix/include/iconv"
+	test -d $prefix/include/iconv/include &&    cf_search="$cf_search $prefix/include/iconv/include"
+	test -d $prefix/iconv/include &&       cf_search="$cf_search $prefix/iconv/include"
+	test -d $prefix/iconv/include/iconv &&    cf_search="$cf_search $prefix/iconv/include/iconv"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/iconv &&       cf_search="$cf_search /usr/local/include/iconv"
+	test -d /usr/local/include/iconv/include &&    cf_search="$cf_search /usr/local/include/iconv/include"
+	test -d /usr/local/iconv/include &&       cf_search="$cf_search /usr/local/iconv/include"
+	test -d /usr/local/iconv/include/iconv &&    cf_search="$cf_search /usr/local/iconv/include/iconv"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/iconv &&       cf_search="$cf_search /opt/include/iconv"
+	test -d /opt/include/iconv/include &&    cf_search="$cf_search /opt/include/iconv/include"
+	test -d /opt/iconv/include &&       cf_search="$cf_search /opt/iconv/include"
+	test -d /opt/iconv/include/iconv &&    cf_search="$cf_search /opt/iconv/include/iconv"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/iconv &&       cf_search="$cf_search $HOME/include/iconv"
+	test -d $HOME/include/iconv/include &&    cf_search="$cf_search $HOME/include/iconv/include"
+	test -d $HOME/iconv/include &&       cf_search="$cf_search $HOME/iconv/include"
+	test -d $HOME/iconv/include/iconv &&    cf_search="$cf_search $HOME/iconv/include/iconv"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/iconv && cf_search="$cf_search $includedir/iconv"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/iconv && cf_search="$cf_search $oldincludedir/iconv"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_iconv in $cf_search
+    do
+      if test -d $cf_cv_header_path_iconv ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_iconv" 1>&6
+
+echo "${as_me:-configure}:7025: testing ... testing $cf_cv_header_path_iconv ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_iconv"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 7029 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+int
+main ()
+{
+
+	iconv_t cd = iconv_open("","");
+	iconv(cd,NULL,NULL,NULL,NULL);
+	iconv_close(cd);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7048: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7051: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7054: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7057: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found iconv headers in $cf_cv_header_path_iconv" 1>&6
+
+echo "${as_me:-configure}:7062: testing ... found iconv headers in $cf_cv_header_path_iconv ..." 1>&5
+
+            cf_cv_find_linkage_iconv=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_iconv" = maybe ; then
+
+echo "${as_me:-configure}:7080: testing Searching for iconv library in FIND_LINKAGE(iconv,) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+      if test "$cf_cv_find_linkage_iconv" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/iconv &&       cf_search="$cf_search $cf_library_path/lib/iconv"
+	test -d $cf_library_path/lib/iconv/lib &&    cf_search="$cf_search $cf_library_path/lib/iconv/lib"
+	test -d $cf_library_path/iconv/lib &&       cf_search="$cf_search $cf_library_path/iconv/lib"
+	test -d $cf_library_path/iconv/lib/iconv &&    cf_search="$cf_search $cf_library_path/iconv/lib/iconv"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/iconv &&       cf_search="$cf_search /usr/lib/iconv"
+	test -d /usr/lib/iconv/lib &&    cf_search="$cf_search /usr/lib/iconv/lib"
+	test -d /usr/iconv/lib &&       cf_search="$cf_search /usr/iconv/lib"
+	test -d /usr/iconv/lib/iconv &&    cf_search="$cf_search /usr/iconv/lib/iconv"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/iconv &&       cf_search="$cf_search $prefix/lib/iconv"
+	test -d $prefix/lib/iconv/lib &&    cf_search="$cf_search $prefix/lib/iconv/lib"
+	test -d $prefix/iconv/lib &&       cf_search="$cf_search $prefix/iconv/lib"
+	test -d $prefix/iconv/lib/iconv &&    cf_search="$cf_search $prefix/iconv/lib/iconv"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/iconv &&       cf_search="$cf_search /usr/local/lib/iconv"
+	test -d /usr/local/lib/iconv/lib &&    cf_search="$cf_search /usr/local/lib/iconv/lib"
+	test -d /usr/local/iconv/lib &&       cf_search="$cf_search /usr/local/iconv/lib"
+	test -d /usr/local/iconv/lib/iconv &&    cf_search="$cf_search /usr/local/iconv/lib/iconv"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/iconv &&       cf_search="$cf_search /opt/lib/iconv"
+	test -d /opt/lib/iconv/lib &&    cf_search="$cf_search /opt/lib/iconv/lib"
+	test -d /opt/iconv/lib &&       cf_search="$cf_search /opt/iconv/lib"
+	test -d /opt/iconv/lib/iconv &&    cf_search="$cf_search /opt/iconv/lib/iconv"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/iconv &&       cf_search="$cf_search $HOME/lib/iconv"
+	test -d $HOME/lib/iconv/lib &&    cf_search="$cf_search $HOME/lib/iconv/lib"
+	test -d $HOME/iconv/lib &&       cf_search="$cf_search $HOME/iconv/lib"
+	test -d $HOME/iconv/lib/iconv &&    cf_search="$cf_search $HOME/iconv/lib/iconv"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_iconv in $cf_search
+        do
+          if test -d $cf_cv_library_path_iconv ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_iconv" 1>&6
+
+echo "${as_me:-configure}:7177: testing ... testing $cf_cv_library_path_iconv ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-liconv  $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_iconv"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 7183 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+int
+main ()
+{
+
+	iconv_t cd = iconv_open("","");
+	iconv(cd,NULL,NULL,NULL,NULL);
+	iconv_close(cd);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:7202: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7205: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:7208: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7211: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found iconv library in $cf_cv_library_path_iconv" 1>&6
+
+echo "${as_me:-configure}:7216: testing ... found iconv library in $cf_cv_library_path_iconv ..." 1>&5
+
+                cf_cv_find_linkage_iconv=yes
+                cf_cv_library_file_iconv="-liconv"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_iconv=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_iconv" = yes ; then
+am_cv_func_iconv=yes
+else
+am_cv_func_iconv="no, consider installing GNU libiconv"
+fi
+
+fi
+echo "$as_me:7256: result: $am_cv_func_iconv" >&5
+echo "${ECHO_T}$am_cv_func_iconv" >&6
+
+  if test "$am_cv_func_iconv" = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_ICONV 1
+EOF
+
+    echo "$as_me:7265: checking if the declaration of iconv() needs const." >&5
+echo $ECHO_N "checking if the declaration of iconv() needs const.... $ECHO_C" >&6
+if test "${am_cv_proto_iconv_const+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+      cat >conftest.$ac_ext <<_ACEOF
+#line 7272 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+extern
+#ifdef __cplusplus
+"C"
+#endif
+#if defined(__STDC__) || defined(__cplusplus)
+size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
+#else
+size_t iconv();
+#endif
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7297: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7300: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7303: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7306: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  am_cv_proto_iconv_const=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+am_cv_proto_iconv_const=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:7316: result: $am_cv_proto_iconv_const" >&5
+echo "${ECHO_T}$am_cv_proto_iconv_const" >&6
+
+    if test "$am_cv_proto_iconv_const" = yes ; then
+      am_cv_proto_iconv_arg1="const"
+    else
+      am_cv_proto_iconv_arg1=""
+    fi
+
+cat >>confdefs.h <<EOF
+#define ICONV_CONST $am_cv_proto_iconv_arg1
+EOF
+
+  fi
+
+  LIBICONV=
+  if test "$cf_cv_find_linkage_iconv" = yes; then
+
+if test -n "$cf_cv_header_path_iconv" ; then
+  for cf_add_incdir in $cf_cv_header_path_iconv
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 7358 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7370: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7373: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7376: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7379: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:7396: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+    if test -n "$cf_cv_library_file_iconv" ; then
+      LIBICONV="-liconv"
+
+if test -n "$cf_cv_library_path_iconv" ; then
+  for cf_add_libdir in $cf_cv_library_path_iconv
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:7433: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+    fi
+  fi
+
+  echo "$as_me:7444: checking for nl_langinfo and CODESET" >&5
+echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6
+if test "${am_cv_langinfo_codeset+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7450 "configure"
+#include "confdefs.h"
+#include <langinfo.h>
+int
+main ()
+{
+char* cs = nl_langinfo(CODESET);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:7462: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7465: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:7468: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7471: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  am_cv_langinfo_codeset=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+am_cv_langinfo_codeset=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:7482: result: $am_cv_langinfo_codeset" >&5
+echo "${ECHO_T}$am_cv_langinfo_codeset" >&6
+  if test $am_cv_langinfo_codeset = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_LANGINFO_CODESET 1
+EOF
+
+  fi
+
+   if test $ac_cv_header_locale_h = yes; then
+    echo "$as_me:7493: checking for LC_MESSAGES" >&5
+echo $ECHO_N "checking for LC_MESSAGES... $ECHO_C" >&6
+if test "${am_cv_val_LC_MESSAGES+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7499 "configure"
+#include "confdefs.h"
+#include <locale.h>
+int
+main ()
+{
+return LC_MESSAGES
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:7511: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7514: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:7517: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7520: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  am_cv_val_LC_MESSAGES=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+am_cv_val_LC_MESSAGES=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:7530: result: $am_cv_val_LC_MESSAGES" >&5
+echo "${ECHO_T}$am_cv_val_LC_MESSAGES" >&6
+    if test $am_cv_val_LC_MESSAGES = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_LC_MESSAGES 1
+EOF
+
+    fi
+  fi
+   echo "$as_me:7540: checking whether NLS is requested" >&5
+echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6
+
+# Check whether --enable-nls or --disable-nls was given.
+if test "${enable_nls+set}" = set; then
+  enableval="$enable_nls"
+  USE_NLS=$enableval
+else
+  USE_NLS=no
+fi;
+  echo "$as_me:7550: result: $USE_NLS" >&5
+echo "${ECHO_T}$USE_NLS" >&6
+
+  BUILD_INCLUDED_LIBINTL=no
+  USE_INCLUDED_LIBINTL=no
+  INTLLIBS=
+
+    if test "$USE_NLS" = "yes"; then
+
+cat >>confdefs.h <<\EOF
+#define ENABLE_NLS 1
+EOF
+
+    echo "$as_me:7563: checking whether included gettext is requested" >&5
+echo $ECHO_N "checking whether included gettext is requested... $ECHO_C" >&6
+
+# Check whether --with-included-gettext or --without-included-gettext was given.
+if test "${with_included_gettext+set}" = set; then
+  withval="$with_included_gettext"
+  nls_cv_force_use_gnu_gettext=$withval
+else
+  nls_cv_force_use_gnu_gettext=no
+fi;
+    echo "$as_me:7573: result: $nls_cv_force_use_gnu_gettext" >&5
+echo "${ECHO_T}$nls_cv_force_use_gnu_gettext" >&6
+
+    nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
+    if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
+                        CATOBJEXT=NONE
+
+      cf_save_LIBS_1="$LIBS"
+      LIBS="$LIBICONV $LIBS"
+      echo "$as_me:7582: checking for libintl.h and gettext()" >&5
+echo $ECHO_N "checking for libintl.h and gettext()... $ECHO_C" >&6
+if test "${cf_cv_func_gettext+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_intl=
+cf_cv_library_path_intl=
+
+echo "${as_me:-configure}:7593: testing Starting FIND_LINKAGE(intl,) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 7598 "configure"
+#include "confdefs.h"
+
+#include <libintl.h>
+extern int _nl_msg_cat_cntr;
+
+int
+main ()
+{
+
+    bindtextdomain ("", "");
+    return (int) gettext ("")
+
+             + _nl_msg_cat_cntr
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:7618: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7621: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:7624: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7627: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_intl=yes
+	cf_cv_header_path_intl=/usr/include
+	cf_cv_library_path_intl=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-lintl  $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 7641 "configure"
+#include "confdefs.h"
+
+#include <libintl.h>
+extern int _nl_msg_cat_cntr;
+
+int
+main ()
+{
+
+    bindtextdomain ("", "");
+    return (int) gettext ("")
+
+             + _nl_msg_cat_cntr
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:7661: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7664: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:7667: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7670: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_intl=yes
+	cf_cv_header_path_intl=/usr/include
+	cf_cv_library_path_intl=/usr/lib
+	cf_cv_library_file_intl="-lintl"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_intl=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for intl library" 1>&6
+
+echo "${as_me:-configure}:7687: testing find linkage for intl library ..." 1>&5
+
+echo "${as_me:-configure}:7689: testing Searching for headers in FIND_LINKAGE(intl,) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/intl &&       cf_search="$cf_search $cf_header_path/include/intl"
+	test -d $cf_header_path/include/intl/include &&    cf_search="$cf_search $cf_header_path/include/intl/include"
+	test -d $cf_header_path/intl/include &&       cf_search="$cf_search $cf_header_path/intl/include"
+	test -d $cf_header_path/intl/include/intl &&    cf_search="$cf_search $cf_header_path/intl/include/intl"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/intl &&       cf_search="$cf_search /usr/include/intl"
+	test -d /usr/include/intl/include &&    cf_search="$cf_search /usr/include/intl/include"
+	test -d /usr/intl/include &&       cf_search="$cf_search /usr/intl/include"
+	test -d /usr/intl/include/intl &&    cf_search="$cf_search /usr/intl/include/intl"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/intl &&       cf_search="$cf_search $prefix/include/intl"
+	test -d $prefix/include/intl/include &&    cf_search="$cf_search $prefix/include/intl/include"
+	test -d $prefix/intl/include &&       cf_search="$cf_search $prefix/intl/include"
+	test -d $prefix/intl/include/intl &&    cf_search="$cf_search $prefix/intl/include/intl"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/intl &&       cf_search="$cf_search /usr/local/include/intl"
+	test -d /usr/local/include/intl/include &&    cf_search="$cf_search /usr/local/include/intl/include"
+	test -d /usr/local/intl/include &&       cf_search="$cf_search /usr/local/intl/include"
+	test -d /usr/local/intl/include/intl &&    cf_search="$cf_search /usr/local/intl/include/intl"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/intl &&       cf_search="$cf_search /opt/include/intl"
+	test -d /opt/include/intl/include &&    cf_search="$cf_search /opt/include/intl/include"
+	test -d /opt/intl/include &&       cf_search="$cf_search /opt/intl/include"
+	test -d /opt/intl/include/intl &&    cf_search="$cf_search /opt/intl/include/intl"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/intl &&       cf_search="$cf_search $HOME/include/intl"
+	test -d $HOME/include/intl/include &&    cf_search="$cf_search $HOME/include/intl/include"
+	test -d $HOME/intl/include &&       cf_search="$cf_search $HOME/intl/include"
+	test -d $HOME/intl/include/intl &&    cf_search="$cf_search $HOME/intl/include/intl"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/intl && cf_search="$cf_search $includedir/intl"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/intl && cf_search="$cf_search $oldincludedir/intl"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_intl in $cf_search
+    do
+      if test -d $cf_cv_header_path_intl ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_intl" 1>&6
+
+echo "${as_me:-configure}:7802: testing ... testing $cf_cv_header_path_intl ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_intl"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 7806 "configure"
+#include "confdefs.h"
+
+#include <libintl.h>
+extern int _nl_msg_cat_cntr;
+
+int
+main ()
+{
+
+    bindtextdomain ("", "");
+    return (int) gettext ("")
+
+             + _nl_msg_cat_cntr
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7826: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7829: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7832: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7835: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found intl headers in $cf_cv_header_path_intl" 1>&6
+
+echo "${as_me:-configure}:7840: testing ... found intl headers in $cf_cv_header_path_intl ..." 1>&5
+
+            cf_cv_find_linkage_intl=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_intl" = maybe ; then
+
+echo "${as_me:-configure}:7858: testing Searching for intl library in FIND_LINKAGE(intl,) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+      if test "$cf_cv_find_linkage_intl" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/intl &&       cf_search="$cf_search $cf_library_path/lib/intl"
+	test -d $cf_library_path/lib/intl/lib &&    cf_search="$cf_search $cf_library_path/lib/intl/lib"
+	test -d $cf_library_path/intl/lib &&       cf_search="$cf_search $cf_library_path/intl/lib"
+	test -d $cf_library_path/intl/lib/intl &&    cf_search="$cf_search $cf_library_path/intl/lib/intl"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/intl &&       cf_search="$cf_search /usr/lib/intl"
+	test -d /usr/lib/intl/lib &&    cf_search="$cf_search /usr/lib/intl/lib"
+	test -d /usr/intl/lib &&       cf_search="$cf_search /usr/intl/lib"
+	test -d /usr/intl/lib/intl &&    cf_search="$cf_search /usr/intl/lib/intl"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/intl &&       cf_search="$cf_search $prefix/lib/intl"
+	test -d $prefix/lib/intl/lib &&    cf_search="$cf_search $prefix/lib/intl/lib"
+	test -d $prefix/intl/lib &&       cf_search="$cf_search $prefix/intl/lib"
+	test -d $prefix/intl/lib/intl &&    cf_search="$cf_search $prefix/intl/lib/intl"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/intl &&       cf_search="$cf_search /usr/local/lib/intl"
+	test -d /usr/local/lib/intl/lib &&    cf_search="$cf_search /usr/local/lib/intl/lib"
+	test -d /usr/local/intl/lib &&       cf_search="$cf_search /usr/local/intl/lib"
+	test -d /usr/local/intl/lib/intl &&    cf_search="$cf_search /usr/local/intl/lib/intl"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/intl &&       cf_search="$cf_search /opt/lib/intl"
+	test -d /opt/lib/intl/lib &&    cf_search="$cf_search /opt/lib/intl/lib"
+	test -d /opt/intl/lib &&       cf_search="$cf_search /opt/intl/lib"
+	test -d /opt/intl/lib/intl &&    cf_search="$cf_search /opt/intl/lib/intl"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/intl &&       cf_search="$cf_search $HOME/lib/intl"
+	test -d $HOME/lib/intl/lib &&    cf_search="$cf_search $HOME/lib/intl/lib"
+	test -d $HOME/intl/lib &&       cf_search="$cf_search $HOME/intl/lib"
+	test -d $HOME/intl/lib/intl &&    cf_search="$cf_search $HOME/intl/lib/intl"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_intl in $cf_search
+        do
+          if test -d $cf_cv_library_path_intl ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_intl" 1>&6
+
+echo "${as_me:-configure}:7955: testing ... testing $cf_cv_library_path_intl ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-lintl  $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_intl"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 7961 "configure"
+#include "confdefs.h"
+
+#include <libintl.h>
+extern int _nl_msg_cat_cntr;
+
+int
+main ()
+{
+
+    bindtextdomain ("", "");
+    return (int) gettext ("")
+
+             + _nl_msg_cat_cntr
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:7981: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7984: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:7987: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7990: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found intl library in $cf_cv_library_path_intl" 1>&6
+
+echo "${as_me:-configure}:7995: testing ... found intl library in $cf_cv_library_path_intl ..." 1>&5
+
+                cf_cv_find_linkage_intl=yes
+                cf_cv_library_file_intl="-lintl"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_intl=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_intl" = yes ; then
+cf_cv_func_gettext=yes
+else
+cf_cv_func_gettext=no
+fi
+
+fi
+echo "$as_me:8035: result: $cf_cv_func_gettext" >&5
+echo "${ECHO_T}$cf_cv_func_gettext" >&6
+      LIBS="$cf_save_LIBS_1"
+
+      if test "$cf_cv_func_gettext" = yes ; then
+        cat >>confdefs.h <<\EOF
+#define HAVE_LIBINTL_H 1
+EOF
+
+                                        if test "$PACKAGE" != gettext; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_GETTEXT 1
+EOF
+
+if test -n "$cf_cv_header_path_intl" ; then
+  for cf_add_incdir in $cf_cv_header_path_intl
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 8074 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8086: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8089: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8092: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8095: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:8112: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+          if test -n "$cf_cv_library_file_intl" ; then
+                                                INTLLIBS="$cf_cv_library_file_intl $LIBICONV"
+
+if test -n "$cf_cv_library_path_intl" ; then
+  for cf_add_libdir in $cf_cv_library_path_intl
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:8149: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        INTLLIBS="-L$cf_add_libdir $INTLLIBS"
+      fi
+    fi
+  done
+fi
+
+          fi
+
+          gt_save_LIBS="$LIBS"
+          LIBS="$LIBS $INTLLIBS"
+
+for ac_func in dcgettext
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:8165: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8171 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:8202: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:8205: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:8208: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8211: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:8221: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+          LIBS="$gt_save_LIBS"
+
+                    # Extract the first word of "msgfmt", so it can be a program name with args.
+
+set dummy msgfmt; ac_word=$2
+echo "$as_me:8236: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_MSGFMT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case "$MSGFMT" in
+  [\\/]*|?:[\\/]*)
+  ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
+  ;;
+  *)
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word$ac_exeext; then
+      if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1; then
+	ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exeext"
+	break
+      fi
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":"
+  ;;
+esac
+fi
+MSGFMT="$ac_cv_path_MSGFMT"
+if test "$MSGFMT" != ":"; then
+  echo "$as_me:8263: result: $MSGFMT" >&5
+echo "${ECHO_T}$MSGFMT" >&6
+else
+  echo "$as_me:8266: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+          # Extract the first word of "gmsgfmt", so it can be a program name with args.
+set dummy gmsgfmt; ac_word=$2
+echo "$as_me:8272: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_GMSGFMT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $GMSGFMT in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_GMSGFMT="$ac_dir/$ac_word"
+   echo "$as_me:8289: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
+  ;;
+esac
+fi
+GMSGFMT=$ac_cv_path_GMSGFMT
+
+if test -n "$GMSGFMT"; then
+  echo "$as_me:8301: result: $GMSGFMT" >&5
+echo "${ECHO_T}$GMSGFMT" >&6
+else
+  echo "$as_me:8304: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+                    # Extract the first word of "xgettext", so it can be a program name with args.
+
+set dummy xgettext; ac_word=$2
+echo "$as_me:8311: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_XGETTEXT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case "$XGETTEXT" in
+  [\\/]*|?:[\\/]*)
+  ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
+  ;;
+  *)
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word$ac_exeext; then
+      if $ac_dir/$ac_word --omit-header /dev/null >/dev/null 2>&1; then
+	ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exeext"
+	break
+      fi
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":"
+  ;;
+esac
+fi
+XGETTEXT="$ac_cv_path_XGETTEXT"
+if test "$XGETTEXT" != ":"; then
+  echo "$as_me:8338: result: $XGETTEXT" >&5
+echo "${ECHO_T}$XGETTEXT" >&6
+else
+  echo "$as_me:8341: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+          CATOBJEXT=.gmo
+        fi
+      fi
+
+      if test "$CATOBJEXT" = "NONE"; then
+                        nls_cv_use_gnu_gettext=yes
+      fi
+    fi
+
+    if test "$nls_cv_use_gnu_gettext" = "yes"; then
+      if test ! -d $srcdir/intl ; then
+        { { echo "$as_me:8356: error: no NLS library is packaged with this application" >&5
+echo "$as_me: error: no NLS library is packaged with this application" >&2;}
+   { (exit 1); exit 1; }; }
+      fi
+            INTLOBJS="\$(GETTOBJS)"
+      # Extract the first word of "msgfmt", so it can be a program name with args.
+
+set dummy msgfmt; ac_word=$2
+echo "$as_me:8364: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_MSGFMT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case "$MSGFMT" in
+  [\\/]*|?:[\\/]*)
+  ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
+  ;;
+  *)
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word$ac_exeext; then
+      if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1; then
+	ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exeext"
+	break
+      fi
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":"
+  ;;
+esac
+fi
+MSGFMT="$ac_cv_path_MSGFMT"
+if test "$MSGFMT" != ":"; then
+  echo "$as_me:8391: result: $MSGFMT" >&5
+echo "${ECHO_T}$MSGFMT" >&6
+else
+  echo "$as_me:8394: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+      # Extract the first word of "gmsgfmt", so it can be a program name with args.
+set dummy gmsgfmt; ac_word=$2
+echo "$as_me:8400: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_GMSGFMT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $GMSGFMT in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_GMSGFMT="$ac_dir/$ac_word"
+   echo "$as_me:8417: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
+  ;;
+esac
+fi
+GMSGFMT=$ac_cv_path_GMSGFMT
+
+if test -n "$GMSGFMT"; then
+  echo "$as_me:8429: result: $GMSGFMT" >&5
+echo "${ECHO_T}$GMSGFMT" >&6
+else
+  echo "$as_me:8432: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+      # Extract the first word of "xgettext", so it can be a program name with args.
+
+set dummy xgettext; ac_word=$2
+echo "$as_me:8439: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_XGETTEXT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case "$XGETTEXT" in
+  [\\/]*|?:[\\/]*)
+  ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
+  ;;
+  *)
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word$ac_exeext; then
+      if $ac_dir/$ac_word --omit-header /dev/null >/dev/null 2>&1; then
+	ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exeext"
+	break
+      fi
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":"
+  ;;
+esac
+fi
+XGETTEXT="$ac_cv_path_XGETTEXT"
+if test "$XGETTEXT" != ":"; then
+  echo "$as_me:8466: result: $XGETTEXT" >&5
+echo "${ECHO_T}$XGETTEXT" >&6
+else
+  echo "$as_me:8469: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+      BUILD_INCLUDED_LIBINTL=yes
+      USE_INCLUDED_LIBINTL=yes
+      CATOBJEXT=.gmo
+      INTLLIBS="\$(top_builddir)/intl/libintl.a $LIBICONV"
+      LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
+    fi
+
+            if test "$GMSGFMT" != ":"; then
+                  if $GMSGFMT --statistics /dev/null >/dev/null 2>&1; then
+        : ;
+      else
+        echo "$as_me:8484: result: found msgfmt program is not GNU msgfmt; ignore it" >&5
+echo "${ECHO_T}found msgfmt program is not GNU msgfmt; ignore it" >&6
+        GMSGFMT=":"
+      fi
+    fi
+
+            if test "$XGETTEXT" != ":"; then
+                      if $XGETTEXT --omit-header /dev/null >/dev/null 2>&1; then
+        : ;
+      else
+        echo "$as_me:8494: result: found xgettext program is not GNU xgettext; ignore it" >&5
+echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6
+        XGETTEXT=":"
+      fi
+    fi
+
+        POSUB=po
+  fi
+
+  ac_config_commands="$ac_config_commands default-1"
+
+      if test "$PACKAGE" = gettext; then
+    BUILD_INCLUDED_LIBINTL=yes
+  fi
+
+                      if test "$nls_cv_use_gnu_gettext" = "yes"; then
+    for ac_prog in bison
+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 "$as_me:8514: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_INTLBISON+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$INTLBISON"; then
+  ac_cv_prog_INTLBISON="$INTLBISON" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_INTLBISON="$ac_prog"
+echo "$as_me:8529: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+INTLBISON=$ac_cv_prog_INTLBISON
+if test -n "$INTLBISON"; then
+  echo "$as_me:8537: result: $INTLBISON" >&5
+echo "${ECHO_T}$INTLBISON" >&6
+else
+  echo "$as_me:8540: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$INTLBISON" && break
+done
+
+    if test -z "$INTLBISON"; then
+      ac_verc_fail=yes
+    else
+            echo "$as_me:8550: checking version of bison" >&5
+echo $ECHO_N "checking version of bison... $ECHO_C" >&6
+      ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
+      case $ac_prog_version in
+        '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+        1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*)
+           ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+        *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+      esac
+    echo "$as_me:8559: result: $ac_prog_version" >&5
+echo "${ECHO_T}$ac_prog_version" >&6
+    fi
+    if test $ac_verc_fail = yes; then
+      INTLBISON=:
+    fi
+  fi
+
+        for lang in $ALL_LINGUAS; do
+    GMOFILES="$GMOFILES $lang.gmo"
+    POFILES="$POFILES $lang.po"
+  done
+
+    nls_cv_header_intl=
+  nls_cv_header_libgt=
+
+    DATADIRNAME=share
+
+    INSTOBJEXT=.mo
+
+    GENCAT=gencat
+
+   if test "x$CATOBJEXT" != "x"; then
+     if test "x$ALL_LINGUAS" = "x"; then
+       LINGUAS=
+     else
+       echo "$as_me:8585: checking for catalogs to be installed" >&5
+echo $ECHO_N "checking for catalogs to be installed... $ECHO_C" >&6
+       NEW_LINGUAS=
+       for presentlang in $ALL_LINGUAS; do
+         useit=no
+         for desiredlang in ${LINGUAS-$ALL_LINGUAS}; do
+           # Use the presentlang catalog if desiredlang is
+           #   a. equal to presentlang, or
+           #   b. a variant of presentlang (because in this case,
+           #      presentlang can be used as a fallback for messages
+           #      which are not translated in the desiredlang catalog).
+           case "$desiredlang" in
+             "$presentlang"*) useit=yes;;
+           esac
+         done
+         if test $useit = yes; then
+           NEW_LINGUAS="$NEW_LINGUAS $presentlang"
+         fi
+       done
+       LINGUAS=$NEW_LINGUAS
+       echo "$as_me:8605: result: $LINGUAS" >&5
+echo "${ECHO_T}$LINGUAS" >&6
+     fi
+
+          if test -n "$LINGUAS"; then
+       for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
+     fi
+   fi
+
+      INTL_LIBTOOL_SUFFIX_PREFIX=
+
+if test "$USE_NLS" = yes ; then
+
+# Check whether --with-textdomain or --without-textdomain was given.
+if test "${with_textdomain+set}" = set; then
+  withval="$with_textdomain"
+  NLS_TEXTDOMAIN=$withval
+else
+  NLS_TEXTDOMAIN=$PACKAGE
+fi;
+	cat >>confdefs.h <<EOF
+#define NLS_TEXTDOMAIN "$NLS_TEXTDOMAIN"
+EOF
+
+fi
+
+INTLDIR_MAKE=
+MSG_DIR_MAKE=
+SUB_MAKEFILE=
+
+cf_makefile=makefile
+
+use_our_messages=no
+if test "$USE_NLS" = yes ; then
+if test -d $srcdir/po ; then
+echo "$as_me:8640: checking if we should use included message-library" >&5
+echo $ECHO_N "checking if we should use included message-library... $ECHO_C" >&6
+
+# Check whether --enable-included-msgs or --disable-included-msgs was given.
+if test "${enable_included_msgs+set}" = set; then
+  enableval="$enable_included_msgs"
+  use_our_messages=$enableval
+else
+  use_our_messages=yes
+fi;
+fi
+echo "$as_me:8651: result: $use_our_messages" >&5
+echo "${ECHO_T}$use_our_messages" >&6
+fi
+
+MSG_DIR_MAKE="#"
+if test "$use_our_messages" = yes
+then
+	SUB_MAKEFILE="$SUB_MAKEFILE po/$cf_makefile.in:$srcdir/po/$cf_makefile.inn"
+	MSG_DIR_MAKE=
+fi
+
+if test "$USE_INCLUDED_LIBINTL" = yes ; then
+        if test "$nls_cv_force_use_gnu_gettext" = yes ; then
+		:
+	elif test "$nls_cv_use_gnu_gettext" = yes ; then
+		:
+	else
+		INTLDIR_MAKE="#"
+	fi
+	if test -z "$INTLDIR_MAKE"; then
+		cat >>confdefs.h <<\EOF
+#define HAVE_LIBGETTEXT_H 1
+EOF
+
+		for cf_makefile in \
+			$srcdir/intl/Makefile.in \
+			$srcdir/intl/makefile.in
+		do
+			if test -f "$cf_makefile" ; then
+				SUB_MAKEFILE="$SUB_MAKEFILE `echo \"${cf_makefile}\"|sed -e 's,^'$srcdir/',,' -e 's/\.in$//'`:${cf_makefile}"
+				break
+			fi
+		done
+	fi
+else
+	INTLDIR_MAKE="#"
+	if test "$USE_NLS" = yes ; then
+
+for ac_header in libintl.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:8692: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8698 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:8702: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:8708: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:8727: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+	fi
+fi
+
+if test -z "$INTLDIR_MAKE" ; then
+	CPPFLAGS="$CPPFLAGS -I../intl"
+fi
+
+if test "$BUILD_INCLUDED_LIBINTL" = yes ; then
+	GT_YES="#"
+	GT_NO=
+else
+	GT_YES=
+	GT_NO="#"
+fi
+
+if test "$USE_INCLUDED_LIBINTL" = yes ; then
+	if test "$nls_cv_force_use_gnu_gettext" = yes ; then
+		cat >>confdefs.h <<\EOF
+#define HAVE_GETTEXT 1
+EOF
+
+	elif test "$nls_cv_use_gnu_gettext" = yes ; then
+		cat >>confdefs.h <<\EOF
+#define HAVE_GETTEXT 1
+EOF
+
+	fi
+	if test -n "$nls_cv_header_intl" ; then
+		cat >>confdefs.h <<\EOF
+#define HAVE_LIBINTL_H 1
+EOF
+
+	fi
+fi
+
+INTLDIR_CPPFLAGS="#"
+if test -z "$INTLDIR_MAKE" ; then
+	INTLDIR_CPPFLAGS=
+fi
+
+# Check whether --with-nls-datadir or --without-nls-datadir was given.
+if test "${with_nls_datadir+set}" = set; then
+  withval="$with_nls_datadir"
+
+else
+  withval="${NLS_DATADIR:-$prefix/$DATADIRNAME}"
+fi; if test -n "$prefix/$DATADIRNAME" ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$withval" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval withval="$withval"
+  case ".$withval" in #(vi
+  .NONE/*)
+    withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  { { echo "$as_me:8810: error: expected a pathname, not \"$withval\"" >&5
+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
+   { (exit 1); exit 1; }; }
+  ;;
+esac
+
+fi
+NLS_DATADIR="$withval"
+
+echo "$as_me:8819: checking if you want full utility pathnames" >&5
+echo $ECHO_N "checking if you want full utility pathnames... $ECHO_C" >&6
+
+# Check whether --enable-full-paths or --disable-full-paths was given.
+if test "${enable_full_paths+set}" = set; then
+  enableval="$enable_full_paths"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    with_full_paths=no
+  else
+    with_full_paths=yes
+  fi
+else
+  enableval=yes
+  with_full_paths=yes
+
+fi;
+echo "$as_me:8836: result: $with_full_paths" >&5
+echo "${ECHO_T}$with_full_paths" >&6
+test $with_full_paths = no && cat >>confdefs.h <<\EOF
+#define USE_EXECVP 1
+EOF
+
+echo "$as_me:8842: checking for system mailer" >&5
+echo $ECHO_N "checking for system mailer... $ECHO_C" >&6
+if test "${cf_cv_SYSTEM_MAIL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_cv_SYSTEM_MAIL=unknown
+	for cv_path in /usr/mmdf/bin/submit \
+	/usr/sbin/sendmail \
+	/usr/lib/sendmail  \
+
+	do
+		if test -f $cv_path ; then
+			cf_cv_SYSTEM_MAIL=$cv_path
+			break
+		fi
+	done
+
+fi
+
+echo "$as_me:8862: result: $cf_cv_SYSTEM_MAIL" >&5
+echo "${ECHO_T}$cf_cv_SYSTEM_MAIL" >&6
+cat >>confdefs.h <<EOF
+#define SYSTEM_MAIL "$cf_cv_SYSTEM_MAIL"
+EOF
+
+echo "$as_me:8868: checking system mail flags" >&5
+echo $ECHO_N "checking system mail flags... $ECHO_C" >&6
+if test "${cf_cv_system_mail_flags+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	case $cf_cv_SYSTEM_MAIL in
+	*/mmdf/*)
+		cf_cv_system_mail_flags="-mlruxto,cc\\\\*"
+        	;;
+	*)
+        	cf_cv_system_mail_flags="-t -oi"
+	esac
+
+fi
+
+echo "$as_me:8884: result: $cf_cv_system_mail_flags" >&5
+echo "${ECHO_T}$cf_cv_system_mail_flags" >&6
+cat >>confdefs.h <<EOF
+#define SYSTEM_MAIL_FLAGS "$cf_cv_system_mail_flags"
+EOF
+
+if test -n "$SYSTEM_MAIL" ; then
+if test $with_full_paths = no ; then
+	SYSTEM_MAIL=`basename $SYSTEM_MAIL`
+fi
+fi
+
+cf_XOPEN_SOURCE=500
+cf_POSIX_C_SOURCE=199506L
+cf_xopen_source=
+
+case $host_os in #(vi
+aix[4-7]*) #(vi
+	cf_xopen_source="-D_ALL_SOURCE"
+	;;
+cygwin) #(vi
+	cf_XOPEN_SOURCE=600
+	;;
+darwin[0-8].*) #(vi
+	cf_xopen_source="-D_APPLE_C_SOURCE"
+	;;
+darwin*) #(vi
+	cf_xopen_source="-D_DARWIN_C_SOURCE"
+	cf_XOPEN_SOURCE=
+	;;
+freebsd*|dragonfly*) #(vi
+	# 5.x headers associate
+	#	_XOPEN_SOURCE=600 with _POSIX_C_SOURCE=200112L
+	#	_XOPEN_SOURCE=500 with _POSIX_C_SOURCE=199506L
+	cf_POSIX_C_SOURCE=200112L
+	cf_XOPEN_SOURCE=600
+	cf_xopen_source="-D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
+	;;
+hpux11*) #(vi
+	cf_xopen_source="-D_HPUX_SOURCE -D_XOPEN_SOURCE=500"
+	;;
+hpux*) #(vi
+	cf_xopen_source="-D_HPUX_SOURCE"
+	;;
+irix[56].*) #(vi
+	cf_xopen_source="-D_SGI_SOURCE"
+	cf_XOPEN_SOURCE=
+	;;
+linux*|gnu*|mint*|k*bsd*-gnu) #(vi
+
+echo "$as_me:8934: checking if we must define _GNU_SOURCE" >&5
+echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6
+if test "${cf_cv_gnu_source+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 8941 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifndef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8956: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8959: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8962: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8965: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_gnu_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_save="$CPPFLAGS"
+	 CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+	 cat >conftest.$ac_ext <<_ACEOF
+#line 8974 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifdef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8989: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8992: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8995: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8998: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_gnu_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_gnu_source=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	CPPFLAGS="$cf_save"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:9013: result: $cf_cv_gnu_source" >&5
+echo "${ECHO_T}$cf_cv_gnu_source" >&6
+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+
+	;;
+mirbsd*) #(vi
+	# setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types
+	cf_XOPEN_SOURCE=
+
+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE
+
+cf_save_CFLAGS="$CFLAGS"
+cf_save_CPPFLAGS="$CPPFLAGS"
+
+cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \
+	sed	-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ 	]*\)\?$//g'`
+
+cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \
+	sed	-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ 	]*\)\?$//g'`
+
+echo "$as_me:9035: checking if we should define _POSIX_C_SOURCE" >&5
+echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6
+if test "${cf_cv_posix_c_source+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+echo "${as_me:-configure}:9041: testing if the symbol is already defined go no further ..." 1>&5
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 9044 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifndef _POSIX_C_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9059: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9062: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9065: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9068: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_posix_c_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_want_posix_source=no
+	 case .$cf_POSIX_C_SOURCE in #(vi
+	 .[12]??*) #(vi
+		cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
+		;;
+	 .2) #(vi
+		cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
+		cf_want_posix_source=yes
+		;;
+	 .*)
+		cf_want_posix_source=yes
+		;;
+	 esac
+	 if test "$cf_want_posix_source" = yes ; then
+		cat >conftest.$ac_ext <<_ACEOF
+#line 9089 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifdef _POSIX_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9104: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9107: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9110: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9113: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	 fi
+
+echo "${as_me:-configure}:9124: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
+
+	 CFLAGS="$cf_trim_CFLAGS"
+	 CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
+
+echo "${as_me:-configure}:9129: testing if the second compile does not leave our definition intact error ..." 1>&5
+
+	 cat >conftest.$ac_ext <<_ACEOF
+#line 9132 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifndef _POSIX_C_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9147: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9150: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9153: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9156: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_posix_c_source=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	 CFLAGS="$cf_save_CFLAGS"
+	 CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:9172: result: $cf_cv_posix_c_source" >&5
+echo "${ECHO_T}$cf_cv_posix_c_source" >&6
+
+if test "$cf_cv_posix_c_source" != no ; then
+	CFLAGS="$cf_trim_CFLAGS"
+	CPPFLAGS="$cf_trim_CPPFLAGS"
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_cv_posix_c_source
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+fi
+
+	;;
+netbsd*) #(vi
+	cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
+	;;
+openbsd[4-9]*) #(vi
+	# setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw
+	cf_xopen_source="-D_BSD_SOURCE"
+	cf_XOPEN_SOURCE=600
+	;;
+openbsd*) #(vi
+	# setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
+	;;
+osf[45]*) #(vi
+	cf_xopen_source="-D_OSF_SOURCE"
+	;;
+nto-qnx*) #(vi
+	cf_xopen_source="-D_QNX_SOURCE"
+	;;
+sco*) #(vi
+	# setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
+	;;
+solaris2.*) #(vi
+	cf_xopen_source="-D__EXTENSIONS__"
+	;;
+*)
+
+echo "$as_me:9285: checking if we should define _XOPEN_SOURCE" >&5
+echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6
+if test "${cf_cv_xopen_source+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 9292 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+
+int
+main ()
+{
+
+#ifndef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9311: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9314: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9317: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9320: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xopen_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_save="$CPPFLAGS"
+	 CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
+	 cat >conftest.$ac_ext <<_ACEOF
+#line 9329 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+
+int
+main ()
+{
+
+#ifdef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9348: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9351: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9354: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9357: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xopen_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_xopen_source=$cf_XOPEN_SOURCE
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	CPPFLAGS="$cf_save"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:9372: result: $cf_cv_xopen_source" >&5
+echo "${ECHO_T}$cf_cv_xopen_source" >&6
+
+if test "$cf_cv_xopen_source" != no ; then
+
+CFLAGS=`echo "$CFLAGS" | \
+	sed	-e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ 	]*\)\?$//g'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ 	]*\)\?$//g'`
+
+	cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_temp_xopen_source
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+fi
+
+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE
+
+cf_save_CFLAGS="$CFLAGS"
+cf_save_CPPFLAGS="$CPPFLAGS"
+
+cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \
+	sed	-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ 	]*\)\?$//g'`
+
+cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \
+	sed	-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ 	]*\)\?$//g'`
+
+echo "$as_me:9480: checking if we should define _POSIX_C_SOURCE" >&5
+echo $ECHO_N "checking if we should define _POSIX_C_SOURCE... $ECHO_C" >&6
+if test "${cf_cv_posix_c_source+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+echo "${as_me:-configure}:9486: testing if the symbol is already defined go no further ..." 1>&5
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 9489 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifndef _POSIX_C_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9504: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9507: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9510: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9513: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_posix_c_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_want_posix_source=no
+	 case .$cf_POSIX_C_SOURCE in #(vi
+	 .[12]??*) #(vi
+		cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
+		;;
+	 .2) #(vi
+		cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
+		cf_want_posix_source=yes
+		;;
+	 .*)
+		cf_want_posix_source=yes
+		;;
+	 esac
+	 if test "$cf_want_posix_source" = yes ; then
+		cat >conftest.$ac_ext <<_ACEOF
+#line 9534 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifdef _POSIX_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9549: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9552: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9555: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9558: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	 fi
+
+echo "${as_me:-configure}:9569: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
+
+	 CFLAGS="$cf_trim_CFLAGS"
+	 CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
+
+echo "${as_me:-configure}:9574: testing if the second compile does not leave our definition intact error ..." 1>&5
+
+	 cat >conftest.$ac_ext <<_ACEOF
+#line 9577 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+int
+main ()
+{
+
+#ifndef _POSIX_C_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9592: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9595: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9598: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9601: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_posix_c_source=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	 CFLAGS="$cf_save_CFLAGS"
+	 CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:9617: result: $cf_cv_posix_c_source" >&5
+echo "${ECHO_T}$cf_cv_posix_c_source" >&6
+
+if test "$cf_cv_posix_c_source" != no ; then
+	CFLAGS="$cf_trim_CFLAGS"
+	CPPFLAGS="$cf_trim_CPPFLAGS"
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_cv_posix_c_source
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+fi
+
+	;;
+esac
+
+if test -n "$cf_xopen_source" ; then
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_xopen_source
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+fi
+
+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
+	echo "$as_me:9790: checking if _XOPEN_SOURCE really is set" >&5
+echo $ECHO_N "checking if _XOPEN_SOURCE really is set... $ECHO_C" >&6
+	cat >conftest.$ac_ext <<_ACEOF
+#line 9793 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+int
+main ()
+{
+
+#ifndef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9808: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9811: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9814: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9817: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_XOPEN_SOURCE_set=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_XOPEN_SOURCE_set=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	echo "$as_me:9826: result: $cf_XOPEN_SOURCE_set" >&5
+echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6
+	if test $cf_XOPEN_SOURCE_set = yes
+	then
+		cat >conftest.$ac_ext <<_ACEOF
+#line 9831 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+int
+main ()
+{
+
+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9846: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9849: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9852: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9855: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_XOPEN_SOURCE_set_ok=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_XOPEN_SOURCE_set_ok=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+		if test $cf_XOPEN_SOURCE_set_ok = no
+		then
+			{ echo "$as_me:9866: WARNING: _XOPEN_SOURCE is lower than requested" >&5
+echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;}
+		fi
+	else
+
+echo "$as_me:9871: checking if we should define _XOPEN_SOURCE" >&5
+echo $ECHO_N "checking if we should define _XOPEN_SOURCE... $ECHO_C" >&6
+if test "${cf_cv_xopen_source+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 9878 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+
+int
+main ()
+{
+
+#ifndef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9897: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9900: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9903: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9906: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xopen_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_save="$CPPFLAGS"
+	 CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
+	 cat >conftest.$ac_ext <<_ACEOF
+#line 9915 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+
+int
+main ()
+{
+
+#ifdef _XOPEN_SOURCE
+make an error
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:9934: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:9937: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:9940: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9943: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xopen_source=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_xopen_source=$cf_XOPEN_SOURCE
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	CPPFLAGS="$cf_save"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:9958: result: $cf_cv_xopen_source" >&5
+echo "${ECHO_T}$cf_cv_xopen_source" >&6
+
+if test "$cf_cv_xopen_source" != no ; then
+
+CFLAGS=`echo "$CFLAGS" | \
+	sed	-e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ 	]*\)\?$//g'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ 	]*\)\?$//g'`
+
+	cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_temp_xopen_source
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+fi
+
+	fi
+fi
+
+echo "$as_me:10056: checking if SIGWINCH is defined" >&5
+echo $ECHO_N "checking if SIGWINCH is defined... $ECHO_C" >&6
+if test "${cf_cv_define_sigwinch+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 10063 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <sys/signal.h>
+
+int
+main ()
+{
+int x = SIGWINCH
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10078: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10081: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10084: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10087: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_define_sigwinch=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 10094 "configure"
+#include "confdefs.h"
+
+#undef _XOPEN_SOURCE
+#undef _POSIX_SOURCE
+#undef _POSIX_C_SOURCE
+#include <sys/types.h>
+#include <sys/signal.h>
+
+int
+main ()
+{
+int x = SIGWINCH
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10112: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10115: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10118: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10121: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_define_sigwinch=maybe
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_define_sigwinch=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:10135: result: $cf_cv_define_sigwinch" >&5
+echo "${ECHO_T}$cf_cv_define_sigwinch" >&6
+
+if test "$cf_cv_define_sigwinch" = maybe ; then
+echo "$as_me:10139: checking for actual SIGWINCH definition" >&5
+echo $ECHO_N "checking for actual SIGWINCH definition... $ECHO_C" >&6
+if test "${cf_cv_fixup_sigwinch+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_fixup_sigwinch=unknown
+cf_sigwinch=32
+while test $cf_sigwinch != 1
+do
+	cat >conftest.$ac_ext <<_ACEOF
+#line 10150 "configure"
+#include "confdefs.h"
+
+#undef _XOPEN_SOURCE
+#undef _POSIX_SOURCE
+#undef _POSIX_C_SOURCE
+#include <sys/types.h>
+#include <sys/signal.h>
+
+int
+main ()
+{
+
+#if SIGWINCH != $cf_sigwinch
+make an error
+#endif
+int x = SIGWINCH
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10172: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10175: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10178: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10181: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_fixup_sigwinch=$cf_sigwinch
+	 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+cf_sigwinch=`expr $cf_sigwinch - 1`
+done
+
+fi
+echo "$as_me:10195: result: $cf_cv_fixup_sigwinch" >&5
+echo "${ECHO_T}$cf_cv_fixup_sigwinch" >&6
+
+	if test "$cf_cv_fixup_sigwinch" != unknown ; then
+		CPPFLAGS="$CPPFLAGS -DSIGWINCH=$cf_cv_fixup_sigwinch"
+	fi
+fi
+
+if test -n "$TRY_CFLAGS" ; then
+
+test -n "$verbose" && echo "	checking additions to CFLAGS" 1>&6
+
+echo "${as_me:-configure}:10207: testing checking additions to CFLAGS ..." 1>&5
+
+cf_check_cflags="$CFLAGS"
+cf_check_cppflags="$CPPFLAGS"
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $TRY_CFLAGS
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+	test -n "$verbose" && echo "	add to \$CFLAGS $cf_new_cflags" 1>&6
+
+echo "${as_me:-configure}:10278: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+	test -n "$verbose" && echo "	add to \$CPPFLAGS $cf_new_cppflags" 1>&6
+
+echo "${as_me:-configure}:10286: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+	test -n "$verbose" && echo "	add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6
+
+echo "${as_me:-configure}:10294: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+if test "$cf_check_cflags" != "$CFLAGS" ; then
+cat >conftest.$ac_ext <<_ACEOF
+#line 10301 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello world");
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10313: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10316: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10319: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10322: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+test -n "$verbose" && echo "	test-compile failed.  Undoing change to \$CFLAGS" 1>&6
+
+echo "${as_me:-configure}:10330: testing test-compile failed.  Undoing change to \$CFLAGS ..." 1>&5
+
+	 if test "$cf_check_cppflags" != "$CPPFLAGS" ; then
+		 test -n "$verbose" && echo "	but keeping change to \$CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:10335: testing but keeping change to \$CPPFLAGS ..." 1>&5
+
+	 fi
+	 CFLAGS="$cf_check_flags"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+
+fi
+
+### Look for network libraries first, since some functions (such as gethostname)
+### are used in a lot of places.
+echo "$as_me:10347: checking if you want NSS compatible SSL libraries" >&5
+echo $ECHO_N "checking if you want NSS compatible SSL libraries... $ECHO_C" >&6
+if test "${cf_cv_use_libnss_compat+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# Check whether --with-nss-compat or --without-nss-compat was given.
+if test "${with_nss_compat+set}" = set; then
+  withval="$with_nss_compat"
+  cf_cv_use_libnss_compat=$withval
+else
+  cf_cv_use_libnss_compat=no
+fi;
+
+fi
+echo "$as_me:10362: result: $cf_cv_use_libnss_compat" >&5
+echo "${ECHO_T}$cf_cv_use_libnss_compat" >&6
+
+echo "$as_me:10365: checking if you want ssl library" >&5
+echo $ECHO_N "checking if you want ssl library... $ECHO_C" >&6
+if test "${cf_cv_use_libssl+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# Check whether --with-ssl or --without-ssl was given.
+if test "${with_ssl+set}" = set; then
+  withval="$with_ssl"
+  cf_cv_use_libssl=$withval
+else
+  cf_cv_use_libssl=no
+fi;
+
+fi
+echo "$as_me:10380: result: $cf_cv_use_libssl" >&5
+echo "${ECHO_T}$cf_cv_use_libssl" >&6
+
+echo "$as_me:10383: checking if you want gnutls support" >&5
+echo $ECHO_N "checking if you want gnutls support... $ECHO_C" >&6
+if test "${cf_cv_use_libgnutls+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# Check whether --with-gnutls or --without-gnutls was given.
+if test "${with_gnutls+set}" = set; then
+  withval="$with_gnutls"
+  cf_cv_use_libgnutls=$withval
+else
+  cf_cv_use_libgnutls=no
+fi;
+
+fi
+echo "$as_me:10398: result: $cf_cv_use_libgnutls" >&5
+echo "${ECHO_T}$cf_cv_use_libgnutls" >&6
+
+# this option is mainly for comparing with/without Lynx's wrapper for GNUTLS.
+echo "$as_me:10402: checking if you want gnutls-openssl compat" >&5
+echo $ECHO_N "checking if you want gnutls-openssl compat... $ECHO_C" >&6
+if test "${cf_cv_gnutls_compat+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# Check whether --enable-gnutls-compat or --disable-gnutls-compat was given.
+if test "${enable_gnutls_compat+set}" = set; then
+  enableval="$enable_gnutls_compat"
+  cf_cv_gnutls_compat=$enableval
+else
+  cf_cv_gnutls_compat=no
+fi;
+
+fi
+echo "$as_me:10417: result: $cf_cv_gnutls_compat" >&5
+echo "${ECHO_T}$cf_cv_gnutls_compat" >&6
+
+echo "$as_me:10420: checking if you want socks library" >&5
+echo $ECHO_N "checking if you want socks library... $ECHO_C" >&6
+if test "${cf_cv_use_libsocks+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# Check whether --with-socks or --without-socks was given.
+if test "${with_socks+set}" = set; then
+  withval="$with_socks"
+  cf_cv_use_libsocks=$withval
+else
+  cf_cv_use_libsocks=no
+fi;
+
+fi
+echo "$as_me:10435: result: $cf_cv_use_libsocks" >&5
+echo "${ECHO_T}$cf_cv_use_libsocks" >&6
+
+echo "$as_me:10438: checking if you want socks5 library" >&5
+echo $ECHO_N "checking if you want socks5 library... $ECHO_C" >&6
+if test "${cf_cv_use_libsocks5+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# Check whether --with-socks5 or --without-socks5 was given.
+if test "${with_socks5+set}" = set; then
+  withval="$with_socks5"
+  cf_cv_use_libsocks5=$withval
+else
+  cf_cv_use_libsocks5=no
+fi;
+
+fi
+echo "$as_me:10453: result: $cf_cv_use_libsocks5" >&5
+echo "${ECHO_T}$cf_cv_use_libsocks5" >&6
+
+if test "x$cf_cv_use_libsocks" != xno ; then
+
+  case "$cf_cv_use_libsocks" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$cf_cv_use_libsocks" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 10492 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10504: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10507: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10510: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10513: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:10530: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 10571 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10583: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10586: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10589: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10592: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:10609: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:10625: error: cannot find socks library under $cf_cv_use_libsocks" >&5
+echo "$as_me: error: cannot find socks library under $cf_cv_use_libsocks" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:10650: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:10679: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:10688: error: cannot find socks library under $cf_cv_use_libsocks" >&5
+echo "$as_me: error: cannot find socks library under $cf_cv_use_libsocks" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_socks=
+cf_cv_library_path_socks=
+
+echo "${as_me:-configure}:10702: testing Starting FIND_LINKAGE(socks,) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 10707 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+
+int
+main ()
+{
+
+      Raccept((char *)0)
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10723: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10726: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10729: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10732: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_socks=yes
+	cf_cv_header_path_socks=/usr/include
+	cf_cv_library_path_socks=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-lsocks  $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 10746 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+
+int
+main ()
+{
+
+      Raccept((char *)0)
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10762: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10765: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10768: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10771: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_socks=yes
+	cf_cv_header_path_socks=/usr/include
+	cf_cv_library_path_socks=/usr/lib
+	cf_cv_library_file_socks="-lsocks"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_socks=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for socks library" 1>&6
+
+echo "${as_me:-configure}:10788: testing find linkage for socks library ..." 1>&5
+
+echo "${as_me:-configure}:10790: testing Searching for headers in FIND_LINKAGE(socks,) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/socks &&       cf_search="$cf_search $cf_header_path/include/socks"
+	test -d $cf_header_path/include/socks/include &&    cf_search="$cf_search $cf_header_path/include/socks/include"
+	test -d $cf_header_path/socks/include &&       cf_search="$cf_search $cf_header_path/socks/include"
+	test -d $cf_header_path/socks/include/socks &&    cf_search="$cf_search $cf_header_path/socks/include/socks"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/socks &&       cf_search="$cf_search /usr/include/socks"
+	test -d /usr/include/socks/include &&    cf_search="$cf_search /usr/include/socks/include"
+	test -d /usr/socks/include &&       cf_search="$cf_search /usr/socks/include"
+	test -d /usr/socks/include/socks &&    cf_search="$cf_search /usr/socks/include/socks"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/socks &&       cf_search="$cf_search $prefix/include/socks"
+	test -d $prefix/include/socks/include &&    cf_search="$cf_search $prefix/include/socks/include"
+	test -d $prefix/socks/include &&       cf_search="$cf_search $prefix/socks/include"
+	test -d $prefix/socks/include/socks &&    cf_search="$cf_search $prefix/socks/include/socks"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/socks &&       cf_search="$cf_search /usr/local/include/socks"
+	test -d /usr/local/include/socks/include &&    cf_search="$cf_search /usr/local/include/socks/include"
+	test -d /usr/local/socks/include &&       cf_search="$cf_search /usr/local/socks/include"
+	test -d /usr/local/socks/include/socks &&    cf_search="$cf_search /usr/local/socks/include/socks"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/socks &&       cf_search="$cf_search /opt/include/socks"
+	test -d /opt/include/socks/include &&    cf_search="$cf_search /opt/include/socks/include"
+	test -d /opt/socks/include &&       cf_search="$cf_search /opt/socks/include"
+	test -d /opt/socks/include/socks &&    cf_search="$cf_search /opt/socks/include/socks"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/socks &&       cf_search="$cf_search $HOME/include/socks"
+	test -d $HOME/include/socks/include &&    cf_search="$cf_search $HOME/include/socks/include"
+	test -d $HOME/socks/include &&       cf_search="$cf_search $HOME/socks/include"
+	test -d $HOME/socks/include/socks &&    cf_search="$cf_search $HOME/socks/include/socks"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/socks && cf_search="$cf_search $includedir/socks"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/socks && cf_search="$cf_search $oldincludedir/socks"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_socks in $cf_search
+    do
+      if test -d $cf_cv_header_path_socks ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_socks" 1>&6
+
+echo "${as_me:-configure}:10903: testing ... testing $cf_cv_header_path_socks ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_socks"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 10907 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+
+int
+main ()
+{
+
+      Raccept((char *)0)
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10923: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10926: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10929: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10932: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found socks headers in $cf_cv_header_path_socks" 1>&6
+
+echo "${as_me:-configure}:10937: testing ... found socks headers in $cf_cv_header_path_socks ..." 1>&5
+
+            cf_cv_find_linkage_socks=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_socks" = maybe ; then
+
+echo "${as_me:-configure}:10955: testing Searching for socks library in FIND_LINKAGE(socks,) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+      if test "$cf_cv_find_linkage_socks" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/socks &&       cf_search="$cf_search $cf_library_path/lib/socks"
+	test -d $cf_library_path/lib/socks/lib &&    cf_search="$cf_search $cf_library_path/lib/socks/lib"
+	test -d $cf_library_path/socks/lib &&       cf_search="$cf_search $cf_library_path/socks/lib"
+	test -d $cf_library_path/socks/lib/socks &&    cf_search="$cf_search $cf_library_path/socks/lib/socks"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/socks &&       cf_search="$cf_search /usr/lib/socks"
+	test -d /usr/lib/socks/lib &&    cf_search="$cf_search /usr/lib/socks/lib"
+	test -d /usr/socks/lib &&       cf_search="$cf_search /usr/socks/lib"
+	test -d /usr/socks/lib/socks &&    cf_search="$cf_search /usr/socks/lib/socks"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/socks &&       cf_search="$cf_search $prefix/lib/socks"
+	test -d $prefix/lib/socks/lib &&    cf_search="$cf_search $prefix/lib/socks/lib"
+	test -d $prefix/socks/lib &&       cf_search="$cf_search $prefix/socks/lib"
+	test -d $prefix/socks/lib/socks &&    cf_search="$cf_search $prefix/socks/lib/socks"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/socks &&       cf_search="$cf_search /usr/local/lib/socks"
+	test -d /usr/local/lib/socks/lib &&    cf_search="$cf_search /usr/local/lib/socks/lib"
+	test -d /usr/local/socks/lib &&       cf_search="$cf_search /usr/local/socks/lib"
+	test -d /usr/local/socks/lib/socks &&    cf_search="$cf_search /usr/local/socks/lib/socks"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/socks &&       cf_search="$cf_search /opt/lib/socks"
+	test -d /opt/lib/socks/lib &&    cf_search="$cf_search /opt/lib/socks/lib"
+	test -d /opt/socks/lib &&       cf_search="$cf_search /opt/socks/lib"
+	test -d /opt/socks/lib/socks &&    cf_search="$cf_search /opt/socks/lib/socks"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/socks &&       cf_search="$cf_search $HOME/lib/socks"
+	test -d $HOME/lib/socks/lib &&    cf_search="$cf_search $HOME/lib/socks/lib"
+	test -d $HOME/socks/lib &&       cf_search="$cf_search $HOME/socks/lib"
+	test -d $HOME/socks/lib/socks &&    cf_search="$cf_search $HOME/socks/lib/socks"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_socks in $cf_search
+        do
+          if test -d $cf_cv_library_path_socks ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_socks" 1>&6
+
+echo "${as_me:-configure}:11052: testing ... testing $cf_cv_library_path_socks ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-lsocks  $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_socks"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 11058 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+
+int
+main ()
+{
+
+      Raccept((char *)0)
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11074: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11077: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11080: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11083: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found socks library in $cf_cv_library_path_socks" 1>&6
+
+echo "${as_me:-configure}:11088: testing ... found socks library in $cf_cv_library_path_socks ..." 1>&5
+
+                cf_cv_find_linkage_socks=yes
+                cf_cv_library_file_socks="-lsocks"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_socks=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_socks" = yes ; then
+
+if test -n "$cf_cv_header_path_socks" ; then
+  for cf_add_incdir in $cf_cv_header_path_socks
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 11147 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:11159: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:11162: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:11165: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11168: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:11185: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+if test -n "$cf_cv_library_path_socks" ; then
+  for cf_add_libdir in $cf_cv_library_path_socks
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:11219: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	LIBS="-lsocks $LIBS"
+
+else
+{ echo "$as_me:11230: WARNING: Cannot find socks library" >&5
+echo "$as_me: WARNING: Cannot find socks library" >&2;}
+fi
+
+  if test "x$cf_cv_find_linkage_socks" = "xyes" ; then
+    cat >>confdefs.h <<\EOF
+#define SOCKS 1
+EOF
+
+    cat >>confdefs.h <<\EOF
+#define accept Raccept
+EOF
+
+    cat >>confdefs.h <<\EOF
+#define bind Rbind
+EOF
+
+    cat >>confdefs.h <<\EOF
+#define connect Rconnect
+EOF
+
+    cat >>confdefs.h <<\EOF
+#define getpeername Rgetpeername
+EOF
+
+    cat >>confdefs.h <<\EOF
+#define getsockname Rgetsockname
+EOF
+
+    cat >>confdefs.h <<\EOF
+#define listen Rlisten
+EOF
+
+    cat >>confdefs.h <<\EOF
+#define recvfrom Rrecvfrom
+EOF
+
+    cat >>confdefs.h <<\EOF
+#define select Rselect
+EOF
+
+  else
+    { { echo "$as_me:11272: error: cannot link with socks library" >&5
+echo "$as_me: error: cannot link with socks library" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+
+elif test "x$cf_cv_use_libsocks5" != xno ; then
+
+  case "$cf_cv_use_libsocks5" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$cf_cv_use_libsocks5" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 11313 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:11325: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:11328: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:11331: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11334: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:11351: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 11392 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:11404: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:11407: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:11410: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11413: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:11430: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:11446: error: cannot find socks5 library under $cf_cv_use_libsocks5" >&5
+echo "$as_me: error: cannot find socks5 library under $cf_cv_use_libsocks5" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:11471: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:11500: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:11509: error: cannot find socks5 library under $cf_cv_use_libsocks5" >&5
+echo "$as_me: error: cannot find socks5 library under $cf_cv_use_libsocks5" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+LIBS="-lsocks5 $LIBS"
+
+cat >>confdefs.h <<\EOF
+#define USE_SOCKS5 1
+EOF
+
+cat >>confdefs.h <<\EOF
+#define SOCKS 1
+EOF
+
+echo "$as_me:11528: checking if the socks library uses socks4 prefix" >&5
+echo $ECHO_N "checking if the socks library uses socks4 prefix... $ECHO_C" >&6
+cf_use_socks4=error
+cat >conftest.$ac_ext <<_ACEOF
+#line 11532 "configure"
+#include "confdefs.h"
+
+#include <socks.h>
+int
+main ()
+{
+
+	Rinit((char *)0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11546: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11549: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11552: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11555: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cat >>confdefs.h <<\EOF
+#define USE_SOCKS4_PREFIX 1
+EOF
+
+	 cf_use_socks4=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 11566 "configure"
+#include "confdefs.h"
+#include <socks.h>
+int
+main ()
+{
+SOCKSinit((char *)0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11578: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11581: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11584: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11587: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_use_socks4=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+{ { echo "$as_me:11593: error: Cannot link with socks5 library" >&5
+echo "$as_me: error: Cannot link with socks5 library" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+echo "$as_me:11600: result: $cf_use_socks4" >&5
+echo "${ECHO_T}$cf_use_socks4" >&6
+
+if test "$cf_use_socks4" = "yes" ; then
+	cat >>confdefs.h <<\EOF
+#define accept Raccept
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define bind Rbind
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define connect Rconnect
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define getpeername Rgetpeername
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define getsockname Rgetsockname
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define listen Rlisten
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define recvfrom Rrecvfrom
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define select Rselect
+EOF
+
+else
+	cat >>confdefs.h <<\EOF
+#define accept SOCKSaccept
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define getpeername SOCKSgetpeername
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define getsockname SOCKSgetsockname
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define recvfrom SOCKSrecvfrom
+EOF
+
+fi
+
+echo "$as_me:11655: checking if socks5p.h is available" >&5
+echo $ECHO_N "checking if socks5p.h is available... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 11658 "configure"
+#include "confdefs.h"
+
+#define INCLUDE_PROTOTYPES
+#include <socks.h>
+int
+main ()
+{
+
+	init((char *)0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:11673: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:11676: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:11679: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11682: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_use_socks5p_h=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_use_socks5p_h=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:11691: result: $cf_use_socks5p_h" >&5
+echo "${ECHO_T}$cf_use_socks5p_h" >&6
+
+test "$cf_use_socks5p_h" = yes && cat >>confdefs.h <<\EOF
+#define INCLUDE_PROTOTYPES 1
+EOF
+
+else
+
+cf_test_netlibs=no
+
+echo "$as_me:11702: checking for network libraries" >&5
+echo $ECHO_N "checking for network libraries... $ECHO_C" >&6
+
+if test "${cf_cv_netlibs+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+echo "$as_me:11709: result: working..." >&5
+echo "${ECHO_T}working..." >&6
+
+cf_cv_netlibs=""
+cf_test_netlibs=yes
+
+case $host_os in #(vi
+mingw32) # (vi
+
+for ac_header in windows.h winsock.h winsock2.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:11721: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11727 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:11731: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:11737: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:11756: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+	if test "$ac_cv_header_winsock2_h" = "yes" ; then
+		cf_winsock_lib="-lws2_32"
+	elif test "$ac_cv_header_winsock_h" = "yes" ; then
+		cf_winsock_lib="-lwsock32"
+	fi
+
+	cf_save_LIBS="$LIBS"
+	LIBS="$cf_winsock_lib $LIBS"
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 11776 "configure"
+#include "confdefs.h"
+
+#ifdef HAVE_WINDOWS_H
+#undef WIN32_LEAN_AND_MEAN
+#define WIN32_LEAN_AND_MEAN
+#include <windows.h>
+#ifdef HAVE_WINSOCK2_H
+#include <winsock2.h>
+#else
+#ifdef HAVE_WINSOCK_H
+#include <winsock.h>
+#endif
+#endif
+#endif
+
+int
+main ()
+{
+
+	char buffer[1024];
+	gethostname(buffer, sizeof(buffer));
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11803: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11806: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11809: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11812: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_netlibs="$cf_winsock_lib $cf_cv_netlibs"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+{ { echo "$as_me:11818: error: Cannot link against winsock library" >&5
+echo "$as_me: error: Cannot link against winsock library" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+	LIBS="$cf_save_LIBS"
+	;;
+*)
+
+for ac_func in gethostname
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:11831: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11837 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11868: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11871: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11874: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11877: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:11887: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+else
+
+echo "$as_me:11896: checking for gethostname in -lnsl" >&5
+echo $ECHO_N "checking for gethostname in -lnsl... $ECHO_C" >&6
+if test "${ac_cv_lib_nsl_gethostname+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lnsl $cf_cv_netlibs $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 11904 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char gethostname ();
+int
+main ()
+{
+gethostname ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11923: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11926: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11929: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11932: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_nsl_gethostname=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_nsl_gethostname=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:11943: result: $ac_cv_lib_nsl_gethostname" >&5
+echo "${ECHO_T}$ac_cv_lib_nsl_gethostname" >&6
+if test $ac_cv_lib_nsl_gethostname = yes; then
+
+cf_tr_func=`echo "gethostname" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_gethostname=yes
+	if test "$cf_used_lib_nsl" != yes ; then cf_used_lib_nsl=yes; cf_cv_netlibs="-lnsl $cf_cv_netlibs"; fi
+else
+
+	ac_cv_func_gethostname=unknown
+	unset ac_cv_func_gethostname 2>/dev/null
+
+echo "$as_me:11960: checking for gethostname in -lsocket" >&5
+echo $ECHO_N "checking for gethostname in -lsocket... $ECHO_C" >&6
+if test "${ac_cv_lib_socket_gethostname+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsocket $cf_cv_netlibs $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 11968 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char gethostname ();
+int
+main ()
+{
+gethostname ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11987: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11990: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11993: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11996: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_socket_gethostname=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_socket_gethostname=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:12007: result: $ac_cv_lib_socket_gethostname" >&5
+echo "${ECHO_T}$ac_cv_lib_socket_gethostname" >&6
+if test $ac_cv_lib_socket_gethostname = yes; then
+
+cf_tr_func=`echo "gethostname" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_gethostname=yes
+	if test "$cf_used_lib_socket" != yes ; then cf_used_lib_socket=yes; cf_cv_netlibs="-lsocket $cf_cv_netlibs"; fi
+else
+
+	ac_cv_func_gethostname=unknown
+	unset ac_cv_func_gethostname 2>/dev/null
+
+fi
+
+fi
+
+fi
+done
+
+	echo "$as_me:12031: checking for main in -linet" >&5
+echo $ECHO_N "checking for main in -linet... $ECHO_C" >&6
+if test "${ac_cv_lib_inet_main+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-linet  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 12039 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+main ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12051: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12054: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12057: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12060: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_inet_main=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_inet_main=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:12071: result: $ac_cv_lib_inet_main" >&5
+echo "${ECHO_T}$ac_cv_lib_inet_main" >&6
+if test $ac_cv_lib_inet_main = yes; then
+  cf_cv_netlibs="-linet $cf_cv_netlibs"
+fi
+
+	if test "$ac_cv_func_lsocket" != no ; then
+
+for ac_func in socket
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:12082: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 12088 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12119: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12122: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12125: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12128: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:12138: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+else
+
+echo "$as_me:12147: checking for socket in -lsocket" >&5
+echo $ECHO_N "checking for socket in -lsocket... $ECHO_C" >&6
+if test "${ac_cv_lib_socket_socket+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsocket $cf_cv_netlibs $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 12155 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char socket ();
+int
+main ()
+{
+socket ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12174: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12177: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12180: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12183: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_socket_socket=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_socket_socket=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:12194: result: $ac_cv_lib_socket_socket" >&5
+echo "${ECHO_T}$ac_cv_lib_socket_socket" >&6
+if test $ac_cv_lib_socket_socket = yes; then
+
+cf_tr_func=`echo "socket" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_socket=yes
+	if test "$cf_used_lib_socket" != yes ; then cf_used_lib_socket=yes; cf_cv_netlibs="-lsocket $cf_cv_netlibs"; fi
+else
+
+	ac_cv_func_socket=unknown
+	unset ac_cv_func_socket 2>/dev/null
+
+echo "$as_me:12211: checking for socket in -lbsd" >&5
+echo $ECHO_N "checking for socket in -lbsd... $ECHO_C" >&6
+if test "${ac_cv_lib_bsd_socket+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lbsd $cf_cv_netlibs $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 12219 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char socket ();
+int
+main ()
+{
+socket ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12238: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12241: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12244: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12247: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_bsd_socket=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_bsd_socket=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:12258: result: $ac_cv_lib_bsd_socket" >&5
+echo "${ECHO_T}$ac_cv_lib_bsd_socket" >&6
+if test $ac_cv_lib_bsd_socket = yes; then
+
+cf_tr_func=`echo "socket" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_socket=yes
+	if test "$cf_used_lib_bsd" != yes ; then cf_used_lib_bsd=yes; cf_cv_netlibs="-lbsd $cf_cv_netlibs"; fi
+else
+
+	ac_cv_func_socket=unknown
+	unset ac_cv_func_socket 2>/dev/null
+
+fi
+
+fi
+
+fi
+done
+
+	fi
+
+for ac_func in gethostbyname
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:12287: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 12293 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12324: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12327: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12330: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12333: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:12343: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+else
+
+echo "$as_me:12352: checking for gethostbyname in -lnsl" >&5
+echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6
+if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lnsl $cf_cv_netlibs $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 12360 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char gethostbyname ();
+int
+main ()
+{
+gethostbyname ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12379: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12382: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12385: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12388: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_nsl_gethostbyname=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_nsl_gethostbyname=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:12399: result: $ac_cv_lib_nsl_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6
+if test $ac_cv_lib_nsl_gethostbyname = yes; then
+
+cf_tr_func=`echo "gethostbyname" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_gethostbyname=yes
+	if test "$cf_used_lib_nsl" != yes ; then cf_used_lib_nsl=yes; cf_cv_netlibs="-lnsl $cf_cv_netlibs"; fi
+else
+
+	ac_cv_func_gethostbyname=unknown
+	unset ac_cv_func_gethostbyname 2>/dev/null
+
+fi
+
+fi
+done
+
+for ac_func in inet_ntoa
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:12424: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 12430 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12461: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12464: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12467: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12470: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:12480: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+else
+
+echo "$as_me:12489: checking for inet_ntoa in -lnsl" >&5
+echo $ECHO_N "checking for inet_ntoa in -lnsl... $ECHO_C" >&6
+if test "${ac_cv_lib_nsl_inet_ntoa+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lnsl $cf_cv_netlibs $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 12497 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char inet_ntoa ();
+int
+main ()
+{
+inet_ntoa ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12516: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12519: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12522: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12525: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_nsl_inet_ntoa=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_nsl_inet_ntoa=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:12536: result: $ac_cv_lib_nsl_inet_ntoa" >&5
+echo "${ECHO_T}$ac_cv_lib_nsl_inet_ntoa" >&6
+if test $ac_cv_lib_nsl_inet_ntoa = yes; then
+
+cf_tr_func=`echo "inet_ntoa" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_inet_ntoa=yes
+	if test "$cf_used_lib_nsl" != yes ; then cf_used_lib_nsl=yes; cf_cv_netlibs="-lnsl $cf_cv_netlibs"; fi
+else
+
+	ac_cv_func_inet_ntoa=unknown
+	unset ac_cv_func_inet_ntoa 2>/dev/null
+
+fi
+
+fi
+done
+
+for ac_func in gethostbyname
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:12561: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 12567 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12598: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12601: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12604: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12607: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:12617: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+else
+
+echo "$as_me:12626: checking for gethostbyname in -lnetwork" >&5
+echo $ECHO_N "checking for gethostbyname in -lnetwork... $ECHO_C" >&6
+if test "${ac_cv_lib_network_gethostbyname+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lnetwork $cf_cv_netlibs $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 12634 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char gethostbyname ();
+int
+main ()
+{
+gethostbyname ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12653: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12656: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12659: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12662: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_network_gethostbyname=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_network_gethostbyname=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:12673: result: $ac_cv_lib_network_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_lib_network_gethostbyname" >&6
+if test $ac_cv_lib_network_gethostbyname = yes; then
+
+cf_tr_func=`echo "gethostbyname" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_gethostbyname=yes
+	if test "$cf_used_lib_network" != yes ; then cf_used_lib_network=yes; cf_cv_netlibs="-lnetwork $cf_cv_netlibs"; fi
+else
+
+	ac_cv_func_gethostbyname=unknown
+	unset ac_cv_func_gethostbyname 2>/dev/null
+
+fi
+
+fi
+done
+
+for ac_func in strcasecmp
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:12698: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 12704 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12735: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12738: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12741: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12744: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:12754: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+else
+
+echo "$as_me:12763: checking for strcasecmp in -lresolv" >&5
+echo $ECHO_N "checking for strcasecmp in -lresolv... $ECHO_C" >&6
+if test "${ac_cv_lib_resolv_strcasecmp+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lresolv $cf_cv_netlibs $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 12771 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char strcasecmp ();
+int
+main ()
+{
+strcasecmp ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12790: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12793: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12796: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12799: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_resolv_strcasecmp=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_resolv_strcasecmp=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:12810: result: $ac_cv_lib_resolv_strcasecmp" >&5
+echo "${ECHO_T}$ac_cv_lib_resolv_strcasecmp" >&6
+if test $ac_cv_lib_resolv_strcasecmp = yes; then
+
+cf_tr_func=`echo "strcasecmp" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_strcasecmp=yes
+	if test "$cf_used_lib_resolv" != yes ; then cf_used_lib_resolv=yes; cf_cv_netlibs="-lresolv $cf_cv_netlibs"; fi
+else
+
+	ac_cv_func_strcasecmp=unknown
+	unset ac_cv_func_strcasecmp 2>/dev/null
+
+fi
+
+fi
+done
+
+	;;
+esac
+
+fi
+
+case $cf_cv_netlibs in #(vi
+*ws2_32*)
+	cat >>confdefs.h <<\EOF
+#define USE_WINSOCK2_H 1
+EOF
+
+	;;
+esac
+
+LIBS="$cf_cv_netlibs $LIBS"
+test $cf_test_netlibs = no && echo "$cf_cv_netlibs" >&6
+
+fi
+
+echo "$as_me:12851: checking for inet_aton function" >&5
+echo $ECHO_N "checking for inet_aton function... $ECHO_C" >&6
+if test "${cf_cv_have_inet_aton+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 12858 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+
+int
+main ()
+{
+inet_aton(0, (struct in_addr *)0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12874: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12877: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12880: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12883: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_inet_aton=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_inet_aton=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:12893: result: $cf_cv_have_inet_aton" >&5
+echo "${ECHO_T}$cf_cv_have_inet_aton" >&6
+if test "$cf_cv_have_inet_aton" = yes ; then
+    cat >>confdefs.h <<\EOF
+#define HAVE_INET_ATON 1
+EOF
+
+else
+    echo "$as_me:12901: checking for inet_addr function" >&5
+echo $ECHO_N "checking for inet_addr function... $ECHO_C" >&6
+if test "${cf_cv_have_inet_addr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cat >conftest.$ac_ext <<_ACEOF
+#line 12908 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+
+int
+main ()
+{
+inet_addr(0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12924: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12927: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12930: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12933: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_inet_addr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_inet_addr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:12943: result: $cf_cv_have_inet_addr" >&5
+echo "${ECHO_T}$cf_cv_have_inet_addr" >&6
+    if test "$cf_cv_have_inet_addr" = no ; then
+	echo "$as_me:12946: checking for library with inet_addr" >&5
+echo $ECHO_N "checking for library with inet_addr... $ECHO_C" >&6
+if test "${cf_cv_lib_inet_addr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	    cf_save_LIBS="$LIBS"
+	    for cf_inetlib in -lbind -lresolv
+	    do
+		LIBS="$cf_save_LIBS $cf_inetlib"
+		cat >conftest.$ac_ext <<_ACEOF
+#line 12957 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+
+int
+main ()
+{
+inet_addr(0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:12973: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:12976: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:12979: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:12982: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_lib_inet_addr=$cf_inetlib
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_lib_inet_addr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+		LIBS="$cf_save_LIBS"
+		test "$cf_cv_lib_inet_addr" != no && break
+	    done
+
+fi
+echo "$as_me:12996: result: $cf_cv_lib_inet_addr" >&5
+echo "${ECHO_T}$cf_cv_lib_inet_addr" >&6
+	if test "$cf_cv_lib_inet_addr" != no ; then
+	    LIBS="$cf_cv_lib_inet_addr $LIBS"
+	else
+	    { echo "$as_me:13001: WARNING: Unable to find library for inet_addr function" >&5
+echo "$as_me: WARNING: Unable to find library for inet_addr function" >&2;}
+	fi
+    fi
+fi
+
+echo "$as_me:13007: checking if you want to use pkg-config" >&5
+echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6
+
+# Check whether --with-pkg-config or --without-pkg-config was given.
+if test "${with_pkg_config+set}" = set; then
+  withval="$with_pkg_config"
+  cf_pkg_config=$withval
+else
+  cf_pkg_config=yes
+fi;
+echo "$as_me:13017: result: $cf_pkg_config" >&5
+echo "${ECHO_T}$cf_pkg_config" >&6
+
+case $cf_pkg_config in #(vi
+no) #(vi
+	PKG_CONFIG=none
+	;;
+yes) #(vi
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
+echo "$as_me:13029: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $PKG_CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word"
+   echo "$as_me:13046: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
+
+if test -n "$PKG_CONFIG"; then
+  echo "$as_me:13057: result: $PKG_CONFIG" >&5
+echo "${ECHO_T}$PKG_CONFIG" >&6
+else
+  echo "$as_me:13060: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_path_PKG_CONFIG"; then
+  ac_pt_PKG_CONFIG=$PKG_CONFIG
+  # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
+echo "$as_me:13069: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $ac_pt_PKG_CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_ac_pt_PKG_CONFIG="$ac_dir/$ac_word"
+   echo "$as_me:13086: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  test -z "$ac_cv_path_ac_pt_PKG_CONFIG" && ac_cv_path_ac_pt_PKG_CONFIG="none"
+  ;;
+esac
+fi
+ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
+
+if test -n "$ac_pt_PKG_CONFIG"; then
+  echo "$as_me:13098: result: $ac_pt_PKG_CONFIG" >&5
+echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6
+else
+  echo "$as_me:13101: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  PKG_CONFIG=$ac_pt_PKG_CONFIG
+else
+  PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
+fi
+
+	;;
+*)
+	PKG_CONFIG=$withval
+	;;
+esac
+
+test -z "$PKG_CONFIG" && PKG_CONFIG=none
+if test "$PKG_CONFIG" != none ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$PKG_CONFIG" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval PKG_CONFIG="$PKG_CONFIG"
+  case ".$PKG_CONFIG" in #(vi
+  .NONE/*)
+    PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  { { echo "$as_me:13144: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
+echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;}
+   { (exit 1); exit 1; }; }
+  ;;
+esac
+
+fi
+
+if test "x$cf_cv_use_libssl"  != xno ; then
+
+	cf_cv_have_ssl=no
+	cf_cv_pkg_config_ssl=no
+
+	# command-line option, etc., override default behavior
+
+  case "$cf_cv_use_libssl" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$cf_cv_use_libssl" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 13193 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:13205: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:13208: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:13211: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:13214: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:13231: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 13272 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:13284: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:13287: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:13290: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:13293: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:13310: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:13326: error: cannot find ssl library under $cf_cv_use_libssl" >&5
+echo "$as_me: error: cannot find ssl library under $cf_cv_use_libssl" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:13351: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:13380: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:13389: error: cannot find ssl library under $cf_cv_use_libssl" >&5
+echo "$as_me: error: cannot find ssl library under $cf_cv_use_libssl" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+	if test "x$PKG_CONFIG" != xnone; then
+		case $cf_cv_use_libssl in #(vi
+		no) #(vi
+			;;
+		yes) # if no explicit directory given, try pkg-config
+			if "$PKG_CONFIG" --exists openssl ; then
+				cf_cv_have_ssl=yes
+				cf_cv_pkg_config_ssl=yes
+
+				cf_cflags_ssl=`$PKG_CONFIG --cflags openssl`
+				cf_libs_ssl=`$PKG_CONFIG --libs openssl`
+
+				if test -n "$cf_cflags_ssl" ; then
+					case "$cf_cflags_ssl" in #(vi
+					*-I*) #(vi
+						cf_cv_header_path_ssl=`echo "$cf_cflags_ssl" | sed -e 's/^.*-I//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_header_path_ssl=/usr/include
+						;;
+					esac
+					if test -d $cf_cv_header_path_ssl/openssl ; then
+						cf_cv_header_path_ssl=$cf_cv_header_path_ssl/openssl
+					fi
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_cflags_ssl
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+					# workaround for broken openssl package using kerberos
+					case "$cf_cflags_ssl" in #(vi
+					*kerberos*)
+						cf_cv_have_ssl=maybe
+						;;
+					esac
+				fi
+
+				if test -n "$cf_libs_ssl" ; then
+					case "x$cf_libs_ssl" in #(vi
+					*-L*) #(vi
+						cf_cv_library_path_ssl=`echo "$cf_libs_ssl" | sed -e 's/^.*-L//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_library_path_ssl=/usr/lib
+						;;
+					esac
+					test -n "$verbose" && echo "	adding $cf_libs_ssl to LIBS" 1>&6
+
+echo "${as_me:-configure}:13520: testing adding $cf_libs_ssl to LIBS ..." 1>&5
+
+					LIBS="$cf_libs_ssl $LIBS"
+				fi
+			fi
+			;;
+		esac
+	fi
+
+	if test "$cf_cv_have_ssl" != yes; then
+		case $host_os in #(vi
+		mingw*) #(vi
+			cf_extra_ssl_libs="-lcrypto -lgdi32"
+			;;
+		*)
+			# openssl 0.9.6 and up use dynamic loading for engines.
+			cf_extra_ssl_libs="-lcrypto"
+			case "x$LIBS" in #(vi
+			*-ldl) #(vi
+				;;
+			*)
+				echo "$as_me:13541: checking for dlsym in -ldl" >&5
+echo $ECHO_N "checking for dlsym in -ldl... $ECHO_C" >&6
+if test "${ac_cv_lib_dl_dlsym+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldl  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 13549 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char dlsym ();
+int
+main ()
+{
+dlsym ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:13568: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:13571: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:13574: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:13577: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dl_dlsym=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dl_dlsym=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:13588: result: $ac_cv_lib_dl_dlsym" >&5
+echo "${ECHO_T}$ac_cv_lib_dl_dlsym" >&6
+if test $ac_cv_lib_dl_dlsym = yes; then
+  cf_extra_ssl_libs="$cf_extra_ssl_libs -ldl"
+fi
+
+				;;
+			esac
+			;;
+		esac
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_ssl=
+cf_cv_library_path_ssl=
+
+echo "${as_me:-configure}:13604: testing Starting FIND_LINKAGE(ssl,openssl) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 13609 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:13638: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:13641: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:13644: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:13647: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_ssl=yes
+	cf_cv_header_path_ssl=/usr/include
+	cf_cv_library_path_ssl=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-lssl $cf_extra_ssl_libs $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 13661 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:13690: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:13693: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:13696: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:13699: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_ssl=yes
+	cf_cv_header_path_ssl=/usr/include
+	cf_cv_library_path_ssl=/usr/lib
+	cf_cv_library_file_ssl="-lssl"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_ssl=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for ssl library" 1>&6
+
+echo "${as_me:-configure}:13716: testing find linkage for ssl library ..." 1>&5
+
+echo "${as_me:-configure}:13718: testing Searching for headers in FIND_LINKAGE(ssl,openssl) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/openssl &&       cf_search="$cf_search $cf_header_path/include/openssl"
+	test -d $cf_header_path/include/openssl/include &&    cf_search="$cf_search $cf_header_path/include/openssl/include"
+	test -d $cf_header_path/openssl/include &&       cf_search="$cf_search $cf_header_path/openssl/include"
+	test -d $cf_header_path/openssl/include/openssl &&    cf_search="$cf_search $cf_header_path/openssl/include/openssl"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/openssl &&       cf_search="$cf_search /usr/include/openssl"
+	test -d /usr/include/openssl/include &&    cf_search="$cf_search /usr/include/openssl/include"
+	test -d /usr/openssl/include &&       cf_search="$cf_search /usr/openssl/include"
+	test -d /usr/openssl/include/openssl &&    cf_search="$cf_search /usr/openssl/include/openssl"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/openssl &&       cf_search="$cf_search $prefix/include/openssl"
+	test -d $prefix/include/openssl/include &&    cf_search="$cf_search $prefix/include/openssl/include"
+	test -d $prefix/openssl/include &&       cf_search="$cf_search $prefix/openssl/include"
+	test -d $prefix/openssl/include/openssl &&    cf_search="$cf_search $prefix/openssl/include/openssl"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/openssl &&       cf_search="$cf_search /usr/local/include/openssl"
+	test -d /usr/local/include/openssl/include &&    cf_search="$cf_search /usr/local/include/openssl/include"
+	test -d /usr/local/openssl/include &&       cf_search="$cf_search /usr/local/openssl/include"
+	test -d /usr/local/openssl/include/openssl &&    cf_search="$cf_search /usr/local/openssl/include/openssl"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/openssl &&       cf_search="$cf_search /opt/include/openssl"
+	test -d /opt/include/openssl/include &&    cf_search="$cf_search /opt/include/openssl/include"
+	test -d /opt/openssl/include &&       cf_search="$cf_search /opt/openssl/include"
+	test -d /opt/openssl/include/openssl &&    cf_search="$cf_search /opt/openssl/include/openssl"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/openssl &&       cf_search="$cf_search $HOME/include/openssl"
+	test -d $HOME/include/openssl/include &&    cf_search="$cf_search $HOME/include/openssl/include"
+	test -d $HOME/openssl/include &&       cf_search="$cf_search $HOME/openssl/include"
+	test -d $HOME/openssl/include/openssl &&    cf_search="$cf_search $HOME/openssl/include/openssl"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/openssl && cf_search="$cf_search $includedir/openssl"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/openssl && cf_search="$cf_search $oldincludedir/openssl"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_ssl in $cf_search
+    do
+      if test -d $cf_cv_header_path_ssl ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_ssl" 1>&6
+
+echo "${as_me:-configure}:13831: testing ... testing $cf_cv_header_path_ssl ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_ssl"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 13835 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:13864: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:13867: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:13870: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:13873: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found ssl headers in $cf_cv_header_path_ssl" 1>&6
+
+echo "${as_me:-configure}:13878: testing ... found ssl headers in $cf_cv_header_path_ssl ..." 1>&5
+
+            cf_cv_find_linkage_ssl=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_ssl" = maybe ; then
+
+echo "${as_me:-configure}:13896: testing Searching for ssl library in FIND_LINKAGE(ssl,openssl) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+        CPPFLAGS="$cf_test_CPPFLAGS"
+        LIBS="-lssl $cf_extra_ssl_libs $cf_save_LIBS"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 13904 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:13933: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:13936: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:13939: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:13942: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found ssl library in system" 1>&6
+
+echo "${as_me:-configure}:13947: testing ... found ssl library in system ..." 1>&5
+
+            cf_cv_find_linkage_ssl=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+            CPPFLAGS="$cf_save_CPPFLAGS"
+            LIBS="$cf_save_LIBS"
+
+      if test "$cf_cv_find_linkage_ssl" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/ssl &&       cf_search="$cf_search $cf_library_path/lib/ssl"
+	test -d $cf_library_path/lib/ssl/lib &&    cf_search="$cf_search $cf_library_path/lib/ssl/lib"
+	test -d $cf_library_path/ssl/lib &&       cf_search="$cf_search $cf_library_path/ssl/lib"
+	test -d $cf_library_path/ssl/lib/ssl &&    cf_search="$cf_search $cf_library_path/ssl/lib/ssl"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/ssl &&       cf_search="$cf_search /usr/lib/ssl"
+	test -d /usr/lib/ssl/lib &&    cf_search="$cf_search /usr/lib/ssl/lib"
+	test -d /usr/ssl/lib &&       cf_search="$cf_search /usr/ssl/lib"
+	test -d /usr/ssl/lib/ssl &&    cf_search="$cf_search /usr/ssl/lib/ssl"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/ssl &&       cf_search="$cf_search $prefix/lib/ssl"
+	test -d $prefix/lib/ssl/lib &&    cf_search="$cf_search $prefix/lib/ssl/lib"
+	test -d $prefix/ssl/lib &&       cf_search="$cf_search $prefix/ssl/lib"
+	test -d $prefix/ssl/lib/ssl &&    cf_search="$cf_search $prefix/ssl/lib/ssl"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/ssl &&       cf_search="$cf_search /usr/local/lib/ssl"
+	test -d /usr/local/lib/ssl/lib &&    cf_search="$cf_search /usr/local/lib/ssl/lib"
+	test -d /usr/local/ssl/lib &&       cf_search="$cf_search /usr/local/ssl/lib"
+	test -d /usr/local/ssl/lib/ssl &&    cf_search="$cf_search /usr/local/ssl/lib/ssl"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/ssl &&       cf_search="$cf_search /opt/lib/ssl"
+	test -d /opt/lib/ssl/lib &&    cf_search="$cf_search /opt/lib/ssl/lib"
+	test -d /opt/ssl/lib &&       cf_search="$cf_search /opt/ssl/lib"
+	test -d /opt/ssl/lib/ssl &&    cf_search="$cf_search /opt/ssl/lib/ssl"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/ssl &&       cf_search="$cf_search $HOME/lib/ssl"
+	test -d $HOME/lib/ssl/lib &&    cf_search="$cf_search $HOME/lib/ssl/lib"
+	test -d $HOME/ssl/lib &&       cf_search="$cf_search $HOME/ssl/lib"
+	test -d $HOME/ssl/lib/ssl &&    cf_search="$cf_search $HOME/ssl/lib/ssl"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_ssl in $cf_search
+        do
+          if test -d $cf_cv_library_path_ssl ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_ssl" 1>&6
+
+echo "${as_me:-configure}:14050: testing ... testing $cf_cv_library_path_ssl ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-lssl $cf_extra_ssl_libs $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_ssl"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 14056 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:14085: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:14088: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:14091: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:14094: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found ssl library in $cf_cv_library_path_ssl" 1>&6
+
+echo "${as_me:-configure}:14099: testing ... found ssl library in $cf_cv_library_path_ssl ..." 1>&5
+
+                cf_cv_find_linkage_ssl=yes
+                cf_cv_library_file_ssl="-lssl"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_ssl=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_ssl" = yes ; then
+cf_cv_have_ssl=yes
+else
+cf_cv_have_ssl=no
+fi
+
+		if test "$cf_cv_pkg_config_ssl" != yes ; then
+			if test "$cf_cv_have_ssl" = yes ; then
+				if test -n "$cf_cv_library_path_ssl" ; then
+
+if test -n "$cf_cv_library_path_ssl" ; then
+  for cf_add_libdir in $cf_cv_library_path_ssl
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:14161: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+				fi
+				LIBS="-lssl $cf_extra_ssl_libs $LIBS"
+				if test -n "$cf_cv_header_path_ssl" ; then
+					case $cf_cv_header_path_ssl in #(vi
+					/usr/include/openssl) #(vi
+						;;
+					*)
+
+if test -n "$cf_cv_header_path_ssl" ; then
+  for cf_add_incdir in $cf_cv_header_path_ssl
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 14201 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:14213: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:14216: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:14219: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:14222: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:14239: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+						;;
+					esac
+				fi
+			fi
+		fi
+	fi
+
+	if test "$cf_cv_have_ssl" = yes ; then
+		cat >>confdefs.h <<\EOF
+#define USE_SSL 1
+EOF
+
+		if test -n "$cf_cv_header_path_ssl" ; then
+			case $cf_cv_header_path_ssl in #(vi
+			*/openssl)
+				cat >>confdefs.h <<\EOF
+#define USE_OPENSSL_INCL 1
+EOF
+
+				;;
+			esac
+		fi
+
+echo "$as_me:14277: checking for X509 support" >&5
+echo $ECHO_N "checking for X509 support... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 14280 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+#include <openssl/x509.h>
+int
+main ()
+{
+X509_verify_cert_error_string(X509_STORE_CTX_get_error(NULL))
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:14304: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:14307: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:14310: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:14313: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_x509_support=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_x509_support=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+echo "$as_me:14322: result: $cf_x509_support" >&5
+echo "${ECHO_T}$cf_x509_support" >&6
+
+if test "$cf_x509_support" = yes ; then
+	cat >>confdefs.h <<\EOF
+#define USE_X509_SUPPORT 1
+EOF
+
+fi
+
+	fi
+
+elif test "x$cf_cv_use_libgnutls" != xno ; then
+    if test "x$cf_cv_gnutls_compat" = xno ; then
+
+	cf_cv_have_gnutls=no
+	cf_cv_pkg_config_ssl=no
+
+  case "$cf_cv_use_libgnutls" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$cf_cv_use_libgnutls" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 14374 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:14386: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:14389: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:14392: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:14395: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:14412: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 14453 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:14465: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:14468: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:14471: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:14474: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:14491: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:14507: error: cannot find ssl library under $cf_cv_use_libgnutls" >&5
+echo "$as_me: error: cannot find ssl library under $cf_cv_use_libgnutls" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:14532: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:14561: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:14570: error: cannot find ssl library under $cf_cv_use_libgnutls" >&5
+echo "$as_me: error: cannot find ssl library under $cf_cv_use_libgnutls" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+	cf_pkg_gnutls=none
+	if test "x$PKG_CONFIG" != xnone; then
+		cf_pkg_gnutls=gnutls
+		case $cf_cv_use_libgnutls in #(vi
+		no) #(vi
+			;;
+		yes) # if no explicit directory given, try pkg-config
+			test -n "$verbose" && echo "	checking pkg-config for $cf_pkg_gnutls" 1>&6
+
+echo "${as_me:-configure}:14588: testing checking pkg-config for $cf_pkg_gnutls ..." 1>&5
+
+			if "$PKG_CONFIG" --exists $cf_pkg_gnutls ; then
+				test -n "$verbose" && echo "	... found $cf_pkg_gnutls in pkg-config" 1>&6
+
+echo "${as_me:-configure}:14593: testing ... found $cf_pkg_gnutls in pkg-config ..." 1>&5
+
+				cf_cv_have_gnutls=yes
+				cf_cv_pkg_config_ssl=yes
+
+				cf_cflags_ssl=`$PKG_CONFIG --cflags $cf_pkg_gnutls`
+				cf_libs_ssl=`$PKG_CONFIG --libs $cf_pkg_gnutls`
+
+				if test -n "$cf_cflags_ssl" ; then
+					case "$cf_cflags_ssl" in #(vi
+					*-I*) #(vi
+						cf_cv_header_path_gnutls=`echo "$cf_cflags_ssl" | sed -e 's/^.*-I//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_header_path_gnutls=/usr/include
+						;;
+					esac
+					if test -d $cf_cv_header_path_gnutls/gnutls ; then
+						cf_cv_header_path_gnutls=$cf_cv_header_path_gnutls/gnutls
+					fi
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_cflags_ssl
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+				fi
+
+				if test -n "$cf_libs_ssl" ; then
+					case "x$cf_libs_ssl" in #(vi
+					*-L*) #(vi
+						cf_cv_library_path_gnutls=`echo "$cf_libs_ssl" | sed -e 's/^.*-L//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_library_path_gnutls=/usr/lib
+						;;
+					esac
+					test -n "$verbose" && echo "	adding $cf_libs_ssl to LIBS" 1>&6
+
+echo "${as_me:-configure}:14705: testing adding $cf_libs_ssl to LIBS ..." 1>&5
+
+					LIBS="$cf_libs_ssl $LIBS"
+				fi
+			else
+				test -n "$verbose" && echo "	... did not find $cf_pkg_gnutls in pkg-config" 1>&6
+
+echo "${as_me:-configure}:14712: testing ... did not find $cf_pkg_gnutls in pkg-config ..." 1>&5
+
+				cf_pkg_gnutls=none
+			fi
+			;;
+		esac
+	fi
+
+	cat >>confdefs.h <<\EOF
+#define USE_GNUTLS_FUNCS 1
+EOF
+
+	if test "$cf_cv_have_gnutls" = no ; then
+		cf_gnutls_CPPFLAGS=$CPPFLAGS
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_gnutls=
+cf_cv_library_path_gnutls=
+
+echo "${as_me:-configure}:14732: testing Starting FIND_LINKAGE(gnutls,) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 14737 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:14766: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:14769: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:14772: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:14775: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_gnutls=yes
+	cf_cv_header_path_gnutls=/usr/include
+	cf_cv_library_path_gnutls=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-lgnutls -lgnutls -lgcrypt $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 14789 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:14818: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:14821: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:14824: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:14827: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_gnutls=yes
+	cf_cv_header_path_gnutls=/usr/include
+	cf_cv_library_path_gnutls=/usr/lib
+	cf_cv_library_file_gnutls="-lgnutls"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_gnutls=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for gnutls library" 1>&6
+
+echo "${as_me:-configure}:14844: testing find linkage for gnutls library ..." 1>&5
+
+echo "${as_me:-configure}:14846: testing Searching for headers in FIND_LINKAGE(gnutls,) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/gnutls &&       cf_search="$cf_search $cf_header_path/include/gnutls"
+	test -d $cf_header_path/include/gnutls/include &&    cf_search="$cf_search $cf_header_path/include/gnutls/include"
+	test -d $cf_header_path/gnutls/include &&       cf_search="$cf_search $cf_header_path/gnutls/include"
+	test -d $cf_header_path/gnutls/include/gnutls &&    cf_search="$cf_search $cf_header_path/gnutls/include/gnutls"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/gnutls &&       cf_search="$cf_search /usr/include/gnutls"
+	test -d /usr/include/gnutls/include &&    cf_search="$cf_search /usr/include/gnutls/include"
+	test -d /usr/gnutls/include &&       cf_search="$cf_search /usr/gnutls/include"
+	test -d /usr/gnutls/include/gnutls &&    cf_search="$cf_search /usr/gnutls/include/gnutls"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/gnutls &&       cf_search="$cf_search $prefix/include/gnutls"
+	test -d $prefix/include/gnutls/include &&    cf_search="$cf_search $prefix/include/gnutls/include"
+	test -d $prefix/gnutls/include &&       cf_search="$cf_search $prefix/gnutls/include"
+	test -d $prefix/gnutls/include/gnutls &&    cf_search="$cf_search $prefix/gnutls/include/gnutls"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/gnutls &&       cf_search="$cf_search /usr/local/include/gnutls"
+	test -d /usr/local/include/gnutls/include &&    cf_search="$cf_search /usr/local/include/gnutls/include"
+	test -d /usr/local/gnutls/include &&       cf_search="$cf_search /usr/local/gnutls/include"
+	test -d /usr/local/gnutls/include/gnutls &&    cf_search="$cf_search /usr/local/gnutls/include/gnutls"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/gnutls &&       cf_search="$cf_search /opt/include/gnutls"
+	test -d /opt/include/gnutls/include &&    cf_search="$cf_search /opt/include/gnutls/include"
+	test -d /opt/gnutls/include &&       cf_search="$cf_search /opt/gnutls/include"
+	test -d /opt/gnutls/include/gnutls &&    cf_search="$cf_search /opt/gnutls/include/gnutls"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/gnutls &&       cf_search="$cf_search $HOME/include/gnutls"
+	test -d $HOME/include/gnutls/include &&    cf_search="$cf_search $HOME/include/gnutls/include"
+	test -d $HOME/gnutls/include &&       cf_search="$cf_search $HOME/gnutls/include"
+	test -d $HOME/gnutls/include/gnutls &&    cf_search="$cf_search $HOME/gnutls/include/gnutls"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/gnutls && cf_search="$cf_search $includedir/gnutls"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/gnutls && cf_search="$cf_search $oldincludedir/gnutls"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_gnutls in $cf_search
+    do
+      if test -d $cf_cv_header_path_gnutls ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_gnutls" 1>&6
+
+echo "${as_me:-configure}:14959: testing ... testing $cf_cv_header_path_gnutls ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_gnutls"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 14963 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:14992: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:14995: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:14998: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:15001: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found gnutls headers in $cf_cv_header_path_gnutls" 1>&6
+
+echo "${as_me:-configure}:15006: testing ... found gnutls headers in $cf_cv_header_path_gnutls ..." 1>&5
+
+            cf_cv_find_linkage_gnutls=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_gnutls" = maybe ; then
+
+echo "${as_me:-configure}:15024: testing Searching for gnutls library in FIND_LINKAGE(gnutls,) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+      if test "$cf_cv_find_linkage_gnutls" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/gnutls &&       cf_search="$cf_search $cf_library_path/lib/gnutls"
+	test -d $cf_library_path/lib/gnutls/lib &&    cf_search="$cf_search $cf_library_path/lib/gnutls/lib"
+	test -d $cf_library_path/gnutls/lib &&       cf_search="$cf_search $cf_library_path/gnutls/lib"
+	test -d $cf_library_path/gnutls/lib/gnutls &&    cf_search="$cf_search $cf_library_path/gnutls/lib/gnutls"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/gnutls &&       cf_search="$cf_search /usr/lib/gnutls"
+	test -d /usr/lib/gnutls/lib &&    cf_search="$cf_search /usr/lib/gnutls/lib"
+	test -d /usr/gnutls/lib &&       cf_search="$cf_search /usr/gnutls/lib"
+	test -d /usr/gnutls/lib/gnutls &&    cf_search="$cf_search /usr/gnutls/lib/gnutls"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/gnutls &&       cf_search="$cf_search $prefix/lib/gnutls"
+	test -d $prefix/lib/gnutls/lib &&    cf_search="$cf_search $prefix/lib/gnutls/lib"
+	test -d $prefix/gnutls/lib &&       cf_search="$cf_search $prefix/gnutls/lib"
+	test -d $prefix/gnutls/lib/gnutls &&    cf_search="$cf_search $prefix/gnutls/lib/gnutls"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/gnutls &&       cf_search="$cf_search /usr/local/lib/gnutls"
+	test -d /usr/local/lib/gnutls/lib &&    cf_search="$cf_search /usr/local/lib/gnutls/lib"
+	test -d /usr/local/gnutls/lib &&       cf_search="$cf_search /usr/local/gnutls/lib"
+	test -d /usr/local/gnutls/lib/gnutls &&    cf_search="$cf_search /usr/local/gnutls/lib/gnutls"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/gnutls &&       cf_search="$cf_search /opt/lib/gnutls"
+	test -d /opt/lib/gnutls/lib &&    cf_search="$cf_search /opt/lib/gnutls/lib"
+	test -d /opt/gnutls/lib &&       cf_search="$cf_search /opt/gnutls/lib"
+	test -d /opt/gnutls/lib/gnutls &&    cf_search="$cf_search /opt/gnutls/lib/gnutls"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/gnutls &&       cf_search="$cf_search $HOME/lib/gnutls"
+	test -d $HOME/lib/gnutls/lib &&    cf_search="$cf_search $HOME/lib/gnutls/lib"
+	test -d $HOME/gnutls/lib &&       cf_search="$cf_search $HOME/gnutls/lib"
+	test -d $HOME/gnutls/lib/gnutls &&    cf_search="$cf_search $HOME/gnutls/lib/gnutls"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_gnutls in $cf_search
+        do
+          if test -d $cf_cv_library_path_gnutls ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_gnutls" 1>&6
+
+echo "${as_me:-configure}:15121: testing ... testing $cf_cv_library_path_gnutls ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-lgnutls -lgnutls -lgcrypt $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_gnutls"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 15127 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:15156: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:15159: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:15162: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:15165: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found gnutls library in $cf_cv_library_path_gnutls" 1>&6
+
+echo "${as_me:-configure}:15170: testing ... found gnutls library in $cf_cv_library_path_gnutls ..." 1>&5
+
+                cf_cv_find_linkage_gnutls=yes
+                cf_cv_library_file_gnutls="-lgnutls"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_gnutls=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_gnutls" = yes ; then
+cf_cv_have_gnutls=yes
+else
+cf_cv_have_gnutls=no
+fi
+
+		CPPFLAGS=$cf_gnutls_CPPFLAGS
+	fi
+
+	if test "$cf_cv_have_gnutls" = yes ; then
+		if test -n "$cf_cv_header_path_gnutls" ; then
+			cat >>confdefs.h <<\EOF
+#define USE_SSL 1
+EOF
+
+			case $cf_cv_header_path_gnutls in
+				/usr/include/gnutls)
+				;;
+			*)
+
+if test -n "$cf_cv_header_path_gnutls" ; then
+  for cf_add_incdir in $cf_cv_header_path_gnutls
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 15247 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:15259: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:15262: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:15265: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:15268: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:15285: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+				;;
+			esac
+		fi
+		if test -n "$cf_cv_library_path_gnutls" ; then
+
+if test -n "$cf_cv_library_path_gnutls" ; then
+  for cf_add_libdir in $cf_cv_library_path_gnutls
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:15324: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+		fi
+		LIBS="-lgnutls -lgcrypt $LIBS"
+
+		EXTRA_OBJS="$EXTRA_OBJS tidy_tls\$o"
+
+echo "$as_me:15337: checking for X509 support" >&5
+echo $ECHO_N "checking for X509 support... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 15340 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+#include <openssl/x509.h>
+int
+main ()
+{
+X509_verify_cert_error_string(X509_STORE_CTX_get_error(NULL))
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:15364: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:15367: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:15370: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:15373: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_x509_support=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_x509_support=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+echo "$as_me:15382: result: $cf_x509_support" >&5
+echo "${ECHO_T}$cf_x509_support" >&6
+
+if test "$cf_x509_support" = yes ; then
+	cat >>confdefs.h <<\EOF
+#define USE_X509_SUPPORT 1
+EOF
+
+fi
+
+	fi
+
+for ac_func in gnutls_priority_set_direct
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:15397: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 15403 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:15434: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:15437: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:15440: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:15443: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:15453: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+    else
+
+	cf_cv_have_gnutls=no
+	cf_cv_pkg_config_ssl=no
+
+  case "$cf_cv_use_libgnutls" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$cf_cv_use_libgnutls" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 15502 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:15514: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:15517: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:15520: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:15523: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:15540: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 15581 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:15593: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:15596: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:15599: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:15602: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:15619: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:15635: error: cannot find ssl library under $cf_cv_use_libgnutls" >&5
+echo "$as_me: error: cannot find ssl library under $cf_cv_use_libgnutls" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:15660: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:15689: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:15698: error: cannot find ssl library under $cf_cv_use_libgnutls" >&5
+echo "$as_me: error: cannot find ssl library under $cf_cv_use_libgnutls" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+	cf_pkg_gnutls=none
+	if test "x$PKG_CONFIG" != xnone; then
+		cf_pkg_gnutls=gnutls-openssl
+		case $cf_cv_use_libgnutls in #(vi
+		no) #(vi
+			;;
+		yes) # if no explicit directory given, try pkg-config
+			test -n "$verbose" && echo "	checking pkg-config for $cf_pkg_gnutls" 1>&6
+
+echo "${as_me:-configure}:15716: testing checking pkg-config for $cf_pkg_gnutls ..." 1>&5
+
+			if "$PKG_CONFIG" --exists $cf_pkg_gnutls ; then
+				test -n "$verbose" && echo "	... found $cf_pkg_gnutls in pkg-config" 1>&6
+
+echo "${as_me:-configure}:15721: testing ... found $cf_pkg_gnutls in pkg-config ..." 1>&5
+
+				cf_cv_have_gnutls=yes
+				cf_cv_pkg_config_ssl=yes
+
+				cf_cflags_ssl=`$PKG_CONFIG --cflags $cf_pkg_gnutls`
+				cf_libs_ssl=`$PKG_CONFIG --libs $cf_pkg_gnutls`
+
+				if test -n "$cf_cflags_ssl" ; then
+					case "$cf_cflags_ssl" in #(vi
+					*-I*) #(vi
+						cf_cv_header_path_gnutls=`echo "$cf_cflags_ssl" | sed -e 's/^.*-I//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_header_path_gnutls=/usr/include
+						;;
+					esac
+					if test -d $cf_cv_header_path_gnutls/gnutls ; then
+						cf_cv_header_path_gnutls=$cf_cv_header_path_gnutls/gnutls
+					fi
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_cflags_ssl
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+				fi
+
+				if test -n "$cf_libs_ssl" ; then
+					case "x$cf_libs_ssl" in #(vi
+					*-L*) #(vi
+						cf_cv_library_path_gnutls=`echo "$cf_libs_ssl" | sed -e 's/^.*-L//' -e 's/ .*//'`
+						;;
+					*)
+						cf_cv_library_path_gnutls=/usr/lib
+						;;
+					esac
+					test -n "$verbose" && echo "	adding $cf_libs_ssl to LIBS" 1>&6
+
+echo "${as_me:-configure}:15833: testing adding $cf_libs_ssl to LIBS ..." 1>&5
+
+					LIBS="$cf_libs_ssl $LIBS"
+				fi
+			else
+				test -n "$verbose" && echo "	... did not find $cf_pkg_gnutls in pkg-config" 1>&6
+
+echo "${as_me:-configure}:15840: testing ... did not find $cf_pkg_gnutls in pkg-config ..." 1>&5
+
+				cf_pkg_gnutls=none
+			fi
+			;;
+		esac
+	fi
+
+	cat >>confdefs.h <<\EOF
+#define USE_GNUTLS_INCL 1
+EOF
+
+	if test "$cf_cv_have_gnutls" = no ; then
+		cf_gnutls_CPPFLAGS=$CPPFLAGS
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_gnutls=
+cf_cv_library_path_gnutls=
+
+echo "${as_me:-configure}:15860: testing Starting FIND_LINKAGE(gnutls,) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 15865 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:15894: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:15897: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:15900: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:15903: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_gnutls=yes
+	cf_cv_header_path_gnutls=/usr/include
+	cf_cv_library_path_gnutls=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-lgnutls -lgnutls-openssl -lgnutls-extra -lgnutls -lgcrypt $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 15917 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:15946: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:15949: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:15952: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:15955: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_gnutls=yes
+	cf_cv_header_path_gnutls=/usr/include
+	cf_cv_library_path_gnutls=/usr/lib
+	cf_cv_library_file_gnutls="-lgnutls"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_gnutls=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for gnutls library" 1>&6
+
+echo "${as_me:-configure}:15972: testing find linkage for gnutls library ..." 1>&5
+
+echo "${as_me:-configure}:15974: testing Searching for headers in FIND_LINKAGE(gnutls,) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/gnutls &&       cf_search="$cf_search $cf_header_path/include/gnutls"
+	test -d $cf_header_path/include/gnutls/include &&    cf_search="$cf_search $cf_header_path/include/gnutls/include"
+	test -d $cf_header_path/gnutls/include &&       cf_search="$cf_search $cf_header_path/gnutls/include"
+	test -d $cf_header_path/gnutls/include/gnutls &&    cf_search="$cf_search $cf_header_path/gnutls/include/gnutls"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/gnutls &&       cf_search="$cf_search /usr/include/gnutls"
+	test -d /usr/include/gnutls/include &&    cf_search="$cf_search /usr/include/gnutls/include"
+	test -d /usr/gnutls/include &&       cf_search="$cf_search /usr/gnutls/include"
+	test -d /usr/gnutls/include/gnutls &&    cf_search="$cf_search /usr/gnutls/include/gnutls"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/gnutls &&       cf_search="$cf_search $prefix/include/gnutls"
+	test -d $prefix/include/gnutls/include &&    cf_search="$cf_search $prefix/include/gnutls/include"
+	test -d $prefix/gnutls/include &&       cf_search="$cf_search $prefix/gnutls/include"
+	test -d $prefix/gnutls/include/gnutls &&    cf_search="$cf_search $prefix/gnutls/include/gnutls"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/gnutls &&       cf_search="$cf_search /usr/local/include/gnutls"
+	test -d /usr/local/include/gnutls/include &&    cf_search="$cf_search /usr/local/include/gnutls/include"
+	test -d /usr/local/gnutls/include &&       cf_search="$cf_search /usr/local/gnutls/include"
+	test -d /usr/local/gnutls/include/gnutls &&    cf_search="$cf_search /usr/local/gnutls/include/gnutls"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/gnutls &&       cf_search="$cf_search /opt/include/gnutls"
+	test -d /opt/include/gnutls/include &&    cf_search="$cf_search /opt/include/gnutls/include"
+	test -d /opt/gnutls/include &&       cf_search="$cf_search /opt/gnutls/include"
+	test -d /opt/gnutls/include/gnutls &&    cf_search="$cf_search /opt/gnutls/include/gnutls"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/gnutls &&       cf_search="$cf_search $HOME/include/gnutls"
+	test -d $HOME/include/gnutls/include &&    cf_search="$cf_search $HOME/include/gnutls/include"
+	test -d $HOME/gnutls/include &&       cf_search="$cf_search $HOME/gnutls/include"
+	test -d $HOME/gnutls/include/gnutls &&    cf_search="$cf_search $HOME/gnutls/include/gnutls"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/gnutls && cf_search="$cf_search $includedir/gnutls"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/gnutls && cf_search="$cf_search $oldincludedir/gnutls"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_gnutls in $cf_search
+    do
+      if test -d $cf_cv_header_path_gnutls ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_gnutls" 1>&6
+
+echo "${as_me:-configure}:16087: testing ... testing $cf_cv_header_path_gnutls ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_gnutls"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 16091 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:16120: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:16123: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:16126: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:16129: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found gnutls headers in $cf_cv_header_path_gnutls" 1>&6
+
+echo "${as_me:-configure}:16134: testing ... found gnutls headers in $cf_cv_header_path_gnutls ..." 1>&5
+
+            cf_cv_find_linkage_gnutls=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_gnutls" = maybe ; then
+
+echo "${as_me:-configure}:16152: testing Searching for gnutls library in FIND_LINKAGE(gnutls,) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+      if test "$cf_cv_find_linkage_gnutls" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/gnutls &&       cf_search="$cf_search $cf_library_path/lib/gnutls"
+	test -d $cf_library_path/lib/gnutls/lib &&    cf_search="$cf_search $cf_library_path/lib/gnutls/lib"
+	test -d $cf_library_path/gnutls/lib &&       cf_search="$cf_search $cf_library_path/gnutls/lib"
+	test -d $cf_library_path/gnutls/lib/gnutls &&    cf_search="$cf_search $cf_library_path/gnutls/lib/gnutls"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/gnutls &&       cf_search="$cf_search /usr/lib/gnutls"
+	test -d /usr/lib/gnutls/lib &&    cf_search="$cf_search /usr/lib/gnutls/lib"
+	test -d /usr/gnutls/lib &&       cf_search="$cf_search /usr/gnutls/lib"
+	test -d /usr/gnutls/lib/gnutls &&    cf_search="$cf_search /usr/gnutls/lib/gnutls"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/gnutls &&       cf_search="$cf_search $prefix/lib/gnutls"
+	test -d $prefix/lib/gnutls/lib &&    cf_search="$cf_search $prefix/lib/gnutls/lib"
+	test -d $prefix/gnutls/lib &&       cf_search="$cf_search $prefix/gnutls/lib"
+	test -d $prefix/gnutls/lib/gnutls &&    cf_search="$cf_search $prefix/gnutls/lib/gnutls"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/gnutls &&       cf_search="$cf_search /usr/local/lib/gnutls"
+	test -d /usr/local/lib/gnutls/lib &&    cf_search="$cf_search /usr/local/lib/gnutls/lib"
+	test -d /usr/local/gnutls/lib &&       cf_search="$cf_search /usr/local/gnutls/lib"
+	test -d /usr/local/gnutls/lib/gnutls &&    cf_search="$cf_search /usr/local/gnutls/lib/gnutls"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/gnutls &&       cf_search="$cf_search /opt/lib/gnutls"
+	test -d /opt/lib/gnutls/lib &&    cf_search="$cf_search /opt/lib/gnutls/lib"
+	test -d /opt/gnutls/lib &&       cf_search="$cf_search /opt/gnutls/lib"
+	test -d /opt/gnutls/lib/gnutls &&    cf_search="$cf_search /opt/gnutls/lib/gnutls"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/gnutls &&       cf_search="$cf_search $HOME/lib/gnutls"
+	test -d $HOME/lib/gnutls/lib &&    cf_search="$cf_search $HOME/lib/gnutls/lib"
+	test -d $HOME/gnutls/lib &&       cf_search="$cf_search $HOME/gnutls/lib"
+	test -d $HOME/gnutls/lib/gnutls &&    cf_search="$cf_search $HOME/gnutls/lib/gnutls"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_gnutls in $cf_search
+        do
+          if test -d $cf_cv_library_path_gnutls ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_gnutls" 1>&6
+
+echo "${as_me:-configure}:16249: testing ... testing $cf_cv_library_path_gnutls ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-lgnutls -lgnutls-openssl -lgnutls-extra -lgnutls -lgcrypt $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_gnutls"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 16255 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef USE_GNUTLS_FUNCS
+    gnutls_global_init();
+#else
+    SSL_shutdown((SSL *)0)
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:16284: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:16287: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:16290: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:16293: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found gnutls library in $cf_cv_library_path_gnutls" 1>&6
+
+echo "${as_me:-configure}:16298: testing ... found gnutls library in $cf_cv_library_path_gnutls ..." 1>&5
+
+                cf_cv_find_linkage_gnutls=yes
+                cf_cv_library_file_gnutls="-lgnutls"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_gnutls=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_gnutls" = yes ; then
+cf_cv_have_gnutls=yes
+else
+cf_cv_have_gnutls=no
+fi
+
+		CPPFLAGS=$cf_gnutls_CPPFLAGS
+	fi
+
+	if test "$cf_cv_have_gnutls" = yes ; then
+		if test -n "$cf_cv_header_path_gnutls" ; then
+			cat >>confdefs.h <<\EOF
+#define USE_SSL 1
+EOF
+
+			case $cf_cv_header_path_gnutls in
+				/usr/include/gnutls)
+				;;
+			*)
+
+if test -n "$cf_cv_header_path_gnutls" ; then
+  for cf_add_incdir in $cf_cv_header_path_gnutls
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 16375 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:16387: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:16390: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:16393: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:16396: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:16413: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+				;;
+			esac
+		fi
+		if test -n "$cf_cv_library_path_gnutls" ; then
+
+if test -n "$cf_cv_library_path_gnutls" ; then
+  for cf_add_libdir in $cf_cv_library_path_gnutls
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:16452: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+		fi
+		LIBS="-lgnutls -lgcrypt $LIBS"
+
+		if test "$cf_pkg_gnutls" = none ; then
+				echo "$as_me:16464: checking for SSL_connect in -lgnutls-openssl" >&5
+echo $ECHO_N "checking for SSL_connect in -lgnutls-openssl... $ECHO_C" >&6
+if test "${ac_cv_lib_gnutls_openssl_SSL_connect+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lgnutls-openssl  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 16472 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char SSL_connect ();
+int
+main ()
+{
+SSL_connect ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:16491: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:16494: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:16497: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:16500: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_gnutls_openssl_SSL_connect=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_gnutls_openssl_SSL_connect=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:16511: result: $ac_cv_lib_gnutls_openssl_SSL_connect" >&5
+echo "${ECHO_T}$ac_cv_lib_gnutls_openssl_SSL_connect" >&6
+if test $ac_cv_lib_gnutls_openssl_SSL_connect = yes; then
+  LIBS="-lgnutls-openssl $LIBS"
+else
+  echo "$as_me:16516: checking for SSL_connect in -lgnutls-extra" >&5
+echo $ECHO_N "checking for SSL_connect in -lgnutls-extra... $ECHO_C" >&6
+if test "${ac_cv_lib_gnutls_extra_SSL_connect+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lgnutls-extra  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 16524 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char SSL_connect ();
+int
+main ()
+{
+SSL_connect ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:16543: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:16546: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:16549: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:16552: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_gnutls_extra_SSL_connect=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_gnutls_extra_SSL_connect=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:16563: result: $ac_cv_lib_gnutls_extra_SSL_connect" >&5
+echo "${ECHO_T}$ac_cv_lib_gnutls_extra_SSL_connect" >&6
+if test $ac_cv_lib_gnutls_extra_SSL_connect = yes; then
+  LIBS="-lgnutls-extra $LIBS"
+else
+  { { echo "$as_me:16568: error: cannot find gnutls openssl functions" >&5
+echo "$as_me: error: cannot find gnutls openssl functions" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+fi
+
+			fi
+
+echo "$as_me:16577: checking for X509 support" >&5
+echo $ECHO_N "checking for X509 support... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 16580 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#if defined(USE_OPENSSL_INCL)
+#include <openssl/ssl.h>
+#elif defined(USE_GNUTLS_FUNCS)
+#include <gnutls/gnutls.h>
+#elif defined(USE_GNUTLS_INCL)
+#include <gnutls/openssl.h>
+#else
+#include <ssl.h>
+#endif
+
+#include <openssl/x509.h>
+int
+main ()
+{
+X509_verify_cert_error_string(X509_STORE_CTX_get_error(NULL))
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:16604: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:16607: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:16610: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:16613: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_x509_support=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_x509_support=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+echo "$as_me:16622: result: $cf_x509_support" >&5
+echo "${ECHO_T}$cf_x509_support" >&6
+
+if test "$cf_x509_support" = yes ; then
+	cat >>confdefs.h <<\EOF
+#define USE_X509_SUPPORT 1
+EOF
+
+fi
+
+	fi
+
+    fi
+elif test "x$cf_cv_use_libnss_compat"  != xno ; then
+
+check=`pkg-config --version 2>/dev/null`
+if test -n "$check" ; then
+	cf_ssl_library=`pkg-config --libs nss`
+	cf_ssl_cflags=`pkg-config --cflags nss`
+else
+	# Without pkg-config, we'll kludge in some defaults
+	cf_ssl_library="-lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl"
+	cf_ssl_cflags="-I/usr/include/nss3 -I/usr/include/nspr4"
+fi
+cf_ssl_library="-lnss_compat_ossl $cf_ssl_library"
+
+case "$cf_cv_use_libnss_compat" in #(vi
+no) #(vi
+	cf_ssl_root=
+	;;
+yes) #(vi
+
+echo "$as_me:16654: checking for SSL_get_version in -lnss_compat_ossl" >&5
+echo $ECHO_N "checking for SSL_get_version in -lnss_compat_ossl... $ECHO_C" >&6
+if test "${ac_cv_lib_nss_compat_ossl_SSL_get_version+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lnss_compat_ossl -lnss_compat_ossl $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 16662 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char SSL_get_version ();
+int
+main ()
+{
+SSL_get_version ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:16681: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:16684: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:16687: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:16690: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_nss_compat_ossl_SSL_get_version=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_nss_compat_ossl_SSL_get_version=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:16701: result: $ac_cv_lib_nss_compat_ossl_SSL_get_version" >&5
+echo "${ECHO_T}$ac_cv_lib_nss_compat_ossl_SSL_get_version" >&6
+if test $ac_cv_lib_nss_compat_ossl_SSL_get_version = yes; then
+  cat >>confdefs.h <<EOF
+#define HAVE_LIBNSS_COMPAT_OSSL 1
+EOF
+
+  LIBS="-lnss_compat_ossl $LIBS"
+
+else
+
+		cf_ssl_root=/usr/local/nss_compat_ossl
+		if test -d $cf_ssl_root ; then
+			test -n "$verbose" && echo "	assume it is in $cf_ssl_root" 1>&6
+
+echo "${as_me:-configure}:16716: testing assume it is in $cf_ssl_root ..." 1>&5
+
+			cf_ssl_library="-L$cf_ssl_root/lib $cf_ssl_library"
+		else
+			{ { echo "$as_me:16720: error: cannot find NSS compilant libraries" >&5
+echo "$as_me: error: cannot find NSS compilant libraries" >&2;}
+   { (exit 1); exit 1; }; }
+		fi
+
+fi
+
+	;;
+*)
+	if test -d $cf_cv_use_libnss_compat ; then
+		if test -d $cf_cv_use_libnss_compat/include ; then
+			cf_ssl_root=$cf_cv_use_libnss_compat
+		elif test -d $cf_cv_use_libnss_compat/../include ; then
+			cf_ssl_root=$cf_cv_use_libnss_compat/..
+		else
+			{ { echo "$as_me:16735: error: cannot find NSS compilant library under $cf_cv_use_libnss_compat" >&5
+echo "$as_me: error: cannot find NSS compilant library under $cf_cv_use_libnss_compat" >&2;}
+   { (exit 1); exit 1; }; }
+		fi
+		cf_ssl_library="-L$cf_ssl_root/lib $cf_ssl_library"
+	else
+		{ echo "$as_me:16741: WARNING: expected a directory: $cf_cv_use_libnss_compat" >&5
+echo "$as_me: WARNING: expected a directory: $cf_cv_use_libnss_compat" >&2;}
+	fi
+	;;
+esac
+LIBS="$cf_ssl_library $LIBS"
+
+cf_ssl_subincs=yes
+if test -n "$cf_ssl_root" ; then
+	if test -d $cf_ssl_root/include ; then
+		cf_ssl_cflags="-I$cf_ssl_root/include  $cf_ssl_cflags"
+		test -d $cf_ssl_root/include/nss_compat_ossl || cf_ssl_subincs=no
+	fi
+fi
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_ssl_cflags
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+if test "$cf_ssl_subincs" = yes ; then
+echo "$as_me:16835: checking for NSS compilant include directory" >&5
+echo $ECHO_N "checking for NSS compilant include directory... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 16838 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <nss_compat_ossl/nss_compat_ossl.h>
+int
+main ()
+{
+SSL_shutdown((SSL *)0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:16852: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:16855: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:16858: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:16861: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_ssl_incl=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_ssl_incl=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:16870: result: $cf_ssl_incl" >&5
+echo "${ECHO_T}$cf_ssl_incl" >&6
+test "$cf_ssl_incl" = yes && cat >>confdefs.h <<\EOF
+#define USE_NSS_COMPAT_INCL 1
+EOF
+
+fi
+
+echo "$as_me:16878: checking if we can link to NSS compilant library" >&5
+echo $ECHO_N "checking if we can link to NSS compilant library... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 16881 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#ifdef USE_NSS_COMPAT_INCL
+#include <nss_compat_ossl/nss_compat_ossl.h>
+#else
+#include <ssl.h>
+#endif
+
+int
+main ()
+{
+SSL_shutdown((SSL *)0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:16900: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:16903: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:16906: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:16909: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_ssl_library=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_ssl_library=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+echo "$as_me:16918: result: $cf_ssl_library" >&5
+echo "${ECHO_T}$cf_ssl_library" >&6
+if test "$cf_ssl_library" = yes ; then
+	cat >>confdefs.h <<\EOF
+#define USE_SSL 1
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define USE_X509_SUPPORT 1
+EOF
+
+else
+	{ { echo "$as_me:16930: error: Cannot link with NSS compilant libraries" >&5
+echo "$as_me: error: Cannot link with NSS compilant libraries" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+fi
+
+### check for ipv6 support
+echo "$as_me:16938: checking whether to enable ipv6" >&5
+echo $ECHO_N "checking whether to enable ipv6... $ECHO_C" >&6
+
+# Check whether --enable-ipv6 or --disable-ipv6 was given.
+if test "${enable_ipv6+set}" = set; then
+  enableval="$enable_ipv6"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    cat >>confdefs.h <<\EOF
+#define ENABLE_IPV6 1
+EOF
+
+  fi
+else
+  enableval=no
+fi;
+echo "$as_me:16954: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+if test "$enableval" = "yes"; then
+
+echo "$as_me:16958: checking ipv6 stack type" >&5
+echo $ECHO_N "checking ipv6 stack type... $ECHO_C" >&6
+if test "${cf_cv_ipv6type+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_ipv6type=unknown
+for i in solaris inria kame linux-glibc linux-libinet6 toshiba v6d zeta
+do
+	case $i in #(vi
+	solaris) #(vi
+		if test "SunOS" = "`uname -s`"
+		then
+		  if test -f /usr/include/netinet/ip6.h
+		  then
+			cf_cv_ipv6type=$i
+		  fi
+		fi
+		;;
+	inria) #(vi
+				cat >conftest.$ac_ext <<_ACEOF
+#line 16979 "configure"
+#include "confdefs.h"
+
+#include <netinet/in.h>
+#ifdef IPV6_INRIA_VERSION
+yes
+#endif
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "yes" >/dev/null 2>&1; then
+  cf_cv_ipv6type=$i
+fi
+rm -rf conftest*
+
+		;;
+	kame) #(vi
+				cat >conftest.$ac_ext <<_ACEOF
+#line 16996 "configure"
+#include "confdefs.h"
+
+#include <netinet/in.h>
+#ifdef __KAME__
+yes
+#endif
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "yes" >/dev/null 2>&1; then
+  cf_cv_ipv6type=$i
+fi
+rm -rf conftest*
+
+		;;
+	linux-glibc) #(vi
+				cat >conftest.$ac_ext <<_ACEOF
+#line 17013 "configure"
+#include "confdefs.h"
+
+#include <features.h>
+#if defined(__GLIBC__) && __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 1
+yes
+#endif
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "yes" >/dev/null 2>&1; then
+  cf_cv_ipv6type=$i
+fi
+rm -rf conftest*
+
+		;;
+	linux-libinet6) #(vi
+				if test -d /usr/inet6
+		then
+			cf_cv_ipv6type=$i
+		elif test -f /usr/include/netinet/ip6.h
+		then
+			cf_cv_ipv6type=$i
+		fi
+		;;
+	toshiba) #(vi
+		cat >conftest.$ac_ext <<_ACEOF
+#line 17039 "configure"
+#include "confdefs.h"
+
+#include <sys/param.h>
+#ifdef _TOSHIBA_INET6
+yes
+#endif
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "yes" >/dev/null 2>&1; then
+  cf_cv_ipv6type=$i
+fi
+rm -rf conftest*
+
+		;;
+	v6d) #(vi
+		cat >conftest.$ac_ext <<_ACEOF
+#line 17056 "configure"
+#include "confdefs.h"
+
+#include </usr/local/v6/include/sys/v6config.h>
+#ifdef __V6D__
+yes
+#endif
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "yes" >/dev/null 2>&1; then
+  cf_cv_ipv6type=$i
+fi
+rm -rf conftest*
+
+		;;
+	zeta)
+		cat >conftest.$ac_ext <<_ACEOF
+#line 17073 "configure"
+#include "confdefs.h"
+
+#include <sys/param.h>
+#ifdef _ZETA_MINAMI_INET6
+yes
+#endif
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "yes" >/dev/null 2>&1; then
+  cf_cv_ipv6type=$i
+fi
+rm -rf conftest*
+
+		;;
+	esac
+	if test "$cf_cv_ipv6type" != "unknown"; then
+		break
+	fi
+done
+
+fi
+echo "$as_me:17095: result: $cf_cv_ipv6type" >&5
+echo "${ECHO_T}$cf_cv_ipv6type" >&6
+
+cf_ipv6lib=none
+cf_ipv6dir=none
+
+echo "$as_me:17101: checking for IPv6 library if required" >&5
+echo $ECHO_N "checking for IPv6 library if required... $ECHO_C" >&6
+case $cf_cv_ipv6type in #(vi
+solaris) #(vi
+	;;
+inria) #(vi
+	;;
+kame) #(vi
+		cf_ipv6lib=inet6
+	cf_ipv6dir=v6
+	;;
+linux-glibc) #(vi
+	;;
+linux-libinet6) #(vi
+		cf_ipv6lib=inet6
+	cf_ipv6dir=inet6
+	;;
+toshiba) #(vi
+	cf_ipv6lib=inet6
+	cf_ipv6dir=v6
+	;;
+v6d) #(vi
+	cf_ipv6lib=v6
+	cf_ipv6dir=v6
+	;;
+zeta)
+	cf_ipv6lib=inet6
+	cf_ipv6dir=v6
+	;;
+esac
+echo "$as_me:17131: result: $cf_ipv6lib" >&5
+echo "${ECHO_T}$cf_ipv6lib" >&6
+
+if test "$cf_ipv6lib" != "none"; then
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 17137 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <netdb.h>
+#include <netinet/in.h>
+#include <netinet/ip6.h>
+int
+main ()
+{
+getaddrinfo(0, 0, 0, 0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:17153: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:17156: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:17159: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:17162: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/$cf_ipv6dir &&       cf_search="$cf_search $cf_header_path/include/$cf_ipv6dir"
+	test -d $cf_header_path/include/$cf_ipv6dir/include &&    cf_search="$cf_search $cf_header_path/include/$cf_ipv6dir/include"
+	test -d $cf_header_path/$cf_ipv6dir/include &&       cf_search="$cf_search $cf_header_path/$cf_ipv6dir/include"
+	test -d $cf_header_path/$cf_ipv6dir/include/$cf_ipv6dir &&    cf_search="$cf_search $cf_header_path/$cf_ipv6dir/include/$cf_ipv6dir"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/$cf_ipv6dir &&       cf_search="$cf_search /usr/include/$cf_ipv6dir"
+	test -d /usr/include/$cf_ipv6dir/include &&    cf_search="$cf_search /usr/include/$cf_ipv6dir/include"
+	test -d /usr/$cf_ipv6dir/include &&       cf_search="$cf_search /usr/$cf_ipv6dir/include"
+	test -d /usr/$cf_ipv6dir/include/$cf_ipv6dir &&    cf_search="$cf_search /usr/$cf_ipv6dir/include/$cf_ipv6dir"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/$cf_ipv6dir &&       cf_search="$cf_search $prefix/include/$cf_ipv6dir"
+	test -d $prefix/include/$cf_ipv6dir/include &&    cf_search="$cf_search $prefix/include/$cf_ipv6dir/include"
+	test -d $prefix/$cf_ipv6dir/include &&       cf_search="$cf_search $prefix/$cf_ipv6dir/include"
+	test -d $prefix/$cf_ipv6dir/include/$cf_ipv6dir &&    cf_search="$cf_search $prefix/$cf_ipv6dir/include/$cf_ipv6dir"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/$cf_ipv6dir &&       cf_search="$cf_search /usr/local/include/$cf_ipv6dir"
+	test -d /usr/local/include/$cf_ipv6dir/include &&    cf_search="$cf_search /usr/local/include/$cf_ipv6dir/include"
+	test -d /usr/local/$cf_ipv6dir/include &&       cf_search="$cf_search /usr/local/$cf_ipv6dir/include"
+	test -d /usr/local/$cf_ipv6dir/include/$cf_ipv6dir &&    cf_search="$cf_search /usr/local/$cf_ipv6dir/include/$cf_ipv6dir"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/$cf_ipv6dir &&       cf_search="$cf_search /opt/include/$cf_ipv6dir"
+	test -d /opt/include/$cf_ipv6dir/include &&    cf_search="$cf_search /opt/include/$cf_ipv6dir/include"
+	test -d /opt/$cf_ipv6dir/include &&       cf_search="$cf_search /opt/$cf_ipv6dir/include"
+	test -d /opt/$cf_ipv6dir/include/$cf_ipv6dir &&    cf_search="$cf_search /opt/$cf_ipv6dir/include/$cf_ipv6dir"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/$cf_ipv6dir &&       cf_search="$cf_search $HOME/include/$cf_ipv6dir"
+	test -d $HOME/include/$cf_ipv6dir/include &&    cf_search="$cf_search $HOME/include/$cf_ipv6dir/include"
+	test -d $HOME/$cf_ipv6dir/include &&       cf_search="$cf_search $HOME/$cf_ipv6dir/include"
+	test -d $HOME/$cf_ipv6dir/include/$cf_ipv6dir &&    cf_search="$cf_search $HOME/$cf_ipv6dir/include/$cf_ipv6dir"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/$cf_ipv6dir && cf_search="$cf_search $includedir/$cf_ipv6dir"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/$cf_ipv6dir && cf_search="$cf_search $oldincludedir/$cf_ipv6dir"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+	for cf_incdir in $cf_search
+	do
+		cf_header=$cf_incdir/netinet/ip6.h
+		if test -f $cf_header
+		then
+
+if test -n "$cf_incdir" ; then
+  for cf_add_incdir in $cf_incdir
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 17302 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:17314: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:17317: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:17320: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:17323: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:17340: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+			test -n "$verbose" && echo "	... found $cf_header" 1>&6
+			break
+		fi
+		test -n "$verbose" && echo "	... tested $cf_header" 1>&6
+	done
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+	eval 'cf_cv_have_lib_'$cf_ipv6lib'=no'
+	cf_libdir=""
+	echo "$as_me:17366: checking for getaddrinfo" >&5
+echo $ECHO_N "checking for getaddrinfo... $ECHO_C" >&6
+if test "${ac_cv_func_getaddrinfo+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 17372 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char getaddrinfo (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char getaddrinfo ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_getaddrinfo) || defined (__stub___getaddrinfo)
+choke me
+#else
+f = getaddrinfo;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:17403: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:17406: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:17409: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:17412: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_getaddrinfo=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_getaddrinfo=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:17422: result: $ac_cv_func_getaddrinfo" >&5
+echo "${ECHO_T}$ac_cv_func_getaddrinfo" >&6
+if test $ac_cv_func_getaddrinfo = yes; then
+  eval 'cf_cv_have_lib_'$cf_ipv6lib'=yes'
+else
+
+		cf_save_LIBS="$LIBS"
+		echo "$as_me:17429: checking for getaddrinfo in -l$cf_ipv6lib" >&5
+echo $ECHO_N "checking for getaddrinfo in -l$cf_ipv6lib... $ECHO_C" >&6
+		LIBS="-l$cf_ipv6lib $LIBS"
+		cat >conftest.$ac_ext <<_ACEOF
+#line 17433 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <netdb.h>
+#include <netinet/in.h>
+#include <netinet/ip6.h>
+int
+main ()
+{
+getaddrinfo(0, 0, 0, 0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:17449: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:17452: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:17455: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:17458: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:17460: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 eval 'cf_cv_have_lib_'$cf_ipv6lib'=yes'
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:17467: result: no" >&5
+echo "${ECHO_T}no" >&6
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/$cf_ipv6dir &&       cf_search="$cf_search $cf_library_path/lib/$cf_ipv6dir"
+	test -d $cf_library_path/lib/$cf_ipv6dir/lib &&    cf_search="$cf_search $cf_library_path/lib/$cf_ipv6dir/lib"
+	test -d $cf_library_path/$cf_ipv6dir/lib &&       cf_search="$cf_search $cf_library_path/$cf_ipv6dir/lib"
+	test -d $cf_library_path/$cf_ipv6dir/lib/$cf_ipv6dir &&    cf_search="$cf_search $cf_library_path/$cf_ipv6dir/lib/$cf_ipv6dir"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/$cf_ipv6dir &&       cf_search="$cf_search /usr/lib/$cf_ipv6dir"
+	test -d /usr/lib/$cf_ipv6dir/lib &&    cf_search="$cf_search /usr/lib/$cf_ipv6dir/lib"
+	test -d /usr/$cf_ipv6dir/lib &&       cf_search="$cf_search /usr/$cf_ipv6dir/lib"
+	test -d /usr/$cf_ipv6dir/lib/$cf_ipv6dir &&    cf_search="$cf_search /usr/$cf_ipv6dir/lib/$cf_ipv6dir"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/$cf_ipv6dir &&       cf_search="$cf_search $prefix/lib/$cf_ipv6dir"
+	test -d $prefix/lib/$cf_ipv6dir/lib &&    cf_search="$cf_search $prefix/lib/$cf_ipv6dir/lib"
+	test -d $prefix/$cf_ipv6dir/lib &&       cf_search="$cf_search $prefix/$cf_ipv6dir/lib"
+	test -d $prefix/$cf_ipv6dir/lib/$cf_ipv6dir &&    cf_search="$cf_search $prefix/$cf_ipv6dir/lib/$cf_ipv6dir"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/$cf_ipv6dir &&       cf_search="$cf_search /usr/local/lib/$cf_ipv6dir"
+	test -d /usr/local/lib/$cf_ipv6dir/lib &&    cf_search="$cf_search /usr/local/lib/$cf_ipv6dir/lib"
+	test -d /usr/local/$cf_ipv6dir/lib &&       cf_search="$cf_search /usr/local/$cf_ipv6dir/lib"
+	test -d /usr/local/$cf_ipv6dir/lib/$cf_ipv6dir &&    cf_search="$cf_search /usr/local/$cf_ipv6dir/lib/$cf_ipv6dir"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/$cf_ipv6dir &&       cf_search="$cf_search /opt/lib/$cf_ipv6dir"
+	test -d /opt/lib/$cf_ipv6dir/lib &&    cf_search="$cf_search /opt/lib/$cf_ipv6dir/lib"
+	test -d /opt/$cf_ipv6dir/lib &&       cf_search="$cf_search /opt/$cf_ipv6dir/lib"
+	test -d /opt/$cf_ipv6dir/lib/$cf_ipv6dir &&    cf_search="$cf_search /opt/$cf_ipv6dir/lib/$cf_ipv6dir"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/$cf_ipv6dir &&       cf_search="$cf_search $HOME/lib/$cf_ipv6dir"
+	test -d $HOME/lib/$cf_ipv6dir/lib &&    cf_search="$cf_search $HOME/lib/$cf_ipv6dir/lib"
+	test -d $HOME/$cf_ipv6dir/lib &&       cf_search="$cf_search $HOME/$cf_ipv6dir/lib"
+	test -d $HOME/$cf_ipv6dir/lib/$cf_ipv6dir &&    cf_search="$cf_search $HOME/$cf_ipv6dir/lib/$cf_ipv6dir"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+			for cf_libdir in $cf_search
+			do
+				echo "$as_me:17557: checking for -l$cf_ipv6lib in $cf_libdir" >&5
+echo $ECHO_N "checking for -l$cf_ipv6lib in $cf_libdir... $ECHO_C" >&6
+				LIBS="-L$cf_libdir -l$cf_ipv6lib $cf_save_LIBS"
+				cat >conftest.$ac_ext <<_ACEOF
+#line 17561 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <netdb.h>
+#include <netinet/in.h>
+#include <netinet/ip6.h>
+int
+main ()
+{
+getaddrinfo(0, 0, 0, 0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:17577: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:17580: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:17583: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:17586: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:17588: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 		 eval 'cf_cv_have_lib_'$cf_ipv6lib'=yes'
+					 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:17595: result: no" >&5
+echo "${ECHO_T}no" >&6
+					 LIBS="$cf_save_LIBS"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+			done
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+eval 'cf_found_library=$cf_cv_have_lib_'$cf_ipv6lib
+
+	if test $cf_found_library = no ; then
+		{ { echo "$as_me:17610: error: No $cf_ipv6lib library found, cannot continue.  You must fetch lib$cf_ipv6lib.a
+from an appropriate IPv6 kit and compile beforehand." >&5
+echo "$as_me: error: No $cf_ipv6lib library found, cannot continue.  You must fetch lib$cf_ipv6lib.a
+from an appropriate IPv6 kit and compile beforehand." >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+fi
+
+echo "$as_me:17618: checking working getaddrinfo" >&5
+echo $ECHO_N "checking working getaddrinfo... $ECHO_C" >&6
+if test "${cf_cv_getaddrinfo+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+if test "$cross_compiling" = yes; then
+  cf_cv_getaddrinfo=unknown
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 17628 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <netdb.h>
+#include <string.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+
+#define expect(a,b) if (strcmp(a,b) != 0) goto bad
+
+int main()
+{
+   int passive, gaierr, inet4 = 0, inet6 = 0;
+   struct addrinfo hints, *ai, *aitop;
+   char straddr[INET6_ADDRSTRLEN], strport[16];
+
+   for (passive = 0; passive <= 1; passive++) {
+     memset(&hints, 0, sizeof(hints));
+     hints.ai_family = AF_UNSPEC;
+     hints.ai_flags = passive ? AI_PASSIVE : 0;
+     hints.ai_socktype = SOCK_STREAM;
+     if ((gaierr = getaddrinfo(NULL, "54321", &hints, &aitop)) != 0) {
+       (void)gai_strerror(gaierr);
+       goto bad;
+     }
+     for (ai = aitop; ai; ai = ai->ai_next) {
+       if (ai->ai_addr == NULL ||
+           ai->ai_addrlen == 0 ||
+           getnameinfo(ai->ai_addr, ai->ai_addrlen,
+                       straddr, sizeof(straddr), strport, sizeof(strport),
+                       NI_NUMERICHOST|NI_NUMERICSERV) != 0) {
+         goto bad;
+       }
+       switch (ai->ai_family) {
+       case AF_INET:
+         expect(strport, "54321");
+         if (passive) {
+           expect(straddr, "0.0.0.0");
+         } else {
+           expect(straddr, "127.0.0.1");
+         }
+         inet4++;
+         break;
+       case AF_INET6:
+         expect(strport, "54321");
+         if (passive) {
+           expect(straddr, "::");
+         } else {
+           expect(straddr, "::1");
+         }
+         inet6++;
+         break;
+       case AF_UNSPEC:
+         goto bad;
+         break;
+       default:
+         /* another family support? */
+         break;
+       }
+     }
+   }
+
+   if (!(inet4 == 0 || inet4 == 2))
+     goto bad;
+   if (!(inet6 == 0 || inet6 == 2))
+     goto bad;
+
+   if (aitop)
+     freeaddrinfo(aitop);
+   ${cf_cv_main_return:-return}(0);
+
+  bad:
+   if (aitop)
+     freeaddrinfo(aitop);
+   ${cf_cv_main_return:-return}(1);
+}
+
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:17708: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:17711: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:17713: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:17716: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_getaddrinfo=yes
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_getaddrinfo=no
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+fi
+echo "$as_me:17729: result: $cf_cv_getaddrinfo" >&5
+echo "${ECHO_T}$cf_cv_getaddrinfo" >&6
+if test "$cf_cv_getaddrinfo" = yes ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_GAI_STRERROR 1
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define HAVE_GETADDRINFO 1
+EOF
+
+fi
+
+if test "$cf_cv_getaddrinfo" != "yes"; then
+	if test "$cf_cv_ipv6type" != "linux"; then
+		{ echo "$as_me:17744: WARNING: You must get working getaddrinfo() function,
+or you can specify \"--disable-ipv6\"" >&5
+echo "$as_me: WARNING: You must get working getaddrinfo() function,
+or you can specify \"--disable-ipv6\"" >&2;}
+	else
+		{ echo "$as_me:17749: WARNING: The getaddrinfo() implementation on your system seems be buggy.
+You should upgrade your system library to the newest version
+of GNU C library (aka glibc)." >&5
+echo "$as_me: WARNING: The getaddrinfo() implementation on your system seems be buggy.
+You should upgrade your system library to the newest version
+of GNU C library (aka glibc)." >&2;}
+	fi
+fi
+
+fi
+
+echo "$as_me:17760: checking for screen type" >&5
+echo $ECHO_N "checking for screen type... $ECHO_C" >&6
+if test "${cf_cv_screen+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# Check whether --with-screen or --without-screen was given.
+if test "${with_screen+set}" = set; then
+  withval="$with_screen"
+
+case $withval in
+curses|ncurses|ncursesw|pdcurses|slang)
+	cf_cv_screen=$withval
+	;;
+*)	{ { echo "$as_me:17774: error: Unexpected value" >&5
+echo "$as_me: error: Unexpected value" >&2;}
+   { (exit 1); exit 1; }; }
+	;;
+esac
+else
+  cf_cv_screen=curses
+fi;
+fi
+echo "$as_me:17783: result: $cf_cv_screen" >&5
+echo "${ECHO_T}$cf_cv_screen" >&6
+
+case $cf_cv_screen in
+curses|ncurses*)
+
+echo "$as_me:17789: checking for specific curses-directory" >&5
+echo $ECHO_N "checking for specific curses-directory... $ECHO_C" >&6
+
+# Check whether --with-curses-dir or --without-curses-dir was given.
+if test "${with_curses_dir+set}" = set; then
+  withval="$with_curses_dir"
+  cf_cv_curses_dir=$withval
+else
+  cf_cv_curses_dir=no
+fi;
+echo "$as_me:17799: result: $cf_cv_curses_dir" >&5
+echo "${ECHO_T}$cf_cv_curses_dir" >&6
+
+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$withval" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval withval="$withval"
+  case ".$withval" in #(vi
+  .NONE/*)
+    withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  { { echo "$as_me:17830: error: expected a pathname, not \"$withval\"" >&5
+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
+   { (exit 1); exit 1; }; }
+  ;;
+esac
+
+	if test -d "$cf_cv_curses_dir"
+	then
+
+if test -n "$cf_cv_curses_dir/include" ; then
+  for cf_add_incdir in $cf_cv_curses_dir/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 17863 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:17875: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:17878: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:17881: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:17884: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:17901: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+if test -n "$cf_cv_curses_dir/lib" ; then
+  for cf_add_libdir in $cf_cv_curses_dir/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:17935: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	fi
+fi
+
+	;;
+esac
+
+cf_wide_curses=no
+dft_color_style=yes
+case $cf_cv_screen in
+curses)
+
+echo "$as_me:17954: checking for extra include directories" >&5
+echo $ECHO_N "checking for extra include directories... $ECHO_C" >&6
+if test "${cf_cv_curses_incdir+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_curses_incdir=no
+case $host_os in #(vi
+hpux10.*) #(vi
+	if test "x$cf_cv_screen" = "xcurses_colr"
+	then
+		test -d /usr/include/curses_colr && \
+		cf_cv_curses_incdir="-I/usr/include/curses_colr"
+	fi
+	;;
+sunos3*|sunos4*)
+	if test "x$cf_cv_screen" = "xcurses_5lib"
+	then
+		test -d /usr/5lib && \
+		test -d /usr/5include && \
+		cf_cv_curses_incdir="-I/usr/5include"
+	fi
+	;;
+esac
+
+fi
+echo "$as_me:17980: result: $cf_cv_curses_incdir" >&5
+echo "${ECHO_T}$cf_cv_curses_incdir" >&6
+test "$cf_cv_curses_incdir" != no && CPPFLAGS="$CPPFLAGS $cf_cv_curses_incdir"
+
+echo "$as_me:17984: checking if we have identified curses headers" >&5
+echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6
+if test "${cf_cv_ncurses_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_ncurses_header=none
+for cf_header in  \
+	ncurses.h \
+	curses.h ncurses/ncurses.h ncurses/curses.h
+do
+cat >conftest.$ac_ext <<_ACEOF
+#line 17996 "configure"
+#include "confdefs.h"
+#include <${cf_header}>
+int
+main ()
+{
+initscr(); tgoto("?", 0,0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:18008: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:18011: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:18014: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18017: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ncurses_header=$cf_header; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+
+fi
+echo "$as_me:18028: result: $cf_cv_ncurses_header" >&5
+echo "${ECHO_T}$cf_cv_ncurses_header" >&6
+
+if test "$cf_cv_ncurses_header" = none ; then
+	{ { echo "$as_me:18032: error: No curses header-files found" >&5
+echo "$as_me: error: No curses header-files found" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
+
+for ac_header in $cf_cv_ncurses_header
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:18042: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 18048 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:18052: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:18058: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:18077: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+echo "$as_me:18087: checking for terminfo header" >&5
+echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
+if test "${cf_cv_term_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+case ${cf_cv_ncurses_header} in #(vi
+*/ncurses.h|*/ncursesw.h) #(vi
+	cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
+	;;
+*)
+	cf_term_header=term.h
+	;;
+esac
+
+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
+do
+cat >conftest.$ac_ext <<_ACEOF
+#line 18105 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <$cf_test>
+
+int
+main ()
+{
+int x = auto_left_margin
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:18120: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:18123: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:18126: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18129: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_term_header="$cf_test"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_term_header=unknown
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	test "$cf_cv_term_header" != unknown && break
+done
+
+fi
+echo "$as_me:18145: result: $cf_cv_term_header" >&5
+echo "${ECHO_T}$cf_cv_term_header" >&6
+
+# Set definitions to allow ifdef'ing to accommodate subdirectories
+
+case $cf_cv_term_header in # (vi
+*term.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_TERM_H 1
+EOF
+
+	;;
+esac
+
+case $cf_cv_term_header in # (vi
+ncurses/term.h) #(vi
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSES_TERM_H 1
+EOF
+
+	;;
+ncursesw/term.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSESW_TERM_H 1
+EOF
+
+	;;
+esac
+
+echo "$as_me:18174: checking for ncurses version" >&5
+echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6
+if test "${cf_cv_ncurses_version+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_cv_ncurses_version=no
+	cf_tempfile=out$$
+	rm -f $cf_tempfile
+	if test "$cross_compiling" = yes; then
+
+	# This will not work if the preprocessor splits the line after the
+	# Autoconf token.  The 'unproto' program does that.
+	cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header:-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
+	{ (eval echo "$as_me:18200: \"$cf_try\"") >&5
+  (eval $cf_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18203: \$? = $ac_status" >&5
+  (exit $ac_status); }
+	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"
+		rm -f conftest.out
+	fi
+
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 18213 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <stdio.h>
+int main()
+{
+	FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+	fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+	fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+	fprintf(fp, "old\n");
+# else
+	make an error
+# endif
+#endif
+	${cf_cv_main_return:-return}(0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:18238: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18241: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:18243: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18246: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_ncurses_version=`cat $cf_tempfile`
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+	rm -f $cf_tempfile
+
+fi
+echo "$as_me:18260: result: $cf_cv_ncurses_version" >&5
+echo "${ECHO_T}$cf_cv_ncurses_version" >&6
+test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+echo "$as_me:18266: checking if we have identified curses libraries" >&5
+echo $ECHO_N "checking if we have identified curses libraries... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line 18269 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr(); tgoto("?", 0,0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18281: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18284: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18287: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18290: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+echo "$as_me:18299: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+
+if test "$cf_result" = no ; then
+case $host_os in #(vi
+freebsd*) #(vi
+    echo "$as_me:18305: checking for tgoto in -lmytinfo" >&5
+echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6
+if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lmytinfo  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 18313 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char tgoto ();
+int
+main ()
+{
+tgoto ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18332: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18335: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18338: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18341: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_mytinfo_tgoto=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_mytinfo_tgoto=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:18352: result: $ac_cv_lib_mytinfo_tgoto" >&5
+echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6
+if test $ac_cv_lib_mytinfo_tgoto = yes; then
+  LIBS="-lmytinfo $LIBS"
+fi
+
+    ;;
+hpux10.*) #(vi
+	# Looking at HPUX 10.20, the Hcurses library is the oldest (1997), cur_colr
+	# next (1998), and xcurses "newer" (2000).  There is no header file for
+	# Hcurses; the subdirectory curses_colr has the headers (curses.h and
+	# term.h) for cur_colr
+	if test "x$cf_cv_screen" = "xcurses_colr"
+	then
+		echo "$as_me:18366: checking for initscr in -lcur_colr" >&5
+echo $ECHO_N "checking for initscr in -lcur_colr... $ECHO_C" >&6
+if test "${ac_cv_lib_cur_colr_initscr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lcur_colr  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 18374 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char initscr ();
+int
+main ()
+{
+initscr ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18393: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18396: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18399: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18402: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_cur_colr_initscr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_cur_colr_initscr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:18413: result: $ac_cv_lib_cur_colr_initscr" >&5
+echo "${ECHO_T}$ac_cv_lib_cur_colr_initscr" >&6
+if test $ac_cv_lib_cur_colr_initscr = yes; then
+
+			LIBS="-lcur_colr $LIBS"
+			ac_cv_func_initscr=yes
+
+else
+
+		echo "$as_me:18422: checking for initscr in -lHcurses" >&5
+echo $ECHO_N "checking for initscr in -lHcurses... $ECHO_C" >&6
+if test "${ac_cv_lib_Hcurses_initscr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lHcurses  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 18430 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char initscr ();
+int
+main ()
+{
+initscr ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18449: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18452: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18455: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18458: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_Hcurses_initscr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_Hcurses_initscr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:18469: result: $ac_cv_lib_Hcurses_initscr" >&5
+echo "${ECHO_T}$ac_cv_lib_Hcurses_initscr" >&6
+if test $ac_cv_lib_Hcurses_initscr = yes; then
+
+			# HP's header uses __HP_CURSES, but user claims _HP_CURSES.
+			LIBS="-lHcurses $LIBS"
+			CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES"
+			ac_cv_func_initscr=yes
+
+fi
+
+fi
+
+	fi
+    ;;
+linux*)
+	case `arch 2>/dev/null` in
+	x86_64)
+		if test -d /lib64
+		then
+
+if test -n "/lib64" ; then
+  for cf_add_libdir in /lib64
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:18509: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+		else
+
+if test -n "/lib" ; then
+  for cf_add_libdir in /lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:18538: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+		fi
+		;;
+	*)
+
+if test -n "/lib" ; then
+  for cf_add_libdir in /lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:18569: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+		;;
+	esac
+    ;;
+sunos3*|sunos4*)
+	if test "x$cf_cv_screen" = "xcurses_5lib"
+	then
+		if test -d /usr/5lib ; then
+
+if test -n "/usr/5lib" ; then
+  for cf_add_libdir in /usr/5lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:18604: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+			LIBS="-lcurses -ltermcap $LIBS"
+		fi
+    fi
+    ac_cv_func_initscr=yes
+    ;;
+esac
+
+if test ".$ac_cv_func_initscr" != .yes ; then
+    cf_save_LIBS="$LIBS"
+    cf_term_lib=""
+    cf_curs_lib=""
+
+    if test ".${cf_cv_ncurses_version:-no}" != .no
+    then
+        cf_check_list="ncurses curses cursesX"
+    else
+        cf_check_list="cursesX curses ncurses"
+    fi
+
+    # Check for library containing tgoto.  Do this before curses library
+    # because it may be needed to link the test-case for initscr.
+    echo "$as_me:18633: checking for tgoto" >&5
+echo $ECHO_N "checking for tgoto... $ECHO_C" >&6
+if test "${ac_cv_func_tgoto+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 18639 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char tgoto (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char tgoto ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_tgoto) || defined (__stub___tgoto)
+choke me
+#else
+f = tgoto;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18670: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18673: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18676: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18679: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_tgoto=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_tgoto=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:18689: result: $ac_cv_func_tgoto" >&5
+echo "${ECHO_T}$ac_cv_func_tgoto" >&6
+if test $ac_cv_func_tgoto = yes; then
+  cf_term_lib=predefined
+else
+
+        for cf_term_lib in $cf_check_list otermcap termcap termlib unknown
+        do
+            as_ac_Lib=`echo "ac_cv_lib_$cf_term_lib''_tgoto" | $as_tr_sh`
+echo "$as_me:18698: checking for tgoto in -l$cf_term_lib" >&5
+echo $ECHO_N "checking for tgoto in -l$cf_term_lib... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Lib+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-l$cf_term_lib  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 18706 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char tgoto ();
+int
+main ()
+{
+tgoto ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18725: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18728: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18731: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18734: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_Lib=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_Lib=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:18745: result: `eval echo '${'$as_ac_Lib'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
+if test `eval echo '${'$as_ac_Lib'}'` = yes; then
+  break
+fi
+
+        done
+
+fi
+
+    # Check for library containing initscr
+    test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
+ 	for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown
+    do
+        as_ac_Lib=`echo "ac_cv_lib_$cf_curs_lib''_initscr" | $as_tr_sh`
+echo "$as_me:18760: checking for initscr in -l$cf_curs_lib" >&5
+echo $ECHO_N "checking for initscr in -l$cf_curs_lib... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Lib+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-l$cf_curs_lib  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 18768 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char initscr ();
+int
+main ()
+{
+initscr ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18787: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18790: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18793: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18796: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_Lib=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_Lib=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:18807: result: `eval echo '${'$as_ac_Lib'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
+if test `eval echo '${'$as_ac_Lib'}'` = yes; then
+  break
+fi
+
+    done
+    test $cf_curs_lib = unknown && { { echo "$as_me:18814: error: no curses library found" >&5
+echo "$as_me: error: no curses library found" >&2;}
+   { (exit 1); exit 1; }; }
+
+    LIBS="-l$cf_curs_lib $cf_save_LIBS"
+    if test "$cf_term_lib" = unknown ; then
+        echo "$as_me:18820: checking if we can link with $cf_curs_lib library" >&5
+echo $ECHO_N "checking if we can link with $cf_curs_lib library... $ECHO_C" >&6
+        cat >conftest.$ac_ext <<_ACEOF
+#line 18823 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18835: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18838: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18841: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18844: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+        echo "$as_me:18853: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+        test $cf_result = no && { { echo "$as_me:18855: error: Cannot link curses library" >&5
+echo "$as_me: error: Cannot link curses library" >&2;}
+   { (exit 1); exit 1; }; }
+    elif test "$cf_curs_lib" = "$cf_term_lib" ; then
+        :
+    elif test "$cf_term_lib" != predefined ; then
+        echo "$as_me:18861: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
+echo $ECHO_N "checking if we need both $cf_curs_lib and $cf_term_lib libraries... $ECHO_C" >&6
+        cat >conftest.$ac_ext <<_ACEOF
+#line 18864 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr(); tgoto((char *)0, 0, 0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18876: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18879: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18882: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18885: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 18894 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:18906: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:18909: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:18912: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18915: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=error
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+        echo "$as_me:18927: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+    fi
+fi
+fi
+
+echo "$as_me:18933: checking for curses performance tradeoff" >&5
+echo $ECHO_N "checking for curses performance tradeoff... $ECHO_C" >&6
+if test "${cf_cv_curs_performance+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cf_cv_curs_performance=no
+    cat >conftest.$ac_ext <<_ACEOF
+#line 18941 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+
+#if defined(wbkgdset) && defined(clearok) && defined(getbkgd)
+	int x = ERR;
+#else
+	int x = ;	/* force an error */
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:18960: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:18963: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:18966: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:18969: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 18973 "configure"
+#include "confdefs.h"
+
+#define CURS_PERFORMANCE
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+
+#if defined(wbkgdset) && defined(clearok) && defined(getbkgd)
+	int x = ;	/* force an error */
+#else
+	int x = ERR;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:18993: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:18996: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:18999: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19002: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_curs_performance=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+
+echo "$as_me:19017: result: $cf_cv_curs_performance" >&5
+echo "${ECHO_T}$cf_cv_curs_performance" >&6
+test $cf_cv_curs_performance = yes && cat >>confdefs.h <<\EOF
+#define CURS_PERFORMANCE 1
+EOF
+
+echo "$as_me:19023: checking for curses touchline function" >&5
+echo $ECHO_N "checking for curses touchline function... $ECHO_C" >&6
+if test "${cf_cv_curs_touchline+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 19030 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+touchline(stdscr, 1,2,3);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:19043: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:19046: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:19049: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19052: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_curs_touchline=bsd
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 19059 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+touchline(stdscr, 1,2);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:19072: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:19075: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:19078: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19081: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_curs_touchline=sysv
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_curs_touchline=bsd
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:19093: result: $cf_cv_curs_touchline" >&5
+echo "${ECHO_T}$cf_cv_curs_touchline" >&6
+case "$cf_cv_curs_touchline" in #(vi
+bsd) #(vi
+	cat >>confdefs.h <<\EOF
+#define HAVE_BSD_TOUCHLINE 1
+EOF
+
+	;;
+sysv)
+	cat >>confdefs.h <<\EOF
+#define HAVE_SYSV_TOUCHLINE 1
+EOF
+
+	;;
+esac
+
+	;;
+ncurses)
+
+cf_ncuconfig_root=ncurses
+
+echo "Looking for ${cf_ncuconfig_root}-config"
+
+if test -n "$ac_tool_prefix"; then
+  for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
+  do
+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:19122: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NCURSES_CONFIG"; then
+  ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
+echo "$as_me:19137: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
+if test -n "$NCURSES_CONFIG"; then
+  echo "$as_me:19145: result: $NCURSES_CONFIG" >&5
+echo "${ECHO_T}$NCURSES_CONFIG" >&6
+else
+  echo "$as_me:19148: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+    test -n "$NCURSES_CONFIG" && break
+  done
+fi
+if test -z "$NCURSES_CONFIG"; then
+  ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG
+  for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
+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 "$as_me:19161: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NCURSES_CONFIG"; then
+  ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog"
+echo "$as_me:19176: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
+if test -n "$ac_ct_NCURSES_CONFIG"; then
+  echo "$as_me:19184: result: $ac_ct_NCURSES_CONFIG" >&5
+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
+else
+  echo "$as_me:19187: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ac_ct_NCURSES_CONFIG" && break
+done
+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none"
+
+  NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG
+fi
+
+if test "$NCURSES_CONFIG" != none ; then
+
+CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`"
+LIBS="`$NCURSES_CONFIG --libs` $LIBS"
+
+# even with config script, some packages use no-override for curses.h
+
+echo "$as_me:19205: checking if we have identified curses headers" >&5
+echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6
+if test "${cf_cv_ncurses_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_ncurses_header=none
+for cf_header in  \
+    ncurses/ncurses.h \
+	ncurses/curses.h \
+	ncurses.h \
+	curses.h
+do
+cat >conftest.$ac_ext <<_ACEOF
+#line 19219 "configure"
+#include "confdefs.h"
+#include <${cf_header}>
+int
+main ()
+{
+initscr(); tgoto("?", 0,0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:19231: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:19234: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:19237: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19240: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ncurses_header=$cf_header; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+
+fi
+echo "$as_me:19251: result: $cf_cv_ncurses_header" >&5
+echo "${ECHO_T}$cf_cv_ncurses_header" >&6
+
+if test "$cf_cv_ncurses_header" = none ; then
+	{ { echo "$as_me:19255: error: No curses header-files found" >&5
+echo "$as_me: error: No curses header-files found" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
+
+for ac_header in $cf_cv_ncurses_header
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:19265: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 19271 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:19275: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:19281: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:19300: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+cat >>confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+cat >>confdefs.h <<EOF
+#define $cf_nculib_ROOT 1
+EOF
+
+cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+
+else
+
+cf_ncuhdr_root=ncurses
+
+test -n "$cf_cv_curses_dir" && \
+test "$cf_cv_curses_dir" != "no" && { \
+
+if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
+  for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 19353 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:19365: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:19368: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:19371: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19374: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:19391: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+}
+
+echo "$as_me:19408: checking for $cf_ncuhdr_root header in include-path" >&5
+echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6
+if test "${cf_cv_ncurses_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
+	( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+	for cf_header in $cf_header_list
+	do
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 19420 "configure"
+#include "confdefs.h"
+
+#include <$cf_header>
+int
+main ()
+{
+
+#ifdef NCURSES_VERSION
+
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+	make an error
+#endif
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:19444: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:19447: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:19450: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19453: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ncurses_h=$cf_header
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_ncurses_h=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+		test "$cf_cv_ncurses_h" != no && break
+	done
+
+fi
+echo "$as_me:19468: result: $cf_cv_ncurses_h" >&5
+echo "${ECHO_T}$cf_cv_ncurses_h" >&6
+
+if test "$cf_cv_ncurses_h" != no ; then
+	cf_cv_ncurses_header=$cf_cv_ncurses_h
+else
+
+echo "$as_me:19475: checking for $cf_ncuhdr_root include-path" >&5
+echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6
+if test "${cf_cv_ncurses_h2+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	test -n "$verbose" && echo
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/$cf_ncuhdr_root &&       cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
+	test -d $cf_header_path/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
+	test -d $cf_header_path/$cf_ncuhdr_root/include &&       cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
+	test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/$cf_ncuhdr_root &&       cf_search="$cf_search /usr/include/$cf_ncuhdr_root"
+	test -d /usr/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include"
+	test -d /usr/$cf_ncuhdr_root/include &&       cf_search="$cf_search /usr/$cf_ncuhdr_root/include"
+	test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/$cf_ncuhdr_root &&       cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
+	test -d $prefix/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
+	test -d $prefix/$cf_ncuhdr_root/include &&       cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
+	test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/$cf_ncuhdr_root &&       cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root"
+	test -d /usr/local/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include"
+	test -d /usr/local/$cf_ncuhdr_root/include &&       cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include"
+	test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/$cf_ncuhdr_root &&       cf_search="$cf_search /opt/include/$cf_ncuhdr_root"
+	test -d /opt/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include"
+	test -d /opt/$cf_ncuhdr_root/include &&       cf_search="$cf_search /opt/$cf_ncuhdr_root/include"
+	test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/$cf_ncuhdr_root &&       cf_search="$cf_search $HOME/include/$cf_ncuhdr_root"
+	test -d $HOME/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include"
+	test -d $HOME/$cf_ncuhdr_root/include &&       cf_search="$cf_search $HOME/$cf_ncuhdr_root/include"
+	test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+	test -n "$verbose" && echo search path $cf_search
+	cf_save2_CPPFLAGS="$CPPFLAGS"
+	for cf_incdir in $cf_search
+	do
+
+if test -n "$cf_incdir" ; then
+  for cf_add_incdir in $cf_incdir
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 19615 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:19627: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:19630: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:19633: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19636: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:19653: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+		for cf_header in \
+			ncurses.h \
+			curses.h
+		do
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 19674 "configure"
+#include "confdefs.h"
+
+#include <$cf_header>
+int
+main ()
+{
+
+#ifdef NCURSES_VERSION
+
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+	make an error
+#endif
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:19698: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:19701: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:19704: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19707: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ncurses_h2=$cf_header
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_ncurses_h2=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+			if test "$cf_cv_ncurses_h2" != no ; then
+				cf_cv_ncurses_h2=$cf_incdir/$cf_header
+				test -n "$verbose" && echo $ac_n "	... found $ac_c" 1>&6
+				break
+			fi
+			test -n "$verbose" && echo "	... tested $cf_incdir/$cf_header" 1>&6
+		done
+		CPPFLAGS="$cf_save2_CPPFLAGS"
+		test "$cf_cv_ncurses_h2" != no && break
+	done
+	test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:19728: error: not found" >&5
+echo "$as_me: error: not found" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:19733: result: $cf_cv_ncurses_h2" >&5
+echo "${ECHO_T}$cf_cv_ncurses_h2" >&6
+
+	cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'`
+	cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
+	if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
+		cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+	fi
+
+if test -n "$cf_1st_incdir" ; then
+  for cf_add_incdir in $cf_1st_incdir
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 19766 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:19778: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:19781: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:19784: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19787: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:19804: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+fi
+
+# Set definitions to allow ifdef'ing for ncurses.h
+
+case $cf_cv_ncurses_header in # (vi
+*ncurses.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSES_H 1
+EOF
+
+	;;
+esac
+
+case $cf_cv_ncurses_header in # (vi
+ncurses/curses.h|ncurses/ncurses.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSES_NCURSES_H 1
+EOF
+
+	;;
+ncursesw/curses.h|ncursesw/ncurses.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSESW_NCURSES_H 1
+EOF
+
+	;;
+esac
+
+echo "$as_me:19847: checking for terminfo header" >&5
+echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
+if test "${cf_cv_term_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+case ${cf_cv_ncurses_header} in #(vi
+*/ncurses.h|*/ncursesw.h) #(vi
+	cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
+	;;
+*)
+	cf_term_header=term.h
+	;;
+esac
+
+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
+do
+cat >conftest.$ac_ext <<_ACEOF
+#line 19865 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <$cf_test>
+
+int
+main ()
+{
+int x = auto_left_margin
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:19880: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:19883: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:19886: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19889: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_term_header="$cf_test"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_term_header=unknown
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	test "$cf_cv_term_header" != unknown && break
+done
+
+fi
+echo "$as_me:19905: result: $cf_cv_term_header" >&5
+echo "${ECHO_T}$cf_cv_term_header" >&6
+
+# Set definitions to allow ifdef'ing to accommodate subdirectories
+
+case $cf_cv_term_header in # (vi
+*term.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_TERM_H 1
+EOF
+
+	;;
+esac
+
+case $cf_cv_term_header in # (vi
+ncurses/term.h) #(vi
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSES_TERM_H 1
+EOF
+
+	;;
+ncursesw/term.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSESW_TERM_H 1
+EOF
+
+	;;
+esac
+
+# some applications need this, but should check for NCURSES_VERSION
+cat >>confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+echo "$as_me:19939: checking for ncurses version" >&5
+echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6
+if test "${cf_cv_ncurses_version+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_cv_ncurses_version=no
+	cf_tempfile=out$$
+	rm -f $cf_tempfile
+	if test "$cross_compiling" = yes; then
+
+	# This will not work if the preprocessor splits the line after the
+	# Autoconf token.  The 'unproto' program does that.
+	cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header:-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
+	{ (eval echo "$as_me:19965: \"$cf_try\"") >&5
+  (eval $cf_try) 2>&5
+  ac_status=$?
+  echo "$as_me:19968: \$? = $ac_status" >&5
+  (exit $ac_status); }
+	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"
+		rm -f conftest.out
+	fi
+
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 19978 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <stdio.h>
+int main()
+{
+	FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+	fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+	fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+	fprintf(fp, "old\n");
+# else
+	make an error
+# endif
+#endif
+	${cf_cv_main_return:-return}(0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:20003: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20006: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:20008: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20011: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_ncurses_version=`cat $cf_tempfile`
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+	rm -f $cf_tempfile
+
+fi
+echo "$as_me:20025: result: $cf_cv_ncurses_version" >&5
+echo "${ECHO_T}$cf_cv_ncurses_version" >&6
+test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+cf_nculib_root=ncurses
+	# This works, except for the special case where we find gpm, but
+	# ncurses is in a nonstandard location via $LIBS, and we really want
+	# to link gpm.
+cf_ncurses_LIBS=""
+cf_ncurses_SAVE="$LIBS"
+echo "$as_me:20037: checking for Gpm_Open in -lgpm" >&5
+echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6
+if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lgpm  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 20045 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char Gpm_Open ();
+int
+main ()
+{
+Gpm_Open ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20064: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20067: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20070: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20073: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_gpm_Gpm_Open=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_gpm_Gpm_Open=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:20084: result: $ac_cv_lib_gpm_Gpm_Open" >&5
+echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6
+if test $ac_cv_lib_gpm_Gpm_Open = yes; then
+  echo "$as_me:20087: checking for initscr in -lgpm" >&5
+echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6
+if test "${ac_cv_lib_gpm_initscr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lgpm  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 20095 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char initscr ();
+int
+main ()
+{
+initscr ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20114: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20117: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20120: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20123: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_gpm_initscr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_gpm_initscr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:20134: result: $ac_cv_lib_gpm_initscr" >&5
+echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6
+if test $ac_cv_lib_gpm_initscr = yes; then
+  LIBS="$cf_ncurses_SAVE"
+else
+  cf_ncurses_LIBS="-lgpm"
+fi
+
+fi
+
+case $host_os in #(vi
+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).
+	if test "$cf_nculib_root" = ncurses ; then
+		echo "$as_me:20149: checking for tgoto in -lmytinfo" >&5
+echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6
+if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lmytinfo  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 20157 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char tgoto ();
+int
+main ()
+{
+tgoto ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20176: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20179: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20182: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20185: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_mytinfo_tgoto=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_mytinfo_tgoto=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:20196: result: $ac_cv_lib_mytinfo_tgoto" >&5
+echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6
+if test $ac_cv_lib_mytinfo_tgoto = yes; then
+  cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
+fi
+
+	fi
+	;;
+esac
+
+LIBS="$cf_ncurses_LIBS $LIBS"
+
+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+then
+	LIBS="-l$cf_nculib_root $LIBS"
+else
+
+	eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
+	cf_libdir=""
+	echo "$as_me:20215: checking for initscr" >&5
+echo $ECHO_N "checking for initscr... $ECHO_C" >&6
+if test "${ac_cv_func_initscr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 20221 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char initscr (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char initscr ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_initscr) || defined (__stub___initscr)
+choke me
+#else
+f = initscr;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20252: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20255: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20258: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20261: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_initscr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_initscr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:20271: result: $ac_cv_func_initscr" >&5
+echo "${ECHO_T}$ac_cv_func_initscr" >&6
+if test $ac_cv_func_initscr = yes; then
+  eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+else
+
+		cf_save_LIBS="$LIBS"
+		echo "$as_me:20278: checking for initscr in -l$cf_nculib_root" >&5
+echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6
+		LIBS="-l$cf_nculib_root $LIBS"
+		cat >conftest.$ac_ext <<_ACEOF
+#line 20282 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20294: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20297: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20300: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20303: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:20305: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:20312: result: no" >&5
+echo "${ECHO_T}no" >&6
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/$cf_nculib_root &&       cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
+	test -d $cf_library_path/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
+	test -d $cf_library_path/$cf_nculib_root/lib &&       cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
+	test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/$cf_nculib_root &&       cf_search="$cf_search /usr/lib/$cf_nculib_root"
+	test -d /usr/lib/$cf_nculib_root/lib &&    cf_search="$cf_search /usr/lib/$cf_nculib_root/lib"
+	test -d /usr/$cf_nculib_root/lib &&       cf_search="$cf_search /usr/$cf_nculib_root/lib"
+	test -d /usr/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/$cf_nculib_root &&       cf_search="$cf_search $prefix/lib/$cf_nculib_root"
+	test -d $prefix/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
+	test -d $prefix/$cf_nculib_root/lib &&       cf_search="$cf_search $prefix/$cf_nculib_root/lib"
+	test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/$cf_nculib_root &&       cf_search="$cf_search /usr/local/lib/$cf_nculib_root"
+	test -d /usr/local/lib/$cf_nculib_root/lib &&    cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib"
+	test -d /usr/local/$cf_nculib_root/lib &&       cf_search="$cf_search /usr/local/$cf_nculib_root/lib"
+	test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/$cf_nculib_root &&       cf_search="$cf_search /opt/lib/$cf_nculib_root"
+	test -d /opt/lib/$cf_nculib_root/lib &&    cf_search="$cf_search /opt/lib/$cf_nculib_root/lib"
+	test -d /opt/$cf_nculib_root/lib &&       cf_search="$cf_search /opt/$cf_nculib_root/lib"
+	test -d /opt/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/$cf_nculib_root &&       cf_search="$cf_search $HOME/lib/$cf_nculib_root"
+	test -d $HOME/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib"
+	test -d $HOME/$cf_nculib_root/lib &&       cf_search="$cf_search $HOME/$cf_nculib_root/lib"
+	test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+			for cf_libdir in $cf_search
+			do
+				echo "$as_me:20402: checking for -l$cf_nculib_root in $cf_libdir" >&5
+echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6
+				LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS"
+				cat >conftest.$ac_ext <<_ACEOF
+#line 20406 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20418: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20421: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20424: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20427: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:20429: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 		 eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+					 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:20436: result: no" >&5
+echo "${ECHO_T}no" >&6
+					 LIBS="$cf_save_LIBS"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+			done
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
+
+if test $cf_found_library = no ; then
+	{ { echo "$as_me:20451: error: Cannot link $cf_nculib_root library" >&5
+echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+fi
+
+if test -n "$cf_ncurses_LIBS" ; then
+	echo "$as_me:20459: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
+echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6
+	cf_ncurses_SAVE="$LIBS"
+	for p in $cf_ncurses_LIBS ; do
+		q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+		if test "$q" != "$LIBS" ; then
+			LIBS="$q"
+		fi
+	done
+	cat >conftest.$ac_ext <<_ACEOF
+#line 20469 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20481: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20484: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20487: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20490: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:20492: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:20497: result: no" >&5
+echo "${ECHO_T}no" >&6
+		 LIBS="$cf_ncurses_SAVE"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+
+cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+cat >>confdefs.h <<EOF
+#define $cf_nculib_ROOT 1
+EOF
+
+fi
+
+	;;
+ncursesw)
+
+echo "$as_me:20515: checking for multibyte character support" >&5
+echo $ECHO_N "checking for multibyte character support... $ECHO_C" >&6
+if test "${cf_cv_utf8_lib+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_save_LIBS="$LIBS"
+	cat >conftest.$ac_ext <<_ACEOF
+#line 20523 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+int
+main ()
+{
+putwc(0,0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20536: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20539: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20542: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20545: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_utf8_lib=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_utf8=
+cf_cv_library_path_utf8=
+
+echo "${as_me:-configure}:20557: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 20562 "configure"
+#include "confdefs.h"
+
+#include <libutf8.h>
+int
+main ()
+{
+putwc(0,0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20575: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20578: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20581: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20584: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_utf8=yes
+	cf_cv_header_path_utf8=/usr/include
+	cf_cv_library_path_utf8=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-lutf8  $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 20598 "configure"
+#include "confdefs.h"
+
+#include <libutf8.h>
+int
+main ()
+{
+putwc(0,0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20611: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20614: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20617: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20620: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_utf8=yes
+	cf_cv_header_path_utf8=/usr/include
+	cf_cv_library_path_utf8=/usr/lib
+	cf_cv_library_file_utf8="-lutf8"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_utf8=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for utf8 library" 1>&6
+
+echo "${as_me:-configure}:20637: testing find linkage for utf8 library ..." 1>&5
+
+echo "${as_me:-configure}:20639: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/utf8 &&       cf_search="$cf_search $cf_header_path/include/utf8"
+	test -d $cf_header_path/include/utf8/include &&    cf_search="$cf_search $cf_header_path/include/utf8/include"
+	test -d $cf_header_path/utf8/include &&       cf_search="$cf_search $cf_header_path/utf8/include"
+	test -d $cf_header_path/utf8/include/utf8 &&    cf_search="$cf_search $cf_header_path/utf8/include/utf8"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/utf8 &&       cf_search="$cf_search /usr/include/utf8"
+	test -d /usr/include/utf8/include &&    cf_search="$cf_search /usr/include/utf8/include"
+	test -d /usr/utf8/include &&       cf_search="$cf_search /usr/utf8/include"
+	test -d /usr/utf8/include/utf8 &&    cf_search="$cf_search /usr/utf8/include/utf8"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/utf8 &&       cf_search="$cf_search $prefix/include/utf8"
+	test -d $prefix/include/utf8/include &&    cf_search="$cf_search $prefix/include/utf8/include"
+	test -d $prefix/utf8/include &&       cf_search="$cf_search $prefix/utf8/include"
+	test -d $prefix/utf8/include/utf8 &&    cf_search="$cf_search $prefix/utf8/include/utf8"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/utf8 &&       cf_search="$cf_search /usr/local/include/utf8"
+	test -d /usr/local/include/utf8/include &&    cf_search="$cf_search /usr/local/include/utf8/include"
+	test -d /usr/local/utf8/include &&       cf_search="$cf_search /usr/local/utf8/include"
+	test -d /usr/local/utf8/include/utf8 &&    cf_search="$cf_search /usr/local/utf8/include/utf8"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/utf8 &&       cf_search="$cf_search /opt/include/utf8"
+	test -d /opt/include/utf8/include &&    cf_search="$cf_search /opt/include/utf8/include"
+	test -d /opt/utf8/include &&       cf_search="$cf_search /opt/utf8/include"
+	test -d /opt/utf8/include/utf8 &&    cf_search="$cf_search /opt/utf8/include/utf8"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/utf8 &&       cf_search="$cf_search $HOME/include/utf8"
+	test -d $HOME/include/utf8/include &&    cf_search="$cf_search $HOME/include/utf8/include"
+	test -d $HOME/utf8/include &&       cf_search="$cf_search $HOME/utf8/include"
+	test -d $HOME/utf8/include/utf8 &&    cf_search="$cf_search $HOME/utf8/include/utf8"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/utf8 && cf_search="$cf_search $includedir/utf8"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/utf8 && cf_search="$cf_search $oldincludedir/utf8"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_utf8 in $cf_search
+    do
+      if test -d $cf_cv_header_path_utf8 ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_utf8" 1>&6
+
+echo "${as_me:-configure}:20752: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_utf8"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 20756 "configure"
+#include "confdefs.h"
+
+#include <libutf8.h>
+int
+main ()
+{
+putwc(0,0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:20769: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:20772: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:20775: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20778: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found utf8 headers in $cf_cv_header_path_utf8" 1>&6
+
+echo "${as_me:-configure}:20783: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
+
+            cf_cv_find_linkage_utf8=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_utf8" = maybe ; then
+
+echo "${as_me:-configure}:20801: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+      if test "$cf_cv_find_linkage_utf8" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/utf8 &&       cf_search="$cf_search $cf_library_path/lib/utf8"
+	test -d $cf_library_path/lib/utf8/lib &&    cf_search="$cf_search $cf_library_path/lib/utf8/lib"
+	test -d $cf_library_path/utf8/lib &&       cf_search="$cf_search $cf_library_path/utf8/lib"
+	test -d $cf_library_path/utf8/lib/utf8 &&    cf_search="$cf_search $cf_library_path/utf8/lib/utf8"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/utf8 &&       cf_search="$cf_search /usr/lib/utf8"
+	test -d /usr/lib/utf8/lib &&    cf_search="$cf_search /usr/lib/utf8/lib"
+	test -d /usr/utf8/lib &&       cf_search="$cf_search /usr/utf8/lib"
+	test -d /usr/utf8/lib/utf8 &&    cf_search="$cf_search /usr/utf8/lib/utf8"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/utf8 &&       cf_search="$cf_search $prefix/lib/utf8"
+	test -d $prefix/lib/utf8/lib &&    cf_search="$cf_search $prefix/lib/utf8/lib"
+	test -d $prefix/utf8/lib &&       cf_search="$cf_search $prefix/utf8/lib"
+	test -d $prefix/utf8/lib/utf8 &&    cf_search="$cf_search $prefix/utf8/lib/utf8"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/utf8 &&       cf_search="$cf_search /usr/local/lib/utf8"
+	test -d /usr/local/lib/utf8/lib &&    cf_search="$cf_search /usr/local/lib/utf8/lib"
+	test -d /usr/local/utf8/lib &&       cf_search="$cf_search /usr/local/utf8/lib"
+	test -d /usr/local/utf8/lib/utf8 &&    cf_search="$cf_search /usr/local/utf8/lib/utf8"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/utf8 &&       cf_search="$cf_search /opt/lib/utf8"
+	test -d /opt/lib/utf8/lib &&    cf_search="$cf_search /opt/lib/utf8/lib"
+	test -d /opt/utf8/lib &&       cf_search="$cf_search /opt/utf8/lib"
+	test -d /opt/utf8/lib/utf8 &&    cf_search="$cf_search /opt/utf8/lib/utf8"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/utf8 &&       cf_search="$cf_search $HOME/lib/utf8"
+	test -d $HOME/lib/utf8/lib &&    cf_search="$cf_search $HOME/lib/utf8/lib"
+	test -d $HOME/utf8/lib &&       cf_search="$cf_search $HOME/utf8/lib"
+	test -d $HOME/utf8/lib/utf8 &&    cf_search="$cf_search $HOME/utf8/lib/utf8"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_utf8 in $cf_search
+        do
+          if test -d $cf_cv_library_path_utf8 ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_utf8" 1>&6
+
+echo "${as_me:-configure}:20898: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-lutf8  $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_utf8"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 20904 "configure"
+#include "confdefs.h"
+
+#include <libutf8.h>
+int
+main ()
+{
+putwc(0,0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:20917: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:20920: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:20923: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:20926: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found utf8 library in $cf_cv_library_path_utf8" 1>&6
+
+echo "${as_me:-configure}:20931: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
+
+                cf_cv_find_linkage_utf8=yes
+                cf_cv_library_file_utf8="-lutf8"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_utf8=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_utf8" = yes ; then
+cf_cv_utf8_lib=add-on
+else
+cf_cv_utf8_lib=no
+fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:20973: result: $cf_cv_utf8_lib" >&5
+echo "${ECHO_T}$cf_cv_utf8_lib" >&6
+
+# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
+# ncurses/ncursesw:
+if test "$cf_cv_utf8_lib" = "add-on" ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_LIBUTF8_H 1
+EOF
+
+if test -n "$cf_cv_header_path_utf8" ; then
+  for cf_add_incdir in $cf_cv_header_path_utf8
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 21007 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:21019: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:21022: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:21025: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21028: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:21045: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+if test -n "$cf_cv_library_path_utf8" ; then
+  for cf_add_libdir in $cf_cv_library_path_utf8
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:21079: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	LIBS="$cf_cv_library_file_utf8 $LIBS"
+fi
+
+cf_ncuconfig_root=ncursesw
+
+echo "Looking for ${cf_ncuconfig_root}-config"
+
+if test -n "$ac_tool_prefix"; then
+  for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
+  do
+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:21099: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_NCURSES_CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$NCURSES_CONFIG"; then
+  ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
+echo "$as_me:21114: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
+if test -n "$NCURSES_CONFIG"; then
+  echo "$as_me:21122: result: $NCURSES_CONFIG" >&5
+echo "${ECHO_T}$NCURSES_CONFIG" >&6
+else
+  echo "$as_me:21125: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+    test -n "$NCURSES_CONFIG" && break
+  done
+fi
+if test -z "$NCURSES_CONFIG"; then
+  ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG
+  for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
+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 "$as_me:21138: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_NCURSES_CONFIG"; then
+  ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog"
+echo "$as_me:21153: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
+if test -n "$ac_ct_NCURSES_CONFIG"; then
+  echo "$as_me:21161: result: $ac_ct_NCURSES_CONFIG" >&5
+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
+else
+  echo "$as_me:21164: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ac_ct_NCURSES_CONFIG" && break
+done
+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none"
+
+  NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG
+fi
+
+if test "$NCURSES_CONFIG" != none ; then
+
+CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`"
+LIBS="`$NCURSES_CONFIG --libs` $LIBS"
+
+# even with config script, some packages use no-override for curses.h
+
+echo "$as_me:21182: checking if we have identified curses headers" >&5
+echo $ECHO_N "checking if we have identified curses headers... $ECHO_C" >&6
+if test "${cf_cv_ncurses_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_ncurses_header=none
+for cf_header in  \
+    ncursesw/ncurses.h \
+	ncursesw/curses.h \
+	ncurses.h \
+	curses.h
+do
+cat >conftest.$ac_ext <<_ACEOF
+#line 21196 "configure"
+#include "confdefs.h"
+#include <${cf_header}>
+int
+main ()
+{
+initscr(); tgoto("?", 0,0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:21208: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:21211: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:21214: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21217: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ncurses_header=$cf_header; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+
+fi
+echo "$as_me:21228: result: $cf_cv_ncurses_header" >&5
+echo "${ECHO_T}$cf_cv_ncurses_header" >&6
+
+if test "$cf_cv_ncurses_header" = none ; then
+	{ { echo "$as_me:21232: error: No curses header-files found" >&5
+echo "$as_me: error: No curses header-files found" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
+
+for ac_header in $cf_cv_ncurses_header
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:21242: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 21248 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:21252: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:21258: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:21277: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+cat >>confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+cat >>confdefs.h <<EOF
+#define $cf_nculib_ROOT 1
+EOF
+
+cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
+
+else
+
+cf_ncuhdr_root=ncursesw
+
+test -n "$cf_cv_curses_dir" && \
+test "$cf_cv_curses_dir" != "no" && { \
+
+if test -n "$cf_cv_curses_dir/include/$cf_ncuhdr_root" ; then
+  for cf_add_incdir in $cf_cv_curses_dir/include/$cf_ncuhdr_root
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 21330 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:21342: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:21345: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:21348: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21351: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:21368: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+}
+
+echo "$as_me:21385: checking for $cf_ncuhdr_root header in include-path" >&5
+echo $ECHO_N "checking for $cf_ncuhdr_root header in include-path... $ECHO_C" >&6
+if test "${cf_cv_ncurses_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h"
+	( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h"
+	for cf_header in $cf_header_list
+	do
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 21397 "configure"
+#include "confdefs.h"
+
+#define _XOPEN_SOURCE_EXTENDED
+#undef  HAVE_LIBUTF8_H	/* in case we used CF_UTF8_LIB */
+#define HAVE_LIBUTF8_H	/* to force ncurses' header file to use cchar_t */
+
+#include <$cf_header>
+int
+main ()
+{
+
+#ifdef NCURSES_VERSION
+
+#ifndef WACS_BSSB
+	make an error
+#endif
+
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+	make an error
+#endif
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:21429: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:21432: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:21435: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21438: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ncurses_h=$cf_header
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_ncurses_h=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+		test "$cf_cv_ncurses_h" != no && break
+	done
+
+fi
+echo "$as_me:21453: result: $cf_cv_ncurses_h" >&5
+echo "${ECHO_T}$cf_cv_ncurses_h" >&6
+
+if test "$cf_cv_ncurses_h" != no ; then
+	cf_cv_ncurses_header=$cf_cv_ncurses_h
+else
+
+echo "$as_me:21460: checking for $cf_ncuhdr_root include-path" >&5
+echo $ECHO_N "checking for $cf_ncuhdr_root include-path... $ECHO_C" >&6
+if test "${cf_cv_ncurses_h2+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	test -n "$verbose" && echo
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/$cf_ncuhdr_root &&       cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root"
+	test -d $cf_header_path/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $cf_header_path/include/$cf_ncuhdr_root/include"
+	test -d $cf_header_path/$cf_ncuhdr_root/include &&       cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include"
+	test -d $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $cf_header_path/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/$cf_ncuhdr_root &&       cf_search="$cf_search /usr/include/$cf_ncuhdr_root"
+	test -d /usr/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include"
+	test -d /usr/$cf_ncuhdr_root/include &&       cf_search="$cf_search /usr/$cf_ncuhdr_root/include"
+	test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/$cf_ncuhdr_root &&       cf_search="$cf_search $prefix/include/$cf_ncuhdr_root"
+	test -d $prefix/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $prefix/include/$cf_ncuhdr_root/include"
+	test -d $prefix/$cf_ncuhdr_root/include &&       cf_search="$cf_search $prefix/$cf_ncuhdr_root/include"
+	test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/$cf_ncuhdr_root &&       cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root"
+	test -d /usr/local/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include"
+	test -d /usr/local/$cf_ncuhdr_root/include &&       cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include"
+	test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/$cf_ncuhdr_root &&       cf_search="$cf_search /opt/include/$cf_ncuhdr_root"
+	test -d /opt/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include"
+	test -d /opt/$cf_ncuhdr_root/include &&       cf_search="$cf_search /opt/$cf_ncuhdr_root/include"
+	test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/$cf_ncuhdr_root &&       cf_search="$cf_search $HOME/include/$cf_ncuhdr_root"
+	test -d $HOME/include/$cf_ncuhdr_root/include &&    cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include"
+	test -d $HOME/$cf_ncuhdr_root/include &&       cf_search="$cf_search $HOME/$cf_ncuhdr_root/include"
+	test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root &&    cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/$cf_ncuhdr_root && cf_search="$cf_search $includedir/$cf_ncuhdr_root"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+	test -n "$verbose" && echo search path $cf_search
+	cf_save2_CPPFLAGS="$CPPFLAGS"
+	for cf_incdir in $cf_search
+	do
+
+if test -n "$cf_incdir" ; then
+  for cf_add_incdir in $cf_incdir
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 21600 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:21612: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:21615: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:21618: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21621: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:21638: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+		for cf_header in \
+			ncurses.h \
+			curses.h
+		do
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 21659 "configure"
+#include "confdefs.h"
+
+#include <$cf_header>
+int
+main ()
+{
+
+#ifdef NCURSES_VERSION
+
+printf("%s\n", NCURSES_VERSION);
+#else
+#ifdef __NCURSES_H
+printf("old\n");
+#else
+	make an error
+#endif
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:21683: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:21686: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:21689: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21692: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ncurses_h2=$cf_header
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_ncurses_h2=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+			if test "$cf_cv_ncurses_h2" != no ; then
+				cf_cv_ncurses_h2=$cf_incdir/$cf_header
+				test -n "$verbose" && echo $ac_n "	... found $ac_c" 1>&6
+				break
+			fi
+			test -n "$verbose" && echo "	... tested $cf_incdir/$cf_header" 1>&6
+		done
+		CPPFLAGS="$cf_save2_CPPFLAGS"
+		test "$cf_cv_ncurses_h2" != no && break
+	done
+	test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:21713: error: not found" >&5
+echo "$as_me: error: not found" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:21718: result: $cf_cv_ncurses_h2" >&5
+echo "${ECHO_T}$cf_cv_ncurses_h2" >&6
+
+	cf_1st_incdir=`echo $cf_cv_ncurses_h2 | sed -e 's%/[^/]*$%%'`
+	cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2`
+	if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then
+		cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header
+	fi
+
+if test -n "$cf_1st_incdir" ; then
+  for cf_add_incdir in $cf_1st_incdir
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 21751 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:21763: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:21766: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:21769: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21772: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:21789: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+fi
+
+# Set definitions to allow ifdef'ing for ncurses.h
+
+case $cf_cv_ncurses_header in # (vi
+*ncurses.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSES_H 1
+EOF
+
+	;;
+esac
+
+case $cf_cv_ncurses_header in # (vi
+ncurses/curses.h|ncurses/ncurses.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSES_NCURSES_H 1
+EOF
+
+	;;
+ncursesw/curses.h|ncursesw/ncurses.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSESW_NCURSES_H 1
+EOF
+
+	;;
+esac
+
+echo "$as_me:21832: checking for terminfo header" >&5
+echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
+if test "${cf_cv_term_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+case ${cf_cv_ncurses_header} in #(vi
+*/ncurses.h|*/ncursesw.h) #(vi
+	cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
+	;;
+*)
+	cf_term_header=term.h
+	;;
+esac
+
+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
+do
+cat >conftest.$ac_ext <<_ACEOF
+#line 21850 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <$cf_test>
+
+int
+main ()
+{
+int x = auto_left_margin
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:21865: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:21868: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:21871: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21874: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_term_header="$cf_test"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_term_header=unknown
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	test "$cf_cv_term_header" != unknown && break
+done
+
+fi
+echo "$as_me:21890: result: $cf_cv_term_header" >&5
+echo "${ECHO_T}$cf_cv_term_header" >&6
+
+# Set definitions to allow ifdef'ing to accommodate subdirectories
+
+case $cf_cv_term_header in # (vi
+*term.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_TERM_H 1
+EOF
+
+	;;
+esac
+
+case $cf_cv_term_header in # (vi
+ncurses/term.h) #(vi
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSES_TERM_H 1
+EOF
+
+	;;
+ncursesw/term.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSESW_TERM_H 1
+EOF
+
+	;;
+esac
+
+# some applications need this, but should check for NCURSES_VERSION
+cat >>confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+echo "$as_me:21924: checking for ncurses version" >&5
+echo $ECHO_N "checking for ncurses version... $ECHO_C" >&6
+if test "${cf_cv_ncurses_version+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_cv_ncurses_version=no
+	cf_tempfile=out$$
+	rm -f $cf_tempfile
+	if test "$cross_compiling" = yes; then
+
+	# This will not work if the preprocessor splits the line after the
+	# Autoconf token.  The 'unproto' program does that.
+	cat > conftest.$ac_ext <<EOF
+#include <${cf_cv_ncurses_header:-curses.h}>
+#undef Autoconf
+#ifdef NCURSES_VERSION
+Autoconf NCURSES_VERSION
+#else
+#ifdef __NCURSES_H
+Autoconf "old"
+#endif
+;
+#endif
+EOF
+	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
+	{ (eval echo "$as_me:21950: \"$cf_try\"") >&5
+  (eval $cf_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21953: \$? = $ac_status" >&5
+  (exit $ac_status); }
+	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"
+		rm -f conftest.out
+	fi
+
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 21963 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <stdio.h>
+int main()
+{
+	FILE *fp = fopen("$cf_tempfile", "w");
+#ifdef NCURSES_VERSION
+# ifdef NCURSES_VERSION_PATCH
+	fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
+# else
+	fprintf(fp, "%s\n", NCURSES_VERSION);
+# endif
+#else
+# ifdef __NCURSES_H
+	fprintf(fp, "old\n");
+# else
+	make an error
+# endif
+#endif
+	${cf_cv_main_return:-return}(0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:21988: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:21991: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:21993: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:21996: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_ncurses_version=`cat $cf_tempfile`
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+	rm -f $cf_tempfile
+
+fi
+echo "$as_me:22010: result: $cf_cv_ncurses_version" >&5
+echo "${ECHO_T}$cf_cv_ncurses_version" >&6
+test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF
+#define NCURSES 1
+EOF
+
+cf_nculib_root=ncursesw
+	# This works, except for the special case where we find gpm, but
+	# ncurses is in a nonstandard location via $LIBS, and we really want
+	# to link gpm.
+cf_ncurses_LIBS=""
+cf_ncurses_SAVE="$LIBS"
+echo "$as_me:22022: checking for Gpm_Open in -lgpm" >&5
+echo $ECHO_N "checking for Gpm_Open in -lgpm... $ECHO_C" >&6
+if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lgpm  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 22030 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char Gpm_Open ();
+int
+main ()
+{
+Gpm_Open ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22049: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22052: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22055: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22058: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_gpm_Gpm_Open=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_gpm_Gpm_Open=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:22069: result: $ac_cv_lib_gpm_Gpm_Open" >&5
+echo "${ECHO_T}$ac_cv_lib_gpm_Gpm_Open" >&6
+if test $ac_cv_lib_gpm_Gpm_Open = yes; then
+  echo "$as_me:22072: checking for initscr in -lgpm" >&5
+echo $ECHO_N "checking for initscr in -lgpm... $ECHO_C" >&6
+if test "${ac_cv_lib_gpm_initscr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lgpm  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 22080 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char initscr ();
+int
+main ()
+{
+initscr ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22099: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22102: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22105: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22108: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_gpm_initscr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_gpm_initscr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:22119: result: $ac_cv_lib_gpm_initscr" >&5
+echo "${ECHO_T}$ac_cv_lib_gpm_initscr" >&6
+if test $ac_cv_lib_gpm_initscr = yes; then
+  LIBS="$cf_ncurses_SAVE"
+else
+  cf_ncurses_LIBS="-lgpm"
+fi
+
+fi
+
+case $host_os in #(vi
+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).
+	if test "$cf_nculib_root" = ncurses ; then
+		echo "$as_me:22134: checking for tgoto in -lmytinfo" >&5
+echo $ECHO_N "checking for tgoto in -lmytinfo... $ECHO_C" >&6
+if test "${ac_cv_lib_mytinfo_tgoto+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lmytinfo  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 22142 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char tgoto ();
+int
+main ()
+{
+tgoto ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22161: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22164: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22167: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22170: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_mytinfo_tgoto=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_mytinfo_tgoto=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:22181: result: $ac_cv_lib_mytinfo_tgoto" >&5
+echo "${ECHO_T}$ac_cv_lib_mytinfo_tgoto" >&6
+if test $ac_cv_lib_mytinfo_tgoto = yes; then
+  cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
+fi
+
+	fi
+	;;
+esac
+
+LIBS="$cf_ncurses_LIBS $LIBS"
+
+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
+then
+	LIBS="-l$cf_nculib_root $LIBS"
+else
+
+	eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
+	cf_libdir=""
+	echo "$as_me:22200: checking for initscr" >&5
+echo $ECHO_N "checking for initscr... $ECHO_C" >&6
+if test "${ac_cv_func_initscr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 22206 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char initscr (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char initscr ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_initscr) || defined (__stub___initscr)
+choke me
+#else
+f = initscr;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22237: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22240: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22243: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22246: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_initscr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_initscr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:22256: result: $ac_cv_func_initscr" >&5
+echo "${ECHO_T}$ac_cv_func_initscr" >&6
+if test $ac_cv_func_initscr = yes; then
+  eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+else
+
+		cf_save_LIBS="$LIBS"
+		echo "$as_me:22263: checking for initscr in -l$cf_nculib_root" >&5
+echo $ECHO_N "checking for initscr in -l$cf_nculib_root... $ECHO_C" >&6
+		LIBS="-l$cf_nculib_root $LIBS"
+		cat >conftest.$ac_ext <<_ACEOF
+#line 22267 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22279: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22282: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22285: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22288: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:22290: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:22297: result: no" >&5
+echo "${ECHO_T}no" >&6
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/$cf_nculib_root &&       cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root"
+	test -d $cf_library_path/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $cf_library_path/lib/$cf_nculib_root/lib"
+	test -d $cf_library_path/$cf_nculib_root/lib &&       cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib"
+	test -d $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $cf_library_path/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/$cf_nculib_root &&       cf_search="$cf_search /usr/lib/$cf_nculib_root"
+	test -d /usr/lib/$cf_nculib_root/lib &&    cf_search="$cf_search /usr/lib/$cf_nculib_root/lib"
+	test -d /usr/$cf_nculib_root/lib &&       cf_search="$cf_search /usr/$cf_nculib_root/lib"
+	test -d /usr/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/$cf_nculib_root &&       cf_search="$cf_search $prefix/lib/$cf_nculib_root"
+	test -d $prefix/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $prefix/lib/$cf_nculib_root/lib"
+	test -d $prefix/$cf_nculib_root/lib &&       cf_search="$cf_search $prefix/$cf_nculib_root/lib"
+	test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/$cf_nculib_root &&       cf_search="$cf_search /usr/local/lib/$cf_nculib_root"
+	test -d /usr/local/lib/$cf_nculib_root/lib &&    cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib"
+	test -d /usr/local/$cf_nculib_root/lib &&       cf_search="$cf_search /usr/local/$cf_nculib_root/lib"
+	test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/$cf_nculib_root &&       cf_search="$cf_search /opt/lib/$cf_nculib_root"
+	test -d /opt/lib/$cf_nculib_root/lib &&    cf_search="$cf_search /opt/lib/$cf_nculib_root/lib"
+	test -d /opt/$cf_nculib_root/lib &&       cf_search="$cf_search /opt/$cf_nculib_root/lib"
+	test -d /opt/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/$cf_nculib_root &&       cf_search="$cf_search $HOME/lib/$cf_nculib_root"
+	test -d $HOME/lib/$cf_nculib_root/lib &&    cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib"
+	test -d $HOME/$cf_nculib_root/lib &&       cf_search="$cf_search $HOME/$cf_nculib_root/lib"
+	test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root &&    cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+			for cf_libdir in $cf_search
+			do
+				echo "$as_me:22387: checking for -l$cf_nculib_root in $cf_libdir" >&5
+echo $ECHO_N "checking for -l$cf_nculib_root in $cf_libdir... $ECHO_C" >&6
+				LIBS="-L$cf_libdir -l$cf_nculib_root $cf_save_LIBS"
+				cat >conftest.$ac_ext <<_ACEOF
+#line 22391 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22403: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22406: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22409: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22412: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:22414: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 		 eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
+					 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:22421: result: no" >&5
+echo "${ECHO_T}no" >&6
+					 LIBS="$cf_save_LIBS"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+			done
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
+
+if test $cf_found_library = no ; then
+	{ { echo "$as_me:22436: error: Cannot link $cf_nculib_root library" >&5
+echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+fi
+
+if test -n "$cf_ncurses_LIBS" ; then
+	echo "$as_me:22444: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
+echo $ECHO_N "checking if we can link $cf_nculib_root without $cf_ncurses_LIBS... $ECHO_C" >&6
+	cf_ncurses_SAVE="$LIBS"
+	for p in $cf_ncurses_LIBS ; do
+		q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"`
+		if test "$q" != "$LIBS" ; then
+			LIBS="$q"
+		fi
+	done
+	cat >conftest.$ac_ext <<_ACEOF
+#line 22454 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22466: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22469: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22472: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22475: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:22477: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:22482: result: no" >&5
+echo "${ECHO_T}no" >&6
+		 LIBS="$cf_ncurses_SAVE"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+
+cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+cat >>confdefs.h <<EOF
+#define $cf_nculib_ROOT 1
+EOF
+
+fi
+
+	cf_wide_curses=yes
+	;;
+pdcurses)
+	cf_cv_ncurses_header=xcurses.h
+	# do this last, since it changes definition of main: CF_PDCURSES_X11
+	;;
+slang)
+
+echo "$as_me:22505: checking for slang header file" >&5
+echo $ECHO_N "checking for slang header file... $ECHO_C" >&6
+if test "${cf_cv_slang_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_cv_slang_header=no
+	cat >conftest.$ac_ext <<_ACEOF
+#line 22513 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+printf("%s\n", SLANG_VERSION)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:22525: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:22528: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:22531: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22534: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_slang_header=predefined
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/slang &&       cf_search="$cf_search $cf_header_path/include/slang"
+	test -d $cf_header_path/include/slang/include &&    cf_search="$cf_search $cf_header_path/include/slang/include"
+	test -d $cf_header_path/slang/include &&       cf_search="$cf_search $cf_header_path/slang/include"
+	test -d $cf_header_path/slang/include/slang &&    cf_search="$cf_search $cf_header_path/slang/include/slang"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/slang &&       cf_search="$cf_search /usr/include/slang"
+	test -d /usr/include/slang/include &&    cf_search="$cf_search /usr/include/slang/include"
+	test -d /usr/slang/include &&       cf_search="$cf_search /usr/slang/include"
+	test -d /usr/slang/include/slang &&    cf_search="$cf_search /usr/slang/include/slang"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/slang &&       cf_search="$cf_search $prefix/include/slang"
+	test -d $prefix/include/slang/include &&    cf_search="$cf_search $prefix/include/slang/include"
+	test -d $prefix/slang/include &&       cf_search="$cf_search $prefix/slang/include"
+	test -d $prefix/slang/include/slang &&    cf_search="$cf_search $prefix/slang/include/slang"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/slang &&       cf_search="$cf_search /usr/local/include/slang"
+	test -d /usr/local/include/slang/include &&    cf_search="$cf_search /usr/local/include/slang/include"
+	test -d /usr/local/slang/include &&       cf_search="$cf_search /usr/local/slang/include"
+	test -d /usr/local/slang/include/slang &&    cf_search="$cf_search /usr/local/slang/include/slang"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/slang &&       cf_search="$cf_search /opt/include/slang"
+	test -d /opt/include/slang/include &&    cf_search="$cf_search /opt/include/slang/include"
+	test -d /opt/slang/include &&       cf_search="$cf_search /opt/slang/include"
+	test -d /opt/slang/include/slang &&    cf_search="$cf_search /opt/slang/include/slang"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/slang &&       cf_search="$cf_search $HOME/include/slang"
+	test -d $HOME/include/slang/include &&    cf_search="$cf_search $HOME/include/slang/include"
+	test -d $HOME/slang/include &&       cf_search="$cf_search $HOME/slang/include"
+	test -d $HOME/slang/include/slang &&    cf_search="$cf_search $HOME/slang/include/slang"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/slang && cf_search="$cf_search $includedir/slang"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/slang && cf_search="$cf_search $oldincludedir/slang"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+	for cf_incdir in $cf_search
+	do
+		for cf_header in \
+			slang.h
+		do
+			echo trying $cf_incdir/$cf_header 1>&5
+			if egrep "SLANG_VERSION" $cf_incdir/$cf_header 1>&5 2>&1; then
+				cf_cv_slang_header=$cf_incdir/$cf_header
+				break
+			fi
+		done
+		test "$cf_cv_slang_header" != no && break
+	done
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:22661: result: $cf_cv_slang_header" >&5
+echo "${ECHO_T}$cf_cv_slang_header" >&6
+
+if test "x$cf_cv_slang_header" != xno
+then
+	cat >>confdefs.h <<\EOF
+#define USE_SLANG 1
+EOF
+
+	cf_incdir=`echo $cf_cv_slang_header | sed -e 's%/[^/]*$%%'`
+
+	case $cf_cv_slang_header in # (vi
+	predefined) # (vi
+		;;
+	*)
+
+if test -n "$cf_incdir" ; then
+  for cf_add_incdir in $cf_incdir
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 22701 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:22713: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:22716: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:22719: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22722: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:22739: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+		;;
+	esac
+fi
+
+if test "x$cf_cv_slang_header" != xno
+then
+
+cf_slang_LIBS1="$LIBS"
+
+if test "${cf_cv_termlib+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_termlib=none
+cat >conftest.$ac_ext <<_ACEOF
+#line 22769 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+char *x=(char*)tgoto("",0,0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22781: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22784: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22787: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22790: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cat >conftest.$ac_ext <<_ACEOF
+#line 22793 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+int x=tigetstr("")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22805: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22808: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22811: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22814: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_termlib=terminfo
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_termlib=termcap
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+	test -n "$verbose" && echo "	using functions in predefined $cf_cv_termlib LIBS" 1>&6
+
+echo "${as_me:-configure}:22825: testing using functions in predefined $cf_cv_termlib LIBS ..." 1>&5
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+if test "$cf_cv_termlib" = none; then
+	# FreeBSD's linker gives bogus results for AC_CHECK_LIB, saying that
+	# tgetstr lives in -lcurses when it is only an unsatisfied extern.
+	cf_save_LIBS="$LIBS"
+	for cf_lib in curses ncurses termlib termcap
+	do
+	LIBS="-l$cf_lib $cf_save_LIBS"
+	for cf_func in tigetstr tgetstr
+	do
+		echo "$as_me:22840: checking for $cf_func in -l$cf_lib" >&5
+echo $ECHO_N "checking for $cf_func in -l$cf_lib... $ECHO_C" >&6
+		cat >conftest.$ac_ext <<_ACEOF
+#line 22843 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+int x=$cf_func("")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22855: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22858: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22861: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22864: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+		echo "$as_me:22873: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+		if test "$cf_result" = yes ; then
+			if test "$cf_func" = tigetstr ; then
+				cf_cv_termlib=terminfo
+			else
+				cf_cv_termlib=termcap
+			fi
+			break
+		fi
+	done
+		test "$cf_result" = yes && break
+	done
+	test "$cf_result" = no && LIBS="$cf_save_LIBS"
+fi
+if test "$cf_cv_termlib" = none; then
+	# allow curses library for broken AIX system.
+	echo "$as_me:22890: checking for initscr in -lcurses" >&5
+echo $ECHO_N "checking for initscr in -lcurses... $ECHO_C" >&6
+if test "${ac_cv_lib_curses_initscr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lcurses  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 22898 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char initscr ();
+int
+main ()
+{
+initscr ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22917: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22920: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22923: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22926: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_curses_initscr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_curses_initscr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:22937: result: $ac_cv_lib_curses_initscr" >&5
+echo "${ECHO_T}$ac_cv_lib_curses_initscr" >&6
+if test $ac_cv_lib_curses_initscr = yes; then
+  LIBS="-lcurses $LIBS"
+fi
+
+	echo "$as_me:22943: checking for tgoto in -ltermcap" >&5
+echo $ECHO_N "checking for tgoto in -ltermcap... $ECHO_C" >&6
+if test "${ac_cv_lib_termcap_tgoto+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ltermcap  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 22951 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char tgoto ();
+int
+main ()
+{
+tgoto ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:22970: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:22973: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:22976: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:22979: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_termcap_tgoto=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_termcap_tgoto=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:22990: result: $ac_cv_lib_termcap_tgoto" >&5
+echo "${ECHO_T}$ac_cv_lib_termcap_tgoto" >&6
+if test $ac_cv_lib_termcap_tgoto = yes; then
+  LIBS="-ltermcap $LIBS" cf_cv_termlib=termcap
+fi
+
+fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+if test "$cf_cv_termlib" = none; then
+	{ echo "$as_me:23001: WARNING: Cannot find -ltermlib, -lcurses, or -ltermcap" >&5
+echo "$as_me: WARNING: Cannot find -ltermlib, -lcurses, or -ltermcap" >&2;}
+fi
+
+fi
+
+cf_slang_LIBS2="$LIBS"
+echo "$as_me:23008: checking for acos" >&5
+echo $ECHO_N "checking for acos... $ECHO_C" >&6
+if test "${ac_cv_func_acos+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 23014 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char acos (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char acos ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_acos) || defined (__stub___acos)
+choke me
+#else
+f = acos;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23045: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23048: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23051: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23054: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_acos=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_acos=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:23064: result: $ac_cv_func_acos" >&5
+echo "${ECHO_T}$ac_cv_func_acos" >&6
+if test $ac_cv_func_acos = yes; then
+  :
+else
+
+echo "$as_me:23070: checking for acos in -lm" >&5
+echo $ECHO_N "checking for acos in -lm... $ECHO_C" >&6
+if test "${ac_cv_lib_m_acos+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lm $LIBS $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 23078 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char acos ();
+int
+main ()
+{
+acos ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23097: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23100: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23103: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23106: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_m_acos=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_m_acos=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:23117: result: $ac_cv_lib_m_acos" >&5
+echo "${ECHO_T}$ac_cv_lib_m_acos" >&6
+if test $ac_cv_lib_m_acos = yes; then
+
+cf_tr_func=`echo "acos" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_acos=yes
+	if test "$cf_used_lib_m" != yes ; then cf_used_lib_m=yes; LIBS="-lm $LIBS"; fi
+else
+
+	ac_cv_func_acos=unknown
+	unset ac_cv_func_acos 2>/dev/null
+
+fi
+
+fi
+
+case $host_os in #(vi
+os2*)
+
+	eval 'cf_cv_have_lib_'video'=no'
+	cf_libdir=""
+	echo "$as_me:23143: checking for v_init" >&5
+echo $ECHO_N "checking for v_init... $ECHO_C" >&6
+if test "${ac_cv_func_v_init+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 23149 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char v_init (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char v_init ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_v_init) || defined (__stub___v_init)
+choke me
+#else
+f = v_init;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23180: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23183: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23186: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23189: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_v_init=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_v_init=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:23199: result: $ac_cv_func_v_init" >&5
+echo "${ECHO_T}$ac_cv_func_v_init" >&6
+if test $ac_cv_func_v_init = yes; then
+  eval 'cf_cv_have_lib_'video'=yes'
+else
+
+		cf_save_LIBS="$LIBS"
+		echo "$as_me:23206: checking for v_init in -lvideo" >&5
+echo $ECHO_N "checking for v_init in -lvideo... $ECHO_C" >&6
+		LIBS="-lvideo $LIBS"
+		cat >conftest.$ac_ext <<_ACEOF
+#line 23210 "configure"
+#include "confdefs.h"
+#include <sys/video.h>
+int
+main ()
+{
+v_init()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23222: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23225: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23228: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23231: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:23233: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 eval 'cf_cv_have_lib_'video'=yes'
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:23240: result: no" >&5
+echo "${ECHO_T}no" >&6
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/video &&       cf_search="$cf_search $cf_library_path/lib/video"
+	test -d $cf_library_path/lib/video/lib &&    cf_search="$cf_search $cf_library_path/lib/video/lib"
+	test -d $cf_library_path/video/lib &&       cf_search="$cf_search $cf_library_path/video/lib"
+	test -d $cf_library_path/video/lib/video &&    cf_search="$cf_search $cf_library_path/video/lib/video"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/video &&       cf_search="$cf_search /usr/lib/video"
+	test -d /usr/lib/video/lib &&    cf_search="$cf_search /usr/lib/video/lib"
+	test -d /usr/video/lib &&       cf_search="$cf_search /usr/video/lib"
+	test -d /usr/video/lib/video &&    cf_search="$cf_search /usr/video/lib/video"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/video &&       cf_search="$cf_search $prefix/lib/video"
+	test -d $prefix/lib/video/lib &&    cf_search="$cf_search $prefix/lib/video/lib"
+	test -d $prefix/video/lib &&       cf_search="$cf_search $prefix/video/lib"
+	test -d $prefix/video/lib/video &&    cf_search="$cf_search $prefix/video/lib/video"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/video &&       cf_search="$cf_search /usr/local/lib/video"
+	test -d /usr/local/lib/video/lib &&    cf_search="$cf_search /usr/local/lib/video/lib"
+	test -d /usr/local/video/lib &&       cf_search="$cf_search /usr/local/video/lib"
+	test -d /usr/local/video/lib/video &&    cf_search="$cf_search /usr/local/video/lib/video"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/video &&       cf_search="$cf_search /opt/lib/video"
+	test -d /opt/lib/video/lib &&    cf_search="$cf_search /opt/lib/video/lib"
+	test -d /opt/video/lib &&       cf_search="$cf_search /opt/video/lib"
+	test -d /opt/video/lib/video &&    cf_search="$cf_search /opt/video/lib/video"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/video &&       cf_search="$cf_search $HOME/lib/video"
+	test -d $HOME/lib/video/lib &&    cf_search="$cf_search $HOME/lib/video/lib"
+	test -d $HOME/video/lib &&       cf_search="$cf_search $HOME/video/lib"
+	test -d $HOME/video/lib/video &&    cf_search="$cf_search $HOME/video/lib/video"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+			for cf_libdir in $cf_search
+			do
+				echo "$as_me:23330: checking for -lvideo in $cf_libdir" >&5
+echo $ECHO_N "checking for -lvideo in $cf_libdir... $ECHO_C" >&6
+				LIBS="-L$cf_libdir -lvideo $cf_save_LIBS"
+				cat >conftest.$ac_ext <<_ACEOF
+#line 23334 "configure"
+#include "confdefs.h"
+#include <sys/video.h>
+int
+main ()
+{
+v_init()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23346: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23349: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23352: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23355: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:23357: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 		 eval 'cf_cv_have_lib_'video'=yes'
+					 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:23364: result: no" >&5
+echo "${ECHO_T}no" >&6
+					 LIBS="$cf_save_LIBS"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+			done
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+eval 'cf_found_library=$cf_cv_have_lib_'video
+
+if test $cf_found_library = no ; then
+	{ { echo "$as_me:23379: error: Cannot link video library" >&5
+echo "$as_me: error: Cannot link video library" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+	;;
+esac
+
+	eval 'cf_cv_have_lib_'slang'=no'
+	cf_libdir=""
+	echo "$as_me:23389: checking for SLtt_get_screen_size" >&5
+echo $ECHO_N "checking for SLtt_get_screen_size... $ECHO_C" >&6
+if test "${ac_cv_func_SLtt_get_screen_size+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 23395 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char SLtt_get_screen_size (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char SLtt_get_screen_size ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_SLtt_get_screen_size) || defined (__stub___SLtt_get_screen_size)
+choke me
+#else
+f = SLtt_get_screen_size;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23426: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23429: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23432: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23435: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_SLtt_get_screen_size=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_SLtt_get_screen_size=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:23445: result: $ac_cv_func_SLtt_get_screen_size" >&5
+echo "${ECHO_T}$ac_cv_func_SLtt_get_screen_size" >&6
+if test $ac_cv_func_SLtt_get_screen_size = yes; then
+  eval 'cf_cv_have_lib_'slang'=yes'
+else
+
+		cf_save_LIBS="$LIBS"
+		echo "$as_me:23452: checking for SLtt_get_screen_size in -lslang" >&5
+echo $ECHO_N "checking for SLtt_get_screen_size in -lslang... $ECHO_C" >&6
+		LIBS="-lslang $LIBS"
+		cat >conftest.$ac_ext <<_ACEOF
+#line 23456 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+SLtt_get_screen_size()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23468: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23471: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23474: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23477: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:23479: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 eval 'cf_cv_have_lib_'slang'=yes'
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:23486: result: no" >&5
+echo "${ECHO_T}no" >&6
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/slang &&       cf_search="$cf_search $cf_library_path/lib/slang"
+	test -d $cf_library_path/lib/slang/lib &&    cf_search="$cf_search $cf_library_path/lib/slang/lib"
+	test -d $cf_library_path/slang/lib &&       cf_search="$cf_search $cf_library_path/slang/lib"
+	test -d $cf_library_path/slang/lib/slang &&    cf_search="$cf_search $cf_library_path/slang/lib/slang"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/slang &&       cf_search="$cf_search /usr/lib/slang"
+	test -d /usr/lib/slang/lib &&    cf_search="$cf_search /usr/lib/slang/lib"
+	test -d /usr/slang/lib &&       cf_search="$cf_search /usr/slang/lib"
+	test -d /usr/slang/lib/slang &&    cf_search="$cf_search /usr/slang/lib/slang"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/slang &&       cf_search="$cf_search $prefix/lib/slang"
+	test -d $prefix/lib/slang/lib &&    cf_search="$cf_search $prefix/lib/slang/lib"
+	test -d $prefix/slang/lib &&       cf_search="$cf_search $prefix/slang/lib"
+	test -d $prefix/slang/lib/slang &&    cf_search="$cf_search $prefix/slang/lib/slang"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/slang &&       cf_search="$cf_search /usr/local/lib/slang"
+	test -d /usr/local/lib/slang/lib &&    cf_search="$cf_search /usr/local/lib/slang/lib"
+	test -d /usr/local/slang/lib &&       cf_search="$cf_search /usr/local/slang/lib"
+	test -d /usr/local/slang/lib/slang &&    cf_search="$cf_search /usr/local/slang/lib/slang"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/slang &&       cf_search="$cf_search /opt/lib/slang"
+	test -d /opt/lib/slang/lib &&    cf_search="$cf_search /opt/lib/slang/lib"
+	test -d /opt/slang/lib &&       cf_search="$cf_search /opt/slang/lib"
+	test -d /opt/slang/lib/slang &&    cf_search="$cf_search /opt/slang/lib/slang"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/slang &&       cf_search="$cf_search $HOME/lib/slang"
+	test -d $HOME/lib/slang/lib &&    cf_search="$cf_search $HOME/lib/slang/lib"
+	test -d $HOME/slang/lib &&       cf_search="$cf_search $HOME/slang/lib"
+	test -d $HOME/slang/lib/slang &&    cf_search="$cf_search $HOME/slang/lib/slang"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+			for cf_libdir in $cf_search
+			do
+				echo "$as_me:23576: checking for -lslang in $cf_libdir" >&5
+echo $ECHO_N "checking for -lslang in $cf_libdir... $ECHO_C" >&6
+				LIBS="-L$cf_libdir -lslang $cf_save_LIBS"
+				cat >conftest.$ac_ext <<_ACEOF
+#line 23580 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+SLtt_get_screen_size()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23592: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23595: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23598: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23601: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:23603: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 		 eval 'cf_cv_have_lib_'slang'=yes'
+					 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:23610: result: no" >&5
+echo "${ECHO_T}no" >&6
+					 LIBS="$cf_save_LIBS"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+			done
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+eval 'cf_found_library=$cf_cv_have_lib_'slang
+
+if test $cf_found_library = no ; then
+	{ { echo "$as_me:23625: error: Cannot link slang library" >&5
+echo "$as_me: error: Cannot link slang library" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+cf_slang_LIBS3="$LIBS"
+echo "$as_me:23631: checking if we can link slang without termcap" >&5
+echo $ECHO_N "checking if we can link slang without termcap... $ECHO_C" >&6
+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
+	cf_exclude="$cf_slang_LIBS2"
+fi
+LIBS=`echo ".$cf_slang_LIBS3" | sed -e "s%$cf_exclude%%" -e 's%^.%%'`
+cat >conftest.$ac_ext <<_ACEOF
+#line 23640 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+SLtt_get_screen_size()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23652: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23655: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23658: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23661: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+echo "$as_me:23670: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+test $cf_result = no && LIBS="$cf_slang_LIBS3"
+
+else
+
+echo "$as_me:23676: checking for slang2 header file" >&5
+echo $ECHO_N "checking for slang2 header file... $ECHO_C" >&6
+if test "${cf_cv_slang2_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_cv_slang2_header=no
+	cat >conftest.$ac_ext <<_ACEOF
+#line 23684 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+printf("%s\n", SLANG_VERSION)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:23696: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:23699: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:23702: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23705: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_slang2_header=predefined
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/slang2 &&       cf_search="$cf_search $cf_header_path/include/slang2"
+	test -d $cf_header_path/include/slang2/include &&    cf_search="$cf_search $cf_header_path/include/slang2/include"
+	test -d $cf_header_path/slang2/include &&       cf_search="$cf_search $cf_header_path/slang2/include"
+	test -d $cf_header_path/slang2/include/slang2 &&    cf_search="$cf_search $cf_header_path/slang2/include/slang2"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/slang2 &&       cf_search="$cf_search /usr/include/slang2"
+	test -d /usr/include/slang2/include &&    cf_search="$cf_search /usr/include/slang2/include"
+	test -d /usr/slang2/include &&       cf_search="$cf_search /usr/slang2/include"
+	test -d /usr/slang2/include/slang2 &&    cf_search="$cf_search /usr/slang2/include/slang2"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/slang2 &&       cf_search="$cf_search $prefix/include/slang2"
+	test -d $prefix/include/slang2/include &&    cf_search="$cf_search $prefix/include/slang2/include"
+	test -d $prefix/slang2/include &&       cf_search="$cf_search $prefix/slang2/include"
+	test -d $prefix/slang2/include/slang2 &&    cf_search="$cf_search $prefix/slang2/include/slang2"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/slang2 &&       cf_search="$cf_search /usr/local/include/slang2"
+	test -d /usr/local/include/slang2/include &&    cf_search="$cf_search /usr/local/include/slang2/include"
+	test -d /usr/local/slang2/include &&       cf_search="$cf_search /usr/local/slang2/include"
+	test -d /usr/local/slang2/include/slang2 &&    cf_search="$cf_search /usr/local/slang2/include/slang2"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/slang2 &&       cf_search="$cf_search /opt/include/slang2"
+	test -d /opt/include/slang2/include &&    cf_search="$cf_search /opt/include/slang2/include"
+	test -d /opt/slang2/include &&       cf_search="$cf_search /opt/slang2/include"
+	test -d /opt/slang2/include/slang2 &&    cf_search="$cf_search /opt/slang2/include/slang2"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/slang2 &&       cf_search="$cf_search $HOME/include/slang2"
+	test -d $HOME/include/slang2/include &&    cf_search="$cf_search $HOME/include/slang2/include"
+	test -d $HOME/slang2/include &&       cf_search="$cf_search $HOME/slang2/include"
+	test -d $HOME/slang2/include/slang2 &&    cf_search="$cf_search $HOME/slang2/include/slang2"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/slang2 && cf_search="$cf_search $includedir/slang2"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/slang2 && cf_search="$cf_search $oldincludedir/slang2"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+	for cf_incdir in $cf_search
+	do
+		for cf_header in \
+			slang.h
+		do
+			echo trying $cf_incdir/$cf_header 1>&5
+			if egrep "SLANG_VERSION" $cf_incdir/$cf_header 1>&5 2>&1; then
+				cf_cv_slang2_header=$cf_incdir/$cf_header
+				break
+			fi
+		done
+		test "$cf_cv_slang2_header" != no && break
+	done
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:23832: result: $cf_cv_slang2_header" >&5
+echo "${ECHO_T}$cf_cv_slang2_header" >&6
+
+if test "x$cf_cv_slang2_header" != xno
+then
+	cat >>confdefs.h <<\EOF
+#define USE_SLANG 1
+EOF
+
+	cf_incdir=`echo $cf_cv_slang2_header | sed -e 's%/[^/]*$%%'`
+
+	case $cf_cv_slang2_header in # (vi
+	predefined) # (vi
+		;;
+	*)
+
+if test -n "$cf_incdir" ; then
+  for cf_add_incdir in $cf_incdir
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 23872 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:23884: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:23887: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:23890: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23893: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:23910: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+		;;
+	esac
+fi
+
+	if test "x$cf_cv_slang2_header" != xno
+	then
+
+cf_slang_LIBS1="$LIBS"
+
+if test "${cf_cv_termlib+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_termlib=none
+cat >conftest.$ac_ext <<_ACEOF
+#line 23940 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+char *x=(char*)tgoto("",0,0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23952: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23955: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23958: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23961: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cat >conftest.$ac_ext <<_ACEOF
+#line 23964 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+int x=tigetstr("")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:23976: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:23979: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:23982: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:23985: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_termlib=terminfo
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_termlib=termcap
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+	test -n "$verbose" && echo "	using functions in predefined $cf_cv_termlib LIBS" 1>&6
+
+echo "${as_me:-configure}:23996: testing using functions in predefined $cf_cv_termlib LIBS ..." 1>&5
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+if test "$cf_cv_termlib" = none; then
+	# FreeBSD's linker gives bogus results for AC_CHECK_LIB, saying that
+	# tgetstr lives in -lcurses when it is only an unsatisfied extern.
+	cf_save_LIBS="$LIBS"
+	for cf_lib in curses ncurses termlib termcap
+	do
+	LIBS="-l$cf_lib $cf_save_LIBS"
+	for cf_func in tigetstr tgetstr
+	do
+		echo "$as_me:24011: checking for $cf_func in -l$cf_lib" >&5
+echo $ECHO_N "checking for $cf_func in -l$cf_lib... $ECHO_C" >&6
+		cat >conftest.$ac_ext <<_ACEOF
+#line 24014 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+int x=$cf_func("")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24026: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24029: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24032: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24035: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+		echo "$as_me:24044: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+		if test "$cf_result" = yes ; then
+			if test "$cf_func" = tigetstr ; then
+				cf_cv_termlib=terminfo
+			else
+				cf_cv_termlib=termcap
+			fi
+			break
+		fi
+	done
+		test "$cf_result" = yes && break
+	done
+	test "$cf_result" = no && LIBS="$cf_save_LIBS"
+fi
+if test "$cf_cv_termlib" = none; then
+	# allow curses library for broken AIX system.
+	echo "$as_me:24061: checking for initscr in -lcurses" >&5
+echo $ECHO_N "checking for initscr in -lcurses... $ECHO_C" >&6
+if test "${ac_cv_lib_curses_initscr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lcurses  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 24069 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char initscr ();
+int
+main ()
+{
+initscr ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24088: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24091: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24094: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24097: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_curses_initscr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_curses_initscr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:24108: result: $ac_cv_lib_curses_initscr" >&5
+echo "${ECHO_T}$ac_cv_lib_curses_initscr" >&6
+if test $ac_cv_lib_curses_initscr = yes; then
+  LIBS="-lcurses $LIBS"
+fi
+
+	echo "$as_me:24114: checking for tgoto in -ltermcap" >&5
+echo $ECHO_N "checking for tgoto in -ltermcap... $ECHO_C" >&6
+if test "${ac_cv_lib_termcap_tgoto+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ltermcap  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 24122 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char tgoto ();
+int
+main ()
+{
+tgoto ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24141: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24144: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24147: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24150: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_termcap_tgoto=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_termcap_tgoto=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:24161: result: $ac_cv_lib_termcap_tgoto" >&5
+echo "${ECHO_T}$ac_cv_lib_termcap_tgoto" >&6
+if test $ac_cv_lib_termcap_tgoto = yes; then
+  LIBS="-ltermcap $LIBS" cf_cv_termlib=termcap
+fi
+
+fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+if test "$cf_cv_termlib" = none; then
+	{ echo "$as_me:24172: WARNING: Cannot find -ltermlib, -lcurses, or -ltermcap" >&5
+echo "$as_me: WARNING: Cannot find -ltermlib, -lcurses, or -ltermcap" >&2;}
+fi
+
+fi
+
+cf_slang_LIBS2="$LIBS"
+echo "$as_me:24179: checking for acos" >&5
+echo $ECHO_N "checking for acos... $ECHO_C" >&6
+if test "${ac_cv_func_acos+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 24185 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char acos (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char acos ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_acos) || defined (__stub___acos)
+choke me
+#else
+f = acos;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24216: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24219: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24222: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24225: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_acos=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_acos=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:24235: result: $ac_cv_func_acos" >&5
+echo "${ECHO_T}$ac_cv_func_acos" >&6
+if test $ac_cv_func_acos = yes; then
+  :
+else
+
+echo "$as_me:24241: checking for acos in -lm" >&5
+echo $ECHO_N "checking for acos in -lm... $ECHO_C" >&6
+if test "${ac_cv_lib_m_acos+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lm $LIBS $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 24249 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char acos ();
+int
+main ()
+{
+acos ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24268: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24271: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24274: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24277: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_m_acos=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_m_acos=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:24288: result: $ac_cv_lib_m_acos" >&5
+echo "${ECHO_T}$ac_cv_lib_m_acos" >&6
+if test $ac_cv_lib_m_acos = yes; then
+
+cf_tr_func=`echo "acos" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define HAVE_$cf_tr_func 1
+EOF
+
+	ac_cv_func_acos=yes
+	if test "$cf_used_lib_m" != yes ; then cf_used_lib_m=yes; LIBS="-lm $LIBS"; fi
+else
+
+	ac_cv_func_acos=unknown
+	unset ac_cv_func_acos 2>/dev/null
+
+fi
+
+fi
+
+case $host_os in #(vi
+os2*)
+
+	eval 'cf_cv_have_lib_'video'=no'
+	cf_libdir=""
+	echo "$as_me:24314: checking for v_init" >&5
+echo $ECHO_N "checking for v_init... $ECHO_C" >&6
+if test "${ac_cv_func_v_init+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 24320 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char v_init (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char v_init ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_v_init) || defined (__stub___v_init)
+choke me
+#else
+f = v_init;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24351: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24354: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24357: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24360: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_v_init=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_v_init=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:24370: result: $ac_cv_func_v_init" >&5
+echo "${ECHO_T}$ac_cv_func_v_init" >&6
+if test $ac_cv_func_v_init = yes; then
+  eval 'cf_cv_have_lib_'video'=yes'
+else
+
+		cf_save_LIBS="$LIBS"
+		echo "$as_me:24377: checking for v_init in -lvideo" >&5
+echo $ECHO_N "checking for v_init in -lvideo... $ECHO_C" >&6
+		LIBS="-lvideo $LIBS"
+		cat >conftest.$ac_ext <<_ACEOF
+#line 24381 "configure"
+#include "confdefs.h"
+#include <sys/video.h>
+int
+main ()
+{
+v_init()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24393: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24396: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24399: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24402: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:24404: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 eval 'cf_cv_have_lib_'video'=yes'
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:24411: result: no" >&5
+echo "${ECHO_T}no" >&6
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/video &&       cf_search="$cf_search $cf_library_path/lib/video"
+	test -d $cf_library_path/lib/video/lib &&    cf_search="$cf_search $cf_library_path/lib/video/lib"
+	test -d $cf_library_path/video/lib &&       cf_search="$cf_search $cf_library_path/video/lib"
+	test -d $cf_library_path/video/lib/video &&    cf_search="$cf_search $cf_library_path/video/lib/video"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/video &&       cf_search="$cf_search /usr/lib/video"
+	test -d /usr/lib/video/lib &&    cf_search="$cf_search /usr/lib/video/lib"
+	test -d /usr/video/lib &&       cf_search="$cf_search /usr/video/lib"
+	test -d /usr/video/lib/video &&    cf_search="$cf_search /usr/video/lib/video"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/video &&       cf_search="$cf_search $prefix/lib/video"
+	test -d $prefix/lib/video/lib &&    cf_search="$cf_search $prefix/lib/video/lib"
+	test -d $prefix/video/lib &&       cf_search="$cf_search $prefix/video/lib"
+	test -d $prefix/video/lib/video &&    cf_search="$cf_search $prefix/video/lib/video"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/video &&       cf_search="$cf_search /usr/local/lib/video"
+	test -d /usr/local/lib/video/lib &&    cf_search="$cf_search /usr/local/lib/video/lib"
+	test -d /usr/local/video/lib &&       cf_search="$cf_search /usr/local/video/lib"
+	test -d /usr/local/video/lib/video &&    cf_search="$cf_search /usr/local/video/lib/video"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/video &&       cf_search="$cf_search /opt/lib/video"
+	test -d /opt/lib/video/lib &&    cf_search="$cf_search /opt/lib/video/lib"
+	test -d /opt/video/lib &&       cf_search="$cf_search /opt/video/lib"
+	test -d /opt/video/lib/video &&    cf_search="$cf_search /opt/video/lib/video"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/video &&       cf_search="$cf_search $HOME/lib/video"
+	test -d $HOME/lib/video/lib &&    cf_search="$cf_search $HOME/lib/video/lib"
+	test -d $HOME/video/lib &&       cf_search="$cf_search $HOME/video/lib"
+	test -d $HOME/video/lib/video &&    cf_search="$cf_search $HOME/video/lib/video"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+			for cf_libdir in $cf_search
+			do
+				echo "$as_me:24501: checking for -lvideo in $cf_libdir" >&5
+echo $ECHO_N "checking for -lvideo in $cf_libdir... $ECHO_C" >&6
+				LIBS="-L$cf_libdir -lvideo $cf_save_LIBS"
+				cat >conftest.$ac_ext <<_ACEOF
+#line 24505 "configure"
+#include "confdefs.h"
+#include <sys/video.h>
+int
+main ()
+{
+v_init()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24517: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24520: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24523: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24526: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:24528: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 		 eval 'cf_cv_have_lib_'video'=yes'
+					 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:24535: result: no" >&5
+echo "${ECHO_T}no" >&6
+					 LIBS="$cf_save_LIBS"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+			done
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+eval 'cf_found_library=$cf_cv_have_lib_'video
+
+if test $cf_found_library = no ; then
+	{ { echo "$as_me:24550: error: Cannot link video library" >&5
+echo "$as_me: error: Cannot link video library" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+	;;
+esac
+
+	eval 'cf_cv_have_lib_'slang2'=no'
+	cf_libdir=""
+	echo "$as_me:24560: checking for SLtt_get_screen_size" >&5
+echo $ECHO_N "checking for SLtt_get_screen_size... $ECHO_C" >&6
+if test "${ac_cv_func_SLtt_get_screen_size+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 24566 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char SLtt_get_screen_size (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char SLtt_get_screen_size ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_SLtt_get_screen_size) || defined (__stub___SLtt_get_screen_size)
+choke me
+#else
+f = SLtt_get_screen_size;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24597: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24600: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24603: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24606: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_SLtt_get_screen_size=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_SLtt_get_screen_size=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:24616: result: $ac_cv_func_SLtt_get_screen_size" >&5
+echo "${ECHO_T}$ac_cv_func_SLtt_get_screen_size" >&6
+if test $ac_cv_func_SLtt_get_screen_size = yes; then
+  eval 'cf_cv_have_lib_'slang2'=yes'
+else
+
+		cf_save_LIBS="$LIBS"
+		echo "$as_me:24623: checking for SLtt_get_screen_size in -lslang2" >&5
+echo $ECHO_N "checking for SLtt_get_screen_size in -lslang2... $ECHO_C" >&6
+		LIBS="-lslang2 $LIBS"
+		cat >conftest.$ac_ext <<_ACEOF
+#line 24627 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+SLtt_get_screen_size()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24639: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24642: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24645: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24648: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:24650: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 eval 'cf_cv_have_lib_'slang2'=yes'
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:24657: result: no" >&5
+echo "${ECHO_T}no" >&6
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/slang2 &&       cf_search="$cf_search $cf_library_path/lib/slang2"
+	test -d $cf_library_path/lib/slang2/lib &&    cf_search="$cf_search $cf_library_path/lib/slang2/lib"
+	test -d $cf_library_path/slang2/lib &&       cf_search="$cf_search $cf_library_path/slang2/lib"
+	test -d $cf_library_path/slang2/lib/slang2 &&    cf_search="$cf_search $cf_library_path/slang2/lib/slang2"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/slang2 &&       cf_search="$cf_search /usr/lib/slang2"
+	test -d /usr/lib/slang2/lib &&    cf_search="$cf_search /usr/lib/slang2/lib"
+	test -d /usr/slang2/lib &&       cf_search="$cf_search /usr/slang2/lib"
+	test -d /usr/slang2/lib/slang2 &&    cf_search="$cf_search /usr/slang2/lib/slang2"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/slang2 &&       cf_search="$cf_search $prefix/lib/slang2"
+	test -d $prefix/lib/slang2/lib &&    cf_search="$cf_search $prefix/lib/slang2/lib"
+	test -d $prefix/slang2/lib &&       cf_search="$cf_search $prefix/slang2/lib"
+	test -d $prefix/slang2/lib/slang2 &&    cf_search="$cf_search $prefix/slang2/lib/slang2"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/slang2 &&       cf_search="$cf_search /usr/local/lib/slang2"
+	test -d /usr/local/lib/slang2/lib &&    cf_search="$cf_search /usr/local/lib/slang2/lib"
+	test -d /usr/local/slang2/lib &&       cf_search="$cf_search /usr/local/slang2/lib"
+	test -d /usr/local/slang2/lib/slang2 &&    cf_search="$cf_search /usr/local/slang2/lib/slang2"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/slang2 &&       cf_search="$cf_search /opt/lib/slang2"
+	test -d /opt/lib/slang2/lib &&    cf_search="$cf_search /opt/lib/slang2/lib"
+	test -d /opt/slang2/lib &&       cf_search="$cf_search /opt/slang2/lib"
+	test -d /opt/slang2/lib/slang2 &&    cf_search="$cf_search /opt/slang2/lib/slang2"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/slang2 &&       cf_search="$cf_search $HOME/lib/slang2"
+	test -d $HOME/lib/slang2/lib &&    cf_search="$cf_search $HOME/lib/slang2/lib"
+	test -d $HOME/slang2/lib &&       cf_search="$cf_search $HOME/slang2/lib"
+	test -d $HOME/slang2/lib/slang2 &&    cf_search="$cf_search $HOME/slang2/lib/slang2"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+			for cf_libdir in $cf_search
+			do
+				echo "$as_me:24747: checking for -lslang2 in $cf_libdir" >&5
+echo $ECHO_N "checking for -lslang2 in $cf_libdir... $ECHO_C" >&6
+				LIBS="-L$cf_libdir -lslang2 $cf_save_LIBS"
+				cat >conftest.$ac_ext <<_ACEOF
+#line 24751 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+SLtt_get_screen_size()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24763: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24766: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24769: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24772: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  echo "$as_me:24774: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+			 		 eval 'cf_cv_have_lib_'slang2'=yes'
+					 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:24781: result: no" >&5
+echo "${ECHO_T}no" >&6
+					 LIBS="$cf_save_LIBS"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+			done
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+eval 'cf_found_library=$cf_cv_have_lib_'slang2
+
+if test $cf_found_library = no ; then
+	{ { echo "$as_me:24796: error: Cannot link slang2 library" >&5
+echo "$as_me: error: Cannot link slang2 library" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+cf_slang_LIBS3="$LIBS"
+echo "$as_me:24802: checking if we can link slang2 without termcap" >&5
+echo $ECHO_N "checking if we can link slang2 without termcap... $ECHO_C" >&6
+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
+	cf_exclude="$cf_slang_LIBS2"
+fi
+LIBS=`echo ".$cf_slang_LIBS3" | sed -e "s%$cf_exclude%%" -e 's%^.%%'`
+cat >conftest.$ac_ext <<_ACEOF
+#line 24811 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+SLtt_get_screen_size()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24823: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24826: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24829: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24832: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+echo "$as_me:24841: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+test $cf_result = no && LIBS="$cf_slang_LIBS3"
+
+	else
+		{ { echo "$as_me:24846: error: cannot find slang headers" >&5
+echo "$as_me: error: cannot find slang headers" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+fi
+
+# There's an unofficial set of patches for slang that gives it some limited
+# UTF8 capability.  Unfortunately it won't compile unless one defines UTF8.
+echo "$as_me:24854: checking if we must define UTF8" >&5
+echo $ECHO_N "checking if we must define UTF8... $ECHO_C" >&6
+if test "${cf_cv_slang_utf8+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 24861 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+SLtt_get_screen_size()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:24873: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:24876: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:24879: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24882: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_slang_utf8=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 24890 "configure"
+#include "confdefs.h"
+
+#define UTF8
+#include <slang.h>
+int
+main ()
+{
+SLtt_get_screen_size()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:24904: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:24907: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:24910: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24913: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_slang_utf8=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_slang_utf8=unknown
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:24926: result: $cf_cv_slang_utf8" >&5
+echo "${ECHO_T}$cf_cv_slang_utf8" >&6
+
+if test "$cf_cv_slang_utf8" = yes ; then
+	cat >>confdefs.h <<\EOF
+#define UTF8 1
+EOF
+
+fi
+
+echo "$as_me:24936: checking if we must tell slang this is UNIX" >&5
+echo $ECHO_N "checking if we must tell slang this is UNIX... $ECHO_C" >&6
+if test "${cf_cv_slang_unix+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 24943 "configure"
+#include "confdefs.h"
+#include <slang.h>
+int
+main ()
+{
+
+#ifdef REAL_UNIX_SYSTEM
+make an error
+#else
+extern int SLang_TT_Baud_Rate;
+SLang_TT_Baud_Rate = 1
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:24962: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:24965: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:24968: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:24971: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_slang_unix=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_slang_unix=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:24982: result: $cf_cv_slang_unix" >&5
+echo "${ECHO_T}$cf_cv_slang_unix" >&6
+test $cf_cv_slang_unix = yes && cat >>confdefs.h <<\EOF
+#define REAL_UNIX_SYSTEM 1
+EOF
+
+	echo "$as_me:24988: checking for SLsmg_Color_Type" >&5
+echo $ECHO_N "checking for SLsmg_Color_Type... $ECHO_C" >&6
+if test "${ac_cv_type_SLsmg_Color_Type+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 24994 "configure"
+#include "confdefs.h"
+#include <slang.h>
+
+int
+main ()
+{
+if ((SLsmg_Color_Type *) 0)
+  return 0;
+if (sizeof (SLsmg_Color_Type))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:25010: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:25013: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:25016: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:25019: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_SLsmg_Color_Type=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_SLsmg_Color_Type=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:25029: result: $ac_cv_type_SLsmg_Color_Type" >&5
+echo "${ECHO_T}$ac_cv_type_SLsmg_Color_Type" >&6
+if test $ac_cv_type_SLsmg_Color_Type = yes; then
+  ac_cv_type_SLsmg_Color_Type=yes
+else
+  ac_cv_type_SLsmg_Color_Type=no
+fi
+
+	if test $ac_cv_type_SLsmg_Color_Type = no; then
+	cat >>confdefs.h <<\EOF
+#define SLsmg_Color_Type int
+EOF
+
+fi
+
+	echo "$as_me:25044: checking for SLtt_Char_Type" >&5
+echo $ECHO_N "checking for SLtt_Char_Type... $ECHO_C" >&6
+if test "${ac_cv_type_SLtt_Char_Type+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 25050 "configure"
+#include "confdefs.h"
+#include <slang.h>
+
+int
+main ()
+{
+if ((SLtt_Char_Type *) 0)
+  return 0;
+if (sizeof (SLtt_Char_Type))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:25066: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:25069: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:25072: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:25075: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_SLtt_Char_Type=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_SLtt_Char_Type=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:25085: result: $ac_cv_type_SLtt_Char_Type" >&5
+echo "${ECHO_T}$ac_cv_type_SLtt_Char_Type" >&6
+if test $ac_cv_type_SLtt_Char_Type = yes; then
+  ac_cv_type_SLtt_Char_Type=yes
+else
+  ac_cv_type_SLtt_Char_Type=no
+fi
+
+	if test $ac_cv_type_SLtt_Char_Type = no; then
+	cat >>confdefs.h <<\EOF
+#define SLtt_Char_Type unsigned long
+EOF
+
+fi
+
+	dft_color_style=no
+	;;
+esac
+
+echo "$as_me:25104: checking for chtype typedef" >&5
+echo $ECHO_N "checking for chtype typedef... $ECHO_C" >&6
+if test "${cf_cv_chtype_decl+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 25111 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+chtype foo
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:25123: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:25126: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:25129: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:25132: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_chtype_decl=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_chtype_decl=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:25142: result: $cf_cv_chtype_decl" >&5
+echo "${ECHO_T}$cf_cv_chtype_decl" >&6
+if test $cf_cv_chtype_decl = yes ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_TYPE_CHTYPE 1
+EOF
+
+	echo "$as_me:25149: checking if chtype is scalar or struct" >&5
+echo $ECHO_N "checking if chtype is scalar or struct... $ECHO_C" >&6
+if test "${cf_cv_chtype_type+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+		cat >conftest.$ac_ext <<_ACEOF
+#line 25156 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+chtype foo; long x = foo
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:25168: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:25171: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:25174: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:25177: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_chtype_type=scalar
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_chtype_type=struct
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:25187: result: $cf_cv_chtype_type" >&5
+echo "${ECHO_T}$cf_cv_chtype_type" >&6
+	if test $cf_cv_chtype_type = scalar ; then
+		cat >>confdefs.h <<\EOF
+#define TYPE_CHTYPE_IS_SCALAR 1
+EOF
+
+	fi
+fi
+
+echo "$as_me:25197: checking if you want the wide-curses features" >&5
+echo $ECHO_N "checking if you want the wide-curses features... $ECHO_C" >&6
+
+# Check whether --enable-widec or --disable-widec was given.
+if test "${enable_widec+set}" = set; then
+  enableval="$enable_widec"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_wide_curses=$enableval
+  else
+    use_wide_curses=$cf_wide_curses
+  fi
+else
+  enableval=no
+  use_wide_curses=$cf_wide_curses
+
+fi;
+echo "$as_me:25214: result: $use_wide_curses" >&5
+echo "${ECHO_T}$use_wide_curses" >&6
+
+echo "$as_me:25217: checking if color-style code should be used" >&5
+echo $ECHO_N "checking if color-style code should be used... $ECHO_C" >&6
+
+# Check whether --enable-color-style or --disable-color-style was given.
+if test "${enable_color_style+set}" = set; then
+  enableval="$enable_color_style"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_color_style=$enableval
+  else
+    use_color_style=$dft_color_style
+  fi
+else
+  enableval=yes
+  use_color_style=$dft_color_style
+
+fi;
+
+case $use_color_style in
+no)
+	echo "$as_me:25237: result: no" >&5
+echo "${ECHO_T}no" >&6
+	INSTALL_LSS=
+	;;
+*)
+	cat >>confdefs.h <<\EOF
+#define USE_COLOR_STYLE 1
+EOF
+
+	echo "$as_me:25246: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+	echo "$as_me:25249: checking for location of style-sheet file" >&5
+echo $ECHO_N "checking for location of style-sheet file... $ECHO_C" >&6
+
+# Check whether --with-lss-file or --without-lss-file was given.
+if test "${with_lss_file+set}" = set; then
+  withval="$with_lss_file"
+
+else
+  withval="${LYNX_LSS_FILE:-$sysconfdir/lynx.lss}"
+fi; if test -n "$sysconfdir/lynx.lss" ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$withval" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval withval="$withval"
+  case ".$withval" in #(vi
+  .NONE/*)
+    withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  { { echo "$as_me:25285: error: expected a pathname, not \"$withval\"" >&5
+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
+   { (exit 1); exit 1; }; }
+  ;;
+esac
+
+fi
+LYNX_LSS_FILE="$withval"
+
+	echo "$as_me:25294: result: $LYNX_LSS_FILE" >&5
+echo "${ECHO_T}$LYNX_LSS_FILE" >&6
+
+	test "$LYNX_LSS_FILE" = no && LYNX_LSS_FILE=
+	cat >>confdefs.h <<EOF
+#define LYNX_LSS_FILE "$LYNX_LSS_FILE"
+EOF
+
+	INSTALL_LSS=install-lss
+	;;
+esac
+
+echo "$as_me:25306: checking for the default configuration-file" >&5
+echo $ECHO_N "checking for the default configuration-file... $ECHO_C" >&6
+
+# Check whether --with-cfg-file or --without-cfg-file was given.
+if test "${with_cfg_file+set}" = set; then
+  withval="$with_cfg_file"
+
+else
+  withval="${LYNX_CFG_FILE:-$sysconfdir/lynx.cfg}"
+fi; if test -n "$sysconfdir/lynx.cfg" ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$withval" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval withval="$withval"
+  case ".$withval" in #(vi
+  .NONE/*)
+    withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  { { echo "$as_me:25342: error: expected a pathname, not \"$withval\"" >&5
+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
+   { (exit 1); exit 1; }; }
+  ;;
+esac
+
+fi
+LYNX_CFG_FILE="$withval"
+
+echo "$as_me:25351: result: $LYNX_CFG_FILE" >&5
+echo "${ECHO_T}$LYNX_CFG_FILE" >&6
+
+test "$LYNX_CFG_FILE" = no && LYNX_CFG_FILE=
+cat >>confdefs.h <<EOF
+#define LYNX_CFG_FILE "$LYNX_CFG_FILE"
+EOF
+
+echo "$as_me:25359: checking if htmlized lynx.cfg should be built" >&5
+echo $ECHO_N "checking if htmlized lynx.cfg should be built... $ECHO_C" >&6
+
+# Check whether --enable-htmlized-cfg or --disable-htmlized-cfg was given.
+if test "${enable_htmlized_cfg+set}" = set; then
+  enableval="$enable_htmlized_cfg"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_htmlized_cfg=$enableval
+  else
+    use_htmlized_cfg=no
+  fi
+else
+  enableval=no
+  use_htmlized_cfg=no
+
+fi;
+echo "$as_me:25376: result: $use_htmlized_cfg" >&5
+echo "${ECHO_T}$use_htmlized_cfg" >&6
+
+LYNXCFG_MAKE=''
+if test $use_htmlized_cfg = no ; then
+	LYNXCFG_MAKE='#'
+fi
+
+echo "$as_me:25384: checking if local doc directory should be linked to help page" >&5
+echo $ECHO_N "checking if local doc directory should be linked to help page... $ECHO_C" >&6
+
+# Check whether --enable-local-docs or --disable-local-docs was given.
+if test "${enable_local_docs+set}" = set; then
+  enableval="$enable_local_docs"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_local_docs=$enableval
+  else
+    use_local_docs=no
+  fi
+else
+  enableval=no
+  use_local_docs=no
+
+fi;
+echo "$as_me:25401: result: $use_local_docs" >&5
+echo "${ECHO_T}$use_local_docs" >&6
+
+LYNXDOC_MAKE=''
+if test $use_local_docs = no ; then
+	LYNXDOC_MAKE='#'
+fi
+
+echo "$as_me:25409: checking for MIME library directory" >&5
+echo $ECHO_N "checking for MIME library directory... $ECHO_C" >&6
+
+# Check whether --with-mime-libdir or --without-mime-libdir was given.
+if test "${with_mime_libdir+set}" = set; then
+  withval="$with_mime_libdir"
+
+else
+  withval="${MIME_LIBDIR:-/etc}"
+fi; if true ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$withval" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval withval="$withval"
+  case ".$withval" in #(vi
+  .NONE/*)
+    withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  { { echo "$as_me:25445: error: expected a pathname, not \"$withval\"" >&5
+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
+   { (exit 1); exit 1; }; }
+  ;;
+esac
+
+fi
+MIME_LIBDIR="$withval"
+
+echo "$as_me:25454: result: $MIME_LIBDIR" >&5
+echo "${ECHO_T}$MIME_LIBDIR" >&6
+MIME_LIBDIR=`echo "$MIME_LIBDIR" | sed -e 's,/$,,' -e 's,$,/,'`
+cat >>confdefs.h <<EOF
+#define MIME_LIBDIR "$MIME_LIBDIR"
+EOF
+
+echo "$as_me:25461: checking if locale-charset selection logic should be used" >&5
+echo $ECHO_N "checking if locale-charset selection logic should be used... $ECHO_C" >&6
+
+# Check whether --enable-locale-charset or --disable-locale-charset was given.
+if test "${enable_locale_charset+set}" = set; then
+  enableval="$enable_locale_charset"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_locale_charset=$enableval
+  else
+    use_locale_charset=yes
+  fi
+else
+  enableval=no
+  use_locale_charset=yes
+
+fi;
+echo "$as_me:25478: result: $use_locale_charset" >&5
+echo "${ECHO_T}$use_locale_charset" >&6
+test $use_locale_charset != no && cat >>confdefs.h <<\EOF
+#define USE_LOCALE_CHARSET 1
+EOF
+
+CHARSET_DEFS=
+
+echo "$as_me:25486: checking if you want only a few charsets" >&5
+echo $ECHO_N "checking if you want only a few charsets... $ECHO_C" >&6
+
+# Check whether --with-charsets or --without-charsets was given.
+if test "${with_charsets+set}" = set; then
+  withval="$with_charsets"
+  cf_charsets=$withval
+else
+  cf_charsets=
+fi;
+
+if test -n "$cf_charsets" ; then
+	echo "$as_me:25498: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+	cat >>confdefs.h <<\EOF
+#define ALL_CHARSETS 0
+EOF
+
+	cf_min_charsets=us-ascii,iso-8859-1,utf-8
+	if test "$cf_charsets" = "no" ; then
+		cf_charsets=minimal
+	fi
+	if test "$cf_charsets" = "minimal" ; then
+		test -n "$verbose" && echo "	using minimal list of charsets: $cf_min_charsets" 1>&6
+
+echo "${as_me:-configure}:25511: testing using minimal list of charsets: $cf_min_charsets ..." 1>&5
+
+	fi
+	cf_charsets=`echo $cf_charsets | sed -e "s/minimal/$cf_min_charsets/g" -e 's/,/ /g'`
+	for cf_charset in $cf_charsets
+	do
+		cf_def_charset=`echo $cf_charset | sed -e 's/+/_/g' -e 's/-/_/g'`
+		cf_use_charset=no
+		# check charsets that are defined via .tbl files
+		if ( egrep '^M'$cf_charset'$' $srcdir/src/chrtrans/*.tbl 2>/dev/null >/dev/null )
+		then
+			cf_use_charset=yes
+		# check charsets that are "built-in"
+		else
+			for cf_tst_charset in big5 euc_cn euc_jp euc_kr shift_jis x_transparent
+			do
+				if test "$cf_tst_charset" = "$cf_def_charset"
+				then
+					cf_use_charset=yes
+					break
+				fi
+			done
+		fi
+		if test $cf_use_charset=yes
+		then
+			test -n "$verbose" && echo "	found $cf_charset" 1>&6
+
+echo "${as_me:-configure}:25538: testing found $cf_charset ..." 1>&5
+
+			CHARSET_DEFS="-DNO_CHARSET_${cf_def_charset}=0 $CHARSET_DEFS"
+		else
+			test -n "$verbose" && echo "	not found $cf_charset" 1>&6
+
+echo "${as_me:-configure}:25544: testing not found $cf_charset ..." 1>&5
+
+		fi
+	done
+else
+	echo "$as_me:25549: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+echo "$as_me:25553: checking for ANSI C header files" >&5
+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
+if test "${ac_cv_header_stdc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 25559 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <float.h>
+
+_ACEOF
+if { (eval echo "$as_me:25567: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:25573: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  ac_cv_header_stdc=yes
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  ac_cv_header_stdc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+
+if test $ac_cv_header_stdc = yes; then
+  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 25595 "configure"
+#include "confdefs.h"
+#include <string.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "memchr" >/dev/null 2>&1; then
+  :
+else
+  ac_cv_header_stdc=no
+fi
+rm -rf conftest*
+
+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 <<_ACEOF
+#line 25613 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "free" >/dev/null 2>&1; then
+  :
+else
+  ac_cv_header_stdc=no
+fi
+rm -rf conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+  if test "$cross_compiling" = yes; then
+  :
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 25634 "configure"
+#include "confdefs.h"
+#include <ctype.h>
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) (('a' <= (c) && (c) <= 'i') \
+                     || ('j' <= (c) && (c) <= 'r') \
+                     || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+int
+main ()
+{
+  int i;
+  for (i = 0; i < 256; i++)
+    if (XOR (islower (i), ISLOWER (i))
+        || toupper (i) != TOUPPER (i))
+      $ac_main_return(2);
+  $ac_main_return (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:25660: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:25663: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:25665: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:25668: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_header_stdc=no
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+fi
+echo "$as_me:25681: result: $ac_cv_header_stdc" >&5
+echo "${ECHO_T}$ac_cv_header_stdc" >&6
+if test $ac_cv_header_stdc = yes; then
+
+cat >>confdefs.h <<\EOF
+#define STDC_HEADERS 1
+EOF
+
+fi
+
+echo "$as_me:25691: checking whether time.h and sys/time.h may both be included" >&5
+echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6
+if test "${ac_cv_header_time+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 25697 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+#include <sys/time.h>
+#include <time.h>
+
+int
+main ()
+{
+if ((struct tm *) 0)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:25713: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:25716: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:25719: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:25722: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_header_time=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_header_time=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:25732: result: $ac_cv_header_time" >&5
+echo "${ECHO_T}$ac_cv_header_time" >&6
+if test $ac_cv_header_time = yes; then
+
+cat >>confdefs.h <<\EOF
+#define TIME_WITH_SYS_TIME 1
+EOF
+
+fi
+
+ac_header_dirent=no
+for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
+  as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
+echo "$as_me:25745: checking for $ac_hdr that defines DIR" >&5
+echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 25751 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+#include <$ac_hdr>
+
+int
+main ()
+{
+if ((DIR *) 0)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:25766: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:25769: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:25772: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:25775: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_Header=no"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:25785: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
+EOF
+
+ac_header_dirent=$ac_hdr; break
+fi
+
+done
+# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
+if test $ac_header_dirent = dirent.h; then
+  echo "$as_me:25798: checking for opendir in -ldir" >&5
+echo $ECHO_N "checking for opendir in -ldir... $ECHO_C" >&6
+if test "${ac_cv_lib_dir_opendir+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldir  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 25806 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char opendir ();
+int
+main ()
+{
+opendir ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:25825: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:25828: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:25831: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:25834: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dir_opendir=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dir_opendir=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:25845: result: $ac_cv_lib_dir_opendir" >&5
+echo "${ECHO_T}$ac_cv_lib_dir_opendir" >&6
+if test $ac_cv_lib_dir_opendir = yes; then
+  LIBS="$LIBS -ldir"
+fi
+
+else
+  echo "$as_me:25852: checking for opendir in -lx" >&5
+echo $ECHO_N "checking for opendir in -lx... $ECHO_C" >&6
+if test "${ac_cv_lib_x_opendir+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lx  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 25860 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char opendir ();
+int
+main ()
+{
+opendir ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:25879: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:25882: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:25885: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:25888: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_x_opendir=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_x_opendir=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:25899: result: $ac_cv_lib_x_opendir" >&5
+echo "${ECHO_T}$ac_cv_lib_x_opendir" >&6
+if test $ac_cv_lib_x_opendir = yes; then
+  LIBS="$LIBS -lx"
+fi
+
+fi
+
+for ac_header in \
+	arpa/inet.h \
+	fcntl.h \
+	limits.h \
+	stdlib.h \
+	string.h \
+	sys/fcntl.h \
+	sys/filio.h \
+	sys/ioctl.h \
+	sys/param.h \
+	sys/timeb.h \
+	sys/time.h \
+	syslog.h \
+	termio.h \
+	termios.h \
+	unistd.h \
+	vfork.h \
+
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:25927: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 25933 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:25937: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:25943: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:25962: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+echo "$as_me:25972: checking termio.h and termios.h" >&5
+echo $ECHO_N "checking termio.h and termios.h... $ECHO_C" >&6
+if test "${cf_cv_termio_and_termios+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cat >conftest.$ac_ext <<_ACEOF
+#line 25979 "configure"
+#include "confdefs.h"
+
+#if HAVE_TERMIO_H
+#include <termio.h>
+#endif
+#if HAVE_TERMIOS_H
+#include <termios.h>
+#endif
+int
+main ()
+{
+putchar (0x0a)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:25997: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26000: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26003: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26006: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_termio_and_termios=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_termio_and_termios=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+
+echo "$as_me:26017: result: $cf_cv_termio_and_termios" >&5
+echo "${ECHO_T}$cf_cv_termio_and_termios" >&6
+test $cf_cv_termio_and_termios = no && cat >>confdefs.h <<\EOF
+#define TERMIO_AND_TERMIOS 1
+EOF
+
+echo "$as_me:26023: checking for sigaction and structs" >&5
+echo $ECHO_N "checking for sigaction and structs... $ECHO_C" >&6
+if test "${cf_cv_func_sigaction+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 26030 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <signal.h>
+int
+main ()
+{
+struct sigaction act;
+	act.sa_handler = SIG_DFL;
+#ifdef SA_RESTART
+	act.sa_flags |= SA_RESTART;
+#endif /* SA_RESTART */
+	sigaction(1, &act, 0);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:26050: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:26053: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:26056: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26059: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_func_sigaction=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_func_sigaction=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:26070: result: $cf_cv_func_sigaction" >&5
+echo "${ECHO_T}$cf_cv_func_sigaction" >&6
+test "$cf_cv_func_sigaction" = yes && cat >>confdefs.h <<\EOF
+#define HAVE_SIGACTION 1
+EOF
+
+for ac_header in sys/wait.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:26079: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26085 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:26089: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:26095: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:26114: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+cf_wait_headers="#include <sys/types.h>
+"
+if test $ac_cv_header_sys_wait_h = yes; then
+cf_wait_headers="$cf_wait_headers
+#include <sys/wait.h>
+"
+else
+
+for ac_header in wait.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:26135: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26141 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:26145: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:26151: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:26170: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+for ac_header in waitstatus.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:26183: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26189 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:26193: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:26199: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:26218: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+if test $ac_cv_header_wait_h = yes; then
+cf_wait_headers="$cf_wait_headers
+#include <wait.h>
+"
+fi
+if test $ac_cv_header_waitstatus_h = yes; then
+cf_wait_headers="$cf_wait_headers
+#include <waitstatus.h>
+"
+fi
+fi
+
+echo "$as_me:26240: checking for union wait" >&5
+echo $ECHO_N "checking for union wait... $ECHO_C" >&6
+if test "${cf_cv_type_unionwait+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 26247 "configure"
+#include "confdefs.h"
+$cf_wait_headers
+int
+main ()
+{
+int x;
+	 int y = WEXITSTATUS(x);
+	 int z = WTERMSIG(x);
+	 wait(&x);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:26263: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:26266: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:26269: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26272: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_type_unionwait=no
+	 echo compiles ok w/o union wait 1>&5
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 26282 "configure"
+#include "confdefs.h"
+$cf_wait_headers
+int
+main ()
+{
+union wait x;
+#ifdef WEXITSTATUS
+	 int y = WEXITSTATUS(x);
+#endif
+#ifdef WTERMSIG
+	 int z = WTERMSIG(x);
+#endif
+	 wait(&x);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:26302: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:26305: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:26308: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26311: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_type_unionwait=yes
+	 echo compiles ok with union wait and possibly macros too 1>&5
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_type_unionwait=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+
+echo "$as_me:26326: result: $cf_cv_type_unionwait" >&5
+echo "${ECHO_T}$cf_cv_type_unionwait" >&6
+test $cf_cv_type_unionwait = yes && cat >>confdefs.h <<\EOF
+#define HAVE_TYPE_UNIONWAIT 1
+EOF
+
+if test $cf_cv_type_unionwait = yes; then
+
+	echo "$as_me:26334: checking if union wait can be used as wait-arg" >&5
+echo $ECHO_N "checking if union wait can be used as wait-arg... $ECHO_C" >&6
+	if test "${cf_cv_arg_union_wait+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+		cat >conftest.$ac_ext <<_ACEOF
+#line 26341 "configure"
+#include "confdefs.h"
+$cf_wait_headers
+int
+main ()
+{
+union wait x; wait(&x)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:26353: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26356: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26359: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26362: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_arg_union_wait=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_arg_union_wait=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+
+	echo "$as_me:26374: result: $cf_cv_arg_union_wait" >&5
+echo "${ECHO_T}$cf_cv_arg_union_wait" >&6
+	test $cf_cv_arg_union_wait = yes && cat >>confdefs.h <<\EOF
+#define WAIT_USES_UNION 1
+EOF
+
+	echo "$as_me:26380: checking if union wait can be used as waitpid-arg" >&5
+echo $ECHO_N "checking if union wait can be used as waitpid-arg... $ECHO_C" >&6
+	if test "${cf_cv_arg_union_waitpid+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+		cat >conftest.$ac_ext <<_ACEOF
+#line 26387 "configure"
+#include "confdefs.h"
+$cf_wait_headers
+int
+main ()
+{
+union wait x; waitpid(0, &x, 0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:26399: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26402: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26405: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26408: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_arg_union_waitpid=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_arg_union_waitpid=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+
+	echo "$as_me:26420: result: $cf_cv_arg_union_waitpid" >&5
+echo "${ECHO_T}$cf_cv_arg_union_waitpid" >&6
+	test $cf_cv_arg_union_waitpid = yes && cat >>confdefs.h <<\EOF
+#define WAITPID_USES_UNION 1
+EOF
+
+fi
+
+echo "$as_me:26428: checking for uid_t in sys/types.h" >&5
+echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6
+if test "${ac_cv_type_uid_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26434 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "uid_t" >/dev/null 2>&1; then
+  ac_cv_type_uid_t=yes
+else
+  ac_cv_type_uid_t=no
+fi
+rm -rf conftest*
+
+fi
+echo "$as_me:26448: result: $ac_cv_type_uid_t" >&5
+echo "${ECHO_T}$ac_cv_type_uid_t" >&6
+if test $ac_cv_type_uid_t = no; then
+
+cat >>confdefs.h <<\EOF
+#define uid_t int
+EOF
+
+cat >>confdefs.h <<\EOF
+#define gid_t int
+EOF
+
+fi
+
+echo "$as_me:26462: checking type of array argument to getgroups" >&5
+echo $ECHO_N "checking type of array argument to getgroups... $ECHO_C" >&6
+if test "${ac_cv_type_getgroups+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$cross_compiling" = yes; then
+  ac_cv_type_getgroups=cross
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26471 "configure"
+#include "confdefs.h"
+/* Thanks to Mike Rendell for this test.  */
+#include <sys/types.h>
+#define NGID 256
+#undef MAX
+#define MAX(x, y) ((x) > (y) ? (x) : (y))
+
+int
+main ()
+{
+  gid_t gidset[NGID];
+  int i, n;
+  union { gid_t gval; long lval; }  val;
+
+  val.lval = -1;
+  for (i = 0; i < NGID; i++)
+    gidset[i] = val.gval;
+  n = getgroups (sizeof (gidset) / MAX (sizeof (int), sizeof (gid_t)) - 1,
+                 gidset);
+  /* Exit non-zero if getgroups seems to require an array of ints.  This
+     happens when gid_t is short but getgroups modifies an array of ints.  */
+  $ac_main_return ((n > 0 && gidset[n] != val.gval) ? 1 : 0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:26497: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:26500: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:26502: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26505: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_getgroups=gid_t
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_getgroups=int
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+if test $ac_cv_type_getgroups = cross; then
+        cat >conftest.$ac_ext <<_ACEOF
+#line 26518 "configure"
+#include "confdefs.h"
+#include <unistd.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "getgroups.*int.*gid_t" >/dev/null 2>&1; then
+  ac_cv_type_getgroups=gid_t
+else
+  ac_cv_type_getgroups=int
+fi
+rm -rf conftest*
+
+fi
+fi
+echo "$as_me:26533: result: $ac_cv_type_getgroups" >&5
+echo "${ECHO_T}$ac_cv_type_getgroups" >&6
+
+cat >>confdefs.h <<EOF
+#define GETGROUPS_T $ac_cv_type_getgroups
+EOF
+
+echo "$as_me:26540: checking for off_t" >&5
+echo $ECHO_N "checking for off_t... $ECHO_C" >&6
+if test "${ac_cv_type_off_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26546 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((off_t *) 0)
+  return 0;
+if (sizeof (off_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:26561: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26564: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26567: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26570: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_off_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_off_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:26580: result: $ac_cv_type_off_t" >&5
+echo "${ECHO_T}$ac_cv_type_off_t" >&6
+if test $ac_cv_type_off_t = yes; then
+  :
+else
+
+cat >>confdefs.h <<EOF
+#define off_t long
+EOF
+
+fi
+
+echo "$as_me:26592: checking for pid_t" >&5
+echo $ECHO_N "checking for pid_t... $ECHO_C" >&6
+if test "${ac_cv_type_pid_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26598 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((pid_t *) 0)
+  return 0;
+if (sizeof (pid_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:26613: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26616: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26619: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26622: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_pid_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_pid_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:26632: result: $ac_cv_type_pid_t" >&5
+echo "${ECHO_T}$ac_cv_type_pid_t" >&6
+if test $ac_cv_type_pid_t = yes; then
+  :
+else
+
+cat >>confdefs.h <<EOF
+#define pid_t int
+EOF
+
+fi
+
+echo "$as_me:26644: checking for uid_t in sys/types.h" >&5
+echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6
+if test "${ac_cv_type_uid_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26650 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "uid_t" >/dev/null 2>&1; then
+  ac_cv_type_uid_t=yes
+else
+  ac_cv_type_uid_t=no
+fi
+rm -rf conftest*
+
+fi
+echo "$as_me:26664: result: $ac_cv_type_uid_t" >&5
+echo "${ECHO_T}$ac_cv_type_uid_t" >&6
+if test $ac_cv_type_uid_t = no; then
+
+cat >>confdefs.h <<\EOF
+#define uid_t int
+EOF
+
+cat >>confdefs.h <<\EOF
+#define gid_t int
+EOF
+
+fi
+
+echo "$as_me:26678: checking for mode_t" >&5
+echo $ECHO_N "checking for mode_t... $ECHO_C" >&6
+if test "${ac_cv_type_mode_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26684 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((mode_t *) 0)
+  return 0;
+if (sizeof (mode_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:26699: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26702: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26705: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26708: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_mode_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_mode_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:26718: result: $ac_cv_type_mode_t" >&5
+echo "${ECHO_T}$ac_cv_type_mode_t" >&6
+if test $ac_cv_type_mode_t = yes; then
+  :
+else
+
+cat >>confdefs.h <<EOF
+#define mode_t int
+EOF
+
+fi
+
+	echo "$as_me:26730: checking for ssize_t" >&5
+echo $ECHO_N "checking for ssize_t... $ECHO_C" >&6
+if test "${ac_cv_type_ssize_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26736 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((ssize_t *) 0)
+  return 0;
+if (sizeof (ssize_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:26751: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26754: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26757: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26760: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_ssize_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_ssize_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:26770: result: $ac_cv_type_ssize_t" >&5
+echo "${ECHO_T}$ac_cv_type_ssize_t" >&6
+if test $ac_cv_type_ssize_t = yes; then
+  ac_cv_type_ssize_t=yes
+else
+  ac_cv_type_ssize_t=no
+fi
+
+	if test $ac_cv_type_ssize_t = no; then
+	cat >>confdefs.h <<\EOF
+#define ssize_t int
+EOF
+
+fi
+
+	echo "$as_me:26785: checking for socklen_t" >&5
+echo $ECHO_N "checking for socklen_t... $ECHO_C" >&6
+if test "${ac_cv_type_socklen_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26791 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <sys/socket.h>
+
+int
+main ()
+{
+if ((socklen_t *) 0)
+  return 0;
+if (sizeof (socklen_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:26809: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26812: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26815: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26818: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_socklen_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_socklen_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:26828: result: $ac_cv_type_socklen_t" >&5
+echo "${ECHO_T}$ac_cv_type_socklen_t" >&6
+if test $ac_cv_type_socklen_t = yes; then
+  ac_cv_type_socklen_t=yes
+else
+  ac_cv_type_socklen_t=no
+fi
+
+	if test $ac_cv_type_socklen_t = no; then
+	cat >>confdefs.h <<\EOF
+#define socklen_t int
+EOF
+
+fi
+
+echo "$as_me:26843: checking for long long type" >&5
+echo $ECHO_N "checking for long long type... $ECHO_C" >&6
+if test "${cf_cv_type_long_long+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_CFEOF
+#include "confdefs.h"
+int
+main (void)
+{
+	long long foo = 123456789123456789LL;
+	return (foo == 0);
+}
+_CFEOF
+	(eval $ac_compile) 2>conftest.err
+	ac_status=$?
+	if test $ac_status = 0 && test -s conftest.err
+	then
+		fgrep warning conftest.err >/dev/null 2>&1 && ac_status=1
+	fi
+	if test $ac_status != 0
+	then
+		cf_cv_type_long_long=no
+	else
+		cf_cv_type_long_long=yes
+	fi
+	test -s conftest.err && cat conftest.err >&5
+	rm -f conftest*
+
+fi
+echo "$as_me:26874: result: $cf_cv_type_long_long" >&5
+echo "${ECHO_T}$cf_cv_type_long_long" >&6
+
+if test "$cf_cv_type_long_long" = yes ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_LONG_LONG 1
+EOF
+
+fi
+
+echo "$as_me:26884: checking for tm.tm_gmtoff" >&5
+echo $ECHO_N "checking for tm.tm_gmtoff... $ECHO_C" >&6
+if test "${cf_cv_tm_gmtoff+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 26891 "configure"
+#include "confdefs.h"
+
+#ifdef TIME_WITH_SYS_TIME
+#	include <sys/time.h>
+#	include <time.h>
+#else
+#	ifdef HAVE_SYS_TIME_H
+#		include <sys/time.h>
+#	else
+#		include <time.h>
+#	endif
+#endif
+
+int
+main ()
+{
+
+	struct tm foo;
+	long bar = foo.tm_gmtoff
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:26916: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26919: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26922: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26925: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_tm_gmtoff=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_tm_gmtoff=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+
+echo "$as_me:26936: result: $cf_cv_tm_gmtoff" >&5
+echo "${ECHO_T}$cf_cv_tm_gmtoff" >&6
+test $cf_cv_tm_gmtoff = no && cat >>confdefs.h <<\EOF
+#define DONT_HAVE_TM_GMTOFF 1
+EOF
+
+echo "$as_me:26942: checking for int" >&5
+echo $ECHO_N "checking for int... $ECHO_C" >&6
+if test "${ac_cv_type_int+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 26948 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((int *) 0)
+  return 0;
+if (sizeof (int))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:26963: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:26966: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:26969: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:26972: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_int=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_int=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:26982: result: $ac_cv_type_int" >&5
+echo "${ECHO_T}$ac_cv_type_int" >&6
+
+echo "$as_me:26985: checking size of int" >&5
+echo $ECHO_N "checking size of int... $ECHO_C" >&6
+if test "${ac_cv_sizeof_int+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$ac_cv_type_int" = yes; then
+  if test "$cross_compiling" = yes; then
+  # Depending upon the size, compute the lo and hi bounds.
+cat >conftest.$ac_ext <<_ACEOF
+#line 26994 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (int)) >= 0)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27006: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27009: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27012: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27015: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_lo=0 ac_mid=0
+  while :; do
+    cat >conftest.$ac_ext <<_ACEOF
+#line 27020 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (int)) <= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27032: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27035: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27038: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27041: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_hi=$ac_mid; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_lo=`expr $ac_mid + 1`; ac_mid=`expr 2 '*' $ac_mid + 1`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  done
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_hi=-1 ac_mid=-1
+  while :; do
+    cat >conftest.$ac_ext <<_ACEOF
+#line 27057 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (int)) >= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27069: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27072: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27075: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27078: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_lo=$ac_mid; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_hi=`expr $ac_mid - 1`; ac_mid=`expr 2 '*' $ac_mid`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  done
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27094 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (int)) <= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27106: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27109: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27112: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27115: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_hi=$ac_mid
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_lo=`expr $ac_mid + 1`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+ac_cv_sizeof_int=$ac_lo
+else
+  if test "$cross_compiling" = yes; then
+  { { echo "$as_me:27128: error: cannot run test program while cross compiling" >&5
+echo "$as_me: error: cannot run test program while cross compiling" >&2;}
+   { (exit 1); exit 1; }; }
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27133 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+FILE *f = fopen ("conftest.val", "w");
+if (!f)
+  $ac_main_return (1);
+fprintf (f, "%d", (sizeof (int)));
+fclose (f);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:27149: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:27152: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:27154: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27157: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_sizeof_int=`cat conftest.val`
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+rm -f conftest.val
+else
+  ac_cv_sizeof_int=0
+fi
+fi
+echo "$as_me:27173: result: $ac_cv_sizeof_int" >&5
+echo "${ECHO_T}$ac_cv_sizeof_int" >&6
+cat >>confdefs.h <<EOF
+#define SIZEOF_INT $ac_cv_sizeof_int
+EOF
+
+echo "$as_me:27179: checking for long" >&5
+echo $ECHO_N "checking for long... $ECHO_C" >&6
+if test "${ac_cv_type_long+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27185 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((long *) 0)
+  return 0;
+if (sizeof (long))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27200: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27203: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27206: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27209: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_long=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_long=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:27219: result: $ac_cv_type_long" >&5
+echo "${ECHO_T}$ac_cv_type_long" >&6
+
+echo "$as_me:27222: checking size of long" >&5
+echo $ECHO_N "checking size of long... $ECHO_C" >&6
+if test "${ac_cv_sizeof_long+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$ac_cv_type_long" = yes; then
+  if test "$cross_compiling" = yes; then
+  # Depending upon the size, compute the lo and hi bounds.
+cat >conftest.$ac_ext <<_ACEOF
+#line 27231 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (long)) >= 0)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27243: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27246: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27249: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27252: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_lo=0 ac_mid=0
+  while :; do
+    cat >conftest.$ac_ext <<_ACEOF
+#line 27257 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (long)) <= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27269: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27272: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27275: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27278: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_hi=$ac_mid; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_lo=`expr $ac_mid + 1`; ac_mid=`expr 2 '*' $ac_mid + 1`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  done
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_hi=-1 ac_mid=-1
+  while :; do
+    cat >conftest.$ac_ext <<_ACEOF
+#line 27294 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (long)) >= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27306: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27309: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27312: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27315: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_lo=$ac_mid; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_hi=`expr $ac_mid - 1`; ac_mid=`expr 2 '*' $ac_mid`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  done
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27331 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (long)) <= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27343: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27346: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27349: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27352: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_hi=$ac_mid
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_lo=`expr $ac_mid + 1`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+ac_cv_sizeof_long=$ac_lo
+else
+  if test "$cross_compiling" = yes; then
+  { { echo "$as_me:27365: error: cannot run test program while cross compiling" >&5
+echo "$as_me: error: cannot run test program while cross compiling" >&2;}
+   { (exit 1); exit 1; }; }
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27370 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+FILE *f = fopen ("conftest.val", "w");
+if (!f)
+  $ac_main_return (1);
+fprintf (f, "%d", (sizeof (long)));
+fclose (f);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:27386: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:27389: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:27391: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27394: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_sizeof_long=`cat conftest.val`
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+rm -f conftest.val
+else
+  ac_cv_sizeof_long=0
+fi
+fi
+echo "$as_me:27410: result: $ac_cv_sizeof_long" >&5
+echo "${ECHO_T}$ac_cv_sizeof_long" >&6
+cat >>confdefs.h <<EOF
+#define SIZEOF_LONG $ac_cv_sizeof_long
+EOF
+
+echo "$as_me:27416: checking for off_t" >&5
+echo $ECHO_N "checking for off_t... $ECHO_C" >&6
+if test "${ac_cv_type_off_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27422 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((off_t *) 0)
+  return 0;
+if (sizeof (off_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27437: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27440: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27443: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27446: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_off_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_off_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:27456: result: $ac_cv_type_off_t" >&5
+echo "${ECHO_T}$ac_cv_type_off_t" >&6
+
+echo "$as_me:27459: checking size of off_t" >&5
+echo $ECHO_N "checking size of off_t... $ECHO_C" >&6
+if test "${ac_cv_sizeof_off_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$ac_cv_type_off_t" = yes; then
+  if test "$cross_compiling" = yes; then
+  # Depending upon the size, compute the lo and hi bounds.
+cat >conftest.$ac_ext <<_ACEOF
+#line 27468 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (off_t)) >= 0)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27480: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27483: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27486: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27489: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_lo=0 ac_mid=0
+  while :; do
+    cat >conftest.$ac_ext <<_ACEOF
+#line 27494 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (off_t)) <= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27506: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27509: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27512: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27515: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_hi=$ac_mid; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_lo=`expr $ac_mid + 1`; ac_mid=`expr 2 '*' $ac_mid + 1`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  done
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_hi=-1 ac_mid=-1
+  while :; do
+    cat >conftest.$ac_ext <<_ACEOF
+#line 27531 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (off_t)) >= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27543: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27546: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27549: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27552: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_lo=$ac_mid; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_hi=`expr $ac_mid - 1`; ac_mid=`expr 2 '*' $ac_mid`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  done
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27568 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (off_t)) <= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27580: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27583: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27586: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27589: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_hi=$ac_mid
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_lo=`expr $ac_mid + 1`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+ac_cv_sizeof_off_t=$ac_lo
+else
+  if test "$cross_compiling" = yes; then
+  { { echo "$as_me:27602: error: cannot run test program while cross compiling" >&5
+echo "$as_me: error: cannot run test program while cross compiling" >&2;}
+   { (exit 1); exit 1; }; }
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27607 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+FILE *f = fopen ("conftest.val", "w");
+if (!f)
+  $ac_main_return (1);
+fprintf (f, "%d", (sizeof (off_t)));
+fclose (f);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:27623: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:27626: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:27628: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27631: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_sizeof_off_t=`cat conftest.val`
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+rm -f conftest.val
+else
+  ac_cv_sizeof_off_t=0
+fi
+fi
+echo "$as_me:27647: result: $ac_cv_sizeof_off_t" >&5
+echo "${ECHO_T}$ac_cv_sizeof_off_t" >&6
+cat >>confdefs.h <<EOF
+#define SIZEOF_OFF_T $ac_cv_sizeof_off_t
+EOF
+
+echo "$as_me:27653: checking for time_t" >&5
+echo $ECHO_N "checking for time_t... $ECHO_C" >&6
+if test "${ac_cv_type_time_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27659 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((time_t *) 0)
+  return 0;
+if (sizeof (time_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27674: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27677: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27680: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27683: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_time_t=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_time_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:27693: result: $ac_cv_type_time_t" >&5
+echo "${ECHO_T}$ac_cv_type_time_t" >&6
+
+echo "$as_me:27696: checking size of time_t" >&5
+echo $ECHO_N "checking size of time_t... $ECHO_C" >&6
+if test "${ac_cv_sizeof_time_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$ac_cv_type_time_t" = yes; then
+  if test "$cross_compiling" = yes; then
+  # Depending upon the size, compute the lo and hi bounds.
+cat >conftest.$ac_ext <<_ACEOF
+#line 27705 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (time_t)) >= 0)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27717: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27720: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27723: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27726: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_lo=0 ac_mid=0
+  while :; do
+    cat >conftest.$ac_ext <<_ACEOF
+#line 27731 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (time_t)) <= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27743: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27746: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27749: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27752: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_hi=$ac_mid; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_lo=`expr $ac_mid + 1`; ac_mid=`expr 2 '*' $ac_mid + 1`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  done
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_hi=-1 ac_mid=-1
+  while :; do
+    cat >conftest.$ac_ext <<_ACEOF
+#line 27768 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (time_t)) >= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27780: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27783: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27786: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27789: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_lo=$ac_mid; break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_hi=`expr $ac_mid - 1`; ac_mid=`expr 2 '*' $ac_mid`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  done
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27805 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+int _array_ [1 - 2 * !((sizeof (time_t)) <= $ac_mid)]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:27817: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:27820: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:27823: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27826: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_hi=$ac_mid
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_lo=`expr $ac_mid + 1`
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+ac_cv_sizeof_time_t=$ac_lo
+else
+  if test "$cross_compiling" = yes; then
+  { { echo "$as_me:27839: error: cannot run test program while cross compiling" >&5
+echo "$as_me: error: cannot run test program while cross compiling" >&2;}
+   { (exit 1); exit 1; }; }
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27844 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+FILE *f = fopen ("conftest.val", "w");
+if (!f)
+  $ac_main_return (1);
+fprintf (f, "%d", (sizeof (time_t)));
+fclose (f);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:27860: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:27863: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:27865: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27868: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_sizeof_time_t=`cat conftest.val`
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+rm -f conftest.val
+else
+  ac_cv_sizeof_time_t=0
+fi
+fi
+echo "$as_me:27884: result: $ac_cv_sizeof_time_t" >&5
+echo "${ECHO_T}$ac_cv_sizeof_time_t" >&6
+cat >>confdefs.h <<EOF
+#define SIZEOF_TIME_T $ac_cv_sizeof_time_t
+EOF
+
+# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
+# for constant arguments.  Useless!
+echo "$as_me:27892: checking for working alloca.h" >&5
+echo $ECHO_N "checking for working alloca.h... $ECHO_C" >&6
+if test "${ac_cv_working_alloca_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27898 "configure"
+#include "confdefs.h"
+#include <alloca.h>
+int
+main ()
+{
+char *p = (char *) alloca (2 * sizeof (int));
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:27910: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:27913: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:27916: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27919: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_working_alloca_h=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_working_alloca_h=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:27929: result: $ac_cv_working_alloca_h" >&5
+echo "${ECHO_T}$ac_cv_working_alloca_h" >&6
+if test $ac_cv_working_alloca_h = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_ALLOCA_H 1
+EOF
+
+fi
+
+echo "$as_me:27939: checking for alloca" >&5
+echo $ECHO_N "checking for alloca... $ECHO_C" >&6
+if test "${ac_cv_func_alloca_works+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 27945 "configure"
+#include "confdefs.h"
+#ifdef __GNUC__
+# define alloca __builtin_alloca
+#else
+# ifdef _MSC_VER
+#  include <malloc.h>
+#  define alloca _alloca
+# else
+#  if HAVE_ALLOCA_H
+#   include <alloca.h>
+#  else
+#   ifdef _AIX
+ #pragma alloca
+#   else
+#    ifndef alloca /* predefined by HP cc +Olibcalls */
+char *alloca ();
+#    endif
+#   endif
+#  endif
+# endif
+#endif
+
+int
+main ()
+{
+char *p = (char *) alloca (1);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:27977: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:27980: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:27983: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:27986: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_alloca_works=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_alloca_works=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:27996: result: $ac_cv_func_alloca_works" >&5
+echo "${ECHO_T}$ac_cv_func_alloca_works" >&6
+
+if test $ac_cv_func_alloca_works = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_ALLOCA 1
+EOF
+
+else
+  # The SVR3 libPW and SVR4 libucb both contain incompatible functions
+# that cause trouble.  Some versions do not even contain alloca or
+# contain a buggy version.  If you still want to use their alloca,
+# use ar to extract alloca.o from them instead of compiling alloca.c.
+
+ALLOCA=alloca.$ac_objext
+
+cat >>confdefs.h <<\EOF
+#define C_ALLOCA 1
+EOF
+
+echo "$as_me:28017: checking whether \`alloca.c' needs Cray hooks" >&5
+echo $ECHO_N "checking whether \`alloca.c' needs Cray hooks... $ECHO_C" >&6
+if test "${ac_cv_os_cray+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 28023 "configure"
+#include "confdefs.h"
+#if defined(CRAY) && ! defined(CRAY2)
+webecray
+#else
+wenotbecray
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "webecray" >/dev/null 2>&1; then
+  ac_cv_os_cray=yes
+else
+  ac_cv_os_cray=no
+fi
+rm -rf conftest*
+
+fi
+echo "$as_me:28041: result: $ac_cv_os_cray" >&5
+echo "${ECHO_T}$ac_cv_os_cray" >&6
+if test $ac_cv_os_cray = yes; then
+  for ac_func in _getb67 GETB67 getb67; do
+    as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:28046: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 28052 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28083: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28086: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28089: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28092: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:28102: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+
+cat >>confdefs.h <<EOF
+#define CRAY_STACKSEG_END $ac_func
+EOF
+
+    break
+fi
+
+  done
+fi
+
+echo "$as_me:28116: checking stack direction for C alloca" >&5
+echo $ECHO_N "checking stack direction for C alloca... $ECHO_C" >&6
+if test "${ac_cv_c_stack_direction+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$cross_compiling" = yes; then
+  ac_cv_c_stack_direction=0
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 28125 "configure"
+#include "confdefs.h"
+int
+find_stack_direction ()
+{
+  static char *addr = 0;
+  auto char dummy;
+  if (addr == 0)
+    {
+      addr = &dummy;
+      return find_stack_direction ();
+    }
+  else
+    return (&dummy > addr) ? 1 : -1;
+}
+
+int
+main ()
+{
+  $ac_main_return (find_stack_direction () < 0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:28148: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28151: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:28153: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28156: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_c_stack_direction=1
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_c_stack_direction=-1
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+echo "$as_me:28168: result: $ac_cv_c_stack_direction" >&5
+echo "${ECHO_T}$ac_cv_c_stack_direction" >&6
+
+cat >>confdefs.h <<EOF
+#define STACK_DIRECTION $ac_cv_c_stack_direction
+EOF
+
+fi
+
+for ac_header in unistd.h vfork.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:28180: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 28186 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:28190: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:28196: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:28215: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+for ac_func in fork vfork
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:28228: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 28234 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28265: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28268: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28271: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28274: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:28284: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+ac_cv_func_fork_works=$ac_cv_func_fork
+if test "x$ac_cv_func_fork" = xyes; then
+  echo "$as_me:28296: checking for working fork" >&5
+echo $ECHO_N "checking for working fork... $ECHO_C" >&6
+if test "${ac_cv_func_fork_works+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$cross_compiling" = yes; then
+  ac_cv_func_fork_works=cross
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* By Rüdiger Kuhlmann. */
+      #include <sys/types.h>
+      #if HAVE_UNISTD_H
+      # include <unistd.h>
+      #endif
+      /* Some systems only have a dummy stub for fork() */
+      int main ()
+      {
+        if (fork() < 0)
+          $ac_main_return (1);
+        $ac_main_return (0);
+      }
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:28319: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28322: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:28324: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28327: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_fork_works=yes
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_fork_works=no
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+echo "$as_me:28339: result: $ac_cv_func_fork_works" >&5
+echo "${ECHO_T}$ac_cv_func_fork_works" >&6
+
+fi
+if test "x$ac_cv_func_fork_works" = xcross; then
+  case $host in
+    *-*-amigaos* | *-*-msdosdjgpp*)
+      # Override, as these systems have only a dummy fork() stub
+      ac_cv_func_fork_works=no
+      ;;
+    *)
+      ac_cv_func_fork_works=yes
+      ;;
+  esac
+  { echo "$as_me:28353: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&5
+echo "$as_me: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&2;}
+fi
+ac_cv_func_vfork_works=$ac_cv_func_vfork
+if test "x$ac_cv_func_vfork" = xyes; then
+  echo "$as_me:28358: checking for working vfork" >&5
+echo $ECHO_N "checking for working vfork... $ECHO_C" >&6
+if test "${ac_cv_func_vfork_works+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test "$cross_compiling" = yes; then
+  ac_cv_func_vfork_works=cross
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 28367 "configure"
+#include "confdefs.h"
+/* Thanks to Paul Eggert for this test.  */
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+#if HAVE_VFORK_H
+# include <vfork.h>
+#endif
+/* On some sparc systems, changes by the child to local and incoming
+   argument registers are propagated back to the parent.  The compiler
+   is told about this with #include <vfork.h>, but some compilers
+   (e.g. gcc -O) don't grok <vfork.h>.  Test for this by using a
+   static variable whose address is put into a register that is
+   clobbered by the vfork.  */
+static
+#ifdef __cplusplus
+sparc_address_test (int arg)
+# else
+sparc_address_test (arg) int arg;
+#endif
+{
+  static pid_t child;
+  if (!child) {
+    child = vfork ();
+    if (child < 0) {
+      perror ("vfork");
+      _exit(2);
+    }
+    if (!child) {
+      arg = getpid();
+      write(-1, "", 0);
+      _exit (arg);
+    }
+  }
+}
+
+int
+main ()
+{
+  pid_t parent = getpid ();
+  pid_t child;
+
+  sparc_address_test ();
+
+  child = vfork ();
+
+  if (child == 0) {
+    /* Here is another test for sparc vfork register problems.  This
+       test uses lots of local variables, at least as many local
+       variables as main has allocated so far including compiler
+       temporaries.  4 locals are enough for gcc 1.40.3 on a Solaris
+       4.1.3 sparc, but we use 8 to be safe.  A buggy compiler should
+       reuse the register of parent for one of the local variables,
+       since it will think that parent can't possibly be used any more
+       in this routine.  Assigning to the local variable will thus
+       munge parent in the parent process.  */
+    pid_t
+      p = getpid(), p1 = getpid(), p2 = getpid(), p3 = getpid(),
+      p4 = getpid(), p5 = getpid(), p6 = getpid(), p7 = getpid();
+    /* Convince the compiler that p..p7 are live; otherwise, it might
+       use the same hardware register for all 8 local variables.  */
+    if (p != p1 || p != p2 || p != p3 || p != p4
+	|| p != p5 || p != p6 || p != p7)
+      _exit(1);
+
+    /* On some systems (e.g. IRIX 3.3), vfork doesn't separate parent
+       from child file descriptors.  If the child closes a descriptor
+       before it execs or exits, this munges the parent's descriptor
+       as well.  Test for this by closing stdout in the child.  */
+    _exit(close(fileno(stdout)) != 0);
+  } else {
+    int status;
+    struct stat st;
+
+    while (wait(&status) != child)
+      ;
+    $ac_main_return(
+	 /* Was there some problem with vforking?  */
+	 child < 0
+
+	 /* Did the child fail?  (This shouldn't happen.)  */
+	 || status
+
+	 /* Did the vfork/compiler bug occur?  */
+	 || parent != getpid()
+
+	 /* Did the file descriptor bug occur?  */
+	 || fstat(fileno(stdout), &st) != 0
+	 );
+  }
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:28464: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28467: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:28469: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28472: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_vfork_works=yes
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_vfork_works=no
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+echo "$as_me:28484: result: $ac_cv_func_vfork_works" >&5
+echo "${ECHO_T}$ac_cv_func_vfork_works" >&6
+
+fi;
+if test "x$ac_cv_func_fork_works" = xcross; then
+  ac_cv_func_vfork_works=ac_cv_func_vfork
+  { echo "$as_me:28490: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&5
+echo "$as_me: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&2;}
+fi
+
+if test "x$ac_cv_func_vfork_works" = xyes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_WORKING_VFORK 1
+EOF
+
+else
+
+cat >>confdefs.h <<\EOF
+#define vfork fork
+EOF
+
+fi
+if test "x$ac_cv_func_fork_works" = xyes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_WORKING_FORK 1
+EOF
+
+fi
+
+echo "$as_me:28515: checking if we should use fcntl or ioctl" >&5
+echo $ECHO_N "checking if we should use fcntl or ioctl... $ECHO_C" >&6
+if test "${cf_cv_fionbio+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 28522 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <sys/ioctl.h>
+
+int
+main ()
+{
+
+        int ret = ioctl(0, FIONBIO, (char *)0);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28539: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28542: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28545: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28548: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_fionbio=ioctl
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 28556 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#if HAVE_FCNTL_H
+#include <fcntl.h>
+#else
+#if HAVE_SYS_FCNTL_H
+#include <sys/fcntl.h>
+#endif
+#endif
+int
+main ()
+{
+
+        int ret = fcntl(0, F_SETFL, O_NONBLOCK);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28578: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28581: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28584: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28587: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_fionbio=fcntl
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_fionbio=unknown
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:28600: result: $cf_cv_fionbio" >&5
+echo "${ECHO_T}$cf_cv_fionbio" >&6
+test "$cf_cv_fionbio" = "fcntl" && cat >>confdefs.h <<\EOF
+#define USE_FCNTL 1
+EOF
+
+echo "$as_me:28606: checking for broken/missing definition of remove" >&5
+echo $ECHO_N "checking for broken/missing definition of remove... $ECHO_C" >&6
+if test "${cf_cv_baddef_remove+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 28613 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+remove("dummy")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28625: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28628: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28631: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28634: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_baddef_remove=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 28641 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+		int __unlink(name) { return unlink(name); }
+int
+main ()
+{
+remove("dummy")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28654: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28657: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28660: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28663: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_baddef_remove=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_baddef_remove=unknown
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+echo "$as_me:28678: result: $cf_cv_baddef_remove" >&5
+echo "${ECHO_T}$cf_cv_baddef_remove" >&6
+test "$cf_cv_baddef_remove" != no && cat >>confdefs.h <<\EOF
+#define NEED_REMOVE 1
+EOF
+
+echo "$as_me:28684: checking for lstat" >&5
+echo $ECHO_N "checking for lstat... $ECHO_C" >&6
+if test "${ac_cv_func_lstat+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 28691 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <sys/stat.h>
+int
+main ()
+{
+lstat(".", (struct stat *)0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28705: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28708: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28711: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28714: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_lstat=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_lstat=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+echo "$as_me:28726: result: $ac_cv_func_lstat " >&5
+echo "${ECHO_T}$ac_cv_func_lstat " >&6
+if test $ac_cv_func_lstat = yes; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_LSTAT 1
+EOF
+
+fi
+
+for ac_func in \
+	ctermid \
+	cuserid \
+	ftime \
+	getcwd \
+	getgroups \
+	gettimeofday \
+	getuid \
+	mktemp \
+	mkdtemp \
+	popen \
+	putenv \
+	readdir \
+	setuid \
+	strerror \
+	truncate \
+	ttyname \
+	unsetenv \
+	usleep \
+	vasprintf \
+	waitpid \
+
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:28759: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 28765 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28796: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28799: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28802: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28805: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:28815: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+for ac_func in \
+	mktime \
+	strstr \
+
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:28831: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 28837 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28868: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28871: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28874: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28877: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:28887: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+else
+  LIBOBJS="$LIBOBJS $ac_func.$ac_objext"
+fi
+done
+
+echo "$as_me:28899: checking for random-integer functions" >&5
+echo $ECHO_N "checking for random-integer functions... $ECHO_C" >&6
+if test "${cf_cv_srand_func+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cf_cv_srand_func=unknown
+for cf_func in arc4random_push/arc4random arc4random_stir/arc4random srandom/random srand48/lrand48 srand/rand
+do
+
+	cf_srand_func=`echo $cf_func | sed -e 's%/.*%%'`
+	cf_rand_func=`echo $cf_func | sed -e 's%.*/%%'`
+
+	case $cf_srand_func in #(vi
+	arc4random_stir)
+		cf_srand_func='(void)'
+		;;
+	esac
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 28919 "configure"
+#include "confdefs.h"
+
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+int
+main ()
+{
+long seed = 1; $cf_srand_func(seed); seed = $cf_rand_func()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:28938: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:28941: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:28944: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:28947: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_srand_func=$cf_func
+ break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+done
+
+fi
+echo "$as_me:28959: result: $cf_cv_srand_func" >&5
+echo "${ECHO_T}$cf_cv_srand_func" >&6
+if test "$cf_cv_srand_func" != unknown ; then
+	echo "$as_me:28962: checking for range of random-integers" >&5
+echo $ECHO_N "checking for range of random-integers... $ECHO_C" >&6
+if test "${cf_cv_rand_max+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+		case $cf_cv_srand_func in
+		srand/rand)
+			cf_cv_rand_max=RAND_MAX
+			cf_rand_max=16
+			;;
+		*/arc4random)
+			cf_cv_rand_max=0xFFFFFFFFUL
+			cf_rand_max=32
+			;;
+		*)
+			cf_cv_rand_max=INT_MAX
+			cf_rand_max=31
+			;;
+		esac
+		cat >conftest.$ac_ext <<_ACEOF
+#line 28983 "configure"
+#include "confdefs.h"
+
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+int
+main ()
+{
+long x = $cf_cv_rand_max
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29002: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29005: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29008: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29011: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_rand_max="(1L<<$cf_rand_max)-1"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:29022: result: $cf_cv_rand_max" >&5
+echo "${ECHO_T}$cf_cv_rand_max" >&6
+
+	case $cf_cv_srand_func in
+	*/arc4random)
+		echo "$as_me:29027: checking if <bsd/stdlib.h> should be included" >&5
+echo $ECHO_N "checking if <bsd/stdlib.h> should be included... $ECHO_C" >&6
+		cat >conftest.$ac_ext <<_ACEOF
+#line 29030 "configure"
+#include "confdefs.h"
+#include <bsd/stdlib.h>
+int
+main ()
+{
+void *arc4random(int);
+						void *x = arc4random(1)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29043: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29046: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29049: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29052: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_bsd_stdlib_h=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 29059 "configure"
+#include "confdefs.h"
+#include <bsd/stdlib.h>
+int
+main ()
+{
+unsigned x = arc4random()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29071: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29074: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29077: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29080: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_bsd_stdlib_h=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_bsd_stdlib_h=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	    echo "$as_me:29091: result: $cf_bsd_stdlib_h" >&5
+echo "${ECHO_T}$cf_bsd_stdlib_h" >&6
+		if test "$cf_bsd_stdlib_h" = yes
+		then
+			cat >>confdefs.h <<\EOF
+#define HAVE_BSD_STDLIB_H 1
+EOF
+
+		else
+			echo "$as_me:29100: checking if <bsd/random.h> should be included" >&5
+echo $ECHO_N "checking if <bsd/random.h> should be included... $ECHO_C" >&6
+			cat >conftest.$ac_ext <<_ACEOF
+#line 29103 "configure"
+#include "confdefs.h"
+#include <bsd/random.h>
+int
+main ()
+{
+void *arc4random(int);
+							void *x = arc4random(1)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29116: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29119: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29122: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29125: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_bsd_random_h=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 29132 "configure"
+#include "confdefs.h"
+#include <bsd/random.h>
+int
+main ()
+{
+unsigned x = arc4random()
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29144: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29147: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29150: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29153: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_bsd_random_h=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_bsd_random_h=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			echo "$as_me:29164: result: $cf_bsd_random_h" >&5
+echo "${ECHO_T}$cf_bsd_random_h" >&6
+			if test "$cf_bsd_random_h" = yes
+			then
+				cat >>confdefs.h <<\EOF
+#define HAVE_BSD_RANDOM_H 1
+EOF
+
+			else
+				{ echo "$as_me:29173: WARNING: no header file found for arc4random" >&5
+echo "$as_me: WARNING: no header file found for arc4random" >&2;}
+			fi
+		fi
+		;;
+	esac
+
+	cf_srand_func=`echo $cf_func | sed -e 's%/.*%%'`
+	cf_rand_func=`echo $cf_func | sed -e 's%.*/%%'`
+
+	case $cf_srand_func in #(vi
+	arc4random_stir)
+		cf_srand_func='(void)'
+		;;
+	esac
+
+cf_rand_max=`echo "lynx_rand_max" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	cat >>confdefs.h <<EOF
+#define lynx_srand $cf_srand_func
+EOF
+
+	cat >>confdefs.h <<EOF
+#define lynx_rand $cf_rand_func
+EOF
+
+	cat >>confdefs.h <<EOF
+#define $cf_rand_max $cf_cv_rand_max
+EOF
+
+fi
+
+for ac_func in strstr
+do
+
+echo "$as_me:29208: checking for $ac_func declaration" >&5
+echo $ECHO_N "checking for $ac_func declaration... $ECHO_C" >&6
+if eval "test \"\${ac_cv_func_decl_$ac_func+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 29214 "configure"
+#include "confdefs.h"
+#include <string.h>
+int
+main ()
+{
+#ifndef $ac_func
+extern	int	$ac_func();
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29228: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29231: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29234: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29237: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 29241 "configure"
+#include "confdefs.h"
+#include <string.h>
+int
+main ()
+{
+#ifndef $ac_func
+int	(*p)() = $ac_func;
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29255: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29258: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29261: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29264: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+eval "ac_cv_func_decl_$ac_func=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+eval "ac_cv_func_decl_$ac_func=no"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+eval "ac_cv_func_decl_$ac_func=yes"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+
+if eval "test \"`echo '$ac_cv_func_'decl_$ac_func`\" = yes"; then
+  echo "$as_me:29285: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+  :
+else
+  echo "$as_me:29289: result: no" >&5
+echo "${ECHO_T}no" >&6
+
+ac_tr_func=`echo "DECL_$ac_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+  cat >>confdefs.h <<EOF
+#define $ac_tr_func 1
+EOF
+
+fi
+done
+
+for ac_func in getgrgid getgrnam
+do
+
+echo "$as_me:29304: checking for $ac_func declaration" >&5
+echo $ECHO_N "checking for $ac_func declaration... $ECHO_C" >&6
+if eval "test \"\${ac_cv_func_decl_$ac_func+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 29310 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <grp.h>
+int
+main ()
+{
+#ifndef $ac_func
+extern	int	$ac_func();
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29326: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29329: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29332: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29335: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 29339 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <grp.h>
+int
+main ()
+{
+#ifndef $ac_func
+int	(*p)() = $ac_func;
+#endif
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29355: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29358: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29361: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29364: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+eval "ac_cv_func_decl_$ac_func=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+eval "ac_cv_func_decl_$ac_func=no"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+eval "ac_cv_func_decl_$ac_func=yes"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+
+if eval "test \"`echo '$ac_cv_func_'decl_$ac_func`\" = yes"; then
+  echo "$as_me:29385: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+  :
+else
+  echo "$as_me:29389: result: no" >&5
+echo "${ECHO_T}no" >&6
+
+ac_tr_func=`echo "DECL_$ac_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+  cat >>confdefs.h <<EOF
+#define $ac_tr_func 1
+EOF
+
+fi
+done
+
+echo "$as_me:29401: checking if TRUE/FALSE are defined" >&5
+echo $ECHO_N "checking if TRUE/FALSE are defined... $ECHO_C" >&6
+if test "${cf_cv_bool_defs+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 29408 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <stdio.h>
+int
+main ()
+{
+int x = TRUE, y = FALSE
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29422: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29425: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29428: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29431: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_bool_defs=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_bool_defs=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+
+echo "$as_me:29442: result: $cf_cv_bool_defs" >&5
+echo "${ECHO_T}$cf_cv_bool_defs" >&6
+if test "$cf_cv_bool_defs" = no ; then
+	cat >>confdefs.h <<\EOF
+#define TRUE (1)
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define FALSE (0)
+EOF
+
+fi
+
+echo "$as_me:29455: checking if external errno is declared" >&5
+echo $ECHO_N "checking if external errno is declared... $ECHO_C" >&6
+if test "${cf_cv_dcl_errno+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cat >conftest.$ac_ext <<_ACEOF
+#line 29462 "configure"
+#include "confdefs.h"
+
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#include <stdio.h>
+#include <sys/types.h>
+#include <errno.h>
+int
+main ()
+{
+int x = (int) errno
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29480: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29483: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29486: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29489: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_dcl_errno=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_dcl_errno=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:29500: result: $cf_cv_dcl_errno" >&5
+echo "${ECHO_T}$cf_cv_dcl_errno" >&6
+
+if test "$cf_cv_dcl_errno" = no ; then
+
+cf_result=`echo "decl_errno" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+    cat >>confdefs.h <<EOF
+#define $cf_result 1
+EOF
+
+fi
+
+# It's possible (for near-UNIX clones) that the data doesn't exist
+
+echo "$as_me:29515: checking if external errno exists" >&5
+echo $ECHO_N "checking if external errno exists... $ECHO_C" >&6
+if test "${cf_cv_have_errno+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cat >conftest.$ac_ext <<_ACEOF
+#line 29522 "configure"
+#include "confdefs.h"
+
+#undef errno
+extern int errno;
+
+int
+main ()
+{
+errno = 2
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:29537: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:29540: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:29543: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29546: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_errno=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_errno=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:29557: result: $cf_cv_have_errno" >&5
+echo "${ECHO_T}$cf_cv_have_errno" >&6
+
+if test "$cf_cv_have_errno" = yes ; then
+
+cf_result=`echo "have_errno" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+    cat >>confdefs.h <<EOF
+#define $cf_result 1
+EOF
+
+fi
+
+echo "$as_me:29570: checking if we can set errno" >&5
+echo $ECHO_N "checking if we can set errno... $ECHO_C" >&6
+if test "${cf_cv_set_errno+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+if test "$cross_compiling" = yes; then
+  cat >conftest.$ac_ext <<_ACEOF
+#line 29578 "configure"
+#include "confdefs.h"
+#include <errno.h>
+int
+main ()
+{
+errno = 255
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:29590: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:29593: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:29596: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29599: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_set_errno=maybe
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_set_errno=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 29610 "configure"
+#include "confdefs.h"
+
+#include <errno.h>
+int main()
+{
+	errno = 255;
+	${cf_cv_main_return:-return}(errno != 255);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:29621: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:29624: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:29626: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29629: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_set_errno=yes
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_set_errno=no
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+fi
+echo "$as_me:29642: result: $cf_cv_set_errno" >&5
+echo "${ECHO_T}$cf_cv_set_errno" >&6
+test "$cf_cv_set_errno" != no && cat >>confdefs.h <<\EOF
+#define CAN_SET_ERRNO 1
+EOF
+
+echo "$as_me:29648: checking for setlocale()" >&5
+echo $ECHO_N "checking for setlocale()... $ECHO_C" >&6
+if test "${cf_cv_locale+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 29655 "configure"
+#include "confdefs.h"
+#include <locale.h>
+int
+main ()
+{
+setlocale(LC_ALL, "")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:29667: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:29670: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:29673: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29676: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_locale=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_locale=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+echo "$as_me:29688: result: $cf_cv_locale" >&5
+echo "${ECHO_T}$cf_cv_locale" >&6
+test $cf_cv_locale = yes && { cat >>confdefs.h <<\EOF
+#define LOCALE 1
+EOF
+ }
+
+echo "$as_me:29695: checking if NGROUPS is defined" >&5
+echo $ECHO_N "checking if NGROUPS is defined... $ECHO_C" >&6
+if test "${cf_cv_ngroups+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 29702 "configure"
+#include "confdefs.h"
+
+#if HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif
+#if HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+int
+main ()
+{
+int x = NGROUPS
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29721: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29724: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29727: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29730: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ngroups=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 29737 "configure"
+#include "confdefs.h"
+
+#if HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif
+#if HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+int
+main ()
+{
+int x = NGROUPS_MAX
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29756: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29759: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29762: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29765: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ngroups=NGROUPS_MAX
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_ngroups=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:29777: result: $cf_cv_ngroups" >&5
+echo "${ECHO_T}$cf_cv_ngroups" >&6
+
+fi
+
+if test "$cf_cv_ngroups" = no ; then
+	cat >>confdefs.h <<\EOF
+#define NGROUPS 16
+EOF
+
+elif test "$cf_cv_ngroups" = NGROUPS_MAX ; then
+	cat >>confdefs.h <<\EOF
+#define NGROUPS NGROUPS_MAX
+EOF
+
+fi
+
+echo "$as_me:29794: checking if external sys_nerr is declared" >&5
+echo $ECHO_N "checking if external sys_nerr is declared... $ECHO_C" >&6
+if test "${cf_cv_dcl_sys_nerr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cat >conftest.$ac_ext <<_ACEOF
+#line 29801 "configure"
+#include "confdefs.h"
+
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#include <stdio.h>
+#include <sys/types.h>
+#include <errno.h>
+int
+main ()
+{
+int x = (int) sys_nerr
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29819: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29822: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29825: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29828: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_dcl_sys_nerr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_dcl_sys_nerr=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:29839: result: $cf_cv_dcl_sys_nerr" >&5
+echo "${ECHO_T}$cf_cv_dcl_sys_nerr" >&6
+
+if test "$cf_cv_dcl_sys_nerr" = no ; then
+
+cf_result=`echo "decl_sys_nerr" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+    cat >>confdefs.h <<EOF
+#define $cf_result 1
+EOF
+
+fi
+
+# It's possible (for near-UNIX clones) that the data doesn't exist
+
+echo "$as_me:29854: checking if external sys_nerr exists" >&5
+echo $ECHO_N "checking if external sys_nerr exists... $ECHO_C" >&6
+if test "${cf_cv_have_sys_nerr+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cat >conftest.$ac_ext <<_ACEOF
+#line 29861 "configure"
+#include "confdefs.h"
+
+#undef sys_nerr
+extern int sys_nerr;
+
+int
+main ()
+{
+sys_nerr = 2
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:29876: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:29879: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:29882: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29885: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_sys_nerr=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_sys_nerr=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:29896: result: $cf_cv_have_sys_nerr" >&5
+echo "${ECHO_T}$cf_cv_have_sys_nerr" >&6
+
+if test "$cf_cv_have_sys_nerr" = yes ; then
+
+cf_result=`echo "have_sys_nerr" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+    cat >>confdefs.h <<EOF
+#define $cf_result 1
+EOF
+
+fi
+
+echo "$as_me:29909: checking if external sys_errlist is declared" >&5
+echo $ECHO_N "checking if external sys_errlist is declared... $ECHO_C" >&6
+if test "${cf_cv_dcl_sys_errlist+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cat >conftest.$ac_ext <<_ACEOF
+#line 29916 "configure"
+#include "confdefs.h"
+
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#include <stdio.h>
+#include <sys/types.h>
+#include <errno.h>
+int
+main ()
+{
+int x = (int) sys_errlist
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:29934: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:29937: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:29940: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:29943: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_dcl_sys_errlist=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_dcl_sys_errlist=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:29954: result: $cf_cv_dcl_sys_errlist" >&5
+echo "${ECHO_T}$cf_cv_dcl_sys_errlist" >&6
+
+if test "$cf_cv_dcl_sys_errlist" = no ; then
+
+cf_result=`echo "decl_sys_errlist" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+    cat >>confdefs.h <<EOF
+#define $cf_result 1
+EOF
+
+fi
+
+# It's possible (for near-UNIX clones) that the data doesn't exist
+
+echo "$as_me:29969: checking if external sys_errlist exists" >&5
+echo $ECHO_N "checking if external sys_errlist exists... $ECHO_C" >&6
+if test "${cf_cv_have_sys_errlist+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cat >conftest.$ac_ext <<_ACEOF
+#line 29976 "configure"
+#include "confdefs.h"
+
+#undef sys_errlist
+extern int sys_errlist;
+
+int
+main ()
+{
+sys_errlist = 2
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:29991: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:29994: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:29997: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30000: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_sys_errlist=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_sys_errlist=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:30011: result: $cf_cv_have_sys_errlist" >&5
+echo "${ECHO_T}$cf_cv_have_sys_errlist" >&6
+
+if test "$cf_cv_have_sys_errlist" = yes ; then
+
+cf_result=`echo "have_sys_errlist" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+    cat >>confdefs.h <<EOF
+#define $cf_result 1
+EOF
+
+fi
+
+for ac_header in lastlog.h paths.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:30027: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 30033 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:30037: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:30043: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:30062: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+echo "$as_me:30072: checking for lastlog path" >&5
+echo $ECHO_N "checking for lastlog path... $ECHO_C" >&6
+if test "${cf_cv_path_lastlog+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 30079 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#ifdef HAVE_LASTLOG_H
+#include <lastlog.h>
+#else
+#ifdef HAVE_PATHS_H
+#include <paths.h>
+#endif
+#endif
+int
+main ()
+{
+char *path = _PATH_LASTLOG
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30099: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30102: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30105: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30108: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_path_lastlog="_PATH_LASTLOG"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+if test -f /usr/adm/lastlog ; then
+	 	cf_cv_path_lastlog=/usr/adm/lastlog
+	else
+		cf_cv_path_lastlog=no
+	fi
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:30123: result: $cf_cv_path_lastlog" >&5
+echo "${ECHO_T}$cf_cv_path_lastlog" >&6
+test $cf_cv_path_lastlog != no && cat >>confdefs.h <<\EOF
+#define USE_LASTLOG 1
+EOF
+
+echo "$as_me:30129: checking for utmp implementation" >&5
+echo $ECHO_N "checking for utmp implementation... $ECHO_C" >&6
+if test "${cf_cv_have_utmp+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_cv_have_utmp=no
+for cf_header in utmpx utmp ; do
+cf_utmp_includes="
+#include <sys/types.h>
+#include <${cf_header}.h>
+#define getutent getutxent
+#ifdef USE_LASTLOG
+#include <lastlog.h>	/* may conflict with utmpx.h on Linux */
+#endif
+"
+	cat >conftest.$ac_ext <<_ACEOF
+#line 30146 "configure"
+#include "confdefs.h"
+$cf_utmp_includes
+int
+main ()
+{
+struct $cf_header x;
+	 char *name = x.ut_name; /* utmp.h and compatible definitions */
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30160: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30163: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30166: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30169: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_utmp=$cf_header
+	 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 30178 "configure"
+#include "confdefs.h"
+$cf_utmp_includes
+int
+main ()
+{
+struct $cf_header x;
+	 char *name = x.ut_user; /* utmpx.h must declare this */
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30192: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30195: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30198: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30201: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_utmp=$cf_header
+	 break
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+
+fi
+echo "$as_me:30216: result: $cf_cv_have_utmp" >&5
+echo "${ECHO_T}$cf_cv_have_utmp" >&6
+
+if test $cf_cv_have_utmp != no ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_UTMP 1
+EOF
+
+	test $cf_cv_have_utmp = utmpx && cat >>confdefs.h <<\EOF
+#define UTMPX_FOR_UTMP 1
+EOF
+
+if test $cf_cv_have_utmp != no ; then
+echo "$as_me:30229: checking if ${cf_cv_have_utmp}.ut_host is declared" >&5
+echo $ECHO_N "checking if ${cf_cv_have_utmp}.ut_host is declared... $ECHO_C" >&6
+if test "${cf_cv_have_utmp_ut_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 30236 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>
+int
+main ()
+{
+struct $cf_cv_have_utmp x; char *y = &x.ut_host[0]
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30250: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30253: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30256: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30259: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_utmp_ut_host=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_utmp_ut_host=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+
+echo "$as_me:30271: result: $cf_cv_have_utmp_ut_host" >&5
+echo "${ECHO_T}$cf_cv_have_utmp_ut_host" >&6
+test $cf_cv_have_utmp_ut_host != no && cat >>confdefs.h <<\EOF
+#define HAVE_UTMP_UT_HOST 1
+EOF
+
+fi
+
+if test $cf_cv_have_utmp != no ; then
+echo "$as_me:30280: checking if ${cf_cv_have_utmp}.ut_syslen is declared" >&5
+echo $ECHO_N "checking if ${cf_cv_have_utmp}.ut_syslen is declared... $ECHO_C" >&6
+if test "${cf_cv_have_utmp_ut_syslen+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 30287 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>
+int
+main ()
+{
+struct $cf_cv_have_utmp x; int y = x.ut_syslen
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30301: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30304: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30307: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30310: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_utmp_ut_syslen=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_utmp_ut_syslen=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+
+echo "$as_me:30322: result: $cf_cv_have_utmp_ut_syslen" >&5
+echo "${ECHO_T}$cf_cv_have_utmp_ut_syslen" >&6
+test $cf_cv_have_utmp_ut_syslen != no && cat >>confdefs.h <<\EOF
+#define HAVE_UTMP_UT_SYSLEN 1
+EOF
+
+fi
+
+if test $cf_cv_have_utmp != no ; then
+echo "$as_me:30331: checking if ${cf_cv_have_utmp}.ut_name is declared" >&5
+echo $ECHO_N "checking if ${cf_cv_have_utmp}.ut_name is declared... $ECHO_C" >&6
+if test "${cf_cv_have_utmp_ut_name+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cf_cv_have_utmp_ut_name=no
+cf_utmp_includes="
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>
+#define getutent getutxent
+#ifdef USE_LASTLOG
+#include <lastlog.h>		/* may conflict with utmpx.h on Linux */
+#endif
+"
+for cf_header in ut_name ut_user ; do
+	cat >conftest.$ac_ext <<_ACEOF
+#line 30348 "configure"
+#include "confdefs.h"
+$cf_utmp_includes
+int
+main ()
+{
+struct $cf_cv_have_utmp x;
+	 char *name = x.$cf_header;
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30362: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30365: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30368: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30371: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_utmp_ut_name=$cf_header
+	 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+
+fi
+echo "$as_me:30383: result: $cf_cv_have_utmp_ut_name" >&5
+echo "${ECHO_T}$cf_cv_have_utmp_ut_name" >&6
+
+case $cf_cv_have_utmp_ut_name in #(vi
+no) #(vi
+	{ { echo "$as_me:30388: error: Cannot find declaration for ut.ut_name" >&5
+echo "$as_me: error: Cannot find declaration for ut.ut_name" >&2;}
+   { (exit 1); exit 1; }; }
+	;;
+ut_user)
+	cat >>confdefs.h <<\EOF
+#define ut_name ut_user
+EOF
+
+	;;
+esac
+fi
+
+if test $cf_cv_have_utmp != no ; then
+echo "$as_me:30402: checking for exit-status in $cf_cv_have_utmp" >&5
+echo $ECHO_N "checking for exit-status in $cf_cv_have_utmp... $ECHO_C" >&6
+if test "${cf_cv_have_utmp_ut_xstatus+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+for cf_result in \
+	ut_exit.__e_exit \
+	ut_exit.e_exit \
+	ut_exit.ut_e_exit \
+	ut_exit.ut_exit
+do
+cat >conftest.$ac_ext <<_ACEOF
+#line 30415 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>
+int
+main ()
+{
+struct $cf_cv_have_utmp x; long y = x.$cf_result = 0
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30429: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30432: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30435: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30438: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_utmp_ut_xstatus=$cf_result
+	 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_utmp_ut_xstatus=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+
+fi
+echo "$as_me:30451: result: $cf_cv_have_utmp_ut_xstatus" >&5
+echo "${ECHO_T}$cf_cv_have_utmp_ut_xstatus" >&6
+if test $cf_cv_have_utmp_ut_xstatus != no ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_UTMP_UT_XSTATUS 1
+EOF
+
+	cat >>confdefs.h <<EOF
+#define ut_xstatus $cf_cv_have_utmp_ut_xstatus
+EOF
+
+fi
+fi
+
+if test $cf_cv_have_utmp != no ; then
+echo "$as_me:30466: checking if ${cf_cv_have_utmp}.ut_xtime is declared" >&5
+echo $ECHO_N "checking if ${cf_cv_have_utmp}.ut_xtime is declared... $ECHO_C" >&6
+if test "${cf_cv_have_utmp_ut_xtime+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 30473 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>
+int
+main ()
+{
+struct $cf_cv_have_utmp x; long y = x.ut_xtime = 0
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30487: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30490: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30493: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30496: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_utmp_ut_xtime=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 30503 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>
+int
+main ()
+{
+struct $cf_cv_have_utmp x; long y = x.ut_tv.tv_sec
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30517: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30520: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30523: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30526: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_utmp_ut_xtime=define
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_utmp_ut_xtime=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:30540: result: $cf_cv_have_utmp_ut_xtime" >&5
+echo "${ECHO_T}$cf_cv_have_utmp_ut_xtime" >&6
+if test $cf_cv_have_utmp_ut_xtime != no ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_UTMP_UT_XTIME 1
+EOF
+
+	if test $cf_cv_have_utmp_ut_xtime = define ; then
+		cat >>confdefs.h <<\EOF
+#define ut_xtime ut_tv.tv_sec
+EOF
+
+	fi
+fi
+fi
+
+if test $cf_cv_have_utmp != no ; then
+echo "$as_me:30557: checking if ${cf_cv_have_utmp}.ut_session is declared" >&5
+echo $ECHO_N "checking if ${cf_cv_have_utmp}.ut_session is declared... $ECHO_C" >&6
+if test "${cf_cv_have_utmp_ut_session+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 30564 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>
+int
+main ()
+{
+struct $cf_cv_have_utmp x; long y = x.ut_session
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30578: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30581: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30584: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30587: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_utmp_ut_session=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_utmp_ut_session=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+echo "$as_me:30598: result: $cf_cv_have_utmp_ut_session" >&5
+echo "${ECHO_T}$cf_cv_have_utmp_ut_session" >&6
+if test $cf_cv_have_utmp_ut_session != no ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_UTMP_UT_SESSION 1
+EOF
+
+fi
+fi
+
+echo "$as_me:30608: checking if $cf_cv_have_utmp is SYSV flavor" >&5
+echo $ECHO_N "checking if $cf_cv_have_utmp is SYSV flavor... $ECHO_C" >&6
+if test "${cf_cv_sysv_utmp+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+test "$cf_cv_have_utmp" = "utmp" && cf_prefix="ut" || cf_prefix="utx"
+cat >conftest.$ac_ext <<_ACEOF
+#line 30616 "configure"
+#include "confdefs.h"
+
+#include <sys/types.h>
+#include <${cf_cv_have_utmp}.h>
+int
+main ()
+{
+
+struct $cf_cv_have_utmp x;
+	set${cf_prefix}ent ();
+	get${cf_prefix}id(&x);
+	put${cf_prefix}line(&x);
+	end${cf_prefix}ent();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:30635: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:30638: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:30641: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30644: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_sysv_utmp=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_sysv_utmp=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:30655: result: $cf_cv_sysv_utmp" >&5
+echo "${ECHO_T}$cf_cv_sysv_utmp" >&6
+test $cf_cv_sysv_utmp = yes && cat >>confdefs.h <<\EOF
+#define USE_SYSV_UTMP 1
+EOF
+
+fi
+
+echo "$as_me:30663: checking if external h_errno exists" >&5
+echo $ECHO_N "checking if external h_errno exists... $ECHO_C" >&6
+if test "${cf_cv_have_h_errno+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cat >conftest.$ac_ext <<_ACEOF
+#line 30670 "configure"
+#include "confdefs.h"
+
+#undef h_errno
+extern int h_errno;
+
+int
+main ()
+{
+h_errno = 2
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:30685: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:30688: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:30691: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30694: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_h_errno=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_h_errno=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:30705: result: $cf_cv_have_h_errno" >&5
+echo "${ECHO_T}$cf_cv_have_h_errno" >&6
+
+if test "$cf_cv_have_h_errno" = yes ; then
+
+cf_result=`echo "have_h_errno" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+    cat >>confdefs.h <<EOF
+#define $cf_result 1
+EOF
+
+fi
+
+echo "$as_me:30718: checking if bibp: URLs should be supported" >&5
+echo $ECHO_N "checking if bibp: URLs should be supported... $ECHO_C" >&6
+
+# Check whether --enable-bibp-urls or --disable-bibp-urls was given.
+if test "${enable_bibp_urls+set}" = set; then
+  enableval="$enable_bibp_urls"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_bibp_urls=$enableval
+  else
+    use_bibp_urls=yes
+  fi
+else
+  enableval=yes
+  use_bibp_urls=yes
+
+fi;
+echo "$as_me:30735: result: $use_bibp_urls" >&5
+echo "${ECHO_T}$use_bibp_urls" >&6
+test $use_bibp_urls = no && cat >>confdefs.h <<\EOF
+#define DISABLE_BIBP 1
+EOF
+
+echo "$as_me:30741: checking if configuration info should be browsable" >&5
+echo $ECHO_N "checking if configuration info should be browsable... $ECHO_C" >&6
+
+# Check whether --enable-config-info or --disable-config-info was given.
+if test "${enable_config_info+set}" = set; then
+  enableval="$enable_config_info"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_config_info=$enableval
+  else
+    use_config_info=yes
+  fi
+else
+  enableval=yes
+  use_config_info=yes
+
+fi;
+echo "$as_me:30758: result: $use_config_info" >&5
+echo "${ECHO_T}$use_config_info" >&6
+test $use_config_info = no && cat >>confdefs.h <<\EOF
+#define NO_CONFIG_INFO 1
+EOF
+
+echo "$as_me:30764: checking if new-style forms-based options screen should be used" >&5
+echo $ECHO_N "checking if new-style forms-based options screen should be used... $ECHO_C" >&6
+
+# Check whether --enable-forms-options or --disable-forms-options was given.
+if test "${enable_forms_options+set}" = set; then
+  enableval="$enable_forms_options"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_forms_options=$enableval
+  else
+    use_forms_options=yes
+  fi
+else
+  enableval=yes
+  use_forms_options=yes
+
+fi;
+echo "$as_me:30781: result: $use_forms_options" >&5
+echo "${ECHO_T}$use_forms_options" >&6
+test $use_forms_options = no && cat >>confdefs.h <<\EOF
+#define NO_OPTION_FORMS 1
+EOF
+
+echo "$as_me:30787: checking if old-style options menu should be used" >&5
+echo $ECHO_N "checking if old-style options menu should be used... $ECHO_C" >&6
+
+# Check whether --enable-menu-options or --disable-menu-options was given.
+if test "${enable_menu_options+set}" = set; then
+  enableval="$enable_menu_options"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_menu_options=$enableval
+  else
+    use_menu_options=yes
+  fi
+else
+  enableval=yes
+  use_menu_options=yes
+
+fi;
+echo "$as_me:30804: result: $use_menu_options" >&5
+echo "${ECHO_T}$use_menu_options" >&6
+test $use_menu_options = no && cat >>confdefs.h <<\EOF
+#define NO_OPTION_MENU 1
+EOF
+
+echo "$as_me:30810: checking if sessions code should be used" >&5
+echo $ECHO_N "checking if sessions code should be used... $ECHO_C" >&6
+
+# Check whether --enable-sessions or --disable-sessions was given.
+if test "${enable_sessions+set}" = set; then
+  enableval="$enable_sessions"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_sessions=$enableval
+  else
+    use_sessions=yes
+  fi
+else
+  enableval=yes
+  use_sessions=yes
+
+fi;
+echo "$as_me:30827: result: $use_sessions" >&5
+echo "${ECHO_T}$use_sessions" >&6
+if test $use_sessions != no ; then
+	cat >>confdefs.h <<\EOF
+#define USE_SESSIONS 1
+EOF
+
+	EXTRA_OBJS="$EXTRA_OBJS LYSession\$o"
+fi
+
+echo "$as_me:30837: checking if session-caching code should be used" >&5
+echo $ECHO_N "checking if session-caching code should be used... $ECHO_C" >&6
+
+# Check whether --enable-session-cache or --disable-session-cache was given.
+if test "${enable_session_cache+set}" = set; then
+  enableval="$enable_session_cache"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_session_cache=$enableval
+  else
+    use_session_cache=yes
+  fi
+else
+  enableval=yes
+  use_session_cache=yes
+
+fi;
+echo "$as_me:30854: result: $use_session_cache" >&5
+echo "${ECHO_T}$use_session_cache" >&6
+if test $use_session_cache != no ; then
+    cat >>confdefs.h <<\EOF
+#define USE_CACHEJAR 1
+EOF
+
+fi
+
+echo "$as_me:30863: checking if address-list page should be used" >&5
+echo $ECHO_N "checking if address-list page should be used... $ECHO_C" >&6
+
+# Check whether --enable-addrlist-page or --disable-addrlist-page was given.
+if test "${enable_addrlist_page+set}" = set; then
+  enableval="$enable_addrlist_page"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_addrlist_page=$enableval
+  else
+    use_addrlist_page=yes
+  fi
+else
+  enableval=yes
+  use_addrlist_page=yes
+
+fi;
+echo "$as_me:30880: result: $use_addrlist_page" >&5
+echo "${ECHO_T}$use_addrlist_page" >&6
+test $use_addrlist_page != no && cat >>confdefs.h <<\EOF
+#define USE_ADDRLIST_PAGE 1
+EOF
+
+echo "$as_me:30886: checking if experimental CJK logic should be used" >&5
+echo $ECHO_N "checking if experimental CJK logic should be used... $ECHO_C" >&6
+
+# Check whether --enable-cjk or --disable-cjk was given.
+if test "${enable_cjk+set}" = set; then
+  enableval="$enable_cjk"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_cjk=$enableval
+  else
+    use_cjk=no
+  fi
+else
+  enableval=no
+  use_cjk=no
+
+fi;
+echo "$as_me:30903: result: $use_cjk" >&5
+echo "${ECHO_T}$use_cjk" >&6
+test $use_cjk != no && cat >>confdefs.h <<\EOF
+#define CJK_EX 1
+EOF
+
+echo "$as_me:30909: checking if experimental Japanese UTF-8 logic should be used" >&5
+echo $ECHO_N "checking if experimental Japanese UTF-8 logic should be used... $ECHO_C" >&6
+
+# Check whether --enable-japanese-utf8 or --disable-japanese-utf8 was given.
+if test "${enable_japanese_utf8+set}" = set; then
+  enableval="$enable_japanese_utf8"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_ja_utf8=$enableval
+  else
+    use_ja_utf8=no
+  fi
+else
+  enableval=no
+  use_ja_utf8=no
+
+fi;
+echo "$as_me:30926: result: $use_ja_utf8" >&5
+echo "${ECHO_T}$use_ja_utf8" >&6
+if test $use_ja_utf8 != no ; then
+	cat >>confdefs.h <<\EOF
+#define EXP_JAPANESEUTF8_SUPPORT 1
+EOF
+
+# Check whether --with-libiconv-prefix or --without-libiconv-prefix was given.
+if test "${with_libiconv_prefix+set}" = set; then
+  withval="$with_libiconv_prefix"
+
+  case "$withval" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$withval" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 30971 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:30983: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:30986: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:30989: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:30992: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:31009: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 31050 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:31062: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:31065: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:31068: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:31071: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:31088: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:31104: error: cannot find libiconv under $withval" >&5
+echo "$as_me: error: cannot find libiconv under $withval" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:31129: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:31158: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:31167: error: cannot find libiconv under $withval" >&5
+echo "$as_me: error: cannot find libiconv under $withval" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+fi;
+
+  echo "$as_me:31178: checking for iconv" >&5
+echo $ECHO_N "checking for iconv... $ECHO_C" >&6
+if test "${am_cv_func_iconv+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_iconv=
+cf_cv_library_path_iconv=
+
+echo "${as_me:-configure}:31189: testing Starting FIND_LINKAGE(iconv,) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 31194 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+int
+main ()
+{
+
+	iconv_t cd = iconv_open("","");
+	iconv(cd,NULL,NULL,NULL,NULL);
+	iconv_close(cd);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:31213: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:31216: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:31219: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:31222: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_iconv=yes
+	cf_cv_header_path_iconv=/usr/include
+	cf_cv_library_path_iconv=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-liconv  $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 31236 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+int
+main ()
+{
+
+	iconv_t cd = iconv_open("","");
+	iconv(cd,NULL,NULL,NULL,NULL);
+	iconv_close(cd);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:31255: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:31258: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:31261: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:31264: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_iconv=yes
+	cf_cv_header_path_iconv=/usr/include
+	cf_cv_library_path_iconv=/usr/lib
+	cf_cv_library_file_iconv="-liconv"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_iconv=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for iconv library" 1>&6
+
+echo "${as_me:-configure}:31281: testing find linkage for iconv library ..." 1>&5
+
+echo "${as_me:-configure}:31283: testing Searching for headers in FIND_LINKAGE(iconv,) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/iconv &&       cf_search="$cf_search $cf_header_path/include/iconv"
+	test -d $cf_header_path/include/iconv/include &&    cf_search="$cf_search $cf_header_path/include/iconv/include"
+	test -d $cf_header_path/iconv/include &&       cf_search="$cf_search $cf_header_path/iconv/include"
+	test -d $cf_header_path/iconv/include/iconv &&    cf_search="$cf_search $cf_header_path/iconv/include/iconv"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/iconv &&       cf_search="$cf_search /usr/include/iconv"
+	test -d /usr/include/iconv/include &&    cf_search="$cf_search /usr/include/iconv/include"
+	test -d /usr/iconv/include &&       cf_search="$cf_search /usr/iconv/include"
+	test -d /usr/iconv/include/iconv &&    cf_search="$cf_search /usr/iconv/include/iconv"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/iconv &&       cf_search="$cf_search $prefix/include/iconv"
+	test -d $prefix/include/iconv/include &&    cf_search="$cf_search $prefix/include/iconv/include"
+	test -d $prefix/iconv/include &&       cf_search="$cf_search $prefix/iconv/include"
+	test -d $prefix/iconv/include/iconv &&    cf_search="$cf_search $prefix/iconv/include/iconv"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/iconv &&       cf_search="$cf_search /usr/local/include/iconv"
+	test -d /usr/local/include/iconv/include &&    cf_search="$cf_search /usr/local/include/iconv/include"
+	test -d /usr/local/iconv/include &&       cf_search="$cf_search /usr/local/iconv/include"
+	test -d /usr/local/iconv/include/iconv &&    cf_search="$cf_search /usr/local/iconv/include/iconv"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/iconv &&       cf_search="$cf_search /opt/include/iconv"
+	test -d /opt/include/iconv/include &&    cf_search="$cf_search /opt/include/iconv/include"
+	test -d /opt/iconv/include &&       cf_search="$cf_search /opt/iconv/include"
+	test -d /opt/iconv/include/iconv &&    cf_search="$cf_search /opt/iconv/include/iconv"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/iconv &&       cf_search="$cf_search $HOME/include/iconv"
+	test -d $HOME/include/iconv/include &&    cf_search="$cf_search $HOME/include/iconv/include"
+	test -d $HOME/iconv/include &&       cf_search="$cf_search $HOME/iconv/include"
+	test -d $HOME/iconv/include/iconv &&    cf_search="$cf_search $HOME/iconv/include/iconv"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/iconv && cf_search="$cf_search $includedir/iconv"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/iconv && cf_search="$cf_search $oldincludedir/iconv"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_iconv in $cf_search
+    do
+      if test -d $cf_cv_header_path_iconv ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_iconv" 1>&6
+
+echo "${as_me:-configure}:31396: testing ... testing $cf_cv_header_path_iconv ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_iconv"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 31400 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+int
+main ()
+{
+
+	iconv_t cd = iconv_open("","");
+	iconv(cd,NULL,NULL,NULL,NULL);
+	iconv_close(cd);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:31419: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:31422: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:31425: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:31428: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found iconv headers in $cf_cv_header_path_iconv" 1>&6
+
+echo "${as_me:-configure}:31433: testing ... found iconv headers in $cf_cv_header_path_iconv ..." 1>&5
+
+            cf_cv_find_linkage_iconv=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_iconv" = maybe ; then
+
+echo "${as_me:-configure}:31451: testing Searching for iconv library in FIND_LINKAGE(iconv,) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+      if test "$cf_cv_find_linkage_iconv" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/iconv &&       cf_search="$cf_search $cf_library_path/lib/iconv"
+	test -d $cf_library_path/lib/iconv/lib &&    cf_search="$cf_search $cf_library_path/lib/iconv/lib"
+	test -d $cf_library_path/iconv/lib &&       cf_search="$cf_search $cf_library_path/iconv/lib"
+	test -d $cf_library_path/iconv/lib/iconv &&    cf_search="$cf_search $cf_library_path/iconv/lib/iconv"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/iconv &&       cf_search="$cf_search /usr/lib/iconv"
+	test -d /usr/lib/iconv/lib &&    cf_search="$cf_search /usr/lib/iconv/lib"
+	test -d /usr/iconv/lib &&       cf_search="$cf_search /usr/iconv/lib"
+	test -d /usr/iconv/lib/iconv &&    cf_search="$cf_search /usr/iconv/lib/iconv"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/iconv &&       cf_search="$cf_search $prefix/lib/iconv"
+	test -d $prefix/lib/iconv/lib &&    cf_search="$cf_search $prefix/lib/iconv/lib"
+	test -d $prefix/iconv/lib &&       cf_search="$cf_search $prefix/iconv/lib"
+	test -d $prefix/iconv/lib/iconv &&    cf_search="$cf_search $prefix/iconv/lib/iconv"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/iconv &&       cf_search="$cf_search /usr/local/lib/iconv"
+	test -d /usr/local/lib/iconv/lib &&    cf_search="$cf_search /usr/local/lib/iconv/lib"
+	test -d /usr/local/iconv/lib &&       cf_search="$cf_search /usr/local/iconv/lib"
+	test -d /usr/local/iconv/lib/iconv &&    cf_search="$cf_search /usr/local/iconv/lib/iconv"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/iconv &&       cf_search="$cf_search /opt/lib/iconv"
+	test -d /opt/lib/iconv/lib &&    cf_search="$cf_search /opt/lib/iconv/lib"
+	test -d /opt/iconv/lib &&       cf_search="$cf_search /opt/iconv/lib"
+	test -d /opt/iconv/lib/iconv &&    cf_search="$cf_search /opt/iconv/lib/iconv"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/iconv &&       cf_search="$cf_search $HOME/lib/iconv"
+	test -d $HOME/lib/iconv/lib &&    cf_search="$cf_search $HOME/lib/iconv/lib"
+	test -d $HOME/iconv/lib &&       cf_search="$cf_search $HOME/iconv/lib"
+	test -d $HOME/iconv/lib/iconv &&    cf_search="$cf_search $HOME/iconv/lib/iconv"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_iconv in $cf_search
+        do
+          if test -d $cf_cv_library_path_iconv ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_iconv" 1>&6
+
+echo "${as_me:-configure}:31548: testing ... testing $cf_cv_library_path_iconv ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-liconv  $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_iconv"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 31554 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+int
+main ()
+{
+
+	iconv_t cd = iconv_open("","");
+	iconv(cd,NULL,NULL,NULL,NULL);
+	iconv_close(cd);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:31573: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:31576: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:31579: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:31582: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found iconv library in $cf_cv_library_path_iconv" 1>&6
+
+echo "${as_me:-configure}:31587: testing ... found iconv library in $cf_cv_library_path_iconv ..." 1>&5
+
+                cf_cv_find_linkage_iconv=yes
+                cf_cv_library_file_iconv="-liconv"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_iconv=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_iconv" = yes ; then
+am_cv_func_iconv=yes
+else
+am_cv_func_iconv="no, consider installing GNU libiconv"
+fi
+
+fi
+echo "$as_me:31627: result: $am_cv_func_iconv" >&5
+echo "${ECHO_T}$am_cv_func_iconv" >&6
+
+  if test "$am_cv_func_iconv" = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_ICONV 1
+EOF
+
+    echo "$as_me:31636: checking if the declaration of iconv() needs const." >&5
+echo $ECHO_N "checking if the declaration of iconv() needs const.... $ECHO_C" >&6
+if test "${am_cv_proto_iconv_const+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+      cat >conftest.$ac_ext <<_ACEOF
+#line 31643 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <iconv.h>
+
+extern
+#ifdef __cplusplus
+"C"
+#endif
+#if defined(__STDC__) || defined(__cplusplus)
+size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
+#else
+size_t iconv();
+#endif
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:31668: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:31671: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:31674: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:31677: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  am_cv_proto_iconv_const=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+am_cv_proto_iconv_const=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:31687: result: $am_cv_proto_iconv_const" >&5
+echo "${ECHO_T}$am_cv_proto_iconv_const" >&6
+
+    if test "$am_cv_proto_iconv_const" = yes ; then
+      am_cv_proto_iconv_arg1="const"
+    else
+      am_cv_proto_iconv_arg1=""
+    fi
+
+cat >>confdefs.h <<EOF
+#define ICONV_CONST $am_cv_proto_iconv_arg1
+EOF
+
+  fi
+
+  LIBICONV=
+  if test "$cf_cv_find_linkage_iconv" = yes; then
+
+if test -n "$cf_cv_header_path_iconv" ; then
+  for cf_add_incdir in $cf_cv_header_path_iconv
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 31729 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:31741: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:31744: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:31747: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:31750: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:31767: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+    if test -n "$cf_cv_library_file_iconv" ; then
+      LIBICONV="-liconv"
+
+if test -n "$cf_cv_library_path_iconv" ; then
+  for cf_add_libdir in $cf_cv_library_path_iconv
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:31804: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+    fi
+  fi
+
+	if test "$USE_NLS" != yes ; then
+	  LIBS="$LIBICONV $LIBS"
+	fi
+fi
+
+use_dft_colors=no
+case $cf_cv_screen in
+curses|slang|ncurses*)
+	use_dft_colors=maybe
+	;;
+esac
+
+if test "$use_dft_colors" != no ; then
+echo "$as_me:31828: checking if you want to use default-colors" >&5
+echo $ECHO_N "checking if you want to use default-colors... $ECHO_C" >&6
+
+# Check whether --enable-default-colors or --disable-default-colors was given.
+if test "${enable_default_colors+set}" = set; then
+  enableval="$enable_default_colors"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_dft_colors=yes
+  else
+    use_dft_colors=no
+  fi
+else
+  enableval=no
+  use_dft_colors=no
+
+fi;
+echo "$as_me:31845: result: $use_dft_colors" >&5
+echo "${ECHO_T}$use_dft_colors" >&6
+test $use_dft_colors = "yes" && cat >>confdefs.h <<\EOF
+#define USE_DEFAULT_COLORS 1
+EOF
+
+fi
+
+echo "$as_me:31853: checking if experimental keyboard-layout logic should be used" >&5
+echo $ECHO_N "checking if experimental keyboard-layout logic should be used... $ECHO_C" >&6
+
+# Check whether --enable-kbd-layout or --disable-kbd-layout was given.
+if test "${enable_kbd_layout+set}" = set; then
+  enableval="$enable_kbd_layout"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_kbd_layout=$enableval
+  else
+    use_kbd_layout=no
+  fi
+else
+  enableval=no
+  use_kbd_layout=no
+
+fi;
+echo "$as_me:31870: result: $use_kbd_layout" >&5
+echo "${ECHO_T}$use_kbd_layout" >&6
+test $use_kbd_layout != no && cat >>confdefs.h <<\EOF
+#define EXP_KEYBOARD_LAYOUT 1
+EOF
+
+echo "$as_me:31876: checking if experimental nested-table logic should be used" >&5
+echo $ECHO_N "checking if experimental nested-table logic should be used... $ECHO_C" >&6
+
+# Check whether --enable-nested-tables or --disable-nested-tables was given.
+if test "${enable_nested_tables+set}" = set; then
+  enableval="$enable_nested_tables"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_nested_tables=$enableval
+  else
+    use_nested_tables=no
+  fi
+else
+  enableval=no
+  use_nested_tables=no
+
+fi;
+echo "$as_me:31893: result: $use_nested_tables" >&5
+echo "${ECHO_T}$use_nested_tables" >&6
+test $use_nested_tables != no && cat >>confdefs.h <<\EOF
+#define EXP_NESTED_TABLES 1
+EOF
+
+echo "$as_me:31899: checking if alternative line-edit bindings should be used" >&5
+echo $ECHO_N "checking if alternative line-edit bindings should be used... $ECHO_C" >&6
+
+# Check whether --enable-alt-bindings or --disable-alt-bindings was given.
+if test "${enable_alt_bindings+set}" = set; then
+  enableval="$enable_alt_bindings"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_alt_bindings=$enableval
+  else
+    use_alt_bindings=yes
+  fi
+else
+  enableval=no
+  use_alt_bindings=yes
+
+fi;
+echo "$as_me:31916: result: $use_alt_bindings" >&5
+echo "${ECHO_T}$use_alt_bindings" >&6
+test $use_alt_bindings != no && cat >>confdefs.h <<\EOF
+#define USE_ALT_BINDINGS 1
+EOF
+
+echo "$as_me:31922: checking if ascii case-conversion should be used" >&5
+echo $ECHO_N "checking if ascii case-conversion should be used... $ECHO_C" >&6
+
+# Check whether --enable-ascii-ctypes or --disable-ascii-ctypes was given.
+if test "${enable_ascii_ctypes+set}" = set; then
+  enableval="$enable_ascii_ctypes"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_ascii_ctypes=$enableval
+  else
+    use_ascii_ctypes=yes
+  fi
+else
+  enableval=yes
+  use_ascii_ctypes=yes
+
+fi;
+echo "$as_me:31939: result: $use_ascii_ctypes" >&5
+echo "${ECHO_T}$use_ascii_ctypes" >&6
+test $use_ascii_ctypes != no && cat >>confdefs.h <<\EOF
+#define USE_ASCII_CTYPES 1
+EOF
+
+echo "$as_me:31945: checking if you want to use extended HTML DTD logic" >&5
+echo $ECHO_N "checking if you want to use extended HTML DTD logic... $ECHO_C" >&6
+
+# Check whether --enable-extended-dtd or --disable-extended-dtd was given.
+if test "${enable_extended_dtd+set}" = set; then
+  enableval="$enable_extended_dtd"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_ext_htmldtd=no
+  else
+    use_ext_htmldtd=yes
+  fi
+else
+  enableval=yes
+  use_ext_htmldtd=yes
+
+fi;
+echo "$as_me:31962: result: $use_ext_htmldtd" >&5
+echo "${ECHO_T}$use_ext_htmldtd" >&6
+test $use_ext_htmldtd = "no" && cat >>confdefs.h <<\EOF
+#define NO_EXTENDED_HTMLDTD 1
+EOF
+
+echo "$as_me:31968: checking if file-upload logic should be used" >&5
+echo $ECHO_N "checking if file-upload logic should be used... $ECHO_C" >&6
+
+# Check whether --enable-file-upload or --disable-file-upload was given.
+if test "${enable_file_upload+set}" = set; then
+  enableval="$enable_file_upload"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_file_upload=$enableval
+  else
+    use_file_upload=yes
+  fi
+else
+  enableval=yes
+  use_file_upload=yes
+
+fi;
+echo "$as_me:31985: result: $use_file_upload" >&5
+echo "${ECHO_T}$use_file_upload" >&6
+test $use_file_upload != no && cat >>confdefs.h <<\EOF
+#define USE_FILE_UPLOAD 1
+EOF
+
+echo "$as_me:31991: checking if IDNA support should be used" >&5
+echo $ECHO_N "checking if IDNA support should be used... $ECHO_C" >&6
+
+# Check whether --enable-idna or --disable-idna was given.
+if test "${enable_idna+set}" = set; then
+  enableval="$enable_idna"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_idna=$enableval
+  else
+    use_idna=yes
+  fi
+else
+  enableval=yes
+  use_idna=yes
+
+fi;
+echo "$as_me:32008: result: $use_idna" >&5
+echo "${ECHO_T}$use_idna" >&6
+
+if test "$use_idna" = yes ; then
+
+  case "$use_idna" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$use_idna" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 32047 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:32059: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:32062: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:32065: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:32068: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:32085: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 32126 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:32138: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:32141: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:32144: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:32147: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:32164: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:32180: error: cannot find  under $use_idna" >&5
+echo "$as_me: error: cannot find  under $use_idna" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:32205: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:32234: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:32243: error: cannot find  under $use_idna" >&5
+echo "$as_me: error: cannot find  under $use_idna" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_idn=
+cf_cv_library_path_idn=
+
+echo "${as_me:-configure}:32257: testing Starting FIND_LINKAGE(idn,) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 32262 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <idna.h>
+
+int
+main ()
+{
+
+	char *output = 0;
+    int code = idna_to_ascii_8z("name", &output, IDNA_USE_STD3_ASCII_RULES);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:32280: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:32283: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:32286: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:32289: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_idn=yes
+	cf_cv_header_path_idn=/usr/include
+	cf_cv_library_path_idn=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-lidn $LIBICONV $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 32303 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <idna.h>
+
+int
+main ()
+{
+
+	char *output = 0;
+    int code = idna_to_ascii_8z("name", &output, IDNA_USE_STD3_ASCII_RULES);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:32321: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:32324: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:32327: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:32330: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_idn=yes
+	cf_cv_header_path_idn=/usr/include
+	cf_cv_library_path_idn=/usr/lib
+	cf_cv_library_file_idn="-lidn"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_idn=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for idn library" 1>&6
+
+echo "${as_me:-configure}:32347: testing find linkage for idn library ..." 1>&5
+
+echo "${as_me:-configure}:32349: testing Searching for headers in FIND_LINKAGE(idn,) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/idn &&       cf_search="$cf_search $cf_header_path/include/idn"
+	test -d $cf_header_path/include/idn/include &&    cf_search="$cf_search $cf_header_path/include/idn/include"
+	test -d $cf_header_path/idn/include &&       cf_search="$cf_search $cf_header_path/idn/include"
+	test -d $cf_header_path/idn/include/idn &&    cf_search="$cf_search $cf_header_path/idn/include/idn"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/idn &&       cf_search="$cf_search /usr/include/idn"
+	test -d /usr/include/idn/include &&    cf_search="$cf_search /usr/include/idn/include"
+	test -d /usr/idn/include &&       cf_search="$cf_search /usr/idn/include"
+	test -d /usr/idn/include/idn &&    cf_search="$cf_search /usr/idn/include/idn"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/idn &&       cf_search="$cf_search $prefix/include/idn"
+	test -d $prefix/include/idn/include &&    cf_search="$cf_search $prefix/include/idn/include"
+	test -d $prefix/idn/include &&       cf_search="$cf_search $prefix/idn/include"
+	test -d $prefix/idn/include/idn &&    cf_search="$cf_search $prefix/idn/include/idn"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/idn &&       cf_search="$cf_search /usr/local/include/idn"
+	test -d /usr/local/include/idn/include &&    cf_search="$cf_search /usr/local/include/idn/include"
+	test -d /usr/local/idn/include &&       cf_search="$cf_search /usr/local/idn/include"
+	test -d /usr/local/idn/include/idn &&    cf_search="$cf_search /usr/local/idn/include/idn"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/idn &&       cf_search="$cf_search /opt/include/idn"
+	test -d /opt/include/idn/include &&    cf_search="$cf_search /opt/include/idn/include"
+	test -d /opt/idn/include &&       cf_search="$cf_search /opt/idn/include"
+	test -d /opt/idn/include/idn &&    cf_search="$cf_search /opt/idn/include/idn"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/idn &&       cf_search="$cf_search $HOME/include/idn"
+	test -d $HOME/include/idn/include &&    cf_search="$cf_search $HOME/include/idn/include"
+	test -d $HOME/idn/include &&       cf_search="$cf_search $HOME/idn/include"
+	test -d $HOME/idn/include/idn &&    cf_search="$cf_search $HOME/idn/include/idn"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/idn && cf_search="$cf_search $includedir/idn"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/idn && cf_search="$cf_search $oldincludedir/idn"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_idn in $cf_search
+    do
+      if test -d $cf_cv_header_path_idn ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_idn" 1>&6
+
+echo "${as_me:-configure}:32462: testing ... testing $cf_cv_header_path_idn ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_idn"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 32466 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <idna.h>
+
+int
+main ()
+{
+
+	char *output = 0;
+    int code = idna_to_ascii_8z("name", &output, IDNA_USE_STD3_ASCII_RULES);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:32484: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:32487: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:32490: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:32493: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found idn headers in $cf_cv_header_path_idn" 1>&6
+
+echo "${as_me:-configure}:32498: testing ... found idn headers in $cf_cv_header_path_idn ..." 1>&5
+
+            cf_cv_find_linkage_idn=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_idn" = maybe ; then
+
+echo "${as_me:-configure}:32516: testing Searching for idn library in FIND_LINKAGE(idn,) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+      if test "$cf_cv_find_linkage_idn" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/idn &&       cf_search="$cf_search $cf_library_path/lib/idn"
+	test -d $cf_library_path/lib/idn/lib &&    cf_search="$cf_search $cf_library_path/lib/idn/lib"
+	test -d $cf_library_path/idn/lib &&       cf_search="$cf_search $cf_library_path/idn/lib"
+	test -d $cf_library_path/idn/lib/idn &&    cf_search="$cf_search $cf_library_path/idn/lib/idn"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/idn &&       cf_search="$cf_search /usr/lib/idn"
+	test -d /usr/lib/idn/lib &&    cf_search="$cf_search /usr/lib/idn/lib"
+	test -d /usr/idn/lib &&       cf_search="$cf_search /usr/idn/lib"
+	test -d /usr/idn/lib/idn &&    cf_search="$cf_search /usr/idn/lib/idn"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/idn &&       cf_search="$cf_search $prefix/lib/idn"
+	test -d $prefix/lib/idn/lib &&    cf_search="$cf_search $prefix/lib/idn/lib"
+	test -d $prefix/idn/lib &&       cf_search="$cf_search $prefix/idn/lib"
+	test -d $prefix/idn/lib/idn &&    cf_search="$cf_search $prefix/idn/lib/idn"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/idn &&       cf_search="$cf_search /usr/local/lib/idn"
+	test -d /usr/local/lib/idn/lib &&    cf_search="$cf_search /usr/local/lib/idn/lib"
+	test -d /usr/local/idn/lib &&       cf_search="$cf_search /usr/local/idn/lib"
+	test -d /usr/local/idn/lib/idn &&    cf_search="$cf_search /usr/local/idn/lib/idn"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/idn &&       cf_search="$cf_search /opt/lib/idn"
+	test -d /opt/lib/idn/lib &&    cf_search="$cf_search /opt/lib/idn/lib"
+	test -d /opt/idn/lib &&       cf_search="$cf_search /opt/idn/lib"
+	test -d /opt/idn/lib/idn &&    cf_search="$cf_search /opt/idn/lib/idn"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/idn &&       cf_search="$cf_search $HOME/lib/idn"
+	test -d $HOME/lib/idn/lib &&    cf_search="$cf_search $HOME/lib/idn/lib"
+	test -d $HOME/idn/lib &&       cf_search="$cf_search $HOME/idn/lib"
+	test -d $HOME/idn/lib/idn &&    cf_search="$cf_search $HOME/idn/lib/idn"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_idn in $cf_search
+        do
+          if test -d $cf_cv_library_path_idn ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_idn" 1>&6
+
+echo "${as_me:-configure}:32613: testing ... testing $cf_cv_library_path_idn ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-lidn $LIBICONV $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_idn"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 32619 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <idna.h>
+
+int
+main ()
+{
+
+	char *output = 0;
+    int code = idna_to_ascii_8z("name", &output, IDNA_USE_STD3_ASCII_RULES);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:32637: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:32640: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:32643: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:32646: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found idn library in $cf_cv_library_path_idn" 1>&6
+
+echo "${as_me:-configure}:32651: testing ... found idn library in $cf_cv_library_path_idn ..." 1>&5
+
+                cf_cv_find_linkage_idn=yes
+                cf_cv_library_file_idn="-lidn"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_idn=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_idn" = yes ; then
+
+if test -n "$cf_cv_header_path_idn" ; then
+  for cf_add_incdir in $cf_cv_header_path_idn
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 32710 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:32722: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:32725: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:32728: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:32731: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:32748: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+if test -n "$cf_cv_library_path_idn" ; then
+  for cf_add_libdir in $cf_cv_library_path_idn
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:32782: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	LIBS="-lidn $LIBS"
+
+else
+{ echo "$as_me:32793: WARNING: Cannot find idn library" >&5
+echo "$as_me: WARNING: Cannot find idn library" >&2;}
+fi
+
+if test "x$cf_cv_find_linkage_idn" = xyes ; then
+	cat >>confdefs.h <<\EOF
+#define USE_IDNA 1
+EOF
+
+fi
+
+fi
+
+echo "$as_me:32806: checking if element-justification logic should be used" >&5
+echo $ECHO_N "checking if element-justification logic should be used... $ECHO_C" >&6
+
+# Check whether --enable-justify-elts or --disable-justify-elts was given.
+if test "${enable_justify_elts+set}" = set; then
+  enableval="$enable_justify_elts"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_justify_elts=$enableval
+  else
+    use_justify_elts=yes
+  fi
+else
+  enableval=yes
+  use_justify_elts=yes
+
+fi;
+echo "$as_me:32823: result: $use_justify_elts" >&5
+echo "${ECHO_T}$use_justify_elts" >&6
+test $use_justify_elts != no && cat >>confdefs.h <<\EOF
+#define USE_JUSTIFY_ELTS 1
+EOF
+
+echo "$as_me:32829: checking if partial-display should be used" >&5
+echo $ECHO_N "checking if partial-display should be used... $ECHO_C" >&6
+
+# Check whether --enable-partial or --disable-partial was given.
+if test "${enable_partial+set}" = set; then
+  enableval="$enable_partial"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_partial_display=$enableval
+  else
+    use_partial_display=yes
+  fi
+else
+  enableval=yes
+  use_partial_display=yes
+
+fi;
+echo "$as_me:32846: result: $use_partial_display" >&5
+echo "${ECHO_T}$use_partial_display" >&6
+test $use_partial_display != no && cat >>confdefs.h <<\EOF
+#define DISP_PARTIAL 1
+EOF
+
+echo "$as_me:32852: checking if persistent-cookie logic should be used" >&5
+echo $ECHO_N "checking if persistent-cookie logic should be used... $ECHO_C" >&6
+
+# Check whether --enable-persistent-cookies or --disable-persistent-cookies was given.
+if test "${enable_persistent_cookies+set}" = set; then
+  enableval="$enable_persistent_cookies"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_filed_cookies=$enableval
+  else
+    use_filed_cookies=yes
+  fi
+else
+  enableval=yes
+  use_filed_cookies=yes
+
+fi;
+echo "$as_me:32869: result: $use_filed_cookies" >&5
+echo "${ECHO_T}$use_filed_cookies" >&6
+test $use_filed_cookies != no && cat >>confdefs.h <<\EOF
+#define USE_PERSISTENT_COOKIES 1
+EOF
+
+echo "$as_me:32875: checking if html source should be colorized" >&5
+echo $ECHO_N "checking if html source should be colorized... $ECHO_C" >&6
+
+# Check whether --enable-prettysrc or --disable-prettysrc was given.
+if test "${enable_prettysrc+set}" = set; then
+  enableval="$enable_prettysrc"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_prettysrc=$enableval
+  else
+    use_prettysrc=yes
+  fi
+else
+  enableval=yes
+  use_prettysrc=yes
+
+fi;
+echo "$as_me:32892: result: $use_prettysrc" >&5
+echo "${ECHO_T}$use_prettysrc" >&6
+test $use_prettysrc != no && cat >>confdefs.h <<\EOF
+#define USE_PRETTYSRC 1
+EOF
+
+echo "$as_me:32898: checking if progress-bar code should be used" >&5
+echo $ECHO_N "checking if progress-bar code should be used... $ECHO_C" >&6
+
+# Check whether --enable-progressbar or --disable-progressbar was given.
+if test "${enable_progressbar+set}" = set; then
+  enableval="$enable_progressbar"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_progressbar=$enableval
+  else
+    use_progressbar=yes
+  fi
+else
+  enableval=yes
+  use_progressbar=yes
+
+fi;
+echo "$as_me:32915: result: $use_progressbar" >&5
+echo "${ECHO_T}$use_progressbar" >&6
+test $use_progressbar != no && cat >>confdefs.h <<\EOF
+#define USE_PROGRESSBAR 1
+EOF
+
+echo "$as_me:32921: checking if read-progress message should show ETA" >&5
+echo $ECHO_N "checking if read-progress message should show ETA... $ECHO_C" >&6
+
+# Check whether --enable-read-eta or --disable-read-eta was given.
+if test "${enable_read_eta+set}" = set; then
+  enableval="$enable_read_eta"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_read_eta=$enableval
+  else
+    use_read_eta=yes
+  fi
+else
+  enableval=yes
+  use_read_eta=yes
+
+fi;
+echo "$as_me:32938: result: $use_read_eta" >&5
+echo "${ECHO_T}$use_read_eta" >&6
+test $use_read_eta != no && cat >>confdefs.h <<\EOF
+#define USE_READPROGRESS 1
+EOF
+
+echo "$as_me:32944: checking if source caching should be used" >&5
+echo $ECHO_N "checking if source caching should be used... $ECHO_C" >&6
+
+# Check whether --enable-source-cache or --disable-source-cache was given.
+if test "${enable_source_cache+set}" = set; then
+  enableval="$enable_source_cache"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_source_cache=$enableval
+  else
+    use_source_cache=yes
+  fi
+else
+  enableval=yes
+  use_source_cache=yes
+
+fi;
+echo "$as_me:32961: result: $use_source_cache" >&5
+echo "${ECHO_T}$use_source_cache" >&6
+test $use_source_cache != no && cat >>confdefs.h <<\EOF
+#define USE_SOURCE_CACHE 1
+EOF
+
+echo "$as_me:32967: checking if scrollbar code should be used" >&5
+echo $ECHO_N "checking if scrollbar code should be used... $ECHO_C" >&6
+
+# Check whether --enable-scrollbar or --disable-scrollbar was given.
+if test "${enable_scrollbar+set}" = set; then
+  enableval="$enable_scrollbar"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_scrollbar=$enableval
+  else
+    use_scrollbar=yes
+  fi
+else
+  enableval=yes
+  use_scrollbar=yes
+
+fi;
+echo "$as_me:32984: result: $use_scrollbar" >&5
+echo "${ECHO_T}$use_scrollbar" >&6
+
+echo "$as_me:32987: checking if charset-selection logic should be used" >&5
+echo $ECHO_N "checking if charset-selection logic should be used... $ECHO_C" >&6
+
+# Check whether --enable-charset-choice or --disable-charset-choice was given.
+if test "${enable_charset_choice+set}" = set; then
+  enableval="$enable_charset_choice"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_charset_choice=$enableval
+  else
+    use_charset_choice=no
+  fi
+else
+  enableval=no
+  use_charset_choice=no
+
+fi;
+echo "$as_me:33004: result: $use_charset_choice" >&5
+echo "${ECHO_T}$use_charset_choice" >&6
+test $use_charset_choice != no && cat >>confdefs.h <<\EOF
+#define USE_CHARSET_CHOICE 1
+EOF
+
+echo "$as_me:33010: checking if you want to use external commands" >&5
+echo $ECHO_N "checking if you want to use external commands... $ECHO_C" >&6
+
+# Check whether --enable-externs or --disable-externs was given.
+if test "${enable_externs+set}" = set; then
+  enableval="$enable_externs"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_externs=yes
+  else
+    use_externs=no
+  fi
+else
+  enableval=no
+  use_externs=no
+
+fi;
+echo "$as_me:33027: result: $use_externs" >&5
+echo "${ECHO_T}$use_externs" >&6
+if test $use_externs != "no" ; then
+	cat >>confdefs.h <<\EOF
+#define USE_EXTERNALS 1
+EOF
+
+	EXTRA_OBJS="$EXTRA_OBJS LYExtern\$o"
+fi
+
+echo "$as_me:33037: checking if you want to use setfont support" >&5
+echo $ECHO_N "checking if you want to use setfont support... $ECHO_C" >&6
+
+# Check whether --enable-font-switch or --disable-font-switch was given.
+if test "${enable_font_switch+set}" = set; then
+  enableval="$enable_font_switch"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_setfont=yes
+  else
+    use_setfont=no
+  fi
+else
+  enableval=no
+  use_setfont=no
+
+fi;
+echo "$as_me:33054: result: $use_setfont" >&5
+echo "${ECHO_T}$use_setfont" >&6
+if test $use_setfont = yes ; then
+	case $host_os in
+	linux*)
+
+test -z "$SETFONT" && SETFONT=consolechars
+for ac_prog in $SETFONT consolechars setfont
+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 "$as_me:33065: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_SETFONT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $SETFONT in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SETFONT="$SETFONT" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_SETFONT="$ac_dir/$ac_word"
+   echo "$as_me:33082: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+SETFONT=$ac_cv_path_SETFONT
+
+if test -n "$SETFONT"; then
+  echo "$as_me:33093: result: $SETFONT" >&5
+echo "${ECHO_T}$SETFONT" >&6
+else
+  echo "$as_me:33096: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$SETFONT" && break
+done
+test -n "$SETFONT" || SETFONT="$SETFONT"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_SETFONT
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:33155: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define SETFONT_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define SETFONT_ARGS "$cf_path_args"
+EOF
+
+fi
+
+		;;
+	os2*)
+		SETFONT=built-in
+		test -n "$verbose" && echo "	Assume $host_os has font-switching" 1>&6
+
+echo "${as_me:-configure}:33172: testing Assume $host_os has font-switching ..." 1>&5
+
+		;;
+	*)
+		SETFONT=unknown
+		test -n "$verbose" && echo "	Assume $host_os has no font-switching" 1>&6
+
+echo "${as_me:-configure}:33179: testing Assume $host_os has no font-switching ..." 1>&5
+
+		;;
+	esac
+	if test -z "$SETFONT" ; then
+		{ echo "$as_me:33184: WARNING: Cannot find a font-setting program" >&5
+echo "$as_me: WARNING: Cannot find a font-setting program" >&2;}
+	elif test "$SETFONT" != unknown ; then
+		cat >>confdefs.h <<\EOF
+#define EXP_CHARTRANS_AUTOSWITCH 1
+EOF
+
+	fi
+fi
+
+echo "$as_me:33194: checking if you want cgi-link support" >&5
+echo $ECHO_N "checking if you want cgi-link support... $ECHO_C" >&6
+
+# Check whether --enable-cgi-links or --disable-cgi-links was given.
+if test "${enable_cgi_links+set}" = set; then
+  enableval="$enable_cgi_links"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    cat >>confdefs.h <<\EOF
+#define LYNXCGI_LINKS 1
+EOF
+
+  fi
+else
+  enableval=no
+fi;
+echo "$as_me:33210: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+echo "$as_me:33213: checking if you want change-exec support" >&5
+echo $ECHO_N "checking if you want change-exec support... $ECHO_C" >&6
+
+# Check whether --enable-change-exec or --disable-change-exec was given.
+if test "${enable_change_exec+set}" = set; then
+  enableval="$enable_change_exec"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_change_exec=yes
+  else
+    use_change_exec=no
+  fi
+else
+  enableval=no
+  use_change_exec=no
+
+fi;
+echo "$as_me:33230: result: $use_change_exec" >&5
+echo "${ECHO_T}$use_change_exec" >&6
+test $use_change_exec = yes && cat >>confdefs.h <<\EOF
+#define ENABLE_OPTS_CHANGE_EXEC 1
+EOF
+
+echo "$as_me:33236: checking if you want exec-links support" >&5
+echo $ECHO_N "checking if you want exec-links support... $ECHO_C" >&6
+
+# Check whether --enable-exec-links or --disable-exec-links was given.
+if test "${enable_exec_links+set}" = set; then
+  enableval="$enable_exec_links"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "$use_change_exec" ; then
+    use_exec_links=$enableval
+  else
+    use_exec_links=$enableval
+  fi
+else
+  enableval=$use_change_exec
+  use_exec_links=$enableval
+
+fi;
+echo "$as_me:33253: result: $use_exec_links" >&5
+echo "${ECHO_T}$use_exec_links" >&6
+test $use_exec_links = yes && cat >>confdefs.h <<\EOF
+#define EXEC_LINKS 1
+EOF
+
+echo "$as_me:33259: checking if you want exec-scripts support" >&5
+echo $ECHO_N "checking if you want exec-scripts support... $ECHO_C" >&6
+
+# Check whether --enable-exec-scripts or --disable-exec-scripts was given.
+if test "${enable_exec_scripts+set}" = set; then
+  enableval="$enable_exec_scripts"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "$use_change_exec" ; then
+    use_exec_scripts=$enableval
+  else
+    use_exec_scripts=$enableval
+  fi
+else
+  enableval=$use_change_exec
+  use_exec_scripts=$enableval
+
+fi;
+echo "$as_me:33276: result: $use_exec_scripts" >&5
+echo "${ECHO_T}$use_exec_scripts" >&6
+test $use_exec_scripts = yes && cat >>confdefs.h <<\EOF
+#define EXEC_SCRIPTS 1
+EOF
+
+echo "$as_me:33282: checking if you want internal-links feature" >&5
+echo $ECHO_N "checking if you want internal-links feature... $ECHO_C" >&6
+
+# Check whether --enable-internal-links or --disable-internal-links was given.
+if test "${enable_internal_links+set}" = set; then
+  enableval="$enable_internal_links"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_internal_links=yes
+  else
+    use_internal_links=no
+  fi
+else
+  enableval=no
+  use_internal_links=no
+
+fi;
+echo "$as_me:33299: result: $use_internal_links" >&5
+echo "${ECHO_T}$use_internal_links" >&6
+test $use_internal_links = no && cat >>confdefs.h <<\EOF
+#define DONT_TRACK_INTERNAL_LINKS 1
+EOF
+
+echo "$as_me:33305: checking if you want to fork NSL requests" >&5
+echo $ECHO_N "checking if you want to fork NSL requests... $ECHO_C" >&6
+
+# Check whether --enable-nsl-fork or --disable-nsl-fork was given.
+if test "${enable_nsl_fork+set}" = set; then
+  enableval="$enable_nsl_fork"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_nsl_fork=yes
+  else
+    use_nsl_fork=no
+  fi
+else
+  enableval=no
+  use_nsl_fork=no
+
+fi;
+echo "$as_me:33322: result: $use_nsl_fork" >&5
+echo "${ECHO_T}$use_nsl_fork" >&6
+if test $use_nsl_fork = yes ; then
+	case $host_os in
+	mingw*)
+		cat >>confdefs.h <<\EOF
+#define _WINDOWS_NSL 1
+EOF
+
+		;;
+	*)
+		cat >>confdefs.h <<\EOF
+#define NSL_FORK 1
+EOF
+
+		;;
+	esac
+fi
+
+echo "$as_me:33341: checking if you want to log URL requests via syslog" >&5
+echo $ECHO_N "checking if you want to log URL requests via syslog... $ECHO_C" >&6
+
+# Check whether --enable-syslog or --disable-syslog was given.
+if test "${enable_syslog+set}" = set; then
+  enableval="$enable_syslog"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_syslog=yes
+  else
+    use_syslog=no
+  fi
+else
+  enableval=no
+  use_syslog=no
+
+fi;
+echo "$as_me:33358: result: $use_syslog" >&5
+echo "${ECHO_T}$use_syslog" >&6
+test $use_syslog = yes && cat >>confdefs.h <<\EOF
+#define SYSLOG_REQUESTED_URLS 1
+EOF
+
+echo "$as_me:33364: checking if you want to underline links" >&5
+echo $ECHO_N "checking if you want to underline links... $ECHO_C" >&6
+
+# Check whether --enable-underlines or --disable-underlines was given.
+if test "${enable_underlines+set}" = set; then
+  enableval="$enable_underlines"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_underline=yes
+  else
+    use_underline=no
+  fi
+else
+  enableval=no
+  use_underline=no
+
+fi;
+echo "$as_me:33381: result: $use_underline" >&5
+echo "${ECHO_T}$use_underline" >&6
+test $use_underline = yes && cat >>confdefs.h <<\EOF
+#define UNDERLINE_LINKS 1
+EOF
+
+test $use_underline = no  && cat >>confdefs.h <<\EOF
+#define UNDERLINE_LINKS 0
+EOF
+
+echo "$as_me:33391: checking if help files should be gzip'ed" >&5
+echo $ECHO_N "checking if help files should be gzip'ed... $ECHO_C" >&6
+
+# 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 "$as_me:33408: result: $use_gzip_help" >&5
+echo "${ECHO_T}$use_gzip_help" >&6
+
+echo "$as_me:33411: checking if you want to use libbz2 for decompression of some bzip2 files" >&5
+echo $ECHO_N "checking if you want to use libbz2 for decompression of some bzip2 files... $ECHO_C" >&6
+
+# Check whether --with-bzlib or --without-bzlib was given.
+if test "${with_bzlib+set}" = set; then
+  withval="$with_bzlib"
+  use_bzlib=$withval
+else
+  use_bzlib=no
+fi;
+echo "$as_me:33421: result: $use_bzlib" >&5
+echo "${ECHO_T}$use_bzlib" >&6
+
+if test ".$use_bzlib" != ".no" ; then
+
+  case "$use_bzlib" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$use_bzlib" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 33460 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:33472: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:33475: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:33478: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:33481: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:33498: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 33539 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:33551: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:33554: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:33557: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:33560: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:33577: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:33593: error: cannot find  under $use_bzlib" >&5
+echo "$as_me: error: cannot find  under $use_bzlib" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:33618: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:33647: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:33656: error: cannot find  under $use_bzlib" >&5
+echo "$as_me: error: cannot find  under $use_bzlib" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_bz2=
+cf_cv_library_path_bz2=
+
+echo "${as_me:-configure}:33670: testing Starting FIND_LINKAGE(bz2,bzlib) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 33675 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <bzlib.h>
+
+int
+main ()
+{
+
+    BZ2_bzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:33692: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:33695: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:33698: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:33701: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_bz2=yes
+	cf_cv_header_path_bz2=/usr/include
+	cf_cv_library_path_bz2=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-lbz2  $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 33715 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <bzlib.h>
+
+int
+main ()
+{
+
+    BZ2_bzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:33732: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:33735: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:33738: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:33741: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_bz2=yes
+	cf_cv_header_path_bz2=/usr/include
+	cf_cv_library_path_bz2=/usr/lib
+	cf_cv_library_file_bz2="-lbz2"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_bz2=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for bz2 library" 1>&6
+
+echo "${as_me:-configure}:33758: testing find linkage for bz2 library ..." 1>&5
+
+echo "${as_me:-configure}:33760: testing Searching for headers in FIND_LINKAGE(bz2,bzlib) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/bzlib &&       cf_search="$cf_search $cf_header_path/include/bzlib"
+	test -d $cf_header_path/include/bzlib/include &&    cf_search="$cf_search $cf_header_path/include/bzlib/include"
+	test -d $cf_header_path/bzlib/include &&       cf_search="$cf_search $cf_header_path/bzlib/include"
+	test -d $cf_header_path/bzlib/include/bzlib &&    cf_search="$cf_search $cf_header_path/bzlib/include/bzlib"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/bzlib &&       cf_search="$cf_search /usr/include/bzlib"
+	test -d /usr/include/bzlib/include &&    cf_search="$cf_search /usr/include/bzlib/include"
+	test -d /usr/bzlib/include &&       cf_search="$cf_search /usr/bzlib/include"
+	test -d /usr/bzlib/include/bzlib &&    cf_search="$cf_search /usr/bzlib/include/bzlib"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/bzlib &&       cf_search="$cf_search $prefix/include/bzlib"
+	test -d $prefix/include/bzlib/include &&    cf_search="$cf_search $prefix/include/bzlib/include"
+	test -d $prefix/bzlib/include &&       cf_search="$cf_search $prefix/bzlib/include"
+	test -d $prefix/bzlib/include/bzlib &&    cf_search="$cf_search $prefix/bzlib/include/bzlib"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/bzlib &&       cf_search="$cf_search /usr/local/include/bzlib"
+	test -d /usr/local/include/bzlib/include &&    cf_search="$cf_search /usr/local/include/bzlib/include"
+	test -d /usr/local/bzlib/include &&       cf_search="$cf_search /usr/local/bzlib/include"
+	test -d /usr/local/bzlib/include/bzlib &&    cf_search="$cf_search /usr/local/bzlib/include/bzlib"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/bzlib &&       cf_search="$cf_search /opt/include/bzlib"
+	test -d /opt/include/bzlib/include &&    cf_search="$cf_search /opt/include/bzlib/include"
+	test -d /opt/bzlib/include &&       cf_search="$cf_search /opt/bzlib/include"
+	test -d /opt/bzlib/include/bzlib &&    cf_search="$cf_search /opt/bzlib/include/bzlib"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/bzlib &&       cf_search="$cf_search $HOME/include/bzlib"
+	test -d $HOME/include/bzlib/include &&    cf_search="$cf_search $HOME/include/bzlib/include"
+	test -d $HOME/bzlib/include &&       cf_search="$cf_search $HOME/bzlib/include"
+	test -d $HOME/bzlib/include/bzlib &&    cf_search="$cf_search $HOME/bzlib/include/bzlib"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/bzlib && cf_search="$cf_search $includedir/bzlib"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/bzlib && cf_search="$cf_search $oldincludedir/bzlib"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_bz2 in $cf_search
+    do
+      if test -d $cf_cv_header_path_bz2 ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_bz2" 1>&6
+
+echo "${as_me:-configure}:33873: testing ... testing $cf_cv_header_path_bz2 ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_bz2"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 33877 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <bzlib.h>
+
+int
+main ()
+{
+
+    BZ2_bzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:33894: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:33897: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:33900: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:33903: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found bz2 headers in $cf_cv_header_path_bz2" 1>&6
+
+echo "${as_me:-configure}:33908: testing ... found bz2 headers in $cf_cv_header_path_bz2 ..." 1>&5
+
+            cf_cv_find_linkage_bz2=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_bz2" = maybe ; then
+
+echo "${as_me:-configure}:33926: testing Searching for bz2 library in FIND_LINKAGE(bz2,bzlib) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+        CPPFLAGS="$cf_test_CPPFLAGS"
+        LIBS="-lbz2  $cf_save_LIBS"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 33934 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <bzlib.h>
+
+int
+main ()
+{
+
+    BZ2_bzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:33951: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:33954: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:33957: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:33960: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found bz2 library in system" 1>&6
+
+echo "${as_me:-configure}:33965: testing ... found bz2 library in system ..." 1>&5
+
+            cf_cv_find_linkage_bz2=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+            CPPFLAGS="$cf_save_CPPFLAGS"
+            LIBS="$cf_save_LIBS"
+
+      if test "$cf_cv_find_linkage_bz2" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/bz2 &&       cf_search="$cf_search $cf_library_path/lib/bz2"
+	test -d $cf_library_path/lib/bz2/lib &&    cf_search="$cf_search $cf_library_path/lib/bz2/lib"
+	test -d $cf_library_path/bz2/lib &&       cf_search="$cf_search $cf_library_path/bz2/lib"
+	test -d $cf_library_path/bz2/lib/bz2 &&    cf_search="$cf_search $cf_library_path/bz2/lib/bz2"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/bz2 &&       cf_search="$cf_search /usr/lib/bz2"
+	test -d /usr/lib/bz2/lib &&    cf_search="$cf_search /usr/lib/bz2/lib"
+	test -d /usr/bz2/lib &&       cf_search="$cf_search /usr/bz2/lib"
+	test -d /usr/bz2/lib/bz2 &&    cf_search="$cf_search /usr/bz2/lib/bz2"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/bz2 &&       cf_search="$cf_search $prefix/lib/bz2"
+	test -d $prefix/lib/bz2/lib &&    cf_search="$cf_search $prefix/lib/bz2/lib"
+	test -d $prefix/bz2/lib &&       cf_search="$cf_search $prefix/bz2/lib"
+	test -d $prefix/bz2/lib/bz2 &&    cf_search="$cf_search $prefix/bz2/lib/bz2"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/bz2 &&       cf_search="$cf_search /usr/local/lib/bz2"
+	test -d /usr/local/lib/bz2/lib &&    cf_search="$cf_search /usr/local/lib/bz2/lib"
+	test -d /usr/local/bz2/lib &&       cf_search="$cf_search /usr/local/bz2/lib"
+	test -d /usr/local/bz2/lib/bz2 &&    cf_search="$cf_search /usr/local/bz2/lib/bz2"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/bz2 &&       cf_search="$cf_search /opt/lib/bz2"
+	test -d /opt/lib/bz2/lib &&    cf_search="$cf_search /opt/lib/bz2/lib"
+	test -d /opt/bz2/lib &&       cf_search="$cf_search /opt/bz2/lib"
+	test -d /opt/bz2/lib/bz2 &&    cf_search="$cf_search /opt/bz2/lib/bz2"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/bz2 &&       cf_search="$cf_search $HOME/lib/bz2"
+	test -d $HOME/lib/bz2/lib &&    cf_search="$cf_search $HOME/lib/bz2/lib"
+	test -d $HOME/bz2/lib &&       cf_search="$cf_search $HOME/bz2/lib"
+	test -d $HOME/bz2/lib/bz2 &&    cf_search="$cf_search $HOME/bz2/lib/bz2"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_bz2 in $cf_search
+        do
+          if test -d $cf_cv_library_path_bz2 ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_bz2" 1>&6
+
+echo "${as_me:-configure}:34068: testing ... testing $cf_cv_library_path_bz2 ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-lbz2  $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_bz2"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 34074 "configure"
+#include "confdefs.h"
+
+#include <stdio.h>
+#include <bzlib.h>
+
+int
+main ()
+{
+
+    BZ2_bzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:34091: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:34094: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:34097: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:34100: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found bz2 library in $cf_cv_library_path_bz2" 1>&6
+
+echo "${as_me:-configure}:34105: testing ... found bz2 library in $cf_cv_library_path_bz2 ..." 1>&5
+
+                cf_cv_find_linkage_bz2=yes
+                cf_cv_library_file_bz2="-lbz2"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_bz2=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_bz2" = yes ; then
+
+if test -n "$cf_cv_header_path_bz2" ; then
+  for cf_add_incdir in $cf_cv_header_path_bz2
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 34164 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:34176: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:34179: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:34182: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:34185: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:34202: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+if test -n "$cf_cv_library_path_bz2" ; then
+  for cf_add_libdir in $cf_cv_library_path_bz2
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:34236: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	LIBS="-lbz2 $LIBS"
+
+else
+{ echo "$as_me:34247: WARNING: Cannot find bz2 library" >&5
+echo "$as_me: WARNING: Cannot find bz2 library" >&2;}
+fi
+
+	test "x$cf_cv_find_linkage_bz2" = "xyes" && cat >>confdefs.h <<\EOF
+#define USE_BZLIB 1
+EOF
+
+fi
+
+echo "$as_me:34257: checking if you want to use zlib for decompression of some gzip files" >&5
+echo $ECHO_N "checking if you want to use zlib for decompression of some gzip files... $ECHO_C" >&6
+
+# Check whether --with-zlib or --without-zlib was given.
+if test "${with_zlib+set}" = set; then
+  withval="$with_zlib"
+  use_zlib=$withval
+else
+  use_zlib=no
+fi;
+echo "$as_me:34267: result: $use_zlib" >&5
+echo "${ECHO_T}$use_zlib" >&6
+
+if test ".$use_zlib" != ".no" ; then
+
+  case "$use_zlib" in #(vi
+  no) #(vi
+      ;;
+  yes) #(vi
+      ;;
+  *)
+
+for cf_searchpath in `echo "$use_zlib" | tr $PATH_SEPARATOR ' '`; do
+	if test -d $cf_searchpath/include; then
+
+if test -n "$cf_searchpath/include" ; then
+  for cf_add_incdir in $cf_searchpath/include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 34306 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:34318: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:34321: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:34324: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:34327: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:34344: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	elif test -d $cf_searchpath/../include ; then
+
+if test -n "$cf_searchpath/../include" ; then
+  for cf_add_incdir in $cf_searchpath/../include
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 34385 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:34397: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:34400: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:34403: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:34406: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:34423: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+	else
+{ { echo "$as_me:34439: error: cannot find  under $use_zlib" >&5
+echo "$as_me: error: cannot find  under $use_zlib" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test -d $cf_searchpath/lib; then
+
+if test -n "$cf_searchpath/lib" ; then
+  for cf_add_libdir in $cf_searchpath/lib
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:34464: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	elif test -d $cf_searchpath ; then
+
+if test -n "$cf_searchpath" ; then
+  for cf_add_libdir in $cf_searchpath
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:34493: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	else
+{ { echo "$as_me:34502: error: cannot find  under $use_zlib" >&5
+echo "$as_me: error: cannot find  under $use_zlib" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+done
+
+      ;;
+  esac
+
+# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
+# will be set on completion of the AC_TRY_LINK below.
+cf_cv_header_path_z=
+cf_cv_library_path_z=
+
+echo "${as_me:-configure}:34516: testing Starting FIND_LINKAGE(z,zlib) ..." 1>&5
+
+cf_save_LIBS="$LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 34521 "configure"
+#include "confdefs.h"
+
+#include <zlib.h>
+
+int
+main ()
+{
+
+	gzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:34537: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:34540: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:34543: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:34546: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_z=yes
+	cf_cv_header_path_z=/usr/include
+	cf_cv_library_path_z=/usr/lib
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+LIBS="-lz  $cf_save_LIBS"
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 34560 "configure"
+#include "confdefs.h"
+
+#include <zlib.h>
+
+int
+main ()
+{
+
+	gzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:34576: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:34579: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:34582: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:34585: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+	cf_cv_find_linkage_z=yes
+	cf_cv_header_path_z=/usr/include
+	cf_cv_library_path_z=/usr/lib
+	cf_cv_library_file_z="-lz"
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+	cf_cv_find_linkage_z=no
+	LIBS="$cf_save_LIBS"
+
+    test -n "$verbose" && echo "	find linkage for z library" 1>&6
+
+echo "${as_me:-configure}:34602: testing find linkage for z library ..." 1>&5
+
+echo "${as_me:-configure}:34604: testing Searching for headers in FIND_LINKAGE(z,zlib) ..." 1>&5
+
+    cf_save_CPPFLAGS="$CPPFLAGS"
+    cf_test_CPPFLAGS="$CPPFLAGS"
+
+cf_search=
+
+# collect the current set of include-directories from compiler flags
+cf_header_path_list=""
+if test -n "${CFLAGS}${CPPFLAGS}" ; then
+	for cf_header_path in $CPPFLAGS $CFLAGS
+	do
+		case $cf_header_path in #(vi
+		-I*)
+			cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
+
+test "$cf_header_path" != "NONE" && \
+test -d "$cf_header_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $cf_header_path"
+	test -d $cf_header_path/include &&          cf_search="$cf_search $cf_header_path/include"
+	test -d $cf_header_path/include/zlib &&       cf_search="$cf_search $cf_header_path/include/zlib"
+	test -d $cf_header_path/include/zlib/include &&    cf_search="$cf_search $cf_header_path/include/zlib/include"
+	test -d $cf_header_path/zlib/include &&       cf_search="$cf_search $cf_header_path/zlib/include"
+	test -d $cf_header_path/zlib/include/zlib &&    cf_search="$cf_search $cf_header_path/zlib/include/zlib"
+}
+
+			cf_header_path_list="$cf_header_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+# add the variations for the package we are looking for
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr"
+	test -d /usr/include &&          cf_search="$cf_search /usr/include"
+	test -d /usr/include/zlib &&       cf_search="$cf_search /usr/include/zlib"
+	test -d /usr/include/zlib/include &&    cf_search="$cf_search /usr/include/zlib/include"
+	test -d /usr/zlib/include &&       cf_search="$cf_search /usr/zlib/include"
+	test -d /usr/zlib/include/zlib &&    cf_search="$cf_search /usr/zlib/include/zlib"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for include-directories under $prefix"
+	test -d $prefix/include &&          cf_search="$cf_search $prefix/include"
+	test -d $prefix/include/zlib &&       cf_search="$cf_search $prefix/include/zlib"
+	test -d $prefix/include/zlib/include &&    cf_search="$cf_search $prefix/include/zlib/include"
+	test -d $prefix/zlib/include &&       cf_search="$cf_search $prefix/zlib/include"
+	test -d $prefix/zlib/include/zlib &&    cf_search="$cf_search $prefix/zlib/include/zlib"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /usr/local"
+	test -d /usr/local/include &&          cf_search="$cf_search /usr/local/include"
+	test -d /usr/local/include/zlib &&       cf_search="$cf_search /usr/local/include/zlib"
+	test -d /usr/local/include/zlib/include &&    cf_search="$cf_search /usr/local/include/zlib/include"
+	test -d /usr/local/zlib/include &&       cf_search="$cf_search /usr/local/zlib/include"
+	test -d /usr/local/zlib/include/zlib &&    cf_search="$cf_search /usr/local/zlib/include/zlib"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under /opt"
+	test -d /opt/include &&          cf_search="$cf_search /opt/include"
+	test -d /opt/include/zlib &&       cf_search="$cf_search /opt/include/zlib"
+	test -d /opt/include/zlib/include &&    cf_search="$cf_search /opt/include/zlib/include"
+	test -d /opt/zlib/include &&       cf_search="$cf_search /opt/zlib/include"
+	test -d /opt/zlib/include/zlib &&    cf_search="$cf_search /opt/zlib/include/zlib"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for include-directories under $HOME"
+	test -d $HOME/include &&          cf_search="$cf_search $HOME/include"
+	test -d $HOME/include/zlib &&       cf_search="$cf_search $HOME/include/zlib"
+	test -d $HOME/include/zlib/include &&    cf_search="$cf_search $HOME/include/zlib/include"
+	test -d $HOME/zlib/include &&       cf_search="$cf_search $HOME/zlib/include"
+	test -d $HOME/zlib/include/zlib &&    cf_search="$cf_search $HOME/zlib/include/zlib"
+}
+
+test "$includedir" != NONE && \
+test "$includedir" != "/usr/include" && \
+test -d "$includedir" && {
+	test -d $includedir &&    cf_search="$cf_search $includedir"
+	test -d $includedir/zlib && cf_search="$cf_search $includedir/zlib"
+}
+
+test "$oldincludedir" != NONE && \
+test "$oldincludedir" != "/usr/include" && \
+test -d "$oldincludedir" && {
+	test -d $oldincludedir    && cf_search="$cf_search $oldincludedir"
+	test -d $oldincludedir/zlib && cf_search="$cf_search $oldincludedir/zlib"
+}
+
+cf_search="$cf_search $cf_header_path_list"
+
+    for cf_cv_header_path_z in $cf_search
+    do
+      if test -d $cf_cv_header_path_z ; then
+        test -n "$verbose" && echo "	... testing $cf_cv_header_path_z" 1>&6
+
+echo "${as_me:-configure}:34717: testing ... testing $cf_cv_header_path_z ..." 1>&5
+
+        CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_z"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 34721 "configure"
+#include "confdefs.h"
+
+#include <zlib.h>
+
+int
+main ()
+{
+
+	gzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:34737: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:34740: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:34743: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:34746: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found z headers in $cf_cv_header_path_z" 1>&6
+
+echo "${as_me:-configure}:34751: testing ... found z headers in $cf_cv_header_path_z ..." 1>&5
+
+            cf_cv_find_linkage_z=maybe
+            cf_test_CPPFLAGS="$CPPFLAGS"
+            break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+            CPPFLAGS="$cf_save_CPPFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      fi
+    done
+
+    if test "$cf_cv_find_linkage_z" = maybe ; then
+
+echo "${as_me:-configure}:34769: testing Searching for z library in FIND_LINKAGE(z,zlib) ..." 1>&5
+
+      cf_save_LIBS="$LIBS"
+      cf_save_LDFLAGS="$LDFLAGS"
+
+        CPPFLAGS="$cf_test_CPPFLAGS"
+        LIBS="-lz  $cf_save_LIBS"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 34777 "configure"
+#include "confdefs.h"
+
+#include <zlib.h>
+
+int
+main ()
+{
+
+	gzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:34793: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:34796: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:34799: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:34802: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+            test -n "$verbose" && echo "	... found z library in system" 1>&6
+
+echo "${as_me:-configure}:34807: testing ... found z library in system ..." 1>&5
+
+            cf_cv_find_linkage_z=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+            CPPFLAGS="$cf_save_CPPFLAGS"
+            LIBS="$cf_save_LIBS"
+
+      if test "$cf_cv_find_linkage_z" != yes ; then
+
+cf_search=
+cf_library_path_list=""
+if test -n "${LDFLAGS}${LIBS}" ; then
+	for cf_library_path in $LDFLAGS $LIBS
+	do
+		case $cf_library_path in #(vi
+		-L*)
+			cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
+
+test "$cf_library_path" != "NONE" && \
+test -d "$cf_library_path" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $cf_library_path"
+	test -d $cf_library_path/lib &&          cf_search="$cf_search $cf_library_path/lib"
+	test -d $cf_library_path/lib/z &&       cf_search="$cf_search $cf_library_path/lib/z"
+	test -d $cf_library_path/lib/z/lib &&    cf_search="$cf_search $cf_library_path/lib/z/lib"
+	test -d $cf_library_path/z/lib &&       cf_search="$cf_search $cf_library_path/z/lib"
+	test -d $cf_library_path/z/lib/z &&    cf_search="$cf_search $cf_library_path/z/lib/z"
+}
+
+			cf_library_path_list="$cf_library_path_list $cf_search"
+			;;
+		esac
+	done
+fi
+
+cf_search=
+
+test "/usr" != "$prefix" && \
+test -d "/usr" && \
+(test $prefix = NONE || test "/usr" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr"
+	test -d /usr/lib &&          cf_search="$cf_search /usr/lib"
+	test -d /usr/lib/z &&       cf_search="$cf_search /usr/lib/z"
+	test -d /usr/lib/z/lib &&    cf_search="$cf_search /usr/lib/z/lib"
+	test -d /usr/z/lib &&       cf_search="$cf_search /usr/z/lib"
+	test -d /usr/z/lib/z &&    cf_search="$cf_search /usr/z/lib/z"
+}
+
+test "$prefix" != "NONE" && \
+test -d "$prefix" && \
+ {
+	test -n "$verbose" && echo "	... testing for lib-directories under $prefix"
+	test -d $prefix/lib &&          cf_search="$cf_search $prefix/lib"
+	test -d $prefix/lib/z &&       cf_search="$cf_search $prefix/lib/z"
+	test -d $prefix/lib/z/lib &&    cf_search="$cf_search $prefix/lib/z/lib"
+	test -d $prefix/z/lib &&       cf_search="$cf_search $prefix/z/lib"
+	test -d $prefix/z/lib/z &&    cf_search="$cf_search $prefix/z/lib/z"
+}
+
+test "/usr/local" != "$prefix" && \
+test -d "/usr/local" && \
+(test $prefix = NONE || test "/usr/local" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /usr/local"
+	test -d /usr/local/lib &&          cf_search="$cf_search /usr/local/lib"
+	test -d /usr/local/lib/z &&       cf_search="$cf_search /usr/local/lib/z"
+	test -d /usr/local/lib/z/lib &&    cf_search="$cf_search /usr/local/lib/z/lib"
+	test -d /usr/local/z/lib &&       cf_search="$cf_search /usr/local/z/lib"
+	test -d /usr/local/z/lib/z &&    cf_search="$cf_search /usr/local/z/lib/z"
+}
+
+test "/opt" != "$prefix" && \
+test -d "/opt" && \
+(test $prefix = NONE || test "/opt" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under /opt"
+	test -d /opt/lib &&          cf_search="$cf_search /opt/lib"
+	test -d /opt/lib/z &&       cf_search="$cf_search /opt/lib/z"
+	test -d /opt/lib/z/lib &&    cf_search="$cf_search /opt/lib/z/lib"
+	test -d /opt/z/lib &&       cf_search="$cf_search /opt/z/lib"
+	test -d /opt/z/lib/z &&    cf_search="$cf_search /opt/z/lib/z"
+}
+
+test "$HOME" != "$prefix" && \
+test -d "$HOME" && \
+(test $prefix = NONE || test "$HOME" != "$prefix") && {
+	test -n "$verbose" && echo "	... testing for lib-directories under $HOME"
+	test -d $HOME/lib &&          cf_search="$cf_search $HOME/lib"
+	test -d $HOME/lib/z &&       cf_search="$cf_search $HOME/lib/z"
+	test -d $HOME/lib/z/lib &&    cf_search="$cf_search $HOME/lib/z/lib"
+	test -d $HOME/z/lib &&       cf_search="$cf_search $HOME/z/lib"
+	test -d $HOME/z/lib/z &&    cf_search="$cf_search $HOME/z/lib/z"
+}
+
+cf_search="$cf_library_path_list $cf_search"
+
+        for cf_cv_library_path_z in $cf_search
+        do
+          if test -d $cf_cv_library_path_z ; then
+            test -n "$verbose" && echo "	... testing $cf_cv_library_path_z" 1>&6
+
+echo "${as_me:-configure}:34910: testing ... testing $cf_cv_library_path_z ..." 1>&5
+
+            CPPFLAGS="$cf_test_CPPFLAGS"
+            LIBS="-lz  $cf_save_LIBS"
+            LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_z"
+            cat >conftest.$ac_ext <<_ACEOF
+#line 34916 "configure"
+#include "confdefs.h"
+
+#include <zlib.h>
+
+int
+main ()
+{
+
+	gzopen("name","mode")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:34932: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:34935: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:34938: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:34941: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+                test -n "$verbose" && echo "	... found z library in $cf_cv_library_path_z" 1>&6
+
+echo "${as_me:-configure}:34946: testing ... found z library in $cf_cv_library_path_z ..." 1>&5
+
+                cf_cv_find_linkage_z=yes
+                cf_cv_library_file_z="-lz"
+                break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+                CPPFLAGS="$cf_save_CPPFLAGS"
+                LIBS="$cf_save_LIBS"
+                LDFLAGS="$cf_save_LDFLAGS"
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+          fi
+        done
+        CPPFLAGS="$cf_save_CPPFLAGS"
+        LDFLAGS="$cf_save_LDFLAGS"
+      fi
+
+    else
+      cf_cv_find_linkage_z=no
+    fi
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+LIBS="$cf_save_LIBS"
+
+if test "$cf_cv_find_linkage_z" = yes ; then
+
+if test -n "$cf_cv_header_path_z" ; then
+  for cf_add_incdir in $cf_cv_header_path_z
+  do
+	while test $cf_add_incdir != /usr/include
+	do
+	  if test -d $cf_add_incdir
+	  then
+		cf_have_incdir=no
+		if test -n "$CFLAGS$CPPFLAGS" ; then
+		  # a loop is needed to ensure we can add subdirs of existing dirs
+		  for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
+			if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
+			  cf_have_incdir=yes; break
+			fi
+		  done
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  if test "$cf_add_incdir" = /usr/local/include ; then
+			if test "$GCC" = yes
+			then
+			  cf_save_CPPFLAGS=$CPPFLAGS
+			  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+			  cat >conftest.$ac_ext <<_ACEOF
+#line 35005 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello")
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:35017: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:35020: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:35023: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:35026: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_have_incdir=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+			  CPPFLAGS=$cf_save_CPPFLAGS
+			fi
+		  fi
+		fi
+
+		if test "$cf_have_incdir" = no ; then
+		  test -n "$verbose" && echo "	adding $cf_add_incdir to include-path" 1>&6
+
+echo "${as_me:-configure}:35043: testing adding $cf_add_incdir to include-path ..." 1>&5
+
+		  CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
+
+		  cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
+		  test "$cf_top_incdir" = "$cf_add_incdir" && break
+		  cf_add_incdir="$cf_top_incdir"
+		else
+		  break
+		fi
+	  fi
+	done
+  done
+fi
+
+if test -n "$cf_cv_library_path_z" ; then
+  for cf_add_libdir in $cf_cv_library_path_z
+  do
+    if test $cf_add_libdir = /usr/lib ; then
+      :
+    elif test -d $cf_add_libdir
+    then
+      cf_have_libdir=no
+      if test -n "$LDFLAGS$LIBS" ; then
+        # a loop is needed to ensure we can add subdirs of existing dirs
+        for cf_test_libdir in $LDFLAGS $LIBS ; do
+          if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
+            cf_have_libdir=yes; break
+          fi
+        done
+      fi
+      if test "$cf_have_libdir" = no ; then
+        test -n "$verbose" && echo "	adding $cf_add_libdir to library-path" 1>&6
+
+echo "${as_me:-configure}:35077: testing adding $cf_add_libdir to library-path ..." 1>&5
+
+        LDFLAGS="-L$cf_add_libdir $LDFLAGS"
+      fi
+    fi
+  done
+fi
+
+	LIBS="-lz $LIBS"
+
+else
+{ echo "$as_me:35088: WARNING: Cannot find z library" >&5
+echo "$as_me: WARNING: Cannot find z library" >&2;}
+fi
+
+for ac_func in \
+	zError \
+
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:35097: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 35103 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:35134: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:35137: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:35140: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:35143: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:35153: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+	test "x$cf_cv_find_linkage_z" = "xyes" && cat >>confdefs.h <<\EOF
+#define USE_ZLIB 1
+EOF
+
+fi
+
+echo "$as_me:35169: checking if you want to exclude FINGER code" >&5
+echo $ECHO_N "checking if you want to exclude FINGER code... $ECHO_C" >&6
+
+# Check whether --enable-finger or --disable-finger was given.
+if test "${enable_finger+set}" = set; then
+  enableval="$enable_finger"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_finger=yes
+  else
+    use_finger=no
+  fi
+else
+  enableval=yes
+  use_finger=no
+
+fi;
+echo "$as_me:35186: result: $use_finger" >&5
+echo "${ECHO_T}$use_finger" >&6
+test $use_finger != "no" && cat >>confdefs.h <<\EOF
+#define DISABLE_FINGER 1
+EOF
+
+echo "$as_me:35192: checking if you want to exclude GOPHER code" >&5
+echo $ECHO_N "checking if you want to exclude GOPHER code... $ECHO_C" >&6
+
+# Check whether --enable-gopher or --disable-gopher was given.
+if test "${enable_gopher+set}" = set; then
+  enableval="$enable_gopher"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_gopher=yes
+  else
+    use_gopher=no
+  fi
+else
+  enableval=yes
+  use_gopher=no
+
+fi;
+echo "$as_me:35209: result: $use_gopher" >&5
+echo "${ECHO_T}$use_gopher" >&6
+test $use_gopher != "no" && cat >>confdefs.h <<\EOF
+#define DISABLE_GOPHER 1
+EOF
+
+echo "$as_me:35215: checking if you want to exclude NEWS code" >&5
+echo $ECHO_N "checking if you want to exclude NEWS code... $ECHO_C" >&6
+
+# Check whether --enable-news or --disable-news was given.
+if test "${enable_news+set}" = set; then
+  enableval="$enable_news"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_news=yes
+  else
+    use_news=no
+  fi
+else
+  enableval=yes
+  use_news=no
+
+fi;
+echo "$as_me:35232: result: $use_news" >&5
+echo "${ECHO_T}$use_news" >&6
+test $use_news != "no" && cat >>confdefs.h <<\EOF
+#define DISABLE_NEWS 1
+EOF
+
+echo "$as_me:35238: checking if you want to exclude FTP code" >&5
+echo $ECHO_N "checking if you want to exclude FTP code... $ECHO_C" >&6
+
+# Check whether --enable-ftp or --disable-ftp was given.
+if test "${enable_ftp+set}" = set; then
+  enableval="$enable_ftp"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_ftp=yes
+  else
+    use_ftp=no
+  fi
+else
+  enableval=yes
+  use_ftp=no
+
+fi;
+echo "$as_me:35255: result: $use_ftp" >&5
+echo "${ECHO_T}$use_ftp" >&6
+test $use_ftp != "no" && cat >>confdefs.h <<\EOF
+#define DISABLE_FTP 1
+EOF
+
+echo "$as_me:35261: checking if you want to include WAIS code" >&5
+echo $ECHO_N "checking if you want to include WAIS code... $ECHO_C" >&6
+
+# Check whether --enable-wais or --disable-wais was given.
+if test "${enable_wais+set}" = set; then
+  enableval="$enable_wais"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_wais=yes
+  else
+    use_wais=no
+  fi
+else
+  enableval=no
+  use_wais=no
+
+fi;
+echo "$as_me:35278: result: $use_wais" >&5
+echo "${ECHO_T}$use_wais" >&6
+
+MAKE_WAIS="#"
+if test $use_wais != "no"
+then
+	echo "$as_me:35284: checking for fs_free in -lwais" >&5
+echo $ECHO_N "checking for fs_free in -lwais... $ECHO_C" >&6
+if test "${ac_cv_lib_wais_fs_free+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lwais  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 35292 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char fs_free ();
+int
+main ()
+{
+fs_free ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:35311: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:35314: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:35317: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:35320: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_wais_fs_free=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_wais_fs_free=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:35331: result: $ac_cv_lib_wais_fs_free" >&5
+echo "${ECHO_T}$ac_cv_lib_wais_fs_free" >&6
+if test $ac_cv_lib_wais_fs_free = yes; then
+
+echo "$as_me:35335: checking if -lm needed for math functions" >&5
+echo $ECHO_N "checking if -lm needed for math functions... $ECHO_C" >&6
+if test "${cf_cv_need_libm+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 35342 "configure"
+#include "confdefs.h"
+
+	#include <stdio.h>
+	#include <math.h>
+
+int
+main ()
+{
+double x = rand(); printf("result = %g\n", sin(x))
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:35357: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:35360: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:35363: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:35366: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_need_libm=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_need_libm=yes
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:35376: result: $cf_cv_need_libm" >&5
+echo "${ECHO_T}$cf_cv_need_libm" >&6
+if test "$cf_cv_need_libm" = yes
+then
+
+	LIBS="-lm $LIBS"
+
+fi
+
+		LIBS="-lwais $LIBS"
+
+for ac_header in wais.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:35390: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 35396 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:35400: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:35406: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:35425: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+		MAKE_WAIS=
+
+else
+  { echo "$as_me:35438: WARNING: could not find WAIS library" >&5
+echo "$as_me: WARNING: could not find WAIS library" >&2;}
+fi
+
+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 "$as_me:35446: checking if directory-editor code should be used" >&5
+echo $ECHO_N "checking if directory-editor code should be used... $ECHO_C" >&6
+
+# Check whether --enable-dired or --disable-dired was given.
+if test "${enable_dired+set}" = set; then
+  enableval="$enable_dired"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    use_dired=$enableval
+  else
+    use_dired=yes
+  fi
+else
+  enableval=yes
+  use_dired=yes
+
+fi;
+echo "$as_me:35463: result: $use_dired" >&5
+echo "${ECHO_T}$use_dired" >&6
+
+if test ".$use_dired" != ".no" ; then
+	EXTRA_OBJS="$EXTRA_OBJS LYLocal\$o"
+	cat >>confdefs.h <<\EOF
+#define DIRED_SUPPORT 1
+EOF
+
+	echo "$as_me:35472: checking if you wish to allow extracting from archives via DirEd" >&5
+echo $ECHO_N "checking if you wish to allow extracting from archives via DirEd... $ECHO_C" >&6
+
+# Check whether --enable-dired-dearchive or --disable-dired-dearchive was given.
+if test "${enable_dired_dearchive+set}" = set; then
+  enableval="$enable_dired_dearchive"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    cat >>confdefs.h <<\EOF
+#define ARCHIVE_ONLY 1
+EOF
+
+  fi
+else
+  enableval=yes
+fi;
+	echo "$as_me:35488: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+	echo "$as_me:35491: checking if DirEd mode should override keys" >&5
+echo $ECHO_N "checking if DirEd mode should override keys... $ECHO_C" >&6
+
+# Check whether --enable-dired-override or --disable-dired-override was given.
+if test "${enable_dired_override+set}" = set; then
+  enableval="$enable_dired_override"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    :
+  else
+    cat >>confdefs.h <<\EOF
+#define OK_OVERRIDE 1
+EOF
+
+  fi
+else
+  enableval=yes
+  cat >>confdefs.h <<\EOF
+#define OK_OVERRIDE 1
+EOF
+
+fi;
+	echo "$as_me:35513: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+	echo "$as_me:35516: checking if you wish to allow permissions commands via DirEd" >&5
+echo $ECHO_N "checking if you wish to allow permissions commands via DirEd... $ECHO_C" >&6
+
+# Check whether --enable-dired-permit or --disable-dired-permit was given.
+if test "${enable_dired_permit+set}" = set; then
+  enableval="$enable_dired_permit"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    :
+  else
+    cat >>confdefs.h <<\EOF
+#define OK_PERMIT 1
+EOF
+
+  fi
+else
+  enableval=yes
+  cat >>confdefs.h <<\EOF
+#define OK_PERMIT 1
+EOF
+
+fi;
+	echo "$as_me:35538: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+	echo "$as_me:35541: checking if you wish to allow executable-permission commands via DirEd" >&5
+echo $ECHO_N "checking if you wish to allow executable-permission commands via DirEd... $ECHO_C" >&6
+
+# Check whether --enable-dired-xpermit or --disable-dired-xpermit was given.
+if test "${enable_dired_xpermit+set}" = set; then
+  enableval="$enable_dired_xpermit"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    cat >>confdefs.h <<\EOF
+#define NO_CHANGE_EXECUTE_PERMS 1
+EOF
+
+  fi
+else
+  enableval=yes
+fi;
+	echo "$as_me:35557: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+	echo "$as_me:35560: checking if you wish to allow \"tar\" commands from DirEd" >&5
+echo $ECHO_N "checking if you wish to allow \"tar\" commands from DirEd... $ECHO_C" >&6
+
+# Check whether --enable-dired-tar or --disable-dired-tar was given.
+if test "${enable_dired_tar+set}" = set; then
+  enableval="$enable_dired_tar"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    :
+  else
+    cat >>confdefs.h <<\EOF
+#define OK_TAR 1
+EOF
+
+  fi
+else
+  enableval=yes
+  cat >>confdefs.h <<\EOF
+#define OK_TAR 1
+EOF
+
+fi;
+	echo "$as_me:35582: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+	echo "$as_me:35585: checking if you wish to allow \"uudecode\" commands from DirEd" >&5
+echo $ECHO_N "checking if you wish to allow \"uudecode\" commands from DirEd... $ECHO_C" >&6
+
+# Check whether --enable-dired-uudecode or --disable-dired-uudecode was given.
+if test "${enable_dired_uudecode+set}" = set; then
+  enableval="$enable_dired_uudecode"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    :
+  else
+    cat >>confdefs.h <<\EOF
+#define OK_UUDECODE 1
+EOF
+
+  fi
+else
+  enableval=yes
+  cat >>confdefs.h <<\EOF
+#define OK_UUDECODE 1
+EOF
+
+fi;
+	echo "$as_me:35607: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+	echo "$as_me:35610: checking if you wish to allow \"zip\" and \"unzip\" commands from DirEd" >&5
+echo $ECHO_N "checking if you wish to allow \"zip\" and \"unzip\" commands from DirEd... $ECHO_C" >&6
+
+# Check whether --enable-dired-zip or --disable-dired-zip was given.
+if test "${enable_dired_zip+set}" = set; then
+  enableval="$enable_dired_zip"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    :
+  else
+    cat >>confdefs.h <<\EOF
+#define OK_ZIP 1
+EOF
+
+  fi
+else
+  enableval=yes
+  cat >>confdefs.h <<\EOF
+#define OK_ZIP 1
+EOF
+
+fi;
+	echo "$as_me:35632: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+	echo "$as_me:35635: checking if you wish to allow \"gzip\" and \"gunzip\" commands from DirEd" >&5
+echo $ECHO_N "checking if you wish to allow \"gzip\" and \"gunzip\" commands from DirEd... $ECHO_C" >&6
+
+# Check whether --enable-dired-gzip or --disable-dired-gzip was given.
+if test "${enable_dired_gzip+set}" = set; then
+  enableval="$enable_dired_gzip"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    :
+  else
+    cat >>confdefs.h <<\EOF
+#define OK_GZIP 1
+EOF
+
+  fi
+else
+  enableval=yes
+  cat >>confdefs.h <<\EOF
+#define OK_GZIP 1
+EOF
+
+fi;
+	echo "$as_me:35657: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+fi
+
+echo "$as_me:35661: checking if you want long-directory listings" >&5
+echo $ECHO_N "checking if you want long-directory listings... $ECHO_C" >&6
+
+# Check whether --enable-long-list or --disable-long-list was given.
+if test "${enable_long_list+set}" = set; then
+  enableval="$enable_long_list"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    :
+  else
+    cat >>confdefs.h <<\EOF
+#define LONG_LIST 1
+EOF
+
+  fi
+else
+  enableval=yes
+  cat >>confdefs.h <<\EOF
+#define LONG_LIST 1
+EOF
+
+fi;
+echo "$as_me:35683: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+echo "$as_me:35686: checking if parent-directory references are permitted" >&5
+echo $ECHO_N "checking if parent-directory references are permitted... $ECHO_C" >&6
+
+# Check whether --enable-parent-dir-refs or --disable-parent-dir-refs was given.
+if test "${enable_parent_dir_refs+set}" = set; then
+  enableval="$enable_parent_dir_refs"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    cat >>confdefs.h <<\EOF
+#define NO_PARENT_DIR_REFERENCE 1
+EOF
+
+  fi
+else
+  enableval=yes
+fi;
+echo "$as_me:35702: result: $enableval" >&5
+echo "${ECHO_T}$enableval" >&6
+
+test -z "$TELNET" && TELNET=telnet
+for ac_prog in $TELNET telnet
+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 "$as_me:35710: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_TELNET+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $TELNET in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_TELNET="$TELNET" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_TELNET="$ac_dir/$ac_word"
+   echo "$as_me:35727: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+TELNET=$ac_cv_path_TELNET
+
+if test -n "$TELNET"; then
+  echo "$as_me:35738: result: $TELNET" >&5
+echo "${ECHO_T}$TELNET" >&6
+else
+  echo "$as_me:35741: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$TELNET" && break
+done
+test -n "$TELNET" || TELNET="$TELNET"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_TELNET
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:35800: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define TELNET_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define TELNET_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$TN3270" && TN3270=tn3270
+for ac_prog in $TN3270 tn3270
+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 "$as_me:35817: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_TN3270+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $TN3270 in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_TN3270="$TN3270" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_TN3270="$ac_dir/$ac_word"
+   echo "$as_me:35834: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+TN3270=$ac_cv_path_TN3270
+
+if test -n "$TN3270"; then
+  echo "$as_me:35845: result: $TN3270" >&5
+echo "${ECHO_T}$TN3270" >&6
+else
+  echo "$as_me:35848: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$TN3270" && break
+done
+test -n "$TN3270" || TN3270="$TN3270"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_TN3270
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:35907: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define TN3270_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define TN3270_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$RLOGIN" && RLOGIN=rlogin
+for ac_prog in $RLOGIN rlogin
+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 "$as_me:35924: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_RLOGIN+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $RLOGIN in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_RLOGIN="$RLOGIN" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_RLOGIN="$ac_dir/$ac_word"
+   echo "$as_me:35941: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+RLOGIN=$ac_cv_path_RLOGIN
+
+if test -n "$RLOGIN"; then
+  echo "$as_me:35952: result: $RLOGIN" >&5
+echo "${ECHO_T}$RLOGIN" >&6
+else
+  echo "$as_me:35955: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$RLOGIN" && break
+done
+test -n "$RLOGIN" || RLOGIN="$RLOGIN"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_RLOGIN
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:36014: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define RLOGIN_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define RLOGIN_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$MV" && MV=mv
+for ac_prog in $MV mv
+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 "$as_me:36031: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_MV+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $MV in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_MV="$MV" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_MV="$ac_dir/$ac_word"
+   echo "$as_me:36048: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+MV=$ac_cv_path_MV
+
+if test -n "$MV"; then
+  echo "$as_me:36059: result: $MV" >&5
+echo "${ECHO_T}$MV" >&6
+else
+  echo "$as_me:36062: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$MV" && break
+done
+test -n "$MV" || MV="$MV"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_MV
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:36121: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define MV_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define MV_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$GZIP" && GZIP=gzip
+for ac_prog in $GZIP gzip
+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 "$as_me:36138: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_GZIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $GZIP in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_GZIP="$GZIP" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_GZIP="$ac_dir/$ac_word"
+   echo "$as_me:36155: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+GZIP=$ac_cv_path_GZIP
+
+if test -n "$GZIP"; then
+  echo "$as_me:36166: result: $GZIP" >&5
+echo "${ECHO_T}$GZIP" >&6
+else
+  echo "$as_me:36169: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$GZIP" && break
+done
+test -n "$GZIP" || GZIP="$GZIP"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_GZIP
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:36228: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define GZIP_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define GZIP_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$UNCOMPRESS" && UNCOMPRESS=gunzip
+for ac_prog in $UNCOMPRESS gunzip
+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 "$as_me:36245: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_UNCOMPRESS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $UNCOMPRESS in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_UNCOMPRESS="$UNCOMPRESS" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_UNCOMPRESS="$ac_dir/$ac_word"
+   echo "$as_me:36262: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+UNCOMPRESS=$ac_cv_path_UNCOMPRESS
+
+if test -n "$UNCOMPRESS"; then
+  echo "$as_me:36273: result: $UNCOMPRESS" >&5
+echo "${ECHO_T}$UNCOMPRESS" >&6
+else
+  echo "$as_me:36276: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$UNCOMPRESS" && break
+done
+test -n "$UNCOMPRESS" || UNCOMPRESS="$UNCOMPRESS"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_UNCOMPRESS
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:36335: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define UNCOMPRESS_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define UNCOMPRESS_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$UNZIP" && UNZIP=unzip
+for ac_prog in $UNZIP unzip
+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 "$as_me:36352: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_UNZIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $UNZIP in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_UNZIP="$UNZIP" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_UNZIP="$ac_dir/$ac_word"
+   echo "$as_me:36369: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+UNZIP=$ac_cv_path_UNZIP
+
+if test -n "$UNZIP"; then
+  echo "$as_me:36380: result: $UNZIP" >&5
+echo "${ECHO_T}$UNZIP" >&6
+else
+  echo "$as_me:36383: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$UNZIP" && break
+done
+test -n "$UNZIP" || UNZIP="$UNZIP"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_UNZIP
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:36442: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define UNZIP_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define UNZIP_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$BZIP2" && BZIP2=bzip2
+for ac_prog in $BZIP2 bzip2
+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 "$as_me:36459: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_BZIP2+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $BZIP2 in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_BZIP2="$BZIP2" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_BZIP2="$ac_dir/$ac_word"
+   echo "$as_me:36476: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+BZIP2=$ac_cv_path_BZIP2
+
+if test -n "$BZIP2"; then
+  echo "$as_me:36487: result: $BZIP2" >&5
+echo "${ECHO_T}$BZIP2" >&6
+else
+  echo "$as_me:36490: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$BZIP2" && break
+done
+test -n "$BZIP2" || BZIP2="$BZIP2"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_BZIP2
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:36549: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define BZIP2_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define BZIP2_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$TAR" && TAR=tar
+for ac_prog in $TAR tar pax gtar gnutar bsdtar star
+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 "$as_me:36566: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_TAR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $TAR in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_TAR="$TAR" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_TAR="$ac_dir/$ac_word"
+   echo "$as_me:36583: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+TAR=$ac_cv_path_TAR
+
+if test -n "$TAR"; then
+  echo "$as_me:36594: result: $TAR" >&5
+echo "${ECHO_T}$TAR" >&6
+else
+  echo "$as_me:36597: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$TAR" && break
+done
+test -n "$TAR" || TAR="$TAR"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_TAR
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:36656: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define TAR_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define TAR_ARGS "$cf_path_args"
+EOF
+
+fi
+
+case $TAR in
+*pax|*pax$EXEEXT)
+	TAR_UP_OPTIONS="-w"
+	TAR_DOWN_OPTIONS="-r"
+	TAR_PIPE_OPTIONS=""
+	TAR_FILE_OPTIONS="-f"
+	;;
+*star|*star$EXEEXT)
+	TAR_UP_OPTIONS="-c -f"
+	TAR_DOWN_OPTIONS="-x -U -f"
+	TAR_PIPE_OPTIONS="-"
+	TAR_FILE_OPTIONS=""
+	;;
+*tar|*tar$EXEEXT)
+	# FIXME: some versions of tar require, some don't allow the "-"
+	TAR_UP_OPTIONS="-cf"
+	TAR_DOWN_OPTIONS="-xf"
+	TAR_PIPE_OPTIONS="-"
+	TAR_FILE_OPTIONS=""
+	;;
+esac
+
+cat >>confdefs.h <<EOF
+#define TAR_UP_OPTIONS "$TAR_UP_OPTIONS"
+EOF
+
+cat >>confdefs.h <<EOF
+#define TAR_DOWN_OPTIONS "$TAR_DOWN_OPTIONS"
+EOF
+
+cat >>confdefs.h <<EOF
+#define TAR_FILE_OPTIONS "$TAR_FILE_OPTIONS"
+EOF
+
+cat >>confdefs.h <<EOF
+#define TAR_PIPE_OPTIONS "$TAR_PIPE_OPTIONS"
+EOF
+
+if test ".$use_dired" != ".no" ; then
+
+test -z "$COMPRESS" && COMPRESS=compress
+for ac_prog in $COMPRESS compress
+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 "$as_me:36713: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_COMPRESS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $COMPRESS in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_COMPRESS="$COMPRESS" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_COMPRESS="$ac_dir/$ac_word"
+   echo "$as_me:36730: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+COMPRESS=$ac_cv_path_COMPRESS
+
+if test -n "$COMPRESS"; then
+  echo "$as_me:36741: result: $COMPRESS" >&5
+echo "${ECHO_T}$COMPRESS" >&6
+else
+  echo "$as_me:36744: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$COMPRESS" && break
+done
+test -n "$COMPRESS" || COMPRESS="$COMPRESS"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_COMPRESS
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:36803: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define COMPRESS_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define COMPRESS_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$RM" && RM=rm
+for ac_prog in $RM rm
+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 "$as_me:36820: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_RM+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $RM in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_RM="$RM" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_RM="$ac_dir/$ac_word"
+   echo "$as_me:36837: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+RM=$ac_cv_path_RM
+
+if test -n "$RM"; then
+  echo "$as_me:36848: result: $RM" >&5
+echo "${ECHO_T}$RM" >&6
+else
+  echo "$as_me:36851: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$RM" && break
+done
+test -n "$RM" || RM="$RM"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_RM
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:36910: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define RM_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define RM_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$UUDECODE" && UUDECODE=uudecode
+for ac_prog in $UUDECODE uudecode
+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 "$as_me:36927: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_UUDECODE+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $UUDECODE in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_UUDECODE="$UUDECODE" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_UUDECODE="$ac_dir/$ac_word"
+   echo "$as_me:36944: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+UUDECODE=$ac_cv_path_UUDECODE
+
+if test -n "$UUDECODE"; then
+  echo "$as_me:36955: result: $UUDECODE" >&5
+echo "${ECHO_T}$UUDECODE" >&6
+else
+  echo "$as_me:36958: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$UUDECODE" && break
+done
+test -n "$UUDECODE" || UUDECODE="$UUDECODE"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_UUDECODE
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:37017: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define UUDECODE_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define UUDECODE_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$ZCAT" && ZCAT=zcat
+for ac_prog in $ZCAT zcat
+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 "$as_me:37034: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_ZCAT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $ZCAT in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ZCAT="$ZCAT" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_ZCAT="$ac_dir/$ac_word"
+   echo "$as_me:37051: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+ZCAT=$ac_cv_path_ZCAT
+
+if test -n "$ZCAT"; then
+  echo "$as_me:37062: result: $ZCAT" >&5
+echo "${ECHO_T}$ZCAT" >&6
+else
+  echo "$as_me:37065: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ZCAT" && break
+done
+test -n "$ZCAT" || ZCAT="$ZCAT"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_ZCAT
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:37124: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define ZCAT_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define ZCAT_ARGS "$cf_path_args"
+EOF
+
+fi
+
+test -z "$ZIP" && ZIP=zip
+for ac_prog in $ZIP zip
+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 "$as_me:37141: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_ZIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $ZIP in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ZIP="$ZIP" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_ZIP="$ac_dir/$ac_word"
+   echo "$as_me:37158: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+ZIP=$ac_cv_path_ZIP
+
+if test -n "$ZIP"; then
+  echo "$as_me:37169: result: $ZIP" >&5
+echo "${ECHO_T}$ZIP" >&6
+else
+  echo "$as_me:37172: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ZIP" && break
+done
+test -n "$ZIP" || ZIP="$ZIP"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_ZIP
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:37231: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define ZIP_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define ZIP_ARGS "$cf_path_args"
+EOF
+
+fi
+
+case "$INSTALL" in
+$srcdir*) # (vi
+	cat >>confdefs.h <<EOF
+#define INSTALL_PATH "install"
+EOF
+
+	;;
+*) # (vi
+	cf_save_INSTALL="$INSTALL"
+
+test -z "$INSTALL" && INSTALL=install
+for ac_prog in $INSTALL install
+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 "$as_me:37258: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_INSTALL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $INSTALL in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_INSTALL="$INSTALL" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_INSTALL="$ac_dir/$ac_word"
+   echo "$as_me:37275: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  ;;
+esac
+fi
+INSTALL=$ac_cv_path_INSTALL
+
+if test -n "$INSTALL"; then
+  echo "$as_me:37286: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6
+else
+  echo "$as_me:37289: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$INSTALL" && break
+done
+test -n "$INSTALL" || INSTALL="$INSTALL"
+
+cf_path_prog=""
+cf_path_args=""
+IFS="${IFS:- 	}"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
+for cf_temp in $ac_cv_path_INSTALL
+do
+	if test -z "$cf_path_prog" ; then
+		if test "$with_full_paths" = yes ; then
+
+if test "x$prefix" != xNONE; then
+  cf_path_syntax="$prefix"
+else
+  cf_path_syntax="$ac_default_prefix"
+fi
+
+case ".$cf_temp" in #(vi
+.\$\(*\)*|.\'*\'*) #(vi
+  ;;
+..|./*|.\\*) #(vi
+  ;;
+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
+  ;;
+.\${*prefix}*) #(vi
+  eval cf_temp="$cf_temp"
+  case ".$cf_temp" in #(vi
+  .NONE/*)
+    cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+    ;;
+  esac
+  ;; #(vi
+.no|.NONE/*)
+  cf_temp=`echo $cf_temp | sed -e s%NONE%$cf_path_syntax%`
+  ;;
+*)
+  break
+  ;;
+esac
+
+			cf_path_prog="$cf_temp"
+		else
+			cf_path_prog="`basename $cf_temp`"
+		fi
+	elif test -z "$cf_path_args" ; then
+		cf_path_args="$cf_temp"
+	else
+		cf_path_args="$cf_path_args $cf_temp"
+	fi
+done
+IFS="$cf_save_ifs"
+
+if test -n "$cf_path_prog" ; then
+
+echo "${as_me:-configure}:37348: testing defining path for ${cf_path_prog} ..." 1>&5
+
+	cat >>confdefs.h <<EOF
+#define INSTALL_PATH "$cf_path_prog"
+EOF
+
+	test -n "$cf_path_args" && cat >>confdefs.h <<EOF
+#define INSTALL_ARGS "$cf_path_args"
+EOF
+
+fi
+
+	INSTALL="$cf_save_INSTALL"
+	;;
+esac
+fi
+
+COMPRESS_PROG=
+COMPRESS_EXT=
+if test $use_gzip_help = yes ; then
+	COMPRESS_PROG="$ac_cv_path_GZIP -9"
+	COMPRESS_EXT=.gz
+fi
+
+if test $cf_cv_screen = pdcurses ; then
+
+	echo "$as_me:37374: checking for X" >&5
+echo $ECHO_N "checking for X... $ECHO_C" >&6
+
+# Check whether --with-x or --without-x was given.
+if test "${with_x+set}" = set; then
+  withval="$with_x"
+
+fi;
+# $have_x is `yes', `no', `disabled', or empty when we do not yet know.
+if test "x$with_x" = xno; then
+  # The user explicitly disabled X.
+  have_x=disabled
+else
+  if test "x$x_includes" != xNONE && test "x$x_libraries" != xNONE; then
+    # Both variables are already set.
+    have_x=yes
+  else
+    if test "${ac_cv_have_x+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  # One or both of the vars are not set, and there is no cached value.
+ac_x_includes=no ac_x_libraries=no
+rm -fr conftest.dir
+if mkdir conftest.dir; then
+  cd conftest.dir
+  # Make sure to not put "make" in the Imakefile rules, since we grep it out.
+  cat >Imakefile <<'EOF'
+acfindx:
+	@echo 'ac_im_incroot="${INCROOT}"; ac_im_usrlibdir="${USRLIBDIR}"; ac_im_libdir="${LIBDIR}"'
+EOF
+  if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then
+    # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+    eval `${MAKE-make} acfindx 2>/dev/null | grep -v make`
+    # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR.
+    for ac_extension in a so sl dylib dll; do
+      if test ! -f $ac_im_usrlibdir/libX11.$ac_extension &&
+         test -f $ac_im_libdir/libX11.$ac_extension; then
+        ac_im_usrlibdir=$ac_im_libdir; break
+      fi
+    done
+    # Screen out bogus values from the imake configuration.  They are
+    # bogus both because they are the default anyway, and because
+    # using them would break gcc on systems where it needs fixed includes.
+    case $ac_im_incroot in
+	/usr/include) ;;
+	*) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;;
+    esac
+    case $ac_im_usrlibdir in
+	/usr/lib | /lib) ;;
+	*) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;;
+    esac
+  fi
+  cd ..
+  rm -fr conftest.dir
+fi
+
+# Standard set of common directories for X headers.
+# Check X11 before X11Rn because it is often a symlink to the current release.
+ac_x_header_dirs='
+/usr/X11/include
+/usr/X11R6/include
+/usr/X11R5/include
+/usr/X11R4/include
+
+/usr/include/X11
+/usr/include/X11R6
+/usr/include/X11R5
+/usr/include/X11R4
+
+/usr/local/X11/include
+/usr/local/X11R6/include
+/usr/local/X11R5/include
+/usr/local/X11R4/include
+
+/usr/local/include/X11
+/usr/local/include/X11R6
+/usr/local/include/X11R5
+/usr/local/include/X11R4
+
+/usr/X386/include
+/usr/x386/include
+/usr/XFree86/include/X11
+
+/usr/include
+/usr/local/include
+/usr/unsupported/include
+/usr/athena/include
+/usr/local/x11r5/include
+/usr/lpp/Xamples/include
+
+/usr/openwin/include
+/usr/openwin/share/include'
+
+if test "$ac_x_includes" = no; then
+  # Guess where to find include files, by looking for Intrinsic.h.
+  # First, try using that file with no special directory specified.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 37471 "configure"
+#include "confdefs.h"
+#include <X11/Intrinsic.h>
+_ACEOF
+if { (eval echo "$as_me:37475: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:37481: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  # We can compile using X headers with no special include directory.
+ac_x_includes=
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  for ac_dir in $ac_x_header_dirs; do
+  if test -r "$ac_dir/X11/Intrinsic.h"; then
+    ac_x_includes=$ac_dir
+    break
+  fi
+done
+fi
+rm -f conftest.err conftest.$ac_ext
+fi # $ac_x_includes = no
+
+if test "$ac_x_libraries" = no; then
+  # Check for the libraries.
+  # See if we find them without any special options.
+  # Don't add to $LIBS permanently.
+  ac_save_LIBS=$LIBS
+  LIBS="-lXt $LIBS"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 37514 "configure"
+#include "confdefs.h"
+#include <X11/Intrinsic.h>
+int
+main ()
+{
+XtMalloc (0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:37526: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:37529: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:37532: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:37535: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  LIBS=$ac_save_LIBS
+# We can link X programs with no special library path.
+ac_x_libraries=
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+LIBS=$ac_save_LIBS
+for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
+do
+  # Don't even attempt the hair of trying to link an X program!
+  for ac_extension in a so sl dylib dll; do
+    if test -r $ac_dir/libXt.$ac_extension; then
+      ac_x_libraries=$ac_dir
+      break 2
+    fi
+  done
+done
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi # $ac_x_libraries = no
+
+if test "$ac_x_includes" = no || test "$ac_x_libraries" = no; then
+  # Didn't find X anywhere.  Cache the known absence of X.
+  ac_cv_have_x="have_x=no"
+else
+  # Record where we found X for the cache.
+  ac_cv_have_x="have_x=yes \
+	        ac_x_includes=$ac_x_includes ac_x_libraries=$ac_x_libraries"
+fi
+fi
+
+  fi
+  eval "$ac_cv_have_x"
+fi # $with_x != no
+
+if test "$have_x" != yes; then
+  echo "$as_me:37573: result: $have_x" >&5
+echo "${ECHO_T}$have_x" >&6
+  no_x=yes
+else
+  # If each of the values was on the command line, it overrides each guess.
+  test "x$x_includes" = xNONE && x_includes=$ac_x_includes
+  test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries
+  # Update the cache value to reflect the command line values.
+  ac_cv_have_x="have_x=yes \
+		ac_x_includes=$x_includes ac_x_libraries=$x_libraries"
+  echo "$as_me:37583: result: libraries $x_libraries, headers $x_includes" >&5
+echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6
+fi
+
+if test "$no_x" = yes; then
+  # Not all programs may use this symbol, but it does not hurt to define it.
+
+cat >>confdefs.h <<\EOF
+#define X_DISPLAY_MISSING 1
+EOF
+
+  X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS=
+else
+  if test -n "$x_includes"; then
+    X_CFLAGS="$X_CFLAGS -I$x_includes"
+  fi
+
+  # It would also be nice to do this for all -L options, not just this one.
+  if test -n "$x_libraries"; then
+    X_LIBS="$X_LIBS -L$x_libraries"
+    # For Solaris; some versions of Sun CC require a space after -R and
+    # others require no space.  Words are not sufficient . . . .
+    case `(uname -sr) 2>/dev/null` in
+    "SunOS 5"*)
+      echo "$as_me:37607: checking whether -R must be followed by a space" >&5
+echo $ECHO_N "checking whether -R must be followed by a space... $ECHO_C" >&6
+      ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries"
+      cat >conftest.$ac_ext <<_ACEOF
+#line 37611 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:37623: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:37626: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:37629: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:37632: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_R_nospace=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_R_nospace=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+      if test $ac_R_nospace = yes; then
+	echo "$as_me:37642: result: no" >&5
+echo "${ECHO_T}no" >&6
+	X_LIBS="$X_LIBS -R$x_libraries"
+      else
+	LIBS="$ac_xsave_LIBS -R $x_libraries"
+	cat >conftest.$ac_ext <<_ACEOF
+#line 37648 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:37660: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:37663: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:37666: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:37669: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_R_space=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_R_space=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+	if test $ac_R_space = yes; then
+	  echo "$as_me:37679: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+	  X_LIBS="$X_LIBS -R $x_libraries"
+	else
+	  echo "$as_me:37683: result: neither works" >&5
+echo "${ECHO_T}neither works" >&6
+	fi
+      fi
+      LIBS=$ac_xsave_LIBS
+    esac
+  fi
+
+  # Check for system-dependent libraries X programs must link with.
+  # Do this before checking for the system-independent R6 libraries
+  # (-lICE), since we may need -lsocket or whatever for X linking.
+
+  if test "$ISC" = yes; then
+    X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet"
+  else
+    # Martyn Johnson says this is needed for Ultrix, if the X
+    # libraries were built with DECnet support.  And Karl Berry says
+    # the Alpha needs dnet_stub (dnet does not exist).
+    ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11"
+    cat >conftest.$ac_ext <<_ACEOF
+#line 37703 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char XOpenDisplay ();
+int
+main ()
+{
+XOpenDisplay ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:37722: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:37725: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:37728: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:37731: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+echo "$as_me:37737: checking for dnet_ntoa in -ldnet" >&5
+echo $ECHO_N "checking for dnet_ntoa in -ldnet... $ECHO_C" >&6
+if test "${ac_cv_lib_dnet_dnet_ntoa+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldnet  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 37745 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char dnet_ntoa ();
+int
+main ()
+{
+dnet_ntoa ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:37764: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:37767: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:37770: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:37773: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dnet_dnet_ntoa=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dnet_dnet_ntoa=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:37784: result: $ac_cv_lib_dnet_dnet_ntoa" >&5
+echo "${ECHO_T}$ac_cv_lib_dnet_dnet_ntoa" >&6
+if test $ac_cv_lib_dnet_dnet_ntoa = yes; then
+  X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"
+fi
+
+    if test $ac_cv_lib_dnet_dnet_ntoa = no; then
+      echo "$as_me:37791: checking for dnet_ntoa in -ldnet_stub" >&5
+echo $ECHO_N "checking for dnet_ntoa in -ldnet_stub... $ECHO_C" >&6
+if test "${ac_cv_lib_dnet_stub_dnet_ntoa+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldnet_stub  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 37799 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char dnet_ntoa ();
+int
+main ()
+{
+dnet_ntoa ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:37818: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:37821: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:37824: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:37827: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dnet_stub_dnet_ntoa=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dnet_stub_dnet_ntoa=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:37838: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5
+echo "${ECHO_T}$ac_cv_lib_dnet_stub_dnet_ntoa" >&6
+if test $ac_cv_lib_dnet_stub_dnet_ntoa = yes; then
+  X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"
+fi
+
+    fi
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+    LIBS="$ac_xsave_LIBS"
+
+    # msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT,
+    # to get the SysV transport functions.
+    # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4)
+    # needs -lnsl.
+    # The nsl library prevents programs from opening the X display
+    # on Irix 5.2, according to T.E. Dickey.
+    # The functions gethostbyname, getservbyname, and inet_addr are
+    # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking.
+    echo "$as_me:37857: checking for gethostbyname" >&5
+echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6
+if test "${ac_cv_func_gethostbyname+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 37863 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char gethostbyname (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char gethostbyname ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_gethostbyname) || defined (__stub___gethostbyname)
+choke me
+#else
+f = gethostbyname;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:37894: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:37897: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:37900: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:37903: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_gethostbyname=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_gethostbyname=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:37913: result: $ac_cv_func_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6
+
+    if test $ac_cv_func_gethostbyname = no; then
+      echo "$as_me:37917: checking for gethostbyname in -lnsl" >&5
+echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6
+if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lnsl  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 37925 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char gethostbyname ();
+int
+main ()
+{
+gethostbyname ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:37944: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:37947: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:37950: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:37953: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_nsl_gethostbyname=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_nsl_gethostbyname=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:37964: result: $ac_cv_lib_nsl_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6
+if test $ac_cv_lib_nsl_gethostbyname = yes; then
+  X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl"
+fi
+
+      if test $ac_cv_lib_nsl_gethostbyname = no; then
+        echo "$as_me:37971: checking for gethostbyname in -lbsd" >&5
+echo $ECHO_N "checking for gethostbyname in -lbsd... $ECHO_C" >&6
+if test "${ac_cv_lib_bsd_gethostbyname+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lbsd  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 37979 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char gethostbyname ();
+int
+main ()
+{
+gethostbyname ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:37998: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38001: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38004: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38007: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_bsd_gethostbyname=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_bsd_gethostbyname=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:38018: result: $ac_cv_lib_bsd_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_lib_bsd_gethostbyname" >&6
+if test $ac_cv_lib_bsd_gethostbyname = yes; then
+  X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd"
+fi
+
+      fi
+    fi
+
+    # lieder@skyler.mavd.honeywell.com says without -lsocket,
+    # socket/setsockopt and other routines are undefined under SCO ODT
+    # 2.0.  But -lsocket is broken on IRIX 5.2 (and is not necessary
+    # on later versions), says Simon Leinen: it contains gethostby*
+    # variants that don't use the nameserver (or something).  -lsocket
+    # must be given before -lnsl if both are needed.  We assume that
+    # if connect needs -lnsl, so does gethostbyname.
+    echo "$as_me:38034: checking for connect" >&5
+echo $ECHO_N "checking for connect... $ECHO_C" >&6
+if test "${ac_cv_func_connect+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 38040 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char connect (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char connect ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_connect) || defined (__stub___connect)
+choke me
+#else
+f = connect;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:38071: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38074: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38077: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38080: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_connect=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_connect=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:38090: result: $ac_cv_func_connect" >&5
+echo "${ECHO_T}$ac_cv_func_connect" >&6
+
+    if test $ac_cv_func_connect = no; then
+      echo "$as_me:38094: checking for connect in -lsocket" >&5
+echo $ECHO_N "checking for connect in -lsocket... $ECHO_C" >&6
+if test "${ac_cv_lib_socket_connect+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 38102 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char connect ();
+int
+main ()
+{
+connect ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:38121: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38124: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38127: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38130: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_socket_connect=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_socket_connect=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:38141: result: $ac_cv_lib_socket_connect" >&5
+echo "${ECHO_T}$ac_cv_lib_socket_connect" >&6
+if test $ac_cv_lib_socket_connect = yes; then
+  X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS"
+fi
+
+    fi
+
+    # Guillermo Gomez says -lposix is necessary on A/UX.
+    echo "$as_me:38150: checking for remove" >&5
+echo $ECHO_N "checking for remove... $ECHO_C" >&6
+if test "${ac_cv_func_remove+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 38156 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char remove (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char remove ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_remove) || defined (__stub___remove)
+choke me
+#else
+f = remove;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:38187: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38190: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38193: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38196: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_remove=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_remove=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:38206: result: $ac_cv_func_remove" >&5
+echo "${ECHO_T}$ac_cv_func_remove" >&6
+
+    if test $ac_cv_func_remove = no; then
+      echo "$as_me:38210: checking for remove in -lposix" >&5
+echo $ECHO_N "checking for remove in -lposix... $ECHO_C" >&6
+if test "${ac_cv_lib_posix_remove+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lposix  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 38218 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char remove ();
+int
+main ()
+{
+remove ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:38237: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38240: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38243: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38246: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_posix_remove=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_posix_remove=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:38257: result: $ac_cv_lib_posix_remove" >&5
+echo "${ECHO_T}$ac_cv_lib_posix_remove" >&6
+if test $ac_cv_lib_posix_remove = yes; then
+  X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix"
+fi
+
+    fi
+
+    # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
+    echo "$as_me:38266: checking for shmat" >&5
+echo $ECHO_N "checking for shmat... $ECHO_C" >&6
+if test "${ac_cv_func_shmat+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 38272 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char shmat (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char shmat ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_shmat) || defined (__stub___shmat)
+choke me
+#else
+f = shmat;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:38303: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38306: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38309: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38312: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_shmat=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_shmat=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:38322: result: $ac_cv_func_shmat" >&5
+echo "${ECHO_T}$ac_cv_func_shmat" >&6
+
+    if test $ac_cv_func_shmat = no; then
+      echo "$as_me:38326: checking for shmat in -lipc" >&5
+echo $ECHO_N "checking for shmat in -lipc... $ECHO_C" >&6
+if test "${ac_cv_lib_ipc_shmat+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lipc  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 38334 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char shmat ();
+int
+main ()
+{
+shmat ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:38353: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38356: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38359: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38362: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_ipc_shmat=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_ipc_shmat=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:38373: result: $ac_cv_lib_ipc_shmat" >&5
+echo "${ECHO_T}$ac_cv_lib_ipc_shmat" >&6
+if test $ac_cv_lib_ipc_shmat = yes; then
+  X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"
+fi
+
+    fi
+  fi
+
+  # Check for libraries that X11R6 Xt/Xaw programs need.
+  ac_save_LDFLAGS=$LDFLAGS
+  test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries"
+  # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to
+  # check for ICE first), but we must link in the order -lSM -lICE or
+  # we get undefined symbols.  So assume we have SM if we have ICE.
+  # These have to be linked with before -lX11, unlike the other
+  # libraries we check for below, so use a different variable.
+  # John Interrante, Karl Berry
+  echo "$as_me:38391: checking for IceConnectionNumber in -lICE" >&5
+echo $ECHO_N "checking for IceConnectionNumber in -lICE... $ECHO_C" >&6
+if test "${ac_cv_lib_ICE_IceConnectionNumber+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lICE $X_EXTRA_LIBS $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 38399 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char IceConnectionNumber ();
+int
+main ()
+{
+IceConnectionNumber ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:38418: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38421: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38424: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38427: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_ICE_IceConnectionNumber=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_ICE_IceConnectionNumber=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:38438: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5
+echo "${ECHO_T}$ac_cv_lib_ICE_IceConnectionNumber" >&6
+if test $ac_cv_lib_ICE_IceConnectionNumber = yes; then
+  X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE"
+fi
+
+  LDFLAGS=$ac_save_LDFLAGS
+
+fi
+
+cf_x_athena=${cf_x_athena:-Xaw}
+
+echo "$as_me:38450: checking if you want to link with Xaw 3d library" >&5
+echo $ECHO_N "checking if you want to link with Xaw 3d library... $ECHO_C" >&6
+withval=
+
+# Check whether --with-Xaw3d or --without-Xaw3d was given.
+if test "${with_Xaw3d+set}" = set; then
+  withval="$with_Xaw3d"
+
+fi;
+if test "$withval" = yes ; then
+	cf_x_athena=Xaw3d
+	echo "$as_me:38461: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+	echo "$as_me:38464: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+echo "$as_me:38468: checking if you want to link with neXT Athena library" >&5
+echo $ECHO_N "checking if you want to link with neXT Athena library... $ECHO_C" >&6
+withval=
+
+# Check whether --with-neXtaw or --without-neXtaw was given.
+if test "${with_neXtaw+set}" = set; then
+  withval="$with_neXtaw"
+
+fi;
+if test "$withval" = yes ; then
+	cf_x_athena=neXtaw
+	echo "$as_me:38479: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+	echo "$as_me:38482: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+echo "$as_me:38486: checking if you want to link with Athena-Plus library" >&5
+echo $ECHO_N "checking if you want to link with Athena-Plus library... $ECHO_C" >&6
+withval=
+
+# Check whether --with-XawPlus or --without-XawPlus was given.
+if test "${with_XawPlus+set}" = set; then
+  withval="$with_XawPlus"
+
+fi;
+if test "$withval" = yes ; then
+	cf_x_athena=XawPlus
+	echo "$as_me:38497: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+	echo "$as_me:38500: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+cf_x_athena_lib=""
+
+if test "$PKG_CONFIG" != none ; then
+	cf_athena_list=
+	test "$cf_x_athena" = Xaw && cf_athena_list="xaw8 xaw7 xaw6"
+	for cf_athena_pkg in \
+		$cf_athena_list \
+		${cf_x_athena} \
+		${cf_x_athena}-devel \
+		lib${cf_x_athena} \
+		lib${cf_x_athena}-devel
+	do
+
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists $cf_athena_pkg; then
+	test -n "$verbose" && echo "	found package $cf_athena_pkg" 1>&6
+
+echo "${as_me:-configure}:38520: testing found package $cf_athena_pkg ..." 1>&5
+
+	cf_pkgconfig_incs="`$PKG_CONFIG --cflags $cf_athena_pkg 2>/dev/null`"
+	cf_pkgconfig_libs="`$PKG_CONFIG --libs   $cf_athena_pkg 2>/dev/null`"
+	test -n "$verbose" && echo "	package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs" 1>&6
+
+echo "${as_me:-configure}:38526: testing package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+
+	test -n "$verbose" && echo "	package $cf_athena_pkg LIBS: $cf_pkgconfig_libs" 1>&6
+
+echo "${as_me:-configure}:38530: testing package $cf_athena_pkg LIBS: $cf_pkgconfig_libs ..." 1>&5
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_pkgconfig_incs
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	LIBS="$cf_pkgconfig_libs $LIBS"
+
+			cf_x_athena_lib="$cf_pkgconfig_libs"
+
+cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+			cat >>confdefs.h <<EOF
+#define $cf_x_athena_LIBS 1
+EOF
+
+echo "$as_me:38620: checking for usable $cf_x_athena/Xmu package" >&5
+echo $ECHO_N "checking for usable $cf_x_athena/Xmu package... $ECHO_C" >&6
+if test "${cf_cv_xaw_compat+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 38627 "configure"
+#include "confdefs.h"
+
+#include <X11/Xmu/CharSet.h>
+
+int
+main ()
+{
+
+int check = XmuCompareISOLatin1("big", "small")
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:38643: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38646: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38649: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38652: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xaw_compat=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_xaw_compat=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:38662: result: $cf_cv_xaw_compat" >&5
+echo "${ECHO_T}$cf_cv_xaw_compat" >&6
+
+			if test "$cf_cv_xaw_compat" = no
+			then
+				# workaround for broken ".pc" files...
+				case "$cf_x_athena_lib" in #(vi
+				*-lXmu*) #(vi
+					;;
+				*)
+					test -n "$verbose" && echo "	work around broken package" 1>&6
+
+echo "${as_me:-configure}:38674: testing work around broken package ..." 1>&5
+
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xmu; then
+	test -n "$verbose" && echo "	found package xmu" 1>&6
+
+echo "${as_me:-configure}:38679: testing found package xmu ..." 1>&5
+
+	cf_pkgconfig_incs="`$PKG_CONFIG --cflags xmu 2>/dev/null`"
+	cf_pkgconfig_libs="`$PKG_CONFIG --libs   xmu 2>/dev/null`"
+	test -n "$verbose" && echo "	package xmu CFLAGS: $cf_pkgconfig_incs" 1>&6
+
+echo "${as_me:-configure}:38685: testing package xmu CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+
+	test -n "$verbose" && echo "	package xmu LIBS: $cf_pkgconfig_libs" 1>&6
+
+echo "${as_me:-configure}:38689: testing package xmu LIBS: $cf_pkgconfig_libs ..." 1>&5
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_pkgconfig_incs
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	LIBS="$cf_pkgconfig_libs $LIBS"
+	:
+else
+
+test -n "$verbose" && echo "	...before $LIBS" 1>&6
+
+echo "${as_me:-configure}:38775: testing ...before $LIBS ..." 1>&5
+
+LIBS=`echo "$LIBS" | sed -e "s/[ 	][ 	]*/ /g" -e "s,-lXt ,-lXt -lXmu ," -e 's/  / /g'`
+test -n "$verbose" && echo "	...after  $LIBS" 1>&6
+
+echo "${as_me:-configure}:38780: testing ...after  $LIBS ..." 1>&5
+
+fi
+
+					;;
+				esac
+			fi
+
+			break
+else
+	:
+fi
+
+	done
+fi
+
+if test -z "$cf_x_athena_lib" ; then
+
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists Xext; then
+	test -n "$verbose" && echo "	found package Xext" 1>&6
+
+echo "${as_me:-configure}:38801: testing found package Xext ..." 1>&5
+
+	cf_pkgconfig_incs="`$PKG_CONFIG --cflags Xext 2>/dev/null`"
+	cf_pkgconfig_libs="`$PKG_CONFIG --libs   Xext 2>/dev/null`"
+	test -n "$verbose" && echo "	package Xext CFLAGS: $cf_pkgconfig_incs" 1>&6
+
+echo "${as_me:-configure}:38807: testing package Xext CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+
+	test -n "$verbose" && echo "	package Xext LIBS: $cf_pkgconfig_libs" 1>&6
+
+echo "${as_me:-configure}:38811: testing package Xext LIBS: $cf_pkgconfig_libs ..." 1>&5
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_pkgconfig_incs
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	LIBS="$cf_pkgconfig_libs $LIBS"
+	:
+else
+
+	echo "$as_me:38895: checking for XextCreateExtension in -lXext" >&5
+echo $ECHO_N "checking for XextCreateExtension in -lXext... $ECHO_C" >&6
+if test "${ac_cv_lib_Xext_XextCreateExtension+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lXext  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 38903 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char XextCreateExtension ();
+int
+main ()
+{
+XextCreateExtension ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:38922: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:38925: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:38928: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:38931: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_Xext_XextCreateExtension=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_Xext_XextCreateExtension=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:38942: result: $ac_cv_lib_Xext_XextCreateExtension" >&5
+echo "${ECHO_T}$ac_cv_lib_Xext_XextCreateExtension" >&6
+if test $ac_cv_lib_Xext_XextCreateExtension = yes; then
+  LIBS="-lXext $LIBS"
+fi
+
+fi
+
+cf_have_X_LIBS=no
+
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xt; then
+	test -n "$verbose" && echo "	found package xt" 1>&6
+
+echo "${as_me:-configure}:38955: testing found package xt ..." 1>&5
+
+	cf_pkgconfig_incs="`$PKG_CONFIG --cflags xt 2>/dev/null`"
+	cf_pkgconfig_libs="`$PKG_CONFIG --libs   xt 2>/dev/null`"
+	test -n "$verbose" && echo "	package xt CFLAGS: $cf_pkgconfig_incs" 1>&6
+
+echo "${as_me:-configure}:38961: testing package xt CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+
+	test -n "$verbose" && echo "	package xt LIBS: $cf_pkgconfig_libs" 1>&6
+
+echo "${as_me:-configure}:38965: testing package xt LIBS: $cf_pkgconfig_libs ..." 1>&5
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_pkgconfig_incs
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	LIBS="$cf_pkgconfig_libs $LIBS"
+
+	case "x$LIBS" in #(vi
+	*-lX11*) #(vi
+		;;
+	*)
+# we have an "xt" package, but it may omit Xt's dependency on X11
+echo "$as_me:39052: checking for usable X dependency" >&5
+echo $ECHO_N "checking for usable X dependency... $ECHO_C" >&6
+if test "${cf_cv_xt_x11_compat+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 39059 "configure"
+#include "confdefs.h"
+
+#include <X11/Xlib.h>
+
+int
+main ()
+{
+
+	int rc1 = XDrawLine((Display*) 0, (Drawable) 0, (GC) 0, 0, 0, 0, 0);
+	int rc2 = XClearWindow((Display*) 0, (Window) 0);
+	int rc3 = XMoveWindow((Display*) 0, (Window) 0, 0, 0);
+	int rc4 = XMoveResizeWindow((Display*)0, (Window)0, 0, 0, 0, 0);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:39078: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:39081: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:39084: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:39087: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xt_x11_compat=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_xt_x11_compat=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:39097: result: $cf_cv_xt_x11_compat" >&5
+echo "${ECHO_T}$cf_cv_xt_x11_compat" >&6
+		if test "$cf_cv_xt_x11_compat" = no
+		then
+			test -n "$verbose" && echo "	work around broken X11 dependency" 1>&6
+
+echo "${as_me:-configure}:39103: testing work around broken X11 dependency ..." 1>&5
+
+			# 2010/11/19 - good enough until a working Xt on Xcb is delivered.
+
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists x11; then
+	test -n "$verbose" && echo "	found package x11" 1>&6
+
+echo "${as_me:-configure}:39110: testing found package x11 ..." 1>&5
+
+	cf_pkgconfig_incs="`$PKG_CONFIG --cflags x11 2>/dev/null`"
+	cf_pkgconfig_libs="`$PKG_CONFIG --libs   x11 2>/dev/null`"
+	test -n "$verbose" && echo "	package x11 CFLAGS: $cf_pkgconfig_incs" 1>&6
+
+echo "${as_me:-configure}:39116: testing package x11 CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+
+	test -n "$verbose" && echo "	package x11 LIBS: $cf_pkgconfig_libs" 1>&6
+
+echo "${as_me:-configure}:39120: testing package x11 LIBS: $cf_pkgconfig_libs ..." 1>&5
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_pkgconfig_incs
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	LIBS="$cf_pkgconfig_libs $LIBS"
+	:
+else
+
+test -n "$verbose" && echo "	...before $LIBS" 1>&6
+
+echo "${as_me:-configure}:39206: testing ...before $LIBS ..." 1>&5
+
+LIBS=`echo "$LIBS" | sed -e "s/[ 	][ 	]*/ /g" -e "s,-lXt ,-lXt -lX11 ," -e 's/  / /g'`
+test -n "$verbose" && echo "	...after  $LIBS" 1>&6
+
+echo "${as_me:-configure}:39211: testing ...after  $LIBS ..." 1>&5
+
+fi
+
+		fi
+		;;
+	esac
+
+echo "$as_me:39219: checking for usable X Toolkit package" >&5
+echo $ECHO_N "checking for usable X Toolkit package... $ECHO_C" >&6
+if test "${cf_cv_xt_ice_compat+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 39226 "configure"
+#include "confdefs.h"
+
+#include <X11/Shell.h>
+
+int
+main ()
+{
+int num = IceConnectionNumber(0)
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:39241: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:39244: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:39247: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:39250: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_xt_ice_compat=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_xt_ice_compat=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:39260: result: $cf_cv_xt_ice_compat" >&5
+echo "${ECHO_T}$cf_cv_xt_ice_compat" >&6
+
+	if test "$cf_cv_xt_ice_compat" = no
+	then
+		# workaround for broken ".pc" files used for X Toolkit.
+		case "x$X_PRE_LIBS" in #(vi
+		*-lICE*)
+			case "x$LIBS" in #(vi
+			*-lICE*) #(vi
+				;;
+			*)
+				test -n "$verbose" && echo "	work around broken ICE dependency" 1>&6
+
+echo "${as_me:-configure}:39274: testing work around broken ICE dependency ..." 1>&5
+
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists ice; then
+	test -n "$verbose" && echo "	found package ice" 1>&6
+
+echo "${as_me:-configure}:39279: testing found package ice ..." 1>&5
+
+	cf_pkgconfig_incs="`$PKG_CONFIG --cflags ice 2>/dev/null`"
+	cf_pkgconfig_libs="`$PKG_CONFIG --libs   ice 2>/dev/null`"
+	test -n "$verbose" && echo "	package ice CFLAGS: $cf_pkgconfig_incs" 1>&6
+
+echo "${as_me:-configure}:39285: testing package ice CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+
+	test -n "$verbose" && echo "	package ice LIBS: $cf_pkgconfig_libs" 1>&6
+
+echo "${as_me:-configure}:39289: testing package ice LIBS: $cf_pkgconfig_libs ..." 1>&5
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_pkgconfig_incs
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	LIBS="$cf_pkgconfig_libs $LIBS"
+
+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists sm; then
+	test -n "$verbose" && echo "	found package sm" 1>&6
+
+echo "${as_me:-configure}:39374: testing found package sm ..." 1>&5
+
+	cf_pkgconfig_incs="`$PKG_CONFIG --cflags sm 2>/dev/null`"
+	cf_pkgconfig_libs="`$PKG_CONFIG --libs   sm 2>/dev/null`"
+	test -n "$verbose" && echo "	package sm CFLAGS: $cf_pkgconfig_incs" 1>&6
+
+echo "${as_me:-configure}:39380: testing package sm CFLAGS: $cf_pkgconfig_incs ..." 1>&5
+
+	test -n "$verbose" && echo "	package sm LIBS: $cf_pkgconfig_libs" 1>&6
+
+echo "${as_me:-configure}:39384: testing package sm LIBS: $cf_pkgconfig_libs ..." 1>&5
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $cf_pkgconfig_incs
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+	LIBS="$cf_pkgconfig_libs $LIBS"
+	:
+else
+	:
+fi
+
+else
+
+test -n "$verbose" && echo "	...before $LIBS" 1>&6
+
+echo "${as_me:-configure}:39474: testing ...before $LIBS ..." 1>&5
+
+LIBS=`echo "$LIBS" | sed -e "s/[ 	][ 	]*/ /g" -e "s,-lXt ,-lXt $X_PRE_LIBS ," -e 's/  / /g'`
+test -n "$verbose" && echo "	...after  $LIBS" 1>&6
+
+echo "${as_me:-configure}:39479: testing ...after  $LIBS ..." 1>&5
+
+fi
+
+				;;
+			esac
+			;;
+		esac
+	fi
+
+	cf_have_X_LIBS=yes
+
+else
+
+	LDFLAGS="$X_LIBS $LDFLAGS"
+
+test -n "$verbose" && echo "	checking additions to CFLAGS" 1>&6
+
+echo "${as_me:-configure}:39497: testing checking additions to CFLAGS ..." 1>&5
+
+cf_check_cflags="$CFLAGS"
+cf_check_cppflags="$CPPFLAGS"
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $X_CFLAGS
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+	test -n "$verbose" && echo "	add to \$CFLAGS $cf_new_cflags" 1>&6
+
+echo "${as_me:-configure}:39568: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+	test -n "$verbose" && echo "	add to \$CPPFLAGS $cf_new_cppflags" 1>&6
+
+echo "${as_me:-configure}:39576: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+	test -n "$verbose" && echo "	add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6
+
+echo "${as_me:-configure}:39584: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+if test "$cf_check_cflags" != "$CFLAGS" ; then
+cat >conftest.$ac_ext <<_ACEOF
+#line 39591 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello world");
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:39603: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:39606: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:39609: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:39612: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+test -n "$verbose" && echo "	test-compile failed.  Undoing change to \$CFLAGS" 1>&6
+
+echo "${as_me:-configure}:39620: testing test-compile failed.  Undoing change to \$CFLAGS ..." 1>&5
+
+	 if test "$cf_check_cppflags" != "$CPPFLAGS" ; then
+		 test -n "$verbose" && echo "	but keeping change to \$CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:39625: testing but keeping change to \$CPPFLAGS ..." 1>&5
+
+	 fi
+	 CFLAGS="$cf_check_flags"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+
+	echo "$as_me:39633: checking for XOpenDisplay" >&5
+echo $ECHO_N "checking for XOpenDisplay... $ECHO_C" >&6
+if test "${ac_cv_func_XOpenDisplay+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 39639 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char XOpenDisplay (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char XOpenDisplay ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_XOpenDisplay) || defined (__stub___XOpenDisplay)
+choke me
+#else
+f = XOpenDisplay;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:39670: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:39673: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:39676: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:39679: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_XOpenDisplay=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_XOpenDisplay=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:39689: result: $ac_cv_func_XOpenDisplay" >&5
+echo "${ECHO_T}$ac_cv_func_XOpenDisplay" >&6
+if test $ac_cv_func_XOpenDisplay = yes; then
+  :
+else
+
+	echo "$as_me:39695: checking for XOpenDisplay in -lX11" >&5
+echo $ECHO_N "checking for XOpenDisplay in -lX11... $ECHO_C" >&6
+if test "${ac_cv_lib_X11_XOpenDisplay+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 39703 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char XOpenDisplay ();
+int
+main ()
+{
+XOpenDisplay ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:39722: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:39725: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:39728: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:39731: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_X11_XOpenDisplay=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_X11_XOpenDisplay=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:39742: result: $ac_cv_lib_X11_XOpenDisplay" >&5
+echo "${ECHO_T}$ac_cv_lib_X11_XOpenDisplay" >&6
+if test $ac_cv_lib_X11_XOpenDisplay = yes; then
+  LIBS="-lX11 $LIBS"
+fi
+
+fi
+
+	echo "$as_me:39750: checking for XtAppInitialize" >&5
+echo $ECHO_N "checking for XtAppInitialize... $ECHO_C" >&6
+if test "${ac_cv_func_XtAppInitialize+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 39756 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char XtAppInitialize (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char XtAppInitialize ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_XtAppInitialize) || defined (__stub___XtAppInitialize)
+choke me
+#else
+f = XtAppInitialize;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:39787: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:39790: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:39793: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:39796: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_XtAppInitialize=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_XtAppInitialize=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:39806: result: $ac_cv_func_XtAppInitialize" >&5
+echo "${ECHO_T}$ac_cv_func_XtAppInitialize" >&6
+if test $ac_cv_func_XtAppInitialize = yes; then
+  :
+else
+
+	echo "$as_me:39812: checking for XtAppInitialize in -lXt" >&5
+echo $ECHO_N "checking for XtAppInitialize in -lXt... $ECHO_C" >&6
+if test "${ac_cv_lib_Xt_XtAppInitialize+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 39820 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char XtAppInitialize ();
+int
+main ()
+{
+XtAppInitialize ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:39839: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:39842: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:39845: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:39848: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_Xt_XtAppInitialize=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_Xt_XtAppInitialize=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:39859: result: $ac_cv_lib_Xt_XtAppInitialize" >&5
+echo "${ECHO_T}$ac_cv_lib_Xt_XtAppInitialize" >&6
+if test $ac_cv_lib_Xt_XtAppInitialize = yes; then
+  cat >>confdefs.h <<\EOF
+#define HAVE_LIBXT 1
+EOF
+
+		 cf_have_X_LIBS=Xt
+		 LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS"
+fi
+
+fi
+
+fi
+
+if test $cf_have_X_LIBS = no ; then
+	{ echo "$as_me:39875: WARNING: Unable to successfully link X Toolkit library (-lXt) with
+test program.  You will have to check and add the proper libraries by hand
+to makefile." >&5
+echo "$as_me: WARNING: Unable to successfully link X Toolkit library (-lXt) with
+test program.  You will have to check and add the proper libraries by hand
+to makefile." >&2;}
+fi
+
+cf_x_athena_root=$cf_x_athena
+cf_x_athena_inc=""
+
+for cf_path in default \
+	/usr/contrib/X11R6 \
+	/usr/contrib/X11R5 \
+	/usr/lib/X11R5 \
+	/usr/local
+do
+	if test -z "$cf_x_athena_inc" ; then
+		cf_save="$CPPFLAGS"
+		cf_test=X11/$cf_x_athena_root/SimpleMenu.h
+		if test $cf_path != default ; then
+			CPPFLAGS="$cf_save -I$cf_path/include"
+			echo "$as_me:39897: checking for $cf_test in $cf_path" >&5
+echo $ECHO_N "checking for $cf_test in $cf_path... $ECHO_C" >&6
+		else
+			echo "$as_me:39900: checking for $cf_test" >&5
+echo $ECHO_N "checking for $cf_test... $ECHO_C" >&6
+		fi
+		cat >conftest.$ac_ext <<_ACEOF
+#line 39904 "configure"
+#include "confdefs.h"
+
+#include <X11/Intrinsic.h>
+#include <$cf_test>
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:39918: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:39921: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:39924: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:39927: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+		echo "$as_me:39936: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+		if test "$cf_result" = yes ; then
+			cf_x_athena_inc=$cf_path
+			break
+		else
+			CPPFLAGS="$cf_save"
+		fi
+	fi
+done
+
+if test -z "$cf_x_athena_inc" ; then
+	{ echo "$as_me:39948: WARNING: Unable to successfully find Athena header files with test program" >&5
+echo "$as_me: WARNING: Unable to successfully find Athena header files with test program" >&2;}
+elif test "$cf_x_athena_inc" != default ; then
+	CPPFLAGS="$CPPFLAGS -I$cf_x_athena_inc"
+fi
+
+cf_x_athena_root=$cf_x_athena
+cf_x_athena_lib=""
+
+for cf_path in default \
+	/usr/contrib/X11R6 \
+	/usr/contrib/X11R5 \
+	/usr/lib/X11R5 \
+	/usr/local
+do
+	for cf_lib in \
+		${cf_x_athena_root} \
+		${cf_x_athena_root}7 \
+		${cf_x_athena_root}6
+	do
+	for cf_libs in \
+		"-l$cf_lib -lXmu" \
+		"-l$cf_lib -lXpm -lXmu" \
+		"-l${cf_lib}_s -lXmu_s"
+	do
+		if test -z "$cf_x_athena_lib" ; then
+			cf_save="$LIBS"
+			cf_test=XawSimpleMenuAddGlobalActions
+			if test $cf_path != default ; then
+				LIBS="-L$cf_path/lib $cf_libs $LIBS"
+				echo "$as_me:39978: checking for $cf_libs in $cf_path" >&5
+echo $ECHO_N "checking for $cf_libs in $cf_path... $ECHO_C" >&6
+			else
+				LIBS="$cf_libs $LIBS"
+				echo "$as_me:39982: checking for $cf_test in $cf_libs" >&5
+echo $ECHO_N "checking for $cf_test in $cf_libs... $ECHO_C" >&6
+			fi
+			cat >conftest.$ac_ext <<_ACEOF
+#line 39986 "configure"
+#include "confdefs.h"
+
+#include <X11/Intrinsic.h>
+#include <X11/$cf_x_athena_root/SimpleMenu.h>
+
+int
+main ()
+{
+
+$cf_test((XtAppContext) 0)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:40002: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:40005: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:40008: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40011: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+			echo "$as_me:40020: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+			if test "$cf_result" = yes ; then
+				cf_x_athena_lib="$cf_libs"
+				break
+			fi
+			LIBS="$cf_save"
+		fi
+	done # cf_libs
+		test -n "$cf_x_athena_lib" && break
+	done # cf_lib
+done
+
+if test -z "$cf_x_athena_lib" ; then
+	{ { echo "$as_me:40034: error: Unable to successfully link Athena library (-l$cf_x_athena_root) with test program" >&5
+echo "$as_me: error: Unable to successfully link Athena library (-l$cf_x_athena_root) with test program" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+cat >>confdefs.h <<EOF
+#define $cf_x_athena_LIBS 1
+EOF
+
+fi
+
+if test -n "$ac_tool_prefix"; then
+  for ac_prog in xcurses-config
+  do
+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:40052: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_XCURSES_CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$XCURSES_CONFIG"; then
+  ac_cv_prog_XCURSES_CONFIG="$XCURSES_CONFIG" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_XCURSES_CONFIG="$ac_tool_prefix$ac_prog"
+echo "$as_me:40067: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+XCURSES_CONFIG=$ac_cv_prog_XCURSES_CONFIG
+if test -n "$XCURSES_CONFIG"; then
+  echo "$as_me:40075: result: $XCURSES_CONFIG" >&5
+echo "${ECHO_T}$XCURSES_CONFIG" >&6
+else
+  echo "$as_me:40078: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+    test -n "$XCURSES_CONFIG" && break
+  done
+fi
+if test -z "$XCURSES_CONFIG"; then
+  ac_ct_XCURSES_CONFIG=$XCURSES_CONFIG
+  for ac_prog in xcurses-config
+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 "$as_me:40091: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_XCURSES_CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_XCURSES_CONFIG"; then
+  ac_cv_prog_ac_ct_XCURSES_CONFIG="$ac_ct_XCURSES_CONFIG" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_XCURSES_CONFIG="$ac_prog"
+echo "$as_me:40106: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_XCURSES_CONFIG=$ac_cv_prog_ac_ct_XCURSES_CONFIG
+if test -n "$ac_ct_XCURSES_CONFIG"; then
+  echo "$as_me:40114: result: $ac_ct_XCURSES_CONFIG" >&5
+echo "${ECHO_T}$ac_ct_XCURSES_CONFIG" >&6
+else
+  echo "$as_me:40117: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ac_ct_XCURSES_CONFIG" && break
+done
+test -n "$ac_ct_XCURSES_CONFIG" || ac_ct_XCURSES_CONFIG="none"
+
+  XCURSES_CONFIG=$ac_ct_XCURSES_CONFIG
+fi
+
+if test "$XCURSES_CONFIG" != none ; then
+
+CPPFLAGS="$CPPFLAGS `$XCURSES_CONFIG --cflags`"
+LIBS="`$XCURSES_CONFIG --libs` $LIBS"
+
+cf_cv_lib_XCurses=yes
+
+else
+
+LDFLAGS="$LDFLAGS $X_LIBS"
+
+test -n "$verbose" && echo "	checking additions to CFLAGS" 1>&6
+
+echo "${as_me:-configure}:40141: testing checking additions to CFLAGS ..." 1>&5
+
+cf_check_cflags="$CFLAGS"
+cf_check_cppflags="$CPPFLAGS"
+
+cf_fix_cppflags=no
+cf_new_cflags=
+cf_new_cppflags=
+cf_new_extra_cppflags=
+
+for cf_add_cflags in $X_CFLAGS
+do
+case $cf_fix_cppflags in
+no)
+	case $cf_add_cflags in #(vi
+	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
+		case $cf_add_cflags in
+		-D*)
+			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
+
+			test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+				&& test -z "${cf_tst_cflags}" \
+				&& cf_fix_cppflags=yes
+
+			if test $cf_fix_cppflags = yes ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			elif test "${cf_tst_cflags}" = "\"'" ; then
+				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+				continue
+			fi
+			;;
+		esac
+		case "$CPPFLAGS" in
+		*$cf_add_cflags) #(vi
+			;;
+		*) #(vi
+			case $cf_add_cflags in #(vi
+			-D*)
+				cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
+
+CPPFLAGS=`echo "$CPPFLAGS" | \
+	sed	-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?[ 	]/ /g' \
+		-e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ 	]*\)\?$//g'`
+
+				;;
+			esac
+			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+			;;
+		esac
+		;;
+	*)
+		cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+		;;
+	esac
+	;;
+yes)
+	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+
+	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
+
+	test "${cf_add_cflags}" != "${cf_tst_cflags}" \
+		&& test -z "${cf_tst_cflags}" \
+		&& cf_fix_cppflags=no
+	;;
+esac
+done
+
+if test -n "$cf_new_cflags" ; then
+	test -n "$verbose" && echo "	add to \$CFLAGS $cf_new_cflags" 1>&6
+
+echo "${as_me:-configure}:40212: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
+
+	CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+	test -n "$verbose" && echo "	add to \$CPPFLAGS $cf_new_cppflags" 1>&6
+
+echo "${as_me:-configure}:40220: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
+
+	CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
+if test -n "$cf_new_extra_cppflags" ; then
+	test -n "$verbose" && echo "	add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags" 1>&6
+
+echo "${as_me:-configure}:40228: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
+
+	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+fi
+
+if test "$cf_check_cflags" != "$CFLAGS" ; then
+cat >conftest.$ac_ext <<_ACEOF
+#line 40235 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello world");
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:40247: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:40250: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:40253: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40256: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+test -n "$verbose" && echo "	test-compile failed.  Undoing change to \$CFLAGS" 1>&6
+
+echo "${as_me:-configure}:40264: testing test-compile failed.  Undoing change to \$CFLAGS ..." 1>&5
+
+	 if test "$cf_check_cppflags" != "$CPPFLAGS" ; then
+		 test -n "$verbose" && echo "	but keeping change to \$CPPFLAGS" 1>&6
+
+echo "${as_me:-configure}:40269: testing but keeping change to \$CPPFLAGS ..." 1>&5
+
+	 fi
+	 CFLAGS="$cf_check_flags"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+
+echo "$as_me:40277: checking for XOpenDisplay in -lX11" >&5
+echo $ECHO_N "checking for XOpenDisplay in -lX11... $ECHO_C" >&6
+if test "${ac_cv_lib_X11_XOpenDisplay+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 40285 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char XOpenDisplay ();
+int
+main ()
+{
+XOpenDisplay ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:40304: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:40307: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:40310: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40313: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_X11_XOpenDisplay=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_X11_XOpenDisplay=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:40324: result: $ac_cv_lib_X11_XOpenDisplay" >&5
+echo "${ECHO_T}$ac_cv_lib_X11_XOpenDisplay" >&6
+if test $ac_cv_lib_X11_XOpenDisplay = yes; then
+  LIBS="-lX11 $LIBS"
+fi
+
+echo "$as_me:40330: checking for XCurses library" >&5
+echo $ECHO_N "checking for XCurses library... $ECHO_C" >&6
+if test "${cf_cv_lib_XCurses+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+LIBS="-lXCurses $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 40338 "configure"
+#include "confdefs.h"
+
+#include <xcurses.h>
+char *XCursesProgramName = "test";
+
+int
+main ()
+{
+XCursesExit();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:40353: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:40356: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:40359: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40362: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_lib_XCurses=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_lib_XCurses=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:40373: result: $cf_cv_lib_XCurses" >&5
+echo "${ECHO_T}$cf_cv_lib_XCurses" >&6
+
+fi
+
+if test $cf_cv_lib_XCurses = yes ; then
+	cat >>confdefs.h <<\EOF
+#define UNIX 1
+EOF
+
+	cat >>confdefs.h <<\EOF
+#define XCURSES 1
+EOF
+
+	echo "$as_me:40387: checking for xcurses.h" >&5
+echo $ECHO_N "checking for xcurses.h... $ECHO_C" >&6
+if test "${ac_cv_header_xcurses_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 40393 "configure"
+#include "confdefs.h"
+#include <xcurses.h>
+_ACEOF
+if { (eval echo "$as_me:40397: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:40403: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  ac_cv_header_xcurses_h=yes
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  ac_cv_header_xcurses_h=no
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:40422: result: $ac_cv_header_xcurses_h" >&5
+echo "${ECHO_T}$ac_cv_header_xcurses_h" >&6
+if test $ac_cv_header_xcurses_h = yes; then
+  cat >>confdefs.h <<\EOF
+#define HAVE_XCURSES 1
+EOF
+
+fi
+
+else
+	{ { echo "$as_me:40432: error: Cannot link with XCurses" >&5
+echo "$as_me: error: Cannot link with XCurses" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+else
+
+echo "$as_me:40439: checking if we can include termio.h with curses" >&5
+echo $ECHO_N "checking if we can include termio.h with curses... $ECHO_C" >&6
+if test "${cf_cv_termio_and_curses+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cf_save_CFLAGS="$CPPFLAGS"
+    CPPFLAGS="$CPPFLAGS -DHAVE_CONFIG_H -I. -I${srcdir:-.} -I${srcdir:-.}/src -I${srcdir:-.}/WWW/Library/Implementation"
+    touch lynx_cfg.h
+    cat >conftest.$ac_ext <<_ACEOF
+#line 40449 "configure"
+#include "confdefs.h"
+
+#include <LYCurses.h>
+#include <termio.h>
+int
+main ()
+{
+putchar(0x0a)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:40463: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:40466: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:40469: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40472: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_termio_and_curses=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_termio_and_curses=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+    CPPFLAGS="$cf_save_CFLAGS"
+    rm -f lynx_cfg.h
+
+fi
+echo "$as_me:40485: result: $cf_cv_termio_and_curses" >&5
+echo "${ECHO_T}$cf_cv_termio_and_curses" >&6
+
+test $cf_cv_termio_and_curses = yes && cat >>confdefs.h <<\EOF
+#define TERMIO_AND_CURSES 1
+EOF
+
+fi
+
+### These tests must be run after establishing the curses library.
+if test $cf_cv_screen != slang ; then
+
+for ac_header in $cf_cv_screen/term.h term.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:40500: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 40506 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:40510: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:40516: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:40535: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+echo "$as_me:40545: checking if curses supports alternate-character set" >&5
+echo $ECHO_N "checking if curses supports alternate-character set... $ECHO_C" >&6
+if test "${cf_cv_alt_char_set+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+for mapname in acs_map _acs_map
+do
+	cat >conftest.$ac_ext <<_ACEOF
+#line 40554 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+
+int
+main ()
+{
+chtype x = $mapname['l']; $mapname['m'] = 0
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:40568: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:40571: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:40574: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40577: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_alt_char_set=$mapname
+	 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_alt_char_set=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+done
+
+fi
+
+echo "$as_me:40591: result: $cf_cv_alt_char_set" >&5
+echo "${ECHO_T}$cf_cv_alt_char_set" >&6
+test $cf_cv_alt_char_set != no && cat >>confdefs.h <<EOF
+#define ALT_CHAR_SET $cf_cv_alt_char_set
+EOF
+
+echo "$as_me:40597: checking if curses supports fancy attributes" >&5
+echo $ECHO_N "checking if curses supports fancy attributes... $ECHO_C" >&6
+if test "${cf_cv_fancy_curses+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 40604 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+
+int
+main ()
+{
+attrset(A_UNDERLINE|A_BOLD|A_REVERSE);
+	 wattrset(stdscr, A_BLINK|A_DIM);
+	 attroff(A_BOLD);
+	 keypad(stdscr,TRUE);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:40622: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:40625: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:40628: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40631: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_fancy_curses=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_fancy_curses=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+echo "$as_me:40643: result: $cf_cv_fancy_curses" >&5
+echo "${ECHO_T}$cf_cv_fancy_curses" >&6
+test $cf_cv_fancy_curses = yes && cat >>confdefs.h <<\EOF
+#define FANCY_CURSES 1
+EOF
+
+echo "$as_me:40649: checking for function curses_version" >&5
+echo $ECHO_N "checking for function curses_version... $ECHO_C" >&6
+if test "${cf_cv_func_curses_version+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+if test "$cross_compiling" = yes; then
+  cf_cv_func_curses_version=unknown
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 40659 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+int main()
+{
+	char temp[1024];
+	sprintf(temp, "%s\n", curses_version());
+	${cf_cv_main_return:-return}(0);
+}
+
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:40672: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:40675: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:40677: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40680: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_func_curses_version=yes
+
+else
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_func_curses_version=no
+
+fi
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core
+fi
+echo "$as_me:40695: result: $cf_cv_func_curses_version" >&5
+echo "${ECHO_T}$cf_cv_func_curses_version" >&6
+test "$cf_cv_func_curses_version" = yes && cat >>confdefs.h <<\EOF
+#define HAVE_CURSES_VERSION 1
+EOF
+
+if test "$cf_cv_ncurses_version" != no ; then
+echo "$as_me:40702: checking for obsolete/broken version of ncurses" >&5
+echo $ECHO_N "checking for obsolete/broken version of ncurses... $ECHO_C" >&6
+if test "${cf_cv_ncurses_broken+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 40709 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+
+#if defined(NCURSES_VERSION) && defined(wgetbkgd)
+	make an error
+#else
+	int x = 1
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:40728: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:40731: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:40734: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40737: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_ncurses_broken=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_ncurses_broken=yes
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+
+echo "$as_me:40749: result: $cf_cv_ncurses_broken" >&5
+echo "${ECHO_T}$cf_cv_ncurses_broken" >&6
+if test "$cf_cv_ncurses_broken" = yes ; then
+	{ echo "$as_me:40752: WARNING: hmm... you should get an up-to-date version of ncurses" >&5
+echo "$as_me: WARNING: hmm... you should get an up-to-date version of ncurses" >&2;}
+	cat >>confdefs.h <<\EOF
+#define NCURSES_BROKEN 1
+EOF
+
+fi
+fi
+
+echo "$as_me:40761: checking if curses supports color attributes" >&5
+echo $ECHO_N "checking if curses supports color attributes... $ECHO_C" >&6
+if test "${cf_cv_color_curses+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 40768 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+
+int
+main ()
+{
+chtype x = COLOR_BLUE;
+	 has_colors();
+	 start_color();
+#ifndef NCURSES_BROKEN
+	 wbkgd(curscr, getbkgd(stdscr)); /* X/Open XPG4 aka SVr4 Curses */
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:40788: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:40791: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:40794: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40797: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_color_curses=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_color_curses=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+echo "$as_me:40809: result: $cf_cv_color_curses" >&5
+echo "${ECHO_T}$cf_cv_color_curses" >&6
+if test $cf_cv_color_curses = yes ; then
+	cat >>confdefs.h <<\EOF
+#define COLOR_CURSES 1
+EOF
+
+	test ".$cf_cv_ncurses_broken" != .yes && cat >>confdefs.h <<\EOF
+#define HAVE_GETBKGD 1
+EOF
+
+fi
+
+for ac_header in \
+termio.h \
+termios.h \
+unistd.h \
+
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:40829: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 40835 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:40839: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:40845: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:40864: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+if test "$ISC" = yes ; then
+
+for ac_header in sys/termio.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:40879: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 40885 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:40889: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:40895: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:40914: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+fi
+if test "$ac_cv_header_termios_h" = yes ; then
+	case "$CFLAGS $CPPFLAGS" in
+	*-D_POSIX_SOURCE*)
+		termios_bad=dunno ;;
+	*)	termios_bad=maybe ;;
+	esac
+	if test "$termios_bad" = maybe ; then
+	echo "$as_me:40932: checking whether termios.h needs _POSIX_SOURCE" >&5
+echo $ECHO_N "checking whether termios.h needs _POSIX_SOURCE... $ECHO_C" >&6
+	cat >conftest.$ac_ext <<_ACEOF
+#line 40935 "configure"
+#include "confdefs.h"
+#include <termios.h>
+int
+main ()
+{
+struct termios foo; int x = foo.c_iflag
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:40947: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:40950: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:40953: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40956: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  termios_bad=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+
+		cat >conftest.$ac_ext <<_ACEOF
+#line 40964 "configure"
+#include "confdefs.h"
+
+#define _POSIX_SOURCE
+#include <termios.h>
+int
+main ()
+{
+struct termios foo; int x = foo.c_iflag
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:40978: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:40981: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:40984: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:40987: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  termios_bad=unknown
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+termios_bad=yes cat >>confdefs.h <<\EOF
+#define _POSIX_SOURCE 1
+EOF
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	echo "$as_me:41002: result: $termios_bad" >&5
+echo "${ECHO_T}$termios_bad" >&6
+	fi
+fi
+
+echo "$as_me:41007: checking declaration of size-change" >&5
+echo $ECHO_N "checking declaration of size-change... $ECHO_C" >&6
+if test "${cf_cv_sizechange+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+    cf_cv_sizechange=unknown
+    cf_save_CPPFLAGS="$CPPFLAGS"
+
+for cf_opts in "" "NEED_PTEM_H"
+do
+
+    CPPFLAGS="$cf_save_CPPFLAGS"
+    test -n "$cf_opts" && CPPFLAGS="$CPPFLAGS -D$cf_opts"
+    cat >conftest.$ac_ext <<_ACEOF
+#line 41022 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+#ifdef HAVE_TERMIOS_H
+#include <termios.h>
+#else
+#ifdef HAVE_TERMIO_H
+#include <termio.h>
+#endif
+#endif
+#ifdef NEED_PTEM_H
+/* This is a workaround for SCO:  they neglected to define struct winsize in
+ * termios.h -- it's only in termio.h and ptem.h
+ */
+#include        <sys/stream.h>
+#include        <sys/ptem.h>
+#endif
+#if !defined(sun) || !defined(HAVE_TERMIOS_H)
+#include <sys/ioctl.h>
+#endif
+
+int
+main ()
+{
+
+#ifdef TIOCGSIZE
+	struct ttysize win;	/* FIXME: what system is this? */
+	int y = win.ts_lines;
+	int x = win.ts_cols;
+#else
+#ifdef TIOCGWINSZ
+	struct winsize win;
+	int y = win.ws_row;
+	int x = win.ws_col;
+#else
+	no TIOCGSIZE or TIOCGWINSZ
+#endif /* TIOCGWINSZ */
+#endif /* TIOCGSIZE */
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:41066: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:41069: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:41072: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41075: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_sizechange=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_sizechange=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+
+	CPPFLAGS="$cf_save_CPPFLAGS"
+	if test "$cf_cv_sizechange" = yes ; then
+		echo "size-change succeeded ($cf_opts)" >&5
+		test -n "$cf_opts" && cf_cv_sizechange="$cf_opts"
+		break
+	fi
+done
+
+fi
+echo "$as_me:41094: result: $cf_cv_sizechange" >&5
+echo "${ECHO_T}$cf_cv_sizechange" >&6
+if test "$cf_cv_sizechange" != no ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_SIZECHANGE 1
+EOF
+
+	case $cf_cv_sizechange in #(vi
+	NEED*)
+		cat >>confdefs.h <<EOF
+#define $cf_cv_sizechange  1
+EOF
+
+		;;
+	esac
+fi
+
+echo "$as_me:41111: checking if ttytype is declared in curses library" >&5
+echo $ECHO_N "checking if ttytype is declared in curses library... $ECHO_C" >&6
+if test "${cf_cv_have_ttytype+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 41118 "configure"
+#include "confdefs.h"
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+char *x = &ttytype[1]; *x = 1
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:41130: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:41133: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:41136: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41139: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_have_ttytype=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_have_ttytype=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+
+echo "$as_me:41151: result: $cf_cv_have_ttytype" >&5
+echo "${ECHO_T}$cf_cv_have_ttytype" >&6
+test $cf_cv_have_ttytype = yes && cat >>confdefs.h <<\EOF
+#define HAVE_TTYTYPE 1
+EOF
+
+	if test "$use_wide_curses" = yes ; then
+
+echo "$as_me:41159: checking if curses supports wide characters" >&5
+echo $ECHO_N "checking if curses supports wide characters... $ECHO_C" >&6
+if test "${cf_cv_widec_curses+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 41166 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+
+    wchar_t temp[2];
+    wchar_t wch = 'A';
+    temp[0] = wch;
+    waddnwstr(stdscr, temp, 1);
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:41185: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:41188: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:41191: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41194: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_widec_curses=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_widec_curses=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+fi
+echo "$as_me:41205: result: $cf_cv_widec_curses" >&5
+echo "${ECHO_T}$cf_cv_widec_curses" >&6
+
+if test "$cf_cv_widec_curses" = yes ; then
+	cat >>confdefs.h <<\EOF
+#define WIDEC_CURSES 1
+EOF
+
+	# This is needed on Tru64 5.0 to declare mbstate_t
+	echo "$as_me:41214: checking if we must include wchar.h to declare mbstate_t" >&5
+echo $ECHO_N "checking if we must include wchar.h to declare mbstate_t... $ECHO_C" >&6
+if test "${cf_cv_widec_mbstate+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+	cat >conftest.$ac_ext <<_ACEOF
+#line 41221 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+mbstate_t state
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:41235: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:41238: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:41241: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41244: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_widec_mbstate=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 41251 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <wchar.h>
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+mbstate_t state
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:41266: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:41269: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:41272: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41275: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_widec_mbstate=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_widec_mbstate=unknown
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:41287: result: $cf_cv_widec_mbstate" >&5
+echo "${ECHO_T}$cf_cv_widec_mbstate" >&6
+
+if test "$cf_cv_widec_mbstate" = yes ; then
+	cat >>confdefs.h <<\EOF
+#define NEED_WCHAR_H 1
+EOF
+
+fi
+
+if test "$cf_cv_widec_mbstate" != unknown ; then
+	cat >>confdefs.h <<\EOF
+#define HAVE_MBSTATE_T 1
+EOF
+
+fi
+
+fi
+
+	fi
+
+echo "$as_me:41308: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
+echo $ECHO_N "checking if we must define _XOPEN_SOURCE_EXTENDED... $ECHO_C" >&6
+if test "${cf_cv_need_xopen_extension+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 41315 "configure"
+#include "confdefs.h"
+
+#include <stdlib.h>
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+
+#if defined(NCURSES_VERSION_PATCH)
+#if (NCURSES_VERSION_PATCH < 20100501) && (NCURSES_VERSION_PATCH >= 20100403)
+	make an error
+#endif
+#endif
+	long x = winnstr(stdscr, "", 0);
+	int x1, y1;
+	getbegyx(stdscr, y1, x1)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:41337: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:41340: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:41343: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41346: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_need_xopen_extension=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cat >conftest.$ac_ext <<_ACEOF
+#line 41353 "configure"
+#include "confdefs.h"
+
+#define _XOPEN_SOURCE_EXTENDED
+#include <stdlib.h>
+#include <${cf_cv_ncurses_header:-curses.h}>
+int
+main ()
+{
+
+#ifdef NCURSES_VERSION
+	cchar_t check;
+	int check2 = curs_set((int)sizeof(check));
+#endif
+	long x = winnstr(stdscr, "", 0);
+	int x1, y1;
+	getbegyx(stdscr, y1, x1)
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:41375: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:41378: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:41381: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41384: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_need_xopen_extension=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_need_xopen_extension=unknown
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:41396: result: $cf_cv_need_xopen_extension" >&5
+echo "${ECHO_T}$cf_cv_need_xopen_extension" >&6
+test $cf_cv_need_xopen_extension = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
+
+echo "$as_me:41400: checking for term.h" >&5
+echo $ECHO_N "checking for term.h... $ECHO_C" >&6
+if test "${cf_cv_term_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# If we found <ncurses/curses.h>, look for <ncurses/term.h>, but always look
+# for <term.h> if we do not find the variant.
+
+cf_header_list="term.h ncurses/term.h ncursesw/term.h"
+
+case ${cf_cv_ncurses_header:-curses.h} in #(vi
+*/*)
+	cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`term.h
+	cf_header_list="$cf_header_item $cf_header_list"
+	;;
+esac
+
+for cf_header in $cf_header_list
+do
+	cat >conftest.$ac_ext <<_ACEOF
+#line 41421 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <${cf_header}>
+int
+main ()
+{
+WINDOW *x
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:41435: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:41438: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:41441: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41444: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_term_header=$cf_header
+	 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_term_header=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+
+case $cf_cv_term_header in #(vi
+no)
+	# If curses is ncurses, some packagers still mess it up by trying to make
+	# us use GNU termcap.  This handles the most common case.
+	for cf_header in ncurses/term.h ncursesw/term.h
+	do
+		cat >conftest.$ac_ext <<_ACEOF
+#line 41463 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+#ifdef NCURSES_VERSION
+#include <${cf_header}>
+#else
+make an error
+#endif
+int
+main ()
+{
+WINDOW *x
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:41481: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:41484: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:41487: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41490: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_term_header=$cf_header
+			 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_term_header=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+	done
+	;;
+esac
+
+fi
+echo "$as_me:41505: result: $cf_cv_term_header" >&5
+echo "${ECHO_T}$cf_cv_term_header" >&6
+
+case $cf_cv_term_header in #(vi
+term.h) #(vi
+	cat >>confdefs.h <<\EOF
+#define HAVE_TERM_H 1
+EOF
+
+	;;
+ncurses/term.h) #(vi
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSES_TERM_H 1
+EOF
+
+	;;
+ncursesw/term.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSESW_TERM_H 1
+EOF
+
+	;;
+esac
+
+echo "$as_me:41529: checking for unctrl.h" >&5
+echo $ECHO_N "checking for unctrl.h... $ECHO_C" >&6
+if test "${cf_cv_unctrl_header+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# If we found <ncurses/curses.h>, look for <ncurses/unctrl.h>, but always look
+# for <unctrl.h> if we do not find the variant.
+
+cf_header_list="unctrl.h ncurses/unctrl.h ncursesw/unctrl.h"
+
+case ${cf_cv_ncurses_header:-curses.h} in #(vi
+*/*)
+	cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`unctrl.h
+	cf_header_list="$cf_header_item $cf_header_list"
+	;;
+esac
+
+for cf_header in $cf_header_list
+do
+	cat >conftest.$ac_ext <<_ACEOF
+#line 41550 "configure"
+#include "confdefs.h"
+
+#include <${cf_cv_ncurses_header:-curses.h}>
+#include <${cf_header}>
+int
+main ()
+{
+WINDOW *x
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:41564: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:41567: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:41570: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41573: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_cv_unctrl_header=$cf_header
+	 break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_cv_unctrl_header=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+
+case $cf_cv_unctrl_header in #(vi
+no)
+	{ echo "$as_me:41587: WARNING: unctrl.h header not found" >&5
+echo "$as_me: WARNING: unctrl.h header not found" >&2;}
+	;;
+esac
+
+fi
+echo "$as_me:41593: result: $cf_cv_unctrl_header" >&5
+echo "${ECHO_T}$cf_cv_unctrl_header" >&6
+
+case $cf_cv_unctrl_header in #(vi
+unctrl.h) #(vi
+	cat >>confdefs.h <<\EOF
+#define HAVE_UNCTRL_H 1
+EOF
+
+	;;
+ncurses/unctrl.h) #(vi
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSES_UNCTRL_H 1
+EOF
+
+	;;
+ncursesw/unctrl.h)
+	cat >>confdefs.h <<\EOF
+#define HAVE_NCURSESW_UNCTRL_H 1
+EOF
+
+	;;
+esac
+
+for cf_func in \
+		assume_default_colors \
+		cbreak \
+		define_key \
+		delscreen \
+		getattrs \
+		getbegx \
+		getbegy \
+		keypad \
+		napms \
+		newpad \
+		newterm \
+		pnoutrefresh \
+		resizeterm \
+		touchline \
+		touchwin \
+		use_default_colors \
+		use_legacy_coding \
+		wattr_get \
+		wborder \
+		wredrawln \
+		wresize \
+
+do
+
+cf_tr_func=`echo "$cf_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+
+	echo "$as_me:41644: checking for ${cf_func}" >&5
+echo $ECHO_N "checking for ${cf_func}... $ECHO_C" >&6
+
+echo "${as_me:-configure}:41647: testing ${cf_func} ..." 1>&5
+
+	if eval "test \"\${cf_cv_func_$cf_func+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+		eval cf_result='$ac_cv_func_'$cf_func
+		if test ".$cf_result" != ".no"; then
+			cat >conftest.$ac_ext <<_ACEOF
+#line 41656 "configure"
+#include "confdefs.h"
+
+#ifdef HAVE_XCURSES
+#include <xcurses.h>
+char * XCursesProgramName = "test";
+#else
+#include <${cf_cv_ncurses_header:-curses.h}>
+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
+#include <ncursesw/term.h>
+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
+#include <ncurses/term.h>
+#elif defined(HAVE_TERM_H)
+#include <term.h>
+#endif
+#endif
+
+int
+main ()
+{
+
+#ifndef ${cf_func}
+long foo = (long)(&${cf_func});
+if (foo + 1234 > 5678)
+	${cf_cv_main_return:-return}(foo);
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:41688: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:41691: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:41694: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41697: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_result=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_result=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+		fi
+		eval 'cf_cv_func_'$cf_func'=$cf_result'
+
+fi
+
+	# use the computed/retrieved cache-value:
+	eval 'cf_result=$cf_cv_func_'$cf_func
+	echo "$as_me:41713: result: $cf_result" >&5
+echo "${ECHO_T}$cf_result" >&6
+	if test $cf_result != no; then
+		cat >>confdefs.h <<EOF
+#define HAVE_${cf_tr_func} 1
+EOF
+
+	fi
+done
+
+for ac_func in \
+		_nc_free_and_exit \
+		_nc_freeall \
+
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:41729: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 41735 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:41766: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:41769: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:41772: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41775: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:41785: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+fi
+
+if test $use_color_style != no ; then
+	if test .$cf_cv_color_curses != .yes ; then
+		{ { echo "$as_me:41799: error: Configuration does not support color-styles" >&5
+echo "$as_me: error: Configuration does not support color-styles" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+	if test $cf_cv_screen = slang ; then
+		{ { echo "$as_me:41804: error: Configuration does not support color-styles" >&5
+echo "$as_me: error: Configuration does not support color-styles" >&2;}
+   { (exit 1); exit 1; }; }
+	fi
+fi
+
+if test $use_scrollbar != no ; then
+	if test .$cf_cv_fancy_curses != .yes ; then
+		{ echo "$as_me:41812: WARNING: Configuration does not support ACS_xxx definitions" >&5
+echo "$as_me: WARNING: Configuration does not support ACS_xxx definitions" >&2;}
+	else
+		cat >>confdefs.h <<\EOF
+#define USE_SCROLLBAR 1
+EOF
+
+	fi
+fi
+
+# use rpath for libraries in unusual places
+
+LD_RPATH_OPT=
+echo "$as_me:41825: checking for an rpath option" >&5
+echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
+case $cf_cv_system_name in #(vi
+irix*) #(vi
+	if test "$GCC" = yes; then
+		LD_RPATH_OPT="-Wl,-rpath,"
+	else
+		LD_RPATH_OPT="-rpath "
+	fi
+	;;
+linux*|gnu*|k*bsd*-gnu) #(vi
+	LD_RPATH_OPT="-Wl,-rpath,"
+	;;
+openbsd[2-9].*|mirbsd*) #(vi
+	LD_RPATH_OPT="-Wl,-rpath,"
+	;;
+dragonfly*|freebsd*) #(vi
+	LD_RPATH_OPT="-rpath "
+	;;
+netbsd*) #(vi
+	LD_RPATH_OPT="-Wl,-rpath,"
+	;;
+osf*|mls+*) #(vi
+	LD_RPATH_OPT="-rpath "
+	;;
+solaris2*) #(vi
+	LD_RPATH_OPT="-R"
+	;;
+*)
+	;;
+esac
+echo "$as_me:41856: result: $LD_RPATH_OPT" >&5
+echo "${ECHO_T}$LD_RPATH_OPT" >&6
+
+case "x$LD_RPATH_OPT" in #(vi
+x-R*)
+	echo "$as_me:41861: checking if we need a space after rpath option" >&5
+echo $ECHO_N "checking if we need a space after rpath option... $ECHO_C" >&6
+	cf_save_LIBS="$LIBS"
+	LIBS="${LD_RPATH_OPT}$libdir $LIBS"
+	cat >conftest.$ac_ext <<_ACEOF
+#line 41866 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:41878: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:41881: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:41884: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41887: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_rpath_space=no
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+cf_rpath_space=yes
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+	LIBS="$cf_save_LIBS"
+	echo "$as_me:41897: result: $cf_rpath_space" >&5
+echo "${ECHO_T}$cf_rpath_space" >&6
+	test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT "
+	;;
+esac
+
+echo "$as_me:41903: checking if rpath-hack should be disabled" >&5
+echo $ECHO_N "checking if rpath-hack should be disabled... $ECHO_C" >&6
+
+# Check whether --enable-rpath-hack or --disable-rpath-hack was given.
+if test "${enable_rpath_hack+set}" = set; then
+  enableval="$enable_rpath_hack"
+  test "$enableval" != no && enableval=yes
+  if test "$enableval" != "yes" ; then
+    cf_disable_rpath_hack=yes
+  else
+    cf_disable_rpath_hack=no
+  fi
+else
+  enableval=yes
+  cf_disable_rpath_hack=no
+
+fi;
+echo "$as_me:41920: result: $cf_disable_rpath_hack" >&5
+echo "${ECHO_T}$cf_disable_rpath_hack" >&6
+if test "$cf_disable_rpath_hack" = no ; then
+
+echo "$as_me:41924: checking for updated LDFLAGS" >&5
+echo $ECHO_N "checking for updated LDFLAGS... $ECHO_C" >&6
+if test -n "$LD_RPATH_OPT" ; then
+	echo "$as_me:41927: result: maybe" >&5
+echo "${ECHO_T}maybe" >&6
+
+	for ac_prog in ldd
+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 "$as_me:41934: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_cf_ldd_prog+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$cf_ldd_prog"; then
+  ac_cv_prog_cf_ldd_prog="$cf_ldd_prog" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_cf_ldd_prog="$ac_prog"
+echo "$as_me:41949: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+cf_ldd_prog=$ac_cv_prog_cf_ldd_prog
+if test -n "$cf_ldd_prog"; then
+  echo "$as_me:41957: result: $cf_ldd_prog" >&5
+echo "${ECHO_T}$cf_ldd_prog" >&6
+else
+  echo "$as_me:41960: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$cf_ldd_prog" && break
+done
+test -n "$cf_ldd_prog" || cf_ldd_prog="no"
+
+	cf_rpath_list="/usr/lib /lib"
+	if test "$cf_ldd_prog" != no
+	then
+		cf_rpath_oops=
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 41974 "configure"
+#include "confdefs.h"
+#include <stdio.h>
+int
+main ()
+{
+printf("Hello");
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:41986: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:41989: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:41992: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:41995: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort -u`
+		 cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[ 	]/%/%' -e 's%/[^/][^/]*$%%' |sort -u`
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+
+		# If we passed the link-test, but get a "not found" on a given library,
+		# this could be due to inept reconfiguration of gcc to make it only
+		# partly honor /usr/local/lib (or whatever).  Sometimes this behavior
+		# is intentional, e.g., installing gcc in /usr/bin and suppressing the
+		# /usr/local libraries.
+		if test -n "$cf_rpath_oops"
+		then
+			for cf_rpath_src in $cf_rpath_oops
+			do
+				for cf_rpath_dir in \
+					/usr/local \
+					/usr/pkg \
+					/opt/sfw
+				do
+					if test -f $cf_rpath_dir/lib/$cf_rpath_src
+					then
+						test -n "$verbose" && echo "	...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src" 1>&6
+
+echo "${as_me:-configure}:42023: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5
+
+						LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib"
+						break
+					fi
+				done
+			done
+		fi
+	fi
+
+	test -n "$verbose" && echo "	...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:42035: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
+
+test -n "$verbose" && echo "	...checking LDFLAGS $LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:42039: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5
+
+cf_rpath_dst=
+for cf_rpath_src in $LDFLAGS
+do
+	case $cf_rpath_src in #(vi
+	-L*) #(vi
+
+		# check if this refers to a directory which we will ignore
+		cf_rpath_skip=no
+		if test -n "$cf_rpath_list"
+		then
+			for cf_rpath_item in $cf_rpath_list
+			do
+				if test "x$cf_rpath_src" = "x-L$cf_rpath_item"
+				then
+					cf_rpath_skip=yes
+					break
+				fi
+			done
+		fi
+
+		if test "$cf_rpath_skip" = no
+		then
+			# transform the option
+			if test "$LD_RPATH_OPT" = "-R " ; then
+				cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"`
+			else
+				cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"`
+			fi
+
+			# if we have not already added this, add it now
+			cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"`
+			if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS"
+			then
+				test -n "$verbose" && echo "	...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
+
+echo "${as_me:-configure}:42076: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
+
+				EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
+			fi
+		fi
+		;;
+	esac
+	cf_rpath_dst="$cf_rpath_dst $cf_rpath_src"
+done
+LDFLAGS=$cf_rpath_dst
+
+test -n "$verbose" && echo "	...checked LDFLAGS $LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:42089: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5
+
+test -n "$verbose" && echo "	...checking LIBS $LIBS" 1>&6
+
+echo "${as_me:-configure}:42093: testing ...checking LIBS $LIBS ..." 1>&5
+
+cf_rpath_dst=
+for cf_rpath_src in $LIBS
+do
+	case $cf_rpath_src in #(vi
+	-L*) #(vi
+
+		# check if this refers to a directory which we will ignore
+		cf_rpath_skip=no
+		if test -n "$cf_rpath_list"
+		then
+			for cf_rpath_item in $cf_rpath_list
+			do
+				if test "x$cf_rpath_src" = "x-L$cf_rpath_item"
+				then
+					cf_rpath_skip=yes
+					break
+				fi
+			done
+		fi
+
+		if test "$cf_rpath_skip" = no
+		then
+			# transform the option
+			if test "$LD_RPATH_OPT" = "-R " ; then
+				cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"`
+			else
+				cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"`
+			fi
+
+			# if we have not already added this, add it now
+			cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"`
+			if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS"
+			then
+				test -n "$verbose" && echo "	...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
+
+echo "${as_me:-configure}:42130: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
+
+				EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
+			fi
+		fi
+		;;
+	esac
+	cf_rpath_dst="$cf_rpath_dst $cf_rpath_src"
+done
+LIBS=$cf_rpath_dst
+
+test -n "$verbose" && echo "	...checked LIBS $LIBS" 1>&6
+
+echo "${as_me:-configure}:42143: testing ...checked LIBS $LIBS ..." 1>&5
+
+	test -n "$verbose" && echo "	...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
+
+echo "${as_me:-configure}:42147: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
+
+fi
+
+fi
+
+### Finally, build config.h and the makefiles
+test -z "$CONFIG_SHELL" && CONFIG_SHELL=/bin/sh
+
+CFLAGS="$CFLAGS $EXTRA_CFLAGS"
+srcdir="$srcdir"
+SRCDIR_CLEAN="#"
+if test -n "$srcdir" ; then
+	echo srcdir is $srcdir
+	mkdir -p WWW/Library/Implementation
+	mkdir -p src/chrtrans
+	test "$USE_INCLUDED_LIBINTL" = yes && mkdir -p intl
+	test "$srcdir" != "." && SRCDIR_CLEAN=""
+fi
+
+ac_config_files="$ac_config_files makefile WWW/Library/Implementation/makefile src/makefile src/chrtrans/makefile $SUB_MAKEFILE"
+ac_config_commands="$ac_config_commands default"
+cat >confcache <<\_ACEOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems.  If it contains results you don't
+# want to keep, you may remove or edit it.
+#
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
+#
+# `ac_cv_env_foo' variables (set or unset) will be overriden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, don't put newlines in cache variables' values.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+{
+  (set) 2>&1 |
+    case `(ac_space=' '; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      # `set' does not quote correctly, so add quotes (double-quote
+      # substitution turns \\\\ into \\, and sed turns \\ into \).
+      sed -n \
+        "s/'/'\\\\''/g;
+    	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+      ;;
+    *)
+      # `set' quotes correctly as required by POSIX, so do not add quotes.
+      sed -n \
+        "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+} |
+  sed '
+     t clear
+     : clear
+     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     t end
+     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+     : end' >>confcache
+if cmp -s $cache_file confcache; then :; else
+  if test -w $cache_file; then
+    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
+    cat confcache >$cache_file
+  else
+    echo "not updating unwritable cache $cache_file"
+  fi
+fi
+rm -f confcache
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
+if test "x$srcdir" = x.; then
+  ac_vpsub='/^[ 	]*VPATH[ 	]*=/{
+s/:*\$(srcdir):*/:/;
+s/:*\${srcdir}:*/:/;
+s/:*@srcdir@:*/:/;
+s/^\([^=]*=[ 	]*\):*/\1/;
+s/:*$//;
+s/^[^=]*=[ 	]*$//;
+}'
+fi
+
+DEFS=-DHAVE_CONFIG_H
+
+: ${CONFIG_STATUS=./config.status}
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ echo "$as_me:42248: creating $CONFIG_STATUS" >&5
+echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF
+#! $SHELL
+# Generated automatically by configure.
+# Run this file to recreate the current configuration.
+# Compiler output produced by configure, useful for debugging
+# configure, is in config.log if it exists.
+
+debug=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+ac_cs_invocation="\$0 \$@"
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+
+# Name of the executable.
+as_me=`echo "$0" |sed 's,.*[\\/],,'`
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+as_executable_p="test -f"
+
+# Support unset when possible.
+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+# NLS nuisances.
+$as_unset LANG || test "${LANG+set}" != set || { LANG=C; export LANG; }
+$as_unset LC_ALL || test "${LC_ALL+set}" != set || { LC_ALL=C; export LC_ALL; }
+$as_unset LC_TIME || test "${LC_TIME+set}" != set || { LC_TIME=C; export LC_TIME; }
+$as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set || { LC_CTYPE=C; export LC_CTYPE; }
+$as_unset LANGUAGE || test "${LANGUAGE+set}" != set || { LANGUAGE=C; export LANGUAGE; }
+$as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set || { LC_COLLATE=C; export LC_COLLATE; }
+$as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set || { LC_NUMERIC=C; export LC_NUMERIC; }
+$as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set || { LC_MESSAGES=C; export LC_MESSAGES; }
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS=" 	$as_nl"
+
+# CDPATH.
+$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; }
+
+exec 6>&1
+
+_ACEOF
+
+# Files that config.status was made for.
+if test -n "$ac_config_files"; then
+  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_headers"; then
+  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_links"; then
+  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_commands"; then
+  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+fi
+
+cat >>$CONFIG_STATUS <<\EOF
+
+ac_cs_usage="\
+\`$as_me' instantiates files from templates according to the
+current configuration.
+
+Usage: $0 [OPTIONS] [FILE]...
+
+  -h, --help       print this help, then exit
+  -V, --version    print version number, then exit
+  -d, --debug      don't remove temporary files
+      --recheck    update $as_me by reconfiguring in the same conditions
+  --file=FILE[:TEMPLATE]
+                   instantiate the configuration file FILE
+  --header=FILE[:TEMPLATE]
+                   instantiate the configuration header FILE
+
+Configuration files:
+$config_files
+
+Configuration headers:
+$config_headers
+
+Configuration commands:
+$config_commands
+
+Report bugs to <dickey@invisible-island.net>."
+EOF
+
+cat >>$CONFIG_STATUS <<EOF
+ac_cs_version="\\
+config.status
+configured by $0, generated by GNU Autoconf 2.52.20101002,
+  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+
+Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+srcdir=$srcdir
+INSTALL="$INSTALL"
+EOF
+
+cat >>$CONFIG_STATUS <<\EOF
+# If no file are specified by the user, then we need to provide default
+# value.  By we need to know if files were specified by the user.
+ac_need_defaults=:
+while test $# != 0
+do
+  case $1 in
+  --*=*)
+    ac_option=`expr "x$1" : 'x\([^=]*\)='`
+    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
+    shift
+    set dummy "$ac_option" "$ac_optarg" ${1+"$@"}
+    shift
+    ;;
+  -*);;
+  *) # This is not an option, so the user has probably given explicit
+     # arguments.
+     ac_need_defaults=false;;
+  esac
+
+  case $1 in
+  # Handling of the options.
+EOF
+cat >>$CONFIG_STATUS <<EOF
+  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+    echo "running $SHELL $0 " $ac_configure_args " --no-create --no-recursion"
+    exec $SHELL $0 $ac_configure_args --no-create --no-recursion ;;
+EOF
+cat >>$CONFIG_STATUS <<\EOF
+  --version | --vers* | -V )
+    echo "$ac_cs_version"; exit 0 ;;
+  --he | --h)
+    # Conflict between --help and --header
+    { { echo "$as_me:42424: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; };;
+  --help | --hel | -h )
+    echo "$ac_cs_usage"; exit 0 ;;
+  --debug | --d* | -d )
+    debug=: ;;
+  --file | --fil | --fi | --f )
+    shift
+    CONFIG_FILES="$CONFIG_FILES $1"
+    ac_need_defaults=false;;
+  --header | --heade | --head | --hea )
+    shift
+    CONFIG_HEADERS="$CONFIG_HEADERS $1"
+    ac_need_defaults=false;;
+
+  # This is an error.
+  -*) { { echo "$as_me:42443: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; } ;;
+
+  *) ac_config_targets="$ac_config_targets $1" ;;
+
+  esac
+  shift
+done
+
+exec 5>>config.log
+cat >&5 << _ACEOF
+
+## ----------------------- ##
+## Running config.status.  ##
+## ----------------------- ##
+
+This file was extended by $as_me 2.52.20101002, executed with
+  CONFIG_FILES    = $CONFIG_FILES
+  CONFIG_HEADERS  = $CONFIG_HEADERS
+  CONFIG_LINKS    = $CONFIG_LINKS
+  CONFIG_COMMANDS = $CONFIG_COMMANDS
+  > $ac_cs_invocation
+on `(hostname || uname -n) 2>/dev/null | sed 1q`
+
+_ACEOF
+EOF
+
+cat >>$CONFIG_STATUS <<EOF
+#
+# INIT-COMMANDS section.
+#
+
+	USE_NLS=$USE_NLS
+	use_our_messages=$use_our_messages
+
+EOF
+
+cat >>$CONFIG_STATUS <<\EOF
+for ac_config_target in $ac_config_targets
+do
+  case "$ac_config_target" in
+  # Handling of arguments.
+  "makefile" ) CONFIG_FILES="$CONFIG_FILES makefile" ;;
+  "WWW/Library/Implementation/makefile" ) CONFIG_FILES="$CONFIG_FILES WWW/Library/Implementation/makefile" ;;
+  "src/makefile" ) CONFIG_FILES="$CONFIG_FILES src/makefile" ;;
+  "src/chrtrans/makefile" ) CONFIG_FILES="$CONFIG_FILES src/chrtrans/makefile" ;;
+  "$SUB_MAKEFILE" ) CONFIG_FILES="$CONFIG_FILES $SUB_MAKEFILE" ;;
+  "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
+  "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
+  "$CONFIG_H" ) CONFIG_HEADERS="$CONFIG_HEADERS $CONFIG_H:config.hin" ;;
+  *) { { echo "$as_me:42496: error: invalid argument: $ac_config_target" >&5
+echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+   { (exit 1); exit 1; }; };;
+  esac
+done
+
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used.  Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
+  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+fi
+
+# Create a temporary directory, and hook for its removal unless debugging.
+$debug ||
+{
+  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
+  trap '{ (exit 1); exit 1; }' 1 2 13 15
+}
+
+# Create a (secure) tmp directory for tmp files.
+: ${TMPDIR=/tmp}
+{
+  tmp=`(umask 077 && mktemp -d -q "$TMPDIR/csXXXXXX") 2>/dev/null` &&
+  test -n "$tmp" && test -d "$tmp"
+}  ||
+{
+  tmp=$TMPDIR/cs$$-$RANDOM
+  (umask 077 && mkdir $tmp)
+} ||
+{
+   echo "$me: cannot create a temporary directory in $TMPDIR" >&2
+   { (exit 1); exit 1; }
+}
+
+EOF
+
+cat >>$CONFIG_STATUS <<EOF
+
+#
+# CONFIG_FILES section.
+#
+
+# No need to generate the scripts if there are no CONFIG_FILES.
+# This happens for instance when ./config.status config.h
+if test -n "\$CONFIG_FILES"; then
+  # Protect against being on the right side of a sed subst in config.status.
+  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
+   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
+s,@SHELL@,$SHELL,;t t
+s,@exec_prefix@,$exec_prefix,;t t
+s,@prefix@,$prefix,;t t
+s,@program_transform_name@,$program_transform_name,;t t
+s,@bindir@,$bindir,;t t
+s,@sbindir@,$sbindir,;t t
+s,@libexecdir@,$libexecdir,;t t
+s,@datadir@,$datadir,;t t
+s,@sysconfdir@,$sysconfdir,;t t
+s,@sharedstatedir@,$sharedstatedir,;t t
+s,@localstatedir@,$localstatedir,;t t
+s,@libdir@,$libdir,;t t
+s,@includedir@,$includedir,;t t
+s,@oldincludedir@,$oldincludedir,;t t
+s,@infodir@,$infodir,;t t
+s,@mandir@,$mandir,;t t
+s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
+s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
+s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
+s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
+s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
+s,@build_alias@,$build_alias,;t t
+s,@host_alias@,$host_alias,;t t
+s,@target_alias@,$target_alias,;t t
+s,@ECHO_C@,$ECHO_C,;t t
+s,@ECHO_N@,$ECHO_N,;t t
+s,@ECHO_T@,$ECHO_T,;t t
+s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
+s,@DEFS@,$DEFS,;t t
+s,@LIBS@,$LIBS,;t t
+s,@CONFIG_H@,$CONFIG_H,;t t
+s,@build@,$build,;t t
+s,@build_cpu@,$build_cpu,;t t
+s,@build_vendor@,$build_vendor,;t t
+s,@build_os@,$build_os,;t t
+s,@host@,$host,;t t
+s,@host_cpu@,$host_cpu,;t t
+s,@host_vendor@,$host_vendor,;t t
+s,@host_os@,$host_os,;t t
+s,@target@,$target,;t t
+s,@target_cpu@,$target_cpu,;t t
+s,@target_vendor@,$target_vendor,;t t
+s,@target_os@,$target_os,;t t
+s,@PACKAGE@,$PACKAGE,;t t
+s,@VERSION@,$VERSION,;t t
+s,@DESTDIR@,$DESTDIR,;t t
+s,@CC@,$CC,;t t
+s,@CFLAGS@,$CFLAGS,;t t
+s,@LDFLAGS@,$LDFLAGS,;t t
+s,@CPPFLAGS@,$CPPFLAGS,;t t
+s,@ac_ct_CC@,$ac_ct_CC,;t t
+s,@EXEEXT@,$EXEEXT,;t t
+s,@OBJEXT@,$OBJEXT,;t t
+s,@CPP@,$CPP,;t t
+s,@LN_S@,$LN_S,;t t
+s,@SET_MAKE@,$SET_MAKE,;t t
+s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
+s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
+s,@INSTALL_DATA@,$INSTALL_DATA,;t t
+s,@YACC@,$YACC,;t t
+s,@LINT@,$LINT,;t t
+s,@LINT_OPTS@,$LINT_OPTS,;t t
+s,@CTAGS@,$CTAGS,;t t
+s,@ETAGS@,$ETAGS,;t t
+s,@MAKE_LOWER_TAGS@,$MAKE_LOWER_TAGS,;t t
+s,@MAKE_UPPER_TAGS@,$MAKE_UPPER_TAGS,;t t
+s,@PROG_EXT@,$PROG_EXT,;t t
+s,@BUILD_CC@,$BUILD_CC,;t t
+s,@BUILD_CPP@,$BUILD_CPP,;t t
+s,@BUILD_CFLAGS@,$BUILD_CFLAGS,;t t
+s,@BUILD_CPPFLAGS@,$BUILD_CPPFLAGS,;t t
+s,@BUILD_LDFLAGS@,$BUILD_LDFLAGS,;t t
+s,@BUILD_LIBS@,$BUILD_LIBS,;t t
+s,@BUILD_EXEEXT@,$BUILD_EXEEXT,;t t
+s,@BUILD_OBJEXT@,$BUILD_OBJEXT,;t t
+s,@RANLIB@,$RANLIB,;t t
+s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
+s,@AR@,$AR,;t t
+s,@ac_ct_AR@,$ac_ct_AR,;t t
+s,@ARFLAGS@,$ARFLAGS,;t t
+s,@ECHO_LT@,$ECHO_LT,;t t
+s,@ECHO_LD@,$ECHO_LD,;t t
+s,@RULE_CC@,$RULE_CC,;t t
+s,@SHOW_CC@,$SHOW_CC,;t t
+s,@ECHO_CC@,$ECHO_CC,;t t
+s,@DONT_ECHO_CC@,$DONT_ECHO_CC,;t t
+s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t
+s,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t
+s,@MSGINIT@,$MSGINIT,;t t
+s,@ALLOCA@,$ALLOCA,;t t
+s,@GLIBC21@,$GLIBC21,;t t
+s,@LIBICONV@,$LIBICONV,;t t
+s,@USE_NLS@,$USE_NLS,;t t
+s,@MSGFMT@,$MSGFMT,;t t
+s,@GMSGFMT@,$GMSGFMT,;t t
+s,@XGETTEXT@,$XGETTEXT,;t t
+s,@INTLBISON@,$INTLBISON,;t t
+s,@BUILD_INCLUDED_LIBINTL@,$BUILD_INCLUDED_LIBINTL,;t t
+s,@USE_INCLUDED_LIBINTL@,$USE_INCLUDED_LIBINTL,;t t
+s,@CATALOGS@,$CATALOGS,;t t
+s,@CATOBJEXT@,$CATOBJEXT,;t t
+s,@GMOFILES@,$GMOFILES,;t t
+s,@INTLLIBS@,$INTLLIBS,;t t
+s,@INTLOBJS@,$INTLOBJS,;t t
+s,@POFILES@,$POFILES,;t t
+s,@POSUB@,$POSUB,;t t
+s,@DATADIRNAME@,$DATADIRNAME,;t t
+s,@INSTOBJEXT@,$INSTOBJEXT,;t t
+s,@GENCAT@,$GENCAT,;t t
+s,@INTL_LIBTOOL_SUFFIX_PREFIX@,$INTL_LIBTOOL_SUFFIX_PREFIX,;t t
+s,@NLS_TEXTDOMAIN@,$NLS_TEXTDOMAIN,;t t
+s,@MSG_DIR_MAKE@,$MSG_DIR_MAKE,;t t
+s,@SUB_MAKEFILE@,$SUB_MAKEFILE,;t t
+s,@INTLDIR_MAKE@,$INTLDIR_MAKE,;t t
+s,@GT_YES@,$GT_YES,;t t
+s,@GT_NO@,$GT_NO,;t t
+s,@INTLDIR_CPPFLAGS@,$INTLDIR_CPPFLAGS,;t t
+s,@NLS_DATADIR@,$NLS_DATADIR,;t t
+s,@PKG_CONFIG@,$PKG_CONFIG,;t t
+s,@ac_pt_PKG_CONFIG@,$ac_pt_PKG_CONFIG,;t t
+s,@NCURSES_CONFIG@,$NCURSES_CONFIG,;t t
+s,@ac_ct_NCURSES_CONFIG@,$ac_ct_NCURSES_CONFIG,;t t
+s,@LYNX_LSS_FILE@,$LYNX_LSS_FILE,;t t
+s,@INSTALL_LSS@,$INSTALL_LSS,;t t
+s,@LYNX_CFG_FILE@,$LYNX_CFG_FILE,;t t
+s,@LYNXCFG_MAKE@,$LYNXCFG_MAKE,;t t
+s,@LYNXDOC_MAKE@,$LYNXDOC_MAKE,;t t
+s,@MIME_LIBDIR@,$MIME_LIBDIR,;t t
+s,@CHARSET_DEFS@,$CHARSET_DEFS,;t t
+s,@LIBOBJS@,$LIBOBJS,;t t
+s,@EXTRA_OBJS@,$EXTRA_OBJS,;t t
+s,@SETFONT@,$SETFONT,;t t
+s,@MAKE_WAIS@,$MAKE_WAIS,;t t
+s,@TELNET@,$TELNET,;t t
+s,@TN3270@,$TN3270,;t t
+s,@RLOGIN@,$RLOGIN,;t t
+s,@MV@,$MV,;t t
+s,@GZIP@,$GZIP,;t t
+s,@UNCOMPRESS@,$UNCOMPRESS,;t t
+s,@UNZIP@,$UNZIP,;t t
+s,@BZIP2@,$BZIP2,;t t
+s,@TAR@,$TAR,;t t
+s,@TAR_UP_OPTIONS@,$TAR_UP_OPTIONS,;t t
+s,@TAR_DOWN_OPTIONS@,$TAR_DOWN_OPTIONS,;t t
+s,@TAR_FILE_OPTIONS@,$TAR_FILE_OPTIONS,;t t
+s,@TAR_PIPE_OPTIONS@,$TAR_PIPE_OPTIONS,;t t
+s,@COMPRESS@,$COMPRESS,;t t
+s,@RM@,$RM,;t t
+s,@UUDECODE@,$UUDECODE,;t t
+s,@ZCAT@,$ZCAT,;t t
+s,@ZIP@,$ZIP,;t t
+s,@INSTALL@,$INSTALL,;t t
+s,@COMPRESS_PROG@,$COMPRESS_PROG,;t t
+s,@COMPRESS_EXT@,$COMPRESS_EXT,;t t
+s,@X_CFLAGS@,$X_CFLAGS,;t t
+s,@X_PRE_LIBS@,$X_PRE_LIBS,;t t
+s,@X_LIBS@,$X_LIBS,;t t
+s,@X_EXTRA_LIBS@,$X_EXTRA_LIBS,;t t
+s,@XCURSES_CONFIG@,$XCURSES_CONFIG,;t t
+s,@ac_ct_XCURSES_CONFIG@,$ac_ct_XCURSES_CONFIG,;t t
+s,@cf_ldd_prog@,$cf_ldd_prog,;t t
+s,@EXTRA_LDFLAGS@,$EXTRA_LDFLAGS,;t t
+s,@CONFIG_SHELL@,$CONFIG_SHELL,;t t
+s,@SRCDIR_CLEAN@,$SRCDIR_CLEAN,;t t
+CEOF
+
+EOF
+
+  cat >>$CONFIG_STATUS <<\EOF
+  # Split the substitutions into bite-sized pieces for seds with
+  # small command number limits, like on Digital OSF/1 and HP-UX.
+  ac_max_sed_lines=48
+  ac_sed_frag=1 # Number of current file.
+  ac_beg=1 # First line for current file.
+  ac_end=$ac_max_sed_lines # Line after last line for current file.
+  ac_more_lines=:
+  ac_sed_cmds=
+  while $ac_more_lines; do
+    if test $ac_beg -gt 1; then
+      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    else
+      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    fi
+    if test ! -s $tmp/subs.frag; then
+      ac_more_lines=false
+    else
+      # The purpose of the label and of the branching condition is to
+      # speed up the sed processing (if there are no `@' at all, there
+      # is no need to browse any of the substitutions).
+      # These are the two extra sed commands mentioned above.
+      (echo ':t
+  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
+      if test -z "$ac_sed_cmds"; then
+  	ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
+      else
+  	ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
+      fi
+      ac_sed_frag=`expr $ac_sed_frag + 1`
+      ac_beg=$ac_end
+      ac_end=`expr $ac_end + $ac_max_sed_lines`
+    fi
+  done
+  if test -z "$ac_sed_cmds"; then
+    ac_sed_cmds=cat
+  fi
+fi # test -n "$CONFIG_FILES"
+
+EOF
+cat >>$CONFIG_STATUS <<\EOF
+for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
+  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+        cat >$tmp/stdin
+        ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
+  esac
+
+  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
+  ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+         X"$ac_file" : 'X\(//\)[^/]' \| \
+         X"$ac_file" : 'X\(//\)$' \| \
+         X"$ac_file" : 'X\(/\)' \| \
+         .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+  	  /^X\(\/\/\)$/{ s//\1/; q; }
+  	  /^X\(\/\).*/{ s//\1/; q; }
+  	  s/.*/./; q'`
+  if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
+    { case "$ac_dir" in
+  [\\/]* | ?:[\\/]* ) as_incr_dir=;;
+  *)                      as_incr_dir=.;;
+esac
+as_dummy="$ac_dir"
+for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
+  case $as_mkdir_dir in
+    # Skip DOS drivespec
+    ?:) as_incr_dir=$as_mkdir_dir ;;
+    *)
+      as_incr_dir=$as_incr_dir/$as_mkdir_dir
+      test -d "$as_incr_dir" || mkdir "$as_incr_dir"
+    ;;
+  esac
+done; }
+
+    ac_dir_suffix="/`echo $ac_dir|sed 's,^\./,,'`"
+    # A "../" for each directory in $ac_dir_suffix.
+    ac_dots=`echo "$ac_dir_suffix" | sed 's,/[^/]*,../,g'`
+  else
+    ac_dir_suffix= ac_dots=
+  fi
+
+  case $srcdir in
+  .)  ac_srcdir=.
+      if test -z "$ac_dots"; then
+         ac_top_srcdir=.
+      else
+         ac_top_srcdir=`echo $ac_dots | sed 's,/$,,'`
+      fi ;;
+  [\\/]* | ?:[\\/]* )
+      ac_srcdir=$srcdir$ac_dir_suffix;
+      ac_top_srcdir=$srcdir ;;
+  *) # Relative path.
+    ac_srcdir=$ac_dots$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_dots$srcdir ;;
+  esac
+
+  case $INSTALL in
+  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
+  *) ac_INSTALL=$ac_dots$INSTALL ;;
+  esac
+
+  if test x"$ac_file" != x-; then
+    { echo "$as_me:42826: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+    rm -f "$ac_file"
+  fi
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated automatically by config.status.  */
+  configure_input="Generated automatically from `echo $ac_file_in |
+                                                 sed 's,.*/,,'` by configure."
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+         # Absolute (can't be DOS-style, as IFS=:)
+         test -f "$f" || { { echo "$as_me:42844: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         echo $f;;
+      *) # Relative
+         if test -f "$f"; then
+           # Build tree
+           echo $f
+         elif test -f "$srcdir/$f"; then
+           # Source tree
+           echo $srcdir/$f
+         else
+           # /dev/null tree
+           { { echo "$as_me:42857: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+EOF
+cat >>$CONFIG_STATUS <<EOF
+  sed "$ac_vpsub
+$extrasub
+EOF
+cat >>$CONFIG_STATUS <<\EOF
+:t
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+s,@configure_input@,$configure_input,;t t
+s,@srcdir@,$ac_srcdir,;t t
+s,@top_srcdir@,$ac_top_srcdir,;t t
+s,@INSTALL@,$ac_INSTALL,;t t
+" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
+  rm -f $tmp/stdin
+  if test x"$ac_file" != x-; then
+    mv $tmp/out $ac_file
+  else
+    cat $tmp/out
+    rm -f $tmp/out
+  fi
+
+done
+EOF
+cat >>$CONFIG_STATUS <<\EOF
+
+#
+# CONFIG_HEADER section.
+#
+
+# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
+# NAME is the cpp macro being defined and VALUE is the value it is being given.
+#
+# ac_d sets the value in "#define NAME VALUE" lines.
+ac_dA='s,^\([ 	]*\)#\([ 	]*define[ 	][ 	]*\)'
+ac_dB='[ 	].*$,\1#\2'
+ac_dC=' '
+ac_dD=',;t'
+# ac_i turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
+ac_iA='s,^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
+ac_iB='\([ 	]\),\1#\2define\3'
+ac_iC=' '
+ac_iD='\4,;t'
+# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
+ac_uA='s,^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
+ac_uB='$,\1#\2define\3'
+ac_uC=' '
+ac_uD=',;t'
+
+for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
+  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+        cat >$tmp/stdin
+        ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
+  esac
+
+  test x"$ac_file" != x- && { echo "$as_me:42923: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+         # Absolute (can't be DOS-style, as IFS=:)
+         test -f "$f" || { { echo "$as_me:42934: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         echo $f;;
+      *) # Relative
+         if test -f "$f"; then
+           # Build tree
+           echo $f
+         elif test -f "$srcdir/$f"; then
+           # Source tree
+           echo $srcdir/$f
+         else
+           # /dev/null tree
+           { { echo "$as_me:42947: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+  # Remove the trailing spaces.
+  sed 's/[ 	]*$//' $ac_file_inputs >$tmp/in
+
+EOF
+
+# Transform confdefs.h into two sed scripts, `conftest.defines' and
+# `conftest.undefs', that substitutes the proper values into
+# config.h.in to produce config.h.  The first handles `#define'
+# templates, and the second `#undef' templates.
+# And first: Protect against being on the right side of a sed subst in
+# config.status.  Protect against being in an unquoted here document
+# in config.status.
+rm -f conftest.defines conftest.undefs
+# Using a here document instead of a string reduces the quoting nightmare.
+# Putting comments in sed scripts is not portable.
+#
+# `end' is used to avoid that the second main sed command (meant for
+# 0-ary CPP macros) applies to n-ary macro definitions.
+# See the Autoconf documentation for `clear'.
+cat >confdef2sed.sed <<\EOF
+s/[\\&,]/\\&/g
+s,[\\$`],\\&,g
+t clear
+: clear
+s,^[ 	]*#[ 	]*define[ 	][ 	]*\(\([^ 	(][^ 	(]*\)([^)]*)\)[ 	]*\(.*\)$,${ac_dA}\2${ac_dB}\1${ac_dC}\3${ac_dD},gp
+t end
+s,^[ 	]*#[ 	]*define[ 	][ 	]*\([^ 	][^ 	]*\)[ 	]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
+: end
+EOF
+# If some macros were called several times there might be several times
+# the same #defines, which is useless.  Nevertheless, we may not want to
+# sort them, since we want the *last* AC-DEFINE to be honored.
+uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
+sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
+sed 's/ac_d/ac_i/g' conftest.defines >>conftest.undefs
+rm -f confdef2sed.sed
+
+# This sed command replaces #undef with comments.  This is necessary, for
+# example, in the case of _POSIX_SOURCE, which is predefined and required
+# on some systems where configure will not decide to define it.
+cat >>conftest.undefs <<\EOF
+s,^[ 	]*#[ 	]*undef[ 	][ 	]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
+EOF
+
+# Break up conftest.defines because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
+echo '  if egrep "^[ 	]*#[ 	]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
+echo '  # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
+echo '  :' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.defines >/dev/null
+do
+  # Write a limited-size here document to $tmp/defines.sed.
+  echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#define' lines.
+  echo '/^[ 	]*#[ 	]*define/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
+  echo 'CEOF
+  sed -f $tmp/defines.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
+  rm -f conftest.defines
+  mv conftest.tail conftest.defines
+done
+rm -f conftest.defines
+echo '  fi # egrep' >>$CONFIG_STATUS
+echo >>$CONFIG_STATUS
+
+# Break up conftest.undefs because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #undef templates' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.undefs >/dev/null
+do
+  # Write a limited-size here document to $tmp/undefs.sed.
+  echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#undef'
+  echo '/^[ 	]*#[ 	]*undef/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
+  echo 'CEOF
+  sed -f $tmp/undefs.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
+  rm -f conftest.undefs
+  mv conftest.tail conftest.undefs
+done
+rm -f conftest.undefs
+
+cat >>$CONFIG_STATUS <<\EOF
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated automatically by config.status.  */
+  if test x"$ac_file" = x-; then
+    echo "/* Generated automatically by configure.  */" >$tmp/config.h
+  else
+    echo "/* $ac_file.  Generated automatically by configure.  */" >$tmp/config.h
+  fi
+  cat $tmp/in >>$tmp/config.h
+  rm -f $tmp/in
+  if test x"$ac_file" != x-; then
+    if cmp -s $ac_file $tmp/config.h 2>/dev/null; then
+      { echo "$as_me:43065: $ac_file is unchanged" >&5
+echo "$as_me: $ac_file is unchanged" >&6;}
+    else
+      ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+         X"$ac_file" : 'X\(//\)[^/]' \| \
+         X"$ac_file" : 'X\(//\)$' \| \
+         X"$ac_file" : 'X\(/\)' \| \
+         .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+  	  /^X\(\/\/\)$/{ s//\1/; q; }
+  	  /^X\(\/\).*/{ s//\1/; q; }
+  	  s/.*/./; q'`
+      if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
+        { case "$ac_dir" in
+  [\\/]* | ?:[\\/]* ) as_incr_dir=;;
+  *)                      as_incr_dir=.;;
+esac
+as_dummy="$ac_dir"
+for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
+  case $as_mkdir_dir in
+    # Skip DOS drivespec
+    ?:) as_incr_dir=$as_mkdir_dir ;;
+    *)
+      as_incr_dir=$as_incr_dir/$as_mkdir_dir
+      test -d "$as_incr_dir" || mkdir "$as_incr_dir"
+    ;;
+  esac
+done; }
+
+      fi
+      rm -f $ac_file
+      mv $tmp/config.h $ac_file
+    fi
+  else
+    cat $tmp/config.h
+    rm -f $tmp/config.h
+  fi
+done
+EOF
+cat >>$CONFIG_STATUS <<\EOF
+#
+# CONFIG_COMMANDS section.
+#
+for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
+  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
+  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+
+  case $ac_dest in
+    default-1 ) for ac_file in $CONFIG_FILES; do
+
+      # Support "outfile[:infile[:infile...]]"
+      case "$ac_file" in
+        *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+      esac
+
+      # PO directories have a Makefile.in generated from Makefile.inn.
+      case "$ac_file" in */[Mm]akefile.in)
+        # Adjust a relative srcdir.
+        ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
+        ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
+        ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
+        ac_base=`basename $ac_file .in`
+        # In autoconf-2.13 it is called $ac_given_srcdir.
+        # In autoconf-2.50 it is called $srcdir.
+        test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
+
+        case "$ac_given_srcdir" in
+          .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
+          /*) top_srcdir="$ac_given_srcdir" ;;
+          *)  top_srcdir="$ac_dots$ac_given_srcdir" ;;
+        esac
+
+        if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
+          rm -f "$ac_dir/POTFILES"
+          test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
+          sed -e "/^#/d" -e "/^[ 	]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," -e "\$s/\(.*\) \\\\/\1/" < "$ac_given_srcdir/$ac_dir/POTFILES.in" > "$ac_dir/POTFILES"
+          test -n "$as_me" && echo "$as_me: creating $ac_dir/$ac_base" || echo "creating $ac_dir/$ac_base"
+          sed -e "/POTFILES =/r $ac_dir/POTFILES" "$ac_dir/$ac_base.in" > "$ac_dir/$ac_base"
+        fi
+        ;;
+      esac
+    done ;;
+    default )
+	if test "$USE_NLS" = yes ; then
+	if test "$use_our_messages" = yes ; then
+		echo creating po/makefile
+		rm -f	po/temp$$
+		sed	-e 's%^.*LYMessages.c%	../LYMessages.c%' \
+			-e '$s/\\//' po/POTFILES >po/temp$$
+		sed	-e "/POTFILES =/r po/temp$$" \
+			po/makefile.in > po/makefile
+		rm -f	po/temp$$
+	fi
+	fi
+	 ;;
+  esac
+done
+EOF
+
+cat >>$CONFIG_STATUS <<\EOF
+
+{ (exit 0); exit 0; }
+EOF
+chmod +x $CONFIG_STATUS
+ac_clean_files=$ac_clean_files_save
+
+# configure is writing to config.log, and then calls config.status.
+# config.status does its own redirection, appending to config.log.
+# Unfortunately, on DOS this fails, as config.log is still kept open
+# by configure, so config.status won't be able to write to it; its
+# output is simply discarded.  So we exec the FD to /dev/null,
+# effectively closing config.log, so it can be properly (re)opened and
+# appended to by config.status.  When coming back to configure, we
+# need to make the FD available again.
+if test "$no_create" != yes; then
+  ac_cs_success=:
+  exec 5>/dev/null
+  $SHELL $CONFIG_STATUS || ac_cs_success=false
+  exec 5>>config.log
+  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
+  # would make configure fail if this is the last instruction.
+  $ac_cs_success || { (exit 1); exit 1; }
+fi
+
diff --git a/configure.in b/configure.in
new file mode 100644
index 00000000..eeb1a886
--- /dev/null
+++ b/configure.in
@@ -0,0 +1,1551 @@
+dnl $LynxId: configure.in,v 1.234 2012/02/20 02:08:17 tom Exp $
+dnl
+dnl Process this file with autoconf to produce a configure script.
+dnl
+dnl created jan/1997
+dnl by T.E.Dickey <dickey@invisible-island.net>
+dnl and Jim Spath <jspath@mail.bcpl.lib.md.us>
+dnl
+dnl ---------------------------------------------------------------------------
+dnl Copyright 1997-2010,2011 by Thomas E. Dickey
+dnl 
+dnl Permission to use, copy, modify, and distribute this software and its
+dnl documentation for any purpose and without fee is hereby granted,
+dnl provided that the above copyright notice appear in all copies and that
+dnl both that copyright notice and this permission notice appear in
+dnl supporting documentation, and that the name of the above listed
+dnl copyright holder(s) not be used in advertising or publicity pertaining
+dnl to distribution of the software without specific, written prior
+dnl permission.
+dnl 
+dnl THE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD
+dnl TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+dnl AND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE
+dnl LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+dnl WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+dnl ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+dnl OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+dnl ---------------------------------------------------------------------------
+dnl
+dnl ask PRCS to plug-in the project-version for the configure-script.
+dnl $Format: "AC_REVISION($ProjectVersion$)"$
+AC_REVISION(2.8.8dev.11)
+
+# Save the original $CFLAGS so we can distinguish whether the user set those
+# in the environment, or whether autoconf added -O and -g options:
+ORIGINAL_CFLAGS="$CFLAGS"
+
+# For autoconf 2.13, make sure we have no cache file at the beginning of this
+# script.  That fixes problems with tests whose cached values change from one
+# run to the next, as well as with tests that are order-dependent.
+rm -f config.cache
+
+AC_PREREQ(2.13.20020210)
+AC_INIT(userdefs.h)
+
+# autoconf 2.5x defaults to no cache file; we need the cache file's information
+# for building the config page.  But start with it empty to avoid confusion by
+# people who don't do a "make distclean" after applying patches.
+cache_file=config.cache
+rm -f config.cache; touch config.cache
+
+CONFIG_H=lynx_cfg.h
+AC_CONFIG_HEADER($CONFIG_H:config.hin)
+AC_SUBST(CONFIG_H)
+
+CF_CHECK_CACHE([AC_CANONICAL_SYSTEM])
+AC_ARG_WITH(system-type,
+[  --with-system-type=XXX  test: override derived host system-type],
+[AC_MSG_WARN(overriding system type $host_os to $withval)
+ host_os=$withval])
+
+AC_ARG_PROGRAM
+
+PACKAGE=lynx
+dnl ask PRCS to plug-in the project-version for the packages.
+# $Format: "VERSION=$ProjectVersion$"$
+VERSION=2.8.8dev.11
+
+AC_SUBST(PACKAGE)
+AC_SUBST(VERSION)
+
+AC_MSG_CHECKING(for DESTDIR)
+CF_WITH_PATH(destdir,
+[  --with-destdir=XXX      set DESTDIR destination for install],
+DESTDIR,
+[$DESTDIR],
+[$DESTDIR])
+AC_MSG_RESULT($DESTDIR)
+
+AC_PREFIX_DEFAULT(/usr/local)
+
+dnl --------------------------------------------------------------------------
+dnl Checks for location of programs
+dnl --------------------------------------------------------------------------
+
+dnl Only add to this case statement when a system has a compiler that is not
+dnl detected by AC_PROG_CC. 
+case $host_os in
+openedition)
+	: ${CFLAGS="-D_ALL_SOURCE -Wl,EDIT=NO"}
+	: ${CC=c89}
+	;;
+esac
+
+AC_PROG_CC
+AC_PROG_CPP
+AC_PROG_LN_S
+case $host_os in
+mingw*)
+LN_S="cp -p"
+AC_MSG_RESULT(Override: No symbolic links in mingw.)
+	;;
+*)
+	;;
+esac
+AC_PROG_MAKE_SET
+AC_PROG_INSTALL
+AC_PROG_YACC
+CF_PROG_LINT
+CF_MAKE_TAGS
+
+AC_AIX
+AC_ISC_POSIX
+
+CF_BUILD_CC([#],[])
+
+CF_PROG_RANLIB
+CF_AR_FLAGS
+
+dnl --------------------------------------------------------------------------
+dnl Debug/development/test
+dnl --------------------------------------------------------------------------
+
+CF_HELP_MESSAGE(
+Development Options:)
+
+CF_DISABLE_ECHO
+
+# special case for WWW/*
+if test -n "$ECHO_CC" ; then
+	DONT_ECHO_CC="$SHOW_CC ;"
+else
+	DONT_ECHO_CC=''
+fi
+AC_SUBST(DONT_ECHO_CC)
+
+AC_MSG_CHECKING(if you want to check memory-leaks)
+CF_ARG_ENABLE(find-leaks,
+	[  --enable-find-leaks     logic for testing memory leaks],
+	[with_leak_checks=yes],
+	[with_leak_checks=no])
+AC_MSG_RESULT($with_leak_checks)
+test "$with_leak_checks" = "yes" && AC_DEFINE(LY_FIND_LEAKS)
+
+# The comment about adding -g to $CFLAGS is unclear.  Autoconf tries to add
+# a -g flag; we remove it if the user's $CFLAGS was not set and debugging is
+# disabled.
+AC_MSG_CHECKING(if you want to enable debug-code)
+CF_ARG_ENABLE(debug,
+	[  --enable-debug          compile w/ debugging (if \$CFLAGS is set, add -g there, too)],
+	[with_debug=yes],
+	[with_debug=no])
+AC_MSG_RESULT($with_debug)
+if test "$with_debug" = "yes" ; then
+	case $host_os in
+	ultrix*|osf*)
+		test -z "$ORIGINAL_CFLAGS" && CF_STRIP_O_OPT(CFLAGS)
+		if test -z "$GCC" ; then
+			CFLAGS="$CFLAGS -g3"
+		fi
+		;;
+	esac
+else
+	case $host_os in
+	osf*) #(vi
+		test -z "$GCC" && CFLAGS="$CFLAGS -std1"
+		test -z "$ORIGINAL_CFLAGS" && CF_STRIP_G_OPT(CFLAGS)
+		;;
+	*)
+		test -z "$ORIGINAL_CFLAGS" && CF_STRIP_G_OPT(CFLAGS)
+		;;
+	esac
+fi
+
+AC_MSG_CHECKING(if you want to enable lynx trace code *recommended* )
+CF_ARG_DISABLE(trace,
+	[  --disable-trace         disable logic for trace code],
+	[with_trace=$enableval],
+	[with_trace=yes])
+AC_MSG_RESULT($with_trace)
+test $with_trace = no && AC_DEFINE(NO_LYNX_TRACE)
+
+AC_MSG_CHECKING(if you want verbose trace code)
+CF_ARG_ENABLE(vertrace,
+	[  --enable-vertrace       verbose trace code],
+	[with_vertrace=yes],
+	[with_vertrace=no])
+AC_MSG_RESULT($with_vertrace)
+test $with_vertrace = yes && AC_DEFINE(LY_TRACELINE,__LINE__)
+
+if test -n "$GCC"
+then
+AC_MSG_CHECKING(if you want to turn on gcc warnings)
+CF_ARG_ENABLE(warnings,
+	[  --enable-warnings       GCC compiler warnings],
+	[with_warnings=yes],
+	[with_warnings=no])
+AC_MSG_RESULT($with_warnings)
+if test "$with_warnings" = "yes"
+then
+	CF_GCC_ATTRIBUTES
+	CF_GCC_WARNINGS
+fi
+fi
+
+CF_WITH_DBMALLOC
+CF_WITH_DMALLOC
+
+dnl --------------------------------------------------------------------------
+dnl Checks for compiler & standard-library characteristics
+dnl --------------------------------------------------------------------------
+
+dnl If we're able to run this script, this is true!
+AC_DEFINE(UNIX)
+
+AC_C_CONST
+
+dnl Only add to this case statement things that we cannot design tests for.
+CF_PROG_EXT
+TRY_CFLAGS=
+case $host_os in
+aix4*)
+	TRY_CFLAGS="$TRY_CFLAGS -DAIX4 -D_BSD=44 -D_AIX"
+	LIBS="$LIBS -lbsd"
+	;;
+aix*)
+	TRY_CFLAGS="$TRY_CFLAGS -D_ACS_COMPAT_CODE"
+	LIBS="$LIBS -lbsd"
+	;;
+apollo*)
+	TRY_CFLAGS="$TRY_CFLAGS -D_BUILTINS -W0,-opt,4"
+	;;
+bsdi*)
+	TRY_CFLAGS="$TRY_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.
+	AC_CHECK_LIB(c_s,strcmp)
+	;;
+convex*)
+	TRY_CFLAGS="$TRY_CFLAGS -D__STDC__ -Dunix"
+	;;
+cygwin*)
+	TRY_CFLAGS="$TRY_CFLAGS -DWIN_EX -D_WINDOWS_NSL"
+	LIBS="$LIBS -luser32"
+	;;
+dgux*)
+	TRY_CFLAGS="$TRY_CFLAGS -DDGUX"
+	;;
+hpux*)
+	TRY_CFLAGS="$TRY_CFLAGS -DSNAKE -D_XOPEN_SOURCE_EXTENDED"
+	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -Wp,-H600000 -DSYS_HPUX"
+	;;
+isc*)
+	# -DPOSIX_JC is necessary, else LYBookmark.c never finds out what a mode_t is.
+	TRY_CFLAGS="$TRY_CFLAGS -DISC -DPOSIX_JC"
+	LIBS="$LIBS -linet -lnsl_s -lcposix"
+	;;
+irix6.*) #(vi
+	TRY_CFLAGS="$TRY_CFLAGS -DSYS_IRIX64"
+	;;
+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.
+	;;
+linux*)
+	TRY_CFLAGS="$TRY_CFLAGS -DLINUX"
+	;;
+mingw*)
+	# put these directly in CPPFLAGS since they will not work in lynx_cfg.h
+	CF_ADD_CFLAGS(\
+		-DWIN32_LEAN_AND_MEAN \
+		-DDOSPATH \
+		-DNOSIGHUP \
+		-DNOUSERS \
+		-DWIN_EX \
+		-D_CONSOLE \
+		-D_MBCS \
+		-D_WINDOWS \
+		-D_WIN_CC \
+		-D__WIN32__ \
+	)
+	EXTRA_OBJS="$EXTRA_OBJS Xsystem\$o"
+	;;
+msdosdjgpp*)
+	LIBS="$LIBS -lwatt"
+	TRY_CFLAGS="$TRY_CFLAGS -DDOSPATH -DNOUSERS"
+	;;
+next*)
+	TRY_CFLAGS="$TRY_CFLAGS -DNEXT"
+	;;
+openbsd* | ekkobsd* | mirbsd*)
+	LIBS="$LIBS -lcompat"
+	;;
+osf4*)
+	# The -Olimit flag (see below) is no longer available with
+	# Digital C 5.2, which is bundled with Digital UNIX 4.0.
+	TRY_CFLAGS="$TRY_CFLAGS -DDSYS5 -DSYS_TRU64"
+	;;
+osf*)
+	# Increase the maximum size of functions that will be optimized.
+	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 4000"
+	TRY_CFLAGS="$TRY_CFLAGS -DDSYS5 -DSYS_TRU64"
+	;;
+sco3.2v5*)
+	test $ac_cv_prog_gcc != yes && TRY_CFLAGS="$TRY_CFLAGS -belf"
+	;;
+sco*)
+	LIBS="$LIBS -lmalloc"
+	# It's a little late to do much, but try to warn user if he's using
+	# SCO's cc (which is reported to have broken const/volatile).
+	case "$CC" in #(vi
+	cc|*/cc)
+		AC_MSG_WARN(You should consider using gcc or rcc if available)
+		unset ac_cv_prog_CC
+		AC_CHECK_PROGS(CC,gcc rcc,$CC)
+		;;
+	esac
+	;;
+sequent-ptx)
+	TRY_CFLAGS="$TRY_CFLAGS -DSVR4_BSDSELECT -DNO_IOCTL -DUSE_FCNTL"
+	;;
+sequent-ptx2)
+	TRY_CFLAGS="$TRY_CFLAGS -DSVR4_BSDSELECT"
+	;;
+sony-newsos*)
+	TRY_CFLAGS="$TRY_CFLAGS -I/usr/sony/include"
+	AC_CHECK_HEADERS(jcurses.h)
+	;;
+svr4)
+	TRY_CFLAGS="$TRY_CFLAGS -DSVR4_BSDSELECT -DSVR4"
+	;;
+sunos3*)
+	TRY_CFLAGS="$TRY_CFLAGS -DSUN"
+	;;
+sunos4*)
+	TRY_CFLAGS="$TRY_CFLAGS -DSUN -DSUN4"
+	;;
+ultrix*)
+	# Increase the maximum size of functions that will be optimized.
+	test -z "$GCC" && TRY_CFLAGS="$TRY_CFLAGS -O -Olimit 600 -G 7"
+	TRY_CFLAGS="$TRY_CFLAGS -DULTRIX"
+	AC_CHECK_HEADERS(cursesX.h,
+		[AC_DEFINE(HAVE_CURSESX_H)
+		 cf_cv_ncurses_header=cursesX.h])
+	;;
+esac
+
+case $host_os in
+mingw*)
+	EXTRA_OBJS="$EXTRA_OBJS LYIcon\$o"
+	;;
+esac
+
+CF_ANSI_CC_REQD
+
+dnl --------------------------------------------------------------------------
+dnl --------------------------------------------------------------------------
+
+CF_HELP_MESSAGE(
+Basic Configuration Options:)
+
+CF_LARGEFILE
+
+dnl --------------------------------------------------------------------------
+dnl internationalization macros
+dnl --------------------------------------------------------------------------
+
+dnl Set of available languages (based on source distribution)
+if test -z "$ALL_LINGUAS" ; then
+	ALL_LINGUAS=`test -d $srcdir/po && cd $srcdir/po && echo *.po|sed -e 's/\.po//g' -e 's/*//'`
+	AM_PATH_PROG_WITH_TEST(MSGINIT, msginit,
+		[$ac_dir/$ac_word --no-translator --version /dev/null >/dev/null 2>&1], :)
+	if test "$MSGINIT" != ":" ; then
+		CF_VERBOSE(adding en.po)
+		ALL_LINGUAS="$ALL_LINGUAS en"
+	fi
+fi
+
+CF_BUNDLED_INTL(makefile,disable)
+
+INTLDIR_CPPFLAGS="#"
+if test -z "$INTLDIR_MAKE" ; then
+	INTLDIR_CPPFLAGS=
+fi
+
+AC_SUBST(INTLDIR_CPPFLAGS)
+
+CF_WITH_PATH(nls-datadir,
+[  --with-nls-datadir=DIR  NLS data, parent of locale],
+NLS_DATADIR,
+[PREFIX/DATADIR],
+[$prefix/$DATADIRNAME])
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want full utility pathnames)
+CF_ARG_DISABLE(full-paths,
+	[  --disable-full-paths    control whether full utility pathnames are used],
+	[with_full_paths=no],
+	[with_full_paths=yes])
+AC_MSG_RESULT($with_full_paths)
+test $with_full_paths = no && AC_DEFINE(USE_EXECVP)
+
+CF_DEFINE_PROG(system mailer, SYSTEM_MAIL,
+	/usr/mmdf/bin/submit \
+	/usr/sbin/sendmail \
+	/usr/lib/sendmail  \
+	)
+CF_SYSTEM_MAIL_FLAGS
+if test -n "$SYSTEM_MAIL" ; then
+if test $with_full_paths = no ; then
+	SYSTEM_MAIL=`basename $SYSTEM_MAIL`
+fi
+fi
+
+dnl --------------------------------------------------------------------------
+CF_XOPEN_SOURCE(500,199506L)
+CF_SIGWINCH
+
+dnl Collect tests for compiler options into one place
+if test -n "$TRY_CFLAGS" ; then
+	CF_CHECK_CFLAGS($TRY_CFLAGS)
+fi
+
+dnl --------------------------------------------------------------------------
+dnl Checks for library configuration (added right-to-left)
+dnl --------------------------------------------------------------------------
+
+### Look for network libraries first, since some functions (such as gethostname)
+### are used in a lot of places.
+AC_CACHE_CHECK(if you want NSS compatible SSL libraries,cf_cv_use_libnss_compat,[
+AC_ARG_WITH(nss-compat,
+	[  --with-nss-compat{=path}       link with nss_compat library if available],
+	[cf_cv_use_libnss_compat=$withval],
+	[cf_cv_use_libnss_compat=no])
+])
+
+AC_CACHE_CHECK(if you want ssl library,cf_cv_use_libssl,[
+AC_ARG_WITH(ssl,
+	[  --with-ssl{=path}       link with ssl library if available],
+	[cf_cv_use_libssl=$withval],
+	[cf_cv_use_libssl=no])
+])
+
+AC_CACHE_CHECK(if you want gnutls support,cf_cv_use_libgnutls,[
+AC_ARG_WITH(gnutls,
+	[  --with-gnutls{=path}    link with gnutls support],
+	[cf_cv_use_libgnutls=$withval],
+	[cf_cv_use_libgnutls=no])
+])
+
+# this option is mainly for comparing with/without Lynx's wrapper for GNUTLS.
+AC_CACHE_CHECK(if you want gnutls-openssl compat,cf_cv_gnutls_compat,[
+AC_ARG_ENABLE(gnutls-compat,
+	[  --enable-gnutls-compat  link with gnutls-openssl compat],
+	[cf_cv_gnutls_compat=$enableval],
+	[cf_cv_gnutls_compat=no])
+])
+
+AC_CACHE_CHECK(if you want socks library,cf_cv_use_libsocks,[
+AC_ARG_WITH(socks,
+	[  --with-socks{=path}     link with socks library if available],
+	[cf_cv_use_libsocks=$withval],
+	[cf_cv_use_libsocks=no])
+])
+
+AC_CACHE_CHECK(if you want socks5 library,cf_cv_use_libsocks5,[
+AC_ARG_WITH(socks5,
+	[  --with-socks5{=path}    link with socks5 library if available],
+	[cf_cv_use_libsocks5=$withval],
+	[cf_cv_use_libsocks5=no])
+])
+
+if test "x$cf_cv_use_libsocks" != xno ; then
+	CF_SOCKS($cf_cv_use_libsocks)
+elif test "x$cf_cv_use_libsocks5" != xno ; then
+	CF_SOCKS5($cf_cv_use_libsocks5)
+else
+	CF_NETLIBS
+fi
+
+CF_INET_ADDR
+
+CF_PKG_CONFIG
+
+if test "x$cf_cv_use_libssl"  != xno ; then
+	CF_SSL($cf_cv_use_libssl)
+elif test "x$cf_cv_use_libgnutls" != xno ; then
+    if test "x$cf_cv_gnutls_compat" = xno ; then
+        CF_GNUTLS($cf_cv_use_libgnutls,tidy_tls\$o)
+		AC_CHECK_FUNCS(gnutls_priority_set_direct)
+    else
+        CF_GNUTLS($cf_cv_use_libgnutls)
+    fi
+elif test "x$cf_cv_use_libnss_compat"  != xno ; then
+	CF_NSS_COMPAT($cf_cv_use_libnss_compat)
+fi
+
+dnl --------------------------------------------------------------------------
+### check for ipv6 support
+AC_MSG_CHECKING([whether to enable ipv6])
+CF_ARG_ENABLE(ipv6,
+[  --enable-ipv6           use ipv6 (with ipv4) support],
+	[AC_DEFINE(ENABLE_IPV6)])
+AC_MSG_RESULT($enableval)
+if test "$enableval" = "yes"; then
+	CF_CHECK_IPV6
+fi
+dnl AC_REPLACE_FUNCS(getaddrinfo getnameinfo)
+
+dnl --------------------------------------------------------------------------
+dnl This has to be cached, since there's a lot of interdependent tests.
+AC_CACHE_CHECK(for screen type, cf_cv_screen,[
+AC_ARG_WITH(screen,
+[  --with-screen=XXX       select screen type (XXX is curses (default),
+                          ncurses, ncursesw, pdcurses or slang)],
+	[
+case $withval in
+curses|ncurses|ncursesw|pdcurses|slang)
+	cf_cv_screen=$withval
+	;;
+*)	AC_ERROR(Unexpected value)
+	;;
+esac],
+	[cf_cv_screen=curses])])
+
+case $cf_cv_screen in
+curses|ncurses*)
+	CF_WITH_CURSES_DIR
+	;;
+esac
+
+cf_wide_curses=no
+dft_color_style=yes
+case $cf_cv_screen in
+curses)
+	CF_CURSES_CONFIG
+	CF_CURS_PERFORMANCE
+	CF_CURS_TOUCHLINE
+	;;
+ncurses)
+	CF_NCURSES_CONFIG
+	;;
+ncursesw)
+	CF_UTF8_LIB
+	CF_NCURSES_CONFIG(ncursesw)
+	cf_wide_curses=yes
+	;;
+pdcurses)
+	cf_cv_ncurses_header=xcurses.h
+	# do this last, since it changes definition of main: CF_PDCURSES_X11
+	;;
+slang)
+	CF_SLANG_UNIX_DEFS
+	dft_color_style=no
+	;;
+esac
+
+CF_CURSES_CHTYPE
+
+AC_MSG_CHECKING(if you want the wide-curses features)
+CF_ARG_ENABLE(widec, 
+[  --enable-widec          enable wide-curses features], 
+	[use_wide_curses=$enableval],
+	[use_wide_curses=$cf_wide_curses])
+AC_MSG_RESULT($use_wide_curses)
+
+AC_MSG_CHECKING(if color-style code should be used)
+CF_ARG_DISABLE(color-style,
+[  --disable-color-style   use color style (ncurses/curses)],
+	[use_color_style=$enableval],
+	[use_color_style=$dft_color_style])
+
+case $use_color_style in
+no)
+	AC_MSG_RESULT(no)
+	INSTALL_LSS=
+	;;
+*)
+	AC_DEFINE(USE_COLOR_STYLE)
+	AC_MSG_RESULT(yes)
+
+	AC_MSG_CHECKING(for location of style-sheet file)
+
+CF_WITH_PATH(lss-file,
+[  --with-lss-file{=path}  specify the default style-sheet file
+                         ],
+LYNX_LSS_FILE,
+SYSCONFDIR/lynx.lss,
+$sysconfdir/lynx.lss)
+
+	AC_MSG_RESULT($LYNX_LSS_FILE)
+
+	test "$LYNX_LSS_FILE" = no && LYNX_LSS_FILE=
+	AC_DEFINE_UNQUOTED(LYNX_LSS_FILE,"$LYNX_LSS_FILE")
+
+	INSTALL_LSS=install-lss
+	;;
+esac
+AC_SUBST(INSTALL_LSS)
+
+dnl --------------------------------------------------------------------------
+
+AC_MSG_CHECKING(for the default configuration-file)
+
+CF_WITH_PATH(cfg-file,
+[  --with-cfg-file{=path}  specify the default configuration file
+                         ],
+LYNX_CFG_FILE,
+SYSCONFDIR/lynx.cfg,
+$sysconfdir/lynx.cfg)
+
+dnl --------------------------------------------------------------------------
+
+AC_MSG_RESULT($LYNX_CFG_FILE)
+
+test "$LYNX_CFG_FILE" = no && LYNX_CFG_FILE=
+AC_DEFINE_UNQUOTED(LYNX_CFG_FILE,"$LYNX_CFG_FILE")
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if htmlized lynx.cfg should be built)
+CF_ARG_ENABLE(htmlized-cfg,
+[  --enable-htmlized-cfg   build htmlized lynx.cfg],
+	[use_htmlized_cfg=$enableval],
+	[use_htmlized_cfg=no])
+AC_MSG_RESULT($use_htmlized_cfg)
+
+LYNXCFG_MAKE=''
+if test $use_htmlized_cfg = no ; then
+	LYNXCFG_MAKE='#'
+fi
+AC_SUBST(LYNXCFG_MAKE)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if local doc directory should be linked to help page)
+CF_ARG_ENABLE(local-docs,
+[  --enable-local-docs     link local doc-directory to help-page],
+	[use_local_docs=$enableval],
+	[use_local_docs=no])
+AC_MSG_RESULT($use_local_docs)
+
+LYNXDOC_MAKE=''
+if test $use_local_docs = no ; then
+	LYNXDOC_MAKE='#'
+fi
+AC_SUBST(LYNXDOC_MAKE)
+
+dnl --------------------------------------------------------------------------
+
+AC_MSG_CHECKING(for MIME library directory)
+CF_WITH_PATH(mime-libdir,
+[  --with-mime-libdir=DIR  MIME data, mime.types and mailcap],
+MIME_LIBDIR,
+[/etc])
+AC_MSG_RESULT($MIME_LIBDIR)
+MIME_LIBDIR=`echo "$MIME_LIBDIR" | sed -e 's,/$,,' -e 's,$,/,'`
+AC_DEFINE_UNQUOTED(MIME_LIBDIR,"$MIME_LIBDIR")
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if locale-charset selection logic should be used)
+CF_ARG_ENABLE(locale-charset,
+[  --enable-locale-charset use locale-charset selection logic],
+	[use_locale_charset=$enableval],
+	[use_locale_charset=yes])
+AC_MSG_RESULT($use_locale_charset)
+test $use_locale_charset != no && AC_DEFINE(USE_LOCALE_CHARSET)
+
+dnl --------------------------------------------------------------------------
+dnl Check for subsets of compiled-in tables.
+dnl --------------------------------------------------------------------------
+CHARSET_DEFS=
+AC_SUBST(CHARSET_DEFS)
+
+AC_MSG_CHECKING(if you want only a few charsets)
+AC_ARG_WITH(charsets,
+[  --with-charsets=list    limit charsets to given list of MIME names],
+[cf_charsets=$withval],
+[cf_charsets=])
+
+if test -n "$cf_charsets" ; then
+	AC_MSG_RESULT(yes)
+	AC_DEFINE(ALL_CHARSETS,0)
+	cf_min_charsets=us-ascii,iso-8859-1,utf-8
+	if test "$cf_charsets" = "no" ; then
+		cf_charsets=minimal
+	fi
+	if test "$cf_charsets" = "minimal" ; then
+		CF_VERBOSE(using minimal list of charsets: $cf_min_charsets)
+	fi
+	cf_charsets=`echo $cf_charsets | sed -e "s/minimal/$cf_min_charsets/g" -e 's/,/ /g'`
+	for cf_charset in $cf_charsets
+	do
+		cf_def_charset=`echo $cf_charset | sed -e 's/+/_/g' -e 's/-/_/g'`
+		cf_use_charset=no
+		# check charsets that are defined via .tbl files
+		if ( egrep '^M'$cf_charset'$' $srcdir/src/chrtrans/*.tbl 2>/dev/null >/dev/null )
+		then
+			cf_use_charset=yes
+		# check charsets that are "built-in"
+		else
+			for cf_tst_charset in big5 euc_cn euc_jp euc_kr shift_jis x_transparent
+			do
+				if test "$cf_tst_charset" = "$cf_def_charset"
+				then
+					cf_use_charset=yes
+					break
+				fi
+			done
+		fi
+		if test $cf_use_charset=yes
+		then
+			CF_VERBOSE(found $cf_charset)
+			CHARSET_DEFS="-DNO_CHARSET_${cf_def_charset}=0 $CHARSET_DEFS"
+		else
+			CF_VERBOSE(not found $cf_charset)
+		fi
+	done
+else
+	AC_MSG_RESULT(no)
+fi
+
+dnl --------------------------------------------------------------------------
+dnl Checks for standard headers
+dnl --------------------------------------------------------------------------
+
+AC_HEADER_STDC
+AC_HEADER_TIME
+AC_HEADER_DIRENT
+dnl Don't check for sys/wait.h here since it is covered by another test.
+AC_CHECK_HEADERS( \
+	arpa/inet.h \
+	fcntl.h \
+	limits.h \
+	stdlib.h \
+	string.h \
+	sys/fcntl.h \
+	sys/filio.h \
+	sys/ioctl.h \
+	sys/param.h \
+	sys/timeb.h \
+	sys/time.h \
+	syslog.h \
+	termio.h \
+	termios.h \
+	unistd.h \
+	vfork.h \
+)
+CF_TERMIO_AND_TERMIOS
+CF_FUNC_SIGACTION
+CF_FUNC_WAIT
+AC_TYPE_GETGROUPS
+AC_TYPE_OFF_T
+AC_TYPE_PID_T
+AC_TYPE_UID_T
+AC_TYPE_MODE_T
+CF_CHECK_TYPE(ssize_t, int)
+CF_CHECK_TYPE(socklen_t, int, [
+#include <sys/types.h>
+#include <sys/socket.h>
+])
+CF_TYPE_LONG_LONG
+CF_TM_GMTOFF
+
+AC_CHECK_SIZEOF(int,4)
+AC_CHECK_SIZEOF(long,4)
+AC_CHECK_SIZEOF(off_t,4)
+AC_CHECK_SIZEOF(time_t,4)
+
+dnl --------------------------------------------------------------------------
+dnl Checks for library units
+dnl --------------------------------------------------------------------------
+
+AC_FUNC_ALLOCA
+AC_FUNC_VFORK
+CF_FIONBIO
+CF_REMOVE_BROKEN
+CF_FUNC_LSTAT
+AC_CHECK_FUNCS( \
+	ctermid \
+	cuserid \
+	ftime \
+	getcwd \
+	getgroups \
+	gettimeofday \
+	getuid \
+	mktemp \
+	mkdtemp \
+	popen \
+	putenv \
+	readdir \
+	setuid \
+	strerror \
+	truncate \
+	ttyname \
+	unsetenv \
+	usleep \
+	vasprintf \
+	waitpid \
+)
+AC_REPLACE_FUNCS( \
+	mktime \
+	strstr \
+)
+
+CF_SRAND(lynx_)
+CF_CHECK_FUNCDECLS([#include <string.h>], strstr)
+CF_CHECK_FUNCDECLS([
+#include <stdio.h>
+#include <grp.h>], getgrgid getgrnam)
+
+dnl --------------------------------------------------------------------------
+dnl Checks for external-data
+dnl --------------------------------------------------------------------------
+
+CF_BOOL_DEFS
+CF_ERRNO
+CF_SET_ERRNO
+CF_LOCALE
+CF_NGROUPS
+CF_SYS_ERRLIST
+CF_UTMP
+CF_CHECK_EXTERN_DATA(h_errno,int)
+
+AC_SUBST(EXTRA_OBJS)
+
+dnl --------------------------------------------------------------------------
+dnl Experimental options that don't need to test system features
+dnl --------------------------------------------------------------------------
+
+CF_HELP_MESSAGE(
+Experimental Options:)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if bibp: URLs should be supported)
+CF_ARG_DISABLE(bibp-urls,
+[  --disable-bibp-urls     disable support for bibp: URLs],
+	[use_bibp_urls=$enableval],
+	[use_bibp_urls=yes])
+AC_MSG_RESULT($use_bibp_urls)
+test $use_bibp_urls = no && AC_DEFINE(DISABLE_BIBP)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if configuration info should be browsable)
+CF_ARG_DISABLE(config-info,
+[  --disable-config-info   disable browsable configuration-info],
+	[use_config_info=$enableval],
+	[use_config_info=yes])
+AC_MSG_RESULT($use_config_info)
+test $use_config_info = no && AC_DEFINE(NO_CONFIG_INFO)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if new-style forms-based options screen should be used)
+CF_ARG_DISABLE(forms-options,
+[  --disable-forms-options disable forms-based options],
+	[use_forms_options=$enableval],
+	[use_forms_options=yes])
+AC_MSG_RESULT($use_forms_options)
+test $use_forms_options = no && AC_DEFINE(NO_OPTION_FORMS)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if old-style options menu should be used)
+CF_ARG_DISABLE(menu-options,
+[  --disable-menu-options  disable old-style option menu],
+	[use_menu_options=$enableval],
+	[use_menu_options=yes])
+AC_MSG_RESULT($use_menu_options)
+test $use_menu_options = no && AC_DEFINE(NO_OPTION_MENU)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if sessions code should be used)
+CF_ARG_DISABLE(sessions,
+[  --disable-sessions      use sessions code],
+	[use_sessions=$enableval],
+	[use_sessions=yes])
+AC_MSG_RESULT($use_sessions)
+if test $use_sessions != no ; then
+	AC_DEFINE(USE_SESSIONS)
+	EXTRA_OBJS="$EXTRA_OBJS LYSession\$o"
+fi
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if session-caching code should be used)
+CF_ARG_DISABLE(session-cache,
+[  --disable-session-cache use session-caching code],
+	[use_session_cache=$enableval],
+	[use_session_cache=yes])
+AC_MSG_RESULT($use_session_cache)
+if test $use_session_cache != no ; then
+    AC_DEFINE(USE_CACHEJAR)
+fi
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if address-list page should be used)
+CF_ARG_DISABLE(addrlist-page,
+[  --disable-addrlist-page disable address-list page],
+	[use_addrlist_page=$enableval],
+	[use_addrlist_page=yes])
+AC_MSG_RESULT($use_addrlist_page)
+test $use_addrlist_page != no && AC_DEFINE(USE_ADDRLIST_PAGE)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if experimental CJK logic should be used)
+CF_ARG_ENABLE(cjk,
+[  --enable-cjk            use experimental CJK logic],
+	[use_cjk=$enableval],
+	[use_cjk=no])
+AC_MSG_RESULT($use_cjk)
+test $use_cjk != no && AC_DEFINE(CJK_EX)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if experimental Japanese UTF-8 logic should be used)
+CF_ARG_ENABLE(japanese-utf8,
+[  --enable-japanese-utf8  use experimental Japanese UTF-8 logic],
+	[use_ja_utf8=$enableval],
+	[use_ja_utf8=no])
+AC_MSG_RESULT($use_ja_utf8)
+if test $use_ja_utf8 != no ; then
+	AC_DEFINE(EXP_JAPANESEUTF8_SUPPORT)
+	AM_ICONV
+	if test "$USE_NLS" != yes ; then
+	  LIBS="$LIBICONV $LIBS"
+	fi
+fi
+
+use_dft_colors=no
+case $cf_cv_screen in
+curses|slang|ncurses*)
+	use_dft_colors=maybe
+	;;
+esac
+
+dnl --------------------------------------------------------------------------
+if test "$use_dft_colors" != no ; then
+AC_MSG_CHECKING(if you want to use default-colors)
+CF_ARG_ENABLE(default-colors,
+[  --enable-default-colors enable use of default-colors (ncurses/slang)],
+	[use_dft_colors=yes],
+	[use_dft_colors=no])
+AC_MSG_RESULT($use_dft_colors)
+test $use_dft_colors = "yes" && AC_DEFINE(USE_DEFAULT_COLORS)
+fi
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if experimental keyboard-layout logic should be used)
+CF_ARG_ENABLE(kbd-layout,
+[  --enable-kbd-layout     use experimental keyboard-layout support],
+	[use_kbd_layout=$enableval],
+	[use_kbd_layout=no])
+AC_MSG_RESULT($use_kbd_layout)
+test $use_kbd_layout != no && AC_DEFINE(EXP_KEYBOARD_LAYOUT)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if experimental nested-table logic should be used)
+CF_ARG_ENABLE(nested-tables,
+[  --enable-nested-tables  use experimental nested-table support],
+	[use_nested_tables=$enableval],
+	[use_nested_tables=no])
+AC_MSG_RESULT($use_nested_tables)
+test $use_nested_tables != no && AC_DEFINE(EXP_NESTED_TABLES)
+
+dnl --------------------------------------------------------------------------
+dnl Miscellaneous options that don't need to test system features
+dnl --------------------------------------------------------------------------
+
+CF_HELP_MESSAGE(
+Miscellaneous Options:)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if alternative line-edit bindings should be used)
+CF_ARG_ENABLE(alt-bindings,
+[  --disable-alt-bindings  disable alternative line-edit bindings],
+	[use_alt_bindings=$enableval],
+	[use_alt_bindings=yes])
+AC_MSG_RESULT($use_alt_bindings)
+test $use_alt_bindings != no && AC_DEFINE(USE_ALT_BINDINGS)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if ascii case-conversion should be used)
+CF_ARG_DISABLE(ascii-ctypes,
+[  --disable-ascii-ctypes  disable use of ascii case-conversion],
+	[use_ascii_ctypes=$enableval],
+	[use_ascii_ctypes=yes])
+AC_MSG_RESULT($use_ascii_ctypes)
+test $use_ascii_ctypes != no && AC_DEFINE(USE_ASCII_CTYPES)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to use extended HTML DTD logic)
+CF_ARG_DISABLE(extended-dtd,
+[  --disable-extended-dtd  disable extended HTML DTD logic],
+	[use_ext_htmldtd=no],
+	[use_ext_htmldtd=yes])
+AC_MSG_RESULT($use_ext_htmldtd)
+test $use_ext_htmldtd = "no" && AC_DEFINE(NO_EXTENDED_HTMLDTD)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if file-upload logic should be used)
+CF_ARG_DISABLE(file-upload,
+[  --disable-file-upload   disable file-upload support],
+	[use_file_upload=$enableval],
+	[use_file_upload=yes])
+AC_MSG_RESULT($use_file_upload)
+test $use_file_upload != no && AC_DEFINE(USE_FILE_UPLOAD)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if IDNA support should be used)
+CF_ARG_DISABLE(idna,
+[  --disable-idna          disable IDNA support],
+	[use_idna=$enableval],
+	[use_idna=yes])
+AC_MSG_RESULT($use_idna)
+
+if test "$use_idna" = yes ; then
+	CF_WITH_IDNA($use_idna)
+fi
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if element-justification logic should be used)
+CF_ARG_DISABLE(justify-elts,
+[  --disable-justify-elts  disable element-justification logic],
+	[use_justify_elts=$enableval],
+	[use_justify_elts=yes])
+AC_MSG_RESULT($use_justify_elts)
+test $use_justify_elts != no && AC_DEFINE(USE_JUSTIFY_ELTS)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if partial-display should be used)
+CF_ARG_DISABLE(partial,
+[  --disable-partial       disable partial-display logic],
+	[use_partial_display=$enableval],
+	[use_partial_display=yes])
+AC_MSG_RESULT($use_partial_display)
+test $use_partial_display != no && AC_DEFINE(DISP_PARTIAL)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if persistent-cookie logic should be used)
+CF_ARG_DISABLE(persistent-cookies,
+[  --disable-persistent-cookies  disable persistent-cookie support],
+	[use_filed_cookies=$enableval],
+	[use_filed_cookies=yes])
+AC_MSG_RESULT($use_filed_cookies)
+test $use_filed_cookies != no && AC_DEFINE(USE_PERSISTENT_COOKIES)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if html source should be colorized)
+CF_ARG_DISABLE(prettysrc,
+[  --disable-prettysrc     disable colorization of HTML source],
+	[use_prettysrc=$enableval],
+	[use_prettysrc=yes])
+AC_MSG_RESULT($use_prettysrc)
+test $use_prettysrc != no && AC_DEFINE(USE_PRETTYSRC)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if progress-bar code should be used)
+CF_ARG_DISABLE(progressbar,
+[  --disable-progressbar   disable progress-bar],
+	[use_progressbar=$enableval],
+	[use_progressbar=yes])
+AC_MSG_RESULT($use_progressbar)
+test $use_progressbar != no && AC_DEFINE(USE_PROGRESSBAR)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if read-progress message should show ETA)
+CF_ARG_DISABLE(read-eta,
+[  --disable-read-eta      disable read-progress message shows ETA],
+	[use_read_eta=$enableval],
+	[use_read_eta=yes])
+AC_MSG_RESULT($use_read_eta)
+test $use_read_eta != no && AC_DEFINE(USE_READPROGRESS)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if source caching should be used)
+CF_ARG_DISABLE(source-cache,
+[  --disable-source-cache  do not cache HTML source for parse mode changes],
+	[use_source_cache=$enableval],
+	[use_source_cache=yes])
+AC_MSG_RESULT($use_source_cache)
+test $use_source_cache != no && AC_DEFINE(USE_SOURCE_CACHE)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if scrollbar code should be used)
+CF_ARG_DISABLE(scrollbar,
+[  --disable-scrollbar     disable scrollbar with mouse],
+	[use_scrollbar=$enableval],
+	[use_scrollbar=yes])
+AC_MSG_RESULT($use_scrollbar)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if charset-selection logic should be used)
+CF_ARG_ENABLE(charset-choice,
+[  --enable-charset-choice use charset-selection logic],
+	[use_charset_choice=$enableval],
+	[use_charset_choice=no])
+AC_MSG_RESULT($use_charset_choice)
+test $use_charset_choice != no && AC_DEFINE(USE_CHARSET_CHOICE)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to use external commands)
+CF_ARG_ENABLE(externs,
+[  --enable-externs        use external commands],
+	[use_externs=yes],
+	[use_externs=no])
+AC_MSG_RESULT($use_externs)
+if test $use_externs != "no" ; then
+	AC_DEFINE(USE_EXTERNALS)
+	EXTRA_OBJS="$EXTRA_OBJS LYExtern\$o"
+fi
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to use setfont support)
+CF_ARG_ENABLE(font-switch,
+[  --enable-font-switch    use Linux setfont for character-translation],
+	[use_setfont=yes],
+	[use_setfont=no])
+AC_MSG_RESULT($use_setfont)
+if test $use_setfont = yes ; then
+	case $host_os in
+	linux*)
+		CF_PATH_PROG(SETFONT, consolechars, setfont)
+		;;
+	os2*)
+		SETFONT=built-in
+		CF_VERBOSE(Assume $host_os has font-switching)
+		;;
+	*)
+		SETFONT=unknown
+		CF_VERBOSE(Assume $host_os has no font-switching)
+		;;
+	esac
+	if test -z "$SETFONT" ; then
+		AC_MSG_WARN(Cannot find a font-setting program)
+	elif test "$SETFONT" != unknown ; then
+		AC_DEFINE(EXP_CHARTRANS_AUTOSWITCH)
+	fi
+fi
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want cgi-link support)
+CF_ARG_ENABLE(cgi-links,
+[  --enable-cgi-links      support cgi links w/o a http daemon],
+	[AC_DEFINE(LYNXCGI_LINKS)])
+AC_MSG_RESULT($enableval)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want change-exec support)
+CF_ARG_ENABLE(change-exec,
+[  --enable-change-exec    allow users to change exec options],
+	[use_change_exec=yes],
+	[use_change_exec=no])
+AC_MSG_RESULT($use_change_exec)
+test $use_change_exec = yes && AC_DEFINE(ENABLE_OPTS_CHANGE_EXEC)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want exec-links support)
+CF_ARG_OPTION(exec-links,
+[  --enable-exec-links     allow lynx to execute programs accessed via a link],
+	[use_exec_links=$enableval],
+	[use_exec_links=$enableval],
+	[$use_change_exec])
+AC_MSG_RESULT($use_exec_links)
+test $use_exec_links = yes && AC_DEFINE(EXEC_LINKS)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want exec-scripts support)
+CF_ARG_OPTION(exec-scripts,
+[  --enable-exec-scripts   allow lynx to execute programs inferred from a link],
+	[use_exec_scripts=$enableval],
+	[use_exec_scripts=$enableval],
+	[$use_change_exec])
+AC_MSG_RESULT($use_exec_scripts)
+test $use_exec_scripts = yes && AC_DEFINE(EXEC_SCRIPTS)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want internal-links feature)
+CF_ARG_ENABLE(internal-links,
+[  --enable-internal-links handle following links to same doc differently],
+	[use_internal_links=yes],
+	[use_internal_links=no])
+AC_MSG_RESULT($use_internal_links)
+test $use_internal_links = no && AC_DEFINE(DONT_TRACK_INTERNAL_LINKS)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to fork NSL requests)
+CF_ARG_ENABLE(nsl-fork,
+[  --enable-nsl-fork       fork NSL requests, allowing them to be aborted],
+	[use_nsl_fork=yes],
+	[use_nsl_fork=no])
+AC_MSG_RESULT($use_nsl_fork)
+if test $use_nsl_fork = yes ; then
+	case $host_os in
+	mingw*)
+		AC_DEFINE(_WINDOWS_NSL)
+		;;
+	*)
+		AC_DEFINE(NSL_FORK)
+		;;
+	esac
+fi
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to log URL requests via syslog)
+CF_ARG_ENABLE(syslog,
+[  --enable-syslog         log URL requests via syslog],
+	[use_syslog=yes],
+	[use_syslog=no])
+AC_MSG_RESULT($use_syslog)
+test $use_syslog = yes && AC_DEFINE(SYSLOG_REQUESTED_URLS)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to underline links)
+CF_ARG_ENABLE(underlines,
+[  --enable-underlines     underline links rather than using boldface],
+	[use_underline=yes],
+	[use_underline=no])
+AC_MSG_RESULT($use_underline)
+test $use_underline = yes && AC_DEFINE(UNDERLINE_LINKS,1)
+test $use_underline = no  && AC_DEFINE(UNDERLINE_LINKS,0)
+
+dnl --------------------------------------------------------------------------
+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)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to use libbz2 for decompression of some bzip2 files)
+AC_ARG_WITH(bzlib,
+[  --with-bzlib            use libbz2 for decompression of some bzip2 files],
+	[use_bzlib=$withval],
+	[use_bzlib=no])
+AC_MSG_RESULT($use_bzlib)
+
+if test ".$use_bzlib" != ".no" ; then
+	CF_WITH_BZLIB($use_bzlib)
+	test "x$cf_cv_find_linkage_bz2" = "xyes" && AC_DEFINE(USE_BZLIB)
+fi
+
+dnl --------------------------------------------------------------------------
+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],
+	[use_zlib=$withval],
+	[use_zlib=no])
+AC_MSG_RESULT($use_zlib)
+
+if test ".$use_zlib" != ".no" ; then
+	CF_WITH_ZLIB($use_zlib)
+	test "x$cf_cv_find_linkage_z" = "xyes" && AC_DEFINE(USE_ZLIB)
+fi
+
+dnl --------------------------------------------------------------------------
+CF_HELP_MESSAGE(
+Other Network Services:)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to exclude FINGER code)
+CF_ARG_DISABLE(finger,
+[  --disable-finger        disable FINGER logic],
+	[use_finger=yes],
+	[use_finger=no])
+AC_MSG_RESULT($use_finger)
+test $use_finger != "no" && AC_DEFINE(DISABLE_FINGER)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to exclude GOPHER code)
+CF_ARG_DISABLE(gopher,
+[  --disable-gopher        disable GOPHER logic],
+	[use_gopher=yes],
+	[use_gopher=no])
+AC_MSG_RESULT($use_gopher)
+test $use_gopher != "no" && AC_DEFINE(DISABLE_GOPHER)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to exclude NEWS code)
+CF_ARG_DISABLE(news,
+[  --disable-news          disable NEWS logic],
+      [use_news=yes],
+      [use_news=no])
+AC_MSG_RESULT($use_news)
+test $use_news != "no" && AC_DEFINE(DISABLE_NEWS)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to exclude FTP code)
+CF_ARG_DISABLE(ftp,
+[  --disable-ftp           disable FTP logic],
+      [use_ftp=yes],
+      [use_ftp=no])
+AC_MSG_RESULT($use_ftp)
+test $use_ftp != "no" && AC_DEFINE(DISABLE_FTP)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want to include WAIS code)
+CF_ARG_ENABLE(wais,
+[  --enable-wais           enable WAIS logic],
+      [use_wais=yes],
+      [use_wais=no])
+AC_MSG_RESULT($use_wais)
+
+MAKE_WAIS="#"
+if test $use_wais != "no"
+then
+	AC_CHECK_LIB(wais,fs_free,[
+		CF_MATH_LIB
+		CF_ADD_LIB(wais)
+		AC_CHECK_HEADERS(wais.h)
+		MAKE_WAIS=
+		],[AC_MSG_WARN(could not find WAIS library)])
+fi
+AC_SUBST(MAKE_WAIS)
+
+dnl --------------------------------------------------------------------------
+dnl DirEd (directory-editor) options
+dnl --------------------------------------------------------------------------
+
+CF_HELP_MESSAGE(
+Directory Editor Options:)
+
+# All DirEd functions that were enabled on compilation can be disabled
+# or modified at run time via DIRED_MENU symbols in lynx.cfg.
+AC_MSG_CHECKING(if directory-editor code should be used)
+CF_ARG_DISABLE(dired,
+[  --disable-dired          disable optional directory-editor, DirEd],
+	[use_dired=$enableval],
+	[use_dired=yes])
+AC_MSG_RESULT($use_dired)
+
+if test ".$use_dired" != ".no" ; then
+	EXTRA_OBJS="$EXTRA_OBJS LYLocal\$o"
+	AC_DEFINE(DIRED_SUPPORT)
+
+	AC_MSG_CHECKING(if you wish to allow extracting from archives via DirEd)
+	CF_ARG_DISABLE(dired-dearchive,
+	[  --disable-dired-dearchive disable dearchiving commands],[AC_DEFINE(ARCHIVE_ONLY)])
+	AC_MSG_RESULT($enableval)
+
+	AC_MSG_CHECKING(if DirEd mode should override keys)
+	CF_ARG_DISABLE(dired-override,
+	[  --disable-dired-override disable DirEd override keymap],,[AC_DEFINE(OK_OVERRIDE)])
+	AC_MSG_RESULT($enableval)
+
+	AC_MSG_CHECKING(if you wish to allow permissions commands via DirEd)
+	CF_ARG_DISABLE(dired-permit,
+	[  --disable-dired-permit  disable chmod/attrib commands],,[AC_DEFINE(OK_PERMIT)])
+	AC_MSG_RESULT($enableval)
+
+	AC_MSG_CHECKING(if you wish to allow executable-permission commands via DirEd)
+	CF_ARG_DISABLE(dired-xpermit,
+	[  --disable-dired-xpermit disable chmod/attrib commands],[AC_DEFINE(NO_CHANGE_EXECUTE_PERMS)])
+	AC_MSG_RESULT($enableval)
+
+	AC_MSG_CHECKING(if you wish to allow "tar" commands from DirEd)
+	CF_ARG_DISABLE(dired-tar,
+	[  --disable-dired-tar     disable "tar" command],,[AC_DEFINE(OK_TAR)])
+	AC_MSG_RESULT($enableval)
+
+	AC_MSG_CHECKING(if you wish to allow "uudecode" commands from DirEd)
+	CF_ARG_DISABLE(dired-uudecode,
+	[  --disable-dired-uudecode disable "uudecode" command],,[AC_DEFINE(OK_UUDECODE)])
+	AC_MSG_RESULT($enableval)
+
+	AC_MSG_CHECKING(if you wish to allow "zip" and "unzip" commands from DirEd)
+	CF_ARG_DISABLE(dired-zip,
+	[  --disable-dired-zip     disable "zip", "unzip"  commands],,[AC_DEFINE(OK_ZIP)])
+	AC_MSG_RESULT($enableval)
+
+	AC_MSG_CHECKING(if you wish to allow "gzip" and "gunzip" commands from DirEd)
+	CF_ARG_DISABLE(dired-gzip,
+	[  --disable-dired-gzip    disable "gzip", "gunzip" commands],,[AC_DEFINE(OK_GZIP)])
+	AC_MSG_RESULT($enableval)
+fi
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if you want long-directory listings)
+CF_ARG_DISABLE(long-list,
+[  --disable-long-list     disable long "ls -l" directory listings],,
+	[AC_DEFINE(LONG_LIST)])
+AC_MSG_RESULT($enableval)
+
+dnl --------------------------------------------------------------------------
+AC_MSG_CHECKING(if parent-directory references are permitted)
+CF_ARG_DISABLE(parent-dir-refs,
+[  --disable-parent-dir-refs
+                          disable "Up-to" links in directory listings],
+	[AC_DEFINE(NO_PARENT_DIR_REFERENCE)])
+AC_MSG_RESULT($enableval)
+
+dnl --------------------------------------------------------------------------
+CF_PATH_PROG(TELNET,	telnet)
+CF_PATH_PROG(TN3270,	tn3270)
+CF_PATH_PROG(RLOGIN,	rlogin)
+
+CF_PATH_PROG(MV,	mv)
+
+CF_PATH_PROG(GZIP,	gzip)
+CF_PATH_PROG(UNCOMPRESS,gunzip)
+CF_PATH_PROG(UNZIP,	unzip)
+CF_PATH_PROG(BZIP2,	bzip2)
+
+CF_PATH_PROG(TAR,	tar, pax gtar gnutar bsdtar star)
+CF_TAR_OPTIONS($TAR)
+AC_DEFINE_UNQUOTED(TAR_UP_OPTIONS,   "$TAR_UP_OPTIONS")
+AC_DEFINE_UNQUOTED(TAR_DOWN_OPTIONS, "$TAR_DOWN_OPTIONS")
+AC_DEFINE_UNQUOTED(TAR_FILE_OPTIONS, "$TAR_FILE_OPTIONS")
+AC_DEFINE_UNQUOTED(TAR_PIPE_OPTIONS, "$TAR_PIPE_OPTIONS")
+
+dnl --------------------------------------------------------------------------
+dnl Test features that rely on configure-definitions
+dnl --------------------------------------------------------------------------
+if test ".$use_dired" != ".no" ; then
+
+CF_PATH_PROG(COMPRESS,	compress)
+CF_PATH_PROG(RM,	rm)
+CF_PATH_PROG(UUDECODE,	uudecode)
+CF_PATH_PROG(ZCAT,	zcat)
+CF_PATH_PROG(ZIP,	zip)
+
+dnl 'INSTALL' is a special case, since the configure script has to find a
+dnl BSD-compatible one so the build/install works properly.
+case "$INSTALL" in
+$srcdir*) # (vi
+	AC_DEFINE_UNQUOTED(INSTALL_PATH,"install")
+	;;
+*) # (vi
+	cf_save_INSTALL="$INSTALL"
+	CF_PATH_PROG(INSTALL,	install)
+	INSTALL="$cf_save_INSTALL"
+	;;
+esac
+fi
+
+COMPRESS_PROG=
+COMPRESS_EXT=
+if test $use_gzip_help = yes ; then
+	COMPRESS_PROG="$ac_cv_path_GZIP -9"
+	COMPRESS_EXT=.gz
+fi
+AC_SUBST(COMPRESS_PROG)
+AC_SUBST(COMPRESS_EXT)
+
+if test $cf_cv_screen = pdcurses ; then
+	CF_HELP_MESSAGE(Special Libraries for PDCurses X11:)
+	CF_PDCURSES_X11
+else
+	CF_TERMIO_AND_CURSES(LYCurses.h)
+fi
+
+### These tests must be run after establishing the curses library.
+if test $cf_cv_screen != slang ; then
+	AC_CHECK_HEADERS($cf_cv_screen/term.h term.h)
+	CF_ALT_CHAR_SET
+	CF_FANCY_CURSES
+	CF_FUNC_CURSES_VERSION
+	CF_NCURSES_BROKEN
+	CF_COLOR_CURSES
+	CF_SIZECHANGE
+	CF_TTYTYPE
+	if test "$use_wide_curses" = yes ; then
+		CF_WIDEC_CURSES
+	fi
+	CF_CURSES_FUNCS( \
+		assume_default_colors \
+		cbreak \
+		define_key \
+		delscreen \
+		getattrs \
+		getbegx \
+		getbegy \
+		keypad \
+		napms \
+		newpad \
+		newterm \
+		pnoutrefresh \
+		resizeterm \
+		touchline \
+		touchwin \
+		use_default_colors \
+		use_legacy_coding \
+		wattr_get \
+		wborder \
+		wredrawln \
+		wresize \
+		)
+	AC_CHECK_FUNCS( \
+		_nc_free_and_exit \
+		_nc_freeall \
+		)
+fi
+
+if test $use_color_style != no ; then
+	if test .$cf_cv_color_curses != .yes ; then
+		AC_ERROR(Configuration does not support color-styles)
+	fi
+	if test $cf_cv_screen = slang ; then
+		AC_ERROR(Configuration does not support color-styles)
+	fi
+fi
+
+if test $use_scrollbar != no ; then
+	if test .$cf_cv_fancy_curses != .yes ; then
+		AC_MSG_WARN(Configuration does not support ACS_xxx definitions)
+	else
+		AC_DEFINE(USE_SCROLLBAR)
+	fi
+fi
+
+# use rpath for libraries in unusual places
+CF_DISABLE_RPATH_HACK
+
+### Finally, build config.h and the makefiles
+test -z "$CONFIG_SHELL" && CONFIG_SHELL=/bin/sh
+AC_SUBST(CONFIG_SHELL)
+
+CFLAGS="$CFLAGS $EXTRA_CFLAGS"
+srcdir="$srcdir"
+SRCDIR_CLEAN="#"
+if test -n "$srcdir" ; then
+	echo srcdir is $srcdir
+	mkdir -p WWW/Library/Implementation
+	mkdir -p src/chrtrans
+	test "$USE_INCLUDED_LIBINTL" = yes && mkdir -p intl
+	test "$srcdir" != "." && SRCDIR_CLEAN=""
+fi
+
+AC_SUBST(SRCDIR_CLEAN)
+AC_OUTPUT(
+	[makefile \
+	WWW/Library/Implementation/makefile \
+	src/makefile \
+	src/chrtrans/makefile \
+	$SUB_MAKEFILE
+	],[
+	if test "$USE_NLS" = yes ; then
+	if test "$use_our_messages" = yes ; then
+		echo creating po/makefile
+		rm -f	po/temp$$
+		sed	-e 's%^.*LYMessages.c%	../LYMessages.c%' \
+			-e '$s/\\//' po/POTFILES >po/temp$$
+		sed	-e "/POTFILES =/r po/temp$$" \
+			po/makefile.in > po/makefile
+		rm -f	po/temp$$
+	fi
+	fi
+	],[
+	USE_NLS=$USE_NLS
+	use_our_messages=$use_our_messages
+	]
+)
diff --git a/descrip.mms b/descrip.mms
new file mode 100644
index 00000000..51614bda
--- /dev/null
+++ b/descrip.mms
@@ -0,0 +1,123 @@
+!	Make LYNX hypertext browser under VMS
+!       =====================================
+!
+!	NOTE:  Use [.SRC.CHRTRANS]BUILD-CHRTRANS.COM to create the
+!	       chrtrans header files before using this descrip.mms.
+!
+! History:
+!  01/01/93 creation at KU (Lou montulli@ukanaix.cc.ukans.edu). 
+!  04/12/93 (seb@lns61.tn.cornell.edu)
+!            modified to support either UCX or MULTINET
+!  12/13/93 (macrides@sci.wfeb.edu)
+!	     Added conditional compilations for VAXC vs. DECC
+!	     (dependencies not yet specified; this is just a
+!	      "starter", should anyone want to do it well).
+!  10/26/94 (dyson@IowaSP.Physics.UIowa.EDU) RLD
+!            Updated for AXP/VMS v6.1 and VAX/VMS v5.5-1
+!  12/07/94 (macrides@sci.wfeb.edu)
+!	     Updated for DECC/VAX, VAXC/VAX and DECC/AXP
+!  02/17/95 (macrides@sci.wfeb.edu)
+!	     Updated for v2.3-FM
+!  03/23/95 (macrides@sci.wfeb.edu)
+!	     Replaced references to v2.3.8 or v2.3.9 with v2.3-FM to
+!	     avoid any confusion with official releases at UKans.
+!  07/29/95 (macrides@sci.wfeb.edu)
+!	     Added support for GNUC.
+!  15 Sep 06 (TD)	Cleanup...
+!
+! Instructions:
+!	Use the correct command line for your TCP/IP implementation:
+!
+!	$ MMS /Macro = (MULTINET=1)		for VAXC - MultiNet
+!	$ MMS /Macro = (WIN_TCP=1)		for VAXC - Wollongong TCP/IP
+!	$ MMS /Macro = (UCX=1)			for VAXC - UCX
+!	$ MMS /Macro = (CMU_TCP=1)		for VAXC - OpenCMU TCP/IP
+!	$ MMS /Macro = (SOCKETSHR_TCP=1)	for VAXC - SOCKETSHR/NETLIB
+!	$ MMS /Macro = (TCPWARE=1)		for VAXC - TCPWare TCP/IP
+!	$ MMS /Macro = (DECNET=1)		for VAXC - socket emulation over DECnet
+!
+!	$ MMS /Macro = (MULTINET=1, DEC_C=1)	for DECC - MultiNet
+!	$ MMS /Macro = (WIN_TCP=1, DEC_C=1)	for DECC - Wollongong TCP/IP
+!	$ MMS /Macro = (UCX=1, DEC_C=1)		for DECC - UCX
+!	$ MMS /Macro = (CMU_TCP=1, DEC_C=1)	for DECC - OpenCMU TCP/IP
+!	$ MMS /Macro = (SOCKETSHR_TCP=1,DEC_C=1) for DECC - SOCKETSHR/NETLIB
+!	$ MMS /Macro = (TCPWARE=1, DEC_C=1)	for DECC - TCPWare TCP/IP
+!	$ MMS /Macro = (DECNET=1, DEC_C=1)	for DECC - socket emulation over DECnet
+!
+!	$ MMS /Macro = (MULTINET=1, GNU_C=1)	for GNUC - MultiNet
+!	$ MMS /Macro = (WIN_TCP=1, GNU_C=1)	for GNUC - Wollongong TCP/IP
+!	$ MMS /Macro = (UCX=1, GNU_C=1)		for GNUC - UCX
+!	$ MMS /Macro = (CMU_TCP=1, GNU_C=1)	for GNUC - OpenCMU TCP/IP
+!	$ MMS /Macro = (SOCKETSHR_TCP=1,GNU_C=1) for GNUC - SOCKETSHR/NETLIB
+!	$ MMS /Macro = (TCPWARE=1, GNU_C=1)	for GNUC - TCPWare TCP/IP
+!	$ MMS /Macro = (DECNET=1, GNU_C=1)	for GNUC - socket emulation over DECnet
+
+.ifdef DEC_C
+COMPILE_DEF = DEC_C
+.else
+.ifdef GNU_C
+COMPILE_DEF = GNU_C
+.else
+COMPILE_DEF = VAX_C
+.endif
+.endif
+
+.ifdef SLANG
+SCREEN_DEF = SLANG
+.else
+SCREEN_DEF = VMS_CURSES
+.endif
+
+.ifdef WIN_TCP
+NETWORK_DEF = WIN_TCP
+.else
+.ifdef CMU_TCP
+NETWORK_DEF = CMU_TCP
+.else
+.ifdef SOCKETSHR_TCP
+NETWORK_DEF = SOCKETSHR_TCP
+.else
+.ifdef UCX
+NETWORK_DEF = UCX
+.else
+.ifdef TCPWARE
+NETWORK_DEF = TCPWARE
+.else
+.ifdef DECnet
+NETWORK_DEF = DECNET
+.else !  Default to MultiNet
+NETWORK_DEF = MULTINET
+.endif !  DECnet
+.endif !  TCPWARE
+.endif !  UCX
+.endif !  SOCKETSHR_TCP
+.endif !  CMU_TCP
+.endif !  WIN_TCP
+
+RECURS_DEFS = /Macro=($(NETWORK_DEF)=1, $(SCREEN_DEF)=1, $(COMPILE_DEF)=1)
+
+lynx :	lynx.exe
+	! Finished Building LYNX for VMS!!!
+
+lynx.exe : library exe
+	@ Continue
+
+library :
+	Set Default [.www.library.implementation]
+	$(MMS) $(MMSQUALIFIERS) /Description = [-.VMS]DESCRIP.MMS $(RECURS_DEFS) Library
+	Set Default [---]
+
+exe :
+	Set Default [.src]
+	$(MMS) $(MMSQUALIFIERS) $(RECURS_DEFS) Lynx
+	Copy /NoLog /NoConfirm lynx.exe [-];
+	Set Default [-]
+
+clean :
+	Set Default [.www.library.implementation]
+	$(MMS) $(MMSQUALIFIERS) /Description = [-.VMS]DESCRIP.MMS clean
+	Set Default [---]
+	Set Default [.src]
+	$(MMS) $(MMSQUALIFIERS) clean
+	Set Default [-]
+	- Purge /NoLog /NoConfirm
diff --git a/docs/CHANGES2.3 b/docs/CHANGES2.3
new file mode 100644
index 00000000..f1a480a2
--- /dev/null
+++ b/docs/CHANGES2.3
@@ -0,0 +1,458 @@
+--- RELEASE of 2.3  (19-May-1994) ---
+5-19-94
+* Better memory allocation routines used for some VMS systems.
+5-19-94
+* Non-interactive (-source) access to documents requiring access authorization
+  not allowed to avoid crashes.
+3-30-94
+* Lynx exports the environment variable LYNX_VERSION on UNIX systems
+  with the current version number as the value.
+3-29-94
+* added "action=" handling to ISINDEX tags.  (Is that in the spec?)
+3-27-94
+* fixed Telnet security problem
+3-19-94
+* added .mailcap and mailcap support as well as mime.types support
+  for the configuration of viewers and extension mappings.
+  The test command is now implemented so that viewers can be conditionally
+  setup.
+3-17-94
+* Revamped the FTP code to recognize different server types and to parse
+  full directory listings (LIST output).  File types, sizes and dates
+  are displayed when possible.
+3-16-94
+* added transparent support for mosaic bookmark files.  Just point
+  Lynx at your existing default mosaic bookmark file and Lynx will
+  handle the rest.  Viewing, addition, and removal are supported.
+3-15-94
+* added second line of reverse video to show multiline links better.
+3-10-94
+* added configurable MIME types and viewers to lynx.cfg.  MIME types
+  and VIEWERS can be configured by following the instructions within
+  the newest lynx.cfg file.
+3-?-94
+* added second %s argument to PRINTER and DOWNLOADER definitions.
+  If a second %s is present in the command definition it will be
+  filled in by a suggested filename which is derived from the URL
+  of the document.  See lynx.cfg for more details.
+3-?-94
+* got code from CERN to fix HTBTree FTP bug.  Large ftp lists should
+  not crash anymore.
+3-9-94
+* added no_proxy environment variable.  set it to a comma delimited list
+  of domains or hosts that should not be proxyed. (Thanks CERN :)
+  USAGE: (UNIX)
+     setenv no_proxy "domain1.dom, domain2.dom, domain3, etc"
+3-?-94
+* Fixed Referer: field handleing so that it doesn't crash on really
+  long URL's
+3-?-94
+* True popup menus are now supported for non-multiple SELECT lists.
+2-28-94
+* fixed the delete-a-bookmark command and bound it to 'r' for remove.
+  (thanks to David Trueman for the fix)
+
+---------- RELEASE of 2.2 ------------------
+2-9-94
+* added 'd' for download current link.  Can be used to force a download
+  of any file.
+* 'r' removed as a comment key.  Use 'c' or reconfigure your keys to
+  add 'r' back in.  (I would like to use 'r' in the future to mean
+  remove current bookmark link)
+* Found the bug in the HTTP redirection code that was causing it
+  not to work.  So HTTP redirection appears to work now!
+* Added Referer: header to HTTP requests to list the URL of
+  the document listing the requsted URL.   Here's an extract from CERN:
+     This optional header field allows the client to specify,
+     for the server's benefit, the address ( URI ) of the document
+     (or element within the document) from which the URI in the
+     request was obtained.
+
+     This allows a server to generate lists of back-links to documents,
+     for interest, logging, etc.  It allows bad links to be traced
+     for maintenance.
+
+2-8-94
+* changed novice line to be displayed on bottom two lines with the
+  status line moved up two lines.
+1-27-94
+* Made configurable keymappings a reality.  Keys can be remapped in
+  the lynx.cfg file.  (diffs from David Trueman)
+* Got code from Foteos to make 'a' work for VMS connection interrupts.
+1-24-94
+* Moving closer towards configurable keymappings.  New keyhandleing
+  code will make it very easy to implement. (diffs from David Trueman)
+1-14-94
+* Lynx FTP now supports PASV code. (fixes to CERN (Dave Raggert?) PASV code
+  from John Ellson)  It is not enabled by default.  Line 43 in
+  WWW/Library/Implementation/HTFTP must be commented out for
+  PASV code to be used.  This was done because not all FTP sites
+  can support PASV FTP.
+1-13-94
+* slight change in forms user interface.  For the better, I hope you will
+  agree.  Text input fields are now active as soon as the cursor pointer
+  is over them.  Therefore you may begin typing into the text field
+  as soon as you come to it.  Tab, and up and down arrow keys will
+  move off of the text input field.  The only problem with this is as
+  follows.  If you are in the habit of using the number keys (keypad)
+  the or h,j,k,l vi keys, as soon as you move over the text link
+  you will begin seeing numbers or hjk or l show up in the text field.
+  In other words, your movement commands are now broken :(  You must
+  use true arrow keys or the tab key to move off of the text field.
+  I've tried this out and it seems to work alright.  I don't think
+  that users unfamiliar with this will have too hard a time figureing
+  it out.  Once you see numbers or letter appearing it becomes fairly
+  obvious whats going on.  I'll put a message at the bottom of the
+  screen saying "use tab or arrow keys to move off of link."
+* added mods by David Trueman to implement -restrictions commandline
+  option.  -restrictions allows a list of services to be disabled
+  selectively. -restrictions takes the form of
+  "lynx -restrictions=[default],[all],[inside_telnet],[outside_telnet],[shell],\
+	[editor],[bookmark],[option_save],[print],[file_url],[download],[exec]"
+
+   all             restricts all options.
+   default         same as commandline option -anonymous.  Disables
+	           default services for anonymous users.  Currently set to,
+	           all restricted except for: inside_telnet, outside_telnet, and
+	           goto.  Defaults settable within userdefs.h
+   inside_telnet   disallow telnets for people coming from inside your
+		   domain.
+   outside_telnet  disallow telnets for people coming from outside your
+		   domain.
+   shell	   disallow shell escapes
+   editor	   disallow editing
+   bookmark	   disallow changing the location of the bookmark file.
+   options_save    disallow saving options in .lynxrc
+   print           disallow most print options
+   goto            disable the 'g' (goto) command.
+   file_url        disallow using G)oto to go to file: URL's
+   download        disallow saving binary files to disk in the download menu.
+   exec            disable execution scripts
+   exec_frozen     disallow the user from changing the execution link
+		   setting in the O)ptions menu.
+1-12-93
+* added new more informative messages for form links.
+1-11-93
+* fixed -dump and -source options so that they work for
+  binary files now.
+* Interruptable I/0 now completely works for UNIX systems.
+  VMS is next.  Just hit an 'a' for abort anytime during a
+  transfer to abort.  If there is a partial file to show, it
+  will be shown.
+* Added command line option -show_curser.  If enabled the curser
+  will not be hidden in the right hand corner but will instead
+  be positioned at the start of the currently selected link.
+  show curser is the default for systems without FANCY_CURSES
+  capibilities, and the default configuration can be changed in
+  userdefs.h
+1-9-93
+* Added NNTP posting capibilities.  Currently uses external inews
+  program which will be included in the utils directory.
+  Would someone like to patch in some freeware inews code, or
+  send me some?
+1-7-93
+* fixed bug in password handling which cuased it to be displayed
+  accidentally :(  (Danny Mayer)
+1-6-94
+* bold and emphasis now use curses underlining to represent
+  ephasized text.  The use of _underline_ chars before and after
+  the text is now removed.
+1-5-94
+* Added configurable download menu so that binary files may
+  be downloaded using any protocal.  Download menu is displayed
+  after selecting a non-displayable file.
+* Added exec links.  4 types currently defined:
+    files ending in:  .csh, .ksh, .sh, (for UNIX)  and .com (for VMS);
+  Use exec link controls to turn on and off exec links.
+* Gopher menues are now within PRE so that spaces are not
+  collapsed in menu entries.
+* added configurable character sets.  Can be set in lynx.cfg
+  by the user in the options screen or in the users .lynxrc file
+  current sets are: ISO Latin I, IBM PC Character set, & 7 bit
+  approximations.  New sets can be added to src/LYCharSets.c
+
+----------RELEASE of Lynx 2.1 and 2.1.1----------------------
+-grey area-
+* Ability to FTP to VMS systems. (Foteos Macrides)
+* Fixed lots of display and interupt problems (Foteos Macrides)
+* The Lynx Bookmark file is now interpreted as an HTML document.
+  Old Lynx bookmark files must be converted using the lynx2html
+  program or deleted.
+* HTML+ forms as implemented by XMosaic now work.
+  fill in the empty spaces and press the submit button to
+  submit the form.
+* The TEXTAREA tag isn't done yet.  It will currently only
+  give a one line text area.  The next version of Lynx will
+  include a true textarea implementation once I figure out a
+  reasonable interface.
+* Incorporated WWWlib 2.14 and fixed up the descrip.mms files.
+  Foteos Macrides made VMS port changes and wrote a really nice
+  build.com script to make compilation on VMS systems really easy.
+  Foteos also ported Lynx to OpenVMS for alpha axp systems.
+* 's' now means search a searchable indexed document through the
+  server, and can no longer be used to search for strings within
+  the displayed document.
+* '/' now only searches through the current displayed document for
+  strings and can not be used for searchable index documents.
+* Capital 'Q' now quits without asking for confirmation.
+* 'm' for Main Menu now askes for confirmation and does NOT clear
+  the history stack.
+* Blockquote style changed slightly.
+* fixed bug with A and other tags messing up formatting
+  withing PRE segments.
+* Verbose Gopher option removed, verbose gopher functionality
+  is now set permenantly on.
+* Default editor is now configurable in the lynx.cfg file.
+* Default bookmark file is now configurable in the lynx.cfg file.
+
+12-15-93
+* ownership is no longer inherited.
+* link rev="owner" href="mailto:ADDRESS" now accepted as well as
+  link rev="made" href="mailto:ADDRESS" to define the URL of the
+  owner or person responsible for the info.
+* 's' now only searches ISINDEX server documents.
+* '/' always means search within the document.
+
+-grey area-
+* still doing massive rewrite.  Debugging!!
+
+11-30-93
+* anonymous users cannot change the bookmark page! (thanks to Jyrki Kuoppal for
+  pointing out a security hole)
+
+-grey area-
+* massive rewrite.  Removed all Lynx internal format code and
+  restructured all the source files.
+
+11-8-93
+* added &nbsp; (non-breaking space), &ensp; and &emsp;
+
+---------- RELEASE of 2.0.12 -----------------
+11-1-93
+* Change HTInit.c so that unsupported types are not sent out
+  in accept parameters.  For non X screen only text/html and
+  application/octet-stream are sent.
+
+10-26-93
+* descriptive title added to files mailed from lynx
+
+10-25-93
+* disabled FTP connection caching to help fix multiple FTP problems
+
+10-23-93
+* added preliminary level 1 forms support.
+
+10-20-93
+* fixed a bunch of gopher holes
+* gopher lists are turned into URL's now instead of lynx
+  internal format document links
+* local documents ending in .html can now be referenced with
+  just a filename and/or path from the command line.
+
+10-19-93
+* Added preloaded searches to gopher URL's.  They previously
+  didn't work.  This is readily apparent as preloaded CSO
+  searches, which alot of people wanted.
+* removed old hytelnet compatibility code which looked in
+  multiple directories to find the correct file.  If you still
+  need this capibility talk to me.
+
+10-12-93
+* The users specified editor is now spawned for mail messages.
+  If no editor is defined or if the user is anonymous, the built-in
+  lynx mail sender is used.
+
+10-11-93
+* changed all static data structures to be dynamic
+  This was a pretty major change of code which may add several
+  bugs.
+* rewrote parse_links routine to make it more efficient and to
+  work with dynamic structures.
+
+10-6-93
+* added progress messages to HTTP transfers.
+
+10-5-93
+* added -cache=# command line option to specify the number
+  of WWW documents cached in memory.
+
+9-28-93
+* added VMS port fixes from Foteos Macrides.  Lynx now
+  compiles and works on VMS!
+* fixed ftp bug in WWWlib that didn't de-escape URL's before
+  sending request to FTP server.
+
+9-21-93
+* fixed coredump bug for some files with no links.
+
+9-3-93
+* Moved many configuration options including printer setup to
+  lynx.cfg file.  The default placement of the lynx.cfg file
+  will be /usr/local/lib & sys$public
+
+9-1-93
+* Removed STARTDIR variable from userdefs.h  STARTDIR is now inferred
+  from the STARTFILE.
+
+8-30-93
+* Fixed bug with only one link selectable out of many on the last line
+  of the display.
+* Ported to SVR4 courtesy of Nickolay Saukh (from Russia, Wow this is
+  really getting around!)
+* Uneditable documents don't get refetched. (Nickolay Saukh)
+* National language support through LOCALE
+  (instead of ISOLATIN1), protected by #ifdef LOCALE (Nickolay Saukh)
+
+------Release of Lynx 2.0.11--------------------------------
+8-27-93
+* Caused major international incident when a large bug was discovered after
+  release. :)
+* Fixed internal document hypertext refernces with URL's.  '#selector'
+  strings now work again.
+
+8-24-93
+* When files come through on pre HTTP/1.0 servers they are now
+  recognized by their file extensions
+
+8-23-93
+* Lynx can now speak to old NCSA pre HTTP/1.0 servers
+* fixed ALT bug that had to do with style changes not
+  happening before the alt was printed.
+
+8-21-93
+* updated the man file lynx.1.
+
+8-19-93
+* updated help and converted it to HTML.  Made a new help location and
+  server.  The new default help file is
+  http://kufacts.cc.ukans.edu/lynx_help/lynx_help_main.html
+
+8-15-93
+* changed '\' to toggle between source and no source.  When you press
+  '\' while viewing a rendered HTML document you will get the HTML source
+  when you press '\' while viewing HTML source you will get the
+  rendered HTML.
+* Added ALT attribute to IMG tag.  When ALT is available the contents
+  are displayed.  When ALT is missing [IMAGE] is displayed.  When
+  ALT="" nothing is displayed.
+
+8-14-93
+* Added document reload command.  CTRL-R when pressed will reload
+  the document into memory and redisplay it, clearing the screen.
+  This is very useful when editing documents, outside of Lynx while
+  using Lynx for rendering.
+* Added source view mode.  '\' when pressed will reload the document
+  and display the HTML source. (doesn't work for gopher directoryies right
+  now, but gopher isn't HTML anyways)
+* fixed bug in LibWWW that caused it not to be able to convert to
+  www/source.
+* fixed bug in LibWWW that caused most binary file transfers to fail
+* added binary file transfer ability.  When binary files are selected
+  the user is prompted for a file name to save to.  The default directory
+  is the one the user started in.
+* Lynx now reloads local HTML files and re-renders them after editing.
+
+??-??-??
+* At some point I added the ability to edit HTML files on the local
+  machine.
+
+8-12-93
+* Added Nested Lists, up to six levels, with different bullets
+  for each level.
+* Due to the fact that nearly everyone seems to use P to mean
+  two returns within the same style, and Mosaic has been kind
+  enough to support this meaning, :( :( :(  I have changed
+  the P tag to reflect this interpretation.  P can be used
+  anywhere and will mean insert two returns.  (i.e., two BR tags)
+
+8-11-93
+* Made the default Mime type for unknown file types on ftp servers
+  to be text/plain.  Previously the WWWLibrary had the default
+  as application/octet-stream which meant that most files could not
+  be viewed.
+* Changed the ADDRESS style to be more like XMosaic
+  Left flush, newline top and bottom
+* The Statusline now displays the URL when retrieving files.
+* added BR (linebreak) tag!
+  The BR tag inserts a line break and maintains the current style!
+  The BR tag may be used anywhere.
+* added HR (horizontal rule tag!)
+  The HR tag puts a horizontal line seperating two bodies of text.
+  The HR tag may be used anywhere.
+
+8-8-93
+* All spaces, tabs and returns are now collapsed down do one
+  space.
+* fixed bug whiched caused certain links beginning at the
+  begining of a line to be bad.
+* added '*' (stars) to unordered lists and numbers to ordered
+  lists.
+* changed dir lists to be more like menu lists.
+* all emphasis, physical and symantic, now have _underlines_
+  around them to show emphasis.
+
+
+RELEASE OF VER 2.0.10 -----------------------------------------------
+
+7-8-93
+Added [IMAGE] in all places where IMG tags appear.
+added WWW_HOME environment variable support.
+fixed searching in WWW.
+removed tildas from mail messages for security reasons.
+added emacs-like key defs.
+changed gopher dir routines and Verbose format of directories
+
+6-30-93
+Forgot to put all kinds of bug fixes and stuff in here during the
+past month.  I have been working on upgrading to the 2.X WWWlibrary
+Today I changed 'g' to mean goto a url, and 'v' to be view the
+bookmark page.
+
+5-30-93
+Fixed problem with ftp: URL not being recognized and not working.
+
+5-28-93
+Tried to remove the use of tabs and replace them with appropriate
+spaces.  This was done to support brain dead curses packages that
+don't handle tabs. (like linux)
+
+5-20-93
+Fixed socket problem which was causing a problem with telnet's
+connecting
+
+5-18-93
+Fixed SUN curses problem, now works with the /usr/5lib routines
+
+4-9-93
+Added an option to turn on link numbering
+
+4-7-93
+Fixed read_rc() bug which caused .lynxrc files to be read incorrectly
+Fixed file cacheing bug which only allowed searching to be performed
+once.  (it cached the answer and displayed that each time a new
+search was requested)
+
+4-2-93
+Fixed VMS I/O bug and TCP routines.
+
+4-1-93
+Ported 2.0 to VMS
+
+3-17-93
+Fixed a bug: Multiply defined procedure async_abort in
+the files get_file and get_bin_file
+
+3-16-93
+Optomized Gopher TCP routines, increased speed by a factor of 10!
+
+3-9-93
+Added WWW support by integrating the WWWlib1.4
+
+2-10-93
+Added home page support and append features.
+
+12-22-92
+Added support for Image types using xloadimage for X-terminals.
+
+12-1-92
+Added gopher binary file types
diff --git a/docs/CHANGES2.4 b/docs/CHANGES2.4
new file mode 100644
index 00000000..19221e36
--- /dev/null
+++ b/docs/CHANGES2.4
@@ -0,0 +1,891 @@
+--- Rename of Lynx2-3-FM and release as Lynx2-4  (08-June-1995) ---
+==============================================================================
+06-08-95
+* All of the changes from lynx2-3-FM are now located at ftp2.cc.ukans.edu.
+  We will call this version lynx2-4 and all new changes will be added here.
+  - JP
+06-05-95
+* Added isc support based on post to lynx-dev from Ami Fischman
+  (a540ami@pic.ucla.edu). - FM
+06-04-95
+* Initialize t1->name before the StrAllocCopy() in LYMainLoop.c for
+  DIRED_SUPPORT tagging. - Rick Mallett (rmallett@ccs.carleton.ca)
+* Don't bother creating a /tmp copy of local files for downloading
+  under the DIRED_SUPPORT, and don't include "Save to disk" in the
+  download menu for such files. - RM
+* Deal with any newlines or tabs in statusline messages, along lines
+  in patch from Peter Marquardt. - FM
+* Various fixes to ensure terminations of strings, along lines suggested
+  by PM. - FM
+* Made HTAlert messages more readable in trace mode.
+* Replaced info.cern.ch with www.w3.org in userdefs.h and lynx.cfg. - GL
+* Allow definition of the global configuration file (lynx.cfg) path and
+  name via a "LYNX_CFG" VMS logical or Unix environment variable.  Will
+  override the "LYNX_CFG_FILE" definition in userdefs.h.  The -cfg command
+  line switch will override those.  SYS$LOGIN (VMS) or '~' (Unix) can be
+  used in the path to treat the global configuration file as a personal
+  configuration file ($HOME will be substituted for '~'). Meets objective
+  in patch posted by Danny Meyer (mayer@ljsrv2.enet.dec.com) but does
+  not seek lynx.cfg in the user's HOME directory without an explicit
+  directive to do so.  Issue a screen message and then exit if the
+  configuration file is not readeable (rather than continuing as if
+  one had been found and read). - FM
+* Added protections from NAMEless INPUT or TEXTAREA tags. - FM
+05-29-95
+* Changed close(*s) typo in HTTCP.c to NETCLOSE(*s).  Caused tight loops if
+  on error *s became stdin. - Peter_Marquardt (wwwutz@cha01.tfh-berlin.de)
+05-20-95
+* Mods of proxying/gatewaying code, replace obsolete info.cern.ch default
+  URL addresses with www.w3.org, and add option to use the new www.w3.org
+  wais search gateway in cover page for wais searches. - FM
+05-10-95
+* If a startfile specified on the command line maps to a MIME type
+  which invokes an alternate display device, allow -homepage, if also
+  specified, to be substituted for startfile on quiting from the display
+  device, rather than forcing an exit due to the original startfile having
+  been neither text/html nor text/plain.  Based on a patch from GL, with
+  protections against possible infinite getfile() loops added. - FM
+* Include -t switch when pico is the editor for reply_by_mail() in
+  LYMail.c. - GL
+05-04-95
+* Oops.  Had zipped the wrong LYReadCFG.c in yesterday's mods. - FM
+05-03-95
+* Do not override any external proxy and no_proxy variables with those
+  in lynx.cfg.  Bug fixes in code for setting proxy variables on Unix,
+  based on patches from Roman Czyborra (czyborra@cs.tu-berlin.de). - FM
+* Fixes for tagging when Lynx jumps to another screen and then comes back,
+  and deal with possibility of screen outputs from compress/decompress
+  utilities. - GL
+* Added support for Sequent's DYNIX/ptx operating system, and bug fixes
+  in HTTCP.c's BSDselect(). - Rodney Barnett (RBarnett@us.teltech.com)
+* Increased limits in select() loops to 5000 tries. - FM
+* Specify /nomember for compilations with DECC.  It's not the default
+  on AXP and the code assumes byte alignment. - FM
+04-19-95
+* Added Alan Hirsh's script (LynxDir:VMSPrint.com) for dealing with busy
+  VMS print queues such that Lynx might otherwise delete the temporary
+  file before it has been queued for printing. - FM
+* Added lots of type casting to the mathematical operations in GridText.c
+  to minimize possible sizing/alignment problems for DECC/AXP (and any
+  Unix flavors that use the Alpha chip). - FM
+04-17-95
+* Use  test=test -z "$LYNX_VERSION"  like  test=test -n "$LYNX_VERSION"
+  in mailcap files simply as flags for non-LYNX versus LYNX environment,
+  without actually bothering to execute a test. - FM
+* Issue "** Bad HTML!!!  Use -trace to diagnose. **" statusline messages
+  when bad HTML is encountered, and suppress those statusline messages in
+  favor of the TRACE messages when -trace is used. - FM
+* Fixed anchor deletion problem in yesterday's ISMAP mods. - FM
+* Removed -ltermcap from AIX makes (AIX doesn't use it). - FM
+04-16-95
+* Send a 0,0 coordinate pair if a user clicks on an ISMAP link, so that
+  it's handled equivalently to clicks on an ISMAP submit button, and
+  (typically) will return the server's default.  Note that the default
+  often is the parent document, and if so, the current document will
+  be returned via redirection (pointlessly 8-).  However, this mod
+  allows the WebMaster to use a pure-text document as the default for
+  Lynx. - FM
+* Protections against crashes for inappropriately positioned form tags. - FM
+* Fixes in handling of configurable INEWS path. - FM
+* Support for VT500 series terminals. - George Cook (cook@wvnvaxa.wvnet.edu)
+04-12-95
+* Makefile tweaks for bsdi and aix4. - FM
+04-11-95
+* Mods for building with BSD Interative (bsdi). - FM
+04-08-95
+* Added translation of HTML entities and decimal escaping for the
+  VALUEs of INPUT and OPTION tags. - FM
+* For TYPE="image" INPUT tags, use "[IMAGE]-Submit" as a pseudo-ALT
+  string, and submit a 0,0 coordinate pair if it's clicked, which
+  typically will invoke the server's default (I guess something is
+  better than nothing. 8-). - FM
+* Handle (possibly multiple) angle brackets in bookmark and showinfo
+  link names. - FM
+* Fixed typo in for-ultrix code in LYMain.c. - FM
+04-04-95
+* Added ability to set proxy environment variables via lynx.cfg. - FM
+04-01-95
+* Added handling of the HTML 3.0 attributes for ISINDEX tags:
+      ISINDEX HREF="reference" PROMPT="string"
+  The ACTION attribute didn't make it into HTML 2.0.  For now, we'll keep
+  supporting it in Lynx by treating it as a synonym for HREF. - FM
+03-31-95
+* Mods for AIX v4.1.1 and addition of make aix4. - FM
+* Added prototype and extern declarations for BSDselect(). - FM
+* Fixed bugs in form_getstr() that could clobber the stack. - GL
+* Fixes for symlink handling. - GL
+* Made LYShowInfo.c aware of the setuid, setgid and sticky file modes,
+  and nicer mode display if the file doesn't have the read bit set. - GL
+03-30-95
+* Fixed glitch in BASE tag handling. - FM
+03-29-95
+* Initialize pointers in add_trusted() of LYGetFile.c before the
+  StrAllocCopy() calls. - FM
+03-26-95
+* Miscellaneous TRACE and related messaging tweaks. - FM
+03-24-95
+* Handle defaulted localhost in file BASE tags, and related tweaks of
+  defaulted localhost handling in file URLs. - FM
+* Use RM_PATH for both file and directory deletions with the DIRED_SUPPORT
+  remove function. - GL
+--- STARTING  2.3-FM ---
+==============================================================================
+03-23-95
+* Designate this code set as lynx2-3-FM to avoid any confusion with the
+  official releases at UKans. - FM
+* Tweaks of code for defaulted localhost in file URLs.  Don't require
+  any host field marker in such URLs - FM
+03-21-95
+* Added handling of defaulted localhost in file URLs. - FM
+* More protections against bad HTML. - FM
+* SYSLOGing enhancements. - GL
+* Suspend curses during my_spawn()'s, and fixes of code for the child
+  and error return detection. - GL
+03-20-95
+* More protections against potentially infinite loops. - FM
+03-16-95
+* Enhancements of 'c'omment and mailto handling. - FM
+* Mods to build.com for enabling submission to BATCH. - FM
+* Ultrix terminal-handling fix. - Roman Czyborra (czyborra@cs.tu-berlin.de)
+03-15-95
+* Fixed bug in for-Unix directory listing code to screen out inaccessible
+  parent directories.  Was also being applied to ftp listings. - FM
+* Made bolding of H1 through H7 headers a lynx.cfg option, with the
+  non-bolding as the compilation default. - FM
+03-13-95
+* Fixed bug in setting link[].lname elements to empty strings for form
+  INPUT_ANCHORs.  Was causing showinfo() to report the links from the
+  previous document (yet another memory leak bites the dust 8-). - FM
+* Numerous fixups of bold and underline handling. - FM
+03-09-95
+* Increased the while() loop limit for select() tries in HTTCP.c to 500. - FM
+* Memory allocation/free fixes in HTAccess.c. - FM
+* Makefile and documentation tweaks. - FM
+03-07-95
+* Implemented HT_BOLD when specified for headers in DefaultStyle.c.  H1 is
+  now uppercase, bold, and centered.  H2 - H7 are lower or mixed case, bold,
+  and progressively indented. - FM
+* Miscellaneous enhancements of menu displays. - FM
+* Allow tabs and '$' in lynxexec commands. - FM
+* More TOUPPER/TOLOWER fixes. - FM
+03-06-95
+* Added ability to set the INEWS path in lynx.cfg. - FM
+03-05-95
+* Separated the newspost URL into newspost versus newsreply, and modified
+  LYNews.c to behave more rationally for new versus followup posting. - FM
+* Added "mode reader" command for news list and article requests. - FM
+* Enabled saving of list_dir_style settings in the user's RC file. - FM
+* Don't restrict rearming SIGINT in LYClean.c for IGNORE_CTRL_C to just
+  SVR4. - FM
+* Added numerous protections against core_dumps/ACCVIOs in HTML.c for bad
+  HTML.  Should also help reduce likelihood of infinite while() loops and
+  a runaway CPU if binary files are mistyped and rendering is attempted. - FM
+* Added (unsigned char) type casts in addch() calls for proper handling of
+  high value ISOLATIN1 characters. - FM
+* Limited the while() loop for select()'s in HTTCP.c to 50 tries, to help
+  reduce likelyhood of a runaway CPU on undetected terminal disconnects. - FM
+* Fixed typo in build.com. - FM
+* Added Craig's lynx_help and about_lynx files for the lynx2-3-7 distribution,
+  updated for lynx2-3-9 BETA. - FM
+--- STARTING  2.3.9 BETA ---
+==============================================================================
+02-20-95
+* Updated doc files and passed on to UKans for archiving on the
+  ftp2.cc.ukans.edu server as 2.3.8 BETA. - FM
+02-17-95
+* Further updates of building procedures for VMS. - FM
+* Further updates of lynx.man, lynx.hlp and documentation.  Indicate
+  that the inside_foo and outside_foo restrictions are not selective
+  on systems which lack utmp. - FM
+* Changed yesterday's DGUX define fo DGUX_OLD, because only older
+  Data General systems need it. - FM
+02-16-95
+* Added Jeff's updates of lynx.man and lynx.hlp, further updated for
+  v2.3.8 - FM
+* Fixed typos in LYMail.c and HTTPC.c. - FM
+* Cleaned up #ifdef'ing for -DIGNORE_CTRL_C. - FM
+* Added -DDGUX for using inet_addr(host).s_addr instead of inet_addr(host)
+  in HTParseInet() of HTTCP.c (Data General may need it). - FM
+* Don't report "-help" as an invalid option. - FM
+02-15-95
+* Handle HTML entities and decimal escaping in ALT strings. - FM
+* Build fixups for TCPWARE. - FM
+02-14-95
+* Added transmission of Accept-Language headers.  A default preferred
+  language is defined in userdefs.h.  It can be overridden via lynx.cfg.
+  Users can change that via the 'o'ptions menu and save their preference
+  in their RC file. - FM
+* Tweak of FIXED record handling on VMS. - FM
+* Defined Unix ZIP_PATH and UNZIP_PATH in userdefs.h. - FM
+02-12-95
+* Added  -localhost  switch for restricting access to files and servers
+  on the local host. - FM
+* Added  -nobrowse   switch for disabling directory browsing. - FM
+* Added  -selective  switch for requiring a .www_browsable file in
+  each directory for browsing access to it.  The enabling files
+  are not included in the directory listings. - FM
+* Fixed up displaying of README files in directory listings on
+  VMS. - FM
+* Replaced all tolower() and toupper() calls with the TOUPPER() and
+  TOLOWER() macros in HTUtils.h (should help deal with some of the
+  strange behavior reported for some flavors of Unix; see header of
+  HTUtils.h). - FM
+Worked in mods from David Trueman (david@cs.dal.ca) - FM:
+* Don't issue the ../ link in Unix local directory listings if the parent
+  directory is not readable (was already dealt with on VMS - FM).
+* Include an Organization: header in Unix news postings, if possible
+  (was already dealt with on VMS - FM).
+* Don't allow the editing of Unix mail headers because that is error
+  prone (no change on VMS; editable pseudo-headers are included for
+  informational purposes, but the real headers are those of the
+  account running Lynx - FM).
+* Don't hardcode the Unix mv command; use MV_PATH define in userdefs.h.
+* Moved the Unix COPY_COMAND define to userdefs.h as COPY_PATH.
+* Completed the Unix ZIP support.
+02-10-95
+* Added code for converting the headers of downloaded binaries on VMS
+  to indicate FIXED 512 record format.  See the documentation in
+  userdefs.h, lynx.cfg and FIXED512.COM for more information. - FM
+02-08-95
+* Fixed glitch in HTInit.c which mis-casted the default MIME type for
+  files with a .sh extension, causing the EXEC_SCRIPT function to be
+  disfunctional. - FM
+* I think I finally have Lynx showing "(p# of N)" properly in the title
+  lines (we'll see if perfection has really been achieved 8-). - FM
+* Extended directory browsing on VMS to the -homepage specification,
+  if included on the command line, e.g., lynx -homepage=sys$login
+  will start up Lynx with the default startfile, but the 'm'ain menu
+  command will yield listings of the home directory. - FM
+* Added -fileversions switch on VMS for including all versions of files
+  in directory browser listings (otherwise, only the highest version is
+  listed, with no version numbers displayed). - FM
+* Modified LYEdit.c to use fopen(filename,"a") instead of access(filename,2)
+  to verify write access for editing files (checking "append" access appears
+  to be a more reliable way to do it across platforms/flavors). - FM
+02-07-95
+* Implemented directory browsing for VMS. - FM
+* Fixed printer command handling to actually prompt for and use a second
+  filename argument if two "%s" strings are in the command map. - FM
+* Added anti-Unix-shell-spoofing code for all of the filename argument
+  handling. - FM
+* Fixed glitch in getenv(DISPLAY) calls on VMS.
+02-04-95
+* Fixed a glitch in BASE support.  Should now work properly when both
+  standard and Lynx-specific hrefs are in the document. - FM
+02-03-95
+* Added support for posting to newsgroups from Lynx on VMS via the
+  ANU-NEWS software. - FM
+* Numerous href parsing enhancements. - FM
+* Enhancements and bug fixes of news displays. - FM
+* Enabled display of Linknames with angle brackets (as for news URLs)
+  in the showinfo page. - FM
+* Ensured that a file URL which is really an ftp URL will yield an
+  "FTP is Disabled" statusline message when it's disabled. - FM
+02-01-95
+* Defined out the LYK_VERSION code and made Control-V a dead key again,
+  since including the Lynx name and version strings in the showinfo ('=')
+  and 'o'ptions displays is adequate, and people on different platforms
+  or flavors associate Control-V with other functions. - FM
+01-31-95
+* Beefed up the BASE support. - FM
+* Made all WWWLib cover pages and menus HTTP/1.0 compliant (to ensure
+  resetting of any BASE tags) and gave them more pizzaz. - FM
+* Trim terminal slashes in ftp paths if not the Welcome directory, so
+  we'll get "Up to" links.  Terminal slashes in file paths still force
+  that directory to be treated as the Welcome directory.  For example,
+   ftp://host/blah/foo/ will have an "Up to blah" link listed, but
+  file://host/blah/foo/ will treat /blah/foo/ as "Welcome" (both ftp
+  and file "Up to" links are blocked by -DNO_PARENT_DIR_REFERENCE). - FM
+* The VMS SOCKETSHR_TCP support can't yet handle telnet, tn3270 or
+  rlogin URL's (Andy Harper is working on it; be patient 8-).  Modified
+  HTTelnet.c to compile properly and behave rationally when such URL's
+  aren't supported. - FM
+* Corrected doc files based on Larry Virden's (lvirden@cas.org) careful
+  (or is it carefull) proof-reading.  Thanks Larry! - FM
+* More type casts for ANSI C compliance. - FM
+01-30-95
+* Added numerous type casts for ANSI C compliance. - FM
+01-29-95
+* Prototyped HTHostName() for yesterday's mods in HTAccess.c. - FM
+* Updated lynx.cfg. - FM
+01-28-95
+* Added lynx name and version to the showinfo page and options menu. - FM
+* Tweaked Danny's news proxying mods for selective no_proxy directives
+  with a port field (119) for news, and added equivalent code for wais
+  (port 210). - FM
+* Updated the INSTALLATION file (I hope people read it 8-). - FM
+* Hadn't included last night's typo fix in the archived fileset. - FM
+01-27-95
+* Added Danny Mayer's (mayer@ljo.dec.com) mods for proper handling of
+  no_proxy directives for news (NNTPSERVER) hosts. - FM
+* Worked in Ari Luotonen's (luotonen@dxcern.cern.ch) mods for sending
+  a "Pragma: no-cache" header for use by a proxy server in conjunction
+  with the RELOAD command. - FM
+* Fixed to handle file URL's appropriately in conjunction with proxying
+  of ftp URL's.  For file URL's on the local host, direct access is
+  attempted, with no ftp attempt if that fails, whether or not proxying
+  is in effect, and whether or not no_proxy directives have been set.
+  Both ftp URL's, and file URL's on a remote host, are sought via ftp
+  without a direct access attempt.  File URL's for remote hosts are
+  converted to ftp URL's before submission to a proxy server, so no
+  special procedure need be implemented to induce the proxy server to
+  act on them (You shouldn't continue using file URL's when you intend
+  ftp, but Lynx will handle such URL's properly when encountered in
+  old documents that use file when ftp is intended.) - FM
+* Fixed typo in yesterday's "psychotherapy". - FM
+01-26-95
+* Escaping of ISINDEX queries needed more tweaks to work properly with
+  high value IsoLatin1 characters. - FM
+* Applied psychotherapy to the schizophrenic behavior that was exhibited
+  when download, upload, print, history or showinfo commands were used
+  during displays of each other's menus or temporary files. - FM
+* Enabled downloading of links from the history page. - FM
+01-25-95
+* Added LYK_VERSION command (^V) for showing version of Lynx. - FM
+* Include file fixes for TCPWARE. - FM
+* Fixed bug in showinfo() which caused core dumps when invoked while
+  positioned on any form field which has a "linkname" but a NULL
+  "filename". - FM
+* Fixed glitch in 'p'rint menu. - FM
+01-24-95
+* Enabled SOCKSification for any Unix flavor via the SITE-LYDEFS,
+  SITE-DEFS and SOCKSLIB definitions in the top-level Makefile.  Added
+  info in INSTALLATION on how to do it for VMS.  Included notes that you
+  are better off building Lynx normally, and instead using a SOCKSified
+  proxy server to get through a firewall. - FM
+* Added instructions in INSTALLATION for setting up proxy service. - FM
+* Fixed multiple submit button handling to distiguish which button was
+  activated when they have the same name, and include only that button's
+  name/value pair in the submission. - FM
+* Figured out how to apply all security and restrictions checks for
+  redirecting URLs returned by ISINDEX searches, and accordingly lifted
+  the bypasses for the previously insecure access types. - FM
+* Added option to use Jerry Whelan's (guru@bradley.edu) BSDselect() for
+  SVR4 systems with the "type any key" problem. - FM
+01-23-95
+* Fixed up escaping of queries in HTSearch(). - FM
+* Updated the sample jumps files. - FM
+* Worked in socksification mods from Reese Ferry (reesef@VNET.IBM.COM) - FM
+* Enabled use of LOCALE for international characters with any Unix flavor
+  (not just sun) via a define in the top level Makefile. - FM
+01-22-95
+* Updated the lynx.cfg configuration file. - FM
+* Implemented BASE handling. - FM
+01-21-95
+* Fixed -cfg switch handling so that the specified, alternate configuration
+  file properly is read instead of the default system file specified in
+  userdefs.h. - FM
+* Made 'p'rint, 'd'ownload and 'u'pload menu lists single spaced. - FM
+* Fixed HTFileFormat() in HTFile.c so that it properly processes the
+  suffix-to-MIME-type mappings when version numbers are in local file
+  URLs on VMS.  We therefore no longer trim off the version number if
+  if was included, and Lynx will now access and process that version
+  rather than only the highest version. - FM
+01-18-95
+* Makefile fixes for convex and linux. - FM
+01-17-95
+* More Makefile fixes. - FM
+01-14-95
+* Fixes for FreeBSD. - FM
+01-12-95
+* Made the "ls -l" emulation in local directory listings a compilation
+  option (see the top level Makefile). - FM
+* Made inclusion of "Up to" parent links in local directory listings a
+  compilation option (see top level Makefile). - FM
+* Message fix for checkmail on Unix. - FM
+* Fixes for SCO with gcc. - FM
+01-11-95
+* Restored original hash table function in HTAnchor.c without (hopefully 8-)
+  reviving anchor deletion problems. - FM
+* Fixed typo in HTAccess.c. - FM
+* Added code in HTFile.c from Timothy Newsham (newsham@aloha.net) for
+  generating long style Unix listings (ls -l). - FM
+01-10-95
+* Escape dashes in lynx.man. - FM
+* Added NetBSD support from Bryan T. Vold (btv@wiley.HealthPartners.COM). - FM
+* Made anchor searches in hash tables case-sensitive (so paths which
+  differ only in their case can be distinguished, as people using the
+  DIRED support kept requesting) without (hopefully 8-) reviving anchor
+  deletion problems. - FM
+01-09-95
+* More Makefile and code fixes for building properly with various systems
+  and compilers. - FM
+01-06-95
+* Numerous fixes for handling signals (e.g., SIGWINCH) received during
+  keystroke fetches, without (hopefully 8-) reviving the problem of
+  runaway CPU's on undetected terminal disconnects. - FM
+* More Makefile and code fixes for building properly with various systems
+  and compilers. - FM
+01-05-95
+* Changed define for syslog() logging to SYSLOG_REQUESTED_URLS and picked up
+  logging of ISINDEX search requests that don't go through getfile(). - FM
+* More fixes for redirection returned via ISINDEX searches. - FM
+* Fixed missing newline character at end of last .lynxrc entry. - FM
+* More Makefile tweaks. - FM
+* More additions in LYCurses.h for compilers which fail to check whether TRUE
+  and FALSE are already defined before defining them in curses.h. - FM
+01-03-95
+* Fix for redirection returned via ISINDEX searches. - FM
+12-29-94
+* Yet more top level Makefile tweaks. - FM
+* Fix bcopy problem for UCX. - Martin Zinser (zinser@vscn.gsi.de)
+* Fix ioctl() problem for UCX. - MZ
+12-27-94
+* More top level Makefile tweaks. - FM
+12-26-94
+* Added Lou Montulli's procedure for PURIFY to the top level Makefile. - FM
+12-23-94
+* Added Lou Montulli's memory leak fixes. - FM
+* Fixed HTLoadedDocumentTitle() call in LYGetFile.c. - FM
+--- RELEASE of 2.3.8 BETA ---
+12-22-94
+* The WFEB code as of 12-15-94 has been archived at UKans as lynx2-3-7,
+  so we'll make this lynx2-3-8 to avoid confusion. - FM
+* Added bookmark_exec restriction for disallowing use of lynxexec URL's
+  in the user's bookmark file or converted Mosaic hotlist. - FM
+* Enable any lynxexec URL in JUMPFILE if EXEC_LINKS has been defined.
+  This allows you to set both LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE
+  to TRUE and a single TRUSTED_EXEC rule that will always fail (e.g.,
+  TRUSTED_EXEC:none), so that *ONLY* the lynxexec URL's in the jumps
+  file will be acted upon. - FM
+* Disallow lynxexec URL's in G)oto if no_shell is set or if
+  LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE is TRUE. - FM
+12-21-94
+* Include LYFLAGS in the BSDI_Makefile. - FM
+* Numerous mods based on patches from David Trueman - FM:
+* Changed SUN4 ifdef for implementing the "reverse clear screen hack" to
+  REVERSE_CLEAR_SCREEN_PROBLEM since not all sun4 systems experience this
+  problem.
+* Changed a few messages to use key_for_func() instead of a hard-coded
+  key mapping.
+* Allow control-C as well as control-G to abort or cancel on Unix (as
+  already on VMS).  On VMS, control-C and control-Y evoke a "Do you really
+  want to quit?" prompt, and a 'n'o reply gets handled as if control-G
+  has been entered in the first place.  On Unix, control-C is treated
+  simply as a synonym for control-G, and control-Y is not an interrupt
+  signal.  This seems the best way to handle those control signals, based
+  on what VMSers versus Unixites would expect them to do.
+* Added code to disallow the writing of files beginning with a dot if
+  NO_DOT_FILES is set TRUE in userdefs.h and/or lynx.cfg.
+* Added possibility of logging URL access via syslog() on Unix (ifdef'd
+  with LOGGING).
+* Improved and made more flexible the security for lynxexec URL's.  The
+  default behaviour is the same as now, but source locations and the path
+  (Unix) or name (VMS) of programs to be executed can be restricted via
+  TRUSTED_EXEC rules in the lynx.cfg file.
+* Convert ~ in lynxexec paths to $HOME on Unix.
+* Several changes in DIRED support.  Tidied and consolidated code.  Changed
+  the way tags are freed (fixing a bug where they did not always get cleared
+  properly).  Changed all programs to *_PATH defines.  Changed the display
+  of tags so they work with numbered links.
+* Added another restriction to disallow telnet port specifications in
+  G)oto URL's.
+* A bit of special case code in jump handling.  If key mapping is G, allow it
+  to be typed as "go target".
+* Change strncmp in remap() to strcmp() (bug fix).
+* Report offending bad option in main().
+* In mainloop(), make \r same as \t and \n.
+* Combine LYK_REMOVE code with LYK_DEL_BOOKMARK so that they can share the
+  same key map.
+* If show_cursor is true, position cursor 1 position before the link, which
+  makes it less likely that the link is obscured in defective terminal
+  programs
+12-15-94
+* More fixes in LYno_attr_char_case_strstr() and LYno_attr_char_strstr() - FM
+* People didn't like having to erase the default WHEREIS ('/') search string
+  when it wasn't what they wanted in a new document (though most didn't know
+  that it can be done easily via ^U), and Lynx doesn't have real editing via
+  LYgetstr() (just deletion from the end of the string), so I got rid of the
+  the editing offer.  The previous search string is still buffered across
+  document fetches, and can be used across documents via NEXT ('n').  You
+  also can use WHEREIS without a search string entry to turn off highlighting
+  within the current document, and then NEXT to restore it.  If control-G is
+  used instead of a blank string to cancel a WHEREIS command, it does not
+  turn off the highlighting.  So everything everyone asked for is now
+  possible (once you figure out how to do it 8-). - FM
+12-14-94
+* Oops!  Fixes in tcp.h for MULTINET with DECC/VAX had left SOCKET_ERRNO
+  undefined for all the other VMS TCPIP packages.  That's what I get for
+  working on this stuff too late at night. - FM
+* Additional ANSI compliance fixes in HTTCP.c for builds with DECC/VAX and
+  non-MULTINET VMS TCPIP packages. - FM
+12-13-94
+* Modified searches for strings within the currently displayed document
+  ('/', as opposed to 's' for ISINDEX searches) so that the highlighting of
+  the search string is not retained when the current document is changed,
+  and added recall buffering of the search string so that it's offered as
+  the default for editing or reuse on subsequent '/' commands.  Also, we
+  now force redraws on invokations of such searches so that hits will be
+  highlighted even if they occur on the current page.  Links with hits such
+  that they have embedded highlighting of the search strings will not have
+  the embedded highlighting restored when the cursor is moved onto and then
+  off of them (helps to distinguished whether it's intended or the due to
+  the search), but will be restored whenever the page is redrawn.  All
+  embedded highlighting also is restored when the 'n'ext command is used to
+  repeat the search in the current document, even if the returned hits do not
+  cause a page change.  Note that these searches first search only the links,
+  and position you on the first link with a hit occurring after the current
+  link.  If there were no hits in the links, then the text is searched and
+  the first hit occurring after the current link is positioned at the top of
+  the page.  They never did, and still do not, search both the link and text
+  portions of the document simultaneously.  Also note that ISINDEX searches
+  never have and still do not yield highlighting of the query string(s) in
+  the returned document.
+* Fixed LYno_attr_char_case_strstr() and LYno_attr_char_strstr() in
+  HTStrings.c so that they properly ignore any attribute characters in
+  the comparison string and return a pointer to the correct location
+  of a match with the target string. - FM
+12-12-94
+* Modified FTP gateway to display 230- as well as 250- information/help
+  messages, and on non-Unix as well as Unix systems. - FM
+--- RELEASE of 2.3.7 BETA ---
+12-11-94
+* Further tweaked explanatory comments in the configuration and samples
+  files, and updated the instruction files. - FM
+12-09-94
+* Modifed PassesTest() in HTInit.c to avoid the overhead of system() calls
+  by using getenv() when   test -n "$DISPLAY"   and   test -z "$DISPLAY"
+  commands are encountered in the mailcap file.  Otherwise, needlessly
+  expensive system() calls potentially could be made for virtually every
+  viewer mapping in that file!.  For Lynx, those two strings in the mailcap
+  file now are equivalent to the :XWINDOWS and :NON_XWINDOWS flags,
+  respectively, for VIEWER: assignments in lynx.cfg. - FM
+* Also modified PassesTest() so that it simply treats  test -n "LYNX_VERSION"
+  as success.  Why spawn a system() command to see if Lynx is running, when
+  it obviously is!.  However, that string can be included in the mailcap
+  file for assignments that should be restricted to Lynx if other software
+  also uses the file. - FM
+* The above two mods make it unnecessary to actually use a "test" script for
+  differentially setting viewers in XWINDOWS versus NON_XWINDOWS environments,
+  so VMSers also can use the mailcap files for differential assigments of
+  viewers, without those DCL error messages about "test" which have been
+  mystifying so many people.  However, yesterday's mods do make it possible
+  for VMSers to use a "test" script for checking other environment or system
+  features, and thereby setting viewer switches differentially, analogously
+  to the command line switches for Lynx itself. - FM
+* Modified comments in samples/mailcap to indicate these enhancements. - FM
+* Modified comments in userdefs.h to describe correctly what the Lynx code
+  does as of v2.3:  Any SUFFIX or VIEWER mappings in lynx.cfg will be
+  overridden in src/HTInit.c if they also appear there.  Then, any mappings
+  in mime.type or mailcap will override those from lynx.cfg and src/HTInit.c.
+  The XLOADIMAGE definition is used in src/HTIinit.c, and you can use
+  mailcap, but not lynx.cfg, to override it. - FM
+* Modified comments in lynx.cfg and samples/lynx.cfg to indicate what Lynx
+  really does, and the use of mailcap files to do what lynx.cfg had claimed
+  it could do but doesn't. - FM
+* Fully implemented multiple submit button support for both POST and GET
+  forms. - FM
+* Added LYK_RESUBMIT keymap (with default binding to 'x' and 'X') for forcing
+  submissions of forms to servers (i.e., never use cache).  LYK_ACTIVATE
+  (with default binding to right-arrow and RETURN) still fetches from cache
+  if available.  Statusline help describes these commands when positioned
+  on a submit button. - FM
+12-08-94
+* Fixed HText_submitForm() in GridText.c to handle submitting INPUT types
+  (e.g., type="image") which have name/value pairs. - FM
+* Modified DCLspawn to recognize -1 on failure and 0 or 1 on success as
+  return or exit values of scripts, and report -1 or 0 as it's own return
+  value.  If a "test" script is used on VMS in conjunction with .mailcap
+  for setting viewers, it should return -1 if the test fails and 0 or 1 if
+  it passes (the "test" script can be DCL or an exectutable, and should be
+  defined as a foreign command).  If you don't have a "test" script, don't
+  include that instruction in .mailcap. - FM
+* The tmpaddress pointer in do_www_search() of GridText.c needed to be
+  initalized to NULL. - FM
+12-07-94
+* Made sufficiently ANSI compliant to build with DECC on VMS without using
+  the /stand=vaxc qualifier, and further modified so that Lynx will build
+  and run (extremely well 8-) with DECC/VAX.  Whooh, that took some doing!
+  These mods are also desireable for builds on Unix. - FM
+12-02-94
+* Fixed the query recall buffer in do_www_search() of GridText.c to restore
+  the +'s to spaces and unescape properly. - FM
+* Include file and define fix ups, for SOCKETSHR/NETLIB support and convex
+  builds, in tcp.h, LYShowInfo.c and top level Makefile. - FM
+11-27-94
+* Fixed bugs associated with failure to check the post_data element in
+  addition to the address element when making push/pop decisions for the
+  history stack, and when checking whether a requested document has been
+  loaded successfully.  The address element is insufficient for documents
+  returned by POST'ed forms. - FM
+* Check -trace switch earlier in LYMain.c so that trace messages associated
+  with setting up the Lynx configuration will actually be displayed. - GL
+11-23-94
+* More fix ups for the SOCKETSHR/NETLIB support.  Close to "all set" but needs
+  more field testing with the full range of TCPIP packages for VMS. - FM
+* Added HP_TERMINAL define for the DIM workaround to the REVERSE problem with
+  HP terminals.  If not defined, SNAKE builds will not make that substitution
+  (would be better to do this in a way that checks the terminal at run time,
+  but we'll hold off on that for now). - FM
+--- RELEASE of 2.3.6 BETA ---
+11-21-94
+* Replaced ucx$inetdef.h with socketshr_library:ioctl.h for the
+  SOCKETSHR_TCP builds.  Note that the ioctl.h is not presently included
+  in the binary distribution of SOCKETSHR/NETLIB.  You have to get it from
+  the sources distribution. - FM
+11-18-94
+* Added Andy Harper's (A.Harper@bay.cc.kcl.ac.uk) "first round" support for
+  SOCKETSHR/NETLIB (see SOCKETSHR.ANNOUNCE).  Note that it is presently
+  including ucx$inetdef.h which is not provided with SOCKETSHR or NETLIB
+  source sets, and may not be available to non-UCX sites.  We're checking
+  into how to deal with that. - FM
+* Made recall buffering of shortcuts for the 'J'ump command a configuration
+  file option (in userdefs.h and/or lynx.cfg). - FM
+* Added clearerr() before the GetChar() in LYStrings.c. - FM
+* Made the optional novice help lines conform to the "standard default"
+  key bindings.  Edit them appropriately in userdefs.h if you plan to use
+  other bindings with that feature.
+* Added George Lindholm's (lindholm@ucs.ubc.ca) Makefile patch for making it
+  just a tad easier to set up local compile options. - FM
+* Eliminated serial free() in LYSanctify() of LYGetFile.c. - FM
+* Restricted all "hack to fix reverse clear screen problem" code to
+  SUN4 (had missed one 8-). - FM
+11-15-94
+* Eliminated separate list and atexit deletions of redirecting anchors. - FM
+* Added Rick Dyson's (Dyson@IowaSP.Physics.UIowa.EDU) updates of the
+  descrip.mms files. - FM
+11-12-94
+* Worked in Malcolm MacArthur's (mcscs2mm@zippy.dct.ac.uk) mods for reading
+  a printer's page length from the configuration file and calculating the
+  correct number of pages for the statusline query on whether to continue
+  if the document is longer than 4 printer pages.  Further modified that
+  code to use the current LYlines for the computation when the built in
+  "print to screen" option is selected.  See the comments concerning
+  "PRINTER:" definitions in lynx.cfg for more information. - FM
+* Fixed HTInetStatus() in HTTCP.c to use SOCKET_ERRNO instead of errno,
+  based on the platform/transport-specific definitions in tcp.h.  Thanks
+  to Danny Mayer (mayer@ljo.dec.com) for tracking down this glitch. - FM
+11-10-94
+* Added David Trueman's latest clever enhancement:  The command line option
+  -homepage=URL separates the notion of a home page (or main screen) from
+  the start file.  So,  lynx -homepage=URL1 URL2  will start up with URL2
+  but the MAIN_MENU key will take the user to URL1 rather than URL2.  This
+  is useful for public accounts that start up with an information page or
+  form, that then leads the user to a URL for the actual home page.  The
+  MAIN_MENU key can thereafter be used whenever the user wishes to return
+  to the actual home page. - FM
+* Enlarged string buffer in LYEdit.c to handle large paths. - FM
+* Made 'K'eymap title and descriptions easier to edit for alternate languages
+  (e.g., Dutch or Greek) as required by Dick Wesseling (but, alas, the editing
+  still has to be done in LYKeymap.c, because it's too much to move into
+  userdefs.h; someday Lynx will have real internationalization code 8-) - FM
+* Added titles to tops of jumps files so that the nesting level will be reset
+  on reloads. - FM
+11-09-94
+* More prototyping and include file fixes in LYJump.c and LYMainLoop.c - FM
+11-08-94
+* Prototyping fix in LYJump.c. - FM
+* Miscellaneous fixes in src/descrip.mms. - FM
+* Hadn't included patch for latest LYUtils.c in lynx2-3-5.patches. - FM
+11-07-94
+* At popular request (already 8-), changed the "Jump to:" query to work
+  exactly like the "goto:" query.  The previous entry is recalled, a '?'
+  must be entered explicitly to fetch the shortcut list (with an instruction
+  about that added to the prompt), and a blank entry or Control-G returns
+  the user to the current document. - FM
+--- RELEASE of 2.3.5 BETA ---
+11-05-94
+* Numerous wonderful enhancements based on patches from David Trueman, and
+  entensions of those mods.  Briefly:
+* Implemented 'K'eymap command for showing all of the key bindings currently
+  in effect, with a description of their functions.  This is faster and
+  more helpful than the online help's description of the default key
+  bindings.  Must be uppercase 'K' if VI keys are ON, otherwise the command
+  is case-insensitive.  Try it, you'll love it! - FM
+* Implemented 'J'ump command for using "shortcut" names to access URL's in a
+  local "jumps.html" file that has a sorted DL list which maps each target
+  (shortcut) DT to it's full URL DD (see the sample jumps files added to
+  the distribution).  The URL's could be local or remote resources, or
+  lynxexec or launch file URL's for system utilities (e.g., the shortcut
+  "news" could invoke the news reader, "mail" the mail utility, "swing" the
+  VMS File/Directory Management Utility, etc.).  This feature is enabled by
+  defining JUMPFILE in userdefs.h or lynx.cfg, and can be disabled via at
+  run time via -restrictions=jump as a commandline switch.  Must be uppercase
+  'J' if VI keys are ON, otherwise the command is case-insensitive.  Try it,
+  you'll love this too! - FM
+* Added a CHECKMAIL symbol which if set TRUE in userdefs.h or lynx.cfg will
+  report the existance of unread mail at Lynx startup, and arrivals of new
+  mail, via statusline messages.  VMSers can block unsoliticed system NEWMAIL
+  screen broadcasts ($ SET BROADCAST/NOMAIL) when using this feature.  It
+  can be disabled at run time via the -restrictions=mail switch, which also
+  disables standard mail functions in Lynx, but still allows 'J'umps via a
+  "mail" shortcut to a lynxexec URL for a script which could perform security
+  functions before permitting or rejecting access to the mail utility.  The
+  hackers will really love this! - FM
+* Added ability to toggle the novice help line to show all of the principle
+  commands. - FM
+* Miscellanous bugs and memory leaks found and fixed in conjuction with
+  adding and enhancing the above features. - FM
+* The code may need some tweaking to build and run properly on some flavors
+  of Unix (appears to be all set for VMS). - FM
+11-01-94
+* Fixed bug if editor is dereferenced. - David Trueman (david@cs.dal.ca)
+* Enable alternate boxing of popup windows via defines for BOXVERT and
+  BOXHORI in userdefs.h - Dick Wesseling (ftu@fi.ruu.nl)
+* Check for LYCursesON before making any Curses calls in cleanup() - DW
+10-31-94
+* Looks like the last of the problems deleting anchors has been solved
+  by Dick Wasseling, so the bypass is lifted again. - FM
+* If CANT_EDIT_UNWRITABLE_FILES is defined on Unix, write access is
+  required to edit files (write and delete access are always required
+  on VMS). - Alex Whittaker (alex@biu.icnet.uk)
+* Moved "Press  RETURN ..." text to userdefs.h. - AW
+10-28-94
+* Uncache documents or bookmark file before reloads (via Control-R or
+  'r'emove command) in LYMainLoop.c. - FM
+* Uncache showinfo display or print, download, option, etc, menus before
+  reloading those in GridText.c. - Dick Wesseling (ftu@fi.ruu.nl)
+* Above two fixes still don't completely solve the anchor deletion problem,
+  so we're still bypassing.
+* Enable iso entity translations inside TITLEs - DW
+10-26-94
+* Problems when deleting anchors have been reported, apparently for
+  documents which have been (re)loaded with LYforce_no_cache.  So,
+  we'll retore the bypass until that problem is tracked down. - FM
+10-25-94
+* Added coded for disabling mail for -anonymous via CAN_ANONYMOUS_MAIL in
+  userdefs.h, and via -restrictions=mail (default is enabled). - FM
+10-21-94
+* Added Danny Mayer's (mayer@ljo.dec.com) samples/lynx.com - FM
+10-05-94
+* Modified tcp.h to deal with conflicting typedefing in the MultiNet
+  types.h and time.h versus those for DECC. - FM
+* Define FANCY_CURSES for linux-ncurses. - FM
+09-30-94
+* -restrictions help list in LYMain.c should indicate "option_save" (not
+  "options_save") for disabling the saving of options in .lynxrc. - FM
+09-29-94
+Mods based on patches from George Lindholm (lindholm@ucs.ubc.ca) - FM:
+* Fixed problem when IGNORE_CTRL_C is defined, that was created by the
+  fix for runaway processes on Unix when undetected terminal disconnects
+  occurred.
+* Added options to disable rlogin and/or ftp access.
+09-28-94
+* Use "hack to fix reverse clear screen problem" in GridText.c if SUN4 is
+  defined (still need clarification on the exact nature of the problem
+  to decide if this is the best way to handle it; it bothers me to have
+  this kind of hack in the code 8-) - FM
+Mods based on patches from George Lindholm (lindholm@ucs.ubc.ca) - FM:
+* Move the "quit" text to userdefs.h from LYMainLoop.c for easier
+  customization.
+* Typo fix for buttons submit value in GridText.c
+* Renable SIGINT signal for SVR4 machines if control-c is to be ignored
+  when editing.
+* Solaris fixes for LYCurses.h.
+* Recognize pico as a special editor.
+* Fix -restrictions help text.
+* Fix -telnet and -news options so that they actually do something.
+* Fix upload code so that you can have more than one uploader option,
+  and fix for freeing a static variable.
+* Various prototype fixes.
+* -editor command line option signals that the editor can't be changed.
+* Added a SYSTEM_EDITOR option to lynx.cfg for a locked editor.
+--- RELEASE of 2.3.4 BETA ---
+09-27-94
+* Alas!  I think I've tracked down and fixed all the bugs that were causing
+  ACCVIOs/CoreDumps if anchors were deleted/freed when freeing the cached
+  documents.  So now we do delete/free them.  This plugs a major memory
+  leak in Lynx (which we knew about, but heretofore had to live with). - FM
+* Added Danny Mayer's (mayer@ljo.dec.com) fix so that MIME types are handled
+  case-insensitively. - FM
+* Restored text/html (WWW_HTML) as the default MIME type when an HTTP/1.0
+  server fails to send it in the headers.  This happens because it's the
+  default in Mosaic and developers using that don't realize their server or
+  script code is failing to send it (other MIME types will be caught as an
+  error, and the code will be fixed by the developers).  Garrett's change to
+  application/octet-stream (WWW_UNKNOWN) was technically correct.  You can
+  change it back to that where indicated in HTMIME.c if you prefer that Lynx
+  be technically correct but functionally wrong when dealing with this
+  situation. - FM
+--- RELEASE of 2.3.3 BETA ---
+09-22-94
+* Finished up redirection handling.  Will now handle serial redirections
+  across multiple sites (with an arbitrary limit of 10, to prevent the
+  possibilily of an infinite loop of circular redirections), works properly
+  with redirections via the VALUE fields of OPTION tags, and no longer alters
+  any anchor addresses, avoiding all the problems that caused in the hash
+  table. - FM
+* Worked in Rick Mallett's (rmallett@ccs.carleton.ca) fix for runaway
+  processes on Unix when undetected terminal disconnects occur. - FM
+* Added Eric Jon Rostetter's (ERIC@uoft02.utoledo.edu) code for proper
+  keyboard handling with DEC eightbit terminals. - FM
+* Added David Greer's (david_greer@robelle.com) mods for curses on
+  HP terminals. - FM
+--- RELEASE of 2.3.2 BETA ---
+09-17-94
+* More fix ups of forms structure handling, freeing and redirecting. - FM
+* Fixed problem with free's of startfile, thanks to Dick Wesseling
+  ftu@fi.ruu.nl - FM
+09-14-94
+* More memory leak and redirection fix ups (still not perfect). - FM
+* Various mods to speed up memory management with VAXC on VAXen (still
+  slow compared to DECC on AXPen). - FM
+09-13-94
+* If an ISINDEX document is one returned by a previous search, the 's'
+  command puts up the query which returned it, for editting as a new query
+  (use Control-U to erase, Control-G to abort)  Otherwise, no string is
+  offered in the prompt for a database query.  If the previous query is
+  submitted without modification, a message to use Control-R to resubmit
+  the same query is display (so that the search will not be repeated
+  inadvertantly). - FM
+09-12-94
+* Fixed failure to load the popped menu properly when a gopher search was
+  selected and a NULL string, Control-G, or arrow key is entered to cancel
+  the prompt for a query. - FM
+* Hit lists/documents returned by ISINDEX searches are now always displayed
+  at their tops.  They no longer inherit, inappropriately, the page and link
+  numbers of the previous list/document. - FM
+09-11-94
+* Fixed redirection handling so that the hash tables are updated and the
+  history stack works properly, including with forms that have VALUE
+  fields in OPTION tags that return Location: URL's for searches (e.g.,
+  the CUSI forms at Nexor).  Whew, that took some doing! - FM
+09-05-94
+* Fixed up remaining problems with OPTION VALUE="foo" handling and the
+  associated popup window positioning and scrolling. - FM
+* Fixed bugs and several inadequacies in the history structure and code
+  (still needs some redesigning to deal more effectively with all aspects
+  of documents returned by forms and/or redirection). - FM
+* Now deals properly with anchors in a single document returned by
+  a form. - FM
+* Command line file specs on VMS can now be any valid explicit, wildcarded,
+  partial, or relative VMS specification, and will be converted to a valid
+  file://localhost/ URL, so that partial or relative URL's within the file
+  also will be interpretted properly. - FM
+* Now trims trailing white space and won't get tripped up by '=' characters
+  when reading configuration files. - FM
+* Miscellaneous bug fixes and enhancements. - FM
+* Tracked down and eliminated more memory leaks. - FM
+--- RELEASE of 2.3.1 BETA ---
+7-08-94
+* Correction handling of OPTION VALUE="" implemented.
+* Miscellaneous bugs corrected.
+6-17-94
+* Option to log memory leaks at exit by defining LY_FIND_LEAKS at compilation.
+6-17-94
+* Check amount of allocated memory, rather than just number of documents
+  cached, before deciding to remove the oldest document (implemented for
+  VMS with VAXC, not yet for Unix or VMS with DECC).
+6-16-94
+* VMS bookmark file version numbers are reset on additions of bookmarks.
+6-16-94
+* Gopher URL's with /hGET%20/ are converted to http URL's, as in the UMN
+  Unix/VMS gopher+ client.
+6-16-94
+* Added DIRECT_WAIS support for VMS
+6-16-94
+* Added build support for VMS TCPWare TCP/IP
+5-28-94
+* Increased nesting of HTML elements from 40 to 400.  Hopefully this will limit
+  won't be encountered often.
+5-28-94
+* Modified for handling of Telnet URLs with spaces/other characters in the
+  username.
+5-26-94
+* Began terminating memory leaks with extreme predjudice.
+5-24-94
+* WAIS searches will now work when they are of type "www/present" as opposed
+  to only viewing the source.
+5-23-94
+* Added VMS CMU TCP/IP support, thanks to Andy Harper.
+--- RELEASE of 2.3 (19-May-1994, see CHANGES2-3) ---
diff --git a/docs/CHANGES2.5 b/docs/CHANGES2.5
new file mode 100644
index 00000000..6d2980ca
--- /dev/null
+++ b/docs/CHANGES2.5
@@ -0,0 +1,1696 @@
+--- Rename of Lynx2-4-FM and release as Lynx2-5  (02-May-1996) ---
+==============================================================================
+05-02-96 ---- Release of Lynx2-5 ----
+* Modified documentation, help, and example files based on feedback for
+  yesterday's Lynx2-5 pre-release. - FM
+* Include ";q=0.001" whenever "iso8859-1" or "us-ascii" are autoappended
+  to Accept-charset headers. - FM
+* Added SITE_LIBS symbol in Makefile for convenient linking to any
+  site-specific libraries associated with any site-specific patches. - FM
+* Fixed an unsigned char typecast in GridText.c - FM
+* Eliminated statusline and TRACE warnings about possibly strange formatting
+  when TABLEs are in a document. - FM
+05-01-96
+* Renamed Lynx2-4-FM for pre-release as Lynx2-5
+04-30-96
+* Modified the fatal error messages such that they direct the user to
+  the local system administrator to confirm a bug before reporting it
+  to lynx-dev, and started updated the help and about files for the
+  switch to lynx-dev@sig.net as the primary list server. - FM
+04-28-96
+* Made use of ordered versus unordered lists and inclusion of article dates
+  in listings for news groups compilation and configuration options in
+  userdefs.h and lynx.cfg. - FM
+04-27-96
+* Added -realm switch for restricting URLs to the realm of the startfile.
+  The bookmark and jumps files are always considered as part of the realm.
+  Any execution links or form ACTIONs are permitted if obtained from
+  documents in the realm, but any switches that restrict bookmark operations
+  will still apply.  For example, -book -realm will use the bookmark file
+  as the startfile, and restrict URLs to files in the user's account.  Adding
+  -restrictions=bookmark_exec will block execution links in the bookmark
+  file, but not in other files within the realm (i.e., in the user's
+  account).  If the startfile is an http URL, the realm will be equivalent
+  to that in http authorization procedures.  Can be used with -traversal
+  for restricting the traversal to documents within the starting realm
+  for an http server. - FM
+* Fixed bug in form structure which could cause POST to be treated as
+  GET. - FM
+04-25-96
+* Added code to send Host: headers as described in the 23-Apr-96 HTTP/1.1
+  draft. - FM
+04-23-96
+* Modified HTMIME.c to pass documents with an ISO-8859-3 through -9, EUC-KR,
+  or ISO-2022-KR charset specified in the Content-Type header, to set the
+  flag for not doing 8-bit reverse translations, and to issue a statusline
+  message about the charset instead of forcing a download offer.  Will have
+  garbage in the displays of 8-bit characters if one doesn't have the
+  corresponding charset installed for the terminal, but no harm should be
+  done, and those who do can get the files displayed instead of just being
+  up the creek without a paddle.  Korean escape sequences will still be
+  trashed, since be have no translation functions as for Japanese, and we
+  still force a download offer if there is a mismatch for the supported
+  character sets, so the user can cancel and then modify the terminal setup
+  and charset choice appropriately. - FM
+* Increased the maximum number of attributes for tags (was too small for
+  OBJECT), updated the DTD for SCRIPT, and added the STYLE attribute for
+  all tags which presently, or might someday, accept it. - FM
+04-21-96
+* Modified the news gateway to use an ordered list with the numbers and
+  dates of the articles indicated in newsgroup listings. - FM
+* Fixed the checking and passing of the mailto argument in LYMainLoop.c
+  to mailmsg() in LYMail.c. - FM
+04-20-96
+* Fixed bugs in parsing of nntp and snews partial HREFs, and in the
+  parsing of NNTP message headers for creation of mailto and newspost
+  or newsrepy links. - FM
+04-19-96
+* Added OBJECT and BODYTEXT to the DTD, based on the 12-Apr-96 W3C draft.
+  The code for INSERT is still there, and should be remove if OBJECT
+  becomes a stable replacement.  Code to handle data URLs for OBJECTs
+  not yet attempted. - FM
+* More tweaks for Japanese character handling. - FM
+04-18-96
+* If LINKS_ARE_NUMBERED is on, include the list of references in the
+  outputs of 'p'rint menu options, analogously to the output with
+  -dump. - FM
+04-14-96
+* Mods to report the content of SCRIPT, STYLE and ALIAS blocks in trace
+  mode. - FM
+* Made &die;, &macr; and &trade; synonyms for &uml;, &hibar; and &reg;,
+  respectively. - FM
+* Fixed typo in second line link highlighting code for slang. - ES
+04-13-96
+* More tweaks of Japanese character handling. - FM
+* Reinitialize timeout values after select() calls in LYUtils.c. - ES
+04-12-96
+* More tweaks of Japanese character handling. - FM
+* Tweak of target line and link setting when toggling to image_links mode
+  in LYMainLoop.c. - FM
+* Tweaks of circular buffer handling based on analyses from Mike Castle
+  (mcastle@umr.edu) and Bryan T. Vold (btv@ldl.HealthPartners.COM). - FM
+* Fixed typo for NeXT in tcp.h, based on feedback from LWV - FM
+* Reinitialize timeout values after select() calls in HTTCP.c. - Erik
+  Sundkvist (ess@lysator.liu.se)
+04-11-96
+* More tweaks of Japanese character handling. - FM
+* Added code for handling charset mappings for file and ftp URLs. - FM
+  You can set the mappings via lynx.cfg (or mime.types), e.g.:
+  SUFFIX:.html8R:text/html; charset=KOI8-R
+  SUFFIX:.txt8R:text/plain; charset=KOI8-R
+* Tweak of charset handling in HTMIME.c - FM
+04-09-96
+* Modified news gateway to handle split header lines. - FM
+* Tweaks of authorization header handling to make failures due to bad
+  headers from the http server clear to the Lynx user. - FM
+04-08-96
+* Yet more tweaks of memory management. - FM
+04-07-96
+* Tweaks for handling Japanese received via gateways. - FM
+04-06-96
+* More memory management tweaks. - FM
+04-05-96
+* Updated lynx.man, lynx.hlp and the online help files. - FM
+* Tweaks of INPUT, TEXTAREA and SELECT popup OPTION handling when
+  Japanese character translations are on. - FM
+04-04-96
+* Created new zip.  Yesterday's appears to have been bad. - FM
+04-03-96
+* More optimizations and bug fixes based on patches from JED. - FM
+* More mods for handling keyboard input via SLANG library functions,
+  based on patches from JED.  Note that the code for IGNORE_CTRL_C
+  has been bypassed in those mods, as they presently stand. - FM
+04-02-96
+* Added "first pass" handling of P end tags. - FM
+* Mods of HTCheckForInterrupt() for SLANG, based on patches from JED.
+  Note that the for-SLANG code is not taking possible SOCKSification of
+  Lynx into account. - FM
+* Use 3 for ^C instead of 7 for ^G as the argument for the slang abort
+  key in calls to SLang_init_tty(). - JED
+* Tweaks of make for clix. - AM
+03-31-96
+* More tweaks of memory management. - FM
+03-30-96
+* Added support for Japanese translations of text/plain in addition to
+  text/html documents, and for ALTs and form fields (see 03-26-96 mods).
+  Needs checking.  Also added an LYK_JPN_TOGGLE, mapped to '@' by default,
+  for toggling JAPANESE mode ON and OFF, and code to indicate the situation
+  in the 'o'ptions menu. - FM
+* Added make for ultrix-slang and decstation-slang, and tweaks of LYCgi.c
+  for ultrix. - Alvian Tam (atm@newt.phys.unsw.edu.au)
+* Found and fixed some typos in yesterday's mods. - FM
+03-29-96
+* Added build-slang.com for building Lynx with the SLANG library instead
+  of curses on VMS. - FM
+* Mod to treat an EOF with errno of EINTR when GetChar() is defined as
+  getchar() in LYgetch() as due to a Ctrl-Z suspend, and invoke another
+  character fetch instead of exit on error.  Based on patch from Gregory
+  Neil Shapiro (gshapiro@WPI.EDU). - FM
+* Numerous optimizations and bug fixes based on patches from JED. - FM
+03-28-96
+* More tweaks of SLANG support. - FM
+* Yet more tweaks of the HTList functions and macros, and their associated
+  memory management. - FM
+03-27-96
+* Fixed bug which could cause a crash if links are numbered and you
+  activate a link via a number when there are no links on the currently
+  displayed page. - FM
+* Tweaks of Content-Encoding header handling, and more detailed messages
+  about it in trace mode. - FM
+03-26-96
+* Added code in HTMIME.c for taking into account Content-Encoding headers,
+  so that compressed text/html or text/plain files are not displayed
+  inappropriately based on their Content-Type. - FM
+* Added "first pass" support for Japanese character translations, based on
+  patches for Lynx2-4-1 by Takuya Asada (asada@icsd6.tj.chiba-u.ac.jp).  Is
+  to be checked out by Nelson Henry Eric (nelsonhe@ews07.nara.kindai.ac.jp)
+  because I have no way to check it here.  Translations can be made the
+  default behavior by setting JAPANESE to TRUE in userdefs.h and/or
+  lynx.cfg.  The default can be toggled via a "-jpn" command line switch.
+  If made TRUE by any means, the value of KANJI_CODE set in userdefs.h
+  and or lynx.cfg (EUC, SJIS, or NONE) will be applied, and can be changed
+  via "-euc", "-sjis" or "-ascii" command line switches, for setting Kanji
+  code translations to EUC, Shift JIS, or disabling it, respectively.  Note
+  that Japanese translations are not yet performed in the line editor
+  (LYgetstr() of LYStrings.c and form_getstr() of LYForms.c), for form
+  field values, or for gateways (let's first see if what I've done so far
+  works right 8-) - FM
+* Added "LY" prefix for pop(), pop_num() and push() function names to
+  avoid possible conflicts with the ncurses library functions, and fixed
+  continuation line typo in solaris2 make, based on feedback from PN. - FM
+03-23-96
+* Tweaks of memory management in the CSO/PH gateway. - FM
+* Tweaks of wait() versus waitpid() handling for NeXT, aix4 and mips,
+  based on feedback from PN. - FM
+03-22-96
+* Tweaks of SLANG support for Unix, and finished up code support for it on
+  VMS (but tested only with OpenVMS/AXP).  Haven't yet decided how to add
+  VMS build support for it in the COM and MMS files.  Get the SLANG library
+  code from ftp://space.mit.edu/pub/davis and then add USE_SLANG in the
+  DEFINE list and the path to it's headers in the INCLUDE list for the
+  compilation, and [path]slang.olb/lib in the link list immediately before
+  the OPT file.  We still need the curses library in the OPT file, because
+  that's not just curses functions on VMS and we're using ones not replaced
+  by the SLANG library (Try it, you'll like it! 8-). - FM
+* Tweaks for NeXT, based on feedback from Paul Nevai
+  (nevai@ops.mps.ohio-state.edu). - FM
+03-20-96
+* Tweaks of code for sorting directory listings by date (take into account
+  the 6-month-old time versus year rule on Unix). - FM
+* Tweaks of memory management for HTList-based buffers (use internal
+  allocations, instead of the libwww macros). - FM
+* Added solaris2-slang to Makefile, and tweaks of the sun4 makes. - LWV
+03-19-96
+* Tweak of MAP handling so that the ordered lists are displayed exactly
+  in the order of the resolved AREA tags.
+03-18-96
+* Added SLANG support (for colorized Lynx) based on patches from JED.
+  The make support is for linux and sun4, but it should be portable to
+  other Unix flavors.  I have it working on VMS, but the SLANG interrupt
+  and exit handlers are incompatible with the current ones for VMS in
+  Lynx (and with the VMS debugger), so I haven't yet included SLANG
+  support in build.com or the MMS files. - FM
+03-17-96
+* Tweaks of 'd'ownload menu handling on returns to it from a DOWNLOADER
+  action. - FM
+* Added various anti-crash protections and cleaner code from John E. Davis
+  (davis@space.mit.edu) for trimming trailing white space and finding
+  unescaped colons in LYReadCFG.c, and cleaned up and more fully commented
+  the functions and subfunctions in that and the LYMainLoop.c modules. - FM
+03-16-96
+* Fixed routine which sorts directory listings by date (based on 'o'ptions
+  menu setting) to do it accurately and in reverse chronological order. - FM
+03-15-96
+* Added code to create links for likely URLs in results returned by
+  the CSO/PH and finger gateways.  Try:
+   gopher://ns.bradley.edu:105/2   or:
+      cso://ns.bradley.edu/        and search for David Henderson.
+  Also try:
+   gopher://cegt201.bradley.edu:79/0/w%20davidh   or:
+   finger://cegt201.bradley.edu/w/davidh          as URL.s - FM
+* Added LYK_INTERRUPT handling for the CSO/PH and finger gateways, and
+  made their memory management more efficient. - FM
+* Made the my_spawn() function in LYLocal.c more portable by using
+  waitpid() instead of wait(). - FM
+* Restored the Lynx2-3 behavior of seeking the current position and link
+  on return from 'e'dit.  May be wrong if the file was modified, but it
+  might be in the right ball park, and nothing really bad will happen if
+  it's far off. - FM
+03-14-96
+* Added -reload switch for instructing Lynx to send "Pragma: no-cache" and
+  "Cache-Control: no-cache" headers when requesting the startfile from an
+  http server (doesn't apply to subsequent fetches, or to non-http startfile
+  URLs). - Peter Ekberg (peda@lysator.liu.se)
+* Put the correct LYMain.c, which declares no_change_exec_perms, in the zip
+  (second try, hope I really did 8-). - FM
+03-13-96
+* Yet more tweaks of the CSO/PH gateway. - FM
+* Yet more tweaks of the finger gateway. - FM
+03-12-96
+* Made the URL and command buffering in the finger gateway secure from stack
+  modifications, beautified the HTLoadFinger() and response() functions, and
+  added support for the following URL formats for sending a "", "/w",
+  "username", or "/w username" command to the finger server:
+     finger://host			   finger://@host
+     finger://host/			   finger://@host/
+     finger://host/%2fw			   finger://@host/w
+     finger://host/w                       finger://host/w/
+     finger://host/username[@host]	   finger://username@host
+     finger://host/username[@host]/	   finger://username@host/
+     finger://host/w/username[@host]	   finger://username@host/w
+     finger://host/%2fw%20username[@host]  finger://host/username[@host]/w
+* Replaced the _tolower macro in the CSO/PH gateway with TOLOWER. - FM
+* Tweaks of DIRED_SUPPORT.  Added NO_CHANGE_EXECUTE_PERMS compilation
+  symbol and change_exec_perms restrictions switch for restricting
+  changes of the eXecute permissions to directories, and not files,
+  when OK_PERMIT has been set. - Earl Fogel (fogel@duke.usask.ca) & FM
+* Added make support for Intergraph CLIX (note that some online help files
+  must be edited and renamed to meet this Unix flavor's 14 character file
+  name limit). - Alex Matulich (matuli_a@marlin.navsea.navy.mil)
+03-11-96
+* Added support for using finger://host/w/username to send "/w username"
+  to finger (port 79) servers. - FM
+* Tweaks of alignment handling to deal with (illegally) embedded CENTER
+  containers (typically due to omission of an end tag for the first
+  CENTER of the pair; ugh!). - FM
+03-10-96
+* Added form-based CSO/PH (port 105) gateway.  Can be invoked via a
+  cso://host[:port]/ or gopher://host[:port]/2 URL.  If the gopher
+  format is used and a query token is appended (?[query]), the old
+  ISINDEX-based gateway will be used. - FM
+03-07-96
+* Added NO_FROM_HEADER configuration symbol in lynx.cfg, and -nofrom
+  command line switch, for blocking all transmissions of From headers
+  by Lynx. - FM
+* Added NO_REFERER_HEADER configuration symbol in lynx.cfg, and -noreferer
+  command line switch, for blocking all transmissions of Referer headers
+  by Lynx. - FM
+* Enhancements of the 'o'ptions menu. - FM
+03-06-96
+* Restored the Lynx2-3 behavior of seeking the current document position
+  and link on (^R)eloads.  Will be wrong if the document is actually a
+  changing script output, or SSI with changes in the sizes of inserts,
+  and any form entries will be lost with no warning about that if no
+  form links are in the currently displayed page (and there may be other
+  glitches I don't remember any more).  However, it's correct, and more
+  convenient, most of the time, and nothing really bad will happen if
+  it's wrong. - FM
+03-05-96
+* Added SAVE_SPACE configuration symbol in lynx.cfg, and LYNX_SAVE_SPACE
+  environment variable (Unix) or logical (VMS) for setting a default path
+  prefix in suggested filenames in Save to Disk operations of the 'p'rint
+  and 'd'ownload menus.  If not set, only a filename will be suggested,
+  for saving in the current default directory.  See the INSTALLATION file
+  and lynx.cfg for more information. - FM
+03-02-96
+* If an IMG tag has both ISMAP and USEMAP attributes, create links for
+  both, and use the ALT string, if present, for the USEMAP link.  The
+  server-side script might have a content-rich default set up for non-GUI
+  clients, so we may as well be able to try it, and still have our own
+  USEMAP listing available if it's a site unconcerned about text and
+  braille clients, or GUI clients with image loading turned off. - FM
+* Tweaks of MAP code to maximize efficiency of fetching and processing
+  MAPs from a different document. - FM
+* Make sure the traversal code doesn't get tripped up by any HREFs
+  which contain newline characters due to misparsing (e.g., because a
+  close-double-quote wasn't present where required, and soft_dquotes
+  wasn't toggled ON, or invalid comments were present, and mimimal or
+  historical comment parsing weren't toggled ON). - FM
+* Renamed LYK_RESUBMIT ('x' or 'X') to LYK_NOCACHE and modified it's code
+  so that it applies to normal links as well as form submit buttons.  If
+  used instead of LYK_ACTIVATE, any HText cache from a previous submission
+  or request will be dumped, and the submission or request will be made
+  with the  "Pragma: no-cache"  and  "Cache-Control: no-cache"  headers
+  included, to ensure that a proxy/cache server also will not return a
+  cached copy (assuming it respects either of those headers). - FM
+03-01-96
+* Converted the client-side image MAP code to a protocol which returns
+  a stream, rather than using a temporary file.  This allows saving
+  the link as a bookmark, for fetching the MAP and creating a listing
+  without need to fetch and render the original document.  Also enabled
+  direct downloading of the MAP listing. - FM
+02-29-96
+* Added handling of client-side image MAPs.  If both USEMAP and ISMAP
+  attributes are present, the client-side MAP is used instead of the
+  the server-side script.  The MAPs can be in the same or different
+  documents.  The HREFs of the AREA tags are presented as a list,
+  with their ALTs (if present, otherwise their HREFs) as the link names
+  in the list.  Added a TITLE attribute for MAPs, which will be ignored
+  by GUI clients, but if present will be used by Lynx as an H1 for the
+  list (MAP NAME="welcomemap" TITLE="Welcome Map").  Otherwise, the
+  IMG's ALT (if present, otherwise "[USEMAP]") will be used as an H1
+  in the list.  The MAP's resolved URL also is shown in the list, since
+  the URL for the list is a temporary file. - FM
+02-25-96
+* Added a MINIMAL_COMMENTS configuration symbol, which if set TRUE in
+  lynx.cfg will emulate the Netscape v2.0 comment parsing bug of seeking
+  only a '-->' terminator, and not interpreting '--' pairs as serial
+  comments within the overall comment element.  The compilation default
+  is FALSE, but we'll set it TRUE in lynx.cfg until Netscape gets its
+  comment parsing right, and "decorative" dashes in comment elements
+  cease to be so common in "Enhance for Netscape" pages.  Also added
+  a '-minimal' command line switch for toggling the Mininal or Valid
+  configuration setting, and an LYK_MINIMAL command key toggle (mapped
+  by default to backquote).  Note that setting Historical comments on
+  will override the Minimal or Valid setting (i.e., any '>' will be
+  treated as the terminator of a comment element).  A statusline
+  message indicates whether Historical, Minimal or Valid comment
+  parsing has gone into effect when the LYK_MINIMAL or LYK_HISTORICAL
+  command key toggles are used (i.e., those two toggles in effect are
+  a "troggle"). - FM
+02-22-96
+* Tweak of HTList manipulations. - FM
+* Additions to the online help. - FM
+* Unescape any hex escaped username and/or password in ftp URLs. - FM
+02-20-96
+* Handle timeout disconnects of cached NNTP connections. - FM
+* Allow head or tail match specifications (e.g., comp.infosystems.*
+  or *.unix) in news, nntp and snews URLs (That's illegal, so don't
+  use it in public documents.). - FM
+* Tweak of bookmark handling. - Ismael Cordeiro (ismael@CAM.ORG)
+02-16-96
+* Tweak of the new code for setting a default CHECKED radio button. - FM
+02-15-96
+* Issue a sensible exit message if a non-http URL is used as the startfile
+  with -traversal. - FM
+* Tweaks of bookmark handling. - FM
+* Tweaks of Home_Dir() type casting. - FM
+02-14-96  Happy Valentine's Day!!!
+* Tweaks of charset conversions. - FM
+02-12-96
+* Made inclusion of Unix DIRED_SUPPORT the compilation default, and
+  its refinement easier to understand and set in the Makefile. - Will
+  Mengarini (seldon@eskimo.com) & FM
+* Changed (X) and ( ) to [X] and [ ] for indicating checked or unchecked
+  checkboxes.  For radio buttons, we still use (*) and ( ). - FM
+02-11-96
+* Distinguish checkboxes from radio buttons in the Lynx display by using
+  (X) versus (*), respectively, when they are checked or selected. - FM
+* Make the first radio button in a series with the same NAME checked by
+  default if none of them had CHECKED specified. - FM
+02-09-96
+* Added LYK_HISTORICAL and LYK_SOFT_DQUOTES, mapped by default to the
+  the single- and double-quote keys, respectively, for toggling valid
+  versus "historical" comment parsing, and valid versus "old Mosaic-
+  and Netscape-like" double-quote parsing. - FM
+* Added SCRIPT to the DTD and code to ensure that bad comments in its
+  content don't generate garbage in the display. - FM
+* Added -DSVR4 to the make for solaris2. - KH
+* Use copy instead of rename in descrip.mms for putting lynx.exe in the
+  top directory, as in build.com. - FM
+* Added TITLE attribute to FORM, and code to use it for the Subject in
+  mailto ACTIONs.  It's not in the spec, but better to offer it than
+  to settle into Netscape's ?subject=foo tack-on kludge which breaks
+  mailto for clients which haven't added code to cope with it. - FM
+02-08-96
+* Added -book switch for using the bookmark page as the startfile.  The
+  default or command line startfile will still be set for the 'm'ain screen
+  command, and be used as the startfile if the bookmark page is unavailable
+  or blank. - FM
+* Fixed glitch for Unix in yesterday's LYMail.c mods. - FM
+* Try graceful alternatives if getenv("HOME") returns NULL. - Kenneth Herron
+  (kherron@campus.mci.net) & FM
+02-07-96
+* Added support for the ?subject=foo tack-on kludge to specify the Subject
+  in mailto ACTIONs and HREFs. - FM
+* Convert Explorer's semi-colon Internet address separators to commas
+  before acting on mailto address lists on Unix or VMS. - FM
+* Made EMBED empty again (the W3C container version has been replaced
+  by INSERT, and Netscape still has it empty). - FM
+02-06-96
+* Tweaks of descrip.mms files for VMS. - FM
+02-04-96
+* Fixed caching of news/nntp connections so that we access the correct host
+  when more than one has been specified. - FM
+02-03-96
+* Added ndash and mdash to the entities conversion tables.  The W3C's
+  DTD specifies those, whereas the text descriptions say endash and
+  emdash, so we'll cover all the bases by supporting all four. - FM
+* Reduced the "en" metric for TAB to 2 per column.  Was 12, to be
+  compatible with UdiWWW, but that's pixels.  You can change the enval
+  initialization in HTML.c from 2 to 12 if you want the old behavior. - FM
+* Force use of DECC in build.com if that compiler is installed on VMS,
+  and make sure external logicals don't defeat a choice of DECC via
+  descrip.mms. - FM
+02-02-96
+* Mods to handle lone CRs as newlines when dislaying text/plain files
+  from MAC servers.  Note that they'll stay CRs when downloading, or
+  fetching with -source, but be handled as newlines when the '\' source
+  toggle is used for text/html files and their source is displayed as
+  text/plain. - FM
+01-31-96
+* Added dummy initializers in LYCharSets.c and LYEditmap.c to ensure the
+  modules are linked if the external model is common block and they are
+  placed in a library. - FM
+01-30-96
+* For submissions of forms with a mailto ACTION, allow the user to edit
+  the default Subject string (the TITLE of the document containing the
+  form) via a statusline prompt, or to cancel the submission via Ctrl-G
+  at the prompt, analogously to 'c'omments or for anchors with a mailto
+  HREF. - FM
+01-29-96
+* Typo fixes in HTML.c, LYJump.c and LYGetFile.c. - PM
+01-28-96
+* Tweaks of redirection handling. - FM
+01-27-96
+* Support use of the TITLE attribute for setting the Subject in LINKs with
+  REV="made" or REV="owner" and a mailto HREF, equivalently to its use
+  with anchors in the BODY. - FM
+* Always use the parent document's URL for X-URL in mailto anchors, but
+  still use mailto:address if it was entered as a 'g'oto. - FM
+* Improvements of the code in LYMainLoop.c for checking the types of
+  links (first make sure that there are links to check 8-). - FM
+01-26-96
+* Made LYCharSets.c an object module instead of header for HTML.c, and
+  created LYCharUtils.c with character-related functions from HTML.c,
+  to reduce the size of HTML.c (got a report of memory exhaustion when
+  trying to compile HTML.c). - FM
+* Added BGSOUND to the DTD and code for creating a link to the source
+  when clickable_images is set. - FM
+01-24-96
+* Tweak of URL resolving when http servers return the obsolete file URL
+  format for what are actually ftp URLs (as DEC's servers are doing). - FM
+* Added LYE_LOWER and LYE_UPPER for lower or upper casing lines with the
+  line editor.  Default bindings are Ctrl-K and Ctrl-T, respectively (not
+  "intuitive" but they're the only "safe" non-printing keys left 8-). - FM
+01-23-96
+* Yet more tweaks aimed at getting Lynx to compile across versions of
+  MultiNet through v3.5A and DECC through v5.2 or VAXC.  Pat Rankin
+  is trying to cope with this mess for compilations with MultiNet and
+  his VMS port of GNUC (cross your fingers 8-). - FM
+* Updates of the help and about files. - FM
+* Tweak of sendmail path for BSDI. - Bennett Todd (bet@ritz.mordor.com)
+01-22-96
+* More tweaks for dealing with header conflicts in MultiNet v3.5A with
+  DECC v5.2. - FM
+* Tweak of our kludge to append a 0,0 coordinate pair for ISMAP URLs. - FM
+* Tweaks of base handling in HTML.c. - FM
+01-20-96
+* Mods for builds with NetBSD, or MultiNet v3.5A with DECC v5.2 (they
+  have conficting headers). FM & PR
+01-18-96
+* Improved and corrected the fatal error messages. - FM
+01-17-96
+* Added ability to set the NNTPSERVER environment variable via lynx.cfg if
+  it has not been set externally (analogously to the proxy variables). - FM
+* Tweaks of proxy handling. - FM
+* Modifed the "Accept-Language: " header handling so that is uses the
+  "perferred document lang(G)uage" string without any modifications.
+  This allows the user to specify a comma-separated string with quality
+  values included, exactly to his/her requirements. - FM
+01-16-96
+* Modified the traversal code so that it always outputs to an error file if
+  requests fail or unknown statuses are received from the http server. - FM
+* Added target "sun4-ncurses" to the Makefile. - Bennett E. Todd
+  (bet@nyc.fcmc.com)
+* Tweaks of "preferred document lan(G)uage" and "preferred document c(H)arset"
+  'o'ptions handling.  Send only the preferrence or comma-separated list of
+  preferrences in the "Accept-Language: " and "Accept-Charset: " headers.
+  Append ", en" if "en" isn't present, and ", ISO-8859-1" and/or ", US-ASCII"
+  if those aren't present, rather than relying on servers to honor defaults,
+  but still don't send an "Accept-Charset: " header at all if no preference
+  has been specified by the user. - FM
+* Fixed typos in the about and help files. - FM
+01-15-96
+* Tweaks of bold and underline setting in split_line() of GritText.c. - FM
+* Fixed handling of FORM start tags with no ACTION specified. - FM
+* Tweaks of "IBM PC character set" and added "IBM PC codepage 850"
+  (ISO8859-1, see IBMPC-charsets.announce). - Mike Brown (mike@hyperreal.com)
+* Check in userdefs.h whether LYNX_CGF_FILE has been defined via the
+  Makefile, build.com or descrip.mms. - PG
+* Created CHANGES2-3 with changes through release of Lynx2-3 on 04-19-94,
+  and CHANGES2-4 with subsequent changes through the rename of lynx2-3-FM
+  to Lynx2-4 and its release on 06-18-95, and deleted those sections from
+  this file. - FM
+* Added the new Copyright and links to it in about_lynx.html. - FM
+01-11-96
+* Tweaks of HTWAIS.c for compatibility across versions of FreeWAIS. - FM
+* Unescape any hex escaped percents in mailto URLs and ACTIONs. - FM
+01-10-96
+* Added an LYCheckForProxyURL() function, and a PROXY_URL_TYPE return value
+  for is_url(), so that Lynx can proxy URLs with an unknown scheme if a
+  proxy for the scheme has been set, e.g., if "foo_proxy" has been set
+  to "http://host/", then "foo:blah", where "blah" may or may not begin
+  with a slash, will be handled as "http://host/foo:blah".  Components of
+  "blah" will be checked versus "no_proxy", if set, but since we don't
+  know the default port for scheme "foo", the checks for any ports
+  associated with the no_proxy values may not be reliable (but if we
+  don't proxy, nor know the scheme, nor find "foo:blah" as a local file,
+  the URL would fail, anyway)  - FM
+* Fixed typo in VMSPrint.com. - Paul Farnham (farnham@pasco.wednet.edu)
+01-06-96
+* Tweak of traversal code. - FM
+01-04-96
+* Tweak of dynamic SOCKS mods. - TZ
+01-03-96
+* Added circular recall buffers for JUMP shortcuts.  If multiple jumps
+  files are installed, each has it's own recall buffer.  If Lynx was built
+  with PERMIT_GOTO_FROM_JUMP defined, any random URLs accessed via the JUMP
+  command are placed in the goto circular buffer, not that for shortcuts,
+  and a JUMP entry of the single character ':' for the target is treated
+  as a command to invoke the circular buffer of previously resolved goto
+  URLs (as if 'g'oto followed by Up-Arrow were used). - FM
+* Added GOTOBUFFER, homologous to JUMPBUFFER, for specifying via userdefs.h
+  and/or lynx.cfg whether to offer the previous goto URL, if any, for
+  reuse or editing whenever the 'g'oto command is entered, or simply rely
+  on invoking the circular buffer via the Up-Arrow and Down-Arrow keys for
+  accessing previously resolved goto URLs. - FM
+* Tweak of 'g'oto recall buffering loop in LYMainLoop.c. - AH
+01-02-96
+* Added circular recall buffering for 'g'oto URLs.  Is invoked (if previous
+  URLs have been entered) via Up-Arrow or Down-Arrow after entering the
+  'g'oto command. - FM
+* Added circular recall buffering for WHEREIS queries.  Buffer is shared with
+  that for ISINDEX queries, and invoked via Up-Arrow or Down-Arrow following
+  the WHEREIS ('/') command.  The 'n'ext command still uses the last WHEREIS
+  query, not necessarily the last entry in the recall buffer, which might
+  have been entered via a 's'earch command for an ISINDEX document. - FM
+* Extended treatment of FORMs which have only one INPUT (TYPE="text") field
+  for user entries as SUBMITting on press of RETURN in that field, so that
+  this behavior is retained if INPUT TYPE="hidden" fields are present. - FM
+* Tweaks of bookmark deletion sanity checks. - DT
+01-01-96 (Happy New Year!!!!)
+* Added circular recall buffer for ISINDEX queries.  Up-Arrow will cylce
+  you from the most current query in the list to previous ones, and roll
+  from the oldest to the most current.  Down-Arrow will cycle from the
+  oldest query to subsequent ones, and roll from the most current to the
+  oldest.  If a previous query is reused, it is removed from the recall
+  buffer and reinserted as the most current.- FM
+* Plugged memory leaks in LYUtils.c and LYJump.c. - FM
+12-30-95
+* Added LOCALHOST_ALIAS symbols for lynx.cfg which can be set to local
+  host aliases or to trusted hosts at other sites which will be accepted
+  as "local" when the -localhost switch is set. - FM
+* Added the endash and emdash entities. - FM
+12-29-95
+* Use exit(0) versus exit(-1) more consistently for normal versus abnormal
+  exits, respectively. - FM
+12-26-95
+* Tweak of RELOAD handling for lynxcgi URLs. - FM
+* More anti-crash protections for bad HTML. - FM
+* Tweak of dynamic SOCKS mods. - TZ
+12-23-95
+* Tweaks of directory building on VMS. - FM
+* Tweaks of log file declarations for direct wais builds. - FM
+* Tweak of DIRED_SUPPORT mods so that non-TAG entries don't show up when
+  there are tagged files. - DT
+12-22-95
+* Added HTMake_VMS_name() to HTFTP.c for use by Unix as well as VMS with
+  VMS ftp servers. - FM
+* Added INSERT and ALIAS to the DTD, updated PARAM and OVERLAY, and made
+  FIG a paragraphing block, all as described in the 12-21-95 W3C working
+  draft for INSERT.  In contrast to FIG, the INSERT and "heritage" EMBED
+  and APPLET elements invoke paragraphing only if their content displayed
+  by Lynx dictates it.  The rules for resolving the sources for INSERTs or
+  for handling its ISMAP attribute are extremely complicated, and are not
+  implemented.  Let's wait to see how people in the "real world" try to
+  make sense of them and actually use INSERT (if they do 8-).  We still
+  create source links in "clickable_image" mode for the "heritage" versions
+  of FIG, OVERLAY, EMBED and APPLET markup, and send a 0,0 cooridinate pair
+  for IMG with the ISMAP attribute.  See comments in HTML.c - FM
+12-21-95
+* Fixed bug in yesterday's ftp password-handling mods that could cause a
+  crash, and handle ftp://user:@host/path as specified in RFC 1738. - FM
+* Added protection against crashes for SELECT tags without the (required)
+  NAME attribute. - FM
+* Added code in HTFTP.c for recognizing MS Windows (Chameleon NEWT) servers
+  and parsing their LIST output (tested on ftp://emoryi.jpl.nasa.gov/) - FM
+* Another typo fix for VMS GNUC in HTFinger.c. - FM
+* Modified HTFTP.c to use personal_mail_address, if available, for the
+  password with anoymous FTP.  It will still use "user@" (trim off the
+  host) if the host does not contain a dot and thus could not be a fully
+  qualified domain name, so it will work with Unix servers such as
+  ftp.uu.net (see get_connection() in HTFTP.c), but this will cause it
+  to fail with MS Windows servers. - FM
+* Added lots more info to the trace output for the ftp gateway. - FM
+12-20-95
+* Modified HTFTP.c to handle a hex escaped slash (%2F) following the
+  "punctuation" slash according to the strict provisions of RFC 1738
+  when connected to VMS ftp servers, so that a device can be in the
+  path and not be mishandled as a subdirectory, e.g., the URL
+     ftp://user:password@host/%2Fsys$common/syshlp
+  will create a directory listing for sys$common:[syshlp]. - FM
+* Fixed typo for VMS GNUC in HTFinger.c. - FM
+12-19-95
+* Enhancements of Unix DIRED_SUPPORT (see header of LYLocal.c). - DT
+12-18-95
+* Tweaks of element and entity structure alignments. - FM
+12-17-95
+* Tweaks of APPLET CODEBASE attribute resolving. - FM
+* Added support for a -nosocks command line switch to turn off SOCKS proxy
+  usage if Lynx was SOCKSified. - Thomas Zerucha (tz@execpc.com)
+12-16-95
+* Added the APPLET element and attributes to the DTD, and code for
+  creating links to the Applet code via image_links - FM
+* Added code to handle password fields in telnet URLs. - FM
+* Expanded EMBED as an "attribute soup" (for compatibility with
+  old versions of Netscape). - FM
+12-15-95
+* Added PARAM, and its attributes in the W3C draft for EMBED, to the DTD,
+  and code in HTML.c to minimize the possiblity of an INPUT belonging to
+  an EMBED being misassociated with a standard FORM container. - FM
+* Added "first pass" EMBED handling.  Should be OK with both the W3C
+  container version and the Netscape "attribute soup" version (we'll
+  see 8-).  The clickable_image switch and toggle ('*') are now misnomers.
+  They will cause creation of links to the EMBED SRCs whether they are
+  images or not. - FM
+* Enhancements of Unix uploading (see header of LYUpload.c). - GL
+12-14-95
+* Modified LYUnEscapeEntities() and LYExpandString() in HTML.c to make
+  it more likely that they'll be handled correctly across flavors of
+  compilers. - FM
+* Changed NETSCAPE_QUOTES and -netscape_quotes to SOFT_DQUOTES and
+  -soft_dquotes. - FM
+* Added '&' to the exclusion list for VMS suggested file names. - FM
+12-13-95
+* Added CAN_ANONYMOUS_GOTO_TELNET_PORT symbol which if set TRUE in
+  userdefs.h will allow anonymous users to specify a port in 'g'oto
+  commands for telnet URLs. - FM
+* Added NETSCAPE_QUOTES symbol which if set TRUE in lynx.cfg will cause
+  Lynx to emulate the Netscape bug of treating  '>' as a co-terminator
+  of a double-quoted attribute value and the tag which contains it. - FM
+* Forgot to define FORM_LINK_RESUBMIT_MESSAGE in the distribution's
+  userdefs.h for yesterday's mods. - FM
+* Forgot to put the HTFile.c with the LIST_FORMAT mods into the
+  distribution (maybe I should just concentrate on Christmas 8-). - FM
+12-12-95
+* Changed handling of the no-cache META directive so that it applies to
+  the document which contains the META tag, rather than to any form submit
+  buttons within it.  The form's CGI script should return a stream which
+  contains the directive to force resubmissions, and any (e.g., ISINDEX)
+  script or (e.g., foo.shtml) document can include the directive to
+  force reloading by Lynx. - FM
+* Added ALWAYS_RESUBMIT_FORMS symbol in userdefs.h and lynx.cfg for setting
+  forced resubmissions of forms, and a -resubmit_forms command line switch
+  for toggling the default. - FM
+12-11-95
+* Moved values of LYStrings.h function key definitions from 0x80 - 0x8D to
+  0x100 - 0x10D and modified all the structures and functions in LYKeymap.c
+  and LYEditmap.c accordingly. - FM
+* Added the KOI8-R (Russian) character set. - Andrey A. Chernov
+  (ache@astral.msk.su).
+* Replace gets() with fgets() for the Unix setup() in LYCurses.c - AAC
+* Tweaks for building with FreeBSD. - AAC & FM
+* Added handling of META directives for ISO-8859-2 and KOI8-R if the
+  document is text/html and a server header didn't already set the
+  charset. - AAC & FM
+12-10-95
+* Tweaks of memory management. - FM
+* Made the LONG_LIST parameters for Unix local directory listings
+  configurable via userdefs.h and lynx.cfg - DT
+12-09-95
+* Added code for re-computing and retaining the current link if it is still
+  on the page when using the LYK_UP_TWO and LYK_DOWN_TWO commands. - FM
+* Added support for nested emphasis tags (they're all still displayed as
+  HT_UNDERLINE, but no longer terminated prematurely). - FM
+12-08-95
+* Added more suffix maps in HTInit.c. - FM
+* Tweak of META attribute definitions. - FM
+12-06-95
+* Don't reject LYNXKEYMAP and lynxcgi URLs with the -localhost switch. - FM
+12-05-95
+* Made the loaded_texts list in GridText.c functionally "circular", so
+  that returning to a cached document causes it to be treated as the most
+  current, and dumps of cache, when necessary to load a new document, are
+  done for the least recently viewed rather than least recently fetched
+  document. - FM
+* Show the METHOD and ACTION in showinfo() of LYShowInfo.c if invoked when
+  the cursor is positioned on a submit button. - FM
+* If the user mode is advanced, keep showing the URL in the statusline
+  when Lynx is in forms mode but the link is not a form field. - FM
+12-03-95
+* Tweaks of code for submissions of forms with only a single INPUT
+  (TYPE="text") field. - FM
+12-02-95
+* Treat any META directives with a NAME or HTTP-EQUIV value of "Pragma"
+  or "Cache-Control" and a CONTROL value of "no-cache" as an instruction
+  always to resubmit any form(s) in the document. - FM
+* Added parsing of META directives.  Functions can be added where indicated
+  in HTML.c. - FM
+* Include the HTTP/1.1 "Cache-Control: no-cache" header together with the
+  HTTP/1.0 "Pragma: no-cache" header for reload or resubmit requests. - FM
+* Fixed bug in the check for an all-space ALT in IMG when creating a
+  link for its SRC. - FM
+* Fixed parsing of square-bracketted DOCTYPE fields. - FM
+12-01-95
+* Improvments of logic for indentations within lists. - FM
+11-30-95
+* For resiliency, treat upper case letters as equivalent to lower case in
+  scheme names (e.g., allow "HTTP" as well as "http"), by converting them
+  to the appropriate case before entering them into the anchor hash table
+  or otherwise acting on them. - FM
+* Added ability to change the default reply to the "really quit" prompt
+  from "[Y]" to "[N]" via a compilation symbol in userdefs.h. - DT
+11-29-95
+* Added ALIGN attribute for HR (default is "center"). - FM
+11-28-95
+* If a form has a single field, and it's INPUT TYPE="text", treat
+  RETURN as a submit command for it. - FM
+* Added START as a synonym for the SEQNUM attribute in OL. - FM
+11-27-95
+* Enhancements of the wais gateway. - FM
+11-26-95
+* Fixed up HREF, ACTION and SRC resolving to be conformant with RFC 1808
+  (except that we don't yet support a ";params" field). - FM
+11-25-95
+* Tweaks of yesterday's jumps file mods. - FM
+11-24-95
+* Enhancements of 'J'umps file handling, including ability to install
+  multiple jumps files mapped to different keys and associated with
+  different statusline prompts and recall buffers. - DT & FM
+* Deal with ALTs that have only spaces when in clickable_image mode. - FM
+* Worked in WM's mods to make the REVERSE_CLEAR_SCREEN_PROBLEM workaround
+  a configuration option via ENABLE_SCROLLBACK in lynx.cfg and a command
+  line toggle (-enable_scrollback), for use with comm programs which have
+  screen display buffers that can be accessed for review independently
+  of the Lynx commands (see comments in lynx.cfg). - FM
+11-23-95
+* Use the BASE, if present, instead of the original document URL, as the
+  default ACTION for forms. - FM
+* Tweaks of paragraph alignment handling. - FM
+* Make sure we don't realloc() a NULL env pointer in LYCgi.c. - DT
+* Cancel bookmark deletion if the line does not have a complete link or if
+  there is more than one link on the line. - DT
+11-21-95
+* Fixed bad logic in the setting of bold and/or underline starting points
+  in new lines created via split_line() of GridText.c. - FM
+* Added case KEY_BACKSPACE in LYgetch() of LYStrings.c. - GL
+11-19-95
+* Fixed problem of SELECT causing all immediately following white space
+  to be ignored. - FM
+* More tweaks of paragraphing, and handling of labeled blocks within
+  PRE blocks. - FM
+11-18-95
+* Added INFOSECS, MESSAGESECS and ALERTSECS symbols in userdefs.h and
+  lynx.cfg for setting the durations of statusline pauses (important when
+  using Lynx with a braille-based access).  See comments in userdefs.h and
+  lynx.cfg for more information. - FM
+* More tweaks of paragraph handling. - FM
+* Include the Reference lists is crawl output files if the -number_links
+  switch was included and the -nolist switch wasn't. - FM
+11-17-95
+* Tweaks of finger and telnet gateways. - FM
+* Added handling of MARQUEE equivalently to BANNER. - FM
+* Various tweaks of 8-bit character and related HTML handling (OLs
+  or ULs without attributes or some wrong combinations were crashing
+  Lynx). - FM
+11-16-95
+* Implemented the ID attribute for TAB, and the TO and INDENT attributes
+  when its ALIGN attribute is "left" (the default) and the style's
+  alignment is HT_LEFT (the default).  If these conditions don't apply,
+  or if the TAB target is outside the current margins or would overlap
+  prior text, a collapsible space is inserted instead of TABing.  The
+  INDENT values are in "en" units, treated as 12 per column.  Added
+  tabtest.html in the test subdirectory to illustrate TABing. - FM
+11-15-95
+* Added the HTML 3.0 DTD structures and definitions for SPOT, and fully
+  implemented it (use SPOT ID="foo" as SGML_EMPTY instead of named anchors
+  with no content). - FM
+* Added the HTML 3.0 DTD structures and definitions for TAB.  For now, it
+  simply puts a collapsible space in the text stream if the TO attribute
+  is present. - FM
+* Added the top-level HTML 3.0 DTD structures and definitions for MATH, and
+  implemented it's ID attribute.  The markup is captured as HTML_LITTERAL,
+  and until we have a processor, is output as is, in brackets to alert the
+  user about the situation. - FM
+11-14-95
+* Tweaks of LYK_UP_LINK and LYK_DOWN_LINK handling, and added them to the
+  default mapping as '<' and '>'. - FM
+* Tweaks of LYK_TOOLBAR handling. - FM
+11-13-95
+* Added LYK_TOOLBAR (mapped by default to '#') for jumping up to the pseudo
+  Toolbar or Banner if present in the current document.  Using '#' instead
+  of Home to jump there allows you to Left-Arrow back to where you were in
+  the current document.  Set up a BANNER in about_lynx-dev.html to serve
+  as an example of this feature. - FM
+* Added the HTML 3.0 DTD structures and definitions for BANNER, implemented
+  its ID attribute, and set it up to act as a pseudo Toolbar if one hasn't
+  been set up already via REL attributes of LINKs. - FM
+* Tweaks of paragraphing for CAPTION, CREDIT, FOOTNOTE, and NOTE. - FM
+11-12-95
+* Handle (i.e., ignore) any P that immediately follows an LI, DT or DD. - FM
+* Cancel any file fetch and viewer spawn or launch during traverals. - FM
+11-11-95
+* Added finger gateway (finger://host[/request]) based on patches from
+  Martin Hamilton (martin@mrrl.lut.ac.uk). - FM
+* Added LYE_TAB for mapping keys to act as LYE_ENTER, but return '\t' so
+  that the behavior of TAB is emulated in TEXTAREAs, and mapped Do to
+  LYE_TAB in the default binding. - FM
+* Fixed glitch in handling of DEC extended characters which contain two
+  digits (affected Do and Find). - FM
+* Better documented that disabling access to hidden (dot) files also
+  disables ability to create such files via Lynx. - FM
+11-10-95
+* Added handling of mailto as a form ACTION.  See http://www.q-d.com/swc.htm
+  for software to extract and unescape the mailed content. - FM
+* Added lynxprog URL handling, which is identical to lynxexec URL handling
+  except that the user is not prompted to enter RETURN before returning
+  to Lynx.  Use lynxprog for scripts or programs such as mail which do not
+  need an enforced pause to let the user read the screen output. - FM
+* Removed code in HTFile.c for treating ',' as a synomym of '.' for
+  hidden files (nobody seems to know why that was being done 8-). - FM
+* Moved inclusions from LYBookmark to tcp.h. - FM
+11-08-95
+* Extend optional hidden (dot) file/directory support to Unix, and embellished
+  it on VMS and Unix with regulation via a command line switch and 'o'ptions
+  menu setting.  See userdefs.h and lynx.cfg for more information. - GL & FM
+* Added support on Unix for straight tar files and a compile time option that
+  disables the ability to extract files from an archive file (since there is
+  no control over the files extracted). - GL
+11-07-95
+* More tweaks of 8-bit character handling. - FM
+* Added "Macintosh (8 bit)" character set. - Neil K. Guy
+  (nkg@freenet.vancouver.bc.ca)
+* Added "Example Lynx Optimized User Home Page" to the online 'h'elp. - FM
+11-05-95
+* Fixed Cc: header handling for email on Unix. - FM
+11-04-95
+* Reference the current character set for any raw 8-bit characters in
+  text/plain streams (but don't translate named or decimal escaped
+  entities, since that's specific for text/html). - FM
+* Block any illegal control or escape characters in text/plain streams,
+  to avoid problems if a binary ftp or local file was mistyped and sent
+  to the screen as that Content-type. - FM
+* Eliminated mod in SGML.c which emulated Netscape's bug of treating '>'
+  as both a close-double-quote and close-tag (Netscape v2.0 fixed its
+  bug, so hopefully the bad HTML with it will go away. 8-). - FM
+11-02-95
+* Assume an ISO-8859-1 character set for all local files.  If it's
+  actually ISO-8859-2 and the terminal is using that, set the Lynx
+  CharSet option to "ISO Latin 1" so that 8-bit characters will be
+  sent raw to the terminal. - FM
+* Added Martin Ramsch's iso8859-1.html to the test subdirectory.
+  Use it to complete the conversion tables in LYCharSets.c. - FM
+* Don't block insertion of a lead space for INPUTs in PRE blocks, so
+  alignments will be compatible with those of graphic clients. - FM
+* Don't block all access to the 'p'rint menu for the print restriction
+  (should still offer printer options which have the TRUE flag set;
+   all access is still blocked for -validate). - FM
+* Replaced the STDfoo_FILENO symbols in LYCgi.c with the more portable
+  fileno(stdfoo). - WM
+* Added NCURSESINCDIR compilation symbol for setting the path to the
+  NCURSES header file in LYCurses.h to that of the latest version. - GL
+* Tweaks of interrupt handling on VMS.
+10-31-95
+* Added more suffix maps in HTInit.c. - FM
+* Mods in LYCgi.c which hopefully makes the code more portable across
+  Unix flavors. - FM
+10-28-95
+* Tweaks of global flag initializations and resets in HTML.c. - FM
+* Added RESOLVLIB symbol in the top Makefile for including -lresolv
+  in the LIBS= list, if needed, for SUN 3 or 4 OS, and comments about
+  that in the Makefile, and INSTALLATION and PROBLEMS files based on an
+  explanation from Will Mengarini (seldon@eskimo.com). - FM
+10-27-95
+* Mods of top level Makefile:  Added NOPORT compilation symbol for forcing
+  use of PASV in ftp URLs.  Added NO_S_IFSOCK compilation symbol for Unix
+  flavors which lack an S_IFSOCK definition for lstat(). - FM
+* Reload the current document whenever the character set is changed. - FM
+* Don't reference entities for raw (or decimal escaped) 8-bit characters
+  if the document is not text/html, or for any local files if the charset
+  is Latin. - FM
+* Made Ctrl-H a synonym for DELETE instead of Left-Arrow in the line
+  editor. - FM
+10-25-95
+* Handle all characters in strings for the new line editor as unsigned
+  so they don't go negative if 8-bit. - DW
+* Restored proper handling of the MAXLENGTH attribute in INPUTs for
+  strings entered with the new line editor. - FM
+10-24-95
+* Deal with all non-printing characters when setting up the SELECT
+  pop-up window strings. - FM
+* Handle raw 8-bit characters via reference to the ISO-LATIN1 named
+  entities so they in turn can be referenced to the currently selected
+  character set. - FM
+* Yet more tweaks of non-breaking space handling. - FM
+10-22-95
+* Improved treatment of the startpage URL with -traversal so that it only
+  blocks traversals of links on other servers.  Any links on the same
+  http server which shouldn't be traversed may be blocked via explicit
+  and/or wildcarded entries in REJECT.DAT.  Updated CRAWL.announce to
+  make this more clear. - FM
+* Typo fixes in top-level Makefile. - Steve Jeske (jeske@pa.dec.com)
+10-21-95
+* Handle decimal escaped entities via reference to the ISO-LATIN1 named
+  entities so they in turn can be referenced to the currently selected
+  character set. - FM
+10-20-95
+* Tweaks of formatting for LONG_LIST directory lists and README file
+  inclusions in HTFile.c and HTVMSUtils.c. - FM
+* Tweaks of decimal escaped non-breaking space handling in HTML.c. - FM
+* Force unescaping of hidden VALUEs for INPUTs as ISO-LATIN1. - FM
+* Added ".shtml" and ".htmlx" as text/html extensions in HTInit.c. - FM
+10-18-95
+* Made parsing of the name and address out of the NNTP From: header more
+  reliable in HTNews.c. - FM
+* Added "LYNX_TEMP_SPACE" environment variable (Unix) or VMS logical,
+  which if present at run time will be used instead of the the TEMP_SPACE
+  definition in userdefs.h as the path prefix for temporary files. - FM
+10-17-95
+* Added TYPE attritute for OL, and coordinated it with the SEQNUM and
+  CONTINUE attributes.  The default TYPE is "1" (Arabic numbers), and
+  SEQNUM values for it can range from -29997 to the system's maximum
+  integer.  The Alphabetic TYPEs are "A" (upper case) and "a" (lower
+  case), and can range from 1 (" A." or " a.") to 18278 ("ZZZ." or
+  "zzz.").  The Roman TYPES are "I" (upper case) and "i" (lower case),
+  and can range from 1 (" I." or " i.") to 3000 ("MMM." or  "mmm.").
+  SEQNUM values should always be Arabic, and will be converted to
+  other types (e.g., SEQNUM="27" TYPE="a" will yield "aa." for the
+  next LI). The CONTINUE attribute will cause the sequence and TYPE
+  of the preceding OL to be continued for LIs in the current OL. - FM
+10-16-95
+* Treat a value of "*" for "no_proxy" as a global override of any
+  existing proxy variables. - FM
+10-15-95
+* Deal with raw or decimal escaped non-breaking space characters in
+  SGML_character() of SGML.c and LYUnEscapeEntities() of HTML.c. - FM
+10-14-95
+* Updated info about lynx-dev in lynx.man and lynx.hlp. - FM
+* Don't force LINKS_ARE_NUMBERED in dumps if -nolist was included. - FM
+* Output the References list for dumps with OL-style numbering. - FM
+* More tweaks of "anti-spoof" handling for telnet URLs. - FM
+10-13-95
+* Block direct access to the telnet prompt for telnet URLs entered without
+  a host field. - FM
+* Include the TRUSTED flag in spawns for OpenVMS/AXP v6.1 or greater. - FM
+10-12-95
+* Convert any strings in news articles that look like URLs into links. - FM
+* Use the Followup header in news articles, if present, for followups.
+  Otherwise, use the Newsgroups header.  - FM
+* Ignore any invalid ISO 646 7-bit control characters or ISO 8859 8-bit
+  control characters in SGML_character() of SGML.c. - FM
+10-11-95
+* Typo fix in HTTCP.c for non-MULTINET VMS builds. - Gary Chow (garyc@mrs.com)
+10-09-95
+* Assume the root as path in HTParse() of HTParse.c if the access and host
+  but no path are given, and the access is http, https, or ftp. - FM
+10-05-95
+* Make sure the FREE(x) macro gets defined for HTTCP.c. - FM
+10-04-95
+* Mods in HTTCP.c to prevent string buffer overruns. - FM
+* Prevent possible string buffer underrun for terminal white space trims
+  in GridText.c. - Renato Buda (renato@peoplebank.co.uk)
+10-01-95
+* Updated the listserv and archive addresses in the about and help files. - FM
+09-30-95
+* Added support for Windows_NT FTP servers. - FM
+* Added ability to send a self copy of mail via a Cc: header on Unix
+  (sending of self copies is set via the mail software itself on VMS). - FM
+* Tweaks of SOCKET_ERRNO handling in HTTCP.C. - FM
+* Include unistd.h more consistently on Unix (via tcp.h) if NO_UNISTD_H
+  is not defined. - FM
+* Modified the FreeBSD and NetBSD libwww Makefiles to use the
+  CommonMakefile. - FM
+* Makefile addition (snake3) for the HP-UX purchased compiler. - Andy
+  Finkenstadt (genie@panix.com)
+09-29-95
+* Deal with HTAlert.c function calls to LYgetstr(), e.g., for a password,
+  when doing a -dump or -source non-interactive fetch. - FM
+* Output HTAlert() messages to both stderr and stdout in TRACE mode. - FM
+09-28-95
+* Added a description of the line editor's default key bindings to the
+  help file set. - FM
+* Tweaks of the line editor. - FM
+* Declare DCLspawn_exception() in LYCurses.c as unsigned int only for
+  DECC (otherwise as int, for VAXC and GNUC). - FM
+09-27-95
+* Added common line editor for forms and prompted queries, with configurable
+  line editor key bindings.  See LYStrings.h and LYEditmap.c for the default
+  configuration. - DW & FM
+* Tweaks of build.com's symbol assignments when in batch mode. - MM
+09-22-95
+* Added ISO-8859-2 CharSet, and mods for Accept-Charsets handling based
+  on patches from Mark Martinec (Mark.Martinec@nsc.ijs.si). - FM
+09-19-95
+* Tweaks of OL attribute handling.  Allow negative SEQNUM values.  Keep
+  better track of CONTINUE versus non-CONTINUE OL sequences within nests.
+  Allow CONTINUE in the first OL of a new nest, set to the last LI count
+  of the previous nest (at any depth in that previous nest). - FM
+09-17-95
+* Tweak of LYUnEscapeEntities() in HTML.c. - DW & FM
+* Another tweak of groupid handling in LYShowInfo.c. - DW
+* More fixes of 7-bit character approximations. - DW
+* More help and about file tweaks. - DSL
+09-16-95
+* Added the HTML 3.0 DTD structures and definitions for DIV, and implemented
+  its ALIGN and ID attributes.  I think I have it behaving rationally if it
+  is used together with CENTER, LEFT and/or RIGHT (Though they're all treated
+  as DIVs by Lynx, and shouldn't be embedded in each other, somebody will do
+  that anyway!. 8-). - FM
+* Added the HTML 3.0 DTD structures and definitions for FN (Footnote).  It
+  should be handled as a popup window, but for now, it's implemented as a
+  labelled block and has the same style and behavior as a NOTE with an ID
+  attribute. - FM
+* Some compilers can't handle the continuation line in yesterday's
+  LYCurses.h.  Made it one long line. - FM
+09-16-95
+* Further enhanced the online help and about files. - FM
+* Added -DNO_FILIO_H to Makefile for SCO. - FM
+* Worked in stuff from 14-Sep-95 lynx2-4-2 upgrade. - FM:
+--------------------------------------------------------
+  09-06-95
+  * Added patch to compile Lynx on BSDI with Ncurses package. -RK
+  09-06-95
+  * Ported Lynx to DG-UX. - RK
+--------------------------------------------------------
+09-12-95
+* Further modified HTNews.c so that it returns unmodified news messages
+  when the display is toggled to source ('\') or when downloading them,
+  so uuencoded messages always can be saved without corruption, and so
+  I also changed the SCAN_FOR_BURIED_NEWS_REFS compilation default to
+  TRUE. - FM
+* Simplified a compound if() in HTParse.c which may have been giving the
+  AIX v4.1 compiler a headache. - FM
+09-11-95
+* Eliminated distinct style sheets for CAPTION and CREDIT so their content
+  will inherit the current style, and added HTML_EnsureDoubleSpace() and
+  HTML_ResetParagraphAlignment() in HTML.c for coping with the absence of
+  distinct style sheets for those elements, and for FIG.
+09-10-95
+* Added SCAN_FOR_BURIED_NEWS_REFS configuration symbol in lynx.cfg, with
+  a compilation default of FALSE, and a -buried_news switch for toggling
+  the default.  When TRUE, Lynx scans the bodies of news articles for
+  references and converts them to news links, but creates false news
+  links if any email addresses are enclosed in angle brackets, and can
+  trash uuencoded messages. - FM
+* Eliminated distinct style sheet for FIG so its content will inherit the
+  current style and display appropriately within lists.  Should be OK if
+  people use valid HTML 3.0 in it's content for non-graphic clients. - FM
+* Added links for the W3C HTML 2.0 and 3.0 specifications and for the
+  HAL HTML validation service to the Lynx help file set.
+* Made the BOLD_NAME_ANCHORS compilation symbols FALSE by default.  Most
+  documents now include emphasis tags for NAME (ID) anchors if it's desired,
+  because the most common graphic clients don't emphasize them by default,
+  so we should adjust to that in Lynx as well (IMHO 8-).  Added emphasis
+  tags for the NAME anchors in the Lynx help files. - FM
+* Eliminated forced uppercasing of H1 headers.  Most documents have mixed
+  casing and we should preserve it (IMHO 8-).  Added a BOLD_H1 configuration
+  symbol, set FALSE by default, for making H1 headers bold even if BOLD_HEADERS
+  is FALSE.  Modify the two configuration symbols in lynx.cfg for the pattern
+  or header emphasis which pleases you. - FM
+* Tweak of list paragraphing.  Added HText_PeviousLineSize() in GridText.c
+  for determining if the previous line had only non-printing characters. - FM
+09-09-95
+* Impelemented true paragraphing and the P ALIGN attribute within lists (UL,
+  OL and DL blocks) and within ADDRESS blocks.  Paragraphs within lists have
+  one blank line inserted.  Within ADDRESS blocks, a newline will be created
+  if needed, but no blank lines are inserted.  Use BR, not P, to force extra
+  newlines within blocks.  Do not place a P immediately following the LI or
+  DD tags.  Alignments of P blocks are done with respect to the "second line"
+  margins of LI or DD elements. - FM
+09-08-95
+* Convert '~' to getenv("HOME") in file URLs whether or not DIRED_SUPPORT
+  is defined. - FM
+* Tweak of TR and more tweaks of HR handling.  Added HText_LastLineSize()
+  and HText_TrueLineSize() functions in GridText.c for determining if
+  lines have only non-printing characters in decisions on whether to
+  insert additional newlines. - FM
+09-07-95
+* Act on Page-Up, Page-Down, Home, End, Find and Select in the form_getstr()
+  editor (hoping they have their default mappings 8-).  Also act on Remove
+  and Control-D as delete keys in that line editor (as in the LYgetstr()
+  line editor). - FM
+* Tweak of HR handling. - FM
+* Mods to prevent creating multiple copies of temporary printer files. - FM
+* More fixes for NeXT.  Temporary files for VIEWER, DOWNLOADER or PRINTER
+  commands on NeXT all have the ".html" default suffix replaced with ones
+  indicative of the Content-type. - FM
+09-06-95
+* Mods to prevent creating multiple copies of temporary viewer or downloader
+  files. - FM
+* Fixes for NeXT. - FM
+09-05-95
+* Enabled the -help switch when no configuration file is available and
+  Lynx would otherwise exit (i.e., it now outputs the help message before
+  it exits). - FM
+* Documented the -child switch. - FM
+* Fixed and documented the -nolog switch. - FM
+* Changed the -linknums switch to -number_links, fixed the code to work,
+  and documented the switch. - FM
+* Made handling of escaped colons (\:) in VIEWER commands reliable. - FM
+09-04-95
+* Implemented the PLAIN attribute for UL, and the SEQNUM and CONTINUE
+  attributes for OL. - FM
+* Updated the DTD structures and definitions for DD, DL, DT, LI, OL and UL
+  to HTML 3.0, added LH, and implemented full HTML 3.0 ID handling for those,
+  and B, BLINK, BR, CENTER, CITE, CODE, DFN, DIR, EM, FORM, KBD, I, LEFT,
+  LISTING, MENU, PLAINTEXT, PRE, RIGHT, SAMP, STRONG, TT, U, VAR and XMP
+  (some of which are obsoleted in HTML 3.0, but what the heck 8-). - FM
+09-03-95
+* Made bolding of NAME (ID) anchor contents configurable in lynx.cfg. - FM
+09-02-95
+* Tweaks of FIG and OVERLAY handling:  Only put up [FIGURE] (and +[OVERLAY])
+  links if clickable_images is set.  Assume P ALIGN="left" if contained
+  text does not begin with an explicit tag that sets an alignment. - FM
+* Implemented full HTML 3.0 ID handling for IMG. - FM
+* Tweaks for FreeBSD. - Masafumi NAKANE (t94303mn@sfc.keio.ac.jp)
+08-31-95
+* Added support for using a TITLE attribute as the subject in anchors with a
+  mailto HREF (A HREF="mailto:address" TITLE="RE: subject"). - FM
+08-30-95
+* Implemented full HTML 3.0 ID handling for A, ADDRESS, BLOCKQUOTE, BQ,
+  CAPTION, CREDIT, FIG, H1 - H6, HR, INPUT, NOTE, OPTION, P, SELECT, TABLE,
+  TD, TEXTAREA, TH and TR. - FM
+* Updated the DTD structures and definitions for ADDRESS to HTML 3.0. - FM
+* Block insertion of any escape sequence characters or substitutes when
+  editing form INPUTs or TEXTAREAs. - FM
+08-29-95
+* Tweak of ALIGN attribute handling in paragraphs. - FM
+* Protect against hanging on escape sequences if received (illegally) in
+  documents typed as text/plain or text/html. - FM
+08-28-95
+* Declared DCLspawn_exception() as an unsigned int to keep DECC happy. - FM
+08-27-95
+* Give LYUpload() a return value (because LYLocal.c has been testing for
+  one all these years 8-). - FM
+* Force reload on return from 'o'ptions menu if HTfileSortMethod or
+  keypad_mode are changed. - FM
+* Force no cache of keymap display whenever vi_keys or emacs_keys are
+  changed. - FM
+* Added Remove and Control-D as Delete synonyms for removing characters to
+  the left of the cursor in the LYgetstr() line editor, and Control-F as
+  Right-arrow synonym for moving the cursor to the right. - FM
+08-24-95
+* Modified prompted string editing via LYgetstr() along lines in patch
+  from PM (editing of form INPUT and TEXTAREA strings is unchanged).
+  Here's how the prompted string editing works:  Left-arrow and Backspace
+  (Control-H) move the cursor to the left, and Right-arrow to the right,
+  within the string.  Characters are INSERTed at the cursor position.
+  Delete removes characters to the left of the cursor.  Home, Find and
+  Control-A move the cursor to the beginning of the string.  End, Select
+  and Control-E move the cursor to the end.  Control-U erases the string.
+  Control-G cancels at any time.  Return accepts if a string is present,
+  or cancels if it was fully erased or never entered.  A right-curley
+  brace appears in the right-most column when the string has segment(s)
+  scrolled off screen, and if left scrolled, the cursor sits on it for
+  further editing with the above command keys (or acceptance via Return).
+  Long strings scroll both left and right between the prompt string and
+  right-curley brace.  Had to modify 17 files to make this line editor
+  crash safe (I hope people like it!  8-). - FM
+08-22-95
+* Use a macro in parse_arg() of LYMain.c to ensure proper handling of
+  switches which take a value and might have a space instead of an '='
+  between the name and value. - DW
+* Insulate any system RTL's getline() from the one in HTInit.c. - DW
+* Enabled editing of titles when adding bookmarks. - FM
+08-21-95
+* Fixed the IBM PC character set in LYCharSets.c (Note:  The PC-set has the
+  currency symbol but it is a control character - ^O - so there is a chance
+  that curses or the user's terminal may discard it.  Did not fix the
+  Icelandic characters). - DW
+* Check whether getpwuid() and getgrid() have returned NULL pointers in
+  LYShowInfo.c. - DW
+* Break up the too elaborate, compound assignment statements in LYList.c
+  so no compilers get tripped up by evaluation order effects. - DW
+* Worked in mods from DW to cope with CR, CRLF or LF all as EOL in HTML.c
+  and GridText.c (not sure if they take into account all of the consequences
+  of Lou's "big cheat" in GridText.c, but they appear to, so far). - FM
+* Explicitly preserve the Lynx bookmark file mode on Unix. - DSL
+08-20-95
+* More documentation and help updates. - FM
+08-19-95
+* Updated INSTALLATION and comments in userdefs.h and lynx.cfg. - FM
+* If save to disk was done via the download menu, and a VMS rename() attempt
+  succeeded so we don't spawn a COPY, we no longer can access the file via
+  the download menu, so pop in that situation. - FM
+* Worked in stuff from 16-Aug-95 lynx2-4-2 upgrade.  Most had already been
+  added to lynx2-4-FM.  This is the new stuff. - FM:
+---------------------------------------------------
+  08-16-95
+  * Applied patch from Peter van Heusden (pch@ucthpx.uct.ac.za) to fix
+    a bug when lynx encounters an OPTION tag before the style is
+    ever updated. - CL
+  08-09-95
+  * Added some tweaks to Makefile and LYCurses.h to get lynx to properly
+    compile on ISC.  Thanks to Robert Salter (salter1@master.nsbf.nasa.gov).
+---------------------------------------------------
+08-18-95
+* Added a -validate switch for turning off everything except http URLs,
+  helpfiles, and secure menus in Lynx.  Can be used with -dump in CGI
+  scripts, but is intended for use with anonymous telnet logins.  In the
+  latter case, the user can start with his/her server's or userdir homepage,
+  and validate everything, while able to manipulate the display features
+  (e.g., whether or not links are numbered) and turn on trace (Control-T,
+  then Control-R to reload) when a "Bad HTML" document is encountered.  The
+  telnet approach is particularly useful when used with the 'l'ist feature.
+  When used with -dump, compare it with versus without -nolist. - FM
+* Added a missing curley brace in EF's (08-16-95) patches. - FM
+08-17-95
+* Added HISTORICAL_COMMENTS symbol which if set TRUE in lynx.cfg will cause
+  Lynx to revert to the "historical" behavior of treating any '>' as a
+  comment terminator instead of (a valid) '-->', and a -historical switch
+  for toggling the default behavior. - FM
+* Added a -nolist switch for turning off the link list feature in dumps. - FM
+* Modified SGML.c so that it still substitutes the expected end tag if a
+  different one is encountered (e.g, due to a document having interdigitated
+  instead of validly embedded tags), but doesn't do a wind down of the
+  element stack.  This gives it a better chance of recovering from bad
+  HTML, and the sanity checks I've added thus far in HTML.c appear to still
+  be adequate for avoiding crashes (we'll see 8-). - FM
+08-16-95
+* Mods to support within-document anchors in documents returned via
+  lynxcgi scripts. - FM
+* Worked in EF's patches to handle changes of keymaps under DIRED_SUPPORT
+  with OK_OVERRIDE, and to give the user some feedback during an Install
+  command. - FM
+08-15-95
+* Don't include a Referer header for 'g'oto URLs. - FM
+* Added patches from PR for compilations with VMS port of GNUC:  Modified
+  several prototypes to avoid GNUC warnings about conflicts with ones in
+  lib$routines.h, and added code in HTVMS_WaisUI.c to deal with an obscure
+  glitch for GNUC v2.6.[123] and v2.7.0 (not present in v2.6.0 or earlier,
+  and fixed in v2.7.1). - FM
+* Worked in code from PR as LYVMS_FixedLengthRecords() in HTFWriter.c to
+  change attributes of binary files on VMS from Stream_LF to FIXED 512,
+  no implied carriage control, best try contiguous.  Replaces the spawn
+  to execute FIXED512.COM. - FM
+08-14-95
+* Modified TEXTAREA handling to succeed or fail on bad HTML equivalently
+  to Netscape. - FM
+08-12-95
+* Mods to avoid crashes and to do something reasonable with OPTION strings
+  that are wider than the available popup window width.  Truncation is
+  indicated by omission of a terminating ']' in the window link, and the
+  window, when popped up, is made equal to the screen width (but we can't
+  wrap the strings within the window, so they're truncated if they still
+  don't fit). - FM
+* Mods to handle INPUT fields that are packaged in PRE and would extend past
+  the wrap column.  No way to make that perfect without a major redesign,
+  but it's better now. - FM
+08-10-95
+* Handle 'g'oto entries equivalently to STARTFILE and HOMEPAGE, i.e., if
+  the user's entry isn't a URL, convert it to a file URL if it's a file
+  or directory on the local system, otherwise convert it to an http URL.
+  For example, "~/" will be converted to a file URL for listing the HOME
+  directory (on both Unix and VMS), and "www.netscape.com" will become
+  "http://www.netscape.com". - FM
+* Fix LYCurses.h to deal with definitions of TRUE and FALSE in cursesX.h
+  on ultrix. - Brian Exelbierd (bex@ncsu.edu)
+* Made SYSTEM_MAIL, and MAIL_ADRS on VMS, configurable in lynx.cfg. - FM
+08-08-95
+* Fixed two initialization problems that could account for reports of
+  inappropriate HEAD requests in pops of cached documents. - FM
+* More tweaks for coping with bad HTML. - FM
+* Fixed bug in code for bypassing bad SUFFIX: or VIEWER: entries. - FM
+08-06-95
+* Added code in GridText.c to deal with syntactically OK but symantically
+  nonsensical uses of ALT="" in IMG tags (i.e., when the IMG is structured
+  to provide the anchor for a link, and so the anchor ends up with nothing
+  but nonprinting characters for bolding), and removed the forcing of an
+  "[ISMAP]" pseudo-ALT in HTML.c.  The show_anchor element in TextAnchor
+  structures is now set to NO whenever an anchor does not have any
+  printing characters. - FM
+* Modified HTML.c to issue only one "Bad HTML" statusline message per
+  document (unless it's one of those unbelievably bad CGI script outputs
+  that are functionally multiple, concatenated documents 8-), and similarly
+  for "Table in Form" and "Form in Table" informational messages. - FM
+* Don't bother prompting whether to send a HEAD request for the current
+  document if there are no links on the page (but still prompt if the user
+  makes a HEAD request when positioned on an inappropriate form link). - FM
+08-05-95
+* Added code in SGML.c for storing Identfiers (e.g., !DOCTYPE) and Comments
+  (i.e., tags beginning with !--) and for reporting them in trace mode.
+  Serves as a model for actually using them someday (i.e, functions for
+  analyzing them could be called where we presently just invoke a trace
+  output to stderr). - FM
+08-03-95
+* Modified SGML.c to handle comments as in the current specs, and put
+  Paul Gilmartin's (pg@sweng.stortek.com) TestComment.html in the
+  test subdirectory. - FM
+* Added binary extensions in HTInit.c that were giving people problems
+  on FTP servers. - FM
+08-02-95
+* Added explicit check for CMU in telnet support with SOCKETSHR-built
+  images. - SB
+* Added -link switch for setting the count in lnk#.dat files with -crawl
+  (needed if you interrupt a traversal and want to pick up again where
+  you left off). - DM
+* More tweaks of -traversal code and Makefile.  All known bugs appear to
+  have been dealt with at this point.  Updated lynx.man, lynx.hlp and
+  help files to include the -traversal and -crawl switches. - FM
+08-01-95
+* Changed the SEQUENT compilation sympbol to PTX2 and added a ptx2 procedure
+  to the Makefile for Sequent Symmetry DYNIX/ptx v2, because more current
+  versions reportedly have solved the problems which the conditional
+  compilation attempted to address. - FM
+* Force in the "[ISMAP]" pseudo-ALT if someone uses ALT="" for an IMG tag
+  that has ISMAP specified. - FM
+* Tweaks of the -traversal code (still experimental). - DM & FM
+07-31-95
+* Worked in code from David Mathog (mathog@seqaxp.bio.caltech.edu) for
+  implementing the TRAVERSAL function from old versions of Lynx, but via
+  a command line switch (-traversal) instead of in a separately compiled
+  executable, and for a CRAWL function, invoked via a command line switch
+  (-crawl), which allows Lynx to be used as the front end for a Web Crawler.
+  See CRAWL.announce for more information. - FM
+* More tweaks of LYCurses.c and LYCgi.c for GNUC on VMS. - SB
+* More tweaks of src/Makefile. - DSL
+07-30-95
+* Tweaks of yesterday's Makefile and descrip.mms files. - FM
+07-29-95
+* Tweak in HTFTP.c to ensure that Lynx doesn't sit around waiting for an
+  FTP server's good-bye message if the server closes the connection itself
+  and doesn't send one. - FM
+* Added GNUC support to the VMS descrip.mms files. - FM
+* Tweaks of HTWAIS.c socket handling on VMS (I can't reproduce a reported
+  problem with SOCKETSHR/NetLIB, but these tweaks might help). - FM
+* Added my guesses at code for HTTelnet.c to implement telnet, tn3270 and
+  rlogin support, if available, when building with SOCKETSHR/NetLIB on
+  VMS. - FM
+07-28-95
+* Mods for Sequent Symmetry DYNIX/ptx - Mark Kolmar (mkolmar@ccs.nslsilus.org)
+* Added GL's lynxcgi patches posted to lynx-dev, plus some tweaks. - FM
+* Worked in GL's lynxcgi mods as in Lynx2-4-2:
+  --------------------------------------------
+   Added George Lindholm's LYNXCGI feature.  This allows lynx to bypass
+   http daemons to run local CGI scripts using a URL of the form
+   "lynxcgi:/path/cgi-script".  To implement in Lynx, LYNXCGI_LINKS
+   must be uncommented in userdefs.h and TRUSTED_LYNXCGI must be fixed
+   in lynx.cfg.  It doesn't handle redirection or mime-types and
+   scripts should probably generate partial URLs when referring back to
+   itself.  If the file you're going after isn't an executable then it
+   will be loaded as regular file.  This makes it possible to go back
+   and forth between cgi-scripts and .html files.
+   I changed the way TRUSTED_LYNXCGIs are recorded because they don't
+   work quite the same as TRUSTED_EXECs do.  Also, George says it works
+   fine on SunOS and Solaris, and it seems to work fine on Linux. - CL
+  --------------------------------------------
+* Don't block access to the download menu when both no_download and
+  no_disk_save are set if any of the download commands have always_enabled
+  set (ie. present a reduced menu, with those still available). - FM
+* More tweaks of help and html files. - DSL
+07-26-95
+* Added support for GNUC in the VMS .com files.  Should now compile and link
+  automatically for GNUC via build.com, but that needs testing. - FM
+* Reorganized VMS option files into ones for the transport and ones for the
+  compiler, with corresponding updates of the .com and .mms files. - FM
+* Tweaks of mods for GNUC on VMS, based on further discussions with
+  SB. - FM
+* Tweaks of -help output. - Daniel S. Lewart (d-lewart@uiuc.edu)
+07-25-95
+* Ugh!!  Blew it for Unix when setting up the GLOBALDEF/GLOBALREF definitions
+  in tcp.h for VAXC vs. DECC vs. GNUC on VMS this morning (I'm a night
+  person 8-). - FM
+* Worked in code for compiling with the VMS port of GNUC, based on patches
+  from Sterling Bjorndahl (bjorndahl@augustana.ab.ca) and advice from
+  Pat Rankin (rankin@eql.caltech.edu).  Needs testing, and the linking
+  procedure still needs to be addressed explicitly. - FM
+* Prevent possibility of a null pointer dereference if an ISMAP anchor
+  fetch fails. - David Trueman (david@cs.dal.ca)
+07-21-95
+* Added LYK_HEAD (mapped by default to ']') to send HEAD requests for the
+  current document or link (always sent with LYforce_no_cache). - FM
+* More lynx.man, lynx.hlp, help file and documentation updates. - FM
+07-19-95
+* Put back "-mime_headers" with mods like those in lynx2-4-2, i.e., so that
+  a source dump is forced.  Both "-mine_headers" and "-head" show the status
+  line as well as the MIME headers. - FM
+* Modified "-error_file" to show the complete status line, as well as the
+  URL and METHOD, and to concatenate entries instead of creating separate
+  files for each request. - FM
+* Updated the lynx.man, lynx.hlp and lynx_help files. - FM
+07-18-95
+* Changed "-mime_headers" to "-head" and implemented it as a HEAD request
+  for fetching the MIME headers as text/plain. - FM
+07-17-95
+* Removed 00DIFFERENT from this distribution. - FM
+* Made use of _underline_ format in dumps optional via SUBSTITUTE_UNDERSCORES
+  definitions in userdefs.h and/or lynx.cfg, and added a "-underscore"
+  command line switch for toggling the default on or off. - FM
+* Use system("exec $SHELL") for spawning the default shell on Unix. - Paul
+  Gilmartin (pg@sweng.stortek.com)
+* Fixed typo in check for news vs. nntp URLs in HTNews.c. - Wilson Cheung
+  (wcheung@netcom.com)
+* Added code to the VMS setup() for dealing with curses conficts if someone
+  used -post_data or -get_data without specifying -dump under conditions
+  which require it, so it's not forced in LYMain.c as on Unix.  If fact,
+  -get_data and -post_data are very useful in interactive invokations. - FM
+* Fixed memory leak in the -post_data and -get_data handling. - FM
+* Added LYNX_HOST_NAME in userdefs.h and lynx.cfg for defining an alias
+  which will be treated equivalently to "localhost" and HTHostName (the
+  fully qualified domain name of the system running Lynx) in checks for
+  URLs on the local host (e.g., when the -localhost switch is set). - FM
+* Added in or improved descriptions for the new switches in the Lynx
+  command line help and Lynx_users_guide.html. - FM
+07-16-95
+* Tweaks of yesterday's startfile and -homepage mods, and added treatment
+  of '~' as SYS$LOGIN when used as the lead character on VMS (e.g., on
+  VMS as on Unix,  lynx ~/  will create a listing of the login directory
+  for the account running lynx). - FM
+* Worked in stuff from 13-Jul-95 lynx2-4-1 upgrade.  Most had already been
+  added to lynx2-4-FM.  This is the new stuff. - FM:
+---------------------------------------------------
+   07-13-95
+* Added some command line patches from Peter Brooks - CL:
+  (pbrooks@micromind.com).  The new command lines are:
+	-post_data, -get_data = send form data from stdin and dumps results.
+	-auth=ID:PASSWD = sets authorization stuff at startup.
+	-mime_header = prints mime header with -source.
+	-noredir = prevents automatic redirection
+	-error_file=file = prints HTTP status code to file.  (Not sure of
+		his motivation on this one, something to do with SlipKnot,
+		I think.)
+	(Replaced Peter's strdup()'s with more portable code. - FM)
+   07-11-95
+* Added Erik Olson's (olson@phys.washngton.edu) patch to use the
+  _underline_ format when using the -dump option. - CL
+  (Kept the old code, #ifdef'ed out, to make this optional someday. - FM)
+   07-07-95
+* Fixed a bug in local_dired.  Specifically, a pointer to a fixed array
+  was being fed into StrAllocCopy as the destination.  Linux was choking
+  on this although OSF/1 and AIX seemed to handle it better. - CL
+---------------------------------------------------
+07-15-95
+* If a command line "startfile" and/or -homepage is not a URL, and can't
+  be located as a file or directory on the local system, treat it as an
+  http URL, e.g., www.wfeb.edu will be treated as http://www.wfeb.edu - FM
+07-13-95
+* Added nntp URL handling (nntp://news_host[:port]/path).  Made it read
+  access only (use news URLs for both read and post access). - FM
+07-12-95
+* Added code for proxying https and snews URLs.  The Netsite proxy server
+  can proxy them without need for SSL code in the clients themselves, i.e.,
+  for Lynx as publically distributed (need client-resident SSL code and
+  tunneling for the CERN proxy server, sorry). - FM
+* Added the CONNECT protocol to our local code, so that SSL URLs can be
+  tunneled through proxy servers, and reorganized some code so that patches
+  for the SSL hooks can be applied easily if NSA regulations are relaxed. - FM
+07-11-95
+* More tweaks of alignment code. - FM
+* Fixed bad code for removing trailing white space in GridText.c, LYrcFile.c,
+  LYReadCFG.c and LYUtils.c. - FM
+* Added snews and nttp protocols, which simply inform the user that they
+  aren't implemented. - FM
+* The claim is that even mere hooks to the RSA and SSL libraries are
+  objectionable to the NSA, so I removed then from the public distribution,
+  but left in the https protocol, which simply informs the user that it
+  isn't implemented. - FM
+07-08-95
+* Worked in Lou Montulli's (montulli@netscape.com) code for https URL
+  handling into the Common Library.  To actually use it, you have to
+  get the RSA and SSL libraries, which are restricted to US citizens
+  (it works if you are and do 8-).  I can't include those in this
+  distribution, because by US law that would in turn restrict it to
+  US citizens. - FM
+* Tweaks of paragraph alignment code. - FM
+07-07-95
+* If we are not allowed to change the status of the "lynxexec
+  execution of links" from the option screen then we shouldn't be
+  allowed to change it from the .lynxrc file either. - GL
+* Added George Lindholm's patch to add uudecode support to Lynx's file
+  manager.  Unfortunately, uudecode puts the uudecoded file in the
+  current working directory, namely the directory where lynx is started.
+  I haven't thought of a workaround yet, so I made lynx print a
+  statusline message informing the user. - CL
+07-06-95
+* Modified redirection-handling code in HTTP.c to ensure that we get all of
+  the headers before trying to track down the Location: header. - FM
+* For move's or rename's in the local DIRED code, don't write the new file
+  name into the same buffer as the old. - Earl Fogel (fogel@duke.usask.ca)
+07-05-95
+* Added GL's mods to use a stream-based procedure for displaying the
+  current Lynx keymap.  Faster and more efficient than the temporary
+  file-based procedure. - FM
+07-04-95 (Enjoy the fireworks!!!  8-)
+* More mods of SGML/HTML parsing to help recover from bad HTML. - FM
+* Fixed some cryptic initialization problems in the Common Library's
+  centering and right alignment code, that we're now using, by changing
+  the malloc's in HTChunk.c to calloc's. - FM
+* Secured some unsafe code in the LYstrncpy() function. - FM
+* Increased the connect() and select() while()-looping limit in HTTCP.c
+  to 30,000 tries. - FM
+* Tweak of HR WIDTH attribute handling. - FM
+07-03-95
+* Updated the DTD structures and definitions for HR to HTML 3.0, plus
+  its Netscape WIDTH and SIZE attributes, and implemented WIDTH, e.g.,
+  HR WIDTH="50%" yields a centered horizontal rule half the width
+  between the current left and right margins. - FM
+* Fixed problem of header end tags not yielding line breaks when embedded
+  in CENTER, LEFT or RIGHT tags. - FM
+07-02-95
+* Added MAKE_PSEUDO_ALTS_FOR_INLINES in userdefs.h and lynx.cfg which can
+  be defined FALSE to treat inlines without an ALT string as having ALT=""
+  instead of inserting the pseudo-ALT string "[INLINE]" into the document.
+  The configuration file default can be toggled via a -pseudo_inlines
+  command line switch, and the user can toggle the inclusion of pseudo-ALT
+  strings on or off at run time via LYK_INLINE_TOGGLE (mapped by default
+  to '['). - FM
+* Made the -image_links command line switch a toggle for the configuration
+  file default setting. - FM
+* Enabled processing of forms that use TABLE for formatting.  I don't see any
+  risk of crashes, and they might end up usable.  Messages warn the user that
+  the display of the form may be strange. - FM
+* Relaxed anti-crash protections for forms with bad HTML (usually due
+  to interdigitated instead of embedded tags, written by providers with
+  Netscape or Mosaic clients, which are insensitive to such fundamentally
+  bad HTML).  I got the code to still work with several bad forms on the
+  Net, and if a crash should occur, the user has been tipped off via the
+  statusline or trace message about the nature of the problem. - FM
+07-01-95
+* Restored the meaning of the P element to be the beginning of a paragraph,
+  updated its structures and definitions in the DTD to HTML 3.0, and
+  implemented its ALIGN attribute (left, center, right).  Note that it
+  no longer forces double spacing (you'll get the spacing defined in
+  the stylesheet for the current element, which may or may not be
+  double) and empty paragraphs (serial Ps) will not yield additional
+  newlines (use serial BRs for that). - FM
+* If both download options and disk saves are restricted, don't fetch
+  binary files with a download offer when their links are activated
+  (just issue a statusline message that the file can't be displayed),
+  and issue a "disabled" statusline message for any overt 'd'ownload
+  attemps. - FM
+* For disk saves in LYDownload.c, on VMS attempt a rename() first, and then
+  a spawned DCL copy if that fails. - FM
+* Added memory exhaustion checks for all mallocs, reallocs and callocs in
+  the LYfoo modules. - FM
+* Added CL's realloc() substitute for AIX and ultrix in GridText.c. - FM
+* Map extensions .html3 and .ht3 to text/html in HTInit.c. - FM
+06-29-95
+* Added code to enable creation of links for all images.  Can be made the
+  default by setting MAKE_LINKS_FOR_ALL_IMAGES to TRUE in userdefs.h and/or
+  lynx.cfg (not advised).  Can be implemented for the session via a command
+  line switch, -image_links, e.g., use  lynx -dump -image_links  to get links
+  for all images, as well as standard links, listed in the output.  Can be
+  toggled on and off at run time via LYK_IMAGE_TOGGLE (mapped by default to
+  '*').  Use that in conjuction with the LYK_LIST command to get a list of
+  links that includes all images, e.g., for adding them as bookmarks.  The
+  toggle also invokes a reload, so that the change will be implemented for
+  the current and any future documents, but if you return to cached
+  documents, those will need to be reloaded explicitly.  See comments in
+  userdefs.h and lynx.cfg for more information. - FM
+* Don't restrict use of Control-T for toggling trace mode to advanced
+  usermode (i.e., make it available in all usermodes, so people might
+  follow the instructions in "BAD HTML" statusline messages to check
+  the document in trace mode). - FM
+* Modified LYList.c to indicate the anchor NAME/ID, if present, following
+  the TITLE, if known, in interactive 'l'ists.
+* Modified SGML.c to treat '>' as both a close-double-quote and close-tag.
+  Now Lynx acts like Netscape, in that respect, so all that bad HTML
+  Netscape users are generating will not bother Lynx. - FM
+06-28-95
+* Oops, missed an initialization in this morning's centering and right
+  alignment mods. - FM
+* Fixed up HTML.c to bypass HTML 3.0 attribute checks for start tags generated
+  by the Common Library's non-http access types (gopher, ftp, news, wais)
+  Could crash, otherwise.  - FM
+* Fixed up GridText.c code to take non-printing control characters properly
+  into account when formatting centered or right-aligned text. - FM
+* Mods to improve appropriate carryover or cancelling of alignment attributes
+  across successive elements. - FM
+* Implemented Netscape LEFT and RIGHT extensions, homologously to CENTER. - FM
+* Implemented Netscape BLINK extension as HT_UNDERLINE. - FM
+06-26-95
+* Updated the DTD structures and definitions for H1 - H6 to HTML 3.0 and
+  implemented their ALIGN attribute (left, right and center). - FM
+* Implemented the Netscape CENTER extension. - FM
+06-25-95
+* Updated the DTD structures and definitions for FORM, INPUT, TEXTAREA,
+  SELECT and OPTION to HTML 3.0. - FM
+* Implemented the HTML 3.0 DISABLED attribute for FORM elements. - FM
+* INPUT type "scribble" implemented as "text" according to the HTML 3.0
+  recommendation for non-GUI clients. - FM
+* Added protections against problems with INPUT types "range" and "file"
+  until they're implemented (will be tricky, but do-able 8-). - FM
+06-23-95
+* Added all ISO8859-1 entities to the DTD. - FM
+06-22-95
+* Updated the DTD structures and definitions for A and IMG to HTML 3.0, and
+  implemented their ID attribute. - FM
+* Tweaks of FIG handling. - FM
+* It is somehow inappropriate to teach our users to write correct HTML and
+  to tell them to always check it before publishing, when Lynx's on-line
+  help gives such a bad example :-} (not to mention versions from a couple
+  of months back).  Better now. - Mark Martinec (Mark.Martinec@nsc.ijs.si)
+06-20-95
+* Made the DTD structures and definitions for the HTML 3.0 elements
+  BQ, CAPTION, CREDIT, FIG, NOTE and OVERLAY complete, and added
+  those for STYLE, TABLE, TD, TH and TR.
+* Tweaks of yesterday's HTML 3.0 additions (still just "first pass"). - FM
+* Added code for avoiding potential problems with stylesheets and tables
+  in HTML 3.0 documents. - FM
+06-19-95
+* Added "first pass" handling of HTML 3.0 elements BQ, CAPTION, CREDIT,
+  FIG, NOTE and OVERLAY. - FM
+06-17-95
+* Close the configuration file on completion of the big while() in
+  LYReadCFG.c. - PM
+* Added 00DIFFERENT to keep track of files in this code set which
+  presently differ from those in the latest development code set
+  at UKans (currently, lynx2-4-1.zip of 15-Jun-95). - FM
+* Tweak of the pseudo-toolbar code.  The 'l'ist command now displays the
+  TITLE (or RelValue, if TITLE is defaulted) of those links if they have
+  never been accessed, or their actual HTML titles if accessed, at the
+  top of the links list, so you can use that command instead of LYK_HOME
+  to reach the toolbar links at any time, and then left-arrow to where
+  you were in the current document instead of having to page back down
+  to that location. - FM
+06-16-95
+* Added LINK REL="RelValue" HREF="foo" TITLE="TitleValue" HTML 3.0
+  handling (as in http://www.hpl.hp.co.uk/people/dsr/html3/dochead.html
+  of 28-Mar-95).  The HREF and REL values are required (the LINK will be
+  ignored if either is missing or has a zero-length value). TITLE is
+  optional, i.e., the RelValue will be used as the link name if TITLE
+  is omitted.  Currently registered toolbar RelValues are:  Home, ToC,
+  Index, Glossary, Copyright, Up, Next, Previous, Help, and Bookmark.
+  The Bookmark links are intended to have TITLEs (e.g., "Order Form").
+  The others have RelValues that yield self-evident link names.  The LINKs
+  should be placed in the HEAD section, so they'll be displayed in a manner
+  simulating a toolbar (but not a real one, since we don't have Windows and
+  mouse support; use your LYK_HOME command to access it at any time 8-).
+  The BODY should have a line-breaking element (e.g, H1) to set them off.
+  For now, the Banner RelValue is treated like another toolbar element.
+  The StyleSheet RelValue is ignored, since we don't yet have loadable
+  stylesheet handling. - FM
+* Fixed up the 06-13-95 NO_ANONYMOUS_EMAIL patch to be appropriate for
+  VMS - FM.
+06-14-95
+* Added LYK_LIST command ('l' or 'L'; must be uppercase if VI keys are on)
+  for creating an ACTIVATEable list of references (links) in the current
+  document.  If LINKS_ARE_NUMBERED is on, it's a UL, otherwise it's an
+  OL.  Visited links have the TITLE displayed, otherwise the HREF is
+  displayed. - FM
+* Added code to append a list of references (links), if present in the
+  document, when -dump is used.  Dumps are done with LINKS_ARE_NUMBERED
+  turned on.  The reference list is numbered, and always shows the HREFs,
+  so that they can be referenced to the links in the document. - FM
+* Updated help files. - FM
+--- lynx2-4-1 on ftp2.cc.ukans.edu (added to lynx2-4-FM on 06-16-95)
+06-13-95
+* Added George Lindholm's patch to add -r (recurse) to the zip call in DIRED.
+  - JP
+06-12-95
+* Added George Lindholm's new file permission patch.  Here's his description:
+  "Here is a rewamped version of my earlier file permission patch.  This version
+   uses a html page to prompt for user input (rather than having the user
+   enter a obscure unix chmod string) using checkboxes." - JP
+* Added George Lindholm's addition of a compiler flag (NO_ANONYMOUS_EMAIL).
+  If NO_ANONYMOUS_EMAIL is set the user will not be able to add their own
+  from header.  This will only work if the mail package being used will
+  add this information. - JP
+--- lynx2-4-1 on ftp2.cc.ukans.edu
+06-09-95
+* Replaced info.cern.ch with www.w3.org in html and make files.  Designated
+  this code as 2.4-FM, for local use. - FM
+--- STARTING  2.4-FM ---
+--- Rename of Lynx2-3-FM and release as Lynx2-4  (08-June-1995) ---
+    (see CHANGES2-4 and CHANGES2-3)
diff --git a/docs/CHANGES2.6 b/docs/CHANGES2.6
new file mode 100644
index 00000000..73c158ab
--- /dev/null
+++ b/docs/CHANGES2.6
@@ -0,0 +1,732 @@
+--- Rename of Lynx2-5FM and release as Lynx2-6  (02-Sep-1996) ---
+==============================================================================
+09-02-96 ---- Release of Lynx2-6 ----
+* More expansions of the online 'h'elp files. - FM
+* Updated the PROBLEMS file. - FM
+09-01-96
+* More expansions of the online 'h'elp files. - FM
+* Tweaks of list handling. - FM
+* Miscellaneous code cleanups and annotations. - FM
+08-31-96
+* Further updates and expansions of the online 'h'elp files. - FM
+* Tweaks of alignment handling with bad HTML. - FM
+* Added JIS X 0201 Japanese Kana string support. - TA & FM
+08-30-96
+* Further updates and expansions of the online 'h'elp files. - FM
+* Typo fixes in the help and doc files. - LWV
+* Tweaks of ENCTYPE handling for FORM submissions. - FM
+08-29-96
+* Today's distribution is a pre-release of v2.6.  The projected official
+  release date is 09-02-96.
+* Tweaks of numeric character reference handling. - FM
+* Typo fix in LYShowInfo.c. - IC
+08-28-96
+* Added handling of ENCTYPE="application/sgml-form-urlencoded" in FORMs
+  as a directive to use semi-colons instead of ampersands as name=value
+  separators, and to indicate that as the Content-Type for POSTs. - FM
+* Convert ampersands in addresses and link names, and angle-brackets in
+  link names, to SGML entities when creating bookmarks and showinfo ('=')
+  link 'l'ist, client-side-image-map, and history list text/html streams
+  or temporary files. - FM
+* More SGML compliance mods for the handling of attribute values which
+  represent URLs or URL components. - FM
+* Tweaks of form INPUT, TEXTAREA, SELECT and OPTION handling. - FM
+* Check EAGAIN on socket connect or select attempts for all platforms and
+  flavors. - FM
+* Include both <time.h> and <sys/time.h> in tcp.h for AIX.
+* Adding warning and info in the INSTALLATION file and userdefs.h on how
+  to cope with telnetd environment variable spamming for anonymous accounts
+  running Lynx captively. - FM
+08-24-96
+* Enhancements of the History List handling.  Show each link's actual address
+  in addition to the titles, since the actual addresses can't be determined
+  via showinfo or the 'l'ist display, and links in the History List derived
+  from searches can have the same titles but different searchparts or hidden
+  content appended.  If a link in the History List is activated, is still
+  cached, has POST content, and ALWAYS_RESUBMIT_POSTS was configured off (as
+  recommended) and wasn't toggled on via -resubmit_posts, prompt the user
+  whether to resubmit the form (versus retrieve the cached rendition from
+  the previous submission).  We don't bother prompting on PREV_DOC ("back")
+  fetches, and still resubmit forms with POST content whenever their submit
+  buttons are activated, i.e., regardless of whether ALWAYS_RESUBMIT_POSTS
+  has been configured or toggled on. - FM 
+* If a user attempts to add a bookmark while viewing a document returned
+  via a form submission with POST content, and it contains links, offer
+  the current link with it's link name for editing.  Otherwise, display
+  a statusline message that documents from forms with POST content cannot
+  be saved as bookmarks. - FM
+08-23-96
+* Added UP_HALF and DOWN_HALF commands, mapped by default to '(' and ')',
+  for going back or forward half a page in the document.  These are
+  complementary to UP_TWO and DOWN_TWO, for going back or forward two
+  lines (remember to use the 'K'eymap command for a list of all of the
+  keystroke command bindings currently in effect, since they may have
+  been changed via lynx.cfg from the defaults described in the online
+  'H'elp). - FM
+* Made the Control-A and Control-E keys default synonyms for HOME and END,
+  complementary to their use for going to the beginning or end of the line
+  when using the line editor. - FM
+* Don't lose track of source versus present mode on returns from temporary
+  menu files to documents derived from forms with method POST. - FM
+* Ugh, I had deleted one too many lines from HTTP.c when stripping out my
+  SSL hooks for the distribution copy (no wonder the Authorization mods
+  worked fine for me but nobody else 8-). - FM
+08-22-96
+* Added handling of named entities and numeric character references in
+  the values of most of the non-URL attributes (we don't waste overhead
+  doing that for the values of simple attributes, like ALIGN, which have
+  designated strings). - FM
+08-21-96
+* Safely handle named entities and numeric character references in the values
+  of BASE, LINK, HREF, SRC, ACTION, DATA, CODEBASE and CODE attributes, and
+  in the URL field for the CONTENT of META with a "Refresh" HTTP-EQUIV or
+  NAME.  They are converted in relation to the "ISO Latin 1" Character Set
+  array regardless of the selected Character Set (except that nbsp and shy
+  remain 160 and 173), then 8-bit translations are hex escaped (as they
+  should have been in the markup 8-), and ESC is hex escaped or omitted
+  depending on whether a CJK character set has been selected.  There's no
+  way to do it such that the resolved URL always will be valid no matter
+  what yoyos or CGI scripts put in document instances, but this strategy
+  maximizes the chances while making sure no "dangerous" characters, based
+  on the selected Character Set, are ever sent to the screen (it used to be
+  HyperText Markup Language, not HyperGraphic Markup Language 8-)- FM
+* Allow Control-G or a zero-length username or password to act as a cancel
+  of the request (and restoration of the current document) when an http
+  server invokes prompting for Authorization. - FM
+* When using a proxy server, report the target host instead of the proxy
+  in prompts for Authorization. - FM 
+* Show MIME types of files, if known, whenever a download offer is forced,
+  regardless of why it was forced (i.e, not only for mismatches between
+  the document's charset and the selected character set). - FM
+08-20-96
+* Yet more tweaks of MIME header parsing. - FM
+08-19-96
+* Enhancements of the news gateway. - FM
+* Tweaks of Content-Type and charset handling. - FM
+* Tweaks of MIME header parsing. - FM
+08-18-96
+* Tweaks of the news gateway and its documentation. - FM
+08-17-96
+* Added overt (rational 8-) handling of all status codes that might be
+  returned (appropriately or inappropriately 8-) from HTTP/1.1 http
+  servers, and massively annotated the code in HTTP.c. - FM
+* Added parsing in HTMIME.c, and at least trace mode reporting, for all
+  http server reply and entity headers as in the 08-12-96 HTTP/1.1 draft.
+  We should not get many of them, unless we declare ourselves as an HTTP/1.1
+  client and send the appropriate request headers, but they're all available
+  now for use as more HTTP/1.1 features are added. - FM
+08-16-96
+* Added handling of "Pragma: no-cache" or "Cache-Control: no-cache" headers
+  from http servers, and polished up the code for handling them via META
+  directives. - FM
+08-15-96
+* Modified form handling so that Lynx always resubmits forms if their method
+  is POST, even if their content was not changed, when their submit buttons
+  or submitting text input are activated.  Changed the ALWAYS_RESUBMIT_FORMS
+  compilation and configuration definitions, and -resubmit_forms command
+  line toggle, to ALWAYS_RESUBMIT_POSTS, and -resubmit_posts.  When FALSE,
+  you still get the previously returned document from a POSTed form if that
+  document had links which you activated, and then go back with the PREV_DOC
+  command or via the history list.  If set TRUE, the form will be resubmitted
+  under those circumstances as well.  Documents returned by forms with method
+  GET still require use of the RESUBMIT command to resubmit if the forms'
+  content was not changed, and forms with a mailto action still always mail
+  the content on activation of the submit button or submitting text input
+  (no document is returned, so the PREV_DOC command and history list behaviors
+  are irrelevant). - FM
+* Use space to plus conversions for values of submitted form content (Ugh,
+  Lynx has been using %20 all these years!  It worked because they are
+  unescaped to space, anyway. 8-). - FM
+* Polished up and massively annotated the redirection handling code.  If
+  a user approves redirection of a form with POST content, it will not be
+  freed and the submission will not be converted to a contentless GET request
+  unless the status was 303 (See Other).  For 300 (Multiple Choices), the
+  returned document is offered, which should include links with descriptions
+  of their media types.  The returned document (if any) is now displayed for
+  any redirection status code if no Location: header was present, and for
+  unknown 3xx codes (i.e., greater than 305).  If Lynx gets an inappropriate
+  304 (Not Modified), it switches to HEAD mode and displays the status line,
+  and anything else returned by the server, as text/plain.  A 301 (Moved
+  Permanently) will be treated as 302 (Moved Temporarily) for form submissions
+  with POST content.  Otherwise, Lynx will use the new URL for the remainder
+  of the current session (users will have to do a 'r'emove and 'a'dd for their
+  bookmarks themselves, for now).  A 305 (Use Proxy) will not be honored if
+  Lynx is already using a proxy, and instead the returned document will be
+  displayed.  The limit on serial redirections was dropped from the current
+  10 to 5, as recommended in the August 10, 1996 HTTP/1.1 draft. - FM
+08-13-96
+* Mods to accommodate the HTTP/1.1 300 - 305 Redirection status codes, and
+  to require user confirmation for any redirection of POST content. - FM
+* Tweaks of OBJECT handling. - FM
+08-12-96
+* Implemented all aspects of OBJECT that make sense for a text client.
+  Will descend though nested OBJECTs.  Can be used for presenting PRE
+  formatted character-cell versions of images, and appears to handle
+  all likely uses of the SHAPES and USEMAP attributes in OBJECTs.  The
+  pseudo-ALTs for links to non-script DATA values (i.e, the for-GUI
+  sources) when offered as links (e.g., in clickable_images mode), if
+  not a markup-specified string (e.g., based on a TITLE attribute),
+  are (IMAGE) or (OBJECT), based on whether the nature of the source
+  can be inferred from the context, or an explicit TYPE attribute in
+  the OBJECT start tag.  The use of parens instead of square-brackets
+  indicates that the links are for OBJECTs as opposed to IMGs. - FM
+* Tweaks of SELECT and OPTION handling. - FM
+08-09-96
+* Lots more stuff added to the online help files. - FM
+* Added state code in SGML.c to avoid getting tripped up by any single or
+  double quotes in CJK escape sequences that are within single or double
+  quoted attribute values. - TA
+* Restrict resetting the Kanji code flag on white space to Japanese
+  (i.e., not also Chinese, Taipai, or Korean). - TA
+* Added handling of EPLF lines (with local time) for the FTP gateway. -
+  D. J. Bernstein (djb@koobera.math.uic.edu)
+08-08-96
+* Added code for handling captured OBJECT content with the SHAPES
+  attribute equivalently to our handling of FIG, and with USEMAP and/or
+  ISMAP content equivalently to our handling of IMG.
+* Added code for capturing potentially nested container elements that
+  require pre-processing, e.g., OBJECT, and for passing the processed
+  markup back to the SGML parser to be inserted within the ongoing HTML
+  stream.
+* Added CHECK_EAGAIN Makefile definition for non-SVR4 Unix flavors which
+  might need it for socket connect() and select() calls. - FM
+* Tweaks of keyboard input with slang when LYCursesON is FALSE. - FM
+08-06-96
+* Terminate and start a new Accept: header line if the current one will
+  exceed 1 KB (shouldn't be necessary, but otherwise the long lines cause
+  an error for WebSitePro and crash Netscape servers, and perhaps have
+  adversed effects on some other http servers with ill designed code for
+  content negotiation). - FM
+* Give temporary files suffixes matched to the Content-Type for all flavors
+  of Unix and for VMS, not just for NeXT. - FM 
+* Tweak of Location: header parsing in HTTP.c (trim all lead spaces). - FM
+08-05-96
+* More help and documentation updates. - FM
+08-04-96
+* Updated the online help files. - FM
+08-03-96
+* Mods of "user (A)gent" 'o'ption handling.  Also added a "useragent"
+  -restriction, included in the defaults for anonymous accounts.  See
+  the "Lynx options menu" section of the "Lynx Users Guide" via the
+  online 'h'elp for more information. - FM
+* Tweaks of messaging for unsupported URLs. - FM
+* Tweaks of interrupt handling on VMS. - FM
+08-02-96
+* Added handling of Refresh in META tags.  The URL is presented as a link
+  pointed to by a "REFRESH(n sec):" label, where "n" is the seconds
+  parameter from the META tag, and you must activate it yourself, which
+  should enable people using Lynx via a braille interface to examine
+  the initial document before it is refreshed.  The META format is:
+  <META HTTP-EQUIV=refresh CONTENT="n; URL=url"> where "n" can be "0" or
+  a positive integer, and the "; URL=url" field is optional, defaulting
+  to the document's own address.  Netscape's docs say that "url" should
+  be a complete URL, but their client doesn't require it, and so it's
+  users don't reliably use complete URLs.  Lynx therefore resolves "url"
+  versus the document's own address if it is not complete. - FM
+08-01-96
+* Added handling of ENCTYPE="text/plain" for FORMs with a mailto ACTION.
+  The name=value pairs are not hex escaped, and physical newlines instead
+  of '&' separate the pairs, so that the content is readable directly. - FM
+* Added SUBJECT attribute as synonym for TITLE in FORMs (Some clients
+  are using it instead of TITLE for mailto ACTIONs, ugh!). - FM
+* Tweaks of DEL, S, STRIKE, and INS handling. - FM
+* Handle any newline characters in quoted INPUT values. - FM
+* Added news-ncurses and news-slang Makefile targets, and tweaks of headers
+  for sony_news. - Makoto MATSUSHITA (matusita@ics.es.osaka-u.ac.jp)
+07-30-96
+* Finished and incorporated lynx_url_support.html in the online help,
+  and updated lynx_help_main.html. - FM
+* Tweaks of ID attribute handling. - FM
+* Tweaks of the gopher gateway. - FM
+* Updated IBMPC-charsets.announce. - MB
+07-26-96
+* Set the default anonymous account restrictions if Lynx is invoked in
+  the account pointed to by ANONYMOUS_USER, or with the -anonymous switch,
+  before processing any additional command line restrictions, so that any
+  greater restrictions will not drop back to the compilation defaults.
+  Note that the full set of -validate restrictions always are enforced for
+  that switch, i.e., no matter what other switches or compilation options
+  are used, and whether or not the account is anonymous. - FM
+* Implemented handling of the ANONYMOUS_USER definition on VMS (equivalently
+  to it's implementation on Unix). - FM
+* Tweaks of mailto URL handling and setting of the default subject via
+  TITLE attributes. - FM
+* Tweak of the news gateway's handling of the author (From:) field. - FM 
+07-25-96
+* If a server returns redirection without a complete URL indicated, resolve
+  it relative to the original request instead of issuing an error message
+  (this is incorrect behavior, but that's another trashed standard, and
+  Lynx may as well handle the situation as standard-less clients do). - FM
+* Move the NO_JUMPFILE and JUMP_PROMPT definitions to LYMessages_en.h - FM
+* Added code for selective disabling of goto by scheme in anonymous accounts,
+  along lines of patch from Doug Lawson (dlawson@epfl2.epflbalto.org). - FM
+* Ignore any viewer mappings for text/html or text/plain in mailcap
+  files. - FM
+07-22-96
+* Updated ptx target and added ptx-slang. - Alan Coopersmith
+  (alanc@CSUA.Berkeley.EDU)
+* Added all the new elements and attributes from the July 12 HTML 3.2/Cougar
+  DTD, and implemented the new IMG TITLE attribute for use with USEMAP.
+* Added a -startfile_ok switch for allowing a non-http startfile or homepage
+  with -validate, and restored the behavior of not allowing *any* non-http
+  URLs by default.
+07-19-96
+* Treat PLAIN and TYPE="plain" as equivalent in UL tags. - FM
+* Fixed the mispositioning of thinsp in HTMLDTD.c. - FM
+07-18-96
+* Moved the statusline prompt, message, and warning string definitions
+  out of userdefs.h into an LYMessages_en.h header.  See the comments
+  in userdefs.h and LYMessages_en.h for more information. - FM
+* Removed the -lc from the LIBS= list of the snake3 and snake3-slang
+  targets, added a description of the HP/UX 10.10 select() problems
+  and reported (but not yet satisfactory) workarounds in the PROBLEMS
+  file, and a note in the Makefile to read the PROBLEMS file. - FM
+07-17-96
+* Numerous typecasts added for optimized compilations. - FM
+* Tweaks for ISC. - WS
+* Changed make to $(MAKE) and -g to -O for Unix targets (may need
+  tweaking for some flavors 8-). - FM
+* Added news target for SONY NEWS-OS 4.2.1R based on patch from
+  Kazuya 'Sharl' Masuda (masuda@sp.hudson.co.jp) and TA. - FM
+* Fixed typo in LYList.c from yesterday's mods. - FM
+07-16-96
+* Plugged memory leaks associated with temporary file names. - FM
+* Finally figured out what was creating orphan child anchors, and plugged
+  that memory leak in HTAnchor_delete(). - FM
+* Replace <sys/select.h> with <sys/timeb.h> for SCO in tcp.h. - BL
+* Mods to avoid warning about redefinition of signal when building on
+  VMS with old versions of SOCKETSHR (irrelevant, but might worry
+  people who don't know that the warning can be ignored). - FM
+07-15-96
+* Plugged various memory leaks in FORM handling code. - FM
+07-13-96
+* Add the startfile, and homepage if different, to the 'g'oto recall
+  buffer so that they are available for editing in addition to any
+  overtly entered 'g'oto URLs. - FM
+* Changed TRUSTED_URL to ALWAYS_TRUSTED_EXEC for clarity, and plugged
+  memory leaks and some security holes in that code. - FM
+* Fixed typo in code for handling Z compressed files. - FM
+07-12-96
+* Added handling of &thinsp; (&#8201;), and handling of &#8194; as &ensp;,
+  &#8195; as &emsp;, &#8211; as &ndash; or &endash;, &#8212; as &mdash; or
+  &emdash;, and &#8482; as &trade; (treated as &reg; &#174;), based on the
+  Cougar DTD. - FM
+* Increased the line buffer size in HTLoadHTTP() and limited the deflt string
+  length in HTPrompt() to avoid possibilities of buffer overruns. - FM
+07-11-96
+* Block access to file: URLs via network served files or bookmarks in
+  addition to 'g'oto entries when -restrictions=file_url is set (one of
+  the default restrictions for -anonymous). - FM
+* Extended compressed file handling to the ftp gateway and local files.
+  If you ACTIVATE the link instead of overtly invoking a 'd'ownload, and
+  the path with the gz or Z stripped maps to a displayable Content-Type or
+  one for which you have a viewer or helper app, the file will be treated
+  as if it had a Content-Encoding: header indicating the compression (i.e.,
+  uncompressed and displayed or passed to the viewer or helper app). - FM
+* Mods to send http servers an Accept-Encoding: header indicating gzip and
+  compress, and to block inclusion of our new, internal www/compressed MIME
+  type in the Accept: header list. - FM
+* Changed the names of the lex_buffer and lex_lines globals to HTlex_buffer
+  and HTlex_lines in case name conflicts are causing segmentation faults on
+  linux for long usernames in authorization requests, and changed all
+  malloc()'s to calloc()'s in that code in case there's an initialization
+  glitch I don't yet see. - FM
+07-09-96
+* Use the username and password of an -auth= command line argument only
+  for the first realm that requests authorization, so they don't preclude
+  access to other realms later in any interactive session that might have
+  a different username and/or password, and handle inclusion of only a
+  username or only a password in the -auth= argument. - FM
+* Tweaks of memory leak plugs in authorization handling functions (hopefully
+  now avoiding segmentation faults on linux 8-). - FM
+* Include -lc in the first position of the LIBS= list for snake3 targets.
+  - Donald S. Teiser <dsteis01@homer.louisville.edu)
+* Enhancements of Makefile. - LWV
+07-07-96
+* Tweaks of code for uncompressing on the fly.  Will now force a download
+  offer without uncompressing if there is no presentation mapping for the
+  Content-Type. - FM
+* Retain blank lines within TEXTAREA content (but not trailing blanks). - DT
+07-07-96
+* Added functions for uncompressing and handling documents which have
+  Content-Encoding headers that indicate "x-gzip", "gzip", "x-compress",
+  or "compress" (instead of forcing a download offer).  The files are
+  not uncompressed if they were fetched via the 'd'ownload command.
+  Note, however, that if you activate a link for a compressed image or
+  other binary file, and don't have a viewer or helper app mapped for it,
+  it will already have been uncompressed before a D)ownload or C)ancel
+  offer can be made, so use the 'd'ownload command directly if it is
+  your intention to download such files.  Note also that on VMS "gzip -d"
+  is used for both gz and Z uncompression.  See the INSTALLATION file for
+  info on getting the VMS port of gzip. - FM
+07-06-96
+* Allow any startfile and homepage in -validate mode even if they are not
+  http URLs. - FM
+* Made all the 'o'ptions menu statusline prompts and informational messages
+  strings that can be defined in userdefs.h for different languages. - FM
+* Mods to send one Accept header as a comma-separated list instead of a
+  series of individual Accept header statements. - FM
+07-05-96
+* Added NO_FILE_REFERER configuration symbol and -nofilereferer switch
+  for disabling transmissions of Referer headers for any file URLs (is
+  a subset of what NO_REFERER_HEADER and -noreferer disable). - FM
+* Tweaks to facilitate additions of security-related patches. - FM
+07-04-96
+* Added NEWS_CHUNK_SIZE and NEWS_MAX_CHUNK configuration symbols and
+  -newschunksize and -newsmaxchunk switches for regulating the chunking
+  of news article listings.  See comments in lynx.cfg for explanation. - FM
+07-02-96
+* Tweaks of URL_DOMAIN_PREFIXES and URL_DOMAIN_SUFFIXES handling (was
+  doing double scheme prefixing under some circumstances). - FM
+* Fixed problem of potential crashes with bad HTML which lacks any
+  OPTION tags in SELECT containers (Yes, HTML that bad is really out
+  there! 8-). - FM
+* Fixed problem of potential infinite loop in HText_endAppend() for documents
+  that contain nothing but SCRIPTs and empty OBJECT containers (as in the
+  Microsoft ActiveX demos). -FM
+07-01-96
+* Added circular recall buffer for paths used as the second argument in
+  'd'ownload and 'p'rint menu commands.  Use the up- and down-arrow keys
+  to access then at the statusline prompt, equivalently to the recalls for
+  previous 'g'oto URLs, 'j'ump shortcuts, and ISINDEX or WHEREIS search
+  queries. - FM
+* Modified the LYMail.c functions to work as intended with both curses
+  and slang (through v0.9-33) on both Unix and VMS. - FM
+06-30-96
+* Changed yesterday's symbols to URL_DOMAIN_PREFIXES and URL_DOMAIN_SUFFIXES
+  and added code to guess the scheme based on the first field of the domain
+  name (e.g., gopher.wfbr.edu will become gopher://gopher.wfbr.edu instead
+  an http://host URL).  Note also that a partial host string can contain a
+  dot within it and still be tested with prefixes and suffixes if the DNS
+  lookup fails with the host string as entered (e.g., cc.ukans will become
+  http://www.cc.ukans.edu), and only dots at the end or beginning of the
+  partial host string will block prepending or appending, respectively, of
+  items from the prefix or suffix lists (e.g., ftp.foo. will block use of
+  items from the prefix list, but permit tests from the suffix list, and
+  will become ftp://ftp.foo.dom if the ftp.foo.dom lookup succeeds). - FM
+06-29-96
+* Added HTTP_DOMAIN_PREFIXES and HTTP_DOMAIN_SUFFIXES in userdefs.h and
+  lynx.cfg for defining lists and setting the order of domain name prefixes
+  and suffixes to use when creating http:// URLs from command line and
+  'g'oto arguments which are not already URLs and cannot be opened via a
+  file://localhost URL (see 05-30-96 entry). - FM
+06-28-96
+* Tweaks of MIME header handling. - FM
+06-27-96
+* Do not send a referer header for links obtained from the history list,
+  bookmark file, or jumps file. - FM
+* Made sorts by name case-sensitive in ftp and file listings. - FM
+* Added osf-slang make target. - FM
+* Enable ^C (SIGINT) interrupts during spawns on Unix (^C and ^Y interrupts
+  were already being enabled for VMS ). - FM
+* Fixed glitch in WHEREIS search handling. - Michael Barabanov
+  (baraban@luz.cs.nmt.edu)
+06-26-96
+* Tweaks of ftp gateway for VM/CMS servers based on feedback from PG. - FM
+* More tweaks of 'o'ptions menu and DISPLAY handling. - FM
+* Tweaks for builds with WIN_TCP on VMS. - FM
+06-24-96
+* Modified 'o'ptions menu handling to allow NULLing of strings which were
+  set at startup.  Note that if you NULL (or set) the DISPLAY variable,
+  Lynx configured itself for X/Motif or not based on whether it was set
+  (or NULL) at startup, and you need to restart Lynx to really change the
+  configuration for 'd'ownload forces versus X/Motif viewer spawns. - FM
+* More tweaks of language code, to make the HTCJK enum checks more
+  portable. - FM
+06-23-96
+* Set up handling of nested DIV tags with ALIGN attributes (and CENTER,
+  which is treated as DIV ALIGN="center"). - FM
+* Removed INSERT, ALIAS and MH from the DTD, and their associated code
+  from HTML.c and GridText.c. - FM
+06-22-96
+* Tweaks of character set handling. - FM
+* Added function for graphic boxing of popups with curses on VMS. - FM
+06-21-96
+* Mods to translate CJK escape sequences and take Kanji into account when
+  handling statusline() messages.  That's in effect if a CJK character set
+  is selected, and regardless of the raw or CJK mode setting, because the
+  strings are coming from definitions in userdefs.h, not the document that
+  is being rendered or displayed. - FM
+* Added more statusline() string definitions in userdefs.h. - FM
+* Ignore a server's Content-Encoding header if it inappropriately indicates
+  "8bit" or "7bit" (should be indicated a compression scheme). - FM
+* Mods to use charset strings as in the 07-Jun-1996 HTTP/1.1 draft, and to
+  check for those as well as their common synonyms. - FM
+* Mods to revive clearok() functionality with the slang 0.99-33 library
+  (need it for Kanji handling and for VMS), and to deal with the definition
+  conflicts for the (poorly added) TRUE and FALSE definitions in the new
+  slang library's SLcurses.h. - FM
+06-20-96
+* Added handling of the SFS file system on VM ftp servers, tested on
+  ftp://ubvm.cc.buffalo.edu/ (be sure to escape the colons if you use SFS
+  paths, e.g., ftp://ubvm.cc.buffalo.edu/vmsysu%3alistserv.webshare) - FM
+* More memory management enhancements and leak plugs. - FM
+* Added -DUNIX and -DSCO to the sco and sco5 libwww targets. - BL
+06-17-96
+* Added handling of &shy;, &#173;, and 8-bit 173 for ISO-Latin-1 documents,
+  as a soft hyphen for all of the character sets. - FM
+* Polished up and massively annotated the new character set handling
+  code. - FM
+* Made all the dummy libwww headers in WWW/Library/Implementation
+  compatible with the new, actually used, headers in /src. - FM
+* Fixed some bad ifdef-ing for statusline string definitions which
+  were added to userdefs.h. - FM
+06-15-96
+* Added many more userdefs.h definitions for statusline() and HTAlert()
+  messages. - FM
+* Tweaks of ALT string handling when they are used as forced link names
+  for USEMAP, AREA, IMG, EMBED or APPLET sources. - FM 
+* Oops, hadn't put the new HTML.h in the zip. - FM
+* Fixed casing typo for HTCJK.h inclusion in HTMIME.c. - LWV
+06-14-96
+* Updated the help files, lynx.man and lynx.hlp concerning the character
+  set handling. - FM
+* Changed the -jpn switch to a generic -raw switch, and the LYK_JPN_TOGGLE
+  ('@') to a generic LYK_RAW_TOGGLE.  The toggling also can be done via
+  the 'o'ptions menu, in conjunction with selecting character sets.  See
+  the comments about CHARACTER_SET in userdefs.h and lynx.cfg for more
+  information.  The toggle determines whether raw 8-bit characters in the
+  document are assumed to be ISO-8859-1, and therefore translated for the
+  non-"ISO Latin 1" character sets based on their LYCharSets.c arrays, or
+  are assumed to match the character set (e.g, 8-bit ISO-8859-2 when the
+  "ISO Latin 2" set is selected, or Kanji when a CJK set is selected) and
+  therefore processed raw.  Use raw or CJK mode when you know the charset
+  of the document is a match to your selected character set, but no header
+  or suffix has indicated that the charset is not ISO-8859-1. Be careful
+  about this when "Other ISO Latin" is selected, since the document could
+  be, e.g., ISO-8859-3, but you are using, e.g., ISO-8859-5. - FM
+* Added "Other ISO Latin", "Chinese", "Japanese (EUC)", "Japanese (SJIS)",
+  "Korean", and "Taipei (Big5)", character sets, which presently translate
+  8-bit ISO-8859-1 named and numeric entities to 7-bit approximations, and
+  added a default "CHARACTER_SET" definition in userdefs.h, complementary
+  to that in lynx.cfg. - FM
+* Worked in the expanded CJK (Chinese, Japanese, Korean) escape sequence and
+  Kanji handling from Takuya ASADA's June 11, 1996 Lynx2-5CJK (available in
+  ftp://ftp.three-a.co.jp/pub/www/lynx). - FM
+06-11-96
+* Tweak of the ftp gateway to handle Reflection Unix emulation servers. - FM
+* Made lynx_version_putenv_command a global so we can free it at exit
+  via free_lynx_globals() in LYMain.c. - FM
+06-10-96
+* Convert a 0xFFFF value from slang in LYgetch() to 7 (^G) to cancel
+  whatever called it, instead of exiting on error. - FM
+* Tweaks of Makefile to use symbolic, $(include) and $(lib) paths with
+  ncurses for convex, NeXT and sun4, and for SOCKSLIB. - LWV 
+* Tweaks of mail editor handling based on patch from Arne Riiber
+  (riiber@systek.no). - FM
+06-09-96
+* Had overdone it plugging memory leaks and was freeing the proxy, news
+  server, and lynx version variables too soon. - FM
+06-07-96
+* Moved the Kanji handling variables into HText structure elements to make
+  the GridText.c functions reentrant for them, and added code for regulating
+  them via charset parameters in server headers or META tags.  The recognized
+  parameters are EUC-JP, Shift-JIS, ISO-2022-JP, ISO-2022-JP-2, and EUC-KR.
+  E.g., a META with:
+       	HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Shift-JIS"
+  will set up handling of the document as Shift-JIS. - FM
+* Made handling of Kanji more reliable when SJIS is the default, based
+  on the strategy in Takuya ASADA's Japanized Lynx2-4-2. - FM
+* K&Rized the Ichikawa ISO-2022-JP MIME header handling functions and added
+  them to HTMIME.c, together with Takuya ASADA's (asada@three-a.co.jp)
+  function for guessing whether an escape has been lost and filling it in,
+  and use them for checking news headers. - FM
+* Retry DCL spawns without the TRUSTED flag if it was included and we
+  got back an INVARG status. - Robert C. Gray (gray@cyberodyssey.com)
+06-06-96
+* Plugged lots of memory leaks. - FM
+* Handle colons in code for expanding host names and prepending http://
+  (e.g., wfbr:8002 will become http://www.wfbr.edu:8002/). - FM
+* More tweaks of character conversions. - FM
+* Block crashes if illegal markup such as Anchors are present in the
+  OPTION strings for SELECT. - FM
+06-04-96
+* Mods of entity and end tag handling in SGML.c and LYCharUtils.c. - FM
+* Tweaks of make target for sun4-slang. - NHE
+06-03-96
+* More tweaks of the ftp gateway. - FM
+* More anti-crash protections for bad HTML. - FM
+* Tweaks of LYCharUtils.c and SGML.c. - KW
+* Enclose the username for rlogin URLs in double-quotes on VMS to preserve
+  mixed casing if present. - Robert C. Gray (gray@cyberodyssey.com)
+06-02-96
+* Made DEFAULT_CACHE_SIZE and DEFAULT_VIRTUAL_MEMORY_SIZE configurable via
+  lynx.cfg. - FM
+* Added comments in HTFTP.c to make more clear some of the counterintuitive
+  things being done, and why. - FM
+* Oops, had left my ISSPACE() debugging macro in HTFTP.c yesterday.  Is
+  now back to isspace(). - FM
+06-01-96
+* Added support for ;type=I (or A or D) to specify Image or ASCII transfer 
+  modes, or a Directory, in ftp URLs. - FM
+* Added support for VM/CMS ftp servers.  Note that 'd'ownloaded text files
+  will have CRLF as line terminators, due to their use of ASCII records
+  (tested on ftp://pucc.princeton.edu/anonymou.376). - FM
+* Added support for use of a tilde on Unix ftp servers to indicate that you
+  want a listing of the user's login directory instead of the root (i.e.,
+  ftp://user@host/~ or ftp://user@host/~username will cause Lynx to attempt
+  a listing of the translated ~ or ~username).  Paths can be appended (e.g.,
+  ftp://user@host/~/subdirectory).  This should not be used with anonymous
+  ftp, or in public documents.  It yields the behavior on Unix or Unix-like
+  ftp servers which should occur without the tilde, based on RFC 1738.  Note
+  that the valid behavior involving use of %2f is implemented for VMS (see
+  the 12-20-95 entry, below), but the behavior for Unix and Unix-like ftp
+  servers emulates Lynx's Unix DIRED_SUPPORT. - FM
+* Mods of CSO/PH gateway to deal with discontinuous field name tokens
+  (e.g., "NYU fax" instead of "NYU_fax"). - FM
+* More fixes for the putenv_command pointer in LYMain.c. - CC
+* Add curly braces to the current hack for mininizing reversals of
+  trace messages with slang. - KW
+05-30-96
+* Modified the http:// prepending code to try expanded host names if the
+  the first (or only) element does not contain a dot and is not a known
+  host name.  Will first try it as www.host.com, then www.host.edu, then
+  www.host.net, then www.host.org, e.g., wfbr/dir/lynx will become an
+  http://www.wfbr.edu/dir/lynx URL. - FM
+* Added handling of MSDOS_SERVER ftp server type (tested on ftp.hayes.com)
+  and corrected WINDOWS_NT_SERVER handling (tested on ftp.boca.org). - FM
+* Reset any modified, non-HT-LEFT styles in HTML_free() if they were not
+  reset in HTML_end_element() due to missing end tags. - FM
+* Initialize the putenv_command pointer in LYMain.c. - Christophe Colle
+  (colle@krtkg1.rug.ac.be)
+* Include LYLocal.h in LYCgi.c. - Carl Hansen (hansen@best.com)
+05-28-96
+* Made all mainloop() statusline() message strings definitions in userdefs.h
+  for easier modification to other languages (we'll move them to a catalog
+  someday 8-). - FM
+* Added string definitions in userdefs.h for statusline messages identifying
+  active or DISABLED radio buttons. - FM
+* More tweaks of character conversions.  Note that numeric entities with
+  values greater than 255 are displayed as text, until we are able to
+  handle them as Unicode.  - FM
+* Implemented ID handling for BDO. - FM
+05-27-96
+* Added nested handling of Q, so that it alternates between double-quotes
+  and single-quotes, with directionality of start and end single-quotes
+  (should someday check the LANG and DIR attributes, and character set,
+  to use other quoting conventions if appropriate). - FM
+* Use [DEL: ... :DEL] labeling to indicate DEL content, and [INS: ... :INS]
+  labeling to indicate INS, S, and STRIKE content. - FM
+* Added ID handling for ABBREV, ACRONYM, AU, AUTHOR, BIG, DEL, INS, Q, S,
+  SMALL, SUB, SUP and SPAN. - FM
+* Added code to clear the screen of any trace messages directed to the
+  screen, once the full page has been created. - FM
+* Added code to minimize slang's casting of trace messages as reverse when
+  directed to the screen instead of a file. - FM
+05-26-96
+* More tweaks of character conversions. - FM
+* Added submit_enctype elements to the forms structures as will be needed to
+  implement INPUTS with TYPE="file" (someday 8-), and set disabled for FORM
+  fields if the ENCTYPE is multipart/form-data, until we can handle that
+  (someday 8-), so the user won't fill out the FORM pointlessly. - FM
+* Made the third argument of SLang_init_tty() 1 so that '\n' will be treated
+  as CRLF when trace messages are sent to the screen instead of to a file.
+  Might cause problems with the slang screen management functions, but
+  doesn't seem to according to KW. - FM
+05-25-96
+* Mods to pass 8-bit control characters entered via the line editor.  They
+  should be assumed to be valid if the user entered them, and could indeed
+  be valid for Japanese and Russian. - FM
+* Check for a NULL return value from initscr() on Unix. - Geert Jan de Groot
+  (GeertJan.deGroot@ripe.net)
+* Tweaks of character conversions, and of 8-bit character handling with
+  slang. - Klaus Weide (kweide@tezcat.com)
+* Added TRUSTED_URL for specifying lynxexec and lynxprog URLs which always
+  are permitted, based on patches from David Drum (david@more.net). - FM
+05-21-96
+* Made the LOCAL_DOMAIN symbol configurable via lynx.cfg. - FM
+* Added descriptions of the quality (q=) and maxbytes (mxb=) parameters
+  in the sample mailcap file. - FM
+* Added a maxbytes element to the libwww presentation and converter
+  structures, and code for specifying a maximum for mailcap entries via
+  a semi-colon-separated mxb=value field, where "value" is a positive
+  integer (e.g., ; mxb=1000000).  The default is 0, meaning no maximum.
+  If the value exceeds 0, a maxbytes parameter will be appended in the
+  Accept: header for the Content-Type. - FM
+05-20-96
+* Added code for specifying a quality parameter for mailcap entries via
+  a semi-colon-separated q=value field, where "value" is a floating point
+  number (e.g., ; q=0.002), and for appending the quality parameters in
+  Accept: headers if the values are less than 1.0. - FM
+* Treat screen width as 80 for the startup page when doing traversals with
+  a slang-build Lynx to prevent a crash. - FM
+05-19-96
+* Mods in HTML.c to make resolving of local file URLs more efficient. - FM
+* Tweaks of Makefile for slang. - Ed Doolittle (dolittle@math.toronto.edu)
+05-18-96
+* Added FRAME elements and attributes to the DTD, and code for creating
+  links to the SRCs. - FM
+* Added numerous sanity checks for valid but inappropriate combinations
+  of attributes based on the HTML 3.2 DTD.
+05-17-96
+* Added support for TYPE and VALUE attributes of LIs in OLs.  TYPEs
+  are equivalent to those for OL, and VALUE is equivalent to START
+  or SEQNUM for OL.  See the 11-28-95, 10-17-95, 09-19-95 and 09-04-95
+  entries in this file.  If a TYPE is changed via an LI, the change
+  persists for subsequent LIs of that OL.  The VALUE set for an LI
+  similarly increments for subsequent LIs in that OL. - FM
+05-16-96
+* Made SGML_character() in SGML.c fully reentrant. - FM
+* Set up capturing of marked sections, and DOCTYPE, ELEMENT, ATTLIST and
+  ENTITY declarations in SGML.c.  Lynx doesn't do anything with them yet,
+  besides reporting them in trace mode, but they at least won't create
+  garbage in the display if they start being used for the "next generation"
+  of clients. - FM
+* Set up base code for CSIs (Client Side Includes, homologous to SSIs).
+  See the comments for LYDoCSI() in LYUtils.c.  It should be moved to a
+  separate module if someone wants to work on CSIs seriously.  LYDoCSI()
+  is called from SGML.c if the document was obtained via a file URL on
+  the local host and has comments that begin with "!--#". - FM
+05-15-96
+* Add a MIME charset parameter to POST Content-Type headers if it's not
+  ISO-8859-1 or US-ASCII and the server included the parameter when it
+  sent the form (but don't do it simply on the basis of the user's current
+  character set, because if the server didn't include the parameter, it's
+  CGI script probably won't parse the client header either, and will return
+  an error instead of processing the form submission). - FM
+05-14-96
+* Tweaks for Unixware and addition of a unixware-slang Makefile target based
+  on patches from Thanh Ma (tma@encore.com). - FM
+* Tweaks for SCO and addition of an sco5 Makefile target based on patches
+  from Bela Lubkin (filbo@armory.com). - FM
+* Include ;q=0.001 for the wildcard (*/*) Accept header. - FM
+05-13-96
+* Added support for a host field in news URLs, analogous to that for nntp
+  URLs.  Though illegal according to the current RFCs, discussions with a
+  W3C member about this Netscapism indicate that Lynx may as well support
+  it now, rather than continue failing when it is encountered. - FM
+05-12-96
+* Added an explicit GetYX definition for slang in LYForms.c. - FM
+05-11-96
+* Eliminated the NCURSESINCDIR compilation symbol and added NCURSESHEADER,
+  so the default now is to seek ncurses/curses.h and -DNCURSESHEADER invokes
+  a seek for the (now obsolete 8-) ncurses.h. - FM
+* Added an explicit GetYX definition for slang in LYStrings.c (now avoids
+  reference to stdscr). - FM
+* Mods in tcp.h for TCPWARE builds on VMS with DECC. - FM
+05-08-96
+* Fixed typo in Makefile entry for linux. - LWV
+05-07-96
+* Added LYPassHighCTRL boolean for passing normally illegal 8-bit control
+  characters, and set it TRUE when the KOI8-R character set is selected
+  (note that they also are passed when Japanese character support is
+  toggled ON). - FM
+05-06-96
+* Mods in SGML.c to handle "<URL:" as text instead of an unknown tag. - FM
+05-05-96
+* Added typecasts of the third arguments for the getsockname() and
+  accept() calls in HTFTP.c to void pointers, to avoid conflicts with
+  their declarations as int versus unsigned int across platforms and
+  flavors. - FM
+* Renamed the for-VMS opendir(), readdir() and closedir() to HTVMSopendir(),
+  HTVMSreaddir() and HTVMSclosedir(), and the for-UCX ioctl() to HTioctl(),
+  to avoid possible conflicts with their additions to newer versions of
+  VMS and UCX. - FM
+05-04-96
+* Fixed typo which was placing a space instead of a slash between the
+  User-Agent name and version. - Tim Rowley (tor@cs.brown.edu)
+
+--- STARTING  2.5FM ---
+--- Rename of Lynx2-4-FM and release as Lynx2-5  (02-May-1996) ---
+    (see CHANGES2-5, CHANGES2-4 and CHANGES2-3)
+==============================================================================
diff --git a/docs/CHANGES2.7 b/docs/CHANGES2.7
new file mode 100644
index 00000000..559ebd25
--- /dev/null
+++ b/docs/CHANGES2.7
@@ -0,0 +1,831 @@
+=======================================================================
+---      Release of Lynx2-6FM as Lynx v2.7 (February 15, 1997)      ---
+=======================================================================
+1997-02-15
+* Release of Lynx2-6FM as Lynx v2.7. - FM
+* Included -Ae when compiling the Implementation modules for the snake3
+  target. - FM
+1997-02-14
+* Mods to issue an alert about a BASE tag not having an absolute URL only
+  once per document. - FM
+* Added code for appending LYNX_SIG_FILE to email messages as well as to
+  news posts or followups, and updated the Users Guide accordingly. - FM
+* Updated build-slang.com. - FM
+1997-02-12
+* Fixed some problems in the code for using a hookless Lynx image with
+  snew_proxy, snewspost_proxy, and snewsreply_proxy set to
+  "nntp://host:port/" so that it uses Tom Zerucha's (tz@execpc.com)
+  daemon which handles the SSL communications on behalf of the Lynx
+  image.  Also polished up all of the news gateway code, and added
+  comments for the benefit of new developers. - FM
+* Added an ECGOTO command mapped by default to 'G', complementary to the
+  GOTO command (default 'g'), to edit the current document's URL and then
+  go to it.  Using case-sensitive letters with different command definitions
+  ensures that both will appear with their brief explanations in the 'k'eymap
+  listing.  For ECGOTO, Control-G, failure to modify the URL, or complete
+  deletion of it, all act as a cancel.  If the current document has POST
+  content associated with it, a warning will be issued before offering the
+  URL to edit.  The POST content is retained if the modification merely
+  involves a change in fragment for the URL.  Otherwise, the modified URL
+  (if it has an http scheme) will be submitted with method GET and no POST
+  content.  If the ECGOTO command is not cancelled, or not simply a fragment
+  change, the modified URL will be added to the 'g'oto buffer, and can be
+  re-accessed, to edit further, via the GOTO command.  See the updated online
+  'h'elp for more information. - FM
+1997-02-10
+* Amplified the comments concerning deletion of prototypes for MultiNet
+  socket library functions as they get added to MultiNet's own headers
+  in newer versions of it's socket library. - FM
+* Added a missing fclose() in post_article() of HTNews.c, and added code
+  to delete the temporary file there, so it's gone as soon as we're done
+  with it. - FM
+02-09-97
+* Enhanced the Set-Cookie header parser to handle values that contain
+  spaces but were not enclosed in double-quotes, and to use such
+  quoting or not when sending Cookie headers, depending on whether
+  this was done in the Set-Cookie header.  Also added anti-crash
+  checks should the parser's efforts to handle both historical (a.k.a.
+  original Netscape) cookies and Version 1 cookies go awry (does deal
+  successfully now with all the cookies which had been reported as
+  problematic). - FM
+* Mods of the screen handling in LYNews.c for cleaning up any screen
+  trash created by the external editor. - FM
+* Tracked down an uninitialized pointer in LYNews.c that probably was
+  behind reports of crashes when posting to newsgroups. - FM
+* Plugged a memory leak in LYMainLoop.c. - TJC
+* Added posting ability to the news gateway, in lieu of the previous,
+  variably reliable, use of a spawned news client for posting.  The
+  news, nntp, and snews URLs now all return links for posting new
+  messages or followups (replies) to the server from which a newsgroup
+  listing or news article was retrieved, unless the server indicates
+  that it does not accept posts from the site at which Lynx is running.
+  See the updated INSTALLATION, userdefs.h, and lynx.cfg files, the
+  "USENET News posting" section of the Users Guide, and "Supported URLs"
+  page of the online 'h'elp for more information.
+* Fixed typo for e-dieresis in the KOI8-R charset. - AJF
+* Replaced an inappropriate _user_message() call in HTConfirmCookie()
+  of HTAlert.c with a _statusline() call.  The original code could
+  cause crashes with some cookie values. - FM
+02-06-97
+* Added support for both hex escaped and unescaped white characters
+  in lynxexec and lynxprog URLs.  Normally, Lynx strips out any white
+  characters that are not hex escaped in attribute values that are
+  to be resolved as URLs, on the assumption that they were derived
+  from wrapping in the markup.  Any serial white characters in
+  lynxexec and lynxprog URLs are condensed to one space (' '), and
+  any lead or trailing white characters are trimmed.  Note that we
+  still require hex escaping of spaces in mailto URLs, e.g,
+  HREF="mailto:lynx-dev@sig.net%20(I%20found%20a%20bug.)". - FM
+* Removed the 'e' switch from tar commands in LYLocal.c for greater
+  portability across all supported Unix flavors. - FM
+* Expanded the information in the PROBLEMS file on how to deal with
+  DECC and MultiNet header incompatibilites for different combinations
+  of the VMS compiler and socket library versions. - FM
+* Added TRACE message of the edit command created for the system()
+  call in LYEdit.c. - LWV
+* Fixed a typo in the userdefs.h comments. - NHE 
+02-04-97
+* Mod in LYMainLoop.c to bypass mailing "not found" messages when
+  MAIL_SYSTEM_ERROR_LOGGING was set TRUE (which it should NOT be,
+  indescriminately) if the document's owner is the lynx-dev list. - FM
+* Added crash protection checks for the actual presence of anchors
+  in all HText structure anchor scans in GridText.c, based on a crash
+  report and suggested fix for one of them from Jonathan Sergent
+  (sergent@hillres55-129.cc.purdue.edu). - FM
+* Eliminated the typecast for ttytype (apparently varies across flavors,
+  and each flavor should know it's own typing; we'll see) in LYCurses.c,
+  and moved VMS system definitions with non-ANSI conformant tokens to a
+  separate header for VMS (LYVMSdef.h). - BL
+* Made the description of HISTORY in the 'k'eymap page more clear that
+  it invokes a list of the "suspended" documents currently held in the
+  history stack. - DC
+* Typo fixes in the help files and lynx.cfg. - LWV
+02-03-97
+* Today's distribution is a pre-release of v2.7.  The projected official
+  release date is 02-15-97.  All header, help and documentation files,
+  and the top directory name, have been updated for v2.7. - FM
+* Made xli, which is freeware, the default XLOADIMAGE_COMMAND for Unix
+  in userdefs.h (still xv on VMS, since its port is freeware), and
+  expanded the "self-documentation" to indicate where to get this
+  freeware.  Added XLOADIMAGE_COMMAND as a configuration symbol in
+  lynx.cfg, so that the compilation default can be overridden on
+  systems which have and prefer xv (all users can override the default
+  mappings for image helper apps via their mailcap files) - FM
+* Added a -base command line switch which can be used with -source or
+  -mime_header to prepend the request URL as a comment, and a BASE tag
+  (which may or may not be the same as the request URL, depending on
+  HTTP/1.1 headers) for text/html documents, equivalent to the prepend
+  kludge for 'd'ownloads (see 09-20-96 mods). - FM
+* Added a check for an "ORGANIZATION" environment variable for inclusion
+  as a news post header on Unix (all system logicals intended for news
+  post headers automatically are included on VMS), and a sleep() before
+  restoring curses mode after the post, to allow reading of any error
+  messages from the news software. - FM
+* Fixed bug which yielded a "[LINK]" instead of "[INLINE]" pseduo-ALT
+  for ALT-less IMG tags used as the content for NAME-ed Anchors without
+  an HREF. - FM
+* Portability tweaks for the mini inews utility. - FM
+* Fixed an old and irrelevant typo in HTWriter.c. - JS
+01-29-97
+* Added more REL tokens that are acceptible for banner links. - FM
+* Ifdef'ed the standard foo_PATH definitions for FreeBSD at the bottom of
+  userdefs.h, based on a patch from AAC, and assuming they also apply for
+  NetBSD, BSDI, and Linux (we'll see 8-). - FM
+* Added make freebsd-slang target. - AAC
+01-28-97
+* Mods of LYSetCookie() to ensure setting of 443 as the default port for
+  https URLs, and force the secure flag on for https URLs whether or not
+  the Set-Cookie header had a secure parameter (too many Version 0
+  cookies don't, when they should). - FM
+* Removed -ltermcap from make for all ncurses targets. - FM
+* Tweaks of make for FreeBSD. - AAC
+* Use SLtt_get_screen_size() instead of the apparently less portable
+  code for slang in size_change() of LYUtils.c. - JED
+01-27-97
+* Made ALT a synonym for VALUE in INPUTs with TYPE="image" to cooperate
+  with well-intentioned (though misinformed) providers who use ALT instead
+  of VALUE for the benefit of text clients or GUIs with image handling
+  turned off. - FM
+* Modified the code for submission of form content with TYPE="image" NAME-ed
+  INPUTs that have a VALUE (or ALT) to "fake" a 0,0 coordinate pair, as when
+  a VALUE (or ALT) is absent, instead of sending a single name=value pair.
+  Requests that using a name=value pair in such cases to indicate that the
+  submission was from a text client or GUI with image handling turned off
+  be included in the HTML specifications keep falling on deaf ears, so we
+  may as well "fake" something closer to what the CGI scripts are expecting,
+  and hope that the script interprets 0,0 as an indicator that the user did
+  not see the image and make a conscious choice within it.
+* Added code to offer a link for the SRC of the image in INPUTs with
+  TYPE="image", distinct from the submit button, when clickable images
+  is on. - FM
+* Updated the "HTML Forms" section of the Users Guide. - FM
+* Fixed a typo in the parsing of Cache-Control MIME headers and META
+  directives. - FM
+01-25-97
+* Updated lynx_help_main.html, about_lynx.html and about_lynx-dev.html. - FM
+* Mods to indicate a toolbar by a '#' preceding its first link when the
+  toolbar is being displayed, and to indicate the availability of a toolbar
+  by a '#' in the top, left-hand corner of the screen when the toolbar is
+  not being displayed.  Added explanation of this in the online 'h'elp. - FM
+* Indicate the 'allow' setting (always, never, or via prompt) for each
+  domain in the Cookie Jar Page. - AK
+* Don't delete cookie-less domains silently during garbage collections if
+  they have their 'allow' set to always or never. - AK & FM
+* Added ability to change the 'allow' settings for domains via the Cookie
+  Jar Page. - FM
+* Added basic protection against "denial of service attacks" by limiting
+  a domain to 50 cookies, the total number of stored cookies to 500, and
+  the maximum processed size of a cookie to 4096 bytes. - FM
+* SGML escape any ampersands or angle brackets in the cookie names, values,
+  parameters, and comments when creating the HTML stream for the Cookie
+  Jar Page, and only include entries for comments if they were present in
+  the servers' Set-Cookie headers. - FM 
+* Updated the online 'h'elp for cookies. - FM
+* Removed -DNO_KEYPAD from all ncurses targets in the Makefile. - FM
+01-23-97
+* Added a "Lynx State Management (Me want cookie!)" section to the Lynx
+  Users Guide, and a cross-linked cookie_help.html file for the Cookie
+  Jar Page. - FM
+* Added prompting for whether to show the body of a 401 status reply or
+  simply return to the current document when an activated link requires
+  authentication via a username and password, and the user has none for
+  that realm, or forgot them. - FM
+01-22-97
+* Added handling of expires attribute values in Version 0 (a.k.a. Netscape)
+  Set-Cookie MIME headers or META tags, and added "Maximum Gobble Date"
+  entries in the Cookie Jar Page which indicate the maximum intended age
+  for each cookie based on the Version 0 expires or Version 1 max-age
+  attribute values. - FM 
+* Added an LYmktime() function in LYUtils.c which accepts strings in the
+  format "Day, dd-Mon-yy hh:mm:ss GMT" or "Day, dd Mon yyyy hh:mm:ss GMT",
+  parses and converts them to time_t format (seconds since 00:00:00 Jan 1
+  1970), and returns the time_t value, or zero if the date is in the
+  past.  It is used for handling Expires headers or attribute values. - FM
+* Added parsing of Cache-Control and Expires MIME headers and META tags
+  sufficient to determine whether the no_cache element should be set in
+  the document's structures. - FM
+* Eliminated the "; $Path=foo; $Domain=blah" attr=value pairs when sending
+  Version 0 (a.k.a. Netscape) cookies in request headers, because too may
+  CGI scripts in the real world have brain-dead parsers and fail when they
+  are included. - FM
+* Added handling of Set-Cookie directives in META tags. - AK
+01-20-97
+* Added confirmation prompts for deletions from the Cookie Jar, expanded
+  the garbage collecting for expired cookies, debugged and implemented the
+  code for security checks based on lead and embedded dots in domain values
+  and host prefixes as described in Section 4.3.2 of the -05 State Management
+  draft, added requirement for https URLs (direct, or via proxy) to include
+  cookies which have the secure flag set in request headers, and extensively
+  annotated the cookie support code for ease of further development. - FM
+* Added ability to set SHOW_CURSOR in lynx.cfg, to override the compilation
+  setting in userdefs.h, and made the -show_cursor command line switch a
+  toggle for the compilation or configuration default. - FM
+01-18-97
+* Bug fixes and memory leak plugs for the cookie support.  Added ability
+  to delete individual cookies or entire domains via the Cookie Jar Page
+  (Ctrl-K).  The domains and cookies are displayed as DL/DT/DD blocks,
+  with links for each domain and cookies name.  The deletions are done
+  by activating those links, which can be numbered, so it should be OK
+  for blind users. - FM
+* Tweaks of the news/nntp/snews gateway. - FM
+* Tweaks of paragraphing if ADDRESS, BANNER, BLOCKQUOTE, BQ, FN, MARQUEE
+  or NOTE blocks are nested (note that nesting does not yield progressive
+  indentations of these blocks). - FM
+01-16-97
+* Added "first pass" cookie support based on patches from Andrew Kuchling
+  (amk@magnet.com).  Still needs work (see comments at top of LYCookie.c).
+  A SET_COOKIE symbol in userdefs.h and lynx.cfg determines whether cookie
+  support will be on or off by default, and the default can be toggled
+  via a -cookies command line switch.  When on, Set-Cookie headers invoke
+  confirmations with possible replies of 'Y'es or 'N'o for that cookie,
+  'A'lways, to accept all cookies from that domain, or ne'V'er to never
+  accept cookies from that domain.  The Cookie Jar can be examined via
+  the COOKIE_JAR keystroke command, mapped by default to Ctrl-K.  The
+  Cookie Jar, and any 'A'lways or ne'V'er settings, do not presently
+  outlast the Lynx session. - FM
+01-14-97
+* Added use of DEFAULT_INDEX_FILE or the URL from an -index=URL command
+  line switch as the the HREF for a banner LINK with REL="Index" and no
+  HREF of its own (see the 01-01-97 mods and the HTML Banners section of
+  the Lynx Users Guide). - FM
+01-13-97
+* Tweaks of the news gateway. - FM
+* Added "Negotiate: trans" header for GET and HEAD requests.  Shouldn't
+  be necessary to get 300 instead of 406 replies when nothing matches
+  the Accept and Accept-foo request headers, but some HTTP/1.1 servers
+  apparently want it when the UA declares itself as HTTP/1.0, as Lynx
+  still does. - FM
+01-12-97
+* More updates of the online 'h'elp files. - FM
+* Simplified the code for checking whether a startfile is a bookmark file
+  entered as a URL instead of invoked via the -book switch.  The previous
+  code was tripping up some versions of the osf and linux compilers. - FM
+01-10-97
+* Replaced the realloc() in split_line() of GridText.c with a calloc(),
+  memcpy(), FREE() sequence for all systems, not just AIX and ultrix,
+  based on analysis of memory wastage by Hans Reiser
+  (dl9rdz@cip.e-technik.uni-erlangen.de). - FM
+* Tweaks of the body= handling in mailto URLs. - FM
+* Tweaks of the ftp gateway. - FM
+* Restored inheritence when resolving versus a base with the same scheme,
+  because the RFC1808 and Fielding Draft behavior of not doing so yields
+  too many failures in the real world (sigh...). - FM
+01-09-97
+* Ugh!  The distribution zip still had the Nov 4, 1996 HTTCP.c instead of
+  the one I modified on Christmas.  No wonder people were still reporting
+  the wrong messaging with -DNSL_FORK.  The right HTTCP.c is in there
+  now. - FM
+* Mods to resolve the HREFs for LINKs with REV="made" or REV="owner"
+  versus the base (a many, many year old bug finally caught 8-). - FM 
+* Added HTAlert messages about BASE HREF vaules, Location header values,
+  and Refresh URL values that were not received as absolute URLs.  We
+  still resolve them versus the RequestURI, since that's invariably
+  what is intended, and thus the optimum "error recovery" strategy. - FM
+* Added handling of cc= and body= fields in ?searchpart strings of mailto
+  URLs.  They are described in draft-hoffman-mailto-url-00.txt recently
+  posted to the URI-WG list.  This draft ignores the objections which have
+  been filed about changing the semantics of mailto and breaking clients
+  which are fully conformant with the mailto specs in RFC1738, instead of
+  using a new scheme name (e.g., smtp:) for URLs with mail headers, and it
+  extends the ill-advised use of '&' as puctuation in URLs instead of
+  honoring the previous IETF effort to seek it's replacement by ';' as the
+  URL name=value separator and, in effect, treating them as parameters
+  without need to worry about confusions with entities when the URLs are
+  attribute values in text/html.  However, the chairman of the URI-WG is
+  a co-author of this draft, so, sigh...  As far as this Lynx code is
+  concerned, the mods are more "error recovery" to cope with the sad things
+  which have afflicted the Web during the past 2-3 years, and use of a
+  ?searchpart in mailto URLs is still DISadvised.  Lynx uses only subject=,
+  cc=, and body= fields from a ?searchpart, using it's own "safe" rules for
+  other mail headers, and ignoring ones other than those three in the
+  ?searchpart as "unsafe".  The cc= values in a ?searchpart are added to
+  the primary address as a comma-separated list for the mail agent, and
+  Lynx's own Cc: is that entered, optionally, by the user.  Any body= field
+  is passed to the external editor, if one has been defined, for review and
+  possible modification.  Otherwise, it is scrolled for review.  The mailing
+  can be cancelled at any time (via Ctrl-G), and via a statusline prompt
+  after everything has been reviewed, if the user judges the body and/or
+  addresses to be unsafe or inappropriate. - FM
+* Moved information and prompt strings in LYMail.c to installer-modifiable
+  symbols in LYMessages_en.h. - FM
+01-07-97
+* Eliminated forced exits for keyboard input buffer overruns on VMS.
+  There's no perfect way to deal with it, but Lynx should recover
+  gracefully most of the time now, and do nothing bad if ungraceful. - FM
+* Added handling of Content-Base and Content-Location MIME headers when
+  'd'ownloading, 'p'rinting, or mailing HTML source.  For this, as
+  for rendered HTML streams (see 01-06-97 mods) the base is determined
+  according to HTTP/1.1 rules:  If a Content-Base header was received,
+  that's the base.  Otherwise, if a Content-Location header was received
+  and it's an absolute URL, that's the base.  Otherwise, the URL used
+  to retrieve the document is the base.  When actually rendering, any
+  BASE tag in the document overrides the base derived from headers.
+  When 'd'ownloading, or outputting HTML source for a 'p'rint option,
+  an X-URL comment with the URL used to retrieve the document and a
+  BASE tag with the header or URL-derived base are inserted at the top
+  of the document.  These should be moved down into the actual HEAD
+  section to make the HTML fully legal, but will work as is if the
+  output is used in conjunction with automatic invocation of Lynx or
+  Netscape as a text/html helper application.  When mailing with an
+  SMTP-conformant mailer, the actual URL used to retrieve the document
+  is indicated via an X-URL header, and for HTML source, a Content-Base
+  and a Content-Location header are included, set to what was actually
+  received by Lynx via MIME headers, or to the retrieval URL. - FM
+01-06-97
+* More updates of the online 'h'elp.  The Visited Links Page ('V'),
+  multi-bookmark file support, REL/REV and META enhancements, and new
+  switches are now all fully documented in the 'h'elp. - FM
+* Added handling of Content-Base and Content-Location MIME headers for
+  rendered HTML streams (still using the document's URL in the 'd'ownload
+  and 'p'rint (and mailing) BASE prepending kludge). - FM
+* Added code to avoid getting tripped up by double-quoted header values
+  in HTMIME.c.  We still need more sophisticated parsing of possibly
+  compound HTTP/1.1 headers, but we don't yet use any of those. - FM
+* Tweak of the efficiency mods for command line parsing in LYMain.c. - FM
+* Simplified some code in LYMainLoop.c that was tripping up the AIX32
+  compiler. - FM
+01-04-97
+* More updates of the online 'h'elp. - FM
+* Added DIRED_MENU support for .tgz files as for .tar.gz files. - FM
+01-03-97
+* Made the command line parsing in LYMain.c more efficient. - FM
+* Added -nopause switch for setting InfoSecs, MessageSecs, and AlertSecs
+  to zero.  Can be used to eliminate forced statusline pauses during
+  traversals. - FM
+* Mods to allow absolute zero quality values for Accept headers, so that
+  in mailcap files users can do things like map image/* to a helper app
+  but exclude particular image subtypes which the app can't handle by
+  assigning q=0 for that subtype.  HTTP/1.1 still specifies 4 significant
+  figures for quality values, so if the value is non-zero, Lynx still
+  forces a minimum of q=0.001. - FM
+* Typo fixes in lynx.cfg. - LWV
+01-02-97
+* Updates of the online 'h'elp files. - FM
+* Made the parsing of lynx.cfg in LYReadCFG.c more efficient. - FM
+01-01-97 -- Happy New Year!
+* More partial/relative HREF resolving enhancements.  Everything is now
+  handled as recommended in Larry Masinter's -03 revision of Roy Fielding's
+  -02 URL ID, except file and ftp URLs (which Lynx handles as described
+  in the online 'h'elp ).  Note, though, that Lynx handles known schemes
+  on a scheme-by-scheme basis, and for schemes that involve substitutions
+  of "/" for a NULL/zero-length path, Lynx inserts the "/" at the resolving
+  stage, so those slashes are present where the Fielding test suite doesn't
+  indicate them, but the actual requests sent to servers (or bad URL message
+  if it's a scheme that requires a host field and doesn't have a default)
+  will be the same.  Note, also, that Lynx sends only the  path<?searchpart>
+  ("absolute path") in it's direct http requests and indicates the host of
+  the URL in the Host:  header, i.e., sends the absolute URL only to proxies.
+  Note, as well, that Lynx treats a zero-length attribute value for an HREF,
+  SRC, etc. as a reference to the currently displayed document, but still
+  uses the base (which might not be the current document's address) as the
+  default for FORMs without an ACTION specified, or ISINDEX tags without
+  an HREF or ACTION specified. - FM
+* Expanded REL/REV handling.  All of the REL values in the (expired) Maloney
+  and Quin draft-ietf-relrev-00.txt ID which make sense for banner links in
+  Lynx have been added.  For REL="Help" without an HREF in the LINK, Lynx
+  uses its helpfile URL.  For REL="Home" without an HREF in the LINK, it
+  uses the configuration startfile or WWW_HOME URL (i.e., not a startfile
+  specified on the command line), or the command line homepage, if it was
+  specified. - FM
+* Added handling of fragments in conjunction with URL expansion guessing for
+  startfile, homepage and 'g'oto strings.  Note that any '#' that is not a
+  fragment delimiter should be hex escaped (%23), and ideally all reserved
+  or unsafe characters will be hex escaped in the user-entered string, though
+  you can get away with not using the hex codes for most others, depending on
+  their positions in the string.  Also note that on VMS if you include the
+  version for local files it must precede the fragment (e.g., foo.html;3#frag)
+  as for parameters. - FM
+12-26-96
+* Mods of HREF resolving to be more consistent with the latest IETF draft
+  (http://www.ics.uci.edu/pub/ietf/uri/draft-fielding-url-syntax-02.txt).
+  Most importantly, lone fragments (HREF="#fragment") are resolved versus
+  the current document's URL, and no longer versus the BASE, if present.
+  There are a few things in the draft which are at odds with what virtually
+  all currently deployed browsers do, and so I stuck with the "deployed"
+  behavior.  Try the tests in  http://www.ics.uci.edu/~fielding/url/  to
+  see where Lynx still differs from the draft. - FM
+* Tweaks of 'z'ap handling. - FM
+12-24-96
+* Tweaks of DIRED_SUPPORT and make for osf. - FM
+12-23-96
+* Added code to check if the startfile has BOOKMARK_TITLE as its title,
+  and if so, and it's in the bookmark file list, add the bookmark element
+  and reload to have it treated as if it were invoked with -book. - FM
+12-21-96
+* Added code for the DIRED_MENU command ('f' and 'F' by default) to invoke
+  CSwing on VMS if CSWING_PATH is defined, as explained in userdefs.h and
+  lynx.cfg . - FM
+12-20-96
+* More improvements in the fatal error and memory exhaustion handling, and
+  plugging of memory leaks. - FM
+* Changed "newline" to "Newline" in LYMainLoop.c to deal with another
+  reported, ill-advised, macro in the AIX 4.2 curses.h. - FM
+* More tweaks of lynx.cfg. - FM
+12-19-96
+* Improvements in the messaging and cleanups for aborts on fatal errors
+  and exits on memory exhaustion. - FM
+* Worked v2.1 of lpansi.c into the distribution. - FM
+* Modified lynx.cfg to reflect the compilation defaults consistently, and
+  changed the compilation default for SUBSTITUTE_UNDERSCORES to FALSE. - FM
+* Changed the "lines" element to "Lines" in the HText structure and the
+  "tab" structure name to "Tab" to cope with some unwise employee reportedly
+  using all lower case "lines" and "tab" strings as macros in the AIX 4.2
+  curses.h. - FM
+12-17-96
+* Restored use of the -l format in the parent links of local Unix directory
+  listings if LONG_LIST is defined, without the v2.6 bug of creating strange,
+  trailing relative or escaped strings.  As far as I can tell from exercizing
+  them, the DIRED_SUPPORT and LONG_LIST handling are now fully debugged
+  (famous last words...  8-). - FM
+12-16-96
+* Don't reiterate parent links in local directory listings.  They are
+  offered only in the top, up to parent link if NO_PARENT_DIR_REFERENCE
+  is not defined. - FM
+* Moved more HTML.c functions to LYCharUtils.c. - FM
+* Tweak of META handling, which was causing crashes (due to freeing an
+  anchor structure prematurely in the 12-13-96 mods for moving HTML.c
+  code to LYCharUtils.c). - FM
+* Block Unix relative path strings in lynxexec and lynxprog URLs. - DT
+12-14-96
+* Added a COLLAPSE_BR_TAGS compilation and configuration symbol for
+  determinining whether Lynx collapses serial BR tags.  Note that the
+  valid way to create extra blank lines in HTML is with PRE blocks that
+  contain only newlines. - FM
+* Fixed a longstanding glitch in the alignment handling which could
+  cause a Paragraph's ALIGN value to cross embebbed blocks, rather than
+  restoring the appropriate alignment for the outer division or block
+  on close of the embedded block. - FM 
+* Modified HR handling so that it inserts the same before and after
+  spacing regardless of whether P end and/or start tags are present
+  before and/or after the HR. - FM
+* Don't insert the bookmark file description and filepath if multiple
+  bookmark file support has been turned off, and this is the default
+  bookmark file (but they will still be inserted if it's not the default,
+  e.g., if it's another bookmark file viewed before the support was
+  turned off, and retrieved as a previous document). - FM
+12-13-96
+* Added parsing of Content-Disposition in META tags and setting the
+  suggested file name if  file; filename=name.suffix  is in the value
+  of the Content attribute and we don't already have that via a server
+  header. - FM
+* Incorporated almost all globals related to stream parsing and page
+  display in HTML.c and GridText.c into the HTML object structure and
+  HText structure to make the parsing and display functions more nearly
+  re-entrant, and moved several functions from HTML.c to LYCharUtils.c
+  to reduce the size of HTML.c. - FM
+* Added -cckr to the libwww Makefile compiler options for SGI. - Carl
+  Buxbaum (crb@world.std.com)
+* Fixed typo in LYMainLoop.c that affected the 'd'ownload command when
+  DIRED_SUPPORT is enabled. - FM
+12-10-96
+* Implemented Safe header handling and prompting about resubmissions of
+  forms with method POST along the lines described in the 24-Nov-96 IETF
+  ID: http://gewis.win.tue.nl/~koen/draft-holtman-http-safe-01.txt
+  Lynx prompts for confirmation whenever it detects that a resubmission
+  would occur, unless the previous reply included "Safe: yes".  Prompts
+  always will occur if the -resubmit_post toggle is on (since resubmission
+  always would occur; not advised).  If not toggled on, resubmissions
+  would occur when no_cache is set or the previous reply has been dumped
+  from the cache.  When using the PREV_DOC command or History Page, if
+  confirmation is not obtained, Lynx will skip to the yet earlier document,
+  or cancel, as appropriate. - FM
+* Added parsing of the Safe header in HTMIME.c, and added a safe element
+  to the anchor and document structures.  Will be FALSE unless a Safe
+  header is received that specifies "YES" or "TRUE" (case-insensitive,
+  only "YES" is in the specs), and applies only to replies from form
+  submissions with the POST method. - FM
+* Cleanup of code in HTAccess.c.  May correct problem of crashes for
+  ISINDEX searches on some systems, though I couldn't reproduce that
+  problem here. - FM
+12-09-96
+* Added an HTSetPresentation() for image/x-xbitmap in HTInit.c when DISPLAY
+  is set. - FM
+* Added an LYOutOfMemory boolean that is set by the outofmem() macro, and
+  code in the Unix FatalProblem() and VMS exit handler for reporting the
+  memory exhaustion instead of the misleading "bug" message when they are
+  invoked due to memory exhaustion.  May not be reported reliably for
+  linux, because for some reason I don't understand, the SIGBUS trapping
+  is ifdef'ed out for linux in LYMain.c. - FM
+* Fixed typo in the new LYAddVisitedLink() in LYHistory.c of yesterday's
+  mods. - KW
+12-08-96
+* Added a VLINKS command, mapped by default to upper case 'V', and code
+  for creating a list of all links 'V'isited during the current Lynx session
+  in order of recency (most recent highest in the list).  Lower case 'v' is
+  still mapped to VIEW_BOOKMARKS.  The VLINKS listing is complementary to
+  the History Page listing, and formatted similarly.  It excludes POST
+  replies, and bookmark, menu and list files (use the History Page or
+  direct keystroke commands for those).  It includes any links that were
+  downloaded, or passed to a helper app (except mailto and newsreply or
+  newsfollowup links, since those require activation in the original
+  document for proper inclusion of it in the email message or news
+  post).  You can print the Visited Links Page, or 'd'ownload it via
+  the History Page. - FM
+* Added reporting of the Charset parameter, if present in a server reply
+  header, META tag, or by virtue of a suffix map, to the showinfo ('=')
+  display. - FM
+12-07-96
+* Added 'p'rint menu support for the History Page. - FM
+* Added a content_length element to the anchor structure and use that,
+  if a Content-Length header has been received, to indicate the total
+  bytes in the statusline when receiving the stream. - FM
+* Include HTTP_ACCEPT_LANGUAGE in the lynxcgi environment. - David Trueman
+  (david@cs.dal.ca).
+12-06-96
+* Many more cleanups and commenting of the code for the benefit of new
+  developers. - FM
+* Tweaks of URL parsing and path simplifications.  Added simplification
+  of the file://localhost paths from startup and 'g'oto guesses. - FM
+* More anti-crash protections for bad HTML in SELECT blocks. - FM
+* Usability enhancement for DIRED's 'F' menu: list number and names of
+  (some of) the tagged items, and provide a way to untag all items. - KW
+* Force screen refresh after a DIRED system command has failed. - KW
+* Modified HTFile.c to handle relative and "Up to parent" links more
+  effectively. - KW
+* Added KEYGEN to the DTD (but no code to do anything with it yet). - FM
+12-05-96
+* Fixed typo in the for-Unix section of LYAddPathToHome() that was added
+  yesterday in LYUtils.c. - James Troup (J.J.Troup@comp.brad.ac.uk)
+12-04-96
+* Numerous cleanups and commenting of the LYfoo.c and LYfoo.h modules,
+  for the benefit of new Lynx developers. - FM
+* More security-related enhancements and polishing up of the multiple
+  bookmark file support. - FM
+* Increased the sizes of MAXHIST and MAXLINKS, added statusline messages
+  should they ever be exceeded (not likely now 8-), and code for freeing
+  all excess pointers on each page draw instead of letting them grow and
+  freeing them on exit (should help for memory-limited systems 8-). - FM
+* Tweaks of DIRED_SUPPORT. - KW
+12-02-96
+* Show nntp server status messages in group listings when not 221 (normal
+  reply to HEAD request), so the user will know that the articles are
+  not available from the server, rather than a bug in Lynx. - FM
+* Tweaks of BASE resolving. - FM
+* Added "trick" to send hostname guesses to stdout when the startfile or
+  homepage are not URLs, as we send to the statusline for 'g'oto guesses
+  (but don't use stdout if we are not interactive and the desired output
+  is going to stdout).  If the DNS lookup stalls, one thus can Control-C
+  out, instead of wondering why Lynx is taking so long to start up. - FM
+* Cleaned up the read_rc() and save_rc() functions in LYrcFile.c. - FM
+* Eliminated all printw() calls to avoid problems with non-ASCII and/or
+  multibyte/CJK characters. - FM
+* Numerous additional bug fixes and enhancements of the multiple bookmark
+  file support. - FM
+* Got rid of the ADVANCED_MULTI_BOOKMARKS symbol now that the choice can
+  be made in the 'o'ptions menu and saved in the .lynxrc file. - FM
+11-30-96
+* Added the ability to set the advanced mode for multiple bookmarks from
+  the options menu and save the defaults in the .lynxrc file - HL
+* Various typo corrections including one which kept LYMainLoop.c from
+  compiling under Unix when DIRED_SUPPORT was defined. - HL
+11-29-96
+* Numerous additional refinements and enhancements of the multiple bookmark
+  support.  Added support for REFRESH and PREV_DOC in the options and bookmark
+  menus, and NEXT_PAGE, PREV_PAGE, and ACTIVATE in the bookmark menus or
+  prompts.  Expanded the anchor and document structures to keep track of
+  different bookmark files in conjunction with VIEW_BOOKMARK, ADD_BOOKMARK,
+  and DEL_BOOKMARK commands, to restore the proper bookmark files on reloads
+  (overt, or because the cache was dumped for subsequent documents accessed
+  via bookmark links), and in conjunction with security-related restrictions.
+  Multiple bookmark support can be regulated via MULTI_BOOKMARK_SUPPORT,
+  BLOCK_MULTI_BOOKMARKS and ADVANCED_MULTI_BOOKMARKS symbols in userdefs.h
+  (or as SITE_DEFS in the Makefile) and lynx.cfg.  The multiple bookmark
+  support can be blocked via a -restrictions=multibook command line switch,
+  which is also set for -anonymous and -validate.  Prompting or display of
+  the bookmark file selection menu occurs only if bookmark files in addition
+  to the startup default have been defined (via the B)ookmark command in the
+  'o'ptions menu, if mu(L)ti bookmarks has been turned on; the setting and
+  definitions can be saved in the .lynxrc file).  Plugged memory leaks in
+  the previous implementation of multiple bookmark support.  Added code for
+  inserting the current description and filepath for each bookmark file
+  dynamically during rendering. - FM
+* Another tweak of attribute order in HTMLDTD.c. - KW
+11-28-96
+* Tweaked multiple bookmark support to fix an error which was causing a
+  crash on some systems and incorrect behavior on others - HL
+* Tweaked editing of multiple bookmark filenames to correct shifting of 
+  screen between multiple pages - HL
+11-26-96
+* Added support for setting the rendering of SELECT OPTIONs as popup menus
+  versus radio button lists via the 'o'ptions menu, and saving the default
+  in the RC file.  Changed NO_SELECT_POPUPS to USE_SELECT_POPUPS in lynx.cfg
+  and userdefs.h.  The -popup switch still overrides everything. - FM
+* Added multiple bookmark support along the lines of the patch from Filip M.
+  Gieszczykiewicz (filipg@paranoia.com), plus numerous enhancements of the
+  'o'ptions menu and bookmark handling. - FM
+* Tweaks of attribute orders in HTMLDTD.h and HTMLDTD.c. - KW
+11-25-96
+* Updated the "Lynx Enhanced Pages" links to the new "Lynx links"
+  (http://www.crl.com/~subir/lynx.html) throughout the help, docs,
+  and code. - FM 
+11-24-96
+* Modified the ENCTYPE="multipart/form-data" handling to indicate the
+  Content-Type with charset parameter, when known, within each part
+  rather than in the main Content-Type header. - FM
+* Corrected typo in HTNews.c. - FM
+* Added support for setting the suggested filename in 'd'ownload and
+  'p'rint options based on the Content-Disposition header if it included
+  the string  file; filename=name.suffix  in its value.  Can be used by
+  CGI scripts to set the suggested filename for saves to disk, downloads
+  or mailings of the script's reply body, so it won't be the last symbolic
+  element in the path field of the form's ACTION (which is normally the
+  the script, itself, or a PATH_INFO element, and thus misleading). - FM 
+* Tweaks of change_sug_filename() in LYUtils.c for better handling of
+  gzipped files on VMS. - FM
+11-23-96
+* Added reporting of the Server, Date and Last-Modified headers, if present
+  in server replies, to the showinfo ('=') display. - FM
+* Added the ability to store the NO_SELECT_POPUPS in the .lynxrc, but the
+  .lynxrc must be edited manually until the options handling is converted
+  to a form-like interface that accommodates more options.  For now, select
+  'O'ptions and write out the options with '>' to create a block in .lynxrc
+  with an explanation of the switch.  The switch is "select_popups" and
+  can have the values of "on", "off", or nothing.  If nothing, the default
+  set in userdefs.h or lynx.cfg will persist.  Otherwise, "on" will set use
+  of popups and "off" will set use of radio buttons as the default.  The
+  startup default always can be toggled via the -popup switch. - HL & FM
+* Corrected a couple of typos in the help files. - HL
+11-22-96
+* Added support for WHEREIS ('/') and 'n'ext searches within SELECT popups.
+  The buffering for 'n'ext is separate from that in the main loop (i.e.,
+  for non-form field document searches), but all previously entered search
+  strings are still combined into a circular buffer and can be accessed via
+  the up-arrow or down-arrow keys at the prompt for a search string.  The
+  searches within popup menus do not yield highlighting of the search string,
+  but simply positioning of the cursor on successive options which contain
+  the search string. - FM
+* Added support for all of the navigation commands within SELECT popup
+  windows, including HOME, END, UP_TWO, DOWN_TWO, UP_HALF and DOWN_HALF,
+  in addition to the single line and paging navigation commands. - FM
+* Added support for the REFRESH command within SELECT popup windows. - FM
+* Tweak of hookless snews handling. - FM
+11-21-96
+* Added handling of forms with ENCTYPE="multipart/form-data".  Note that
+  we still don't support INPUTs with TYPE="file" or TYPE="range", and
+  thus still set the DISABLED attribute for all fields in the form if
+  either of those two TYPEs are present in it. - FM
+* Tweak of -mime_header handling. - FM
+* Typo fixes of comments in HTML.c. - Albert S Woodhull
+  (aswNS@hamp.hampshire.edu)
+11-20-96
+* Added a NO_SELECT_POPUPS compilation (userdefs.h) and configuration
+  (lynx.cfg) definition, normally set FALSE.  If set TRUE, single-choice
+  SELECT blocks (i.e., ones without the MULTIPLE attribute) will be handled
+  as a list of radio buttons instead of via a popup window.  Also added a
+  -popup command line switch for toggling the compilation or configuration
+  setting. - FM
+11-18-96
+* Tweak of LYFindEndOfComment() in LYCharUtils.c. - Brian Borowski
+  (brianb@braille.uwo.ca)
+11-17-96
+* Added links to the lynx-dev hypertext archive at FLORA in the online
+  'h'elp. - FM
+* Tweaks of my_spawn() in LYLocal.c. - KW
+11-16-96
+* Added support for use of the 'd'ownload command on TYPE="submit" and
+  TYPE="image" submit buttons.  You still must use the History Page for
+  TYPE="text" INPUT fields that also act as submit buttons by virtue of
+  being the only non-hidden field, because the 'd'ownload command key
+  could be a text entry into the field, and thus must be treated as
+  such. - FM 
+11-15-96
+* Mods of HTFormat.c and HTTP.c for better handling of unexpected server
+  disconnects. - FM
+11-13-96
+* Wind down the element stack on EOF if any unclosed tags were received. - FM
+* Fixed typos in the HTMLDTD.c BODYTEXT definitions. - FM
+11-10-96
+* More tweaks of hook-less snews handling. - FM
+* Changed the default STARTFILE to http://lynx.browser.org/ and the default
+  HELPFILE to the v2.6 set at NYU in userdefs.h and lynx.cfg. - FM
+* New function HTUnEscapeSome() in HTParse.c for unescaping selected
+  characters in a string.. - KW
+* Numerous changes to make DIRED_SUPPORT work as intended, to use the
+  library's HTList functions and macros for managing the list of tagged
+  file URLs, and to keep track of proper levels of URL escaping so that
+  unusual filenames which contain #% etc. are handled properly.  Can now
+  edit, move, etc. Abc%25252525def.html, #xy#~, etc. - KW
+11-09-96
+* Treat 301 or 302 redirection of a POST as 303 when the Lynx process is
+  non-interactive, rather than rejecting the redirection, since 303 is
+  still most likely what the CGI script actually intends (will still
+  prompt if the process is interactive). - FM
+* Added parsing and trace mode reporting of Content-Disposition headers
+  in HTMIME.c (should be used, someday, to set the suggested file name
+  for disk saves and downloads based on any filename=foo.blah field). - FM
+* Further mods of HTNews.c to facilitate use of Lynx without SSL-hooks
+  in conjunction with an SSL-capable daemon/proxy for snews URLs that
+  returns NNTP streams for Lynx itself to convert into HTML, instead
+  of already converted streams as from a standard proxy. - TZ & FM
+11-08-96
+* Changed information returned by "-version" in LYMain.c to point to
+  lynx.browser.org and added a date to the copyright info. - HL
+11-07-96
+* Mods of HTNews.c to facilitate use of Lynx without SSL-hooks in
+  conjunction with an SSL-capable daemon/proxy for snews URLs. - TZ
+11-05-96
+* Typo fixes in HTMIME.c. - KW
+* Tweak of NSL_FORK mods. - FM
+11-04-96
+* Tweaks of host parsing when a password and/or username is present
+  in override_proxy() of HTAccess.c. - FM
+* Tweaks of the UNDERSCORES and STARS macro setup and useage to avoid
+  possible crashes for FORMs with long values. - FM
+* Worked in Tom Zerucha's (tz@execpc.com) code for fork-based name
+  server lookups that can be 'z'apped.  May not yet be portable to
+  all flavors of Unix.  Add -DNSL_FORK to your SITE_LYDEFS to try
+  it. - FM
+11-02-96
+* Fixed typo in HTAlert.h. - FM
+* Cleaned up HTTCP.c code, simplified some of its spaghetti
+  ifdef'ing, and worked in mods to bypass connection confirmations
+  when Lynx is SOCKSified and the socks_flag is set. - FM
+* Added recognition and acceptance of text/x-sgml and text/sgml
+  MIME types (all that I've encountered thus far work fine with
+  Lynx, though it doesn't yet interpret marked sections). - FM
+* Added socket function prototypes for MultiNet in tcp.h. - FM
+* Mods to facilitate application of the SSL patches (after some
+  corrections in the patches to keep HTLoadHTTP re-entrant, make
+  CONNECT work as intended again, and eliminate memory leaks in
+  the SSLeay adaption) - FM
+* Adding info about -DNO_TTYTYPE in top level Makefile. - FM
+* Use clrtoeol() in LYOptions.c to ensure that no terminals which use
+  reverse video for standout() will have trailing reverse fields on
+  edits of option vaules. - DK
+* Offer user@host instead of WebMaster@host for the 'c'omment command
+  if the path for the URL begins with a tilde and there is no
+  LINK REV="made" present. - FM
+* Tweaks of inews Makefile and clientlib.c. - Christopher R. Maden
+  (crm@ebt.com)
+* Check nhist before attempting a DIRED_SUPPORT directory listing in
+  LYShowInfo.c. - KW
+10-21-96
+* Offer WebMaster@host for the 'c'omment command if no LINK REV="made"
+  was present in a text/html document, and save a known owner URL when
+  toggling to source ('\') so that the 'c'omment command can still be
+  used with that owner's (mailto or homepage) URL, but the source can
+  be included in the comment, as would be desireable (instead of a bad
+  rendering) when sending a comment about bad HTML in the document. - FM
+10-20-96
+* Added code for traversing the pseudo-documents created for client-side
+  image MAPs.  See the updated CRAWL.announce for more information. - FM
+10-19-96
+* Added definitions in LYCurses.h relating curses function calls to slang
+  functions or emulations for compatibility with new versions of slang,
+  based on patch from John E. Davis (davis@space.mit.edu). - FM
+* Added unescaping of the full address fields in mailto URLs or ACTIONs,
+  and improved the reliability of the parsing of the subject header from
+  the ?searchpart Netscapism when present. - FM
+* Give user option to use 303-like coversion of POST to GET in confirmation
+  requests for redirection of POSTs, base on patches from Drazen Kacar
+  (dave@fly.cc.fer.hr). - FM
+* Tweaks of POST content submissions in HTTP.c, based on patch from
+  KW. - FM
+* Fixed EOF checks in HTAAFile.c, HTGroup.c and HTPasswd.c, and improved
+  host address parsing in HTTCP.c, based on patches from Larry Schwimmer
+  (schwim@cyclone.stanford.edu) and Klaus Weide (kweide@tezcat.com). - FM
+* Added targets for umaxv and umaxv-slang for Encore's UMAXV - Thanh Ma
+  (tma@encore.com)
+10-16-96
+* Send the rendering of decompressed files to stdout with -dump, don't
+  spawn a viewer under any circumstances if -dump was used instead of
+  -source for Content-Types that are not text/html, and remove the
+  temporary decompressed files before exiting with -dump or -source. - FM
+* Properly handle TYPE="radio" versus TYPE="checkbox" INPUTs with NULL
+  or zero-length VALUEs. - FM
+* Added a continuation line token for the netbsd-ncurses target - HL
+* Fixed a typo in HTMIME.c in the trace output - HL
+* Block predictable buffer overrun in GridText.c if a page has more
+  than MAXLINKS links in it. - FM
+10-01-96
+* Add a Mime-Version header to the other headers in LYPrint.c so that the
+  09-20-96 mods for mailing source do what they were intended to do. :) -
+  Hamish MacEwan (macewanh@diatp.dia.govt.nz)
+09-20-96
+* Add a BASE tag to the tops of HTML source files, a la Netscape, when
+  mailing or downloading, and don't worry, for now, if that creates
+  technically invalid HTML (since Lynx copes with it as of the 09-15-96
+  mods 8-). - FM
+* Include Content-Type, Content-Location and Content-Base headers when
+  mailing HTML source on Unix. - FM
+* Use .txt versus .html suffixes when submitting rendered versus HTML source
+  temporary files to VMS MAIL, so that transports such as PMDF will indicate
+  the appropriate Content-Type. - FM
+09-17-96
+* Handle illegally positioned BASE tags. - FM
+* Tweak of Q nesting level checks. - Pawel Wiecek
+  (coven@i17linuxb.ists.pwr.wroc.pl)
+* Fixed typo in HTMIME.c for parsing of Pragma header. - Wilson Cheung
+  (wcheung@netcom.com)
+* Added parsing of Set-Cookie header in HTMIME.c (see IETF ID
+  http://www.ics.uci.edu/pub/ietf/http/draft-ietf-http-state-mgmt-03.txt
+  for info on how to implement it's use). - FM
+* Fixed typo in LYMainLoop.c for display of error message when up arrow is
+  pressed at the top of a document. - Hiram Lester, Jr. (hwlester@pobox.com)
+09-16-96
+* Use standard ls -l parsing of LIST output for Windows_NT ftp servers in
+  Lynx v2.6 as in v2.5. - FM
+
+--- Rename of Lynx2-5FM and release as Lynx2-6  (02-Sep-1996) ---
+    (see CHANGES2-6, CHANGES2-5, CHANGES2-4 and CHANGES2-3)
+==============================================================================
diff --git a/docs/CHANGES2.8 b/docs/CHANGES2.8
new file mode 100644
index 00000000..a7ae1a61
--- /dev/null
+++ b/docs/CHANGES2.8
@@ -0,0 +1,3399 @@
+=======================================================================
+---            Release of Lynx v2.8 (March 10, 1998)                ---
+=======================================================================
+
+1998-03-10
+* omit platform-specifics about release (recommended by HN). - TD
+* drop samples/lynx.cfg since it is redundant (recommended by HN).  - TD
+* modify makefile.in so that "make install-cfg" does not edit lynx.cfg
+  to point at local helpfiles, while "make install-help" will now do
+  that (reported by LP). - TD
+1998-03-07
+* move ifdef's for EXP_8BIT_TOUPPER inside UPPER8 function to allow
+  check for DOS/WINDOWS display charsets. - LP
+1998-03-06
+* clarify relationship between the configure script and userdefs.h with
+  respect to the LYNX_CFG_FILE definition. - TD
+* newer CF_FIND_LIBRARY autoconf macro, to allow ncurses library in /lib
+  only, needed for SUSE Linux. - TD
+* add casts to UPPER8 function's comparison for equality of parameters, and
+  to TOUPPER macro to guard against sign-extension due to prototype. - AAC
+* correct spelling of -lcur_colr library in aclocal.m4, change order of
+  tests to put -lHcurses second on HP-UX (patch by Jonathan Sergent).
+* restore simple zmodem downloader script, displaced by recent undocumented
+  change (there are some concerns about security or permissions with the
+  alternate script).  - DK
+* DOSPATH localfile patch:  corrected display of file://localhost/c:/,
+  which was displayed as file://localhost/c%3A/ (tweak LYConvertToUrl() in
+  LYUtils.c).  Now we may start "lynx c:" or 'go' c:  and not see these
+  strange letters.  On the other hand, if % and # symbols found in local
+  path it will be escaped as before (note that #fragment is not supposed here
+  to be used from command line...) - LP
+* workaround error in vendor's terminfo description of 'dtterm' by ensuring
+  we limit color pair-number accordingly. - TD
+1998-03-04
+* strip -g compiler option if not otherwise specified, for debugging (note
+  that autoconf 2.12 does not try to use -O option due to concerns about
+  compiler optimization). - TD
+* correct value of $host_os used in CF_CURSES_LIBS for special-case of
+  HP's -lHcurses (Jonathan Sergent <sergent@ecn.purdue.edu>).
+* correct def7_uni.tbl for Greek letters, note about UPPER8 assumption
+  added to chrtrans/README.format. - LP
+* few comments corrected. - LP
+1998-02-28
+* create new PRCS revision (2.8pre) for pre-release testing of Lynx 2.8 -TD
+* remove RELEASE_STATEMENT, merging it into README as per HN's
+  recommendation - TD
+* comments/minor changes to HTDOS.c, HTDOS.h, LYUtils.c - LP
+* document recent fix for RAW_DOS_KEY_HACK in lynx.cfg - DK
+* rename CHANGES.new to docs/CHANGES2.8 - TD
+* undo last minor change to UPPER8 - LP
+1998-02-27
+* add RELEASE_STATEMENT file. - TD
+* modify slang configuration to add fake 'scrollok()' - JED
+* modify LYmktime() so that 2-digit years must be greater/equal to 70 to be in
+  1900's (patch by Bela Lubkin).  Also adjust parse_windows_nt_dir_entry() and
+  parse_cms_dir_entry() as noted by Bela - TD
+* comment-out entries in cp1252_uni.tbl which correspond to nonprinting
+  control-characters - LP
+* add logic in SGML.c to correspond with 2.7.2 logic for codes used by
+  Microsoft FrontPage. - LP
+* remove unneeded code for nbsp, ensp, emsp, thinsp and shy from handle_entity()
+  in SGML.c - LP
+* ifdef UPPER8 function with EXP_8BIT_TOUPPER,
+  add configure option --enable-8bit-toupper to allow testing.  - TD
+* case-insensitive search and 8bit letters:  It was realized that
+  information about upper/lower mapping got from TOUPPER which depends on
+  locale in its 8bit and usually fails on non-UNIX systems.  We introduce
+  UPPER8 and strcasecomp8 to implement 8-bit aware case-independent search
+  using one simple assumption:  8bit upper/lower case letters have their
+  "7bit approximation" images in def7_uni.tbl matched case-insensitively
+  (7bit).  The cost of this assumption is that several differently accented
+  letters may be interpreted as equal but this is negligible if the search
+  string is more than one character long.  (LYStrings.c, also HTString.c
+  and LYMainLoop.c).  - LP, TD
+* add SunOS 4.x-specific ifdef to quiet redefinition warnings for sys/ioctl.h
+  vs sys/termios.h - TD
+* convert usage/options messages into arrays to simplify maintenance. - TD
+* add "-useragent" command-line option to set "User-Agent" (request by Merlin
+  Mathesius <merlin_mathesius@swissbank.com>).  - LP
+* tweak HTML in LYDownload.c, LYPrint.c to restore some double-spacing effects
+  altered in 'collapsible spaces' change 1998-01-25 (reported by James Elkinton
+  <zio@blueneptune.com>).  - LP
+* use strncasecomp/strcasecomp consistently throughout to avoid library
+  dependency on strncasecmp/strcasecmp. - TD
+* correct lengths in several strncasecmp calls for command-line options
+  (though -w is still an abbreviation for -width). - TD
+* test-build with BSD curses on OS/2 EMX (does not display properly), and
+  with ncurses -TD
+* add configure check CF_FUNC_LSTAT -TD
+* modify CF_CHECK_ERRNO so that configure script on OS/2 EMX finds
+  sys_errlist[] -TD
+* reset styles[] and styleSheet list in DefaultStyle.c, HTML.c so that when
+  a user reloads a page with ^R, we undo changes to those data structures
+  (reported by Larry Virden). - TD
+* remove extra copy of HTML.h from Implementation directory. - TD
+* add CF_GCC_ATTRIBUTES to configure script, to use in flushing out unused
+  parameter warnings (and later, to support prototypes for logging). - TD
+* rename 'extra_entities' to 'unicode_entities' (recommended by LP) - TD
+* add configure option --use-default-colors, to allow background color to use
+  default value (request by SUNAGAWA Keiki <Keiki_Sunagawa@yokogawa.co.jp>) -TD
+* change default for --disable-internal-links so it is normally-off - TD
+1998-02-19
+* add configure test CF_FIONBIO, some ifdef's (e.g., S_IFLNK) to support
+  build on OS/2 EMX. - TD
+* add configure option --disable-extended-dtd, for testing - TD
+* split-out entities.h from HTMLDTD.c - TD
+* remove obsolete mapping in "private" e000 area of mnem_suni.tbl,
+  mnem2_suni.tbl, rfc_suni.tbl - LP
+* remove unused function HTMLGetLatinOneValue() - LP
+* remove logic that would attempt lookup of Unicode entities by index into the
+  unicode_entities.put_entity method (e.g., of HTML_dtd), in HTML.c
+  (HTML_put_entity) and HTMLGen.c (HTMLGen_put_entity) - LP
+* tweaks to HTPlain.c, LYCharUtils.c and SGML.c, remove extra checks for
+  Unicode mdash, ndash, trade, as well as "iso-8859-2", "koi8-r", since they
+  are done in the chartrans tables - LP
+* add an alias 'H' for F1 when using RAWDOSKEYHACK (LYStrings.c) - DK
+* restore -DRAWDOSKEYHACK to src/makefile.dos, reported by DK - TD
+* correct a typo in CF_CURSES_LIBS configure macro, which caused the configure
+  script to not add termcap library to the list - TD
+* correct --disable-internal-links, by adding DONT_TRACK_INTERNAL_LINKS to
+  config.hin - TD
+1998-02-13
+* use size_t in SGML_dtd. - TD
+* remove extra trademark symbol and quotes from chrtrans/*.tbl, since
+  they are in the default def7_uni.tbl - LP
+* New item to lynx.cfg added:  PREPEND_CHARSET_TO_SOURCE (similar to BASE), we
+  need it to resolve charset for downloaded/printed HTML sources which became
+  local.  This is really useful because downloaded and printed texts may
+  happened to have different charsets so assume_local_charset fails.  For
+  downloaded source meta charset added from HTTP charset header (if and only if
+  present).  For printed source meta charset added from display_charset (real
+  charset after chrtrans).  If the original source has its own meta charset
+  and we add the second on top - Lynx currently use those on top and ignore
+  others (old) value (that is correct, although non standard like BASE on top).
+  The compilation default is FALSE (compatibility).  - LP
+* modify ncurses mouse behavior to match slang (use button 3 rather than
+  button 2 for "previous document" (reported by Michael Ritzert) - TD
+* use case-independent comparison for tail-only comparison in override_proxy
+  (patch by pg@sweng.stortek.com) - TD
+* remove unneeded definitions of ALT_CHAR_SET, NCURSES_VERSION in
+  src/makefile.dos - DK
+* correct syntax for the RAW_DOS_KEY_HACK in lynx.cfg, add a little information
+  on how to compile this.  Also patched makefile.dos to make compilation of the
+  raw dos key hack the default when compiling in DOS. - DK
+* change back to boolean since the logic was unused: UCCanTranslateFromTo(),
+  UCCanTranslateUniTo(), and UCCanUniTranslateFrom(). - TD
+* Mods of SGML.c and LYCharUtils.c to improve handling of entities,
+  obsolete stuff removed (not all yet). - LP
+* -localhost mode: disable interpreting BASE HREF= if local_host_only
+  to resolve local html files with BASE (Lynx add base to downloaded
+  sources and this may affect links if looking them with -localhost).
+  (tweak in html.c). - LP
+* Modify HTMLGetEntityUCValue in LYCharSets.c:
+  we begin to move from old style entities[] to unicode-based. - LP
+* added a few comments. - LP
+1998-02-07
+* Fixed a bug in HTTP.c which could cause trashing of authorization info
+  for an origin HTTP(s) server if the request is being proxied. - FM
+* Tweak in HTTP.c so that the reloading variable is not reset until
+  after any resubmissions due to authorization challenges. - FM
+* Tweaks of userdefs.h, lynx.cfg, LYMessages_en.h, LYMain.c, LYMainLoop.c,
+  LYClean.c, LYReadCFG.c, and LYGlobalDefs.h so that the QUIT_DEFAULT_YES
+  compilation symbol can be overridden in lynx.cfg, in keeping with
+  the principle that only strict security-related compilation symbols
+  cannot be overridden at run time. - FM
+1998-02-05
+* adjust formatting, comments & some messages in WWW files to simplify
+  comparison with 2.7.2 version.  (I have preserved some chunks of difference,
+  ifdef'd NOTUSED_FOTEMODS or NOTDEFINED for ease of comparison -- these may be
+  removed at a later time, when we are done absorbing changes from 2.7.2) - TD
+* Update SGML entity to Unicode table in HTMLDTD.c from ftp.unicode.org -
+  lots of new entities, iso-latin-1 now included there.
+  See also new files in test/ directory:  sgml.html and unicode.html.
+  Tweak a few typos in test/*.html according to sgml.html.
+  Add a few new entries in def7_uni.tbl according to sgml.html - LP
+* Cleanup iso01-iso09, cp866 tables against ones found at ftp.unicode.org -LP
+* Strip the fat from LYCharSets.c - unnecessary obsoleted tables removed
+  and redirected to SevenBitApproximation table (ones which have unicode tables
+  override it anyway, those for CJK had exactly the same tables as
+  SevenBit..). - LP
+* Remove obsolete "Other ISO Latin" charset, which works _exactly_ the same
+  as "7 bit approximation" (See the note on 06-14-96 where it comes from) -LP
+* Sort the list of charsets in Options according to 2.7.2 for 1997-10-15,
+  see the comments in UCinit at the bottom of UCDomap.c - LP
+* add ifdef to HTFile.c to workaround conflicting S_IFIFO vs S_IFSOCK
+  (e.g., on Apollo, from a report by Dave Eaton <dwe@arde.com>) - TD
+* updated INSTALLATION (patch by HN) - TD
+* modify DOS handling of CTL-C and CTL-BREAK handling for DOS to allow
+  exiting via SIGINT when pressing CTL-C or CTL-BREAK regardless of the
+  BREAK setting in DOS.  This leaves the BREAK setting unchanged unless
+  CTL-C or CTL-BREAK is actually pressed (in which case it leaves BREAK
+  ON) - DK
+* add note about Lynx vs frames to User's Guide (from Al Gilman) - TD
+1998-01-27
+* correct lynx.man to reference section "1" (one), not "l", since it is
+  not installed in the latter (reported by Jason Castonguay
+  <jcast@ntplx.net>) - TD
+* fix for VMS declarations of mainloop() and from_hex() (reported by FM) - TD
+* add to include-paths in libmake.com, build.com (reported by FM, citing
+  Brian Tillman) - TD
+* revert HTML.c to use LYHandleSELECT() - TD
+* align cases for function keys in LYStrings.c with 2.7.2 - TD
+* remove EXP_CHARTRANS ifdef's - TD
+* remove symbol USE_SIZECHANGEHACK -TD
+* adjust formatting, comments & some messages in most remaining ./src files to
+  simplify comparison with 2.7.2 version.  - TD
+1998-01-25
+* Changed the utf-8 Display Character Set string to "UNICODE UTF-8"
+  (i.e., added the hyphen between UTF and 8), and fixed typos in
+  the comments about iso-8859-5. -LP, FM
+* Modified HTML.c to add collapsible spaces before and after IMG ALT
+  strings or pseudo-ALTs whether or not the IMG element is within
+  Anchor content.  The occasional absence of such spaces due to poor
+  HTML was problematic for blind users.  Note that markup which uses
+  an image for a fancy letter with the ASCII letter as an ALT will
+  have that letter separated from the rest of the word.  Also note
+  that these spaces will not be collapsed in PRE blocks, but IMG is
+  invalid in PRE blocks.  The spaces could be omitted when IMG is
+  used invalidly in PRE blocks, but that would revive the problem
+  for blind users that they might not be present at all, so it seems
+  better to suffer extra spaces in such cases. - FM
+1998-01-24
+* Tweak in HTAccess.c to reset the title element in anchors on forced
+  reloads. - FM
+1998-01-22
+* Tweaks in HTML.c to prevent collapsing of blank lines within TEXTAREA
+  default values.  Note that we still strip any leading or trailing
+  blank lines (reported by Edward S. Marshall <emarshal@xnet.com>). - FM
+* Tweaks of LYCurses.c, LYMain.c, LYOptions.c, LYReadCFG.c, LYUtils.c
+  and LYAuto.c to ensure properly setting, with internal buffering, and
+  avoid memory leaks for the display and homedir values (reported by
+  pg@sweng.stortek.com). - FM
+* include userdefs.h in LYCurses.h to address redefinition warnings for
+  curses-related configuration. - TD
+* adjust formatting, comments & some messages in recently-modified files to
+  simplify comparison with 2.7.2 version.  - TD
+* remove obsolete logic from UCCanTranslateFromTo, (recommended by LP). - TD
+* make character set names (e.g., cp437, cp850, next) consistent in lynx.cfg,
+  userdefs.h (reported by LP).  - TD
+* change configure script to check for termcap library before curses, in case
+  it is dependent.  - TD
+* More corrections in the Russian Cyrillic area of def7_uni.tbl. - LP
+1998-01-17
+* correct logic for no_color_video by ensuring that if not defined, it
+  doesn't disable underline with color. - TD
+* remove NSL_CLONE - didn't build. - TD
+1998-01-16
+* eliminate gcc "shadowed variable", "nested declaration", "no previous
+  prototype" warnings. - TD
+* add --disable-internal-links configure option. - TD
+* remove W3C gateway (patch by DK, based on email from Gerald Oskoboiny
+  <gerald@w3.org>). - TD
+* documentation updates (patch by JS). - TD
+* add CONTENT_TYPE to environment of lynxcgi POST documents (reported by
+  Ty Sarna <tsarna@endicor.com> & FM). - TD
+* add NSL_CLONE ifdef that enables use of the Linux clone() call instead of
+  fork() for the gethostbyname() calls in HTTCP.c.  (patch by Ryan Nielsen
+  <ran@haxor.com>). - TD
+from the lynx code.  I think the following patch does this.
+1998-01-15
+* Tweak of the NSL_FORK code in HTTCP.c to prevent zombie processes from
+  being created when gethostbyname() is interrupted. - RN
+* Corrected the Russian Cyrillic area of the def7_uni.tbl Unicode to
+  7-bit approximations conversion table. - LP
+* Mods of UCAux.c, LYCharUtils.c, SGML.c and HTPlain.c to use 7-bit
+  approximations instead of 8th bit stripping when the document charset
+  is koi8-r and the Display Character Set does not have the corresponding
+  characters. - FM
+* Tweaks in HTML.c to ignore a newline character immediately following
+  a PRE start tag more consistently.  When PRE blocks are used to create
+  blank lines, you should get only as many as are actually included in
+  the PRE block, unless you include less than the number specified for
+  "before" the block to which you return, in which case you'll get the
+  latter number of blank lines. - FM
+1998-01-13
+* Fixed a typo in the HTParse() code of HTParse.c for checking whether
+  a colon in the host field indeed delimits a port number. - FM
+* Changed the internal MIME names for all Microsoft Windows codepages
+  from cp#### to windows-####, since the latter is used more commonly
+  as the charset value in META elements and/or Content-Type headers,
+  and most of them have been registered that way with IANA.  Note,
+  however, that Microsoft uses cp instead of windows- prefixes in the
+  charset names for the Unicode conversion tables submitted to the
+  Unicode Consortium.  Also note that we still treat cp, cp-, and ibm
+  prefixes as synonyms for the windows- prefix. - FM
+1998-01-06
+* work around for 'keypad()' function w/o corresponding key defines
+  (reported by Francisco A. Tomei Torres for NeXTstep 4.0). - TD
+* quote message in install rule, just in case (from HN). - TD
+* correct expression to supply default value of .cfg file's pathname
+  (reported by LE & Ambrose Li <acli@acli.interlog.com>). - TD
+* correct dependency of .cfg files upon $(libdir) in makefile.in - TD
+1998-01-04
+* correct temporary filename for -traversal -crawl (patch by Doug Kaufman). - TD
+* correct redefinition of SYSTEM_MAIL_FLAGS. (reported by Doug Kaufman). - TD
+* uncache current document when character set may have changed (patch
+  by Andrey A. Chernov) - TD
+* modify Linux setfont code to restore the original font on exit - TD
+* correct missing backslash (again) in makefile.in
+  (reported by Mark Mentovai - again) - TD
+1998-01-02
+* workaround for sed expression when rerunning configure with config.cache
+  for slang libraries (reported by Hynek Med). - TD
+* fix indicated by Laura Eaves (LE) for LYUCFullyTranslateString_1() - TD
+* modify SPAWNING_MSG for DOSPATH configuration, avoid unnecessary use
+  of clear-screen in shell (patch by Doug Kaufman). - TD
+* remove install-help from list for install rule, adding message to
+  indicate how to install it. - TD
+* install lynx.lss only if color-style is configured. - TD
+* correct filemode for DJGPP when processing config-file, patch by
+  Doug Kaufman). - TD
+* add LYNX_LSS_FILE to config.hin, reported by Ambrose Li
+  <acli@acli.interlog.com>. - TD
+* new copy of INSTALLATION file from HN. - TD
+* add COPY* to install rule. - TD
+* simplify includes in UCdomap.c by using include-path in makefiles. - TD
+* build configure script with patched autoconf to workaround limited
+  environment space on CLIX 3.1 - TD
+* rename mnemonic_suni.tbl to mnem2_suni.tbl to accommodate 'make' on
+  older system with 14-character name-limit. - TD
+* sorted some lists (e.g., character sets) which were unreadable. - TD
+* incorporate most of FM's changes from 971124 to 971230 (see below). - TD
+  (Note:  don't try to use fflush(stdin) -- it's an FAQ -- nonstandard,
+  dumps core on some platforms).
+1997-12-30
+* Added Unicode translation support for "DosBaltRim (cp775)" and
+  "WinBaltRim (cp1257)". - FM
+1997-12-29
+* Fixed bug in the order of re-initializations for the 1997-12-22
+  get_connection() mods. - FM
+* Fixed typos in some LYCharUtils.c comment. - FM
+* Fixed typo in LYrcFile.c comments concerning the NO_FROM_HEADER
+  symbol. - DK
+1997-12-24
+* resolve conflict between autoconf $INSTALL and lynx's INSTALL_PATH
+  (reported by Scott McGee). - TD
+* modify CF_CHECK_FUNCDECL to work with non-gcc compilers. - TD
+* add <stdio.h> to prototype test for getgrgid getgrnam, needed on SVr3. - TD
+* add install-lss to makefile.in. - TD
+* modify order of includes in LYKeymap.c so that USE_EXTERNALS is defined
+  if it comes from userdefs.h (inferred from a report by Larry Virden). - TD
+* correct spelling of USE_EXTERNALS which prevented --enable-externs from
+  working. - TD
+* move assignment to stderr from VMSexit to cleanup function (reported
+  by Brian Tillman & FM). - TD
+* modify UCChangeTerminalCodepage() to not use stderr, disentangling it
+  from stderr/logfile hack. - TD
+* rename docs/CHANGES2-* files to docs/CHANGES2.* (reported by
+  Doug Kaufman). - TD
+* add start_color() call to DOSPATH version of start_curses() to
+  fix problem reported by Doug Kaufman - TD
+* correct typo in ColorCode() function (reported by Doug Kaufman) - TD
+* modify comments in makefile.in (patch by HN) - TD
+* minor fixes for CF_CHECK_ERRNO, CF_SIZECHANGE, CF_SLANG_CPPFLAGS
+  macros. - TD
+* add configure option --enable-nsl-fork to turn on code defined by
+  NSL_FORK. - TD
+* add configure option --enable-links to turn on code defined by
+  UNDERLINE_LINKS. - TD
+* add configure option --enable-font-switch, to turn on code defined by
+  EXP_CHARTRANS_AUTOSWITCH. - TD
+* modify configure CF_CURSES_LIBS test to look also for ncurses,
+  since some systems do not have a "curses" library (reported by
+  Michael Ritzert). - TD
+1997-12-22
+* Reworked -width=NUMBER command line switch for specifying the screen
+  width for formatting of dumps (default is 80; forced wraps occur at one
+  column less than the screen width, i.e., at 79 by default). - FM
+* Tweak of get_connection() in HTFTP.c to re-initialize the elements of
+  the connection structure when using a previously allocated connection
+  object. -DW, FM
+* Mods of LYexit.c, LYClean.c, LYMain.c and LYMainLoop.c to fflush() all
+  standard file descriptors in conjunction with all fopen() and fclose()
+  operations on the TRACE log and redirections of stderr via equality
+  statements (see 1997-12-16, 1997-12-13 and 1997-07-18 mods). - FM
+1997-12-18
+* forgotten last } UN-inserted (John Line) - WB
+* few commented messages corrected according to RFC2068 (HTTP1.1)
+  (Leonid Pauzner) - WB
+1997-12-17
+* Changed all %i tokens to %d or %ld in functions that always get decimal
+  values in their arguments. - FM
+1997-12-17 (all patches by Leonid Pauzner)
+* open text mode while writing lynx.rc and bookmarks files
+  LYrcFile.c and LYBookmark.c (forgotten last } inserted). - WB
+* add a comment about binary mode in LYMain.c and pile them
+  in one ifdef - WB
+* few misprinted characters (in comments) corrected in
+  \chrtrans\cp850_uni.tbl - WB
+1997-12-16
+* Further mods in LYClean.c (see 1997-12-13 mods) do block the
+  *stderr = LYOrigStderr;  statement in cleanup() for VMS with VAXC. - FM
+* Added an ELGOTO keystroke command, mapped by default to upper case 'E'
+  (lower case 'e' still invokes the editor for the current document, if
+  it is a local file), for passing the URL (or ACTION) of the current
+  link to the line editor for editing as a goto URL.  Works like the
+  ECGOTO ('G') keystroke command for editing the URL of the current
+  document as a goto URL, i.e., if the URL is not modified, is set to
+  a zero-length string, or ^G is entered, the command is cancelled. - FM
+* Mods of LYMainLoop.c to disallow ECGOTO or ELGOTO commands for File
+  Management (DIRED_SUPPORT) menu URLs. - FM
+1997-12-15
+* Added reporting of the Discard value (YES or NO), in the Cookie Jar Page
+  (note that until we have code for storing cookies beyond the current
+  session, Lynx behaves as if Discard were set, whether or not it was set
+  by the server, but we still report the server's instructions, as we do
+  for the Maximum Gobble Date). - FM
+1997-12-14
+* added a lynx.cfg switch to turn on/off extended dos translations for keys.
+  -WB
+* added minor DOS tweaks by Doug Kaufman and myself. - WB
+* fixed windows binary mode piping. - WB
+1997-12-13
+* Tweaks in LYList.c to make the link numbers correspond with those in
+  the current document when LINKS_AND_FORM_FIELDS_ARE_NUMBERED in on,
+  and to show the current document's URL in the display. - FM
+* Mods in HTTP.c to show the body of a 305 return status instead of ever
+  acting on it.  A number of security/privacy problems with this status
+  are being discussed in the HTTP-WG, and it's likely to be dropped or
+  deprecated in the next revision of the HTTP/1.1 specs. - FM
+* Restored the v2.7.1 HTmmdecode() that's specific for iso-2022-jp in
+  HTMIME.c.  We still only call it when HTCJK == JAPANESE, and the
+  generalized version reportedly has problems. - FM
+* Removed the *stderr = LYOrigStderr; statement from VMSexit() in LYCurses.c
+  and added it to the if() claused section which closes the TRACE log file,
+  if opened, in cleanup() of LYClean.c.  This is just a stab in the dark
+  for dealing with reported problems on exit with VAXC on VAXen.  We may
+  need to use freopen() for redirecting TRACE messages to a file for VAXC
+  or VAXen (there's no apparent problem with the current code with DECC
+  on VMS/AXP). - FM
+* Added more function key cases to the keypad() mode switch() in LYgetch()
+  of LYStrings.c.  We don't need them with this code set, but they may as
+  well be there for completeness. - FM
+* check for and use ncurses default-color extension, use to make the
+  color-style configuration usable on xterm with white background. - TD
+* add cases in LYgetch() for remaining VT220-compatible codes, reported
+  by Michael Ritzert and FM.  - TD
+* add configure test to see if slang can be linked without curses or
+  termcap libraries, request by John Davis. - TD
+* set umask in mkdirs.sh script to work around users who have set root's
+  umask to 077. - TD
+* split up install rule to install-bin, install-cfg, install-man and
+  install-help. - TD
+* suppress suffixes in top-level makefile so 'make' won't try to create
+  a file named "install" from install.sh - TD
+* make $(CPPFLAGS) inherit consistently from top-level makefile. - TD
+  (reported by Mark Mentovai)
+* add configure option --enable-externs, to turn on USE_EXTERNS. - TD
+* use explicit comparison for enum values, fix compile problem with VAX C
+  for UCAux functions (reported by Brian Tillman). - TD
+1997-12-03
+* Remove CHANGES.configure, since it is redundant. - TD
+* Make -g3 option check for OSF/1 3.2 consistent with -Olimit check. - TD
+* Use 'result' rather than 'time' in mktime.c to avoid shadowing. - TD
+* Use wborder only if configure finds it, not ifdef FANCY_CURSES. - PHDM
+* List of systems having strerror replaced by configure test. - PHDM
+* Beautifying of mktime.c (`now' was misleading). - PHDM
+1997-12-02
+* Mods in LYCookie.c to prompt whether to accept (or reject) cookies with
+  an invalid domain value which yields a hostname prefix with a dot (as
+  specified in section 4.3.2 of the IETF cookie drafts and RFC), rather
+  than rejecting it silently.  Note that it is rejected in non-interactive
+  (-dump or -source) mode, because the user can't be prompted. - FM
+1997-11-27
+* Added a PREPEND_BASE_TO_SOURCE configuration symbol in lynx.cfg which
+  can be set FALSE to suppress prepending of a Request URL comment and
+  BASE element to text/html sources retrieved for 'd'ownloading or passed
+  to 'p'rint functions.  Note that this prepending is not done for -source
+  dumps unless the -base switch also was included on the command line, and
+  the latter switch overrides the setting of the PREPEND_BASE_TO_SOURCE
+  configuration variable. - FM
+1997-11-25
+* Mods in LYMail.c and LYPrint.c to handle to=address(es), cc=address(es),
+  subject=string, keywords=word_list, and body=message fields in the
+  ?searchpart of mailto URLs as specified in the 1997-11-16 draft:
+    ftp://ftp.isi.edu/internet-drafts/draft-hoffman-mailto-url-03.txt
+  The cc=address(es) values are now handled as a Cc: header, and a self
+  copy, if confirmed on prompt, is added to the Cc: header.  Note that
+  the draft now allows mailto:?to=address(es)[&foo=blah] as a format,
+  i.e., without an address before the ?searchpart.  The Netscape
+  ?searchpart tack-on broke all pre-existing implementations of mailto,
+  and this breaks Lynx's support through v2.7.1.  Though it's now
+  supported in this code set, don't use it.  Complaints and formal
+  requests to provide this functionality via a new scheme (e.g.,
+  mail: or smtp:) without breaking existing implementation of mailto:,
+  including from TimBL (HimSelf :), thus far have fallen on deaf ears.
+  You can send email to those deaf ears via:
+  	mailto:masinter@parc.xerox.com%20(Larry%20Masinter)
+  Don't allow the IETF backward compatibility principle to go down
+  the drain. - FM
+* Mods to support use of the PMDF SEND command on VMS in conjunction with
+  a temporary header file, so that all headers specified in the ?searchpart
+  of mailto URLs can be included in the mailing, and made that the compilation
+  default in userdefs.h to go with the default MAIL_ADRS mask for PMDF (If
+  the "generic" VMS MAIL utility is used, not all of the headers can be
+  specified on the command line, as it requires).  Look at the code in
+  LYMail.c and LYPrint.c that is used when isPMDF is TRUE as a model of how
+  to do this with other header-file-capable VMS mailers (but I don't have
+  any besides PMDF, and can't do it for you :). - FM
+* Tweak of the 1997-11-17 URL parsing mods so that relative symbolic
+  elements immediately preceding a ?searchpart are handled identically
+  to when a ?searchpart is not present. - FM
+* Added support for setting both SYSTEM_MAIL and SYSTEM_MAIL_FLAGS in
+  both userdefs.h and lynx.cfg. - FM
+1997-11-23
+* integrate PHDM's patch. - TD
+* Check for existence of sys/wait.h. - PHDM
+* Do not include sys/stat.h twice. - PHDM
+* New autoconf-macros to check if a function is declared after including a
+  specific set of files. - PHDM
+* Declare strstr if it is not declared by string.h. - PHDM
+* Declare getgrgid and getgrnam if not declared by grp.h. - PHDM
+* Provide strstr and mktime implementations, and use them if needed. - PHDM
+* Always include sys/types.h in HTUtils.h. - PHDM
+* define NO_GROUPS if we do not have getgroups. - PHDM
+* define NEED_REMOVE also if test yields unknown. - PHDM
+* define mode_t if not done by system include files. - PHDM (phdm@macqel.be)
+* change CF_UNION_WAIT to use compile+link rather than compile, to ensure
+  that we pick up the wait-macros rather than an implied function, which
+  should fix configure problems on NeXT for Francisco A. Tomei Torres
+  <fatomei2@mail.unm.edu>. - TD
+* spelling nit from Larry Virden. - TD
+* add osf3.0 to special case compiler options using -g3 in place of
+  -O -g, from Harsh Kumar <harsh@krcl.ernet.in>. - TD
+* remove redundant "-c" option from $(installbin) in makefile.in, reported
+  by Michael Warner <warner@wsu.edu>, for OSF/1 4.0. - TD
+* if configure --srcdir is not used, comment-out rmdir's in "make distclean"
+  rule. - TD
+* modify recent erase/clear change so that it applies only to FANCY_CURSES,
+  since BSD curses does not otherwise clear the screen when restoring after
+  popup. - TD
+* modify change for boxes so this builds with BSD curses, which has no
+  wborder() function. - TD
+* reverse ifdef for NO_SIZECHANGEHACK to USE_SIZECHANGEHACK, which is
+  normally off, since this code did not work with BSD 4.4 curses, SVr4
+  curses, or ncurses 4.1 with xterm. (Will make a configure test if anyone
+  can identify a configuration that works). - TD
+1997-11-21
+* Changed LYE_LINKN to LYE_LKCMD (still mapped by default to Ctrl-V; may
+  need to be entered twice for some systems) for invoking a prompt to
+  enter any Lynx keystroke command when in form text fields. - FM
+1997-11-20
+* Added an LYK_CLEAR_AUTH command, mapped to underscore ('_') by default,
+  which clears all authorization info for the current session.  This is
+  recommended for the situation when one leaves one's terminal but doesn't
+  want to end the browser session, nor want others to be able to retrieve
+  protected documents with previously entered username and password info.
+  Note that we don't yet have a way to block access to any protected
+  documents which are still in cache. - FM
+1997-11-19
+* Tweak of HTTP.c to ensure closing of the connection when interrupted
+  ('z'apped) on the first socket read. - FM
+1997-11-18
+* Mods to use the explicit label "Bad HTML:" in trace messages corresponding
+  to BAD_HTML_USE_TRACE messages. - FM, KW
+* Tweak of the restored TABLE-in-PRE block handling to deal with the
+  case when it's encased in a CENTER or DIV with ALIGN="center". - FM
+* Changed docs/README.defines to refer to INSTALLATION file - HN
+1997-11-17
+* Changed the default ASCII BOXVERT and BOXHORI definitions from '*' to
+  to '|' and '-', and new function LYbox() for non-VMS (n)curses. - FM
+* Use explicitly specified characters for drawing the corners of popup
+  boxes with non-VMS (n)curses if we have also specified characters for
+  vertical and horizontal lines. - KW
+* Mods in HTTP.c to trim any "LYNXIMGMAP:" leader from Referer header
+  values and strip the #fragment when making http(s) requests via links
+  in the pseudo-documents constructed for MAP elements. - FM, KW
+* Mods of SGML parsing to better handle SELECT blocks with invalid markup,
+  in effect for both TagSoup and SortaSGML parsing (for the latter just
+  in case it doesn't already prevent invalid markup from being passed on).
+  Only OPTION elements are accepted in SELECT blocks.
+  Otherwise, if the element is a form-related start tag, the
+  SELECT block is closed and the new form-related element is started.
+  All other elements are ignored.  A FORM end or start tag ends any open
+  SELECT block and the current FORM (before starting another FORM if
+  it is a start tag).  Note that we now support SELECT blocks outside
+  of FORM blocks, which some providers are using for "informational"
+  popups, but no Lynx user would do anything that awful, right? - FM
+* Tweak in LYMainLoop.c to override an LYresubmit_posts flag if we are
+  reloading a popped document due to a NOT_FOUND or NULLFILE return
+  value from getfile(). - FM
+  (But if the document that would be loaded after such a failure has POST
+  data and is not in memory, still jump to the PREV_DOC code, see enttry
+  for 1997-11-03. - KW)
+* Worked in a variant of AJL's suggestion of setting LINES and COLUMNS
+  artificially high before the initscr() call with Unix curses, then
+  using a dummy call to size_change() for setting LYlines and LYcols
+  to the actual screen dimensions, so that increases in the screen size
+  during the Lynx session, and not just decreases, can be handled.
+  Note that one still needs to do a RELOAD (^R) overtly to create a
+  new HText structure based on the current screen size. - FM
+  (The new code can be disabled by defining NO_SIZECHANGEHACK, in case
+  some curses version or terminal cannot deal with it. - KW)
+* Tweaks of the chartrans code. - FM, KW
+* Change in HTNews.c to ignore very long bogus newsgroup names when listing
+  available groups. - KW
+* Tweaks in code for highlighting search text in anchors, to better deal with
+  terminals in UTF-8 mode. - KW
+* Mods to ignore anything past a '?' character when simplifying URL paths,
+  as is now more clearly specified in the Fielding URL draft.  Note that
+  we still assume a ';' is not in fact a parameter delimiter, or won't
+  have a value with characters that could be misinterpreted as relative
+  path specs. - FM
+* Increased the redirection limit to the original Lynx's value of 10,
+  because the HTTP/1.1 draft no longer will restrict it to 5, but instead
+  will leave it to the discretion of the browser (and I like 10, as a
+  reminder of the "good old days" :). - FM
+1997-11-15
+* Mods of parsing in HTML.c to restore support for the TABLE-in-PRE-block
+  HTML kludge described in http://ppewww.ph.gla.ac.uk/~flavell/tablejob.html,
+  which stopped working in conjunction with the 1997-05-21 mods (see below)
+  for treating TABLEs as DIVisions to support ALIGNment attributes in TABLE
+  markup.  The PRE-in-TABLE-block HTML kludge was not affected by those mods
+  but works only with the TagSoup parsing mode. - FM, KW
+1997-11-12
+* Made handling of the 'x' in hexadecimal character references (&#xH;)
+  case insensitive, as for the "alphabetic digits" (a-f, A-F). - FM
+* Added a LINKN command key in the line editor, mapped to Ctrl-V, for
+  invoking the F_LINK_NUM prompt when in form text fields.  Ctrl-V is
+  still a dead key under other circumstances in the line editor. - FM
+* remove options --with-lss-file and --with-cfg-file, since the corresponding
+  files will always be installed under $(libdir), reported by Henry Eric
+  Nelson (HN).  - TD
+* modify configure script and makefile templates to permit builds with the
+  --srcdir option, noted by Philippe De Muyter. - TD
+1997-11-08
+* Added Unicode support for "DosArabic (cp864)", "WinArabic (cp1256)",
+  "DosGreek (cp737)", "DosGreek2 (cp869)", "WinGreek (cp1253)",
+  "DosHebrew (cp862)", and "WinHebrew (cp1255)".  Note that we still
+  have no code for taking DIR attributes, or directionality in general,
+  into account. - FM
+* Mods to handle "cp-#" charset names as synonyms for "cp#", and some
+  cp# names as synonyms for "windows-#". -FM, KW
+1997-11-07
+* Change of LY_SLrefresh() in LYCurses.c as suggested by JED - FM
+* add logic to make install-directories as needed. - TD
+* remove --disable-char-trans option (ifdef's still remain). - TD
+* correct type used in first compile-test for union wait. - TD
+* correct order of deletions in "make distclean" rule. - TD
+* new versions of macros used to check for ncurses version. - TD
+* don't suppress -I/usr/local/include when checking -I/usr/local/include/*,
+  to accommodate older versions of gcc. - TD
+1997-11-06
+* Use erase() instead of clear() in some places, to avoid unnecessary full
+  screen repainting even for UNIX (and similar) curses.  Renamed LY_SLclear
+  to LY_SLerase, but it is used for erase() and clear() now, so there should
+  be no change in behavior for slang introduced by this. - KW
+* Added new format for lines in chartrans .tbl files: U+NNNN "a string" where
+  the string can have C backslash-escaped characters.  This allows to write
+  replacement strings with 8-bit characters that won't be garbled when the
+  .tbl files are transferred in some non-binary way.  Note there is no ':'
+  between the Unicode value and the beginning quote character. - KW
+* Changes to HTMLDTD.c (for SortaSGML parsing) and HTML.c (second line of
+  defense) for dealing with invalid SELECT tags.  Also tolerate SELECT
+  outside of forms. - KW
+* Change in HTLocalName for DOSPATH so that it doesn't depend on whether
+  HTDOS_name returns a pointer to static memory or not. - KW
+* Started new file docs/README.defines.  Renamed CHANGES to CHANGES2-7,
+  removed duplicate 2-7-1 entries.  Minor changes to INSTALLATION, other
+  files.  CHANGES.chartrans is gone. - KW
+* Tweaked color style stuff again.  Statusline may behave better. - KW
+* Don't use memmove for HEAD in HTNews.c. - KW
+* For UNIX, use normal umask permissions, instead of the extra-cautious temp
+  file permissions, for files saved to disk by the default actions for PRINT
+  and DOWNLOAD. - KW
+* Changes (untested) in the code dealing with reading of compressed files in
+  HTFile.c, in parallel to the code for other systems. - KW
+* Mods to avoid va_start redefinition warnings when building with slang. - FM
+1997-11-05
+* Change in LYForms.c to avoid full screen repaint after popup is retracted
+  for slang. - KW, FM
+1997-11-03
+* Internal links code revised.  Some details follow, but first a summary
+  of the basic premises.  Links in a document given as href="#fragment" or
+  href="" (empty, but href attribute is present) mean something different
+  from href="url#fragment" or href="url" (where url is a non-empty absolute
+  or relative URL not including a fragment), they are internal links pointing
+  to an element or a location within the same copy of the document (or to the
+  document itself, for href="").  In contrast, a URL-Reference with a non-
+  empty URL refers to a (generally...) external resource.  If the "url"
+  happens to coincide with (or, if it is relative, resolve to) the URL from
+  which the current document was retrieved, the current document is a
+  representation of the resource, but not the same thing.  In most such cases
+  we can treat href="#fragment" and href="url#fragment" the same way, i.e.
+  activating such a link is interpreted as a request to reposition within
+  the current document; we are using the current document as a cache copy
+  of the resource (like we would other documents in the memory cache).  But
+  if we have marked our copy as no-cache, it seems more consistent to treat
+  activation of a href="url#fragment" link as a request for retrieving a
+  new copy and _then_ locating #fragment in it, as we do for "any-other-url
+  #fragment" if we have cached a document which represents "any-other-url"
+  and which is marked no-cache.  Following a href="" link should just result
+  in repositioning to the start of the document, not in a new retrieval for
+  no-cache documents.
+  If the current document is the result of a POST submission, there is in
+  general no way to refer to its underlying resource with a URL, since there
+  is no URL notation for "url+post_data".  Internal links can be used within
+  the context of this document, but there is no way to hyperlink to it or
+  parts of it from "outside".  A link to a href="url" or href="url#fragment"
+  target should always imply a GET retrieval, whether it occurs within a
+  document from a POST submission or not, for consistency.
+  This understanding also applies to other than <A href=..> uses of URL-
+  References in documents, for example the link implied between a USEMAP
+  attribute and a MAP element; but not to all uses, for example a FORM's
+  ACTION requires an external resource and not an internal reference, so
+  ACTION="" is resolved to an absolute URL (using a base URL if one is
+  given).
+  The semantics for URL-less URL-References are given in Internet Draft
+  <http://www.ics.uci.edu/~fielding/url/draft-fielding-url-syntax-09.txt>,
+  including that "Traversal of such a reference should not result in an
+  additional retrieval action."  No comparable prescriptions are made for
+  references which have a URL, in particular it is not stated that they
+  should be treated as equivalent when the URL coincides with or resolves
+  to the current document's retrieval URL.
+  The changes to the Lynx code attempt to implement what is outlined above,
+  by keeping track of how a link destination was originally specified. href=
+  "#fragment" and href="" links are still "resolved" into a "url#fragment"
+  and "url" form, for use internally, and if an explicit NOCACHE action is
+  requested, and for generating lists of links etc., and in general for use
+  outside of the context of the current document.
+  To the best of my knowledge they do not lead to unwanted (or misdirected)
+  resubmission of POST content without prompting the user for confirmation
+  (although the prompt texts probably need improvement). - KW
+* The notion of the context of the "current document" is extended, so that
+  auxiliary LYNXIMGMAP documents generated by Lynx are within the scope of
+  the underlying document, i.e., the document containing the MAP and AREA
+  elements.  Although they are treated as separate documents for display
+  and internal handling, following links between the underlying document
+  and its LYNXIMGMAP documents will result in display from cached data
+  (if available) even for no-cache documents, if a fragment-only (or empty)
+  URL-Reference was used in the HTML.  This includes the link generated for
+  pointing from the IMG to the LYNXIMGMAP if the USEMAP attribute value was
+  was fragment-only; the LYNXIMGMAP is normally regenerated from the list
+  of MAP and AREA elements kept internally when a link to it is activated.
+  (Note that a LYNXIMGMAP screen is still not reloaded from external sources
+  even when RELOAD or NOCACHE keys are used, if data for the MAP is found
+  in the internal list; but that reloading the underlying document will
+  refresh the internal lists.) - KW
+* List Page screens are also in the context of the underlying document, so
+  that internal links in the underlying document can be listed and activated
+  from the List Page.  When following an internal link from a List Page, it
+  is not pushed on the history stack (similar to the History List Page), to
+  reduce the chance of confusion when walking back through history. - KW
+* LYNXIMGMAP and List Page auxiliary documents can now be associated with
+  POST data.  This does not mean that the data is posted to a "LYNXIMGMAP:"
+  or "file:" URL, which is impossible; but that the underlying document is
+  associated with the POST data.  This way these aux documents can still
+  have links regarded as "internal" pointing to the document of which they
+  are logically a part, keeping track of what POST data are applicable if
+  several form submissions have occurred.  Normally the underlying document
+  should be in the document cache when such a link is activated, so that
+  resubmission of the POST can be overridden.  If it is not found,
+  resubmission may happen after user confirmation.  Although the POST data
+  content is not shown on such aux pages, it can be inspected with the INFO
+  ('=') command.  Note that the association of LYNXIMGMAPs and List Pages
+  with POST data automatically excludes them from various operations which
+  may otherwise be possible, such as bookmarking or inclusion in the
+  'V'isited Links Page.  Note also that such aux pages are treated internally
+  as different documents from their POST-free counterparts with the same
+  address, which might be generated for example after typing the address
+  at a 'g'oto prompt while viewing a different text.  It may be possible to
+  generate confusing situations, but regenerating the displayed data (by
+  invoking 'L'IST again, or by following a LYNXIMGMAP: link) will always
+  show the currently applicable information.
+  For image maps, the change implements link-following capabilities which
+  come naturally to graphical UAs, which can handle IMG USEMAP and the
+  corresponding MAP elements from the same data stream as objects within
+  the same document instance. - KW
+* To implement the above, MAP and AREA information from a POST response is
+  not kept in the global list shared by all other documents, but in a separate
+  list specific to the underlying (containing) document and the POST data.
+  The specific lists are managed with the underlying document's anchor
+  structure so that they can automatically expire after the anchor is removed
+  from memory and will not stay around and accumulate until session end. - KW
+* POST data is kept in mainloop when following an internal link, but is now
+  always dropped for links that were given with a URL.  This removes the
+  limitation by which a link in a POST response to the URL of the POST
+  submission script would be inappropriately converted to a resubmission of
+  the POST data.  (example: search form from <http://www.marshall.edu/htbin/
+  calendar>) - KW
+* Changes to the PREV_DOC handling in mainloop.  When encountering documents
+  that may need to be reloaded while walking back in history, because they
+  have POST data associated and are not marked "safe" and are either not found
+  in the memory cache or -resubmit_posts has been set, the user is prompted
+  for confirmation as before; if the reply is 'n' the document will be skipped
+  but if the user cancels with ^G the walkback operation is cancelled and the
+  currently viewed document remains loaded.  Some of the aux documents which
+  can new be associated with POST data may be automatically skipped if their
+  document structures are not any more in memory. - KW
+* When following a link marked internal from a List Page and confirmation is
+  required, ^G may also have the different effect of cancelling the operation
+  while responding 'n' may attempt to follow the link as a GET request (i.e.
+  with POST data dropped). - KW
+* In some situations, automatic popping from the history stack in mainloop
+  after getfile fails to load a new document could lead to resubmission of
+  a previous POST request without prompting.  This is now avoided by jumping
+  to the code handling PREV_DOC. - KW
+* Use new LYinternal_flag variable for propagating info to HTAccess, rather
+  than overloading LYoverride_no_cache. - KW
+* Tweaks for bad form tag soup with crashes on unclosed SELECT.  Changes in
+  HTML.c and GridText.c to prevent memory leaks resulting from insanely
+  placed or unclosed form field tags, hopefully not introducing other
+  problems... - KW
+1997-11-02
+* Changes in HTParse's scan to leave additional '#' characters alone after
+  the first has been found when scanning (from left) for fragments, and
+  to apply the "don't treat '#' as start of a fragment for some kinds of
+  URLs" hack only when the '#' will become part of what has been scanned
+  as a path.  NNTP articles with more than '#' in the message-id are now
+  accessible with the "news:" or "nntp:" schemes.  We should actually always
+  escape when generating URLs and unescape when parsing them instead. - KW
+* Changed HTUnEscape to leave '%' alone if not followed by two valid hex
+  digits. - KW
+* Allow the HEAD key and -head and -mime_header flags for "lynxcgi:" URLs
+  and for "news:" and "nntp:" URLs that specify a single news article. - KW
+* Change to writing of POST data in LYCgi.c, to close file descriptor after
+  done writing and before reading as suggested by mhw@bcs.org.uk (Mark
+  H. Wilkinson), and to check status from the write() call and retry if
+  needed.  Note that the code is not appropriate for handling large
+  amounts of POST data, since it still first does all the writing and
+  then all the reading. - KW
+1997-11-01
+* Added support for presentation of text/plain files in SOURCE ('\') mode,
+  homologously to text/html files, rather than treating the command as a
+  synonym for 'd'ownload when viewing a text/plain file.  Note that if the
+  text/plain file has no long lines, the display of it will not change,
+  but otherwise, the long lines will not be wrapped in SOURCE mode, and
+  thus can be 'p'rinted without line wrapping.  One still should use
+  'd'ownload for a faithful copy of the file, i.e., without charset
+  conversions and expansions of TABs. - FM
+1997-10-30
+* Get numbering of links on List Page right, by faking hidden links for
+  form fields which get counted but are not selectable. - KW
+* Allow LYNXHIST: links in List Page since the History Page may get
+  'L'isted... - KW
+* Mods of HTML.c parsing to close any open Anchor or emphasis elements
+  at the starts of TABLE elements, as the Big Two's TABLE handlers appear
+  to do now. - FM
+* Tweaks of charset handling via META elements and CHARSET attributes. - FM
+1997-10-29
+* Tweak of SortaSGML DTD for insane HTML with FORM start before HEAD. - KW
+* Prevent memory leaks from HTChunks for option and textarea with very
+  bad markup, added TRACE and BAD_HTML_USE_TRACE warnings for those. - KW
+* Don't call tigetnum("ncv") for _WINDOWS - BD
+* Added Unicode tables for the "DEC Multinational", "Macintosh (8 bit)",
+  and "NeXT character set" display character sets. - FM
+1997-10-28
+* Disable setting of the `reloading' flag in HTLoadDocument which would
+  generate no-cache headers for request where this is not appropriate. - KW
+* Memory leak for first OPTION in SELECT removed. - KW
+* Changed HTDOS_name to not return pointer to static area. - Binh Do
+  <bdo@mailman.epnet.com>
+* Changes to INSTALLATION file. - HN
+* Fix in HTMIME.c to recognize Content-location. - KW
+1997-10-27
+* Don't disable FORMs that have INPUTs with TYPE="file" or TYPE="range"
+  since those fields may be optional and the rest of the FORM may be
+  valid to submit. - FM
+* Updated links to www.w3.org in help files. - KW
+* Some changes for DOS compilation. - DK
+* Changes to INSTALLATION file. - HN
+* Tweaks of internal links stuff. - KW
+* Allow HEAD on URLs starting with LYNXIMGMAP:http by stripping the
+  prefix. - KW
+* Reverted LYCheckForCSI() to previous incarnation. - KW
+1997-10-26
+* If compiled with -DDONT_TRACK_INTERNAL_LINKS, behavior with respect to
+  internal links as in FM's code. - KW
+* Some chartrans tweaks. - KW
+1997-10-25
+* Changes to INSTALLATION file. - HN
+* Make temp file names conform to 8+3 naming convention for DOS, and
+  give LYNX_TEMP_SPACE priority over TEMP and TMP for DOS. - DK
+* Create temp file names with '-' char as separator between pid and
+  sequential number for non-8+3 systems, to prevent (unlikely)
+  collision. - KW
+1997-10-24
+* Change in HTML.c to use the base (rather than current document, if the
+  base differs) in all cases for form ACTIONs (i.e., if the ACTION is
+  empty, or has a lone fragment, or an ACTION attribute is not included)
+  as specified in the -07 to -09 Fielding URL drafts. - FM
+1997-10-23
+* Fixed a few typos and glued together a few URLs to make it easier for
+  folk to cut and paste them, in the new INSTALLATION file. - LV
+1997-10-22
+* Many locations of files changed, about_lynx/ directory and references to
+  aboutfilepath removed, userdefs.h reorganized, changed README, new
+  INSTALLATION file, doc changes, some doc files removed. - HN
+  (Removed paragraph in README which doesn't apply yet, some files still
+  not done - KW)
+* Patch to WWW/Library/djgpp/makefile - WS
+* Added entity names from HTML 4.0 draft to extra entities in HTMLDTD.c - KW
+* Understand lists in ACCEPT-CHARSET attributes.  Added a list of forms
+  to GridText structure (currently underused). - KW
+* Don't try to use box drawing chars in UTF-8 display mode. - KW
+* Changed chartrans mechanism (UCdomap.c, makeuctb.c) so that the "default"
+  translation table is now used as a fallback for other translation tables.
+  This also applies to display character sets which do not have a chartrans
+  table file but are listed in LYCharSets.c.  Changed syntax of table files
+  (see src/chrtrans/README.format), added a keyword to disable using the
+  fallback.  Currently def7_uni (corresponding to "7 bit approximations"
+  and the MIME charset "us-ascii") is used as default table, as before;
+  but previously the default table didn't have any real meaning.
+  Conceptually every translation table (unless it disables fallback) is
+  extended as if it included all the replacements from the default table.
+  Note that mappings for some characters in the default table file still
+  differ from the old mappings given in LYCharSets.c, and what is displayed
+  e.g., for umlaut characters may not be consistent, this still has to be
+  sorted out.  It may just have become more visible now. - KW
+* Tweaks to some replacement strings in def7_uni.tbl; contributions of
+  more useful strings would be welcome... - KW
+* Removed mappings for invalid chars from some chartrans files, removed
+  Ethiopic chars from iso01_uni.tbl. - KW
+* Some other corrections and tweaks for chartrans mechanisms. - KW
+1997-10-21
+* Fixed handling of Control-D (delete character under the cursor) in the
+  line editor when the cursor is at the end of the line instead of on a
+  character in the string being edited. - FM
+* revised tests for wait/waitpid/union-wait. - TD
+* correct/update handling of default prefix in CF_WITH_PATH macro, used for
+  parsing --with-cfg-file and --with-lss-file options.  - TD
+* add uninstall target to top-level makefile. - TD
+* remove redundant install options from $(INSTALL_DATA). - TD
+* add configure --with-lss-file option - TD
+* minor cleanup of gcc warnings, ifdefs. - TD
+1997-10-20
+* Mods in the CSO/PH gateway to set the anchor's safe flag to TRUE so the
+  user need not be bothered with confirmation prompts on resubmissions of
+  the search form. - FM
+* Tweaked the break point setting code in GridText.c for CJK di-bytes
+  so that one is set after a recognized "ESC(" ISO 2022 escape sequence
+  has been found. - FM
+1997-10-16
+* Tweaks to recognition of Japanese (better recognize x-euc-*), and to
+  the mechanism in GridText.c keeping track of which encoding is used for
+  Japanese.  The state for this is now reset on explicit '\n' and '\r'
+  received by the HText object in addition to space chars. - KW
+* Tweaks in HTTP.c to avoid access to uninitialized memory and pacify
+  paranoid dbx. - KW
+* Try to more consistently remember the charset in effect for a document
+  when going to SOURCE view, using new LYUC{Push,Pop}Assumed functions.
+  Note that this is only in effect immediately when switching to SOURCE
+  view; any later reloading while within SOURCE view (including those
+  caused by RELOAD, RAW_TOGGLE and other keys, or by Options Screen changes)
+  may still revert to the usual assumption about charset, which means a
+  charset specified in a META tag may be forgotten at that point; this may
+  be considered a feature... - KW
+* Refer to TagSoup and SortaSGML parsing (coined by FM), rather than "old"
+  and "new" DTD. - KW
+* Made some of the changes concerning and removal and location changes of
+  files proposed by HN. - KW
+* Restored LYCheckForCSI example function to its previous form, with a check
+  added and comments added. - KW
+1997-10-15
+* Changed the order of display character set entries for the options menu
+  popup.  "ISO Latin 1" and its "DosLatin1 (cp850)" and "WinLatin1 (cp1252)"
+  equivalents come first, then the system-based charsets (note that I
+  changed "IBM PC character set" to "DosLatinUS (cp437)"), then the CJK
+  and Vietnamese charsets, then "Other ISO Latin" (probably don't need
+  that one any more), then the known ISO 8859-# charsets with their
+  homologs (e.g, Dos and Win Cyrillic and KOI8-R) in groups, then
+  "UNICODE UTF 8" and the Unicode mnemonic charsets. - FM
+* Various fixes for color style code, should prevent memory corruption. - KW
+* Some LYCharUtils.c cleanup. - KW
+* Added some of the changes from fotemods to SGML.c, especially handling of
+  &zwnj; as allowing a line break, and conversion to UNICODE UTF-8. - KW
+* Mods in code handling mailcap lines, to avoid access to invalid memory. - KW
+1997-10-12
+* Added LYLeakSACopy and LYLeakSACat to LYLeaks.c.  Running Lynx compiled
+  with LY_FIND_LEAKS defined will now give the source locations where
+  StrAllocCopy and StrAllocCat are used, if those create leaks.  Added
+  missing include of LYLeaks.h in LYCookie.c. - KW
+* More heavy tweaks in LYCharUtils.c.  Associated changes in HTChunk.c
+  (new functions), small change for -raw (in connection with attribute
+  values) in SGML_character.  LYCharUtils.c is still a work in
+  progress... - KW
+* Tweaks to allow some chars as data input (0x97, 0x9b, 0xa0) if the
+  current display character set seems to have those values as printable
+  characters (by testing LYlowest_eightbit[]). - KW
+1997-10-11
+* Mods in HTFTP.c to recognize NetPresenz server (variation of AppleShare
+  claiming to be Peter Lewis server?, try current ftp://www.unicode.org/),
+  and to show server's identification from initial greeting on info
+  screen for FTP URLs.  Other cosmetic changes in HTFTP.c. - KW
+* Fixed various memory leaks. - KW
+* Some more minor cleanup tweaks for color style code. - KW
+* Avoid unnecessary pauses if TRACE is on and a Trace Log file is in use. - KW
+1997-10-10
+* Renamed lynx_help/keystroke_commands/ directory to lynx_help/keystrokes/
+  for the benefit of DOS, and changed references accordingly. - KW
+* Changed parsing of command line options for -lss file, it should now
+  be used and override the default from userdefs.h or environment variables
+  as advertised. - KW
+* More tweaks and cleanup in HText_SubmitForm. - KW
+* Code to recover from memory exhaustion, sometimes.  The requests for
+  dynamic memory which heuristically most often fail for lack of memory
+  when rendering large documents are the calloc() calls in split_line.
+  They are replaced by LY_check_calloc() which has the same calling
+  conventions as calloc() but additionally checks if "enough" memory is
+  available for the requested amount plus some margin and tries some
+  remedial action if this is not the case.  The additional safety margins
+  are required to make it likely that other allocation requests in other
+  places of the program won't fail before the next check.  The actions
+  which may be taken in order to avoid exiting if low memory is detected:
+  (1) Try to unload cached documents (other than the one currently being
+  loaded), until we seem to have enough memory.  (2) If that fails (or
+  there are no other documents cached in memory), try to fake a 'Z' key
+  interruption; this will have the same effect as if the user had pressed
+  'Z' so it will only detected if some other part of the program tests
+  HTCheckForInterrupt() and acts on it.  (3) If this seems not to be
+  sufficient to stop loading, halt appending of normal text data to the
+  document structure (A warning *** MEMORY EXHAUSTED *** is appended
+  instead). - KW
+* A tweak of color style memory allocation. - KW
+1997-10-09
+* Some more tweaks from FM for VMS build - KW
+* For DJGPP compilation, src/chrtrans/makefile.dos - WS (Bill Schiavo
+  <Wschiavo@concentric.net>)
+* Some cleanup in Hext_SubmitForm (needs more). Start using ACCEPT-CHARSET
+  (doesn't recognize list yet, only recognized if on the INPUT field that
+  causes submission). - KW
+* Added two test files for iso-8859-2 charset. - KW
+* Tweaks in LYMainLoop.c for various keys that page up, to better preserve
+  keep the current link selected if possible and to correct a glitch with
+  UP_LINK. - KW
+* Reorder text/html and text/plain to the beginning of HTPresentations list,
+  so they will be found more quickly and will appear at the beginning of
+  Accept request header fields. - KW
+1997-10-08
+* add logic to implement mouse button 2 "previous document" for
+  ncurses configuration. - TD
+* add dependencies on 'lynx' to top-level 'all' and 'install' rules
+  in makefile.in - TD
+* add osf4.0 to special case compiler options using -g3 in place of
+  -O -g, for Heikki Kantola <hezu@iki.fi>. - TD
+* correct some of the uninitialized-variable warnings. - TD
+* Removed the compilation of the old libwww-FM HTAlert.c module for VMS,
+  as previously removed for Unix. - FM
+* Added comments and tweaks of build.com, build-slang.com and libmake.com,
+  (and a complementary tweak of tcp.h) to make more clear how compiler
+  definitions and compiler and linker options can be added. - FM
+1997-10-07
+* Changed PROBLEMS file for ^Z and for "forgetting emphasis of link text"
+  problem (which shouldn't occur any more). - KW
+1997-10-05
+* Changed SGML.c parsing of unrecognized and invalid start tags.  If the
+  '<' character in HTML is followed by a 7-bit letter character, we now
+  do tag parsing even if the element name is not recognized, instead of
+  going to 'S_junk_tag' mode, so that a '>' embedded in an attribute value
+  (which may also be part of a CJK character's encoding) will not
+  prematurely end the tag.  (But "soft double-quotes parsing" mode is
+  recognized.)  Treat a '<' followed by most other 7-bit chars as data,
+  i.e., recover it and the following char. - KW
+1997-10-04
+* Corrected check for empty string at beginning of LYUnEscapeEntities. - KW
+* Squeezed option for "Assume charset if unknown:" into Options screen.
+  It is selected with a control char (^A), is only available in Advanced User
+  mode, and the value is currently not saved into .lynxrc with '>', i.e.
+  for a persistent change lynx.cfg has to be modified (or use an alias or,
+  for DOS, a batch file to call lynx with -assume_charset=...).  The
+  interaction with the Raw M(O)de setting may be confusing (or confused :) ),
+  and it is possible to set nonsensical values that have no effect. - KW
+* Changed order and criteria of transformation attempts in HTPlain.c to
+  be more like SGML.c.  For plain text KOI8-R would use 8-bit stripping
+  to early.  HTPlain_write still is too different from SGML_character... - KW
+* Reinstate the slash after special interpretation of /~ at beginning of
+  file URL path for DOSPATH - DK
+* Changed SGML_character to not try to convert attribute values to UTF-8
+  if HTCJK is in effect (arrggh!) - KW
+* Changed effect of -raw / '@' for CJK display character sets: it now toggles
+  the effective charset assumption between that specified with ASSUME_CHARSET
+  or -assume_charset (or iso-8859-1 if none given) and the charset that
+  corresponds to the selected display character set, as for non-CJK.  An
+  exception is made if both charsets are CJK charsets, so that the toggle
+  will still have the function of toggling CJK mode on and off.  Explicitly
+  specifying a CJK charset as assumed is currently not very useful, since we
+  cannot translate from that to other character sets. - KW
+* Oh, by the way: compilation without defining EXP_CHARTRANS won't work any
+  more.  Regard #ifdef EXP_CHARTRANS as some strange kind of comment for
+  now, until it goes away. - KW
+* Write comment at top of .lynxrc file to make clear that it is different
+  from lynx.cfg, suggested by LV. - KW
+1997-09-30
+* Changed order of display character sets on options screen a bit, and
+  corrected charset listings in lynx.cfg and userdefs.h files - KW
+* Added comment on lynx.lss in userdefs.h, moved it. - KW
+1997-09-27
+* Made TRACE messages which correspond to BAD_HTML_USE_TRACE warnings stand
+  out more by decorating them with ***** characters, so that users who
+  follow the BAD_HTML_USE_TRACE advice can more easily find the relevant
+  messages. - KW
+* Reworked LYUnEscapeEntities() while loop into a (hopefully) more
+  understandable and consistent state-based switch, and integrated
+  LYUnEscapeToLatinOne functionality. - KW
+* Non-ASCII characters in URLs and similar strings encountered in the HTML.c
+  processing (previously handled by LYUnEscapeToLatinOne) are now generally
+  URL-encoded, instead of doing this just for 8-bit characters which are
+  the result of entity expansion.  There is no clear standard definition what
+  non-ASCII characters in URLs in HTML attributes (HREF etc.) actually mean,
+  especially if the transmission character encoding is something else than
+  iso-8859-1.  Leaving them as the raw byte values as received runs against
+  the HTML i18n view that the transmission encoding is distinct from the
+  document character set and has to be (conceptually at least) decoded before
+  SGML parsing.  It also won't work in general for entities that expand to
+  to Unicode characters which cannot be expressed at all in the currently
+  effective (or assumed) charset, and would lead to problems with displaying
+  URLs on the statusline or representing them in auxiliary screens or bookmark
+  files.  So now we try to first transform to the document charset "as usual"
+  (undo the transmission encoding), then translate the Unicode value into a
+  sequence of (one or more) byte values which are then URL-encoded.  Since
+  character values > 255 cannot be expressed in a byte, always use UTF-8
+  for them.  It may not be what the author intended, but should be at least
+  consistent between internal (fragment) HREFs and NAME (or ID) attributes
+  in the same document or set of documents.  Since this is dealing with
+  bytes currently disallowed in URLs, it falls under error recovery.  But
+  the handling should be roughly in line with current Internet Drafts
+  (draft-masinter-url-i18n-00.txt, draft-duerst-query-i18n-00.txt,
+  draft-ietf-ftpext-intl-ftp-02.txt).
+  For character values < 256 (but > 127) this isn't currently consistently
+  done, we may still be URL-escaping the byte value without UTF-8 encoding -KW
+1997-09-25
+* Integrated the attribute and form field translation stuff from separate
+  code line.  This is still a rough attempt.  Needs testing and refinement,
+  for various character set situations, expect glitches and bugs. - KW
+1997-09-24
+* Removed the compilations of the old libwww-FM HTInit.c and HTFWriter.c
+  modules for VMS, as previously removed for Unix. - FM
+* Added other changes from FM's feedback for VMS. - KW
+* Fixed a bug in the SGML unescaping of OPTION values. - FM
+* Fixed a bug in the SGML unescaping of TEXTAREA text. - KW
+1997-09-23
+* Fixed file 'E'dit command from dired directory listing, which I had
+  broken in 2.7.1ac-0.69. - KW
+* Added -width=NUMBER option to specify line width for non-interactive
+  formatting (-dump output).  Also used by -preparsed source mode. - KW
+* Changed suffix mapping mechanism to deal with "real" content-encoding
+  parameters (gzip, compress) in addition to 7bit, 8bit, and binary.  Added
+  a new field for brief descriptive text, so that the MIME type doesn't have
+  to be abused for this purpose, but left most settings in HTInit.c unchanged
+  for now. - KW
+* Changes in HTFWriter.c and HTFile.c so that we don't forget the file type
+  and encoding information we already have for a compressed file when passing
+  control to HTLoadFile (possibly after uncompression). - KW
+* Introduced FNAMES_8_3 symbol (for DOS 8+3 file system), and HTML_SUFFIX
+  which should be defined as ".htm" for DOS and ".html" otherwise.  Various
+  tweaks to deal with systems with 8+3 restricted filenames, in general and
+  in connection with uncompression. - KW
+* Applied diffs from FM for VMS, compared with recent fotemods. - KW
+1997-09-21
+* Use 0.01 rather than 0.001 as the q value for inserted iso-8859-1 and
+  us-ascii charset parameters in Accept-Charset headers. - FM
+* Added internal buffering of I.value elements in HTML_start_element()
+  of HTML.c. - FM
+1997-09-20
+* Show HTTP header for all 2xx status codes (including 204-206) if requested
+  with HEAD or -head. - KW
+1997-09-19
+* Modified the Unix "strange character" filter in exec_ok() of LYGetFile.c
+  to allow '+', '&' and '=' characters. - FM
+* minor ifdef/declaration fixes required to build on IRIX 6.2,
+  SunOS (K&R) and VAX C. - TD
+1997-09-18
+* Try again after interrupted waitpid() in LYLoadCGI(), as in LYExecv() - KW
+* Tweak in LYKeymap.c to bypass the isalpha() test for non-ASCII values,
+  including values > 255 mapped to arrow keys, etc., when generating the
+  'k'eymap display. - KW
+* Changes to prevent many (but not all) compiler warnings about `const'.
+  Not that this is different from TD's recent changes.  Also some other minor
+  tweaks relating to (gcc) compiler warnings. - KW
+1997-09-17
+* Mods in GridText.c to use HTEscapeSP() for space-to-plus conversions of
+  name fields, and not just value fields, in submitted form content.  Note
+  that some CGI scripts may still be doing plus-to-space restorations only
+  for value fields, and only hex unescaping for name fields, while others
+  may not be hex unescaping the name fields, so we may as well follow the
+  specs fully (and cross our fingers :). - KW, FM
+* merge symbols 'has_color' and 'lynx_has_color' to simplify ifdef's,
+  and correct a problem building color-style configuration. - TD
+* add configure symbol for ifdef'ing presence of waitpid, which
+  was stopping build on HP-UX. - TD
+* correct the symbol that is defined by CF_SIZECHANGE test, noted
+  by failure to build SCO version after making an include for
+  <sys/ioctl.h> ifdef'd according to configure test. - TD
+* corrected check for broken (pre-1.9.9g) ncurses versions so that
+  they can build with color support. - TD
+* cache state of CF_NETLIBS so that rerunning configure will yield
+  the same results for network libraries. - TD
+* Add configure test for HP-UX -lHcurses library. - TD
+* Minor adjustments to names of configure-script variables, to make
+  them the same as other programs (e.g., tin-unoff). - TD
+1997-09-16
+* Added code to JKT's and KW's mods in LYPrint.c to also handle VMS, i.e.,
+  set the document's title as a logical on VMS (can be accessed via
+  f$trnlnm("LYNX_PRINT_TITLE") in scripts). - FM
+* Smaller cleanups here and there - FM, KW
+1997-09-15
+* Recover from bad sequence "<=" in SGML.c by outputting those characters
+  literally. - KW
+* Try again after interrupted waitpid() in LYExecv(). - JED
+* Some tweaks in new DTD, some doc typo corrections. - KW
+1997-09-13
+* Changes in LYConvertToURL() for better handling of the case when the
+  pathname of the current directory (when Lynx is invoked) contains
+  unusual, URL-reserved characters (especially '#') and we test for
+  a relative but URL-encoded path. (no change for VMS) - KW
+1997-09-13
+* Changes in LYStrings.c to enable keypad() processing for non-NCURSES
+  if HAVE_KEYPAD is defined. - KW
+1997-09-12
+* Correct mismatch/omission of HAVE_TYPE_UNIONWAIT symbol from
+  change for wait vs waitpid. - TD
+1997-09-11
+* Tweaks in HTMLGen.c for display of special characters and line breaking
+  with -preparsed. - KW
+* Got rid of use of underlining together with reverse for non-current
+  links for (n)curses if color is not used. - KW
+* Small HTMLDTD.c changes for new parsing. - KW
+* Change in SGML.c to always recognize SOFT HYPHEN when given as &#173. - KW
+1997-09-10
+* Modify CF_WITH_PATH to allow substitution of --libdir and other
+  configure options pathnames, e.g., for --with-cfg-file. - TD
+* Include lynx_cfg.h in userdefs.h to resolve redefinition reported by
+  AAC. - TD
+* Remove Ultrix/sony_news -specific ifdef's for curses headers,
+  replace with configure-tests. - TD
+* Remove AIX/NeXT/sony_news -specific ifdef's for wait vs waitpid,
+  replace with configure-tests. - TD
+* Add/use CF_HELP_MESSAGE macro to visually break down the very long
+  help message into sections. - TD
+* Move the development options to the beginning of the configure script,
+  to facilitate adjustment of compiler options (especially for Ultrix)
+  to reduce the number of spurious warnings from miscombining -g/-O
+  options. - TD
+* Correct misplaced assignment to cf_cv_ncurses_header in configure.in,
+  which caused misconfigure against vendor curses, reported by Hynek Med
+  (Ultrix) and Roger Hill (HP-UX 10.x). - TD
+1997-09-09
+* Added arguments to the multinet_htons() and multinet_ntohs() declarations
+  in tcp.h. - FM
+* Tweak of the this_MIMEcharset[] and this_LYNXcharset[] checks in
+  makeuctb.c. - FM
+* Replaced the index() and bcopy() with strchr() and memcpy() in the
+  putenv() for NeXT in LYUtils.c. - FM
+1997-09-08
+* Added a -preparsed flag, to be used with -source or with SOURCE view.
+  When invoked with this flag, show HTML text as it is output from the SGML
+  parsing stage, regenerated via HTMLGen.c functions, rather than the usual
+  more raw rendering (in SOURCE view) or the original byte stream (as with
+  the -source flag, possibly with BASE information prepended).  Lynx will
+  attempt to wrap the text to screen width (or 80 cols for the -source flag),
+  but will not always succeed.  Unrecognized tags and attributes as well as
+  comments are dropped, attributes reordered, missing end tags supplied,
+  abd other changes made, showing how Lynx internally treats the document's
+  structure.  This is probably most useful for debugging (of either Lynx's
+  parsing or of HTML documents, although a real validator should be used for
+  the latter!).  It can also be instructive to switch the DTD parsing mode
+  (with the ^V key) while viewing preparsed source.
+  Note that this doesn't work so well now with character translations and
+  entity expansion don't work well now, showing some of the same problems
+  which appear for rendered documents and dropping some characters.  Making
+  those problems of parsing more directly visible was one of the motivations
+  for this flag.  Also note that META tags which may contain charset info
+  are never interpreted when using -source (with or without the -preparsed
+  flag), but when interactively switching to SOURCE view, Lynx MAY remember
+  that charset info from the previous non-SOURCE full parsing (again this
+  applies with or without -preparsed); the INFO screen should always show
+  the assumption currently in effect. - KW
+* Updated some HTMLGenerator functions to use line wrapping logic found in
+  newer libwww versions, and further mods in HTMLGen.c. - KW
+* Tweaks to use of chartrans stages, should now better preserve charset
+  info from META tags even in compressed HTML files. - KW
+* Fixed a problem with LYCheckForCSI which could lead to crashes. - KW
+1997-09-06
+* Modifications to allow the Lynx lynxcgi feature to process
+  PATH_INFO in addition to QUERY_STRINGS in URLs.  DOCUMENT_ROOT
+  may be set by the user in lynx.cfg and is then passed as well.
+  If DOCUMENT_ROOT is set, then PATH_TRANSLATED is calculated and
+  passed as well. - JKT (J Kevin Ternes <jkternes@mindspring.com>)
+* Changes to LYPrint.c to put the variable LYNX_PRINT_TITLE
+  into the system()'ed environment for use by post-Lynx, pre-lp
+  formatting scripts.  LYNX_PRINT_TITLE is simply generated by
+  calling HText_GetTitle(). - JKT
+* Corrections to JKT's mods (to avoid memory leaks etc.).  Avoid
+  unnecessary stat() calls.  Other fixes in LYCgi.c.  Make
+  setting of HTTP_ACCEPT_CHARSET actually work.  Now URL-unescape
+  the path in lynxcgi URLs before doing anything with it.
+  Better logic for when to check for restrictions, the previous checking
+  for !reloading could be easily circumvented.  Also check whether
+  the full path including a possible PATH_INFO passes the restrictions
+  test by exec_ok(), to catch "../" segments.  Don't try to handle
+  a non-executable lynxcgi URL as a file URL if there was a PATH_INFO
+  part, it gets too confusing.  Strip '#' fragments from the lynxcgi
+  path, but leave the interpretation of '#' characters after a '?' as
+  before so that they are still regarded as part of the query or search
+  string.  If PATHINFO is present, unescaped '#' characters in it will
+  still be rejected by exec_ok(). - KW
+* added a bit of text about running ./configure to INSTALLATION
+  file - David Combs (<dkcombs@netcom.com>), KW
+* Added a translation table for Vietnamese (VISCII), and associated code
+  changes.  See the file viscii_uni.tbl. - KW
+1997-09-05
+* Mods in LYGetFile.c to retain a fragment on redirection if the redirection
+  URL does not include a fragment. - FM
+1997-09-04
+* Correct ifdef'ing for getbkgd function calls. - TD
+* Correct ifdef'ing for remaining inline chmod calls. - TD
+* Consolidate various logic for opening secure files into utility
+  functions, correcting portability problems as well.  - TD
+* Add configure option --with-cfg-file to override default location of
+  Lynx configuration file (requested by Laura Eaves).  - TD
+* Strip -g option from CFLAGS for the non-debug version of Ultrix
+  configuration (requested by Hynek Med).  - TD
+* Add configure test for HP "color" curses (noting that this cannot
+  possibly comply with XPG4 due to naming conventions, we'll expect
+  other problems with it). - TD
+* Add checks to configure test for COLOR_CURSES to work around bug
+  report for HP-UX.  - TD
+* Don't cache configure options except where essential (e.g., the
+  setting of 'screen').  - TD
+* Change some configure options to disable/enable for consistency.  - TD
+1997-09-03
+* Tweaks in HTML_put_string() and LYUnEscapeEntities() to deal with line-
+  breaks within attributes more consistently, and more independently of
+  which convention is used (CRLF, CR, or LF). - KW
+* Tweaks to prevent a few compiler warnings. - KW
+* Tweaks of the iso06_uni.tbl and iso08_uni.tbl files now compiled in.
+  Note that a replacement character or string to replace invalid or
+  unrecognized characters can be defined by mapping the Unicode value
+  U+FFFD, which is done here (for testing, and because these two charsets
+  have a lot of undefined code points).  Also some mods in default 7-bit
+  table for some Hebrew characters and points. - KW
+1997-09-02
+* Mods to include "ISO 8859-6 Arabic" and "ISO 8859-8 Hebrew" in the display
+  character set options (Note, though, that Lynx presently has no code to
+  deal overtly with non-Latin directionalities.). - DK, FM
+1997-08-31
+* Mod of HTMIME.c to ignore any Content-Encoding header with a value of
+  "identity" (case insensitive).  Shouldn't happen, but better safe than
+  sorry. - FM
+1997-08-28
+* Correct a quoting error in CF_RECHECK_FUNC macro. - TD
+1997-08-27
+* Further refine/correct configure macros for finding network and curses
+  libraries, adding CF_RECHECK_FUNC to simplify CF_NETLIBS. - TD
+* Rename #define for NCURSESHEADER to HAVE_NCURSES_H, for consistency. - TD
+* Add-back test for -lm to support slang shared libraries. - TD
+* Modify test for disentangling ncurses library from mytinfo on FreeBSD
+  to workaround linker limitation. - AAC
+1997-08-22
+* Fixed typo in LYReadCFG.c when checking for a NOVICE mode default. - JN
+  (Note that this and other lynx.cfg defaults which have 'o'ptions settings
+  are overridden when the 'o'ptions are saved to the RC file. - FM)
+1997-08-21
+* Tweak to LYHistory.c to better remember last position on page. - KW
+* Eliminated two more MIME types (application/html and text/x-sgml) from
+  the Accept header generated by default by setting the q-value to 2.0,
+  since there are more standard alternatives for these names. - KW
+* Lower maximum length for generated Accept header lines from 1000 to 252,
+  to accommodate an incompetent Windows HTTP server. - KW
+* Changed order of some functions in LYCharUtils.c (no other change there
+  yet). - KW
+1997-08-20
+* Modify top-level install rule to depend on 'all'. - TD
+* Suppress check for ANSI compiler when we are using gcc. - TD
+* Use -g3 option in place of -O -g for Ultrix compiler --debug configuration
+  (request by Hynek Med). - TD
+* Drop "-lm" library from slang configuration, since it does not seem to
+  be used. - TD
+* Add configure --includedir and --oldincludedir values to header search
+  path for ncurses and slang. - TD
+* Modify configure checks for ncurses and slang libraries to generate
+  -L options as required, using new macros CF_FIND_LIBRARY and
+  CF_LIBRARY_PATH. - TD
+* Add substitution for CPP in src/makefile.in so that .c.i rule works. - TD
+* Add configure test for lint program. - TD
+* Add "make depend" target to generated makefiles.  This is intended only
+  for use in editing/developing, since many of the header dependencies in
+  chrtrans are generated during the build process and cannot be determined
+  by makedepend in advance. - TD
+* Add configure option --with-zlib. - TD
+1997-08-19
+* Tweak of highlight() in LYUtils.c to ensure that split link names with a
+  soft hyphen are handled identically for slang, VMS curses and Unix curses
+  when such links are made current. - FM
+1997-08-17
+* Use 0.01 rather than 0.001 as the q value for the global wildcard in
+  Accept headers. - FM
+* Put up correct makefile for dos port (oops) - WB
+1997-08-16
+* Mini tweaks for the win-dos ports.  One fix for the pull down boxes
+  and the rest mostly maintenance. - WB
+* Fixed a bug in LYNews.c which caused overwriting of the first three
+  characters in the Subject for a followup. - FM
+1997-08-15
+* Hack in highlight() to preserve a '-' character at the end of line
+  within anchor text, which can result from splitting at the position
+  of a &shy; or <SHY> or SOFT HYPHEN character. - KW
+* Tweaks in print_wwwfile_to_fd print_crawl_to_fd to output a soft hyphen
+  character if it is present at the end of a line.  For -dump, a raw
+  ISO 8859 SOFT HYPHEN character may be written if the Display Character
+  Set (default from lynx.cfg or saved value in .lynxrc) is an ISO 8859
+  character set, but this may be overridden with the -raw toggle.
+  Otherwise represent soft hyphen with '-' as usual. - KW
+* Modified the news gateway to try XGTITLE for wildcarded lists of
+  available newsgroups (e.g., news:bionet.* for the bionet hierarchy,
+  or news:* for all of its served newsgroups).  If that fails, Lynx
+  retries with the old behavior of using LIST NEWSGROUPS and parsing
+  the reply itself for the desired groups.  Note that LIST NEWSGROUPS
+  can take a wildcarded argument for some nntp servers, but not all,
+  so we don't risk it. - FM
+* Fixed a bug in HTHandleAuthInfo() of yesterday's HTNews.c which could
+  yield an infinite while() loop. - FM
+* Various tweaks in HTNews.c to HTHandleAuthInfo() and elsewhere, to
+  keep connections open more often in some common cases of non-fatal
+  errors, and also avoid trying to use the network socket after some
+  recognized case of closing by the server.  Only based on some testing
+  with INN's nnrpd, not on any written specs. - KW
+1997-08-14
+* Added nntp authorization (AUTHINFO) handling to the news gateway. - FM
+* Added a "Loading cfg file '%s'." trace message in LYMain.c to indicate
+  the absolute path of the configuration (lynx.cfg) file which was used
+  at startup (if Lynx is invoked with the -trace command line switch). - FM
+* Added code in HTFWriter.c to avoid calling HTLoadFile() on the temporary
+  file which results from decompression of a temporary file created by
+  HTCompressed(), if this would just result in making a copy of the file
+  and then invoking an external viewer.  Instead the viewer command is
+  now invoked directly from the HTFWriter_free of the HTCompressed()
+  stream after decompression. - KW
+* Added code in HTFWriter.c, HTFile.c, and HTFormat.c to support reading
+  of gzipped local files directly, using functions from the zlib library.
+  Note that gzipped files from remote servers are still first copied to
+  a temporary file before lynx can process them further, and an external
+  GZIP_PATH command is still needed at least for passing such files to an
+  external viewer, as well as for various DIRED_SUPPORT File menu functions.
+  To activate this code, the symbol USE_ZLIB has to be defined, it is
+  currently not set by the auto-config script.  The zlib library may be
+  already installed on your system (probably called libz.a or libz.so.1
+  or similar, the required header files are zlib.h and zconf.h), otherwise
+  it is available through <http://www.cdrom.com/pub/infozip/zlib/>, it
+  appears to support all platforms for which lynx is available (including
+  VMS, DOS, MS Win32).  Note that this library would probably also be
+  needed if in the future support for the HTTP/1.1 "deflate" content-coding
+  is added. - KW
+* Don't send MIME types in Accept headers whose q values are outside of the
+  allowed range 0.0 <= q <= 1.0 - KW
+* Tweaks in HTInit.c to use the official names for image/png and image/tiff,
+  but still support the image/x-* forms. - KW
+1997-08-13
+* Tweaks of LYConvertToURL() in LYUtils.c and HTParseInet() in HTTCP.c
+  to deal more coherently with 'z'ap attempts during gethostbyname()
+  calls. - FM
+* Tweaks of split_line() and HText_endAppend() in GridText.c to handle
+  trimming of spaces from the tails of link names more effectively. - FM
+* Expanded the OL nesting depth and type counters to track up to 12 list
+  depths before punting to the lowest negative number.  Note that the
+  indentations still are limited to 6 nested depths, so use the TYPE
+  attribute to distinguish OLs with deeper nestings. - FM
+1997-08-12
+* Mods of LYMainLoop.c to maintain treatment of a local startfile as
+  text/html source when it does not have a suffix mapped to that MIME
+  type and the -force_html switch was used. - FM
+* Added .phtml to the default suffix mappings for text/html. - FM
+* Mods of LYCurses.c to avoid using /dev/tty arbitrarily for stdin on
+  Unix when compiling with slang versions greater than 0.99-35, based
+  on JED's suggestion to lynx-dev. - FM
+* Tweaks of HTCheckFnameForCompression() in GridText.c to avoid warnings
+  from some compilers. - FM
+1997-08-09
+* Changed the code of 1997-08-06 which modifies suggested filenames for a
+  'D'ownload to be more cautious: don't remove a '.gz', '.Z' etc. suffix
+  if there is no header indication that we have a compressed file.  Not
+  all servers and gateways (including the internal FTP gateway) detect
+  and label compressed content reliably. - KW
+1997-08-08
+* Mods of HTTP.c so that download requests are converted to presentation
+  requests for interactive users, and traversal requests are converted to
+  cancels, when servers return non-success statuses with bodies which
+  should be displayed to interactive users. - FM
+* Added the "DosCyrillic (cp866)" display character set to the chartrans
+  support, and tweaked the other Cyrillic charset tables. - AAC, KW
+* Tweaked MULTI_SUFFIX support in HTFile.c, so that it now somewhat
+  works.  Dunno whether it's useful for anybody. - KW
+1997-08-07
+* Tweaks of yesterdays mods in GridText.c. - FM
+* Correct storage class of variables in UCMap.h, from -warn-common linker
+  option. - TD
+* Refine configure tests for acs_map, ttytype to accommodate broken linker
+  on FreeBSD 2.1.5 - TD
+* Modify README.configure to indicate the associated definitions for
+  each configure option, as suggested by Klaus Weide. - TD
+* Correct duplicate declaration of Current_Attr, which Linux linker ignores
+  (reported by Hynek Med). - TD
+* Add -G7 option to Ultrix compiler options (request by Hynek Med
+  <xmedh02@lada.vse.cz>). - TD
+* Add include for <sys/types.h> to utmp configure test (reported by Andrey
+  A. Chernov). - TD
+* Add check for FreeBSD library mytinfo (reported by Andrey A. Chernov
+  <ache@null.net>). - TD
+* Modify ./makefile.in so that 'all', the default target, will build the
+  Lynx executable.  The old 'all' target is retained as "make help". - TD
+* Modify src/makefile.in to allow development compiles within the src
+  directory. - TD
+* Mask spaces in the bkgd (background attribute) calls for color curses to
+  make the color-style code work better with SVr4 curses. - TD
+* Change workaround for 8-bit acs characters by adding to the initialization
+  a loop forcing the entries of acs_map[] to 8-bits. - TD
+* Many minor tweaks for the DJGPP version by DK - WB
+* A rename of about_lynx_dev.html to lynx_dev.html for 8.3 systems - WB
+1997-08-06
+* Modified HTMIME.c and LYCharUtils.c so that setting of suggested filenames
+  via a filename=value pair in Content-Disposition headers and META elements
+  is not restricted to the file disposition type. - FM
+* Mods in GridText.c, LYGetFile.c and HTAnchor.c so that suggested filenames
+  will have appropriate suffixes when 'd'ownloading, based on whether or not
+  the file is gzipped or Unix compressed. - FM
+1997-08-05
+* Mods of the lead relative symbolic element stripping for http/https
+  URLs in cases for which they would persist when resolved to an
+  absolute URL.  The latest URL draft is ambiguous about whether this
+  should be considered an error, and leaves the handling of it up to the
+  UA.  So we now get rid of all lead relative symbolic elements from the
+  resolved http/https URLs, but no others, and still issue a Bad Partial
+  Reference statusline message. - FM
+* Tweaks of title handling in LYMainLoop.c and LYShowInfo.c so that the
+  known title, or link name associated with ACTIVATE-ion, form submission,
+  or a HEAD request, will be used in the INFO ('=') display. - FM, KW
+1997-08-04
+* Fixed header parsing in HTMIME.c so that "Safe:" is recognized. - KW
+* Changed confirmation prompts for HEAD (']') commands acting on a POST
+  document, to reflect the fact that the POST request body will not
+  actually be submitted in a HEAD request. - KW
+* Reset LYCancelDownload to FALSE at top of getfile(), to prevent delayed
+  effect which can otherwise occur. - KW
+* Block URLs with port numbers outside the range of valid numbers in
+  getfile(). - KW
+1997-08-03
+* Changed the NSL_FORK code in HTTCP.c so that the gethostbyname() call
+  is retried without forking if the child process exits without returning
+  enough data.  Also added trace output, to show whether something
+  unusual has happened to the child process. - KW
+* The IETF has indicated intent to adopt KW's "status 307" proposal for
+  dealing with the status 302 problems, so HTTP.c and HTAlert.c implement
+  that now.  The 302 status is "General (temporary) Redirection" which
+  can be handled as 303 at the UA's discretion, so we do that in all cases,
+  rather than prompting the user whether to do that when the 302 is for
+  a POST submission.  The 307 (and 305) for POST submissions invokes a
+  prompt whether to P)roceed or C)ancel, without the Use G)ET option.
+  The 301 is treated as permanent, normally, but for POST submissions
+  still is treated as temporary and invokes a prompt which includes the
+  Use G)ET option, because scripts written to empirical behavior may
+  still be expecting that (it's virtually never encountered in redirections
+  of POSTs, though, because the document containing the form typically
+  is redirected, so the user only sees the form if a local copy has been
+  made, and it would be best to C)ancel and get a new local copy of the
+  document from the correct http/https URL, to serve as a BASE for the
+  form's ACTION). - FM
+* Changed the typedef for HTCoord in HTStyle.h from float to int, for
+  significant speedup of rendering on machines without floating-point
+  hardware based on DW's, KW's, BL's analyses.  Note that this should
+  be taken into account when/if external style sheet support is added
+  for page formatting (e.g., for optimum handling by speech synthesizers
+  and braille interfaces), beyond the current emphasis on colorizing. - FM
+1997-08-02
+* The cookie pre-draft has been adopted as an IETF ID, see
+  ftp://ds.internic.net/internet-drafts/draft-ietf-http-state-man-mec-03.txt
+  so the code for combining Set-Cookie and Set-Cookie2 headers has been
+  eliminated in LYCookie.c (see mods for 1997-07-31). - FM
+1997-08-01
+* Fixed typos in LYCookie.c. - FM
+1997-07-31
+* Mods of the cookie handling based on the latest pre-draft.  Add a
+  Cookie2: $Version="1" header in any requests that use historical
+  cookies in the Cookie: request header, so that modern servers will
+  use Set-Cookie2 headers with modern cookies in their subsequent
+  replies.  Limit the scheme for commentURLs to http or https, not
+  just to network servers (e.g., gopher is now barred too).  Include
+  a $Port attribute in modern Cookie request headers if it was set
+  via a server's reply header.  The pre-draft indicates intention
+  to drop the requirement to combine Set-Cookie2 and Set-Cookie
+  headers if both types were received.  We're still combining them,
+  but based on bona fide one-to-one correspondence checks (which were
+  not specified in the earlier draft), so that's OK, and we'll get
+  rid of that needless overhead if the current pre-draft holds up
+  and becomes an official IETF draft. - FM
+* Added a -nocc command line switch for disabling the Cc: prompt
+  for self copies of mailings.  Note that this does not disable
+  any CCs that have been incorporated within a mailto URL or form
+  ACTION. - FM
+* Added a NO_FORCED_CORE_DUMP compilation (userdefs.h) and configuration
+  (lynx.cfg) symbol, normally set FALSE, which if changed to TRUE will
+  block forced core dumps on Unix via abort() calls on fatal errors or
+  assert() calls on potentially fatal error checks.  Also added a -core
+  command line switch for toggling the default. - FM
+* Updated the documentation and 'h'elp concerning the new symbol and
+  switches. - FM
+1997-07-30
+* Added workaround for curses with broken handling of 8-bit acs characters
+  (which may be used for drawing of popup boxes) to LYCurses.h.  This fixes
+  box characters and attributes/colors for solaris curses used with linux
+  console as terminal.  Currently it is not automatically enabled or
+  configured, but can be enabled by -DBROKEN_CURSES_8BIT_ACS. - KW
+* Mod in HTFWriter.c to change the statusline appropriately when an
+  uncompression has completed. - FM
+* Fixed code in LYOptions.c for the case when NEVER_ALLOW_REMOTE_EXEC was
+  not defined and ALLOW_USERS_TO_CHANGE_EXEC_WITHIN_OPTIONS was defined. - KW
+1997-07-28
+* Avoid traversing the full list of anchors each time when HText_endAnchor()
+  is called with a non-zero anchor number, if that number corresponds to
+  the last anchor added to the HText structure.  It is is the most common case
+  that HText_endAnchor() refers to the last anchor, and the only case that
+  could be handled correctly before FM's changes of 1997-05-13.  Avoiding
+  the loop over the list of anchor can improve loading time significantly,
+  especially for large files with thousands of anchors. - KW
+* Add progress display and 'z'appability for loading of local files.
+  They are activated only after a few hundred k bytes have been read.
+  Added define for HT_PARTIAL_CONTENT to HTUtils.h, used in above.
+  (The WWW Library 5.x uses HTTP-ish status codes like this throughout.
+  I find it much less confusing than -29998 and so on, and there's no
+  conflict in this case. - KW
+* Minor LYUtils.c tweaks. - KW
+1997-07-27
+* Changed code for checks in LYGetFile.c for URL schemes which should
+  be rejected when received as redirections, added checks for more
+  schemes. - FM
+* Rename top-level Makefile to Makefile.old (it's obsolete) - TD
+* Reduce top-level targets to one, 'lynx' - TD
+* Move comments describing DirEd to README.configure from makefile.in,
+  leaving only the definitions that haven't been integrated yet. - TD
+* Add configure options to enable/disable DirEd and its associated modes. - TD
+* Add configure option to enable/disable char-trans support. - TD
+* Correct sense of autoconf'd symbol for size-change. - TD
+* Accommodate systems with obsolete ncurses.h in configure tests. - TD
+1997-07-26
+* Changed the variable hline in LYUtils.c to hLine, so as not to conflict
+  with a curses function or macro. - FM
+* Fixed an esoteric glitch in highlight() of LYUtils.c which could cause
+  the last character of a current link to receive WHEREIS search target
+  emphasis if it happened to be the first character of the target (though
+  perfection is unattainable, we should strive to achieve it :). - FM
+* Changed the default value for STRIP_DOTDOT_URLS (lynx.cfg) to TRUE. - KW
+* Made some of the additional checks introduced yesterday in LYMainLoop.c
+  for invalid links to internal dired URLs more strict, as they probably
+  were intended. - KW
+* Added checks for some internal URL types, which should be rejected
+  if received in a server redirection, to LYGetFile.c.  Maybe more types
+  should be added to the list. - KW
+1997-07-25
+* Map charsets of the form "ibmNNN<...>" to "cpNNN<...>" in UCdomap.c
+  if not already recognized.  Also recognize "windows-1252". - KW
+* Compared the handling of 4-way "show color (&)" in the 'o'ptions menu
+  against FM's implementation, and made some changes (mostly in formatting,
+  variable and constant names and usage, ordering of statements) to aid
+  further comparison.  The logic is still messy and needs further cleanup
+  and simplification, but seems to do what it should.  Note that this
+  also handles color-curses, in a (hopefully) reasonable way.  Command
+  line flags -nocolor and (if using slang) -color override a preference
+  found in the RC file.  See updated "Lynx Users Guide" file and the
+  comments written to the RC file.
+  Documentation changes adapted from FM's changes. - KW
+* Mods of the DIRED_SUPPORT to check the actual URLs of temporary files
+  rather than just their titles when filtering for spoofing attempts via
+  external files with internal URLs.  Also recast the PRIVATE my_spawn()
+  to a PUBLIC LYExecv(), so that it can be used by any module (though
+  presently it's still used only by LYLocal.c functions). - FM
+* Tweaks of LYCharUtils.c to handle Set-Cookie HTTP-EQUIVs in META elements
+  without risking crashes in LYCookie.c or HTParse.c. - FM
+1997-07-24
+* Made "show color" option a 4-way choice, if compiled with color support
+  and if saving of options to a .lynxrc file is allowed. - KW
+* Made changing file permissions with DIRED_SUPPORT work again; one of
+  the recently added checks in LYMainLoop.c was too restrictive.
+  Added protection to permit_location in LYLocal.c, similar to the changes
+  of 1997-06-24 to LYDownload.c. - KW
+* Generate CANCELLED message when editing of a string value on the Options
+  Screen has been cancelled (typically with ^G), instead of an
+  inappropriate VALUE_ACCEPTED statusline. - KW
+1997-07-23
+* Tweaks of the strtok() calls for textarea values in HTML.c, so that they
+  will never be repeated after NULL has been returned, and thus won't cause
+  linux-alpha to crash. - FM
+* Make -nocolor command line flag work if compiled with slang.  Note that
+  -nocolor is strong, it overrides all other reasons that might otherwise
+  turn color on. - KW
+* Tweaks in LYCurses.c to ensure that slang library and Lynx flags for
+  whether color support is on stay in register. - FM
+* Change the default in userdefs.h for SHOW_COLOR to FALSE for USE_SLANG.
+  Because of the different logic used for LYShowColor in the curses code
+  vs. slang code, setting SHOW_COLOR to TRUE makes it difficult to invoke
+  a binary compiled with slang so that color is not used on startup
+  (except by using -nocolor).
+  Note that reading show_color from .lynxrc is still commented out. - KW
+* There is now a "trailing comment" handler in LYReadCFG.c.  It treats '#'
+  as a comment token only if it is somewhere after the last colon for the
+  lynx.cfg entry and is preceded by a space or tab. - FM
+* Added TT to the Utterly Tag and Attribute Soup group of HTML elements. - FM
+  (applies only to "old" DTD in this code set, as usual - KW)
+1997-07-22
+* Modify curses popups in LYForms.c and LYOptions.c to use background color
+  from main window - TD
+* Ifdef'd out the logic that saves "show color" to .lynxrc, since it is
+  deemed to be confusing to users - TD
+* Merged FM's changes to the "show color (&)" toggle to save to .lynxrc,
+  support slang, update online documentation - TD
+* Add error message to show actual context in error-checking for color
+  parsing suggested by Filip M Gieszczykiewicz - TD
+* Check for/suppress duplicate -lsocket in network library configure - TD
+* Remove HP-UX snake2/snake3 targets from makefile.in - TD
+* Add configure script case for 'sequent', drop ptx, ptx2 targets from
+  makefile.in - TD
+* Add logic to configure script handling of slang to suppress spurious
+  -Ipredefined when header location is given in $CFLAGS - TD
+1997-07-21
+* Check for lynx_uses_color and LYShowColor in lynx_start_status_color()
+  and lynx_stop_status_color() of LYCurses.c so that the statusline
+  will appear reverse (or otherwise highlighted if the terminal doesn't
+  support reverse), if color support is compiled in but not currently
+  used. - KW
+* Added comments on color usage to lynx.cfg. - KW
+1997-07-20
+* Added command-line option "-nocolor" to disable color on terminals that
+  would otherwise support it.  Added options toggle for colors, tested
+  with ncurses. - TD
+* Remove option value from configure option "--with-color-styles". - TD
+* Correct background of popups in LYOptions.c - TD
+* Add configure check for compiler options to enable prototypes - TD
+* Remove IRIX "-cckr" compiler flags. - TD
+* Correct whitespace as per LPS: LYCurses.c, LYOptions.c - TD
+* Tweaks of LYMainLoop.c in the code controlling how the document is reloaded
+  due to any changes in the 'o'ption menu which require a new rendering of
+  the document (but still without forcing a proxy cache refresh when that is
+  inappropriate; see the 1997-05-26 mods). - FM
+1997-07-18
+* Mods in LYexit.c and LYCurses.c to ensure restoration of stderr (if it
+  was changed for output to the trace log) on all exits. - BL, FM
+* Include an unsigned char typecast in the HASH_FUNCTION definition for
+  HTAtom.c - CK
+* Modified change to is_url() of 1997-07-13 to check for the slash after
+  stripping any lead space characters. - FM
+1997-07-16
+* Added the Windows Cyrillic display character set. - AAC
+  (Andrey A. Chernov <ache@null.net>)
+1997-07-15
+* Added support for a commentURL attribute in cookies.  This attribute is
+  under discussion in the HTTP-WG and not presently in the draft (see the
+  1997-07-09 mods for the draft's URL), but would be extremely advantageous
+  for multi-lingual and non-English-speaking sites because the comment
+  attribute can have only ASCII characters in its value, whereas a request
+  for the comment via a URL in turn allows use of charset and language
+  negotiation for what the server returns.  The value of the commentURL is
+  resolved and retained only if it's scheme points to a server (i.e., file
+  and special lynx URLs are rejected), and if it is retained, is included
+  as a link in the Cookie Jar Page.  If commentURL is not ultimately
+  included in the revised State Management RFC, sites which wish to use
+  it could do a User-Agent check for Lynx (and any other browsers which
+  implement it). - FM
+* Fixed a typo in HTCompressed() of HTFWriter.c so that the last dot in a
+  tentative temporary filename is sought via strrchr(), as is done for
+  HTSaveAndExecute() and HTSaveToFile(). - KW
+1997-07-14
+* Yet more tweaks of the cookie support.  We include $PATH and/or $DOMAIN
+  attribute/value pairs in Cookie request headers only when their values
+  were set explicitly via a server's Set-Cookie and/or Set-Cookie2 reply
+  headers (and the cookies are $VERSION="1" or greater). - FM
+* Added support for IFRAME homologous (but not identical) to that for FRAME.
+  It is handled as a block with a blank line before and after style, and
+  with margins and default alignment inherited from the containing block,
+  division, or span.  The IFRAME rendition always begins with an emphasized
+  "IFRAME: " label followed by the NAME attribute's value, if present, or
+  the URL for the SRC attribute, serving as a link for the SRC, followed
+  on a new line by any rendered IFRAME content. - FM
+* Added handling of LEGEND elements.  The content is rendered in place,
+  as for CAPTION elements, since we don't have multiple pass inlining
+  capabilities.  Hopefully, if the LEGEND is intended to be ALIGN-ed at
+  the "top" or "bottom" of the associated insert, the author will place
+  the LEGEND element above or below it, respectively.  Note that LABEL
+  elements similarly are rendered in place, and will be displayed
+  interpretably only if the INPUT to which the LABEL's "for" attribute
+  refers, immediately follows the LABEL element. - FM
+* Added recognition of BUTTON elements, and handling of them (sorta :)
+  when they are TYPE="submit" or TYPE="reset" in forms.  The default
+  "submit" or "reset" string, or the value of a VALUE attribute, if
+  present, is embedded in parentheses and used for the link, and the
+  content is simply rendered and displayed in place.  Until we see what
+  kind of markup the real world puts in such elements, it's too risky
+  to try to use that rendition as the link.  Also, the W3C's HTML 4.0
+  draft presently is very fuzzy about whether, and if so, when, an IMG
+  element in the BUTTON content should be treated as an image map, so
+  the present code doesn't try to cast any submitted BUTTON name/value
+  pairs into the format for INPUTs with TYPE="image".  When the BUTTON
+  is a script control rather than submit or reset button, a "[BUTTON]"
+  pseudo-ALT is inserted to warn users of its presence, but the form
+  is not disabled.  The W3C's HTML 4.0 draft makes scripting intrinsic,
+  with no SGML-based fallbacks if it is not available or is disabled by
+  security-conscious sites.  Dave Raggett of the W3C replied to criticisms
+  of this in www-html@w3c.org by saying that he wished it have been
+  otherwise, but "market forces" prevailed (Sigh...) - FM
+1997-07-13
+* Changed is_url() to return immediately if the string to check starts with
+  a slash character.  This prevents some false positives if the string
+  contains ':' characters. - KW
+* Added support for "MACOS AppleShare IP FTP Server" to HTFTP.c.
+  Only based on and tested with (the current incarnation of)
+  <ftp://www.unicode.org/>. - KW
+1997-07-12
+* Correct some build issues with the merge (ifdefs for the curses modules)
+  as well as minor fix for makefile distclean rule. - TD
+* More refinements of the cookie support in relation to recent discussions
+  in the HTTP-WG, and for more fully effective protection against denial
+  of service attacks.  If the same attribute appears more than once for
+  the same cookie, ensure that the first instance will be used.  Limit
+  the total number of cookies across Set-Cookie and Set-Cookie2 headers
+  to 50 per server reply, and each cookie to a maximum of 4096 bytes. - FM
+1997-07-11
+* Added support for hexadecimal character references (&#xH;) as proposed
+  in the W3C HTML 4.0 draft. - FM
+1997-07-10
+* Synchronized the development code against the fotemods patches up to
+  1997-07-06 (relevant changes listed below, as usual).  Note that FM
+  has now included the chartrans code, but has eliminated conditional
+  compilation of it; however, in this code set setting "-DEXP_CHARTRANS"
+  at compile time is still necessary (but compilation without it has not
+  been tested). - KW
+* Fixed character counting logic in display_line() for lines where
+  soft hyphens (&shy; or <SHY> or a soft-hyphen character) are used
+  for their intended purpose. - KW
+  NOTE: The W3C HTML 4.0 draft explicitly specifies handling of &shy;,
+  &#173; (and now also &#xAD;) in the manner long implemented by Lynx
+  (i.e., as a truly soft hyphen), and not in the brain-dead manner
+  implemented by Netscape and MSIE. - FM
+* Various tweaks of the cookie support to handle likely (based on past
+  experience in the real world :) abuses of Set-Cookie and Set-Cookie2
+  headers from servers.  Most importantly, apply sanity checks to the
+  values of port attributes so that any unquoted port list will not be
+  misinterpreted as the start of a new cookie within the port list.
+  Also added code to fold (CR LF TAB) Cookie request headers if they
+  contain a long sequence of cookies which would exceed 1024 bytes on
+  one line, since some servers suffer buffer overruns and crash in such
+  cases. - FM
+* Modified HTNews.c to use HTmmdecode() and HTrjis() for the Subject and
+  Author strings in listings of news articles when using a Japanese display
+  character set. - HN
+1997-07-09
+* Massive updating and revamping of the cookie support in accordance with
+  http://www.ics.uci.edu/pub/ietf/http/draft-ietf-http-state-man-mec-02.txt
+  which is scheduled to replace RFC 2109 on July 15, 1997.  Noteworthy
+  changes are that (1) the blanket port restriction is now lifted, and
+  sharing of cookies among servers with matching domains but different
+  ports is blocked only if a port attribute was included in the
+  Set-Cookie2 header (or Set-Cookie header, though it's not expected
+  there), with a value which defaults to the request's port, but can
+  be a comma separated list of ports, and (2) the blanket restriction
+  on sharing of SSL-encrypted (https) cookies with http servers is
+  lifted, and normally depends on the Set-Cookie or Set-Cookie2 header
+  having included a secure attribute.  However, a configuration option
+  (see lynx.cfg) to FORCE_SSL_COOKIES_SECURE is now available, and the
+  compilation or configuration default can be toggled via a -force_secure
+  command line switch. - FM
+* Make NOCACHE ('x' key) work as expected from history list for internal
+  links. - KW
+* Removed bogus checking for a config file in home directory which had
+  been introduced into the development code. - KW
+1997-07-08
+* Synchronized the development code against the fotemods patches up to
+  1997-06-24 - TD, KW
+1997-07-06
+* Implemented popup windows for the 'o'ptions menu, homologous to those
+  for SELECT blocks in forms.  They are implemented when select_popups
+  is on, and include WHEREIS search and 123[g,p] features (very useful
+  for navigating the choice list of 28 display character sets :).  Use
+  the F_LINK_NUM command ('0') to invoke the prompt for a choice list
+  number when in NUMBERS_AS_ARROWS mode.  The popups are not invoked for
+  the simple, binary choice options.  Also modified the options menu so
+  that the cursor is positioned to the left of choices when show_curser
+  is on (but it is still positioned initially at the endings of strings
+  when the line editor is invoked for options that have user-entered
+  values). - FM
+1997-07-04 (KaBoom! :)
+* Mods of HTMIME.c and HTFile.c to ignore Content-Type parameters other
+  than charset when charset is not present, as we do when it is present
+  and we know we can handle it. - FM
+* Fixed bug in LYNews.c which could cause Lynx to crash when posting or
+  sending followups to news groups and the Organization header was
+  obtained from the /etc/organization file. - FM
+* Fixed bug in LYEdit.c which could cause Lynx to crash when an editor
+  to which a line number is passed as an argument is used and there are
+  no links on the current page of the document to be edited. - FM
+* Added information about the new $USER feature to the comments about
+  TEMP_SPACE in userdefs.h. - FM
+1997-07-03
+* Tweaks of change_sug_filename() in LYUtils.c to make protections against
+  buffer overruns explicit within the function. - FM
+* Tweaks of the #ifdef'ing in HTTCP.c. - FM
+1997-07-02
+* Mods in LYDownload.c and LYPrint.c to treat a suggested output file
+  entry of "/dev/null" on Unix, and "nl:" or "/nl/" paths on VMS (case
+  insensitive), as a cancel (^G). - FM
+* Mods in LYGetFile.c to include URLs with content from a form submission
+  with method GET in the group for which Referer headers are never sent,
+  because the content might include private (e.g., password or credit
+  card) information which should not be visible in Referer logs. - FM
+* Added -G 7 to the LYFLAGS and MCFLAGS for the ultrix and ultrix-slang
+  Makefile targets when using the native ultrix compiler. - HM
+* Added -DNSL_FORK to the LYFLAGS for all of the solaris2 and Linux
+  targets in Makefile. - FM
+* The above two changes don't affect the makefile used by auto-config - KW
+1997-06-30
+* Removed a redundant declaration in UCdomap.c which was causing some
+  compilers to balk. - FM
+* Fixed typos in SGML.c which could cause echoing of numeric character
+  references for some of the display character sets. - FM
+1997-06-29
+* Updated lynx.hlp, lynx.man and the online 'h'elp concerning the chartrans
+  support. - FM
+1997-06-26
+* Tweak of the "tag and attribute soup" parsing mods in HTML.c so that the
+  PLAIN attribute works for UL blocks again. - FM
+* More tweaks of LYMainLoop.c to issue informative statusline messages
+  about attempts to ACTIVATE, DOWNLOAD, or submit URLs or ACTIONs which
+  are disallowed in the current context and destined to fail, rather than
+  acting on them and generating actual failures. - FM
+* Mods of LYmktime() in LYUtils.c to support dd-mm-yyyy format for expires
+  headers and cookie attributes. - FM
+* Oops, hadn't included checks for whether there are links on the page
+  in this morning's LYMainLoop.c mods to ensure appropriate statusline
+  messages for attempts to bookmark special URLs that can't be bookmarked,
+  which could yield a crash it there aren't any.  The checks are in there
+  now. - FM
+* Added ability to bookmark links from the Lynx List Page, as from the
+  Visited Links Page, but not for those pages, themselves, since they
+  are temporary files.  Note that Lynx List Page links will not have
+  the documents' titles, as do those in the Visited Links Page, unless
+  you've visited them before invoking the Lynx List Page. - FM
+* Added explicit protections against buffer overruns in the LYDownload.c
+  handling of suggested filenames. - FM
+* Changes in LYCurses.c, GridText.c, HTML.c, and LYUtils.c, and smaller
+  changes to some other files, to fix problems with RP's style code.
+  Color leaking should now be at least much reduced, and some possible
+  crashes avoided. - KW
+1997-06-24
+* Mods in LYDownload.c to check whether the File= field in a LYNXDOWNLOAD
+  URL has the value that was inserted into the URL via the most recent
+  download options menu.  This prevents spoofing with arbitrary LYNXDOWNLOAD
+  URLs entered via the 'g'oto or ECGOTO commands, or ACTIVATE-ed in a file
+  other than the most recent download options menu which was created by
+  Lynx internally. - FM
+* Mods in LYMainLoop.c to ignore LYNXCOOKIE, LYNXDIRED, LYNXDOWNLOAD, and
+  LYNXPRINT URLs if entered via a 'g'oto or ECGOTO command, and to issue
+  a statusline message explaining that the special URL is not allowed as a
+  goto.  This is just for informational purposes, and the above anti-spoof
+  mod is not dependent on it. - FM
+1997-06-23
+* remove "Styles" identifier from Lynx version string in userdefs.h
+  since it causes "patch-o-matic" to choke. - JES
+1997-06-20
+* Now that we add or subtract attributes for Unix FANCY_CURSES, as for VMS
+  curses and slang, the 1997-05-30 mods based on LE's patch for keeping track
+  of whether links occur in an underlining context, and if so, restoring it
+  when a current link is made non-current, should be extended to FANCY_CURSES
+  as well.  So they are extended, now, in highlight() of LYUtils.c. - FM
+* Added code in LYNewsPost() of LYNews.c for converting any EUC or SJIS to
+  JIS (ISO-2022-JP) in posts or followups to Usenet news groups if the
+  display character set is "Japanese (EUC)" or "Japanese (SJIS)".  The mods
+  need testing by Japanese users, because the TO_JIS() function I added
+  long ago in SGML.c has not actually been used before. - FM
+* Modified the hack in LYPrint.c for mailing HTML source so that it never
+  appends a charset parameter to the "text/html" value of the Content-Type
+  header if compiled without chartrans enabled. - FM, KW
+1997-06-18
+* Added a check for nonsense LINES and COLS values in setup() of LYCurses.c,
+  homologous to the check in size_change() of LYUtils.c, and set LYlines and
+  LYcols to the 80x24 default if they're nonsense.  The slang library and
+  most curses implementations do the equivalent themselves, but we may as
+  well make sure it's done. - FM
+* Tweaks of the anti-spoof mods in HTFWriter.c for additional protection
+  against extra %s entries in viewer command mappings. - FM
+1997-06-17
+* Came up with a low overhead way to restore the emphasis for WHEREIS
+  search targets when links are made current or non-current and the
+  target string starts before and/or extends past the end of the link
+  name (hightext or hightext2) string (see 1997-06-14 mods), so the
+  restoration works in that case as well, now. - FM
+1997-06-14
+* Fixed a longstanding bug in highlight() of LYUtils.c which caused seeking
+  of a column position less than 0 and strange behavior when a link is made
+  current, if show_cursor is on and the link begins at column 0 (as can
+  happen in PRE blocks).  We now position the cursor on the first character
+  of such links, so the current link will remain clear for those with speech
+  or braille interfaces. - FM
+* Added functions in LYCurses.c, along the lines of those in the development
+  code, so that the [w]start_foo() and [w]stop_foo() functions no longer
+  just replace character attributes for Unix FANCY_CURSES, but now add or
+  subtract them as for VMS curses and slang. - FM
+* More mods in GridText.c and LYUtils.c so that the handling of WHEREIS
+  search target emphasis when links are made current and non-current is the
+  full equivalent for Unix FANCY_CURSES of that for VMS curses and slang.
+  Note that the restoration of search target emphasis does not succeed if
+  the hit started before or extends beyond the link name (hightext or
+  hightext2 string).  What it would take to succeed in that case as well
+  doesn't seem worth the overhead, but I'm still thinking about it.  Also
+  note that we still do not emphasize search target hits, but only do link
+  or page re-positioning, for Unix curses when only standout() and standin()
+  are supported.  In that case, standout() is being used for all links,
+  including the current (with the latter indicated via cursor position by
+  turning show_cursor on), so we don't want to create a totally confusing
+  situation by using standout() for search target hits as well.  The code
+  is still designed to degrade gracefully when the terminal does not have
+  the capabilities of the curses or slang with which Lynx was built. - FM
+1997-06-13
+* Tweak of yesterday's LYGetFile.c mods.  Lost a lynx_edit_mode = FALSE
+  statement that is still needed when DIRED_SUPPORT is defined. - FM
+* Mods in LYForms.c so that the cursor is positioned at the left of the
+  current option in select popup windows when show_cursor is on, as when
+  the cursor is used to indicate the current link in the main document.
+  This is important when Lynx is used with a speech or braille interface,
+  or a terminal which does not respond to the highlighting/color for the
+  current option.  When show_cursor is off, the cursor is still positioned
+  to the right of the current option for curses, and is fully "hidden" in
+  the lower right corner for slang, so that the highlighting or color of
+  the current option can be used without the distraction of a blinking
+  cursor in the left-to-right reading field. - FM
+* Added ability to change the show_cursor setting via the 'o'ptions menu
+  and to save that as the default in the RC file (otherwise, the default
+  is still that set in userdefs.h or lynx.cfg).  The -show_cursor command
+  line switch toggles the default, however obtained, homologously to the
+  -popup toggle.  Updated the online 'h'elp accordingly (option_help.html
+  and Lynx_users_guide.html). - FM
+1997-06-12
+* Tweaks of the 1997-06-04 mods for restoring emphasis of WHEREIS search
+  targets in link names when they are changed to the current link or again
+  made non-current.  When the link is made current, the first and last
+  characters of the link name never are emphasized, so they'll retain the
+  attributes/color for the current link, and the user can see (if sighted)
+  that the link was made current.  With this change, the restoration of
+  emphasis also is interpretable with Unix FANCY_CURSES, so the block for
+  that is lifted.  Note that I figured out why the bold+reverse+underline
+  combination doesn't work for that.  The vanilla and this Lynx code are
+  not adding or subtracting attributes for their start_foo() and stop_foo()
+  functions (as is done for slang and VMS curses), but are replacing them,
+  so you always end up with the last attribute in a series of start_foo()
+  calls (underlining for the search target emphasis).  I don't know if
+  ability to sum attributes applies to all Unix curses flavors for which
+  FANCY_CURSES is defined in the Makefile, so I left the Unix, non-slang
+  start_foo() and stop_foo() functions the way they are, for now. - FM
+* Mods in LYGetFile.c so that any '~' in file URLs is handled as when in
+  startfile, home page, or 'g'oto commands.  Only the first '~' is converted
+  to Home_Dir(), and only for the first symbolic element in the URL, and if
+  it is followed by a username, that username is stripped (so that the
+  "~username" becomes a reference to the home of the account running Lynx,
+  as if only '~' had been used, and can't be used as a reference for an
+  arbitrary home).  Note that we don't do this stripping for ftp URLs,
+  because the ftp server should decide, itself, whether to grant access to
+  arbitrary homes, based on the username and password that were used to
+  log in.  Note, also, that if the account running Lynx is allowed access
+  to the root of the file system for its home, then access to any arbitrary
+  home in that file system can be gained from there.  Access to the root
+  never is allowed for file URLs in the for-VMS code, but depends on the
+  root's protection in the for-Unix code.  Also, any arbitrary path in file
+  URLs will be attempted if it is specified as an absolute path.  The
+  stripping of the username from "~username" in most cases on Unix only
+  protects against probing for homes in other file systems, without the
+  user knowing the corresponding absolute path. - FM
+1997-06-11
+* Mods in HTAABrow.c, HTTP.c and HTAlert.c so that auth_proxy is no
+  longer a module wide global, and the structures which handle/create
+  authentication/authorization headers maintain separate setup trees
+  for proxy authentication/authorization versus for protected limbs of
+  http/https data trees (realms) on the same server.  This ensures that
+  each proxy's template, which is the global '*' for all paths (that are
+  in fact full URLs) in its proxying requests, are kept distinct from
+  the templates for true paths of the protected limbs on the same saver,
+  even if the user fails to include that proxy in the no_proxy list, or
+  the server's WebMaster fails to do the equivalent configuration for
+  the server, and the realm names overlap.  Also modified the prompt
+  strings for the username and password to be encrypted for protected
+  document requests versus for proxy access so that they indicate
+  explicitly whether the user's entries will be used for one or the
+  other. - FM
+* Added a -pauth=id:pw switch for proxy servers, homologous to the
+  -auth=id:pw switch for protected documents, along the lines of AJL's
+  patch.  Note that the -pauth value is used only for authorization
+  headers to the first protected proxy server encountered, and the -auth
+  value is used only for the authorization headers in document requests
+  for the first protected limb encountered.  Now that we have an explicit
+  switch for proxy authentication, it should be used explicitly for that,
+  instead of still allowing use of the -auth=id:pw switch for either
+  (IMHO).  Also, there's no serious need to make inclusion of the code
+  for handling these switches a compilation option, because they are only
+  available to users with shell access.  Updated the help files concerning
+  these switches, and included advice to make sure any script files which
+  use these switches have restricted access. - FM
+1997-06-09
+* More refinements of the code in GridText.c, HTML.c and LYCharUtils.c
+  for handling visible versus hidden links, blank lines, stripping of
+  the numbered brackets for links, and the interactions of these things
+  with soft hyphens. - FM
+1997-06-06
+* Fixed typos in LYrcFile.c which caused failure to start two comments
+  on new lines when writing to the RC file. - FM
+* Fixed a typo in the lead dot pair stripping code in LYLegitimizeHREF()
+  of LYCharUtils.c. - FM
+* Tweak of code in GridText.c for handling soft hyphens so that we don't
+  display a hyphen if it's the first character in the line, or is preceded
+  by a space, even if it is followed by a newline. - FM
+* Mods of the hidden link handling and numbered bracket stripping code in
+  GridText.c so that it succeeds no matter how many blank lines are in
+  the anchor content. - FM
+1997-06-04
+* Mods in LYLegitimizeHREF() of LYCharUtils.c for dealing more effectively
+  with fragments which have illegal characters, as is becoming common due
+  to authoring tools such as Microsoft's Frontpage and Netscape's HTML
+  editor.  The actual URL-reference is still handled so as to yield a
+  fully legitimate absolute URL, without any unescaped spaces, but the
+  fragment is checked only for problem characters such as tab or newline,
+  and otherwise is unmodified.  (Try the vanilla versus modified code with
+  the http://www.cnib.org/library/ww_flw96.htm atrocity, brought to you
+  discourtesy of Frontpage. :) - FM
+* Worked into the fotemods code use of bold+reverse+underline highlighting
+  of WHEREIS search hits for VMS curses, and slang on both VMS and Unix (with
+  or without the color mode on), and added code in highlight() of LYUtils.c
+  for restoring that highlighting when links are made current or non-current
+  if the string for the hit was contained within the string for the link (won't
+  be restored if the hit's string starts before or extends past the link's
+  string).  Couldn't get any of this to work with curses and the solaris2
+  target, so for Unix curses the hit string still is just underlined and
+  not restored when links are made current or non-current. - FM
+* Fixed typo in the 1997-06-01 LYOptions.c mods. - FM
+1997-06-03
+* Mods in LYList.c to skip setting up a list block for visible links if
+  the document has only hidden links, and in HTML.c to include a notice
+  about this with a suggestion to use the 'l'ist command.  Try it with
+  the http://www.sony.com/ atrocity. - FM
+* Tweak in LYMainLoop.c to fix a longstanding bug which would cause the
+  curdoc.line and curdoc.link numbers to be mishandled, and thus cause
+  the wrong page and current link to be restored on return to the document
+  via PREV_DOC or the History Page, if the document was fetched originally
+  with a fragment and a link on its first page had been activated. - FM
+* Tweaks in GridText.c so that returns from image map menus to parent
+  documents are not treated as if a different document is being sought,
+  and thus any no-cache directives associated with the parent will be
+  ignored unless another fetch is initiated within the parent or via
+  another, externally existing document. - FM
+* Added SEEK_FRAG_MAP_IN_CUR and SEEK_FRAG_AREA_IN_CUR configuration
+  (lynx.cfg) options for how to resolve USEMAP attribute values in
+  IMG or OBJECT tags and HREF attribute values in AREA tags when they
+  consist solely of a fragment (USEMAP="#frag" or HREF="#frag").  The
+  compilation default is TRUE, i.e., they are resolved with respect
+  to the current document's URL, even if the base is different, as is
+  being done for the HREF attribute values of Anchors and LINKs.  The
+  compilation default seems to be working out, even though most of the
+  currently deployed browsers still use the base. - FM
+1997-06-02
+* Mods in LYMain.c so as not to require that a lone "-" argument for
+  invoking input of command line arguments from stdin be the only
+  argument on the actual command line.  That requirement preluded use
+  of this feature when the command for invoking Lynx was aliased so
+  as to include arguments, because the lone "-" then could not be the
+  only argument.  Also tweaked the code so that any stdin-derived
+  arguments which need to be processed early in main() are so processed.
+  The vanilla code had severely flawed logic in this respect.  The
+  security considerations associated with switch handling have gotten
+  hairy beyond reasonable bounds, but I think I've thought it all through
+  (we'll see :), and have plugged some holes in the vanilla code for
+  this feature.  Redirection of stdout and/or stderr to a file now also
+  works reliably in conjunction with this feature. - FM
+* Added an explanation in the PROBLEMS file of the bad getsockname() and
+  getpeername() functions within SOCKETSHR 0.9D which affect the ftp
+  gateway, and the URLs for Andy Harper's (A.HARPER@kcl.ac.uk) fixes of
+  the SOCKETSHR 0.9D sources. - FM
+* Cast LYLocal.c into the Lynx programming style. - FM
+1997-06-01
+* Added support for numbered form fields, and options in SELECT popups,
+  based on LE's patch.  The LINKS_AND_FORM_FIELDS_ARE_NUMBERED keypad
+  mode can be defined in userdefs.h and via the 'o'ptions menu.  When
+  in SELECT popups, the F_LINK_NUM ('0') command can be used in any mode
+  to invoke a "Select option (or page) number:" prompt, which can take
+  'g' or 'p' suffixes, homologously to the
+  "Follow link (or goto link or page) number:"
+  prompt in the main document with popups retracted.  Note that when in
+  the main document, the F_LINK_NUM command has an implied 'g' suffix
+  for form links (i.e., will position you on the form link, not, for
+  example, ACTIVATE a submit button), but *not* in popup windows (i.e.,
+  without a 'g' suffix, the option corresponding to the number will be
+  selected, and the popup will be retracted, as if you had pressed
+  ACTIVATE when positioned on that option).  The 123p feature is quite
+  useful in popups with a very large number of options, and supplements
+  the HOME, END and WHEREIS functions for seeking positions in the list
+  (again, regardless of keypad mode, if F_LINK_NUM is used to invoke
+  the prompt).  A "page" is defined as the number of lines within the
+  vertical dimension of the popup box. - FM
+* Mods in LYEdit.c to seek the current page and line when the editor
+  is sedt on VMS. - FM
+* Updated the online 'h'elp concerning the "Follow link (or page) number:"
+  and "Select option (or page) number:" features (Lynx_users_guide.html,
+  follow_help.html, keystroke_help.html and other_help.html). - FM
+* changes to help files to reflect the different prompt string. - KW
+1997-05-30
+* Worked in LE's patch for keeping track of whether links occur in an
+  underlining context, and if so, restore it when slang color is on and
+  a current link is made non-current, thereby actually dealing with the
+  longstanding bug discussed in the 1997-05-27 mods (This is just a hobby,
+  and I always reserve the right to change my mind! :). - FM
+* Mods of LYForms.c and LYStrings.c to deal with form field values too
+  long to fit in the line editor's buffer (such as long TEXTAREA values
+  which have no newlines in them).  As much of the tail as fits in the
+  buffer is offered for editing, with statusline messages explaining the
+  situation.  If the tail is modified, it is combined with the unmodified
+  head when the form field is made non-current.  The result can be edited
+  further by making the form field current again.  If the form has a
+  Reset button, it can be used to restore the original value.  The
+  vanilla code would crash on buffer overflow (Ugh!  A potential
+  security hole.). - FM
+1997-05-29
+* Restored underlining in conjunction with reversing for the current link
+  with slang when colors are being used, but not otherwise. - FM
+* The 1997-05-26 mods to bypass screen redraws on retractions of SELECT
+  popups when the selected OPTION was not changed worked properly only
+  for VMS curses.  Tweaked the for-slang code so that it now works like
+  VMS curses (though not as efficiently).  However, with Unix curses,
+  the delwin() - refresh() sequence does not restore what was there
+  before the popup was invoked, and none of the tweaks I tried got that
+  to work, so the poor Unix folks using Unix curses are now stuck again
+  with screen redraws for every popup retraction.  - FM
+1997-05-27
+* Eliminated in the fotemods code underlining in conjunction with reversing
+  for the current link with slang, to avoid the longstanding bug of
+  underlining being lost (and distracting color changes occurring) when that
+  link ceases to be current and it was embedded in an underlined region of
+  text.  The attributes of the current link can be better handled in the
+  development code based on configurable style sheets, so there's no
+  point letting this bug ride, nor trying to deal with it through
+  temporary internal mods, in the fotemods code set. - FM
+1997-05-26
+* Mods of display_title() in GridText.c to eliminate the "format"
+  mask as in KW's 1997-05-14 development code mods, and to make the
+  memory management more efficient. - FM
+* Mods of change_form_link() in LYForms.c to bypass the screen redraw
+  on retraction of a SELECT popup if the SELECT block is DISABLE-ed
+  or the selected OPTION was not changed.  Note that the complete
+  elimination of the screen redraw in the 1997-05-20 development code
+  mods, i.e., even when the selected OPTION was changed, results in
+  the change not being made evident to the user in the retracted popup
+  unless the screen is redrawn fortuitously (e.g., due to subsequent
+  paging). - FM
+* Modified the caching-related changes of 1997-05-15 to LYMainLoop.c,
+  handling automatic reloading after a change of the User-Agent string
+  like after comparable other option changes.
+  We force a reload if "preferred document lan(G)uage"
+  or "preferred document c(H)arset" are changed via the 'o'ptions menu,
+  and to set the "reloading" flag for forcing a proxy cache refresh if
+  those or "user (A)gent" are changed and the current document has an
+  http, https or lynxcgi scheme, but not force a proxy cache refresh if
+  we're reloading due to an INLINE_TOGGLE, IMAGE_TOGGLE, or RAW_TOGGLE
+  command. - KW, FM
+1997-05-25
+* Mods in LYMain.c to convert $USER if present in the TEMP_SPACE
+  definition or LYNX_TEMP_SPACE environment variable to the string
+  returned by getenv("USER"). - FM
+* Fixed two typos for me->inFONT settings in HTML.c - TD
+* Added chmod(file, 0600) calls for most files created by Lynx. - FM
+1997-05-24
+* integrate patch JED's mods which support mouse for slang as well as add
+  new functions to encapsulate differences between slang/curses. - TD
+1997-05-21
+* Mods in HTML.c and LYCharUtils.c so that TABLE blocks are treated
+  as divisions in the DIV nest, with a default alignment of HT_LEFT
+  if the TABLE start tag lacks an ALIGN attribute, and otherwise,
+  that attribute's value.  Nested TABLEs extend the DIV nest.  This
+  avoids the problem in the vanilla code of TABLE content inheriting
+  the alignment of a containing CENTER or DIV which is intended for
+  alignment of the TABLE as a whole.  Also added support for ALIGN
+  attributes in TR elements.  If the TR has no ALIGN attribute, it
+  inherits that of the current division, which should be that of the
+  current TABLE.  This, of course, still does not yield true TABLEs
+  for truly tabular content, but makes TABLEs used for formatting
+  more readable. - FM
+1997-05-20
+* correct 2 occurrences of "me->inFONT == TRUE;" in HTML.c - TD
+* add configure --with-color-style option to merge RP's alpha changes for
+  color styles (this works only with ncurses, since it does not initialize
+  the window background, leaving it null, thereby exploiting a bug in
+  ncurses which sets null backgrounds to a space).  Also some whitespace
+  (and renamed CS to make this build w/o ncurses) - TD
+* test-built with ncurses 1.8.7, 1.9.4, 1.9.9e and 4.0, as well as bsd 4.4
+  curses and slang - TD
+* Tweak of HTFWriter.c so that it does the anti-spoof tests normally
+  done by tempname() (see the 1997-05-19 mods) in all cases for which
+  it changes the temporary file suffix from any of those checked by
+  tempname() itself.  At this point, every way I've thought of for
+  trying to spoof Lynx via links for temporary files is blocked, but
+  people should beat on today's code to see if there's any spoofing
+  strategy I haven't yet blocked. - FM
+* Modified the Lynx Trace Log handling so that it doesn't use actual
+  redirection of stderr via freopen() calls, and restores the original
+  value of stderr during any escape to shell.  This avoids the problem
+  on Unix that sh and ksh send their prompt strings to stderr, and that
+  bash sends both its prompt and command line echo to stderr, so they
+  end up in the log instead of being visible.  I had tested the initial
+  design on VMS and with csh on Unix, and thus didn't notice this
+  foolishness for the other Unix shells.  Anyway, it's OK for all of
+  them now. - FM
+* Tweaked SIGTSTP interrupt handler in the USE_SLANG for-unix code, so
+  that it gets set to SIG_DFL when stop_curses() is called, to prevent
+  strange interferences experienced when ^Z is used while a helper
+  process is in the foreground. - KW
+* Change in LYForms.c to prevent forced screen refresh after selection
+  from a popup box. - KW
+1997-05-19
+* Recognize Linux console F1 key in LYgetch() (applies if "-DNO_KEYPAD"
+  is in effect, as for all binaries built with slang). - KW
+* Protect LYgetch() against returning raw values of keypad() symbols
+  which are invalid when used later as an index into keymap[],
+  override[], etc. - KW
+* in the USE_SLANG for-unix start_curses(), honor the no_suspend flag
+  if set.  This implements -restrictions=suspend handling for slang
+  (although it was intended for curses implementations which have
+  problems with ^Z within Lynx; see the PROBLEMS file).
+  Note that the no_suspend flag cannot be suspected to have
+  the desired effect if lynx is executed from a shell script, unless
+  the shell process forked for the script also ignores the SIGTSTP
+  signal generated (usually) by the ^Z key.  Also if the user is
+  allowed to execute any helper process (VIEWER, PRINTER, etc.) which
+  does allow suspending while no_suspend is in effect for the Lynx
+  parent process (by overriding the SIG_IGN setting done by Lynx or by
+  other means), then suspending may still be possible, in addition to
+  strange effects either immediately or when the process or process group
+  is continued (wrong tty and screen state, zombie processes, total
+  hang of the session without any way to interrupt - you get the idea...).
+  Trying to use the suspend restriction in order to prevent users from
+  getting a shell prompt doesn't make much sense anyway when they are
+  allowed access to execute commands which may be interrupted or allow
+  escaping to a shell... - KW
+* Tweak of HTFile.c so that we no longer lose an LYforce_HTML_mode
+  directive if the file is gzipped or compressed and the uncompressed
+  suffix is not mapped to text/html. - FM
+* Modified tempname() in LYUtils.c so that it checks whether files
+  with the current PID and target count already exist, and if so,
+  increments the count until a name for a non-existing file has been
+  created. - FM
+1997-05-18
+* Mods in LYMainLoop.c and LYClean.c so that Control-G is treated as
+  a synonym for 'n'o in quit confirmation prompts. - FM
+* Mods in LYPrint.c to strip any gzip or compress suffix from the
+  suggested filename, on the assumption that we're deal with a text/html
+  or text/plain file that had a corresponding Content-Encoding and no
+  Content-Disposition: file; filename=name.suffix  header indicating
+  the appropriate filename after uncompression.  This assumption does
+  apply for our current ftp gateway, and for most present-day http
+  servers.  This mod in turn ensures that text/html files which are
+  not being printed as source will have their uncompressed suffixes
+  converted to .txt, indicated that they are rendered. - FM
+1997-05-17
+* Fixed long-standing bug in display_page() of GridText.c.  When it
+  was updating the links structures, it wasn't re-initializing the
+  form element if the links structure is not for a form field. - FM
+* Mods in HTML.c to deal more effectively with H# headers used instead
+  of LH in lists.  We now, in effect, treat them fully as if they were
+  LH, so that their left indentations are in register with the current
+  list nesting depth, and we apply better error recovery in cases where
+  the author is mis-using H# for a FONT change rather than as an actual
+  header. - FM
+1997-05-16
+* Changed the line where a WHEREIS search target should preferably be
+  displayed to the 4th line (not counting the title line).  This can
+  be changed by redefining SEARCH_GOAL_LINE in userdefs.h.
+  SEARCH_GOAL_LINE can also be a simple expression in terms of the
+  variable display_lines, e.g., `#define SEARCH_GOAL_LINE (display_lines/3)',
+  this should then automatically adapt to screen size changes (provided the
+  display system can deal with that...)
+  Note that this this goal line will normally not be used if the next
+  target, according to the algorithm Lynx uses, is already on the displayed
+  screen.  Also, when the displayed page changes to show a search result,
+  there is no guarantee that it will end up on the line set by
+  SEARCH_GOAL_LINE.  It should rather be regarded as a maximum.
+  For example the presence of anchors on the line with the target or on
+  the preceding lines will change the positioning. - KW
+* The SEARCH_GOAL_LINE line will also be used for "going to" a link with
+  'g' suffix at the "Follow link ..." prompt, although the algorithm is
+  quite different.  As for a search target, this only applies when Lynx
+  has to position to a different page of the document, and then is only
+  a maximum. - KW
+* Enabled the no-cache setting for the pseudo document Lynx creates for
+  a client-side image map in LYMap.c, for now. - KW
+* Minor typo fix for the proxy authentication mods. - FM
+* Tweak of PRE block handling in HTML.c to ensure an implied paragraph
+  after the block if it is in a list and not followed by an LI. - FM
+* Tweaks of SGML.c and LYCharUtils.c to allow any non-digit to terminate
+  a numeric character reference once at least one digit has been found in
+  the reference. - FM
+* Change in LYUnEscapeToLatinOne() to use isdigit() instead of isalnum()
+  for recognizing numeric character references like LYUnEscapeEntities()
+  does. - KW
+1997-05-15
+* Worked in JED's mods for taking a suspend into account during select()
+  calls. - FM
+* Mods in LYMainLoop.c to not force a cache refresh on a proxy any more
+  when INLINE_TOGGLE, IMAGE_TOGGLE, RAW_TOGGLE are used.  On the other
+  hand, do force a proxy cache refresh after one of the variables relevant
+  for content negotiation `language' or `pref_charset' has been changed
+  from the Options screen, if the current document is from a http, https, or
+  lynxcgi resource. - KW
+* Set HTTP_ACCEPT_CHARSET environment variable for the child process in
+  LYCgi.c if pref_charset is not NULL. - KW
+* (chartrans) Write a META tag with the current display character sets to
+  the files generated for Bookmarks, List, Info, History, and Visited Links
+  pages, so title strings contained in those files will (hopefully) not
+  get erroneously translated again.  Use new function LYaddMETAcharsetToFD()
+  in LUCharUtils for this purpose. - KW
+* (chartrans) makeuctb now sets RawUni to UCT_ENC_8BIT if not otherwise set
+  and if there are char values above 127. - KW
+* (chartrans) Change in HTuncache_current_document() to prevent caching of
+  UCStages info which should be discarded.  Still allow caching for this
+  in the node_anchor for source display, so that a META tag in the parsed
+  HTML can influence the display after using the SOURCE '\' key. - KW
+1997-05-14
+* Don't use title in showlist() if it is empty, to prevent "hidden links"
+  on the List Page itself caused by documents with <TITLE></TITLE>. - KW
+* Changed display_title() in GridText.c to not rely on sprintf() to get
+  the number of blanks right. - KW
+* (chartrans) Added new lynx.cfg symbols ASSUME_CHARSET,
+  ASSUME_LOCAL_CHARSET, and ASSUME_UNREC_CHARSET.  They are only
+  recognized if compiled with -DEXP_CHARTRANS.  They correspond to the
+  command line options -assume_charset, -assume_local_charset, and
+  -assume_unrec_charset.
+  The default for ASSUME_CHARSET is iso-8859-1 (corresponding to display
+  character set "ISO Latin 1").  If no ASSUME_LOCAL_CHARSET is set,
+  the explicit or default value for ASSUME_CHARSET will also be used for
+  local files.  ASSUME_UNREC_CHARSET has no default.  See added text
+  in lynx.cfg. - KW
+* (chartrans) Changes in LYCharSets.c to HTMLSetCharacterHandling() and
+  HTMLSetUseDefaultRawMode() to support (hopefully) more consistent
+  and user-friendly handling of raw mode and its default.
+  Note that the following description does not apply if the display
+  character set is one of the CJK settings.  In that case, -raw and
+  the corresponding Options setting is used as a CJK toggle as before.
+  Note that the -raw flag is a toggle.  It changes the "raw mode"
+  setting from the default.  The current setting of "raw mode" can be
+  seen on the Options screen, and is also shown in a statusline message
+  when the RAW_TOGGLE key (normally '@') is used.
+  The default depends on the display character set (as previously)
+  but now also on the ASSUME_CHARSET setting (as determined by a setting
+  in lynx.cfg, possibly overridden by -assume_charset on the command
+  line, or the default iso-8859-1).  When the display character set
+  corresponds to the ASSUME_CHARSET, the default for "raw mode" is ON,
+  otherwise it is OFF.
+  The effect of "raw mode" on the interpretation of documents which have
+  no explicit charset label (from HTTP headers, a META tag, or otherwise)
+  is as follows.  There is an internal "assume charset" which may differ
+  from the user-specified ASSUME_CHARSET value.  When "raw mode" is set
+  ON, the internal variable is set to correspond to the display character
+  set.  When "raw mode" is set OFF, the internal variable changes to
+  the user-specified ASSUME_CHARSET or, if that also corresponds to the
+  display character set (so that otherwise there would be no change),
+  reverts back to the iso-8859-1 Web default.
+  Raw mode doesn't imply total rawness.  HTML character entities may
+  be expanded and translated with either setting, 8-bit characters which
+  are inappropriate for the display character set will not be sent to
+  the terminal.  For a "more raw" setting, try the "Transparent" pseudo
+  display character set. - KW
+1997-05-13
+* Changed the compilation default in userdefs.h for USE_TRACE_LOG
+  to FALSE, for now. - KW
+* Code for "fixing" of relative http and https URLs which start with a
+  ../ segment from FM added, but it has to be enabled with the new
+  lynx.cfg symbol STRIP_DOTDOT_URLS (default currently set to FALSE).
+  See FM's description under 1997-04-23. - KW
+* Changed the test for dot segment fixing in LYLegitimizeHREF() so
+  that now (if enabled) it also applies when the http or https base URL
+  in effect does have a non-empty path but without any slashes in it
+  (beyond the initial one between host and path).  The test was too narrow
+  before and did not recognize this case, so that an unmodified URL with
+  ../ in it would still be sent to the server and without generating a
+  statusline message. - KW
+* Tweak of case LYK_REFRESH: in LYMainLoop.c so that the REFRESH command
+  still invokes an obligatory, complete refresh of the screen for slang
+  on Unix with the new LY_SLclear() function (see 1997-05-09 mods),
+  by using scrollok() if USE_SLANG is defined. - FM
+* Changed the local variable name, lines, in follow_link_number() of
+  LYGetFile.c to nlines, to deal with the AIX 4.2 bug of treating lines
+  as a macro.  Also changed the variable name, pages, to npages for
+  logical complementarity (they both refer to the total number). - FM
+* Mods in HTML.c, LYCharUtils.c and GridText.c to deal with links for
+  positioning, specified via NAME or ID attributes, when they are embedded
+  in Anchors which have an HREF, so that they now don't force premature
+  closing of those Anchors.  Also tweaked the code for creating links for
+  the sources of images or other for-GUI embedded objects when clickable
+  images ('*') is toggled on, so they use those mods as well, when
+  possible.  Note, however, that the clickable images feature is creating
+  Anchors with HREFs which aren't actually there, and still can create
+  technically invalid markup, on occasion, when the non-doctored markup
+  actually is valid.  The latter mods still need some improvements in the
+  formatting, but are OK to use for now, and my brain hurts from trying
+  to think through all the possible markup we might encounter. - FM
+* Tweaks of the Lynx Trace Log handling to deal with reloads when the
+  HText structure for the log has been dumped.  Made the first letter
+  of the filename uppercase (Lynx.trace), complementary to Lynx.leaks.
+  Eliminated the log from the Visited Links Page so it can't be sought
+  there as a forward link.  Use the History Page if you want to 'd'ownload
+  the log, or use the 'p'rint option while viewing the log.  Note that
+  suffix maps do tail matching, and thus the so-called suffixes need not
+  begin with a dot.  If you want to use an external viewer for the log,
+  you can put:
+  	SUFFIX:Lynx.trace:application/x-LynxTrace
+  	VIEWER:application/x-LynxTrace:most +s %s
+  in your lynx.cfg, or their equivalents in your mime.types and mailcap
+  files. - FM
+* Tweaks in LYMainLoop.c to set newdoc.title for various special pages
+  generated by Lynx (History Page, Info Page, etc.) and when following
+  a link. - FM
+* Small change to the heuristics for New_DTD in start_element()
+  in SGML.c (try a bit more to close containing element if it's the
+  same tag) - KW
+1997-05-12
+* Added support for proxy authentication. - AJL, FM
+* Updated follow_help.html to indicate that 0 is the universal
+  F_LINK_NUM mapping for invoking the "Follow link (or ...) number:"
+  prompt. - FM
+1997-05-11
+* Tweaks in LYMainLoop.c to ensure that the LYforce_HTML_mode flag is
+  reset reliably, so it doesn't carry over to requests for text/plain
+  documents, as it was doing under some circumstances in the vanilla
+  code, e.g., when a bookmark file was used as the startfile via a
+  file://localhost/path URL rather than via the -book switch. - FM
+* Very minor change in Lynx_users_guide.html, added two words - KW
+1997-05-10
+* Fixed a typo in statusline() of LYUtils.c.  The check for whether
+  the string is zero length before bothering to convert CJK multi-bytes
+  was checking a holding buffer instead of the string. - FM
+* Fixed a bug in LYHandleMETA() of LYCharUtils.c.  The check for a
+  URL following the SECONDS value in REFRESH directives was not
+  taking into account that an EOL might follow the digits for the
+  SECONDS value. - FM
+* Changed the behavior of boolean_choice() in LYOptions.c so that the
+  cursor is positioned immediately at the option display line instead
+  of staying at the statusline instructions until an initial entry is
+  made, and modified the statusline instructions accordingly. - LE, FM
+* Added a check for a NULL pointer in the LYCookie.c code for blocking
+  sharing of SSL encrypted cookies with http servers, based on a patch
+  from RT, and added a comment on why code for a block based on the
+  scheme is there, despite its being redundant with the current blanket
+  restriction based of the ports. - FM
+* Mapped 0 to F_LINK_NUM (as suggested by KW), so that 0 invokes the
+  "Follow link (or goto link or page) number:" prompt under all
+  circumstances (but with the 0 not treated as the first digit of
+  the number entry).  That's a better way
+  to do it, because then the F_LINK_NUM command and explanation always
+  appears in the "Current Key Map" display, and only the mappings of
+  numbers to functions drop out when going from NUMBERS_AS_ARROWS to
+  LINKS_ARE_NUMBERS mode (as they should, 'cuz the numbers no longer
+  are mapped to functions; though maybe they should stay mapped to
+  functions now that we have an explicit command key for invoking the
+  prompt; something to think about...). - FM
+* Updated the PROBLEMS file to indicate that you should try changing
+  -lresolve to -lbind if you have upgraded to the bind-8.1 or later
+  library on a Sun system and keep getting the message "Alert!:  Unable
+  to connect to remote host". - FM
+1997-05-09
+* Typo fix in follow_help.html. - FM
+* Added an LY_SLclear() function in LYCurses.c as a more efficient
+  substitute for slang of the curses clear(), based on a patch from
+  JED. - FM
+* Added a USE_TRACE_LOG compilation (userdefs.h) symbol and -tlog command
+  line toggle of the compilation default (normally TRUE), for directing
+  syserr messages to a lynx.trace file in the user's home directory when
+  TRACE mode has been turned on (either via the -trace command line switch,
+  or the TOGGLE_TRACE (Control-T) command.  Also added a TRACE_LOG command
+  (normally ';') for viewing the "Lynx Trace Log" (lynx.trace) at any time,
+  if one has been initiated during the current session.  The trace log
+  feature is disabled automatically in anonymous or validation accounts,
+  and should not be used in any account which could have different users
+  simultaneously.  The mods work well to the extent I've exercised them
+  thus far on VMS and for the solaris2 target, but possibly need more
+  refinements, depending on the behavior for other Unix flavors of
+  freopen(), which is used for redirecting stderr to the log.  Updated
+  lynx.man, lynx.hlp, and the online 'h'elp to describe these new
+  features. - FM
+1997-05-08
+* Made the handling of hidden links dependent on a new command line
+  option.  With -hiddenlinks=listonly hidden links are only shown on
+  'l'ist screens and listings generated by -dump or from the 'p'rint
+  menu, but appear separately at the end of those lists.
+  With -hiddenlinks=ignore they don't appear even in listings.
+  With -hiddenlinks=merge hidden links are treated as before,
+  i.e., they show up as bracketed numbers if LINKS_ARE_NUMBERED is on,
+  and are numbered together with other links in the sequence of their
+  occurrence in the document.  The default is -hiddenlinks=listonly.
+  Changed the new follow_help.html file accordingly.
+  This may help obviate an apparent need to call something a bug which
+  others regard as a feature... - KW
+* Function HText_AreDifferent() updated as in FM's code, but still
+  unused. - KW
+1997-05-07
+* Added another argument in follow_link_number() of LYGetFile.c for
+  returning the number entered at the "Follow link (or page) number:"
+  prompt to the mainloop(), and modified the statusline error messages
+  that may be issued from the mainloop() in conjunction the with 'g' or
+  'p' suffixes so that they report that number when appropriate. - FM
+* Changed the prompt to "Follow link (or goto link or page) number:" - KW
+* Tweaked case HTML_DD: in HTML.c so that it checks whether a wrap
+  has just occurred naturally before imposing a newline for DD start
+  tags.  Without that check, seemingly random, extra newlines could
+  occur in the DL/DT/DD blocks. - FM
+* Created a follow_help.html for the keystroke_commands subdirectory
+  of the online 'h'elp, describing the "Follow link (or page) number:"
+  features, and added links to it in Lynx_users_guide.html and
+  keystroke_help.html. - FM
+* Changed the help description according to what is implemented here - KW
+1997-05-06
+* Further tweaked KW's mainloop() tweak (see yesterday's entry), so that
+  newdoc.link is reinitialized properly when we're going to, but not
+  ACTIVATE-ing, a link in the current page due to a 'g' suffix for a
+  "Follow link (or page) number:" entry.  Otherwise, if the number with
+  a 'g' suffix was used to make the last link on the current page the
+  current link, and then a NEXT_LINK command was used, one could end
+  up on a link beyond the first one in the next page.  Also added a
+  statusline message if the 'g' suffix is used with a number which
+  corresponds to a link that already is current. - FM
+* Tweaked yesterday's LYList.c mods so that an OL with the CONTINUE
+  attribute is used when a "Hidden links:" list is appended to a
+  "Visible links:" list and NUMBERS_AS_ARROWS mode is on.  This allows
+  you to see the number to enter at "Follow link (or page) number:"
+  prompts, as when LINKS_ARE_NUMBERED mode is on. - FM
+* Mods in HTML.c for LI and LH handling so that a pointless wrap will not
+  occur at the spacer following the bullet in UL blocks or the Arabic
+  number, Roman numeral, or upper- or lowercase letter in OL blocks if
+  the subsequent text has no spaces, itself, up to the right margin.
+  In such cases, that text now stays on the initial LI or LH line, and
+  wraps at the right margin to the left indentation for a second or
+  greater line in the LI or LH. - FM
+* Changes to avoid memory leaks in LYCookie.c - KW
+* Escape '<' and '>' characters (using the LYEntify functions) in URL
+  strings written to the temporary files for LIST and INFO screens, to
+  avoid invalid HTML and corrupted display as a result of URLs which
+  contain these characters (although they shouldn't) and have not been
+  escaped earlier. - KW
+* Changed the label for the currently selected link from "Filename:"
+  to "URL:", and fixed an alignment glitch for the 9th item on the
+  History and Visited Links pages. - KW
+* Changed an "8-bit" occurring in HtInit.c to "8bit", tweaked LYKeymap.c
+  comments. - KW
+1997-05-05
+* Added HText_AddHiddenLink(), HText_HiddenLinkCount(), and
+  HText_HiddenLinkAt() functions in GridText.c for keeping track of the
+  addresses (URL, plus fragment if present) for links that were converted
+  to hidden by HText_endAnchor() due to their having no visible link name,
+  and modified showlist() and printlist() in LYList.c so that if any hidden
+  links were create during the rendition, the "References in this document:"
+  menu for the 'l'ist command or appendix on dumps segregates and clearly
+  labels the visible versus hidden links. - FM
+* Plugged a memory leak in LYEntify() of LYCharUtils.c. - FM
+* Modified experimental DTD info to not close anchors when an invalid
+  P, H1-H6, or ADDRESS start tag is encountered, and to change error
+  recovery for P and MAP. - KW
+* Modified experimental DTD info and HTML.c to not close PRE when
+  an invalid FORM start tag is encountered, and to use the appropriate
+  handling for preformatted text if PRE is in effect but is not the top
+  element on HTML.c's stack.  The HTStyle structure's freeFormat (which
+  wasn't used anywhere before) is now used as one test whether we are
+  within preformatted text, also corrected the style setting of freeFormat
+  for PRE in DefaultStyle.c. - KW
+* Changed internal gateways (in HTNews.c, HTFile.c, HTWAIS.c, HTWSRC.c)
+  to end LI, DT, and DD elements if they are not declared SGML_EMPTY,
+  so that HTML.c's stack won't get overloaded in this case. - KW
+* Tweaks in mainloop() handling of DO_GOTOLINK_STUFF and DO_GOTOPAGE_STUFF.
+  Going to a link with the 'g' suffix and then immediately ACTIVATing that
+  link could previously show the wrong page of the new document, since
+  newdoc.line was not being reset. - KW
+1997-05-03
+* (chartrans) Now always check for LYlowest_eightbit[current_char_set]
+  near the top of HText_appendCharacter(), to prevent writing C1 control
+  chars to the terminal if they are not valid as displayable characters
+  according to the selected "display character set" Option.
+  All this should be handled earlier in processing, and this check may
+  disappear again for testing, but somebody asked for it... - KW
+* (chartrans) Small changes to README files. - KW
+* In the section of HTUtils.h for non-autoconf builds, don't set
+  HAVE_KEYPAD or HAVE_TTYTYPE if USE_SLANG is defined. - KW
+* Modified HText_LinksInLines() to not count hidden form fields. - KW
+* Added support for setting an anchor's no_cache element based on a
+  comparison between Expires and Date headers if both were received
+  and we didn't set it based on a Cache-Control directive.  Also
+  added equivalent support for a comparison between an Expires value
+  from a META tag and a Date header.  We still compare Expires header
+  or META values versus the system time if no Date header was received,
+  and still do not accept Date values from META tags because they are
+  unlikely to be reliable. - FM
+1997-05-02
+* Fixed a bug in LYAddImageMap() of LYMap.c which could cause multiple
+  insertions of the same MAP into the LynxMaps structure, and crashes
+  on some systems due to the consequent multiple FREE()'s at exit. - FM
+1997-05-01
+* More mods in HTML.c, LYCharUtils.c and GridText.c for rational handling
+  of potentially wrapped form fields in PRE blocks.  We now artificially
+  wrap the line if the form field would start within 6 columns from the
+  right margin.  This makes sure that editing windows and the highlighted
+  segments of submit or reset buttons will not ever be ridiculously short,
+  and is homologous to our use of a collapsible space before input fields
+  and buttons when not in PRE blocks to promote a wrap there instead of
+  within the fields or buttons. - FM
+* Expanded the WHEREIS query support so that it also locates the values
+  of form fields within the current document and repositions or pages
+  accordingly, as for normal (Anchor) links and for text strings.  Note
+  that if the hit was for an OPTION value in a retracted SELECT popup,
+  you are positioned on the retracted window, and must pop it up and
+  search again to be positioned on the OPTION value with the hit, unless
+  it already is the selected OPTION.  The mods are hairy enough without
+  trying to do the latter automatically, at least for now. - FM
+1997-04-30
+* Quote the URL for external command (not for VMS or DOS or Windows)
+  to avoid dangerous chars and shell spoofing. - KW
+* Escape characters properly when constructing URLs from filenames
+  in LYConvertToURL.  If a string given for startfile, home page, or
+  a goto command which does not already have the form of an absolute
+  URL starting with an URL scheme and which does not start with '~'
+  (but may start with '/') specifies an existing file or directory in
+  valid Unix-like format for the native filesystem, i.e., without using
+  escaping, it gets URL-escaped, otherwise it is assumed to already
+  be URL-escaped. - KW
+1997-04-29
+* Updated RP Styles 0.2 code, don't allow comma as separator between
+  fg and bg colors after all, fix the LYNX_VERSION string generation
+  in userdefs.h to have `-Styles' appended *within* the quoted string. - KW
+* Added support for a 'p' suffix, like the 'g' suffix for making a link
+  number the current link rather than ACTIVATE-ing it,
+  but for displaying the page indicated by the number preceding the
+  'p' suffix entered at the "follow link (or goto link or page) number:"
+  prompt.  [...]  If the number
+  entered at the prompt is '1' or less followed by the 'p' suffix, or only
+  'p' is entered, you get the same behavior as for the HOME command.  If
+  the number is equal to or greater than the number of pages, you get the
+  last page displayed as you would if you had used successive PAGE_DOWN
+  commands from the HOME position to reach it.  This differs from the END
+  command, which fills the screen with lines from the end of the document
+  if you are not already displaying the end of the document.  Note that if
+  you enter a number without a suffix (to ACTIVATE the link with that number)
+  or with the 'g' suffix (to make the link with that number the current link)
+  it must correspond to a valid link number or an error statusline message
+  will be issued, in contrast to the 'p' suffix for which an out of range
+  number is treated as a request to display the first or last actual page in
+  the current document. - FM
+* Fixed some typos in lynx.man. - LV
+* More modifications of the anchor counting code for HTGetLinkInfo() in
+  GridText.c so that it properly skips hidden form fields and anchors
+  without selectable text. - KW
+* More modifications in GridText.c and HTML.c so that it deals rationally
+  with submit or reset button values, and the underscore placeholders for
+  other form fields, when in versus not in PRE blocks.  The entire submit
+  or reset button values are now always displayed, whether or not a portion
+  of it was wrapped, but we still can only highlight the portion before the
+  wrap to indicate a link for submission of the form or for resetting the
+  form field values. - FM
+* Undid some mysterious changes in SIGHUP setting (SIG_IGN vs. SIG_DFL)
+  which had sneaked in in connection with adding the NOSIGHUP
+  conditional. - KW
+* Tweaks to New DTD's extra info for CENTER and H1..H6 - KW
+* New function HText_AreDifferent() from FM added to GridText.c, but
+  not used yet. - KW
+* Tweaks to WB's additions for external command: use strncasecomp, add
+  LYExtern.o to src/makefile.in, changed test for empty command. - KW
+* Changed LYKeymap.h and LYKeymap.c so they agree about the symbols
+  assigned to the new keys (SWITCH_DTD, EXTERN). - KW
+* correct minor syntax err that caused SCO 3.x to fail make-include
+  autoconf test.  also, eliminate whitespace before '#' that causes
+  compile-fail on K&R compilers. - TD
+1997-04-28
+* Updated lynx_url_support.html so as to make clear that the offer to
+  include the currently displayed document with right-angle-bracket
+  prefixing for mailto, newsreply, and snewsreply URLs is made only if
+  the user has defined an external editor via the Options Menu, and that
+  the user is expected to edit this inclusion so that it retains only
+  those passages relevant to the email or followup message which the
+  user will add. - FM
+* Tweak of INPUT handling in HTML.c so that we use nbsp instead of any
+  spaces when loading a submit or reset button's actual value instead
+  of a series of underscores into the HText structure, so that we
+  still promote a wrap, if needed, at the space we ensured would be
+  present before each INPUT. - FM
+* Made first_option a structure member rather than a static variable
+  in HTML.c - KW
+1997-04-27
+* Tweak of Control-C and Control-G handling for popup_options() in
+  LYForms.c.  They were being sought improperly as command keys rather
+  than as raw keyboard entries.  Note that only Control-G should be
+  used as "cancel" within popup windows on Unix, because Control-C
+  is not being trapped to a handler as on VMS. - LE, FM
+* Tweak of the anchor counting code for HTGetLinkInfo() in GridText.c
+  so that it takes form fields into account when making a link current
+  based on a "Follow link number" entry with the 'g' suffix.
+  Also added comments to that code. - KW
+1997-04-25
+* Added information in the "Lynx bookmarks" section of the Users Guide
+  about appropriate versus unsupported modifications when editing the
+  bookmark files. - FM
+* RP Styles 0.2 fixed a bit and brought up to current experimental code
+  level (no autoconfig or simple-curses, only older version of Wayne's
+  mods, maybe something else is missing, too).  No documentation, no
+  detailed checking, no real cleanup.  Makefile slightly adapted,
+  but still needs changing for new systems - see comments there. - KW
+1997-04-24
+* Tweaks for enhanced mouse support in Win32 and hooks for 386 which
+  doesn't have mouse support yet. - WB
+* External command added.  See LYExtern.* in src and lynx.cfg.
+  You need to define USE_EXTERNALS to compile this in. - WB
+1997-04-23
+* Modified LYCharUtils.c, HTML.c and LYMessages_en.h so that if a
+  partial reference (HREF or SRC value) would be resolved to an http
+  or https URL which has only two dots as the first symbolic element in
+  the path (e.g., http://host/../foo.html), such that the server would
+  reject the request, that element is excluded from the resultant URL,
+  but a statusline message is issued (once per document) about a bad
+  partial reference, as immediate feedback which might lead to the
+  document provider correcting the bad partial reference(s).  We still
+  retain that first symbolic element, in compliance with the IETF RFCs
+  and IDs for resolving URLs, with other URL schemes (e.g., ftp). - FM
+* Added a skip_stack int to the HTML.h struct _HTStructured, to use
+  for flagging that the next call to HTML_start_element or
+  HTML_end_element is an internal shortcut and should skip pushing
+  or popping the HTML.c paragraph style stack even for elements
+  that are not declared SGML_EMPTY.  Added a SET_SKIP_STACK macro
+  to HTML.c to set the flag, use it. - KW
+* Changes to HTML.c to better deal with a number of elements which may
+  or may not have been declared SGML_EMPTY in HTMLDTD.c:
+  if the last stacked element is HTML_OPTION, treat text as for
+  HTML_SELECT in HTML_put_character and HTML_put_character and
+  HTML_put_string.  Added handling code for </P> to HTML_end_element
+  (similar but not identical to that for P in HTML_start_element).
+  Added check whether a SELECT is still open to FORM handling in
+  HTML_end_element.  Added check whether a FORM is open to SELECT
+  handling in HTML_end_element.  Added cases for end tags of
+  TABLE-related elements (TR, THEAD, TFOOT, TBODY, COLGROUP, TH, TD)
+  and of DT, DD, LH, LI, FONT, OVERLAY to the switch in
+  HTML_end_element, currently just break from the switch. - KW
+* Some tweaks and corrections to the additional element info and
+  to the content types used with New_DTD, in HTMLDTD.c.  Made
+  OPTION non-empty. - KW
+* Now changed the tags_old[] in HTMLDTD.c, which is used with the
+  switchable "old" SGML parsing, to follow the changes for A, B,
+  BLINK, CITE, EM, FONT, I, STRONG, and U mentioned in the entry
+  of 1997-04-15.  These, together with FORM and P, are all declared
+  as SGML_EMPTY now when the "old" SGML parsing is in effect, but
+  not with new parsing. - KW
+* Changes to LYMail.c and LYPrint.c to send Content-Transfer-Encoding
+  headers and/or a charset parameter when mailing, based on idea from
+  Hynek Med.  Don't use charset if we only have 7-bit characters
+  anyway.  If compiled with EXP_CHARTRANS, use MIME name corresponding
+  to display character set if it looks valid (not "x-"), otherwise
+  only an explicitly given document charset.  In the chartrans case,
+  don't send charset parameter for CJK since it may be wrong... - KW
+* Added TRACE output to UCAuto.c - HM
+1997-04-22
+* refined check for slang libraries/headers by checking if $CFLAGS has been
+  set so that slang.h is in the search path - TD
+* add check to allow use of broken ncurses 1.9.9e's color - TD
+* add check for NGROUPS, TRUE, FALSE macro definitions - TD
+* remove top-level makefile.in targets that can be combined with the generic
+  target (more work required on the remaining ones) - TD
+* Plugged memory leak in deleteLinks() of HTAnchor.c. - KW
+* When dumping or outputting a rendered document via the 'p'rint menu,
+  Lynx would use the underscore placeholders for submit/image/reset
+  buttons as for other INPUT fields.  We now load the values of
+  submit/image/reset buttons instead of placeholders into the HText
+  structure, so the values will be seen when dumping or outputting
+  via the 'p'rint menu.  See the comments under case HTML_INPUT: in
+  HTML.c for the still less than optimal things that happen if a
+  wrap occurs within the INPUT value or placeholder strings, as might
+  happen in PRE blocks, or for strings wider than the screen. - LE, FM
+* SGML_abort() did not free memory used by the SGML.c parser stack.
+  Now it does, but still doesn't call HTML_end_element() for the
+  stacked elements (it's an abort after all...) - KW
+1997-04-21
+* Tweaks of the 1997-04-11 and 1997-04-09 mods in HText_endAnchor() of
+  GridText.c so as to take possible wrapping of Anchor content into
+  account when deciding whether or not to implement the Anchor as an
+  ACTIVATE-able link. - FM
+* New SGML.c parser, and new HTMLDTD.c with additional element info.
+  Extra content information for each tag is now included in the
+  HTTag structure, and given in an extended tags_new[] table in
+  HTMLDTD.c.  Modified start_element() and end_element() in SGML.c
+  to perform some heuristic wind-downs of the parsing stack, based
+  on the extra element info. - KW
+* Revert treatment of some tags which were treated as SGML_EMPTY
+  before to their "natural" content model.  No changes made to
+  HTML.c to accommodate this change, so results may differ where
+  HTML.c relies on previous hacks or has now handling code for
+  end tags of elements which were previously SGML_EMPTY. - KW
+* Made SGML parsing switchable between old and new HTMLDTD info
+  and SGML.c code, controlled by a New_DTD global variable and
+  LYK_SWITCH_DTD toggle key.  Use (temporarily?) ^V for the toggle key.
+  This is not yet changeable via command line, lynx.cfg, etc., and the
+  default is New_DTD==YES (so that it gets tested :-) ). - KW
+* Made some of the error messages before exit in LYMainLoop.c and
+  LYMain.c go to stderr instead of stdout, but only for UNIX and,
+  in the case of the LYMainLoop.c messages, only if
+  dump_output_immediately was in effect. - KW
+1997-04-20
+* Tweaks in LYCharUtils.c to bind META CONTENT to a header value only
+  via an HTTP-EQUIV attribute (i.e., not via a NAME attribute). - FM
+* Mod in HTAccess.c to ignore the anchor's no_cache element if we're
+  seeking a position in the currently loaded document. - FM
+* Commented out the above change in HTAccess.c.  There's a more complete
+  mechanism for it already in this code... - KW
+* Fixed a typo in the bookmark file lead text. - DK (Doug Kaufman
+  <dkaufman@rahul.net>)
+1997-04-19
+* Changed the inappropriate StrAllocCat() to StrAllocCopy() for
+  loading the XLOADIMAGE_COMMAND in LYReadCFG.c. - PC
+1997-04-18
+* Based on recent discussions in www-html@w3.org, added HY and SHY
+  to the DTD (treated as synonyms; one or the other is most likely
+  to be used in future HTML specs, so for now, we support both), as
+  markup equivalent to the named entity &shy; and numeric character
+  reference &#173; (soft hyphen).  Note that Lynx implements soft
+  hyphens as specified in IETF RFC 2070 (link "HTML i18n" in the
+  Users Guide).  Use of a tag instead of entity is preferable for
+  a soft hyphen because browsers which do not support soft hyphen
+  will ignore it as an "unknown tag" instead of inappropriately
+  inserting a hyphen or displaying the raw entity.  Also added WBR,
+  which is handled like soft hyphen (indicating a permissible wrap
+  point), but does not insert a hyphen at the wrap. - FM
+1997-04-17
+* Mods in HTML.c, HTML.h, and LYMessages_en.h to issue an HTML stack
+  overrun message only once per document, and as a statusline message
+  if not in TRACE mode, and to check in HTML_end_element() for
+  correspondence between the SGML and HTML stacks if an overrun should
+  occur. - FM
+* Corrections in HTML.c for the bounds checks associated with DIV and
+  CENTER nesting levels, and for an HTML stack underrun. - KW
+* Plugged a memory leak under case HTML_IMG: of HTML_start_element() in
+  HTML.c, and removed an inappropriate if(){} in HText_endAnchor() of
+  GridText.c. - FM, KW
+* Modified the lead text created for bookmark files in LYBookmark.c so
+  that it indicates that an editor can be used to delete or reorder
+  the links, but that the format within lines should not be changed,
+  nor other HTML markup added.  Note that the new lead text will be
+  used only when new bookmark files are created via the 'a'dd bookmark
+  link command.  A new bookmark file is not created if the one being
+  sought already exists, so existing ones will still have the old
+  lead text. - FM
+1997-04-16
+* Extensive changes to try to keep track of whether a document (or
+  a location within it) was reached by an internal (fragment-only)
+  URL reference or not.  The basic idea is to be serious about I-D
+  (currently) draft-fielding-url-syntax-04.txt.
+  URL references starting with '#' are always to the current
+  document (from which the reference is made). This leads to a
+  lot of hackery in HTML.c, LYMainLoop.c, LYHistory.c, etc. etc...
+  to distinguish a doc that was reached by an "internal" reference
+  from others.  But it seems necessary to keep track of how the
+  reference to a fragment was specified, whether with a non-empty
+  "real" URL (possibly relative) preceding the '#' or without it,
+  all the way way from the HTML parsing to the mainloop.  Only then
+  can the mainloop decide to not start a new retrieval for an internal
+  reference without skipping a new retrieval if a full URL reference
+  with fragment is made to a location in the same document (which
+  may be non-cachable or the result of a POST)...
+  This code prevents unnecessary/inappropriate POST form resubmissions
+  on following an internal link in a POST response, as they are
+  present for example in WebTechs validation results. - KW
+* A "Goto numbered link" feature.  The user interface could be improved...
+  Start typing the link number, then add 'g' before hitting enter - KW
+* Some improvements to WHEREIS search.  Will not always position
+  found string on first line (details depend on whether anchors are
+  present, usually will position in top third of screen), and avoid
+  some unnecessary screen updates. - KW
+1997-04-15
+* Miscellaneous additional tweaks in HTML.c for more robust error recovery
+  from bad HTML involving emphasis or style elements (B, BLINK, CITE, EM,
+  FONT, I, STRONG, and U), or HREF-less NAME-ed Anchors without matching
+  end tags. - FM
+* Modified the declarations in HTMLDTD.c and code in SGML.C, HTML.c, and
+  GridText.c to handle A, B, BLINK, CITE, EM, FONT, I, STRONG, and U
+  container elements homologously to the modified handling of FORM (see
+  1997-04-05 mods) so that if they are invalidly interdigitated or have
+  spurious end tags in the markup, substitutions of the "expected" end
+  tags by the SGML.c stack-based parser will not be made, and without
+  messing up the HTML.c stack-based parser.  Appears to work reliably
+  for all of the elements, and to be reasonably crash safe (hopefully
+  as safe as the vanilla v2.7.1), but there are no guarantees. - FM
+* Only *some* (most?) of the changes described in the above two
+  entries are used, as far as they change HTML.c.  Not yet using the
+  changes to HTMLDTD.c and SGML.c. - KW
+* refined logic of SVr4 curses color support to test the no_color_video
+  attribute - TD
+* ifdef'd NCURSES_MOUSE_VERSION logic to allow build with ncurses 1.9.4 - TD
+* ifdef'd wgetbkgd misspelling to allow build with ncurses prior to 1.9.9g - TD
+* document USE_MOUSE configuration-option - TD
+* modify configure script and makefile.in templates to make BSDI_Makefile
+  obsolete - TD
+* rename config.h to lynx_cfg.h to minimize conflict when configuring against
+  ncurses or slang in nonstandard locations - TD
+* new autoconf macro CF_HEADER_PATH is used to make header-search for slang
+  the same as ncurses - TD
+* modify CF_CURSES_LIBS, CF_NCURSES_LIBS and CF_SLANG_LIBS to accommodate
+  predefinition of $LIBS variable - TD
+* corrected autoconf'd compiler flags for Ultrix - TD
+* add config.guess & config.sub to allow specialized host-type checks - TD
+* guard against redefinition of NO_FILIO_H - TD
+* use new autoconf macro CF_SYSTEM_MAIL_FLAGS -JES
+1997-04-14
+* Tweaked LYAddImageMap() in LYMap.c so that it removes all pre-existing
+  AREA element entries when updating MAP element content, and set the
+  no_cache anchor element in LYLoadIMGmap() so that the updated MAPs
+  always will be used when rendering. - FM
+* Not using the no_cache change from last entry, until further
+  investigation. - KW
+* Removed two spurious lines under case LYK_PRINT: in LYMainLoop.c
+  (from an old cut and paste from case LYK_HISTORY: done too late
+  at night 8-). - FM
+1997-04-13
+* Modified the handling of BASE for resolving HREFs in relation to MAP
+  and AREA elements, and USEMAPs in IMG and OBJECT elements.  The
+  formally released code was treating such links equivalently to the
+  handling of fragments for positioning the display to ID-ed elements
+  or NAME-ed Anchors, and assuming they're in the same document if the
+  associated HREF value begins with a '#', rather than resolving versus
+  the BASE, and was always resolving versus the BASE for MAP ID or NAME
+  attributes, and for the AREA HREFs in MAP content.  We now always
+  resolve the MAP ID or NAME attributes versus the current stream's
+  address (since the MAP must be in it or we wouldn't be handling it)
+  [...] According to the
+  original draft and the current HTML 3.2 Proposed Standard,
+  MAPs need not be in the same document as the IMG or OBJECT elements
+  which specify links to the MAPs.  Because MAPs are "deferred objects",
+  they logically should be placed above any IMG or OBJECT elements which
+  reference them in the same document (as is done for SCRIPTs), but this
+  isn't stated in the specs, nor always done in practice.  [...]
+  ([A]uthors who place the MAPs further down in the same document should be
+  informed about "deferred objects" and encouraged to move them up 8-). - FM
+* Use logical extension of the rules for HREF references also for
+  USEMAP references to MAPs: relative URL references are resolved with
+  respect to a BASE element if one is present in the document where they
+  occur, unless they are URL references without a URL, i.e., only a
+  fragment starting with '#'.  In the latter case they are taken as
+  internal references referring to a MAP in the same document where
+  the USEMAP occurs, whether the MAP occurs before the USEMAP (as it
+  should, according to previous entry) or after the USEMAP.
+  HREF's in AREA elements follow the same rules. - KW
+* Fixed bug in HTML_free() for the case when LYMapsOnly is set.  We
+  didn't create an HText structure for the stream (just scanned it for
+  MAPs and processed them into LYMap.c's LynxMaps structure), nor do
+  we want to create a blank one (as was being done) since we didn't
+  render the stream, nor would we have a me->target set.  So we just
+  free any me elements that might still be allocated (though they
+  should have been freed already), and return rather than continuing
+  through the rest of the HTML_free() code. - FM
+1997-04-11
+* Fixed bugs in Gridtext.c and HTML.c which could cause mishandling
+  of anchors in LINKS_ARE_NUMBERS mode if a line wrap occurred in
+  the numbered bracket or the anchor content following the bracket,
+  and failures to suppress the numbered bracket if the anchor content
+  was empty due to ALT="" in an IMG tag, or if Lynx was configured or
+  toggled to suppress the link for the server-side image map if both
+  ISMAP and USEMAP attibutes were present in the IMG tag. - FM
+* Only using the number-removing code under additional conditions:
+  ISMAPs which appear together with USEMAPs and which are suppressed
+  with LYNoISMAPifUSEMAP in LINKS_ARE_NUMBERS mode. - KW
+* Extended the disk_save restriction to the print menu as well as
+  the download menu, and accordingly updated lynx.hlp, lynx.man, and
+  Lynx_users_guide.html. - HN, FM
+1997-04-09
+* Many changes to further the Win32 and 386 ports.  An emulation of
+  the HTVMS_ calls was used to try and cover all the DOS'izms.
+  A specialized ifdef for pdcurses color mapping added.  Some keypad
+  tweaks.  More generalized process spawning.  .lynxrc is lynx.rc for 386 - WB
+* Tweak to ensure that a newline isn't inserted by virtue of a
+  FORM start tag if it's in the first line of a list element and
+  no text precedes it other than a UL's bullet or OL's number
+  on that line. -  FM
+* Added pauses for the "Bad HTML" statusline messages under cases
+  HTML_HTML and HTML_BODY in HTML_end_element(), and eliminated
+  their checks for an unclosed FORM because we no longer expect
+  that to cause a serious problem. - LE, FM
+* Added a NO_ISMAP_IF_USEMAP configuration symbol and -ismap
+  command line toggle for suppressing inclusion of a link for the
+  server-side-image-map if an IMG or OBJECT element has both ISMAP
+  and USEMAP attributes such that a client-side-image-map link is
+  created.  Updated lynx.man, lynx.hlp and Lynx_users_guide.html
+  accordingly. - FM
+* Fixed a glitch in HText_endAnchor() of Gridtext.c which could
+  cause dangling Anchors in LINKS_ARE_NUMBERED mode if the Anchor's
+  content was handled in a manner which caused it to become zero
+  length. - FM
+* Moved handling for NEWS_POSTING in LYReadCFG.c to the right place,
+  so that it can actually have an effect. - LV
+* Typo fixes for the comment concerning NO_ANONYMOUS_EMAIL in
+  userdefs.h - HN, FM
+1997-04-08
+* New translation table koi8r_uni for KOI8-R charset.  Lynx can now
+  translate between iso-8859-5 and KOI8-R, at least for the Cyrillic
+  characters present in both. - KW
+* New translation table def7_uni with default 7-bit mappings
+  (replacement representation).  Based on RFC1345 and mnemonic,ds
+  from ftp://dkuug.dk/i18n/ and previous Lynx replacements
+  in LYCharSets.c and IPA FAQ convention and stuff for Ethiopic and
+  KOI8-R.  It maps many of the accented Latin characters present in
+  Unicode to their unaccented counterparts.  This table is now
+  used for the "7 bit approximations" display "character set". - KW
+* Entities for Latin2 characters added to HTMLDTD.c  These also
+  include many entity names for ASCII characters, and characters
+  which are in both iso-8859-1 and iso-8859-2. - Hynek Med
+* Changes to the non-chartrans translation tables in LYCharSets.c
+  for &Dstrok;, &ETH;, and &eth;.  Treat &Dstrok; more like
+  an entity for the (Latin-2) Unicode character U+0110, since
+  that seems to be SGML standard usage. - KW
+* Added mappings for some "smart quote" characters to several
+  translation tables. - KW
+* Make makeuctb slightly more flexible (accept unicode range for
+  mapping to single code point). - KW
+1997-04-07
+* Took out special-case handling in the curses-color code for underlining
+  when lynx is running under Linux using the linux console with color.
+  The code was introduced on 1997-03-12 and would ignore "smul" capability
+  info from terminfo or termcap under those circumstances, always using
+  bold instead of underline. - KW
+* Slightly modified the FORM handling patch of 1997-04-05, as follows:
+  Use a generic test for a non-SGML_EMPTY element for bypassing the
+  stack pop in HTML_end_element() of HTML.c instead of an explicit
+  test for HTML_FORM. - KW
+1997-04-06
+* Patch for IMG elements which have both ISMAP and USEMAP in effect.
+  In HTML_start_element() don't generate the "[ISMAP]-" string for
+  output in this case, unless clickable_images is set TRUE. - KW
+1997-04-05
+* Patch for Lynx v2.7.1 to handle invalidly interdigitated container
+  elements or spurious container end tags without substitutions of
+  "expected" FORM end tags by the SGML.c stack-based parser, and
+  without messing up the HTML.c stack-based parser.  Reliably succeeds
+  in not closing FORMs before all of the FORM elements, including
+  submit buttons, have been processed.  Should be reasonably crash
+  safe (hopefully as safe as the vanilla v2.7.1), but there are no
+  guarantees. - FM
+1997-04-04
+============================================================================
+---  Release of Lynx2-7 + BUGFIXES as Lynx v2.7.1 (April 4, 1997) by FM  ---
+============================================================================
+* Note that 2.7.1 was not a release from this code set, but all 2.7 -> 2.7.1
+  bugfixes and other changes are also included in this code set, in either
+  identical or equivalent form.  Therefore the entries below this point
+  comprise the 2.7 -> 2.7.1 changes, and additionally other changes made to
+  the development code set during that time. - KW
+1997-04-02
+* add Andrew Kuchling's patch to support mouse-clicks with ncurses. - TD
+* refine tests that address porting problems to SCO (detecting struct winsize,
+  workaround for misdefinition of 'remove') - TD
+* refine CF_COLOR_CURSES test to avoid ncurses 1.9.9e bugs. - TD
+* refine CF_PATH_PROG to allow for machines that haven't the given programs,
+  by using only the program name and added configure option
+  --disable-full-paths to enforce this behavior. - TD
+* fixes for some gcc compiler warnings (missing prototypes, unused variables,
+  uninitialized variables, shadowed variables). - TD
+* Fixed typos in LYHistory.c, LYMail.c and LYMain.c which caused
+  failures of flag setting in the distributed code. - TD
+* correct cast in HTFWriter.c that may break if atoi() is not prototyped. - TD
+* add top-level makefile target 'maintainer-clean', use this to remove
+  Lynx.prj - TD
+1997-03-31
+* Added a missing check for whether the fragment token is NULL in
+  LYConvertToURL() of LYUtils.c.  Without the check, the for-Unix code
+  could crash if a local file spec was entered as a startfile or goto
+  with escaped characters. - KW
+* Mod in HTML.c to retain "[INLINE]" as the default ALT string if an
+  IMG element has an ISMAP attribute but is not in Anchor content such
+  that it could not in fact function as a server-side image map. - FM
+1997-03-27
+* In mainloop(), after the call to HText_pageDisplay() following a change
+  of the document view, ensure that curdoc.link does not remain set to -1
+  if there are any links on the screen.  This would otherwise happen if
+  a document is pushed to the history stack while there are no links, and
+  later popped (and refreshed) after one or more links have been created.
+  This change prevents segmentation faults which occurred after creation
+  of a new file in a previously empty directory via the DIRED menu.  The
+  access to invalid memory only occurred if the screen showing the empty
+  directory did not have a parent dir reference link (which is always the
+  case if NO_PARENT_DIR_REFERENCE was specified at compilation time). - KW
+* In LYLocal.c, modified the code handling DIRED_MENU to do more careful
+  checking of the selected file.  In addition to "TAG", "FILE", and "DIR",
+  DIRED_MENU definitions in lynx.cfg now also recognize LINK as a type.
+  DIRED_MENU definitions with a type field of "LINK" are only used if the
+  current selection is a symbolic link ("FILE" and "DIR" definitions are
+  not used in that case).  The default menu definitions have been updated
+  to reflect this change, and to avoid the showing of menu items whose
+  action would always fail - KW
+* Some cleanup to eliminate compiler warnings, remove some unused
+  variables - KW
+* Fixed a typo and added comments for the code in LYMainLoop.c which
+  decides whether to load the URLs for homepage and/or startfile into
+  the goto buffer at startup.  The typo in the distributed code caused
+  the startfile URL always to be added to the goto buffer, even if
+  it had POST content such that it could be resent inappropriately
+  as a GET request via the goto buffer. - FM
+* Added a bsdi-slang target to the Makefile. - Laura Eaves
+1997-03-26
+* Changed highlighting of strings found by a WHEREIS ('/') search.
+  Now uses Christmas tree attribute combination ("all bits are on"),
+  which with color support translates to COLOR:7. - KW
+* Modified the HTStream structure and associated code in src/HTFWriter.c
+  so that we save and use the relevant content of the associated
+  HTPresentation structure as two HTFormat elements rather than via a
+  pointer to the HTPresentation structure itself, because the latter
+  structure might not be valid under some circumstances when
+  HTFWriter_free() is called.  The distributed code might indirectly
+  result in segmentation faults during downloading on Linux and some
+  other flavors of Unix (though they don't occur for most flavors, or
+  on VMS). - KW
+1997-03-23
+* Further reduction of top-level makefile.in by moving definitions out of
+  WWW/Implementation/*/Makefile, so only one is needed for autoconfigured
+  build (i.e., WWW/Implementation/unix/Makefile).  This highlights the
+  remaining differences between the top-level targets - TD
+* Make configure script generate Unix makefiles in subdirectories, a step
+  toward being able to run make from any directory, for development - TD
+* Add autoconf tests for paths of programs, including sendmail vs mmdf - TD
+* Add configure script options for development (--disable-echo, --enable-debug,
+  --enable-find-leaks, --enable-warnings) - TD
+* Allow user to override search path for ncurses header by setting $CFLAGS or
+  $CPPFLAGS - TD
+* Correct array limit in LYCurses.c for SVr4 color support - TD
+* Use addstr rather than printw in popup-forms to address concern about 8-bit
+  characters - TD
+1997-03-21
+* Changes in auto config handling of ncurses header location, function
+  used for reading terminal input, some other system dependent tweaks
+  (including SCO broken remove, time.h) - TD
+* Fix for popup handling with late ncurses versions (uses wprintw
+  instead of waddstr in LYForms.c) - TD
+* Mods in LYPrint.c to use ".txt" as the output file extension for
+  all rendered text/html files regardless of their original extension.
+  The distributed code was doing this only for ones with an extension
+  of ".html".  The original extension still is retained if the file
+  is being output as source. - FM
+* Added protection against passing a NULL pointer for path_url to
+  render_item() from dired_options() in LYLocal.c. - GN
+1997-03-20
+* Tweaked the protection against URLs directed to port 19 or port 25 so
+  that it can't be circumvented via lead zeros in the port numbers. - FM
+* Changed the compilation default so as not to send From MIME headers to
+  http or https servers.  The default can still be changed via lynx.cfg.
+  Replaced the -nofrom disabling switch to a -from switch for toggling
+  the compilation or configuration default.  Sending the From header
+  has become widely regarded as an invasion of privacy risk, particularly
+  in conjunction with cookie support. - FM
+* Corrected a typo in the lynx.cfg comments concerning TRUSTED_LYNXCGI
+  rules. - KW
+1997-03-17
+* Mods of LYNews.c and LYMail.c to prepend a "-- " separator before
+  appending the LYNX_SIG_FILE signature file to news and email
+  messages. - FM
+* Made the installation mode 755 in the top-level Makefile.  The
+  distributed code used 555, and some install commands were unable
+  to do the strip. - LV
+1997-03-14
+* Corrected typos and expanded the comments concerning lynxcgi symbols
+  in userdefs.h and lynx.cfg. - FM
+* Modified SGML.c to handle the numeric character reference &#8482; as
+  the named entity &trade; also in the non-chartrans case.  The
+  trademark character (given by &#8482; or &trade;) will be shown as
+  "(TM)" as the ASCII substitution unless the current display character
+  has a code point for the trademark character or unless overridden by a
+  chartrans translation table.  The code of 1997-02-25 prevented showing
+  the trademark sign as "(R)" but did not work in all non-chartrans
+  cases. - KW
+* Include time.h via tcp.h for SVR4 systems.  The tcp.h header does include
+  sys/time.h for Unix systems, but this apparently doesn't get  struct tm
+  and  extern char * ctime()  declared for SVR4. - FM
+1997-03-13
+* Added protection in LYGetFile.c against connections to the port 25
+  ESMTP service. - FM
+1997-03-12
+* (chartrans) Make compilation in src/chrtrans less verbose, no more
+  generating automatic *.h_old backup copies. - KW
+* Refinement to the SVr4 (ncurses) color support, allowing it
+  to more closely model the slang support. - TD
+1997-03-11
+* Tweak for command line parsing of files with no URL in LYUtils.c.
+  Also added ability to pass partial domain names in the DJGPP version. - WB
+* Added the closing function for Win32 TCP in LYExit.c (did anyone see a
+  difference?!). - WB
+* Altered LYCurses.c so that the DJGPP version could spawn other programs
+  without certain death. - WB
+* Ignoring the whole ~/lynx.cfg problem (expanding '~') entirely for the
+  Win32 version for now. - WB
+* Some other tweaks for Win32 and DJGPP - WB
+* Added protection in LYGetFile.c against denial of service attacks via
+  the port 19 CHARGEN service.  The distributed code left Lynx or proxies
+  vulnerable to such attacks via direct or redirection URLs. - FM
+1997-03-10
+* Fixed error in the handling of numeric character references with values
+  greater than 255 in SGML.c.  The distributed code was breaking after
+  substitutions instead of falling through to reset the string chunk and
+  recycle the terminator if not a semi-colon. - FM
+1997-03-09
+* Integrated (simple) color, auto-configure patches with 2.7 following
+  chrtrans patch - TD (T.Dickey), JES (J.Spath)
+1997-03-08
+* Fixed error in the switch positioning of checks for XLOADIMAGE_COMMAND
+  and wais_proxy in LYReadCFG.c.  The distributed code had them reversed
+  under case 'W' versus case 'X'. - PDS
+* Expanded the copyright and licensing statements in the -version
+  output. - FM
+1997-03-04
+* Corrected the offset computation in textsearch() of LYSearch.c so that
+  WHEREIS searches repeated on a page with no links seek the target
+  starting at the line immediately following the last displayed.  The
+  distributed code was setting a greater offset. - JES
+1997-03-02
+* Don't entify post content for the showinfo display, now that we are
+  making it an XMP block in that display to handle all of the supported
+  enctypes. - FM
+* Patches to fix mail and FTP for Win32 (LYMail.c, HTFile.c). - WB
+* Makefiles to compile chartrans code for Win32. - WB
+* (chartrans) Minor cleanups (makeuctb.c, chrtrans/Makefile, HTPlain.c)
+  to enable successful compilation on Win32. - KW
+1997-02-28
+* Changed all references to "image/*" to just "image" in the userdefs.h
+  and lynx.cfg comments about XLOADIMAGE_COMMAND.  The "/*" within the
+  userdefs.h comments was generating warnings from some compilers. - FM
+* Added a snake-slang target to the Makefile, and added -DUNIX to the
+  LYFLAGS for the snake3 and snake3-slang targets (HP-UX apparently does
+  not define "unix" itself with the -Ae switch, and thus needs to have
+  that definition forced via -DUNIX). - HL
+* Merged with patches and makefiles from Wayne Buttles
+  (buttles@wsb.champlain.edu) to enable compilation in two new environments:
+  Win32 (95/NT) with Borland C++ 4.52 compiler, and 386 DOS with DJGPP
+  compiler.  To add ports for Win32 (95/NT) and 386 DOS computers with a
+  packet driver, four new defines were created: _WINDOWS (Defined for Win32
+  specific code - Mostly TCP related), DJGPP (Defined for 386 specific code -
+  Mostly TCP related), DOSPATH (Defined for any DOS'ish computer), and
+  NOSIGHUP (Defined for computers not supporting sighup signal calls).
+  Separate utility programs needed for compiling and running Lynx on those
+  platforms are available from Wayne at
+  <http://www.fdisk.com/doslynx/wlynx/>. - WB, KW
+* Fixed Telnet for Win32 - WB
+* (chartrans) Small correction in SGML.c (set_chartrans_handling) - KW
+1997-02-26
+* Close both descriptors of the pipe() for the NSL_FORK enabled code
+  in HTTCP.c.  The distributed code was closing only one of them on
+  completed gethostbyname() calls, and neither on 'z'aps. - FM
+* Changed the HREF for the "Lynx FAQ" link in the online 'h'elp to
+  its new URL (http://www.slcc.edu/lynx/faq.html). - FM
+1997-02-25
+* More reverse engineering to cope with Netscape's bogus cookie header
+  parsing.  The parser must not require an '=' between the expires
+  attribute name and value, because Set-Cookie headers are being
+  transmitted without it (e.g., by http://law.agps.gov.au).  So Lynx
+  now treats that as another special case. - FM
+* Cope with invalid use of expires attributes in Version 1 cookies.
+  An -06 State Management draft recommends that for "backward
+  compatibility", and has been severely criticized in the HTTP-WG,
+  but it would be foolish not to assume Netscape will do that.  See the
+  expanded comments in LYSetCookie() of LYCookie.c for more information.
+  Note that "expires" thus cannot be used as a Version 1 cookie name, but
+  a provider would be foolish to use that, anyway.  Note also that the
+  possibility of using different header names for Version 1 versus
+  Version 0 (a.k.a., "Netscape") cookies is being discussed in the
+  HTTP-WG, which might have been better to do in the first place, but
+  the -05 draft has been approved as RFC 2109:
+    http://info.internet.isi.edu/in-notes/rfc/files/rfc2109.txt
+  so it would be a while before that were done, if ever. - FM
+* chartrans code for translation of character sets, handling of Unicode,
+  and i18n updated for Lynx 2.7.  Support for CHARSET attribute on A
+  tags.  New directory src/chrtrans with table files.  Compilation flags
+  -DEXP_CHARTRANS, -DEXP_CHARTRANS_AUTOSWITCH (for Linux),
+  -DSLANG_MBCS_HACK (for raw unicode console).
+  New command line options when compiled with -DEXP_CHARTRANS, i.e.,
+  "-assume_charset", "-assume_local_charset", "-assume_unrec_charset".
+  See README.chartrans and README files in src/chrtrans for more info.
+  INFO screen shows of effective charset even if not given explicitly.
+  Translation routines in LYCharUtils.c not chartrans-ified at this point - KW
+* No showing of &trade; or &#8482; as (R) any more, use (TM) instead. - KW
+* Prefer HTTP-EQUIV over NAME in META tags. - KW
+1997-02-22
+* Fixed a memory management glitch which could cause a crash if the
+  MIME type of a reply to a FORM submission with METHOD=POST caused a
+  download offer to be invoked. - FM
+* Don't simplify ftp URLs by trimming trailing slashes if the URL is
+  being proxied.  The Netscape proxy server for some unknown reason
+  can return redirection for ftp URLs with the slash appended, and
+  trimming it can result in a redirection loop.  Based on a posted
+  patch from KW. - FM
+* Fixed two typos in the checks for HTPassHighCtrlRaw in LYExpandString()
+  of LYCharUtils.c. - KW
+* Fixed typo in the equality check on line 1553 in HTGopher.c. - FM
+1997-02-19
+* Reset the host string after an '@', if present, when trimming default
+  ":port" fields in the new code aimed at compliance with the Masinter
+  and Fielding URL drafts, expected to replace RFCs 1738 and 1808.  The
+  distributed code neglected to do that, and was ending up on a ":password"
+  field, if present, instead of on the ":port" field, causing the username
+  to be treated as the host name.  - FM
+* Expand the default port trimming so as to include all of the registered
+  URL schemes which support a port field in the v2.7 release. - FM
+* Correctly uncache the current directory listing when invoking an 'u'pload,
+  so that it will be updated to include the uploaded file if placed in the
+  current directory.  The released code attempted to do this in a manner
+  which prevented a pop, so that the directory listing couldn't be restored
+  on return from the uploader menu. - FM
+* Recognize a bookmark file used as the startfile, whether it resides in the
+  home directory or in a subdirectory off home.  The released code failed if
+  the file was in home, and not in a subdirectory, unless the -book switch
+  was used instead of a startfile entry or WWW_HOME variable. - FM
diff --git a/docs/CRAWL.announce b/docs/CRAWL.announce
new file mode 100644
index 00000000..e734bcba
--- /dev/null
+++ b/docs/CRAWL.announce
@@ -0,0 +1,131 @@
+The TRAVERSAL code from old versions of Lynx has been upgraded by David
+Mathog (mathog@seqaxp.bio.caltech.edu) so that it works again, can be
+implemented via a command line switch (-traversal) instead of via a
+compilation symbol for creating a separate Lynx executable as in those
+previous versions, and can be used in conjunction with a -crawl switch
+to make Lynx a front end for a Web Crawler.
+ 
+
+Usage:
+
+   lynx [-traversal] [-realm] [-crawl] ["startpage"]
+
+
+Added switches are:
+
+  -traversal      Follow all http links derived from startpage that are
+                  on the same server as startpage.  If startpage isn't
+                  specified then the traversal begins with the default
+                  startfile or WWW_HOME.
+
+  -realm	  Further restrict http links to ones in the same realm
+                  (having a matching base URI) as the startpage (e.g.,
+		  http://host/~user/ will restrict the traversal to that
+		  user's public html tree).
+
+  -crawl          With [-traversal] outputs each unique hypertext page
+                  as an lnk###########.dat file in the format specified
+                  below.  With [-dump] outputs only the startpage, in
+		  the same format, to stdout.
+
+
+Note on startpage:
+
+                  If a startpage is specified and contains any uppercase
+		  characters, on VMS it should be enclosed in double-quotes.
+		  The code that extracts the access and host fields from
+                  startpage for comparsions with links to ensure they are
+                  not on another server, and the comparisons with already
+                  traversed links, are case sensitive, and the startpage
+                  will go to all lowercase on VMS if no double-quotes are
+                  supplied, such that it might be treated as a new link if
+                  encounted with uppercase letters.
+
+
+Files created and/or used with the -traversal switch, based on definitions
+in userdefs.h:
+
+TRAVERSE_FILE (traverse.dat):
+                  Contains a list of all URLs that were traversed.  Note
+                  that if a URL appears in this file it will not be 
+                  traversed again (important if runs are started and 
+                  stopped).  Placing an entry in this file BEFORE the
+                  run will block traversal of that URL.  Unlike reject.dat
+                  a final * has no effect (see below).  Note that Lynx
+		  internal client-side image MAP URLs will be included in
+		  this file (e.g., LYNXIMGMAP:http://server/foo.html#map1),
+		  in addition to the "real" (external) http URLs.
+
+TRAVERSE_FOUND_FILE (traverse2.dat):
+                  Contains a list of all URLs that were traversed, in the
+                  order encountered or re-encountered (but not re-travered)
+                  during a traversal run, and the TITLEs of the documents
+                  (separated from the URLs by TABs)  A URL and TITLE may be
+                  present in this list many times.  To simplify the list,
+                  on VMS use:  sort/nodups traverse2.dat;1 ;2
+		  Note that the URLs and TITLEs of the Lynx internal
+		  client-side image MAP pseudo-documents will not be
+		  included in this file, though "traversed", but only the
+		  http URLs and TITLEs derived from the MAP's AREA tag
+		  HREFs that were traversed.
+
+TRAVERSE_REJECT_FILE (reject.dat):
+                  Contains a list of URLs that have been rejected from the
+                  traversal.  Once a URL has been entered in this list, it
+                  will not be traversed.  URLs that end in a * will cause
+		  rejection of all URLs that match up to the character before
+		  the *. So for instance, to reject all htbin references on a
+		  site put this line in the reject.dat file BEFORE starting
+		  the run:  http://www.site.wherever:8000/htbin*
+
+TRAVERSE_ERRORS (traverse.errors):
+		  A list of links that could not be accessed or had an
+		  unknown status returned by the http server.  If the
+		  owner of the document containing the link is know via
+		  a LINK REV="made" HREF="mailto:foo" in it and the
+		  MAIL_SYSTEM_ERROR_LOGGING was set true in userdefs.h
+		  or lynx.cfg (not recommended!!!), a message about the
+		  problem will be mailed to the owner as well. 
+
+
+Files created during traversals if the -crawl switch is included with the
+-traversal switch:
+
+lnk########.dat   Numbered output files containing the contents of traversed
+		  hypertext documents in text format.  All hypertext links
+		  within the document have been stripped, and the URL and
+		  TITLE of the document are recorded as the first two lines,
+		  e.g., for the seqaxp.bio.caltech.edu home page the first
+		  two lines will be:
+
+                  THE_URL:http://seqaxp.bio.caltech.edu:8000/
+                  THE_TITLE:SAF Web server home page
+
+                  The VMSIndex software is being adapted to use this
+		  information to extract the corresponding URL and TITLE
+		  for use in indexing the lnk########.dat files, e.g.:
+
+                  $ build_index -
+                    /url=(text="THE_URL:") -
+                    /topic=(text="THE_TITLE:",EXCLUDE) -
+                    /output=INDEX_NAME -
+                    lnk*.dat
+
+		  A clever person should be able to figure out a way to
+		  index the lnk########.dat files on Unix as well.
+
+		  If you want the hypertext links in the document to be
+		  numbered, include the -number_links switch.  By default,
+		  this will cause the list of References (URLs for the
+		  numbered links) to be appended as well.  If you want
+		  numbered links but not the References list, include the
+		  -nolist switch as well.
+
+		  Note that any client-side image MAP pseudo documents
+		  that were "traversed" will not have lnk########.dat
+		  output files created for them, but output files will
+		  be created for "real" documents that were traversed
+		  based on the HREFs of the MAP's AREA tags.
+
+This functionality is still under development.  Feedback and suggestions
+are welcome.
diff --git a/docs/FM.announce b/docs/FM.announce
new file mode 100644
index 00000000..0b2652bf
--- /dev/null
+++ b/docs/FM.announce
@@ -0,0 +1,72 @@
+LYNX FILE MANAGEMENT SUPPORT
+
+New facilities have been added since Lynx 2-3 to provide support
+for managing files on the local filesystem.  These facilities allow
+the user to delete, rename, and re-locate files and/or directories and
+to create and/or upload new files and directories.  This will mainly
+be of interest to systems administrators who are interested in running
+lynx as a restricted shell in order to provide controlled access to a
+range of services (as in a freenet). It may also be of use at sites
+where some of the users are experiencing difficulty with the raw Unix
+interface.
+
+Support for the new facilities is enabled at compile time by defining
+the variable `DIRED_SUPPORT' in the `MCFLAGS' list in the Lynx
+Makefile, and in the WWW makefile `CommonMakefile'.  Runtime support
+for disabling the facilities is provided by way of the restriction
+`dired_support' which can be set on the command line for a particular
+session.
+
+The Makefile also provides additional compile time flags for
+controlling the extent and application of the file management
+facilities; specifically, `OK_TAR' which enables support for creating
+and expanding tar archives, `OK_GZIP' which enables use of gzip to
+compress and decompress files, and `OK_OVERRIDE' which allows access
+to the file management facilities directly from the keyboard in
+addition to access by way of a file management menu.
+
+There are two possible modes of operation; the first in which a single
+file management menu is invoked via the `f', or `F' key; the second,
+in which the more often used facilities are made available directly
+from the keyboard in addition to access via the menu.  The second
+method provides a much better user interface but requires re-mapping
+some of the keys from their standard lynx interpretation, temporarily
+when file management mode is in effect.  For example, if OK_OVERRIDE is
+defined at compile-time, then the line at the bottom of the screen, in
+novice mode, will be
+
+  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload
+
+rather than the standard second noviceline,
+
+  H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list
+
+when the user is browsing part of the file system.  If OK_OVERRIDE is not
+defined then all access to file management functionality must be by way
+of the menu.  The only exception is that the facility to tag files for
+subsequent removal and/or re-location is always available directly from
+the keyboard using `t', and `T'.
+
+This is a first release of the file management enhancements and suggestions
+for improvements are welcome.  Among the enhancements which are currently
+being considered are facilities for changing file access attributes, and
+a facility for listing and extracting part of an archive.
+
+In order to use the file management facilities you may either point
+the program at a directory on the command line or point the program at
+an html file which contains a link of the following form:
+
+   <a href="file://localhost/~/"> Manage Personal Directory ? </a>
+
+where the anchor `file://localhost/~/' implies a reference to
+/home/username.  Because the `~/' in a file URL is converted to
+`/home/username' regardless of origin, these facilities also work when
+the anchor shown above is served from an http server as well.  In
+either case the reference is to files on the local system and not
+files in the domain of the server.
+
+By default the file listing is in standard Unix mixed format, but you
+may use the Options menu to select WWW `directories first' format, or
+`files first' format if you prefer.
+
+Rick Mallett, Carleton University, Ottawa Canada. (rmallett@ccs.carleton.ca)
diff --git a/docs/IBMPC-charsets.announce b/docs/IBMPC-charsets.announce
new file mode 100644
index 00000000..1431cdf3
--- /dev/null
+++ b/docs/IBMPC-charsets.announce
@@ -0,0 +1,74 @@
+
+Summary
+=======
+This document is primarily for people who will be using Lynx
+on a remote UNIX or VMS system via an MS-DOS based terminal program.
+
+
+General Information
+===================
+Lynx comes with built-in translation tables to map the 8-bit character codes or
+character entities coming in from an HTML document to their equivalent codes,
+where possible, for various character sets.
+
+IMPORTANT:  you should choose display character set in Lynx Options Menu
+according to your font installed locally.  Probably it would be cpXXX. Please
+contact lynx-dev mailing list if you want any new codepage not listed there.
+
+Note that all points of the connection between the display at your end and Lynx
+at the remote end must be 8-bit clean.  If the high bit is being stripped at
+any point in between, the only character set you can use (effectively) in Lynx
+will be "7 bit approximations".  More on that later.
+
+
+MS-DOS character set weirdness
+==============================
+MS-DOS uses a bass-ackwards character set in which half the normal characters
+have been replaced by pseudo-graphic line and box-drawing characters, and in
+which almost all of the international characters are mapped to nonstandard
+numbers.  It also contains Greek letters.
+
+Further confusing matters, there is more than one MS-DOS character set.  The
+character sets are referred to as "codepages," each of which has a unique
+number.  IBM PCs and compatibles come with one hardware-based default codepage
+and a keyboard to match.  In the US market the hardware codepage is 437.  PCs
+destined for other regions of the world often have a different default codepage
+which contains characters for other languages and keyboards.  Under MS-DOS, one
+can load different codepages into memory and use one of them instead of the
+hardware default.
+
+If you are using Lynx through an MS-DOS based terminal program or telnet
+client, you should use an appropriate DOS codepage in Lynx and you need not any
+translation within terminal program (this is different from old-style behavior
+and works better because of superior Lynx translation support).
+
+Check your display by accessing Martin Ramsch's ISO-8859-1 table
+(iso8859-1.html in the Lynx distribution's test subdirectory).
+
+Ramsch's table describes each entity and shows examples of each.  It should be
+immediately obvious that you are either seeing what you are supposed to, or
+you're not.  If you see box and line-drawing characters and mismatched letters
+and so on, you are likely displaying 7 bit data, not 8.  Ensure that all points
+of your connection are 8-bit clean:
+
+	On any remote UNIX systems you must pass through, do
+		'stty cs8 -istrip' or 'stty pass8'.  'stty -a' should list
+		your settings.
+	On any remote VMS systems, do 'set terminal /eightbit'.
+	Make sure your terminal program or telnet client is not filtering
+		8-bit data.  You may found the choice between "VT-100 strict"
+		and "VT-100 relaxed" emulation mode - use relaxed.
+		Note:  Procomm for DOS has a confusing "Use 7 bit or 8 bit
+		ANSI" setting -- this has to do with ANSI sequences.  If set to
+		8 bit, some 8-bit character sequences, including those passed
+		by Lynx as well as those which are for your terminal type
+		(vt100, etc.) will be processed by Procomm as ANSI screen
+		control codes and will most likely result in a garbled display.
+		Set it to 7 bit.
+	If going through a dialup terminal server, you may have to set the
+		terminal server itself to pass 8 bit data.  How to do this
+		varies with the make of the server, and in some cases only a
+		system admin in charge of the box will have the authorization
+		to do that.
+	SLIP or PPP connections should already be 8-bit clean.
+
diff --git a/docs/OS-390.announce b/docs/OS-390.announce
new file mode 100644
index 00000000..e28767de
--- /dev/null
+++ b/docs/OS-390.announce
@@ -0,0 +1,93 @@
+This document suggests steps to install Lynx on OS/390 systems.
+
+========================================================================
+o Download the archive file lynx2-8-6.tar.Z in BINARY from the site
+  where you found this announcement or from a site listed at
+  http://lynx.isc.org/
+
+o Unpack with:
+
+	uncompress <lynx2-8-6.tar.Z | pax -rv -o to=IBM-1047
+
+  The "-o to=IBM-1047" is needed to convert the ASCII archive
+  to EBCDIC.  You must not download as a text file; the conversion
+  must be performed after the uncompress.
+
+========================================================================
+o Alternatively, download the PKZIPped archive lynx2-8-6.zip in BINARY.
+
+o Unpack with:
+
+	unzip -aa lynx2-8-6.zip
+
+  The "-aa" is needed to convert the ASCII archive
+  to EBCDIC.  (unzip is not shipped with OS/390.  You can
+  obtain it from:
+
+   Linkname: OS/390 UNIX - Tools and Toys
+	URL: http://www.s390.ibm.com/unix/bpxa1ty1.html
+
+   Linkname: Info-ZIP zip and unzip
+	URL: http://www.s390.ibm.com/ftp/os390/oe/port/infozip-os390.tar.Z
+  )
+
+========================================================================
+o Run the configure script:
+
+	mkdir -p ./OS390/.
+	cd       ./OS390
+	rm -f config.cache
+	CC=c89 CFLAGS="-D_XOPEN_SOURCE_EXTENDED=1 -D_ALL_SOURCE" \
+	    ../lynx2-8-6/configure
+
+  The definitions select the ANSI C compiler (c89) and options
+  to select the right header file directories.  You may also
+  find it useful to set the installation directories with
+  the --prefix=, --sysconfdir=, and --exec_prefix= options.
+
+========================================================================
+o Build Lynx
+
+	gmake
+
+  (I have been unable to build Lynx with IBM's make.  gmake is not
+  shipped with OS/390.  You may obtain gmake from:
+
+   Linkname: Mortice Kern Systems (MKS) Inc. - S/390 ®
+	     OpenEdition--GNU Utilities
+	URL: http://www.mks.com/s390/gnu/index.htm
+
+   Linkname: Other
+	URL: http://www.mks.com/s390/gnu/register.htm
+  )
+
+========================================================================
+o Test Lynx:
+
+	./lynx -cfg=../lynx2-8-6/lynx.cfg \
+	    ../lynx2-8-6/lynx_help/lynx_help_main.html
+
+========================================================================
+o Install Lynx:
+
+	gmake install
+	gmake install-help
+	gmake install-doc
+
+========================================================================
+REMAINING PROBLEMS:
+
+	3270-type terminals are not supported. This is probably a
+	permanent restriction since curses support for 3270s is
+	unlikely to appear.
+
+	URL schemes other than HTTP:, FTP:, and FILE: are untested
+	and likely not to work.
+
+	Some character entities are not rendered correctly.
+
+	The Download command converts binary files from ASCII to EBCDIC.
+	This can be undone by a download filter in lynx.cfg.
+
+Paul Gilmartin
+pg@sweng.stortek.com
diff --git a/docs/README.TRST b/docs/README.TRST
new file mode 100644
index 00000000..68b27af7
--- /dev/null
+++ b/docs/README.TRST
@@ -0,0 +1,158 @@
+Tabular Support for Simple Tables
+=================================
+Some definitions first:
+
+* NO table support
+  What it says. :)  Table related tags are treated like other
+  completely unrecognized tags.
+  Only listed for completeness, this does not describe Lynx.
+
+* MINIMAL table support
+  Table related tags are recognized, and are used to separate
+  the contents of different cells (by at least a space) and rows
+  (by a line break) visibly from each other.
+
+* LYNX minimal table support (LMTS)
+  The minimal table support as implemented by Lynx up to this point,
+  also includes the way ALIGN attributes are handled on TABLE, TR
+  and other specific tweaks (e.g. handle TABLE within PRE specially).
+  LMTS formatting is briefly described in the Lynx User Guide, see
+  the section "Lynx and HTML Tables" there. (The Users Guide has not
+  yet been updated for tabular support.)
+
+* TABULAR support for tables
+  Support for tables that really arranges table cells in tabular form.
+
+* Tabular Rendering for SIMPLE Tables (TRST)
+  Tabular support for some tables that are 'simple' enough; what this
+  code change provides.
+
+One basic idea behind providing TRST is that correct tabular support
+for all tables is complex, doesn't fit well into the overwhelmingly
+one-pass way in which Lynx does things, and may in the end not give
+pleasant results anyway for pages that (ab-)use more complex table
+structures for display formatting purposes (especially in view of Lynx
+limitations such as fixed character cell size and lack of horizontal
+scrolling; see also emacs w3 mode).  Full table support within Lynx
+hasn't happened so far, and continues to seem unlikely to happen in the
+near future.
+
+The other basic idea is the observation that for simple tables, as
+used mostly for data that are really tabular in nature, LMTS rendering
+can be transformed into TRST rendering, after parsing the TABLE element,
+by two simple transformations applied line by line:
+- Insert spaces in the right places.
+- Shift the line as a whole.
+
+And that's exactly what TRST does.  An implementation based on the
+simple observation above is relatively straightforward, for simple
+tables.  On encountering the start of a TABLE element, Lynx generates
+output as usual for LMTS.  But it also keeps track of cell positions
+and lengths in parallel.  If all goes well, that additional information
+is used to fix up the already formatted output lines when the TABLE
+ends.  If not all goes well, the table was not 'simple' enough, the
+additional processing is canceled.  One advantage is that we always
+have a 'safe' fallback to well-understood traditional LMTS formatting:
+TRST won't make more complex tables look worse than before.
+
+What are 'simple' tables?  A table is simple enough if each of its TR
+rows translates into at most one display line in LMTS formatting (excluding
+leading and trailing line breaks), and the width required by each row
+(before as well as after fixup) does not exceed the available screen size.
+Note that this excludes all tables where some of the cells are marked up as
+block elements ('paragraphs').  Tables that include nested TABLE elements
+are always specifically excluded, but the inner tables may be subject to
+TRST handling.  Also excluded are some constructs that indicate that markup
+was already optimized for Lynx (or other browsers with no or minimal table
+support): TABLE in PRE, use of TAB.
+
+The description so far isn't completely accurate.  In many cases, tables are
+not simple enough according to the last paragraph, but parts of each TR row
+can still benefit from some TRST treatment.  Some partial treatment is done
+for some tables in this grey zone, which may or may not help to a better
+display, depending on how the table is used.  This is an area where tweaks
+in the future are most expected, and where the code's behavior is currently
+not well defined.
+
+One possible approach:
+- The table is 'simple' according to all criteria set out in the previous
+  paragraph, except that some cells at the beginning and/or end of TR rows
+  may contain block elements (or other markup that results in formatting
+  like separate paragraphs).
+- There is at most one range of (non-empty) table cells in each row whose
+  contents is not paragraph-formatted, and who are rendered on one line
+  together by LMTS, separate from the paragraph-formatted cells.  Let's
+  call these cells the 'core' of a row.
+Fixups are then only applied to the text lines showing the 'core' cells.
+The paragraph-formatted cells are effectively pulled out before/after
+their row (no horizontal space is allocated to them for the purpose of
+determining column widths for core line formatting).
+
+This is expected to be most useful for tables that are mostly
+simple tabular data cells, but with the occasional longer
+text thrown in.  For example, a table with intended rendering:
+
+      --------------------------------------------------------
+     |  date  |   item no.   |  price  |       remarks        |
+     |--------|--------------|---------|----------------------|
+     | date-1 | item #1      |   $0.00 |                      |
+     |--------|--------------|---------|----------------------|
+     | date-2 | item #2      | $101.99 | A longer annotation  |
+     |        |              |         | marked up as a block |
+     |        |              |         | of text.             |
+     |--------|--------------|---------|----------------------|
+     | date-3 | long item #3 |  $99.00 |                      |
+      -------------------------------------------------------- 
+
+It may now be shown by Lynx as
+
+    .................................................
+
+      date    item no.    price  remarks
+     date-1 item #1        $0.00
+     date-2 item #2      $101.99
+
+     A longer annotation marked up as a block of
+     text.
+
+     date-3 long item #3  $99.00
+
+    .................................................
+
+As can be seen, this is still quite far from the intended rendering,
+but it is better than without any tabular support.
+
+Whether the code does something sensible with "grey area" tables is up
+for testing.  Most of the typical tables in typical Web pages aren't
+used in a way that can benefit from the TRST approach.  Parts of such
+tables may still end up getting shifted left or right by the TRST code
+when that doesn't improve anything, but I haven't seen it make things
+really worse so far (with the current code).
+
+TRST and Partial Display
+------------------------
+[ Partial display mode is the feature which allows viewing and scrolling
+of pages while they are loaded, without having to wait for a complete
+transfer. ]  During partial display rendering, table lines can sometimes
+be shown in the original formatting, i.e. with horizontal fixups not yet
+applied.  This is more likely for longer tables, and depends on the state
+in which partial display 'catches' the TRST code.  Sometimes the display
+may flicker: first the preliminary rendering of table lines is shown, then
+after loading is finished it is replaced by the fixed-up version.  I do
+not consider this a serious problem: if you have partial display mode
+enabled, presumably you want to be able to see as much data as possible,
+and scroll up and down through it, as early as possible.  In fact, the
+approach taken keeps Lynx free from a problem that may graphical browsers
+have: they often cannot render a table at all until it is received in full.
+
+------------------------------------------------------------------------
+
+To summarize:
+ - TRST is a solution that works in many cases where lack of tabular support
+   was most annoying.
+ - TRST doesn't implement a full table model, and it is extremely unlikely
+   that it will ever be the basis for that.  Keep on exploring external
+   solutions, or perhaps waiting for (better: working on) a more fundamental
+   redesign of Lynx's rendering engine.
+
+Klaus Weide - kweide@enteract.com 1999-10-13
diff --git a/docs/README.chartrans b/docs/README.chartrans
new file mode 100644
index 00000000..a13ef361
--- /dev/null
+++ b/docs/README.chartrans
@@ -0,0 +1,164 @@
+Lynx CHARTRANS
+
+ Features (in addition to those which Lynx 2.7.1 already has):
+
+ - Can (attempt to) translate from any document charset to any display
+   character set, *IF* the document charset is known by a translation
+   table (compiled in at installation).
+
+ - New method to define character sets: used for input charset as well
+   as display character set, translation tables compiled in from
+   separate files (one per charset).  One table is designated as default
+   and can be used for fallback translation to 7-bit replacements for
+   display.
+
+ - New method for specifying translations of SGML entities.
+
+ - Unicode (UTF-8) support: can (attempt to) decode and translate UTF-8 to
+   display character set, or pass through UTF to display (if terminal
+   or console understands UTF-8).  [raw display of UTF only tested with Slang
+   so far, does not always position everything correctly on screen]
+
+ - Support for CHARSET attribute on A tag (and sometimes LINK), as in HTML
+   i18n RFC 2070 and W3C HTML 4.0 drafts.  A link can suggest the target's
+   charset in this way.
+
+ - Support for ACCEPT-CHARSET attribute of FORM tags.
+
+ - EXPERIMENTAL, currently enabled only for Linux console:
+   can (attempt to) automatically switch terminal mode and load new
+   code pages on change of display character set.
+
+ - some minor changes: sometimes invalid characters were displayed in a hex
+   notation Uxxxx (helps debugging, but I also regard it as at least not
+   worse than showing the wrong char without warning), now they are not
+   displayed to reduce garbage.
+
+Additions/changes to user interface:
+
+ - many new Display Character Sets are available on O)ptions screen.
+   (One can use arrow keys, HOME, END etc. for cycling through the list
+   or use selection from popup box, as for other options.)
+
+ - new command line flags:
+   -assume_charset=...  assume this as charset for documents that don't
+                        specify a charset parameter in HTTP headers
+   -assume_local_charset=...  assume this as charset of local file
+   -assume_unrec_charset=...  in case a charset parameter is not recognized;
+   docs also available as ASSUME_CHARSET etc. in lynx.cfg
+   In "Advanced User" mode, ASSUME_CHARSET can be changed during a session
+   from the Options Screen.
+
+ - The "Raw" toggle (from -raw flag, '@' key, or Options screen)
+   o  toggles the assumption "Default remote charset is same as Display
+      Character Set" on or off.
+      Toggling of the assumed charset is between Display Character Set and
+      the specified ASSUME_CHARSET or, if they are the same, between the
+      specified ASSUME_CHARSET and ISO-8859-1.
+   o  The default for raw mode now depends on the Display Character Set as
+      well as on the specified ASSUME_CHARSET value.
+   o  should work as before for CJK charsets (turning CJK-mode on or off).
+   o  If the effective ASSUME_CHARSET and the Display Character Set are
+      unchanged from the ISO-8859-1 default, toggling "Raw" may have some
+      additional effect for characters that can't be translated.
+   (Try the "Transparent" Display Character Set for more "rawness".)
+
+
+Requirements:  same as for Lynx in general :)
+
+The chartrans code is now merged with Wayne Buttle's changes for
+32-bit MS Windows and DOS/DJGPP, with Thomas Dickey's and Jim Spath's
+emerging auto-configure mechanism, and with BUGFIXES from Foteos
+Macrides.  See the accompanying file CHANGES for the current
+status.
+
+
+A warning:
+In some cases undisplayable bytes may still get sent to the terminal
+which are then interpreted as control chars, there is no protection
+against if strange things are defined in the table files.
+
+
+HOW TO INSTALL:
+
+(4) before compiling:
+
+    Check top level makefile or Makefile and userdefs.h as usual.
+
+    NOTE that there is a new "#define" in userdefs.h for MAX_CHARSETS
+    near the end (in "Section 3.").
+
+(5) Building Lynx:
+
+    Compiling the chartrans code is now integrated into the normal
+    installation procedures for UNIX (configure script) and other
+    platforms.
+
+    What's supposed to happen (in addition to the usual things when
+    building Lynx): in the new subdirectory src/chrtrans, make should
+    first compile the auxiliary program `makeuctb', then invoke that
+    program to create xxxxx_yyy.h files from the provided xxxxx_yyy.tab
+    translation table files.  (See README.* files in src/chrtrans for
+    more info.)
+
+    If all goes well, just invoking make from the top-level Lynx dir
+    as usual should do everything automatically.  If not, the makefiles
+    may need some tweaking... or:
+
+(6) Some things to look at if compilation fails:
+
+    In src/chrtrans/UCkd.h there is a typedef for an unsigned 16bit
+    numeric type which may need to be changed for your system.
+    See comment near top there.
+
+    For recompiling Lynx, `make clean' should not be necessary if only
+    files in src/chrtrans have been changed.  On the other hand
+    may not propagate to the src/chrtrans directory (depending how things
+    are going with auto-config), you may have to cd to that directory
+    and `make clean' there to really clean up there.
+
+(7) To customize (add/change translation tables etc.):
+
+     See README.* files in src/chrtrans.
+     Make the necessary changes there, then recompile.
+     (A general `make clean' should not be necessary, but make sure
+     the ...uni.h file in src/chrtrans gets regenerated.)
+
+     Note that definition of new character entities (if e.g., you want
+     Lynx to recognize &Zcaron;) are not covered by these table files,
+     they have to be listed in entities.h.
+
+     _If you are on a Linux system_ and using Lynx on the console (i.e.
+     not xterm, not a dialup *into* the Linux box), you can compile
+     with -DEXP_CHARTRANS_AUTOSWITCH.  This is very useful for testing
+     the various Display Character Sets, Lynx will try to automatically
+     change the console state.  You need to have the Linux kbd package
+     installed, with a working `setfont' command executable by the user,
+     and the right font files - check the source in src/UCAuto.c for
+     the files used and/or to change them!
+     NOTE that with this enabled,
+     - Lynx currently will not clean up the console state at exit,
+       it will probably left like the last Display Character Set you used.
+     - Loading a font is global across _all_ virtual text consoles, so
+       using Lynx (compiled with this flag) may change the appearance of
+       text on other consoles (if that text contains characters
+       beyond US-ASCII).
+
+(8) Some suggested Web pages for testing:
+
+    <URL:  http://www.tezcat.com/~kweide/lynx-chartrans/test/>
+
+    <URL:  http://www.isoc.org:8080/>,
+      especially
+    <URL:  http://www.isoc.org:8080/liste_ml.htm>.
+
+    <URL:  http://www.accentsoft.com/un/un-all.htm>
+
+(9) Please report bugs, unexpected behavior, etc.
+    to <lynx-dev@nongnu.org>.
+
+    Suggestions for improvement would be welcome, as well as
+    contributed translation tables (for stuff that is not available
+    at ftp://dkuug.dk or ftp://ftp.unicode.org).
+
+KW  1997-11-06
diff --git a/docs/README.cookies b/docs/README.cookies
new file mode 100644
index 00000000..af044f92
--- /dev/null
+++ b/docs/README.cookies
@@ -0,0 +1,60 @@
+README.cookies
+
+Cookie handling when using the lynx browser:
+
+General Usage on a unix system:
+
+Cookie handling may be set so that you read them in on session start up from a 
+saved file, and to restore all cookies to that file on session close.
+
+Warning and Disclaimer:
+
+The lynx browser provides great opportunity to examine and make decisions about 
+cookies by default, but some users just want the speed benefits of the lynx 
+browser without the prompting for a decision to accept or reject the cookie. 
+Should you think that this is your situation, please read this:
+
+There are a number of privacy issues with accepting all cookies blindly, not 
+the least of which is that you are storing evidence of your browsing activity 
+into a regular disk file. 
+
+You have been warned. There are many resources available that will provide you 
+with more information about making informed choices about this subject. 
+
+With that in mind, here is how to accept all cookies transparently and rapidly:
+
+The following .lynxrc or lynx.cfg settings provide the user with the ability 
+to by default accept all cookies transparently. 
+
+SET_COOKIES:TRUE
+ACCEPT_ALL_COOKIES:TRUE
+PERSISTENT_COOKIES:TRUE
+COOKIE_FILE:/path/to/directory/.lynx_cookies
+COOKIE_SAVE_FILE:/path/to/directory/.lynx_cookies
+COOKIE_LOOSE_INVALID_DOMAINS:sports.espn.go.com,espn.go.com,.go.com,
+FORCE_SSL_COOKIES_SECURE:FALSE
+
+You must have a "cookie save file" that you own and for which you have 
+read/write permission; cookies are flushed out to that disk location when you 
+exit lynx, and are read in for use at the start of a lynx session from there. 
+Cookies do not persist unless this happens. 
+
+If you wish to see for yourself that this actually happens, please use the 
+-trace command line option and then read the resulting file "Lynx.trace".
+It will show the cookies being read in at the start of a session, and being
+written out at the conclusion of a session.
+
+FORCE_SSL_COOKIES_SECURE is for ebay and the like, or they won't remember you;
+(their login is secure but everything else isn't, like a lot of big sites). 
+If lynx attempts to transmit the ebay cookie securely, it's not taken.
+This doesn't affect cookie acceptance but it's a functionality issue for users.
+
+The COOKIE_LOOSE_INVALID_DOMAINS is for botched cookies from sites you read a 
+lot. This causes a great deal of prompting and if you are a frequent site user
+you may want to convenience yourself with a set of loose invalid domains.
+
+
+Stef Caunter 
+http://caunter.ca/contact.html
+http://caunter.ca/README.cookies
+
diff --git a/docs/README.defines b/docs/README.defines
new file mode 100644
index 00000000..a8c0a2d1
--- /dev/null
+++ b/docs/README.defines
@@ -0,0 +1,160 @@
+This file lists preprocessor macros (symbols) which are tested in the
+code (typically with ifdef).
+
+Does not include
+- symbols defined and documented in userdefs.h
+- symbols expected to be set by compiler to indicate system type or
+  compiler features
+- many symbols set and used only in connection with the ./configure
+  mechanism - the full and current list can be found in config.hin
+  (as a template) or, after running ./configure, in lynx_cfg.h.
+- most symbols and macros defined in the source code
+
+***Not complete.***
+
+A. Symbols primarily to enable compilation on specific systems
+==============================================================
+See also under B for things needed by some systems.
+
+# if you have an SVR4 system with the "type any key" problem, try defining
+#
+# -DSVR4_BSDSELECT
+
+# Old Data General systems may need this in their SITE_LYDEFS
+# for their inet_addr(host) calls.
+#
+# -DDGUX_OLD
+
+---
+Ports have been added for Win32 (95/NT) and 386 DOS computers with a
+packet driver.  I created four new defines to accomplish this.
+	_WINDOWS Defined for Win32 specific code (Mostly TCP related)
+	DJGPP    Defined for 386 specific code (Mostly TCP related)
+	DOSPATH  Defined for any DOS'ish computer
+	NOSIGHUP Defined for computers not supporting sighup signal calls.
+-- Wayne Buttles lynx-port@fdisk.com
+
+Added for 8+3 filesystems (DOS):
+	FNAMES_8_3  also defined in userdefs.h if __DJGPP__
+
+* incorporate changes for win32 by Hiroyuki Senshu <senshu@shonai-cit.ac.jp>
+  (SH) from
+    ftp://crab.it.osha.sut.ac.jp/pub/Win32/develope/senshu/Lynx/
+  Most changes are ifdef'd
+    #define _WIN_CC=    .... for Windows C Compiler
+    #define CJK_EX      .... CJK EXtension
+    #define SH_EX       .... Senshu Hiroyuki EXtension
+    #define WIN_EX      .... Windows EXtension
+
+
+B. Symbols to enable or disable specific features, mostly
+=========================================================
+Note that some of these may be only usable on some system types,
+most were originally for UNIX.
+
+Network related, specific protocols
+-----------------------------------
+# -DSOCKS          For making a SOCKSified lynx.
+       			see comments in makefile.in
+# -DSHORTENED_RBIND  For a SOCKSified lynx with the short version of Rbind.
+               		see comments in makefile.in
+
+Related to DirEd code - probably only usable for UNIX or similar
+----------------------------------------------------------------
+# -DDIRED_SUPPORT  (see INSTALLATION, Section II-1c)
+# -DOK_GZIP        (see INSTALLATION, Section II-1c)
+# -DOK_OVERRIDE    (see INSTALLATION, Section II-1c)
+# -DOK_PERMIT      (see INSTALLATION, Section II-1c)
+# -DOK_TAR         (see INSTALLATION, Section II-1c)
+# -DOK_UUDECODE    (see INSTALLATION, Section II-1c)
+# -DOK_ZIP         (see INSTALLATION, Section II-1c)
+# -DOK_INSTALL     to enable dired menu "Install" function
+# -DARCHIVE_ONLY   (see INSTALLATION, Section II-1c)
+# -DNO_CHANGE_EXECUTE_PERMS (see INSTALLATION, Section II-1c)
+# -DCANT_EDIT_UNWRITABLE_FILES (see LYEdit.c - always in effect for VMS)
+
+Related to formatting of local directory listings
+-------------------------------------------------
+# -DLONG_LIST      (see INSTALLATION, Section II-1c)
+# -DNO_PARENT_DIR_REFERENCE (see INSTALLATION, Section II-1c)
+
+Related to screen display
+-------------------------
+Using curses or ncurses library:
+# -DNCURSES        (see INSTALLATION, Section II-1c)
+# -DFANCY_CURSES   whether curses lib supports more than very basic stuff
+                   for UNIX handled by ./configure, for VMS defined in code
+# -DNO_KEYPAD (old) or HAVE_KEYPAD (new)   whether curses lib uses keypad().
+                   for UNIX handled by ./configure, may be set in HTUtils.h
+# -DCOLOR_CURSES    whether curses lib supports color (in the right way).
+                   for UNIX handled by ./configure
+# -DUSE_COLOR_STYLE (see INSTALLATION, Section II-1c) needs SVr4 curses
+# -DUNDERLINE_LINKS  Define if you want links underlined instead of bold.
+# -DHP_TERMINAL    For DIM workaround to REVERSE problems on HP terminals.
+# -DNO_SIZECHANGE (old) or HAVE_SIZECHANGE (new) whether using code to detect
+                   new size after size changes of the terminal (window).
+                   for UNIX handled by ./configure, may be set in HTUtils.h
+# -DUSE_SCROLLBAR  supports scrollbar when built with ncurses
+# -DWIDEC_CURSES   whether curses lib supports wide/multibyte characters.
+
+Using slang library:
+# -DUSE_SLANG      (see INSTALLATION, Section II-1c)
+# -DSLANG_MBCS_HACK prevent cutoff lines when using UTF8 console (slang only)
+Both:
+# -DREVERSE_CLEAR_SCREEN_PROBLEM
+# 	if you have the reverse clear screen problem of some SUN4 systems, or
+# 	to work around some other "garbage on the screen" problems
+
+Other general
+-------------
+# -DIGNORE_CTRL_C  Define if Control-C shouldn't exit lynx.
+# -DINACTIVE_INPUT_STYLE_VH  Different style for showing inactive text fields
+# -DMISC_EXP       Enable some truly experimental stuff
+# -DNO_DUMP_WITH_BACKSPACES Disables -with_backspaces code
+# -DNO_RULES	   Disables code for CERN-style rules files
+# -DUSE_VASPRINT   Use vasprintf() function
+
+Untested
+--------
+# -DNO_EXTENDED_HTMLDTD	Disable some "SortaSGML" code, see SGML.c
+# -DWIND_DOWN_STACK Aggressive handling of end tags for "TagSoup", SGML.c
+
+C. Secondary symbols
+====================
+Some macros that are not primary, i.e. they are normally automatically
+set or unset in the code based on other macros (including those from
+./configure), but it may be sometimes useful to set them differently.
+They may directly affect several source files.  Filenames show where
+they are set.  Normally installers shouldn't have to care about these
+symbols.
+
+COOKIE_FILE		LYMain.c	default cookie file in HOME dir
+SHOW_WHEREIS_TARGETS	LYCurses.h	whereis search highlighting
+USE_KEYMAPS		LYCurses.h	use of .lynx-keymaps files
+
+D. Symbols defined locally to modify some behavior
+==================================================
+Defined in the source files to which they apply.  Only filenames are listed,
+the files would have to be read and edited anyway to change the definition.
+Normally installers shouldn't have to care about any of these symbols.
+
+ADVANCED_INFO				LYShowInfo.c
+ALLOW_PROXY_HEAD			LYUtils.c
+CHECK_FREE_MEM				GridText.c
+CLEAN_URLS				HTParse.c
+DEBUG_HOSTENT				HTTCP.c
+DEBUG_HOSTENT_CHILD			HTTCP.c
+DEFAULT_INVCHECK_BV			LYCookie.c
+DUPLICATE_ANCHOR_NAME_WORKAROUND	HTAnchor.c
+EXTENDED_OPTION_LOGIC			LYMain.c
+EXTENDED_STARTFILE_RECALL		LYMain.c
+OPTNAME_ALLOW_DASHES			LYMain.c
+OVERLAP					HTNews.c
+RESTRICT_NM_ALLOW_DASHES		LYUtils.c
+SOCKET_DEBUG_TRACE			HTTCP.c
+TRADITIONAL_SUFFIXES			HTInit.c
+USE_XHDR				HTNews.c
+max_cookies_buffer			LYCookie.c
+max_cookies_domain			LYCookie.c
+max_cookies_global			LYCookie.c
+reverse_mailcap				HTInit.c
diff --git a/docs/README.jp b/docs/README.jp
new file mode 100644
index 00000000..c44d35a7
--- /dev/null
+++ b/docs/README.jp
@@ -0,0 +1,130 @@
+README for Japanese
+===================
+
+This document shows some supplements for Japanese in Japanese.
+¤³¤Îʸ½ñ¤Ç¤ÏÆüËܸì¤Ç¸æÍøÍѤÎÊý¤Î¤¿¤á¤ÎÊä­»ö¹à¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+
+1. ³µÍ×
+
+Lynx Version 2.8.3 (¤È¶²¤é¤¯¤½¤ì°Ê¹ß¤Î Lynx) ¤Ç¤Ï¡¢2.8.2 °ÊÁ°¤Î
+¤â¤Î¤ÈÆüËܸì¤Îʸ»ú¥³¡¼¥É¤Î°·¤¤¤¬°Û¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¤³¤Îʸ½ñ¤Ç¤Ï 
+Lynx ¤òÆüËܸì´Ä¶­¤ÇÍøÍѤµ¤ì¤ë¾ì¹ç¤Î¸ÇÍ­¤ÎÀßÄê¤ò´Êñ¤ËÀâÌÀ¤·¤Þ¤¹¡£
+
+ÆÃ¤Ë ASSUME_CHARSET ¤Î°·¤¤¤¬Êѹ¹¤µ¤ì¤¿´Ø·¸¾å¡¢°ÊÁ°¤ÈƱ¤¸ÀßÄê¤ÇÍøÍÑ
+¤·¤Æ¤¤¤ë¤È½¾Íèʸ»ú²½¤±¤·¤Æ¤¤¤Ê¤«¤Ã¤¿Ê¸¾Ï¤¬Ê¸»ú²½¤±¤·¤Æ¤·¤Þ¤¦²ÄǽÀ­¤¬
+¤¢¤ê¤Þ¤¹¤Î¤Ç¸æÃí°Õ¤¯¤À¤µ¤¤¡£¤³¤ÎÅÀ¤Ë´Ø¤·¤Æ¤Ï¡¢¤³¤Îʸ½ñ¤Î
+¡Ö4. lynx.cfg ¤ÎÀßÄê¡×¤Î¾Ï¤ò¸æ»²¾È¤¯¤À¤µ¤¤¡£
+
+
+2. ÆüËܸì¤Îʸ½ñ¤Î¿·¤·¤¤½èÍýÊýË¡
+
+(1) ÆüËܸì¤Çµ­½Ò¤µ¤ì¤¿ HTML ʸ½ñ¤Îʸ»ú¥³¡¼¥É (Character-Set) ¤¬¡¢
+    META Í×ÁÇ¡¢¤â¤·¤¯¤Ï HTTP ¤Î±þÅú¤Ç»ØÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢Ê¸½ñ¤¬
+    ¤½¤Îʸ»ú¥³¡¼¥É¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤È²¾Äꤷ¤Æ½èÍý¤·¤Þ¤¹¡£
+
+(2) (1) °Ê³°¤Î¾ì¹ç¤Ç¡¢ASSUME_CHARSET ¤¬ shift_jis ¤â¤·¤¯¤Ï euc_jp ¤Ë
+    ÀßÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢Ê¸½ñ¤¬¤½¤Îʸ»ú¥³¡¼¥É¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤È²¾Äꤷ¤Æ
+    ½èÍý¤·¤Þ¤¹¡£
+
+(3) (1) ¤ª¤è¤Ó (2) °Ê³°¤Î¾ì¹ç¡¢Ê£¿ô¤Îʸ»ú¥³¡¼¥É¤òÍѤ¤¤Æ¤Ò¤È¤Ä¤Îʸ½ñ¤¬
+    ½ñ¤«¤ì¤Æ¤¤¤Ê¤¤¤È²¾Äꤷ¤Æ½èÍý¤·¤Þ¤¹¡£
+
+
+3. ¥¤¥ó¥¹¥È¡¼¥ë
+
+¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë¤ª¤±¤ëÆüËܸì¸ÇÍ­¤ÎÀßÄê¤Ë¤Ï°Ê²¼¤Î¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£
+ɬÍפ˱þ¤¸¤ÆÀßÄê¤òÊѹ¹¤·¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤¯¤À¤µ¤¤¡£
+
+configure ¥ª¥×¥·¥ç¥ó
+  ¡¦enable-cjk
+        À齩»á¤Ë¤è¤ë¼ç¤ËÆüËܸì¤Î½èÍý¤Ë¤«¤«¤ï¤ë³ÈÄ¥¤òÍ­¸ú¤Ë¤¹¤ë¤¿¤á¤Î
+        ¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£¤³¤ì¤é¤Î³ÈÄ¥¤Ïº£¸åɸ½à¤ÇÁȤ߹þ¤Þ¤ì¤ë¤«¡¢Â¾¤Î
+        ¥ª¥×¥·¥ç¥ó¤Ë¤è¤êÍ­¸ú¤Ë¤¹¤ëÊý¿Ë¤Î¤¿¤á¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¾­Íè
+        Çѻߤµ¤ì¤ë¤È»×¤ï¤ì¤Þ¤¹¡£
+
+¥Þ¥¯¥í
+  ¡¦USE_TH_JP_AUTO_DETECT
+        Á°¾Ï (3) ¤Î½èÍý¤òÍ­¸ú¤Ë¤·¤Þ¤¹¡£
+        ¤³¤Î¥Þ¥¯¥í¤Ï userdefs.h ¤Ë¤ª¤¤¤Æɸ½à¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+
+  ¡¦KANJI_CODE_OVERRIDE
+        ʸ½ñ¤Îʸ»ú¥³¡¼¥É¤ò¥æ¡¼¥¶¤¬»ØÄê¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë½èÍý¤òÍ­¸ú¤Ë
+        ¤·¤Þ¤¹¡£¤³¤Î»ØÄê¤Ï¡¢META Í×ÁÇ¡¢HTTP ¤Î±þÅú¡¢ASSUME_CHARSET 
+        ¤Ç»ØÄꤵ¤ì¤¿Ê¸»ú¥³¡¼¥É¤è¤ê¤âÍ¥À褵¤ì¤Þ¤¹¡£¼ç¤Ëʸ½ñ¤¬´Ö°ã¤Ã¤¿
+        ʸ»ú¥³¡¼¥É¤ò»ØÄꤷ¤Æ¤¤¤¿¾ì¹ç¤ËÍ­¸ú¤Ç¤¹¡£Ê¸»ú¥³¡¼¥É¤Ï ^L ¤Ë¤è¤ê
+        ÀÚ¤êÂؤ¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤À¤·¡¢Â¿¤¯¤Î¥±¡¼¥¹¤Ç¤ÏÉÔÍפǤ¹¡£
+        ¤³¤Î¥Þ¥¯¥í¤Ïɸ½à¤ÇÄêµÁ *¤µ¤ì¤Þ¤»¤ó*¡£
+
+  ¡¦SH_EX
+        À齩»á¤Ë¤è¤ë°ìÈÌŪ¤Ê³ÈÄ¥¤òÍ­¸ú¤Ë¤¹¤ë¤¿¤á¤Î¥Þ¥¯¥í¤Ç¤¹¡£
+        ¤³¤Î¥Þ¥¯¥í¤òÀßÄꤹ¤ë¤È¡¢¾åµ­ KANJI_CODE_OVERRIDE ¤òÍ­¸ú¤Ë
+        ¤·¤¿¾ì¹ç¤Îʸ»ú¥³¡¼¥É¤¬²èÌ̾åÉô¤Ë¾ï¤Ëɽ¼¨¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
+        ¤³¤Î¥Þ¥¯¥í¤Ïɸ½à¤ÇÄêµÁ *¤µ¤ì¤Þ¤»¤ó*¡£
+
+
+4. lynx.cfg ¤ÎÀßÄê
+
+********************   ½Å Í×   ********************
+lynx.cfg ¤Ç¤Ï ASSUME_CHARSET¡¢ASSUME_LOCAL_CHARSET¡¢
+ASSUME_UNREC_CHARSET ¤òÀßÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
+********************   ½Å Í×   ********************
+
+Lynx Version 2.8.3 °Ê¹ß¤Ç¤Ï¡¢ÆüËܸì¤Çµ­½Ò¤µ¤ì¤¿ HTML ʸ½ñ¤Îʸ»ú¥³¡¼¥É
+¤¬ÌÀ¼¨Åª¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¡¢ASSUME_CHARSET ¤¬ shift_jis ¤â¤·¤¯¤Ï 
+euc_jp ¤ËÀßÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢Ê¸½ñ¤¬¤½¤Îʸ»ú¥³¡¼¥É¤Çµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤È
+²¾Äꤷ¤Æ½èÍý¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
+
+¤¿¤À¤·¡¢ASSUME_CHARSET ¤ò»ØÄꤷ¤Ê¤¯¤Æ¤âÆüËܸì¤Îʸ»ú¥³¡¼¥É¤Ï¼«Æ°Åª¤Ë
+ȽÊ̤µ¤ì¡¢Â¿¤¯¤Î¥±¡¼¥¹¤Ç¤ÏŬÀڤ˽èÍý¤µ¤ì¤Þ¤¹¡£¤à¤·¤í¡¢ASSUME_CHARSET 
+¤ò shift_jis ¤ä euc_jp ¤Ë»ØÄꤷ¤Æ¤¤¤ë¤È¡¢¤½¤ì¤¾¤ì EUC¡¢SJIS ¤Ç½ñ¤«¤ì¤¿
+ʸ½ñ¤¬Ê¸»ú²½¤±¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
+
+½¾¤Ã¤Æ¡¢lynx.cfg Æâ¤Ë¡¢
+
+-------------------- ¤³¤³¤«¤é --------------------
+ASSUME_CHARSET:euc-jp
+-------------------- ¤³¤³¤Þ¤Ç --------------------
+
+¤Î¤è¤¦¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤Èʸ»ú²½¤±¤Î¸¶°ø¤Ë¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢ÆäËÍýͳ¤¬¤Ê¤¤
+¸Â¤ê¡¢°Ê²¼¤Î¤è¤¦¤Ë¥³¥á¥ó¥È¥¢¥¦¥È¤¹¤ë¤Ê¤É¤·¤Æ ASSUME_CHARSET ¤¬ÀßÄê
+¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤ (ASSUME_LOCAL_CHARSET¡¢ASSUME_UNREC_CHARSET 
+¤Ë¤Ä¤¤¤Æ¤âƱÍÍ)¡£
+
+-------------------- ¤³¤³¤«¤é --------------------
+#ASSUME_CHARSET:euc-jp
+-------------------- ¤³¤³¤Þ¤Ç --------------------
+
+ɬÍפǤ¢¤ì¤Ð ASSUME_CHARSET ¤Ï¥ª¥×¥·¥ç¥ó¥á¥Ë¥å¡¼¡¢¤â¤·¤¯¤Ï
+¥³¥Þ¥ó¥É¥é¥¤¥ó¥ª¥×¥·¥ç¥ó¤«¤éÊѹ¹¤·¤Æ²¼¤µ¤¤¡£
+
+Êä­:
+ASSUME_LOCAL_CHARSET ¤Ï Lynx Version 2.8.3 ¤Ç¤Ï»²¾È¤·¤Æ¤¤¤Ê¤¤¤«¤â
+¤·¤ì¤Þ¤»¤ó¤¬¡¢¾­Í軲¾È¤¹¤ë¤è¤¦¤Ë¤Ê¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤Î¤Ç¡¢¤ä¤Ï¤êÀßÄê
+¤·¤Ê¤¤Êý¤¬¤¤¤¤¤È»×¤¤¤Þ¤¹¡£
+
+
+5. ÆüËܸ줬ʸ»ú²½¤±¤·¤¿¤é
+
+¤¹¤Ù¤Æ¤ÎÆüËܸì¤Ç½ñ¤«¤ì¤¿Ê¸½ñ¤¬Ê¸»ú²½¤±¤¹¤ë¤Ê¤é¡¢¥ª¥×¥·¥ç¥ó¥á¥Ë¥å¡¼¤Ç
+¡ÖDisplay Character Set¡×¤ò¡ÖJapanese (EUC-JP)¡×¡¢¤â¤·¤¯¤Ï 
+¡ÖJapanese (Shift_JIS)¡×¤ËÊѹ¹¤·¤Æ¡¢Êѹ¹¤òÊݸ¤·¤Æ¤¯¤À¤µ¤¤¡£
+¤â¤·¤¯¤Ï lynx.cfg Æâ¤Ç CHARACTER_SET ¤ò euc-jp ¤â¤·¤¯¤Ï shift_jis ¤Ë
+ÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
+
+°ìÉô¤ÎÆüËܸì¤Ç½ñ¤«¤ì¤¿Ê¸½ñ¤¬Ê¸»ú²½¤±¤¹¤ë¤Ê¤é¡¢Á°¾Ï¡Ö4. lynx.cfg ¤ÎÀßÄê¡×
+¤ò»²¾È¤·¡¢ASSUME_CHARSET ¤òÀßÄꤷ¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤«¡¢¤â¤·¤¯¤Ï¥ª¥×¥·¥ç¥ó
+¥á¥Ë¥å¡¼¤Ç¡Öassumed document character set¡×¤ÎÉôʬ¤ò»²¾È¤·¡¢shift_jis 
+¤ä euc-jp ¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¤«³Îǧ¤·¡¢¤â¤·¤Ê¤Ã¤Æ¤¤¤¿¤é iso-8859-1 Åù¤ËÊѹ¹
+¤·¤Æ¡¢Lynx ¤¬ÆüËܸì¤Îʸ»ú¥³¡¼¥É¤ò¼«Æ°È½Ê̤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
+
+¤½¤ì¤Ç¤âʸ»ú²½¤±¤¹¤ë¾ì¹ç¤Ï¡¢
+  ¡¦META Í×ÁÇ¡¢¤â¤·¤¯¤Ï HTTP ¤Î±þÅú¤Ç»ØÄꤵ¤ì¤Æ¤ëʸ»ú¥³¡¼¥É¤È¤Ï°Û¤Ê¤ë
+    ʸ»ú¥³¡¼¥É¤Çʸ½ñ¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
+¤â¤·¤¯¤Ï
+  ¡¦¤Ò¤È¤Ä¤Îʸ½ñÃæ¤ËÊ£¿ô¤Îʸ»ú¥³¡¼¥É¤Ç½ñ¤«¤ì¤¿Ê¸»ú¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë
+¤È»×¤ï¤ì¤Þ¤¹¡£Á°¼Ô¤Î¾ì¹ç¤Ïʸ½ñ¤Î´ÉÍý¼Ô¤Ë²þÁ±¤ò°ÍÍꤹ¤ë¤«¡¢
+KANJI_CODE_OVERRIDE ¤òÄêµÁ¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¤¿ Lynx ¤ò¤ª»È¤¤¤¯¤À¤µ¤¤¡£
+¸å¼Ô¤Î¾ì¹ç¤Ï»ÄÇ°¤Ç¤¹¤¬¤¢¤­¤é¤á¤Æ¤¯¤À¤µ¤¤¡£
+----
+2000/3/28 Takeshi Hataguchi <patakuti@t3.rim.or.jp>
+---- $LynxId: README.jp,v 1.2 2011/06/06 00:35:13 tom Exp $
diff --git a/docs/README.metrics b/docs/README.metrics
new file mode 100644
index 00000000..4f3a55d6
--- /dev/null
+++ b/docs/README.metrics
@@ -0,0 +1,174 @@
+-- $LynxId: README.metrics,v 1.5 2009/07/05 23:15:28 tom Exp $
+
+This is a short summary of code metrics showing how lynx has grown from
+release to release.  It also shows how the original codebase has
+been almost completely replaced by contributors after the release of
+lynx 2.4.2 in 1996.  The numbers shown are for lines of text, to keep
+the presentation simple.
+
+Release         Current                 Original
+-------------------------------------------------------------------------------
+                Text    C-code          Text    C-code  % Text  % Code
+-------------------------------------------------------------------------------
+2.4.2            77210   63463          77210   63463   100     100
+2.6             112970   92869          58859   49665    52      53
+2.7.1           125723  103489          54121   45111    43      43
+2.7.2           162228  123130          48979   40655    30      33
+2.8.1           191738  133778          37286   33582    19      25
+2.8.2           227160  147485          32227   29004    14      19
+2.8.3           248646  166833          29035   26346    11      15
+2.8.4           310436  168108          28364   25751     9      15
+2.8.5           362834  167358          26900   24355     7      14
+2.8.6           395237  169885          26423   23565     7      13
+                                        16053   13195     4       8
+2.8.7           439742  181073          25621   22786     6      12
+                                        15916   13081     4       7
+
+Beginning with 2.8.6, the fraction of remaining original codebase is shown as a
+range (computed by comparing against 2.4.2 indented, or original), since all C
+source code is automatically indented using the indent.sh script.
+
+Current lynx releases contain a large amount of text other than C code.
+That includes plain text, html, message libraries, custom and generated
+scripts.
+
+-------------------------------------------------------------------------------
+
+Here is a count of contributions (from CHANGES and docs/CHANGES2.8) since the
+start of the 2.8 series:
+
+    0.5	AJL
+    3  	Al Gilman
+    1  	Alexei Anatski
+    2  	Alexey Dobriyan
+    2  	Andrew Belov
+    3.5	Andrey A Chernov
+    1  	Arkadiusz Miskiewicz
+    1  	Arnaud Giersch
+    2  	Atsuhito Kohda
+   23.5	Bela Lubkin
+    1  	Bill Nottingham
+    3.5	Bill Schiavo
+    2  	Binh Do
+    1  	Brett Lymn
+   46.3	Brian J Pardy
+    1  	Carlton Anderson
+    1  	Charles Karney
+    1  	Chris Adams
+    1  	Christian Hudon
+    1  	Christian Jensen
+    2.5	Christian Weisgerber
+    1  	Chuck Houpt
+    1  	Crouton
+    1  	Dan Jacobson
+    1  	Daniel Dickman
+    1  	David Combs
+    1  	David Henderson
+    0.5	David Woolley
+    1  	Dick Wesseling
+  127.7	Doug Kaufman
+    1  	Duncan Simpson
+    2.5	Eduardo Chappa
+    2  	Emanuele Giaquinta
+    1  	Eric Brun
+   39  	External
+    1  	Fabian Fingerle
+  280.5	Foteos Macrides
+    1  	Frank Heckenbach
+    4.3	Frederic L W Meunier
+    1  	Frederick P Herrmann
+    1  	Georg Drenkhahn
+    1  	George Lindholm
+   21  	Gisle Vanem
+    1  	Glenn Nielsen
+   26  	Hataguchi Takeshi
+    1  	Heikki Kantola
+    0.5	Helen Sommer
+   23  	Henry Nelson
+    1  	Hiram Lester Jr
+    8.5	Hiroyuki Senshu
+    3  	Hynek Med
+    0.3	Igor B Poretsky
+   84.8	Ilya Zakharevich
+    6.5	Ismael Cordeiro
+    2  	J Kevin Ternes
+    1  	Jacob Poon
+   27.5	James E Spath
+    1  	Jan Hlavacek
+    2.5	Jason F McBrayer
+    1  	Jean-Yves Levesque
+    1  	Jeffrey C Honig
+    1  	Jens Schmalzing
+    1  	Jens Seidel
+    1  	Jerome Lauret
+    2  	Joey Schulze
+    0.3	Johannes Hromadka
+   35  	John Bley
+    6  	John E Davis
+    1  	John Hawkinson
+    1  	John Nowlin
+    2  	Jonathan Sergent
+    2  	Julian Coleman
+    3  	Karl Eichwalder
+    1  	Karl-Andre Skevik
+   29.3	Kim DeVaughn
+  706.3	Klaus Weide
+    1  	Lalo Martins
+    1  	Larry Virden
+   15.8	Larry W Virden
+   11  	Laura Eaves
+  342.3	Leonid Pauzner
+    1  	Liam Davis
+    1  	Marc Huber
+    0.3	Marek Kubita
+    2  	Masashi Fujita
+    1  	Masayasu Ishikawa
+    1  	Masayuki Hatta
+    1  	Matt Kraal
+    1  	Michael Sobolev
+    6.5	Michael Warner
+    1  	Michel Such
+    1  	Mike Castle
+    1  	Mike Knight
+    2  	Munechika Sumikawa
+    1  	Nigel Horne
+    1  	Pat Walsh
+   11.5	Paul B Mahol
+    1  	Paul D Smith
+   52.5	Paul Gilmartin
+    1  	Peter Canning
+    1  	Phil Pennock
+   27.3	Philip Webb
+   14  	Philippe De Muyter
+    5.5	Rado Smiljanic
+    1  	Randall
+    1  	Risto Widenius
+    1  	Rob Cameron
+    1  	Ryan Nielsen
+    2  	Scott Bigham
+    1  	Sergej Kvachonok
+    6  	Sergey Svishchev
+    1  	Serhii Hlodin
+   15  	Sinan Kaan Yerli
+    7.8	Stefan Caunter
+    1  	Stepan Kasal
+    1  	Tadayoshi Okuma
+    1  	Takao Fujiwara
+    1  	Thomas Braun
+ 1810.3	Thomas E Dickey
+    0.5	Thomas Klausner
+    1  	Thomas Viehmann
+   15.5	Thorsten Glaser
+    1  	Tim Chase
+    4  	Tim Larson
+    1  	Timur Birsh
+    2  	Tomas Vanhala
+    1.5	Ulf Harnhammar
+    6.5	Victor Schneider
+    2  	Ville Herva
+   86  	Vlad Harchev
+   37.5	Wayne Buttles
+    1  	Wesley Morgan
+    1  	Zdenek Prikryl
+    1.5	nsh@horae.dti.ne.jp
+ 4096  	Total
diff --git a/docs/README.options b/docs/README.options
new file mode 100644
index 00000000..b388d4c3
--- /dev/null
+++ b/docs/README.options
@@ -0,0 +1,81 @@
+README.options
+
+Using the lynx browser [O]ptions configuration tool. 
+
+General Usage on a unix system:
+
+Press "O" at any time in your lynx session to access this utility page. 
+This is one of several custom "system" URLs that cause lynx to self-configure.
+
+Please note:
+Ensure and confirm that your [O]ptions session is flushed to disk, by selecting:
+
+Save options to disk: [_] before selecting "Accept Changes".
+
+This freshens your .lynxrc file, which is your default "personal" configuration
+for the lynx browser.  Otherwise you will only affect settings for your 
+individual session; they aren't remembered next time you use lynx, (since you
+actually did not tell lynx to remember them).
+
+This disk write to .lynxrc is not default behaviour for [O]ptions
+configurations. The lynx browser tends to tread lightly at first. Note that 
+you must first have permission on your system to create, write to and read
+from a .lynxrc file in your home directory.
+
+Using some of the menu items:
+
+User mode controls the amount of "on screen" help at the bottom of the screen.
+You get the familiar view of the link target you are on when you use ADVANCED
+user mode, and this also gives you the most top to bottom screen area. 
+ADVANCED user mode also allows for sub bookmark functionality (see below). 
+
+The (for now) command line only option --nomargins provides the largest 
+readable left to right screen coverage.
+
+Editor is for jumping to vi or whatever you prefer during local file edits
+and for textarea editing with ^Xe if you are filling out a form while browsing.
+
+Please see README.cookies for a brief cookie handling discussion.
+
+Multi-bookmarks allows several files to be your bookmarks; it will introduce
+a browse list of them if they are defined as below.
+
+Once the Multi-bookmarks setup on Options is done and has been written out to
+your .lynxrc (remember to Accept Changes and to Save Changes to disk),
+in .lynxrc you will see a list of 25 possible "other" bookmark files 
+(26 letters minus "A") - you need to then associate some of them with 
+(meaningful) filenames to get the Multi-bookmark menu.
+
+Note that the files must be relative to your home directory. 
+
+The best way to create and manage them is by using the MultiBookmarkMenu (MBM) 
+configuration tool selectable from the [O]ptions menu. 
+
+The MBM allows you to describe the sub bookmark, and name a file relative 
+to your home directory that will contain the html for the saved links.
+You populate one of the lettered sub bookmarks, describe it, and provide a 
+filename. ">" saves the edits, and ^G cancels edits.
+
+The sub bookmarks will be accessible by pressing the associated key from a
+menu when invoking the bookmark choice (lynx -book, or 'V' in a session), or 
+when saving new bookmarks. You can directly access your sub bookmarks by letter
+key alone by defining sub_bookmarks=ADVANCED in .lynxrc or lynx.cfg, if you 
+have ADVANCED general user mode selected as well.
+The Multi-bookmark submenu can still be seen in ADVANCED by pressing "=", and
+is always seen in STANDARD mode.
+
+They are seen in your .lynxrc like so:
+
+multi_bookmarkB=cars,Cars
+multi_bookmarkC=news,News
+multi_bookmarkD=sports,Sports
+
+Filename precedes description in .lynxrc, whereas in the MBM configuration
+utility, the description is the left column, and the filename is in the right
+column displayed.
+
+
+Stef Caunter 
+http://caunter.ca/contact.html
+http://caunter.ca/README.options
+
diff --git a/docs/README.release b/docs/README.release
new file mode 100644
index 00000000..a5dbd808
--- /dev/null
+++ b/docs/README.release
@@ -0,0 +1,14 @@
+-- $LynxId: README.release,v 1.1 2009/09/06 13:57:02 tom Exp $
+
+The version number with dots appears in, e.g.,
+	README
+	docs/README.metrics
+	lynx.hlp
+	lynx.man
+	lynx_help/Lynx_users_guide.html
+
+The version number with dashes appears in several places, e.g.,
+	lynx.cfg
+	lynx_help/lynx_help_main.html
+	makefile.in
+	userdefs.h
diff --git a/docs/README.rootcerts b/docs/README.rootcerts
new file mode 100644
index 00000000..fb294d11
--- /dev/null
+++ b/docs/README.rootcerts
@@ -0,0 +1,308 @@
+	DOS/Windows-oriented notes on Root Certificates
+
+To use certificates or a cert bundle within an SSL enabled
+application such as lynx you must place your certificate
+files into a known directory, and set the environment
+variables to a proper value (e.g. in CONFIG.SYS file).
+
+ set SSL_CERT_DIR=x:/usr/local/ssl/certs
+ set SSL_CERT_FILE=x:/usr/local/ssl/cert.pem
+
+(See "What are root certificates" below.)
+
+
+Q.  Why would I want to install openssl.exe?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+openssl.exe is used to manage certificates.  (See "What are root certificates"
+below.)
+
+Q.  How to install openssl.exe?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Put openssl.exe in a directory in your PATH and the DLLs to a directory
+in your LIBPATH.
+
+Copy conf\openssl.cnf.demoCA to a directory of your
+choice, rename it to openssl.conf and set the environment variable
+OPENSSL_CONF by putting
+
+SET OPENSSL_CONF=<your-directory>\openssl.cnf
+
+into CONFIG.SYS.
+
+
+Q. Why is this document so paranoid?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+If you want to use OpenSSL, then probably your Internet transactions have
+*real* monetary value embedded in them.  And as usual, the security is as good
+as the weakest link.  This document unravels only the tip of the iceberg
+of what can go wrong with improperly established "secure" connections.  And
+given the monetary value involved, "bad guys" have a high incentive to exploit
+the weakest links.  As experience shows, do not underestimate the intelligence
+of bad guys...
+
+Really, with security, a little knowledge is a dangerous thing; one can
+suspect that many people, if they really understood the trust structures
+associated with SSL, would be rather careful about checking the details
+of certificates.
+
+Q. What are root certificates?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Making a secure connection is like sending your valuables (for storage or
+consumption) to somebody who agreed to be at a prearranged place.  To
+guard the valuables on the way there, you can ask for a police escort; this is
+what https:// connections are about.  However, it does not make any sense to
+have an escort if the goods are transfered to a random person who happens to be
+at this place; one needs to certify the identity of the receiver as well.
+
+The certification process is a chain; when site A wants to certify that it is
+actually what it claims, it actually says "Check this certificate with site B";
+to proceed, one needs to certify that site B is what it claims, so B may
+redirect to site C etc.  For this process to stop, some sites claim
+"You must know my certificate, check it yourself".  These certificates are
+"root certificates"; one cannot verify such a site unless one has the
+certificate for the "end of its certification chain".  If you don't have the
+relevant root certificate in your local certificates file, it means that
+you don't trust anyone to vouch for the authenticity of the site.
+
+So one should have a collection of known certificates from several well-known
+sites known as "Root Certification Authorities".  Most sites for large-scale
+businesses have certificates which will eventually resolve to these places.
+Such certicates represent people like Verisign that are in the business of
+confirming the identity of servers, etc.
+
+Additionally, since having yourself certified through another site costs,
+some sites avoid this cost via presenting "end-of-chain certificates".
+One should have a way to obtain these certificates via other means than
+insecure Internet connection (e.g., one can walk into the office and copy
+the certificate file to a floppy).  These are so-called "Self-signed
+certificates"; they are "root certificates" as well.  The locally-installed
+securely obtained copies of such certificates are referred to as
+"local certificates".  (See 'What is "Snake Oil Ltd."' below.)
+
+If you are presented with a locally-unresolvable root certificate, and you
+*believe* that you are really talking to the site, and not someone
+in between (who is either completely simulating the site or relaying
+your requests onto the real site - called a "man in the middle" attack),
+you will still have an encrypted connection.  Otherwise, you should act
+as though the site was an impostor, unless and until you manage to get
+a root certificate from a trustworthy source, and that root certificate
+represents someone that you would trust to have vetted the site you
+want to connect to.
+
+Local certificates are stored in SSL_CERT_FILE (this "cert bundle", usually
+named cert.pem, contains several signatures for "Root Certification
+Authorities") and SSL_CERT_DIR (which has a signature per file, and usually
+contain local copies of self-signed certificates).
+
+There are three crucial considerations to be added to this picture:
+
+  a) While there are ways to ensure that the receivers are who they claim,
+     there is absolutely no technological way to verify how *trustworthy*
+     the receiving party is.  It does not make sense to secure-send your
+     valuables to a certified receiver if this receiver is a crook (or will
+     just keep them later in a publicly accessible place).
+
+  b) "VeriSign Syndrome".  For the above scheme of "a chain of trust" to work,
+     the "Root Certification Authorities" should be *very* trustworthy
+     high-integrity entities.  Unfortunately, there are certain doubts that
+     this is so.  E.g., fall 2003, VeriSign started an attack on DNS scheme
+     which could disrupt the whole architecture of Internet (hijacking *all*
+     unclaimed Internet addresses and redirecting them to a promotional site;
+     google for VeriSign DNS hijack).
+
+     One major company even issued a Microsoft certificate to a company
+     other than Microsoft, and there had to be a Windows critical update
+     to block that certificate.
+
+  c) Keep in mind that the "big 2 browsers" are adding an increasing
+     number of root certificates, and most users fail to realise that they
+     are putting a trust in the supply chain for the browser to give them
+     the certificates of reliable organisations (the browser suppliers could
+     make bad choices, or the browser could have been hacked before you got
+     it).
+
+     Incidentally, standard browsers come with certificates representing
+     very different levels of identity verification, but most people accept
+     all of those supplied with the big 2 as equally valid.
+
+Q. How to obtain root certificates?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Certificate files, such as cert.pem, are security critical; you have to
+trust whoever supplies it to you; all your certification process is no more
+trustworthy than the site you downloaded cert.pem from.  So you shouldn't just
+accept any offer.
+
+One way is to copy them from a machine which already obtained them in a secure
+way.  Another one is to extract them from a web browser which was itself
+obtained in a secure way (see "How to extract certificates from Internet
+Explorer" below).  If anything else fails, obtaining a privately-generated
+bundle from third-parties, such as
+
+  http://www.kfu.com/~nsayer/encryption/ca-bundle.crt.text
+
+is *not* much better than no certificates at all, but may avoid some warnings
+from applications.  One of the places which has a bundle is the mod_ssl site.
+
+Q. Should you trust this distribution system?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+It is very hard to imagine a situation when the answer is different from
+"Absolutely not!".
+
+Indeed, obtaining the certificates is only half of the problem.
+The certificates are going to be checked by the SSL library.  Can you trust
+these executables (DLLs)?  Did you obtain the library via a secure connection?
+Are you sure that the place you obtained it from has reasonable security
+practice, so that the archive could not be tampered with?  The latter place
+most probably did not build the DLLs themselves; chances are they just
+store what a fourth-party supplied them.  Was *that* file transfer done via
+secure channels?  Can you trust this fourth-party so that it did not insert
+Trojans?
+
+Chances are that all of these questions are answered "No".  There are still
+major problems with bootstrapping security via the Internet...
+
+What about the application which uses these DLLs?  Do you have any reason to
+trust it?  What about the OS itself?  Did it come from a trustworthy source
+via trustworthy channels?  Are you sure it was not tampered with?
+
+Q.  How to compile and link with OpenSSL libraries?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Put the files from include and lib to your emx directory,
+or directories on C_INCLUDE_PATH and LIBRARY_PATH.
+Note that openssl should become a subdirectory of your include directory.
+If you need .lib files you can create them using emxomf.
+
+The supplied library files link against the new renamed dlls open_ssl and
+cryptsll.
+
+See the doc directory for some information and visit
+http://www.columbia.edu/~ariel/ssleay/ for more infos.
+
+
+Q. Why do you need your own keys and certificates?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+There are several situations: having a server which accepts secure connections;
+authenticating yourself to a server by means other than login/password,
+sending S-Mime crypto-mail, authenticating from a client browser to a server.
+In each of these situations one needs keys.
+
+The following sites may be useful:
+
+   http://www.pseudonym.org/ssl/ssl_cook.html#environment
+   http://the.earth.li/~sgtatham/putty/0.53b/htmldoc/Chapter8.html#8.2
+
+Q. How to generate your own keys and certificates?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+There are many ways. A good solution is to use sslRexx. It provides everything
+you need. PuTTYgen is a key generator that will work.
+
+Below is a short description of how I made my own Certification Authority,
+a Server Key for Apache and a client Key/Certificate for me, signed by my
+own CA.
+
+
+Q. Howto: Root CA (needed to self-sign all certificates)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Generate a CA-Key and store it in sub-directory private:
+
+  openssl genrsa -des3  -out private/MyOwnCA.pem 2048
+
+Make a selfsigned certificate based on above key.
+
+  openssl req -new -x509 -days 730 -key private/CAkey.pem -out CAcert.pem
+
+This certificate will expire in 2 years.
+
+Optional: generate text output of this certificate:
+
+  openssl x509 -in ./CAcert.pem -text > CAcert.txt
+
+Now you have a key and certificate for your own CA which can be used
+to sign user and server keys. The CAcert is also needed to configure
+Apache and Netscape. You can/should give away the CA certificate but
+never give the CA key to anybody.
+
+
+Q. Howto: Your Client Certificate/Key
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Generate a private key
+----------------------
+
+  openssl genrsa -des3 -out hrom-key.pem 2048
+
+
+Create a signing request (same command again)
+------------------------
+
+  openssl req -new -key hrom-key.pem -out hrom-req.pem
+
+Let the CA sign it (same command again)
+------------------
+
+  openssl ca -in hrom-req.pem -out hrom-cert.pem -outdir MyOwnCA/newcerts
+
+After you get back the certificate from the CA, combine it with
+your private key and store the result as p12 file. This file can
+be imported into your browser.  The browser will use this file to present
+to a server requiring it for access.
+
+  openssl pkcs12 -export -name Hromadka -in hrom-cert.pem -inkey hrom-key.pem -out hrom.p12
+
+
+Security Notes: Never give your private key to a CA, they only need the
+signing request. Never give away your p12 file. Always secure your private
+keys with a passphrase.
+
+
+Q. How to use c_rehash?
+~~~~~~~~~~~~~~~~~~~~~~
+
+One needs a working port of Perl and cp.exe to run this.  Set OPENSSL to the
+full name of openssl executable.  One may also need to change some ':' to
+$Config{path_sep}.  c_rehash finds certs from enviroment variables and allows
+them to be recognized by openssl.
+
+Q. How to extract certificates from Internet Explorer?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+To make your own file of certificates, go to the
+"Tools/Internet Options/Content/Certificates/Trusted Root Certificates"
+section of IE. Select all the certificates, then "export" to a file.
+It will be saved as a PKCS#7 file, with suffix ".p7b". You can call
+it "ca_bundle.p7b". Then use openssl to convert it with the command:
+"openssl pkcs7 -inform DER -in ca_bundle.p7b -print_certs -text -out cert.pem".
+Ask your system administrator to put the file "cert.pem" in the openssl
+directory and c_rehash it. Then lynx can check the certificates against the
+set of certificates that you (or Microsoft) trusts, and you won't get the
+warning message any more.
+
+Q. How to install a self-signed certificate?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+When you would like to trust a self-signed (non-commercial) certificate you will
+need to get hold of the actual file. If it's a cert local to your network you
+can ask the sysadmin to make it available for download as a link on a webpage.
+
+If such file is not human-readable it's probably DER formatted and will need to
+be converted to PEM format to allow openssl to use it.
+
+To convert DER formatted certificates into something openssl can deal with:
+
+Save the cert as site_name.crt in a directory. In that directory, type:
+
+  openssl x509 -inform DER -in site_name.crt -outform PEM -out site_name.pem
+
+You can now copy this individual cert into the directory for that and hash the
+cert by running c_rehash. A complete discussion of this procedure for unix is
+in the document README.sslcerts.
diff --git a/docs/README.ssl b/docs/README.ssl
new file mode 100644
index 00000000..c9d1c79e
--- /dev/null
+++ b/docs/README.ssl
@@ -0,0 +1,69 @@
+SSL support for Lynx 2.8.5pre.1
+-- adapted from http://www.mentovai.com/lynx/
+
+Lynx, in its unmodified form, will not allow you to make secure socket layer
+(SSL) connections.  SSL is used for the secure transfer of information over the
+Internet.  Many sites are now requiring SSL to ensure security for themselves
+and their users.  With a version of Lynx modified to support SSL, Lynx users
+can now visit these sites with ease as well.
+
+The SSL configure option (--with-ssl) for Lynx provides the ability to make use
+of SSL over HTTP for secure access to web sites (HTTPS) and over NNTP for
+secure access to news servers (SNEWS).  SSL is handled transparently, allowing
+users to continue accessing web sites and news services from within Lynx
+through the same interface for both secure and standard transfers.
+
+This is based on, and requires, the OpenSSL library.  OpenSSL's distribution
+and use may be restricted by licenses and laws.  For information on obtaining
+OpenSSL, as well as information on its distribution, see
+
+	http://www.openssl.org/
+
+The main distribution site is at
+
+	ftp://ftp.openssl.org/source/
+
+Lynx also has experimental support for GnuTLS (configure option --with-gnutls).
+For information on GnuTLS, see
+
+	http://www.gnu.org/software/gnutls/
+
+To test your version of Lynx for SSL support, try it out with an SSL site.
+Below are secure (https) pages which will load if your browser contains SSL
+support and you accept their certificates; they give you some information about
+the connection.
+
+	https://www.gnutls.org:5555/
+	https://www2.ggn.net/cgi-bin/ssl
+
+Lynx will complain about the certificate, since the certificate presented is
+untrusted.  You may accept this certificate to test your configuration, since
+it is a test, but it is a bad idea to blindly accept certificates from unknown
+websites if you are transmitting form data or files.
+
+You should review the document README.sslcerts for a detailed discussion of
+correct certificate handling possibilities and procedures in lynx.
+
+Users are reminded to check the laws and regulations about encryption software
+in their own countries.
+
+Here is the URL for US notification rules:
+
+	http://www.bxa.doc.gov/Encryption/PubAvailEncSourceCodeNofify.html
+
+Note that that isn't a typo; it really is "Nofify". The site contains
+links to the full EAR regulations.
+
+Lynx is GPL'd, for our own use it falls under the regulations in EAR section
+740.13(e)(1):
+
+    (1) Encryption source code controlled under 5D002, which would be
+        considered publicly available under section 734.3(b)(3) and
+        which is not subject an express agreement for the payment a
+        licensing fee or royalty for commercial production or sale of
+        any product developed with the source code, is released from
+        EI controls and may be exported or reexported without review
+        under License Exception TSU, provided you have submitted
+        written notification to BXA of the Internet location (e.g.,
+        URL or Internet address) or a copy of source code by the time
+        of export.
diff --git a/docs/README.sslcerts b/docs/README.sslcerts
new file mode 100644
index 00000000..39c3dcda
--- /dev/null
+++ b/docs/README.sslcerts
@@ -0,0 +1,265 @@
+        Lynx SSL support for certificates - README.sslcerts file
+
+BACKGROUND:
+
+The original README.ssl document for lynx stated:
+
+        Note that the server... may not have a valid certificate. Lynx will not
+        complain, as it does not yet support certificates...
+
+Such lack of support is no longer the case.  Lynx now features excellent
+certificate management through the openssl project.  There is almost no
+online documentation available regarding how to use openssl's certificate
+management with other programs, so this will accompany lynx and hopefully
+encourage good practical security for unix clients.
+
+Lynx relies on openssl to not only encrypt connections over https, but also to
+determine whether it should even accept a certificate and establish a secure
+connection with a remote host. Because of this reliance upon openssl by lynx,
+most of this tutorial deals with how to use openssl to "install" both
+vendor-provided CA cert bundles as well as self-signed certs from trusted sources
+and, most importantly, how to get them recognized by lynx.
+
+While lynx on many systems will transparently accept valid certificates, not
+all systems enjoy such functionality. Further, as noted above, older versions
+of lynx do not perform any validity checks on a certificate.
+
+There is also the common case of wanting to trust, use and install a
+self-signed certificate from a known server source and have it be trusted by
+client programs.
+
+Briefly, the procedure will involve confirming the default system location for
+certificates, setting values for SSL_CERT_DIR and SSL_CERT_FILE in
+the environment, and converting and hashing the certificates using openssl
+utilities to enable recognition.
+
+THE CURRENT SITUATION:
+
+Prior to lynx2.8.5dev9, lynx did not check at all for certificate validity.
+
+Since lynx2.8.5.dev9, lynx has reported this openssl error:
+
+SSL error:unable to get local issuer certificate-Continue? (y)
+
+whenever an https connection was initiated and the certificate could not be
+found, for whatever reason, by openssl, and therefore lynx.
+
+This checking for a certificate is an enhancement to security, but rather
+tediously generates errors at each https browser request.
+
+The ability to turn off reporting of this error to the user was added to
+lynx2.8.5dev16 as the FORCE_SSL_PROMPT setting in lynx.cfg as noted in the
+CHANGELOG:
+
+        This lets the user decide whether to ignore prompting for questionable
+        aspects of an SSL connection.
+
+While this is a convenient setting to employ when using lynx to script
+https -dumps, it by definition ignores the issue of certificate validity
+altogether. Those concerned with proper certificate management and
+the maintenance of a store of updated CA certificates will be uncomfortable
+with this relaxed security setting.
+
+The ability to accept a 'wildcard' certificate, where the first character
+is a '*' was added to lynx2.8.6dev18.
+
+PRELIMINARY PROCEDURES:
+
+It is assumed that openssl has been installed correctly, that the default
+cert directory is /usr/local/ssl/certs, (it's often /etc/ssl/certs, but we
+need a point of departure for the discussion) and that lynx has been compiled
+--with-ssl.
+
+The default location for certs on your system may be different, or there may not
+be one. You will have to substitute that location for /usr/local/ssl/certs in
+the following instructions, and/or set environment variables.
+
+To determine the default location for certs on your system you may run the
+following command:
+
+strings libcrypto.a  | grep -in cert | less
+
+Look in this output for SSL_CERT_DIR and SSL_CERT_FILE, and the lines just
+above them. This is your default location, respectively, for certificates,
+and the CA cert bundle, cert.pem. You will need to know where libcrypto.a is
+found of course.
+
+Example output:
+
+<snip>
+7490:/etc/ssl/certs
+7491:/etc/ssl/cert.pem
+7492:SSL_CERT_DIR
+7493:SSL_CERT_FILE
+<snip>
+
+Other possible example output:
+
+<snip>
+31555:/usr/local/ssl/certs
+31556:/usr/local/ssl/cert.pem
+31557:SSL_CERT_DIR
+31558:SSL_CERT_FILE
+<snip>
+
+Note that when OpenSSL is installed, the c_rehash utility is installed in a
+bin directory (default /usr/local/ssl/bin).  You will need to know where it
+is on your system. The command:
+
+whereis c_rehash
+
+will probably give useful results.
+
+Note also that there is no CA cert bundle distributed with OpenSSL. The
+OpenSSL team specifically decided NOT to do that. Getting a set of trusted
+certificates is left up to the installer.
+
+It is no longer a fairly trivial procedure to pull the bundle of trusted root certs out
+of a recent version of Internet Explorer. Multiple certificates are no longer 
+exportable as a DER formatted file; extraction of a single certificate is the only
+export for DER, and DER is what converts to PEM.
+
+Users with access to Apple OS X can export all certificates from Keychain Access System Roots as
+a .pem file. Place this in SSL_CERT_DIR and hash it and you're done.
+
+The MirOS BSD project also provides them. The procedure to convert and install them 
+is detailed later in this document, and if you simply need to have commercially provided 
+certificates trusted by lynx, you can skip down a few lines to the INSTALLING OR UPDATING
+THE CA BUNDLE section.
+
+Extracted Mozilla cert bundles are available for download from the curl project,
+http://curl.haxx.se/docs/caextract.html along with a script to extract from Mozilla
+source.
+
+
+INSTALLING A SELF-SIGNED CERTIFICATE:
+
+When you would like to trust a self-signed (non-commercial) certificate you will
+need to get hold of the actual file. If it's a cert local to your network you
+can ask the sysadmin to make it available for download as a link on a webpage.
+
+If such file is not human-readable it's probably DER formatted and will need to
+be converted to PEM format to allow openssl to use it.
+
+To convert DER formatted certificates into something openssl can deal with:
+
+Save the cert as site_name.crt in a directory. In that directory, type:
+
+openssl x509 -inform DER -in site_name.crt -outform PEM -out site_name.pem
+
+You can now copy this individual cert into the directory for that, usually
+/usr/local/ssl/certs.  The alternative is to concatenate the individual certs
+to the cert.pem bundle in /usr/local/ssl. (Please see INSTALLING OR UPDATING
+THE CA BUNDLE below).
+
+The cert file will now be in an acceptable format to openssl, PEM encoded.
+However, openssl, and by extension lynx, will not know about it until that
+cert is symbolically linked to a file named after the hash value of that cert,
+in the default directory /usr/local/ssl/certs.
+
+So the next thing to do is to hash the cert using c_rehash.
+
+INSTALLING OR UPDATING THE CA BUNDLE:
+
+Now would be a good time to check to see if you have the bundle of CA certs
+/usr/local/ssl/cert.pem, or to update them.
+
+CA bundles are available in various places, such as the MirOS BSD distribution,
+for those who want to take that route, or you can extract the current bundle
+from a current version of Internet Explorer (export them all from IE and
+transfer it onto your system).
+
+From MirOS, a cert bundle is available at
+
+http://caunter.ca/ssl.certs.shar
+
+It includes the cacert.org certificate. Download the latest revision; read the
+file to see how to get the certs out.
+
+No hashing is necessary with this set of certs; it is already done; ignore
+the c_rehash usage below for this bundle. Simply run `sh ssl.certs.shar` 
+in SSL_CERT_DIR.
+
+From IE 5.x certs extract as a PKCS7 file and need to be converted with something
+like:
+
+openssl pkcs7 -inform DER -in bundle.crt -outform PEM -out cert.pem \
+-print_certs -text
+
+The resulting cert.pem file should be copied to the default directory for
+bundles (usually /usr/local/ssl) and renamed to "cert.pem", assuming that is
+the SSL_CERT_FILE.
+
+Individual certs can also process if added and hashed in /usr/local/ssl/certs.
+
+We now have all of the individual certs we wish to trust in our certs
+directory, and the most recent bundle of CA certs as well.
+
+Confirm that you have the script c_rehash (See PRELIMINARY PROCEDURES; if it is
+not found, a copy is usually located in the tools directory of the openssl
+source tree. If you use this copy, it needs the execute bit set or it will not
+run).
+
+Run:
+
+./c_rehash
+
+The c_rehash utility is a perl script that runs openssl commands which creates
+the files named after the hash values of the certs in the default directory
+for certs.
+
+Its output looks like this:
+
+Doing /usr/local/ssl/certs
+vsignss.pem => f73e89fd.0
+vsign3.pem => 7651b327.0
+...more output
+<snip>
+
+All pem encoded certs in /usr/local/ssl/certs will now be recognized.
+
+SETTING AND EXPORTING ENVIRONMENT VARIABLES:
+
+If lynx is still not recognizing certs, environment variables need
+to be set; if on a sh type shell, the variables also need to be exported.
+
+The environment variables SSL_CERT_DIR and SSL_CERT_FILE need to be set
+if a non-default location is used for certificates, or if certs just can't be
+found by lynx. They may be set as follows in /etc/profile, or a shell
+initialization .profile or .*shrc, if we run a non csh type shell, according
+to the results of the search for the default location for certs procedure
+(See PRELIMINARY PROCEDURES):
+
+SSL_CERT_DIR="/usr/local/ssl/certs"
+SSL_CERT_FILE="/usr/local/ssl/cert.pem"
+export SSL_CERT_DIR SSL_CERT_FILE
+
+On csh type shells, you can use:
+setenv SSL_CERT_DIR "/usr/local/ssl/certs"
+setenv SSL_CERT_FILE "/usr/local/ssl/cert.pem"
+
+Note that the environment variable SSL_CERT_FILE applies to the cert-bundle
+if used outside of the default location (/usr/local/ssl/cert.pem) compiled
+into OpenSSL. There are issues with SSL_CERT_FILE in 0.9.6x versions of openssl.
+
+The configuration file lynx.cfg allows a system SSL_CERT_FILE variable to be set
+which can simplify matters. 
+
+SSL_CERT_FILE:/etc/ssl/certs/ca-certificates.crt
+
+Make sure you have FORCE_SSL_PROMPT set to PROMPT in lynx.cfg like so:
+
+FORCE_SSL_PROMPT:PROMPT
+
+You will now connect without error to https servers with trusted certs, but
+will still get this error for untrusted certs:
+
+SSL error:self signed certificate-Continue? (y)
+
+A quick check confirms that these procedures have the same effect with ssl
+errors in the pine program.
+
+2003 updated 2009
+Stefan Caunter <stefan.caunter@mohawkcollege.ca>
+Mohawk College Department of Computer Science
+Hamilton Ontario Canada
diff --git a/docs/SOCKETSHR.announce b/docs/SOCKETSHR.announce
new file mode 100644
index 00000000..4c08a018
--- /dev/null
+++ b/docs/SOCKETSHR.announce
@@ -0,0 +1,67 @@
+LYNX SUPPORT FOR SOCKETSHR/NETLIB			28-AUG-1996
+---------------------------------
+
+
+What is SocketShr?
+------------------
+
+SOCKETSHR is Eckhart Meyer's socket library interface to the MadGoat NETLIB
+package, which provides a vendor-independent interface to the VMS TCP/IP
+transports.  Using this, the same image will run over any of the available
+packages, including UCX, Multinet, CMU, Pathway access and TCPWARE.
+
+SocketShr and NETLIB are separately available libraries that MUST be installed
+before LYNX can use them.
+
+
+How to get NETLIB and SOCKETSHR
+-------------------------------
+
+FTP:
+
+   ftp://ftp.kcl.ac.uk/default/socketshr.*
+   ftp://ftp.wku.edu/fileserv/socketshr.zip
+   ftp://ftp.spc.edu/macro32/savesets/socketshr.zip
+
+   ftp://ftp.kcl.ac.uk/madgoat/netlib.*
+   ftp://ftp.wku.edu/madgoat/netlib017.zip
+   ftp://ftp.spc.edu/macro32/savesets/netlib017.zip
+
+
+By E-Mail:
+   send the following commands in a mail message:
+
+     SEND SOCKETSHR.PACKAGE
+     SEND NETLIB.PACKAGE
+
+   To:
+     vmsserv @ kcl.ac.uk
+
+Other server's may also contain these packages.
+
+NETLIB is copyright of MadGoat Software; SOCKETSHR is copyright of Eckhart
+meyer.
+
+
+Preliminary Setup of SOCKETSHR
+------------------------------
+
+Once SOCKETSHR has been installed, TWO logical names should be defined:
+
+    SOCKETSHR 		Point to the appropriate shareable image
+    SOCKETSHR_LIBRARY	Point to the directory containing SOCKETSHR.H
+    			and IOCTL.H
+
+Both should be defined /system /exec
+
+
+Building LYNX
+-------------
+
+Run the BUILD.COM procedures and select the SOCKETSHR_TCP option.  This will
+build an image that will run over the SOCKETSHR/NETLIB routines.
+
+
+Andy Harper
+Kings College London
+A.Harper@bay.cc.kcl.ac.uk
diff --git a/docs/TCPWARE.announce b/docs/TCPWARE.announce
new file mode 100644
index 00000000..899a460e
--- /dev/null
+++ b/docs/TCPWARE.announce
@@ -0,0 +1,30 @@
+				03-Jun-1994
+
+	The bug associated with using non-blocking socket handling with
+TCPWare's UCX emulation has been traced by Bernie Votz of Process Software
+to their TCPDRIVER.EXE, and has been fixed.  The kit is on FTP.PROCESS.COM
+and is called DRIVERS_V405B.INC (it is only valid for TCPware for OpenVMS
+Version 4.0-5, which is the current version at the time of this announcement).
+The fix will be included in the next TCPWare upgrade.  If you have problems,
+contact:
+
+	Bernie Volz
+	Process Software Corporation
+	VOLZ@PROCESS.COM
+
+	If you have an old version of TCPWare, and no current Process
+Software support, modify [.WWW.Library.VMS]libmake.com to include NO_IOCTL in
+the $ cc := cc/define=(...) list.  You will not be able to interrupt stalled
+connects (i.e., you'll have to wait for those to time out), but you still will
+we able to interrupt long or stalled document transfers via the 'z' command.
+
+	To build for TCPWare, enter  @BUILD TCPWARE   or just   @BUILD
+and then answer the prompt with the appropriate number for that TCPIP 
+package. 
+
+				Fote
+
+=========================================================================
+ Foteos Macrides           Worcester Foundation for Experimental Biology
+ MACRIDES@SCI.WFEB.EDU     222 Maple Avenue, Shrewsbury, MA 01545
+=========================================================================
diff --git a/docs/VMSWAIS.announce b/docs/VMSWAIS.announce
new file mode 100644
index 00000000..7253d0db
--- /dev/null
+++ b/docs/VMSWAIS.announce
@@ -0,0 +1,28 @@
+				03-Jun-1994
+
+	I have added DIRECT_WAIS support for VMS to Lynx.  It uses highly
+modified freeWAIS modules, collected into HTVMS_WaisUI.c, HTVMS_WaisUI.h,
+HTVMS_WaisProt.c, and HTVMS_WaisProt.h, interfaced to HTWAIS.c and HTWSRC.c
+of the WWWLib.  The socket reads and writes use the code for VMS in the Lynx
+version of the WWWLib, and thus are non-blocking (interruptable via the 'z'
+command), and "already" ported to all the VMS TCPIP packages supported by
+Lynx.   All messaging associated with WAIS searches and document fetches go to
+the Lynx statusline as Progress() or Alarm() reports.
+
+	I also prettied up the HTWAIS.c and HTWSRC.c screen displays for both
+VMS and Unix.  I've been trying to build in recursive FORM-based interfaces,
+instead of the present iSINDEX-based interfaces, but haven't succeeded ;(.
+	
+	The DIRECT_WAIS support is automatic for VMS (i.e., is implemented
+via the BUILD.COM and LIBMAKE.COM procedures, without need to specify anything
+but your TCPIP package, as in the previous, standard VMS builds).  Simply
+enter   @BUILD <TCPIP package>   or enter   @BUILD   and then the number of
+your TCPIP package in response to the prompt, and you'll have DIRECT_WAIS
+support along with every other wonderful thing in Lynx 8-).
+
+				Fote
+
+=========================================================================
+ Foteos Macrides           Worcester Foundation for Experimental Biology
+ MACRIDES@SCI.WFEB.EDU     222 Maple Avenue, Shrewsbury, MA 01545
+=========================================================================
diff --git a/docs/djgpp.key b/docs/djgpp.key
new file mode 100644
index 00000000..0ce8631a
--- /dev/null
+++ b/docs/djgpp.key
@@ -0,0 +1,214 @@
+                      DJGPP Keyhandler Keymaps
+
+Control_A            0x001
+Control_B            0x002
+Control_C            0x003
+Control_D            0x004
+Control_E            0x005
+Control_F            0x006
+Control_G            0x007
+BackSpace            0x008
+Control_H            0x008
+Tab                  0x009
+Control_I            0x009
+LineFeed             0x00a
+Control_J            0x00a
+Control_K            0x00b
+Control_L            0x00c
+Return               0x00d
+Control_M            0x00d
+Control_N            0x00e
+Control_O            0x00f
+Control_P            0x010
+Control_Q            0x011
+Control_R            0x012
+Control_S            0x013
+Control_T            0x014
+Control_U            0x015
+Control_V            0x016
+Control_W            0x017
+Control_X            0x018
+Control_Y            0x019
+Control_Z            0x01a
+Control_LBracket     0x01b
+Escape               0x01b
+Control_BackSlash    0x01c
+Control_RBracket     0x01d
+Control_Caret        0x01e
+Control_Underscore   0x01f
+Space                0x020
+ExclamationPoint     0x021
+DoubleQuote          0x022
+Hash                 0x023
+Dollar               0x024
+Percent              0x025
+Ampersand            0x026
+Quote                0x027
+LParen               0x028
+RParen               0x029
+Star                 0x02a
+Plus                 0x02b
+Comma                0x02c
+Dash                 0x02d
+Period               0x02e
+Slash                0x02f
+Colon                0x03a
+SemiColon            0x03b
+LAngle               0x03c
+Equals               0x03d
+RAngle               0x03e
+QuestionMark         0x03f
+At                   0x040
+LBracket             0x05b
+BackSlash            0x05c
+RBracket             0x05d
+Caret                0x05e
+UnderScore           0x05f
+BackQuote            0x060
+LBrace               0x07b
+Pipe                 0x07c
+RBrace               0x07d
+Tilde                0x07e
+Control_Backspace    0x07f
+BackTab              0x10f
+Alt_Q                0x110
+Alt_W                0x111
+Alt_E                0x112
+Alt_R                0x113
+Alt_T                0x114
+Alt_Y                0x115
+Alt_U                0x116
+Alt_I                0x117
+Alt_O                0x118
+Alt_P                0x119
+Alt_LBracket         0x11a
+Alt_RBracket         0x11b
+Alt_Return           0x11c
+Alt_A                0x11e
+Alt_S                0x11f
+Alt_D                0x120
+Alt_F                0x121
+Alt_G                0x122
+Alt_H                0x123
+Alt_J                0x124
+Alt_K                0x125
+Alt_L                0x126
+Alt_Semicolon        0x127
+Alt_Quote            0x128
+Alt_Backquote        0x129
+Alt_Backslash        0x12b
+Alt_Z                0x12c
+Alt_X                0x12d
+Alt_C                0x12e
+Alt_V                0x12f
+Alt_B                0x130
+Alt_N                0x131
+Alt_M                0x132
+Alt_Comma            0x133
+Alt_Period           0x134
+Alt_Slash            0x135
+Alt_KPStar           0x137
+F2                   0x13c
+F3                   0x13d
+F4                   0x13e
+F5                   0x13f
+F6                   0x140
+F7                   0x141
+F8                   0x142
+F9                   0x143
+F10                  0x144
+Alt_KPMinus          0x14a
+Center               0x14c
+Alt_KPPlus           0x14e
+Shift_F1             0x154
+Shift_F2             0x155
+Shift_F3             0x156
+Shift_F4             0x157
+Shift_F5             0x158
+Shift_F6             0x159
+Shift_F7             0x15a
+Shift_F8             0x15b
+Shift_F9             0x15c
+Shift_F10            0x15d
+Control_F1           0x15e
+Control_F2           0x15f
+Control_F3           0x160
+Control_F4           0x161
+Control_F5           0x162
+Control_F6           0x163
+Control_F7           0x164
+Control_F8           0x165
+Control_F9           0x166
+Control_F10          0x167
+Alt_F1               0x168
+Alt_F2               0x169
+Alt_F3               0x16a
+Alt_F4               0x16b
+Alt_F5               0x16c
+Alt_F6               0x16d
+Alt_F7               0x16e
+Alt_F8               0x16f
+Alt_F9               0x170
+Alt_F10              0x171
+Control_Print	     0x172
+Control_Left         0x173
+Control_Right        0x174
+Control_End          0x175
+Control_PageDown     0x176
+Control_Home         0x177
+Alt_1                0x178
+Alt_2                0x179
+Alt_3                0x17a
+Alt_4                0x17b
+Alt_5                0x17c
+Alt_6                0x17d
+Alt_7                0x17e
+Alt_8                0x17f
+Alt_9                0x180
+Alt_0                0x181
+Alt_Dash             0x182
+Alt_Equals           0x183
+Control_PageUp       0x184
+F11                  0x185
+F12                  0x186
+Shift_F11            0x187
+Shift_F12            0x188
+Control_F11          0x189
+Control_F12          0x18a
+Alt_F11              0x18b
+Alt_F12              0x18c
+Control_Up           0x18d
+Control_KPDash       0x18e
+Control_Center       0x18f
+Control_KPPlus       0x190
+Control_Down         0x191
+Control_Insert       0x192
+Control_Delete       0x193
+Control_KPSlash      0x195
+Control_KPStar       0x196
+Alt_EHome            0x197
+Alt_EUp              0x198
+Alt_EPageUp          0x199
+Alt_ELeft            0x19b
+Alt_ERight           0x19d
+Alt_EEnd             0x19f
+Alt_EDown            0x1a0
+Alt_EPageDown        0x1a1
+Alt_EInsert          0x1a2
+Alt_EDelete          0x1a3
+Alt_KPSlash          0x1a4
+Alt_Tab              0x1a5
+Alt_Enter            0x1a6
+Alt_Escape           0x1a7
+Control_At           0x1a8
+Alt_Backspace        0x1a9
+Control_ELeft        0x273
+Control_ERight       0x274
+Control_EEnd         0x275
+Control_EPageDown    0x276
+Control_EHome        0x277
+Control_EPageUp      0x284
+Control_EUp          0x28d
+Control_EDown        0x291
+Control_EInsert      0x292
+Control_EDelete      0x293
diff --git a/docs/pdcurses.key b/docs/pdcurses.key
new file mode 100644
index 00000000..5e383aa8
--- /dev/null
+++ b/docs/pdcurses.key
@@ -0,0 +1,123 @@
+                        PDCurses Keymaps
+
+KEY_F2          0x213   /* F2                            */
+KEY_F3          0x214   /* F3                            */
+KEY_F4          0x215   /* F4                            */
+KEY_F5          0x216   /* F5                            */
+KEY_F6          0x217   /* F6                            */
+KEY_F7          0x218   /* F7                            */
+KEY_F(n)    (0x108+(n)) /* If n>7 (9 keys are reserved)  */
+ALT_0           0x197   /* Alt-0                         */
+ALT_1           0x198   /* Alt-1                         */
+ALT_2           0x199   /* Alt-2                         */
+ALT_3           0x19a   /* Alt-3                         */
+ALT_4           0x19b   /* Alt-4                         */
+ALT_5           0x19c   /* Alt-5                         */
+ALT_6           0x19d   /* Alt-6                         */
+ALT_7           0x19e   /* Alt-7                         */
+ALT_8           0x19f   /* Alt-8                         */
+ALT_9           0x1a0   /* Alt-9                         */
+ALT_A           0x1a1   /* Alt-A                         */
+ALT_B           0x1a2   /* Alt-B                         */
+ALT_C           0x1a3   /* Alt-C                         */
+ALT_D           0x1a4   /* Alt-D                         */
+ALT_E           0x1a5   /* Alt-E                         */
+ALT_F           0x1a6   /* Alt-F                         */
+ALT_G           0x1a7   /* Alt-G                         */
+ALT_H           0x1a8   /* Alt-H                         */
+ALT_I           0x1a9   /* Alt-I                         */
+ALT_J           0x1aa   /* Alt-J                         */
+ALT_K           0x1ab   /* Alt-K                         */
+ALT_L           0x1ac   /* Alt-L                         */
+ALT_M           0x1ad   /* Alt-M                         */
+ALT_N           0x1ae   /* Alt-N                         */
+ALT_O           0x1af   /* Alt-O                         */
+ALT_P           0x1b0   /* Alt-P                         */
+ALT_Q           0x1b1   /* Alt-Q                         */
+ALT_R           0x1b2   /* Alt-R                         */
+ALT_S           0x1b3   /* Alt-S                         */
+ALT_T           0x1b4   /* Alt-T                         */
+ALT_U           0x1b5   /* Alt-U                         */
+ALT_V           0x1b6   /* Alt-V                         */
+ALT_W           0x1b7   /* Alt-W                         */
+ALT_X           0x1b8   /* Alt-X                         */
+ALT_Y           0x1b9   /* Alt-Y                         */
+ALT_Z           0x1ba   /* Alt-Z                         */
+CTL_LEFT        0x1bb   /* Control-Left-Arrow            */
+CTL_RIGHT       0x1bc   /* Control-Right-Arrow           */
+CTL_PGUP        0x1bd   /* Control-PgUp                  */
+CTL_PGDN        0x1be   /* Control-PgDn                  */
+CTL_HOME        0x1bf   /* Control-Home                  */
+CTL_END         0x1c0   /* Control-End                   */
+KEY_B2          0x1c5   /* center on Virt. keypad        */
+PADSLASH        0x1ca   /* slash on keypad               */
+CTL_PADENTER    0x1cc   /* ctl-enter on keypad           */
+ALT_PADENTER    0x1cd   /* alt-enter on keypad           */
+PADSTOP         0x1ce   /* stop on keypad                */
+PADSTAR         0x1cf   /* star on keypad                */
+PADMINUS        0x1d0   /* minus on keypad               */
+PADPLUS         0x1d1   /* plus on keypad                */
+CTL_PADSTOP     0x1d2   /* ctl-stop on keypad            */
+CTL_PADCENTER   0x1d3   /* ctl-enter on keypad           */
+CTL_PADPLUS     0x1d4   /* ctl-plus on keypad            */
+CTL_PADMINUS    0x1d5   /* ctl-minus on keypad           */
+CTL_PADSLASH    0x1d6   /* ctl-slash on keypad           */
+CTL_PADSTAR     0x1d7   /* ctl-star on keypad            */
+ALT_PADPLUS     0x1d8   /* alt-plus on keypad            */
+ALT_PADMINUS    0x1d9   /* alt-minus on keypad           */
+ALT_PADSLASH    0x1da   /* alt-slash on keypad           */
+ALT_PADSTAR     0x1db   /* alt-star on keypad            */
+ALT_PADSTOP     0x1dc   /* alt-star on keypad            */
+CTL_INS         0x1dd   /* ctl-insert                    */
+ALT_DEL         0x1de   /* alt-delete                    */
+ALT_INS         0x1df   /* alt-insert                    */
+CTL_UP          0x1e0   /* ctl-up arrow                  */
+CTL_DOWN        0x1e1   /* ctl-down arrow                */
+CTL_TAB         0x1e2   /* ctl-tab                       */
+ALT_TAB         0x1e3   /* alt-tab                       */
+ALT_MINUS       0x1e4   /* alt-minus                     */
+ALT_EQUAL       0x1e5   /* alt-equal                     */
+ALT_HOME        0x1e6   /* alt-home                      */
+ALT_PGUP        0x1e7   /* alt-pgup                      */
+ALT_PGDN        0x1e8   /* alt-pgdn                      */
+ALT_END         0x1e9   /* alt-end                       */
+ALT_UP          0x1ea   /* alt-up arrow                  */
+ALT_DOWN        0x1eb   /* alt-down arrow                */
+ALT_RIGHT       0x1ec   /* alt-right arrow               */
+ALT_LEFT        0x1ed   /* alt-left arrow                */
+ALT_ENTER       0x1ee   /* alt-enter                     */
+ALT_ESC         0x1ef   /* alt-escape                    */
+ALT_BQUOTE      0x1f0   /* alt-back quote                */
+ALT_LBRACKET    0x1f1   /* alt-left bracket              */
+ALT_RBRACKET    0x1f2   /* alt-right bracket             */
+ALT_SEMICOLON   0x1f3   /* alt-semi-colon                */
+ALT_FQUOTE      0x1f4   /* alt-forward quote             */
+ALT_COMMA       0x1f5   /* alt-comma                     */
+ALT_STOP        0x1f6   /* alt-stop                      */
+ALT_FSLASH      0x1f7   /* alt-forward slash             */
+ALT_BKSP        0x1f8   /* alt-backspace                 */
+CTL_BKSP        0x1f9   /* ctl-backspace                 */
+PAD0            0x1fa   /* ctl-keypad 0                  */
+CTL_PAD0        0x1fb   /* ctl-keypad 0                  */
+CTL_PAD1        0x1fc   /* ctl-keypad 1                  */
+CTL_PAD2        0x1fd   /* ctl-keypad 2                  */
+CTL_PAD3        0x1fe   /* ctl-keypad 3                  */
+CTL_PAD4        0x1ff   /* ctl-keypad 4                  */
+CTL_PAD5        0x200   /* ctl-keypad 5                  */
+CTL_PAD6        0x201   /* ctl-keypad 6                  */
+CTL_PAD7        0x202   /* ctl-keypad 7                  */
+CTL_PAD8        0x203   /* ctl-keypad 8                  */
+CTL_PAD9        0x204   /* ctl-keypad 9                  */
+ALT_PAD0        0x205   /* ctl-keypad 0                  */
+ALT_PAD1        0x206   /* ctl-keypad 1                  */
+ALT_PAD2        0x207   /* ctl-keypad 2                  */
+ALT_PAD3        0x208   /* ctl-keypad 3                  */
+ALT_PAD4        0x209   /* ctl-keypad 4                  */
+ALT_PAD5        0x20a   /* ctl-keypad 5                  */
+ALT_PAD6        0x20b   /* ctl-keypad 6                  */
+ALT_PAD7        0x20c   /* ctl-keypad 7                  */
+ALT_PAD8        0x20d   /* ctl-keypad 8                  */
+ALT_PAD9        0x20e   /* ctl-keypad 9                  */
+CTL_DEL         0x20f   /* clt-delete                    */
+ALT_BSLASH      0x210   /* alt-back slash                */
+CTL_ENTER       0x211   /* ctl-enter                     */
diff --git a/docs/slang.key b/docs/slang.key
new file mode 100644
index 00000000..73108802
--- /dev/null
+++ b/docs/slang.key
@@ -0,0 +1,4 @@
+                   S-Lang Keymaps for DOS
+
+F0		0x200
+F(X)		(SL_KEY_F0 + X) /* If X>1 */
diff --git a/docs/win-386.announce b/docs/win-386.announce
new file mode 100644
index 00000000..dcc482b8
--- /dev/null
+++ b/docs/win-386.announce
@@ -0,0 +1,40 @@
+Ports have been added for Win32 (95/NT) and 386 DOS computers with a
+packet driver.  I created four new defines to accomplish this.
+
+_WINDOWS Defined for Win32 specific code (Mostly TCP related)
+DJGPP    Defined for 386 specific code (Mostly TCP related)
+DOSPATH  Defined for any DOS'ish computer
+NOSIGHUP Defined for computers not supporting sighup signal calls.
+
+To make the Win32 version you need Borland C++ 4.52 or complete
+compatable and the win32.zip package unziped into the lynx directory.
+This code expects you to have BC make in your path at the console
+prompt and also to be able to compile from the console as well.
+I can provide an IDE if needed but did not want to force on into the
+standard Lynx package.  Text mode compiling is much faster anyhow (IMHO).
+The current default configuration is to have the Character Translation
+code linked in.  For this to be successful you need to go into
+src\chrtrans and run makew32.  After that you can come back to the
+Lynx root and run make -f makefile.w32.
+
+The DJGPP version is a little screwy.  You need DJGPP 2.0, the djgpp.zip
+package unziped into the lynx directory and some paitence.  I kludged it
+to compile with long filenames under Win95 so some fooling around may be
+required.  To compile, run djgpp.bat that was extracted from the zip
+file.  There is currently a problem with compiling HTML.c and I have
+contacted the author of DJGPP for help with getting this port further.
+
+Wayne Buttles
+lynx-port@fdisk.com
+
+
+
+Win32 port was further extended by Hiroyuki Senshu <senshu@shonai-cit.ac.jp>
+ftp://crab.it.osha.sut.ac.jp/pub/Win32/develope/senshu/Lynx/
+  Most changes are ifdef'd
+    #define _WIN_CC=    .... for Windows C Compiler
+    #define CJK_EX      .... CJK EXtension
+    #define SH_EX       .... Senshu Hiroyuki EXtension
+    #define WIN_EX      .... Windows EXtension
+
+Lynx now builds with C++ Builder, Borland C++, Visual C++, and Cygwin.
diff --git a/fixed512.com b/fixed512.com
new file mode 100644
index 00000000..50b50fd5
--- /dev/null
+++ b/fixed512.com
@@ -0,0 +1,54 @@
+$! v = 'f$verify(0)'
+$!
+$!	FIXED512.COM:	Uses the FILE utility or SET FILE/ATTR
+$!			to convert binary stream_LF file headers
+$!			to FIXED 512.
+$!
+$!	Author:	F.Macrides (macrides@sci.wfeb.edu)
+$!
+$!	Usage:  @Lynx_Dir:FIXED512 <stream_LF file that's actually binary>
+$!
+$!	Lynx performs the conversion via internal code if the file is
+$!	recognized as binary.  This command procedure can be used externally
+$!	if that detection failed, e.g., for binary files downloaded from FTP
+$!      servers with extensions that hadn't been mapped to a binary MIME
+$!	type in the Lynx configuration files.
+$! 
+$!===========================================================================
+$!
+$!  Get and build Joe Meadow's FILE utility for VAX and AXP:
+$!	ftp://ftp.wku.edu/vms/fileserv/file.zip
+$!  and define it here, or system-wide, as a foreign command.
+$!
+$! FILE := $device:[directory]FILE.EXE
+$!-----------------------------------------------------------
+$!
+$!  Just exit and leave the file stream_LF if we didn't get
+$!  the filename as P1, or if it's not a valid file spec.
+$!
+$ IF P1 .EQS. "" THEN EXIT
+$ IF F$SEARCH(P1) .EQS. "" THEN EXIT
+$!-----------------------------------------------------------
+$!
+$!  If we have FILE installed, use it.
+$!
+$ If f$type(FILE) .eqs. "STRING"
+$ Then
+$  FILE 'P1'-
+   /TYPE=FIXED -
+   /ATTRIBUTES=NOIMPLIEDCC -
+   /CHARACTERISTICS=BEST_TRY_CONTIGUOUS -
+   /RECORD_SIZE=512 -
+   /MAXIMUM_RECORD_SIZE=512
+$  EXIT
+$ EndIf
+$!-----------------------------------------------------------
+$!
+$!  If we get to here, and we're VMS v6+,
+$!  we'll use SET FILE/ATTR to do it.
+$!
+$ If f$extract(1,1,f$getsyi("VERSION")) .ge. 6
+$ Then
+$   SET FILE/ATTR=(RFM:FIX,LRL:512,MRS:512,RAT:NONE) 'P1'
+$ EndIf
+$ EXIT
diff --git a/install-sh b/install-sh
new file mode 100755
index 00000000..462fa9c3
--- /dev/null
+++ b/install-sh
@@ -0,0 +1,294 @@
+#! /bin/sh
+#
+# install - install a program, script, or datafile
+#
+# This originates from X11R5 (mit/util/scripts/install.sh), which was
+# later released in X11R6 (xc/config/util/install.sh) with the
+# following copyright and license.
+#
+# Copyright (C) 1994 X Consortium
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
+# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# Except as contained in this notice, the name of the X Consortium shall not
+# be used in advertising or otherwise to promote the sale, use or other deal-
+# ings in this Software without prior written authorization from the X Consor-
+# tium.
+#
+#
+# FSF changes to this file are in the public domain.
+#
+# Calling this script install-sh is preferred over install.sh, to prevent
+# `make' implicit rules from creating a file called install from it
+# when there is no Makefile.
+#
+# This script is compatible with the BSD install script, but was written
+# from scratch.  It can only install one file at a time, a restriction
+# shared with many OS's install programs.
+
+
+# set DOITPROG to echo to test this script
+
+# Don't use :- since 4.3BSD and earlier shells don't like it.
+doit="${DOITPROG-}"
+
+
+# put in absolute paths if you don't have them in your path; or use env. vars.
+
+mvprog="${MVPROG-mv}"
+cpprog="${CPPROG-cp}"
+chmodprog="${CHMODPROG-chmod}"
+chownprog="${CHOWNPROG-chown}"
+chgrpprog="${CHGRPPROG-chgrp}"
+stripprog="${STRIPPROG-strip}"
+rmprog="${RMPROG-rm}"
+mkdirprog="${MKDIRPROG-mkdir}"
+
+transformbasename=""
+transform_arg=""
+instcmd="$mvprog"
+chmodcmd="$chmodprog 0755"
+chowncmd=""
+chgrpcmd=""
+stripcmd=""
+rmcmd="$rmprog -f"
+mvcmd="$mvprog"
+src=""
+dst=""
+dir_arg=""
+
+while [ x"$1" != x ]; do
+    case $1 in
+	-c) instcmd=$cpprog
+	    shift
+	    continue;;
+
+	-d) dir_arg=true
+	    shift
+	    continue;;
+
+	-m) chmodcmd="$chmodprog $2"
+	    shift
+	    shift
+	    continue;;
+
+	-o) chowncmd="$chownprog $2"
+	    shift
+	    shift
+	    continue;;
+
+	-g) chgrpcmd="$chgrpprog $2"
+	    shift
+	    shift
+	    continue;;
+
+	-s) stripcmd=$stripprog
+	    shift
+	    continue;;
+
+	-t=*) transformarg=`echo $1 | sed 's/-t=//'`
+	    shift
+	    continue;;
+
+	-b=*) transformbasename=`echo $1 | sed 's/-b=//'`
+	    shift
+	    continue;;
+
+	*)  if [ x"$src" = x ]
+	    then
+		src=$1
+	    else
+		# this colon is to work around a 386BSD /bin/sh bug
+		:
+		dst=$1
+	    fi
+	    shift
+	    continue;;
+    esac
+done
+
+if [ x"$src" = x ]
+then
+	echo "$0: no input file specified" >&2
+	exit 1
+else
+	:
+fi
+
+if [ x"$dir_arg" != x ]; then
+	dst=$src
+	src=""
+
+	if [ -d "$dst" ]; then
+		instcmd=:
+		chmodcmd=""
+	else
+		instcmd=$mkdirprog
+	fi
+else
+
+# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
+# might cause directories to be created, which would be especially bad
+# if $src (and thus $dsttmp) contains '*'.
+
+	if [ -f "$src" ] || [ -d "$src" ]
+	then
+		:
+	else
+		echo "$0: $src does not exist" >&2
+		exit 1
+	fi
+
+	if [ x"$dst" = x ]
+	then
+		echo "$0: no destination specified" >&2
+		exit 1
+	else
+		:
+	fi
+
+# If destination is a directory, append the input filename; if your system
+# does not like double slashes in filenames, you may need to add some logic
+
+	if [ -d "$dst" ]
+	then
+		dst=$dst/`basename "$src"`
+	else
+		:
+	fi
+fi
+
+## this sed command emulates the dirname command
+dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
+
+# Make sure that the destination directory exists.
+#  this part is taken from Noah Friedman's mkinstalldirs script
+
+# Skip lots of stat calls in the usual case.
+if [ ! -d "$dstdir" ]; then
+defaultIFS='
+	'
+IFS="${IFS-$defaultIFS}"
+
+oIFS=$IFS
+# Some sh's can't handle IFS=/ for some reason.
+IFS='%'
+set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
+IFS=$oIFS
+
+pathcomp=''
+
+while [ $# -ne 0 ] ; do
+	pathcomp=$pathcomp$1
+	shift
+
+	if [ ! -d "$pathcomp" ] ;
+        then
+		$mkdirprog "$pathcomp"
+	else
+		:
+	fi
+
+	pathcomp=$pathcomp/
+done
+fi
+
+if [ x"$dir_arg" != x ]
+then
+	$doit $instcmd "$dst" &&
+
+	if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dst"; else : ; fi &&
+	if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dst"; else : ; fi &&
+	if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dst"; else : ; fi &&
+	if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dst"; else : ; fi
+else
+
+# If we're going to rename the final executable, determine the name now.
+
+	if [ x"$transformarg" = x ]
+	then
+		dstfile=`basename "$dst"`
+	else
+		dstfile=`basename "$dst" $transformbasename |
+			sed $transformarg`$transformbasename
+	fi
+
+# don't allow the sed command to completely eliminate the filename
+
+	if [ x"$dstfile" = x ]
+	then
+		dstfile=`basename "$dst"`
+	else
+		:
+	fi
+
+# Make a couple of temp file names in the proper directory.
+
+	dsttmp=$dstdir/#inst.$$#
+	rmtmp=$dstdir/#rm.$$#
+
+# Trap to clean up temp files at exit.
+
+	trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0
+	trap '(exit $?); exit' 1 2 13 15
+
+# Move or copy the file name to the temp name
+
+	$doit $instcmd "$src" "$dsttmp" &&
+
+# and set any options; do chmod last to preserve setuid bits
+
+# If any of these fail, we abort the whole thing.  If we want to
+# ignore errors from any of these, just make sure not to ignore
+# errors from the above "$doit $instcmd $src $dsttmp" command.
+
+	if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dsttmp"; else :;fi &&
+	if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dsttmp"; else :;fi &&
+	if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dsttmp"; else :;fi &&
+	if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dsttmp"; else :;fi &&
+
+# Now remove or move aside any old file at destination location.  We try this
+# two ways since rm can't unlink itself on some systems and the destination
+# file might be busy for other reasons.  In this case, the final cleanup
+# might fail but the new file should still install successfully.
+
+{
+	if [ -f "$dstdir/$dstfile" ]
+	then
+		$doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null ||
+		$doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null ||
+		{
+		  echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
+		  (exit 1); exit
+		}
+	else
+		:
+	fi
+} &&
+
+# Now rename the file to the real destination.
+
+	$doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
+
+fi &&
+
+# The final little trick to "correctly" pass the exit status to the exit trap.
+
+{
+	(exit 0); exit
+}
diff --git a/lib/dirent.c b/lib/dirent.c
new file mode 100644
index 00000000..a143960f
--- /dev/null
+++ b/lib/dirent.c
@@ -0,0 +1,293 @@
+/*
+ * $LynxId: dirent.c,v 1.5 2012/02/10 11:35:49 tom Exp $
+ *
+ * dir.c for MS-DOS by Samuel Lam <skl@van-bc.UUCP>, June/87 
+ */
+
+/* #ifdef WIN32 */
+/* 
+ * @(#)dir.c 1.4 87/11/06 Public Domain. 
+ * 
+ *  A public domain implementation of BSD directory routines for 
+ *  MS-DOS.  Written by Michael Rendell ({uunet,utai}michael@garfield), 
+ *  August 1897 
+ *  Ported to OS/2 by Kai Uwe Rommel 
+ *  December 1989, February 1990 
+ *  Ported to Windows NT 22 May 91 
+ *    other mods Summer '92 brianmo@microsoft.com 
+ *  opendirx() was horribly written, very inefficient, and did not take care
+ *    of all cases.  It is still not too clean, but it is far more efficient.
+ *    Changes made by Gordon Chaffee (chaffee@bugs-bunny.cs.berkeley.edu)
+ */
+
+/*Includes: 
+ *    crt 
+ */
+#ifdef HAVE_CONFIG_H
+#include "lynx_cfg.h"
+#endif
+
+#ifndef __GNUC__
+#pragma warning (disable : 4100) /* unreferenced formal parameter */
+#pragma warning (disable : 4127) /* conditional expression is constant */
+#pragma warning (disable : 4201) /* nameless struct/union */
+#pragma warning (disable : 4214) /* bit field types other than int */
+#pragma warning (disable : 4310) /* cast truncates constant value */
+#pragma warning (disable : 4514) /* unreferenced inline function has been removed */
+#pragma warning (disable : 4996) /* This function or variable may be unsafe. ... */
+#endif
+
+#include <windows.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys\types.h>
+#include <sys\stat.h>
+
+#include "dirent.h"
+
+#define stat _stat
+
+/* 
+ *    NT specific 
+ */
+#include <stdio.h>
+
+/* 
+ *    random typedefs 
+ */
+#define HDIR        HANDLE
+#define HFILE       HANDLE
+#define PHFILE      PHANDLE
+
+#ifndef INVALID_HANDLE_VALUE
+#define INVALID_HANDLE_VALUE ((HDIR) 0xffffffff)
+#endif
+
+/* 
+ *    local functions 
+ */
+static char *getdirent(char *);
+static void free_dircontents(struct _dircontents *);
+
+static HDIR FindHandle;
+static WIN32_FIND_DATA FileFindData;
+
+static struct dirent dp;
+
+DIR *opendirx(char *name, char *pattern)
+{
+    struct stat statb;
+    DIR *dirp;
+    char c;
+    char *s;
+    struct _dircontents *dp;
+    int len;
+    int unc;
+    char path[OFS_MAXPATHNAME];
+    register char *ip, *op;
+
+    for (ip = name, op = path;; op++, ip++) {
+	*op = *ip;
+	if (*ip == '\0') {
+	    break;
+	}
+    }
+    len = ip - name;
+    if (len > 0) {
+	unc = ((path[0] == '\\' || path[0] == '/') &&
+	       (path[1] == '\\' || path[1] == '/'));
+	c = path[len - 1];
+	if (unc) {
+	    if (c != '\\' && c != '/') {
+		path[len] = '/';
+		len++;
+		path[len] = '\0';
+	    }
+	} else {
+	    if ((c == '\\' || c == '/') && (len > 1)) {
+		len--;
+		path[len] = '\0';
+
+		if (path[len - 1] == ':') {
+		    path[len] = '/';
+		    len++;
+		    path[len] = '.';
+		    len++;
+		    path[len] = '\0';
+		}
+	    } else if (c == ':') {
+		path[len] = '.';
+		len++;
+		path[len] = '\0';
+	    }
+	}
+    } else {
+	unc = 0;
+	path[0] = '.';
+	path[1] = '\0';
+	len = 1;
+    }
+
+    if (stat(path, &statb) < 0 || (statb.st_mode & S_IFMT) != S_IFDIR) {
+	return NULL;
+    }
+    dirp = malloc(sizeof(DIR));
+
+    if (dirp == NULL) {
+	return dirp;
+    }
+    c = path[len - 1];
+    if (c == '.') {
+	if (len == 1) {
+	    len--;
+	} else {
+	    c = path[len - 2];
+	    if (c == '\\' || c == ':') {
+		len--;
+	    } else {
+		path[len] = '/';
+		len++;
+	    }
+	}
+    } else if (!unc && ((len != 1) || (c != '\\' && c != '/'))) {
+	path[len] = '/';
+	len++;
+    }
+    strcpy(path + len, pattern);
+
+    dirp->dd_loc = 0;
+    dirp->dd_contents = dirp->dd_cp = NULL;
+
+    if ((s = getdirent(path)) == NULL) {
+	return dirp;
+    }
+    do {
+	if (((dp = malloc(sizeof(struct _dircontents))) == NULL) ||
+	      ((dp->_d_entry = malloc(strlen(s) + 1)) == NULL)) {
+	    if (dp)
+		free(dp);
+	    free_dircontents(dirp->dd_contents);
+
+	    return NULL;
+	}
+	if (dirp->dd_contents)
+	    dirp->dd_cp = dirp->dd_cp->_d_next = dp;
+	else
+	    dirp->dd_contents = dirp->dd_cp = dp;
+
+	strcpy(dp->_d_entry, s);
+	dp->_d_next = NULL;
+
+    }
+    while ((s = getdirent(NULL)) != NULL);
+
+    dirp->dd_cp = dirp->dd_contents;
+    return dirp;
+}
+
+DIR *opendir(char *name)
+{
+    return opendirx(name, "*");
+}
+
+void closedir(DIR *dirp)
+{
+    free_dircontents(dirp->dd_contents);
+    free(dirp);
+}
+
+struct dirent *readdir(DIR *dirp)
+{
+    /* static struct dirent dp; */
+    if (dirp->dd_cp == NULL)
+	return NULL;
+
+    /*strcpy(dp.d_name,dirp->dd_cp->_d_entry); */
+
+    dp.d_name = dirp->dd_cp->_d_entry;
+
+    dp.d_namlen = dp.d_reclen =
+	strlen(dp.d_name);
+
+    dp.d_ino = (ino_t) (dirp->dd_loc + 1);	/* fake the inode */
+
+    dirp->dd_cp = dirp->dd_cp->_d_next;
+    dirp->dd_loc++;
+
+    return &dp;
+}
+
+void seekdir(DIR *dirp, long off)
+{
+    long i = off;
+    struct _dircontents *dp;
+
+    if (off >= 0) {
+	for (dp = dirp->dd_contents; --i >= 0 && dp; dp = dp->_d_next) ;
+
+	dirp->dd_loc = off - (i + 1);
+	dirp->dd_cp = dp;
+    }
+}
+
+long telldir(DIR *dirp)
+{
+    return dirp->dd_loc;
+}
+
+static void free_dircontents(struct _dircontents *dp)
+{
+    struct _dircontents *odp;
+
+    while (dp) {
+	if (dp->_d_entry)
+	    free(dp->_d_entry);
+
+	dp = (odp = dp)->_d_next;
+	free(odp);
+    }
+}
+/* end of "free_dircontents" */
+
+static char *getdirent(char *dir)
+{
+    int got_dirent;
+
+    if (dir != NULL) {		/* get first entry */
+	if ((FindHandle = FindFirstFile(dir, &FileFindData))
+	    == INVALID_HANDLE_VALUE) {
+	    return NULL;
+	}
+	got_dirent = 1;
+    } else			/* get next entry */
+	got_dirent = FindNextFile(FindHandle, &FileFindData);
+
+    if (got_dirent)
+	return FileFindData.cFileName;
+    else {
+	FindClose(FindHandle);
+	return NULL;
+    }
+}
+/* end of getdirent() */
+
+struct passwd *_cdecl getpwnam(char *name)
+{
+    return NULL;
+}
+
+struct passwd *_cdecl getpwuid(int uid)
+{
+    return NULL;
+}
+
+int getuid()
+{
+    return 0;
+}
+
+void _cdecl endpwent(void)
+{
+}
+
+/* #endif */
diff --git a/lib/dirent.h b/lib/dirent.h
new file mode 100644
index 00000000..db598492
--- /dev/null
+++ b/lib/dirent.h
@@ -0,0 +1,53 @@
+/* 
+ * @(#) dirent.h 2.0 17 Jun 91   Public Domain. 
+ * 
+ *  A public domain implementation of BSD directory routines for 
+ *  MS-DOS.  Written by Michael Rendell ({uunet,utai}michael@garfield), 
+ *  August 1987 
+ * 
+ *  Enhanced and ported to OS/2 by Kai Uwe Rommel; added scandir() prototype 
+ *  December 1989, February 1990 
+ *  Change of MAXPATHLEN for HPFS, October 1990 
+ *   
+ *  Unenhanced and ported to Windows NT by Bill Gallagher 
+ *  17 Jun 91 
+ *  changed d_name to char * instead of array, removed non-std extensions 
+ *  
+ *  Cleanup, other hackery, Summer '92, Brian Moran , brianmo@microsoft.com 
+ */
+
+#ifndef _DIRENT
+#define _DIRENT
+
+#include <direct.h>
+
+struct dirent {
+    ino_t d_ino;		/* a bit of a farce */
+    short d_reclen;		/* more farce */
+    short d_namlen;		/* length of d_name */
+    char *d_name;
+};
+
+struct _dircontents {
+    char *_d_entry;
+    struct _dircontents *_d_next;
+};
+
+typedef struct _dirdesc {
+    int dd_id;			/* uniquely identify each open directory */
+    long dd_loc;		/* where we are in directory entry */
+    struct _dircontents *dd_contents;	/* pointer to contents of dir */
+    struct _dircontents *dd_cp;	/* pointer to current position */
+} DIR;
+
+extern DIR *opendir(char *);
+extern struct dirent *readdir(DIR *);
+extern void seekdir(DIR *, long);
+extern long telldir(DIR *);
+extern void closedir(DIR *);
+
+#define rewinddir(dirp) seekdir(dirp, 0L)
+
+#endif /* _DIRENT */
+
+/* end of dirent.h */
diff --git a/lynx.cfg b/lynx.cfg
new file mode 100644
index 00000000..e24ad9dd
--- /dev/null
+++ b/lynx.cfg
@@ -0,0 +1,3650 @@
+# $LynxId: lynx.cfg,v 1.217 2012/02/20 02:08:17 tom Exp $
+# lynx.cfg file.
+# The default placement for this file is /usr/local/lib/lynx.cfg (Unix)
+#                                     or Lynx_Dir:lynx.cfg (VMS)
+#
+# $Format: "#PRCS LYNX_VERSION \"$ProjectVersion$\""$
+#PRCS LYNX_VERSION "2.8.8dev.11"
+#
+# $Format: "#PRCS LYNX_DATE \"$ProjectDate$\""$
+#PRCS LYNX_DATE "Sun, 19 Feb 2012 18:13:57 -0800"
+#
+# Definition pairs are of the form  VARIABLE:DEFINITION
+# NO spaces are allowed between the pair items.
+#
+#  If you do not have write access to /usr/local/lib you may change
+#  the default location of this file in the userdefs.h file and recompile,
+#  or specify its location on the command line with the "-cfg"
+#  command line option.
+#
+# Items may be commented out by putting a '#' as the FIRST char of the line
+# (Any line beginning with punctuation is ignored).  Leading blanks on each
+# line are ignored; trailing blanks may be significant depending on the option.
+
+# An HTML'ized description of all settings (based on comments in this file,
+# with alphabetical table of settings and with table of settings by category)
+# is available at http://lynx.isc.org/release/lynx2-8-7/lynx_help/cattoc.html
+#
+### The conversion is done via the scripts/cfg2html.pl script.
+### Several directives beginning with '.' are used for this purpose.
+
+.h1 Auxiliary Facilities
+# These settings control the auxiliary navigating facilities of lynx, e.g.,
+# jumpfiles, bookmarks, default URLs.
+
+.h2 INCLUDE
+# Starting with Lynx 2.8.1, the lynx.cfg file has a crude "include"
+# facility.  This means that you can take advantage of the global lynx.cfg
+# while also supplying your own tweaks.
+#
+# You can use a command-line argument (-cfg /where/is/lynx.cfg) or an
+# environment variable (LYNX_CFG=/where/is/lynx.cfg).
+# For instance, put in your .profile or .login:
+#
+#   LYNX_CFG=~/lynx.cfg; export LYNX_CFG   # in .profile for sh/ksh/bash/etc.
+#   setenv LYNX_CFG ~/lynx.cfg             # in .login for [t]csh
+#
+# Then in ~/lynx.cfg:
+#
+#   INCLUDE:/usr/local/lib/lynx.cfg
+#           ^^^^^^^^^^^^^^^^^^^^^^^ or whatever is appropriate on your system
+# and now your own tweaks.
+#
+# Starting with Lynx 2.8.2, the INCLUDE facility is yet more powerful.  You can
+# suppress all but specific settings that will be read from included files.
+# This allows sysadmins to provide users the ability to customize lynx with
+# options that normally do not affect security, such as COLOR, VIEWER, KEYMAP.
+#
+# The syntax is
+#
+#   INCLUDE:filename for <space-separated-list-of-allowed-settings>
+#
+# sample:
+.ex
+#INCLUDE:~/lynx.cfg for COLOR VIEWER KEYMAP
+# only one space character should surround the word 'for'.  On Unix systems ':'
+# is also accepted as separator.  In that case, the example can be written as
+.ex
+#INCLUDE:~/lynx.cfg:COLOR VIEWER KEYMAP
+# In the example, only the settings COLOR, VIEWER and KEYMAP are accepted by
+# lynx.  Other settings are ignored.  Note:  INCLUDE is also treated as a
+# setting, so to allow an included file to include other files, put INCLUDE in
+# the list of allowed settings.
+#
+# If you allow an included file to include other files, and if a list of
+# allowed settings is specified for that file with the INCLUDE command, nested
+# files are only allowed to include the list of settings that is the set AND of
+# settings allowed for the included file and settings allowed by nested INCLUDE
+# commands.  In short, there is no security hole introduced by including a
+# user-defined configuration file if the original list of allowed settings is
+# secure.
+
+.h2 STARTFILE
+# STARTFILE is the default starting URL if none is specified
+#   on the command line or via a WWW_HOME environment variable;
+#   Lynx will refuse to start without a starting URL of some kind.
+# STARTFILE can be remote, e.g. http://www.w3.org/default.html ,
+#                or local, e.g. file://localhost/PATH_TO/FILENAME ,
+#           where PATH_TO is replaced with the complete path to FILENAME
+#           using Unix shell syntax and including the device on VMS.
+#
+# Normally we expect you will connect to a remote site, e.g., the Lynx starting
+# site:
+STARTFILE:http://lynx.isc.org/
+#
+# As an alternative, you may want to use a local URL.  A good choice for this is
+# the user's home directory:
+.ex
+#STARTFILE:file://localhost/~/
+#
+# Your choice of STARTFILE should reflect your site's needs, and be a URL that
+# you can connect to reliably.  Otherwise users will become confused and think
+# that they cannot run Lynx.
+
+.h2 HELPFILE
+# HELPFILE must be defined as a URL and must have a
+# complete path if local:
+# file://localhost/PATH_TO/lynx_help/lynx_help_main.html
+#   Replace PATH_TO with the path to the lynx_help subdirectory
+#   for this distribution (use SHELL syntax including the device
+#   on VMS systems).
+# The default HELPFILE is:
+.url http://lynx.isc.org/release/lynx2-8-7/lynx_help/lynx_help_main.html
+#   This should be changed to the local path.
+# This definition will be overridden if the "LYNX_HELPFILE" environment
+# variable has been set.
+#
+HELPFILE:http://lynx.isc.org/release/lynx2-8-7/lynx_help/lynx_help_main.html
+.ex
+#HELPFILE:file://localhost/PATH_TO/lynx_help/lynx_help_main.html
+
+.h2 DEFAULT_INDEX_FILE
+# DEFAULT_INDEX_FILE is the default file retrieved when the
+# user presses the 'I' key when viewing any document.
+# An index to your CWIS can be placed here or a document containing
+# pointers to lots of interesting places on the web.
+#
+DEFAULT_INDEX_FILE:http://scout.wisc.edu/
+
+.h1 Interaction
+
+.h2 GOTOBUFFER
+# Set GOTOBUFFER to TRUE if you want to have the previous goto URL,
+# if any, offered for reuse or editing when using the 'g'oto command.
+# The default is defined in userdefs.h.  If left FALSE, the circular
+# buffer of previously entered goto URLs can still be invoked via the
+# Up-Arrow or Down-Arrow keys after entering the 'g'oto command.
+#
+#GOTOBUFFER:FALSE
+
+.h2 JUMP_PROMPT
+# JUMP_PROMPT is the default statusline prompt for selecting a jumps file
+# shortcut.  (see below).
+# You can change the prompt here from that defined in userdefs.h.  Any
+# trailing white space will be trimmed, and a single space is added by Lynx
+# following the last non-white character.  You must set the default prompt
+# before setting the default jumps file (below).  If a default jumps file
+# was set via userdefs.h, and you change the prompt here, you must set the
+# default jumps file again (below) for the change to be implemented.
+#
+#JUMP_PROMPT:Jump to (use '?' for list):
+
+.h1 Auxiliary Facilities
+
+.h2 JUMPFILE
+# JUMPFILE is the local file checked for short-cut names for URLs when
+# the user presses the 'j' (JUMP) key.  The file contains an HTML
+# definition list (DL).  The definition titles (DT) are used as
+# short-cut name; the definition data (DD) are URLs.
+#
+# There is an example jumps file in the samples subdirectory.
+#
+# After pressing 'j', the user will be prompted to enter a short-cut
+# name for an URL, which Lynx will then follow in a similar manner to
+# 'g'oto; alternatively, s/he can enter '?' to view the full JUMPFILE
+# list of short-cuts with associated URLs.
+#
+# If the URL contains one or more "%s" markers, Lynx will prompt the user
+# for text to fill in for each marker.  If no text is given, the jump is
+# cancelled.
+#
+# If not defined here or in userdefs.h, the JUMP command will invoke the
+# NO_JUMPFILE statusline message (see LYMessages_en.h ).
+#
+# To allow '?' to work, include in the JUMPFILE
+# a short-cut to the JUMPFILE itself, e.g.
+# <dt>?<dd><a href="file://localhost/path/jumps.html">This Shortcut List</a>
+#
+# On VMS, use Unix SHELL syntax (including a lead slash) to define it.
+#
+# Alternate jumps files can be defined and mapped to keys here.  If the
+# keys have already been mapped, then those mappings will be replaced,
+# but you should leave at least one key mapped to the default jumps
+# file.  You optionally may include a statusline prompt string for the
+# mapping.  You must map upper and lowercase keys separately (beware of
+# mappings to keys which the user can further remap via the 'o'ptions
+# menu).  The format is:
+#
+#	JUMPFILE:path:key[:prompt]
+#
+# where path should begin with a '/' (i.e., not include file://localhost).
+# Any white space following a prompt string will be trimmed, and a single
+# space will be added by Lynx.
+#
+# In the following line, include the actual full local path to JUMPFILE,
+# but do not include 'file://localhost' in the line.
+#JUMPFILE:/FULL_LOCAL_PATH/jumps.html
+.ex
+#JUMPFILE:/Lynx_Dir/ips.html:i:IP or Interest group (? for list):
+
+.h2 JUMPBUFFER
+# Set JUMPBUFFER to TRUE if you want to have the previous jump target,
+# if any, offered for reuse or editing when using the 'J'ump command.
+# The default is defined in userdefs.h.  If left FALSE, the circular
+# buffer of previously entered targets (shortcuts) can still be invoked
+# via the Up-Arrow or Down-Arrow keys after entering the 'J'ump command.
+# If multiple jumps files are installed, the recalls of shortcuts will
+# be specific to each file.  If Lynx was built with PERMIT_GOTO_FROM_JUMP
+# defined, any random URLs used instead of shortcuts will be stored in the
+# goto URL buffer, not in the shortcuts buffer(s), and the single character
+# ':' can be used as a target to invoke the goto URL buffer (as if 'g'oto
+# followed by Up-Arrow had been entered).
+#
+#JUMPBUFFER:FALSE
+
+.h1 Internal Behavior
+
+.h2 SAVE_SPACE
+# If SAVE_SPACE is defined, it will be used as a path prefix for the
+# suggested filename in "Save to Disk" operations from the 'p'rint or
+# 'd'ownload menus.  On VMS, you can use either VMS (e.g., "SYS$LOGIN:")
+# or Unix syntax (including '~' for the HOME directory).  On Unix, you
+# must use Unix syntax.  If the symbol is not defined, or is zero-length
+# (""), no prefix will be used, and only a filename for saving in the
+# current default directory will be suggested.
+# This definition will be overridden if a "LYNX_SAVE_SPACE" environment
+# variable has been set on Unix, or logical has been defined on VMS.
+#
+#SAVE_SPACE:~/foo/
+
+.h2 REUSE_TEMPFILES
+# Lynx uses temporary files for (among other purposes) the content of
+# various user interface pages.  REUSE_TEMPFILES changes the behavior
+# for some of these temp files, among them pages shown for HISTORY,
+# VLINKS, OPTIONS, INFO, PRINT, DOWNLOAD commands.
+# If set to TRUE, the same file can be used multiple times for the same
+# purpose.  If set to FALSE, a new filename is generated each time before
+# rewriting such a page.  With TRUE, repeated invocation of these commands
+# is less likely to push previous documents out of the cache of rendered
+# texts (see also DEFAULT_CACHE_SIZE).  This is especially useful with
+# intermittent (dialup) network connections, when it is desirable to
+# continue browsing through the cached documents after disconnecting.
+# With the default setting of FALSE, there can be more than one incarnation
+# of e.g. the VLINKS page cached in memory (but still only the most recently
+# generated one is kept as a file), resulting in sometimes less surprising
+# behaviour when returning to such a page via HISTORY or PREV_DOC functions
+# (most users will not encounter and notice this difference).
+#
+#REUSE_TEMPFILES:FALSE
+
+.h2 LYNX_HOST_NAME
+# If LYNX_HOST_NAME is defined here or in userdefs.h, it will be
+# treated as an alias for the local host name in checks for URLs on
+# the local host (e.g., when the -localhost switch is set), and this
+# host name, "localhost", and HTHostName (the fully qualified domain
+# name of the system on which Lynx is running) will all be passed as
+# local.  A different definition here will override that in userdefs.h.
+#
+#LYNX_HOST_NAME:www.cc.ukans.edu
+
+.h2 LOCALHOST_ALIAS
+# localhost aliases
+# Any LOCALHOST_ALIAS definitions also will be accepted as local when
+# the -localhost switch is set.  These need not actually be local, i.e.,
+# in contrast to LYNX_HOST_NAME, you can define them to trusted hosts at
+# other Internet sites.
+#
+.ex 2
+#LOCALHOST_ALIAS:gopher.server.domain
+#LOCALHOST_ALIAS:news.server.domain
+
+.h2 LOCAL_DOMAIN
+# LOCAL_DOMAIN is used for a tail match with the ut_host element of
+# the utmp or utmpx structure on systems with utmp capabilities, to
+# determine if a user is local to your campus or organization when
+# handling -restrictions=inside_foo or outside_foo settings for ftp,
+# news, telnet/tn3270 and rlogin URLs.  An "inside" user is assumed
+# if your system does not have utmp capabilities.  CHANGE THIS here
+# if it was not changed in userdefs.h at compilation time.
+#
+#LOCAL_DOMAIN:ukans.edu
+
+.h1 Session support
+
+.h2 AUTO_SESSION
+# If AUTO_SESSION is TRUE lynx will save/restore useful information about
+# your browsing history when closing/starting current lynx session if
+# no command-line session switches override this setting.
+# This setting is useful only if SESSION_FILE is defined here or in the user's
+# .lynxrc file.
+#
+#AUTO_SESSION:FALSE
+
+.h2 SESSION_FILE
+# SESSION_FILE defines the file name where lynx will store user sessions.
+# This setting is used only when AUTO_SESSION is true.
+# Note: the default setting will store/resume each session in a different
+# folder under same file name (if that is allowed by operating system)
+# when lynx is invoked from different directories.
+# (The current working directory may be changed inside lynx)
+#
+# If you want to use the same session file wherever you invoke Lynx,
+# enter the full path below, eg '/home/<username>/.lynx_session'.
+#
+# If you do not want this feature, leave the setting commented.
+# Users can still customize SESSION_FILE and AUTO_SESSION via
+# their .lynxrc file.
+#
+#SESSION_FILE:lynx_session
+
+.h2 SESSION_LIMIT
+# SESSION_LIMIT defines maximum number of:  searched strings, goto URLs,
+# visited links and history entries which will be saved in session file.  The
+# minimum allowed is 1, the maximum is 10000.
+#
+# For instance, if SESSION_LIMIT is 250, a per-session limit of 250 entries of
+# searched strings, goto URLs, visited links and history entries will be saved
+# in the session file.
+#
+# There is no fixed limit on the number of entries which can be restored;
+# It is limited only by available memory.
+#
+#SESSION_LIMIT:250
+
+.h1 Character Sets
+
+.h2 CHARACTER_SET
+# CHARACTER_SET defines the display character set, i.e., assumed to be
+# installed on the user's terminal.  It determines which characters or strings
+# will be used to represent 8-bit character entities within HTML.  New
+# character sets may be defined as explained in the README files of the
+# src/chrtrans directory in the Lynx source code distribution.  For Asian (CJK)
+# character sets, it also determines how Kanji code will be handled.  The
+# default is defined in userdefs.h and can be changed here or via the
+# 'o'ptions menu.  The 'o'ptions menu setting will be stored in the user's RC
+# file whenever those settings are saved, and thereafter will be used as the
+# default.  For Lynx a "character set" has two names:  a MIME name (for
+# recognizing properly labeled charset parameters in HTTP headers etc.), and a
+# human-readable string for the 'O'ptions Menu (so you may find info about
+# language or group of languages besides MIME name).  Not all 'human-readable'
+# names correspond to exactly one valid MIME charset (example is "Chinese");
+# in that case an appropriate valid (and more specific) MIME name should be
+# used where required.  Well-known synonyms are also processed in the code.
+#
+# Raw (CJK) mode
+#
+# Lynx normally translates characters from a document's charset to display
+# charset, using ASSUME_CHARSET value (see below) if the document's charset
+# is not specified explicitly.  Raw (CJK) mode is OFF for this case.
+# When the document charset is specified explicitly, that charset
+# overrides any assumption like ASSUME_CHARSET or raw (CJK) mode.
+#
+# For the Asian (CJK) display character sets, the corresponding charset is
+# assumed in documents, i.e., raw (CJK) mode is ON by default.  In raw CJK
+# mode, 8-bit characters are not reverse translated in relation to the entity
+# conversion arrays, i.e., they are assumed to be appropriate for the display
+# character set.  The mode should be toggled OFF when an Asian (CJK) display
+# character set is selected but the document is not CJK and its charset not
+# specified explicitly.
+#
+# Raw (CJK) mode may be toggled by user via '@' (LYK_RAW_TOGGLE) key,
+# the -raw command line switch or from the 'o'ptions menu.
+#
+# Raw (CJK) mode effectively changes the charset assumption about unlabeled
+# documents.  You can toggle raw mode ON if you believe the document has a
+# charset which does correspond to your Display Character Set.  On the other
+# hand, if you set ASSUME_CHARSET the same as Display Character Set you get raw
+# 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.
+# HTML character entities may get expanded and translated, inappropriate
+# control characters filtered out, etc.  There is a "Transparent" pseudo
+# character set for more "rawness".
+#
+# Since Lynx now supports a wide range of platforms it may be useful to note
+# the cpXXX codepages used by IBM PC compatible computers, and windows-xxxx
+# used by native MS-Windows apps.  We also note that cpXXX pages rarely are
+# found on Internet, but are mostly for local needs on DOS.
+#
+# Recognized character sets include:
+#
+.nf
+#    string for 'O'ptions Menu          MIME name
+#    ===========================        =========
+#    7 bit approximations (US-ASCII)    us-ascii
+#    Western (ISO-8859-1)               iso-8859-1
+#    Western (ISO-8859-15)              iso-8859-15
+#    Western (cp850)                    cp850
+#    Western (windows-1252)             windows-1252
+#    IBM PC US codepage (cp437)         cp437
+#    DEC Multinational                  dec-mcs
+#    Macintosh (8 bit)                  macintosh
+#    NeXT character set                 next
+#    HP Roman8                          hp-roman8
+#    Chinese                            euc-cn
+#    Japanese (EUC-JP)                  euc-jp
+#    Japanese (Shift_JIS)               shift_jis
+#    Korean                             euc-kr
+#    Taipei (Big5)                      big5
+#    Vietnamese (VISCII)                viscii
+#    Eastern European (ISO-8859-2)      iso-8859-2
+#    Eastern European (cp852)           cp852
+#    Eastern European (windows-1250)    windows-1250
+#    Latin 3 (ISO-8859-3)               iso-8859-3
+#    Latin 4 (ISO-8859-4)               iso-8859-4
+#    Baltic Rim (ISO-8859-13)		iso-8859-13
+#    Baltic Rim (cp775)                 cp775
+#    Baltic Rim (windows-1257)          windows-1257
+#    Celtic (ISO-8859-14)		iso-8859-14
+#    Cyrillic (ISO-8859-5)              iso-8859-5
+#    Cyrillic (cp866)                   cp866
+#    Cyrillic (windows-1251)            windows-1251
+#    Cyrillic (KOI8-R)                  koi8-r
+#    Arabic (ISO-8859-6)                iso-8859-6
+#    Arabic (cp864)                     cp864
+#    Arabic (windows-1256)              windows-1256
+#    Greek (ISO-8859-7)                 iso-8859-7
+#    Greek (cp737)                      cp737
+#    Greek2 (cp869)                     cp869
+#    Greek (windows-1253)               windows-1253
+#    Hebrew (ISO-8859-8)                iso-8859-8
+#    Hebrew (cp862)                     cp862
+#    Hebrew (windows-1255)              windows-1255
+#    Turkish (ISO-8859-9)               iso-8859-9
+#    North European (ISO-8859-10)	iso-8859-10
+#    Ukrainian Cyrillic (cp866u)        cp866u
+#    Ukrainian Cyrillic (KOI8-U)        koi8-u
+#    UNICODE (UTF-8)                    utf-8
+#    RFC 1345 w/o Intro                 mnemonic+ascii+0
+#    RFC 1345 Mnemonic                  mnemonic
+#    Transparent                        x-transparent
+.fi
+#
+# The value should be the MIME name of a character set recognized by
+# Lynx (case insensitive).
+# Find RFC 1345 at
+.url http://tools.ietf.org/html/rfc1345
+#
+#CHARACTER_SET:iso-8859-1
+
+.h2 LOCALE_CHARSET
+# LOCALE_CHARSET overrides CHARACTER_SET if true, using the current locale to
+# lookup a MIME name that corresponds, and use that as the display charset.
+#
+# Note that while nl_langinfo(CODESET) itself is standardized, the return
+# values and their relationship to the locale value is not.  GNU libiconv
+# happens to give useful values, but other implementations are not guaranteed
+# to do this.
+#LOCALE_CHARSET:FALSE
+
+.h2 HTML5_CHARSETS
+# HTML5_CHARSETS is an alternative to ASSUME_CHARSET and ASSUME_LOCAL_CHARSET.
+# Those assume by default that the character set of an HTML document is (as is
+# standard in HTML4) ISO-8859-1, in the absence of locale information.
+#
+# HTML5 introduces a "compatibility" (sic) feature which assumes that the
+# default is Windows 1252.  In the same way, it equates ISO-8859-4 and Windows
+# 1254.  Finally, it also makes recommendations which selectively reinterpret
+# the locale encoding.
+#
+# This option currently implements only the equating of ISO-8859-1 and Windows
+# 1252.
+#
+#HTML5_CHARSETS:FALSE
+
+.h2 ASSUME_CHARSET
+# ASSUME_CHARSET changes the handling of documents which do not
+# explicitly specify a charset.  Normally Lynx assumes that 8-bit
+# characters in those documents are encoded according to iso-8859-1
+# (the official default for the HTTP protocol).  When ASSUME_CHARSET
+# is defined here or by an -assume_charset command line flag is in effect,
+# Lynx will treat documents as if they were encoded accordingly.
+# See above on how this interacts with "raw mode" and the Display
+# Character Set.
+# ASSUME_CHARSET can also be changed via the 'o'ptions menu but will
+# not be saved as permanent value in user's .lynxrc file to avoid more chaos.
+#
+#ASSUME_CHARSET:iso-8859-1
+
+.h2 ASSUMED_DOC_CHARSET_CHOICE
+.h2 DISPLAY_CHARSET_CHOICE
+# It is possible to reduce the number of charset choices in the 'O'ptions menu
+# for "display charset" and "assumed document charset" fields via
+# DISPLAY_CHARSET_CHOICE and ASSUMED_DOC_CHARSET_CHOICE settings correspondingly.
+# Each of these settings can be used several times to define the set of possible
+# choices for corresponding field. The syntax for the values is
+#
+#	string | prefix* | *
+#
+# where
+#
+#	'string' is either the MIME name of charset or it's full name (listed
+#		either in the left or in the right column of table of
+#		recognized charsets), case-insensitive - e.g.  'Koi8-R' or
+#		'Cyrillic (KOI8-R)' (both without quotes),
+#
+#	'prefix' is any string, and such value will select all charsets having
+#		the name with prefix matching given (case insensitive), i.e.,
+#		for the charsets listed in the table of recognized charsets,
+#
+.ex
+# ASSUMED_DOC_CHARSET_CHOICE:cyrillic*
+#		will be equal to specifying
+.ex 4
+# ASSUMED_DOC_CHARSET_CHOICE:cp866
+# ASSUMED_DOC_CHARSET_CHOICE:windows-1251
+# ASSUMED_DOC_CHARSET_CHOICE:koi8-r
+# ASSUMED_DOC_CHARSET_CHOICE:iso-8859-5
+#		or lines with full names of charsets.
+#
+#	literal string '*' (without quotes) will enable all charset choices
+#		in corresponding field.  This is useful for overriding site
+#		defaults in private pieces of lynx.cfg included via INCLUDE
+#		directive.
+#
+# Default values for both settings are '*', but any occurrence of settings
+# with values that denote any charsets will make only listed choices available
+# for corresponding field.
+#ASSUMED_DOC_CHARSET_CHOICE:*
+#DISPLAY_CHARSET_CHOICE:*
+
+.h2 ASSUME_LOCAL_CHARSET
+# ASSUME_LOCAL_CHARSET is like ASSUME_CHARSET but only applies to local
+# files.  If no setting is given here or by an -assume_local_charset
+# command line option, the value for ASSUME_CHARSET or -assume_charset
+# is used.  It works for both text/plain and text/html files.
+# This option will ignore "raw mode" toggling when local files are viewed
+# (it is "stronger" than "assume_charset" or the effective change
+# of the charset assumption caused by changing "raw mode"),
+# so only use when necessary.
+#
+#ASSUME_LOCAL_CHARSET:iso-8859-1
+
+.h2 PREPEND_CHARSET_TO_SOURCE
+# PREPEND_CHARSET_TO_SOURCE:TRUE tells Lynx to prepend a META CHARSET line
+# to text/html source files when they are retrieved for 'd'ownloading
+# or passed to 'p'rint functions, so HTTP headers will not be lost.
+# This is necessary for resolving charset for local html files,
+# while the assume_local_charset is just an assumption.
+# For the 'd'ownload option, a META CHARSET will be added only if the HTTP
+# charset is present.  The compilation default is TRUE.
+# It is generally desirable to have charset information for every local
+# html file, but META CHARSET string potentially could cause
+# compatibility problems with other browsers, see also PREPEND_BASE_TO_SOURCE.
+# Note that the prepending is not done for -source dumps.
+#
+#PREPEND_CHARSET_TO_SOURCE:TRUE
+
+.h2 NCR_IN_BOOKMARKS
+# NCR_IN_BOOKMARKS:TRUE allows you to save 8-bit characters in bookmark titles
+# in the unicode format (NCR).  This may be useful if you need to switch
+# display charsets frequently.  This is the case when you use Lynx on different
+# platforms, e.g., on UNIX and from a remote PC, and want to keep the bookmarks
+# file persistent.
+# Another aspect is compatibility:  NCR is part of I18N and HTML4.0
+# specifications supported starting with Lynx 2.7.2, Netscape 4.0 and MSIE 4.0.
+# Older browser versions will fail so keep NCR_IN_BOOKMARKS:FALSE if you
+# plan to use them.
+#
+#NCR_IN_BOOKMARKS:FALSE
+
+.h2 FORCE_8BIT_TOUPPER
+# FORCE_8BIT_TOUPPER overrides locale settings and uses internal 8-bit
+# case-conversion mechanism for case-insensitive searches in non-ASCII display
+# character sets.  It is FALSE by default and should not be changed unless
+# you encounter problems with case-insensitive searches.
+#
+#FORCE_8BIT_TOUPPER:FALSE
+
+.h2 OUTGOING_MAIL_CHARSET
+# While Lynx supports different platforms and display character sets
+# we need to limit the charset in outgoing mail to reduce
+# trouble for remote recipients who may not recognize our charset.
+# You may try US-ASCII as the safest value (7 bit), any other MIME name,
+# or leave this field blank (default) to use the display character set.
+# Charset translations currently are implemented for mail "subjects= " only.
+#
+#OUTGOING_MAIL_CHARSET:
+
+.h2 ASSUME_UNREC_CHARSET
+# If Lynx encounters a charset parameter it doesn't recognize, it will
+# replace the value given by ASSUME_UNREC_CHARSET (or a corresponding
+# -assume_unrec_charset command line option) for it.  This can be used
+# to deal with charsets unknown to Lynx, if they are "sufficiently
+# similar" to one that Lynx does know about, by forcing the same
+# treatment.  There is no default, and you probably should leave this
+# undefined unless necessary.
+#
+#ASSUME_UNREC_CHARSET:iso-8859-1
+
+.h2 PREFERRED_LANGUAGE
+# PREFERRED_LANGUAGE is the language in MIME notation (e.g., "en",
+# "fr") which will be indicated by Lynx in its Accept-Language headers
+# as the preferred language.  If available, the document will be
+# transmitted in that language.  Users can override this setting via
+# the 'o'ptions menu and save that preference in their RC file.
+# This may be a comma-separated list of languages in decreasing preference.
+#
+#PREFERRED_LANGUAGE:en
+
+.h2 PREFERRED_CHARSET
+# PREFERRED_CHARSET specifies the character set in MIME notation (e.g.,
+# "ISO-8859-2", "ISO-8859-5") which Lynx will indicate you prefer in
+# requests to http servers using an Accept-Charsets header.  Users can
+# change it via the 'o'ptions menu and save that preference in their RC file.
+# The value should NOT include "ISO-8859-1" or "US-ASCII",
+# since those values are always assumed by default.
+# If a file in that character set is available, the server will send it.
+# If no Accept-Charset header is present, the default is that any
+# character set is acceptable.  If an Accept-Charset header is present,
+# and if the server cannot send a response which is acceptable
+# according to the Accept-Charset header, then the server SHOULD send
+# an error response with the 406 (not acceptable) status code, though
+# the sending of an unacceptable response is also allowed.  See RFC 2068
+.url http://tools.ietf.org/html/rfc2068
+#
+#PREFERRED_CHARSET:
+
+.h2 CHARSETS_DIRECTORY
+# CHARSETS_DIRECTORY specifies the directory with the fonts (glyph data)
+# used by Lynx to switch the display-font to a font best suited for the
+# given document.  The font should be in a format understood by the
+# platforms TTY-display-font-switching API.  Currently supported on OS/2 only.
+#
+# Lynx expects the glyphs for the charset CHARSET with character cell
+# size HHHxWWW to be stored in a file HHHxWWW/CHARSET.fnt inside the directory
+# specified by CHARSETS_DIRECTORY.  E.g., the font for koi8-r sized 14x9
+# should be in the file 14x9/koi8-r.fnt.
+#
+#CHARSETS_DIRECTORY:
+
+.h2 CHARSET_SWITCH_RULES
+# CHARSET_SWITCH_RULES hints lynx on how to choose the best display font given
+# the document encoding.  This string is a sequence of chunks, each chunk
+# having the following form:
+#
+# IN_CHARSET1 IN_CHARSET2 ... IN_CHARSET5 :OUT_CHARSET
+#
+# For readability, one may insert arbitrary additional punctuation (anything
+# but : is ignored).  E.g., if lynx is able to switch only to display charsets
+# cp866, cp850, cp852, and cp862, then the following setting may be useful
+# (split for readability):
+#
+# CHARSET_SWITCH_RULES: koi8-r ISO-8859-5 windows-1251 cp866u KOI8-U :cp866,
+#	iso-8859-1 windows-1252 ISO-8859-15 :cp850,
+#	ISO-8859-2 windows-1250 :cp852,
+#	ISO-8859-8 windows-1255 :cp862
+#
+#CHARSET_SWITCH_RULES:
+
+.h1 Interaction
+
+.h2 URL_DOMAIN_PREFIXES
+.h2 URL_DOMAIN_SUFFIXES
+# URL_DOMAIN_PREFIXES and URL_DOMAIN_SUFFIXES are strings which will be
+# prepended (together with a scheme://) and appended to the first element
+# of command line or 'g'oto arguments which are not complete URLs and
+# cannot be opened as a local file (file://localhost/string).  Both
+# can be comma-separated lists.  Each prefix must end with a dot, each
+# suffix must begin with a dot, and either may contain other dots (e.g.,
+# .com.jp).  The default lists are defined in userdefs.h and can be
+# replaced here.  Each prefix will be used with each suffix, in order,
+# until a valid Internet host is created, based on a successful DNS
+# lookup (e.g., foo will be tested as www.foo.com and then www.foo.edu
+# etc.).  The first element can include a :port and/or /path which will
+# be restored with the expanded host (e.g., wfbr:8002/dir/lynx will
+# become http://www.wfbr.edu:8002/dir/lynx).  The prefixes will not be
+# used if the first element ends in a dot (or has a dot before the
+# :port or /path), and similarly the suffixes will not be used if the
+# the first element begins with a dot (e.g., .nyu.edu will become
+# http://www.nyu.edu without testing www.nyu.com).  Lynx will try to
+# guess the scheme based on the first field of the expanded host name,
+# and use "http://" as the default (e.g., gopher.wfbr.edu or gopher.wfbr.
+# will be made gopher://gopher.wfbr.edu).
+#
+#URL_DOMAIN_PREFIXES:www.
+#URL_DOMAIN_SUFFIXES:.com,.edu,.net,.org
+
+.h2 FORMS_OPTIONS
+# Toggle whether the Options Menu is key-based or form-based;
+# the key-based version is available only if specified at compile time.
+#FORMS_OPTIONS:TRUE
+
+.h2 PARTIAL
+# Display partial pages while downloading
+#PARTIAL:TRUE
+
+.h2 PARTIAL_THRES
+# Set the threshold # of lines Lynx must render before it
+# redraws the screen in PARTIAL mode.  Anything < 0 implies
+# use of the screen size.
+#PARTIAL_THRES:-1
+
+.h2 SHOW_KB_RATE
+# While getting large files, Lynx shows the approximate rate of transfer.
+# Set this to change the units shown.  "Kilobytes" denotes 1024 bytes:
+#	NONE to disable the display of transfer rate altogether.
+#	TRUE or KB for Kilobytes/second.
+#	FALSE or BYTES for bytes/second.
+#	KB,ETA to show Kilobytes/second with estimated completion time.
+#	BYTES,ETA to show BYTES/second with estimated completion time.
+# Note that the "ETA" values are available if USE_READPROGRESS was defined.
+#SHOW_KB_RATE:TRUE
+
+.h2 SHOW_KB_NAME
+# Set the abbreviation for Kilobytes (1024).
+# Quoting from
+.url http://www.romulus2.com/articles/guides/misc/bitsbytes.shtml
+# In December 1998, the International Electrotechnical Commission (IEC)
+# approved a new IEC International Standard.  Instead of using the metric
+# prefixes for multiples in binary code, the new IEC standard invented specific
+# prefixes for binary multiples made up of only the first two letters of the
+# metric prefixes and adding the first two letters of the word "binary".  Thus,
+# for instance, instead of Kilobyte (KB) or Gigabyte (GB), the new terms would
+# be kibibyte (KiB) or gibibyte (GiB).
+#
+# If you prefer using the conventional (and more common) "KB", modify this
+# setting.
+#SHOW_KB_NAME:KiB
+
+.h1 Timeouts
+
+.h2 INFOSECS
+.h2 MESSAGESECS
+.h2 ALERTSECS
+.h2 NO_PAUSE
+# The following definitions set the number of seconds for
+# pauses following statusline 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 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
+# report a serious problem and should be paused long enough to read
+# whenever they appear (typically unexpectedly).  The default values
+# are defined in userdefs.h, and can be modified here should longer
+# pauses be desired for braille-based access to Lynx.
+#
+# SVr4-curses implementations support time delays in milliseconds,
+# hence the value may be given shorter, e.g., 0.5
+#
+# Use the NO_PAUSE option (like the command-line -nopause) to override
+# all of the delay times.
+#
+#INFOSECS:1
+#MESSAGESECS:2
+#ALERTSECS:3
+#NO_PAUSE:FALSE
+
+.h2 DEBUGSECS
+# Set DEBUGSECS to a nonzero value to slow down progress messages
+# (see "-delay" option).
+#DEBUGSECS:0
+
+.h2 REPLAYSECS
+# Set REPLAYSECS to a nonzero value to allow for slow replaying of
+# command scripts (see "-cmd_script" option).
+#REPLAYSECS:0
+
+.h1 Appearance
+# These settings control the appearance of Lynx's screen and the way
+# Lynx renders some tags.
+
+.h2 USE_SELECT_POPUPS
+# If USE_SELECT_POPUPS is set FALSE, Lynx will present a vertical list of
+# radio buttons for the OPTIONs in SELECT blocks which lack the MULTIPLE
+# attribute, instead of using a popup menu.  Note that if the MULTIPLE
+# attribute is present in the SELECT start tag, Lynx always will create a
+# vertical list of checkboxes for the OPTIONs.
+# The default defined here or in userdefs.h can be changed via the 'o'ptions
+# menu and saved in the RC file, and always can be toggled via the -popup
+# command line switch.
+#
+#USE_SELECT_POPUPS:TRUE
+
+.h2 SHOW_CURSOR
+# SHOW_CURSOR controls whether or not the cursor is hidden or appears
+# over the current link in documents or the current option in popups.
+# Showing the cursor is handy if you are a sighted user with a poor
+# terminal that can't do bold and reverse video at the same time or
+# at all.  It also can be useful to blind users, as an alternative
+# or supplement to setting LINKS_AND_FIELDS_ARE_NUMBERED or
+# LINKS_ARE_NUMBERED.
+# The default defined here or in userdefs.h can be changed via the
+# 'o'ptions menu and saved in the RC file, and always can be toggled
+# via the -show_cursor command line switch.
+#
+#SHOW_CURSOR:FALSE
+
+.h2 UNDERLINE_LINKS
+# UNDERLINE_LINKS controls whether links are underlined by default, or shown
+# in bold.  Normally this default is set from the configure script.
+#
+#UNDERLINE_LINKS:FALSE
+
+.h2 BOLD_HEADERS
+# If BOLD_HEADERS is set to TRUE the HT_BOLD default style will be acted
+# upon for <H1> through <H6> headers.  The compilation default is FALSE
+# (only the indentation styles are acted upon, but see BOLD_H1, below).
+# On Unix, compilation with -DUNDERLINE_LINKS also will apply to the
+# HT_BOLD style for headers when BOLD_HEADERS is TRUE.
+#
+#BOLD_HEADERS:FALSE
+
+.h2 BOLD_H1
+# If BOLD_H1 is set to TRUE the HT_BOLD default style will be acted
+# upon for <H1> headers even if BOLD_HEADERS is FALSE.  The compilation
+# default is FALSE.  On Unix, compilation with -DUNDERLINE_LINKS also
+# will apply to the HT_BOLD style for headers when BOLD_H1 is TRUE.
+#
+#BOLD_H1:FALSE
+
+.h2 BOLD_NAME_ANCHORS
+# If BOLD_NAME_ANCHORS is set to TRUE the content of anchors without
+# an HREF attribute, (i.e., anchors with a NAME or ID attribute) will
+# have the HT_BOLD default style.  The compilation default is FALSE.
+# On Unix, compilation with -DUNDERLINE_LINKS also will apply to the
+# HT_BOLD style for NAME (ID) anchors when BOLD_NAME_ANCHORS is TRUE.
+#
+#BOLD_NAME_ANCHORS:FALSE
+
+.h1 Internal Behavior
+
+.h2 DEFAULT_CACHE_SIZE
+.h2 DEFAULT_VIRTUAL_MEMORY_SIZE
+# The DEFAULT_CACHE_SIZE specifies the number of WWW documents to be
+# cached in memory at one time.
+#
+# This so-called cache size (actually, number) is defined in userdefs.h and
+# may be modified here and/or with the command line argument -cache=NUMBER
+# The minimum allowed value is 2, for the current document and at least one
+# to fetch, and there is no absolute maximum number of cached documents.
+# On Unix, and VMS not compiled with VAXC, whenever the number is exceeded
+# the least recently displayed document will be removed from memory.
+#
+# On VMS compiled with VAXC, the DEFAULT_VIRTUAL_MEMORY_SIZE specifies the
+# amount (bytes) of virtual memory that can be allocated and not yet be freed
+# before previous documents are removed from memory.  If the values for both
+# the DEFAULT_CACHE_SIZE and DEFAULT_VIRTUAL_MEMORY_SIZE are exceeded, then
+# the least recently displayed documents will be freed until one or the other
+# value is no longer exceeded.  The default value is defined in userdefs.h.
+#
+# The Unix and VMS (but not VAXC) implementations use the C library malloc's
+# and calloc's for memory allocation, but procedures for taking the actual
+# amount of cache into account still need to be developed.  They use only
+# the DEFAULT_CACHE_SIZE value, and that specifies the absolute maximum
+# number of documents to cache (rather than the maximum number only if
+# DEFAULT_VIRTUAL_MEMORY_SIZE has been exceeded, as with VAXC/VAX).
+#
+#DEFAULT_CACHE_SIZE:10
+#DEFAULT_VIRTUAL_MEMORY_SIZE:512000
+
+.h2 SOURCE_CACHE
+# SOURCE_CACHE sets the source caching behavior for Lynx:
+# FILE causes Lynx to keep a temporary file for each cached document
+#   containing the HTML source of the document, which it uses to regenerate
+#   the document when certain settings are changed (for instance,
+#   historical vs. minimal vs. valid comment parsing) instead of reloading
+#   the source from the network.
+# MEMORY is like FILE, except the document source is kept in memory.  You
+#   may wish to adjust DEFAULT_CACHE_SIZE and DEFAULT_VIRTUAL_MEMORY_SIZE
+#   accordingly.
+# NONE is the default; the document source is not cached, and is reloaded
+#   from the network when needed.
+#
+#SOURCE_CACHE:NONE
+
+.h2 SOURCE_CACHE_FOR_ABORTED
+# This setting controls what will happen with cached source for the document
+# being fetched from the net if fetching was aborted (either user pressed
+# 'z' or network went down). If set to KEEP, the source fetched so far will
+# be preserved (and used as cache), if set to DROP lynx will drop the
+# source cache for that document (i.e. only completely downloaded documents
+# will be cached in that case).
+#SOURCE_CACHE_FOR_ABORTED:DROP
+
+.h2 ALWAYS_RESUBMIT_POSTS
+# If ALWAYS_RESUBMIT_POSTS is set TRUE, Lynx always will resubmit forms
+# with method POST, dumping any cache from a previous submission of the
+# form, including when the document returned by that form is sought with
+# the PREV_DOC command or via the history list.  Lynx always resubmits
+# forms with method POST when a submit button or a submitting text input
+# is activated, but normally retrieves the previously returned document
+# if it had links which you activated, and then go back with the PREV_DOC
+# command or via the history list.
+#
+# The default defined here or in userdefs.h can be toggled via
+# the -resubmit_forms command line switch.
+#
+#ALWAYS_RESUBMIT_POSTS:FALSE
+
+.h2 TRIM_INPUT_FIELDS
+# If TRIM_INPUT_FIELDS is set TRUE, Lynx will trim trailing whitespace (e.g.,
+# space, tab, carriage return, line feed and form feed) from the text entered
+# into form text and textarea fields.  Older versions of Lynx do this trimming
+# unconditionally, but other browsers do not, which would yield different
+# behavior for CGI scripts.
+#TRIM_INPUT_FIELDS:FALSE
+
+.h1 HTML Parsing
+
+.h2 NO_ISMAP_IF_USEMAP
+# If NO_ISMAP_IF_USEMAP is set TRUE, Lynx will not include a link to the
+# server-side image map if both a server-side and client-side map for the
+# same image is indicated in the HTML markup.  The compilation default is
+# FALSE, such that a link with "[ISMAP]" as the link name, followed by a
+# hyphen, will be prepended to the ALT string or "[USEMAP]" pseudo-ALT for
+# accessing Lynx's text-based rendition of the client-side map (based on
+# the content of the associated MAP element).  If the "[ISMAP]" link is
+# activated, Lynx will send a 0,0 coordinate pair to the server, which
+# Lynx-friendly sites can map to a for-text-client document, homologous
+# to what is intended for the content of a FIG element.
+#
+# The compilation default, or default defined here, can be toggled via
+# the "-ismap" command line switch.
+#
+#NO_ISMAP_IF_USEMAP:FALSE
+
+.h2 SEEK_FRAG_MAP_IN_CUR
+# If SEEK_FRAG_MAP_IN_CUR is set FALSE, then USEMAP attribute values
+# (in IMG or OBJECT tags) consisting of only a fragment (USEMAP="#foo")
+# will be resolved with respect to the current document's base, which
+# might not be the same as the current document's URL.
+# The compilation default is to use the current document's URL in all
+# cases (i.e., assume the MAP is present below, if it wasn't present
+# above the point in the HTML stream where the USEMAP attribute was
+# detected).  Lynx's present "single pass" rendering engine precludes
+# checking below before making the decision on how to resolve a USEMAP
+# reference consisting solely of a fragment.
+#
+#SEEK_FRAG_MAP_IN_CUR:TRUE
+
+.h2 SEEK_FRAG_AREA_IN_CUR
+# If SEEK_FRAG_AREA_IN_CUR is set FALSE, then HREF attribute values
+# in AREA tags consisting of only a fragment (HREF="#foo") will be
+# resolved with respect to the current document's base, which might
+# not be the same as the current document's URL.  The compilation
+# default is to use the current document's URL, as is done for the
+# HREF attribute values of Anchors and LINKs that consist solely of
+# a fragment.
+#
+#SEEK_FRAG_AREA_IN_CUR:TRUE
+
+.h1 CGI scripts
+# These settings control Lynx's ability to execute various types of scripts.
+
+.h2 LOCAL_EXECUTION_LINKS_ALWAYS_ON
+.h2 LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE
+# Local execution links and scripts are by default completely disabled,
+# unless a change is made to the userdefs.h file to enable them or
+# the configure script is used with the corresponding options
+# (--enable-exec-links and --enable-exec-scripts).
+# See the Lynx source code distribution and the userdefs.h
+# file for more detail on enabling execution links and scripts.
+#
+# If you have enabled execution links or scripts the following
+# two variables control Lynx's action when an execution link
+# or script is encountered.
+#
+# If LOCAL_EXECUTION_LINKS_ALWAYS_ON is set to TRUE any execution
+# link or script will be executed no matter where it came from.
+# This is EXTREMELY dangerous.  Since Lynx can access files from
+# anywhere in the world, you may encounter links or scripts that
+# will cause damage or compromise the security of your system.
+#
+# If LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE is set to TRUE only
+# links or scripts that reside on the local machine and are
+# referenced with a URL beginning with "file://localhost/" or meet
+# TRUSTED_EXEC or ALWAYS_TRUSTED_EXEC rules (see below) will be
+# executed.  This is much less dangerous than enabling all execution
+# links, but can still be dangerous.
+#
+#LOCAL_EXECUTION_LINKS_ALWAYS_ON:FALSE
+#LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE:FALSE
+
+.h2 TRUSTED_EXEC
+# If LOCAL_EXECUTION_LINK_ON_BUT_NOT_REMOTE is TRUE, and no TRUSTED_EXEC
+# rule is defined, it defaults to "file://localhost/" and any lynxexec
+# or lynxprog command will be permitted if it was referenced from within
+# a document whose URL begins with that string.  If you wish to restrict the
+# referencing URLs further, you can extend the string to include a trusted
+# path.  You also can specify a trusted directory for http URLs, which will
+# then be treated as if they were local rather than remote.  For example:
+#
+#	TRUSTED_EXEC:file://localhost/trusted/
+#	TRUSTED_EXEC:http://www.wfbr.edu/trusted/
+#
+# If you also wish to restrict the commands which can be executed, create
+# a series of rules with the path (Unix) or command name (VMS) following
+# the string, separated by a tab.  For example:
+#
+# Unix:
+# ====
+#	TRUSTED_EXEC:file://localhost/<tab>/bin/cp
+#	TRUSTED_EXEC:file://localhost/<tab>/bin/rm
+# VMS:
+# ===
+#	TRUSTED_EXEC:file://localhost/<tab>copy
+#	TRUSTED_EXEC:file://localhost/<tab>delete
+#
+# Once you specify a TRUSTED_EXEC referencing string, the default is
+# replaced, and all the referencing strings you desire must be specified
+# as a series.  Similarly, if you associate a command with the referencing
+# string, you must specify all of the allowable commands as a series of
+# TRUSTED_EXEC rules for that string.  If you specify ALWAYS_TRUSTED_EXEC
+# rules below, you need not repeat them as TRUSTED_EXEC rules.
+#
+# If EXEC_LINKS and JUMPFILE have been defined, any lynxexec or lynxprog
+# URLs in that file will be permitted, regardless of other settings.  If
+# you also set LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE:TRUE and a single
+# TRUSTED_EXEC rule that will always fail (e.g., "none"), then *ONLY* the
+# lynxexec or lynxprog URLs in JUMPFILE (and any ALWAYS_TRUSTED_EXEC rules,
+# see below) will be allowed.  Note, however, that if Lynx was compiled with
+# CAN_ANONYMOUS_JUMP set to FALSE (default is TRUE), or -restrictions=jump
+# is included with the -anonymous switch at run time, then users of an
+# anonymous account will not be able to access the jumps file or enter
+# 'j'ump shortcuts, and this selective execution feature will be overridden
+# as well (i.e., they will only be able to access lynxexec or lynxprog
+# URLs which meet any ALWAYS_TRUSTED_EXEC rules).
+#
+#TRUSTED_EXEC:none
+
+.h2 ALWAYS_TRUSTED_EXEC
+# If EXEC_LINKS was defined, any lynxexec or lynxprog URL can be made
+# always enabled by an ALWAYS_TRUSTED_EXEC rule for it.  This is useful for
+# anonymous accounts in which you have disabled execution links generally,
+# and may also have disabled jumps file links, but still want to allow
+# execution of particular utility scripts or programs.  The format is
+# like that for TRUSTED_EXEC.  For example:
+#
+# Unix:
+# ====
+#   ALWAYS_TRUSTED_EXEC:file://localhost/<tab>/usr/local/kinetic/bin/usertime
+#   ALWAYS_TRUSTED_EXEC:http://www.more.net/<tab>/usr/local/kinetic/bin/who.sh
+# VMS:
+# ===
+#   ALWAYS_TRUSTED_EXEC:file://localhost/<tab>usertime
+#   ALWAYS_TRUSTED_EXEC:http://www.more.net/<tab>show users
+#
+# The default ALWAYS_TRUSTED_EXEC rule is "none".
+#
+#ALWAYS_TRUSTED_EXEC:none
+
+.h2 TRUSTED_LYNXCGI
+# Unix:
+# =====
+# TRUSTED_LYNXCGI rules define the permitted sources and/or paths for
+# lynxcgi links (if LYNXCGI_LINKS is defined in userdefs.h).  The format
+# is the same as for TRUSTED_EXEC rules (see above).  Example rules:
+#
+#	TRUSTED_LYNXCGI:file://localhost/
+# 	TRUSTED_LYNXCGI:<tab>/usr/local/etc/httpd/cgi-bin/
+# 	TRUSTED_LYNXCGI:file://localhost/<tab>/usr/local/www/cgi-bin/
+#
+# VMS:
+# ====
+# Do not define this.
+#
+# The default TRUSTED_LYNXCGI rule is "none".
+#
+#TRUSTED_LYNXCGI:none
+
+.h2 LYNXCGI_ENVIRONMENT
+# Unix:
+# =====
+# LYNXCGI_ENVIRONMENT adds the current value of the specified
+# environment variable to the list of environment variables passed on to the
+# lynxcgi script.  Useful variables are HOME, USER, etc...  If proxies
+# are in use, and the script invokes another copy of lynx (or a program like
+# wget) in a subsidiary role, it can be useful to add http_proxy and other
+# *_proxy variables.
+#
+# VMS:
+# ====
+# Do not define this.
+#
+#LYNXCGI_ENVIRONMENT:
+
+.h2 LYNXCGI_DOCUMENT_ROOT
+# Unix:
+# =====
+# LYNXCGI_DOCUMENT_ROOT is the value of DOCUMENT_ROOT that will be passed
+# to lynxcgi scripts.  If set and the URL has PATH_INFO data, then
+# PATH_TRANSLATED will also be generated.  Examples:
+#	LYNXCGI_DOCUMENT_ROOT:/usr/local/etc/httpd/htdocs
+#	LYNXCGI_DOCUMENT_ROOT:/data/htdocs/
+#
+# VMS:
+# ====
+# Do not define this.
+#
+#LYNXCGI_DOCUMENT_ROOT:
+
+.h1 Cookies
+
+.h2 FORCE_SSL_COOKIES_SECURE
+# If FORCE_SSL_COOKIES_SECURE is set to TRUE, then SSL encrypted cookies
+# received from https servers never will be sent unencrypted to http
+# servers.  The compilation default is to impose this block only if the
+# https server included a secure attribute for the cookie.  The normal
+# default or that defined here can be toggled via the -force_secure
+# command line switch.
+#
+#FORCE_SSL_COOKIES_SECURE:FALSE
+
+.h1 Internal Behavior
+
+.h2 MAIL_SYSTEM_ERROR_LOGGING
+#  MAIL_SYSTEM_ERROR_LOGGING will send a message to the owner of
+#  the information, or ALERTMAIL if there is no owner, every time
+#  that a document cannot be accessed!
+#
+#  NOTE:  This can generate A LOT of mail, be warned.
+#
+#MAIL_SYSTEM_ERROR_LOGGING:FALSE
+
+.h2 CHECKMAIL
+# If CHECKMAIL is set to TRUE, the user will be informed (via a statusline
+# 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
+# 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
+# performed if Lynx has been invoked with the -restrictions=mail switch.
+#
+# VMS USERS !!!
+# =============
+# New mail is normally broadcast as it arrives, via "unsolicited screen
+# broadcasts", which can be "wiped" from the Lynx display via the Ctrl-W
+# command.  You may prefer to disable the broadcasts and use CHECKMAIL
+# instead (e.g., in a public account which will be used by people who
+# are ignorant about VMS).
+#
+#CHECKMAIL:FALSE
+
+.h1 News-groups
+
+.h2 NNTPSERVER
+# To enable news reading ability via Lynx, the environment variable NNTPSERVER
+# must be set so that it points to your site's NNTP server
+# (see Lynx Users Guide on environment variables).
+# Lynx respects RFC 1738
+.url http://tools.ietf.org/html/rfc1738
+# and does not accept a host field in news URLs (use nntp: instead of news: for
+# the scheme if you wish to specify an NNTP host in a URL, as explained in the
+# RFC).  If you have not set the variable externally, you can set it at run
+# time via this configuration file.  It will not override an external setting.
+# Note that on VMS it is set as a process logical rather than symbol, and will
+# outlive the Lynx image.
+# The news reading facility in Lynx is quite limited.  Lynx does not provide a
+# full featured news reader with elaborate error checking and safety features.
+#
+#NNTPSERVER:news.server.dom
+
+.h2 LIST_NEWS_NUMBERS
+# If LIST_NEWS_NUMBERS is set TRUE, Lynx will use an ordered list and include
+# the numbers of articles in news listings, instead of using an unordered
+# list.  The default is defined in userdefs.h, and can be overridden here.
+#
+#LIST_NEWS_NUMBERS:FALSE
+
+.h2 LIST_NEWS_DATES
+# If LIST_NEWS_DATES is set TRUE, Lynx will include the dates of articles in
+# news listings.  The dates always are included in the articles, themselves.
+# The default is defined in userdefs.h, and can be overridden here.
+#
+#LIST_NEWS_DATES:FALSE
+
+.h2 NEWS_CHUNK_SIZE
+.h2 NEWS_MAX_CHUNK
+# NEWS_CHUNK_SIZE and NEWS_MAX_CHUNK regulate the chunking of news article
+# listings with inclusion of links for listing earlier and/or later articles.
+# The defaults are defined in HTNews.c as 30 and 40, respectively.  If the
+# news group contains more than NEWS_MAX_CHUNK articles, they will be listed
+# in NEWS_CHUNK_SIZE chunks.  You can change the defaults here, and/or on
+# the command line via -newschunksize=NUMBER and/or -newsmaxchunk=NUMBER
+# switches.  Note that if the chunk size is increased, here or on the command
+# line, to a value greater than the current maximum, the maximum will be
+# increased to that number.  Conversely, if the maximum is set to a number
+# less than the current chunk size, the chunk size will be reduced to that
+# number.  Thus, you need use only one of the two switches on the command
+# line, based on the direction of intended change relative to the compilation
+# or configuration defaults.  The compilation defaults ensure that there will
+# be at least 10 earlier articles before bothering to chunk and create a link
+# for earlier articles.
+#
+#NEWS_CHUNK_SIZE:30
+#NEWS_MAX_CHUNK:40
+
+.h2 NEWS_POSTING
+# Set NEWS_POSTING to FALSE if you do not want to support posting to
+# news groups via Lynx.  If left TRUE, Lynx will use its news gateway to
+# post new messages or followups to news groups, using the URL schemes
+# described in the "Supported URLs" section of the online 'h'elp.  The
+# posts will be attempted via the nntp server specified in the URL, or
+# if none was specified, via the NNTPSERVER configuration or environment
+# variable.  Links with these URLs for posting or sending followups are
+# created by the news gateway when reading group listings or articles
+# from nntp servers if the server indicates that it permits posting.
+# The compilation default set in userdefs.h can be changed here.  If
+# the default is TRUE, posting can still be disallowed via the
+# -restrictions command line switch.
+# The posting facility in Lynx is quite limited.  Lynx does not provide a
+# full featured news poster with elaborate error checking and safety features.
+#
+#NEWS_POSTING:TRUE
+
+.h2 LYNX_SIG_FILE
+# LYNX_SIG_FILE defines the name of a file containing a signature which
+# can be appended to email messages and news postings or followups.  The
+# user will be prompted whether to append it.  It is sought in the home
+# directory.  If it is in a subdirectory, begin it with a dot-slash
+# (e.g., ./lynx/.lynxsig).  The definition is set in userdefs.h and can
+# be changed here.
+#
+#LYNX_SIG_FILE:.lynxsig
+
+.h1 Bibliographic Protocol (bibp scheme)
+
+.h2 BIBP_GLOBAL_SERVER
+# BIBP_GLOBAL_SERVER is the default global server for bibp: links, used
+# when a local bibhost or document-specified citehost is unavailable.
+# Set in userdefs.h and can be changed here.
+#BIBP_GLOBAL_SERVER:http://usin.org/
+
+.h2 BIBP_BIBHOST
+# BIBP_BIBHOST is the URL at which local bibp service may be found, if
+# it exists.   Defaults to http://bibhost/ for protocol conformance, but
+# may be overridden here or via --bibhost parameter.
+#BIBP_BIBHOST:http://bibhost/
+
+.h1 Interaction
+# These settings control interaction of the user with lynx.
+
+.h2 SCROLLBAR
+# If SCROLLBAR is set TRUE, Lynx will show scrollbar on windows.  With mouse
+# enabled, the scrollbar strip outside the bar is clickable, and scrolls the
+# window by pages.  The appearance of the scrollbar can be changed from
+# LYNX_LSS file:  define attributes scroll.bar, scroll.back (for the bar, and
+# for the strip along which the scrollbar moves).
+#SCROLLBAR:FALSE
+
+.h2 SCROLLBAR_ARROW
+# If SCROLLBAR_ARROW is set TRUE, Lynx's scrollbar will have arrows at the
+# ends.  With mouse enabled, the arrows are clickable, and scroll the window by
+# 2 lines.  The appearance of the scrollbar arrows can be changed from LYNX_LSS
+# file:  define attributes scroll.arrow, scroll.noarrow (for enabled-arrows,
+# and disabled arrows).  An arrow is "disabled" if the bar is at this end of
+# the strip.
+#SCROLLBAR_ARROW:TRUE
+
+.h2 USE_MOUSE
+# If Lynx is configured with ncurses, PDcurses or slang & USE_MOUSE is TRUE,
+# users can perform commands by left-clicking certain parts of the screen:
+#   on a link = `g'oto + ACTIVATE (i.e., move highlight & follow the link);
+#   on the top/bottom lines = PREV/NEXT_PAGE (i.e., go up/down 1 page);
+#   on the top/bottom left corners = PREV/NEXT_DOC (i.e., go to the previous
+#   document / undo goto previous document);
+#   on the top/bottom right corners = HISTORY/VLINKS (i.e., call up the history
+#   page or visited links page if on history page).
+# NB if the mouse is defined in this way, it will not be available
+# for copy/paste operations using the clipboard of a desktop manager:
+# for flexibility instead, use the command-line switch  -use_mouse .
+#
+# ncurses and slang have built-in support for the xterm mouse protocol.  In
+# addition, ncurses can be linked with the gpm mouse library, to automatically
+# provide support for this interface in applications such as Lynx.  (Please
+# read the ncurses faq to work around broken gpm configurations packaged by
+# some distributors).  PDCurses implements mouse support for win32 console
+# windows, as does slang.
+#USE_MOUSE:FALSE
+
+.h1 HTML Parsing
+# These settings control the way Lynx parses invalid HTML
+# and how it may resolve such issues.
+
+.h2 COLLAPSE_BR_TAGS
+# 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
+# line break.  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
+
+.h2 TAGSOUP
+# If TAGSOUP is set, Lynx uses the "Tag Soup DTD" rather than "SortaSGML".
+# The two approaches differ by the style of error detection and recovery.
+# Tag Soup DTD allows for improperly nested tags; SortaSGML is stricter.
+#TAGSOUP:FALSE
+
+.h1 Cookies
+
+.h2 SET_COOKIES
+# If SET_COOKIES is set FALSE, Lynx will ignore Set-Cookie headers
+# in http server replies.  Note that if a COOKIE_FILE is in use (see
+# below) that contains cookies at startup, Lynx will still send those
+# persistent cookies in requests as appropriate.  Setting SET_COOKIES
+# to FALSE just prevents accepting any new cookies from servers.  To
+# prevent all cookie processing (sending *and* receiving) in a session,
+# make sure that PERSISTENT_COOKIES is not TRUE or that COOKIE_FILE does
+# not point to a file with cookies, in addition to setting SET_COOKIES
+# to FALSE.
+# The default is defined in userdefs.h, and can be overridden here,
+# and/or toggled via the -cookies command line switch.
+#
+#SET_COOKIES:TRUE
+
+.h2 ACCEPT_ALL_COOKIES
+# If ACCEPT_ALL_COOKIES is set TRUE, Lynx will accept cookies from all
+# domains with no user interaction.  This is equivalent to automatically
+# replying to all cookie 'Allow?' prompts with 'A'lways.  Note that it
+# does not preempt validity checking, which has to be controlled separately
+# (see below).
+# The default is defined in userdefs.h and can be overridden here, or
+# in the .lynxrc file via an o(ptions) screen setting.  It may also be
+# toggled via the -accept_all_cookies command line switch.
+#
+#ACCEPT_ALL_COOKIES:FALSE
+
+.h2 COOKIE_ACCEPT_DOMAINS
+.h2 COOKIE_REJECT_DOMAINS
+# COOKIE_ACCEPT_DOMAINS and COOKIE_REJECT_DOMAINS are comma-delimited lists
+# of domains from which Lynx should automatically accept or reject cookies
+# without asking for confirmation.  If the same domain is specified in both
+# lists, rejection will take precedence.
+# Note that in order to match cookies, domains have to be spelled out exactly
+# in the form in which they would appear on the Cookie Jar page (case is
+# insignificant).  They are not wildcards.  Domains that apply to more than
+# one host have a leading '.', but have to match *the cookie's* domain
+# exactly.
+#
+#COOKIE_ACCEPT_DOMAINS:
+#COOKIE_REJECT_DOMAINS:
+
+.h2 COOKIE_LOOSE_INVALID_DOMAINS
+.h2 COOKIE_STRICT_INVALID_DOMAINS
+.h2 COOKIE_QUERY_INVALID_DOMAINS
+# COOKIE_LOOSE_INVALID_DOMAINS, COOKIE_STRICT_INVALID_DOMAINS, and
+# COOKIE_QUERY_INVALID_DOMAINS are comma-delimited lists of domains.
+# They control the degree of validity checking that is applied to cookies
+# for the specified domains.
+# Note that in order to match cookies, domains have to be spelled out exactly
+# in the form in which they would appear on the Cookie Jar page (case is
+# insignificant).  They are not wildcards.  Domains that apply to more than
+# one host have a leading '.', but have to match *the cookie's* domain
+# exactly.
+# If a domain is set to strict checking, strict conformance to RFC 2109 will
+# be applied.  A domain with loose checking will be allowed to set cookies
+# with an invalid path or domain attribute.  All domains will default to
+# asking the user for confirmation in case of an invalid path or domain.
+# Cookie validity checking takes place as a separate step before the
+# final decision to accept or reject (see previous options), therefore
+# a cookie that passes validity checking may still be automatically
+# rejected or cause another prompt.
+#
+#COOKIE_LOOSE_INVALID_DOMAINS:
+#COOKIE_STRICT_INVALID_DOMAINS:
+#COOKIE_QUERY_INVALID_DOMAINS:
+
+.h2 MAX_COOKIES_DOMAIN
+.h2 MAX_COOKIES_GLOBAL
+.h2 MAX_COOKIES_BUFFER
+# MAX_COOKIES_DOMAIN,
+# MAX_COOKIES_GLOBAL and
+# MAX_COOKIES_BUFFER are limits on the total number of cookies for each domain,
+# globally, and the per-cookie buffer size.  These limits are by default large
+# enough for reasonable usage; if they are very high, some sites may present
+# undue performance waste.
+#
+#MAX_COOKIES_DOMAIN:50
+#MAX_COOKIES_GLOBAL:500
+#MAX_COOKIES_BUFFER:4096
+
+.h2 PERSISTENT_COOKIES
+# PERSISTENT_COOKIES indicates that cookies should be read at startup from
+# the COOKIE_FILE, and saved at exit for storage between Lynx sessions.
+# It is not used if Lynx was compiled without USE_PERSISTENT_COOKIES.
+# The default is FALSE, so that the feature needs to be enabled here
+# explicitly if you want it.
+#
+#PERSISTENT_COOKIES:FALSE
+
+.h2 COOKIE_FILE
+# COOKIE_FILE is the default file from which persistent cookies are read
+# at startup (if the file exists), if Lynx was compiled with
+# USE_PERSISTENT_COOKIES and the PERSISTENT_COOKIES option is enabled.
+# The cookie file can also be specified in .lynxrc or on the command line.
+#
+#COOKIE_FILE:~/.lynx_cookies
+
+.h2 COOKIE_SAVE_FILE
+# COOKIE_SAVE_FILE is the default file in which persistent cookies are
+# stored at exit, if Lynx was compiled with USE_PERSISTENT_COOKIES and the
+# PERSISTENT_COOKIES option is enabled.  The cookie save file can also be
+# specified on the command line.
+#
+# With an interactive Lynx session, COOKIE_SAVE_FILE will default to
+# COOKIE_FILE if it is not set.  With a non-interactive Lynx session (e.g.,
+# -dump), cookies will only be saved to file if COOKIE_SAVE_FILE is set.
+#
+#COOKIE_SAVE_FILE:~/.lynx_cookies
+
+.h1 Mail-related
+
+.h2 SYSTEM_MAIL
+.h2 SYSTEM_MAIL_FLAGS
+# VMS:
+# ===
+# The mail command and qualifiers are defined in userdefs.h.  Lynx
+# will spawn a subprocess to send replies and error messages.  The
+# command, and qualifiers (if any), can be re-defined here.  If
+# you use PMDF then headers will we passed via a header file.
+# If you use "generic" VMS MAIL, the subject will be passed on the
+# command line via a /subject="SUBJECT" qualifier, and inclusion
+# of other relevant headers may not be possible.
+# If your mailer uses another syntax, some hacking of the mailform()
+# mailmsg() and reply_by_mail() functions in LYMail.c, and send_file_to_mail()
+# function in LYPrint.c, may be required.
+#
+.ex 2
+#SYSTEM_MAIL:PMDF SEND
+#SYSTEM_MAIL_FLAGS:/headers
+#
+.ex 2
+#SYSTEM_MAIL:MAIL
+#SYSTEM_MAIL_FLAGS:
+#
+# Unix:
+#======
+# The mail path and flags normally are defined for sendmail (or submit
+# with MMDF) in userdefs.h.  You can change them here, but should first
+# read the zillions of CERT advisories about security problems with Unix
+# mailers.
+#
+.ex 2
+#SYSTEM_MAIL:/usr/mmdf/bin/submit
+#SYSTEM_MAIL_FLAGS:-mlruxto,cc\*
+#
+.ex 2
+#SYSTEM_MAIL:/usr/sbin/sendmail
+#SYSTEM_MAIL_FLAGS:-t -oi
+#
+.ex 2
+#SYSTEM_MAIL:/usr/lib/sendmail
+#SYSTEM_MAIL_FLAGS:-t -oi
+#
+# Win32:
+#=======
+# The Win32 port assumes that the mailer cannot read via a pipe.  That is, it
+# must read all information from files.  The "sendmail" utility in the 2.8.1
+# release is able to work with that assumption.  There is no way to tell the
+# Win32 port of Lynx to send its information to the sendmail utility via a
+# pipe.
+#
+# Please read sendmail.txt in the LYNX_W32.ZIP distribution
+.url	http://lynx.isc.org/lynx-2.8.1/lynx_w32.zip
+.url	ftp://lynx.isc.org/lynx-2.8.1/lynx_w32.zip
+#
+# As an alternative, the newer "sendmail for windows" may be useful:
+.url	http://glob.com.au/sendmail/
+#
+# See also BLAT_MAIL and ALT_BLAT_MAIL flags.
+#
+#SYSTEM_MAIL:sendmail -f me@my.host -h my.host -r my.smtp.mailer -m SMTP
+
+.h2 MAIL_ADRS
+# VMS ONLY:
+# ========
+# MAIL_ADRS is defined in userdefs.h and normally is structured for PMDF's
+# IN%"INTERNET_ADDRESS" scheme.  The %s is replaced with the address given
+# by the user.  If you are using a different Internet mail transport, change
+# the IN appropriately (e.g., to SMTP, MX, or WINS).
+#
+#MAIL_ADRS:"IN%%""%s"""
+
+.h2 USE_FIXED_RECORDS
+# VMS ONLY:
+# ========
+# If USE_FIXED_RECORDS is set to TRUE here or in userdefs.h, Lynx will
+# convert 'd'ownloaded binary files to FIXED 512 record format before saving
+# them to disk or acting on a DOWNLOADER option.  If set to FALSE, the
+# headers of such files will indicate that they are Stream_LF with Implied
+# Carriage Control, which is incorrect, and can cause downloading software
+# to get confused and unhappy.  If you do set it FALSE, you can use the
+# FIXED512.COM command file, which is included in this distribution, to do
+# the conversion externally.
+#
+#USE_FIXED_RECORDS:TRUE
+
+.h1 Keyboard Input
+# These settings control the way Lynx interprets user input.
+
+.h2 VI_KEYS_ALWAYS_ON
+.h2 EMACS_KEYS_ALWAYS_ON
+# Vi or Emacs movement keys, i.e. familiar hjkl or ^N^P^F^B .
+# These are defaults, which can be changed in the Options Menu or .lynxrc .
+#VI_KEYS_ALWAYS_ON:FALSE
+#EMACS_KEYS_ALWAYS_ON:FALSE
+
+.h2 DEFAULT_KEYPAD_MODE
+# DEFAULT_KEYPAD_MODE may be set to NUMBERS_AS_ARROWS
+#                                or LINKS_ARE_NOT_NUMBERED (the same)
+#                                or LINKS_ARE_NUMBERED
+#                                or LINKS_AND_FIELDS_ARE_NUMBERED
+#                                or FIELDS_ARE_NUMBERED
+# to specify whether numbers (e.g. [10]) appear next to all links,
+# allowing immediate access by entering the number on the keyboard,
+# or numbers on the numeric key-pad work like arrows;
+# the "FIELDS" options cause form fields also to be numbered.
+# This may be overridden by the keypad_mode setting in .lynxrc,
+# and can also be changed via the Options Menu.
+#
+#DEFAULT_KEYPAD_MODE:NUMBERS_AS_ARROWS
+
+.h2 NUMBER_LINKS_ON_LEFT
+.h2 NUMBER_FIELDS_ON_LEFT
+# Denotes the position for link- and field-numbers (whether it is on the left
+# or right of the anchor).  These are subject to DEFAULT_KEYPAD_MODE, which
+# determines whether numbers are shown.
+#NUMBER_LINKS_ON_LEFT:TRUE
+#NUMBER_FIELDS_ON_LEFT:TRUE
+
+.h2 DEFAULT_KEYPAD_MODE_IS_NUMBERS_AS_ARROWS
+# Obsolete form of DEFAULT_KEYPAD_MODE,
+# numbers work like arrows or numbered links.
+# Set to TRUE, indicates numbers act as arrows,
+# and set to FALSE indicates numbers refer to numbered links on the page.
+# LINKS_AND_FIELDS_ARE_NUMBERED cannot be set by this option because
+# it allows only two values (true and false).
+#
+#DEFAULT_KEYPAD_MODE_IS_NUMBERS_AS_ARROWS:TRUE
+
+.h2 CASE_SENSITIVE_ALWAYS_ON
+# The default search type.
+# This is a default that can be overridden by the user!
+#
+#CASE_SENSITIVE_ALWAYS_ON:FALSE
+
+.h1 Auxiliary Facilities
+
+.h2 DEFAULT_BOOKMARK_FILE
+# DEFAULT_BOOKMARK_FILE is the filename used for storing personal bookmarks.
+# It will be prepended by the user's home directory.
+# NOTE that a file ending in .html or other suffix mapped to text/html
+# should be used to ensure its treatment as HTML.  The built-in default
+# is lynx_bookmarks.html.  On both Unix and VMS, if a subdirectory off of
+# the HOME directory is desired, the path should begin with "./" (e.g.,
+# ./BM/lynx_bookmarks.html), but the subdirectory must already exist.
+# Lynx will create the bookmark file, if it does not already exist, on
+# the first ADD_BOOKMARK attempt if the HOME directory is indicated
+# (i.e., if the definition is just filename.html without any slashes),
+# but requires a pre-existing subdirectory to create the file there.
+# The user can re-define the default bookmark file, as well as a set
+# of sub-bookmark files if multiple bookmark file support is enabled
+# (see below), via the 'o'ptions menu, and can save those definitions
+# in the .lynxrc file.
+#
+#DEFAULT_BOOKMARK_FILE:lynx_bookmarks.html
+
+.h2 MULTI_BOOKMARK_SUPPORT
+# If MULTI_BOOKMARK_SUPPORT is set TRUE, and BLOCK_MULTI_BOOKMARKS (see
+# below) is FALSE, and sub-bookmarks exist, all bookmark operations will
+# first prompt the user to select an active sub-bookmark file or the
+# default bookmark file.  FALSE is the default so that one (the default)
+# bookmark file will be available initially.  The definition here will
+# override that in userdefs.h.  The user can turn on multiple bookmark
+# 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
+# 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
+# STANDARD.  No prompting or menu display occurs if only one (the startup
+# default) bookmark file has been defined (define additional ones via the
+# 'o'ptions menu).  The startup default, however set, can be overridden on
+# the command line via the -restrictions=multibook or the -anonymous or
+# -validate switches.
+#
+#MULTI_BOOKMARK_SUPPORT:FALSE
+
+.h2 BLOCK_MULTI_BOOKMARKS
+# If BLOCK_MULTI_BOOKMARKS is set TRUE, multiple bookmark support will
+# be forced off, and cannot to toggled on via the 'o'ptions menu.  The
+# compilation setting is normally FALSE, and can be overridden here.
+# It can also be set via the -restrictions=multibook or the -anonymous
+# or -validate command line switches.
+#
+#BLOCK_MULTI_BOOKMARKS:FALSE
+
+.h1 Interaction
+
+.h2 DEFAULT_USER_MODE
+# DEFAULT_USER_MODE sets the default user mode for Lynx users.
+# NOVICE shows a three line help message at the bottom of the screen.
+# INTERMEDIATE shows normal amount of help (one line).
+# ADVANCED help is replaced by the URL of the current link.
+#
+#DEFAULT_USER_MODE:NOVICE
+
+.h1 External Programs
+
+.h2 DEFAULT_EDITOR
+# If DEFAULT_EDITOR is defined, users may edit local documents with it
+# & it will also be used for sending mail messages.
+# If no editor is defined here or by the user,
+# the user will not be able to edit local documents
+# and a primitive line-oriented mail-input mode will be used.
+#
+# For sysadmins: do not define a default editor
+# unless you know EVERY user will know how to use it;
+# users can easily define their own editor in the Options Menu.
+#
+#DEFAULT_EDITOR:
+
+.h2 SYSTEM_EDITOR
+# SYSTEM_EDITOR behaves the same as DEFAULT_EDITOR,
+# except that it can't be changed by users.
+#
+#SYSTEM_EDITOR:
+
+.h3 POSITIONABLE_EDITOR
+# If POSITIONABLE_EDITOR is defined once or multiple times and if the same
+# editor is used as editor in lynx, lynx will use its features, i.e., adding an
+# option to set the initial line-position, when editing files and textarea.
+# The commented editors below are already known; there is no need to uncomment
+# them.
+#
+#POSITIONABLE_EDITOR:emacs
+#POSITIONABLE_EDITOR:jed
+#POSITIONABLE_EDITOR:jmacs
+#POSITIONABLE_EDITOR:joe
+#POSITIONABLE_EDITOR:jove
+#POSITIONABLE_EDITOR:jpico
+#POSITIONABLE_EDITOR:jstar
+#POSITIONABLE_EDITOR:nano
+#POSITIONABLE_EDITOR:pico
+#POSITIONABLE_EDITOR:rjoe
+#POSITIONABLE_EDITOR:vi
+
+.h1 Proxy
+
+.h2 HTTP_PROXY
+.h2 HTTPS_PROXY
+.h2 FTP_PROXY
+.h2 GOPHER_PROXY
+.h2 NEWSPOST_PROXY
+.h2 NEWSREPLY_PROXY
+.h2 NEWS_PROXY
+.h2 NNTP_PROXY
+.h2 SNEWSPOST_PROXY
+.h2 SNEWSREPLY_PROXY
+.h2 SNEWS_PROXY
+.h2 WAIS_PROXY
+.h2 FINGER_PROXY
+.h2 CSO_PROXY
+# Lynx version 2.2 and beyond supports the use of proxy servers that can act as
+# firewall gateways and caching servers.  They are preferable to the older
+# gateway servers.  Each protocol used by Lynx can be mapped separately using
+# PROTOCOL_proxy environment variables (see Lynx Users Guide).  If you have not set
+# them externally, you can set them at run time via this configuration file.
+# They will not override external settings.  The no_proxy variable can be used
+# to inhibit proxying to selected regions of the Web (see below).  Note that on
+# VMS these proxy variables are set as process logicals rather than symbols, to
+# preserve lowercasing, and will outlive the Lynx image.
+#
+.ex 15
+#http_proxy:http://some.server.dom:port/
+#https_proxy:http://some.server.dom:port/
+#ftp_proxy:http://some.server.dom:port/
+#gopher_proxy:http://some.server.dom:port/
+#news_proxy:http://some.server.dom:port/
+#newspost_proxy:http://some.server.dom:port/
+#newsreply_proxy:http://some.server.dom:port/
+#snews_proxy:http://some.server.dom:port/
+#snewspost_proxy:http://some.server.dom:port/
+#snewsreply_proxy:http://some.server.dom:port/
+#nntp_proxy:http://some.server.dom:port/
+#wais_proxy:http://some.server.dom:port/
+#finger_proxy:http://some.server.dom:port/
+#cso_proxy:http://some.server.dom:port/
+#no_proxy:host.domain.dom
+
+.h2 NO_PROXY
+# The no_proxy variable can be a comma-separated list of strings defining
+# no-proxy zones in the DNS domain name space.  If a tail substring of the
+# domain-path for a host matches one of these strings, transactions with that
+# node will not be proxied.
+.ex
+#no_proxy:domain.path1,path2
+#
+# A single asterisk as an entry will override all proxy variables and no
+# transactions will be proxied.
+.ex
+#no_proxy:*
+# This is the only allowed use of * in no_proxy.
+#
+# Warning:  Note that setting 'il' as an entry in this list will block proxying
+# for the .mil domain as well as the .il domain.  If the entry is '.il' this
+# will not happen.
+
+.h1 External Programs
+
+.h2 PRINTER
+.h2 DOWNLOADER
+.h2 UPLOADER
+# PRINTER, DOWNLOADER & UPLOADER 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.
+# Uploaders can be defined only for UNIX with DIRED_SUPPORT:
+# see the Makefile in the top directory & the header of src/LYUpload.c .
+#
+# 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>[:<environment>]
+#
+# DOWNLOADER:<name>:<command>:<option>[:<environment>]
+#
+# <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.
+#              On Unix, which has pipes, you may use a '|' as the first
+#              character of the command, and Lynx will open a pipe to
+#              the command.
+#              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.
+#
+# [:<environment>]
+#              optional, if XWINDOWS then printer/downloader will be
+#              enabled if DISPLAY environment variable IS defined and
+#              disabled otherwise, if environment is NON_XWINDOWS
+#              then printer/downloader will be enabled if DISPLAY
+#              environment variable IS NOT defined and disabled otherwise,
+#              for anything else or if environment is not specified
+#              printer/downloader is always enabled.
+#
+# 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, down/up-loading 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:
+.ex 3
+#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:
+.ex
+#PRINTER:Busy VMS printer:@Lynx_Dir\:VMSPrint sys$print %s:FALSE:58
+# To specify a print option at run-time:
+# NBB if you have ANONYMOUS users, DO NOT allow this option!
+.ex
+#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):
+.ex
+#PRINTER:Use Most to view:most -k +s %s:TRUE:23
+#
+# 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):
+.ex
+#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:
+.ex
+#DOWNLOADER:Use Most to view:most +s %s:TRUE
+# The following example gives wrong filenames
+# (`sz' doesn't support a suggested filename parameter):
+.ex
+#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:
+.ex
+#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
+.ex 2
+#UPLOADER:Use Kermit to upload from your computer: kermit -i -r -a %s:TRUE
+#UPLOADER:Use Zmodem to upload from your computer: rz %s:TRUE
+#
+# Note for OS/390: /* S/390 -- gil -- 1464 */
+# The following is strongly recommended to undo ASCII->EBCDIC conversion.
+.ex
+#DOWNLOADER:Save OS/390 binary file: iconv -f IBM-1047 -t ISO8859-1 %s >%s:FALSE
+
+.h1 Interaction
+
+.h2 NO_DOT_FILES
+# If NO_DOT_FILES is TRUE (normal default via userdefs.h), the user will not
+# be allowed to specify files beginning with a dot in reply to output filename
+# prompts, and files beginning with a dot (e.g., file://localhost/path/.lynxrc)
+# will not be included in the directory browser's listings.  If set FALSE, you
+# can force it to be treated as TRUE via -restrictions=dotfiles.  If set FALSE
+# and not forced TRUE, the user can regulate it via the 'o'ptions menu (and
+# may save the preference in the RC file).
+#
+#NO_DOT_FILES:TRUE
+
+.h1 Internal Behavior
+
+.h2 NO_FROM_HEADER
+# If NO_FROM_HEADER is set FALSE, From headers will be sent in transmissions
+# to http or https servers if the personal_mail_address has been defined via
+# the 'o'ptions menu.  The compilation default is TRUE (no From header is
+# sent) and the default can be changed here.  The default can be toggled at
+# run time via the -from switch.  Note that transmissions of From headers
+# have become widely considered to create an invasion of privacy risk.
+#
+#NO_FROM_HEADER:TRUE
+
+.h2 NO_REFERER_HEADER
+# If NO_REFERER_HEADER is TRUE, Referer headers never will be sent in
+# transmissions to servers.  Lynx normally sends the URL of the document
+# from which the link was derived, but not for startfile URLs, 'g'oto
+# URLs, 'j'ump shortcuts, bookmark file links, history list links, or
+# URLs that include the content from form submissions with method GET.
+# If left FALSE here, it can be set TRUE at run time via the -noreferer
+# switch.
+#
+#NO_REFERER_HEADER:FALSE
+
+.h1 Internal Behavior
+
+.h2 NO_FILE_REFERER
+# If NO_FILE_REFERER is TRUE, Referer headers never will be sent in
+# transmissions to servers for links or actions derived from documents
+# or forms with file URLs.  This ensures that paths associated with
+# the local file system are never indicated to servers, even if
+# NO_REFERER_HEADER is FALSE.  If set to FALSE here, it can still be
+# set TRUE at run time via the -nofilereferer switch.
+#
+#NO_FILE_REFERER:TRUE
+
+.h2 REFERER_WITH_QUERY
+# REFERER_WITH_QUERY controls what happens when the URL in a Referer
+# header to be sent would contain a query part in the form of a '?'
+# character followed by one or more attribute=value pairs.  Query parts
+# often contain sensitive or personal information resulting from filling
+# out forms, or other info that allows tracking of a user's browsing path
+# through a site, an thus should not be put in a Referer header (which may
+# get sent to an unrelated third-party site).  On the other hand, some
+# sites (improperly) rely on browsers sending Referer headers, even when
+# the user is coming from a page whose URL has a query part.
+#
+# If REFERER_WITH_QUERY is SEND, full Referer headers will be sent
+# including the query part (unless sending of Referer is disabled in
+# general, see NO_REFERER_HEADER above).  If REFERER_WITH_QUERY is
+# PARTIAL, the Referer header will contain a partial URL, with the query
+# part stripped off.  This is not strictly correct, but should satisfy
+# those sites that check only whether the user arrived at a page from an
+# "outside" link.  If REFERER_WITH_QUERY is set to DROP (or anything else
+# unrecognized), the default, no Referer header is sent at all in this
+# situation.
+#
+#REFERER_WITH_QUERY:DROP
+
+.h1 Appearance
+
+.h2 VERBOSE_IMAGES
+# VERBOSE_IMAGES controls whether Lynx replaces [LINK], [INLINE] and [IMAGE]
+# (for images without ALT) with filenames of these images.
+# This can be useful in determining what images are important
+# and which are mere decorations, e.g. button.gif, line.gif,
+# provided the author uses meaningful names.
+#
+# The definition here will override the setting in userdefs.h.
+#
+#VERBOSE_IMAGES:TRUE
+
+.h2 MAKE_LINKS_FOR_ALL_IMAGES
+# If MAKE_LINKS_FOR_ALL_IMAGES is TRUE, all images will be given links
+# which can be ACTIVATEd.  For inlines, the ALT or pseudo-ALT ("[INLINE]")
+# strings will be links for the resolved SRC rather than just text.
+# For ISMAP or other graphic links, ALT or pseudo-ALT ("[ISMAP]" or "[LINK]")
+# will have '-' and a link labeled "[IMAGE]" for the resolved SRC appended.
+# See also VERBOSE_IMAGES flag.
+#
+# The definition here will override that in userdefs.h
+# and can be toggled via an "-image_links" command-line switch.
+# The user can also use the LYK_IMAGE_TOGGLE key (default `*')
+# or `Show Images' in the Form-based Options Menu.
+#
+#MAKE_LINKS_FOR_ALL_IMAGES:FALSE
+
+.h2 MAKE_PSEUDO_ALTS_FOR_INLINES
+# If MAKE_PSEUDO_ALTS_FOR_INLINES is FALSE, inline images which don't specify
+# an ALT string will not have "[INLINE]" inserted as a pseudo-ALT,
+# i.e. they'll be treated as having ALT="".
+# Otherwise (if TRUE), pseudo-ALTs will be created for inlines,
+# so that they can be used as links to the SRCs.
+# See also VERBOSE_IMAGES flag.
+#
+# The definition here will override that in userdefs.h
+# and can be toggled via a "-pseudo_inlines" command-line switch.
+# The user can also use the LYK_INLINE_TOGGLE key (default `[')
+# or `Show Images' in the Form-based Options Menu.
+#
+#MAKE_PSEUDO_ALTS_FOR_INLINES:TRUE
+
+.h2 SUBSTITUTE_UNDERSCORES
+# If SUBSTITUTE_UNDERSCORES is TRUE, the _underline_ format will be used
+# for emphasis tags in dumps.
+#
+# The default defined here will override that in userdefs.h, and the user
+# can toggle the default via a "-underscore" command line switch.
+#
+#SUBSTITUTE_UNDERSCORES:FALSE
+
+.h1 Interaction
+
+.h2 QUIT_DEFAULT_YES
+# If QUIT_DEFAULT_YES is TRUE then when the QUIT command is entered, any
+# response other than n or N will confirm.  It should be FALSE if you
+# prefer the more conservative action of requiring an explicit Y or y to
+# confirm.  The default defined here will override that in userdefs.h.
+#
+#QUIT_DEFAULT_YES:TRUE
+
+.h1 HTML Parsing
+
+.h2 HISTORICAL_COMMENTS
+# If HISTORICAL_COMMENTS is TRUE, Lynx will revert to the "Historical"
+# behavior of treating any '>' as a terminator for comments, instead of
+# seeking a valid '-->' terminator (note that white space can be present
+# between the '--' and '>' in valid terminators).  The compilation default
+# is FALSE.
+#
+# The compilation default, or default defined here, can be toggled via a
+# "-historical" command line switch, and via the LYK_HISTORICAL command key.
+#
+#HISTORICAL_COMMENTS:FALSE
+
+.h2 MINIMAL_COMMENTS
+# If MINIMAL_COMMENTS is TRUE, Lynx will not use Valid comment parsing
+# of '--' pairs as serial comments within an overall comment element,
+# and instead will seek only a '-->' terminator for the overall comment
+# element.  This emulates the Netscape v2.0 comment parsing bug, and
+# will help Lynx cope with the use of dashes as "decorations", which
+# consequently has become common in so-called "Enhanced for Netscape"
+# pages.  Note that setting Historical comments on will override the
+# Minimal or Valid setting.
+#
+# The compilation default for MINIMAL_COMMENTS is FALSE, but we'll
+# set it TRUE here, until Netscape gets its comment parsing right,
+# and "decorative" dashes cease to be so common.
+#
+# The compilation default, or default defined here, can be toggled via a
+# "-minimal" command line switch, and via the LYK_MINIMAL command key.
+#
+MINIMAL_COMMENTS:TRUE
+
+.h2 SOFT_DQUOTES
+# If SOFT_DQUOTES is TRUE, Lynx will emulate the invalid behavior of
+# treating '>' as a co-terminator of a double-quoted attribute value
+# and the tag which contains it, as was done in old versions of Netscape
+# and Mosaic.  The compilation default is FALSE.
+#
+# The compilation default, or default defined here, can be toggled via
+# a "-soft_dquotes" command line switch.
+#
+#SOFT_DQUOTES:FALSE
+
+.h2 STRIP_DOTDOT_URLS
+# If STRIP_DOTDOT_URLS is TRUE, Lynx emulates the invalid behavior of many
+# browsers to strip a leading "../" segment from relative URLs in HTML
+# documents with a http or https base URL, if this would otherwise lead to
+# an absolute URLs with those characters still in it.  Such URLs are normally
+# erroneous and not what is intended by page authors.  Lynx will issue
+# a warning message when this occurs.
+#
+# If STRIP_DOTDOT_URLS is FALSE, Lynx will use those URLs for requests
+# without taking any special actions or issuing Warnings, in most cases
+# this will result in an error response from the server.
+#
+# Note that Lynx never tries to fix similar URLs for protocols other than
+# http and https, since they are less common and may actually be valid in
+# some cases.
+#
+#STRIP_DOTDOT_URLS:TRUE
+
+.h1 Appearance
+
+.h2 ENABLE_SCROLLBACK
+# If ENABLE_SCROLLBACK is TRUE, Lynx will clear the entire screen before
+# displaying each new screenful of text.  Though less efficient for normal
+# use, this allows programs that maintain a buffer of previously-displayed
+# text to recognize the continuity of what has been displayed, so that
+# previous screenfuls can be reviewed by whatever method the program uses
+# to scroll back through previous text.  For example, the PC comm program
+# QModem has a key that can be pressed to scroll back; if ENABLE_SCROLLBACK
+# is TRUE, pressing the scrollback key will access previous screenfuls which
+# will have been stored on the local PC and will therefore be displayed
+# instantaneously, instead of needing to be retransmitted by Lynx at the
+# speed of the comm connection (but Lynx will not know about the change,
+# so you must restore the last screen before resuming with Lynx commands).
+#
+# The compilation default is FALSE (if REVERSE_CLEAR_SCREEN_PROBLEM was not
+# defined in the Unix Makefile to invoke this behavior as a workaround for
+# some poor curses implementations).
+#
+# The default compilation or configuration setting can be toggled via an
+# "-enable_scrollback" command line switch.
+#
+#ENABLE_SCROLLBACK:FALSE
+
+.h2 SCAN_FOR_BURIED_NEWS_REFS
+# If SCAN_FOR_BURIED_NEWS_REFS is set to TRUE, Lynx will scan the bodies
+# of news articles for buried article and URL references and convert them
+# to links.  The compilation default is TRUE, but some email addresses
+# enclosed in angle brackets ("<user@address>") might be converted to false
+# news links, and uuencoded messages might be corrupted.  The conversion is
+# not done when the display is toggled to source or when 'd'ownloading, so
+# uuencoded articles can be saved intact regardless of these settings.
+#
+# The default setting can be toggled via a "-buried_news" command line
+# switch.
+#
+#SCAN_FOR_BURIED_NEWS_REFS:TRUE
+
+.h2 PREPEND_BASE_TO_SOURCE
+# If PREPEND_BASE_TO_SOURCE is set to FALSE, Lynx will not prepend a
+# Request URL comment and BASE element to text/html source files when
+# they are retrieved for 'd'ownloading or passed to 'p'rint functions.
+# The compilation default is TRUE.  Note that this prepending is not
+# done for -source dumps, unless the -base switch also was included on
+# the command line, and the latter switch overrides the setting of the
+# PREPEND_BASE_TO_SOURCE configuration variable.
+#
+#PREPEND_BASE_TO_SOURCE:TRUE
+
+.h1 External Programs
+# MIME types and viewers!
+#
+# file extensions may be assigned to MIME types using
+# the SUFFIX: definition.
+#
+# NOTE: It is normally preferable to define new extension mappings in
+#       EXTENSION_MAP files (see below) instead of here:  Definitions
+#       here are overridden by those in EXTENSION_MAP files and even by
+#       some built-in defaults in src/HTInit.c.  On the other hand,
+#       definitions here allow some more fields that are not possible
+#       in those files.
+#
+#       Extension mappings have an effect mostly for ftp and local files,
+#       they are NOT used to determine the type of content for URLs with
+#       the http protocol.  This is because HTTP servers already specify
+#       the MIME type in the Content-Type header.  [It may still be
+#       necessary to set up an appropriate suffix for some MIME types,
+#       even if they are accessed only via the HTTP protocol, if the viewer
+#       (see below) for those MIME types requires a certain suffix for the
+#       temporary file passed to it.]
+
+.h2 GLOBAL_EXTENSION_MAP
+.h2 PERSONAL_EXTENSION_MAP
+# The global and personal EXTENSION_MAP files allow you to assign extensions
+# to MIME types which will override any of the suffix maps in this (lynx.cfg)
+# configuration file, or in src/HTInit.c.  See the example mime.types file
+# in the samples subdirectory.
+#
+# Unix:
+# ====
+#GLOBAL_EXTENSION_MAP:/usr/local/lib/mosaic/mime.types
+# VMS:
+# ===
+#GLOBAL_EXTENSION_MAP:Lynx_Dir:mime.types
+#
+#	Unix (sought in user's home directory):
+#PERSONAL_EXTENSION_MAP:.mime.types
+#	VMS (sought in user's sys$login directory):
+#PERSONAL_EXTENSION_MAP:mime.types
+
+.h2 SUFFIX_ORDER
+# With SUFFIX_ORDER the precedence of suffix mappings can be changed.
+# Two kinds of settings are recognized:
+#
+#    PRECEDENCE_OTHER or PRECEDENCE_HERE
+#      Suffix mappings can come from four sources: (1) SUFFIX rules
+#      given here - see below, (2) built-in defaults (HTInit.c), and the
+#      (3) GLOBAL_EXTENSION_MAP and (4) PERSONAL_EXTENSION_MAP files.
+#      The order of precedence is normally as listed: (1) has the
+#      *lowest*, (4) has the *highest* precedence if there are conflicts.
+#      In other words, SUFFIX mappings here are overridden by conflicting
+#      ones elsewhere.  This default ordering is called PRECEDENCE_OTHER.
+#      With PRECEDENCE_HERE, the order becomes (2) (3) (4) (1), i.e.
+#      mappings here override others made elsewhere.
+#
+#    NO_BUILTIN
+#      This disables all built-in default rules.  In other words, (2) in the
+#      list above is skipped.  Some recognition for compressed files (".gz",
+#      ".Z") is still hardwired.   A mapping for some basic types, at least
+#      for text/html is probably necessary to get a usable configuration,
+#      it can be given in a SUFFIX rule below or an extension map file.
+# Both kinds of settings can be combined, separated by comma as in
+#        SUFFIX_ORDER:PRECEDENCE_HERE,NO_BUILTIN
+# Note: Using PRECEDENCE_HERE has only an effect on SUFFIX rules that follow.
+# Moreover, if GLOBAL_EXTENSION_MAP or PERSONAL_EXTENSION_MAP directives
+# are used, they should come *before* a SUFFIX_ORDER:PRECEDENCE_HERE.
+#
+#SUFFIX_ORDER:PRECEDENCE_OTHER
+
+.h2 SUFFIX
+# The SUFFIX definition takes the form of:
+#
+#    SUFFIX:<file extension>:<mime type>:<encoding>:<quality>:<description>
+#
+# All fields after <mime type> are optional (including the separators
+# if no more fields follow).
+#
+#     <file extension> trailing end of file name.  This need not strictly
+#                      be a file extension as understood by the OS, a dot
+#                      has to be given explicitly if it is indented, for
+#                      some uses one could even match full filenames here.
+#                      In addition, two forms are special: "*.*" and "*"
+#                      refer to the defaults for otherwise unmatched files
+#                      (the first for filenames with a dot somewhere in
+#                      the name, the second without), these are currently
+#                      mapped to text/plain in the (HTInit.c) built-in code.
+#                      Lynx compares the file-extensions ignoring case.
+#
+#     <mime type> a MIME content type.  It can also contain a charset
+#                 parameter, see example below.  This should be given in
+#                 all lowercase, use <description> for more fancy labels.
+#                 It can be left empty if an HTTP style encoding is given.
+#
+# Fields in addition to the usual ones are
+#
+#     <encoding>  either a mail style trivial encoding (7bit, 8bit, binary)
+#                 which could be used on some systems to determine how to
+#                 open local files (currently it isn't), and is used to
+#                 determine transfer mode for some FTP URLs; or a HTTP style
+#                 content encoding (gzip (equivalent to x-gzip), compress)
+#
+#     <quality> a floating point quality factor, usually between 0.0 and 1.0
+#               currently unused in most situations.
+#
+#     <description> text that can appear in FTP directory listings, and in
+#                   local directory listings (see LIST_FORMAT, code %t)
+#
+# For instance the following definition maps the
+# extension ".gif" to the mime type "image/gif"
+.ex
+#    SUFFIX:.gif:image/gif
+#
+# The following can be used if you have a convention to label
+# HTML files in some character set that differs from your local
+# default (see also ASSUME_LOCAL_CHARSET) with a different
+# extension, here ".html-u8".  It also demonstrates use of the
+# description field, note extra separators for omitted fields:
+.ex
+#    SUFFIX:.html-u8:text/html;charset=utf-8:::UTF-8 HTML
+#
+# The following shows how a suffix can indicate a combination
+# of MIME type and compression method. (The ending ".ps.gz" should
+# already be recognized by default; the form below could be used on
+# systems that don't allow more than one dot in filenames.)
+.ex
+#    SUFFIX:.ps_gz:application/postscript:gzip::gzip'd Postscript
+#
+# The following is meant to match a full filename (but can match
+# any file ending in "core", so be careful):
+.ex
+#    SUFFIX:core:application/x-core-file
+#
+# file suffixes are case INsensitive!
+#
+# The suffix definitions listed here in the default lynx.cfg file are
+# similar to those normally established via src/HTInit.c.  You can change
+# the defaults by editing that file or disable them, or via the global or
+# personal mime.types files at run time (except for the additional fields).
+# Assignments made here are overridden by entries in those files
+# unless preceded with a SUFFIX_ORDER:PRECEDENCE_HERE.
+#
+.ex 29
+#SUFFIX:.ps:application/postscript
+#SUFFIX:.eps:application/postscript
+#SUFFIX:.ai:application/postscript
+#SUFFIX:.rtf:application/rtf
+#SUFFIX:.snd:audio/basic
+#SUFFIX:.gif:image/gif
+#SUFFIX:.rgb:image/x-rgb
+#SUFFIX:.png:image/png
+#SUFFIX:.xbm:image/x-xbitmap
+#SUFFIX:.tiff:image/tiff
+#SUFFIX:.jpg:image/jpeg
+#SUFFIX:.jpeg:image/jpeg
+#SUFFIX:.mpg:video/mpeg
+#SUFFIX:.mpeg:video/mpeg
+#SUFFIX:.mov:video/quicktime
+#SUFFIX:.hqx:application/mac-binhex40
+#SUFFIX:.bin:application/octet-stream
+#SUFFIX:.exe:application/octet-stream
+#SUFFIX:.tar:application/x-tar
+#SUFFIX:.tgz:application/x-tar:gzip
+#SUFFIX:.Z::compress
+#SUFFIX:.gz::gzip
+#SUFFIX:.bz2:application/x-bzip2
+#SUFFIX:.zip:application/zip
+#SUFFIX:.lzh:application/x-lzh
+#SUFFIX:.lha:application/x-lha
+#SUFFIX:.dms:application/x-dms
+#SUFFIX:.html:text/html
+#SUFFIX:.txt:text/plain
+
+.h2 XLOADIMAGE_COMMAND
+# VMS:
+# ====
+# XLOADIMAGE_COMMAND will be used as a default in src/HTInit.c
+# for viewing image content types when the DECW$DISPLAY logical
+# is set.  Make it the foreign command for your system's X image
+# viewer (commonly, "xv").  It can be anything that will handle GIF,
+# TIFF and other popular image formats.  Freeware ports of xv for
+# VMS were available in the ftp://ftp.wku.edu/vms/unsupported and
+# http://www.openvms.digital.com/cd/XV310A/ subdirectories.  You
+# must also have a "%s" for the filename.  The default is defined
+# in userdefs.h and can be overridden here, or via the global or
+# personal mailcap files (see below).
+#
+# Make this empty (but not commented out) if you don't have such a viewer or
+# want to disable the built-in default viewer mappings for image types.
+#
+#XLOADIMAGE_COMMAND:xv %s
+#
+# Unix:
+# =====
+# XLOADIMAGE_COMMAND will be used as a default in src/HTInit.c for
+# viewing image content types when the DISPLAY environment variable
+# is set.  Make it the full path and name of the xli (also know as
+# xloadimage or xview) command, or other image viewer.  It can be
+# anything that will handle GIF, TIFF and other popular image formats
+# (xli does).  The freeware distribution of xli is available in the
+# ftp://ftp.x.org/contrib subdirectory.  The shareware, xv, also is
+# suitable.  You must also have a "%s" for the filename; "&" for
+# background is optional.  The default is defined in userdefs.h and can be
+# overridden here, or via the global or personal mailcap files (see below).
+# Make this empty (but not commented out) if you don't have such a
+# viewer or don't want to disable the built-in default viewer
+# mappings for image types.
+# Note that open is used as the default for NeXT, instead of the
+# XLOADIMAGE_COMMAND definition.
+# If you use xli, you may want to add the -quiet flag.
+#
+#XLOADIMAGE_COMMAND:xli %s &
+
+.h2 VIEWER
+# MIME types may be assigned to external viewers using
+# the VIEWER definition.
+#
+# NOTE: if you do not define a viewer to a new MIME type
+#       that you assigned above then it will be saved to
+#       disk by default.
+#       It is normally preferable to define new viewers in
+#       MAILCAP files (see below) instead of here:  Definitions
+#       here are overridden by those in MAILCAP files and even
+#       by some built-in defaults in src/HTInit.c.
+#
+# The VIEWER definition takes the form of:
+#    VIEWER:<mime type>:<viewer command>[:<environment>]
+#      where -mime type is the MIME content type of the file
+#	     -viewer command is a system command that can be
+#             used to display the file where %s is replaced
+#             within the command with the physical filename
+#             (e.g., "ghostview %s" becomes "ghostview /tmp/temppsfile")
+#            -environment is optional.  The only valid keywords
+#             are currently XWINDOWS and NON_XWINDOWS.  If the XWINDOWS
+#             environment is specified then the viewer will only be
+#             defined when the user has the environment variable DISPLAY
+#             (DECW$DISPLAY on VMS) defined.  If the NON_XWINDOWS environment
+#             is specified the specified viewer will only be defined when the
+#             user DOES NOT have the environment variable DISPLAY defined.
+#  examples:
+#		VIEWER:image/gif:xli %s:XWINDOWS
+#               VIEWER:image/gif:ascii-view %s:NON_XWINDOWS
+#               VIEWER:application/start-elm:elm
+#
+# You must put the whole definition on one line.
+#
+# If you must use a colon in the viewer command, precede it with a backslash!
+#
+# The MIME_type:viewer:XWINDOWS definitions listed here in the lynx.cfg
+# file are among those established via src/HTInit.c.  For the image types,
+# HTInit.c uses the XLOADIMAGE_COMMAND definition in userdefs.h or above
+# (open is used for NeXT).  You can change any of these defaults via the
+# global or personal mailcap files.  Assignments made here will be overridden
+# by entries in those files.
+#
+.ex 7
+#VIEWER:application/postscript:ghostview %s&:XWINDOWS
+#VIEWER:image/gif:xli %s&:XWINDOWS
+#VIEWER:image/x-xbm:xli %s&:XWINDOWS
+#VIEWER:image/png:xli %s&:XWINDOWS
+#VIEWER:image/tiff:xli %s&:XWINDOWS
+#VIEWER:image/jpeg:xli %s&:XWINDOWS
+#VIEWER:video/mpeg:mpeg_play %s &:XWINDOWS
+
+.h2 GLOBAL_MAILCAP
+.h2 PERSONAL_MAILCAP
+# The global and personal MAILCAP files allow you to specify external
+# viewers to be spawned when Lynx encounters different MIME types, which
+# will override any of the suffix maps in this (lynx.cfg) configuration
+# file, or in src/HTInit.c.  See
+.url http://tools.ietf.org/html/rfc1524
+# and the example mailcap file in the samples subdirectory.
+#
+# Unix:
+# ====
+#GLOBAL_MAILCAP:/usr/local/lib/mosaic/mailcap
+# VMS:
+# ===
+#GLOBAL_MAILCAP:Lynx_Dir:mailcap
+#
+# 	Sought in user's home (Unix) or sys$login (VMS) directory.
+#PERSONAL_MAILCAP:.mailcap
+
+.h2 PREFERRED_MEDIA_TYPES
+# When doing a GET, lynx lists the MIME types which it knows how to present
+# (the "Accept:" string).  Depending on your system configuration, the
+# mime.types or other data given by the GLOBAL_EXTENSION_MAP may include many
+# entries that lynx really does not handle.  Use this option to select one
+# of the built-in subsets of the MIME types that lynx could list in the
+# Accept.
+#
+# Values for this option are keywords:
+#	INTERNAL	lynx's built-in types for internal conversions
+#	CONFIGFILE	adds lynx.cfg
+#	USER		adds PERSONAL_EXTENSION_MAP settings
+#	SYSTEM		adds GLOBAL_EXTENSION_MAP  settings
+#	ALL		adds lynx's built-in types for external conversions
+#
+#PREFERRED_MEDIA_TYPES:internal
+
+.h2 PREFERRED_ENCODING
+# When doing a GET, lynx tells what types of compressed data it can decompress
+# (the "Accept-Encoding:" string).  This is determined by compiled-in support
+# for decompression or external decompression programs.
+#
+# Values for this option are keywords:
+#	NONE		Do not request compressed data
+#	GZIP		For gzip
+#	COMPRESS	For compress
+#	BZIP2		For bzip2
+#	ALL		All of the above.
+#PREFERRED_ENCODING:all
+
+.h1 Keyboard Input
+
+.h2 KEYBOARD_LAYOUT
+# If your terminal (or terminal emulator, or operating system) does not
+# support 8-bit input (at all or in easy way), you can use Lynx to
+# generate 8-bit characters from 7-bit ones output by terminal.
+#
+# Currently available keyboard layouts:
+#	ROT13'd keyboard layout
+#	JCUKEN Cyrillic, for AT 101-key kbd
+#	YAWERTY Cyrillic, for DEC LK201 kbd
+#
+# This feature is ifdef'd with EXP_KEYBOARD_LAYOUT.
+#KEYBOARD_LAYOUT:JCUKEN Cyrillic, for AT 101-key kbd
+
+.h2 KEYMAP
+# Key remapping definitions!
+#
+# You may redefine the keymapping of any function in Lynx by
+# using the KEYMAP option.  The basic form of KEYMAP is:
+#  KEYMAP:<KEYSTROKE>:<LYNX FUNCTION>
+# (See below for an extended format.)
+#
+# You must map upper and lowercase keys separately.
+#
+# A representative list of functions mapped to their default keys is
+# provided below.  All of the mappings are commented out by default
+# since they just repeat the default mappings, except for TOGGLE_HELP
+# (see below).  See LYKeymap.c for the complete key mapping.  Use the
+# 'K'eymap command when running Lynx for a list of the _current_ keymappings.
+#
+# (However, in contrast to the output of 'K' command,
+# 'H'elp (lynx_help/*.html and lynx_help/keystrokes/*.html files) shows
+# the default mapping unless you change that files manually,
+# so you are responsible for possible deviations
+# when you are changing any KEYMAP below).
+.nf
+#
+# Keystrokes for special keys are represented by the following codes:
+#         Up Arrow: 0x100
+#       Down Arrow: 0x101
+#      Right Arrow: 0x102
+#       Left Arrow: 0x103
+#        Page Down: 0x104
+#          Page Up: 0x105
+#      Keypad Home: 0x106 (see also 0x10A)
+#       Keypad End: 0x107 (see also 0x10B)
+#   Function key 1: 0x108
+# vt100   Help Key: 0x108
+# vt100     Do Key: 0x109
+# vt100   Find Key: 0x10A (The key with label "Home" may be treated as Find)
+# vt100 Select Key: 0x10B (The key with label "End" may be treated as Select)
+#       Insert Key: 0x10C
+# Remove (Del) Key: 0x10D
+#      ignored key  0x10E (reserved for internal use, DO_NOTHING)
+# Back (Shift) Tab: 0x10F
+#    reserved code  0x11D (reserved for internal use with -use_mouse)
+#    reserved code  0x290 (reserved for internal use with -use_mouse)
+#
+.fi
+# Other codes not listed above may be available for additional keys,
+# depending on operating system and libraries used to compile Lynx.
+# On some systems, if compiled with recent versions of slang or ncurses
+# (if macro USE_KEYMAPS was in effect during compilation), an additional
+# level of key mapping is supported via an external ".lynx-keymaps" file.
+# This file, if found in the home directory at startup, will always be
+# used under those conditions; see lynx-keymaps distributed in the samples
+# subdirectory for further explanation.  Note that mapping via
+# .lynx-keymaps, if applicable, is a step that logically comes before the
+# mappings done here: KEYMAP maps the result of that step (which still
+# represents a key) to a function (which represents an action that Lynx
+# should perform).
+#
+.nf
+#KEYMAP:0x5C:SOURCE		# Toggle source viewing mode (show HTML source)
+#KEYMAP:^R:RELOAD		# Reload the current document and redisplay
+#KEYMAP:^U:NEXT_DOC		# Undo PREV_DOC)
+#KEYMAP:q:QUIT			# Ask the user to quit
+#KEYMAP:Q:ABORT			# Quit without verification
+#KEYMAP:0x20:NEXT_PAGE		# Move down to next page
+#KEYMAP:-:PREV_PAGE		# Move up to previous page
+#KEYMAP:^P:UP_TWO		# Move display up two lines
+#KEYMAP:0x10C:UP_TWO		# Function key Insert - Move display up two lines
+#KEYMAP:^N:DOWN_TWO		# Move display down two lines
+#KEYMAP:0x10D:DOWN_TWO		# Function key Remove - Move display down two lines
+#KEYMAP:(:UP_HALF		# Move display up half a page
+#KEYMAP:):DOWN_HALF		# Move display down half a page
+#KEYMAP:^W:REFRESH		# Refresh the screen
+#KEYMAP:^A:HOME			# Go to top of current document
+#KEYMAP:0x106:HOME		# Keypad Home - Go to top of current document
+#KEYMAP:0x10A:HOME		# Function key Find - Go to top of current document
+#KEYMAP:^E:END			# Go to bottom of current document
+#KEYMAP:0x107:END		# Keypad End - Go to bottom of current document
+#KEYMAP:0x10B:END		# Function key Select - Go to bottom of current document
+#KEYMAP:0x100:PREV_LINK		# Move to the previous link or page
+#KEYMAP:0x101:NEXT_LINK		# Move to the next link or page
+#KEYMAP:0x10F:FASTBACKW_LINK 	# Back Tab - Move to previous link or text area
+#KEYMAP:^I:FASTFORW_LINK	# Tab key - Move always to next link or text area
+#KEYMAP:^:FIRST_LINK		# Move to the first link on line
+#KEYMAP:$:LAST_LINK		# Move to the last link on line
+#KEYMAP:<:UP_LINK		# Move to the link above
+#KEYMAP:>:DOWN_LINK		# Move to the link below
+#KEYMAP:0x7F:HISTORY		# Show the history list
+#KEYMAP:0x08:HISTORY		# Show the history list
+#KEYMAP:0x103:PREV_DOC		# Return to the previous document in history stack
+#KEYMAP:0x102:ACTIVATE		# Select the current link
+#KEYMAP:0x109:ACTIVATE		# Function key Do - Select the current link
+#KEYMAP:g:GOTO			# Goto a random URL
+#KEYMAP:G:ECGOTO		# Edit the current document's URL and go to it
+#KEYMAP:H:HELP			# Show default help screen
+#KEYMAP:0x108:DWIMHELP		# Function key Help - Show a help screen
+#KEYMAP:i:INDEX			# Show default index
+#*** Edit FORM_LINK_* messages in LYMessages_en.h if you change NOCACHE ***
+#KEYMAP:x:NOCACHE		# Force submission of form or link with no-cache
+#*** Do not change INTERRUPT from 'z' & 'Z' ***
+#KEYMAP:z:INTERRUPT		# Interrupt network transmission
+#KEYMAP:m:MAIN_MENU		# Return to the main menu
+#KEYMAP:o:OPTIONS		# Show the options menu
+#KEYMAP:i:INDEX_SEARCH		# Search a server based index
+#KEYMAP:/:WHEREIS		# Find a string within the current document
+#KEYMAP:n:NEXT			# Find next occurrence of string within document
+#KEYMAP:c:COMMENT		# Comment to the author of the current document
+#KEYMAP:C:CHDIR			# Change current directory
+#KEYMAP:e:EDIT			# Edit current document or form's textarea (call: ^Ve)
+#KEYMAP:E:ELGOTO		# Edit the current link's URL or ACTION and go to it
+#KEYMAP:=:INFO			# Show info about current document
+#KEYMAP:p:PRINT			# Show print options
+#KEYMAP:a:ADD_BOOKMARK		# Add current document to bookmark list
+#KEYMAP:v:VIEW_BOOKMARK		# View the bookmark list
+#KEYMAP:V:VLINKS		# List links visited during the current Lynx session
+#KEYMAP:!:SHELL			# Spawn default shell
+#KEYMAP:d:DOWNLOAD		# Download current link
+#KEYMAP:j:JUMP			# Jump to a predefined target
+#KEYMAP:k:KEYMAP		# Display the current key map
+#KEYMAP:l:LIST			# List the references (links) in the current document
+#KEYMAP:#:TOOLBAR		# Go to the Toolbar or Banner in the current document
+#KEYMAP:^T:TRACE_TOGGLE		# Toggle detailed tracing for debugging
+#KEYMAP:;:TRACE_LOG		# View trace log if available for the current session
+#KEYMAP:*:IMAGE_TOGGLE		# Toggle inclusion of links for all images
+#KEYMAP:[:INLINE_TOGGLE		# Toggle pseudo-ALTs for inlines with no ALT string
+#KEYMAP:]:HEAD			# Send a HEAD request for current document or link
+#*** Must be compiled with USE_EXTERNALS to enable EXTERN_LINK, EXTERN_PAGE ***
+#KEYMAP:,:EXTERN_PAGE		# Run external program with current page
+#KEYMAP:.:EXTERN_LINK		# Run external program with current link
+#*** Escaping from text input fields with ^V is independent from this: ***
+#KEYMAP:^V:SWITCH_DTD		# Toggle between SortaSGML and TagSoup HTML parsing
+#KEYMAP:0x00:DO_NOTHING		# Does nothing (ignore this key)
+#KEYMAP:0x10E:DO_NOTHING	# Does nothing (ignore this key)
+#KEYMAP:{:SHIFT_LEFT		# shift the screen left
+#KEYMAP:}:SHIFT_RIGHT		# shift the screen right
+#KEYMAP:|:LINEWRAP_TOGGLE	# toggle linewrap on/off, for shift-commands
+#KEYMAP:~:NESTED_TABLES		# toggle nested-tables parsing on/off
+#
+.fi
+# In addition to the bindings available by default, the following functions
+# are not directly mapped to any keys by default, although some of them may
+# be mapped in specific line-editor bindings (effective while in text input
+# fields):
+.nf
+#
+#KEYMAP:???:RIGHT_LINK		# Move to the link to the right
+#KEYMAP:???:LEFT_LINK		# Move to the link to the left
+#KEYMAP:???:LPOS_PREV_LINK	# Like PREV_LINK, last column pos if form input
+#KEYMAP:???:LPOS_NEXT_LINK	# Like NEXT_LINK, last column pos if form input
+#*** Only useful in form text fields , need PASS or prefixing with ^V: ***
+#KEYMAP:???:DWIMHELP		# Display help page that may depend on context
+#KEYMAP:???:DWIMEDIT		# Use external editor for context-dependent purpose
+#*** Only useful in a form textarea, need PASS or prefixing with ^V: ***
+#KEYMAP:???:EDITTEXTAREA	# use external editor to edit a form textarea
+#KEYMAP:???:GROWTEXTAREA	# Add some blank lines to bottom of textarea
+#KEYMAP:???:INSERTFILE		# Insert file into a textarea (just above cursor)
+#*** Only useful with dired support and OK_INSTALL: ***
+#KEYMAP:???:INSTALL		# install (i.e. copy) local files to new location
+.fi
+#
+# If TOGGLE_HELP is mapped, in novice mode the second help menu line
+# can be toggled among NOVICE_LINE_TWO_A, _B, and _C, as defined in
+# LYMessages_en.h  Otherwise, it will be NOVICE_LINE_TWO.
+#
+#KEYMAP:O:TOGGLE_HELP		# Show other commands in the novice help menu
+#
+# KEYMAP lines can have one or two additional fields.  The extended format is
+#  KEYMAP:<KEYSTROKE>:[<MAIN LYNX FUNCTION>]:<OTHER BINDING>[:<SELECT>]
+#
+# If the additional field OTHER BINDING specifies DIRED, then the function is
+# mapped in the override table used only in DIRED mode.  This is only valid
+# if lynx was compiled with dired support and OK_OVERRIDE defined.  A
+# MAIN LYNX FUNCTION must be given (it should of course be one that makes
+# sense in Dired mode), and SELECT is meaningless.  Default built-in override
+# mappings are
+#
+#KEYMAP:^U:NEXT_DOC:DIRED	# Undo going back to the previous document
+#KEYMAP:.:TAG_LINK:DIRED	# Tag a file or directory for later action
+#KEYMAP:c:CREATE:DIRED		# Create a new file or directory
+#KEYMAP:C:CHDIR:DIRED		# change current directory
+#KEYMAP:f:DIRED_MENU:DIRED	# Display a menu of file operations
+#KEYMAP:m:MODIFY:DIRED		# Modify name or location of a file or directory
+#KEYMAP:r:REMOVE:DIRED		# Remove files or directories
+#KEYMAP:t:TAG_LINK:DIRED	# Tag a file or directory for later action
+#KEYMAP:u:UPLOAD:DIRED		# Show menu of "Upload Options"
+#
+# If the OTHER BINDING field does not specify DIRED, then it is taken as a
+# line-editor action.  It is possible to keep the MAIN LYNX FUNCTION field
+# empty in that case, for changing only the line-editing behavior.
+# If alternative line edit styles are compiled in, and modifying a key's
+# line-editor binding on a per style basis is possible, then SELECT can be
+# used to specify which styles are affected.  By default, or if SELECT is
+# 0, all line edit styles are affected.  If SELECT is a positive integer
+# number, only the binding for the numbered style is changed (numbering
+# is in the order in which styles are shown in the Options Menu, starting
+# with 1 for the Default style).  If SELECT is negative (-n), all styles
+# except n are affected.
+.nf
+#
+#  NOP		# Do Nothing
+#  ABORT	# Input cancelled
+#
+#  BOL		# Go to begin of line
+#  EOL		# Go to end   of line
+#  FORW		# Cursor forwards
+#  FORW_RL	# Cursor forwards or right link
+#  BACK		# Cursor backwards
+#  FORWW	# Word forward
+#  BACKW	# Word back
+#  BACK_LL	# Cursor backwards or left link
+#
+#  DELN		# Delete next/curr char
+#  DELP		# Delete prev      char
+#  DELNW	# Delete next word
+#  DELPW	# Delete prev word
+#  DELBL	# Delete back to BOL
+#  DELEL	# Delete thru EOL
+#  ERASE	# Erase the line
+#  LOWER	# Lower case the line
+#  UPPER	# Upper case the line
+#
+#  LKCMD	# In fields: Invoke key command prompt (default for ^V)
+#  PASS		# In fields: handle as non-lineedit key; in prompts: ignore
+#
+.fi
+# Modify following key (prefixing only works within line-editing, edit actions
+# of some resulting prefixed keys are built-in, see Line Editor help pages)
+#  SETM1	# Set modifier 1 flag (default for ^X - key prefix)
+#  SETM2	# Set modifier 2 flag (another key prefix - same effect)
+#
+# May not always be compiled in:
+.nf
+#
+#  TPOS		# Transpose characters
+#  SETMARK	# emacs-like set-mark-command
+#  XPMARK	# emacs-like exchange-point-and-mark
+#  KILLREG	# emacs-like kill-region
+#  YANK		# emacs-like yank
+#  SWMAP	# Switch input keymap
+#  PASTE	# ClipBoard to Lynx - Windows Extension
+#
+.fi
+# May work differently from expected if not bound to their expected keys:
+.nf
+#
+#  CHAR		# Insert printable char (default for all ASCII printable)
+#  ENTER	# Input complete, return char/lynxkeycode (for RETURN/ENTER)
+#  TAB		# Input complete, return TAB (for ASCII TAB char ^I)
+#
+.fi
+# Internal use, probably not useful for binding, listed for completeness:
+.nf
+#
+#  UNMOD	# Fall back to no-modifier command
+#  AIX		# Hex 97
+#  C1CHAR	# Insert C1 char if printable
+#
+.fi
+# If OTHER BINDING specifies PASS, then if the key is pressed in a text input
+# field it is passed by the built-in line-editor to normal KEYMAP handling,
+# i.e. this flag acts like an implied ^V escape (always overrides line-editor
+# behavior of the key).  For example,
+#KEYMAP:0x10C:UP_TWO:PASS # Function key Insert - Move display up two lines
+#
+# Other examples (repeating built-in bindings)
+#KEYMAP:^V::LKCMD	# set (only) line-edit action for ^V
+#KEYMAP:^V:SWITCH_DTD:LKCMD # set main lynxaction and line-edit action for ^V
+#KEYMAP:^U::ERASE:1	# set line-edit binding for ^U, for default style
+#KEYMAP:^[::SETM2:3	# use escape key as modifier - works only sometimes
+
+.h1 External Programs
+# These settings control the ability of Lynx to invoke various programs for
+# the user.
+
+.h2 CSWING_PATH
+# VMS ONLY:
+#==========
+# On VMS, CSwing (an XTree emulation for VTxxx terminals) is intended for
+# use as the Directory/File Manager (sources, objects, or executables were
+# available from ftp://narnia.memst.edu/).  CSWING_PATH should be defined
+# here or in userdefs.h to your foreign command for CSwing, with any
+# regulatory switches you want included.  If not defined, or defined as
+# a zero-length string ("") or "none" (case-insensitive), the support
+# will be disabled.  It will also be disabled if the -nobrowse or
+# -selective switches are used, or if the file_url restriction is set.
+#
+# When enabled, the DIRED_MENU command (normally 'f' or 'F') will invoke
+# CSwing, normally with the current default directory as an argument to
+# position the user on that node of the directory tree.  However, if the
+# current document is a local directory listing, or a local file and not
+# one of the temporary menu or list files, the associated directory will
+# be passed as an argument, to position the user on that node of the tree.
+#
+#CSWING_PATH:swing
+
+.h1 Internal Behavior
+
+.h2 AUTO_UNCACHE_DIRLISTS
+# AUTO_UNCACHE_DIRLISTS determines when local file directory listings are
+# automatically regenerated (by re-reading the actual directory from disk).
+# Set the value to 0 to avoid automatic regeneration in most cases.  This is
+# useful for browsing large directories that take some time to read and format.
+# An update can still always be forced with the RELOAD key, and specific DIRED
+# actions may cause a refresh anyway.  Set the value to 1 to force regeneration
+# after commands that usually change the directory or some files and would make
+# the displayed info stale, like EDIT and REMOVE.  Set it to 2 (the default) or
+# greater to force regeneration even after leaving the displayed directory
+# listing by some action that usually causes no change, like GOTO or entering a
+# file with the ACTIVATE key.  This option is only honored in DIRED mode (i.e.
+# when lynx is compiled with DIRED_SUPPORT and it is not disabled with a
+# -restriction).  Local directories displayed without DIRED normally act as if
+# AUTO_UNCACHE_DIRLISTS:0 was in effect.
+#
+#AUTO_UNCACHE_DIRLISTS:2
+
+.h1 Appearance
+
+.h2 LIST_FORMAT
+# LIST_FORMAT defines the display for local files when Lynx has been
+# compiled with LONG_LIST defined in the Makefile.  The default is set
+# in userdefs.h, normally to "ls -l" format, and can be changed here
+# by uncommenting the indicated lines, or adding a definition with a
+# modified parameter list.
+#
+# This feature is not available for VMS.
+#
+# The percent items in the list are interpreted as follows:
+.nf
+#
+#	%p	Unix-style permission bits
+#	%l	link count
+#	%o	owner of file
+#	%g	group of file
+#	%d	date of last modification
+#	%a	anchor pointing to file or directory
+#	%A	as above but don't show symbolic links
+#	%t	type of file (description derived from MIME type)
+#	%T	MIME type as known by Lynx (from mime.types or default)
+#	%k	size of file in Kilobytes
+#	%K	as above but omit size for directories
+#	%s	size of file in bytes
+#
+.fi
+# Anything between the percent and the letter is passed on to sprintf.
+# A double percent yields a literal percent on output.  Other characters
+# are passed through literally.
+#
+# If you want only the filename:
+#
+.ex
+#LIST_FORMAT:    %a
+#
+# If you want a brief output:
+#
+.ex
+#LIST_FORMAT:   %4K %-12.12d %a
+#
+# If you want the Unix "ls -l" format:
+#
+.ex
+#LIST_FORMAT:    %p %4l %-8.8o %-8.8g %7s %-12.12d %a
+
+.h1 External Programs
+
+.h2 DIRED_MENU
+# Unix ONLY:
+#===========
+# DIRED_MENU items are used to compose the F)ull menu list in DIRED mode
+# The behavior of the default configuration given here is much the same
+# as it was when this menu was hard-coded but these items can now be adjusted
+# to suit local needs.  In particular, many of the LYNXDIRED actions can be
+# replaced with lynxexec, lynxprog and lynxcgi script references.
+#
+# NOTE that defining even one DIRED_MENU line overrides all the built-in
+# definitions, so a complete set must then be defined here.
+#
+# Each line consists of the following fields:
+.nf
+#
+#	DIRED_MENU:type:suffix:link text:extra text:action
+#
+#	type: TAG:   list only when one or more files are tagged
+#	      FILE:  list only when the current selection is a regular file
+#	      DIR:   list only when the current selection is a directory
+#	      LINK:  list only when the current selection is a symbolic link
+#
+#	suffix:  list only if the current selection ends in this pattern
+#
+#	link text:  the displayed text of the link
+#
+#	extra text:  the text displayed following the link
+#
+#	action:  the URL to be followed upon selection
+#
+#	link text and action are scanned for % sequences that are expanded
+#	at display time as follows:
+#
+#		%p  path of current selection
+#		%f  filename (last component) of current selection
+#		%t  tagged list (full paths)
+#		%l  list of tagged file names
+#		%d  the current directory
+#
+.fi
+#DIRED_MENU:::New File:(in current directory):LYNXDIRED://NEW_FILE%d
+#DIRED_MENU:::New Directory:(in current directory):LYNXDIRED://NEW_FOLDER%d
+#
+# Following depends on OK_INSTALL
+#DIRED_MENU:FILE::Install:selected file to new location:LYNXDIRED://INSTALL_SRC%p
+#DIRED_MENU:DIR::Install:selected directory to new location:LYNXDIRED://INSTALL_SRC%p
+#
+#DIRED_MENU:FILE::Modify File Name:(of current selection):LYNXDIRED://MODIFY_NAME%p
+#DIRED_MENU:DIR::Modify Directory Name:(of current selection):LYNXDIRED://MODIFY_NAME%p
+#DIRED_MENU:LINK::Modify Name:(of selected symbolic link):LYNXDIRED://MODIFY_NAME%p
+#
+# Following depends on OK_PERMIT
+#DIRED_MENU:FILE::Modify File Permissions:(of current selection):LYNXDIRED://PERMIT_SRC%p
+#DIRED_MENU:DIR::Modify Directory Permissions:(of current selection):LYNXDIRED://PERMIT_SRC%p
+#
+#DIRED_MENU:FILE::Change Location:(of selected file):LYNXDIRED://MODIFY_LOCATION%p
+#DIRED_MENU:DIR::Change Location:(of selected directory):LYNXDIRED://MODIFY_LOCATION%p
+#DIRED_MENU:LINK::Change Location:(of selected symbolic link):LYNXDIRED://MODIFY_LOCATION%p
+#DIRED_MENU:FILE::Remove File:(current selection):LYNXDIRED://REMOVE_SINGLE%p
+#DIRED_MENU:DIR::Remove Directory:(current selection):LYNXDIRED://REMOVE_SINGLE%p
+#DIRED_MENU:LINK::Remove Symbolic Link:(current selection):LYNXDIRED://REMOVE_SINGLE%p
+#
+# Following depends on OK_UUDECODE and !ARCHIVE_ONLY
+#DIRED_MENU:FILE::UUDecode:(current selection):LYNXDIRED://UUDECODE%p
+#
+# Following depends on OK_TAR and !ARCHIVE_ONLY
+#DIRED_MENU:FILE:.tar.Z:Expand:(current selection):LYNXDIRED://UNTAR_Z%p
+#
+# Following depend on OK_TAR and OK_GZIP and !ARCHIVE_ONLY
+#DIRED_MENU:FILE:.tar.gz:Expand:(current selection):LYNXDIRED://UNTAR_GZ%p
+#DIRED_MENU:FILE:.tgz:Expand:(current selection):LYNXDIRED://UNTAR_GZ%p
+#
+# Following depends on !ARCHIVE_ONLY
+#DIRED_MENU:FILE:.Z:Uncompress:(current selection):LYNXDIRED://DECOMPRESS%p
+#
+# Following depends on OK_GZIP and !ARCHIVE_ONLY
+#DIRED_MENU:FILE:.gz:Uncompress:(current selection):LYNXDIRED://UNGZIP%p
+#
+# Following depends on OK_ZIP and !ARCHIVE_ONLY
+#DIRED_MENU:FILE:.zip:Uncompress:(current selection):LYNXDIRED://UNZIP%p
+#
+# Following depends on OK_TAR and !ARCHIVE_ONLY
+#DIRED_MENU:FILE:.tar:UnTar:(current selection):LYNXDIRED://UNTAR%p
+#
+# Following depends on OK_TAR
+#DIRED_MENU:DIR::Tar:(current selection):LYNXDIRED://TAR%p
+#
+# Following depends on OK_TAR and OK_GZIP
+#DIRED_MENU:DIR::Tar and compress:(using GNU gzip):LYNXDIRED://TAR_GZ%p
+#
+# Following depends on OK_ZIP
+#DIRED_MENU:DIR::Package and compress:(using zip):LYNXDIRED://ZIP%p
+#
+#DIRED_MENU:FILE::Compress:(using Unix compress):LYNXDIRED://COMPRESS%p
+#
+# Following depends on OK_GZIP
+#DIRED_MENU:FILE::Compress:(using gzip):LYNXDIRED://GZIP%p
+#
+# Following depends on OK_ZIP
+#DIRED_MENU:FILE::Compress:(using zip):LYNXDIRED://ZIP%p
+#
+#DIRED_MENU:TAG::Move all tagged items to another location.::LYNXDIRED://MOVE_TAGGED%d
+#
+# Following depends on OK_INSTALL
+#DIRED_MENU:TAG::Install tagged files into another directory.::LYNXDIRED://INSTALL_SRC%00
+#
+#DIRED_MENU:TAG::Remove all tagged files and directories.::LYNXDIRED://REMOVE_TAGGED
+#DIRED_MENU:TAG::Untag all tagged items.::LYNXDIRED://CLEAR_TAGGED
+
+.h1 Internal Behavior
+
+.h2 NONRESTARTING_SIGWINCH
+# Some systems only:
+#===================
+# Lynx tries to detect window size changes with a signal handler for
+# SIGWINCH if supported.  If NONRESTARTING_SIGWINCH is set to TRUE,
+# and the sigaction interface is available on the system, the handler
+# is installed as 'non-restarting'.  On some systems (depending on the
+# library used for handling keyboard input, e.g. ncurses), this allows
+# more immediate notification of window size change events.  If the value
+# is set to FALSE, the signal() interface is used; this normally makes
+# the handler 'restarting', with the effect that lynx can react to size
+# changes only after some key is pressed.  The value can also be set to
+# XWINDOWS; this is equivalent to TRUE when the user has the environment
+# variable DISPLAY defined *at program start*, and equivalent to FALSE
+# otherwise.  The non-restarting behavior can also be changed to TRUE
+# or FALSE with the -nonrestarting_sigwinch switch, which overrides the
+# value in this file.
+#
+# Note that Lynx never re-parses document text purely as a result of a
+# window size change, so text lines may appear truncated after narrowing
+# the window, until the document is reloaded with ^R or a similar key
+# or until a different text is loaded.
+#
+# The default is FALSE since there is a possibility that non-restarting
+# interrupts may be mis-interpreted as fatal input errors in some
+# configurations (leading to an abrupt program exit), and since this
+# option is useful mostly only for users running Lynx under xterm or a
+# similar X terminal emulator.  On systems where the preconditions don't
+# apply this option is ignored.
+#
+#NONRESTARTING_SIGWINCH:FALSE
+
+.h2 NO_FORCED_CORE_DUMP
+# Unix ONLY:
+#===========
+# If NO_FORCED_CORE_DUMP is set to TRUE, Lynx will not force
+# core dumps via abort() calls on fatal errors or assert()
+# calls to check potentially fatal errors.  The compilation
+# default normally is FALSE, and can be changed here.  The
+# compilation or configuration default can be toggled via
+# the -core command line switch.
+# Note that this setting cannot be used to prevent core dumps
+# with certainty.  If this is important, means provided by the
+# operating system or kernel should be used.
+#
+#NO_FORCED_CORE_DUMP:FALSE
+
+.h1 Appearance
+
+.h2 COLOR
+# COLORS (only available if compiled with SVr4 curses or slang)
+#
+# The line must be of the form:
+#
+# COLOR:Integer:Foreground:Background
+.nf
+#
+# The Integer value is interpreted as follows:
+#   0 - normal                      - normal text
+#   1 - bold                        - hyperlinks, see also BOLD_* options above
+#   2 - reverse                     - statusline
+#   3 - bold + reverse              (not used)
+#   4 - underline                   - text emphasis (EM, I, B tags etc.)
+#   5 - bold + underline            - hyperlinks within text emphasis
+#   6 - reverse + underline         - currently selected hyperlink
+#   7 - reverse + underline + bold  - WHEREIS search hits
+#
+# Each Foreground and Background value must be one of:
+#   black         red            green         brown
+#   blue          magenta        cyan          lightgray
+#   gray          brightred      brightgreen   yellow
+#   brightblue    brightmagenta  brightcyan    white
+.fi
+# or (if you have configured using --enable-default-colors with ncurses or
+# slang), "default" may be used for foreground and background.
+#
+# Note that in most cases a white background is really "lightgray", since
+# terminals generally do not implement bright backgrounds.
+#
+# Uncomment and change any of the compilation defaults.
+#
+#COLOR:0:black:white
+#COLOR:1:blue:white
+#COLOR:2:yellow:blue
+#COLOR:3:green:white
+#COLOR:4:magenta:white
+#COLOR:5:blue:white
+#COLOR:6:red:white
+COLOR:6:brightred:black
+#COLOR:7:magenta:cyan
+
+.h2 COLOR_STYLE
+# Also known as "lss" (lynx style-sheet), the color-style file assigns color
+# combination to tags and combinations of tags.  Normally a non-empty value
+# is compiled into lynx, and the user can override that using the -lss
+# command-line option.  The configure script allows one to compile in an
+# empty string.  If lynx finds no value for this setting, it simulates the
+# non-color-style assignments using the COLOR settings.
+#
+# If neither the command-line "-lss" or this COLOR_STYLE setting are given,
+# lynx tries the environment variables "LYNX_LSS" and "lynx_lss".  If neither
+# is set, lynx uses the compiled-in value (which as noted, may be empty).
+#
+#COLOR_STYLE: lynx.lss
+
+.h2 NESTED_TABLES
+# This is an experimental feature for improving table layout.
+# It is enabled by default when the COLOR_STYLE configuration is used,
+# and false otherwise.
+#
+#NESTED_TABLES: true
+
+.h2 ASSUMED_COLOR
+# If built with a library that recognizes default colors (usually ncurses or
+# slang), and if the corresponding option is compiled into lynx, lynx
+# initializes it to assume the corresponding foreground and background colors.
+# Default colors are those that the terminal (emulator) itself is initialized
+# to.  For instance, you might have an xterm running with black text on a white
+# background, and want lynx to display colored text on the white background,
+# but leave the possibility of using the same configuration to draw colored
+# text on a different xterm, this time using its background set to black.
+#
+# If built with conventional SVr3/SVr4 curses, tells lynx to use color pair 0
+# when the given colors match this setting.  That gives a similar effect,
+# though not as flexible.  You will get the best results by setting the
+# terminal's default colors to match the prevailing text and background colors
+# that you have setup with lynx, and then alter the ASSUMED_COLOR setting to
+# match that.  If you do not alter the ASSUMED_COLOR setting, curses assumes
+# color pair 0's background is black, which implies that its foreground (text)
+# is white.
+#
+# The first value given is the foreground, the second is the background.
+#ASSUMED_COLOR:default:default
+
+.h2 DEFAULT_COLORS
+# If built with a library that recognizes default colors (usually ncurses or
+# slang), and if the corresponding option is compiled into lynx, lynx
+# initializes it to assume the corresponding foreground and background colors.
+# Default colors are those that the terminal (emulator) itself is initialized
+# to.
+#
+# Use this feature to disable the default-colors feature at runtime.
+# This is useful for constructing scripts which use the non-color-style
+# scheme, e.g., the oldlynx script.
+#
+# This should precede ASSUMED_COLOR settings.
+#DEFAULT_COLORS:true
+
+.h1 External Programs
+
+.h2 EXTERNAL
+# External application support.  This feature allows Lynx to pass a given
+# URL to an external program.  It was written for three reasons.
+#
+# 1) To overcome the deficiency	of Lynx_386 not supporting ftp and news.
+#    External programs can be used instead by passing the URL.
+#
+# 2) To allow for background	transfers in multitasking systems.
+#    I use wget for http and ftp transfers via the external command.
+#
+# 3) To allow for new URLs to be used through Lynx.
+#	  URLs can be made up such as mymail: to spawn desired applications
+#	  via the external command.
+#
+# Restrictions can be imposed using -restrictions=externals at the Lynx command
+# line.  This will disallow all EXTERNAL lines in lynx.cfg that have FALSE in
+# the 3rd field (not counting the name of the setting).  TRUE lines will still
+# function.
+#
+# The lynx.cfg line is as follows:
+#
+# EXTERNAL:<url>:<command> %s:<norestriction>:<allow_for_activate>[:environment]
+#
+# <url> Any given URL.  This can be normal ones like ftp or http or it
+# can be one made up like mymail.
+#
+# <command> The command to run with %s being the URL that will be passed.
+# In Linux I use "wget -q %s &" (no quotes) to spawn a copy of wget for
+# downloading http and ftp files in the background.  In Win95 I use
+# "start ncftp %s" to spawn ncftp in a new window.
+#
+# <norestriction> This complements the -restrictions=externals feature to allow
+# for certain externals to be enabled while restricting others.  TRUE means
+# a command will still function while Lynx is restricted.  WB
+#
+# <allow_for_activate> Setting this to TRUE allows the use of this command not
+# only when EXTERN key is pressed, but also when ACTIVATE command is invoked
+# (i.e., activating the link with the given prefix will be equivalent to
+# pressing EXTERN key on it).  If this component of the line is absent, then
+# FALSE is assumed.
+#
+# [:environment] Optional, if XWINDOWS then command is allowed only if
+# $DISPLAY environment variable is set, else if NON_XWINDOWS then command
+# is allowed only if $DISPLAY environment variable is not set, if absent or
+# anything else command is always allowed.
+#
+# For invoking the command use the EXTERN_LINK or EXTERN_PAGE key.  By default
+# EXTERN_LINK is mapped to '.', and EXTERN_PAGE to ',' (if the feature is
+# enabled), see the KEYMAP section above.
+#
+#EXTERNAL:ftp:wget %s &:TRUE
+
+.h2 EXTERNAL_MENU
+# Like EXTERNAL, but allows customizing the menu name.
+# Here is the syntax:
+.ex 1
+# EXTERNAL_MENU:<url>:<menu>:<command> %s:<norestriction>:<allow_for_activate>[:environment]
+
+.h1 Internal Behavior
+
+.h2 RULE
+.h2 RULESFILE
+# CERN-style rules, EXPERIMENTAL  -  URL-specific rules
+#
+# A CERN-style rules file can be given with RULESFILE.  Use the system's
+# native format for filenames, on Unix '~' is also recognized.  If a filename
+# is given, the file must exist.
+#
+# Single CERN-style rules can be specified with RULES.
+#
+# Both options can be repeated, rules accumulate in the order
+# given, they will be applied in first-to-last order.  See cernrules.txt
+# in the samples subdirectory for further explanation.
+#
+# Examples:
+.ex 5
+#	RULESFILE:/etc/lynx/cernrules
+#	RULE:Fail	gopher:*		     # reject by scheme
+#	RULE:Pass	finger://*@localhost/	     # allow this,
+#	RULE:Fail	finger:*		     # but not others
+#	RULE:Redirect	http://old.server/*	http://new.server/*
+
+.h1 Appearance
+
+.h2 PRETTYSRC
+# Enable pretty source view
+#PRETTYSRC:FALSE
+
+.h2 PRETTYSRC_SPEC
+# Pretty source view settings. These settings are in effect when -prettysrc
+# is specified.
+# The following lexical elements (lexemes) are recognized:
+# comment, tag, attribute, attribute value, generalized angle brackets (
+# '<' '>' '</' ), entity, hyperlink destination, entire file, bad sequence,
+# bad tag, bad attribute, sgml special.
+#  The following group of option tells which styles will surround each
+# lexeme. The syntax of option in this group is:
+#PRETTYSRC_SPEC:<LEXEMENAME>:<TAGSPEC>:<TAGSPEC>
+# The first <TAGSPEC> specifies what tags will precede lexemes of that class
+# in the internal html markup. The second - what will be placed (internally)
+# after it.
+# TAGSPEC has the following syntax:
+# <TAGSPEC>:= [ (<TAGOPEN> | <TAGCLOSE>) <SPACE>+ ]*
+# <TAGOPEN>:= tagname[.classname]
+# <TAGCLOSE>:= !tagname
+#
+# The following table gives correspondence between lexeme and lexeme name
+.nf
+# Lexeme                   LEXEMENAME  FURTHER EXPLANATION
+# =========================================================
+# comment                  COMM
+# tag                      TAG         recognized tag name only
+# attribute                ATTRIB
+# attribute value          ATTRVAL
+# generalized brackets     ABRACKET    <  >  </
+# entity                   ENTITY
+# hyperlink destination    HREF
+# entire file              ENTIRE
+# bad sequence             BADSEQ      bad entity or invalid construct at text
+#                                      level.
+# bad tag                  BADTAG      Unrecognized construct in generalized
+#                                      brackets.
+# bad attribute            BADATTR     The name of the attribute unknown to lynx
+#                                      of the tag known to lynx. (i.e.,
+#                                      attributes of unknown tags will have
+#                                      markup of  ATTRIB)
+# sgml special             SGMLSPECIAL doctype, sgmlelt, sgmlele,
+#                                      sgmlattlist, marked section, identifier
+.fi
+#
+# Notes:
+#
+# 1) The markup for HTML_ENTIRE will be emitted only once - it will surround
+#    entire file source.
+#
+# 2) The tagnames specified by TAGSPEC should be valid html tag names.
+#
+# 3) If the tag/class combination given by TAGOPEN is not assigned a color
+#    style in lss file (for lynx compiled with lss support), that tag/class
+#    combination will be emitted anyway during internal html markup. Such
+#    combinations will be also reported to the trace log.
+#
+# 4) Lexeme 'tag' means tag name only
+#
+# 5) Angle brackets of html specials won't be surrounded by markup for ABRACKET
+#
+.ex
+# PRETTYSRC_SPEC:COMM:B I:!I !B
+#           HTML comments will be surrounded by <b><i> and </i></b> in the
+#           internal html markup
+.ex
+# PRETTYSRC_SPEC:ATTRVAL: span.attrval : !span
+#           Values of the attributes will be surrounded by the
+#           <SPAN class=attrval> </SPAN>
+.ex
+# PRETTYSRC_SPEC:HREF::
+#           No special html markup will surround hyperlink destinations (
+#           this means that only default color style for hrefs will be applied
+#           to them)
+#
+# For lynx compiled with lss support, the following settings are the default:
+#PRETTYSRC_SPEC:COMM:span.htmlsrc_comment:!span
+#PRETTYSRC_SPEC:TAG:span.htmlsrc_tag:!span
+#PRETTYSRC_SPEC:ATTRIB:span.htmlsrc_attrib:!span
+#PRETTYSRC_SPEC:ATTRVAL:span.htmlsrc_attrval:!span
+#PRETTYSRC_SPEC:ABRACKET:span.htmlsrc_abracket:!span
+#PRETTYSRC_SPEC:ENTITY:span.htmlsrc_entity:!span
+#PRETTYSRC_SPEC:HREF:span.htmlsrc_href:!span
+#PRETTYSRC_SPEC:ENTIRE:span.htmlsrc_entire:!span
+#PRETTYSRC_SPEC:BADSEQ:span.htmlsrc_badseq:!span
+#PRETTYSRC_SPEC:BADTAG:span.htmlsrc_badtag:!span
+#PRETTYSRC_SPEC:BADATTR:span.htmlsrc_badattr:!span
+#PRETTYSRC_SPEC:SGMLSPECIAL:span.htmlsrc_sgmlspecial:!span
+# the styles corresponding to them are present in sample .lss file.
+# For lynx compiled without lss support, the following settings are the default:
+#PRETTYSRC_SPEC:COMM:b:!b
+#PRETTYSRC_SPEC:TAG:b:!b
+#PRETTYSRC_SPEC:ATTRIB:b:!b
+#PRETTYSRC_SPEC:ATTRVAL::
+#PRETTYSRC_SPEC:ABRACKET:b:!b
+#PRETTYSRC_SPEC:ENTITY:b:!b
+#PRETTYSRC_SPEC:HREF::
+#PRETTYSRC_SPEC:ENTIRE::
+#PRETTYSRC_SPEC:BADSEQ:b:!b
+#PRETTYSRC_SPEC:BADTAG::
+#PRETTYSRC_SPEC:BADATTR::
+#PRETTYSRC_SPEC:SGMLSPECIAL:b:!b
+
+.h2 HTMLSRC_ATTRNAME_XFORM
+.h2 HTMLSRC_TAGNAME_XFORM
+# Options HTMLSRC_TAGNAME_XFORM and HTMLSRC_ATTRNAME_XFORM control the way the
+# names of tags and names of attributes are transformed correspondingly.
+# Possible values: 0 - lowercase, 1 - leave as is, 2 - uppercase.
+#HTMLSRC_TAGNAME_XFORM:2
+#HTMLSRC_ATTRNAME_XFORM:2
+
+.h2 PRETTYSRC_VIEW_NO_ANCHOR_NUMBERING
+# PRETTYSRC_VIEW_NO_ANCHOR_NUMBERING - pretty source view setting
+# If "keypad mode" in 'O'ptions screen is "Links are numbered" or
+# "Links and form fields are numbered", and PRETTYSRC_VIEW_NO_ANCHOR_NUMBERING is
+# TRUE, then links won't be numbered in psrc view and will be numbered
+# otherwise. Set this setting to TRUE if you prefer numbered links, but wish
+# to get valid HTML source when printing or mailing when in psrc view.
+# Default is FALSE.
+#PRETTYSRC_VIEW_NO_ANCHOR_NUMBERING:FALSE
+
+.h1 HTML Parsing
+
+.h2 FORCE_EMPTY_HREFLESS_A
+# FORCE_EMPTY_HREFLESS_A - HTML parsing
+# This option mirrors command-line option with the same name.  Default is
+# FALSE.  If true, then any 'A' element without HREF will be closed
+# immediately.  This is useful when viewing documentation produced by broken
+# translator that doesn't emit balanced A elements.  If lynx was compiled with
+# color styles, setting this option to TRUE will make lynx screen much more
+# reasonable (otherwise all text will probably have color corresponding to the
+# A element).
+#
+#FORCE_EMPTY_HREFLESS_A:FALSE
+
+.h2 HIDDEN_LINK_MARKER
+# HIDDEN_LINK_MARKER - HTML parsing
+# This option defines the string that will be used as title of hidden link (a
+# link that otherwise will have no label associated with it).  Using an empty
+# string as the value will cause lynx to behave in the old way - hidden links
+# will be handled according to other settings (mostly the parameter of
+# --hiddenlinks command-line switch).  If the value is non-empty string, hidden
+# link becomes non-hidden so it won't be handled as hidden link, e.g., listed
+# among hidden links on 'l'isting page.
+#
+#HIDDEN_LINK_MARKER:
+
+.h2 XHTML_PARSING
+# XHTML_PARSING - HTML parsing
+# When true, tells lynx that it can ignore certain tags which have no content
+# in an XHTML 1.0 document.  For example
+#	<p />
+#	<a />
+# When the option is false, lynx will not treat the tag as an ending.
+#XHTML_PARSING:FALSE
+
+.h1 Appearance
+
+.h2 JUSTIFY
+# JUSTIFY - Appearance
+# This option mirrors command-line option with same name.  Default is TRUE.  If
+# true, most of text (except headers and like this) will be justified.  This
+# has no influence on CJK text rendering.
+#
+# This option is only available if Lynx was compiled with USE_JUSTIFY_ELTS.
+#
+#JUSTIFY:FALSE
+
+.h2 JUSTIFY_MAX_VOID_PERCENT
+# JUSTIFY_MAX_VOID_PERCENT - Appearance
+# This option controls the maximum allowed value for ratio (in percents) of
+# 'the number of spaces to spread across the line to justify it' to
+# 'max line size for current style and nesting' when justification is allowed.
+# When that ratio exceeds the value specified, that particular line won't be
+# justified. I.e. the value 28 for this setting will mean maximum value for
+# that ratio is 0.28.
+#
+#JUSTIFY_MAX_VOID_PERCENT:35
+
+.h1 Interaction
+
+.h2 TEXTFIELDS_NEED_ACTIVATION
+# If TEXTFIELDS_NEED_ACTIVATION is set to TRUE, and lynx was compiled with
+# TEXTFIELDS_MAY_NEED_ACTIVATION defined, then text input form fields need
+# to be activated (by pressing the Enter key or similar) before the user
+# can enter or modify input.  By default, input fields become automatically
+# activated when selected.  Requiring explicit activation can be desired for
+# users who use alphanumeric keys for navigation (or other keys that have
+# special meaning in the line editor - ' ', 'b', INS, DEL, etc), and don't
+# want to 'get stuck' in form fields.  Instead of setting the option here,
+# explicit activation can also be requested with the -tna command line
+# option.
+#
+#TEXTFIELDS_NEED_ACTIVATION:FALSE
+
+.h2 LEFTARROW_IN_TEXTFIELD_PROMPT
+# LEFTARROW_IN_TEXTFIELD_PROMPT
+# This option controls what happens when a Left Arrow key is pressed while
+# in the first position of an active text input field.  By default, Lynx
+# asks for confirmation ("Do you want to go back to the previous document?")
+# only if the contents of the fields have been changed since entering it.
+# If set to TRUE, the confirmation prompt is always issued.
+#
+#LEFTARROW_IN_TEXTFIELD_PROMPT:FALSE
+
+.h1 Timeouts
+
+.h2 CONNECT_TIMEOUT
+# Specifies (in seconds) connect timeout. Default value is rather huge.
+#CONNECT_TIMEOUT:18000
+
+.h2 READ_TIMEOUT
+# Specifies (in seconds) read-timeout. Default value is rather huge.
+#READ_TIMEOUT:18000
+
+.h1 Internal Behavior
+# These settings control internal lynx behavior - the way it interacts with the
+# operating system and Internet.  Modifying these settings will not change
+# the rendition of documents that you browse with lynx, but can change various
+# delays and resource utilization.
+
+.h2 FTP_PASSIVE
+# Set FTP_PASSIVE to TRUE if you want to use passive mode ftp transfers.
+# You might have to do this if you're behind a restrictive firewall.
+#FTP_PASSIVE:TRUE
+
+.h2 ENABLE_LYNXRC
+# The forms-based O'ptions menu shows a (!) marker beside items which are not
+# saved to ~/.lynxrc -- the reason for disabling some of these items is that
+# they are likely to cause confusion if they are read from the .lynxrc file for
+# each session.  However, they can be enabled or disabled using the
+# ENABLE_LYNXRC settings.  The default (compiled-in) settings are shown below.
+# The second column is the name by which a setting is saved to .lynxrc (which
+# is chosen where possible to correspond with lynx.cfg).  Use "OFF" to disable
+# writing a setting, "ON" to enable it.  Settings are read from .lynxrc after
+# the corresponding data from lynx.cfg, so they override lynx.cfg, which is
+# probably what users expect.
+#
+# Note that a few settings (Cookies and Show images) are comprised of more than
+# one lynx.cfg setting.
+.nf
+#ENABLE_LYNXRC:ACCEPT_ALL_COOKIES:ON
+#ENABLE_LYNXRC:ASSUME_CHARSET:OFF
+#ENABLE_LYNXRC:AUTO_SESSION:OFF
+#ENABLE_LYNXRC:BOOKMARK_FILE:ON
+#ENABLE_LYNXRC:CASE_SENSITIVE_SEARCHING:ON
+#ENABLE_LYNXRC:CHARACTER_SET:ON
+#ENABLE_LYNXRC:COOKIE_ACCEPT_DOMAINS:ON
+#ENABLE_LYNXRC:COOKIE_FILE:ON
+#ENABLE_LYNXRC:COOKIE_LOOSE_INVALID_DOMAINS:ON
+#ENABLE_LYNXRC:COOKIE_QUERY_INVALID_DOMAINS:ON
+#ENABLE_LYNXRC:COOKIE_REJECT_DOMAINS:ON
+#ENABLE_LYNXRC:COOKIE_STRICT_INVALID_DOMAINS:ON
+#ENABLE_LYNXRC:DIR_LIST_STYLE:ON
+#ENABLE_LYNXRC:DISPLAY:OFF
+#ENABLE_LYNXRC:EMACS_KEYS:ON
+#ENABLE_LYNXRC:FILE_EDITOR:ON
+#ENABLE_LYNXRC:FILE_SORTING_METHOD:ON
+#ENABLE_LYNXRC:FORCE_COOKIE_PROMPT:OFF
+#ENABLE_LYNXRC:FORCE_SSL_PROMPT:OFF
+#ENABLE_LYNXRC:FTP_PASSIVE:OFF
+#ENABLE_LYNXRC:HTML5_CHARSETS:OFF
+#ENABLE_LYNXRC:KBLAYOUT:ON
+#ENABLE_LYNXRC:KEYPAD_MODE:ON
+#ENABLE_LYNXRC:LINEEDIT_MODE:ON
+#ENABLE_LYNXRC:LOCALE_CHARSET:ON
+#ENABLE_LYNXRC:MAKE_LINKS_FOR_ALL_IMAGES:OFF
+#ENABLE_LYNXRC:MAKE_PSEUDO_ALTS_FOR_INLINES:OFF
+#ENABLE_LYNXRC:MULTI_BOOKMARK:ON
+#ENABLE_LYNXRC:NO_PAUSE:OFF
+#ENABLE_LYNXRC:PERSONAL_MAIL_ADDRESS:ON
+#ENABLE_LYNXRC:PREFERRED_CHARSET:ON
+#ENABLE_LYNXRC:PREFERRED_ENCODING:OFF
+#ENABLE_LYNXRC:PREFERRED_LANGUAGE:ON
+#ENABLE_LYNXRC:PREFERRED_MEDIA_TYPES:OFF
+#ENABLE_LYNXRC:RAW_MODE:OFF
+#ENABLE_LYNXRC:RUN_ALL_EXECUTION_LINKS:ON
+#ENABLE_LYNXRC:RUN_EXECUTION_LINKS_ON_LOCAL_FILES:ON
+#ENABLE_LYNXRC:SCROLLBAR:OFF
+#ENABLE_LYNXRC:SELECT_POPUPS:ON
+#ENABLE_LYNXRC:SEND_USERAGENT:OFF
+#ENABLE_LYNXRC:SESSION_FILE:OFF
+#ENABLE_LYNXRC:SET_COOKIES:OFF
+#ENABLE_LYNXRC:SHOW_COLOR:ON
+#ENABLE_LYNXRC:SHOW_CURSOR:ON
+#ENABLE_LYNXRC:SHOW_DOTFILES:ON
+#ENABLE_LYNXRC:SHOW_KB_RATE:OFF
+#ENABLE_LYNXRC:SUB_BOOKMARKS:ON
+#ENABLE_LYNXRC:TAGSOUP:OFF
+#ENABLE_LYNXRC:UNDERLINE_LINKS:OFF
+#ENABLE_LYNXRC:USER_MODE:ON
+#ENABLE_LYNXRC:SEND_USERAGENT:OFF
+#ENABLE_LYNXRC:USERAGENT:OFF
+#ENABLE_LYNXRC:VERBOSE_IMAGES:ON
+#ENABLE_LYNXRC:VI_KEYS:ON
+#ENABLE_LYNXRC:VISITED_LINKS:ON
+.fi
+
+.h1 External Programs
+# Any of the compiled-in pathnames of external programs can be overridden
+# by specifying the corresponding xxx_PATH variable.  If the variable is
+# given as an empty string, lynx will not use the program.  For a few cases,
+# there are internal functions which can be used instead.
+
+.h2 BZIP2_PATH
+# This is the path used for DIRED mode and web connections to compress a file
+# to ".bz2", e.g., the Unix command "bzip2".
+
+.h2 CHMOD_PATH
+# This is the path used for DIRED mode to change file protection, e.g., the
+# Unix command "chmod".
+#
+# Setting this to an empty string will let lynx use a built-in version.
+
+.h2 COMPRESS_PATH
+# This is the path used for DIRED mode and web connections to compress a file
+# to ".Z", e.g., the Unix command "compress".
+
+.h2 COPY_PATH
+# This is the path used for DIRED mode to copy a file, e.g., the
+# Unix command "cp".
+#
+# Setting this to an empty string will let lynx use a built-in version.
+
+.h2 GZIP_PATH
+# This is the path used for DIRED mode and web connections to compress a file
+# to ".gz", e.g., the Unix command "gzip".
+
+.h2 INFLATE_PATH
+# This is the path used for web connections to compress a file using "inflate"
+# compression.
+
+.h2 INSTALL_PATH
+# This is the path used for DIRED mode to install files, e.g., the
+# Unix command "install".
+
+.h2 MKDIR_PATH
+# This is the path used for DIRED mode to create a directory, e.g., the
+# Unix command "mkdir".
+#
+# Setting this to an empty string will let lynx use a built-in version.
+
+.h2 MV_PATH
+# This is the path used for DIRED mode to move a file, e.g., the
+# Unix command "mv".
+#
+# Setting this to an empty string will let lynx use a built-in version.
+
+.h2 RLOGIN_PATH
+# This is the path used for DIRED mode to login remotely, e.g., the
+# Unix command "rlogin".
+
+.h2 RMDIR_PATH
+# This is the path used for DIRED mode to remove a directory, e.g., the
+# Unix command "rmdir".
+#
+# Setting this to an empty string will let lynx use a built-in version.
+
+.h2 RM_PATH
+# This is the path used for DIRED mode to remove a file, e.g., the
+# Unix command "rm".
+#
+# Setting this to an empty string will let lynx use a built-in version.
+
+.h2 SETFONT_PATH
+# This is the path used for a command which can be used to load a console font
+# for the experimental font-switch feature, e.g., the program "setfont".
+
+.h2 TAR_PATH
+# This is the path used for DIRED mode to create a tar archive from one or more
+# files.
+
+.h2 TELNET_PATH
+# This is the path for a program which can be used to make a "telnet" connection
+# to a remote host.
+
+.h2 TN3270_PATH
+# This is the path for a program which can be used to make an "IBM 3270"
+# connection to a remote host.
+
+.h2 TOUCH_PATH
+# This is the path used for DIRED mode to update the modification time of a
+# file to the current time,, e.g., the Unix command "touch".
+#
+# Setting this to an empty string will let lynx use a built-in version.
+
+.h2 UNCOMPRESS_PATH
+# This is the path used for DIRED mode and web connections to decompress a file
+# with ".Z" suffix, e.g., the Unix command "uncompress".
+
+.h2 UNZIP_PATH
+# This is the path used for DIRED mode to extract files from a zip-archive the
+# program "unzip".
+
+.h2 UUDECODE_PATH
+# This is the path used for DIRED mode to extract files from uuencoded files
+# e.g., the program "uudecode".
+
+.h2 ZCAT_PATH
+# This is the path used for DIRED mode to decompress files, writing the result
+# to a pipe as part of a shell command, e.g., the program "zcat".
+
+.h2 ZIP_PATH
+# This is the path used for DIRED mode to create a zip-archive from one or more
+# files, e.g., the program "unzip".
+
+.h1 Interaction
+
+.h2 FORCE_SSL_PROMPT
+# If FORCE_SSL_PROMPT is set to "yes", then questionable conditions, such as
+# self-signed certificates will be ignored.  If set to "no", these will be
+# reported, but not attempted.  The default "prompt" permits the user to make
+# this choice on a case-by-case basis.
+#
+#FORCE_SSL_PROMPT:PROMPT
+
+.h2 FORCE_COOKIE_PROMPT
+# If FORCE_COOKIE_PROMPT is set to "yes", then questionable conditions, such as
+# cookies with invalid syntax will be ignored.  If set to "no", these will be
+# reported, but not attempted.  The default "prompt" permits the user to make
+# this choice on a case-by-case basis.
+#
+#FORCE_COOKIE_PROMPT:PROMPT
+
+.h2 SSL_CERT_FILE
+# Set SSL_CERT_FILE to the file that contains all valid CA certificates lynx
+# should accept, in case the $SSL_CERT_FILE environment variable is not set,
+# e.g.,
+#
+#SSL_CERT_FILE:/etc/ssl/certs/ca-certificates.crt
+#SSL_CERT_FILE:NULL
+
+.h1 Appearance
+
+.h2 SCREEN_SIZE
+# For win32, allow the console window to be resized to the given values.  This
+# requires PDCurses 2.5.  The values given are width,height.
+#SCREEN_SIZE:80,24
+
+.h2 NO_MARGINS
+# Disable left/right margins in the default style sheet.
+# This is the same as the command-line "-nomargins" option.
+#NO_MARGINS:FALSE
+
+.h2 NO_TITLE
+# Disable title and blank line from top of page.
+# This is the same as the command-line "-notitle" option.
+#NO_TITLE:FALSE
+
+.h1 External Programs
+
+.h2 SYSLOG_REQUESTED_URLS
+# Log the requested URLs using the syslog interface.
+#SYSLOG_REQUESTED_URLS:TRUE
+
+.h2 SYSLOG_TEXT
+# Add the given text to calls made to syslog, to distinguish Lynx from other
+# applications which use that interface.
+#SYSLOG_TEXT:
+
+.h1 Internal Behavior
+.h2 BROKEN_FTP_RETR
+# Some ftp servers are known to have a broken implementation of RETR.  If asked
+# to retrieve a directory, they get confused and fails subsequent commands such
+# as CWD and LIST.  Workaround: reconnect after a failed RETR, which is slow.
+#
+# Each BROKEN_FTP_RETR gives a string match for the reported FTP server version
+#BROKEN_FTP_RETR:ProFTPD 1.2.5
+#BROKEN_FTP_RETR:spftp/
+
+.h2 BROKEN_FTP_EPSV
+# Some ftp servers are known to have a broken implementation of EPSV.  The
+# server will hang for a long time when we attempt to connect after issuing
+# this command.   Workaround: do not use EPSV, just use PASV.
+#
+# Each BROKEN_FTP_EPSV gives a string match for the reported FTP server version
+#BROKEN_FTP_EPSV:(Version wu-2.6.2-12)
+
+.h1 Appearance
+.h2 FTP_FORMAT
+# FTP_FORMAT defines the display for remote files.
+# It uses the same "%" codes as LIST_FORMAT.
+#FTP_FORMAT:%d  %-16.16t %a  %K
+
+.h1 Internal Behavior
+
+.h2 STATUS_BUFFER_SIZE
+# STATUS_BUFFER_SIZE controls the size of the buffer used for the LYNXMESSAGES
+# special url.
+#
+# The default size is 40.
+#STATUS_BUFFER_SIZE:40
+
+.h2 MAX_URI_SIZE
+# MAX_URI_SIZE controls the size of the buffer used for parsing URIs, e.g., the
+# HREF value in an anchor.
+#
+# The default size is 8192.
+#MAX_URI_SIZE:8192
+
+.h1 Appearance
+.h2 UNIQUE_URLS
+# UNIQUE_URLS can be set to tell Lynx to check for duplicate link numbers in
+# the page and corresponding lists, and reusing the original link number.
+# This can be set via command-line "-unique-urls".
+#UNIQUE_URLS:FALSE
+
+.h1 Character Sets
+.h2 MESSAGE_LANGUAGE
+# MESSAGE_LANGUAGE can be set to set the LANG environment variable explicitly.
+# This is mainly useful in non-Unix environments, e.g., Windows, since normally
+# LC_ALL is set, overriding LANG (as well as the more apt LC_MESSAGES variable).
+#MESSAGE_LANGUAGE:
+
+.h2 CONV_JISX0201KANA
+# If CONV_JISX0201KANA is set, Lynx will convert JIS X0201 Kana to JIS X0208
+# Kana, i.e., convert half-width kana to full-width.
+#CONV_JISX0201KANA:TRUE
+
+.h1 External Programs
+.h2 WAIT_VIEWER_TERMINATION
+# The WAIT_VIEWER_TERMINATION is used in the Windows environment to tell Lynx
+# to wait until a viewer has terminated.
+#WAIT_VIEWER_TERMINATION:FALSE
+
+.h1 Mail-related
+.h2 BLAT_MAIL
+# BLAT_MAIL is used in the Win32 port.  It tells Lynx whether to use the
+# "blat" mailer, or the "sendmail" utility.  Normally the "blat" mailer is
+# used for Win32, because the sendmail look-alikes have fewer features.
+# This feature can also be set/reset via the command-line "-noblat" option.
+#
+# Blat is available from
+.url http://www.blat.net
+#
+# See also ALT_BLAT_MAIL and SYSTEM_MAIL flags.
+#BLAT_MAIL:TRUE
+
+.h2 ALT_BLAT_MAIL
+# BLAT_MAIL is used in the Win32 port.  It tells Lynx whether to use the
+# "blat" mailer, or the "blatj" utility.  This feature can also be set/reset
+# via the command-line "-altblat" option.
+#
+# Some users prefer blatj, which can handle Japanese characters.  It is
+# available from
+.url http://www.piedey.co.jp/blatj/
+# (caution - the page is in Japanese).
+#
+# See also BLAT_MAIL and SYSTEM_MAIL flags.
+#ALT_BLAT_MAIL:FALSE
diff --git a/lynx.hlp b/lynx.hlp
new file mode 100644
index 00000000..98d3af5a
--- /dev/null
+++ b/lynx.hlp
@@ -0,0 +1,1114 @@
+1 LYNX
+2 Name
+       lynx  - a general purpose distributed information browser for the World
+       Wide Web
+
+2 Synopsis
+       lynx [options] [path or URL]
+
+       lynx [options] [path or URL] -get_data
+       data
+       --
+
+       lynx [options] [path or URL] -post_data
+       data
+       --
+
+       Use "lynx -help" to display a complete list of current options.
+
+2 Description
+       Lynx is a fully-featured World Wide Web (WWW) client for users  running
+       cursor-addressable,   character-cell   display   devices  (e.g.,  vt100
+       terminals, vt100 emulators running on Windows 95/NT or Macintoshes,  or
+       any other "curses-oriented" display).  It will display hypertext markup
+       language (HTML) documents containing links to  files  residing  on  the
+       local  system,  as  well  as  files  residing on remote systems running
+       Gopher, HTTP, FTP, WAIS, and NNTP servers.  Current  versions  of  Lynx
+       run on Unix, VMS, Windows 95/NT, 386DOS and OS/2 EMX.
+
+       Lynx  can  be  used  to access information on the World Wide Web, or to
+       build information systems intended primarily  for  local  access.   For
+       example,  Lynx  has  been used to build several Campus Wide Information
+       Systems (CWIS).  In  addition,  Lynx  can  be  used  to  build  systems
+       isolated within a single LAN.
+
+2 Options
+       At  start  up, Lynx will load any local file or remote URL specified at
+       the command line.  For help with URLs, press "?"  or "H" while  running
+       Lynx.  Then follow the link titled, "Help on URLs."
+
+       If  more  than  one  local  file or remote URL is listed on the command
+       line, Lynx will open only the last interactively.   All  of  the  names
+       (local files and remote URLs) are added to the G)oto history.
+
+       Lynx  uses  only  long option names. Option names can begin with double
+       dash as well, underscores and dashes can be intermixed in option  names
+       (in  the reference below options are with one dash before them and with
+       underscores).
+
+       Lynx provides many command-line options.  Some options require a  value
+       (string,  number  or keyword).  These are noted in the reference below.
+       The other options set boolean values in the program.  There  are  three
+       types of boolean options: set, unset and toggle.  If no option value is
+       given, these have the obvious meaning: set (to true), unset (to false),
+       or  toggle  (between  true/false).  For any of these, an explicit value
+       can  be  given  in  different  forms  to  allow  for  operating  system
+       constraints, e.g.,
+              -center:off
+              -center=off
+              -center-
+       Lynx  recognizes  "1",  "+",  "on" and "true" for true values, and "0",
+       "-", "off" and "false"  for  false  values.   Other  option-values  are
+       ignored.
+
+       The  default boolean, number and string option values that are compiled
+       into Lynx are displayed in the help-message  provided  by  lynx  -help.
+       Some  of those may differ according to how Lynx was built; see the help
+       message itself for these values.  The -help option is processed in  the
+       third  pass of options-processing, so any option which sets a value, as
+       well as runtime configuration values are reflected in the help-message.
+
+       -      If  the  argument  is only `-', then Lynx expects to receive the
+              arguments from the standard input.  This is  to  allow  for  the
+              potentially  very  long command line that can be associated with
+              the -get_data or -post_data arguments (see below).  It can  also
+              be  used  to  avoid having sensitive information in the invoking
+              command line (which would be visible to other processes on  most
+              systems),  especially when the -auth or -pauth options are used.
+
+       -accept_all_cookies
+              accept all cookies.
+
+       -anonymous
+              apply   restrictions   for   anonymous   account,    see    also
+              -restrictions.
+
+       -assume_charset=MIMEname
+              charset for documents that don't specify it.
+
+       -assume_local_charset=MIMEname
+              charset  assumed for local files, i.e., files which Lynx creates
+              such as internal pages for the options menu.
+
+       -assume_unrec_charset=MIMEname
+              use this instead of unrecognized charsets.
+
+       -auth=ID:PASSWD
+              set authorization ID and password  for  protected  documents  at
+              startup.   Be  sure  to  protect any script files which use this
+              switch.
+
+       -base  prepend a request URL comment and BASE tag to text/html  outputs
+              for -source dumps.
+
+       -bibp=URL
+              specify a local bibp server (default http://bibhost/).
+
+       -blink forces  high  intensity  background  colors  for  color mode, if
+              available and supported by the terminal.  This  applies  to  the
+              slang  library  (for  a  few terminal emulators), or to OS/2 EMX
+              with ncurses.
+
+       -book  use the bookmark page as the startfile.  The default or  command
+              line  startfile  is  still  set for the Main screen command, and
+              will be used if the bookmark page is unavailable or blank.
+
+       -buried_news
+              toggles scanning of news articles  for  buried  references,  and
+              converts  them  to  news  links.   Not recommended because email
+              addresses enclosed in angle brackets will be converted to  false
+              news links, and uuencoded messages can be trashed.
+
+       -cache=NUMBER
+              set  the  NUMBER  of documents cached in memory.  The default is
+              10.
+
+       -case  enable case-sensitive string searching.
+
+       -center
+              Toggle center alignment in HTML TABLE.
+
+       -cfg=FILENAME
+              specifies a Lynx  configuration  file  other  than  the  default
+              lynx.cfg.
+
+       -child exit  on  left-arrow  in startfile, and disable save to disk and
+              associated print/mail options.
+
+       -child_relaxed
+              exit on left-arrow in startfile, but  allow  save  to  disk  and
+              associated print/mail options.
+
+       -cmd_log=FILENAME
+              write   keystroke   commands  and  related  information  to  the
+              specified file.
+
+       -cmd_script=FILENAME
+              read keystroke commands from the specified file.   You  can  use
+              the  data  written  using the -cmd_log option.  Lynx will ignore
+              other information which the command-logging may have written  to
+              the  logfile.  Each line of the command script contains either a
+              comment beginning with "#", or a keyword:
+
+              exit
+                 causes  the  script  to  stop,  and  forces  Lynx   to   exit
+                 immediately.
+
+              key
+                 the  character  value,  in  printable form.  Cursor and other
+                 special  keys  are  given  as  names,  e.g.,  "Down   Arrow".
+                 Printable  7-bit ASCII codes are given as-is, and hexadecimal
+                 values represent other 8-bit codes.
+
+              set
+                 followed by a "name=value" allows one to override values  set
+                 in the lynx.cfg file.
+
+       -color forces  color  mode  on,  if  available.   Default color control
+              sequences which work for many terminal types are assumed if  the
+              terminal  capability  description does not specify how to handle
+              color.  Lynx needs to be compiled with  the  slang  library  for
+              this flag, it is equivalent to setting the COLORTERM environment
+              variable.  (If color support is instead  provided  by  a  color-
+              capable  curses  library like ncurses, Lynx relies completely on
+              the terminal description to  determine  whether  color  mode  is
+              possible,  and this flag is not needed and thus unavailable.)  A
+              saved show_color=always setting  found  in  a  .lynxrc  file  at
+              startup  has the same effect.  A saved show_color=never found in
+              .lynxrc on startup is overridden by this flag.
+
+       -connect_timeout=N
+              Sets the connection timeout, where N is given in seconds.
+
+       -cookie_file=FILENAME
+              specifies a file to use to read cookies.  If none is  specified,
+              the  default  value  is  ~/.lynx_cookies  for  most systems, but
+              ~/cookies for MS-DOS.
+
+       -cookie_save_file=FILENAME
+              specifies a file to use to store cookies.  If none is specified,
+              the value given by -cookie_file is used.
+
+       -cookies
+              toggles handling of Set-Cookie headers.
+
+       -core  toggles forced core dumps on fatal errors.  Turn this option off
+              to ask Lynx to force a core dump if a fatal error occurs.
+
+       -crawl with -traversal, output each page to a file.  with -dump, format
+              output as with -traversal, but to the standard output.
+
+       -curses_pads
+              toggles   the   use  of  curses  "pad"  feature  which  supports
+              left/right scrolling of the display.  The  feature  is  normally
+              available  for curses configurations, but inactive.  To activate
+              it, use  the  "|"  character  or  the  LINEWRAP_TOGGLE  command.
+              Toggling this option makes the feature altogether unavailable.
+
+       -debug_partial
+              separate incremental display stages with MessageSecs delay
+
+       -delay add DebugSecs delay after each progress-message
+
+       -display=DISPLAY
+              set the display variable for X rexec-ed programs.
+
+       -display_charset=MIMEname
+              set the charset for the terminal output.
+
+       -dont_wrap_pre
+              inhibit wrapping of text in <pre> when -dump'ing and -crawl'ing,
+              mark wrapped lines in interactive session.
+
+       -dump  dumps the formatted output of  the  default  document  or  those
+              specified  on  the  command  line  to  standard  output.  Unlike
+              interactive mode, all documents are processed.  This can be used
+              in the following way:
+
+              lynx -dump http://www.subir.com/lynx.html
+
+       -editor=EDITOR
+              enable  external  editing,  using the specified EDITOR. (vi, ed,
+              emacs, etc.)
+
+       -emacskeys
+              enable emacs-like key movement.
+
+       -enable_scrollback
+              toggles compatibility with  communication  programs'  scrollback
+              keys (may be incompatible with some curses packages).
+
+       -error_file=FILE
+              define a file where Lynx will report HTTP access codes.
+
+       -exec  enable local program execution (normally not configured).
+
+       -fileversions
+              include all versions of files in local VMS directory listings.
+
+       -find_leaks
+              toggle memory leak-checking.  Normally this is not compiled-into
+              your executable, but when it  is,  it  can  be  disabled  for  a
+              session.
+
+       -force_empty_hrefless_a
+              force  HREF-less `A' elements to be empty (close them as soon as
+              they are seen).
+
+       -force_html
+              forces the first document to be interpreted as HTML.
+
+       -force_secure
+              toggles forcing of the secure flag for SSL cookies.
+
+       -forms_options
+              toggles whether the Options Menu is key-based or form-based.
+
+       -from  toggles transmissions of From headers.
+
+       -ftp   disable ftp access.
+
+       -get_data
+              properly formatted data for a get form  are  read  in  from  the
+              standard input and passed to the form.  Input is terminated by a
+              line that starts with `---'.
+
+       -head  send a HEAD request for the mime headers.
+
+       -help  print the Lynx command syntax usage message, and exit.
+
+       -hiddenlinks=[option]
+              control the display of hidden links.
+
+              merge
+                 hidden links show up as bracketed numbers  and  are  numbered
+                 together with other links in the sequence of their occurrence
+                 in the document.
+
+              listonly
+                 hidden links are shown only on  L)ist  screens  and  listings
+                 generated  by  -dump  or  from  the  P)rint  menu, but appear
+                 separately at the end of those lists.  This  is  the  default
+                 behavior.
+
+              ignore
+                 hidden links do not appear even in listings.
+
+       -historical
+              toggles use of `>' or `-->' as a terminator for comments.
+
+       -homepage=URL
+              set homepage separate from start page.
+
+       -image_links
+              toggles inclusion of links for all images.
+
+       -index=URL
+              set the default index file to the specified URL.
+
+       -ismap toggles  inclusion  of  ISMAP  links  when  client-side MAPs are
+              present.
+
+       -justify
+              do justification of text.
+
+       -link=NUMBER
+              starting count for lnk#.dat files produced by -crawl.
+
+       -listonly
+              for -dump, show only the list of links.
+
+       -localhost
+              disable URLs that point to remote hosts.
+
+       -locexec
+              enable local program execution from local files  only  (if  Lynx
+              was compiled with local execution enabled).
+
+       -lss=FILENAME
+              specify   filename   containing  color-style  information.   The
+              default is lynx.lss.  If you give an empty filename, lynx uses a
+              built-in  monochrome  scheme  which imitates the non-color-style
+              configuration.
+
+       -mime_header
+              prints the MIME header of a  fetched  document  along  with  its
+              source.
+
+       -minimal
+              toggles minimal versus valid comment parsing.
+
+       -nested_tables
+              toggles nested-tables logic (for debugging).
+
+       -newschunksize=NUMBER
+              number of articles in chunked news listings.
+
+       -newsmaxchunk=NUMBER
+              maximum news articles in listings before chunking.
+
+       -nobold
+              disable bold video-attribute.
+
+       -nobrowse
+              disable directory browsing.
+
+       -nocc  disable Cc: prompts for self copies of mailings.  Note that this
+              does not disable any CCs which are incorporated within a  mailto
+              URL or form ACTION.
+
+       -nocolor
+              force  color  mode off, overriding terminal capabilities and any
+              -color flags, COLORTERM variable, and saved .lynxrc settings.
+
+       -noexec
+              disable local program execution. (DEFAULT)
+
+       -nofilereferer
+              disable transmissions of Referer headers for file URLs.
+
+       -nolist
+              disable the link list feature in dumps.
+
+       -nolog disable mailing of error messages to document owners.
+
+       -nomargins
+              disable left/right margins in the default style sheet.
+
+       -nomore
+              disable -more- string in statusline messages.
+
+       -nonrestarting_sigwinch
+              This flag is not available on all  systems,  Lynx  needs  to  be
+              compiled  with  HAVE_SIGACTION defined.  If available, this flag
+              may cause Lynx to react more immediately to window changes  when
+              run within an xterm.
+
+       -nonumbers
+              disable    link-    and    field-numbering.     This   overrides
+              -number_fields and -number_links.
+
+       -nopause
+              disable forced pauses for statusline messages.
+
+       -noprint
+              disable most print functions.
+
+       -noredir
+              prevents automatic redirection and prints a message with a  link
+              to the new URL.
+
+       -noreferer
+              disable transmissions of Referer headers.
+
+       -noreverse
+              disable reverse video-attribute.
+
+       -nosocks
+              disable SOCKS proxy usage by a SOCKSified Lynx.
+
+       -nostatus
+              disable the retrieval status messages.
+
+       -notitle
+              disable title and blank line from top of page.
+
+       -nounderline
+              disable underline video-attribute.
+
+       -number_fields
+              force numbering of links as well as form input fields
+
+       -number_links
+              force numbering of links.
+
+       -partial
+              toggles display partial pages while loading.
+
+       -partial_thres=NUMBER
+              number  of  lines  to  render  before  repainting  display  with
+              partial-display logic
+
+       -passive-ftp
+              toggles passive ftp connections.
+
+       -pauth=ID:PASSWD
+              set authorization ID and password for a protected  proxy  server
+              at  startup.  Be sure to protect any script files which use this
+              switch.
+
+       -popup toggles handling  of  single-choice  SELECT  options  via  popup
+              windows or as lists of radio buttons.
+
+       -post_data
+              properly  formatted  data  for  a post form are read in from the
+              standard input and passed to the form.  Input is terminated by a
+              line that starts with `---'.
+
+       -preparsed
+              show  HTML  source  preparsed  and  reformatted  when  used with
+              -source or in source view.
+
+       -prettysrc
+              show HTML source view with lexical elements and tags in color.
+
+       -print enable print functions. (default)
+
+       -pseudo_inlines
+              toggles pseudo-ALTs for inline images with no ALT string.
+
+       -raw   toggles default setting of 8-bit character translations  or  CJK
+              mode for the startup character set.
+
+       -realm restricts access to URLs in the starting realm.
+
+       -read_timeout=N
+              Sets the read-timeout, where N is given in seconds.
+
+       -reload
+              flushes  the  cache  on  a proxy server (only the first document
+              affected).
+
+       -restrictions=[option][,option][,option]...
+              allows a list of services to be disabled selectively. Dashes and
+              underscores  in  option  names  can be intermixed. The following
+              list is printed if no options are specified.
+
+              all
+                 restricts all options listed below.
+
+              bookmark
+                 disallow changing the location of the bookmark file.
+
+              bookmark_exec
+                 disallow execution links via the bookmark file.
+
+              change_exec_perms
+                 disallow changing the eXecute permission on files (but  still
+                 allow  it  for  directories)  when  local  file management is
+                 enabled.
+
+              default
+                 same as command line  option  -anonymous.   Disables  default
+                 services  for anonymous users.  Set to all restricted, except
+                 for: inside_telnet, outside_telnet, inside_ftp,  outside_ftp,
+                 inside_rlogin,   outside_rlogin,  inside_news,  outside_news,
+                 telnet_port, jump, mail, print, exec, and goto.  The settings
+                 for  these,  as  well  as  additional  goto  restrictions for
+                 specific URL schemes that are also applied, are derived  from
+                 definitions within userdefs.h.
+
+              dired_support
+                 disallow local file management.
+
+              disk_save
+                 disallow saving to disk in the download and print menus.
+
+              dotfiles
+                 disallow access to, or creation of, hidden (dot) files.
+
+              download
+                 disallow  some  downloaders  in  the  download menu (does not
+                 imply disk_save restriction).
+
+              editor
+                 disallow external editing.
+
+              exec
+                 disable execution scripts.
+
+              exec_frozen
+                 disallow the user from changing the local execution option.
+
+              externals
+                 disallow some "EXTERNAL" configuration lines if  support  for
+                 passing  URLs  to  external  applications  (with  the  EXTERN
+                 command) is compiled in.
+
+              file_url
+                 disallow using G)oto, served links  or  bookmarks  for  file:
+                 URLs.
+
+              goto
+                 disable the `g' (goto) command.
+
+              inside_ftp
+                 disallow ftps for people coming from inside your domain (utmp
+                 required for selectivity).
+
+              inside_news
+                 disallow USENET news posting for people  coming  from  inside
+                 your domain (utmp required for selectivity).
+
+              inside_rlogin
+                 disallow  rlogins  for  people coming from inside your domain
+                 (utmp required for selectivity).
+
+              inside_telnet
+                 disallow telnets for people coming from  inside  your  domain
+                 (utmp required for selectivity).
+
+              jump
+                 disable the `j' (jump) command.
+
+              multibook
+                 disallow multiple bookmarks.
+
+              mail
+                 disallow mail.
+
+              news_post
+                 disallow USENET News posting.
+
+              options_save
+                 disallow saving options in .lynxrc.
+
+              outside_ftp
+                 disallow  ftps  for  people  coming  from outside your domain
+                 (utmp required for selectivity).
+
+              outside_news
+                 disallow USENET news reading and posting  for  people  coming
+                 from  outside  your  domain  (utmp required for selectivity).
+                 This restriction applies to "news", "nntp",  "newspost",  and
+                 "newsreply"   URLs,  but  not  to  "snews",  "snewspost",  or
+                 "snewsreply" in case they are supported.
+
+              outside_rlogin
+                 disallow rlogins for people coming from outside  your  domain
+                 (utmp required for selectivity).
+
+              outside_telnet
+                 disallow  telnets  for people coming from outside your domain
+                 (utmp required for selectivity).
+
+              print
+                 disallow most print options.
+
+              shell
+                 disallow shell escapes and lynxexec or lynxprog G)oto's.
+
+              suspend
+                 disallow Unix Control-Z suspends with escape to shell.
+
+              telnet_port
+                 disallow specifying a port in telnet G)oto's.
+
+              useragent
+                 disallow modifications of the User-Agent header.
+
+       -resubmit_posts
+              toggles forced resubmissions (no-cache)  of  forms  with  method
+              POST  when  the  documents  they  returned  are  sought with the
+              PREV_DOC command or from the History List.
+
+       -rlogin
+              disable recognition of rlogin commands.
+
+       -scrollbar
+              toggles showing scrollbar.
+
+       -scrollbar_arrow
+              toggles showing arrows at ends of the scrollbar.
+
+       -selective
+              require .www_browsable files to browse directories.
+
+       -session=FILENAME
+              resumes from specified file on startup and saves session to that
+              file on exit.
+
+       -sessionin=FILENAME
+              resumes session from specified file.
+
+       -sessionout=FILENAME
+              saves session to specified file.
+
+       -short_url
+              show  very  long URLs in the status line with "..." to represent
+              the portion which cannot be displayed.  The beginning and end of
+              the URL are displayed, rather than suppressing the end.
+
+       -show_cfg
+              Print the configuration settings, e.g., as read from "lynx.cfg",
+              and exit.
+
+       -show_cursor
+              If enabled the cursor will not  be  hidden  in  the  right  hand
+              corner  but  will  instead  be  positioned  at  the start of the
+              currently selected link.  Show cursor is the default for systems
+              without  FANCY_CURSES  capabilities.   The default configuration
+              can be changed in userdefs.h  or  lynx.cfg.   The  command  line
+              switch toggles the default.
+
+       -show_rate
+              If  enabled  the  transfer  rate  is  shown in bytes/second.  If
+              disabled, no transfer  rate  is  shown.   Use  lynx.cfg  or  the
+              options menu to select KB/second and/or ETA.
+
+       -soft_dquotes
+              toggles  emulation  of  the  old  Netscape  and Mosaic bug which
+              treated `>' as a co-terminator for double-quotes and tags.
+
+       -source
+              works the same as  dump  but  outputs  HTML  source  instead  of
+              formatted text.  For example
+
+              lynx -source . >foo.html
+
+              generates   HTML   source  listing  the  files  in  the  current
+              directory.  Each file is marked  by  an  HREF  relative  to  the
+              parent  directory.   Add  a  trailing  slash  to make the HREF's
+              relative to the current directory:
+
+              lynx -source ./ >foo.html
+
+       -stack_dump
+              disable SIGINT cleanup handler
+
+       -startfile_ok
+              allow non-http startfile and homepage with -validate.
+
+       -stderr
+              When dumping a document using -dump or  -source,  Lynx  normally
+              does  not  display  alert  (error)  messages that you see on the
+              screen in the status line.  Use the -stderr option to tell  Lynx
+              to write these messages to the standard error.
+
+       -stdin read the startfile from standard input (UNIX only).
+
+       -syslog=text
+              information for syslog call.
+
+       -syslog-urls
+              log requested URLs with syslog.
+
+       -tagsoup
+              initialize parser, using Tag Soup DTD rather than SortaSGML.
+
+       -telnet
+              disable recognition of telnet commands.
+
+       -term=TERM
+              tell  Lynx what terminal type to assume it is talking to.  (This
+              may be useful for remote  execution,  when,  for  example,  Lynx
+              connects  to  a remote TCP/IP port that starts a script that, in
+              turn, starts another Lynx process.)
+
+       -timeout=N
+              For win32, sets the network read-timeout, where N  is  given  in
+              seconds.
+
+       -tlog  toggles  between  using  a  Lynx  Trace Log and stderr for trace
+              output from the session.
+
+       -tna   turns on "Textfields Need Activation" mode.
+
+       -trace turns on Lynx trace mode.  Destination of trace  output  depends
+              on -tlog.
+
+       -trace_mask=value
+              turn  on  optional  traces, which may result in very large trace
+              files.  Logically OR the values to combine options:
+
+              1  SGML character parsing states
+
+              2  color-style
+
+              4  TRST (table layout)
+
+              8  configuration (lynx.cfg, .lynxrc,  .lynx-keymaps,  mime.types
+                 and mailcap contents)
+
+              16 binary string copy/append, used in form data construction.
+
+              32 cookies
+
+              64 character sets
+
+              128
+                 GridText parsing
+
+              256
+                 timing
+
+       -traversal
+              traverse  all http links derived from startfile.  When used with
+              -crawl, each link that begins with the same string as  startfile
+              is  output to a file, intended for indexing.  See CRAWL.announce
+              for more information.
+
+       -trim_input_fields
+              trim input text/textarea fields in forms.
+
+       -underline_links
+              toggles use of underline/bold attribute for links.
+
+       -underscore
+              toggles use of _underline_ format in dumps.
+
+       -unique_urls
+              check for duplicate link numbers in each page and  corresponding
+              lists, and reuse the original link number.
+
+       -use_mouse
+              turn  on  mouse  support, if available.  Clicking the left mouse
+              button on a link traverses it.  Clicking the right mouse  button
+              pops  back.   Click  on the top line to scroll up.  Click on the
+              bottom line to scroll down.  The first few positions in the  top
+              and  bottom  line may invoke additional functions.  Lynx must be
+              compiled with ncurses or slang  to  support  this  feature.   If
+              ncurses  is  used,  clicking  the  middle mouse button pops up a
+              simple menu.  Mouse clicks may only work reliably while Lynx  is
+              idle waiting for input.
+
+       -useragent=Name
+              set alternate Lynx User-Agent header.
+
+       -validate
+              accept  only  http  URLs  (for  validation).   Complete security
+              restrictions also are implemented.
+
+       -verbose
+              toggle [LINK], [IMAGE] and [INLINE] comments with  filenames  of
+              these images.
+
+       -version
+              print version information, and exit.
+
+       -vikeys
+              enable vi-like key movement.
+
+       -wdebug
+              enable  Waterloo  tcp/ip packet debug (print to watt debugfile).
+              This applies only  to  DOS  versions  compiled  with  WATTCP  or
+              WATT-32.
+
+       -width=NUMBER
+              number  of columns for formatting of dumps, default is 80.  This
+              is limited by the number of columns  that  Lynx  could  display,
+              typically 1024 (the MAX_LINE symbol).
+
+       -with_backspaces
+              emit backspaces in output if -dump'ing or -crawl'ing (like `man'
+              does)
+
+       -xhtml_parsing
+              tells Lynx that it can ignore certain tags which have no content
+              in an XHTML 1.0 document.  For example "<p/>" will be discarded.
+
+2 Commands
+       o  Use Up arrow and Down arrow to scroll through hypertext links.
+
+       o  Right arrow or Return will follow a highlighted hypertext link.
+
+       o  Left Arrow will retreat from a link.
+
+       o  Type "H" or "?" for  online  help  and  descriptions  of  key-stroke
+          commands.
+
+       o  Type  "K"  for  a  complete  list  of the current key-stroke command
+          mappings.
+
+2 Environment
+       In addition to various "standard" environment variables such  as  HOME,
+       PATH,  USER,  DISPLAY, TMPDIR, etc, Lynx utilizes several Lynx-specific
+       environment variables, if they exist.
+
+       Others may be created or modified by Lynx to pass data to  an  external
+       program, or for other reasons.  These are listed separately below.
+
+       See  also  the  sections  on  SIMULATED CGI SUPPORT and NATIVE LANGUAGE
+       SUPPORT, below.
+
+       Note:  Not all environment variables apply to all  types  of  platforms
+       supported  by  Lynx, though most do.  Feedback on platform dependencies
+       is solicited.
+
+       Environment Variables Used By Lynx:
+
+       COLORTERM           If set, color capability for the terminal is forced
+                           on  at  startup time.  The actual value assigned to
+                           the variable is ignored.   This  variable  is  only
+                           meaningful  if  Lynx  was  built  using  the  slang
+                           screen-handling library.
+
+       LYNX_CFG            This variable, if set, will  override  the  default
+                           location  and name of the global configuration file
+                           (normally,  lynx.cfg)  that  was  defined  by   the
+                           LYNX_CFG_FILE  constant  in  the  userdefs.h  file,
+                           during installation.  See the userdefs.h  file  for
+                           more information.
+
+       LYNX_HELPFILE       If set, this variable overrides the compiled-in URL
+                           and configuration file URL for the Lynx help  file.
+
+       LYNX_LOCALEDIR      If  set,  this  variable  overrides the compiled-in
+                           location of the  locale  directory  which  contains
+                           native language (NLS) message text.
+
+       LYNX_LSS            This  variable,  if  set, specifies the location of
+                           the  default  Lynx  character  style  sheet   file.
+                           [Currently  only meaningful if Lynx was built using
+                           experimental color style support.]
+
+       LYNX_SAVE_SPACE     This variable, if set, will  override  the  default
+                           path prefix for files saved to disk that is defined
+                           in the lynx.cfg  SAVE_SPACE:  statement.   See  the
+                           lynx.cfg file for more information.
+
+       LYNX_TEMP_SPACE     This  variable,  if  set, will override the default
+                           path prefix for temporary files  that  was  defined
+                           during  installation, as well as any value that may
+                           be assigned to the TMPDIR variable.
+
+       MAIL                This variable specifies the default inbox Lynx will
+                           check  for new mail, if such checking is enabled in
+                           the lynx.cfg file.
+
+       NEWS_ORGANIZATION   This variable, if set, provides the string used  in
+                           the  Organization:  header of USENET news postings.
+                           It will override the setting  of  the  ORGANIZATION
+                           environment  variable,  if  it is also set (and, on
+                           UNIX, the contents of an /etc/organization file, if
+                           present).
+
+       NNTPSERVER          If  set,  this  variable specifies the default NNTP
+                           server that will be used for  USENET  news  reading
+                           and posting with Lynx, via news: URL's.
+
+       ORGANIZATION        This  variable, if set, provides the string used in
+                           the Organization: header of USENET  news  postings.
+                           On  UNIX,  it  will  override  the  contents  of an
+                           /etc/organization file, if present.
+
+       PROTOCOL_proxy      Lynx supports the use of proxy servers that can act
+                           as firewall gateways and caching servers.  They are
+                           preferable  to  the  older  gateway  servers   (see
+                           WWW_access_GATEWAY,  below).  Each protocol used by
+                           Lynx, (http,  ftp,  gopher,  etc),  can  be  mapped
+                           separately  by setting environment variables of the
+                           form   PROTOCOL_proxy    (literally:    http_proxy,
+                           ftp_proxy,       gopher_proxy,       etc),       to
+                           "http://some.server.dom:port/".   See  Lynx   Users
+                           Guide for additional details and examples.
+
+       SSL_CERT_DIR        Set    to    the   directory   containing   trusted
+                           certificates.
+
+       SSL_CERT_FILE       Set to the full path and filename for your file  of
+                           trusted certificates.
+
+       WWW_access_GATEWAY  Lynx  still  supports  use of gateway servers, with
+                           the  servers  specified  via   "WWW_access_GATEWAY"
+                           variables  (where "access" is lower case and can be
+                           "http", "ftp", "gopher" or  "wais"),  however  most
+                           gateway  servers have been discontinued.  Note that
+                           you do not include a terminal `/' for gateways, but
+                           do   for   proxies   specified   by  PROTOCOL_proxy
+                           environment variables.  See Lynx  Users  Guide  for
+                           details.
+
+       WWW_HOME            This  variable,  if  set, will override the default
+                           startup  URL  specified  in   any   of   the   Lynx
+                           configuration files.
+
+       Environment Variables Set or Modified By Lynx:
+
+       LYNX_PRINT_DATE     This  variable is set by the Lynx p(rint) function,
+                           to  the  Date:  string  seen  in   the   document's
+                           "Information  about"  page  (= cmd), if any.  It is
+                           created for use by an external program, as  defined
+                           in  a  lynx.cfg  PRINTER: definition statement.  If
+                           the field does not  exist  for  the  document,  the
+                           variable is set to a null string under UNIX, or "No
+                           Date" under VMS.
+
+       LYNX_PRINT_LASTMOD  This variable is set by the Lynx p(rint)  function,
+                           to  the  Last  Mod:  string  seen in the document's
+                           "Information about" page (= cmd), if  any.   It  is
+                           created  for use by an external program, as defined
+                           in a lynx.cfg PRINTER:  definition  statement.   If
+                           the  field  does  not  exist  for the document, the
+                           variable is set to a null string under UNIX, or "No
+                           LastMod" under VMS.
+
+       LYNX_PRINT_TITLE    This  variable is set by the Lynx p(rint) function,
+                           to the Linkname:  string  seen  in  the  document's
+                           "Information  about"  page  (= cmd), if any.  It is
+                           created for use by an external program, as  defined
+                           in  a  lynx.cfg  PRINTER: definition statement.  If
+                           the field does not  exist  for  the  document,  the
+                           variable is set to a null string under UNIX, or "No
+                           Title" under VMS.
+
+       LYNX_PRINT_URL      This variable is set by the Lynx p(rint)  function,
+                           to   the   URL:   string  seen  in  the  document's
+                           "Information about" page (= cmd), if  any.   It  is
+                           created  for use by an external program, as defined
+                           in a lynx.cfg PRINTER:  definition  statement.   If
+                           the  field  does  not  exist  for the document, the
+                           variable is set to a null string under UNIX, or "No
+                           URL" under VMS.
+
+       LYNX_TRACE          If set, causes Lynx to write a trace file as if the
+                           -trace option were supplied.
+
+       LYNX_TRACE_FILE     If set, overrides the compiled-in name of the trace
+                           file,  which  is  either Lynx.trace or LY-TRACE.LOG
+                           (the latter on the DOS platform).  The  trace  file
+                           is in either case relative to the home directory.
+
+       LYNX_VERSION        This  variable  is  always  set by Lynx, and may be
+                           used by an external program to determine if it  was
+                           invoked  by  Lynx.   See  also  the comments in the
+                           distribution's sample mailcap file,  for  notes  on
+                           usage in such a file.
+
+       TERM                Normally,   this   variable  is  used  by  Lynx  to
+                           determine the terminal type being  used  to  invoke
+                           Lynx.  If, however, it is unset at startup time (or
+                           has the value "unknown"), or if the -term  command-
+                           line  option  is  used (see OPTIONS section above),
+                           Lynx will set or  modify  its  value  to  the  user
+                           specified  terminal  type  (for  the Lynx execution
+                           environment).  Note: If set/modified by  Lynx,  the
+                           values  of  the  LINES  and/or  COLUMNS environment
+                           variables may also be changed.
+
+2 Simulated Cgi Support
+       If built with the cgi-links option enabled, Lynx allows access to a cgi
+       script directly without the need for an http daemon.
+
+       When  executing  such  "lynxcgi  scripts"  (if  enabled), the following
+       variables may be set for simulating a CGI environment:
+
+       CONTENT_LENGTH
+
+       CONTENT_TYPE
+
+       DOCUMENT_ROOT
+
+       HTTP_ACCEPT_CHARSET
+
+       HTTP_ACCEPT_LANGUAGE
+
+       HTTP_USER_AGENT
+
+       PATH_INFO
+
+       PATH_TRANSLATED
+
+       QUERY_STRING
+
+       REMOTE_ADDR
+
+       REMOTE_HOST
+
+       REQUEST_METHOD
+
+       SERVER_SOFTWARE
+
+       Other environment variables are not inherited  by  the  script,  unless
+       they   are   provided   via  a  LYNXCGI_ENVIRONMENT  statement  in  the
+       configuration file.  See the lynx.cfg file, and  the  (draft)  CGI  1.1
+       Specification <http://Web.Golux.Com/coar/cgi/draft-coar-cgi-v11-00.txt>
+       for the definition and usage of these variables.
+
+       The CGI Specification, and other associated  documentation,  should  be
+       consulted for general information on CGI script programming.
+
+2 Native Language Support
+       If  configured  and  installed  with Native Language Support, Lynx will
+       display status and other messages in your local language.  See the file
+       ABOUT_NLS  in  the  source distribution, or at your local GNU site, for
+       more information about internationalization.
+
+       The following environment  variables  may  be  used  to  alter  default
+       settings:
+
+       LANG                This  variable,  if  set, will override the default
+                           message language.  It is an ISO 639 two-letter code
+                           identifying  the  language.  Language codes are NOT
+                           the same as the country codes given in ISO 3166.
+
+       LANGUAGE            This variable, if set, will  override  the  default
+                           message language.  This is a GNU extension that has
+                           higher priority for  setting  the  message  catalog
+                           than LANG or LC_ALL.
+
+       LC_ALL              and
+
+       LC_MESSAGES         These  variables,  if  set,  specify  the notion of
+                           native language formatting style.  They are POSIXly
+                           correct.
+
+       LINGUAS             This  variable,  if  set  prior  to  configuration,
+                           limits the installed languages to specific  values.
+                           It  is  a space-separated list of two-letter codes.
+                           Currently, it is hard-coded to a wish list.
+
+       NLSPATH             This variable, if set, is used as the  path  prefix
+                           for message catalogs.
+
+2 Notes
+       This  is the Lynx v2.8.7 Release; development is in progress for 2.8.8.
+
+       If you wish to contribute to the further development of Lynx, subscribe
+       to  our mailing list.  Send email to <lynx-dev-request@nongnu.org> with
+       "subscribe lynx-dev" as the only line in the body of your message.
+
+       Send bug reports, comments, suggestions to <lynx-dev@nongnu.org>  after
+       subscribing.
+
+       Unsubscribe  by  sending  email  to  <lynx-dev-request@nongnu.org> with
+       "unsubscribe lynx-dev" as the only line in the body  of  your  message.
+       Do not send the unsubscribe message to the lynx-dev list, itself.
+
+2 See Also
+       catgets(3),  curses(3),  environ(7),  execve(2),  ftp(1), gettext(GNU),
+       localeconv(3),   ncurses(3),   setlocale(3),   slang(?),    termcap(5),
+       terminfo(5), wget(GNU)
+
+       Note that man page availability and section numbering is somewhat platform
+       dependent, and may vary from the above references.
+
+       A section shown as (GNU), is intended to denote that the topic  may  be
+       available via an info page, instead of a man page (i.e., try "info subject",
+       rather than "man subject").
+
+       A section shown as (?) denotes that documentation on the topic  exists,
+       but  is  not part of an established documentation retrieval system (see
+       the distribution files associated with the topic, or contact your  System
+       Administrator for further information).
+
+2 Acknowledgments
+       Lynx  has  incorporated  code  from a variety of sources along the way.
+       The earliest versions of Lynx included code from Earl Fogel of  Comput-
+       ing  Services at the University of Saskatchewan, who implemented HYPER-
+       REZ in the Unix environment.  HYPERREZ was developed by Niel Larson  of
+       Think.com  and  served  as  the  model  for the early versions of Lynx.
+       Those versions also incorporated libraries from the Unix Gopher clients
+       developed  at  the  University  of Minnesota, and the later versions of
+       Lynx rely on the WWW client library code developed by  Tim  Berners-Lee
+       and  the  WWW  community.  Also a special thanks to Foteos Macrides who
+       ported much of Lynx to VMS and did or organized most of its development
+       since  the  departures of Lou Montulli and Garrett Blythe from the Uni-
+       versity of Kansas in the summer of 1994 through the release of  v2.7.2,
+       and  to  everyone  on the net who has contributed to Lynx's development
+       either directly (through patches, comments or bug reports) or indirect-
+       ly (through inspiration and development of other systems).
+
+2 Authors
+       Lou  Montulli,  Garrett  Blythe, Craig Lavender, Michael Grobe, Charles
+       Rezac
+       Academic Computing Services
+       University of Kansas
+       Lawrence, Kansas 66047
+
+       Foteos Macrides
+       Worcester Foundation for Biomedical Research
+       Shrewsbury, Massachusetts 01545
+
+       Thomas E. Dickey
+       <dickey@invisible-island.net>
diff --git a/lynx.man b/lynx.man
new file mode 100644
index 00000000..9666ed59
--- /dev/null
+++ b/lynx.man
@@ -0,0 +1,1224 @@
+.\" $LynxId: lynx.man,v 1.90 2012/02/05 19:09:07 tom Exp $
+.nr N -1
+.nr D 5
+.TH LYNX 1
+.SH NAME
+lynx \- a general purpose distributed information browser for the World Wide Web
+.SH SYNOPSIS
+.B lynx \fP[options] [path or URL]
+.sp
+.B lynx \fI[options] [path or URL]\fP \fB-get_data
+.br
+.I data
+.br
+.B --
+.sp
+.B lynx \fI[options] [path or URL]\fP \fB-post_data
+.br
+.I data
+.br
+.B --
+.PP
+Use "lynx -help" to display a complete list of current options.
+.SH DESCRIPTION
+.\" This defines appropriate quote strings for nroff and troff
+.ds lq \&"
+.ds rq \&"
+.if t .ds lq ``
+.if t .ds rq ''
+.\" Just in case these number registers aren't set yet...
+.if \nN==0 .nr N 10
+.if \nD==0 .nr D 5
+.hy 0
+.I
+Lynx
+is a fully-featured World Wide Web (WWW) client for users
+running cursor-addressable, character-cell display devices (e.g.,
+vt100 terminals, vt100 emulators running on Windows 95/NT or Macintoshes, or any
+other "curses-oriented" display).  It will display hypertext
+markup language (HTML) documents containing links to
+files residing on the local system, as well as files residing on
+remote systems running Gopher, HTTP, FTP, WAIS, and NNTP servers.
+Current versions of
+.I
+Lynx
+run on
+Unix, VMS, Windows 95/NT, 386DOS and OS/2 EMX.
+.PP
+.I
+Lynx
+can be used to access information on the World Wide Web, or
+to build information systems intended primarily for local access.
+For example,
+.I
+Lynx
+has been used to build several Campus Wide
+Information Systems (CWIS).  In addition,
+.I
+Lynx
+can be used to
+build systems isolated within a single LAN.
+.SH OPTIONS
+At start up, \fILynx\fR will load any local
+file or remote URL specified at the command
+line.  For help with URLs, press \fB"?"\fR
+or \fB"H"\fR while running \fILynx\fR.
+Then follow the link titled, "Help on URLs."
+.PP
+If more than one local file or remote URL is listed on the command line,
+\fILynx\fP will open only the last interactively.
+All of the names (local files and remote URLs) are added to the G)oto history.
+.PP
+\fILynx\fR uses only long option names. Option
+names can begin with double dash as well,
+underscores and dashes can be intermixed in
+option names (in the reference below options
+are with one dash before them and with underscores).
+.PP
+\fILynx\fR provides many command-line options.
+Some options require a value (string, number or keyword).
+These are noted in the reference below.
+The other options set boolean values in the program.
+There are three types of boolean options: set, unset and toggle.
+If no option value is given, these have the obvious meaning:
+set (to true), unset (to false), or toggle (between true/false).
+For any of these, an explicit value can be given in different
+forms to allow for operating system constraints,
+e.g.,
+.RS
+.nf
+\fB-center:off\fP
+\fB-center=off\fP
+\fB-center-\fP
+.fi
+.RE
+\fILynx\fR recognizes
+"1", "+", "on" and "true" for true values, and
+"0", "-", "off" and "false" for false values.
+Other option-values are ignored.
+.PP
+The default boolean, number and string option values that are compiled
+into \fILynx\fP are displayed in the help-message provided by \fBlynx -help\fP.
+Some of those may differ according to how \fILynx\fP was built;
+see the help message itself for these values.
+The \fB-help\fP option is processed in the third pass of options-processing,
+so any option which sets a value,
+as well as runtime configuration values are reflected in the help-message.
+.TP 7
+.B \-
+If the argument is only '-', then \fILynx\fP expects to receive
+the arguments from the standard input.  This is to allow for the
+potentially very long command line that can be associated
+with the \fB\-get_data\fR or \fB\-post_data\fR arguments (see below).
+It can also be used to avoid having sensitive information
+in the invoking command line (which would be visible to
+other processes on most systems), especially when
+the \fB\-auth\fR or \fB\-pauth\fR options are used.
+.TP
+.B \-accept_all_cookies
+accept all cookies.
+.TP
+.B \-anonymous
+apply restrictions for anonymous account, see also \fB\-restrictions\fR.
+.TP
+.B \-assume_charset\fR=\fIMIMEname
+charset for documents that don't specify it.
+.TP
+.B \-assume_local_charset\fR=\fIMIMEname
+charset assumed for local files,
+i.e., files which \fILynx\fP creates such as internal pages for the options menu.
+.TP
+.B \-assume_unrec_charset\fR=\fIMIMEname
+use this instead of unrecognized charsets.
+.TP
+.B \-auth\fR=\fIID\fR:\fIPASSWD
+set authorization ID and password for protected documents
+at startup.  Be sure to protect any script files which use
+this switch.
+.TP
+.B \-base
+prepend a request URL comment and BASE tag to text/html
+outputs for \fB\-source\fR dumps.
+.TP
+.B \-bibp\fR=\fIURL
+specify a local bibp server (default http://bibhost/).
+.TP
+.B \-blink
+forces high intensity background colors for color mode, if available
+and supported by the terminal.
+This applies to the \fBslang\fR library (for a few terminal emulators),
+or to OS/2 EMX with \fBncurses\fR.
+.TP
+.B \-book
+use the bookmark page as the startfile.  The default or command
+line startfile is still set for the Main screen command, and will
+be used if the bookmark page is unavailable or blank.
+.TP
+.B \-buried_news
+toggles scanning of news articles for buried references, and
+converts them to news links.  Not recommended because email
+addresses enclosed in angle brackets will be converted to
+false news links, and uuencoded messages can be trashed.
+.TP
+.B \-cache\fR=\fINUMBER
+set the NUMBER of documents cached in memory.
+The default is 10.
+.TP
+.B \-case
+enable case-sensitive string searching.
+.TP
+.B \-center
+Toggle center alignment in HTML TABLE.
+.TP
+.B \-cfg\fR=\fIFILENAME
+specifies a \fILynx\fP configuration file other than the default
+lynx.cfg.
+.TP
+.B \-child
+exit on left-arrow in startfile, and disable save to disk and associated
+print/mail options.
+.TP
+.B \-child_relaxed
+exit on left-arrow in startfile, but allow save to disk and associated
+print/mail options.
+.TP
+.B \-cmd_log\fR=\fIFILENAME
+write keystroke commands and related information to the specified file.
+.TP
+.B \-cmd_script\fR=\fIFILENAME
+read keystroke commands from the specified file.
+You can use the data written using the \fB\-cmd_log\fR option.
+\fILynx\fP will ignore other information which the command-logging may have
+written to the logfile.
+Each line of the command script contains either a comment beginning with "#",
+or a keyword:
+.RS
+.TP 3
+.B exit
+causes the script to stop, and forces \fILynx\fP to exit immediately.
+.TP
+.B key
+the character value, in printable form.
+Cursor and other special keys are given as names, e.g., "Down Arrow".
+Printable 7-bit ASCII codes are given as-is,
+and hexadecimal values represent other 8-bit codes.
+.TP
+.B set
+followed by a "name=value" allows one to override values set in the
+lynx.cfg file.
+.RE
+.TP
+.B \-color
+forces color mode on, if available.  Default color control sequences
+which work for many terminal types are assumed if the terminal
+capability description does not specify how to handle color.
+\fILynx\fP needs to be compiled with the \fBslang\fR library for this flag,
+it is equivalent to setting the \fBCOLORTERM\fR environment variable.
+(If color support is instead provided by a color-capable curses
+library like \fBncurses\fR, \fILynx\fP relies completely on the terminal
+description to determine whether color mode is possible, and
+this flag is not needed and thus unavailable.)
+A saved show_color=always setting found in a .lynxrc file at
+startup has the same effect.  A saved show_color=never found
+in .lynxrc on startup is overridden by this flag.
+.TP
+.B \-connect_timeout\fR=\fIN
+Sets the connection timeout, where N is given in seconds.
+.TP
+.B \-cookie_file\fR=\fIFILENAME
+specifies a file to use to read cookies.
+If none is specified, the default value is ~/.lynx_cookies
+for most systems, but ~/cookies for MS-DOS.
+.TP
+.B \-cookie_save_file\fR=\fIFILENAME
+specifies a file to use to store cookies.
+If none is specified, the value given by
+\fB-cookie_file\fR is used.
+.TP
+.B \-cookies
+toggles handling of Set-Cookie headers.
+.TP
+.B \-core
+toggles forced core dumps on fatal errors.
+Turn this option off to ask \fILynx\fP to force a core dump if a fatal error occurs.
+.TP
+.B \-crawl
+with \fB\-traversal,\fR output each page to a file.
+with \fB\-dump\fR, format output as with \fB\-traversal\fR,
+but to the standard output.
+.TP
+.B \-curses_pads
+toggles the use of curses "pad" feature which supports
+left/right scrolling of the display.
+The feature is normally available for curses configurations,
+but inactive.
+To activate it, use the "|" character or the LINEWRAP_TOGGLE command.
+Toggling this option makes the feature altogether unavailable.
+.TP
+.B \-debug_partial
+separate incremental display stages with MessageSecs delay
+.TP
+.B \-delay
+add DebugSecs delay after each progress-message
+.TP
+.B \-display\fR=\fIDISPLAY
+set the display variable for X rexec-ed programs.
+.TP
+.B \-display_charset\fR=\fIMIMEname
+set the charset for the terminal output.
+.TP
+.B \-dont_wrap_pre
+inhibit wrapping of text in <pre> when \fB\-dump\fR'ing and \fB\-crawl\fR'ing,
+mark wrapped lines in interactive session.
+.TP
+.B \-dump
+dumps the formatted output of the default document or those
+specified on the command line to standard output.
+Unlike interactive mode, all documents are processed.
+This can be used in the following way:
+.sp
+lynx \fB\-dump\fR http://www.subir.com/lynx.html
+.TP
+.B \-editor\fR=\fIEDITOR
+enable external editing, using the specified
+EDITOR. (vi, ed, emacs, etc.)
+.TP
+.B \-emacskeys
+enable emacs-like key movement.
+.TP
+.B \-enable_scrollback
+toggles compatibility with communication programs' scrollback keys
+(may be incompatible with some curses packages).
+.TP
+.B \-error_file\fR=\fIFILE
+define a file where \fILynx\fP will report HTTP access codes.
+.TP
+.B \-exec
+enable local program execution (normally not configured).
+.TP
+.B \-fileversions
+include all versions of files in local VMS directory listings.
+.TP
+.B \-find_leaks
+toggle memory leak-checking.
+Normally this
+is not compiled-into your executable, but when it is,
+it can be disabled for a session.
+.TP
+.B \-force_empty_hrefless_a
+force HREF-less 'A' elements to be empty (close them as soon as they are seen).
+.TP
+.B \-force_html
+forces the first document to be interpreted as HTML.
+.TP
+.B \-force_secure
+toggles forcing of the secure flag for SSL cookies.
+.TP
+.B \-forms_options
+toggles whether the Options Menu is key-based or form-based.
+.TP
+.B \-from
+toggles transmissions of From headers.
+.TP
+.B \-ftp
+disable ftp access.
+.TP
+.B \-get_data
+properly formatted data for a \fIget\fP form are read in from
+the standard input and passed to the form.
+Input is terminated by a line that starts with '---'.
+.TP
+.B \-head
+send a HEAD request for the mime headers.
+.TP
+.B \-help
+print the \fILynx\fP command syntax usage message, and exit.
+.TP
+.B \-hiddenlinks=[option]
+control the display of hidden links.
+.RS
+.TP 3
+.B merge
+hidden links show up as bracketed numbers
+and are numbered together with other links in the sequence of their
+occurrence in the document.
+.TP
+.B listonly
+hidden links are shown only on L)ist screens and listings generated by
+.B \-dump
+or from the P)rint menu, but appear separately at the end of those lists.
+This is the default behavior.
+.TP
+.B ignore
+hidden links do not appear even in listings.
+.RE
+.TP
+.B \-historical
+toggles use of '>' or '-->' as a terminator for comments.
+.TP
+.B \-homepage\fR=\fIURL
+set homepage separate from start page.
+.TP
+.B \-image_links
+toggles inclusion of links for all images.
+.TP
+.B \-index\fR=\fIURL
+set the default index file to the specified URL.
+.TP
+.B \-ismap
+toggles inclusion of ISMAP links when client-side
+MAPs are present.
+.TP
+.B \-justify
+do justification of text.
+.TP
+.B \-link\fR=\fINUMBER
+starting count for lnk#.dat files produced by \fB\-crawl\fR.
+.TP
+.B \-listonly
+for \fB-dump\fR, show only the list of links.
+.TP
+.B \-localhost
+disable URLs that point to remote hosts.
+.TP
+.B \-locexec
+enable local program execution from local files only (if
+\fILynx\fP was compiled with local execution enabled).
+.TP
+.B \-lss\fR=\fIFILENAME
+specify filename containing color-style information.
+The default is lynx.lss.
+If you give an empty filename, \fBlynx\fP uses a built-in monochrome
+scheme which imitates the non-color-style configuration.
+.TP
+.B \-mime_header
+prints the MIME header of a fetched document along with its
+source.
+.TP
+.B \-minimal
+toggles minimal versus valid comment parsing.
+.TP
+.B \-nested_tables
+toggles nested-tables logic (for debugging).
+.TP
+.B \-newschunksize\fR=\fINUMBER
+number of articles in chunked news listings.
+.TP
+.B \-newsmaxchunk\fR=\fINUMBER
+maximum news articles in listings before chunking.
+.TP
+.B \-nobold
+disable bold video-attribute.
+.TP
+.B \-nobrowse
+disable directory browsing.
+.TP
+.B \-nocc
+disable Cc: prompts for self copies of mailings.  Note
+that this does not disable any CCs which are incorporated
+within a mailto URL or form ACTION.
+.TP
+.B \-nocolor
+force color mode off, overriding terminal capabilities and any
+-color flags, COLORTERM variable, and saved .lynxrc settings.
+.TP
+.B \-noexec
+disable local program execution. (DEFAULT)
+.TP
+.B \-nofilereferer
+disable transmissions of Referer headers for file URLs.
+.TP
+.B \-nolist
+disable the link list feature in dumps.
+.TP
+.B \-nolog
+disable mailing of error messages to document owners.
+.TP
+.B \-nomargins
+disable left/right margins in the default style sheet.
+.TP
+.B \-nomore
+disable -more- string in statusline messages.
+.TP
+.B \-nonrestarting_sigwinch
+This flag is not available on all systems,
+\fILynx\fP needs to be compiled with HAVE_SIGACTION defined.
+If available, this flag \fImay\fR cause \fILynx\fP to react
+more immediately to window changes when run within
+an \fBxterm\fR.
+.TP
+.B \-nonumbers
+disable link- and field-numbering.
+This overrides \fB-number_fields\fR and \fB-number_links\fR.
+.TP
+.B \-nopause
+disable forced pauses for statusline messages.
+.TP
+.B \-noprint
+disable most print functions.
+.TP
+.B \-noredir
+prevents automatic redirection and prints a message with a
+link to the new URL.
+.TP
+.B \-noreferer
+disable transmissions of Referer headers.
+.TP
+.B \-noreverse
+disable reverse video-attribute.
+.TP
+.B \-nosocks
+disable SOCKS proxy usage by a SOCKSified \fILynx\fP.
+.TP
+.B \-nostatus
+disable the retrieval status messages.
+.TP
+.B \-notitle
+disable title and blank line from top of page.
+.TP
+.B \-nounderline
+disable underline video-attribute.
+.TP
+.B \-number_fields
+force numbering of links as well as form input fields
+.TP
+.B \-number_links
+force numbering of links.
+.TP
+.B \-partial
+toggles display partial pages while loading.
+.TP
+.B \-partial_thres\fR=\fINUMBER
+number of lines to render before repainting display
+with partial-display logic
+.TP
+.B \-passive-ftp
+toggles passive ftp connections.
+.TP
+.B \-pauth\fR=\fIID\fR:\fIPASSWD
+set authorization ID and password for a protected proxy
+server at startup.  Be sure to protect any script files
+which use this switch.
+.TP
+.B \-popup
+toggles handling of single-choice SELECT options via
+popup windows or as lists of radio buttons.
+.TP
+.B \-post_data
+properly formatted data for a \fIpost\fP form are read in from
+the standard input and passed to the form.
+Input is terminated by a line that starts with '---'.
+.TP
+.B \-preparsed
+show HTML source preparsed and reformatted when used with \fB\-source\fR
+or in source view.
+.TP
+.B \-prettysrc
+show HTML source view with lexical elements and tags in color.
+.TP
+.B \-print
+enable print functions. (default)
+.TP
+.B \-pseudo_inlines
+toggles pseudo-ALTs for inline images with no ALT string.
+.TP
+.B \-raw
+toggles default setting of 8-bit character translations
+or CJK mode for the startup character set.
+.TP
+.B \-realm
+restricts access to URLs in the starting realm.
+.TP
+.B \-read_timeout\fR=\fIN
+Sets the read-timeout, where N is given in seconds.
+.TP
+.B \-reload
+flushes the cache on a proxy server
+(only the first document affected).
+.TP
+.B \-restrictions\fR=\fI[option][,option][,option]...
+allows a list of services to be disabled
+selectively. Dashes and underscores in option names
+can be intermixed. The following list is printed
+if no options are specified.
+.RS
+.TP 3
+.B all
+restricts all options listed below.
+.TP
+.B bookmark
+disallow changing the location of the bookmark
+file.
+.TP
+.B bookmark_exec
+disallow execution links via the bookmark file.
+.TP
+.B change_exec_perms
+disallow changing the eXecute permission on files
+(but still allow it for directories) when local file
+management is enabled.
+.TP
+.B default
+same as command line option \fB\-anonymous\fR.
+Disables default services for anonymous users.
+Set to all restricted, except for:
+inside_telnet, outside_telnet,
+inside_ftp, outside_ftp,
+inside_rlogin, outside_rlogin,
+inside_news, outside_news, telnet_port,
+jump, mail, print, exec, and goto.
+The settings for these,
+as well as additional goto restrictions for
+specific URL schemes that are also applied,
+are derived from definitions within userdefs.h.
+.TP
+.B dired_support
+disallow local file management.
+.TP
+.B disk_save
+disallow saving to disk in the download and
+print menus.
+.TP
+.B dotfiles
+disallow access to, or creation of, hidden (dot) files.
+.TP
+.B download
+disallow some downloaders in the download menu (does not
+imply disk_save restriction).
+.TP
+.B editor
+disallow external editing.
+.TP
+.B exec
+disable execution scripts.
+.TP
+.B exec_frozen
+disallow the user from changing the local
+execution option.
+.TP
+.B externals
+disallow some "EXTERNAL" configuration lines
+if support for passing URLs to external
+applications (with the EXTERN command) is
+compiled in.
+.TP
+.B file_url
+disallow using G)oto, served links or bookmarks for
+file: URLs.
+.TP
+.B goto
+disable the 'g' (goto) command.
+.TP
+.B inside_ftp
+disallow ftps for people coming from inside your
+domain (utmp required for selectivity).
+.TP
+.B inside_news
+disallow USENET news posting for people coming
+from inside your domain (utmp required for selectivity).
+.TP
+.B inside_rlogin
+disallow rlogins for people coming from inside
+your domain (utmp required for selectivity).
+.TP
+.B inside_telnet
+disallow telnets for people coming from inside
+your domain (utmp required for selectivity).
+.TP
+.B jump
+disable the 'j' (jump) command.
+.TP
+.B multibook
+disallow multiple bookmarks.
+.TP
+.B mail
+disallow mail.
+.TP
+.B news_post
+disallow USENET News posting.
+.TP
+.B options_save
+disallow saving options in .lynxrc.
+.TP
+.B outside_ftp
+disallow ftps for people coming from outside your
+domain (utmp required for selectivity).
+.TP
+.B outside_news
+disallow USENET news reading and posting for people coming
+from outside your domain (utmp required for selectivity).
+This restriction applies to "news", "nntp", "newspost", and
+"newsreply" URLs, but not to "snews", "snewspost",
+or "snewsreply" in case they are supported.
+.TP
+.B outside_rlogin
+disallow rlogins for people coming from outside
+your domain (utmp required for selectivity).
+.TP
+.B outside_telnet
+disallow telnets for people coming from
+outside your domain (utmp required for selectivity).
+.TP
+.B print
+disallow most print options.
+.TP
+.B shell
+disallow shell escapes and lynxexec or lynxprog G)oto's.
+.TP
+.B suspend
+disallow Unix Control-Z suspends with escape to shell.
+.TP
+.B telnet_port
+disallow specifying a port in telnet G)oto's.
+.TP
+.B useragent
+disallow modifications of the User-Agent header.
+.RE
+.TP
+.B \-resubmit_posts
+toggles forced resubmissions (no-cache) of forms with
+method POST when the documents they returned are sought
+with the PREV_DOC command or from the History List.
+.TP
+.B \-rlogin
+disable recognition of rlogin commands.
+.TP
+.B \-scrollbar
+toggles showing scrollbar.
+.TP
+.B \-scrollbar_arrow
+toggles showing arrows at ends of the scrollbar.
+.TP
+.B \-selective
+require .www_browsable files to browse directories.
+.TP
+.B \-session\fR=\fIFILENAME
+resumes from specified file on startup and saves session to that file on exit.
+.TP
+.B \-sessionin\fR=\fIFILENAME
+resumes session from specified file.
+.TP
+.B \-sessionout\fR=\fIFILENAME
+saves session to specified file.
+.TP
+.B \-short_url
+show very long URLs in the status line with "..." to represent the
+portion which cannot be displayed.
+The beginning and end of the URL are displayed, rather than suppressing the end.
+.TP
+.B \-show_cfg
+Print the configuration settings, e.g., as read from "lynx.cfg", and exit.
+.TP
+.B \-show_cursor
+If enabled the cursor will not be hidden in the right hand
+corner but will instead be positioned at the start of the
+currently selected link.  Show cursor is the default for
+systems without FANCY_CURSES capabilities.  The default
+configuration can be changed in userdefs.h or lynx.cfg.
+The command line switch toggles the default.
+.TP
+.B \-show_rate
+If enabled the transfer rate is shown in bytes/second.
+If disabled, no transfer rate is shown.
+Use lynx.cfg or the options menu to select KB/second and/or ETA.
+.TP
+.B \-soft_dquotes
+toggles emulation of the old Netscape and Mosaic bug which
+treated '>' as a co-terminator for double-quotes and tags.
+.TP
+.B \-source
+works the same as dump but outputs HTML source instead of
+formatted text.
+For example
+.sp
+.RS
+lynx -source . >foo.html
+.RE
+.IP
+generates HTML source listing the files in the current directory.
+Each file is marked by an HREF relative to the parent directory.
+Add a trailing slash to make the HREF's relative to the current directory:
+.sp
+.RS
+lynx -source ./ >foo.html
+.RE
+.TP
+.B \-stack_dump
+disable SIGINT cleanup handler
+.TP
+.B \-startfile_ok
+allow non-http startfile and homepage with \fB\-validate\fR.
+.TP
+.B \-stderr
+When dumping a document using \fB\-dump\fR or \fB\-source\fR,
+\fILynx\fP normally does not display alert (error)
+messages that you see on the screen in the status line.
+Use the \fB\-stderr\fR option to tell \fILynx\fP to write these messages
+to the standard error.
+.TP
+.B \-stdin
+read the startfile from standard input
+(UNIX only).
+.TP
+.B \-syslog\fR=\fItext
+information for syslog call.
+.TP
+.B \-syslog-urls
+log requested URLs with syslog.
+.TP
+.B \-tagsoup
+initialize parser, using Tag Soup DTD rather than SortaSGML.
+.TP
+.B \-telnet
+disable recognition of telnet commands.
+.TP
+.B \-term\fR=\fITERM
+tell \fILynx\fP what terminal type to assume it is talking to.
+(This may be useful for remote execution, when, for example,
+\fILynx\fP connects to a remote TCP/IP port that starts a script that,
+in turn, starts another \fILynx\fP process.)
+.TP
+.B \-timeout\fR=\fIN
+For win32, sets the network read-timeout, where N is given in seconds.
+.TP
+.B \-tlog
+toggles between using a \fILynx\fP Trace Log and stderr for trace output
+from the session.
+.TP
+.B \-tna
+turns on "Textfields Need Activation" mode.
+.TP
+.B \-trace
+turns on \fILynx\fP trace mode.  Destination of trace output depends
+on \-tlog.
+.TP
+.B \-trace_mask\fR=\fIvalue
+turn on optional traces, which may result in very large trace files.
+Logically OR the values to combine options:
+.RS
+.TP 3
+.B 1
+SGML character parsing states
+.TP
+.B 2
+color-style
+.TP
+.B 4
+TRST (table layout)
+.TP
+.B 8
+configuration (lynx.cfg, .lynxrc, .lynx-keymaps, mime.types and mailcap contents)
+.TP
+.B 16
+binary string copy/append, used in form data construction.
+.TP
+.B 32
+cookies
+.TP
+.B 64
+character sets
+.TP
+.B 128
+GridText parsing
+.TP
+.B 256
+timing
+.RE
+.TP
+.B \-traversal
+traverse all http links derived from startfile.  When used with
+-crawl, each link that begins with the same string as startfile
+is output to a file, intended for indexing.  See CRAWL.announce
+for more information.
+.TP
+.B \-trim_input_fields
+trim input text/textarea fields in forms.
+.TP
+.B \-underline_links
+toggles use of underline/bold attribute for links.
+.TP
+.B \-underscore
+toggles use of _underline_ format in dumps.
+.TP
+.B \-unique_urls
+check for duplicate link numbers in
+each page and corresponding lists,
+and reuse the original link number.
+.TP
+.B \-use_mouse
+turn on mouse support, if available.
+Clicking the left mouse button on a link traverses it.
+Clicking the right mouse button pops back.
+Click on the top line to scroll up.
+Click on the bottom line to scroll down.
+The first few positions in the top and bottom line may invoke
+additional functions.
+\fILynx\fP must be compiled with \fBncurses\fR or \fBslang\fR to support this feature.
+If \fBncurses\fR is used, clicking the middle mouse button pops up
+a simple menu.  Mouse clicks may only work reliably while \fILynx\fP is
+idle waiting for input.
+.TP
+.B \-useragent=Name
+set alternate \fILynx\fP User-Agent header.
+.TP
+.B \-validate
+accept only http URLs (for validation).  Complete security
+restrictions also are implemented.
+.TP
+.B \-verbose
+toggle [LINK], [IMAGE] and [INLINE] comments with filenames of these images.
+.TP
+.B \-version
+print version information, and exit.
+.TP
+.B \-vikeys
+enable vi-like key movement.
+.TP
+.B \-wdebug
+enable Waterloo tcp/ip packet debug (print to watt debugfile).
+This applies only to DOS versions compiled with WATTCP or WATT-32.
+.TP
+.B \-width\fR=\fINUMBER
+number of columns for formatting of dumps, default is 80.
+This is limited by the number of columns that \fILynx\fP could display,
+typically 1024 (the \fIMAX_LINE\fP symbol).
+.TP
+.B \-with_backspaces
+emit backspaces in output if \fB\-dump\fR'ing or \fB\-crawl\fR'ing (like 'man' does)
+.TP
+.B \-xhtml_parsing
+tells \fILynx\fP that it can ignore certain tags which have no content
+in an XHTML 1.0 document.
+For example "<p/>" will be discarded.
+.SH COMMANDS
+.TP 3
+.B o
+Use \fBUp arrow\fR and \fBDown arrow\fR to scroll through hypertext links.
+.TP
+.B o
+\fBRight arrow\fR or \fBReturn\fR will follow a highlighted hypertext link.
+.TP
+.B o
+\fBLeft Arrow\fR will retreat from a link.
+.TP
+.B o
+Type \fB"H"\fR or \fB"?"\fR for online help and descriptions
+of key-stroke commands.
+.TP
+.B o
+Type \fB"K"\fR for a complete list of the current key-stroke
+command mappings.
+.SH ENVIRONMENT
+In addition to various "standard" environment variables such as
+\fBHOME\fR, \fBPATH\fR, \fBUSER\fR, \fBDISPLAY\fR, \fBTMPDIR\fR, \fBetc\fR,
+\fILynx\fR utilizes several \fILynx\fP-specific environment variables, if they
+exist.
+.PP
+Others may be created or modified by \fILynx\fR to pass data to an external
+program, or for other reasons.  These are listed separately below.
+.PP
+See also the sections on \fBSIMULATED CGI SUPPORT\fR and
+\fBNATIVE LANGUAGE SUPPORT\fR, below.
+.PP
+Note:  Not all environment variables apply to all types of platforms
+supported by \fILynx\fR, though most do.  Feedback on platform
+dependencies is solicited.
+.PP
+Environment Variables Used By \fILynx\fR:
+.TP 20
+.B COLORTERM
+If set, color capability for the terminal is forced on at startup time.
+The actual value assigned to the variable is ignored.  This variable is
+only meaningful if \fILynx\fR was built using the \fBslang\fR
+screen-handling library.
+.TP
+.B LYNX_CFG
+This variable, if set, will override the default location and name of
+the global configuration file (normally, \fBlynx.cfg\fR) that was defined
+by the LYNX_CFG_FILE constant in the userdefs.h file, during installation.
+See the userdefs.h file for more information.
+.TP
+.B LYNX_HELPFILE
+If set, this variable overrides the compiled-in URL and configuration
+file URL for the \fILynx\fP help file.
+.TP
+.B LYNX_LOCALEDIR
+If set, this variable overrides the compiled-in location of the
+locale directory which contains native language (NLS) message text.
+.TP
+.B LYNX_LSS
+This variable, if set, specifies the location of the default \fILynx\fR
+character style sheet file.  [Currently only meaningful if \fILynx\fR was
+built using experimental color style support.]
+.TP
+.B LYNX_SAVE_SPACE
+This variable, if set, will override the default path prefix for files
+saved to disk that is defined in the \fBlynx.cfg SAVE_SPACE:\fR statement.
+See the \fBlynx.cfg\fR file for more information.
+.TP
+.B LYNX_TEMP_SPACE
+This variable, if set, will override the default path prefix for temporary
+files that was defined during installation, as well as any value that may
+be assigned to the \fBTMPDIR\fR variable.
+.TP
+.B MAIL
+This variable specifies the default inbox \fILynx\fR will check for new
+mail, if such checking is enabled in the \fBlynx.cfg\fR file.
+.TP
+.B NEWS_ORGANIZATION
+This variable, if set, provides the string used in the \fBOrganization:\fR
+header of \fBUSENET\fR news postings.  It will override the setting of the
+ORGANIZATION environment variable, if it is also set (and, on \fBUNIX\fR,
+the contents of an /etc/organization file, if present).
+.TP
+.B NNTPSERVER
+If set, this variable specifies the default NNTP server that will be used
+for \fBUSENET\fR news reading and posting with \fILynx\fR, via news: URL's.
+.TP
+.B ORGANIZATION
+This variable, if set, provides the string used in the \fBOrganization:\fR
+header of \fBUSENET\fR news postings.  On \fBUNIX\fR, it will override the
+contents of an /etc/organization file, if present.
+.TP
+.B PROTOCOL_proxy
+\fILynx\fR supports the use of proxy servers that can act as firewall
+gateways and caching servers.  They are preferable to the older gateway
+servers (see WWW_access_GATEWAY, below).  Each protocol used by \fILynx\fR,
+(http, ftp, gopher, etc), can be mapped separately by setting environment
+variables of the form PROTOCOL_proxy (literally: http_proxy, ftp_proxy,
+gopher_proxy, etc), to "http://some.server.dom:port/".
+See \fBLynx Users Guide\fR for additional details and examples.
+.TP
+.B SSL_CERT_DIR
+Set to the directory containing trusted certificates.
+.TP
+.B SSL_CERT_FILE
+Set to the full path and filename for your file of trusted certificates.
+.TP
+.B WWW_access_GATEWAY
+\fILynx\fR still supports use of gateway servers, with the servers specified
+via "WWW_access_GATEWAY" variables (where "access" is lower case and can be
+"http", "ftp", "gopher" or "wais"), however most gateway servers have been
+discontinued.  Note that you do not include a terminal '/' for gateways, but
+do for proxies specified by PROTOCOL_proxy environment variables.
+See \fBLynx Users Guide\fR for details.
+.TP
+.B WWW_HOME
+This variable, if set, will override the default startup URL specified
+in any of the \fILynx\fR configuration files.
+.PP
+Environment Variables \fBSet\fR or \fBModified\fR By \fILynx\fR:
+.TP 20
+.B LYNX_PRINT_DATE
+This variable is set by the \fILynx\fR p(rint) function, to the
+\fBDate:\fR
+string seen in the document's "\fBInformation about\fR" page (= cmd),
+if any.
+It is created for use by an external program, as defined in a
+\fBlynx.cfg PRINTER:\fR definition statement.
+If the field does not exist for the document, the variable is set to a
+null string under \fBUNIX\fR, or "No Date" under \fBVMS\fR.
+.TP
+.B LYNX_PRINT_LASTMOD
+This variable is set by the \fILynx\fR p(rint) function, to the
+\fBLast Mod:\fR
+string seen in the document's "\fBInformation about\fR" page (= cmd),
+if any.
+It is created for use by an external program, as defined in a
+\fBlynx.cfg PRINTER:\fR definition statement.
+If the field does not exist for the document, the variable is set to a
+null string under \fBUNIX\fR, or "No LastMod" under \fBVMS\fR.
+.TP
+.B LYNX_PRINT_TITLE
+This variable is set by the \fILynx\fR p(rint) function, to the
+\fBLinkname:\fR
+string seen in the document's "\fBInformation about\fR" page (= cmd),
+if any.
+It is created for use by an external program, as defined in a
+\fBlynx.cfg PRINTER:\fR definition statement.
+If the field does not exist for the document, the variable is set to a
+null string under \fBUNIX\fR, or "No Title" under \fBVMS\fR.
+.TP
+.B LYNX_PRINT_URL
+This variable is set by the \fILynx\fR p(rint) function, to the
+\fBURL:\fR
+string seen in the document's "\fBInformation about\fR" page (= cmd),
+if any.
+It is created for use by an external program, as defined in a
+\fBlynx.cfg PRINTER:\fR definition statement.
+If the field does not exist for the document, the variable is set to a
+null string under \fBUNIX\fR, or "No URL" under \fBVMS\fR.
+.TP
+.B LYNX_TRACE
+If set, causes \fILynx\fR to write a trace file as if the \fB-trace\fR
+option were supplied.
+.TP
+.B LYNX_TRACE_FILE
+If set, overrides the compiled-in name of the trace file,
+which is either Lynx.trace or LY-TRACE.LOG (the latter on the DOS platform).
+The trace file is in either case relative to the home directory.
+.TP
+.B LYNX_VERSION
+This variable is always set by \fILynx\fR, and may be used by an external
+program to determine if it was invoked by \fILynx\fR.  See also the comments
+in the distribution's sample \fBmailcap\fR file, for notes on usage in such
+a file.
+.TP
+.B TERM
+Normally, this variable is used by \fILynx\fR to determine the terminal type
+being used to invoke \fILynx\fR.  If, however, it is unset at startup time
+(or has the value "unknown"),
+or if the \fB-term\fR command-line option is used (see \fBOPTIONS\fR section
+above), \fILynx\fR will set or modify its value to the user specified
+terminal type (for the \fILynx\fR execution environment).
+Note: If set/modified by \fILynx\fR, the values of the \fBLINES\fR and/or
+\fBCOLUMNS\fR environment variables may also be changed.
+.SH SIMULATED CGI SUPPORT
+If built with the \fBcgi-links\fR option enabled, \fILynx\fR allows access
+to a cgi script directly without the need for an http daemon.
+.PP
+When executing such "lynxcgi scripts" (if enabled), the following variables
+may be set for simulating a CGI environment:
+.PP
+.B CONTENT_LENGTH
+.PP
+.B CONTENT_TYPE
+.PP
+.B DOCUMENT_ROOT
+.PP
+.B HTTP_ACCEPT_CHARSET
+.PP
+.B HTTP_ACCEPT_LANGUAGE
+.PP
+.B HTTP_USER_AGENT
+.PP
+.B PATH_INFO
+.PP
+.B PATH_TRANSLATED
+.PP
+.B QUERY_STRING
+.PP
+.B REMOTE_ADDR
+.PP
+.B REMOTE_HOST
+.PP
+.B REQUEST_METHOD
+.PP
+.B SERVER_SOFTWARE
+.PP
+Other environment variables are not inherited by the script, unless they
+are provided via a LYNXCGI_ENVIRONMENT statement in the configuration file.
+See the \fBlynx.cfg\fR file, and the (draft) CGI 1.1 Specification
+<http://Web.Golux.Com/coar/cgi/draft-coar-cgi-v11-00.txt> for the
+definition and usage of these variables.
+.PP
+The CGI Specification, and other associated documentation, should be consulted
+for general information on CGI script programming.
+.SH NATIVE LANGUAGE SUPPORT
+If configured and installed with \fBNative Language Support\fR, \fILynx\fR
+will display status and other messages in your local language.  See the
+file \fBABOUT_NLS\fR in the source distribution, or at your local \fBGNU\fR
+site, for more information about internationalization.
+.PP
+The following environment variables may be used to alter default settings:
+.TP 20
+.B LANG
+This variable, if set, will override the default message language.  It
+is an \fBISO 639\fR two-letter code identifying the language.  Language
+codes are \fBNOT\fR the same as the country codes given in \fBISO 3166\fR.
+.TP
+.B LANGUAGE
+This variable, if set, will override the default message language.
+This is a \fBGNU\fR extension that has higher priority for setting
+the message catalog than \fBLANG\fR or \fBLC_ALL\fR.
+.TP
+.B LC_ALL
+and
+.TP
+.B LC_MESSAGES
+These variables, if set, specify the notion of native language
+formatting style.  They are \fBPOSIXly\fR correct.
+.TP
+.B LINGUAS
+This variable, if set prior to configuration, limits the installed
+languages to specific values.  It is a space-separated list of two-letter
+codes.  Currently, it is hard-coded to a wish list.
+.TP
+.B NLSPATH
+This variable, if set, is used as the path prefix for message catalogs.
+.SH NOTES
+This is the \fILynx\fP v2.8.7 Release; development is in progress for 2.8.8.
+.PP
+If you wish to contribute to the further development
+of \fILynx\fR, subscribe to our mailing list.  Send email to
+<lynx-dev-request@nongnu.org> with "subscribe lynx-dev" as the only line
+in the body of your message.
+.PP
+Send bug reports, comments, suggestions to <lynx-dev@nongnu.org>
+after subscribing.
+.PP
+Unsubscribe by sending email to <lynx-dev-request@nongnu.org> with
+"unsubscribe lynx-dev" as the only line in the body of your message.
+Do not send the unsubscribe message to the lynx-dev list, itself.
+.SH SEE ALSO
+.hy 0
+\fIcatgets\fR(3),
+\fIcurses\fR(3),
+\fIenviron\fR(7),
+\fIexecve\fR(2),
+\fIftp\fR(1),
+\fIgettext\fR(GNU),
+\fIlocaleconv\fR(3),
+\fIncurses\fR(3),
+\fIsetlocale\fR(3),
+\fIslang\fR(?),
+\fItermcap\fR(5),
+\fIterminfo\fR(5),
+\fIwget\fR(GNU)
+.hy 1
+.PP
+Note that man page availability and section numbering is somewhat
+platform dependent, and may vary from the above references.
+.PP
+A section shown as (GNU), is intended to denote that the topic
+may be available via an info page, instead of a man page (i.e., try
+"info subject", rather than "man subject").
+.PP
+A section shown as (?) denotes that documentation on the topic exists,
+but is not part of an established documentation retrieval system (see
+the distribution files associated with the topic, or contact your
+System Administrator for further information).
+.SH ACKNOWLEDGMENTS
+\fILynx\fP has incorporated code from a variety of sources along the way.
+The earliest versions of \fILynx\fP included code from Earl Fogel of Computing
+Services at the University of Saskatchewan, who implemented HYPERREZ
+in the Unix environment.  HYPERREZ was developed by Niel Larson of
+Think.com and served as the model for the early versions of \fILynx\fP.
+Those versions also incorporated libraries from the Unix Gopher clients
+developed at the University of Minnesota, and the later versions of
+\fILynx\fP rely on the WWW client library code developed by Tim Berners-Lee
+and the WWW community.  Also a special thanks to Foteos Macrides who ported
+much of \fILynx\fP to VMS and did or organized most of its development since the
+departures of Lou Montulli and Garrett Blythe from the University of Kansas
+in the summer of 1994 through the release of v2.7.2, and to everyone
+on the net who has contributed to \fILynx\fP's development either directly (through
+patches, comments or bug reports) or indirectly (through inspiration and
+development of other systems).
+.SH AUTHORS
+Lou Montulli, Garrett Blythe, Craig Lavender, Michael Grobe, Charles Rezac
+.br
+Academic Computing Services
+.br
+University of Kansas
+.br
+Lawrence, Kansas 66047
+.PP
+Foteos Macrides
+.br
+Worcester Foundation for Biomedical Research
+.br
+Shrewsbury, Massachusetts 01545
+.PP
+Thomas E. Dickey
+.br
+<dickey@invisible-island.net>
diff --git a/lynx.rsp b/lynx.rsp
new file mode 100644
index 00000000..b7f4f247
--- /dev/null
+++ b/lynx.rsp
@@ -0,0 +1,89 @@
+../obj/DefaultStyle.obj
+../obj/GridText.obj
+../obj/HTAabrow.obj
+../obj/HTAaprot.obj
+../obj/HTAautil.obj
+../obj/HTAccess.obj
+../obj/HTAlert.obj
+../obj/HTAnchor.obj
+../obj/HTAssoc.obj
+../obj/HTAtom.obj
+../obj/HTBtree.obj
+../obj/HTChunk.obj
+../obj/HTDOS.obj
+../obj/HTFile.obj
+../obj/HTFinger.obj
+../obj/HTFormat.obj
+../obj/HTFtp.obj
+../obj/HTFwriter.obj
+../obj/HTGopher.obj
+../obj/HTGroup.obj
+../obj/HTInit.obj
+../obj/HTLex.obj
+../obj/HTList.obj
+../obj/HTMIME.obj
+../obj/HTML.obj
+../obj/HTMLDTD.obj
+../obj/HTMLGen.obj
+../obj/HTNews.obj
+../obj/HTParse.obj
+../obj/HTPlain.obj
+../obj/HTRules.obj
+../obj/HTString.obj
+../obj/HTStyle.obj
+../obj/HTTP.obj
+../obj/HTTcp.obj
+../obj/HTTelnet.obj
+../obj/HTUU.obj
+../obj/HTWSRC.obj
+../obj/LYBookmark.obj
+../obj/LYCgi.obj
+../obj/LYCharSets.obj
+../obj/LYCharUtils.obj
+../obj/LYClean.obj
+../obj/LYCookie.obj
+../obj/LYCurses.obj
+../obj/LYDownload.obj
+../obj/LYEdit.obj
+../obj/LYEditmap.obj
+../obj/LYExit.obj
+../obj/LYExtern.obj
+../obj/LYForms.obj
+../obj/LYGetFile.obj
+../obj/LYHistory.obj
+../obj/LYJump.obj
+../obj/LYKeymap.obj
+../obj/LYLeaks.obj
+../obj/LYList.obj
+../obj/LYLocal.obj
+../obj/LYMail.obj
+../obj/LYMain.obj
+../obj/LYMainLoop.obj
+../obj/LYMap.obj
+../obj/LYNews.obj
+../obj/LYOptions.obj
+../obj/LYPrint.obj
+../obj/LYPrettySrc.obj
+../obj/LYReadCFG.obj
+../obj/LYSearch.obj
+../obj/LYSession.obj
+../obj/LYShowInfo.obj
+../obj/LYStrings.obj
+../obj/LYTraversal.obj
+../obj/LYUpload.obj
+../obj/LYmktime.obj
+../obj/LYrcFile.obj
+../obj/parsdate.obj
+../obj/SGML.obj
+../obj/TRSTable.obj
+../obj/UCAuto.obj
+../obj/UCAux.obj
+../obj/UCdomap.obj
+../obj/lyutils.obj
+../obj/xsystem.obj
+../curses/PDCURSES.LIB
+../curses/zdllbor.lib
+../curses/libeay32.lib
+../curses/ssleay32.lib
+../curses/iconv.lib
+../curses/libintl.lib
diff --git a/lynx_help/Lynx_users_guide.html b/lynx_help/Lynx_users_guide.html
new file mode 100644
index 00000000..b7fba2dc
--- /dev/null
+++ b/lynx_help/Lynx_users_guide.html
@@ -0,0 +1,4365 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<!-- $LynxId: Lynx_users_guide.html,v 1.116 2012/01/31 23:55:11 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Lynx Users Guide v2.8.7</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>Lynx Users Guide v2.8.7</h1>
+
+  <p>Lynx is a fully-featured <em>World Wide Web</em>
+  (<em>WWW</em>) client for users running cursor-addressable,
+  character-cell display devices (e.g., vt100 terminals, vt100
+  emulators running on PCs or Macs, or any other character-cell
+  display). It will display <em>Hypertext Markup Language</em>
+  (<em>HTML</em>) documents containing links to files on the local
+  system, as well as files on remote systems running <em>http</em>,
+  <em>gopher</em>, <em>ftp</em>, <em>wais</em>, <em>nntp</em>,
+  <em>finger</em>, or <em>cso</em>/<em>ph</em>/<em>qi</em> servers,
+  and services accessible via logins to <em>telnet</em>,
+  <em>tn3270</em> or <em>rlogin</em> accounts (see <a href=
+  "lynx_url_support.html">URL Schemes Supported by Lynx</a>).
+  <a href="#Hist">Current</a> versions of Lynx run on Unix, VMS,
+  Windows3.x/9x/NT, 386DOS and OS/2 EMX.</p>
+
+  <p>Lynx can be used to access information on the <em>WWW</em>, or
+  to build information systems intended primarily for local access.
+  For example, Lynx has been used to build several <em>Campus Wide
+  Information Systems</em> (<em>CWIS</em>). In addition, Lynx can
+  be used to build systems isolated within a single LAN.</p>
+
+  <h2 id="TOC"><a name="Contents" id="Contents"><em>Table of
+  Contents</em></a></h2>
+
+  <ul>
+    <li><a href="#Help" name="ToC-Help" id="ToC-Help">Lynx online
+    help</a></li>
+
+    <li><a href="#Local" name="ToC-Local" id="ToC-Local">Viewing
+    local files with Lynx</a></li>
+
+    <li><a href="#Leaving" name="ToC-Leaving" id=
+    "ToC-Leaving">Leaving Lynx</a></li>
+
+    <li><a href="#Remote" name="ToC-Remote" id=
+    "ToC-Remote">Starting Lynx with a Remote File</a></li>
+
+    <li><a href="#EnVar" name="ToC-EnVar" id="ToC-EnVar">Starting
+    Lynx with the WWW_HOME environment variable.</a></li>
+
+    <li><a href="#IntraDocNav" name="ToC-IntraDocNav" id=
+    "ToC-IntraDocNav">Navigating hypertext documents with
+    Lynx</a></li>
+
+    <li><a href="#Disposing" name="ToC-Disposing" id=
+    "ToC-Disposing">Printing, Mailing, and Saving rendered files to
+    disk.</a></li>
+
+    <li><a href="#LocalSource" name="ToC-LocalSource" id=
+    "ToC-LocalSource">Viewing the HTML document source and editing
+    documents</a></li>
+
+    <li><a href="#RemoteSource" name="ToC-RemoteSource" id=
+    "ToC-RemoteSource">Downloading and Saving source
+    files.</a></li>
+
+    <li><a href="#ReDo" name="ToC-ReDo" id="ToC-ReDo">Reloading
+    files and refreshing the display</a></li>
+
+    <li><a href="#Search" name="ToC-Search" id="ToC-Search">Lynx
+    searching commands</a></li>
+
+    <li><a href="#InteractiveOptions" name="ToC-InteractiveOptions"
+    id="ToC-InteractiveOptions">Lynx Options Menu</a></li>
+
+    <li><a href="#Mail" name="ToC-Mail" id="ToC-Mail">Comments and
+    mailto: links</a></li>
+
+    <li><a href="#News" name="ToC-News" id="ToC-News">USENET News
+    posting</a></li>
+
+    <li><a href="#Bookmarks" name="ToC-Bookmarks" id=
+    "ToC-Bookmarks">Lynx bookmarks</a></li>
+
+    <li><a href="#Jumps" name="ToC-Jumps" id="ToC-Jumps">Jump
+    command</a></li>
+
+    <li><a href="#DirEd" name="ToC-DirEd" id="ToC-DirEd">Directory
+    Editing</a></li>
+
+    <li><a href="#ColorMouse" name="ToC-ColorMouse" id=
+    "ToC-ColorMouse">Using Color &amp; the Mouse</a></li>
+
+    <li><a href="#MiscKeys" name="ToC-MiscKeys" id=
+    "ToC-MiscKeys">Scrolling and Other useful commands</a></li>
+
+    <li><a href="#Forms" name="ToC-Forms" id="ToC-Forms">Lynx and
+    HTML Forms</a> | <a href="#Images" name="ToC-Images" id=
+    "ToC-Images">Lynx and HTML Images</a></li>
+
+    <li><a href="#Tables" name="ToC-Tables" id="ToC-Tables">Lynx
+    and HTML Tables</a> | <a href="#Tabs" name="ToC-Tabs" id=
+    "ToC-Tabs">Lynx and HTML Tabs</a></li>
+
+    <li><a href="#Frames" name="ToC-Frames" id="ToC-Frames">Lynx
+    and HTML Frames</a> | <a href="#Banners" name="ToC-Banners" id=
+    "ToC-Banners">Lynx and HTML Banners</a></li>
+
+    <li><a href="#Footnotes" name="ToC-Footnotes" id=
+    "ToC-Footnotes">Lynx and HTML Footnotes</a> | <a href="#Notes"
+    name="ToC-Notes" id="ToC-Notes">Lynx and HTML Notes</a></li>
+
+    <li><a href="#Lists" name="ToC-Lists" id="ToC-Lists">Lynx and
+    HTML Lists</a></li>
+
+    <li><a href="#Quotes" name="ToC-Quotes" id="ToC-Quotes">Lynx
+    and HTML Quotes</a></li>
+
+    <li><a href="#Eightbit" name="ToC-Eightbit" id=
+    "ToC-Eightbit">Lynx and HTML Internationalization: 8bit,
+    UNICODE, etc.</a></li>
+
+    <li><a href="#USEMAP" name="ToC-USEMAP" id="ToC-USEMAP">Lynx
+    and Client-Side-Image-Maps</a></li>
+
+    <li><a href="#Refresh" name="ToC-Refresh" id="ToC-Refresh">Lynx
+    and Client-Side-Pull</a></li>
+
+    <li><a href="#Cookies" name="ToC-Cookies" id="ToC-Cookies">Lynx
+    and State Management</a> (Me want <em>cookie</em>!)</li>
+
+    <li><a href="#Cache" name="ToC-Cache" id="ToC-Cache">Lynx and
+    Cached Documents</a></li>
+
+    <li><a href="#Sessions" name="ToC-Sessions" id=
+    "ToC-Sessions">Lynx and Sessions</a></li>
+
+    <li><a href="#Invoking" name="ToC-Invoking" id=
+    "ToC-Invoking">The Lynx command line</a></li>
+
+    <li><a href="#Environment" name="ToC-Environment" id=
+    "ToC-Environment">Environment variables used by Lynx</a></li>
+
+    <li><a href="#lynx.cfg" name="ToC-lynx.cfg" id=
+    "ToC-lynx.cfg">Main configuration file lynx.cfg</a></li>
+
+    <li><a href="#Hist" name="ToC-Hist" id="ToC-Hist">Lynx
+    development history</a></li>
+  </ul>
+
+  <h2 id="id-Help"><a name="Help" id="Help"><em>Lynx online
+  help</em></a></h2>
+
+  <p>Online help is available while viewing any document. Press the
+  '<em>?</em>' or '<em>H</em>' key (or the '<em>h</em>' key if
+  vi-like key movement is not on) to see a list of help topics. See
+  the section titled <a href="#IntraDocNav">Navigating hypertext
+  documents with Lynx</a> for information on navigating through the
+  help files.</p>
+
+  <p>In addition, a summary description of all the Lynx keystroke
+  commands and their key bindings is available by pressing the
+  '<em>K</em>' key (or the '<em>k</em>' key if vi-like key movement
+  is not on).</p>
+
+  <p>If you want to recall recent status-line messages, you can do
+  so by entering the `g' command, followed by `LYNXMESSAGES:'.</p>
+
+  <p>[<a href="#ToC-Help">ToC</a>]</p>
+
+  <h2 id="id-Local"><a name="Local" id="Local"><em>Viewing local
+  files with Lynx</em></a></h2>
+
+  <p>Lynx can be started by entering the Lynx command along with
+  the name of a file to display. For example these commands could
+  all be used to display an arbitrary ASCII text or HTML file:</p>
+
+  <dl>
+    <dt>UNIX</dt>
+
+    <dd><code>lynx filename</code></dd>
+
+    <dd><code>lynx /home/my-dir/filename</code></dd>
+
+    <dd><code>lynx ~/filename</code></dd>
+
+    <dt>VMS</dt>
+
+    <dd><code>lynx filename</code></dd>
+
+    <dd><code>lynx dua5:[my-directory]filename</code></dd>
+
+    <dd><code>lynx /dua5/my-directory/filename</code></dd>
+
+    <dd><code>lynx ~/filename</code></dd>
+
+    <dd><code>lynx sys$login:filename</code></dd>
+
+    <dd><code>lynx /sys$login/filename</code></dd>
+
+    <dt>Win32/DOS</dt>
+
+    <dd><code>lynx file:///filename</code></dd>
+
+    <dd><code>lynx filename</code></dd>
+
+    <dd><code>lynx c:/dir/filename</code></dd>
+
+    <dd><code>lynx //n/dir/filename</code></dd>
+  </dl>
+
+  <p>When executed, Lynx will clear the screen and display as much
+  of the specified file as will fit on the screen. Pressing a
+  <em>down-arrow</em> will bring up the next screen, and pressing
+  an <em>up-arrow</em> will bring up the previous screen. If no
+  file is specified at startup, a default file will be displayed,
+  depending on settings e.g., in <em>lynx.cfg</em>.</p>
+
+  <p>Lynx will display local files written in the <em>HyperText
+  Markup Language</em> (<em>HTML</em>), if the file's name ends
+  with the characters <em>.html</em>, <em>.htm</em>,
+  <em>.shtml</em>, <em>.htmlx</em>, <em>.html3</em>, or
+  <em>.ht3</em>. HTML is a file format that allows users to create
+  a file that contains (among other things) hypertext links to
+  other files. Several files linked together may be described as a
+  <em>hypertext document</em>. If the filename does not have one of
+  the suffixes mapped by Lynx to HTML, the <em>-force_html</em>
+  command line option can be included to force treatment of the
+  file as hypertext.</p>
+
+  <p>When Lynx displays an HTML file, it shows links as "bold face"
+  text, except for one link, which is shown as "highlighted" text.
+  Whether "boldface" or "highlighted" text shows up as reverse
+  video, boldface type, or a color change, etc. depends on the
+  display device being used (and the way in which that device has
+  been configured). Lynx has no control over the exact presentation
+  of links.</p>
+
+  <p>The one link displayed as "highlighted" text is the currently
+  "selected" link. Lynx will display the file associated with the
+  selected link when a <em>right-arrow</em> or a <em>Return</em>
+  key is pressed. To select a particular link, press the
+  <em>up-arrow</em> or <em>down-arrow</em> keys until the desired
+  link becomes "highlighted," and then press the
+  <em>right-arrow</em> or <em>Return</em> key to view the linked
+  information. Information included in the HTML file tells Lynx
+  where to find the linked file and what kind of server will
+  provide it (i.e., HTTP, Gopher, etc.).</p>
+
+  <p>Lynx renders HTML files and saves the rendition (and the
+  source, if so configured in the <a href="#lynx.cfg">lynx.cfg</a>
+  file) for initial display and should you select the link again.
+  If you do select a link again and have reason to desire a new
+  fetch and rendering of the file, use the NOCACHE command,
+  normally mapped to '<em>x</em>' and '<em>X</em>', instead of the
+  <em>right-arrow</em> or <em>Return</em> key when positioned on
+  the link. You also can force a new fetch and rendering of the
+  currently displayed document via the RELOAD command, normally
+  mapped to <em>Control-R</em>.</p>
+
+  <p>When a binary file is encountered Lynx will ask the user if
+  he/she wishes to download the file or cancel. If the user selects
+  '<em>D'</em> for download, Lynx will transfer the file into a
+  temporary location and present the user with a list of options.
+  The only default option is <em>Save to disk</em>, which is
+  disabled if Lynx is running in anonymous mode. Additional
+  download methods may be defined in the <a href=
+  "#lynx.cfg">lynx.cfg</a> file. Programs like kermit, zmodem and
+  FTP are some possible options.</p>
+
+  <p>[<a href="#ToC-Local">ToC</a>]</p>
+
+  <h2 id="id-Leaving"><a name="Leaving" id="Leaving"><em>Leaving
+  Lynx</em></a></h2>
+
+  <p>To exit Lynx use the '<em>q</em>' command. You will be asked
+  whether you really want to quit. Answering '<em>y</em>' will exit
+  and '<em>n</em>' will return you to the current document. Use
+  '<em>Q</em>' or <em>Control-D</em> to quit without
+  verification.</p>
+
+  <p>[<a href="#ToC-Leaving">ToC</a>]</p>
+
+  <h2 id="id-Remote"><a name="Remote" id="Remote"><em>Starting Lynx
+  with a Remote File</em></a></h2>
+
+  <p>If you wish to view a remote file (that is, a file residing on
+  some computer system other than the one upon which you are
+  running Lynx) without first viewing a local file, you must
+  identify that file by using a Uniform Resource Locator (URL).
+  URLs take the general form:</p>
+
+  <p><code>PROTOCOL :// HOST / PATH</code></p>
+
+  <p>where</p>
+
+  <dl>
+    <dt><code>PROTOCOL</code></dt>
+
+    <dd>identifies the communications protocol (<em>scheme</em>)
+    used by the server that will provide the file. As mentioned
+    earlier, Lynx (and any WWW client) can interact with a variety
+    of servers, each with its own protocol.</dd>
+
+    <dt><code>HOST</code></dt>
+
+    <dd>is the Internet address of the computer system on which the
+    server is running, and</dd>
+
+    <dt><code>PATH</code></dt>
+
+    <dd>is a scheme-specific field which for some schemes may
+    correspond to a directory path and/or filename.</dd>
+  </dl>Here are some sample URLs.
+
+  <dl>
+    <dt>HTTP (HyperText Transfer Protocol)</dt>
+
+    <dd><code>http://www.subir.com/lynx.html</code></dd>
+
+    <dt>Gopher</dt>
+
+    <dd><code>gopher://gopher.micro.umn.edu/11/</code></dd>
+
+    <dt>FTP (File Transfer Protocol)</dt>
+
+    <dd><code>ftp://ftp2.cc.ukans.edu/pub/lynx/README</code></dd>
+
+    <dt>WAIS (Wide Area Information Service protocol)</dt>
+
+    <dd><code>wais://cnidr.org/directory-of-servers</code></dd>
+
+    <dt>A URL may be specified to Lynx on the command line, as
+    in:</dt>
+
+    <dd><code>lynx
+    http://kufacts.cc.ukans.edu/cwis/kufacts_start.html</code></dd>
+  </dl>Lynx also will attempt to create a complete URL if you
+  include adequate portions of it in the startfile argument. For
+  example:<br>
+  <pre>
+1234.6789.1234.6789.1234.6789.1234.6789.1234.6789.1234.6789.1234.6789.1234.6789
+                 <em>wfbr</em>          will be expanded to:
+      <em>http://www.wfbr.edu/</em>     and:
+             <em>ftp.more.net/pub</em>  will be expanded to:
+       <em>ftp://ftp.more.net/pub</em>
+</pre>See <a href="lynx_url_support.html">URL Schemes Supported by
+Lynx</a> for more detailed information.
+
+  <p>[<a href="#ToC-Remote">ToC</a>]</p>
+
+  <h2 id="id-EnVar"><a name="EnVar" id="EnVar"><em>Starting Lynx
+  with the WWW_HOME environment variable.</em></a></h2>
+
+  <p>You may also specify a starting file for Lynx using the
+  WWW_HOME environment variable,</p>
+
+  <dl>
+    <dt>UNIX</dt>
+
+    <dd>
+      <dl>
+        <dt>ksh</dt>
+
+        <dd><code>export WWW_HOME=http://www.w3.org/</code></dd>
+
+        <dt>csh</dt>
+
+        <dd><code>setenv WWW_HOME http://www.w3.org/</code></dd>
+      </dl>
+    </dd>
+
+    <dt>VMS</dt>
+
+    <dd><code>define "WWW_HOME" "http://www.w3.org/"</code></dd>
+
+    <dt>win32</dt>
+
+    <dd><code>WWW_HOME=http://www.w3.org/ [or in
+    registry]</code></dd>
+  </dl>Note that on VMS the double-quoting <em>must</em> be
+  included to preserve casing.
+
+  <p>[<a href="#ToC-EnVar">ToC</a>]</p>
+
+  <h2 id="id-IntraDocNav"><a name="IntraDocNav" id=
+  "IntraDocNav"><em>Navigating hypertext documents with
+  Lynx</em></a></h2>
+
+  <p>The process of moving within a hypertext web, selecting and
+  displaying links is known as "navigation." With Lynx almost all
+  navigation can be accomplished with the arrow keys and the
+  numeric keypad.</p>
+  <pre>
+                                       +-------+-------+-------+
+                                       | TOP   |  /|\  | Page  |
+              arrow keys               | of    |   |   | UP    |
+                                       | text 7|   |  8|      9|
+              +---------+              +-------+-------+-------+
+              | SELECT  |              |       |       |       |
+              | prev /|\|              | &lt;---  |       |  ---&gt; |
+              | link  | |              |      4|      5|      6|
+    +---------+---------+---------+    +-------+-------+-------+
+    |    BACK | SELECT  | DISPLAY |    | END   |   |   | Page  |
+    |&lt;-- prev | next  | | sel. --&gt;|    | of    |   |   | DOWN  |
+    |    doc. | link \|/| link    |    | text 1|  \|/ 2|      3|
+    +---------+---------+---------+    +-------+-------+-------+
+</pre>There are also a few other keyboard commands to aid in
+navigation. The Control and Function keys used for navigation
+within the current document are described in <a href=
+"#MiscKeys"><em>Scrolling and Other useful commands</em></a>. Some
+additional commands depend on the fact that Lynx keeps a list of
+each link you visited to reach the current document, called the
+<a href="keystrokes/history_help.html">History Page</a>, and a list
+of all links visited during the current Lynx session, called the
+<a href="keystrokes/visited_help.html">Visited Links Page</a>. The
+HISTORY keystroke command, normally mapped to <em>Backspace</em> or
+<em>Delete</em>, will show you the <em>History Page</em> of links
+leading to your access of the current document. Any of the previous
+documents shown in the list may be revisited by selecting them from
+the history screen. The VLINKS keystroke command, normally mapped
+to uppercase '<em>V</em>', will show the <em>Visited Links
+Page</em>, and you similarly can select links in that list. The
+MAIN_MENU keystroke command, normally mapped to '<em>m</em>' and
+'<em>M</em>', will take you back to the starting document unless
+you specified the <em>-homepage=URL</em> option at the command
+line. Also, the LIST and ADDRLIST keystroke commands, normally
+mapped to '<em>l</em>' and <em>A</em>' respectively, will create a
+compact lists of all the links in the current document, and they
+can be selected via those lists.
+
+  <p>The '<em>i</em>' key presents an index of documents. The
+  default index offered contains many useful links, but can be
+  changed in <em>lynx.cfg</em> or on the command line using the
+  <em>-index=URL</em> switch.</p>
+
+  <p>If you choose a link to a server with active access
+  authorization, Lynx will automatically prompt for a username and
+  a password. If you give the correct information, you will then be
+  served the requested information. Lynx will automatically send
+  your username and password to the same server if it is needed
+  again.</p>
+
+  <p>[<a href="#ToC-IntraDocNav">ToC</a>]</p>
+
+  <h2 id="id-Disposing"><a name="Disposing" id=
+  "Disposing"><em>Printing, Mailing, and Saving rendered files to
+  disk.</em></a></h2>
+
+  <p>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>
+
+  <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.
+  Additional print options may also be available as configured in
+  the <a href="#lynx.cfg">lynx.cfg</a> file.</p>
+
+  <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>
+
+  <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="#RemoteSource">Download</a> options.</p>
+
+  <p>[<a href="#ToC-Disposing">ToC</a>]</p>
+
+  <h2 id="id-LocalSource"><a name="LocalSource" id=
+  "LocalSource"><em>Viewing the HTML document source and editing
+  documents</em></a></h2>
+
+  <p>When viewing HTML documents it is possible to retrieve and
+  display the unrendered (i.e., the original HTML) source of the
+  document by pressing the '<em>\</em>' (backslash) key. Lynx
+  usually caches only the rendering of the document and doesn't
+  keep the source (unless it is configured to do so in the <a href=
+  "#lynx.cfg">lynx.cfg</a> file), so to display the source
+  unrendered, Lynx must reload it from the server or disk. When
+  viewing unrendered documents you may print them as any normal
+  document.</p>
+
+  <p>Selecting the <em>Print to a local file</em> option from the
+  Print Menu, makes it possible to save the source of the document
+  to disk so that you may have a local copy of the document source,
+  but it is better to <a href="#RemoteSource">Download</a> the
+  source.</p>
+
+  <p>NOTE: When saving an HTML document it is important to name the
+  document with a <em>.html</em> or <em>.htm</em> extension, if you
+  want to read it with Lynx again later.</p>
+
+  <p id="FileEdit">Lynx can allow users to edit documents that
+  reside on the local system. To enable editing, documents must be
+  referenced using a "file:" URL or by specifying a plain filename
+  on the command line as in the following two examples:</p>
+
+  <dl>
+    <dt>Command</dt>
+
+    <dd><code>lynx file://localhost/FULL/PATH/FILENAME</code></dd>
+
+    <dd><code>lynx path/filename.html</code></dd>
+  </dl>In addition, the user must also specify an editor in the
+  <em>Options Menu</em> so that Lynx knows which editor to use. If
+  the file is specified correctly and an editor is defined, then
+  you may edit documents by using the '<em>e</em>' command. When
+  the '<em>e</em>' command is entered your specified editor is
+  spawned to edit the file. After changes are completed, exit your
+  editor and you will return to Lynx. Lynx will reload and render
+  the file so that changes can be immediately examined.
+
+  <p>[<a href="#ToC-LocalSource">ToC</a>]</p>
+
+  <h2 id="id-RemoteSource"><a name="RemoteSource" id=
+  "RemoteSource"><em>Downloading and Saving source
+  files.</em></a></h2>
+
+  <p>If the DOWNLOAD keystroke command ('<em>d</em>' or <em>D</em>)
+  is used when positioned on a link for an HTML, plain text, or
+  binary file, Lynx will transfer the file, without rendering, into
+  a temporary location and present the user with a list of options,
+  just as it does when a link for a binary file of a type for which
+  no viewer has been mapped is activated.</p>
+
+  <p>There is a default <em>Download option</em> of <em>Save to
+  disk</em>. This is disabled if Lynx is running in anonymous mode.
+  Any number of download methods such as kermit and zmodem may be
+  defined in addition to this default in the <em>lynx.cfg</em>
+  file. Using the <em>Save to disk</em> option under the PRINT
+  command after viewing the source of an HTML with the VIEW SOURCE
+  (<em>\</em>) command will result in a file which differs from the
+  original source in various ways such as tab characters expanded
+  to spaces. Lynx formats the source presentation in this mode. On
+  the other hand, if the DOWNLOAD command is used, the only change
+  will be that Lynx optionally puts</p>
+
+  <blockquote>
+    &lt;!--X-URL: http://www.site.foo/path/to/file.html --&gt;<br>
+    &lt;BASE href="http://www.site.foo/path/to/file.html"&gt;
+  </blockquote>at the start of the file so that relative URLs in
+  the document will still work. Even this modification can be
+  prevented by setting PREPEND_BASE_TO_SOURCE:FALSE in lynx.cfg.
+
+  <p>Some options, such as <em>Save to disk</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>
+
+  <p>[<a href="#ToC-RemoteSource">ToC</a>]</p>
+
+  <h2 id="id-ReDo"><a name="ReDo" id="ReDo"><em>Reloading files and
+  refreshing the display</em></a></h2>
+
+  <p>The RELOAD (<em>Control-R</em>) command will reload and
+  re-render the file that you are currently viewing. The REFRESH
+  (<em>Control-L</em> or <em>Control-W</em>) command will refresh
+  or wipe the screen to remove or correct any errors that may be
+  caused by operating system or other messages.</p>
+
+  <p>The NOCACHE ('<em>x</em>' or '<em>X</em>') command can be used
+  in lieu of ACTIVATE (<em>Return</em> or <em>right-arrow</em>) to
+  request an uncached copy and new rendition for the current link,
+  or resubmission of a FORM, if a cache from a previous request or
+  submission exits. The request or submission will include
+  <em>Pragma: no-cache</em> and <em>Cache-Control: no-cache</em> in
+  its headers. Note that FORMs with POST content will be
+  resubmitted regardless of whether the NOCACHE or ACTIVATE command
+  is used (see <a href="#Forms"><em>Lynx and HTML
+  Forms</em></a>).</p>
+
+  <p>[<a href="#ToC-ReDo">ToC</a>]</p>
+
+  <h2 id="id-Search"><a name="Search" id="Search"><em>Lynx
+  searching commands</em></a></h2>
+
+  <p>Two commands activate searching in Lynx: '<em>/</em>' and
+  '<em>s</em>'.</p>
+
+  <p>While viewing a normal document use the '<em>/</em>' command
+  to find a word or phrase within the current document. The search
+  type will depend on the search option setting in the <a href=
+  "#InteractiveOptions">Options Menu</a>. The search options are
+  case sensitive and case insensitive. These searches are entirely
+  local to Lynx.</p>
+
+  <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 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 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 current document's
+  URL and append your query string as a <em>?searchpart</em> (see
+  <a href="lynx_url_support.html">Supported URLs</a>).</p>
+
+  <p>All search words or strings which you have entered during a
+  Lynx session are saved in a circular buffer, and can be retrieved
+  for re-use by pressing the <em>up-arrow</em> or
+  <em>down-arrow</em> keys at the prompt for a search word or
+  string. Also, you can use the '<em>n</em>'ext command to repeat a
+  search with the last-entered search word or phrase, starting from
+  the current position in the document. The word or phrase matches
+  will be highlighted throughout the document, but such
+  highlighting will not persist for new documents, or if the
+  current document is reloaded. The search cycles to the top of the
+  document if the word or phrase is not located below your current
+  position.</p>
+
+  <p>Although <a href="#Forms">HTML Forms</a> have largely replaced
+  index documents for searches via http servers, they are still
+  useful for performing searches directly via WAIS or Gopher
+  servers in conjunction with the internal gateways for such
+  servers. For example, an HTML index document can act as a
+  <em>cover page</em> describing a WAIS database and how to
+  formulate query strings for searching it, and include an element
+  such as:<br></p>
+  <pre>
+      <em>&lt;ISINDEX PROMPT="Enter WAIS query:"
+               HREF="wais://net.bio.net/biologists-addresses"&gt;</em>
+</pre>for submitting a search of the Biologist's Addresses database
+directly to the net.bio.net WAIS server.
+
+  <p>[<a href="#ToC-Search">ToC</a>]</p>
+
+  <h2 id="id-InteractiveOptions"><a name="InteractiveOptions" id=
+  "InteractiveOptions"><em>Lynx Options Menu</em></a></h2>
+
+  <p>The Lynx <em>Options Menu</em> may be accessed by pressing the
+  '<em>o</em>' key. It allows you to change options at runtime, if
+  you need to. Most changes are read from &amp; saved to your
+  .lynxrc file; those which are not are marked (!) in the
+  form-based menu (as below). Many other options are stored in the
+  <a href="#lynx.cfg">lynx.cfg</a> file.</p>
+
+  <p>Lynx supports two styles of Options Menu, key-based &amp;
+  form-based. The form-based menu shown below is an HTML file
+  generated at runtime, in which the user fills in choices as in
+  any ordinary HTML form.</p>
+  <pre>
+
+                    Options Menu (Lynx Version 2.8.7rel.1)
+
+      Accept Changes - Reset Changes Left Arrow cancels changes <a href="keystrokes/option_help.html">HELP!</a>
+
+                         Save options to disk: [_]
+                (options marked with (!) will not be saved)
+
+  General Preferences
+  User mode                        : [Advanced....]
+  Editor                           : __________________________________________
+  Type of Search                   : [Case insensitive]
+
+  Security and Privacy
+  Cookies (!)                      : [ask user..]
+  Invalid-Cookie Prompting (!)     : [prompt normally___]
+  SSL Prompting (!)                : [prompt normally___]
+
+  Keyboard Input
+  Keypad mode                      : [Links are numbered................]
+  Emacs keys                       : [OFF]
+  VI keys                          : [OFF]
+  Line edit style                  : [Bash-like Bindings]
+  Keyboard layout                  : [YAWERTY Cyrillic, for DEC LK201 kbd]
+
+  Display and Character Sets
+  Use locale-based character set(!): [OFF]
+  Use HTML5 charset replacements(!): [OFF]
+  Display character set            : [Cyrillic (ISO-8859-5)..........]
+  Assumed document character set(!): [iso-8859-1......]
+  Raw 8-bit (!)                    : [OFF]
+  X Display (!)                    : __________________________________________
+
+  Document Appearance
+  Show color                       : [ON....]
+  Show cursor                      : [OFF]
+  Underline links (!)              : [OFF]
+  Show scrollbar                   : [OFF]
+  Popups for select fields         : [ON.]
+  HTML error recovery (!)          : [strict (SortaSGML mode)]
+  Bad HTML messages (!)            : [Warn, point to trace-file]
+  Show images (!)                  : [as labels]
+  Verbose images                   : [OFF..........]
+
+  Headers Transferred to Remote Servers
+  Personal mail address            : __________________________________________
+  Personal mail name               : __________________________________________
+  Password for anonymous ftp       : __________________________________________
+  Preferred media type (!)         : [Accept lynx's internal types]
+  Preferred encoding (!)           : [All_____]
+  Preferred document character set : _________________________________
+  Preferred document language      : _________________________________
+  Send User-Agent header (!)       : [ ]
+  User-Agent header (!)            : __________________________________________
+
+  Listing and Accessing Files
+  Use Passive FTP (!)              : [ON_]
+  FTP sort criteria                : [By Name]
+  Local directory sort criteria    : [Mixed style......]
+  Local directory sort order       : [By name..........]
+  Show dot files                   : [ON.]
+  Execution links                  : [FOR LOCAL FILES ONLY]
+  Pause when showing message (!)   : [ON_]
+  Show transfer rate               : [Show progressbar___]
+
+  Special Files and Screens
+  Multi-bookmarks                  : [ADVANCED]
+  Review/edit Bookmarks files      : Goto multi-bookmark menu
+  Auto Session (!)                 : [OFF]
+  Session file (!)                 : ___________________________________________
+  Visited Pages                    : [As Visit Tree..........]
+
+  View the file lynx.cfg
+
+         Accept Changes - Reset Changes Left Arrow cancels changes
+
+</pre>
+
+  <p>The key-based menu depends on key-strokes to identify options
+  which the user wants to change. It is compiled into Lynx and is
+  accessed by setting FORMS_OPTIONS to TRUE in <a href=
+  "#lynx.cfg">lynx.cfg</a>.</p>
+  <pre>
+
+             Options Menu (Lynx Version 2.8.7rel.1)
+
+     (E)ditor                     : emacs
+     (D)ISPLAY variable           : aixtest.cc.ukans.edu:0.0
+     mu(L)ti-bookmarks: OFF       B)ookmark file: lynx_bookmarks.html
+     (F)TP sort criteria          : By Filename
+     (P)ersonal mail address      : montulli@netscape.com
+     (S)earching type             : CASE INSENSITIVE
+     preferred document lan(G)uage: en
+     preferred document c(H)arset : NONE
+     display (C)haracter set      : Western (ISO-8859-1)
+     raw 8-bit or CJK m(O)de      : ON      show color (&amp;)  : OFF
+     (V)I keys: OFF   e(M)acs keys: OFF     sho(W) dot files: OFF
+     popups for selec(T) fields   : ON      show cursor (@) : OFF
+     (K)eypad mode                : Numbers act as arrows
+     li(N)e edit style            : Default Binding
+     l(I)st directory style       : Mixed style
+     (U)ser mode                  : Advanced      verbose images (!) : ON
+     user (A)gent                 : [User-Agent header]
+     local e(X)ecution links      : FOR LOCAL FILES ONLY
+</pre>An option can be changed by entering the capital letter or
+character in parentheses for the option you wish to change (e.g.,
+'<em>E</em>' for Editor or '<em>@</em>' for show cursor). For
+fields where text must be entered, simply enter the text by typing
+on the keyboard. The <a href="keystrokes/edit_help.html">Line
+Editor</a> can be used to correct mistakes, and <em>Control-U</em>
+can be used to erase the line. When you are done entering a change
+press the <em>Return</em> key to get back to the <em>Command?</em>
+prompt.
+
+  <p>For fields where you must choose one of two choices, press any
+  key to toggle the choices and press the <em>Return</em> key to
+  finish the change.</p>
+
+  <p>For fields where you potentially have more than two choices,
+  popup windows may be evoked which function homologously to those
+  for select fields in <a href="#Forms">HTML Forms</a>. The popup
+  windows will be invoked only if you have popups for select fields
+  set to ON (see below). Otherwise, your cursor will be positioned
+  at the current choice, and you can press any key to cycle through
+  the choices, then press the <em>Return</em> key to finish the
+  change.</p>
+
+  <p>When you are done changing options use the '<em>r</em>'
+  command to return to Lynx or the '<em>&gt;</em>' command to save
+  the options to a <em>.lynxrc</em> file and return to Lynx.</p>
+
+  <p>The following table describes the options available on the
+  <em>Options Menu</em>:</p>
+
+  <dl>
+    <dt>Assumed document character set</dt>
+
+    <dd>This option changes the handling of documents which do not
+    explicitly specify a charset. Normally Lynx assumes that 8-bit
+    characters in those documents are encoded according to
+    iso-8859-1 (the official default for the HTTP protocol).
+    Unfortunately, many non-English web pages "forget" to include
+    proper charset info; this option helps you to browse those
+    broken pages if you know by some means what the charset is.
+    When the value given here or by an -assume_charset command line
+    flag is in effect, Lynx will treat documents as if they were
+    encoded accordingly. This option active when 'Raw 8-bit or CJK
+    Mode' is OFF.</dd>
+
+    <dt>Auto Session</dt>
+
+    <dt>Lynx can save and restore useful information about your
+    browsing history. Use this setting to enable or disable the
+    feature.</dt>
+
+    <dt>Bad HTML messages</dt>
+
+    <dd>
+      Suppress or redirect Lynx's messages about "Bad HTML":
+
+      <dl>
+        <dt>Ignore</dt>
+
+        <dd>do not warn; no details are written to the
+        trace-file.</dd>
+
+        <dt>Add to trace-file</dt>
+
+        <dd>add the detailed warning message to the
+        trace-file.</dd>
+
+        <dt>Add to LYNXMESSAGES</dt>
+
+        <dd>add the detailed warning message to the message page at
+        "LYNXMESSAGES:".</dd>
+
+        <dt>Warn, point to trace-file</dt>
+
+        <dd>show a warning message on the status line; the complete
+        message is written to the trace-file.</dd>
+      </dl>
+    </dd>
+
+    <dt>Bookmark file</dt>
+
+    <dd>
+      When multi-bookmarks is OFF, this is the filename and
+      location of your default personal bookmark file. Enter
+      '<em>B</em>' to modify the filename and/or location via the
+      <a href="keystrokes/edit_help.html">Line Editor</a>. Bookmark
+      files allow frequently traveled links to be stored in
+      personal easy to access files.
+
+      <p>Using the '<em>a</em>'dd bookmark link command (see
+      <a href="#Bookmarks">Lynx bookmarks</a>) you may save any
+      link that does not have associated POST content into a
+      bookmark file. All bookmark files must be in or under your
+      account's home directory. If the location specified does not
+      begin with a dot-slash (./), its presence will still be
+      assumed, and referenced to the home directory.</p>
+
+      <p>When multi-bookmarks is STANDARD or ADVANCED, entering
+      '<em>B</em>' will invoke a menu of up to 26 bookmark files
+      (associated with the letters of the English alphabet), for
+      editing their filenames and locations (<em>filepath</em>),
+      and descriptions.</p>
+
+      <p>Lynx will create bookmark files, if they don't already
+      exist, when you first '<em>a</em>'dd a bookmark link to them.
+      However, if you've specified a subdirectory (e.g.,
+      ./BM/lynx_bookmarks.html), that subdirectory must already
+      exist. Note that on VMS you should use the URL syntax for the
+      filepath (e.g., <em>not</em> [.BM]lynx_bookmarks.html).</p>
+    </dd>
+
+    <dt>Cookies</dt>
+
+    <dd>This option allows you to tell how to handle cookies:
+    <em>ignore</em>, prompt (<em>ask user</em>) or <em>accept
+    all</em>.</dd>
+
+    <dt>Display Character set</dt>
+
+    <dd>This option allows you to set up the default character set
+    for your specific terminal. The display character set provides
+    a mapping from the character encodings of viewed documents and
+    from HTML entities into viewable characters. It should be set
+    according to your terminal's character set so that characters
+    other than 7-bit ASCII can be displayed correctly, using
+    approximations if necessary. You must have the selected
+    character set installed on your terminal. (Since Lynx now
+    supports a wide range of platforms it may be useful to note
+    that cpXXX codepages used within IBM PC computers, and
+    windows-xxxx within native MS-Windows apps.)</dd>
+
+    <dt>Editor</dt>
+
+    <dd>The editor to be invoked when editing browsable files, when
+    sending mail or comments, when preparing a news article for
+    posting, and for external TEXTAREA editing. The full pathname
+    of the editor command should be specified when possible.</dd>
+
+    <dt>Emacs keys</dt>
+
+    <dd>
+      If set to ON then the CTRL-P, CTRL-N, CTRL-F, and CTRL-B keys
+      will be mapped to up-arrow, down-arrow, right-arrow, and
+      left-arrow, respectively. Otherwise, they remain mapped to
+      their configured bindings (normally UP_TWO lines, DOWN_TWO
+      lines, NEXT_PAGE, and PREV_PAGE, respectively).
+
+      <p>Note: this has no direct effect on the line-editor's key
+      bindings.</p>
+    </dd>
+
+    <dt>Execution links<br>
+    This deals with execution of local scripts or links:</dt>
+
+    <dd>Local execution is activated when Lynx is first set up. If
+    it has not been activated you will not see this option in the
+    <em>Options Menu</em>.</dd>
+
+    <dd>
+      When a local execution script is encountered Lynx checks the
+      users options to see whether the script can be executed.
+      Users have the following options:
+
+      <dl>
+        <dt>Always off</dt>
+
+        <dd>Local execution scripts will never be executed</dd>
+
+        <dt>For Local files only</dt>
+
+        <dd>Local execution scripts will only be executed if the
+        script to be executed resides on the local machine, and is
+        referenced by a URL that begins with
+        <em>file://localhost</em></dd>
+
+        <dt>Always on</dt>
+
+        <dd>All local execution scripts will be executed</dd>
+      </dl>
+    </dd>
+
+    <dd>If the users options permit the script to be executed Lynx
+    will spawn a shell and run the script. If the script cannot be
+    executed Lynx will show the script within the Lynx window and
+    inform the user that the script is not allowed to be executed
+    and will ask the user to check his/her options.</dd>
+
+    <dt>FTP sort criteria</dt>
+
+    <dd>This option allows you to specify how files will be sorted
+    within FTP listings. The current options include "<code>By
+    Filename</code>", "<code>By Size</code>", "<code>By
+    Type</code>", and "<code>By Date</code>".</dd>
+
+    <dt>HTML error recovery</dt>
+
+    <dd>Select the <a href=
+    "keystrokes/option_help.html#tagsoup">recovery mode</a> used by
+    Lynx.</dd>
+
+    <dt>Invalid-Cookie Prompting</dt>
+
+    <dd>This allows you to tell how to handle invalid cookies:
+    <em>prompt normally</em> to prompt for each cookie, <em>force
+    yes-response</em> to reply "yes" to each prompt, <em>force
+    no-response</em> to reply "no" to each prompt.</dd>
+
+    <dt>Keypad mode</dt>
+
+    <dd>This option gives the choice among navigating with the
+    arrow keys, or having every link numbered so that the links may
+    be selected or made current by numbers as well as using the
+    arrow keys, or having every link as well as every form field
+    numbered so that they can be selected or sought by numbers. See
+    the<br>
+    &nbsp;&nbsp;<a href="keystrokes/follow_help.html">Follow link
+    (or page) number:</a> and<br>
+    &nbsp;&nbsp;<a href=
+    "keystrokes/follow_help.html#select-option">Select option (or
+    page) number:</a><br>
+    help for more information.</dd>
+
+    <dt>Line edit style</dt>
+
+    <dd>This option allows you to set alternative key bindings for
+    the built-in line editor, if alternative line-edit bindings
+    have been compiled in. Otherwise, Lynx uses the <a href=
+    "keystrokes/edit_help.html">Default Binding</a>.</dd>
+
+    <dt>Local directory sort criteria</dt>
+
+    <dd>
+      This applies to directory editing. Files and directories can
+      be presented in the following ways:
+
+      <dl>
+        <dt>Mixed style</dt>
+
+        <dd>Files and directories are listed together in
+        alphabetical order.</dd>
+
+        <dt>Directories first</dt>
+
+        <dd>Files and directories are separated into two
+        alphabetical lists. Directories are listed first.</dd>
+
+        <dt>Files first</dt>
+
+        <dd>Files and directories are separated into two
+        alphabetical lists. Files are listed first.</dd>
+      </dl>
+    </dd>
+
+    <dt>Local directory sort order</dt>
+
+    <dd>
+      The Options Form also allows you to sort by the file
+      attributes.
+
+      <dl>
+        <dt>By name</dt>
+
+        <dd>by filename (the default)</dd>
+
+        <dt>By size</dt>
+
+        <dd>by file size, in descending order</dd>
+
+        <dt>By date</dt>
+
+        <dd>by file modification time, in descending order</dd>
+
+        <dt>By mode</dt>
+
+        <dd>by file protection</dd>
+
+        <dt>By type</dt>
+
+        <dd>by filename suffix, e.g., the text beginning with
+        '.'</dd>
+
+        <dt>By user</dt>
+
+        <dd>by file owner's user-id</dd>
+
+        <dt>By group</dt>
+
+        <dd>by file owner's group-id</dd>
+      </dl>
+    </dd>
+
+    <dt>Multi-bookmarks</dt>
+
+    <dd>Lynx supports a default bookmark file, and up to 26 total
+    bookmark files (see below). When multi-bookmarks is OFF, the
+    default bookmark file is used for the '<em>v</em>'iew bookmarks
+    and '<em>a</em>'dd bookmark link commands. If multi-bookmark
+    support is available in your account, the setting can be
+    changed to STANDARD or ADVANCED. In STANDARD mode, a menu of
+    available bookmarks always is invoked when you seek to view a
+    bookmark file or add a link, and you select the bookmark file
+    by its letter token (see <em>Bookmark file</em>, below) in that
+    menu. In ADVANCED mode, you instead are prompted for the letter
+    of the desired bookmark file, but can enter '<em>=</em>' to
+    invoke the STANDARD selection menu, or <em>RETURN</em> for the
+    default bookmark file.</dd>
+
+    <dt>Password for anonymous ftp</dt>
+
+    <dd>If this is blank, Lynx will use your personal mail address
+    as the anonymous ftp password. Though that is the convention,
+    some users prefer to use some other string which provides less
+    information. If the given value lacks a "@", Lynx also will use
+    your computer's hostname as part of the password. If both this
+    field and the personal mail address are blank, Lynx will use
+    your $USER environment variable, or "WWWuser" if even the
+    environment variable is unset.</dd>
+
+    <dt>Pause when showing message</dt>
+
+    <dd>If set to "off", this overrides the INFOSECS setting in
+    lynx.cfg, to eliminate pauses when displaying informational
+    messages, like the "-nopause" command line option.</dd>
+
+    <dt>Personal mail address</dt>
+
+    <dd>This mail address will be used to help you send files to
+    yourself and will be included as the From: address in any mail
+    or comments that you send. It will also be sent as the From:
+    field in HTTP or HTTPS requests if inclusion of that header has
+    been enabled via the NO_FROM_HEADER definition in <a href=
+    "#lynx.cfg">lynx.cfg</a> (the compilation default is not to
+    send the header), or via the <em>-from</em> command line
+    toggle.</dd>
+
+    <dt>Personal mail name</dt>
+
+    <dd>This mail name will be included as the "X-Personal_Name"
+    field in any mail or comments that you send if that header has
+    not been disabled via the NO_ANONYMOUS_EMAIL definition in
+    <a href="#lynx.cfg">lynx.cfg</a>.</dd>
+
+    <dt>Popups for select fields</dt>
+
+    <dd>Lynx normally uses a popup window for the OPTIONs in form
+    SELECT fields when the field does not have the MULTIPLE
+    attribute specified, and thus only one OPTION can be selected.
+    The use of popup windows can be disabled by changing this
+    setting to OFF, in which case the OPTIONs will be rendered as a
+    list of radio buttons. Note that if the SELECT field does have
+    the MULTIPLE attribute specified, the OPTIONs always are
+    rendered as a list of checkboxes.</dd>
+
+    <dt>Preferred document language</dt>
+
+    <dd>The language you prefer if multi-language files are
+    available from servers. Use RFC 1766 abbreviations, e.g., en
+    for English, fr for French, etc. Can be a comma-separated list,
+    which may be interpreted by servers as descending order of
+    preferences. You can also make your order of preference
+    explicit by using q factors as defined by the HTTP protocol,
+    for servers which understand it, for example:
+    da,&nbsp;en-gb;q=0.8,&nbsp;en;q=0.7</dd>
+
+    <dt>Preferred document charset</dt>
+
+    <dd>The character set you prefer if sets in addition to
+    ISO-8859-1 and US-ASCII are available from servers. Use MIME
+    notation (e.g., ISO-8859-2) and do not include ISO-8859-1 or
+    US-ASCII, since those values are always assumed by default. Can
+    be a comma-separated list, which may be interpreted by servers
+    as descending order of preferences. You can also make your
+    order of preference explicit by using q factors as defined by
+    the HTTP protocol, for servers which understand it, for
+    example: iso-8859-5,&nbsp;utf-8;q=0.8</dd>
+
+    <dt>Preferred encoding</dt>
+
+    <dd>When doing a GET, lynx tells what types of compressed data
+    it can decompress (the "Accept-Encoding:" string). This is
+    determined by compiled-in support for decompression or external
+    decompression programs. Use this option to select none, one or
+    all of the supported decompression types.</dd>
+
+    <dt>Preferred media type</dt>
+
+    <dd>
+      When doing a GET, lynx lists the MIME types which it knows
+      how to present (the "Accept:" string). Depending on your
+      system configuration, the mime.types or other data given by
+      the GLOBAL_EXTENSION_MAP may include many entries that lynx
+      really does not handle. Use this option to select one of the
+      built-in subsets of the MIME types that lynx could list in
+      the Accept.
+
+      <dl>
+        <dt>Accept lynx's internal types</dt>
+
+        <dd>list only the types that are compiled into lynx.</dd>
+
+        <dt>Also accept lynx.cfg's types</dt>
+
+        <dd>lists types defined in lynx.cfg, e.g., the VIEWER and
+        Cern RULE or RULESFILE settings.</dd>
+
+        <dt>Also accept user's types</dt>
+
+        <dd>lists types from the PERSONAL_EXTENSION_MAP setting in
+        lynx.cfg</dd>
+
+        <dt>Also accept system's types</dt>
+
+        <dd>lists types from the GLOBAL_EXTENSION_MAP setting in
+        lynx.cfg</dd>
+
+        <dt>Accept all types</dt>
+
+        <dd>adds the types that are in lynx's built-in tables for
+        external programs that may be used to present a
+        document.</dd>
+      </dl>
+    </dd>
+
+    <dt>Raw 8-bit or CJK Mode</dt>
+
+    <dd>Whether 8-bit characters are assumed to correspond with the
+    display character set and therefore are processed without
+    translation via the chartrans conversion tables. Should be ON
+    by default when the display character set is one of the Asian
+    (CJK) sets and the 8-bit characters are Kanji multibytes.
+    Should be OFF for the other display character sets, but can be
+    turned ON when the document's charset is unknown (e.g., is not
+    ISO-8859-1 and no charset parameter was specified in a reply
+    header from an HTTP server to indicate what it is) but you know
+    by some means that you have the matching display character set
+    selected. Should be OFF when an Asian (CJK) set is selected but
+    the document is ISO-8859-1 or another 'assumed document
+    character set'. The setting also can be toggled via the
+    RAW_TOGGLE command, normally mapped to '<em>@</em>', and at
+    startup via the <em>-raw</em> switch.</dd>
+
+    <dt>Send User-Agent header Controls whether the user-agent
+    string will be sent.</dt>
+
+    <dt>Session file</dt>
+
+    <dd>Define the file name where lynx will store user sessions.
+    This setting is used only when <em>Auto Session</em> is
+    enabled.</dd>
+
+    <dt>Show color</dt>
+
+    <dd>This option will be present if color support is available.
+    If set to ON or ALWAYS, color mode will be forced on if
+    possible. If (n)curses color support is available but cannot be
+    used for the current terminal type, selecting ON is rejected
+    with a message. If set to OFF or NEVER, color mode will be
+    turned off.<br>
+    ALWAYS and NEVER are not offered in anonymous accounts. If
+    saved to a <em>.lynxrc</em> file in non-anonymous accounts,
+    ALWAYS will cause Lynx to set color mode on at startup if
+    supported. If Lynx is built with the slang library, this is
+    equivalent to having included the <em>-color</em> command line
+    switch or having the <em>COLORTERM</em> environment variable
+    set. If color support is provided by curses or ncurses, this is
+    equivalent to the default behavior of using color when the
+    terminal type supports it. If (n)curses color support is
+    available but cannot be used for the current terminal type, the
+    preference can still be saved but will have no effect.<br>
+    A saved value of NEVER will cause Lynx to assume a monochrome
+    terminal at startup. It is similar to the <em>-nocolor</em>
+    switch, but (when the slang library is used) can be overridden
+    with the <em>-color</em> switch.<br>
+    If the setting is OFF or ON when the current options are saved
+    to a <em>.lynxrc</em> file, the default startup behavior is
+    retained, such that color mode will be turned on at startup
+    only if the terminal info indicates that you have a
+    color-capable terminal, or (when the slang library is used) if
+    forced on via the <em>-color</em> switch or <em>COLORTERM</em>
+    variable. This default behavior always is used in anonymous
+    accounts, or if the <em>option_save</em> restriction is set
+    explicitly. If for any reason the startup color mode is
+    incorrect for your terminal, set it appropriately on or off via
+    this option.</dd>
+
+    <dt>Show cursor</dt>
+
+    <dd>Lynx normally hides the cursor by positioning it to the
+    right and if possible the very bottom of the screen, so that
+    the current link or OPTION is indicated solely by its
+    highlighting or color. If show cursor is set to ON, the cursor
+    will be positioned at the left of the current link or OPTION.
+    This is helpful when Lynx is being used with a speech or
+    braille interface. It also is useful for sighted users when the
+    terminal cannot distinguish the character attributes used to
+    distinguish the current link or OPTION from the others in the
+    screen display.</dd>
+
+    <dt>Show dot files</dt>
+
+    <dd>If display/creation of hidden (dot) files/directories is
+    enabled, you can turn the feature on or off via this
+    setting.</dd>
+
+    <dt>Show images</dt>
+
+    <dd>
+      This allows you to select the way in which Lynx shows image
+      links. These are the available selections:
+
+      <ul>
+        <li><em>ignore</em> to suppress the links altogether,</li>
+
+        <li><em>as labels</em> to show the descriptive text for the
+        link</li>
+
+        <li><em>as links</em>, which allows you to use an external
+        viewer</li>
+      </ul>
+    </dd>
+
+    <dt>Show scrollbar</dt>
+
+    <dd>This allows you to enable (show) or disable (hide) the
+    scrollbar on the right-margin of the display. This feature is
+    available with ncurses or slang libraries.</dd>
+
+    <dt>Show transfer rate</dt>
+
+    <dd>
+      This allows you to select the way in which Lynx shows its
+      progress in downloading large pages. It displays its progress
+      in the status line. These are the available selections:
+
+      <ul>
+        <li>Do not show rate</li>
+
+        <li>Local directory sort order</li>
+
+        <li>Show dot files</li>
+
+        <li>Execution links</li>
+
+        <li>Pause when showing message</li>
+
+        <li>Show transfer rate</li>
+      </ul>
+    </dd>
+
+    <dt>SSL Prompting</dt>
+
+    <dd>This allows you to tell how to handle errors detected in
+    SSL connections <em>prompt normally</em> to prompt for each
+    cookie, <em>force yes-response</em> to reply "yes" to each
+    prompt, <em>force no-response</em> to reply "no" to each
+    prompt.</dd>
+
+    <dt>Type of Search</dt>
+
+    <dd>Searching type has two possible values: CASE INSENSITIVE
+    (default) and CASE SENSITIVE. The searching type effects
+    inter-document searches only, and determines whether searches
+    for words within documents will be done in a case-sensitive or
+    case-insensitive manner.</dd>
+
+    <dt>Use HTML5 charset replacements</dt>
+
+    <dd>This option allows lynx to treat pages with ISO-8859-1
+    (Latin1) or ASCII encoding as if they were Windows 1252. That
+    allows a few punctuation characters to be shown.</dd>
+
+    <dt>Use locale-based character set</dt>
+
+    <dd>This option allows you to request lynx to obtain a MIME
+    name from the operating system which corresponds to your locale
+    setting. If successful, it overrides the normal setting of the
+    display character set.</dd>
+
+    <dt>Underline links</dt>
+
+    <dd>Use underline-attribute rather than bold for links.</dd>
+
+    <dt>Use Passive FTP</dt>
+
+    <dd>This allows you to change whether Lynx uses passive ftp
+    connections.</dd>
+
+    <dt>User Agent header</dt>
+
+    <dd>The header string which Lynx sends to HTTP servers to
+    indicate the User-Agent is displayed here. Changes may be
+    disallowed via the <em>-restrictions</em> switch. Otherwise,
+    the header can be changed temporarily to a string such as
+    <em>L_y_n_x/2.8.7</em> for access to sites which discriminate
+    against Lynx based on checks for the presence of "Lynx" in the
+    header. If the User-Agent header has been changed, it can be
+    restored to the built-in default value by deleting the modified
+    string in the Options Menu. Whenever the User-Agent header is
+    changed, the current document is reloaded, with the no-cache
+    flags set, on exit from the Options Menu. Changes of the header
+    are not saved in the RC file.</dd>
+
+    <dd><em id="noteUA">NOTE:</em> Some sites may regard
+    misrepresenting the browser as fraudulent deception, or as
+    gaining unauthorized access, if it is used to circumvent
+    blocking that was intentionally put in place. Some browser
+    manufacturers may find the transmission of their product's name
+    objectionable. If you change the User-Agent string, it is your
+    responsibility. The Options Menu issues a reminder whenever the
+    header is changed to one which does not include "Lynx" or
+    "L_y_n_x".</dd>
+
+    <dt>User Mode</dt>
+
+    <dd>
+      There are three possible choices: Novice, Intermediate, and
+      Advanced.
+
+      <dl>
+        <dt>Novice</dt>
+
+        <dd>In Novice mode two lines of help are displayed at the
+        bottom of the screen.</dd>
+
+        <dt>Intermediate</dt>
+
+        <dd>Intermediate mode turns off the help lines.</dd>
+
+        <dt>Advanced</dt>
+
+        <dd>Advanced mode displays the URL of the currently
+        selected link at the bottom of the screen.</dd>
+      </dl>
+    </dd>
+
+    <dt>Verbose Images</dt>
+
+    <dd>Controls whether or not Lynx replaces the [LINK], [INLINE]
+    and [IMAGE] comments (for images without ALT) with filenames of
+    these images. This is extremely useful because now we can
+    determine immediately what images are just decorations
+    (button.gif, line.gif) and what images are important. This
+    setting can also be toggled on startup via the
+    <em>-verbose</em> switch.</dd>
+
+    <dt>VI keys</dt>
+
+    <dd>
+      If set to ON then the lowercase h, j, k, and l keys will be
+      mapped to left, down, up, and right arrow, respectively. The
+      uppercase H, J, K, and L keys remain mapped to their
+      configured bindings (normally HELP, JUMP, KEYMAP, and LIST,
+      respectively).
+
+      <p>Note: this has no effect on the line-editor's key
+      bindings.</p>
+    </dd>
+
+    <dt>Visited Pages</dt>
+
+    <dd>
+      Enable several different views of the visited links:
+
+      <dl>
+        <dt>By First Visit</dt>
+
+        <dt>By First Visit Reversed</dt>
+
+        <dt>As Visit Tree</dt>
+
+        <dt>By Last Visit</dt>
+
+        <dt>By Last Visit Reversed</dt>
+      </dl>
+    </dd>
+
+    <dt>X Display</dt>
+
+    <dd>This option is only relevant to X Window users. The DISPLAY
+    (Unix) or DECW$DISPLAY (VMS) variable is picked up
+    automatically from the environment if it has been previously
+    set.</dd>
+  </dl>
+
+  <p>[<a href="#ToC-InteractiveOptions">ToC</a>]</p>
+
+  <h2 id="id-Mail"><a name="Mail" id="Mail"><em>Comments and
+  mailto: links</em></a></h2>
+
+  <p>At any time while viewing documents within Lynx, you may use
+  the '<em>c</em>' command to send a mail message to the owner of
+  the current document if the author of the document has specified
+  ownership. (Note to authors: if you want to assign the ownership
+  to your document, you need to add into HEAD section a LINK
+  element with appropriate value for REV attribute. Two values are
+  recognized: <em>owner</em> and <em>made</em> (these are case
+  insensitive). For example,</p>
+  <pre>
+&lt;HEAD&gt;
+    &hellip;
+    &lt;LINK REV="made" HREF="mailto:user@somedomain.com"&gt;
+    &hellip;
+&lt;/HEAD&gt;
+</pre>You may also add a TITLE attribute with, for example, the
+name of your page) If no ownership is specified then comments are
+disabled. Certain links called <a href=
+"lynx_url_support.html#mailto_url">mailto:</a> links will also
+allow you to send mail to other people. Using the mail features
+within Lynx is straightforward.
+
+  <p>Once you have decided to send a comment or have selected a
+  <em>mailto:</em> link a new screen will appear showing you to
+  whom you are sending the message. Lynx will ask for your name,
+  your e-mail address, and the subject of the message. If you have
+  filled in the "personal mail address" field in the <em>Options
+  Menu</em>, your e-mail address will be filled in automatically.
+  After entering the above information, if you have an editor
+  defined in the <em>Options Menu</em> and you are not an anonymous
+  user then your specified editor will be spawned for you so that
+  you can enter your message. If you do not have an editor defined
+  or you are an anonymous user, a simple line mode input scheme
+  will allow you to enter your message.</p>
+
+  <p>To finish sending the message, exit your spawned editor or, if
+  you are using the simple line mode input scheme, type a
+  '<em>.</em>' (period) on a line by itself. You will be asked a
+  final time whether to send the message. If you press
+  '<em>y</em>', you will be prompted whether to append your
+  signature file if one was defined in <a href=
+  "#lynx.cfg">lynx.cfg</a> and is accessible, and then the message
+  will be sent, whereas if you press '<em>n</em>' the message will
+  be deleted. Entering Control-G in response to any prompts also
+  will cancel the mailing.</p>
+
+  <p>[<a href="#ToC-Mail">ToC</a>]</p>
+
+  <h2 id="id-News"><a name="News" id="News"><em>USENET News
+  posting</em></a></h2>
+
+  <p>While reading <a href=
+  "http://www.w3.org/LineMode/User/AboutNewsServers.html">news</a>
+  articles with Lynx you should see a link that says <em>Reply to:
+  user@host</em> and, if the nntp server from which you received
+  the article supports posting from your site, a link that says
+  <em>Followup to: newsgroup(s)</em></p>
+
+  <dl>
+    <dt>Reply to user@host</dt>
+
+    <dd>user@host will correspond to the mail address of the person
+    who posted the news article. Selecting the link will allow you
+    to send a message to the person who wrote the message you are
+    currently viewing. You will be given the option of including
+    the original message in your reply.</dd>
+
+    <dt>Followup to newsgroup(s)</dt>
+
+    <dd>Selecting this link will allow you to post back to the
+    newsgroup that you are currently reading and any newsgroups to
+    which the message was cross-posted. You will be given the
+    option of including the original message in your reply. Once
+    you have typed in your message, you will be asked for
+    confirmation of whether to proceed with the posting, and
+    whether to append your signature file if one was defined in
+    <a href="#lynx.cfg">lynx.cfg</a> and is accessible. See
+    <a href="lynx_url_support.html">Supported URLs</a> for more
+    information about the URL schemes for posting or sending
+    followups (replies) to nntp servers with Lynx. [<a href=
+    "#ToC-News">ToC</a>]</dd>
+  </dl>See also <a href=
+  "http://www.w3.org/Protocols/rfc977/rfc977">RFC 977</a>.
+
+  <h2 id="id-Bookmarks"><a name="Bookmarks" id="Bookmarks"><em>Lynx
+  bookmarks</em></a></h2>
+
+  <p>Bookmarks are entries in your <em>bookmark file</em>, which
+  record the URL of a document you may want to return to easily,
+  with a name of your choice to identify the document. To use
+  bookmarks you must first have specified a name for your bookmark
+  file in <a href="#lynx.cfg">lynx.cfg</a> or via the <em>Options
+  Menu</em>.</p>
+
+  <p>To save a bookmark to the document you wish to place in the
+  bookmark file press the '<em>a</em>' key and you will be
+  asked:</p>
+
+  <blockquote>
+    Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c):
+  </blockquote>Answer '<em>d</em>' to save a link to the document
+  you are currently viewing or '<em>l</em>' to save the link that
+  is currently selected on the page. Selecting '<em>c</em>' will
+  cancel without saving anything to your bookmark file.
+
+  <p>A bookmark file will be created in conjunction with acting on
+  the '<em>a</em>'dd command if it does not already exist.
+  Otherwise, the link will be added to the bottom of the
+  pre-existing bookmark file. You must have created a bookmark file
+  via the '<em>a</em>'dd command before you can view it.</p>
+
+  <p>Use the '<em>v</em>' command to view the list of bookmarks you
+  have saved. While viewing the bookmark list you may select a
+  bookmark as you would any other link.</p>
+
+  <p>You can remove a link from the bookmark list by pressing the
+  '<em>r</em>' key when positioned on that link. You also can use a
+  standard text editor (e.g., via the '<em>e</em>'dit command while
+  viewing a bookmark file, if an external editor has been defined
+  via the <em>Options menu</em>) to delete or re-order links in the
+  bookmark file, or to modify a link name by editing the content of
+  the <em>A</em>nchor element for the link, but you should not
+  change the format within the line for the link, consisting of an
+  <em>LI</em> element followed by the <em>A</em>nchor element, nor
+  cause the line to become wrapped to a second line. You similarly
+  can change the link destination by editing the double-quoted
+  value for the <em>HREF</em> attribute in the <em>A</em>nchor
+  start tag, but you should not otherwise change the spacing within
+  the start tag, nor add other attributes. You can add a new link
+  while editing by copying an existing line for a link, to ensure
+  the proper format, and then modifying its <em>HREF</em> value and
+  <em>A</em>nchor content, but you should not add any other HTML
+  markup to the bookmark file. If the format and spacing (other
+  than the <em>A</em>nchor content or <em>HREF</em> value) within
+  lines is changed or other HTML markup is added, the
+  '<em>a</em>'dd and '<em>r</em>'emove commands may not work
+  properly.</p>
+
+  <p>When multi-bookmarks (see <a href=
+  "#InteractiveOptions">Options Menu</a>) is OFF, you will always
+  view or add links to the default bookmark file. When it is
+  STANDARD, a menu of up to 26 bookmark files will be invoked, and
+  you select the bookmark file by entering its letter token. When
+  it is ADVANCED, you will be prompted for the letter token, but
+  can enter '<em>=</em>' to invoke the STANDARD selection menu, or
+  <em>RETURN</em> for the default bookmark file. [<a href=
+  "#ToC-Bookmarks">ToC</a>]</p>
+
+  <h2 id="id-Jumps"><a name="Jumps" id="Jumps"><em>Jump
+  Command</em></a></h2>
+
+  <p>Similar to the bookmarks file is the jumps file: for an
+  example, look in the <em>samples</em> subdirectory in the
+  distribution package. To use the jumps command, create a
+  <em>jumps file</em> with the same format as the sample file, but
+  containing your own URLs &amp; short-cut names. Once you have
+  done that, typing '<em>j</em>' prompts you to enter a short-cut
+  name, which will take you straight to the URL associated with the
+  short-cut in the jumps file, much like using '<em>g</em>'. If you
+  want to check which short-cuts are available, type '<em>?</em>'
+  at the jump prompt for the full list.</p>
+
+  <p>You can set up a jumps file which makes Lynx prompt for
+  parameters, e.g., as part of a search. Do this by putting a "%s"
+  marker in the URL at each point where you want Lynx to fill in
+  text. When you activate the corresponding jump, Lynx will prompt
+  you for the parameters, one by one.</p>
+
+  <p>All jump short-cuts you have entered are saved in a circular
+  buffer in the same way as with '<em>g</em>' and '<em>/</em>'
+  (search):<br>
+  previous entries can be retrieved with <em>up-arrow</em> or
+  <em>down-arrow</em>.</p>
+
+  <p>The jumps feature is especially useful for system
+  administrators who have unsophisticated users to care for, but
+  ordinary Lynx users who have a number of URLs they regularly
+  visit while browsing may find using the jumps command speeds
+  their movements.</p>
+
+  <p>For more advice how to set up the jumps command on your system
+  and how to define short-cut names, read <a href=
+  "#lynx.cfg">lynx.cfg</a> .</p>
+
+  <p>[<a href="#ToC-Jumps">ToC</a>]</p>
+
+  <h2 id="id-DirEd"><a name="DirEd" id="DirEd"><em>Directory
+  Editing</em></a></h2>
+
+  <p>Lynx offers extended DIRED support on Unix (on VMS the more
+  powerful CSwing program is recommended for character cell
+  terminals, and can be offered via Lynx as a jump shortcut or
+  execution link). When a local directory is accessed using a URL
+  of the form <em>file://localhost/path/</em>, a new set of
+  commands is available. With DIRED support you can create, edit,
+  delete, copy, and move files on your local system. The commands
+  available in DIRED mode are</p>
+
+  <dl>
+    <dt><code>C)reate</code></dt>
+
+    <dd>Type '<em>c</em>' to create a new file. New file will be
+    empty.</dd>
+
+    <dt><code>D)ownload</code></dt>
+
+    <dd>Type '<em>d</em>' to download using one of the pre-defined
+    options.</dd>
+
+    <dt><code>E)dit</code></dt>
+
+    <dd>Type '<em>e</em>' to spawn the editor defined in
+    <em>Options Menu</em> and load a selected file for
+    editing.</dd>
+
+    <dt><code>F)ull Menu</code></dt>
+
+    <dd>Type '<em>f</em>' to show full menu of options available
+    for selection. Menu may vary according to type of file selected
+    and compression facilities available. 
+    <!-- List of full menu options --></dd>
+
+    <dt><code>M)odify</code></dt>
+
+    <dd>Type '<em>m</em>' to modify the name or location of file.
+    Then type '<em>n</em>' to rename the file or '<em>l</em>' to
+    move the file to a different location.</dd>
+
+    <dt><code>R)emove</code></dt>
+
+    <dd>Type '<em>r</em>' to remove the selected file or
+    directory.</dd>
+
+    <dt><code>T)ag</code></dt>
+
+    <dd>Type '<em>t</em>' to tag highlighted file. Further
+    operations will be performed on tagged files instead of
+    highlighted ones.</dd>
+
+    <dt><code>U)pload</code></dt>
+
+    <dd>Type '<em>u</em>' to upload a file to the present
+    directory. An uploading method must have been pre-defined in
+    <a href="#lynx.cfg">lynx.cfg</a> .</dd>
+  </dl>
+
+  <p>[<a href="#ToC-DirEd">ToC</a>]</p>
+
+  <h2 id="id-ColorMouse"><a name="ColorMouse" id=
+  "ColorMouse"><em>Using Color &amp; the Mouse</em></a></h2>
+
+  <p>A limited range of colors &amp; mouse commands are available,
+  if the user chooses: see <em>lynx.cfg</em> for details. [<a href=
+  "#ToC-ColorMouse">ToC</a>]</p>
+
+  <h2 id="id-MiscKeys"><a name="MiscKeys" id=
+  "MiscKeys"><em>Scrolling and Other useful commands</em></a></h2>
+
+  <p>A summary of all the keystroke commands and their key bindings
+  can be invoked via the KEYMAP command, normally mapped to
+  '<em>k</em>' and '<em>K</em>'. The following describes some of
+  the most commonly used commands.</p>
+
+  <dl>
+    <dt><em>^A</em></dt>
+
+    <dd><em>Control-A</em> jumps you to the beginning of the
+    current document. It is a synonym for the Keypad <em>Home</em>
+    key, and can be used also when <em>Links are numbered</em> mode
+    is on. The <em>Find</em> Function key also is a synonym, and
+    ideally the latter has been mapped to the Function key labeled
+    <em>Home</em> if you are using an IBM Enhanced Keyboard.</dd>
+
+    <dt><em>^E</em></dt>
+
+    <dd><em>Control-E</em> jumps you to the end of the current
+    document. It is a synonym for the Keypad <em>End</em> key, and
+    can be used also when <em>Links are numbered</em> mode is on.
+    The <em>Select</em> Function key also is a synonym, and ideally
+    the latter has been mapped to the Function key labeled
+    <em>End</em> if you are using an IBM Enhanced Keyboard.</dd>
+
+    <dt><em>^B</em></dt>
+
+    <dd><em>Control-B</em> normally jumps you to the previous page
+    of the current document, and thus is a synonym for the Keypad
+    and Function <em>Page-Up</em> keys. However, <em>Control-B</em>
+    acts as <em>right-arrow</em> when emacs-like key movement is
+    enabled (see <a href="#InteractiveOptions">Lynx Options
+    Menu</a>).</dd>
+
+    <dt><em>^F</em></dt>
+
+    <dd><em>Control-F</em> normally jumps you to the next page of
+    the current document, and thus is a synonym for the Keypad and
+    Function <em>Page-Down</em> keys. However, <em>Control-F</em>
+    becomes <em>right-arrow</em> when emacs-like key movement is
+    enabled.</dd>
+
+    <dt><em>^N</em></dt>
+
+    <dd><em>Control-N</em> normally jumps you forward two lines in
+    the current document. The <em>Remove</em> Function key (labeled
+    <em>Delete</em> on IBM Enhanced keyboards, and distinct from
+    their <em>Backspace</em> key) is a synonym. <em>Control-N</em>
+    becomes <em>down-arrow</em> when emacs-like key movement is
+    enabled.</dd>
+
+    <dt><em>^P</em></dt>
+
+    <dd><em>Control-P</em> normally jumps you back two lines in the
+    current document. The <em>Insert</em> Function key is a
+    synonym. <em>Control-P</em> becomes <em>up-arrow</em> when
+    emacs-like key movement is enabled.</dd>
+
+    <dt><em>)</em></dt>
+
+    <dd>The <em>)</em> command jumps you forward half a page in the
+    current document.</dd>
+
+    <dt><em>(</em></dt>
+
+    <dd>The <em>(</em> command jumps you back half a page in the
+    current document.</dd>
+
+    <dt><em>#</em></dt>
+
+    <dd>The '<em>#</em>' command jumps you to the pseudo Toolbar or
+    Banner if present in the current document. Use
+    <em>left-arrow</em> to return from there to your previous
+    position in the document.</dd>
+
+    <dt><em>!</em></dt>
+
+    <dd>When '<em>!</em>' is pressed your default shell will be
+    spawned. When you quit or exit the shell you will return to
+    Lynx (usually <em>exit</em> under Unix and <em>logout</em>
+    under VMS). This command is usually disabled for anonymous
+    users. On VMS, '<em>$</em>' normally is a synonym. On Win32,
+    this has no effect [???].</dd>
+
+    <dt><em>g</em></dt>
+
+    <dd>The '<em>g</em>' command allows any URL to be viewed.
+    Pressing the '<em>g</em>' command will bring up a prompt asking
+    for a URL. Type in the URL that you wish to view. All
+    previously entered goto URLs are saved in a circular buffer,
+    and can be accessed at the prompt by pressing the
+    <em>up-arrow</em> or <em>down-arrow</em> keys.</dd>
+
+    <dt><em>G</em></dt>
+
+    <dd>The '<em>G</em>' command allows you to edit the URL of the
+    current document and then use that as a goto URL. Pressing the
+    '<em>G</em>' command will bring up a prompt asking you to edit
+    the current document's URL. If you do not modify it, or
+    completely delete it, or enter Control-G, the command will be
+    cancelled. If the current document has POST content associated
+    with it, an Alert will be issued. If you do edit that URL, and
+    it does not simply involve a fragment change (for seeking a
+    position in the current document), the modified URL will be
+    submitted with method GET and no POST content. If a
+    modification of the current document's URL results in a
+    submission, that modified URL will be entered into the circular
+    buffer for goto URLs, and can be accessed for further
+    modification via the '<em>g</em>' command.</dd>
+
+    <dt><em>E</em></dt>
+
+    <dd>The '<em>E</em>' command allows you to edit the URL (or
+    ACTION) of the current link and then use that as a goto URL.
+    Pressing the '<em>E</em>' command will bring up a prompt asking
+    you to edit the current link's URL. If you do not modify it, or
+    completely delete it, or enter Control-G, the command will be
+    cancelled. Otherwise, the request for the 'E'dited URL will be
+    sent with method GET, and will be entered into the circular
+    buffer for goto URLs so that it can be accessed for further
+    modification via the '<em>g</em>' command. Note that lower case
+    'e' invokes the external editor for the current document.</dd>
+
+    <dt><em>=</em></dt>
+
+    <dd>The '<em>=</em>' command shows information about the
+    current document and the currently selected link if there is
+    one. The number of lines in the file, URL, title, owner, and
+    type are shown.</dd>
+
+    <dt><em>^T</em></dt>
+
+    <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
+    <em>Control-T</em> and then <em>Control-R</em> to reload the
+    document in trace mode. You may then examine the <em>Lynx Trace
+    Log</em> file with the <em>;</em> command if enabled (see
+    below), watch out especially for lines marked with a number of
+    asterisks '<code>*****</code>'. You also can submit the
+    document for validation via links in the online help menu. If
+    you are able to diagnose the problem, send a message about it
+    to the document's author.</dd>
+
+    <dt><em>;</em></dt>
+
+    <dd>The <em>;</em> command shows the <em>Lynx Trace Log</em>
+    (<em>Lynx.trace</em> in the home directory) if one has been
+    started for the current session. If a log has not been started,
+    any trace messages will be sent to the screen (and will disturb
+    the normal display) unless the system supports piping and that
+    was used to redirect stderr messages to a file. The log is
+    started when Lynx trace mode is turned on via the
+    <em>-trace</em> command line switch, or via the
+    <em>Control-T</em> toggle, if Lynx has been compiled to log the
+    trace and other stderr messages by default. If not, ability to
+    create a log can be toggled on with the <em>-tlog</em> switch.
+    Note that this ability is probably disabled in anonymous or
+    validation accounts.</dd>
+
+    <dt><a name="asterisk-key" id=
+    "asterisk-key"><em>*</em></a></dt>
+
+    <dd>The '<em>*</em>' command toggles image_links mode on and
+    off. When on, links will be created for all images, including
+    inline images. If you have an image viewer mapped to the
+    image's MIME type, you can activate such links to view an
+    inline image. You should normally have this mode toggled
+    off.</dd>
+
+    <dt><em>@</em></dt>
+
+    <dd>The '<em>@</em>' command toggles raw 8-bit or CJK mode on
+    and off. When on, the charset is assumed to match the selected
+    character set and 8-bit characters are not reverse translated
+    with respect to the ISO-8859-1 conversion tables.</dd>
+
+    <dt><a name="lbracket-key" id=
+    "lbracket-key"><em>[</em></a></dt>
+
+    <dd>The '<em>[</em>' command toggles pseudo_inlines mode on and
+    off. When on, inline images which have no ALT string specified
+    will have an <em>[INLINE]</em> pseudo-ALT string inserted in
+    the Lynx display. When off, they will be treated as having
+    ALT="" (i.e., they'll be ignored). If image_links mode is
+    toggled on, the pseudo-ALT strings will be restored, to serve
+    as links to the inline images' sources.</dd>
+
+    <dt><em>]</em></dt>
+
+    <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 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. Note that for form submissions, http
+    servers vary in whether they'll treat HEAD requests as valid
+    and return the CGI script's headers, or treat it as invalid and
+    return an error message.</dd>
+
+    <dt><em>^K</em></dt>
+
+    <dd><em>Control-K</em> invokes the <a href=
+    "keystrokes/cookie_help.html">Cookie Jar Page</a> if it
+    contains cookies.</dd>
+
+    <dt><em>^X</em></dt>
+
+    <dd><em>Control-X</em> invokes the <a href="#Cache">Cache Jar
+    Page</a> if it contains cached documents.</dd>
+
+    <dt><em>z</em></dt>
+
+    <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>
+
+    <dt><em>numbers</em></dt>
+
+    <dd>Lynx offers other, advanced navigation features when
+    numbers are used to invoke the <a href=
+    "keystrokes/follow_help.html">Follow Link (or goto link or
+    page) number:</a> or <a href=
+    "keystrokes/follow_help.html#select-option">Select Pop-up
+    Option Number:</a> prompts.</dd>
+  </dl>
+
+  <p>[<a href="#ToC-MiscKeys">ToC</a>]</p>
+
+  <h2 id="id-Forms"><a name="Forms" id="Forms"><em>Lynx and HTML
+  Forms</em></a></h2>
+
+  <p>This section describes the Lynx Forms Interface. HTML gives
+  document providers the ability to create on-line forms which may
+  be filled out when the document is viewed. When a form is
+  submitted the information on the form can be used to search a
+  database or complete a survey.</p>
+
+  <p>An HTML Form provides for the use of buttons to perform an
+  action (such as <em>submit</em>), checkboxes, radio buttons or
+  popups to select options from a list, and fields for entering
+  text.</p>
+
+  <dl>
+    <dt>Buttons:</dt>
+
+    <dd>Buttons are displayed in the same way that Lynx displays
+    links in a document. To "push" the button press the
+    <em>right-arrow</em> or <em>Return</em> key. If it is a form
+    submission button, you also can use the NOCACHE ('<em>x</em>')
+    or DOWNLOAD ('<em>d</em>') keystroke commands to "push" the
+    button (see below).</dd>
+
+    <dt>Checkboxes and Radio buttons</dt>
+
+    <dd>Checkboxes are displayed as square brackets: <em>[ ]</em>
+    and radio buttons are displayed as parenthesis: <em>( )</em>.
+    When a box is checked or a button selected, an <em>x</em>
+    appears in the brackets: <em>[x]</em> or an asterisk appears
+    within the parenthesis: <em>(*)</em>. To check a box or select
+    a radio button press the <em>right-arrow</em> or
+    <em>Return</em> key.</dd>
+
+    <dt>Selection Fields</dt>
+
+    <dd>Selection fields are displayed as brackets with the default
+    option displayed between them: <em>[default__]</em>. To select
+    an option press the <em>right-arrow</em> or <em>Return</em>
+    key. A box with a border of asterisks (or line-drawing
+    characters) will pop up with the list of possible options
+    listed within the box. Use the <em>up-arrow</em>,
+    <em>down-arrow</em>, <em>page-up</em>, <em>page-down</em>, and
+    other navigation keys to move the cursor among options, and the
+    <em>right-arrow</em> or <em>Return</em> key to select an
+    option. You also can use the '<em>/</em>' and '<em>n</em>'ext
+    <a href="#Search">searching</a> commands for navigating to
+    options which contain particular strings. <em>NOTE</em> that
+    the popup menu feature can be disabled via compilation and/or
+    configuration options, or via the <a href=
+    "#InteractiveOptions">Options Menu</a>, in which case the
+    selection field options will be converted to a list of radio
+    buttons. The default setting for use of popups or radio button
+    lists can be toggled via the <em>-popup</em> command line
+    switch.</dd>
+
+    <dt>Text Entry Fields</dt>
+
+    <dd>
+      Text entry (INPUT) fields are displayed as a row of
+      underscores the length of the entry field: <em>_______</em>.
+      You may enter text directly by typing at the keyboard. Use
+      the <a href="keystrokes/edit_help.html">Line Editor</a> keys
+      to correct errors. If you try to input more text than the
+      field can hold, the line editor will not accept the
+      additional characters. If you fill a text field the cursor
+      will not move off the field but remain at the last field
+      position. Use the <em>up-arrow</em>, and <em>down-arrow</em>,
+      <em>TAB</em> or <em>Return</em> keys to move up, or down from
+      the text entry field. NOTE, however, that <em>Return</em>
+      also will <a href="#submit">submit</a> the form if the text
+      entry field is the only non-hidden field in the form. If
+      <a name="tna" id="tna">"Textfields Need Activation"</a> mode
+      is turned on (with the <kbd>-tna</kbd> command-line option or
+      in <a href="#lynx.cfg">lynx.cfg</a>), then text entry fields
+      do not become active immediately upon being selected, as
+      normally. Keystrokes have their normal command meaning unless
+      the Line Editor gets activated with <em>Return</em> or
+      <em>Right Arrow</em>. This mode can be used to avoid "getting
+      stuck" in input fields, especially by users who rarely fill
+      out forms.
+
+      <p><a name="CtrlVNote" id="CtrlVNote">NOTE:</a> If you have a
+      text input field selected you will not have access to most of
+      the Lynx keystroke commands, because they are interpreted by
+      the <a href="keystrokes/edit_help.html">Line Editor</a> as
+      either text entries or editing commands. Select a button or
+      box when you want to use Lynx keystrokes; or prefix your
+      keystroke with <em>^V</em> to temporarily escape from line
+      editing.</p>
+
+      <p>Some flavors of UNIX, shells &amp; terminal settings
+      require that you enter <em>^V^Ve</em> in order to start the
+      external editor, as they also use <em>^V</em> as default
+      command-line quote key (called `lnext' in stty man pages and
+      `stty -a' output); to avoid this, you can put `stty lnext
+      undef' in your .cshrc file (or .profile or .bashrc, depending
+      on what shell you use), or invoke Lynx with a wrapper script,
+      e.g.</p>
+
+      <p><code>&nbsp;&nbsp;#!/bin/sh<br>
+      &nbsp;&nbsp;stty lnext undef<br>
+      &nbsp;&nbsp;$HOME/bin/lynx "$@"<br>
+      &nbsp;&nbsp;stty lnext ^V<br>
+      &nbsp;&nbsp;exit</code></p>
+
+      <p>NB when NOT in the Line Editor, <em>^V</em> is by default
+      bound to the command to switch between SortaSGML and TagSoup
+      HTML parsing (i.e., SWITCH_DTD). To avoid confusion, either
+      of these separate functions could be changed (mapped away)
+      with a KEYMAP directive in <em>lynx.cfg</em>. For
+      example,</p>
+
+      <p>&nbsp;&nbsp;KEYMAP:^V:DO_NOTHING<br>
+      &nbsp;&nbsp;KEYMAP:#:SWITCH_DTD</p>
+
+      <p>would map SWITCH_DTD away from <em>^V</em> to <em>#</em>,
+      while leaving its default Line Editor function as a command
+      escape in place. On the other hand,</p>
+
+      <p>&nbsp;&nbsp;KEYMAP:^V::NOP:1<br>
+      &nbsp;&nbsp;KEYMAP:^_::LKCMD:1</p>
+
+      <p>would move <em>^V</em>'s Line Editor binding as command
+      escape to <em>^_</em> for the first Line Edit style, letting
+      <em>^V</em> still act as SWITCH_DTD outside of text input
+      fields.</p>
+    </dd>
+
+    <dt>TEXTAREA Fields</dt>
+
+    <dd>TEXTAREA fields are for most purposes handled as if they
+    were a series of text entry (INPUT) fields for which successive
+    lines imply a newline at the end of the preceding line. You
+    enter text on each line to construct the overall message. Any
+    blank lines at the bottom of the TEXTAREA field will be
+    eliminated from the submission. The <em>up-arrow</em>, and
+    <em>down-arrow</em> or <em>Return</em> keys move you to the
+    preceding, or next line of the overall message, as for INPUT
+    fields. The <em>TAB</em> key will move you down beyond the
+    bottom of the TEXTAREA field, and <em>Back Tab</em> (if
+    available, e.g., as Shift-Tab, and correctly mapped in the
+    terminal description) will move backward to a link or field
+    before the TEXTAREA.</dd>
+
+    <dt>Editing TEXTAREA Fields and Special TEXTAREA Functions</dt>
+
+    <dd>
+      TEXTAREA fields can be edited using an external editor. The
+      statusline should tell you when this is possible and what key
+      to use, it might for example say
+      <pre>
+          <strong>(Textarea) Enter text. </strong>[ ..... ]<strong> (^Xe for editor).</strong>
+</pre>An external editor has to be defined, for example in the
+<a href="#InteractiveOptions">Options Menu</a>, before you can
+start using this function.
+
+      <p>A key to invoke external TEXTAREA editing is normally
+      provided by the <a href=
+      "keystrokes/edit_help.html">Line-Editor Key</a> Bindings. A
+      KEYMAP directive in <em>lynx.cfg</em> can also be used to
+      make a different key invoke external editing; it will then
+      normally be necessary to prefix that key with <em>^V</em> to
+      "escape" from line-editing. Two variants exist,<br>
+      &nbsp;&nbsp;KEYMAP:e:EDITTEXTAREA<br>
+      or<br>
+      &nbsp;&nbsp;KEYMAP:e:DWIMEDIT<br>
+      (the first is only functional for TEXTAREA editing, while the
+      second allows to use the same key for normal <a href=
+      "#FileEdit">file editing</a> <em>as long as both functions
+      don't conflict</em>).</p>
+
+      <p>Please see the <a href="#CtrlVNote">note above</a> for
+      details about <em>^V</em> behavior.</p>You can also use two
+      other special TEXTAREA functions. Again, these are already
+      bound to key sequences in the <a href=
+      "keystrokes/edit_help.html#TASpecial">Line-Editor
+      Bindings</a>, by default <em>^Xg</em> and <em>^Xi</em>. You
+      can use different keys by adding KEYMAP bindings to your
+      <em>lynx.cfg</em> file, e.g.
+
+      <p>&nbsp;&nbsp;KEYMAP:$:GROWTEXTAREA<br>
+      &nbsp;&nbsp;KEYMAP:#:INSERTFILE</p>
+
+      <p>With these bindings, (in a TEXTAREA only) <em>^V$</em>
+      would add 5 lines to the TEXTAREA and <em>^V#</em> would
+      prompt for the name of an existing file to be inserted into
+      the TEXTAREA (above the cursorline). An automatic variation
+      of GROWTEXTAREA is normally compiled in, so that hitting
+      <em>Enter</em> with the cursor on the last line adds a new
+      line to the TEXTAREA, with the cursor on it.</p>
+
+      <p>If you have some single keys (or control keys) to spare
+      that you do not need for their normal purposes, you can
+      dedicate those keys to invoke the special functions (without
+      requiring a prefix key). For example, to use the <em>^E</em>
+      key for the DWIMEDIT action, and the <em>Insert</em> key for
+      the INSERTFILE action, use<br>
+      &nbsp;&nbsp;KEYMAP:^E:DWIMEDIT:PASS<br>
+      &nbsp;&nbsp;KEYMAP:0x10C:INSERTFILE:PASS<br>
+      (see lynx.cfg for other keystroke codes to use).</p>
+
+      <p>Note that the default bindings that use <em>^X</em> as a
+      prefix key <em>may</em> also work by substituting the
+      <kbd>Escape</kbd> key for ^X. If your keyboard has a modifier
+      (Meta) key that gets transmitted as an ESC prefix, for
+      example <kbd>Alt</kbd>, you can then even use <em>Alt-e</em>
+      instead of <em>^Xe</em>, <em>Alt-g</em> instead of
+      <em>^Xg</em>, and so on. But this does not work reliably
+      everywhere (it depends on the way Lynx is compiled, including
+      which libraries are used, and behavior of the connection and
+      terminal type).</p>
+    </dd>
+  </dl>In general, you can move around the form using the standard
+  Lynx navigation keys. The <em>up-arrow</em> and
+  <em>down-arrow</em> keys, respectively, select the previous or
+  next field, box, or button. The <em>TAB</em> key selects the next
+  field, box, or button.
+
+  <p>To <a name="submit" id="submit"><em>submit</em></a> the form
+  press <em>right-arrow</em> or <em>Return</em> when positioned on
+  the form's submit button. If you've submitted the form previously
+  during the Lynx session, have not changed any of the form
+  content, and the METHOD was <em>GET</em>, Lynx will retrieve from
+  its cache what was returned from the previous submission. If you
+  wish to resubmit that form to the server with the same content as
+  previously, use the NOCACHE command ('<em>x</em>') when
+  positioned on the submit button. The <em>right-arrow</em> and
+  <em>Return</em> keys also will invoke a no-cache resubmission if
+  the reply from a form submission included a META element with a
+  no-cache Pragma or Cache-Control directive:<br></p>
+  <pre>
+      <em>&lt;META HTTP-EQUIV="Pragma" CONTENT="no-cache"&gt;</em>
+      <em>&lt;META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"&gt;</em>
+</pre>or the server sent a "Pragma" or "Cache-Control" MIME header
+with a no-cache directive.
+
+  <p>You also can use the DOWNLOAD ('<em>d</em>') keystroke command
+  when positioned on a form submit button if you wish to download
+  the server's reply to the submission instead of having Lynx
+  render and display it.</p>
+
+  <p>Forms which have <em>POST</em> as the METHOD, or a <a href=
+  "lynx_url_support.html#mailto_url">mailto:</a> URL as the ACTION,
+  are always resubmitted, even if the content has not changed, when
+  you activate the <em>submit</em> button. Lynx normally will not
+  resubmit a form which has <em>POST</em> as the METHOD if the
+  document returned by the form has links which you activated, and
+  then you go back via the PREV_DOC (<em>left-arrow</em>) command
+  or via the <a href="keystrokes/history_help.html">History
+  Page</a>. Lynx can be compiled so that it resubmits the form in
+  those cases as well, and the default can be changed via <a href=
+  "#lynx.cfg">lynx.cfg</a>, and toggled via the
+  <em>-resubmit_posts</em> command line switch.</p>
+
+  <p>If the form has one <em>text entry</em> field and no other
+  fields except, possibly, hidden INPUT fields not included in the
+  display, then that field also serves as a <em>submit</em> button,
+  and pressing <em>right-arrow</em> or <em>Return</em> on that
+  field will invoke submission of the form. Be sure to use
+  <em>up-arrow</em>, <em>down-arrow</em> or <em>TAB</em> to move
+  off the text entry field, in such cases, if it is not your
+  intention to submit the form (or to retrieve what was returned
+  from an earlier submission if the content was not changed and the
+  METHOD was <em>GET</em>).</p>
+
+  <p>Forms can have multiple <em>submit</em> buttons, if they have
+  been assigned NAMEs in the markup. In such cases, information
+  about which one of the buttons was used to submit the form is
+  included in the form content.</p>
+
+  <p>Inlined images can be used as submit buttons in forms. If such
+  buttons are assigned NAMEs in the markup, for graphic clients
+  they can also serve as <a href="#USEMAP">image maps</a>, and the
+  x,y coordinates of the graphic client's cursor position in the
+  image when it was <em>clicked</em> are included in the form
+  content. Since Lynx cannot inline the image, and the user could
+  not have moved a cursor from the origin for the image, if no
+  alternatives are made available in the markup Lynx sends a 0,0
+  coordinate pair in the form content. Document authors who use
+  images as submit buttons, but have at least some concern for text
+  clients and sight-challenged Webizens, should include VALUEs for
+  the buttons in such markup. Lynx will then display the string
+  assigned to the VALUE, as it would for a normal submit button.
+  Some document authors incorrectly use an ALT instead of VALUE
+  attribute for this purpose. Lynx "cooperates" by treating ALT as
+  a synonym for VALUE when present in an INPUT tag with
+  TYPE="image". If neither a VALUE nor an ALT attribute is present,
+  Lynx displays "[IMAGE]-Submit" as the string for such buttons. If
+  clickable images is set, the "[IMAGE]" portion of the string is a
+  link for the image, and the "Submit" portion is the button for
+  submitting the form. Otherwise, the entire string is treated as a
+  submit button. If a VALUE or ALT attribute is present and
+  clickable images is set, Lynx prepends "[IMAGE]" as a link for
+  the image, followed by '-' and then the attribute's value as the
+  displayed string for the submit button. Note that earlier
+  versions of Lynx would send a name=value pair instead of a 0,0
+  coordinate pair if a TYPE="image" submit button was NAME-ed, had
+  a VALUE attribute in the INPUT tag, and was used to submit the
+  form. The script which analyzes the form content thus could be
+  made aware whether the submission was by a user with a graphic
+  client and had image loading turned on, or by a user who did not
+  see the image nor make a conscious choice within it. However,
+  requests that this be included in HTML specifications
+  consistently have fallen on deaf ears, and thus Lynx now "fakes"
+  a 0,0 coordinate pair whether or not a VALUE or ALT attribute is
+  present in the INPUT tag. Ideally, the script which analyzes the
+  submitted content will treat the 0,0 coordinate pair as an
+  indicator that the user did not see the image and make a
+  conscious choice within it.</p>
+
+  <p>Forms can have <em>hidden</em> INPUT fields, which are not
+  displayed, but have NAMEs and VALUEs included in the content.
+  These often are used to keep track of information across a series
+  of related form submissions, but have the potential for including
+  information about the user that might be considered to represent
+  an invasion of privacy. NOTE, in this regard, that Lynx has
+  implemented the <a href="http://www.w3.org/Markup/html3/">HTML
+  3.0</a> <em>DISABLED</em> attribute for <em>all</em> of its form
+  fields. These can be used to keep track of information across
+  submissions, and to cast it unmodifiable in the current form, but
+  keep the user aware that it will be included in the
+  submission.</p>
+
+  <p>Forms most commonly are submitted to http servers with the
+  content encoded as
+  <em>ENCTYPE="application/x-www-form-urlencoded"</em> for analysis
+  by a script, and Lynx treats that as the default if no ENCTYPE is
+  specified in the FORM start tag. However, you can specify a
+  <a href="lynx_url_support.html#mailto_url">mailto</a> URL as the
+  form's ACTION to have the form content sent, instead, to an email
+  address. In such cases, you may wish to specify
+  <em>ENCTYPE="text/plain"</em> in the form markup, so that the
+  content will not be encoded, but remain readable as plain
+  text.</p>
+
+  <p>Lynx also supports
+  <em>ENCTYPE="application/sgml-form-urlencoded"</em> for which all
+  reserved characters in the content will be hex escaped, as with
+  <em>application/x-www-form-urlencoded</em>, but semicolons
+  ('<em>;</em>') instead of ampersands ('<em>&amp;</em>') will be
+  used as the separator for name=value pairs in the form content.
+  The use of semicolons is preferred for forms with the
+  <em>GET</em> METHOD, because the <em>GET</em> METHOD causes the
+  encoded form content to be appended as a <em>?searchpart</em> for
+  the form's ACTION, and if such URLs are used in
+  <em>text/html</em> documents or bookmark files without conversion
+  of the ampersands to SGML character references
+  (<em>&amp;amp;</em> or <em>&amp;#38;</em>), their being followed
+  by form field NAMEs which might correspond to SGML entities could
+  lead to corruption of the intended URL.</p>
+
+  <p>NOTE, in this regard, that Lynx converts ampersands to
+  <em>&amp;amp;</em> when creating bookmarks, and thus the bookmark
+  links will not be vulnerable to such corruptions. Also NOTE that
+  Lynx allows you to save links in your bookmark file for documents
+  returned by forms with the <em>GET</em> METHOD, and which thus
+  have the content appended as a <em>?searchpart</em>, but not if
+  the METHOD was <em>POST</em>, because the content would be lost
+  and the link thus would be invalid.</p>
+
+  <p>Lynx supports <em>ENCTYPE="multipart/form-data"</em> for
+  sending form content with name=value pairs encoded as multipart
+  sections with individual MIME headers and boundaries. However,
+  Lynx does not yet support INPUTs with <em>TYPE="file"</em> or
+  <em>TYPE="range"</em> and will set the <em>DISABLED</em>
+  attribute for all of the form's fields if any INPUTs with either
+  of those two TYPEs are present, so that the form can't be
+  submitted. Otherwise, Lynx will submit the form with the
+  multipart ENCTYPE.</p>
+
+  <p>A
+  <em>Content-Disposition:&nbsp;file;&nbsp;filename=name.suffix</em>
+  header can be used by CGI scripts to set the suggested filename
+  offered by Lynx for '<em>d</em>'ownload and '<em>p</em>'rint menu
+  options to save or mail the body returned by the script following
+  submission of a FORM. Otherwise, Lynx uses the last symbolic
+  element in the path for the FORM's ACTION, which is normally the
+  script, itself, or a PATH_INFO field, and thus might be
+  misleading. This also can be done via a META element in any
+  document:</p>
+  <pre>
+      <em>&lt;META HTTP-EQUIV="Content-Disposition"
+            CONTENT="file; filename=name.suffix"&gt;</em>
+</pre>
+
+  <p>[<a href="#ToC-Forms">ToC</a>]</p>
+
+  <h2 id="id-Images"><a name="Images" id="Images"><em>Lynx and HTML
+  Images</em></a></h2>
+
+  <p>As a text browser, Lynx does not display images as such -- you
+  need to define a viewer in <em>lynx.cfg</em>: see there -- , but
+  users can choose a number of ways of showing their presence.</p>
+
+  <p>There are 3 choices in <em>lynx.cfg</em>, with 2 corresponding
+  keys:</p>
+  <pre>
+     MAKE_LINKS_FOR_ALL_IMAGES        *  IMAGE_TOGGLE
+     MAKE_PSEUDO_ALTS_FOR_INLINES     [  INLINE_TOGGLE
+     VERBOSE_IMAGES                   no corresponding key
+</pre>
+
+  <p>You can also use the <em>Options Menu</em>, as outlined
+  below:</p>
+  <pre>
+     key  lynx.cfg       FM KM .lynxrc    variable in source
+
+       *  MAKE_LINKS_     Y  N       N    clickable_images
+       [  MAKE_PSEUDO_    Y  N       N    pseudo_inline_alts
+          VERBOSE_        Y  Y       Y    verbose_img
+
+FM = Form-based Menu ; KM = Key-based Menu ;
+in  .lynxrc ,  VERBOSE_IMAGES  is called `verbose_images':
+the other two cannot be saved between sessions.
+</pre>
+
+  <p>In the Form-based Menu, the 3-way `Show images' selection
+  combines the effects of the `*' &amp; `[' keys, as follows:</p>
+  <pre>
+     Ignore      clickable_images = FALSE, pseudo_inline_alts = FALSE
+     As labels   clickable_images = FALSE, pseudo_inline_alts = TRUE
+     As links    clickable_images = TRUE,  pseudo_inline_alts = unchanged
+</pre>
+
+  <h2 id="id-Tables"><a name="Tables" id="Tables"><em>Lynx and HTML
+  Tables</em></a></h2>
+
+  <p>HTML includes markup for creating <em>tables</em> structured
+  as arrays of cells aligned by columns and rows on the displayed
+  page.</p>
+
+  <p>Lynx recognizes the TABLE element and all of its associated
+  elements as described in <a href=
+  "http://www.faqs.org/rfcs/rfc1942.html">RFC 1942</a> and will
+  process any ID attributes in the start tags for handling as
+  NAME-ed anchors, but does not create actual <em>tables</em>.
+  Instead, it treats the TR start tag as a collapsible BR (line
+  break), and inserts a collapsible space before the content of
+  each TH and TD start tag. This generally makes all of the content
+  of the <em>table</em> readable, preserves most of the intra-cell
+  organization, and makes all of the links in the <em>table</em>
+  accessible, but any information critically dependent on the
+  column and row alignments intended for the <em>table</em> will be
+  missed.</p>
+
+  <p>If inherently tabular data must be presented with Lynx, one
+  can use PRE formatted content, or, if the <em>table</em> includes
+  markup not allowed for PRE content, construct the <em>table</em>
+  using <a href="#Tabs">HTML Tabs</a>. An example <em>table</em>
+  using <em>TAB</em> elements is included in the test subdirectory
+  of the Lynx distribution.</p>
+
+  <div id="TRST">
+    <p>Starting with version 2.8.3, Lynx renders some tables in
+    tabular form. This tabular representation for <em>simple</em>
+    tables (<dfn>TRST</dfn>) does not attempt to implement full
+    support for any table model. Limitations are:</p>
+
+    <ul>
+      <li>All data constituting a table row generally has to fit
+      within the display width without inserting line breaks.</li>
+
+      <li>Cell contents have to be simple. In general, only inline
+      markup is acceptable, no <code>&lt;P&gt;</code>,
+      <code>&lt;BR&gt;</code> etc. (although
+      <code>&lt;BR&gt;</code> may be ignored at the beginning of
+      the first cell or at the end of the last cell of a row).</li>
+
+      <li>When tables are nested, only the innermost level is a
+      candidate for tabular representation.</li>
+
+      <li>Most attributes are ignored, including borders,
+      <code>WIDTH</code>, vertical alignment.</li>
+    </ul>Horizontal alignments (<code>LEFT</code>,
+    <code>CENTER</code>, <code>RIGHT</code>), <code>COLSPAN</code>,
+    and <code>ROWSPAN</code> are interpreted according to HTML
+    4.01. (<code>ROWSPAN</code> can only reserve empty space in
+    subsequent rows, because of the limitations above.) When TRST
+    fails because a table is not "simple" enough, the
+    representation falls back to the minimal handling described
+    earlier. Many (but, unfortunately, by no means all) tables that
+    represent inherently tabular material will thus be shown with
+    correct tabular formatting. Where table markup is used only for
+    layout purposes (containing whole blocks of text and list
+    within table cells) and not essential for understanding the
+    textual contents, it remains basically ignored. Some more
+    information on details is available in the file
+    <kbd>README.TRST</kbd> of the source distribution.
+  </div>
+
+  <p>For tabular display of more complex tables, Lynx users can
+  make use of external scripts or programs. The normal Lynx
+  distribution currently does not provide such scripts, but they
+  can be written locally or downloaded from several sources. It is
+  suggested to use one of Lynx's facilities for invoking external
+  programs (see <kbd>DOWNLOADER</kbd>, <kbd>PRINTER</kbd>,
+  <kbd>EXTERNAL</kbd>, <kbd>TRUSTED_LYNXCGI</kbd> in <a href=
+  "#lynx.cfg">lynx.cfg</a> and <a href=
+  "lynx_url_support.html#cgi_url"><code>lynxcgi:</code></a> in
+  <em>Supported URLs</em> for information on various ways for
+  setting this up).</p>
+
+  <p>[<a href="#ToC-Tables">ToC</a>]</p>
+
+  <h2 id="id-Tabs"><a name="Tabs" id="Tabs"><em>Lynx and HTML
+  Tabs</em></a></h2>
+
+  <p>Lynx implements the <a href=
+  "http://www.w3.org/MarkUp/html3/Contents.html">HTML 3.0</a> TAB
+  element only when LEFT alignment is in effect. If the alignment
+  is CENTER or RIGHT (JUSTIFY is not yet implemented in Lynx, and
+  is treated as a synonym for LEFT), or if the TAB element
+  indicates a position to the left of the current position on the
+  screen, it is treated as a collapsible space. For purposes of
+  implementing TAB, Lynx treats <em>en</em> units as half a
+  character cell width when specified by the INDENT attribute, and
+  rounds up for odd values (e.g., a value of either 5 or 6 will be
+  treated as three spaces, each the width of a character cell). See
+  the example <em>table</em> using TAB elements in the test
+  subdirectory of the Lynx distribution as a model for using this
+  functionality.</p>
+
+  <p>Note that this <em>Users Guide</em> and the <a href=
+  "lynx_url_support.html">Supported URLs</a> page include TAB
+  markup in a manner which <em>degrades gracefully</em> for WWW
+  browsers which do not support it. Toggle to display of <a href=
+  "#LocalSource">source</a> and <a href="#Search">search</a> for
+  <em>&lt;tab</em> to examine the use of TAB markup in these
+  documents.</p>
+
+  <p>[<a href="#ToC-Tabs">ToC</a>]</p>
+
+  <h2 id="id-Frames"><a name="Frames" id="Frames"><em>Lynx and HTML
+  Frames</em></a></h2>
+
+  <p>Some implementations of HTML include markup, primarily
+  designed for graphic clients, that is intended to create an array
+  of simultaneously displayed, independently scrolling windows.
+  Such windows have been termed <em>frames</em>.</p>
+
+  <p>Lynx recognizes the Netscape and Microsoft Explorer FRAME,
+  FRAMESET, and NOFRAMES elements, but is not capable of windowing
+  to create the intended positioning of <em>frames</em>. Instead,
+  Lynx creates labeled links to the <em>frame</em> sources,
+  typically positioned in the upper left corner of the display, and
+  renders the NOFRAMES section. If the document provider has
+  disregard for text clients and sight-challenged Webizens, and
+  thus does not include substantive content in the NOFRAMES section
+  or a link in it to a document suitable for text clients, you can
+  usually guess from the labeling of the <em>frame</em> links which
+  one has the substantive material (if there is any), or you can
+  try each of those links to see if anything worthwhile is
+  returned.</p>
+
+  <p>[<a href="#ToC-Frames">ToC</a>]</p>
+
+  <p>Some sites -- in ignorance of Lynx capabilities -- may tell
+  you (for example) "to view this page you need Netscape
+  Navigator". You can simply ignore such warnings and access the
+  frames via the Lynx-generated links as above.</p>
+
+  <h2 id="id-Banners"><a name="Banners" id="Banners"><em>Lynx and
+  HTML Banners</em></a></h2>
+
+  <p>Some implementations of HTML markup include provisions for
+  creating a non-scrolling window to be positioned at the top of
+  each page, containing links with brief, descriptive link names,
+  analogous to a Windows toolbar. Such windows have been termed
+  <em>banners</em>.</p>
+
+  <p>Lynx recognizes and processes all of the <a href=
+  "http://www.w3.org/MarkUp/html3/Contents.html">HTML 3.0</a> REL
+  attribute tokens in LINK elements for creating a <em>banner</em>,
+  and a number of others which have subsequently been proposed.
+  These <em>banner</em> tokens are <em>Home</em>, <em>ToC</em>,
+  <em>Contents</em>, <em>Index</em>, <em>Glossary</em>,
+  <em>Copyright</em>, <em>Up</em>, <em>Next</em>,
+  <em>Previous</em>, <em>Prev</em>, <em>Help</em>, <em>Search</em>,
+  <em>Top</em>, <em>Origin</em>, <em>Navigator</em>,
+  <em>Child</em>, <em>Disclaimer</em>, <em>Sibling</em>,
+  <em>Parent</em>, <em>Author</em>, <em>Editor</em>,
+  <em>Publisher</em>, <em>Trademark</em>, <em>Meta</em>,
+  <em>URC</em>, <em>Hotlist</em>, <em>Begin</em>, <em>First</em>,
+  <em>End</em>, <em>Last</em>, <em>Pointer</em>,
+  <em>Translation</em>, <em>Definition</em>, <em>Chapter</em>,
+  <em>Section</em>, <em>Subsection</em>, <em>Alternate</em>,
+  <em>Documentation</em>, <em>Biblioentry</em>,
+  <em>Bibliography</em>, <em>Start</em>, <em>Appendix</em>,
+  <em>Bookmark</em> and <em>Banner</em>. Any LINK elements with
+  those tokens as the REL attribute value, and an HREF attribute
+  value in the LINK, will invoke creation of a <em>banner</em> at
+  the top of the first page, with the element's HREF as the link,
+  and the token as the default link name. If a TITLE attribute is
+  included in the LINK, it's value will be used as the link name
+  instead of the default. <em>Bookmark</em> and <em>Banner</em> are
+  intended to be accompanied by a TITLE attribute, which in effect
+  makes the namespace for REL <em>banner</em> tokens infinite.</p>
+
+  <p>If the special token <em>Help</em> is used as the REL value
+  and no HREF is included in the LINK, Lynx will use it own
+  <em>HELPFILE</em> URL for that link. For the special token
+  <em>Home</em> without an HREF, Lynx will use the default
+  <em>STARTFILE</em> (i.e., derived from the configuration files or
+  the WWW_HOME environment variable, <em>not</em> the command line
+  <em>startfile</em> if one was used). However, if a
+  <em>-homepage=URL</em> was specified on the command line, it's
+  URL will be used as the HREF. For the special token
+  <em>Index</em> without an HREF, Lynx will use the
+  <em>DEFAULT_INDEX_FILE</em> derived from the configuration files,
+  or if an <em>-index=URL</em> was specified on the command line,
+  it's URL will be used as the HREF.</p>
+
+  <p>Lynx does not waste screen real estate maintaining the
+  <em>banner</em> at the top of every page, but the Lynx TOOLBAR
+  keystroke command ('<em>#</em>') will, any time it is pressed,
+  position you on the <em>banner</em> so that any of its links can
+  be activated, and pressing the <em>left-arrow</em> when in the
+  <em>banner</em> will return you to where you were in the current
+  document. The toolbar is indicated by a '<em>#</em>" preceding
+  its first link when present on the screen, that is, when the
+  first page of the document is being displayed. The availability
+  of a toolbar is indicated by a '<em>#</em>' at the top, left-hand
+  corner of the screen when the second or subsequent pages of the
+  document are being displayed.</p>
+
+  <p>Lynx also recognizes the <a href=
+  "http://www.w3.org/MarkUp/html3/Contents.html">HTML 3.0</a>
+  BANNER container element, and will create a <em>banner</em> based
+  on its content if one has not already been created based on LINK
+  elements. Lynx treats the Microsoft MARQUEE element as a synonym
+  for BANNER (i.e., presenting it's markup as a static
+  <em>banner</em>, without any horizontal scrolling of its
+  content). Lynx does not prefix the BANNER or MARQUEE content with
+  a '<em>#</em>' because the content need not be only a series of
+  links with brief, descriptive links names, but does add a
+  '<em>#</em>' at the top, left-hand corner of the screen when the
+  content is not being displayed, to indicate it's accessibility
+  via the TOOLBAR keystroke command.</p>
+
+  <p>[<a href="#ToC-Banners">ToC</a>]</p>
+
+  <h2 id="id-Footnotes"><a name="Footnotes" id="Footnotes"><em>Lynx
+  and HTML Footnotes</em></a></h2>
+
+  <p>Lynx implements the <a href=
+  "http://www.w3.org/MarkUp/html3/Contents.html">HTML 3.0</a> FN
+  element similarly to a named <em>A</em>nchor within the current
+  document, and assumes that the footnotes will be positioned at
+  the bottom of the document. However, in contrast to named
+  <em>A</em>nchors, the FN container element is treated as a block
+  (i.e., as if a new paragraph were indicated whether or not that
+  is indicated in its content) with greater than normal left and
+  right margins, and the block will begin with a <em>FOOTNOTE:</em>
+  label. For example, if the document contains:</p>
+  <pre>
+        See the <em>&lt;A HREF="#fn1"&gt;</em><a href=
+"#an1">footnote</a><em>&lt;/A&gt;</em>.
+</pre>activating that link will take you to the labeled rendering
+of:
+  <pre>
+        <em>&lt;FN ID="fn1"&gt;</em>&lt;p&gt;<a name="an1" id=
+"an1">Lynx does not use popups for FN blocks.</a>&lt;/p&gt;<em>&lt;/FN&gt;</em>
+</pre>
+
+  <p>i.e., position it at the top of the page. Then, upon reading
+  the footnote, you can return to your previous position in the
+  document by pressing the <em>left-arrow</em> key. The content of
+  an FN element can be any HTML markup that is valid in the BODY of
+  the document.</p>
+
+  <p>[<a href="#ToC-Footnotes">ToC</a>]</p>
+
+  <h2 id="id-Notes"><a name="Notes" id="Notes"><em>Lynx and HTML
+  Notes</em></a></h2>
+
+  <p>Lynx implements the <a href=
+  "http://www.w3.org/MarkUp/html3/Contents.html">HTML 3.0</a> NOTE
+  element (<em>Admonishment</em>) as a labeled block, i.e., as if a
+  new paragraph were indicated whether or not paragraphing markup
+  is included in its content, with greater than normal left and
+  right margins, and with the type of note indicated by an
+  emphasized label based on the value of its CLASS or ROLE
+  attribute. If no CLASS or ROLE attribute is included, the default
+  label <em>NOTE:</em> will be used. Lynx recognizes the values
+  <em>caution</em> and <em>warning</em>, for which, respectively,
+  the labels <em>CAUTION:</em> or <em>WARNING:</em> will be used.
+  The NOTE element can have an ID attribute, which will be treated
+  as a named <em>A</em>nchor, as for <a href="#Footnotes">HTML
+  Footnotes</a>, but the NOTE block need not be placed at the
+  bottom of the document. The content of a NOTE block can be any
+  HTML markup that is valid in the BODY of the document. This is an
+  example:<br></p>
+  <pre>
+      <em>&lt;NOTE CLASS="warning" ID="too-bad"&gt;
+        &lt;p&gt;The W3C vendors did not retain NOTE in the HTML 3.2 draft.&lt;/p&gt;
+      &lt;/NOTE&gt;</em>
+</pre>It will <em>degrade gracefully</em> for WWW browsers which do
+not support NOTE, except for recognition of the ID attribute as a
+named <em>A</em>nchor.
+
+  <p>[<a href="#ToC-Notes">ToC</a>]</p>
+
+  <h2 id="id-Lists"><a name="Lists" id="Lists"><em>Lynx and HTML
+  Lists</em></a></h2>
+
+  <p>Lynx implements the <a href=
+  "http://www.w3.org/MarkUp/html3/Contents.html">HTML 3.0</a> list
+  elements UL (<em>Unordered List</em>), OL (<em>Ordered
+  List</em>), and DL (<em>Definition List</em>), and their
+  associated attributes, and elements (LH, LI, DT, and DD) for the
+  most part as described in that specification. The lists can be
+  nested, yielding progressively greater indentation, up to six
+  levels. The <a href=
+  "http://www.w3.org/MarkUp/html-spec/html-spec_toc.html">HTML
+  2.0</a> MENU and DIR elements <em>both</em> are treated as
+  synonyms for UL with the PLAIN attribute (no <em>bullets</em>,
+  see below). Note, thus, that neither DIR nor MENU yields a series
+  of columns with 24-character spacing. A single nesting index is
+  maintained, so that different types of List elements can be used
+  for different levels within the nest. Also, the <a href=
+  "http://www.w3.org/MarkUp/html3/Contents.html">HTML 3.0</a> FIG,
+  CAPTION and CREDIT elements are treated as valid within list
+  blocks. They will be rendered with indentation appropriate for
+  the current nesting depth, and the CAPTION or CREDIT elements
+  will have a <em>CAPTION:</em> or <em>CREDIT:</em> label beginning
+  the first line of their content. The content of any APPLET or
+  OBJECT elements in the lists also will be indented appropriately
+  for the current nesting depth, but those will not invoke line
+  breaks unless indicated by their content, and it should not
+  include markup which is inappropriate within the list.</p>
+
+  <p>Lynx also supports the TYPE attribute for OL elements, which
+  can have values of <em>1</em> for Arabic numbers, <em>I</em> or
+  <em>i</em> for uppercase or lowercase Roman numerals, or
+  <em>A</em> or <em>a</em> for uppercase or lowercase letters, that
+  increment for successive LI elements in the list block. The
+  CONTINUE attribute can be used to continue the ordering from the
+  preceding list block when the nesting depth is changed.</p>
+
+  <p>Lynx treats the OL attributes START and SEQNUM as synonyms for
+  specifying the ordering value for the first LI element in the
+  block. The values should be specified as Arabic numbers, but will
+  be displayed as Arabic, Roman, or alphabetical depending on the
+  TYPE for the block. The values can range from <em>-29997</em> to
+  the system's maximum positive integer for Arabic numbers. For
+  Roman numerals, they can range from <em>1</em> (<em>I</em> or
+  <em>i</em>) to <em>3000</em> (<em>MMM</em> or <em>mmm.</em>). For
+  alphabetical orders, the values can range from <em>1</em>
+  (<em>A</em> or <em>a</em>) to <em>18278</em> (<em>ZZZ</em> or
+  <em>zzz</em>). If the CONTINUE attribute is used, you do not need
+  to specify a START or SEQNUM attribute to extend the ordering
+  from a previous block, and you can include a TYPE attribute to
+  change among Arabic, Roman, or alphabetical ordering styles, or
+  their casing, without disrupting the sequence. If you do not
+  include a START, SEQNUM or CONTINUE attribute, the first LI
+  element of each OL block will default to <em>1</em>, and if you
+  do not include a TYPE attribute, Lynx defaults to Arabic
+  numbers.</p>
+
+  <p>For UL blocks without the PLAIN attribute, Lynx uses
+  <em>*</em>, <em>+</em>, <em>o</em>, <em>#</em>, <em>@</em> and
+  <em>-</em> as <em>bullets</em> to indicate, progressively, the
+  depth within the six nesting levels.</p>
+
+  <p>Lynx treats UL, OL, DIR, and MENU blocks as having the COMPACT
+  attribute by default, i.e., single spaces between LH and LI
+  elements within those blocks. For DL blocks, double spacing will
+  be used to separate the DT and DD elements unless the COMPACT
+  attribute has been specified.</p>
+
+  <p>[<a href="#ToC-Lists">ToC</a>]</p>
+
+  <h2 id="id-Quotes"><a name="Quotes" id="Quotes"><em>Lynx and HTML
+  Quotes</em></a></h2>
+
+  <p>The <a href=
+  "http://www.w3.org/MarkUp/html3/Contents.html">HTML 3.0</a> and
+  later specifications provide for two classes of quotation in HTML
+  documents. Block quotes, designated by the BLOCKQUOTE element (or
+  it's abbreviated synonym BQ in HTML 3.0), have implied paragraph
+  breaks preceding and following the start and end tags for the
+  block. Character level quotes, designated by the Q element, in
+  contrast are simply directives in the markup to insert an
+  appropriate quotation mark.</p>
+
+  <p>Lynx renders block quotes with a greater than normal left and
+  right indentation. Lynx does not support italics, and normally
+  substitutes underlining, but does not underline block quotes so
+  as not to obscure any explicit emphasis elements within the
+  quotation. The BLOCKQUOTE or BQ block can include a CREDIT
+  container element, whose content will be rendered as an implied
+  new paragraph with a <em>CREDIT:</em> label at the beginning of
+  its first line.</p>
+
+  <p>Lynx respects nested Q start and end tags, and will use ASCII
+  double-quotes (<em>"</em>) versus grave accent (<em>`</em>) and
+  apostrophe (<em>'</em>), respectively, for even versus odd depths
+  in the nest.</p>
+
+  <p>Any ID attributes in BLOCKQUOTE, BQ or Q elements can be the
+  target of a hyperlink in the form URL#id. It is treated just like
+  the NAME in <em>A</em>nchors.</p>
+
+  <p>[<a href="#ToC-Quotes">ToC</a>]</p>
+
+  <h2 id="id-Eightbit"><a name="Eightbit" id="Eightbit"><em>Lynx
+  and HTML Internationalization: 8bit, UNICODE, etc.</em></a></h2>
+
+  <p>Lynx has superior support for HTML 4.0/I18N
+  internationalization issues. However, to see the characters other
+  than 7bit properly you <em>should</em> set your <a href=
+  "keystrokes/option_help.html#DC">display character set</a> from
+  Option Menu and save its value, this is a Frequently Asked
+  Question. Fine-turning is also available from <a href=
+  "#lynx.cfg">lynx.cfg</a></p>
+
+  <p>[<a href="#ToC-Eightbit">ToC</a>]</p>
+
+  <h2 id="id-USEMAP"><a name="USEMAP" id="USEMAP"><em>Lynx and
+  Client-Side-Image-Maps</em></a></h2>
+
+  <p>HTML includes markup, designed primarily for graphic clients,
+  that treats inlined images as maps, such that areas of the image
+  within which a mouse cursor was positioned when the mouse was
+  <em>clicked</em> can correspond to URLs which should be
+  retrieved. The original implementations were based on the client
+  sending an http server the x,y coordinates associated with the
+  <em>click</em>, for handling by a script invoked by the server,
+  and have been termed <em>server-side-image-maps</em>. Lynx has no
+  rational way of coping with such a procedure, and thus simply
+  sends a 0,0 coordinate pair, which some server scripts treat as
+  an instruction to return a document suitable for a text
+  client.</p>
+
+  <p>Newer HTML markup provides bases for the client to determine
+  the URLs associated with areas in the image map, and/or for a
+  text client to process alternative markup and allow the user to
+  make choices based on textual information. These have been termed
+  <em>client-side-image-maps</em>.</p>
+
+  <p>Lynx recognizes and processes the MAP container element and
+  its AREA elements, and will create a menu of links for the HREF
+  of each AREA when the link created for the IMG element with a
+  USEMAP attribute is activated. The menu uses the ALT attributes
+  of the AREA elements as the link names, or, if the document's
+  author has disregard for text clients and sight-challenged
+  Webizens, and thus did not include ALT attributes, Lynx uses the
+  resolved URLs pointed to by the HREF attributes as the link
+  names. Lynx uses the TITLE attribute of the IMG element, or the
+  TITLE attribute of the MAP, if either was present in the markup,
+  as the title and main header of the menu. Otherwise, it uses the
+  ALT attribute of the IMG element. If neither TITLE nor ALT
+  attributes were present in the markup, Lynx creates and uses a
+  <em>[USEMAP]</em> pseudo-ALT. The MAPs need not be in the same
+  document as the IMG elements. If not in the same document, Lynx
+  will fetch the document which contains the referenced MAP, and
+  locate it based on its NAME or ID attribute. All MAPs encountered
+  in documents during a Lynx session are cached, so that they need
+  not be retrieved repeatedly when referenced in different
+  documents.</p>
+
+  <p>If the IMG element also indicates a
+  <em>server-side-image-map</em> via an ISMAP attribute, Lynx
+  normally will create a link for that as well, using an
+  <em>[ISMAP]</em> pseudo-ALT (followed by a hyphen to indicate its
+  association with the <em>client-side-image-map</em>) rather than
+  ignoring it, and will submit a 0,0 coordinate pair if that link
+  is activated. Although, the <em>client-side-image-map</em> may be
+  more useful for a client such as Lynx, because all of the URLs
+  associated with the image map can be accessed, and their nature
+  indicated via ALT attributes, Lynx-friendly sites can map 0,0
+  such that the server returns a for-text-client document
+  homologous to the content of FIG elements (see below). Inclusion
+  of such a link for submissions to the server can be disabled by
+  default via the configuration file (<a href=
+  "#lynx.cfg">lynx.cfg</a>), and the default can be toggled via the
+  <em>-ismap</em> command line switch.</p>
+
+  <p>Lynx also recognizes the <a href=
+  "http://www.w3.org/MarkUp/html3/Contents.html">HTML 3.0</a> FIG
+  and OVERLAY elements, and will handle them as intended for text
+  clients. These are the ideal way to handle
+  <em>client-side-image-maps</em>, because the FIG content provides
+  complete alternative markup, rather than relying on the client to
+  construct a relatively meager list of links with link names based
+  on ALT strings.</p>
+
+  <p>The presently experimental OBJECT element encompasses much of
+  the functionality of the FIG element for
+  <em>client-side-image-maps</em>. Lynx will render and display the
+  content of OBJECT elements which have the SHAPES attribute
+  equivalently to its handling of FIG. Lynx also handles OBJECT
+  elements with the USEMAP and/or ISMAP attributes equivalently to
+  its handling of IMG elements with <em>client-side-image-maps</em>
+  and/or <em>server-side-image-maps</em>.</p>
+
+  <p>[<a href="#ToC-USEMAP">ToC</a>]</p>
+
+  <h2 id="id-Refresh"><a name="Refresh" id="Refresh"><em>Lynx and
+  Client-Side-Pull</em></a></h2>
+
+  <p>HTML includes provision for passing instructions to clients
+  via directives in META elements, and one such instruction, via
+  the token <em>Refresh</em>, should invoke reloading of the
+  document, fetched from a server with the same URL or a new URL,
+  at a specified number of seconds following receipt of the current
+  document. This procedure has been termed
+  <em>client-side-pull</em>. An example of such an element is:</p>
+  <pre>
+      <em>&lt;META HTTP-EQUIV="Refresh" CONTENT="3; URL=http://host/path"&gt;</em>
+</pre>which instructs a client to fetch the indicated URL in 3
+seconds after receiving the current document. If the <em>URL=</em>
+field is omitted, the URL defaults to that of the current document.
+A <em>no-cache</em> directive is implied when the <em>Refresh</em>
+if for the same URL.
+
+  <p>Lynx recognizes and processes <em>Refresh</em> directives in
+  META elements, but puts up a labeled link, typically in the upper
+  left corner of the display, indicating the number of seconds
+  intended before a refresh, and the URL for the refresh, instead
+  of making the request automatically after the indicated number of
+  seconds. This allows people using a braille interface any amount
+  of time to examine the current document before activating the
+  link for the next URL. In general, if the number of seconds
+  indicated is short, the timing is not critical and you can
+  activate the link whenever you like. If it is long (e.g., 60
+  seconds), a server process may be generating new documents or
+  images at that interval, and you would be wasting bandwidth by
+  activating the link at a shorter interval.</p>
+
+  <p>[<a href="#ToC-Refresh">ToC</a>]</p>
+
+  <h2 id="id-Cookies"><a name="Cookies" id="Cookies"><em>Lynx State
+  Management</em></a> (Me want <em>cookie</em>!)</h2>
+
+  <p>HTTP provides a means to carry state information across
+  successive connections between a browser and an http server.
+  Normally, http servers respond to each browser request without
+  relating that request to previous or subsequent requests. Though
+  the inclusion of INPUT fields with TYPE="hidden" can be used as a
+  sort of state management by <a href="#Forms">HTML Forms</a>, a
+  more general approach involves exchanges of MIME headers between
+  the server and browser. When replying to a request, the server
+  can send a <em>Set-Cookie</em> MIME header which contains
+  information (<em>cookies</em>) relevant to the browser's request,
+  and in subsequent requests the browser can send a <em>Cookie</em>
+  MIME header with information derived from previously received
+  cookies.</p>
+
+  <p>State Management via cookie exchanges originally was
+  implemented by Netscape, and such cookies are now designated as
+  <em>Version 0</em>. A more elaborate format for cookies,
+  designated as <em>Version 1</em>, is being standardized by the
+  IETF (Internet Engineering Task Force). Lynx supports both
+  <em>Version 0</em> and <em>Version 1</em> cookie exchanges. This
+  support can be disabled by default via the SET_COOKIES symbol in
+  the compilation (<em>userdefs.h</em>) and/or run time (<a href=
+  "#lynx.cfg">lynx.cfg</a>) configuration files, and that default
+  setting can be toggled via the <em>-cookies</em> command line
+  switch. The SET_COOKIES symbol can be further modified by the
+  ACCEPT_ALL_COOKIES mode. If ACCEPT_ALL_COOKIES is set TRUE, and
+  SET_COOKIES is TRUE, Lynx will accept all cookies. Additionally,
+  the cookies that are automatically accepted or rejected by Lynx
+  can be further modified with the COOKIE_ACCEPT_DOMAINS and
+  COOKIE_REJECT_DOMAINS options in your .lynxrc file, each of which
+  is a comma-separated list of domains to perform the desired
+  action. The domain listed in these options must be identical to
+  the domain the cookie comes from, there is no wildcard matching.
+  If a domain is specific in both COOKIE_ACCEPT_DOMAINS and
+  COOKIE_REJECT_DOMAINS, rejection will take precedence.</p>
+
+  <p>When cookie support is enabled, <em>Set-Cookie</em> MIME
+  headers received from an http server invoke confirmation prompts
+  with possible replies of '<em>Y</em>'es or '<em>N</em>'o for
+  acceptance of the cookie, '<em>A</em>'lways to accept the cookie
+  and to allow all subsequent cookies from that <em>domain</em>
+  (server's Fully Qualified Domain Name, or site-identifying
+  portion of the FQDN) without further confirmation prompts, or
+  ne'<em>V</em>'er to never allow cookies from that <em>domain</em>
+  to be accepted (silently ignore its <em>Set-Cookie</em> MIME
+  headers). All unexpired cookies are held in a hypothetical
+  <em>Cookie Jar</em> which can be examined via the COOKIE_JAR
+  keystroke command, normally mapped to <em>Ctrl-K</em>, for
+  invoking the <a href="keystrokes/cookie_help.html">Cookie Jar
+  Page</a>. If Lynx has been compiled with the
+  --enable-persistent-cookies flag, then unexpired cookies will be
+  stored between sessions in the filename set with the COOKIE_FILE
+  option in your .lynxrc.</p>
+
+  <p>A common use of cookies by http servers is simply to track the
+  documents visited by individual users. Though this can be useful
+  to the site's WebMaster for evaluating and improving the
+  organization of links in the various documents of the site, if
+  the user has configured Lynx to include a <em>From</em> MIME
+  header with the user's email address in http requests, or has
+  passed personal information to the server via a form submission,
+  the tracking might be used to draw inferences, possibly
+  incorrect, about that user, and may be considered by some as an
+  invasion of privacy.</p>
+
+  <p>An example of worthwhile State Management via cookies is the
+  setting of personal preferences, typically via a form submission
+  to the site, which will then apply to all documents visited at
+  that site.</p>
+
+  <p>If you accept cookies when accessing a site, but are given no
+  indication about how they will be used in subsequent requests to
+  that site, nor can infer how they will be used, you can
+  <em>Gobble</em> (delete) the cookies and/or change the 'allow'
+  setting for its <em>domain</em> via the <a href=
+  "keystrokes/cookie_help.html">Cookie Jar Page</a>.</p>
+
+  <p>[<a href="#ToC-Cookies">ToC</a>]</p>
+
+  <h2 id="id-Cache"><a name="Cache" id="Cache"><em>Cached
+  Documents</em></a></h2>
+
+  <p>A list of documents which are in lynx's internal cache is
+  accessible through hypothetical <em>Cache Jar</em> which can be
+  examined via the CACHE_JAR keystroke command, normally mapped to
+  <em>Ctrl-X</em>.</p>
+
+  <p>Entries in the <em>Cache Jar</em> are ordered from oldest (at
+  the top) to newest. The user can easily access any document which
+  is in the cache, especially those which may be soon removed due
+  to configurable limits on the maximum number of cached documents,
+  as well as the maxmimum amount of memory used by the cache.</p>
+
+  <p>The structure of <em>Cache Jar</em> is simple:</p>
+
+  <ul>
+    <li>Each entry starts with its ordinal number (within the
+    session), recently added documents in cache have a smaller
+    number than documents which are added before, and are
+    positioned at the end of <em>Cache Jar</em></li>
+
+    <li>Following its ordinal number is the document title, which
+    is also a link. On activating this link, the user is prompted
+    if they want to delete the document from <em>Cache Jar</em>.
+    The document's address (also a link) follows the title. It is
+    distinguished by a <code>URL:</code> label preceding the link.
+    Activating this link, lynx displays the corresponding cached
+    document.</li>
+
+    <li>Below each cached document URL lynx shows the document
+    properties which include:
+
+      <ul>
+        <li>Lines,</li>
+
+        <li>Size,</li>
+
+        <li>File-Cache,</li>
+
+        <li>Content-Type,</li>
+
+        <li>Content-Language,</li>
+
+        <li>Content-Encoding,</li>
+
+        <li>Content-Location,</li>
+
+        <li>Subject,</li>
+
+        <li>Owner,</li>
+
+        <li>Date,</li>
+
+        <li>Expires,</li>
+
+        <li>Last-Modified,</li>
+
+        <li>ETag,</li>
+
+        <li>Server, and</li>
+
+        <li>Source-Cache-File.</li>
+      </ul>
+    </li>
+  </ul>
+
+  <p>This feature can be enabled by default using the USE_CACHEJAR
+  symbol in the compilation (<code>userdefs.h</code>), as well as
+  enabled in lynx.cfg</p>
+
+  <p>[<a href="#ToC-Cache">ToC</a>]</p>
+
+  <h2 id="id-Sessions"><a name="Sessions" id=
+  "Sessions"><em>Sessions</em></a></h2>
+
+  <p>Lynx's current state (all information about the user's current
+  activity with lynx) is called a session. Sessions are useful in
+  particular if you are in the middle of exploring something on the
+  web and you were forced to stop abruptly, losing any trace of
+  your current work.</p>
+
+  <p>A session can be automatically restored as lynx starts after a
+  clean exit. The session data is saved if lynx is invoked with the
+  <em>-session=FILENAME</em> switch. The <em>FILENAME</em> is the
+  name of the file where the session will be stored.</p>
+
+  <p>There are also switches for only restoring:
+  <em>-sessionin=FILENAME</em> and for only saving:
+  <em>-sessionout=FILENAME</em> sesions:</p>
+
+  <p>If you do not want to specify these options at each lynx
+  startup, there is an option in <em>lynx.cfg</em> to enable
+  automatic saving/restoring of session. To keep lynx startup/exit
+  reasonable fast there is also an option in <em>lynx.cfg</em>
+  specifying how much information about the current lynx session
+  will be stored in file.</p>
+
+  <p>The syntax of the session file is simple. You can use a text
+  editor to modify, add new entries, or remove URLs you no longer
+  want.</p>
+
+  <p>[<a href="#ToC-Sessions">ToC</a>]</p>
+
+  <h2 id="id-Invoking"><a name="Invoking" id="Invoking"><em>The
+  Lynx command line</em></a></h2>
+
+  <p>A summary of the Lynx command line options (switches) is
+  returned to stdout if Lynx is invoked with the <em>-help</em>
+  switch. A description of the options also should be available via
+  the system man (Unix) pages or help (VMS) libraries. On Win32,
+  typing lynx -help in a DOS window should display similarly. The
+  basic syntax of the Lynx command line can be represented as one
+  of the following:</p>
+
+  <dl>
+    <dt><code>Command</code></dt>
+
+    <dd><code>lynx [options]</code></dd>
+
+    <dd><code>lynx [options] startfile</code></dd>
+  </dl>where
+
+  <dl>
+    <dt><code>startfile</code></dt>
+
+    <dd>
+      is the file or URL that Lynx will load at start-up.
+
+      <ul>
+        <li>If startfile is not specified, Lynx will use a default
+        starting file and base directory determined during
+        installation.</li>
+
+        <li>If a specified file is local (i.e., not a URL) Lynx
+        displays that file and uses the directory in which that
+        file resides as the base directory.</li>
+
+        <li>If a URL is specified, the file will be retrieved, and
+        only the server base directory will be relevant to further
+        accesses.</li>
+
+        <li>If more than one local file or remote URL is listed on
+        the command line, Lynx will open only the last
+        interactively. All of the names (local files and remote
+        URLs) are added to the G)oto history.</li>
+      </ul>
+    </dd>
+
+    <dt><code>options</code></dt>
+
+    <dd>
+      Lynx uses only long option names. Option names can begin with
+      double dash as well, underscores and dashes can be intermixed
+      in option names (in the reference below options are with one
+      dash before them and with underscores).
+
+      <p>Lynx provides many command-line options. Some options
+      require a value (string, number or keyword). These are noted
+      in the reference below. The other options set boolean values
+      in the program. There are three types of boolean options:
+      set, unset and toggle. If no option value is given, these
+      have the obvious meaning: set (to true), unset (to false), or
+      toggle (between true/false). For any of these, an explicit
+      value can be given in different forms to allow for operating
+      system constraints, e.g.,</p>
+      <pre>
+<code>
+              -center:off
+              -center=off
+              -center-</code>
+</pre>Lynx recognizes "1", "+", "on" and "true" for true values,
+and "0", "-", "off" and "false" for false values. Other
+option-values are ignored.
+
+      <p>The default boolean, number and string option values that
+      are compiled into lynx are displayed in the help-message
+      provided by lynx -help. Some of those may differ according to
+      how lynx was built; see the help message itself for these
+      values. The -help option is processed before any option,
+      including those that control reading from the lynx.cfg file.
+      Therefore runtime configuration values are not reflected in
+      the help-message.</p>
+
+      <p>Capitalized items in the option summary indicate that a
+      substitution must be made. These are the options:</p>
+
+      <dl>
+        <dt><code>-</code></dt>
+
+        <dd>If the argument is only '<code>-</code>' (dash), then
+        Lynx expects to receive the arguments from stdin. This is
+        to allow for the potentially very long command line that
+        can be associated with the <em>-get_data</em> or
+        <em>-post_data</em> arguments (see below). It can also be
+        used to avoid having sensitive information in the invoking
+        command line (which would be visible to other processes on
+        most systems), especially when the <em>-auth</em> or
+        <em>-pauth</em> options are used. On VMS, the dash must be
+        encased in double-quotes ("-") and the keyboard input
+        terminated with <em>Control-Z</em> or the command file
+        input terminated by a line that begins with '<em>$</em>'.
+        On Unix, the keyboard input terminator is
+        <em>Control-D</em>. On Win32, [???].</dd>
+
+        <dt><code>-accept_all_cookies</code></dt>
+
+        <dd>accept all cookies.</dd>
+
+        <dt><code>-anonymous</code></dt>
+
+        <dd>apply restrictions appropriate for an anonymous
+        account, see <em>-restrictions</em> below for some
+        details.</dd>
+
+        <dt><code>-assume_charset=MIMENAME</code></dt>
+
+        <dd>charset for documents that don't specify it.</dd>
+
+        <dt><code>-assume_local_charset=MIMENAME</code></dt>
+
+        <dd>charset assumed for local files, i.e., files which lynx
+        creates such as internal pages for the options menu.</dd>
+
+        <dt><code>-assume_unrec_charset=MIMENAME</code></dt>
+
+        <dd>use this instead of unrecognized charsets.</dd>
+
+        <dt><code>-auth=ID:PW</code></dt>
+
+        <dd>set authorization ID and password for protected
+        documents at startup. Be sure to protect any script files
+        which use this switch.</dd>
+
+        <dt><code>-base</code></dt>
+
+        <dd>prepend a request URL comment and BASE tag to text/html
+        outputs for -source dumps.</dd>
+
+        <dt><code>-bibp=URL</code></dt>
+
+        <dd>specify a local bibp server (default
+        http://bibhost/).</dd>
+
+        <dt><code>-blink</code></dt>
+
+        <dd>forces high intensity background colors for color mode,
+        if available and supported by the terminal. This applies to
+        the slang library (for a few terminal emulators), or to
+        OS/2 EMX with ncurses.</dd>
+
+        <dt><code>-book</code></dt>
+
+        <dd>use the bookmark page as the startfile. The default or
+        command line startfile is still set for the Main screen
+        command, and will be used if the bookmark page is
+        unavailable or blank.</dd>
+
+        <dt><code>-buried_news</code></dt>
+
+        <dd>toggles scanning of news articles for buried
+        references, and converts them to news links. Not
+        recommended because email addresses enclosed in angle
+        brackets will be converted to false news links, and
+        uuencoded messages can be trashed.</dd>
+
+        <dt><code>-cache=NUMBER</code></dt>
+
+        <dd>set the <em>NUMBER</em> of documents cached in memory.
+        The default is 10.</dd>
+
+        <dt><code>-center</code></dt>
+
+        <dd>Toggle center alignment in HTML TABLE.</dd>
+
+        <dt><code>-case</code></dt>
+
+        <dd>enable case-sensitive string searching.</dd>
+
+        <dt><code>-cfg=FILENAME</code></dt>
+
+        <dd>specifies a Lynx configuration file other than the
+        default <a href="#lynx.cfg">lynx.cfg</a>.</dd>
+
+        <dt><code>-child</code></dt>
+
+        <dd>exit on left-arrow in startfile, and disable save to
+        disk.</dd>
+
+        <dt><code>-child_relaxed</code></dt>
+
+        <dd>exit on left-arrow in startfile, but allow save to disk
+        and associated print/mail options.</dd>
+
+        <dt><code>-cmd_log=FILENAME</code></dt>
+
+        <dd>write keystroke commands and related information to the
+        specified file.</dd>
+
+        <dt><code>-cmd_script=FILENAME</code></dt>
+
+        <dd>
+          read keystroke commands from the specified file. You can
+          use the data written using the <em>-cmd_log</em> option.
+          Lynx will ignore other information which the
+          command-logging may have written to the log- file. Each
+          line of the command script contains either a comment
+          beginning with "#", or a keyword:
+
+          <dl>
+            <dt><code>exit</code></dt>
+
+            <dd>causes the script to stop, and forces lynx to exit
+            immediately.</dd>
+
+            <dt><code>key</code></dt>
+
+            <dd>the character value, in printable form. Cursor and
+            other special keys are given as names, e.g., <code>Down
+            Arrow</code>. Printable 7-bit ASCII codes are given
+            as-is, and hexadecimal values represent other 8-bit
+            codes.</dd>
+
+            <dt><code>set</code></dt>
+
+            <dd>followed by a "name=value" allows one to override
+            values set in the lynx.cfg file.</dd>
+          </dl>
+        </dd>
+
+        <dt><code>-color</code></dt>
+
+        <dd>forces color mode on, if available. Default color
+        control sequences which work for many terminal types are
+        assumed if the terminal capability description does not
+        specify how to handle color. Lynx needs to be compiled with
+        the slang library for this flag. It is equivalent to
+        setting the COLORTERM environment variable. (If color
+        support is instead provided by a color-capable curses
+        library like ncurses, Lynx relies completely on the
+        terminal description to determine whether color mode is
+        possible, and this flag is not needed and thus
+        unavailable.) A saved show_color=always setting found in a
+        .lynxrc file at startup has the same effect. A saved
+        show_color=always found in .lynxrc on startup is overridden
+        by this flag.</dd>
+
+        <dt><code>-connect_timeout=N</code></dt>
+
+        <dd>Sets the connection timeout, where N is given in
+        seconds.</dd>
+
+        <dt><code>-cookie_file=FILENAME</code></dt>
+
+        <dd>specifies a file to use to read cookies. If none is
+        specified, the default value is ~/.lynx_cookies for most
+        systems, but ~/cookies for MS-DOS.</dd>
+
+        <dt><code>-cookie_save_file=FILENAME</code></dt>
+
+        <dd>specifies a file to use to store cookies. If none is
+        specified, the value given by <code>-cookie_file</code> is
+        used.</dd>
+
+        <dt><code>-cookies</code></dt>
+
+        <dd>toggles handling of Set-Cookie headers.</dd>
+
+        <dt><code>-core</code></dt>
+
+        <dd>toggles forced core dumps on fatal errors. (Unix
+        only)</dd>
+
+        <dt><code>-crawl</code></dt>
+
+        <dd>with <em>-traversal</em>, output each page to a
+        file.<br>
+        with <em>-dump</em>, format output as with
+        <em>-traversal</em>, but to stdout.</dd>
+
+        <dt><code>-curses_pads</code></dt>
+
+        <dd>toggles the use of curses "pad" feature which supports
+        left/right scrolling of the display.</dd>
+
+        <dt><code>-debug_partial</code></dt>
+
+        <dd>separate incremental display stages with MessageSecs
+        delay</dd>
+
+        <dt><code>-display=DISPLAY</code></dt>
+
+        <dd>set the display variable for X rexe-ced programs.</dd>
+
+        <dt><code>-display_charset=MIMEname</code></dt>
+
+        <dd>set the charset for the terminal output.</dd>
+
+        <dt><code>-dont_wrap_pre</code></dt>
+
+        <dd>inhibit wrapping of text in &lt;pre&gt; when -dump'ing
+        and -crawl'ing, mark wrapped lines in interactive
+        session.</dd>
+
+        <dt><code>-dump</code></dt>
+
+        <dd>dumps the formatted output of the default document or
+        one specified on the command line to standard out. This can
+        be used in the following way:<br>
+        <em>lynx -dump http://www.w3.org/</em></dd>
+
+        <dt><code>-editor=EDITOR</code></dt>
+
+        <dd>enable external editing using the specified
+        <em>EDITOR</em>. (vi, ed, emacs, etc.)</dd>
+
+        <dt><code>-emacskeys</code></dt>
+
+        <dd>enable emacs-like key movement.</dd>
+
+        <dt><code>-enable_scrollback</code></dt>
+
+        <dd>toggles behavior compatible with the scrollback keys in
+        some communications software (may be incompatible with some
+        curses packages).</dd>
+
+        <dt><code>-error_file=FILENAME</code></dt>
+
+        <dd>the status code from the HTTP request is placed in this
+        file.</dd>
+
+        <dt><code>-exec</code></dt>
+
+        <dd>enable local program execution (normally not
+        configured).</dd>
+
+        <dt><code>-fileversions</code></dt>
+
+        <dd>include all versions of files in local VMS directory
+        listings.</dd>
+
+        <dt><code>-find_leaks</code></dt>
+
+        <dd>toggles the memory leak checking off. Normally this is
+        not compiled-into your executable, but when it is, it can
+        be disabled for a session.</dd>
+
+        <dt><code>-force_empty_hrefless_a</code></dt>
+
+        <dd>force HREF-less 'A' elements to be empty (close them as
+        soon as they are seen).</dd>
+
+        <dt><code>-force_html</code></dt>
+
+        <dd>forces the first document to be interpreted as
+        HTML.</dd>
+
+        <dt><code>-force_secure</code></dt>
+
+        <dd>toggles forcing of the secure flag for SSL
+        cookies.</dd>
+
+        <dt><code>-forms_options</code></dt>
+
+        <dd>toggles whether the Options Menu is key-based or
+        form-based.</dd>
+
+        <dt><code>-from</code></dt>
+
+        <dd>toggles transmissions of From headers to HTTP or HTTPS
+        servers.</dd>
+
+        <dt><code>-ftp</code></dt>
+
+        <dd>disable ftp access.</dd>
+
+        <dt><code>-get_data</code></dt>
+
+        <dd>properly formatted data for a get form are read in from
+        stdin and passed to the form. Input is terminated by a line
+        that starts with '---'.</dd>
+
+        <dt><code>-head</code></dt>
+
+        <dd>send a HEAD request for the mime headers.</dd>
+
+        <dt><code>-help</code></dt>
+
+        <dd>print this Lynx command syntax usage message.</dd>
+
+        <dt><code>-hiddenlinks=<em>option</em></code></dt>
+
+        <dd>
+          control the display of hidden links. Option values are:
+
+          <dl>
+            <dt><code>merge</code></dt>
+
+            <dd>hidden links show up as bracketed numbers and are
+            numbered together with other links in the sequence of
+            their occurrence in the document.</dd>
+
+            <dt><code>listonly</code></dt>
+
+            <dd>hidden links are shown only on <em>L</em>ist
+            screens and listings generated by <code>-dump</code> or
+            from the <em>P</em>rint menu, but appear separately at
+            the end of those lists. This is the default
+            behavior.</dd>
+
+            <dt><code>ignore</code></dt>
+
+            <dd>hidden links do not appear even in listings.</dd>
+          </dl>
+        </dd>
+
+        <dt><code>-historical</code></dt>
+
+        <dd>toggles use of '&gt;' or '--&gt;' as a terminator for
+        comments.</dd>
+
+        <dt><code>-homepage=URL</code></dt>
+
+        <dd>set homepage separate from start page. Will be used if
+        a fetch of the start page fails or if it is a script which
+        does not return a document, and as the <code>URL</code> for
+        the '<em>m</em>'ain menu command.</dd>
+
+        <dt><code>-image_links</code></dt>
+
+        <dd>toggles inclusion of links for all images.</dd>
+
+        <dt><code>-ismap</code></dt>
+
+        <dd>toggles inclusion of ISMAP links when client-side MAPs
+        are present.</dd>
+
+        <dt><code>-index=URL</code></dt>
+
+        <dd>set the default index file to the specified
+        <em>URL</em></dd>
+
+        <dt><code>-justify</code></dt>
+
+        <dd>do justification of text.</dd>
+
+        <dt><code>-link=NUMBER</code></dt>
+
+        <dd>starting count for lnk#.dat files produced by
+        <em>-crawl</em>.</dd>
+
+        <dt><code>-localhost</code></dt>
+
+        <dd>disable URLs that point to remote hosts.</dd>
+
+        <dt><code>-locexec</code></dt>
+
+        <dd>enable local program execution from local files only
+        (if lynx was compiled with local execution enabled).</dd>
+
+        <dt><code>-lss=FILENAME</code></dt>
+
+        <dd>specify filename containing color-style information.
+        The default is lynx.lss.</dd>
+
+        <dt><code>-mime_header</code></dt>
+
+        <dd>include mime headers and force source dump.</dd>
+
+        <dt><code>-minimal</code></dt>
+
+        <dd>toggles minimal versus valid comment parsing. When
+        minimal, any '--&gt;' serves as a terminator for a comment
+        element. When valid, pairs of '--' are treated as
+        delimiters for series of comments within the overall
+        comment element. If historical is set, that overrides
+        minimal or valid comment parsing.</dd>
+
+        <dt><code>-nested_tables</code></dt>
+
+        <dd>toggles nested-tables logic (for debugging).</dd>
+
+        <dt><code>-newschunksize=NUMBER</code></dt>
+
+        <dd>number of articles in chunked news listings.</dd>
+
+        <dt><code>-newsmaxchunk=NUMBER</code></dt>
+
+        <dd>maximum news articles in listings before chunking.</dd>
+
+        <dt><code>-nobold</code></dt>
+
+        <dd>disable bold video-attribute.</dd>
+
+        <dt><code>-nobrowse</code></dt>
+
+        <dd>disable directory browsing.</dd>
+
+        <dt><code>-nocc</code></dt>
+
+        <dd>disable Cc: prompts for self copies of mailings. Note
+        that this does not disable any CCs which are incorporated
+        within a mailto URL or form ACTION.</dd>
+
+        <dt><code>-nocolor</code></dt>
+
+        <dd>force color mode off, overriding terminal capabilities
+        and any <em>-color</em> flags, <em>COLORTERM</em> variable,
+        and saved .lynxrc settings.</dd>
+
+        <dt><code>-noexec</code></dt>
+
+        <dd>disable local program execution. (DEFAULT)</dd>
+
+        <dt><code>-nofilereferer</code></dt>
+
+        <dd>disable transmissions of Referer headers for file
+        URLs.</dd>
+
+        <dt><code>-nolist</code></dt>
+
+        <dd>disable the link list feature in dumps.</dd>
+
+        <dt><code>-nolog</code></dt>
+
+        <dd>disable mailing of error messages to document
+        owners.</dd>
+
+        <dt><code>-nomargins</code></dt>
+
+        <dd>disable left/right margins in the default style
+        sheet.</dd>
+
+        <dt><code>-nomore</code></dt>
+
+        <dd>disable -more- string in statusline messages.</dd>
+
+        <dt><code>-nonrestarting_sigwinch</code></dt>
+
+        <dd>make window size change handler non-restarting. This
+        flag is not available on all systems, Lynx needs to be
+        compiled with HAVE_SIGACTION defined. If available, this
+        flag <em>may</em> cause Lynx to react more immediately to
+        window changes when run within an xterm.</dd>
+
+        <dt><code>-nopause</code></dt>
+
+        <dd>disable forced pauses for statusline messages.</dd>
+
+        <dt><code>-noprint</code></dt>
+
+        <dd>disable most print functions.</dd>
+
+        <dt><code>-noredir</code></dt>
+
+        <dd>don't follow URL redirections</dd>
+
+        <dt><code>-noreferer</code></dt>
+
+        <dd>disable transmissions of Referer headers.</dd>
+
+        <dt><code>-noreverse</code></dt>
+
+        <dd>disable reverse video-attribute.</dd>
+
+        <dt><code>-nosocks</code></dt>
+
+        <dd>disable SOCKS proxy usage by a SOCKSified Lynx.</dd>
+
+        <dt><code>-nostatus</code></dt>
+
+        <dd>disable the retrieval status messages.</dd>
+
+        <dt><code>-notitle</code></dt>
+
+        <dd>disable title and blank line from top of page.</dd>
+
+        <dt><code>-nounderline</code></dt>
+
+        <dd>disable underline video-attribute.</dd>
+
+        <dt><code>-number_fields</code></dt>
+
+        <dd>force numbering of links as well as form input
+        fields.</dd>
+
+        <dt><code>-number_links</code></dt>
+
+        <dd>force numbering of links.</dd>
+
+        <dt><code>-partial</code></dt>
+
+        <dd>toggles displaying of partial pages while loading.</dd>
+
+        <dt><code>-partial_thres=<em>NUMBER</em></code></dt>
+
+        <dd>number of lines to render before repainting display
+        with partial-display logic.</dd>
+
+        <dt><code>-pauth=ID:PW</code></dt>
+
+        <dd>set authorization ID and password for a protected proxy
+        server at startup. Be sure to protect any script files
+        which use this switch.</dd>
+
+        <dt><code>-popup</code></dt>
+
+        <dd>toggles handling of single-choice SELECT options via
+        popup windows or as lists of radio buttons. The default
+        configuration can be changed in userdefs.h or <a href=
+        "#lynx.cfg">lynx.cfg</a>. It also can be set and saved via
+        the 'o'ptions menu. The command line switch toggles the
+        default.</dd>
+
+        <dt><code>-post_data</code></dt>
+
+        <dd>properly formatted data for a post form are read in
+        from stdin and passed to the form. Input is terminated by a
+        line that starts with '---'.</dd>
+
+        <dt><code>-preparsed</code></dt>
+
+        <dd>show source preparsed and reformatted when used with
+        -source or in source view ('<em>\</em>'). May be useful for
+        debugging of broken HTML markup to visualize the difference
+        between SortaSGML and TagSoup <a href=
+        "keystrokes/option_help.html#tagsoup">recovery modes</a>,
+        switched by '<em>^V</em>'.</dd>
+
+        <dt><code>-prettysrc</code></dt>
+
+        <dd>do syntax highlighting and hyperlink handling in source
+        view.</dd>
+
+        <dt><code>-print</code></dt>
+
+        <dd>enable print functions. (default)</dd>
+
+        <dt><code>-pseudo_inlines</code></dt>
+
+        <dd>toggles pseudo-ALTs for inline images with no ALT
+        string.</dd>
+
+        <dt><code>-raw</code></dt>
+
+        <dd>toggles default setting of 8-bit character translations
+        or CJK mode for the startup character set.</dd>
+
+        <dt><code>-realm</code></dt>
+
+        <dd>restricts access to URLs in the starting realm.</dd>
+
+        <dt><code>-reload</code></dt>
+
+        <dd>flushes the cache on a proxy server (only the first
+        document affected).</dd>
+
+        <dt><code>-restrictions</code></dt>
+
+        <dd>allows a list of services to be disabled selectively
+        and takes the following form:</dd>
+
+        <dd><em>lynx
+        -restrictions=[option][,option][,option]...</em></dd>
+
+        <dd>
+          The list of recognized options is printed if none are
+          specified.
+
+          <dl>
+            <dt>?</dt>
+
+            <dd>if used alone, lists restrictions in effect.</dd>
+
+            <dt>all</dt>
+
+            <dd>restricts all options listed below.</dd>
+
+            <dt>bookmark</dt>
+
+            <dd>disallow changing the location of the bookmark
+            file.</dd>
+
+            <dt>bookmark_exec</dt>
+
+            <dd>disallow execution links via the bookmark
+            file.</dd>
+
+            <dt>change_exec_perms</dt>
+
+            <dd>disallow changing the eXecute permission on files
+            (but still allow it for directories) when local file
+            management is enabled.</dd>
+
+            <dt>chdir</dt>
+
+            <dd>disallow command which changes Lynx's working
+            directory.</dd>
+
+            <dt>default</dt>
+
+            <dd>same as command line option <em>-anonymous</em>.
+            Set default restrictions for anonymous users. All
+            specific services listed are always restricted, except
+            for: inside_telnet, outside_telnet, inside_ftp,
+            outside_ftp, inside_rlogin, outside_rlogin,
+            inside_news, outside_news, telnet_port, jump, mail,
+            print, exec, and goto. The settings for these, as well
+            as additional goto restrictions for specific URL
+            schemes that are also applied, are derived from
+            definitions within userdefs.h.<br>
+            Note that this is the only option value that may have
+            the effect of <em>removing</em> some restrictions, if
+            they have been set by other options, namely for those
+            services that <em>are</em> allowed by default according
+            to userdefs.h. However, if the separate command line
+            option form (<em>-anonymous</em>) is used, Lynx takes
+            care to set the default restrictions before handling
+            additional <em>-restrictions=</em> options (even if
+            they precede the <em>anonymous</em> option), so that
+            this cannot happen.</dd>
+
+            <dt>dired_support</dt>
+
+            <dd>disallow local file management.</dd>
+
+            <dt>disk_save</dt>
+
+            <dd>disallow saving to disk in the download and print
+            menus.</dd>
+
+            <dt>dotfiles</dt>
+
+            <dd>disallow access to, or creation of, hidden (dot)
+            files.</dd>
+
+            <dt>download</dt>
+
+            <dd>disallow some downloaders in the download menu.
+            This does <em>not</em> imply the disk_save restriction.
+            It also does not disable the DOWNLOAD command, and does
+            not prevent "Download or Cancel" offers when a MIME
+            type cannot otherwise be handled. Those are only
+            disabled if additionally the disk_save restriction is
+            in effect <em>and</em> no download methods are defined
+            in a <a href="#lynx.cfg">Lynx configuration file</a>
+            that are marked as "always ENABLED" (or, alternatively,
+            if the -validate switch is used).</dd>
+
+            <dt>editor</dt>
+
+            <dd>disallow external editing.</dd>
+
+            <dt>exec</dt>
+
+            <dd>disable execution scripts.</dd>
+
+            <dt>exec_frozen</dt>
+
+            <dd>disallow the user from changing the local execution
+            option.</dd>
+
+            <dt>externals</dt>
+
+            <dd>disallow some "EXTERNAL" configuration lines, if
+            support for passing URLs to external applications (with
+            the EXTERN_LINK or EXTERN_PAGE command) is compiled
+            in.</dd>
+
+            <dt>file_url</dt>
+
+            <dd>disallow using G)oto, served links or bookmarks for
+            file: URLs.</dd>
+
+            <dt>goto</dt>
+
+            <dd>disable the '<em>g</em>' (goto) command.</dd>
+
+            <dt>inside_ftp</dt>
+
+            <dd>disallow ftps for people coming from inside your
+            domain.</dd>
+
+            <dt>inside_news</dt>
+
+            <dd>disallow USENET news reading and posting for people
+            coming from inside you domain. This applies to "news",
+            "nntp", "newspost", and "newsreply" URLs, but not to
+            "snews", "snewspost", or "snewsreply" in case they are
+            supported.</dd>
+
+            <dt>inside_rlogin</dt>
+
+            <dd>disallow rlogins for people coming from inside your
+            domain.</dd>
+
+            <dt>inside_telnet</dt>
+
+            <dd>disallow telnets for people coming from inside your
+            domain.</dd>
+
+            <dt>jump</dt>
+
+            <dd>disable the '<em>j</em>' (jump) command.</dd>
+
+            <dt>lynxcgi</dt>
+
+            <dd>disallow execution of Lynx CGI URLs.</dd>
+
+            <dt>mail</dt>
+
+            <dd>disallow mailing feature.</dd>
+
+            <dt>multibook</dt>
+
+            <dd>disallow multiple bookmarks.</dd>
+
+            <dt>news_post</dt>
+
+            <dd>disallow USENET News posting,</dd>
+
+            <dt>options_save</dt>
+
+            <dd>disallow saving options in .lynxrc.</dd>
+
+            <dt>outside_ftp</dt>
+
+            <dd>disallow ftps for people coming from outside your
+            domain.</dd>
+
+            <dt>outside_news</dt>
+
+            <dd>disallow USENET news reading and posting for people
+            coming from outside you domain. This applies to "news",
+            "nntp", "newspost", and "newsreply" URLs, but not to
+            "snews", "snewspost", or "snewsreply" in case they are
+            supported.</dd>
+
+            <dt>outside_rlogin</dt>
+
+            <dd>disallow rlogins for people coming from outside
+            your domain.</dd>
+
+            <dt>outside_telnet</dt>
+
+            <dd>disallow telnets for people coming from outside
+            your domain.</dd>
+
+            <dt>print</dt>
+
+            <dd>disallow most print options.</dd>
+
+            <dt>shell</dt>
+
+            <dd>disallow shell escapes.</dd>
+
+            <dt>suspend</dt>
+
+            <dd>disallow <em>Control-Z</em> suspends with escape to
+            shell on Unix.</dd>
+
+            <dt>telnet_port</dt>
+
+            <dd>disallow specifying a port in telnet G)oto's.</dd>
+
+            <dt>useragent</dt>
+
+            <dd>disallow modifications of the User-Agent
+            header.</dd>
+          </dl>
+        </dd>
+
+        <dt><code>-resubmit_posts</code></dt>
+
+        <dd>toggles forced resubmissions (no-cache) of forms with
+        method POST when the documents they returned are sought
+        with the PREV_DOC (<em>left-arrow</em>) command or from the
+        <em>History Page</em>.</dd>
+
+        <dt><code>-rlogin</code></dt>
+
+        <dd>disable recognition of rlogin commands.</dd>
+
+        <dt><code>-scrollbar</code></dt>
+
+        <dd>toggles showing scrollbar.</dd>
+
+        <dt><code>-scrollbar_arrow</code></dt>
+
+        <dd>toggles showing arrows at ends of the scrollbar.</dd>
+
+        <dt><code>-selective</code></dt>
+
+        <dd>require .www_browsable files to browse
+        directories.</dd>
+
+        <dt><code>-session=FILENAME</code></dt>
+
+        <dd>resumes from specified file on startup and saves
+        session to that file on exit.</dd>
+
+        <dt><code>-sessionin=FILENAME</code></dt>
+
+        <dd>resumes session from specified file.</dd>
+
+        <dt><code>-sessionout=FILENAME</code></dt>
+
+        <dd>saves session to specified file.</dd>
+
+        <dt><code>-short_url</code></dt>
+
+        <dd>show very long URLs in the status line with "..." to
+        represent the portion which cannot be displayed. The
+        beginning and end of the URL are displayed, rather than
+        suppressing the end.</dd>
+
+        <dt><code>-show_cursor</code></dt>
+
+        <dd>If enabled the cursor will not be hidden in the right
+        hand corner but will instead be positioned at the start of
+        the currently selected link. Show cursor is the default for
+        systems without FANCY_CURSES capabilities. The default
+        configuration can be changed in userdefs.h or <a href=
+        "#lynx.cfg">lynx.cfg</a>. It also can be set and saved via
+        the 'o'ptions menu. The command line switch toggles the
+        default.</dd>
+
+        <dt><code>-show_rate</code></dt>
+
+        <dd>If enabled the transfer rate is shown in bytes/second.
+        If disabled, no transfer rate is shown. Use lynx.cfg or the
+        options menu to select KiB/second and/or ETA.</dd>
+
+        <dt><code>-soft_dquotes</code></dt>
+
+        <dd>toggles emulation of the old Netscape and Mosaic bug
+        which treated '<em>&gt;</em>' as a co-terminator for
+        double-quotes and tags.</dd>
+
+        <dt><code>-source</code></dt>
+
+        <dd>
+          works the same as dump but outputs HTML source instead of
+          formatted text. For example
+          <pre>
+<tt>
+                    lynx -source . &gt;foo.html
+                    </tt>
+</pre>generates HTML source listing the files in the current
+directory. Each file is marked by an HREF relative to the parent
+directory. Add a trailing slash to make the HREF's relative to the
+current directory:
+          <pre>
+<tt>
+                    lynx -source ./ &gt;foo.html
+                    </tt>
+</pre>
+        </dd>
+
+        <dt><code>-stack_dump</code></dt>
+
+        <dd>disable SIGINT cleanup handler.</dd>
+
+        <dt><code>-startfile_ok</code></dt>
+
+        <dd>allow non-http startfile and homepage with
+        <em>-validate</em>.</dd>
+
+        <dt><code>-stderr</code></dt>
+
+        <dd>When dumping a document using <code>-dump</code> or
+        <code>-source</code>, Lynx normally does not display alert
+        (error) messages that you see on the screen in the status
+        line. Use the <code>-stderr</code> option to tell Lynx to
+        write these messages to the standard error.</dd>
+
+        <dt><code>-stdin</code></dt>
+
+        <dd>read the startfile from standard input (UNIX
+        only).</dd>
+
+        <dt><code>-syslog=<em>text</em></code></dt>
+
+        <dd>information for syslog call.</dd>
+
+        <dt><code>-syslog-urls</code></dt>
+
+        <dd>log requested URLs with syslog.</dd>
+
+        <dt><code>-tagsoup</code></dt>
+
+        <dd>initialize DTD with "TagSoup" tables, <a href=
+        "keystrokes/option_help.html#tagsoup">more
+        details</a>.</dd>
+
+        <dt><code>-telnet</code></dt>
+
+        <dd>disable recognition of telnet commands.</dd>
+
+        <dt><code>-term=TERM</code></dt>
+
+        <dd>tell Lynx what terminal type to assume its talking to.
+        (This may be useful for remote execution, when, for
+        example, Lynx connects to a remote TCP/IP port that starts
+        a script that, in turn, starts another Lynx process.)</dd>
+
+        <dt><code>-timeout=<em>N</em></code></dt>
+
+        <dd>For win32, sets the network read-timeout, where N is
+        given in seconds.</dd>
+
+        <dt><code>-tlog</code></dt>
+
+        <dd>toggles use of a <em>Lynx Trace Log</em> for the
+        session. The log is named <em>Lynx.trace</em> and is
+        created in the home directory when Lynx trace mode is
+        turned on via the <em>-trace</em> command line switch (see
+        below), or via the TRACE_TOGGLE (<em>Control-T</em>)
+        keystroke command. Once a log is started for the session,
+        all trace and other stderr messages are written to the log.
+        The contents of the log can be examined during the session
+        via the TRACE_LOG (normally, '<em>;</em>') keystroke
+        command. If use of a Lynx Trace Log is turned off, any
+        trace output will go to the standard error stream.</dd>
+
+        <dt><code>-tna</code></dt>
+
+        <dd>turns on <a href="#tna">"Textfields Need
+        Activation"</a> mode.</dd>
+
+        <dt><code>-trace</code></dt>
+
+        <dd>turns on Lynx trace mode. If a Lynx Trace Log
+        (<em>Lynx.trace</em> in the home directory) has been
+        started for the current session, all trace messages are
+        written to that log, and can be examined during the session
+        via the TRACE_LOG (normally, '<em>;</em>') command. If no
+        Trace Log file is in use, trace messages go to stderr.</dd>
+
+        <dt><code>-trace_mask=<em>value</em></code></dt>
+
+        <dd>
+          turn on optional traces, which may result in very large
+          trace files. Logically OR the values to combine options:
+
+          <dl>
+            <dt>1</dt>
+
+            <dd>SGML character parsing states</dd>
+
+            <dt>2</dt>
+
+            <dd>color-style</dd>
+
+            <dt>4</dt>
+
+            <dd>TRST (table layout)</dd>
+
+            <dt>8</dt>
+
+            <dd>config (lynx.cfg and .lynxrc contents)</dd>
+
+            <dt>16</dt>
+
+            <dd>binary string copy/append, used in form data
+            construction.</dd>
+          </dl>
+        </dd>
+
+        <dt><code>-traversal</code></dt>
+
+        <dd>traverse all http links derived from startfile. When
+        used with <em>-crawl</em>, each link that begins with the
+        same string as startfile is output to a file, intended for
+        indexing. See CRAWL.announce for more information.</dd>
+
+        <dt><code>-trim_input_fields</code></dt>
+
+        <dd>trim input text/textarea fields in forms.</dd>
+
+        <dt><code>-underscore</code></dt>
+
+        <dd>toggles use of _underline_ format in dumps.</dd>
+
+        <dt><code>-use_mouse</code></dt>
+
+        <dd>turn on mouse support, if available.</dd>
+
+        <dt><code>-useragent=STRING</code></dt>
+
+        <dd>set different Lynx User-Agent header. Lynx produces a
+        warning on startup if the STRING does not contain "Lynx" or
+        "L_y_n_x", see the <a href="#noteUA">note</a> in the
+        Options Menu section for rationale.</dd>
+
+        <dt><code>-validate</code></dt>
+
+        <dd>accept only http URLs (meant for validation).</dd>
+
+        <dd>This flag implies security restrictions generally more
+        severe than <em>-anonymous</em>: restriction options as for
+        <em>-restrictions=all</em>, with the notable exception that
+        goto remains enabled for http and https URLs; in addition,
+        the PRINT and DOWNLOAD commands are completely disabled,
+        and use of a Trace Log file is forced off.</dd>
+
+        <dd>Any relaxing of restriction that might be implied by an
+        also present (or implied) <em>-anonymous</em> flag is
+        overridden, the only way to possibly relax <em>some</em> of
+        the restrictions to the level applicable for "anononymous"
+        accounts is with an explicit
+        <em>-restrictions=default</em>.</dd>
+
+        <dt><code>-verbose</code></dt>
+
+        <dd>toggles [LINK], [IMAGE] and [INLINE] comments with
+        filenames of these images.</dd>
+
+        <dt><code>-version</code></dt>
+
+        <dd>print version information.</dd>
+
+        <dt><code>-vikeys</code></dt>
+
+        <dd>enable vi-like key movement.</dd>
+
+        <dt><code>-wdebug</code></dt>
+
+        <dd>enable Waterloo tcp/ip packet debug (print to watt
+        debugfile). This applies only to DOS versions compiled with
+        WATTCP or WATT-32.</dd>
+
+        <dt><code>-width=NUMBER</code></dt>
+
+        <dd>number of columns for formatting of dumps, default is
+        80.</dd>
+
+        <dt><code>-with_backspaces</code></dt>
+
+        <dd>emit backspaces in output if -dumping or -crawling
+        (like <code>man</code> does).</dd>
+      </dl>
+    </dd>
+  </dl>
+
+  <p>No options are required, nor is a startfile argument required.
+  White space can be used in place of equal sign separators
+  ('<em>=</em>') appearing in the option list above. It can not be
+  used in place of the equal signs in forms like "-option=on" and
+  "-option=off" for simple switches and toggles, for which
+  "-option" alone (without a value) is valid.</p>
+
+  <p>[<a href="#ToC-Invoking">ToC</a>]</p>
+
+  <h2 id="Environments"><a name="Environment" id=
+  "Environment"><em>Environment variables used by
+  Lynx</em></a></h2>
+
+  <p>Lynx uses certain environment variables and sets a few of
+  them. Please visit a <a href=
+  "keystrokes/environments.html">separate page</a> for this rather
+  technical information.</p>
+
+  <p>[<a href="#ToC-Environment">ToC</a>]</p>
+
+  <h2 id="id-lynx.cfg"><a name="lynx.cfg" id="lynx.cfg"><em>Main
+  configuration file lynx.cfg</em></a></h2>
+
+  <p>Lynx has several levels of customization: from the Options
+  Menu (accessible on-line, and possibly stored in your local
+  .lynxrc file), via command-line switches on startup (mainly for
+  batch processing). The most important and numerous default
+  settings are stored in the Lynx configuration file
+  <em>lynx.cfg</em>.</p>
+
+  <p>If you are on a UNIX system you should have appropriate
+  permissions to make changes there or ask your system
+  administrator to modify lynx.cfg for your needs. This file
+  provides default settings for all accounts on your system. It may
+  be copied to your shell account and included with -cfg command
+  line switch or via an environment variable LYNX_CFG (if you have
+  shell access). Starting with version 2.8.1 Lynx has an include
+  facility so you can load the system-wide configuration file and
+  easily add one or more settings from your local add-on
+  configuration file. It is really cool to read lynx.cfg with its
+  comments for hundreds of options, most of them commented out
+  because they are built-in defaults. You may visit an index of
+  options: <a href=
+  "http://lynx.isc.org/release/lynx2-8-7/lynx_help/cattoc.html">by
+  category</a> or <a href=
+  "http://lynx.isc.org/release/lynx2-8-7/lynx_help/alphatoc.html">by
+  alphabet</a>.</p>
+
+  <p>To view your current configuration derived from lynx.cfg and
+  any included configuration files, press <em>'g'</em> and type in
+  '<em>lynxcfg:</em>'. If you are using the forms-based <em>Options
+  Menu</em>, you may press <em>'o'</em> for the Options Menu and
+  follow the '<em>Check your lynx.cfg</em>' link near the
+  bottom.</p>
+
+  <p>However, for those who have a restricted account many Lynx
+  features may be disabled by the system administrator, you
+  probably will not see your lynx.cfg.</p>
+
+  <p>[<a href="#ToC-lynx.cfg">ToC</a>]</p>
+
+  <h2 id="id-Hist"><a name="Hist" id="Hist"><em>Lynx development
+  history</em></a></h2>
+
+  <p>Lynx grew out of efforts to build a campus-wide information
+  system at The University of Kansas. The earliest versions of Lynx
+  provided a user-friendly, distributed hypertext interface for
+  users connected to multiuser (Unix and VMS) systems via
+  curses-oriented display devices. A custom hypertext format was
+  developed to support hypertext links to local files and files on
+  remote Gopher servers. Using Gopher servers for distributed file
+  service allowed information providers to publish information from
+  a wide variety of platforms (including Unix, VMS, VM/CMS and
+  Macintosh). In addition, Lynx became the most user-friendly
+  Gopher client, although that was only an ancillary
+  capability.</p>
+
+  <p>This distributed approach let providers retain complete
+  control over their information, but it made communication between
+  users and providers somewhat more difficult. Following the lead
+  of Neal Erdwien, of Kansas State University, the Lynx hypertext
+  format was extended to include links for including ownership
+  information with each file. This information made it possible for
+  users running Lynx clients to send comments and suggestions via
+  e-mail to the providers.</p>
+
+  <p>This early version of Lynx was also augmented to support
+  hypertext links to programs running on remote systems. It
+  included the ability to open a Telnet connection, as well as the
+  ability to start programs via rexec, inetd, or by direct socket
+  connects. These capabilities were included to allow users to
+  access databases or custom program interfaces.</p>
+
+  <p>A subsequent version of Lynx incorporated the World Wide Web
+  libraries to allow access to the full list of WWW servers, along
+  with the option to build hypertext documents in HTML, rather than
+  the native Lynx format. HTML has become far more widely used, and
+  the native format has been phased out. With the addition of the
+  WWW libraries, Lynx became a fully-featured WWW client, limited
+  only by the display capabilities offered in the curses
+  environment.</p>
+
+  <p>Lynx was designed by Lou Montulli, Charles Rezac and Michael
+  Grobe of Academic Computing Services at The University of Kansas.
+  Lynx was implemented by Lou Montulli and maintained by Garrett
+  Arch Blythe and Craig Lavender.</p>
+
+  <p><em>Foteos Macrides</em> and members of the <a href=
+  "lynx-dev.html">lynx-dev</a> list have developed and supported
+  Lynx since release of v2.3 in May 1994.<br>
+  The Lynx2-3FM code set was released as v2.4 in June 1995.<br>
+  The Lynx2-4FM code set was released as v2.5 in May 1996.<br>
+  The Lynx2-5FM code set was released as v2.6 in September
+  1996.<br>
+  The Lynx2-6FM code set was released as v2.7 in February 1997.<br>
+  The v2-7FM code set was released as v2.7.1 in April 1997.<br>
+  The v2-7-1FM code set was released as v2.7.2 in January 1998.<br>
+  The 2.7.1 development set was released as v2.8 in March 1998.<br>
+  The 2.8 development set was released as v2.8.1 in October
+  1998.<br>
+  The 2.8.1 development set was released as v2.8.2 in June
+  1999.<br>
+  The 2.8.2 development set was released as v2.8.3 in April
+  2000.<br>
+  The 2.8.3 development set was released as v2.8.4 in July
+  2001.<br>
+  The 2.8.4 development set was released as v2.8.5 in February
+  2004.<br>
+  The 2.8.5 development set was released as v2.8.6 in October
+  2006.<br>
+  The 2.8.6 development set was released as v2.8.7 in July
+  2009.<br></p>
+
+  <p>Since early 1997, the Lynx code has expanded into
+  autoconfigure and PC versions. The branching of the Lynx source
+  base from a single source into two sources (FM/Foteos Macrides
+  and ac/autoconfigure) should be considered a healthy synergism
+  among groups of computer professionals acting in their spare time
+  out of a common goal.</p>
+
+  <p>Lynx has incorporated code from a variety of sources along the
+  way. The earliest versions of Lynx included code from Earl Fogel
+  of Computing Services at the University of Saskatchewan, who
+  implemented HYPERREZ in the Unix environment. Those versions also
+  incorporated libraries from the Unix Gopher clients developed at
+  the University of Minnesota, and the later versions of Lynx rely
+  on the WWW client library code developed by Tim Berners-Lee (and
+  others) and the WWW community.</p>
+
+  <p>Contributors have generally been acknowledged in the CHANGES
+  file. Earlier CHANGES file can be found in the docs/ subdirectory
+  of this distribution.</p>
+
+  <p>Information on obtaining the most current version of Lynx is
+  available at <a href="http://lynx.isc.org/current/index.html">the
+  current distribution page</a>.</p>
+
+  <p>[<a href="#Contents">ToC</a>]</p>
+</body>
+</html>
diff --git a/lynx_help/about_lynx.html b/lynx_help/about_lynx.html
new file mode 100644
index 00000000..4243bb43
--- /dev/null
+++ b/lynx_help/about_lynx.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: about_lynx.html,v 1.16 2012/01/31 10:51:52 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>About Lynx</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <blockquote>
+    [ <a href="lynx-dev.html">About Lynx-Dev</a> | <a href=
+    "http://mail.gnu.org/mailman/listinfo/lynx-dev/">Lynx-Dev
+    Archives</a> ]
+  </blockquote>
+
+  <h1><em>About Lynx</em></h1>
+
+  <p>Lynx is a fully-featured <em>World Wide Web</em>
+  (<em>WWW</em>) browser for users on Unix, VMS, and other
+  platforms running cursor-addressable, character-cell terminals or
+  emulators. That includes vt100 terminals, other character-cell
+  displays, and vt100 emulators such as Kermit or Procomm running
+  on PCs or Macs.</p>
+
+  <p>For information on how to use Lynx see the <a href=
+  "Lynx_users_guide.html">Lynx User's Guide</a>, or the <a href=
+  "lynx_help_main.html">Lynx help files</a>.</p>
+
+  <h2><em>Credits and Copyright</em></h2>
+
+  <p>Lynx was a product of the Distributed Computing Group within
+  Academic Computing Services of <a href=
+  "http://www.cc.ukans.edu/">The University of Kansas</a>.</p>
+
+  <p>Lynx was originally developed by <a href=
+  "http://www.cc.ukans.edu/cwis/people/Lou.Montulli.html">Lou
+  Montulli</a>, <a href="http://www.cc.ku.edu/~grobe/">Michael
+  Grobe</a>, and <a href=
+  "http://www.cc.ukans.edu/cwis/people/Charles.Rezac.html">Charles
+  Rezac</a>. <a href=
+  "http://www.cc.ukans.edu/cwis/people/Garrett/Garrett_Arch_Blythe.html">
+  Garrett Blythe</a> created <a href=
+  "http://www.cc.ukans.edu/about_doslynx/doslynx.html">DosLynx</a>
+  and later joined the Lynx effort as well. Following the
+  departures of Lou and Garrett for positions at Netscape in the
+  summer of 1994, <em>Craig Lavender</em> provided support services
+  for Lynx, and <em>Ravikumar Kolli</em> for DosLynx.</p>
+
+  <p>Lynx is maintained and supported by members of the Internet
+  community coordinated via the <a href=
+  "#lynx-dev_list"><em>lynx-dev mailing list</em></a>.</p>
+
+  <p>Lynx is derived from material copyrighted by the University of
+  Kansas. However most of the release (and corresponding copyright)
+  is the work of developers on the <a href=
+  "#lynx-dev_list"><em>lynx-dev mailing list</em></a>. It is
+  distributed <a href="COPYHEADER">without restrictions on usage or
+  redistribution</a> under the <a href="COPYING">GNU General Public
+  License (Version 2)</a>.</p>
+
+  <p>Lynx was built over an early version of the Common Code
+  Library developed by the CERN WWW Project. That code is
+  copyrighted by CERN. Lynx contains other sections of code that
+  are copyrighted by other institutions or individuals. The Lynx
+  copyright does not override or invalidate those copyrights.</p>
+
+  <p>Thanks to <a name="13" href=
+  "http://www.w3.org/People/Berners-Lee/">Tim Berners-Lee</a> and
+  the other <a name="14" href="http://www.w3.org/People.html">CERN
+  World Wide Web wizards</a> for the WWW client library code and
+  all of their other work on the WWW project, NCSA and the <a href=
+  "http://archive.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.html">
+  Mosaic</a> developers, and to everyone out in netland who has
+  contributed to Lynx's development either directly (through
+  comments or bug reports) or indirectly (through inspiration and
+  development of other systems).</p>
+
+  <p>Also, special thanks go to <em>Foteos Macrides</em> who ported
+  much of Lynx to VMS and did much of its development following Lou
+  Montulli's and Garrett Blythe's departures from the University of
+  Kansas, and to <em>Earl Fogel</em> of the University of
+  Saskatchewan. Earl implemented the hypertext engine HYPERREZ in
+  the Unix environment. HYPERREZ was developed by Niel Larson of
+  Think.com and served as the model for the early versions of Lynx
+  which did not use the WWW libraries and had their own hypertext
+  format.</p>
+
+  <h2><a name="availability"><em>Availability</em></a></h2>
+
+  <p>Information on obtaining the most current version of Lynx is
+  available via <a href="http://www.subir.com/lynx.html">Lynx
+  links</a>.</p>
+
+  <h2><a name="lynx-dev_list"><em>Mailing List</em></a></h2>
+
+  <p>We have a mailing list for lynx development discussion. If you
+  are interested in joining the list, follow this <a href=
+  "lynx-dev.html">link</a>. There also are links to <a href=
+  "http://mail.gnu.org/mailman/listinfo/lynx-dev/">archives</a> in
+  html format for this mailing list.</p>
+</body>
+</html>
diff --git a/lynx_help/help_files.txt b/lynx_help/help_files.txt
new file mode 100644
index 00000000..326ddbd4
--- /dev/null
+++ b/lynx_help/help_files.txt
@@ -0,0 +1,38 @@
+# $LynxId: help_files.txt,v 1.12 2012/01/31 10:52:22 tom Exp $
+#
+# 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
+ALT_EDIT_HELP=alt_edit_help.html
+BASHLIKE_EDIT_HELP=bashlike_edit_help.html
+BOOKMARK_HELP=bookmark_help.html
+COOKIE_HELP=cookie_help.html
+DIRED_HELP=dired_help.html
+EDIT_HELP=edit_help.html
+ENVIRONMENTS=environments.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
+TEST_DISPLAY=test_display.html
+VISITED_HELP=visited_help.html
+XTERM_HELP=xterm_help.html
+LYNX_DEV=lynx-dev.html
diff --git a/lynx_help/keystrokes/alt_edit_help.html b/lynx_help/keystrokes/alt_edit_help.html
new file mode 100644
index 00000000..690537a0
--- /dev/null
+++ b/lynx_help/keystrokes/alt_edit_help.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: alt_edit_help.html,v 1.9 2012/01/31 23:22:53 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Lynx Line Editor Alternative Key Binding</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <link rel="Sibling" title="Default Binding" href=
+  "edit_help.html">
+  <link rel="Sibling" title="Bash-Like Binding" href=
+  "bashlike_edit_help.html">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>ALTERNATIVE BINDING</h1>
+
+  <p>Lynx invokes a built-in <em>Line Editor</em> for entering
+  strings in response to prompts, in forms, and for email messages
+  if an external editor has not been defined. Additional
+  alternative key-bindings can be offered by configuring with
+  --enable-alt-bindings or by adding them in LYEditmap.c before
+  compiling Lynx. If available, they may be selected via the
+  'o'ptions menu, or by editing lineedit_mode in the '.lynxrc'
+  file.</p>
+
+  <p>Note: setting emacs/vi keys ON has no direct effect on
+  line-editor bindings.</p>
+
+  <p>This is the <em>Alternative Binding</em> keymap:</p>
+  <pre>
+     ENTER  Input complete        -  RETURN
+     TAB    Input complete        -  TAB, Do
+     ABORT  Input cancelled       -  Ctrl-G, Ctrl-O, (Ctrl-C on some systems)
+     ERASE  Erase the line        -  Ctrl-U
+
+     BACK   Cursor back     char  -  Left-Arrow,  Ctrl-B
+     FORW   Cursor forward  char  -  Right-Arrow, Ctrl-F
+     BACKW  Cursor back     word  -  Ctrl-P
+     FORWW  Cursor forward  word  -  Ctrl-N
+     BOL    Go to begin of  line  -  Ctrl-A, Home, Find
+     EOL    Go to end   of  line  -  Ctrl-E, End,  Select
+
+     DELP   Delete prev     char  -  Ctrl-H, DELETE, Remove
+     DELN   Delete next [1] char  -  Ctrl-D
+     DELPW  Delete prev     word  -  Ctrl-R
+     DELNW  Delete next     word  -  Ctrl-T
+     DELEL  Delete to end of line -  Ctrl-K
+
+     UPPER  Upper case the line   -  Ctrl-^
+     LOWER  Lower case the line   -  Ctrl-_
+
+     LKCMD  Invoke cmd prompt     -  Ctrl-V (in form text fields, only) [2]
+
+<a name=
+"TASpecial">Special commands for use only in textarea fields</a>[3]:
+
+          Textarea external edit  - Ctrl-X e
+          Insert file in textarea - Ctrl-X i
+          Grow textarea           - Ctrl-X g
+
+[1] "next" means the character "under" a box or underline style cursor; it
+     means "to the immediate right of" an I-beam (between characters) type
+     cursor.
+
+[2]  Follow Ctrl-V with any recognized key command, to "escape" from a text
+     input field.
+
+[3]  For other key combinations using Ctrl-X as a prefix key, see the
+     Help page for the <a rel="Sibling" title="Bash-Like Binding"
+href="bashlike_edit_help.html">Bash-Like</a> Binding.
+</pre>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/bashlike_edit_help.html b/lynx_help/keystrokes/bashlike_edit_help.html
new file mode 100644
index 00000000..14a3a4ff
--- /dev/null
+++ b/lynx_help/keystrokes/bashlike_edit_help.html
@@ -0,0 +1,237 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: bashlike_edit_help.html,v 1.8 2012/01/31 23:21:55 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Lynx Line Editor Bash-Like Key Binding</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <link rel="Sibling" title="Default Binding" href=
+  "edit_help.html">
+  <link rel="Sibling" title="Alternative Binding" href=
+  "alt_edit_help.html">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>BASH-LIKE BINDING</h1>
+
+  <p>Lynx invokes a built-in <em>Line Editor</em> for entering
+  strings in response to prompts, in forms, and for email messages
+  if an external editor has not been defined. Several sets of
+  key-bindings can be offered by configuring with
+  --enable-alt-bindings or by adding them in LYEditmap.c before
+  compiling Lynx. If available, they may be selected via the
+  'o'ptions menu, or by editing lineedit_mode in the '.lynxrc'
+  file.</p>
+
+  <p>Note: setting emacs/vi keys ON has no direct effect on
+  line-editor bindings.</p>
+
+  <p>This is the <em>Bash-like Binding</em> keymap.</p>
+
+  <h2>Basic commands</h2>
+  <pre>
+     ENTER  Input complete        -  Enter, RETURN
+     TAB    Completion [2]/ Next  -  TAB, Do
+     ABORT  Cancel / Undo Change  -  C-g, C-_
+     ERASE  Erase the line        -  M-k, C-x k
+
+     BACK   Cursor back     char  -  Left-Arrow,  C-b
+     FORW   Cursor forward  char  -  Right-Arrow, C-f
+     BACKW  Cursor back     word  -  M-b, C-r
+     FORWW  Cursor forward  word  -  M-f, C-s [5]
+     BOL    Go to begin of  line  -  C-a, Home, Find
+     EOL    Go to end   of  line  -  C-e [4], End,  Select
+
+     DELP   Delete prev     char  -  C-h, Backspace, Rubout
+     DELN   Delete next [1] char  -  C-d, Delete, Remove
+     DELPW  Delete prev     word  -  C-w [3], M-Backspace, M-Delete (?)
+     DELNW  Delete next     word  -  M-d
+     DELBL  Delete to beg of line -  C-u
+     DELEL  Delete to end of line -  C-k [4]
+
+     UPPER  Upper case the line   -  M-u
+     LOWER  Lower case the line   -  M-l
+
+     LKCMD  Invoke cmd prompt     -  C-v [FORM]
+     SWMAP  Switch input keymap   -  C-^ (if compiled in)
+
+<a name=
+"TASpecial">Special commands for use in textarea fields</a> [FORM]:
+
+     PASS!  Textarea external edit  - C-e C-e [4], C-x e
+     PASS!  Insert file in textarea - C-x i
+     PASS!  Grow textarea           - C-x g
+</pre>
+
+  <p>Here is a little textarea for practice:<br></p>
+
+  <form action="">
+    <textarea name="practice" cols="40" rows="5">
+This text cannot be submitted.  Normally lines like
+these would be part of a form that is filled out and
+then submitted.  You can move around here and delete
+or add text as you like, using the Line-Editor keys.
+</textarea><input type="reset" value="[reset content]">
+  </form>
+  <pre>
+
+Advanced emacs-like commands:
+
+    TPOS    Transpose characters                   -  C-t
+    SETMARK Set mark at current position in line   -  C-@
+    XPMARK  Exchange current position with mark    -  C-x C-x
+    KILLREG Kill region between mark and position  -  C-x C-w [3]
+    YANK    Insert text last killed (with KILLREG) -  C-y
+</pre>
+
+  <h2>Notes</h2>
+
+  <p><samp><dfn>C-</dfn><strong>key</strong> means
+  Control+<strong><kbd>key</kbd></strong>.
+  <dfn><code>C-x</code></dfn> <strong>key</strong> means first
+  Control+<kbd>x</kbd>, then <strong><kbd>key</kbd></strong>.
+  <dfn>M-</dfn>key means Meta+<strong><kbd>key</kbd></strong>,
+  where Meta is a modifier that can be entered in a variety of
+  ways:</samp></p>
+
+  <ul>
+    <li>First ESC, then the <strong><kbd>key</kbd></strong>. This
+    doesn't work with all systems or on all connections, and if it
+    does may not work for some keys (because the ESC character is
+    also part of code sequences for "normal" function keys).</li>
+
+    <li>Alt+<strong><kbd>key</kbd></strong>. This works if the
+    terminal, console, or comm program is set up to interpret Alt
+    as a modifier to send ESC. The Linux console acts like that by
+    default for most keys; Kermit can be set up to do it, xterm can
+    be for some keys, and so on. But the same caveats as for the
+    previous item apply. This Alt mapping may also be possible,
+    independent of the ESC character, for some keys in Lynx for
+    DOS/i386 or for Win32.</li>
+
+    <li>C-x <strong><kbd>key</kbd></strong>. Actually, currently
+    the same internal table is used for Meta and the C-x prefix.
+    Therefore all M-<strong><kbd>key</kbd></strong> combinations
+    can also be typed as C-x <strong><kbd>key</kbd></strong>, and
+    vice versa.</li>
+  </ul>
+  <pre>
+[1] "next" means the character "under" a box or underline style cursor; it
+    means "to the immediate right of" an I-beam (between characters) type
+    cursor.
+[2] For entering strings in response to prompts (that is, when not editing
+    form text fields), some keys have different actions: TAB tries to
+    complete input based on previous response; Up-Arrow and Down-Arrow
+    may offer previous response and next response, respectively, from
+    recall buffer for some prompts.
+[3] C-w can only be used for editing functions if its default KEYMAP
+    to REFRESH is changed.  This can be done in the lynx.cfg file,
+    for example with the line "KEYMAP:^W:DO_NOTHING".  This also applies
+    for other keys: as long as the key's action is mapped to REFRESH,
+    either with an explicit KEYMAP in lynx.cfg or by default, the
+    key's Line Editor binding is disabled.
+[4] These keys invoke special behavior when pressed twice in a row:
+    C-e C-e calls the external editor for changing the text in a
+    textarea (if available).  C-k C-k will move to the next link,
+    so that all lines in a textarea can be conveniently cleared by
+    repeating C-k.
+[5] Key is likely unavailable for Lynx, because it is interpreted by
+    operating system, comm program, or curses library, or swallowed
+    as part of escape sequence recognition.  Binding is provided for
+    the benefit of those where this doesn't apply.
+[FORM] In form text fields, only.  Ignored by Line Editor elsewhere.
+
+More notes
+
+   When a text input field, including a textarea line, is selected,
+   the Line Editor functions get a first grab at the keys entered.
+   If a key has no function defined in the Line Editor binding, it
+   can either be ignored, or passed on for normal key command handling,
+   where modifiers like C-x or Meta currently have no effect (see the
+   <a href=
+"LYNXKEYMAP:">Key Map Page</a> accessible with the key <kbd>K</kbd> for current information).
+</pre>
+
+  <h2>Additional details on other keys, for the curious (very much
+  subject to change)</h2>
+  <pre>
+Normal key action when used in form fields, subject to remapping
+with KEYMAP: [FORM (except Up-Arrow, Down-Arrow)]
+            C-l [3], C-o, C-z [5], C-\ [5], C-] [5]
+            C-n [emacskey], C-p [emacskey]
+            Up-Arrow [2], Down-Arrow [2]
+            Page-Up, Page-Down, F1, Back-Tab
+
+Normal key command with Meta modifier ignored when used in form fields,
+subject to remapping with KEYMAP: [FORM (except Up-Arrow, Down-Arrow)]
+            M-C-l [3], M-C-o [!], M-C-z [5], M-C-\ [5], M-C-] [5]
+            M-C-u, M-/, M-n
+            M-Up-Arrow [2][!], M-Down-Arrow [2][!]
+            M-Page-Up [!], M-Page-Down [!], M-Home, M-End
+
+Passed as specific command:
+                     lynx action    duplicates by default
+                     -----------    ---------------------
+            M-C-d    NEXT_LINK      Down-Arrow
+            M-C-e    EDITTEXTAREA   C-e C-e
+            M-C-k    LPOS_NEXT_LINK (none, Down-Arrow suggested)
+            M-e      EDITTEXTAREA   C-e C-e
+            M-g      GROWTEXTAREA   (none, C-v $ suggested?)
+            M-i      INSERTFILE     (none, C-v # suggested?)
+            M-&lt;      HOME           M-Home
+            M-&gt;      END            M-End
+            M-F1     DWIMHELP       F1
+            M-Find   WHEREIS        C-v /
+            M-Select NEXT           C-v n
+
+Duplicates function of other key(s):
+                     edit action    duplicates
+                     -----------    ----------
+            M-C-b    BACKW          M-b, C-r
+            M-C-f    FORWW          M-f
+            M-C-n    FORWW          M-f
+            M-C-p    BACKW          M-b, C-r
+            M-C-r    BACKW          M-b, C-r
+            M-a      BOL            C-a, Home, ...
+
+Modifier ignored, and duplicates function of other key(s):
+                     edit action    duplicates
+                     -----------    ----------
+            M-C-a    BOL            C-a, Home, ...
+            M-C-g    ABORT          C-g, ...
+            M-TAB    TAB            C-i [!]
+            M-C-j    ENTER          C-m, C-j, Enter / RETURN
+            M-RETURN ENTER          C-m, C-j, Enter / RETURN
+            M-C-y    YANK           C-y [!]
+            M-C-^    SWMAP          C-^ [!] (if compiled in)
+       M-Right-Arrow FORW           Right-Arrow [!], C-f
+        M-Left-Arrow BACK           Left-Arrow [!],  C-b
+            M-Do     TAB            C-i [!]
+
+Key completely ignored:
+            C-q, Insert
+            M-C-q, M-C-s [5], M-C-t, M-C-v, M-ESC
+            M-C-@, M-C-_, M-Remove, M-Insert [!]
+
+Meta + other (mostly, printable character) keys:
+              Modifier ignored, or sequence swallowed (see [5]).
+            M-@, M-E...M-Z [5], M-\, M-^, M-_ attempt to interpret
+              as 7-bit escape representation for character in 8-bit
+              control (C1) range if appropriate according to
+              Display Character Set.
+
+[emacskey] Normal key action subject to emacs_keys setting.
+
+[!] Action of key with Meta modifier follows action of key without
+    Meta.  If you manage to enter the Meta key while Line-Editor
+    Binding is not set to Bash-Like, and the unmodified binding
+    is different from that listed here, M-&lt;<var>key</var>&gt; will act
+    like &lt;<var>key</var>&gt;.
+</pre>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/bookmark_help.html b/lynx_help/keystrokes/bookmark_help.html
new file mode 100644
index 00000000..df5adad1
--- /dev/null
+++ b/lynx_help/keystrokes/bookmark_help.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: bookmark_help.html,v 1.6 2012/01/31 11:00:10 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Lynx Bookmark Help</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>Bookmark Help</h1>
+
+  <p><em>Bookmark files</em> are documents that reside on your
+  local machine and you are able to edit and change:</p>
+
+  <ul>
+    <li>The append feature, invoked by pressing an '<em>a</em>'
+    while viewing a document will add the current document or the
+    currently highlighted link to your default <em>Bookmark
+    file</em>, or to one you select if multiple bookmarks are
+    enabled.</li>
+
+    <li>The remove feature, invoked by pressing an '<em>r</em>'
+    when a <em>Bookmark file</em> is being displayed, will remove
+    the currently highlighted link.</li>
+
+    <li>You may set and modify the paths and names of your
+    <em>Bookmark files</em> and enable or disable multiple
+    bookmarks in the <a href="option_help.html">Options
+    Menu</a>.</li>
+  </ul>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/cookie_help.html b/lynx_help/keystrokes/cookie_help.html
new file mode 100644
index 00000000..ad4c4240
--- /dev/null
+++ b/lynx_help/keystrokes/cookie_help.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: cookie_help.html,v 1.7 2012/01/31 23:19:37 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Help on the Cookie Jar Page</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>Cookie Jar Page Help</h1>
+
+  <p>The Cookie Jar Page displays all of the unexpired cookies you
+  have accumulated in the hypothetical <em>Cookie Jar</em>. The
+  cookies are obtained via <em>Set-Cookie</em> MIME headers in
+  replies from http servers, and are used for <a href=
+  "../Lynx_users_guide.html#Cookies">State Management</a> across
+  successive requests to the servers.</p>
+
+  <p>The cookies are listed by <em>domain</em> (server's Fully
+  Qualified Domain Name, or site-identifying portion of the FQDN),
+  and in order of decreasing specificity (number of slash-separated
+  symbolic elements in the <em>path</em> attribute of the cookie).
+  When Lynx sends requests to an http server whose address
+  tail-matches a <em>domain</em> in the <em>Cookie Jar</em>, all
+  its cookies with a <em>path</em> which head-matches the path in
+  the URL for that request are included as a <em>Cookie</em> MIME
+  header. The 'allow' setting for accepting cookies from each
+  domain (always, never, or via prompt) also is indicated in the
+  listing.</p>
+
+  <p>The listing also shows the <em>port</em> (normally 80) of the
+  URL for the request which caused the cookie to be sent, and
+  whether the <em>secure</em> flag is set for the cookie, in which
+  case it will be sent only via secure connections (presently, only
+  SSL). The <em>Maximum Gobble Date</em>, i.e., when the cookie is
+  intended to expire, also is indicated. Also, a server may change
+  the expiration date, or cause the cookie to be deleted, in its
+  replies to subsequent requests from Lynx. If the server included
+  any explanatory comments in its <em>Set-Cookie</em> MIME headers,
+  those also are displayed in the listing.</p>
+
+  <p>The <em>domain</em>=value pairs, and each cookie's name=value,
+  are links in the listing. Activating a <em>domain</em>=value link
+  will invoke a prompt asking whether all cookies in that
+  <em>domain</em> should be <em>Gobbled</em> (deleted from the
+  <em>Cookie Jar</em>), and/or whether the <em>domain</em> entry
+  should be <em>Gobbled</em> if all of its cookies have been
+  <em>Gobbled</em>, or whether to change the 'allow' setting for
+  that <em>domain</em>. Activating a cookie's name=value link will
+  cause that particular cookie to be <em>Gobbled</em>. You will be
+  prompted for confirmations of deletions, to avoid any accidental
+  <em>Gobbling</em>.</p>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/dired_help.html b/lynx_help/keystrokes/dired_help.html
new file mode 100644
index 00000000..a692c1b9
--- /dev/null
+++ b/lynx_help/keystrokes/dired_help.html
@@ -0,0 +1,62 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: dired_help.html,v 1.7 2012/01/31 23:19:02 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Lynx Dired Help</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>DIRED HELP</h1>
+
+  <p>Lynx changes into Dired mode when you use a URL of the type
+  <em>file://localhost/path/</em>. While in Dired mode, some keys
+  are remapped to do the following functions:</p>
+  <pre>
+
+        C)reate       - Create a new, empty file in the current
+                        directory.  You will be prompted to enter
+                        a name for the file.
+
+        F)ull menu    - Show a full menu of commands for currently
+                        selected file or directory.
+
+        M)odify       - Modify the name or location of selection.  If
+                        multiple files have been selected, you will
+                        only be able to change the location.  Choose
+                        between changing the name or location and then
+                        enter a new filename or path.
+
+        R)emove       - Delete currently selected files.
+
+        T)ag          - Tag the highlighted file.  Multiple files may
+                        be tagged and all other commands except "Create"
+                        will be performed on tagged files instead of the
+                        one highlighted.  Press '<em>t</em>' again to untag
+                        a file.
+
+        U)pload       - Upload a file to the current directory using
+                        one of the options listed in the upload screen.
+</pre>
+
+  <p>Some other keys useful in Dired mode:</p>
+  <pre>
+        D)ownload     - Download selection using options listed in
+                        the download options screen.
+
+        E)dit         - Spawn the editor defined in the <a href=
+"option_help.html">Options Menu</a>
+                        and load selection for editing.
+</pre>
+
+  <p><em>Note:</em> Dired mode must be activated at compile time.
+  Otherwise, the above commands will not be available and Lynx will
+  treat a directory listing as an HTML file.</p>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/edit_help.html b/lynx_help/keystrokes/edit_help.html
new file mode 100644
index 00000000..d18eb255
--- /dev/null
+++ b/lynx_help/keystrokes/edit_help.html
@@ -0,0 +1,79 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: edit_help.html,v 1.13 2012/01/31 23:17:33 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Lynx Line Editor Default Key Binding</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>DEFAULT BINDING</h1>
+
+  <p>Lynx invokes a built-in <em>Line Editor</em> for entering
+  strings in response to prompts, in forms, and for email messages
+  if an external editor has not been defined. Alternative key
+  bindings can be offered by configuring with --enable-alt-bindings
+  or by adding them in LYEditmap.c before compiling Lynx. If
+  available, they may be selected via the 'o'ptions menu, or by
+  editing lineedit_mode in the '.lynxrc' file.</p>
+
+  <p>Two such alternative key bindings, which may be available on
+  your system, are the <a href="alt_edit_help.html">Alternative
+  Binding</a> keymap and the <a href=
+  "bashlike_edit_help.html">Bash-like Binding</a> keymap.</p>
+
+  <p>Note: setting emacs/vi keys ON has no effect on line-editor
+  bindings.</p>
+
+  <p>This is the <em>Default Binding</em> keymap:</p>
+  <pre>
+     ENTER  Input complete        -  RETURN
+     TAB    Input complete        -  TAB, Do
+     ABORT  Input cancelled       -  Ctrl-G, Ctrl-O, (Ctrl-C on some systems)
+     ERASE  Erase the line        -  Ctrl-U
+
+     BACK   Cursor back     char  -  Left-Arrow
+     FORW   Cursor forward  char  -  Right-Arrow
+     BACKW  Cursor back     word  -  Ctrl-P
+     FORWW  Cursor forward  word  -  Ctrl-N
+     BOL    Go to begin of  line  -  Ctrl-A, Home, Find
+     EOL    Go to end   of  line  -  Ctrl-E, End,  Select
+
+     DELP   Delete prev     char  -  Ctrl-H, DELETE, Remove
+     DELN   Delete next [1] char  -  Ctrl-D, Ctrl-R
+     DELPW  Delete prev     word  -  Ctrl-B
+     DELNW  Delete next     word  -  Ctrl-F
+     DELEL  Delete to end of line -  Ctrl-_
+
+     UPPER  Upper case the line   -  Ctrl-T
+     LOWER  Lower case the line   -  Ctrl-K
+
+     LKCMD  Invoke cmd prompt     -  Ctrl-V (in form text fields, only) [2]
+     SWMAP  Switch input keymap   -  Ctrl-^ (if compiled in)
+
+<a name=
+"TASpecial">Special commands for use only in textarea fields</a>[3]:
+
+          Textarea external edit  - Ctrl-X e
+          Insert file in textarea - Ctrl-X i
+          Grow textarea           - Ctrl-X g
+
+[1] "next" means the character "under" a box or underline style cursor; it
+     means "to the immediate right of" an I-beam (between characters) type
+     cursor.
+
+[2]  Follow Ctrl-V with any recognized key command, to "escape" from a text
+     input field.
+
+[3]  For other key combinations using Ctrl-X as a prefix key, see the
+     Help page for the <a rel="Sibling" title="Bash-Like Binding"
+href="bashlike_edit_help.html">Bash-Like</a> Binding.
+</pre>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/environments.html b/lynx_help/keystrokes/environments.html
new file mode 100644
index 00000000..c6988b0c
--- /dev/null
+++ b/lynx_help/keystrokes/environments.html
@@ -0,0 +1,480 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: environments.html,v 1.14 2012/01/31 23:25:10 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Help on Environment variables</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <pre>
+
+<em>ENVIRONMENT</em>
+       In addition to various  "standard"  environment  variables
+       such as HOME, PATH, USER, DISPLAY, TMPDIR, etc, Lynx utilizes
+       several Lynx-specific environment variables, <a href=
+"#env">if they exist</a>.
+
+       Others may be created or modified by Lynx to pass data to
+       an external program, or for other reasons.  These are
+       listed separately <a href="#setenv">below</a>.
+
+       See also the sections on <a href=
+"#cgi">SIMULATED CGI SUPPORT</a> and
+       <a href="#language">NATIVE LANGUAGE SUPPORT</a>, below.
+
+       Note:  Not all environment variables apply to all types of
+       platforms supported by Lynx, though most do.  Feedback on
+       platform dependencies is solicited.  See also <a href=
+"#dos">win32/dos</a> specific
+       variables.
+
+<a name="env"><em>
+Environment Variables Used By Lynx:
+</em></a>
+       COLORTERM
+                           If set, color capability for the terminal
+                           is forced on at startup time. The actual
+                           value assigned to the variable is ignored.
+                           This variable is only meaningful if Lynx
+                           was built using the slang screen-handling
+                           library.
+
+       LYNX_CFG
+                           This variable, if set,  will  override
+                           the  default  location and name of the
+                           global configuration  file  (normally,
+                           lynx.cfg)  that  was  defined  by  the
+                           LYNX_CFG_FILE    constant    in    the
+                           userdefs.h  file, during installation.
+                           See  the  userdefs.h  file  for   more
+                           information.
+
+       LYNX_HELPFILE
+                           If set, this  variable  overrides  the
+                           compiled-in URL and configuration file
+                           URL for the lynx help file.
+
+       LYNX_LOCALEDIR
+                           If  set,  this  variable overrides the
+                           compiled-in  location  of  the  locale
+                           directory  which  contains native lan-
+                           guage (NLS) message text.
+
+       LYNX_LSS
+                           This  variable,  if set, specifies the
+                           location of the default Lynx character
+                           style  sheet  file.   [Currently  only
+                           meaningful if  Lynx  was  built  using
+                           experimental color style support.]
+
+       LYNX_SAVE_SPACE
+                           This  variable,  if set, will override
+                           the  default  path  prefix  for  files
+                           saved  to  disk that is defined in the
+                           lynx.cfg SAVE_SPACE:  statement.   See
+                           the lynx.cfg file for more information.
+
+       LYNX_TEMP_SPACE
+                           This variable, if set,  will  override
+                           the  default path prefix for temporary
+                           files that was defined during installation,
+                           as well as any value that may
+                           be assigned to the TMPDIR variable.
+
+       LYNX_TRACE
+                           If  set,  causes Lynx to write a trace
+                           file as if the -trace option were sup-
+                           plied.
+
+       LYNX_TRACE_FILE
+                           If set, overrides the compiled-in name
+                           of the trace  file,  which  is  either
+                           Lynx.trace or LY-TRACE.LOG (the latter
+                           on the DOS platform).  The trace  file
+                           is in either case relative to the home
+                           directory.
+
+       MAIL
+                           This variable  specifies  the  default
+                           inbox Lynx will check for new mail, if
+                           such  checking  is  enabled   in   the
+                           lynx.cfg file.
+
+       NEWS_ORGANIZATION
+                           This  variable,  if  set, provides the
+                           string  used  in   the   Organization:
+                           header of USENET news postings.  It will
+                           override the setting of the ORGANIZATION
+                           environment  variable, if it is also set
+                           (and, on  UNIX, the contents of an
+                            /etc/organization file, if present).
+
+       NNTPSERVER
+                           If set, this  variable  specifies  the
+                           default  NNTP server that will be used
+                           for USENET news  reading  and  posting
+                           with Lynx, via news: URL's.
+
+       ORGANIZATION
+                           This  variable,  if  set, provides the
+                           string  used  in   the   Organization:
+                           header  of  USENET  news postings.  On
+                           UNIX, it will override the contents of
+                           an /etc/organization file, if present.
+
+       PROTOCOL_proxy
+                           Lynx supports the use of proxy servers
+                           that  can act as firewall gateways and
+                           caching servers.  They are  preferable
+                           to  the  older  gateway  servers  (see
+                           WWW_access_GATEWAY, below).
+                           Each protocol used by Lynx (http, ftp,
+                           gopher, etc), can be mapped separately
+                           by setting environment variables of
+                           the form PROTOCOL_proxy (literally:
+                           http_proxy, ftp_proxy, gopher_proxy,
+                           etc), to "http://some.server.dom:port/".
+                           See <a href=
+"#proxy">Proxy details and examples</a>.
+
+       WWW_access_GATEWAY
+                           Lynx still  supports  use  of  gateway
+                           servers,  with  the  servers specified
+                           via   "WWW_access_GATEWAY"   variables
+                           (where  "access" is lower case and can
+                           be "http", "ftp", "gopher" or "wais"),
+                           however most gateway servers have been
+                           discontinued.  Note that  you  do  not
+                           include  a  terminal '/' for gateways,
+                           but do for proxies specified by PROTOCOL_proxy
+                           environment variables.  See <a href=
+"#proxy">Proxy details</a>.
+
+       WWW_HOME
+                           This  variable,  if set, will override
+                           the default startup URL  specified  in
+                           any of the Lynx configuration files.
+
+<a name="setenv"><em>
+Environment Variables Set or Modified By Lynx:
+</em></a>
+
+       LYNX_PRINT_DATE     This  variable  is  set  by  the  Lynx
+                           p(rint) function, to the Date:  string
+                           seen  in  the  document's "Information
+                           about" page (= cmd), if  any.   It  is
+                           created  for  use  by an external program,
+                           as  defined   in   a   lynx.cfg
+                           PRINTER: definition statement.  If the
+                           field does not exist for the document,
+                           the  variable  is set to a null string
+                           under UNIX, or "No Date" under VMS.
+
+       LYNX_PRINT_LASTMOD  This  variable  is  set  by  the  Lynx
+                           p(rint)  function,  to  the  Last Mod:
+                           string seen in the document's  "Information
+                           about"  page  (= cmd), if any.
+                           It is created for use by  an  external
+                           program,  as  defined  in  a  lynx.cfg
+                           PRINTER: definition statement.  If the
+                           field does not exist for the document,
+                           the variable is set to a  null  string
+                           under UNIX, or "No LastMod" under VMS.
+
+       LYNX_PRINT_TITLE    This  variable  is  set  by  the  Lynx
+                           p(rint)  function,  to  the  Linkname:
+                           string seen in the document's  "Information
+                           about"  page  (= cmd), if any.
+                           It is created for use by  an  external
+                           program,  as  defined  in  a  lynx.cfg
+                           PRINTER: definition statement.  If the
+                           field does not exist for the document,
+                           the variable is set to a  null  string
+                           under UNIX, or "No Title" under VMS.
+
+       LYNX_PRINT_URL      This  variable  is  set  by  the  Lynx
+                           p(rint) function, to the  URL:  string
+                           seen  in  the  document's "Information
+                           about" page (= cmd), if  any.   It  is
+                           created  for  use  by an external program,
+                           as  defined   in   a   lynx.cfg
+                           PRINTER: definition statement.  If the
+                           field does not exist for the document,
+                           the  variable  is set to a null string
+                           under UNIX, or "No URL" under VMS.
+
+       LYNX_VERSION        This variable is always set  by  Lynx,
+                           and may be used by an external program
+                           to determine  if  it  was  invoked  by
+                           Lynx.   See  also  the comments in the
+                           distribution's  sample  mailcap  file,
+                           for notes on usage in such a file.
+
+       SSL_CERT_DIR        Set to the directory containing trusted
+                           certificates.
+
+       SSL_CERT_FILE       Set to the full path and filename  for
+                           your file of trusted certificates.
+
+       TERM                Normally,  this  variable  is  used by
+                           Lynx to determine  the  terminal  type
+                           being  used  to invoke Lynx.  If, however,
+                           it is unset at startup time  (or
+                           has  the  value  "unknown"), or if the
+                           -term  command-line option is used,
+                           Lynx will set or modify its value
+                           to the user specified  terminal type
+                           (for the Lynx execution   environment).
+                           Note: If set/modified by Lynx, the values of
+                           the LINES and/or  COLUMNS  environment
+                           variables may also be changed.
+
+
+<a name="cgi"><em>
+SIMULATED CGI SUPPORT
+</em></a>
+       If built with the cgi-links option  enabled,  Lynx  allows
+       access  to  a  cgi script directly without the need for an
+       http daemon.
+
+       When executing such "lynxcgi scripts"  (if  enabled),  the
+       following  variables may be set for simulating a CGI environment:
+
+       CONTENT_LENGTH
+
+       CONTENT_TYPE
+
+       DOCUMENT_ROOT
+
+       HTTP_ACCEPT_CHARSET
+
+       HTTP_ACCEPT_LANGUAGE
+
+       HTTP_USER_AGENT
+
+       PATH_INFO
+
+       PATH_TRANSLATED
+
+       QUERY_STRING
+
+       REMOTE_ADDR
+
+       REMOTE_HOST
+
+       REQUEST_METHOD
+
+       SERVER_SOFTWARE
+
+       Other environment  variables  are  not  inherited  by  the
+       script, unless they are provided via a LYNXCGI_ENVIRONMENT
+       statement in the configuration  file.   See  the  lynx.cfg
+       file,    and    the    (draft)   CGI   1.1   Specification
+       &lt;http://Web.Golux.Com/coar/cgi/draft-coar-cgi-v11-00.txt&gt;
+       for the definition and usage of these variables.
+
+       The CGI Specification, and other associated documentation,
+       should be consulted for general information on CGI  script
+       programming.
+
+<a name="language"><em>
+NATIVE LANGUAGE SUPPORT
+</em></a>
+       If  configured and installed with Native Language Support,
+       Lynx will display status and other messages in your local
+       language.  See the file ABOUT_NLS in the source distribution,
+       or at your local GNU site, for more information about
+       internationalization.
+
+       The following environment variables may be used to alter
+       default settings:
+
+       LANG                This variable, if set,  will  override
+                           the  default  message language.  It is
+                           an ISO 639 two-letter code identifying
+                           the  language.  Language codes are NOT
+                           the same as the country codes given in
+                           ISO 3166.
+
+       LANGUAGE            This  variable,  if set, will override
+                           the default message language.  This is a
+                           GNU extension that has higher priority for
+                           setting the message catalog than LANG or
+                           LC_ALL.
+
+       LC_ALL              and
+
+       LC_MESSAGES         These  variables,  if set, specify the
+                           notion of native  language  formatting
+                           style.  They are POSIXly correct.
+
+       LINGUAS             This variable, if set prior to configuration,
+                           limits the installed languages to specific values.
+                           It is a space-separated list of two-letter codes.
+                           Currently, it is hard-coded to a wish list.
+
+       NLSPATH             This variable, if set, is used as  the
+                           path prefix for message catalogs.
+
+<a name="proxy"><em>
+Proxy details and examples:
+</em></a>
+
+    To set your site's NTTP server as the default host for news reading
+    and posting via Lynx, set the environment variable NNTPSERVER so that
+    it points to its Internet address.  The variable "NNTPSERVER" is used
+    to specify the host which will be used as the default for news URLs.
+
+        UNIX
+                setenv NNTPSERVER "news.server.dom"
+
+        VMS
+                define/system NNTPSERVER "news.server.dom"
+
+    Lynx still supports use of gateway servers, with the servers specified
+    via the variables "WWW_access_GATEWAY", where "access" is lower case
+    and can be "http", "ftp", "gopher" or "wais".  Most of the gateway
+    servers have been discontinued, but "http://www.w3.org:8001" is
+    available for wais searches (note that you do not include a
+    terminal '/' for gateways, but do for proxies; see below).
+
+    Lynx version 2.2 and beyond supports the use of proxy servers that
+    can act as firewall gateways and caching servers.  They are
+    preferable to the older gateway servers.  Each protocol used by
+    Lynx can be mapped separately using PROTOCOL_proxy environment
+    variables of the form:
+
+        UNIX
+                setenv http_proxy "http://some.server.dom:port/"
+                setenv https_proxy "http://some.server.dom:port/"
+                setenv ftp_proxy "http://some.server.dom:port/"
+                setenv gopher_proxy "http://some.server.dom:port/"
+                setenv news_proxy "http://some.server.dom:port/"
+                setenv newspost_proxy "http://some.server.dom:port/"
+                setenv newsreply_proxy "http://some.server.dom:port/"
+                setenv snews_proxy "http://some.server.dom:port/"
+                setenv snewspost_proxy "http://some.server.dom:port/"
+                setenv snewsreply_proxy "http://some.server.dom:port/"
+                setenv nntp_proxy "http://some.server.dom:port/"
+                setenv wais_proxy "http://some.server.dom:port/"
+                setenv finger_proxy "http://some.server.dom:port/"
+                setenv cso_proxy "http://some.server.dom:port/"
+
+        VMS
+                define "http_proxy" "http://some.server.dom:port/"
+                define "https_proxy" "http://some.server.dom:port/"
+                define "ftp_proxy" "http://some.server.dom:port/"
+                define "gopher_proxy" "http://some.server.dom:port/"
+                define "news_proxy" "http://some.server.dom:port/"
+                define "newspost_proxy" "http://some.server.dom:port/"
+                define "newsreply_proxy" "http://some.server.dom:port/"
+                define "snews_proxy" "http://some.server.dom:port/"
+                define "snewspost_proxy" "http://some.server.dom:port/"
+                define "snewsreply_proxy" "http://some.server.dom:port/"
+                define "nntp_proxy" "http://some.server.dom:port/"
+                define "wais_proxy" "http://some.server.dom:port/"
+                define "finger_proxy" "http://some.server.dom:port/"
+                define "cso_proxy" "http://some.server.dom:port/"
+                (Encase *BOTH* strings in double-quotes to maintain
+                 lower case for the PROTOCOL_proxy variable and for
+                 the http access type; include /system if you want
+                 proxying for all clients on your system.)
+
+    If you wish to override the use of a proxy server for specific hosts or
+    entire domains you may use the "no_proxy" environment variable.
+    The no_proxy variable can be a comma-separated list of strings defining
+    no-proxy zones in the DNS domain name space.  If a tail substring of the
+    domain-path for a host matches one of these strings, transactions with that
+    node will not be proxied.  Here is an example use of "no_proxy":
+
+        UNIX
+                setenv no_proxy "host.domain.dom, domain1.dom, domain2"
+
+        VMS
+                define "no_proxy" "host.domain.dom, domain1.dom, domain2"
+
+    You can include a port number in the no_proxy list to override use
+    of a proxy server for the host accessed via that port, but not via
+    other ports.  For example, if you use "host.domain.dom:119" and/or
+    "host.domain.dom:210", then news (port 119) URLs and/or any wais
+    (port 210) searches on that host would be excluded, but http, ftp,
+    and gopher services (if normally proxied) would still be included,
+    as would any news or wais services on other hosts.
+
+    Warning:  Note that setting 'il' as an entry in this list
+    will block proxying for the .mil domain as well as the .il domain.
+    If the entry is '.il' this will not happen.
+
+    If you wish to override the use of a proxy server completely (i.e.,
+    globally override any existing proxy variables), set the value of
+    "no_proxy" to "*".  This is the only allowed use of * in no_proxy.
+
+    Note that Lynx treats file URLs on the local host as requests for
+    direct access to the file, and does not attempt ftp if that fails.
+    It treats both ftp URLs and file URLs on remote hosts as ftp URLs,
+    and does not attempt direct file access for either.  If ftp URLs are
+    being proxied, file URLs on a remote host will be converted to ftp
+    URLs before submission by Lynx to the proxy server, so no special
+    procedure for inducing the proxy server to handle them is required.
+    Other WWW clients may require that the http server's configuration
+    file have "Map file:* ftp:*" in it to perform that conversion.
+
+    If you have not set NNTPSERVER, proxy or no_proxy environment variables
+    you can set them at run time via the configuration file lynx.cfg
+    (this will not override external settings).
+
+<a name="dos"><em>
+Win32 (95/NT) and 386 DOS
+</em></a>
+  (adapted from "readme.txt" by Wayne Buttles
+  and "readme.dos" by Doug Kaufman)
+
+    Here are some environment variables that should be set, usually in a
+    batch file that runs the lynx executable. Make sure that you have enough
+    room left in your environment. You may need to change your "SHELL="
+    setting in config.sys. In addition, lynx looks for a "SHELL" environment
+    variable when shelling to DOS.  If  you wish to preserve the environment
+    space when shelling, put a line like this in your AUTOEXEC.BAT file also
+    "SET SHELL=C:\COMMAND.COM /E:2048". It should match CONFIG.SYS.
+
+    HOME         Where to keep the bookmark file and personal config files.
+    TEMP or TMP  Bookmarks are kept here with no HOME.  Temp files here.
+    USER         Set to your login name
+    LYNX_CFG     Set to the full path and filename for lynx.cfg
+
+    386 version only:
+    WATTCP.CFG   Set to the full path for the WATTCP.CFG directory
+    (Depending on how you compiled libtcp.a, you may have to use WATCONF.)
+
+    Define these in your batch file for running Lynx.  For example, if your
+    application line is "D:\win32\lynx.bat", lynx.bat for Win32 may look like:
+        @ECHO OFF
+        set home=d:\win32
+        set temp=d:\tmp
+        set lynx_cfg=d:\win32\lynx.cfg
+        d:\win32\lynx.exe %1 %2 %3 %4 %5
+
+    In lynx_386, a typical batch file might look like:
+
+        @echo off
+        set HOME=f:/lynx2-8
+        set USER=your_login_name
+        set LYNX_CFG=%HOME%/lynx.cfg
+        set WATTCP.CFG=%HOME%
+        f:\lynx2-8\lynx %1 %2 %3 %4 %5 %6 %7 %8 %9
+
+    You will also need to make sure that the WATTCP.CFG file has the
+    correct information for IP number, Gateway, Netmask, and Domain Name
+    Server. This can also be automated in the batch file.
+
+
+</pre>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/follow_help.html b/lynx_help/keystrokes/follow_help.html
new file mode 100644
index 00000000..394b3553
--- /dev/null
+++ b/lynx_help/keystrokes/follow_help.html
@@ -0,0 +1,187 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<!-- $LynxId: follow_help.html,v 1.10 2012/01/31 23:16:38 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Help on the Follow link (or page) number feature</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>Follow link (or goto link or page) number Help<br>
+  Select option (or page) number Help</h1>
+
+  <p>If a user has set <em>Keypad mode</em> to <em>Links are
+  numbered</em>, or <em>Form fields are numbered</em>, or <em>Links
+  and form fields are numbered</em> as the default or for the
+  current session via the <em>Options menu</em>, then hypertext
+  links (and form fields, depending on the keypad mode) are
+  prefixed with numbers in square brackets. Entering a keyboard or
+  keypad number is treated as an <em>F_LINK_NUM</em> command, and
+  should invoke the <em>Follow link (or goto link or page)
+  number:</em> statusline prompt for a potentially multiple digit
+  number corresponding to an indicated link number. If RETURN is
+  pressed to terminate the number entry (e.g., <em>123</em>) and it
+  corresponds to a hypertext link, Lynx will retrieve the document
+  for that link as if you had paged or used other navigation
+  commands to make it the current link and then ACTIVATE-ed it. The
+  prompt can be invoked via '<em>0</em>', but it will not be
+  treated as the lead digit for the number entry, whereas
+  '<em>1</em>' through '<em>9</em>' both invoke the prompt and are
+  treated as the first digit. In <em>Form fields are numbered</em>
+  or <em>Links and form fields are numbered</em> mode, if the
+  number corresponds to a form field you will be positioned on that
+  field, but if it is a submit button it will not be
+  ACTIVATE-ed.</p>
+
+  <p>If the number entered at the prompt has a '<em>g</em>' suffix
+  (e.g., <em>123g</em>), then Lynx will make the link corresponding
+  to that number the current link, paging as appropriate if the
+  link does not appear in the currently displayed page. The
+  '<em>g</em>' suffix is inferred (need not be entered) for form
+  fields in <em>Form fields are numbered</em> or <em>Links and form
+  fields are numbered</em> mode.</p>
+
+  <p>Alternatively, if the number is given a '<em>p</em>' suffix
+  (e.g., <em>123p</em>), Lynx will make the page corresponding to
+  that number the currently displayed page, and the first link on
+  that page, if any, the current link. The '<em>g</em>' and
+  '<em>p</em>' suffixes thus convert the <em>Follow link (or goto
+  link or page) number:</em> feature to an advanced navigation
+  aid.</p>
+
+  <p>Finally, a user may add a <em>+</em> or <em>-</em> suffix to a
+  number command to indicate jumping forward or back relative to
+  the current link or page. For example, typing <em>1g+</em>
+  followed by RETURN will move the current link to the next
+  numbered link, skipping any intervening pages or unnumbered
+  links; <em>1g-</em> goes to the preceding numbered link. On a
+  page without links, <em>3g+</em> goes to the 3rd link
+  <em>following</em> the page. <em>5p+</em> skips ahead 5 pages,
+  and so on. You can also enter <em>5+</em> or <em>5-</em>, which
+  will activate the 5th link ahead/behind where you are currently
+  positioned. Note that typing <em>1g+</em> is different from
+  typing a down arrow in that <em>1g+</em> skips pages containing
+  no links, or intervening non-numbered links, such as form fields
+  when form fields are not numbered. It also differs from the
+  <em>&lt;tab&gt;</em> command in that <em>1g+</em> does not skip
+  over whole textareas, unless form fields are not numbered.</p>
+
+  <p><em>NOTE:</em> <em>1+g 1-g 1+p 1-p</em> are all recognized as
+  equivalent to <em>1g+ 1g- 1p+ 1p-</em> . Any other (mistyped)
+  characters end the formula: e.g. <em>1gh+</em> is treated as
+  <em>1g</em>.</p>
+
+  <p>If the user has set <em>Keypad mode</em> to <em>Numbers act as
+  arrows</em>, then only '<em>0</em>', rather than every number,
+  will be treated as an <em>F_LINK_NUM</em> command for invoking
+  the <em>Follow link (or goto link or page) number:</em> prompt.
+  The '<em>0</em>' will not be treated as the first digit for the
+  number, or number plus suffix, entry.</p>
+
+  <p>Numbers are associated with form fields only when <em>Form
+  fields are numbered</em> or <em>Links and form fields are
+  numbered</em> mode has been selected. If you have selected
+  <em>Numbers act as arrows</em> or <em>Links are numbered</em>
+  mode, you can seek form fields in the document via WHEREIS
+  searches for strings in their displayed values. If they are INPUT
+  or TEXTAREA fields with no values as yet, you can use two or more
+  underscores as the search string, because underscores are used as
+  placeholders for form fields in the displayed document.</p>
+
+  <p id="select-option">When you have invoked a popup window for a
+  list of OPTIONs in a form's SELECT block, each OPTION is
+  associated with a number, and that number will be displayed in
+  <em>Form fields are numbered</em> or <em>Links and form fields
+  are numbered</em> mode. In any keypad mode, the
+  <em>F_LINK_NUM</em> ('<em>0</em>') command will invoke a
+  <em>Select option (or page) number:</em> prompt, and you can
+  enter a number, and optionally a '<em>g</em>' or '<em>p</em>'
+  suffix, to select or seek an OPTION in that list. If only a
+  number is entered at the prompt, the corresponding OPTION will be
+  selected and the popup will be retracted. If the '<em>g</em>'
+  suffix is included, then you will be positioned on the
+  corresponding OPTION in the list, paging through the list if
+  necessary, but it will not be treated as selected unless you
+  enter the ACTIVATE (RETURN or right-arrow) command when
+  positioned on the OPTION. For purposes of paging (e.g., in
+  conjunction with the '<em>p</em>' suffix), a <em>page</em> is
+  defined as the number of OPTIONs displayed within the vertical
+  dimension of the popup window. Finally, the <em>+</em> and
+  <em>-</em> suffixes can be used to move forward or back from the
+  current option or page in a popup menu, similarly to the way they
+  are used for links For example, while viewing a popup window, the
+  user can type <em>3p+</em> and RETURN to skip ahead 3 pages, and
+  <em>50g-</em> will move the current selection back 50 options.
+  This will work whether or not <em>keypad mode</em> is <em>Form
+  fields are numbered</em> or <em>Links and form fields are
+  numbered</em> since options are numbered internally. If form
+  field numbering is turned off, the option numbers won't appear on
+  screen, but the user can still navigate using these commands.</p>
+
+  <p>Note that HTML can be structured so that it includes
+  <em>hidden links</em>, i.e., without a visible link name intended
+  for ACTIVATE-ing the link. Such links may be created, for
+  example, by making an IMG element the sole content of an Anchor
+  element, and including an ALT="" attribute name/value pair to
+  suppress access to the link when the browser does not have
+  support for image handling available. They also can be created by
+  having truly empty Anchor content, in cases for which the value
+  of an Anchor's HREF attribute is intended as a navigation aid for
+  robots (typically indexers) and not as content for a browser's
+  rendition of the document. With the <em>-ismap</em> command line
+  switch, Lynx will additionally treat a link to a server-side
+  image maps as hidden if there also is a client-side map for the
+  same image. Finally, in some cases links that are not intended to
+  be hidden may effectively become <em>hidden links</em> because of
+  bad HTML. The <em>hidden links</em> differ from Anchors that have
+  only a NAME or ID attribute name/value pair (intended as
+  positioning targets from other links which do have HREF
+  attributes and values that include a fragment).</p>
+
+  <p>Lynx respects instructions for <em>hidden links</em> and
+  normally does not include them in the rendition of the document.
+  However, if the command line switch <em>-hiddenlinks=merge</em>
+  is used, such links will still be numbered in sequence with other
+  links which are not hidden, and if <em>Links are numbered</em>
+  mode is also on, link numbers will appear for them in the
+  displayed text (except for links to image maps which are hidden
+  because of <em>-ismap</em>). If <em>-hiddenlinks=listonly</em> or
+  <em>-hiddenlinks=ignore</em> is in effect, <em>hidden links</em>
+  will not be shown in the text even in <em>links are numbered</em>
+  mode. Not using a <em>-hiddenlinks</em> flag at all is equivalent
+  to <em>-hiddenlinks=listonly</em>.</p>
+
+  <p>If a document includes <em>hidden links</em>, they will be
+  reported, with appropriate labeling, in the menus created for the
+  LIST ('<em>l</em>') or ADDRLIST ('<em>A</em>') commands, unless
+  <em>-hiddenlinks=ignore</em> is used. They can then be
+  ACTIVATE-ed via those menus. Also, if a link was hidden because
+  of an ALT attribute in an IMG element, it will be converted to a
+  <em>visible link</em> whenever the IMAGE_TOGGLE ('<em>*</em>')
+  command is used to create links for SRC attribute values of IMG
+  elements, because this indicates that the user does have some
+  form of image handling enabled via a helper application, or
+  wishes to download files for subsequent use with a graphic
+  browser or other suitable software.</p>
+
+  <p>HTML forms also may have fields with a HIDDEN attribute,
+  indicating that a name/value pair for the fields should be
+  included in the content submitted for the form, but the value
+  should not be displayed in the rendered form. Lynx respects this
+  attribute as well, and neither displays the HIDDEN field, nor
+  assigns it a number for the F_LINK_NUM ('<em>0</em>') command and
+  <em>Form fields are numbered</em> or <em>Links and form fields
+  are numbered</em> keypad mode handling, nor includes an entry for
+  it in the menus created for the LIST ('<em>l</em>') or ADDRLIST
+  ('<em>A</em>') commands. However, the HIDDEN name/value pairs are
+  included in any displays of submitted form content in the
+  <em>Information about the current document</em> that is invoked
+  by the INFO ('<em>=</em>') command.</p>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/gopher_types_help.html b/lynx_help/keystrokes/gopher_types_help.html
new file mode 100644
index 00000000..5af38dbd
--- /dev/null
+++ b/lynx_help/keystrokes/gopher_types_help.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: gopher_types_help.html,v 1.7 2012/01/31 23:15:38 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Listing of Gopher types</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>Gopher Types</h1>
+
+  <dl compact>
+    <dt>(FILE)</dt>
+
+    <dd>An ASCII file</dd>
+
+    <dt>(DIR)</dt>
+
+    <dd>A directory listing</dd>
+
+    <dt>(CSO)</dt>
+
+    <dd>The Computing Services Organizations nameserver
+    interface</dd>
+
+    <dt>(BIN)</dt>
+
+    <dd>
+      A binary file with one of the following meanings
+
+      <ul>
+        <li>A Binary file with PC extensions</li>
+
+        <li>A Binary file with UNIX extensions</li>
+      </ul>
+    </dd>
+
+    <dt>(HQX)</dt>
+
+    <dd>A Macintosh file that has been BinHexed</dd>
+
+    <dt>(?)</dt>
+
+    <dd>A searchable database</dd>
+
+    <dt>(IMG)</dt>
+
+    <dd>An unknown image type<br>
+    You must have an <a href="xterm_help.html">X terminal</a> to
+    view images</dd>
+
+    <dt>(GIF)</dt>
+
+    <dd>An image in Graphics Interchange Format<br>
+    You must have an <a href="xterm_help.html">X terminal</a> to
+    view images</dd>
+
+    <dt>(HTML)</dt>
+
+    <dd>A World Wide Web hypertext file</dd>
+
+    <dt>(TEL)</dt>
+
+    <dd>The link will open a connection to another host using
+    telnet</dd>
+
+    <dt>(3270)</dt>
+
+    <dd>The link will open a connection to another host using
+    tn3270</dd>
+
+    <dt>(UKN)</dt>
+
+    <dd>An unknown or unsupported type</dd>
+  </dl>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/history_help.html b/lynx_help/keystrokes/history_help.html
new file mode 100644
index 00000000..f8f4566a
--- /dev/null
+++ b/lynx_help/keystrokes/history_help.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: history_help.html,v 1.5 2012/01/31 23:14:48 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Help on the History Page</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>History Page Help</h1>
+
+  <p>The History Page displays all of the links that you have
+  traveled through to reach your current point, including any
+  temporary menu or list files that included links, bookmark files,
+  and any documents associated with POST content. If you entered a
+  document and then left it by using the <em>left-arrow</em> key,
+  it will <em>not</em> be in the history stack. If you entered a
+  document and left it by selecting another link within that
+  document, it <em>will</em> be in the history stack.</p>
+
+  <p>You may <a href="movement_help.html">select</a> any link on
+  the History Page to review a document that you have previously
+  visited. That link, and any subsequent to it, will not be removed
+  from the history stack if you return to it via the History Page.
+  You thus should use a History Page link, rather than the
+  <em>left-arrow</em> key, if you wish to review previous documents
+  without needing to remember and repeat the series of selections
+  for reaching your currently displayed document.</p>
+
+  <p>Upon using <em>left-arrow</em> in the document selected via
+  the History Page, you will be returned to the document from which
+  you initially went to the History Page.</p>
+
+  <p>If a previously visited link has been removed from the history
+  stack, and it was not a temporary menu or list file, bookmark
+  file, or document associated with POST content, it can still be
+  selected conveniently via the <a href="visited_help.html">Visited
+  Links Page</a>. The latter also will include links which were
+  '<em>d</em>'ownloaded or passed to a helper application, and thus
+  were not included in the history stack.</p>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/keystroke_help.html b/lynx_help/keystrokes/keystroke_help.html
new file mode 100644
index 00000000..01855e3d
--- /dev/null
+++ b/lynx_help/keystrokes/keystroke_help.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: keystroke_help.html,v 1.17 2012/01/31 23:25:43 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Help on Lynx Keystroke Commands</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>Keystroke Commands</h1>
+  <pre>
+  <a href=
+"movement_help.html">MOVEMENT</a>:    Down arrow     - Highlight next topic
+               Up arrow       - Highlight previous topic
+               Right arrow,   - Jump to highlighted topic
+               Return, Enter  - Follow selected link
+               Left arrow     - Return to previous topic
+
+  <a href=
+"scrolling_help.html">SCROLLING</a>:   +              - Scroll down to next page (Page-Down)
+               -              - Scroll up to previous page (Page-Up)
+               SPACE          - Scroll down to next page (Page-Down)
+               b              - Scroll up to previous page (Page-Up)
+               CTRL-A         - Go to first page of the current document (Home)
+               CTRL-E         - Go to last page of the current document (End)
+               CTRL-B         - Scroll up to previous page (Page-Up)
+               CTRL-F         - Scroll down to next page (Page-Down)
+               CTRL-N         - Go forward two lines in the current document
+               CTRL-P         - Go back two lines in the current document
+               )              - Go forward half a page in the current document
+               (              - Go back half a page in the current document
+               ^              - Go to the first link on the current line
+               $              - Go to the last link on the current line
+               &lt;              - Go to the previous link in the current column
+               &gt;              - Go to the next link in the current column
+               #              - Go to Toolbar or Banner in the current document
+
+  <a href=
+"dired_help.html">DIRED</a>:       c              - Create a new file
+               d              - Download selected file
+               e              - Edit selected file
+               f              - Show a full menu of options for current file
+               m              - Modify the name or location of selected file
+               r              - Remove selected file
+               t              - Tag highlighted file
+               u              - Upload a file into the current directory
+
+  <a href=
+"other_help.html">OTHER</a>:       ? (or h)       - Help (this screen)
+               a              - Add the current link to a bookmark file
+               c              - Send a comment to the document owner
+               d              - Download the current link
+               e              - Edit the current file
+               E              - Edit the current link's URL (or ACTION) and
+                                use that as a goto URL.
+               g              - Goto a user specified <a href=
+"../lynx_url_support.html">URL</a> or file
+               G              - Edit the current document's URL and use that
+                                as a goto URL.
+               i              - Show an index of documents
+               j              - Execute a jump operation
+               k              - Show list of actual key mappings
+               l              - List references (links) in current document
+               m              - Return to main screen
+               o              - Set your <a href=
+"option_help.html">options</a>
+               p              - <a href=
+"print_help.html">Print</a> to a file, mail, printers, or other
+               q              - Quit (Capital 'Q' for quick quit)
+               /              - Search for a string within the current document
+               s              - Enter a search string for an external search
+               n              - Go to the next search string
+               N              - Go to the previous search string
+               v              - View a <a href=
+"bookmark_help.html">bookmark file</a>
+               V              - Go to the <a href=
+"visited_help.html">Visited Links Page</a>
+               x              - Force submission of form or link with no-cache
+               z              - Cancel transfer in progress
+               [backspace]    - Go to the <a href=
+"history_help.html">History Page</a>
+               =              - Show info about current document, URL and link
+               \              - Toggle document source/rendered view
+               !              - Spawn your default shell
+               '              - Toggle "historical" vs minimal or valid comment
+                                parsing
+               _              - Clear all authorization info for this session
+               `              - Toggle minimal or valid comment parsing
+               *              - Toggle image_links mode on and off
+               @              - Toggle raw 8-bit translations or CJK mode
+                                on or off
+               .              - Run external program on the current link.
+               ,              - Run external program on the current document.
+               {              - Shift the screen left.
+               }              - Shift the screen right.
+               |              - Toggle line-wrap mode.  When line-wrap is
+                                off, you may use { and } to shift the screen
+                                left/right.  The screen width is set to 999.
+               ~              - Toggle parsing of nested tables (experimental).
+               [              - Toggle pseudo_inlines mode on and off
+               ]              - Send a HEAD request for the current doc or link
+               "              - Toggle valid or "soft" double-quote parsing
+               CTRL-R         - Reload current file and refresh the screen
+               CTRL-L         - Refresh the screen
+
+               CTRL-V         - Outside of a text input line or field,
+                                switch to <a href=
+"option_help.html#tagsoup">alternative parsing</a> of HTML.
+                              - In a form text input field,
+                                CTRL-V prompts for a key command (allows
+                                <a href=
+"../Lynx_users_guide.html#CtrlVNote">escaping</a> from the field).
+
+                                Note that on most UNIX hosts, CTRL-V is bound
+                                via stty to the lnext (literal-next) code but
+                                the exact behavior of that is implementation
+                                specific.  On Solaris you must type CTRL-V
+                                twice to use it, since it quotes the following
+                                keystroke.
+
+               CTRL-U         - Inside text input line or field,
+                                erase input line (<a href=
+"edit_help.html">more input line commands</a>)
+                              - Outside of text input or field,
+                                undo returning to previous topic.
+
+               CTRL-G         - Cancel input or transfer
+
+               CTRL-T         - Toggle trace mode on and off
+               ;              - View the Lynx Trace Log for the current session
+               CTRL-K         - Invoke the <a href=
+"cookie_help.html">Cookie Jar Page</a>
+               CTRL-X         - Invoke the <a href=
+"../Lynx_users_guide.html#Cache">Cache Jar Page</a>
+               numbers        - Invoke the prompt
+                                <a href=
+"follow_help.html">Follow link (or goto link or page) number:</a>
+                                  or the
+                                  <a href=
+"follow_help.html#select-option">Select option (or page) number:</a>
+                                prompt
+</pre>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/movement_help.html b/lynx_help/keystrokes/movement_help.html
new file mode 100644
index 00000000..a08534b9
--- /dev/null
+++ b/lynx_help/keystrokes/movement_help.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: movement_help.html,v 1.6 2012/01/31 23:24:18 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Help on Lynx Movement commands</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>MOVEMENT HELP</h1>
+  <pre>
+        Down arrow,    -  Move to the next hypertext link,
+        TAB               or scroll down if there are no more
+                          links on the page to move to.
+
+        Up arrow       -  Move to the previous hypertext link,
+                          or scroll up if there are no links
+                          above the current one, and there are
+                          previous pages to move to.
+
+        Right arrow,   -  select the link that the cursor is
+        Return, Enter     positioned on.
+
+        Left arrow     -  Retreat from a link.  Go back to the
+                          previous topic.
+
+
+        *note: If 'VI Keys' are enabled from the options menu or
+               from the '.lynxrc' file, lowercase h,j,k,l will
+               move left, down, up, and right, respectively.
+
+        *note: If 'Emacs Keys' are enabled from the options menu or
+               from the '.lynxrc' file, Ctrl-B, Ctrl-N, Ctrl-P,
+               Ctrl-F will move left, down, up, and right, respectively.
+
+        *note: If the 'Num Lock' on your keyboard is on, Lynx will
+               translate the numbers of your keypad into movement
+               commands.  The translation is as follows.
+
+                     9  - page up
+                     8  - up arrow
+          7 8 9      7  - moves to the top of a document
+           \|/       6  - right arrow
+        4 - 5 - 6    5  - nothing
+           /|\       4  - left arrow
+          1 2 3      3  - page down
+                     2  - down arrow
+                     1  - moves to the end of a document
+</pre>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/option_help.html b/lynx_help/keystrokes/option_help.html
new file mode 100644
index 00000000..7854b8af
--- /dev/null
+++ b/lynx_help/keystrokes/option_help.html
@@ -0,0 +1,531 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: option_help.html,v 1.24 2012/01/31 23:12:34 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Form-based Options Menu : Help</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>FORM-BASED OPTIONS MENU : HELP</h1>
+
+  <p>The Options Menu allows you to set and modify many Lynx
+  features.<br>
+  Note: some options appear on the screen only if they have been
+  compiled in or chosen in `lynx.cfg':</p>
+
+  <ul>
+    <li>General Preferences
+
+      <ul>
+        <li><a href="#UM">User Mode</a></li>
+
+        <li><a href="#ED">Editor</a></li>
+
+        <li><a href="#ST">Searching type</a></li>
+
+        <li><a href="#CK">Cookies</a></li>
+      </ul>
+    </li>
+
+    <li>Keyboard Input
+
+      <ul>
+        <li><a href="#KM">Keypad mode</a></li>
+
+        <li><a href="#EM">Emacs keys</a></li>
+
+        <li><a href="#VI">VI keys</a></li>
+
+        <li><a href="#LE">Line edit style</a></li>
+      </ul>
+    </li>
+
+    <li>Display and Character Set
+
+      <ul>
+        <li><a href="#DC">Display Character set</a></li>
+
+        <li><a href="#AD">Assumed document character set</a></li>
+
+        <li><a href="#JK">Raw 8-bit or CJK mode</a></li>
+
+        <li><a href="#DV">X DISPLAY variable</a></li>
+      </ul>
+    </li>
+
+    <li>Document Appearance
+
+      <ul>
+        <li><a href="#SC">Show color</a></li>
+
+        <li><a href="#CL">Show cursor for current link or
+        option</a></li>
+
+        <li><a href="#PU">Pop-ups for select fields</a></li>
+
+        <li><a href="#tagsoup">HTML error recovery</a></li>
+
+        <li><a href="#SI">Show Images</a></li>
+
+        <li><a href="#VB">Verbose Images</a></li>
+      </ul>
+    </li>
+
+    <li>Headers Transferred to Remote Servers
+
+      <ul>
+        <li><a href="#PM">Personal Mail Address</a></li>
+
+        <li><a href="#PC">Preferred Document Charset</a></li>
+
+        <li><a href="#PL">Preferred Document Language</a></li>
+
+        <li><a href="#UA">User Agent</a></li>
+      </ul>
+    </li>
+
+    <li>Listing and Accessing Files
+
+      <ul>
+        <li><a href="#FT">FTP sort criteria</a></li>
+
+        <li><a href="#LD">Local directory sort criteria</a></li>
+
+        <li><a href="#DF">Show dot files</a></li>
+
+        <li><a href="#LL">Execution links</a></li>
+      </ul>
+    </li>
+
+    <li>Special Files and Screens
+
+      <ul>
+        <li><a href="#MB">Multi-bookmarks</a></li>
+
+        <li><a href="#BF">Bookmark file</a></li>
+
+        <li><a href="#VP">Visited Pages</a></li>
+      </ul>
+    </li>
+  </ul>
+
+  <h1><a name="CK">Cookies</a></h1>
+
+  <p>This can be set to accept or reject all cookies or to ask each
+  time. See the Users Guide for details of <a href=
+  "../Lynx_users_guide.html#Cookies">cookie usage</a>.</p>
+
+  <h1><a name="ED">Editor</a></h1>
+
+  <p>This is the editor to be invoked when editing browsable files,
+  sending mail or comments, or filling form's textarea (multiline
+  input field). The full pathname of the editor command should be
+  specified when possible. It is assumed the text editor supports
+  the same character set you have for "display character set" in
+  Lynx.</p>
+
+  <h1><a name="EM">Emacs keys</a></h1>
+
+  <p>If set to 'ON' then the CTRL-P, CTRL-N, CTRL-F and CTRL-B keys
+  will be mapped to up-arrow, down-arrow, right-arrow and
+  left-arrow respectively. Otherwise, they remain mapped to their
+  configured bindings (normally UP_TWO lines, DOWN_TWO lines,
+  NEXT_PAGE and PREV_PAGE respectively).</p>
+
+  <p>Note: setting emacs keys does not affect the line-editor
+  bindings.</p>
+
+  <h1><a name="LL">Execution links</a></h1>
+
+  <p>If set to 'ALWAYS ON', Lynx will locally execute commands
+  contained inside any links. This can be HIGHLY DANGEROUS, so it
+  is recommended that they remain 'ALWAYS OFF' or 'FOR LOCAL FILES
+  ONLY'.</p>
+
+  <h1><a name="KM">Keypad mode</a></h1>
+
+  <p>This gives the choice between navigating with the keypad (as
+  arrows; see Lynx Navigation) and having every link numbered
+  (numbered links) so that the links may be selected by numbers
+  instead of moving to them with the arrow keys. You can also
+  number form fields.</p>
+
+  <h1><a name="LE">Line edit style</a></h1>
+
+  <p>This allows you to set alternate key bindings for the built-in
+  line editor, if <a href="alt_edit_help.html">Alternate
+  Bindings</a> have been installed. Otherwise, Lynx uses the
+  <a href="edit_help.html">Default Binding</a>.</p>
+
+  <h1><a name="PM">Personal Mail Address</a></h1>
+
+  <p>You may set your mail address here so that when mailing
+  messages to other people or mailing files to yourself, your email
+  address can be automatically filled in. Your email address will
+  also be sent to HTTP servers in a `from:' field.</p>
+
+  <h1><a name="PU">Pop-ups for select fields</a></h1>
+
+  <p>Lynx normally uses a pop-up window for the OPTIONs in form
+  SELECT fields when the field does not have the MULTIPLE attribute
+  specified, and thus only one OPTION can be selected. The use of
+  pop-up windows can be disabled by changing this setting to OFF,
+  in which case the OPTIONs will be rendered as a list of radio
+  buttons. Note that if the SELECT field does have the MULTIPLE
+  attribute specified, the OPTIONs always are rendered as a list of
+  checkboxes.</p>
+
+  <h1><a name="ST">Searching type</a></h1>
+
+  <p>If set to 'case sensitive', user searches invoked by '/' will
+  be case-sensitive substring searches. Default is 'Case
+  Insensitive'.</p>
+
+  <h1><a name="SC">Show color</a></h1>
+
+  <p>This will be present if color support is available.</p>
+
+  <ul>
+    <li>If set to ON or ALWAYS, color mode will be forced on if
+    possible. If (n)curses color support is available but cannot be
+    used for the current terminal type, selecting ON is rejected
+    with a message.</li>
+
+    <li>If set to OFF or NEVER, color mode will be turned off.</li>
+
+    <li>ALWAYS and NEVER are not offered in anonymous accounts. If
+    saved to a '.lynxrc' file in non-anonymous accounts, ALWAYS
+    will cause Lynx to set color mode on at startup if
+    supported.</li>
+  </ul>If Lynx is built with slang, this is equivalent to having
+  included the -color command line switch or having the COLORTERM
+  environment variable set. If color support is provided by curses
+  or ncurses, this is equivalent to the default behavior of using
+  color when the terminal type supports it. If (n)curses color
+  support is available but cannot be used for the current terminal
+  type, the preference can still be saved but will have no effect.
+
+  <p>A saved value of NEVER will cause Lynx to assume a monochrome
+  terminal at start-up. It is similar to the -nocolor switch, but
+  (when the slang library is used) can be overridden with the
+  -color switch. If the setting is OFF or ON when the current
+  options are saved to a '.lynxrc' file, the default start-up
+  behavior is retained, such that color mode will be turned on at
+  startup only if the terminal info indicates that you have a
+  color-capable terminal, or (when slang is used) if forced on via
+  the -color switch or COLORTERM variable. This default behavior
+  always is used in anonymous accounts, or if the 'option'_save
+  restriction is set explicitly. If for any reason the start-up
+  color mode is incorrect for your terminal, set it appropriately
+  on or off via this option.</p>
+
+  <h1><a name="CL">Show cursor for current link or option</a></h1>
+
+  <p>Lynx normally hides the cursor by positioning it to the right
+  and if possible the very bottom of the screen, so that the
+  current link or OPTION is indicated solely by its highlighting or
+  color. If show cursor is set to ON, the cursor will be positioned
+  at the left of the current link or OPTION. This is helpful when
+  Lynx is being used with a speech or braille interface. It is also
+  useful for sighted users when the terminal cannot distinguish the
+  character attributes used to distinguish the current link or
+  OPTION from the others in the display.</p>
+
+  <h1><a name="UM">User Mode</a></h1>
+
+  <dl>
+    <dt><em>Novice</em>: Shows 2 extra lines of help at the bottom
+    of the screen for beginners.</dt>
+
+    <dt><em>Intermediate (normal)</em>: Normal status-line messages
+    appear.</dt>
+
+    <dt><em>Advanced</em>: The URL is shown on the status
+    line.</dt>
+  </dl>
+
+  <h1><a name="AD">Assumed document character set</a></h1>
+
+  <p>This changes the handling of documents which do not explicitly
+  specify a charset. Normally Lynx assumes that 8-bit characters in
+  those documents are encoded according to iso-8859-1 (the official
+  default for HTTP protocol). Unfortunately, many non-English web
+  pages forget to include proper charset info; this option helps
+  you browse those broken pages if you know somehow what the
+  charset is. When the value given here or by an -assume_charset
+  command-line flag is in effect, Lynx will treat documents as if
+  they were encoded accordingly. Option is active when 'Raw 8-bit
+  or CJK Mode' is OFF.</p>
+
+  <h1><a name="JK">Raw 8-bit or CJK mode</a></h1>
+
+  <p>This is set automatically, but can be toggled manually in
+  certain cases: it toggles whether 8-bit characters are assumed to
+  correspond with the display character set and therefore are
+  processed without translation via the chartrans conversion
+  tables. ON by default when the display character set is one of
+  the Asian (CJK) sets and the 8-bit characters are Kanji
+  multibytes. OFF for the other display character sets, but can be
+  turned ON when the document's charset is unknown (e.g., is not
+  ISO-8859-1 and no charset parameter was specified in a reply
+  header from an HTTP server to indicate what it is), but you have
+  no better idea than viewing it as from display character set (see
+  'assumed document character set' for best choice). Should be OFF
+  when an Asian (CJK) set is selected but the document is
+  ISO-8859-1 or another 'assumed document character set'. The
+  setting can also be toggled via the RAW_TOGGLE command, normally
+  mapped to '@', and at startup via the -raw switch.</p>
+
+  <h1><a name="tagsoup">HTML error recovery</a></h1>
+
+  <p>Lynx often has to deal with invalid HTML markup. It always
+  tries to recover from errors, but there is no universally correct
+  way for doing this. As a result, there are two parsing modes:
+  "<dfn>SortaSGML</dfn>" attempts to enforce valid nesting of most
+  tags at an earlier stage of processing, while
+  "<dfn>TagSoup</dfn>" relies more on the HTML rendering stage to
+  mimic the behavior of some other browsers. You can also switch
+  between these modes with the CTRL-V key, and the default can be
+  changed in lynx.cfg or with the -tagsoup command line switch.</p>
+
+  <p>The "SortaSGML" mode will often appear to be more strict, and
+  makes some errors apparent that are otherwise unnoticeable. One
+  particular difference is the handling of block elements or
+  &lt;li&gt;..&lt;/li&gt; inside &lt;a
+  HREF="some.url"&gt;..&lt;/a&gt;. Invalid nesting like this may
+  turn anchors into hidden links which cannot be easily followed,
+  this is avoided in "TagSoup" mode. See the <a href=
+  "follow_help.html">help on following links by number</a> for more
+  information on hidden links. Often pages may be more readable in
+  "TagSoup" mode, but sometimes the opposite is true. Most
+  documents with valid HTML, and documents with only minor errors,
+  should be rendered the same way in both modes.</p>
+
+  <p>If you are curious about what goes on behind the scenes, but
+  find that the information from the -trace switch is just too
+  much, Lynx can be started with the -preparsed switch; going into
+  SOURCE mode ('\' key) and toggling the parsing mode (with CTRL-V)
+  should then show some of the differences. <!--
+LP's version - for reference - TD
+
+While the proper HTML markup should be canonical, badly nested HTML pages
+may be recovered in different ways.  There are two error recovery modes
+in Lynx: SortaSGML with the recovery at SGML stage and TagSoup mode
+with the recovery at HTML parsing stage, the latter gives more
+recovery and was the default in Lynx 2.7.2 and before,
+and the first may be useful for page validation purposes.
+One particular difference is known for &lt;li&gt;..&lt;/li&gt;
+or similar strong markup inside &lt;a HREF="some.url"&gt;..&lt;/a&gt;
+anchor text - those links are not reachable in SortaSGML
+(such markup should be placed outside &lt;a&gt;..&lt;/a&gt; indeed).
+Default recovery mode can also be switched with CTRL-V key,
+from lynx.cfg or command line switch.
+--></p>
+
+  <h1><a name="SI">Show Images</a></h1>
+
+  <p>This option combines the effects of the `*' &amp; `[' keys as
+  follows:</p>
+  <pre>
+     <em>ignore</em> all images which lack an ALT= text string,
+     <em>show labels</em>, e.g. [INLINE] &mdash; see `Verbose Images' below &mdash; ,
+     <em>use links</em> for every image, enabling downloading.
+</pre>
+
+  <p>This option setting cannot be saved between sessions. See
+  <a href="../Lynx_users_guide.html#Images">Users Guide</a> &amp;
+  <em>lynx.cfg</em> for more details.</p>
+
+  <h1><a name="VB">Verbose Images</a></h1>
+
+  <p>This allows you to replace [LINK], [INLINE] and [IMAGE] &mdash; for
+  images without ALT &mdash; with filenames: this can be helpful by
+  revealing which images are important &amp; which are merely
+  decoration, e.g. <em>button.gif</em>, <em>line.gif</em>. See
+  <a href="../Lynx_users_guide.html#Images">Users Guide</a> &amp;
+  <em>lynx.cfg</em> for more details.</p>
+
+  <h1><a name="VI">VI keys</a></h1>
+
+  <p>If set to 'ON' then the lowercase h, j, k and l keys will be
+  mapped to left-arrow, down-arrow, up-arrow and right-arrow
+  respectively.</p>
+
+  <p>The uppercase H, J, K, and L keys remain mapped to their
+  configured bindings (normally HELP, JUMP, KEYMAP and LIST,
+  respectively).</p>
+
+  <p>Note: setting vi keys does not affect the line-editor
+  bindings.</p>
+
+  <h1><a name="DC">Display Character set</a></h1>
+
+  <p>This allows you to set up the default character set for your
+  specific terminal. The display character set provides a mapping
+  from the character encodings of viewed documents and from HTML
+  entities into viewable characters. It should be set according to
+  your terminal's character set so that characters other than 7-bit
+  ASCII can be displayed correctly, using approximations if
+  necessary, <a href="test_display.html">try the test here</a>.
+  Since Lynx now supports a wide range of platforms it may be
+  useful to note that cpXXX codepages are used within IBM PC
+  computers, and windows-xxxx within native MS-Windows
+  applications.</p>
+
+  <h1><a name="DV">X DISPLAY variable</a></h1>
+
+  <p>This option is only relevant to X Window users. It specifies
+  the DISPLAY (Unix) or DECW$DISPLAY (VMS) variable. It is picked
+  up automatically from the environment if it has been previously
+  set.</p>
+
+  <h1><a name="MB">Multi-bookmarks</a></h1>
+
+  <p>Manage multiple bookmark files:</p>
+
+  <ul>
+    <li>When OFF, the default bookmark file is used for the
+    'v'iew-bookmarks and 'a'dd-bookmark link commands.</li>
+
+    <li>If set to STANDARD, a menu of available bookmarks is always
+    invoked when you seek to view a bookmark file or add a link,
+    and you select the bookmark file by its letter token in that
+    menu.</li>
+
+    <li>If set to ADVANCED, you are instead prompted for the letter
+    of the desired bookmark file, but can enter '=' to invoke the
+    STANDARD selection menu, or RETURN for the default bookmark
+    file.</li>
+  </ul>
+
+  <h1><a name="BF">Bookmark file</a></h1>
+
+  <p>Manage the default bookmark file:</p>
+
+  <ul>
+    <li>If non-empty and multi-bookmarks is OFF, it specifies your
+    default '<a href="bookmark_help.html">Bookmark file</a>'.</li>
+
+    <li>If multi-bookmarks is STANDARD or ADVANCED, entering 'B'
+    will invoke a menu in which you can specify filepaths and
+    descriptions of up to 26 bookmark files.</li>
+  </ul>The filepaths must be from your home directory and begin
+  with './' if subdirectories are included (e.g.,
+  './BM/lynx_bookmarks.html').
+
+  <p>Lynx will create bookmark files when you first 'a'dd a link,
+  but any subdirectories in the filepath must already exist.</p>
+
+  <h1><a name="VP">Visited Pages</a></h1>
+
+  <p>This allows you to change the appearance of the <a href=
+  "visited_help.html">Visited Links Page</a> Normally it shows a
+  list, in reverse order of the pages visited. The popup menu
+  allows you these choices:</p>
+
+  <dl>
+    <dt><em>By First Visit</em>: The default appearance, shows the
+    pages based on when they were first visited. The list is shown
+    in reverse order, to make the current page (usually) at the top
+    of the list.</dt>
+
+    <dt><em>By First Visit Reversed</em> The default appearance,
+    shows the pages based on when they were first visited. The list
+    is shown in order, to make the current page (usually) at the
+    bottom of the list.</dt>
+
+    <dt><em>As Visit Tree</em> Combines the first/last visited
+    information, showing the list in order of the first visit, but
+    using the indentation level of the page immediately previous to
+    determine indentation of new entries. That gives a clue to the
+    order of visiting pages when moving around in the History or
+    Visited Pages lists.</dt>
+
+    <dt><em>By Last Visit</em> The default appearance, shows the
+    pages based on when they were last visited. The list is shown
+    in reverse order, to make the current page (usually) at the top
+    of the list.</dt>
+
+    <dt><em>By Last Visit Reversed</em> The default appearance,
+    shows the pages based on when they were last visited. The list
+    is shown in order, to make the current page (usually) at the
+    bottom of the list.</dt>
+  </dl>
+
+  <h1><a name="FT">FTP sort criteria</a></h1>
+
+  <p>This allows you to specify how files will be sorted within FTP
+  listings. The current options include `By&nbsp;Filename',
+  `By&nbsp;Size', `By&nbsp;Type', `By&nbsp;Date'.</p>
+
+  <h1><a name="LD">List directory style</a></h1>
+
+  <p>Applies to Directory Editing. Files and directories can be
+  presented in the following ways:</p>
+
+  <dl>
+    <dt><em>Mixed style</em>: Files and directories are listed
+    together in alphabetical order.</dt>
+
+    <dt><em>Directories first</em>: Files and directories are
+    separated into 2 alphabetical lists: directories are listed
+    first.</dt>
+
+    <dt><em>Files first</em>: Files and directories are separated
+    into 2 alphabetical lists: files are listed first.</dt>
+  </dl>
+
+  <h1><a name="DF">Show dot files</a></h1>
+
+  <p>If display/creation of hidden (dot) files/directories is
+  enabled, you can turn the feature on or off via this setting.</p>
+
+  <h1><a name="PC">Preferred Document Charset</a></h1>
+
+  <p>The character set you prefer if sets in addition to ISO-8859-1
+  and US-ASCII are available from servers. Use MIME notation (e.g.,
+  ISO-8859-2) and do not include ISO-8859-1 or US-ASCII, since
+  those values are always assumed by default. Can be a
+  comma-separated list, which may be interpreted by servers as
+  descending order of preferences; you can make your order of
+  preference explicit by using `q factors' as defined by the HTTP
+  protocol, for servers which understand it: e.g., <kbd>iso-8859-5,
+  utf-8;q=0.8</kbd>.</p>
+
+  <h1><a name="PL">Preferred Document Language</a></h1>
+
+  <p>The language you prefer if multi-language files are available
+  from servers. Use RFC 1766 tags, e.g., `en' English, `fr' French.
+  Can be a comma-separated list, and you can use `q factors' (see
+  previous help item): e.g., <kbd>da, en-gb;q=0.8, en;q=0.7</kbd>
+  .</p>
+
+  <h1><a name="UA">User Agent</a></h1>
+
+  <p>The header string which Lynx sends to servers to indicate the
+  User-Agent is displayed here. Changes may be disallowed via the
+  -restrictions switch. Otherwise, the header can be changed
+  temporarily to e.g., L_y_n_x/2.8.3 for access to sites which
+  discriminate against Lynx based on checks for the presence of
+  `Lynx' in the header. If changed during a Lynx session, the
+  default User-Agent header can be restored by deleting the
+  modified string in the Options Menu. Whenever the User-Agent
+  header is changed, the current document is reloaded, with the
+  no-cache flags set, on exit from Options Menu. Changes of the
+  header are not saved in the .lynxrc file.</p>
+
+  <p>NOTE Netscape Communications Corp. has claimed that false
+  transmissions of `Mozilla' as the User-Agent are a copyright
+  infringement, which will be prosecuted. DO NOT misrepresent Lynx
+  as Mozilla. The Options Menu issues a warning about possible
+  copyright infringement whenever the header is changed to one
+  which does not include `Lynx' or `lynx'.</p>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/other_help.html b/lynx_help/keystrokes/other_help.html
new file mode 100644
index 00000000..866c4d9a
--- /dev/null
+++ b/lynx_help/keystrokes/other_help.html
@@ -0,0 +1,189 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: other_help.html,v 1.12 2012/01/31 23:23:40 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Help on Misc. Lynx Commands</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>Other Commands</h1>
+  <pre>
+       a      - Places the link that you are currently positioned
+                on into a personal <a href=
+"bookmark_help.html">bookmark file</a>.
+
+       c      - Allows you to send a mail message to the owner
+                or maintainer of the data that you are currently
+                viewing.  In the case that no owner is known,
+                you cannot send a comment.
+
+       d      - Downloads the file pointed to by the current link
+                and displays an option menu allowing the file to
+                be saved or transferred by configurable options.
+                Can also be used when positioned on a form SUBMIT
+                button to download the reply to a form submission.
+
+       e      - Allows you to edit the current document if it is a
+                local file.
+
+       E      - Allows you to edit the current link's URL (or ACTION) and
+                use that as a <em>goto</em> URL.
+
+       g      - Allows you to enter any <a href=
+"http://archive.ncsa.uiuc.edu/demoweb/url-primer.html">URL</a> or filename that
+                you wish to view, and then <em>goto</em> it.
+
+       G      - Allows you to edit the current document's URL and use that
+                as a <em>goto</em> URL.
+
+     ? or H   - Hypertext help to explain how to navigate in
+                Lynx and use its features.
+
+       i      - Shows an index of files or subjects,
+                which may be changed in <em>lynx.cfg</em>.
+
+       j      - Allows you to enter a short name to goto an URL,
+                if a jumps file has been defined.  Press "?"
+                and ENTER to see the list of defined jump commands.
+
+       k      - Shows a list of key mappings.  Keys remapped in
+                "lynx.cfg" show up in this list.
+
+       l      - Brings up a list of references (links) in the current
+                document, which can be used for rapid access to the
+                links in large documents.
+
+       m      - Returns to the first screen and empties the
+                history stack.
+
+       p      - Brings up a list of <a href=
+"print_help.html">print commands</a>.
+
+       o      - Brings up a list of settable <a href=
+"option_help.html">options</a>.
+
+       q      - Quits Lynx. ('Q' quits without asking)
+
+       /      - Search for a string of characters in the current document
+                (case insensitive or case sensitive
+                depending on the <a href=
+"option_help.html">options</a> set).
+
+       s      - Search through an external searchable indexed document.
+
+       n      - Move to the next instance of a search string if you
+                have searched previously.
+
+       v      - View a <a href=
+"bookmark_help.html">Bookmark file</a>.
+
+       V      - Go to the <a href=
+"visited_help.html">Visited Links Page</a>
+
+       x      - Force submission of form or link with no-cache.
+
+       z      - Abort a network transfer in progress.  If any partial
+                data has been transferred it will be displayed.
+
+  &lt;backspace&gt; - displays the <a href=
+"history_help.html">History Page</a>.
+
+       =      - Show information about the file and link that you
+                are currently viewing.
+
+       \      - Toggles between viewing the HTML source of a
+                document and the rendered version of the document.
+
+       !      - Spawns your default operating system shell.
+
+       '      - Toggles "historical" vs minimal or valid comment parsing.
+                When historical, any close-angle-bracket will be treated
+                as a comment terminator, emulating the parsing bug in old
+                versions of Mosaic and Netscape, rather than validly
+                requiring pairs of two successive dashes to delimit
+                comments within the angle-brackets.
+
+       _      - Clears all authorization info for the current session.  Can
+                be used when leaving one's terminal without ending the Lynx
+                session, to guard against someone else retrieving protected
+                documents with previously entered username/password info.
+                Note that any protected documents that are still in cache
+                can still be accessed.
+
+       `      - Toggles minimal or valid comment parsing.  When minimal, any
+                two successive dashes followed by a close-angle-bracket will
+                be treated as a comment terminator, emulating the parsing bug
+                in Netscape v2.0.  If historical comment parsing is set, that
+                will override minimal or valid comment parsing.
+
+       *      - Toggles image_links mode on and off.  When on, links will
+                be created for all images, including inlines.
+
+       @      - Toggles raw 8-bit translations or CJK mode on and off, only
+                for documents which does not specify character set explicitly.
+                Should be on when the document's charset matches the
+                display character set, and otherwise off so that 8-bit
+                characters will be translated by Lynx with respect to the
+                Assumed document charset, using approximations if necessary
+                (see <a href="option_help.html">options</a>).
+
+       [      - Toggles pseudo_inlines mode on and off.  When on, inline
+                images which have no ALT string specified will have an
+                "[INLINE]" pseudo-ALT string inserted in the Lynx display.
+                When off, they will be treated as having ALT="" (i.e.,
+                they'll be ignored).  If image_links mode is toggled on,
+                the pseudo-ALT strings will be restored, to serve as links
+                to the inline images' sources.
+
+       ]      - Sends a HEAD request for the current document or link.  It
+                applies only to documents or links (or form submit buttons)
+                of http servers.  A statusline 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.  Note that for form submissions, http servers vary
+                in whether they'll treat HEAD requests as valid and return
+                the CGI script's headers, or treat it as invalid and return
+                an error message.
+
+       "      - Toggles valid or "soft" double-quote parsing.  When soft,
+                a close-angle-bracket will serve as both a close-double-
+                quote and close-tag, emulating the parsing bug in old
+                versions of Mosaic and Netscape.
+
+     CTRL-R   - Reloads the current document and resets the display.
+
+     CTRL-V   - Switches to an alternative way of parsing HTML documents.
+                This may help to get a more readable rendering of some
+                documents with invalidly placed HTML tags, <a href=
+"option_help.html#tagsoup">more details</a>.
+
+     CTRL-W   - Resets or cleans up the display.
+
+     CTRL-U   - Clears text from an input field or prompt.
+
+     CTRL-G   - Cancels any input prompt, mail message or data transfer.
+
+     CTRL-T   - Toggles trace mode on and off.
+
+       ;      - Views the Lynx Trace Log for the current session.
+
+     CTRL-K   - Invokes the Cookie Jar Page.
+
+     numbers  - Lynx offers other, advanced navigation features when
+                numbers are used to invoke the
+                  <a href=
+"follow_help.html">Follow link (or goto link or page) number:</a> or
+                  <a href=
+"follow_help.html#select-option">Select option (or page) number:</a>
+                prompts.
+</pre>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/print_help.html b/lynx_help/keystrokes/print_help.html
new file mode 100644
index 00000000..b6f14003
--- /dev/null
+++ b/lynx_help/keystrokes/print_help.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: print_help.html,v 1.6 2012/01/31 11:56:00 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Lynx Print Help</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>Printing Help</h1>
+
+  <p>After entering the 'p' command you will be presented with a
+  list of print options. In all cases the file will be printed in
+  ASCII format with the hypertext links removed. The number of
+  options depends on the level of printing that your system allows.
+  The following print options may be available:</p>
+
+  <dl>
+    <dt>Print to a local file:</dt>
+
+    <dd>This allows you to save the current file as ASCII text to
+    your local disk. You will be asked for a path and filename to
+    save the file to. If no path is given, the file will be saved
+    to the directory that you were in when you began Lynx.</dd>
+
+    <dt>Print to the screen:</dt>
+
+    <dd>This option simply scrolls the entire document up the
+    screen and is intended for those who wish to capture the
+    document with their terminal.</dd>
+
+    <dt>Mail the file to yourself:</dt>
+
+    <dd>This option allows you to mail the file, in ASCII form, to
+    any valid e-mail address.</dd>
+
+    <dt>Custom print options:</dt>
+
+    <dd>Any number of custom print options may be defined in
+    <em>lynx.cfg</em>.</dd>
+  </dl>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/scrolling_help.html b/lynx_help/keystrokes/scrolling_help.html
new file mode 100644
index 00000000..872991c5
--- /dev/null
+++ b/lynx_help/keystrokes/scrolling_help.html
@@ -0,0 +1,74 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: scrolling_help.html,v 1.8 2012/01/31 11:53:58 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Lynx Scrolling Help</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>SCROLLING HELP</h1>
+  <pre>
+        + (or SPACE,   - If the bottom of the screen informs you
+           or CTRL-F)    that there is 'more' to see, you may
+                         move to the next page (Page-Down).
+
+        - (or b,       - If you have moved down in a document, this
+           or CTRL-B)    will bring you back up one page (Page-Up).
+
+        If the 'Num Lock' on your keyboard is on, Lynx translates
+        the numbers of your keypad into movement commands as follows:
+
+                     9  - page up
+                     8  - up arrow
+          7 8 9      7  - moves to the top of a document
+           \|/       6  - right arrow
+        4 - 5 - 6    5  - nothing
+           /|\       4  - left arrow
+          1 2 3      3  - page down
+                     2  - down arrow
+                     1  - moves to the end of a document
+
+        CTRL-A (or Find)    - This Control key, and Function key synonym,
+                              brings you back to the first page of the
+                              current document (Home).
+
+        CTRL-E (or Select)  - This Control key, and Function key synonym,
+                              takes you to the last page of the current
+                              document (End).
+
+        CTRL-N (or Remove)  - This Control key, and Function key synonym,
+                              moves you forward two lines in the current
+                              document (Down-Two).
+
+        CTRL-P (or Insert)  - This Control key, and Function key synonym,
+                              moves you back two lines in the current
+                              document (Up-Two).
+
+        )                   - Moves you forward half a page in the current
+                              document (Down-Half).
+
+        (                   - Moves you back half a page in the current
+                              document (Up-Half).
+
+        ^                   - Go to the first link on the current line.
+
+        $                   - Go to the last link on the current line.
+
+        &lt;                   - Go to the previous link in the current column.
+
+        &gt;                   - Go to the next link in the current column.
+
+        #                   - Jumps you to the pseudo Toolbar or Banner if
+                              present in the current document.  Use left-arrow
+                              to return from there to your previous position
+                              in the document.
+</pre>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/test_display.html b/lynx_help/keystrokes/test_display.html
new file mode 100644
index 00000000..51dbbedb
--- /dev/null
+++ b/lynx_help/keystrokes/test_display.html
@@ -0,0 +1,58 @@
+<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
+<!-- $LynxId: test_display.html,v 1.7 2012/01/31 11:53:11 tom Exp $ -->
+<!-- do not use tidy for this page -->
+<HTML>
+<HEAD>
+<TITLE>Quick test for identifying display character set</TITLE>
+<LINK rev="made" href="mailto:lynx-dev@nongnu.org">
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+</HEAD>
+<BODY>
+<h1 ALIGN=LEFT>Try this page with Lynx 2.7.2 or above:</h1>
+
+If you see several letters instead of a single - your promised display charset
+does not support this character so "7 bit approximation" is in effect.
+If you see any single letter which definitely far from being supposed
+you have a wrong lynx settings.
+<em>Press 'o' for Options menu and change "Display character set"</em>.
+Try again if necessary.<br>
+When you are satisfied save your changes in Options menu, thanks.
+<PRE>
+
+
+0x00A9    &#x00A9;           # COPYRIGHT SIGN
+
+0x00C7    &#x00C7;           # LATIN CAPITAL LETTER C WITH CEDILLA
+
+0x00DC    &#x00DC;           # LATIN CAPITAL LETTER U WITH DIAERESIS
+
+0x00D1    &#x00D1;           # LATIN CAPITAL LETTER N WITH TILDE
+
+0x0107    &#x0107;           # LATIN SMALL LETTER C WITH ACUTE
+0x0108    &#x0108;           # LATIN CAPITAL LETTER C WITH CIRCUMFLEX
+0x010C    &#x010C;           # LATIN CAPITAL LETTER C WITH CARON
+
+
+0x03BB    &#x03BB;           # GREEK SMALL LETTER LAMDA
+
+0x041B    &#x041B;           # CYRILLIC CAPITAL LETTER EL
+0x042E    &#x042E;           # CYRILLIC CAPITAL LETTER YU
+0x043B    &#x043B;           # CYRILLIC SMALL LETTER EL
+0x044E    &#x044E;           # CYRILLIC SMALL LETTER YU
+
+0x2026    &#x2026;           # HORIZONTAL ELLIPSIS
+0x2122    &#x2122;           # TRADE MARK SIGN
+
+0x255D    &#x255D;           # BOX DRAWINGS DOUBLE UP AND LEFT
+0x255E    &#x255E;           # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+
+0xFB01    &#xFB01;           # LATIN SMALL LIGATURE FI
+
+
+
+</PRE>
+This is only a quick test to see obvious problems.
+
+
+</BODY>
+</HTML>
diff --git a/lynx_help/keystrokes/visited_help.html b/lynx_help/keystrokes/visited_help.html
new file mode 100644
index 00000000..891845ea
--- /dev/null
+++ b/lynx_help/keystrokes/visited_help.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: visited_help.html,v 1.7 2012/01/31 11:50:47 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Help on the Visited Links Page</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>Visited Links Page Help</h1>
+
+  <p>The Visited Links Page displays all of the links that you have
+  traveled through during the current Lynx session, except for any
+  temporary menu or list files, bookmark files, or any documents
+  associated with POST content. The VLINKS keystroke command for
+  invoking this page normally is mapped to uppercase '<em>V</em>'.
+  The list of Visited Links is normally in order of recency (most
+  recently visited links first), without repetitions in the list if
+  a link was visited more than once during the session (unless the
+  URLs differ due to appended fragments), and is supplementary to
+  the <a href="history_help.html">History Page</a>.</p>
+
+  <p>You may <a href="movement_help.html">select</a> any link on
+  the Visited Links Page to retrieve a document that you had
+  previously visited, or you can use this list to save such links
+  in your <a href="bookmark_help.html">bookmark files</a>, or to
+  <a href="../Lynx_users_guide.html#RemoteSource">Download</a>
+  them.</p>
+
+  <p>In contrast to the History Page, the Visited Links Page
+  includes any links which were retrieved for
+  '<em>d</em>'ownloading or were passed to helper applications,
+  i.e., not just the links that were rendered and displayed by
+  Lynx, itself.</p>
+
+  <p>You may change the appearance of the Visited Links Page via a
+  popup menu on that page (which also appears on the <a href=
+  "option_help.html#VP">Options Menu</a>).</p>
+</body>
+</html>
diff --git a/lynx_help/keystrokes/xterm_help.html b/lynx_help/keystrokes/xterm_help.html
new file mode 100644
index 00000000..e76674ca
--- /dev/null
+++ b/lynx_help/keystrokes/xterm_help.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: xterm_help.html,v 1.6 2012/01/31 11:49:45 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>X Terminal Help</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h1>X Terminal or X Server</h1>
+
+  <p>An X terminal is an electronic display terminal that
+  communicates with a host computer system using the X Window
+  protocol developed at the Massachusetts Institute of
+  Technology.</p>
+
+  <p>The X Window protocol allows a program running on the host
+  computer system to display both formatted text and graphics on
+  the X terminal. Since the X Window protocol is defined to work
+  over any TCP/IP network, X terminals connected to the Internet
+  can be connected to hosts located anywhere on the Internet.</p>
+
+  <p>Personal computers (including both PCs and Macintoshes) can
+  execute programs, usually called X servers, that make them act
+  like X Window terminals and are frequently used as X
+  terminals.</p>
+
+  <dl>
+    <dt>Note:</dt>
+
+    <dd>The terminology used to describe processes associated with
+    X terminals can be confusing. An X terminal is also known as an
+    "X display server," and the program running on the host
+    computer is usually known as the "X client."</dd>
+  </dl>
+</body>
+</html>
diff --git a/lynx_help/lynx-dev.html b/lynx_help/lynx-dev.html
new file mode 100644
index 00000000..b3cf4670
--- /dev/null
+++ b/lynx_help/lynx-dev.html
@@ -0,0 +1,99 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<!-- $LynxId: lynx-dev.html,v 1.13 2012/01/31 10:51:43 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>Lynx-Dev Discussion List</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <blockquote>
+    [ <a href=
+    "http://mail.gnu.org/mailman/listinfo/lynx-dev/">Lynx-Dev
+    Archive</a> | <a href="about_lynx.html">About Lynx</a> ]
+  </blockquote>
+
+  <h1><em>The Lynx Development Process</em></h1>
+
+  <p>Lynx is maintained and improved by an international
+  co-operative of volunteers. Newcomers are welcome to join the
+  group: you needn't be a super programmer, but you should be
+  prepared to listen and learn, as well as to contribute patches if
+  you can. Since everyone is a volunteer, you will usually be
+  expected to try to implement any suggestions you make.</p>
+
+  <h1><em>Lynx-Dev Discussion List</em></h1>
+
+  <p>The developers communicate through a mailing list &mdash; see
+  below for details &mdash; which is open to interested users as
+  well as programmers. Topics include fixing bugs, increasing
+  Lynx's tools and powers, meeting the ever-changing demands of the
+  Internet and porting Lynx to new systems.</p>
+
+  <p>Anyone may read what has been said on the list by visiting
+  <a href=
+  "http://mail.gnu.org/mailman/listinfo/lynx-dev/">&nbsp;the
+  Archive</a>.</p>
+
+  <h1><em>Development Versions of Lynx</em></h1>
+
+  <p>Besides <em>releases</em>, which are stable versions of Lynx
+  which come out once or twice a year and can be obtained from
+  <a href="http://lynx.isc.org/release/">the release site</a>,
+  there are <em>development</em> versions, which are experimental
+  &mdash; though usually stable enough to use &mdash; and appear
+  every few weeks, depending on current activity.</p>
+
+  <p>You can find the latest <em>development</em> version of Lynx
+  by visiting <a href="http://lynx.isc.org/current/">the
+  development site</a>.</p>
+
+  <h1><em>Subscribing to Lynx-Dev</em></h1>
+
+  <p>If you are interested in joining the Lynx mailing list, send
+  e-mail to <a href=
+  "mailto:lynx-dev-request@nongnu.org?subject=subscribe">&nbsp;lynx-dev-request@nongnu.org</a>
+  with "subscribe" as the subject line.</p>
+
+  <p>You will need to answer one follow-up question to confirm you
+  want to subscribe. Mailman will then enroll you and send all
+  messages which you address to <em>lynx-dev@nongnu.org</em> to all
+  subscribers; you will also receive all messages sent by other
+  subscribers.</p>
+
+  <h1><em>Unsubscribing from Lynx-Dev</em></h1>
+
+  <p>To <em>unsubscribe</em>, send an e-mail to <a href=
+  "mailto:lynx-dev-request@nongnu.org?subject=unsubscribe">&nbsp;lynx-dev-request@nongnu.org</a>
+  with "unsubscribe" as the subject line.</p>
+
+  <h1><em>Casual Inquiries</em></h1>
+
+  <p>Anyone may ask a question or offer a comment by sending e-mail
+  to <a href="mailto:lynx-dev@nongnu.org">&nbsp;the list</a>. Since
+  all subscribers are volunteers, you depend on their goodwill and
+  will be more likely to get a response if you give the e-mail a
+  meaningful `Subject' and include details of your version of Lynx,
+  hardware and software. You can check the Archive to find any
+  responses.</p>
+
+  <p>Messages from non-subscribers are not immediately distributed
+  to avoid spam. Usually, if your message appears genuine, it will
+  be retrieved from the pile headed for the wastebasket within a
+  day or so and distributed to the list. For best results,
+  subscribe as described above.</p>
+
+  <h1><em>The Lynx-Dev Archive</em></h1>
+
+  <p>Messages posted to lynx-dev are archived in html format so
+  that you can view them using Lynx: go to the <a href=
+  "http://mail.gnu.org/mailman/listinfo/lynx-dev/">Mail
+  Archive</a>.</p>
+</body>
+</html>
diff --git a/lynx_help/lynx_help_main.html b/lynx_help/lynx_help_main.html
new file mode 100644
index 00000000..4e601b03
--- /dev/null
+++ b/lynx_help/lynx_help_main.html
@@ -0,0 +1,179 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<!-- $LynxId: lynx_help_main.html,v 1.38 2012/01/31 10:50:33 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>The Lynx Help Page</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <h2>Lynx help files (usually in your local directories):</h2>
+
+  <ul>
+    <li><a href="Lynx_users_guide.html">Lynx Users Guide</a>
+    &mdash; complete account of all Lynx features</li>
+
+    <li><a href="keystrokes/keystroke_help.html">Key-stroke
+    Commands</a> &mdash; quick outline of what various keys do</li>
+
+    <li><a href="keystrokes/edit_help.html">Line Editor</a> &mdash;
+    when entering URLs etc</li>
+
+    <li><a href="lynx_url_support.html">Supported URLs</a> &mdash;
+    how Lynx handles various types of URL</li>
+
+    <li><a href="about_lynx.html">About Lynx</a> &mdash; credits,
+    copyright etc</li>
+
+    <li><a href="lynx-dev.html">About Lynx-Dev</a> &mdash; the
+    developers &amp; how to contact them</li>
+  </ul>
+
+  <h2>Other sources of Lynx help:</h2>
+
+  <ul>
+    <li><a href=
+    "http://lynx.isc.org/release/lynx2-8-7/lynx_help/cattoc.html">lynx.cfg
+    options</a> &mdash; a reference for advanced
+    configurations</li>
+
+    <li><a href="http://lynx.isc.org/release/lynx2-8-7/docs/">lynx
+    documentation</a> &mdash; supplementary documentation</li>
+
+    <li><a href=
+    "http://www.chass.utoronto.ca/%7Epurslow/lhfb.html">Lynx Help
+    for Beginners</a> &mdash; quick help on many common problems 
+    <!-- {li}{a href="http://lynx.isc.org/cgi-bin/fom"}The Lynx FAQ-O-Matic{/a} .. many common queries, some more advanced; users may add answers. --></li>
+
+    <li><a href="http://www.subir.com/lynx.html">Lynx Links</a>
+    &mdash; source &amp; binaries, FAQs, developers &amp;
+    archives,<br>
+    SSL &amp; security, and more</li>
+
+    <li><a href="http://leb.net/blinux/blynx/">Blynx</a> &mdash;
+    Speech-Friendly Help for the visually impaired</li>
+  </ul>
+
+  <h2>World Wide Web Consortium documents:</h2>
+
+  <ul>
+    <li>HTML &mdash; <a href=
+    "http://www.w3.org/TR/REC-html40/">4.0</a> &mdash; <a href=
+    "http://www.w3.org/MarkUp/">3.2</a> &mdash; <a href=
+    "http://www.w3.org/MarkUp/html3/Contents.html">3.0</a> &mdash;
+    <a href=
+    "http://www.w3.org/MarkUp/html-spec/html-spec_toc.html">2.0</a></li>
+
+    <li>HTTP &mdash; <a href="http://www.w3.org/Protocols/">1.1</a>
+    &mdash; <a href=
+    "http://www.isi.edu/in-notes/rfc1945.txt">1.0</a></li>
+
+    <li><a href="http://www.w3.org/Addressing/">Web Naming &amp;
+    Addressing Overview: URIs, URLs etc</a></li>
+
+    <li><a href="http://www.w3.org/International/">HTML
+    Internationalization</a></li>
+
+    <li><a href="http://www.w3.org/">WWW Consortium: home
+    page</a></li>
+  </ul>
+
+  <h2>Help with HTML:</h2>
+
+  <ul>
+    <li><a href="http://www.htmlhelp.com/reference/html40/">HTML
+    4.0 Reference</a></li>
+
+    <li><a href=
+    "http://archive.ncsa.uiuc.edu/General/Internet/WWW/HTMLPrimer.html">
+    NCSA Beginner's Guide To HTML</a></li>
+
+    <li><a href=
+    "http://www.ku.edu/acs/documentation/docs/html_quick.shtml">HTML
+    Quick Reference Guide</a></li>
+  </ul>
+
+  <h2>HTML validation services:</h2>
+
+  <ul>
+    <li><a href="http://validator.w3.org/">W3C HTML Validation
+    Service</a></li>
+
+    <li><a href="http://www.htmlhelp.com/tools/validator/">WDG HTML
+    Validator</a></li>
+  </ul>
+
+  <h2>Other browsing software:</h2>
+
+  <ul>
+    <li><a href="http://wget.sunsite.dk/">GNU wget</a> &mdash;
+    powerful &amp; flexible non-interactive downloader</li>
+
+    <li><a href="http://www.idata.sk/~ondrej/pavuk/">Pavuk</a>
+    &mdash; powerful &amp; an even more-featured downloader</li>
+
+    <li><a href="http://curl.haxx.se/">cURL</a> &mdash;
+    non-interactive downloader which supports HTTPS</li>
+
+    <li><a href="http://www.xach.com/snarf/">snarf</a> &mdash;
+    small simple 1-file non-interactive downloader</li>
+  </ul>
+
+  <h2>Meta-indexes: lists of links</h2>
+
+  <ul>
+    <li><a href=
+    "http://archive.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html">
+    NCSA Mosaic</a></li>
+  </ul>
+
+  <h2>Search engines:</h2>
+
+  <ul>
+    <li><a href="http://www.alltheweb.com/">AlltheWeb.com</a></li>
+
+    <li><a href="http://www.altavista.com/">AltaVista</a></li>
+
+    <li><a href="http://www.ask.com/">Ask.com</a></li>
+
+    <li><a href="http://www.excite.com/">Excite</a></li>
+
+    <li><a href="http://www.go.com/">GO.com</a></li>
+
+    <li><a href="http://www.google.com/">Google</a></li>
+
+    <li><a href="http://search.lycos.com/">Lycos</a></li>
+
+    <li><a href="http://www.metacrawler.com/">MetaCrawler</a></li>
+
+    <li><a href="http://www.search.com/">Search.com</a></li>
+
+    <li><a href="http://www.teoma.com/">Teoma</a></li>
+
+    <li><a href="http://www.webcrawler.com/">WebCrawler</a></li>
+
+    <li><a href="http://www.yahoo.com/">Yahoo!</a></li>
+  </ul>
+
+  <h2>Free WWW E-mail services:</h2>
+
+  <ul>
+    <li><a href="http://www.eudoramail.com/">Eudora
+    Web-Mail</a></li>
+
+    <li><a href="http://www.excite.com/">Excite Inbox</a></li>
+
+    <li><a href="http://www.hotmail.com/">Hotmail</a></li>
+
+    <li><a href="http://www.netaddress.com/">Net@ddress</a></li>
+
+    <li><a href="http://mail.yahoo.com/">Yahoo! Mail</a></li>
+  </ul>
+</body>
+</html>
diff --git a/lynx_help/lynx_url_support.html b/lynx_help/lynx_url_support.html
new file mode 100644
index 00000000..390c0153
--- /dev/null
+++ b/lynx_help/lynx_url_support.html
@@ -0,0 +1,700 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<!-- $LynxId: lynx_url_support.html,v 1.30 2012/01/31 10:52:00 tom Exp $ -->
+
+<html>
+<head>
+  <meta name="generator" content=
+  "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
+
+  <title>URL Schemes Supported in Lynx</title>
+  <link rev="made" href="mailto:lynx-dev@nongnu.org">
+  <meta http-equiv="Content-Type" content=
+  "text/html; charset=us-ascii">
+</head>
+
+<body>
+  <blockquote>
+    <em>[</em><a href="#http_url">http, https</a> <em>|</em>
+    <a href="#telnet_url">telnet, tn3270, rlogin</a> <em>|</em>
+    <a href="#gopher_url">gopher</a> <em>|</em> <a href=
+    "#file_url">file</a> <em>|</em> <a href="#ftp_url">ftp</a>
+    <em>|</em> <a href="#wais_url">wais</a> <em>|</em> <a href=
+    "#news_url">news, nntp, snews</a> <em>|</em> <a href=
+    "#newspost_url">newspost, newsreply, snewspost, snewsreply</a>
+    <em>|</em> <a href="#mailto_url">mailto</a> <em>|</em> <a href=
+    "#finger_url">finger</a> <em>|</em> <a href="#cso_url">cso</a>
+    <em>|</em> <a href="#bibp_url">bibp</a> <em>|</em> <a href=
+    "#exec_url">lynxexec, lynxprog</a> <em>|</em> <a href=
+    "#cgi_url">lynxcgi</a><em>|</em> <a href="#ncftp_url">NcFTP</a>
+    <em>|</em> <a href="#internal_url">internal</a><em>]</em>
+  </blockquote>
+
+  <h1><em>URL Schemes Supported in Lynx</em></h1>
+
+  <p>Lynx handles a number of URL types, that are enumerated below.
+  For more details about URLs (Uniform Resource Locators) see
+  <em>RFC1738</em>:</p>
+
+  <ul>
+    <li><a href=
+    "http://www.w3.org/Addressing/rfc1738.txt">http://www.w3.org/Addressing/rfc1738.txt</a></li>
+
+    <li><a href=
+    "ftp://ftp.rfc-editor.org/in-notes/rfc1738.txt">ftp://ftp.rfc-editor.org/in-notes/rfc1738.txt</a></li>
+  </ul>
+
+  <p>Lynx resolves partial or relative URLs in documents with
+  respect to the BASE if one was specified, otherwise with respect
+  to the document's absolute URL, using the rules described in
+  <em>RFC1808</em>:</p>
+
+  <ul>
+    <li><a href=
+    "http://www.w3.org/Addressing/rfc1808.txt">http://www.w3.org/Addressing/rfc1808.txt</a></li>
+
+    <li><a href=
+    "ftp://ftp.rfc-editor.org/in-notes/rfc1808.txt">ftp://ftp.rfc-editor.org/in-notes/rfc1808.txt</a></li>
+  </ul>and in subsequent drafts of the <em>IETF</em>:
+
+  <ul>
+    <li><a href="http://www.ics.uci.edu/pub/ietf/uri/">Uniform
+    Resource Identifiers (URI) Working Group</a></li>
+  </ul>
+
+  <p>When entering a URL on the command line to be used as the
+  <em>startfile</em>, or at the prompt for a '<em>g</em>'oto entry,
+  a partial host field can be used and the scheme field can be
+  omitted if the scheme and fully qualified domain name can be
+  constructed internally by using the URL_DOMAIN_PREFIXES and
+  URL_DOMAIN_SUFFIXES definitions in the Lynx configuration file.
+  See the explanation of those definitions and their use in your
+  <em>lynx.cfg</em>.</p>
+
+  <p>For example, <em>wfbr</em> will be treated as
+  <em>http://www.wfbr.edu/</em>, and <em>wfbr/dir/lynx</em> will be
+  treated as <em>http://www.wfbr.edu/dir/lynx</em>, but
+  <em>gopher.wfbr.edu/11/_fileserv/_lynx</em> will be treated as
+  <em>gopher://gopher.wfbr.edu/11/_fileserv/_lynx</em>.</p>
+
+  <p>For files or directories on the local host, a tilde
+  (<em>~</em>) is expanded to the path of the account's login
+  directory, e.g., <em>~/foo</em> will be expanded to
+  <em>file://localhost/your/login/directory/foo</em>. The tilde
+  expansion is done homologously on Unix and VMS.</p>
+
+  <p>On VMS, Lynx also will expand any file or directory spec
+  recognizable to DCL into a valid URL, e.g., <em>[]</em> will be
+  expanded to
+  <em>file://localhost/current/default/directory</em>.</p>
+
+  <p>These expansions are <em>SOLELY</em> for <em>startfile</em> or
+  '<em>g</em>'oto entries! Any partial or relative URLs within HTML
+  documents are resolved according to the rules specified in
+  RFC1808 and subsequent IETF drafts.</p>
+  <hr>
+
+  <h2><a name="http_url">The <em>http</em> and <em>https</em>
+  URLs:</a></h2>
+
+  <p>Lynx handles http URLs exactly as specified in RFC1738. The
+  format is:</p>
+  <pre>
+      <em>http://host:port/path?searchpart#fragment</em>
+</pre>where <em>:port</em> is optional and defaults to
+<em>:80</em>, <em>/path</em> if present is a slash-separated series
+of symbolic elements, and <em>?searchpart</em> if present is the
+query for an ISINDEX search or the content of a FORM with
+METHOD="GET". The <em>#fragment</em> field if present indicates a
+location in the document to seek for display, based on a NAME-ed
+anchor or an ID attribute within the document, and is technically
+an instruction rather than part of the URL. Lynx will treat ID
+attributes as NAME-ed anchors for all tags in the BODY of a
+document which can correspond to positions in the rendering of the
+document.
+
+  <p>The https URL has the same format, but the default port is
+  <em>:443</em>.</p>
+  <hr>
+
+  <h2><a name="telnet_url">The <em>telnet</em>, <em>tn3270</em>,
+  and <em>rlogin</em> URLs:</a></h2>
+
+  <p>A <em>telnet</em> URL generally results in Lynx spawning a
+  telnet session. Lynx implements the complete telnet URL scheme,
+  i.e.:</p>
+  <pre>
+      <em>telnet://user:password@host:port</em>
+</pre>
+
+  <p>The <em>user</em> and/or <em>:password</em> fields may be
+  omitted, and the <em>@</em> should be omitted if neither is
+  present. The port defaults to <em>:23</em> when omitted in the
+  URL.</p>
+
+  <p>A <em>tn3270</em> or <em>rlogin</em> URL is specified
+  equivalently, and similarly spawns a tn3270 or rlogin session.
+  The actual behavior is dependent on the TCP-IP software installed
+  on the local and target hosts.</p>
+
+  <p>It is unwise to include the <em>:password</em> field except
+  for URLs which point to anonymous or other public access
+  accounts, and for most TCP-IP software you will be prompted for a
+  password whether or not one was included in the URL.</p>
+  <hr>
+
+  <h2><a name="gopher_url">The <em>gopher</em> URL:</a></h2>
+
+  <p>The gopher URL takes the form:</p>
+  <pre>
+      <em>gopher://host:port/gopher-path</em>
+</pre>where <em>:port</em> is optional and defaults to
+<em>:70</em>, and the <em>/gopher-path</em> is opaque (not fully
+equivalent to the slash-separated series of symbolic elements of
+http paths) as explained in RFC1738. Typically, the gopher-path
+consists of a <a href=
+"keystrokes/gopher_types_help.html"><em>gophertype</em></a>
+indicating the file or service type (e.g., <em>0</em> or <em>I</em>
+for plain text or an image, respectively, <em>7</em> for a search,
+or <em>1</em> for a directory), followed by a platform-specific
+<em>selector</em>. Any reserved characters in the selector should
+be hex escaped (<em>%hh</em>), including slashes, although hex
+escaping of slashes is not required by Lynx in gopher URLs.
+
+  <p>Lynx does not overtly support the gopher+ protocol, and does
+  not represent itself as gopher+ capable when communicating with
+  gopher servers. Lynx might transmit any
+  (hex-escaped-tab-separated) extended gopher+ fields in a URL if
+  an author included them in a document, but is likely to mishandle
+  what the gopher server returns in such cases, and would not
+  generate and transmit them itself. For pre-formed URLs to submit
+  gopher searches, it may be better to use a <em>?</em> rather than
+  hex-escaped tab (<em>%09</em>) as the separator for the
+  <em>searchpart</em> in the <em>selector</em>, e.g.:<br>
+  <em>gopher://gopher.wfbr.edu/77/_shell/search.shell%20/_shell/walker?lynx*</em>
+  Lynx will handle the <em>%09</em> if you use that instead of
+  <em>?</em>, but other WWW clients may mishandle it.</p>
+
+  <p>For the <em>gophertype</em> which signifies HTML (<em>h</em>),
+  if the <em>selector</em> begins with <em>GET%20/</em> Lynx will
+  convert the gopher URL to an http URL, e.g.:<br></p>
+  <pre>
+<em>gopher://www.wfbr.edu:80/hGET%20/</em>
+</pre>will become:<br>
+  <pre>
+<em>http://www.wfbr.edu/</em>
+</pre>The port field will be retained if it is not <em>:80</em>,
+and will default to <em>:70</em> if it was defaulted originally.
+These conventions were adopted during development of the University
+of Minnesota gopher software to facilitate the offering of links to
+MIME-capable http servers in the listings returned by gopher
+servers, but should be considered Lynxisms and UMN Gopherisms.
+  <hr>
+
+  <h2><a name="file_url">The <em>file</em> URL:</a></h2>
+
+  <p>The file URL is used to retrieve files or generate a directory
+  listing on the local host. The host field can be
+  <em>localhost</em> or a domain name for the local host:<br></p>
+  <pre>
+<em>file://localhost/path</em>
+</pre>If you do not use <em>localhost</em> or a domain name for the
+local host, Lynx will substitute <em>ftp://</em> for
+<em>file://</em> and treat it as an ftp URL.
+
+  <p>The <em>/path</em> is treated as originating at the root,
+  unless you include a tilde (<em>~</em>), e.g.:</p>
+  <pre>
+      <em>file://localhost/~/foo</em>   will be converted to:
+      <em>file://localhost/your/login/directory/foo</em>
+</pre>The latter feature is a Lynxism, is done homologously on Unix
+and VMS, and should be used ONLY in local documents intended for
+Lynx.
+
+  <p>On VMS, the first element of the path, if not a tilde, is
+  assumed to be a device, e.g.:</p>
+  <pre>
+      <em>file://localhost/www_root/directory/filename.suffix</em>
+</pre>should be used for:
+<em>www_root:[directory]filename.suffix</em><br>
+  If you are unsure how to specify a file URL in local documents on
+  VMS, invoke Lynx with the desired file or directory as the
+  <em>startfile</em> using any spec acceptable to DCL, and then use
+  the <em>showinfo</em> command (<em>=</em>) to see the file URL
+  which Lynx created for it.
+  <hr>
+
+  <h2><a name="ftp_url">The <em>ftp</em> URL:</a></h2>
+
+  <p>The ftp URL has the general format:</p>
+  <pre>
+      <em>ftp://host:port/path;type=[D,I, or A]</em>
+      <em>ftp://username@host:port/path;type=[D,I, or A]</em>
+</pre>
+
+  <p>The default port is <em>:21</em> and the default
+  <em>username</em> is <em>anonymous</em>. If <em>username</em> is
+  included, Lynx will prompt you for the password. For anonymous
+  ftp, Lynx uses your <em>personal_mail_address</em> (user@host) as
+  the <em>password</em> if it has been defined via the
+  '<em>o</em>'ptions menu. Otherwise, Lynx uses the dummy password
+  <em>WWWUser</em>. (A password can also be embedded in the URL, by
+  replacing <em>username</em> with <em>username:password</em>. This
+  is strongly discouraged for 'real' passwords that must be kept
+  secret, since URLs with the completely unencrypted
+  <em>password</em> may show up on the screen, in HISTORY and LIST
+  pages etc., and may even become visible to remote sites for
+  example through Referer headers.) Do not include the <em>@</em>
+  if neither <em>username</em> nor <em>:password</em> is
+  included.</p>
+
+  <p>The <em>;type=</em> parameter can be used with value
+  <em>D</em>, <em>I</em>, or <em>A</em> to force handling of the
+  URL as, respectively, a directory listing, binary file, or ASCII
+  file. The Lynx ftp gateway normally determines this itself, but
+  the parameter can be used if the internal procedure draws an
+  incorrect inference about the nature of the ftp URL.</p>
+
+  <p>The <em>/path</em> is treated according to RFC1738 for VMS and
+  VM/CMS ftp servers. The lead slash (<em>/</em>) is treated purely
+  as a separator, not as a designator for the root, and the
+  <em>path</em> string if present is treated as in or under the
+  login directory. For VMS ftp servers, if you wish to have the
+  first element treated as a device rather than file or
+  subdirectory name, begin it with a hex-escaped slash
+  (<em>%2f</em>), e.g.:</p>
+  <pre>
+      <em>ftp://user@myhost/%2fsys$common/syshlp</em>
+</pre>can be used for a listing of sys$common:[syshlp]<br>
+  Also, on VM/CMS ftp servers, if the <em>path</em> string begins
+  with <em>vmsysu%3a</em> it receives special handling as an SFS
+  path, e.g.:
+  <pre>
+      <em>ftp://ubvm.cc.buffalo.edu/vmsysu%3alistserv.webshare</em>
+</pre>
+
+  <p>For Unix and Unix-emulation ftp servers, RFC1738 is not
+  respected and the lead slash is treated as the root, i.e., the
+  <em>/path</em> is handled equivalently to that in file URLs. The
+  distinction is irrelevant for anonymous ftp, but matters when
+  using ftp for non-anonymous accounts. If you are using ftp with a
+  Unix server and do wish to get a listing of the login directory
+  or have the <em>path</em> string treated as a file or path under
+  the login directory, include a tilde (<em>~</em>) as for <a href=
+  "#file_url">file</a> URLs, e.g.:</p>
+  <pre>
+      <em>ftp://user@myhost/~</em>
+</pre>
+  <hr>
+
+  <h2><a name="wais_url">The <em>wais</em> URL:</a></h2>
+
+  <p>The wais URL is used to retrieve resources using the Wide Area
+  Information System protocol. The format is:</p>
+  <pre>
+      <em>wais://host:port/database</em>
+      <em>wais://host:port/database?wais_query</em>
+      <em>wais://host:port/database/wais_type/wais_path</em>
+</pre>where <em>:port</em> defaults to <em>:210</em>
+
+  <p>Direct wais support is built into Lynx for VMS, and can be
+  compiled into Lynx on Unix.</p>
+
+  <p>If only a <em>database</em> is indicated in the URL, Lynx
+  returns an ISINDEX cover page for searching that
+  <em>database</em>, and will submit your search with the
+  <em>wais_query</em> appended. Lynx will convert the server's
+  reply into a hit list with URLs that include the
+  <em>wais_type</em> and <em>wais_path</em> for retrieving items
+  from the hit list.</p>
+  <hr>
+
+  <h2><a name="news_url">The <em>news</em>, <em>nntp</em>, and
+  <em>snews</em> URLs:</a></h2>
+
+  <p>The news and nntp URLs are handled by Lynx as specified in
+  RFC1738, but for compatibility with other clients, Lynx allows
+  inclusion of host and port fields in news URLs, which properly
+  should be used <em>only</em> in nntp and snews URLs. If not
+  included in news URLs, Lynx will use the nntp server pointed to
+  by the NNTPSERVER environment variable or configuration symbol
+  (see lynx.cfg), with default port <em>:119</em>. A host field
+  must be included in nntp URLs, and the port field is optional
+  with the same default.</p>
+
+  <p>If the URL requires authentication, lynx will prompt you for
+  the username and password. These are cached during a session, for
+  reuse on the same host. If $HOME/.newsauth exists, lynx
+  initializes its cache from this file. The .newsauth file contents
+  are one line per entry: hostname, password and username (in that
+  order) separated by a space.</p>
+
+  <p>The formats are:<br></p>
+  <pre>
+      <em>news:newsgroup</em> (retrieves list of messages in newsgroup)
+      <em>news:messageID</em> (retrieves the message)
+      <em>news:*</em> (retrieves list of all available newsgroups)
+      <em>nntp://host:port/newsgroup</em>
+      <em>nntp://host:port/messageID</em>
+      <em>nntp://host:port/*</em>
+</pre>(snews same as nntp, but the default port is <em>:563</em>)
+
+  <p>The <em>messageID</em> is the message's unique identifier,
+  consisting of an identification string and the host of origin for
+  the message (<em>ident_string@origin_host</em>).</p>
+
+  <p>Lynx also supports wildcarding via an asterisk for listings of
+  news hierarchies or sub-hierarchies, e.g.:</p>
+  <pre>
+      <em>news:comp.infosystems.*</em>
+      <em>nntp://host:port/comp.infosystems.*</em>
+</pre>(snews same as nntp, but the default port is
+<em>:563</em>)<br>
+  This is not in RFC1738 and may not be supported by all other
+  clients.
+
+  <p>Lynx allows you both to <em>reply</em> to the author of a news
+  message via email, and, if news posting has been enabled, to send
+  a <em>followup</em> message to the newsgroup (see <a href=
+  "#newspost_url">newspost, newsreply, snewspost,
+  snewsreply</a>).</p>
+
+  <p>Lynx converts any strings in news messages which appear to be
+  a URL with a supported scheme into a link for accessing that
+  URL.</p>
+
+  <p>Lynx also supports the newsgroup and message number URL
+  scheme:<br></p>
+  <pre>
+      <em>news:newsgroup/startNo-endNo</em> (lists message range in newsgroup)
+      <em>news:newsgroup/messageNo</em>     (retrieves the message by number)
+      <em>nntp://host:port/newsgroup/startNo-endNo</em>
+      <em>nntp://host:port/newsgroup/messageNo</em>
+</pre>(snews same as nntp, but the default port is
+<em>:563</em>)<br>
+  Use of this scheme is not recommended, because the message
+  numbers are specific to each nntp server, unlike the unique
+  identifiers for news messages.
+  <hr>
+
+  <h2><a name="newspost_url">The <em>newspost</em>,
+  <em>newsreply</em>, <em>snewspost</em>, and <em>snewsreply</em>
+  URLs:</a></h2>
+
+  <p>When Lynx receives group listings or articles via
+  <em>news</em>, <em>nntp</em> or <em>snews</em> URLs, it also
+  checks whether the nntp server supports posting from the Lynx
+  user's site, and if so, includes links for posting new messages
+  to that server, or for posting followups (replies) to previously
+  posted messages. RFC1738, and IETF URL drafts through this
+  release of Lynx, do not include any schemes for posting to news
+  groups. Lynx has long supported newspost and newreply URL schemes
+  for posting new messages or sending followups, respectively, to
+  standard nntp servers, with default port <em>:119</em>. Lynx now
+  also supports homologous snewspost and snewsreply URLs for use
+  with SSL capable nntp servers.</p>
+
+  <p>The formats are:</p>
+  <pre>
+      <em>newspost://host:port/newsgroup(s)</em>  (post a new message)
+      <em>newsreply://host:port/newsgroup(s)</em> (post a followup message)
+</pre>(snewspost and snewsreply have the same formats, but the
+default port is <em>:563</em>)
+
+  <p>If the host field is omitted, it defaults to that pointed to
+  by the NNTPSERVER configuration or environmental variable.
+  Inclusion of at least one newsgroup in the URL is required, and
+  additional groups can be specified as a comma-separated list.
+  Wildcarding of newsgroup names is not supported for these URLs.
+  For newsreply and snewsreply URLs, if an external editor has been
+  defined via the <em>Options Menu</em>, the user is offered an
+  option to include the currently displayed document, which
+  presumably is a news article with a <em>followup</em> link that
+  was activated, and if confirmed, each line of that document is
+  prefixed with a right-angle-bracket. The user is expected to edit
+  such an inclusion so that only the passages relevant to the
+  followup message are retained.</p>
+
+  <p>These URLs can be used as command line startfiles (in which
+  case, Lynx will exit after posting the message, and the newreply
+  or snewsreply URLs degrade to newspost or snewpost URLs,
+  respectively). They also can be used as HREF attribute values in
+  any HTML document homologously to <a href=
+  "#mailto_url">mailto</a> URLs, with the qualification that they
+  presently are supported only by Lynx.</p>
+  <hr>
+
+  <h2><a name="mailto_url">The <em>mailto</em> URL:</a></h2>
+
+  <p>The mailto URL is used to provide links that when activated
+  can be used to send a comment or the content of a FORM to an
+  Internet email address (user@host). The format is:</p>
+  <pre>
+      <em>mailto:user@host</em>
+</pre>
+
+  <p>The description of the mailto URL in RFC1738 has been
+  interpreted by some as allowing only a single recipient, but Lynx
+  invented the mailto URL, has always supported a series of
+  user@host addresses as a comma-separated list, and still does.
+  For compatibility with Explorer, Lynx also accepts a
+  semi-colon-separated list.</p>
+
+  <p>For compatibility with Netscape, Lynx parses any
+  <em>?subject=The%20Subject</em> appended to the URL, trims the
+  URL at the <em>?</em>, and uses the value as the default Subject:
+  for the message or FORM content mailing. This is not recommended
+  practice. The preferred way to indicate the default Subject: for
+  a LINK or Anchor with a mailto HREF, or a FORM with a mailto
+  ACTION, is via a TITLE attribute with the subject string as its
+  value, e.g.:</p>
+  <pre>
+      <em>&lt;LINK REV="made"
+            HREF="mailto:me@myhost,her@herhost" TITLE="The Subject"&gt;</em>
+
+      <em>&lt;A HREF="mailto:user@host" TITLE="The Subject"&gt;...&lt;/A&gt;</em>
+
+      <em>&lt;FORM METHOD="post" ENCTYPE="text/plain"
+            ACTION="mailto:WebMaster@host" TITLE="The Subject"&gt;
+       ...
+      &lt;/FORM&gt;</em>
+</pre>
+
+  <p>Note that a TITLE attribute for FORM is now included in the
+  HTML specifications. Some clients use a SUBJECT attribute for
+  this purpose in FORM tags, and Lynx recognizes that as a synonym
+  for TITLE.</p>
+
+  <p>Lynx also will process any <em>to=address(es)</em>,
+  <em>cc=address(es)</em>, <em>keywords=word_list</em> and/or
+  <em>body=message</em> fields in <em>?searchpart</em> tack-ons to
+  mailto URLs. The <em>to</em> and/or <em>cc</em> values can be
+  single addresses, or comma- or semi-colon-separated lists of
+  addresses. All addresses, and any <em>body</em> values, will be
+  offered for approval by the user before proceeding with a
+  mailing. Any other name=value pairs in the <em>?searchpart</em>
+  will be ignored. Also, if the mailto URL is the ACTION for a
+  FORM, any <em>body</em> in a <em>?searchpart</em> tack-on will be
+  ignored, because the body of the mailing must be constructed
+  solely from the the FORM's content. Lynx expects multiple
+  name=value pairs in a <em>?searchpart</em> tack-on to be
+  separated by ampersands, as in the original Netscape
+  implementation, and in an equally ill-advised IETF draft of that
+  implementation (<a href=
+  "ftp://ftp.isi.edu/internet-drafts/draft-hoffman-mailto-url-03.txt">draft-hoffman-mailto-url-03.txt</a>).
+  These should be represented as entities (<em>&amp;amp;</em>) in
+  the HTML markup. This functionality is generally desired, but the
+  IETF backward compatibility principal normally would lead to a
+  new scheme being used (e.g., <em>mail:</em>, or <em>smtp:</em>),
+  rather than breaking <em>mailto:</em> implementations.</p>
+
+  <p>If <em>ENCTYPE="text/plain"</em> is specified for a FORM with
+  a mailto ACTION, Lynx will not hex escape the name=value pairs of
+  the FORM's content, and will use physical newlines instead of
+  '<em>&amp;</em>' or '<em>;</em>' to separate the pairs, so that
+  the content will be readable directly. Otherwise, Lynx will mail
+  the content with the default:</p>
+  <pre>
+      <em>ENCTYPE="application/x-www-form-urlencoded"</em> ('<em>&amp;</em>' separates pairs)
+</pre>or:
+  <pre>
+      <em>ENCTYPE="application/sgml-form-urlencoded"</em> ('<em>;</em>' separates pairs)
+</pre>if the latter was indicated.
+
+  <p>Note that when mailing FORM content Lynx wraps any lines
+  longer than 78 characters, to avoid buffer overflows in mail
+  software and to ensure reliable transmission across gateways. If
+  the ENCTYPE was not <em>text/plain</em>, any script which decodes
+  the mailed content should ignore the physical newlines and
+  recognize only hex escaped newline characters as intended to be
+  present in the decoded content.</p>
+
+  <p>If the mailto URL is not the ACTION for a FORM, and if an
+  external editor has been defined via the <em>Options Menu</em>,
+  the user is offered an option to include the currently displayed
+  document. If this option is accepted, each line of that document
+  is prefixed with a right-angle-bracket, and the prefixed
+  inclusion should be trimmed by the user to just those passages
+  relevant to the message which will be sent.</p>
+  <hr>
+
+  <h2><a name="finger_url">The <em>finger</em> URL:</a></h2>
+
+  <p>Lynx has full support for the finger protocol, but a format
+  for finger URLs has not yet been adopted by the IETF. The formats
+  supported by Lynx therefore include every possibility not
+  inconsistent with RFC1738, including:</p>
+  <pre>
+      finger://host                         finger://@host
+      finger://host/                        finger://@host/
+      finger://host/%2fw                    finger://@host/w
+      finger://host/w                       finger://host/w/
+      finger://host/username[@host]         finger://username@host
+      finger://host/username[@host]/        finger://username@host/
+      finger://host/w/username[@host]       finger://username@host/w
+      finger://host/%2fw%20username[@host]  finger://host/username[@host]/w
+      finger://host/w/username
+</pre>
+
+  <p>Activating a finger URL will send a request to the finger
+  server via port 79 on the host specified. You can include
+  <em>:79</em> in the URL, but no other value is allowed. The
+  <em>/w</em> or <em>/%2fw</em> is used to request a full report
+  for finger servers which support it, and is not case sensitive
+  (i.e., can be <em>/W</em> or <em>/%2fW</em>). Any strings in the
+  report which appear to be a URL with a supported scheme will be
+  converted into a link for accessing that URL.</p>
+
+  <p>An alternative way to access finger servers is via gopher URLs
+  with port 79 and the plain text (<em>0</em>) <em>gophertype</em>
+  specified:<br>
+  <em>gopher://host:79/0</em><br>
+  Lynx will handle such URLs equivalently to overt finger URLs,
+  including creation of links for any strings which appear to be
+  supported URLs.</p>
+  <hr>
+
+  <h2><a name="cso_url">The <em>cso</em> URL:</a></h2>
+
+  <p>The cso URL is intended to provide a gateway to CSO/PH (QI)
+  servers. The requests are made on port 105 by default
+  (<em>:105</em>), with the following overt cso URL format:<br></p>
+  <pre>
+      <em>cso://host</em>
+</pre>
+
+  <p>You also can use a gopher URL format with port 105 and the CSO
+  (<em>2</em>) <em>gophertype</em> specified:</p>
+  <pre>
+      <em>gopher://host:105/2</em>
+</pre>
+
+  <p>Lynx will parse the stream returned by the server for the
+  above URLs and create a FORM for submitting additional requests
+  (searches) to the server. Any strings in the reports returned for
+  these requests (searches) which appear to be a URL with a
+  supported scheme will be converted into a link for accessing that
+  URL.</p>
+  <hr>
+
+  <h2><a name="bibp_url">The <em>bibp</em> URL:</a></h2>
+
+  <p>Lynx provides built-in support for bibliographic protocol
+  (BibP). BibP links are links to published works such as books or
+  journal articles, without a predefined server. BibP links are
+  intended for resolution by a local bibhost server
+  (http://bibhost/) if it exists. Otherwise, resolution is
+  performed by a document-specified server or a known global
+  server.</p>
+
+  <h2><a name="exec_url">The <em>lynxexec</em> and
+  <em>lynxprog</em> URLs:</a></h2>
+
+  <p>If execution of spawned commands has been enabled in your Lynx
+  image, the lynxexec and lynxprog URLs can be used to execute
+  arbitrary system commands or invoke system utilities. Any system
+  command and associated switches or qualifiers can be used, with
+  the syntax appropriate for a shell running Lynx on Unix, or for
+  DCL on VMS, e.g.:</p>
+  <pre>
+      <em>lynxexec:dir/date/size foo:[blah]</em> (VMS)
+      <em>lynxexec:ls -l /foo/blah</em>          (Unix)
+      <em>lynxprog:news</em>
+</pre>(Note, however, that restrictions on acceptable commands or
+utilities may be imposed by the system administrator.)
+
+  <p>You optionally can include <em>//localhost/</em> in the URL,
+  between the scheme field and the command, but that is always
+  implied. The lynxexec and lynxprog URLs differ only in that with
+  lynxexec you are prompted to enter <em>RETURN</em> before Lynx
+  clears the screen and restores the previously displayed document,
+  so that you can read any screen output generated by the spawned
+  command, whereas no such pause is imposed upon exit from the
+  utility invoked via lynxprog.</p>
+
+  <p>These are Lynxisms and should be used only in local documents
+  intended solely for Lynx.</p>
+  <hr>
+
+  <h2><a name="cgi_url">The <em>lynxcgi</em> URL:</a></h2>
+
+  <p>The lynxcgi URL is implemented only on Unix, can be used as
+  the ACTION for a FORM, and if enabled in your Lynx image has the
+  format:</p>
+  <pre>
+      <em>lynxcgi://localhost/path_to_CGI_script</em>
+</pre>where <em>//localhost</em> is optional and always implied;
+the full path should be specified, as `~' is not recognized; if the
+script is in the directory Lynx was started from, the simple file
+name is adequate. The output of the script should be text/html and
+is rendered and displayed by Lynx. Restrictions on use of lynxcgi
+and on acceptable paths can be imposed in <em>userdefs.h</em> and
+<em>lynx.cfg</em>, qv.
+
+  <p>This is a Lynxism and should be used only in local documents
+  intended solely for Lynx, or for limited local testing of CGI
+  scripts without an http server.</p>
+  <hr>
+
+  <h2><a name="ncftp_url">The <em>NcFTP</em> URL:</a></h2>
+
+  <p>Lynx recognizes the NcFTP-style ftp URL, e.g.,</p>
+  <pre>
+        <cite>ftpHost</cite>:<cite>fileSpecification</cite>
+</pre>for example
+  <pre>
+<code>
+        ftp.gnu.org:/pub/gnu
+</code>
+</pre>
+  <hr>
+
+  <h2><a name="internal_url">The <em>LYNXfoo</em> internal
+  URLs:</a></h2>
+
+  <p>Lynx uses a variety of private URL schemes for communication
+  among its internal modules. They start with uppercase letters
+  <code>LYNX</code> by convention, although, as input, URL schemes
+  are recognized in a case-insensitive manner.</p>
+
+  <p>As you discover what they are, and are tempted to use them
+  externally in documents, you should <em>resist</em> that
+  temptation:</p>
+
+  <ul>
+    <li>There already is too much browser-specific markup
+    around...</li>
+
+    <li>The schemes, or their meanings, may change between Lynx
+    versions.</li>
+
+    <li>Even if a scheme stays the same, some aspect of its
+    behavior may be modified without notice, or the context in
+    which it is allowed may change.</li>
+
+    <li>If it doesn't work as expected when used outside of the
+    intended purpose, don't expect anyone to "fix" it.</li>
+  </ul>
+
+  <p>For example, tempting though it might be, do not use
+  these:</p>
+  <pre>
+      <em>Return to your &lt;A HREF="LYNXHIST:0"&gt;Startfile&lt;/A&gt;</em>
+      <em>Review your &lt;A HREF="LYNXKEYMAP:"&gt;Keymap&lt;/A&gt;</em>
+</pre>(No, they won't do any harm. Yes, they work. But don't rely
+on it.)
+
+  <p>If you must try one, the second is OK from the command
+  line:<br></p>
+  <pre>
+      <em>lynx LYNXKEYMAP:</em>
+</pre>But within Lynx, use the '<em>K</em>' keystroke command.
+Sometimes it may be convenient to use a private scheme with
+'<em>g</em>'oto, as in:
+  <pre>
+      <em>g LYNXMESSAGES:</em>
+      <em>g LYNXCOMPILEOPTS:</em>
+      <em>g LYNXCFG:</em>
+</pre>But again, there usually is a way in which those special
+pages are meant to be reached that is more convenient.
+</body>
+</html>
diff --git a/make-msc.bat b/make-msc.bat
new file mode 100644
index 00000000..1229d53c
--- /dev/null
+++ b/make-msc.bat
@@ -0,0 +1,6 @@
+@echo off

+rem Build with Visual C++

+cd src\chrtrans

+nmake -f makefile.msc %1 %2 %3 %4 %5 %6 %7 %8 %9

+cd ..\..

+nmake -f makefile.msc %1 %2 %3 %4 %5 %6 %7 %8 %9

diff --git a/makefile.bcb b/makefile.bcb
new file mode 100644
index 00000000..c1d093c1
--- /dev/null
+++ b/makefile.bcb
@@ -0,0 +1,697 @@
+# $LynxId: makefile.bcb,v 1.16 2011/06/04 14:18:03 tom Exp $
+#
+# Borland C++ / C++ builder
+# 1997/11/08 (Sat) 10:45:37
+#
+.AUTODEPEND
+
+#
+# Borland C++ tools
+#
+IMPLIB  = Implib
+BCC32   = Bcc32 +BccW32.cfg 
+TLINK32 = TLink32
+TLIB    = TLib
+BRC32   = Brc32
+TASM32  = Tasm32
+#
+# macros
+#
+BCB = $(MAKEDIR)/..
+BCC_INC = $(BCB)/INCLUDE
+#BCC_INC = c:/cbuilder/include
+WWW_LIB = WWW/Library/Implementation
+OBJ = ..\obj
+ETC_LIB = ../curses
+
+
+#
+# Options
+#
+#
+DEBUG=
+#DEBUG=-v -y -vG
+#DEBUG=-v -y
+
+# Uncomment the CS_DEFS and CS_OBJS lines if you wish to build the color-style
+# configuration.
+#CS_DEFS = /DCHAR_BIT=8 /DUSE_COLOR_STYLE
+#CS_OBJS = $(OBJ)/LYHash.obj $(OBJ)/LYStyle.obj
+
+# Uncomment SOCK_DEFS if you wish to build with winsock2.
+#SOCK_DEFS = /DUSE_WINSOCK2_H /D_WIN32_WINNT=0x0400
+
+CC_FLAGS = $(DEBUG) $(CS_DEFS) $(SOCK_DEFS) \
+-I./;$(ETC_LIB);$(ETC_LIB)/openssl;SRC;$(WWW_LIB);$(BCC_INC);SRC/CHRTRANS \
+-DACCESS_AUTH \
+-DCJK_EX \
+-DCOLOR_CURSES \
+-DDIRED_SUPPORT \
+-DDISP_PARTIAL \
+-DDONT_HAVE_TM_GMTOFF \
+-DDOSPATH \
+-DUSE_ALT_BINDINGS \
+-DEXP_NESTED_TABLES \
+-DFANCY_CURSES \
+-DHAVE_DIRENT_H=1 \
+-DHAVE_KEYPAD \
+-DLONG_LIST \
+-DLY_MAXPATH=1024 \
+-DNOSIGHUP \
+-DNOUSERS \
+-DNO_CONFIG_INFO \
+-DNO_CUSERID \
+-DNO_FILIO_H \
+-DNO_TTYTYPE \
+-DNO_UNISTD_H \
+-DNO_UTMP \
+-DPDCURSES \
+-DSH_EX \
+-DUSE_CMD_LOGGING \
+-DUSE_EXTERNALS \
+-DUSE_JUSTIFY_ELTS \
+-DUSE_MULTIBYTE_CURSES \
+-DFEPCTRL \
+-DENABLE_NLS \
+-DHAVE_GETTEXT \
+-DHAVE_LIBINTL_H \
+-DUSE_PERSISTENT_COOKIES \
+-DUSE_PRETTYSRC \
+-DUSE_READPROGRESS \
+-DUSE_SOURCE_CACHE \
+-DUSE_ZLIB \
+-DVC="2.14FM" \
+-DWIN_EX \
+-D_WINDOWS \
+-D_WIN_CC=1 \
+-DUSE_SSL \
+-DUSE_X509_SUPPORT \
+-DEXP_JAPANESEUTF8_SUPPORT
+
+#
+# Dependency List
+#
+Dep_lynx = lynx.exe
+
+lynx : BccW32.cfg $(Dep_lynx)
+	echo MakeNode 
+
+clean :
+	-del *.tds
+	-del *.map
+	-del $(OBJ)\*.obj
+	-del BccW32.cfg 
+	-del /f/s/q *.i
+
+Dep_lynxdexe = \
+   $(ETC_LIB)/zdllbor.lib\
+   $(ETC_LIB)/pdcurses.lib\
+   $(ETC_LIB)/libeay32.lib\
+   $(ETC_LIB)/ssleay32.lib\
+   $(ETC_LIB)/iconv.lib\
+   $(ETC_LIB)/libintl.lib\
+   $(ETC_LIB)/iconv.lib\
+   $(OBJ)/DefaultStyle.obj\
+   $(OBJ)/GridText.obj\
+   $(OBJ)/HTAABrow.obj\
+   $(OBJ)/HTAAProt.obj\
+   $(OBJ)/HTAAUtil.obj\
+   $(OBJ)/HTAccess.obj\
+   $(OBJ)/HTAlert.obj\
+   $(OBJ)/HTAnchor.obj\
+   $(OBJ)/HTAssoc.obj\
+   $(OBJ)/HTAtom.obj\
+   $(OBJ)/HTBtree.obj\
+   $(OBJ)/HTChunk.obj\
+   $(OBJ)/HTDOS.obj\
+   $(OBJ)/HTFile.obj\
+   $(OBJ)/HTFinger.obj\
+   $(OBJ)/HTFormat.obj\
+   $(OBJ)/HTFtp.obj\
+   $(OBJ)/HTFwriter.obj\
+   $(OBJ)/HTGopher.obj\
+   $(OBJ)/HTGroup.obj\
+   $(OBJ)/HTInit.obj\
+   $(OBJ)/HTLex.obj\
+   $(OBJ)/HTList.obj\
+   $(OBJ)/HTMIME.obj\
+   $(OBJ)/HTML.obj\
+   $(OBJ)/HTMLDTD.obj\
+   $(OBJ)/HTMLGen.obj\
+   $(OBJ)/HTNews.obj\
+   $(OBJ)/HTParse.obj\
+   $(OBJ)/HTPlain.obj\
+   $(OBJ)/HTRules.obj\
+   $(OBJ)/HTString.obj\
+   $(OBJ)/HTStyle.obj\
+   $(OBJ)/HTTP.obj\
+   $(OBJ)/HTTcp.obj\
+   $(OBJ)/HTTelnet.obj\
+   $(OBJ)/HTUU.obj\
+   $(OBJ)/HTWSRC.obj\
+   $(OBJ)/LYBookmark.obj\
+   $(OBJ)/LYCgi.obj\
+   $(OBJ)/LYCharSets.obj\
+   $(OBJ)/LYCharUtils.obj\
+   $(OBJ)/LYClean.obj\
+   $(OBJ)/LYCookie.obj\
+   $(OBJ)/LYCurses.obj\
+   $(OBJ)/LYDownload.obj\
+   $(OBJ)/LYEdit.obj\
+   $(OBJ)/LYEditmap.obj\
+   $(OBJ)/LYExit.obj\
+   $(OBJ)/LYExtern.obj\
+   $(OBJ)/LYForms.obj\
+   $(OBJ)/LYGetFile.obj\
+   $(OBJ)/LYHistory.obj\
+   $(OBJ)/LYJump.obj\
+   $(OBJ)/LYKeymap.obj\
+   $(OBJ)/LYLeaks.obj\
+   $(OBJ)/LYList.obj\
+   $(OBJ)/LYLocal.obj\
+   $(OBJ)/LYMail.obj\
+   $(OBJ)/LYMain.obj\
+   $(OBJ)/LYMainLoop.obj\
+   $(OBJ)/LYMap.obj\
+   $(OBJ)/LYNews.obj\
+   $(OBJ)/LYOptions.obj\
+   $(OBJ)/LYPrettySrc.obj\
+   $(OBJ)/LYPrint.obj\
+   $(OBJ)/LYReadCFG.obj\
+   $(OBJ)/LYSearch.obj\
+   $(OBJ)/LYSession.obj\
+   $(OBJ)/LYShowInfo.obj\
+   $(OBJ)/LYStrings.obj\
+   $(OBJ)/LYTraversal.obj\
+   $(OBJ)/LYUpload.obj\
+   $(OBJ)/LYUtils.obj\
+   $(OBJ)/LYmktime.obj\
+   $(OBJ)/LYrcFile.obj\
+   $(OBJ)/parsdate.obj\
+   $(OBJ)/SGML.obj\
+   $(OBJ)/TRSTable.obj\
+   $(OBJ)/UCAuto.obj\
+   $(OBJ)/UCAux.obj\
+   $(OBJ)/UCdomap.obj\
+   $(OBJ)/Xsystem.obj $(CS_OBJS)
+
+
+lynx.exe : $(Dep_lynxdexe)
+#	$(BCC32) $(DEBUG) -lOS -elynx.exe @lynx_dbg.rsp
+	$(BCC32) $(DEBUG) -lOS -elynx.exe $(CS_OBJS) @lynx.rsp
+#
+###
+
+$(OBJ)/HTDOS.obj :  $(WWW_LIB)/HTDOS.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTDOS.c
+|
+
+$(OBJ)/UCAuto.obj :  src/UCAuto.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/UCAuto.c
+|
+
+$(OBJ)/UCAux.obj :  src/UCAux.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/UCAux.c
+|
+
+$(OBJ)/UCdomap.obj :  src/UCdomap.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/UCdomap.c
+|
+
+$(OBJ)/HTAlert.obj :  src/HTAlert.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/HTAlert.c
+|
+
+$(OBJ)/HTFwriter.obj :  src/HTFwriter.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/HTFwriter.c
+|
+
+$(OBJ)/HTInit.obj :  src/HTInit.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/HTInit.c
+|
+
+$(OBJ)/HTTcp.obj :  $(WWW_LIB)/HTTcp.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTTcp.c
+|
+
+$(OBJ)/HTAABrow.obj :  $(WWW_LIB)/HTAABrow.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTAABrow.c
+|
+
+$(OBJ)/HTAAProt.obj :  $(WWW_LIB)/HTAAProt.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTAAProt.c
+|
+
+$(OBJ)/HTAAUtil.obj :  $(WWW_LIB)/HTAAUtil.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTAAUtil.c
+|
+
+$(OBJ)/HTAccess.obj :  $(WWW_LIB)/HTAccess.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTAccess.c
+|
+
+$(OBJ)/HTAnchor.obj :  $(WWW_LIB)/HTAnchor.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTAnchor.c
+|
+
+$(OBJ)/HTAssoc.obj :  $(WWW_LIB)/HTAssoc.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTAssoc.c
+|
+
+$(OBJ)/HTAtom.obj :  $(WWW_LIB)/HTAtom.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTAtom.c
+|
+
+$(OBJ)/HTBtree.obj :  $(WWW_LIB)/HTBtree.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTBtree.c
+|
+
+$(OBJ)/HTChunk.obj :  $(WWW_LIB)/HTChunk.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTChunk.c
+|
+
+$(OBJ)/HTFile.obj :  $(WWW_LIB)/HTFile.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTFile.c
+|
+
+$(OBJ)/HTFinger.obj :  $(WWW_LIB)/HTFinger.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTFinger.c
+|
+
+$(OBJ)/HTFormat.obj :  $(WWW_LIB)/HTFormat.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTFormat.c
+|
+
+$(OBJ)/HTFtp.obj :  $(WWW_LIB)/HTFtp.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTFtp.c
+|
+
+$(OBJ)/HTGopher.obj :  $(WWW_LIB)/HTGopher.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTGopher.c
+|
+
+$(OBJ)/HTGroup.obj :  $(WWW_LIB)/HTGroup.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTGroup.c
+|
+
+$(OBJ)/HTLex.obj :  $(WWW_LIB)/HTLex.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTLex.c
+|
+
+$(OBJ)/HTList.obj :  $(WWW_LIB)/HTList.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTList.c
+|
+
+$(OBJ)/HTMIME.obj :  $(WWW_LIB)/HTMIME.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTMIME.c
+|
+
+$(OBJ)/HTMLDTD.obj :  $(WWW_LIB)/HTMLDTD.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTMLDTD.c
+|
+
+$(OBJ)/HTMLGen.obj :  $(WWW_LIB)/HTMLGen.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTMLGen.c
+|
+
+$(OBJ)/HTNews.obj :  $(WWW_LIB)/HTNews.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTNews.c
+|
+
+$(OBJ)/HTParse.obj :  $(WWW_LIB)/HTParse.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTParse.c
+|
+
+$(OBJ)/HTPlain.obj :  $(WWW_LIB)/HTPlain.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTPlain.c
+|
+
+$(OBJ)/HTRules.obj :  $(WWW_LIB)/HTRules.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTRules.c
+|
+
+$(OBJ)/HTString.obj :  $(WWW_LIB)/HTString.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTString.c
+|
+
+$(OBJ)/HTStyle.obj :  $(WWW_LIB)/HTStyle.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTStyle.c
+|
+
+$(OBJ)/HTTelnet.obj :  $(WWW_LIB)/HTTelnet.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTTelnet.c
+|
+
+$(OBJ)/HTTP.obj :  $(WWW_LIB)/HTTP.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTTP.c
+|
+
+$(OBJ)/HTUU.obj :  $(WWW_LIB)/HTUU.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTUU.c
+|
+
+$(OBJ)/HTWSRC.obj :  $(WWW_LIB)/HTWSRC.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/HTWSRC.c
+|
+
+$(OBJ)/SGML.obj :  $(WWW_LIB)/SGML.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ $(WWW_LIB)/SGML.c
+|
+
+$(OBJ)/DefaultStyle.obj :  src/DefaultStyle.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/DefaultStyle.c
+|
+
+$(OBJ)/GridText.obj :  src/GridText.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/GridText.c
+|
+
+$(OBJ)/HTML.obj :  src/HTML.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/HTML.c
+|
+
+$(OBJ)/LYBookmark.obj :  src/LYBookmark.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYBookmark.c
+|
+
+$(OBJ)/LYCgi.obj :  src/LYCgi.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYCgi.c
+|
+
+$(OBJ)/LYCharSets.obj :  src/LYCharSets.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYCharSets.c
+|
+
+$(OBJ)/LYCharUtils.obj :  src/LYCharUtils.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYCharUtils.c
+|
+
+$(OBJ)/LYClean.obj :  src/LYClean.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYClean.c
+|
+
+$(OBJ)/LYCookie.obj :  src/LYCookie.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYCookie.c
+|
+
+$(OBJ)/LYCurses.obj :  src/LYCurses.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYCurses.c
+|
+
+$(OBJ)/LYDownload.obj :  src/LYDownload.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYDownload.c
+|
+
+$(OBJ)/LYEdit.obj :  src/LYEdit.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYEdit.c
+|
+
+$(OBJ)/LYEditmap.obj :  src/LYEditmap.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYEditmap.c
+|
+
+$(OBJ)/LYExit.obj :  src/LYExit.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYExit.c
+|
+
+$(OBJ)/LYExtern.obj :  src/LYExtern.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYExtern.c
+|
+
+$(OBJ)/LYForms.obj :  src/LYForms.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYForms.c
+|
+
+$(OBJ)/LYGetFile.obj :  src/LYGetFile.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYGetFile.c
+|
+
+$(OBJ)/LYHash.obj :  src/LYHash.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYHash.c
+|
+
+$(OBJ)/LYHistory.obj :  src/LYHistory.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYHistory.c
+|
+
+$(OBJ)/LYJump.obj :  src/LYJump.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYJump.c
+|
+
+$(OBJ)/LYKeymap.obj :  src/LYKeymap.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYKeymap.c
+|
+
+$(OBJ)/LYLeaks.obj :  src/LYLeaks.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYLeaks.c
+|
+
+$(OBJ)/LYList.obj :  src/LYList.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYList.c
+|
+
+$(OBJ)/LYLocal.obj :  src/LYLocal.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYLocal.c
+|
+
+$(OBJ)/LYMail.obj :  src/LYMail.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYMail.c
+|
+
+$(OBJ)/LYMain.obj :  src/LYMain.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYMain.c
+|
+
+$(OBJ)/LYMainLoop.obj :  src/LYMainLoop.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYMainLoop.c
+|
+
+$(OBJ)/LYMap.obj :  src/LYMap.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYMap.c
+|
+
+$(OBJ)/LYNews.obj :  src/LYNews.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYNews.c
+|
+
+$(OBJ)/LYOptions.obj :  src/LYOptions.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYOptions.c
+|
+
+$(OBJ)/LYPrint.obj :  src/LYPrint.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYPrint.c
+|
+
+$(OBJ)/LYPrettySrc.obj :  src/LYPrettySrc.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYPrettySrc.c
+|
+
+$(OBJ)/LYmktime.obj :  src/LYmktime.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYmktime.c
+|
+
+$(OBJ)/LYrcFile.obj :  src/LYrcFile.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYrcFile.c
+|
+
+$(OBJ)/LYReadCFG.obj :  src/LYReadCFG.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYReadCFG.c
+|
+
+$(OBJ)/LYSearch.obj :  src/LYSearch.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYSearch.c
+|
+
+$(OBJ)/LYSession.obj :  src/LYSession.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYSession.c
+|
+
+$(OBJ)/LYShowInfo.obj :  src/LYShowInfo.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYShowInfo.c
+|
+
+$(OBJ)/LYStrings.obj :  src/LYStrings.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYStrings.c
+|
+
+$(OBJ)/LYStyle.obj :  src/LYStyle.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYStyle.c
+|
+
+$(OBJ)/LYTraversal.obj :  src/LYTraversal.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYTraversal.c
+|
+
+$(OBJ)/LYUpload.obj :  src/LYUpload.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYUpload.c
+|
+
+$(OBJ)/LYUtils.obj :  src/LYUtils.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/LYUtils.c
+|
+
+$(OBJ)/parsdate.obj :  src/parsdate.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/parsdate.c
+|
+
+$(OBJ)/TRSTable.obj :  src/TRSTable.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/TRSTable.c
+|
+
+$(OBJ)/Xsystem.obj :  src/Xsystem.c
+  $(BCC32) -P- -c @&&|
+ $(CEAT_lynxdexe) $(CC_FLAGS) -o$@ src/Xsystem.c
+|
+
+# Compiler configuration file
+BccW32.cfg : 
+   Copy &&|
+-R
+-vi
+-w
+-A-
+-tWM
+-wcpt
+-wrpt
+-wrng
+-w-voi
+-w-ret
+-w-sus
+-w-dup
+-w-big
+-w-ext
+-w-zdi
+-w-bei
+-w-obi
+-w-ofp
+-w-eas
+-w-hid
+-w-ncf
+-w-ibc
+-w-dsz
+-w-nst
+-w-mpc
+-w-mpd
+-w-ntd
+-w-nvf
+-w-hch
+-w-inl
+-w-lin
+-w-lvc
+-w-pia
+-w-def
+-w-nod
+-w-pro
+-w-rvl
+-wccc
+-w-aus
+-w-par
+-w-rch
+-w-eff
+-w-ill
+-w-ias
+-w-msg
+-O2
+-5
+-d
+-K
+-a4
+-r
+-w-stu
+-wbbf
+-w-dpu
+-wcln
+-wsig
+-wucp
+-g255
+-H-
+-v-
+-WC
+-WM
+-wamb
+| $@
+
diff --git a/makefile.in b/makefile.in
new file mode 100644
index 00000000..692012f1
--- /dev/null
+++ b/makefile.in
@@ -0,0 +1,504 @@
+# $LynxId: makefile.in,v 1.121 2012/02/20 02:08:17 tom Exp $
+##makefile for lynx
+
+SHELL		= @CONFIG_SHELL@
+CDPATH		= .
+
+.SUFFIXES:
+@SET_MAKE@
+prefix		= @prefix@
+exec_prefix	= @exec_prefix@
+top_srcdir	= @top_srcdir@
+srcdir		= @srcdir@
+builddir	= .
+VPATH		= $(srcdir)
+
+CC		= @CC@
+CFLAGS		= @CFLAGS@
+DEFS		= @DEFS@
+CPPFLAGS	= @CPPFLAGS@
+LINT		= @LINT@
+ETAGS		= @ETAGS@
+
+x		= @EXEEXT@
+o		= .@OBJEXT@
+
+LIBS		= @LIBS@
+
+INSTALL		= @INSTALL@
+INSTALL_PROGRAM	= @INSTALL_PROGRAM@
+INSTALL_DATA	= @INSTALL_DATA@
+transform	= @program_transform_name@
+
+LN_S		= @LN_S@
+
+TAR		= @TAR@
+TAR_UP		= $(TAR) @TAR_UP_OPTIONS@ @TAR_PIPE_OPTIONS@
+TAR_DOWN	= $(TAR) @TAR_DOWN_OPTIONS@ @TAR_PIPE_OPTIONS@
+
+# $Format: "LYNX_VERSION	= $ProjectVersion$"$
+LYNX_VERSION	= 2.8.8dev.11
+
+## This is the version which we are developing (or, upon release, make this
+## the same).  Use no dots in the name, since it must work on VMS and MS-DOS.
+VERSION		= 2-8-8
+
+##this is the name of the directory the lynx source code is in.
+##(e.g., lynx2-8-7, not the full path)
+lynxdir= lynx$(VERSION)
+lynxname= lynx$(VERSION)
+
+## The 'DESTDIR' variable allows you to install the program into a different
+## location, e.g., for packaging, without affecting the compiled-in pathnames.
+DESTDIR= @DESTDIR@
+
+## Where you want lynx installed
+bindir= @bindir@
+BINDIR= $(DESTDIR)$(bindir)
+
+## Where you want the lynx man file installed
+mandir= @mandir@/man1
+MANDIR= $(DESTDIR)$(mandir)
+
+## Where you want the lynx.cfg file installed
+sysconfdir= @sysconfdir@
+SYSCONFDIR= $(DESTDIR)$(sysconfdir)
+
+## Where you want the doc-files installed
+docdir    = @datadir@/lynx_doc
+DOCDIR    = $(DESTDIR)$(docdir)
+
+## Where you want the help-files installed
+helpdir   = @datadir@/lynx_help
+HELPDIR   = $(DESTDIR)$(helpdir)
+
+##set the relative location of the WWW library Implementation directory,
+##from this directory
+##do not set this to be an absolute path!!!
+WWW_DIR   = $(builddir)/WWW/Library/Implementation
+
+##set the relative location of the message-file directory
+##do not set this to be an absolute path!!!
+PO_DIR    = $(builddir)/po
+PO_SRCDIR = $(srcdir)/po
+
+##set the relative location of the main source-directory
+##do not set this to be an absolute path!!!
+SRC_DIR   = $(builddir)/src
+
+##set the relative location of the character-translation data directory
+##do not set this to be an absolute path!!!
+CHR_DIR   = $(SRC_DIR)/chrtrans
+
+## 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@
+
+# Path of scripts directory
+scripts_dir=$(srcdir)/scripts
+
+MAKE_RECUR = $(MAKE) DESTDIR="$(DESTDIR)" CC="$(CC)"
+
+@LYNXCFG_MAKE@CFG2HTML = alphatoc.html body.html cattoc.html
+
+# !!!!!!!!!!! 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
+# "Alert!:  Unable to connect to remote host" whenever you try to
+# access a host other than localhost and have made Lynx without it.
+# See the PROBLEMS file for more information.
+#RESOLVLIB= -lresolv
+
+# !!!!!!!!!!!!!  DIRECT WAIS ACCESS !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+# If you are adding direct wais access you must fill in the
+# location of wais.a, client.a and the standard math library, libm.a.
+# You can pick up the most current freeWAIS sources from
+#	ftp://ftp.cnidr.org/pub/NIDR.tools/freewais
+# If you are using freeWAIS-0.202 or older, include -DDECLARE_WAIS_LOGFILES
+# in your SITE_DEFS.
+# Please put an ABSOLUTE address here if you want it to work!
+#WAISLIB= ../../freeWAIS-0.202/bin/client.a ../../freeWAIS-0.202/bin/wais.a /usr/lib/libm.a
+
+# !!!!!!!!!!!!! SLANG Support (For color version of Lynx). !!!!!!!!!!!!!!!!
+# The slang library is an alternative to curses, developed by John E. Davis
+# (davis@space.mit.edu).  Version 0.99-27 or higher is available from
+#	ftp://space.mit.edu/pub/davis
+# It provides color support for Lynx.
+
+# !!!!!!!!!!!!! NCURSES Support (For color version of Lynx). !!!!!!!!!!!!!!
+# If you need ncurses, the latest version can always be found
+# in ftp://invisible-island.net/ncurses/
+# or ftp://ftp.gnu.org/pub/gnu/
+
+# Also be sure to check out the compilation symbols in userdefs.h
+# before building Lynx!
+
+# If you apply patches which require linking to site-specific libraries, set
+# SITE_LIBS to those libraries.
+SITE_LIBS= # Your libraries here
+
+# Set SITE_LYDEFS to one or more of the defines for the WWW Library:
+SITE_LYDEFS = # Your defines here
+
+# Set SITE_DEFS to one or more of the defines for lynx below:
+SITE_DEFS = # Your defines here
+
+# defines for which there are no configure options:
+# -DHP_TERMINAL    For DIM workaround to REVERSE problems on HP terminals.
+# -DIGNORE_CTRL_C  Define if Control-C shouldn't exit lynx.
+# -DNO_RULES       Disables CERN-style access rules (see lynx.cfg).
+# -DMISC_EXP       Enable some truly experimental stuff
+# -DSHORTENED_RBIND  For a SOCKSified lynx with the short version of Rbind.
+# -DSLANG_MBCS_HACK prevent cutoff lines when using UTF8 console (slang only)
+# -DUSE_VASPRINT   Use vasprintf() function
+#
+# if you are linking to freeWAIS-0.202 or older, you should define this
+# in SITE_DEFS
+#
+# -DDECLARE_WAIS_LOGFILES
+#
+# if you have the reverse clear screen problem of some SUN4 systems you
+# should define this in SITE_DEFS
+#
+# -DREVERSE_CLEAR_SCREEN_PROBLEM
+#
+# if you have an SVR4 system with the "type any key" problem, try defining
+# this in LYFLAGS (SITE_LYDEFS) and SITE_DEFS
+#
+# -DSVR4_BSDSELECT
+#
+# Old Data General systems may need this in their SITE_LYDEFS
+# for their inet_addr(host) calls.
+#
+# -DDGUX_OLD
+
+# Many other defines have configure options  (see INSTALLATION, Section II-1c.):
+#
+# for installation of local execution links, please see the file userdefs.h
+
+WWW_CFLAGS = \
+	LY_CFLAGS="$(CFLAGS)" \
+	CPPFLAGS="$(CPPFLAGS)" \
+	LYFLAGS="$(SITE_LYDEFS)"
+
+SRC_CFLAGS = \
+	CFLAGS="$(CFLAGS)" \
+	CPPFLAGS="$(CPPFLAGS)" \
+	LIBS="$(LIBS) $(RESOLVLIB) $(WAISLIB) $(SITE_LIBS)" \
+	SITE_DEFS="$(SITE_DEFS)" \
+	WWWINC=$(WWW_DIR) \
+	WWWLIB="../$(WWW_DIR)/libwww.a"
+
+actual_PROG  = `echo lynx|    sed '$(transform)'`
+binary_PROG  = $(actual_PROG)$x
+
+all lynx$x: cfg_defs.h LYHelp.h
+@MSG_DIR_MAKE@	$(SHELL) $(scripts_dir)/fixtext.sh $(srcdir)/LYMessages_en.h >LYMessages.c
+@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR)
+	cd $(WWW_DIR) && $(MAKE_RECUR) $(WWW_CFLAGS)
+	cd $(SRC_DIR) && $(MAKE_RECUR) all $(SRC_CFLAGS)
+
+lint:
+	cd $(WWW_DIR) && $(MAKE_RECUR) LINT="$(LINT)" $(WWW_CFLAGS) $@
+	cd $(SRC_DIR) && $(MAKE_RECUR) LINT="$(LINT)" $(SRC_CFLAGS) $@
+	cd $(CHR_DIR) && $(MAKE_RECUR) LINT="$(LINT)" $@
+
+tags:
+	cd $(WWW_DIR) && $(MAKE_RECUR) $(WWW_CFLAGS) $@
+	cd $(SRC_DIR) && $(MAKE_RECUR) $(SRC_CFLAGS) $@
+	cd $(CHR_DIR) && $(MAKE_RECUR) $@
+
+etags:
+	$(ETAGS) *.[ch] */*.[ch] */*/*.[ch] */*/*/*.[ch]
+
+help:
+	@echo
+	@echo "Please run make with one of the following arguments"
+	@echo "all        -- to make the executable, put it in this directory"
+	@echo "clean      -- removes all '$o' and 'core' files"
+	@echo "depend     -- use makedepend to generate header-dependencies"
+	@echo "tar        -- runs clean, removes executable, and tars the whole directory"
+	@echo "compress   -- runs tar, then compresses the result"
+	@echo "zip        -- runs clean, removes executable, and zips the whole directory"
+	@echo
+
+##Miscellaneous actions
+clean:
+	rm -f WWW/Library/*/*.[aoib]
+	rm -f WWW/Library/*/.created
+	cd $(WWW_DIR) && $(MAKE_RECUR) $@
+	cd $(SRC_DIR) && $(MAKE_RECUR) $@
+@MSG_DIR_MAKE@	rm -f LYMessages.c
+@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR) $@
+	rm -f *.b $(SRC_DIR)/lynx$x *.leaks cfg_defs.h LYHelp.h lint.*
+@LYNXCFG_MAKE@	-rm -f $(CFG2HTML)
+	rm -f help_files.sed
+	rm -f core *.core
+
+depend: cfg_defs.h LYHelp.h
+	cd $(WWW_DIR) && $(MAKE_RECUR) $@
+	cd $(SRC_DIR) && $(MAKE_RECUR) $@
+
+distclean: clean
+	-rm -f WWW/Library/*/*~
+	-rm -f WWW/Library/*/*.bak
+	-rm -rf $(SRC_DIR)/obsolete
+	-cd $(WWW_DIR) && $(MAKE_RECUR) $@
+	-cd $(SRC_DIR) && $(MAKE_RECUR) $@
+	-cd $(CHR_DIR) && $(MAKE_RECUR) $@
+@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR) $@
+@MSG_DIR_MAKE@	-rmdir $(PO_DIR)
+	-rm -f *~ *.bak *.sav tags TAGS
+	-rm -f $(WWW_DIR)/makefile $(SRC_DIR)/makefile $(CHR_DIR)/makefile
+@SRCDIR_CLEAN@	-rmdir $(WWW_DIR) && rmdir WWW/Library && rmdir WWW
+@SRCDIR_CLEAN@	-rmdir $(CHR_DIR) && rmdir $(SRC_DIR)
+	-rm -f makefile lynx_cfg.h config.status config.log config.cache
+	-rm -f lynx$x
+
+maintainer-clean: distclean
+	-find . -type f -name '*.rej' -exec rm -f {} \;
+	-find . -type f -name '*.orig' -exec rm -f {} \;
+	-rm -rf WWW/Library/*/obsolete
+	-rm -f Lynx.prj .*_aux
+
+tar:  clean
+	rm -f lynx$x
+	$(MAKE) save
+
+turnover:	clean
+	$(MAKE) save
+
+zipcompress: compress zip
+	echo "done!"
+
+zip:  clean
+	rm -f $(SRC_DIR)/lynx$x
+	rm -f lynx$x
+	rm -f $(SRC_DIR)/a.out
+	rm -f ../$(lynxname).zip
+	cd ..; rm -f $(lynxname).zip; zip -r $(lynxname).zip $(lynxdir)
+
+save:
+	cd ..; rm -f $(lynxname).tar; $(TAR_UP) $(lynxdir) > $(lynxname).tar
+
+compress: tar
+	cd ..; rm -f $(lynxname).tar.Z; compress -f -v $(lynxname).tar
+
+# Directory containing reference source for patch generation,
+#     either absolute or relative to $(top_srcdir)/..
+REFDIR=orig/$(lynxdir)
+
+lynx.patch: $(top_srcdir) $(top_srcdir)/CHANGES
+	- cd $(top_srcdir)/.. && cd $(REFDIR) && { rm -f \
+		config.log \
+		config.status \
+		lynx_cfg.h \
+			; \
+		for I in . $(SRC_DIR) $(WWW_DIR); do ( set +e; \
+			( set -x; cd $$I && rm -f *.orig *.rej makefile ); : ); \
+		done; }
+	( cd $(top_srcdir)/..; echo "%%% Created `date` by target $@. %%%"; \
+	   if diff -bru /dev/null /dev/null;		     \
+		   then diff -bru $(REFDIR) $(lynxdir);	     \
+		   else diff -brc $(REFDIR) $(lynxdir); fi ) \
+		| grep -v '^Common' \
+		| grep -v '^Binary files ' \
+		| grep -v '^Only ' | tee $@ | egrep '^\-\-\- .*$(lynxdir)'
+
+install: install-bin install-man install-cfg @INSTALL_LSS@
+	@echo
+	@echo "Use $(MAKE) install-help to install the help-files"
+	@echo "Use $(MAKE) install-doc to install extra documentation files"
+	@echo
+
+install-full: install install-help install-doc
+	@echo Full installation complete.
+
+install-bin: $(BINDIR) lynx$x
+@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR) install
+	@ECHO_CC@$(SHELL) -c \
+	'if test -f $(BINDIR)/$(binary_PROG) ; then \
+	      mv -f $(BINDIR)/$(binary_PROG) $(BINDIR)/lynx.old; fi'
+	$(INSTALL_PROGRAM) lynx$x $(BINDIR)/$(binary_PROG)
+
+install-man : $(MANDIR)
+	$(INSTALL_DATA) $(srcdir)/lynx.man $(MANDIR)/$(actual_PROG).1
+
+install-doc : $(DOCDIR) $(HELPDIR)
+	@echo Copying sample files
+	(cd $(srcdir) && $(TAR_UP) C[HO]* PROBLEMS README docs samples test ) | \
+			       ( cd $(DOCDIR) && chmod -R u+w . && $(TAR_DOWN) )
+	$(SHELL) -c 'if test "$(COMPRESS_PROG)" != "" ; then \
+		(cd $(DOCDIR) && $(COMPRESS_PROG) -f docs/CHANGES*.[0-9] docs/*.announce ) \
+	fi'
+	$(SHELL) -c 'for name in COPYING COPYHEADER; do \
+		cd $(HELPDIR) && rm -f $$name ;\
+		cd $(HELPDIR) && ( $(LN_S) $(docdir)/$$name . || cp $(DOCDIR)/$$name . );\
+		done'
+	-$(SHELL) -c 'case `id|sed -e "s/(.*//"` in uid=0) chown -R root $(DOCDIR);; esac'
+
+# HPUX 'sed' does not seem to like '=' as pattern delimiter.
+# We cannot use '%' because it may appear in a URL.
+# Andrew filesystem uses '@'.
+# So we limit sed delimiters to '!' and '%', depending on the expected text.
+FIX_SED = tr '=' '"'
+
+LYNX_URL='http://lynx.isc.org/release/lynx2-8-7'
+LYNXDOCS_URL='$(LYNX_URL)/docs/'
+LYNXHELP_URL='$(LYNX_URL)/lynx_help/'
+
+@LYNXCFG_MAKE@$(CFG2HTML) :
+@LYNXCFG_MAKE@	@echo 'Making htmlized lynx.cfg'
+@LYNXCFG_MAKE@	cd $(SRC_DIR) && $(MAKE_RECUR) LYReadCFG.i
+@LYNXCFG_MAKE@	@-rm -f $(CFG2HTML)
+@LYNXCFG_MAKE@	sed -n -e '/Config_Type  *Config_Table/,/{0, *0, *0}/ p' $(SRC_DIR)/LYReadCFG.i | \
+@LYNXCFG_MAKE@	sed  -e 's/ *{ *"\([^"]*\)".*/\1/' | \
+@LYNXCFG_MAKE@	perl $(scripts_dir)/cfg2html.pl -ams $(srcdir)/lynx.cfg
+@LYNXCFG_MAKE@	-rm -f $(SRC_DIR)/LYReadCFG.i
+
+help_files.sed : makefile $(srcdir)/lynx_help/help_files.txt
+	@echo Constructing sed-script $@
+	@-rm -f $@ help_files.tmp
+	@cat $(srcdir)/lynx_help/help_files.txt > help_files.tmp
+@LYNXDOC_MAKE@	@ECHO_CC@echo 's!$(LYNXDOCS_URL)!file://$(docdir)!g' >> help_files.tmp
+@LYNXCFG_MAKE@	@ECHO_CC@echo 's!$(LYNXHELP_URL)alphatoc.html!alphatoc.html!g' >> help_files.tmp
+@LYNXCFG_MAKE@	@ECHO_CC@echo 's!$(LYNXHELP_URL)cattoc.html!cattoc.html!g' >> help_files.tmp
+@LYNXCFG_MAKE@	@ECHO_CC@echo 's!alphatoc\.html!alphatoc.html$(COMPRESS_EXT)!g' >> help_files.tmp
+@LYNXCFG_MAKE@	@ECHO_CC@echo 's!cattoc\.html!cattoc.html$(COMPRESS_EXT)!g' >> help_files.tmp
+@LYNXCFG_MAKE@	@ECHO_CC@echo 's!body\.html!body.html$(COMPRESS_EXT)!g' >> help_files.tmp
+	@ECHO_CC@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%' \
+		help_files.tmp | $(FIX_SED) > $@
+	@echo Appending interim-fix for existing html files to $@
+	@ECHO_CC@sed	-e '/^#/d' -e '/[:@]/d' -e '/^$$/d' \
+		-e 's%\(.*\)=\(.*\.html\)$$%s=\2=\2$(COMPRESS_EXT)=g%' \
+		-e 's%\.html=%\\.html=%' \
+		help_files.tmp | $(FIX_SED) >> $@
+	@ECHO_CC@if test -n "$(COMPRESS_EXT)"; then echo 's%\$(COMPRESS_EXT)\$(COMPRESS_EXT)%$(COMPRESS_EXT)%g' >> $@; fi
+	@-rm -f help_files.tmp
+
+install-help : $(CFG2HTML) help_files.sed $(HELPDIR)
+	-$(SHELL) -c 'if cd "$(HELPDIR)" ; then \
+		WD=`pwd` ; \
+		TAIL=`basename "$(helpdir)"` ; \
+		HEAD=`echo "$$WD"|sed -e "s,/$${TAIL}$$,,"` ; \
+		test "x$$WD" != "x$$HEAD" && rm -fr * ; \
+		fi'
+	test -d $(HELPDIR)/keystrokes || mkdir $(HELPDIR)/keystrokes
+	@echo Translating/copying html files
+@LYNXCFG_MAKE@	@$(SHELL) -c 'for f in $(CFG2HTML) ; do \
+@LYNXCFG_MAKE@		sed -f help_files.sed $$f > $(HELPDIR)/$$f ; \
+@LYNXCFG_MAKE@		done'
+	@ECHO_CC@$(SHELL) -c 'sed_prog=`pwd`/help_files.sed && \
+		cd $(srcdir)/lynx_help && \
+		dirs=keystrokes && \
+		files="*.html */*.html" && \
+		for f in $$files ; do \
+			sed -f $$sed_prog $$f > $(HELPDIR)/$$f ; \
+		done && \
+		if test "$(COMPRESS_PROG)" != "" ; then \
+			(cd $(HELPDIR) && $(COMPRESS_PROG) $$files ) \
+		fi'
+	@echo Updating $(sysconfdir)/lynx.cfg
+	@ECHO_CC@$(SHELL) -c \
+	'if test -f $(SYSCONFDIR)/lynx.cfg ; then \
+		mv $(SYSCONFDIR)/lynx.cfg $(SYSCONFDIR)/lynx.tmp ; \
+	else \
+		cp $(srcdir)/lynx.cfg $(SYSCONFDIR)/lynx.tmp ; \
+	fi'
+	@echo Updating $(sysconfdir)/lynx.cfg to point to installed help-files
+	@ECHO_CC@sed	-e '/^HELPFILE:http/s!^!#!' \
+		-e '/^#HELPFILE:file/s!#!!' \
+		$(SYSCONFDIR)/lynx.tmp | \
+	$(SHELL) $(scripts_dir)/cfg_path.sh lynx_help $(helpdir) | \
+	$(SHELL) $(scripts_dir)/cfg_path.sh lynx_doc  $(helpdir) | \
+	sed	-e '/^HELPFILE:file/s!$$!$(COMPRESS_EXT)!' \
+		-e '/^HELPFILE:file/s!$(COMPRESS_EXT)$(COMPRESS_EXT)$$!$(COMPRESS_EXT)!' \
+		>$(SYSCONFDIR)/lynx.cfg
+	chmod 644 $(SYSCONFDIR)/lynx.cfg
+	-rm -f $(SYSCONFDIR)/lynx.tmp
+
+LYHelp.h : help_files.sed $(srcdir)/LYHelp.hin
+	@echo Creating $@
+	@sed -f help_files.sed $(srcdir)/LYHelp.hin > $@
+	@echo '**********************************************'
+	@echo
+	@$(SHELL) -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 '**********************************************'
+
+cfg_defs.h : $(scripts_dir)/cfg_defs.sh $(scripts_dir)/cfg_edit.sh config.cache lynx_cfg.h
+	@rm -f $@
+	$(SHELL) -c 'SHELL=$(SHELL) $(SHELL) $(scripts_dir)/cfg_defs.sh $(srcdir)'
+
+install-cfg : $(SYSCONFDIR)
+	@$(SHELL) $(scripts_dir)/install-cfg.sh "$(INSTALL_DATA)" $(srcdir)/lynx.cfg $(SYSCONFDIR)/lynx.cfg
+
+install-lss : $(SYSCONFDIR)
+	@$(SHELL) $(scripts_dir)/install-lss.sh "$(INSTALL_DATA)" $(srcdir)/samples/lynx.lss $(SYSCONFDIR)/lynx.lss
+
+uninstall ::
+@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR) uninstall
+	-rm -f $(BINDIR)/$(binary_PROG)
+	-rm -f $(MANDIR)/$(actual_PROG).1
+	-rm -f $(SYSCONFDIR)/lynx.cfg
+	-rm -f $(SYSCONFDIR)/lynx.lss
+
+uninstall \
+uninstall-help ::
+	-$(SHELL) -c 'if test -d "$(HELPDIR)" ; then \
+		WD=`cd "$(HELPDIR)" && pwd` ; \
+		TAIL=`basename "$(helpdir)"` ; \
+		HEAD=`echo "$$WD"|sed -e "s,/$${TAIL}$$,,"` ; \
+		test "x$$WD" != "x$$HEAD" && rm -rf "$(HELPDIR)"; \
+		fi'
+
+uninstall \
+uninstall-doc ::
+	-$(SHELL) -c 'if test -d "$(DOCDIR)" ; then \
+		WD=`cd "$(DOCDIR)" && pwd` ; \
+		TAIL=`basename "$(docdir)"` ; \
+		HEAD=`echo "$$WD"|sed -e "s,/$${TAIL}$$,,"` ; \
+		test "x$$WD" != "x$$HEAD" && rm -rf "$(DOCDIR)"; \
+		fi'
+	-$(SHELL) -c 'if test -d "$(HELPDIR)" ; then \
+		WD=`cd "$(HELPDIR)" && pwd` ; \
+		TAIL=`basename "$(helpdir)"` ; \
+		HEAD=`echo "$$WD"|sed -e "s,/'$${TAIL}'$$,,"` ; \
+		test "x$$WD" != "x$$HEAD" ; \
+		cd "$(HELPDIR)" && rm -f COPYING COPYHEADER ; \
+		fi'
+
+update-po:
+	rsync -Lrtvz  translationproject.org::tp/latest/lynx/  $(PO_SRCDIR)
+	test -f $(PO_SRCDIR)/makefile && cd $(PO_SRCDIR) && $(MAKE_RECUR) $@
+
+preinstall :
+	@ echo ''
+	@ echo '** Configuration summary for LYNX $(LYNX_VERSION):'
+	@ echo ''
+	@ echo '       program name: '$(actual_PROG)
+	@ echo ''
+	@ echo '      bin directory: '$(BINDIR)
+	@ echo '   config directory: '$(SYSCONFDIR)
+	@ echo '      man directory: '$(MANDIR)
+	@ echo '     help directory: '$(HELPDIR)
+	@ echo '      doc directory: '$(DOCDIR)
+
+$(BINDIR) \
+$(MANDIR) \
+$(SYSCONFDIR) \
+$(HELPDIR) \
+$(DOCDIR) :
+	mkdir -p $@
diff --git a/makefile.msc b/makefile.msc
new file mode 100644
index 00000000..ca166495
--- /dev/null
+++ b/makefile.msc
@@ -0,0 +1,509 @@
+# $LynxId: makefile.msc,v 1.27 2012/02/10 19:30:03 tom Exp $
+#
+# Makefile for `Lynx' browser for Microsoft Visual C++ 4.2 or later
+#
+
+###############################################################################
+# These are the symbols that you may wish to set on the command line:
+#	DEBUG    - nonempty for debugging
+#	ETC_LIB  - the directory containing PDCurses and ZLib (libraries and headers)
+#	OPT_CS   - nonempty to use color-style
+#	OPT_SOCK - nonempty to build with winsock2
+#	OPT_SSL  - nonempty to build with OpenSSL
+#	SSL_DIR  - directory containing OpenSSL
+#	SCREEN   - name of screen-library (pdcurses)
+#	PROGNAME - name of executable (lynx.exe)
+###############################################################################
+
+CC       = cl
+LD       = link
+
+SRC_DIR = src
+WWW_DIR = WWW\Library\Implementation
+
+# pdcurses.lib panel.lib dirent.obj curses.h panel.h dirent.h
+!if "$(ETC_LIB)" == ""
+ETC_LIB = lib
+!endif
+
+# Select a screen-library
+!if "$(SCREEN)" == ""
+SCREEN = pdcurses
+!endif
+
+# Enable the CS_DEFS and CS_OBJS lines if you wish to build the color-style
+# configuration.
+!if "$(OPT_CS)" != ""
+CS_DEFS = /D "CHAR_BIT=8" /D "USE_COLOR_STYLE"
+CS_OBJS = "LYHash.obj" "LYStyle.obj"
+!endif
+
+# Enable SOCK_DEFS if you wish to build with winsock2.
+!if "$(OPT_SOCK)" != ""
+SOCK_DEFS = /D "USE_WINSOCK2_H" /D "_WIN32_WINNT=0x0400"
+!endif
+
+# Enable these to build with OpenSSL, adjusting SSL_DIR as needed.
+!if "$(OPT_SSL)" != ""
+!if "$(SSL_DIR)" == ""
+SSL_DIR = C:\OpenSSL
+!endif
+SSL_DEFS = /D "USE_SSL" -I "$(SSL_DIR)\include" -I"$(SSL_DIR)\include\openssl"
+SSL_LIBS = "$(SSL_DIR)\lib\ssleay32.lib" "$(SSL_DIR)\lib\libeay32.lib"
+!endif
+
+!if "$(SCREEN)" == "pdcurses"
+SCREEN_DEFS = /D "PDCURSES" /D "COLOR_CURSES" /D "FANCY_CURSES"
+SCREEN_LIB  = pdcurses
+!else
+SCREEN_DEFS = /D "USE_SLANG"
+SCREEN_LIB  = wslang32
+!endif
+
+INCLUDES = \
+ /I "." \
+ /I "$(SRC_DIR)" \
+ /I "$(SRC_DIR)\chrtrans" \
+ /I "$(WWW_DIR)" \
+ /I "$(ETC_LIB)"
+DEFS = /D "WIN32_LEAN_AND_MEAN" $(CS_DEFS) $(SOCK_DEFS) $(SSL_DEFS) $(SCREEN_DEFS) \
+ /D "ACCESS_AUTH" \
+ /D "CJK_EX" \
+ /D "DIRED_SUPPORT" \
+ /D "DISP_PARTIAL" \
+ /D "DONT_HAVE_TM_GMTOFF" \
+ /D "DOSPATH" \
+ /D "USE_ALT_BINDINGS" \
+ /D "EXP_NESTED_TABLES" \
+ /D "HAVE_KEYPAD" \
+ /D "LONG_LIST" \
+ /D "NDEBUG" \
+ /D "NOSIGHUP" \
+ /D "NOUSERS" \
+ /D "NO_CONFIG_INFO" \
+ /D "NO_CUSERID" \
+ /D "NO_FILIO_H" \
+ /D "NO_TTYTYPE" \
+ /D "NO_UNISTD_H" \
+ /D "NO_UTMP" \
+ /D "OK_OVERRIDE" \
+ /D "SH_EX" \
+ /D "USE_CMD_LOGGING" \
+ /D "USE_EXTERNALS" \
+ /D "USE_FILE_UPLOAD" \
+ /D "USE_JUSTIFY_ELTS" \
+ /D "USE_MULTIBYTE_CURSES" \
+ /D "USE_PERSISTENT_COOKIES" \
+ /D "USE_PRETTYSRC" \
+ /D "USE_READPROGRESS" \
+ /D "USE_SCROLLBAR" \
+ /D "USE_SOURCE_CACHE" \
+ /D "USE_BZLIB" \
+ /D "USE_ZLIB" \
+ /D "WIN32" \
+ /D "WIN_EX" \
+ /D "_CONSOLE" \
+ /D "_MBCS" \
+ /D "_WINDOWS" \
+ /D "__WIN32__" \
+ /D LY_MAXPATH="1024"  \
+ /D _WIN_CC="1" \
+ /D VC="2.14FM"
+
+# /GX == /EHsc == 
+# /EHs enable C++ EH (no SEH exceptions)  /EHa enable C++ EH (w/ SEH exceptions)
+# /EHc extern "C" defaults to nothrow     
+!if "$(DEBUG)" == ""
+CFLAGS   = /nologo /MT /W3 /EHsc /O2 /c
+LDFLAGS  = /nologo /subsystem:console /incremental:no /machine:I386
+!else
+CFLAGS   = /nologo /MT /W3 /EHsc /Zi /c
+LDFLAGS  = /debug /nologo /subsystem:console /incremental:no /machine:I386
+!endif
+
+LIBS     = kernel32.lib user32.lib wsock32.lib advapi32.lib /NODEFAULTLIB:libc\
+ $(ETC_LIB)\$(SCREEN_LIB).lib $(ETC_LIB)\libbz2.lib $(ETC_LIB)\zlib.lib dirent.obj $(SSL_LIBS)
+
+COMPILE = $(CC) $(CFLAGS) $(INCLUDES) $(DEFS)
+LINK    = $(LD) $(LDFLAGS) /map:lynx.map /out:$@
+
+OBJS = $(CS_OBJS) \
+	"DefaultStyle.obj" \
+	"GridText.obj" \
+	"HTAABrow.obj" \
+	"HTAAProt.obj" \
+	"HTAAUtil.obj" \
+	"HTAccess.obj" \
+	"HTAlert.obj" \
+	"HTAnchor.obj" \
+	"HTAssoc.obj" \
+	"HTAtom.obj" \
+	"HTBTree.obj" \
+	"HTChunk.obj" \
+	"HTDOS.obj" \
+	"HTFTP.obj" \
+	"HTFWriter.obj" \
+	"HTFile.obj" \
+	"HTFinger.obj" \
+	"HTFormat.obj" \
+	"HTGopher.obj" \
+	"HTGroup.obj" \
+	"HTInit.obj" \
+	"HTLex.obj" \
+	"HTList.obj" \
+	"HTMIME.obj" \
+	"HTML.obj" \
+	"HTMLDTD.obj" \
+	"HTMLGen.obj" \
+	"HTNews.obj" \
+	"HTParse.obj" \
+	"HTPlain.obj" \
+	"HTRules.obj" \
+	"HTString.obj" \
+	"HTStyle.obj" \
+	"HTTCP.obj" \
+	"HTTP.obj" \
+	"HTTelnet.obj" \
+	"HTUU.obj" \
+	"HTWSRC.obj" \
+	"LYBookmark.obj" \
+	"LYCgi.obj" \
+	"LYCharSets.obj" \
+	"LYCharUtils.obj" \
+	"LYClean.obj" \
+	"LYCookie.obj" \
+	"LYCurses.obj" \
+	"LYDownload.obj" \
+	"LYEdit.obj" \
+	"LYEditmap.obj" \
+	"LYExtern.obj" \
+	"LYForms.obj" \
+	"LYGetFile.obj" \
+	"LYHistory.obj" \
+	"LYJump.obj" \
+	"LYKeymap.obj" \
+	"LYLeaks.obj" \
+	"LYList.obj" \
+	"LYLocal.obj" \
+	"LYMail.obj" \
+	"LYMain.obj" \
+	"LYMainLoop.obj" \
+	"LYMap.obj" \
+	"LYNews.obj" \
+	"LYOptions.obj" \
+	"LYPrettySrc.obj" \
+	"LYPrint.obj" \
+	"LYReadCFG.obj" \
+	"LYSearch.obj" \
+	"LYSession.obj" \
+	"LYShowInfo.obj" \
+	"LYStrings.obj" \
+	"LYTraversal.obj" \
+	"LYUpload.obj" \
+	"LYUtils.obj" \
+	"parsdate.obj" \
+	"LYexit.obj" \
+	"LYmktime.obj" \
+	"LYrcFile.obj" \
+	"SGML.obj" \
+	"TRSTable.obj" \
+	"UCAuto.obj" \
+	"UCAux.obj" \
+	"UCdomap.obj" \
+	"Xsystem.obj" \
+	"LYIcon.obj"
+
+
+# Dependencies for building
+
+.SUFFIXES : .i
+.c.i :
+	$(CC) $(INCLUDES) $(DEFS) /P $<
+
+!if "$(PROGNAME)" == ""
+PROGNAME = lynx.exe
+!endif
+
+all : $(PROGNAME)
+
+clean :
+	-del *.map
+	-del *.obj
+	-del *.res
+	-del/f/s/q *.i
+
+$(PROGNAME) : $(OBJS) dirent.obj
+	$(LINK) $(OBJS) $(LIBS)
+
+DefaultStyle.obj : $(SRC_DIR)\DefaultStyle.c
+	$(COMPILE) $(SRC_DIR)\DefaultStyle.c
+
+GridText.obj : $(SRC_DIR)\GridText.c
+	$(COMPILE) $(SRC_DIR)\GridText.c
+
+HTAlert.obj : $(SRC_DIR)\HTAlert.c
+	$(COMPILE) $(SRC_DIR)\HTAlert.c
+
+HTFWriter.obj : $(SRC_DIR)\HTFWriter.c
+	$(COMPILE) $(SRC_DIR)\HTFWriter.c
+
+HTInit.obj : $(SRC_DIR)\HTInit.c
+	$(COMPILE) $(SRC_DIR)\HTInit.c
+
+HTML.obj : $(SRC_DIR)\HTML.c
+	$(COMPILE) $(SRC_DIR)\HTML.c
+
+LYBookmark.obj : $(SRC_DIR)\LYBookmark.c
+	$(COMPILE) $(SRC_DIR)\LYBookmark.c
+
+LYCgi.obj : $(SRC_DIR)\LYCgi.c
+	$(COMPILE) $(SRC_DIR)\LYCgi.c
+
+LYCharSets.obj : $(SRC_DIR)\LYCharSets.c
+	$(COMPILE) $(SRC_DIR)\LYCharSets.c
+
+LYCharUtils.obj : $(SRC_DIR)\LYCharUtils.c
+	$(COMPILE) $(SRC_DIR)\LYCharUtils.c
+
+LYClean.obj : $(SRC_DIR)\LYClean.c
+	$(COMPILE) $(SRC_DIR)\LYClean.c
+
+LYCookie.obj : $(SRC_DIR)\LYCookie.c
+	$(COMPILE) $(SRC_DIR)\LYCookie.c
+
+LYCurses.obj : $(SRC_DIR)\LYCurses.c
+	$(COMPILE) $(SRC_DIR)\LYCurses.c
+
+LYDownload.obj : $(SRC_DIR)\LYDownload.c
+	$(COMPILE) $(SRC_DIR)\LYDownload.c
+
+LYEdit.obj : $(SRC_DIR)\LYEdit.c
+	$(COMPILE) $(SRC_DIR)\LYEdit.c
+
+LYEditmap.obj : $(SRC_DIR)\LYEditmap.c
+	$(COMPILE) $(SRC_DIR)\LYEditmap.c
+
+LYexit.obj : $(SRC_DIR)\LYexit.c
+	$(COMPILE) $(SRC_DIR)\LYexit.c
+
+LYExtern.obj : $(SRC_DIR)\LYExtern.c
+	$(COMPILE) $(SRC_DIR)\LYExtern.c
+
+LYForms.obj : $(SRC_DIR)\LYForms.c
+	$(COMPILE) $(SRC_DIR)\LYForms.c
+
+LYGetFile.obj : $(SRC_DIR)\LYGetFile.c
+	$(COMPILE) $(SRC_DIR)\LYGetFile.c
+
+LYHash.obj : $(SRC_DIR)\LYHash.c
+	$(COMPILE) $(SRC_DIR)\LYHash.c
+
+LYHistory.obj : $(SRC_DIR)\LYHistory.c
+	$(COMPILE) $(SRC_DIR)\LYHistory.c
+
+LYJump.obj : $(SRC_DIR)\LYJump.c
+	$(COMPILE) $(SRC_DIR)\LYJump.c
+
+LYKeymap.obj : $(SRC_DIR)\LYKeymap.c
+	$(COMPILE) $(SRC_DIR)\LYKeymap.c
+
+LYLeaks.obj : $(SRC_DIR)\LYLeaks.c
+	$(COMPILE) $(SRC_DIR)\LYLeaks.c
+
+LYList.obj : $(SRC_DIR)\LYList.c
+	$(COMPILE) $(SRC_DIR)\LYList.c
+
+LYLocal.obj : $(SRC_DIR)\LYLocal.c
+	$(COMPILE) $(SRC_DIR)\LYLocal.c
+
+LYMail.obj : $(SRC_DIR)\LYMail.c
+	$(COMPILE) $(SRC_DIR)\LYMail.c
+
+LYMain.obj : $(SRC_DIR)\LYMain.c
+	$(COMPILE) $(SRC_DIR)\LYMain.c
+
+LYMainLoop.obj : $(SRC_DIR)\LYMainLoop.c
+	$(COMPILE) $(SRC_DIR)\LYMainLoop.c
+
+LYMap.obj : $(SRC_DIR)\LYMap.c
+	$(COMPILE) $(SRC_DIR)\LYMap.c
+
+LYNews.obj : $(SRC_DIR)\LYNews.c
+	$(COMPILE) $(SRC_DIR)\LYNews.c
+
+LYOptions.obj : $(SRC_DIR)\LYOptions.c
+	$(COMPILE) $(SRC_DIR)\LYOptions.c
+
+LYPrettySrc.obj : $(SRC_DIR)\LYPrettySrc.c
+	$(COMPILE) $(SRC_DIR)\LYPrettySrc.c
+
+LYPrint.obj : $(SRC_DIR)\LYPrint.c
+	$(COMPILE) $(SRC_DIR)\LYPrint.c
+
+LYmktime.obj : $(SRC_DIR)\LYmktime.c
+	$(COMPILE) $(SRC_DIR)\LYmktime.c
+
+LYrcFile.obj : $(SRC_DIR)\LYrcFile.c
+	$(COMPILE) $(SRC_DIR)\LYrcFile.c
+
+LYReadCFG.obj : $(SRC_DIR)\LYReadCFG.c
+	$(COMPILE) $(SRC_DIR)\LYReadCFG.c
+
+LYSearch.obj : $(SRC_DIR)\LYSearch.c
+	$(COMPILE) $(SRC_DIR)\LYSearch.c
+
+LYSession.obj : $(SRC_DIR)\LYSession.c
+	$(COMPILE) $(SRC_DIR)\LYSession.c
+
+LYShowInfo.obj : $(SRC_DIR)\LYShowInfo.c
+	$(COMPILE) $(SRC_DIR)\LYShowInfo.c
+
+LYStrings.obj : $(SRC_DIR)\LYStrings.c
+	$(COMPILE) $(SRC_DIR)\LYStrings.c
+
+LYStyle.obj : $(SRC_DIR)\LYStyle.c
+	$(COMPILE) $(SRC_DIR)\LYStyle.c
+
+LYTraversal.obj : $(SRC_DIR)\LYTraversal.c
+	$(COMPILE) $(SRC_DIR)\LYTraversal.c
+
+LYUpload.obj : $(SRC_DIR)\LYUpload.c
+	$(COMPILE) $(SRC_DIR)\LYUpload.c
+
+LYUtils.obj : $(SRC_DIR)\LYUtils.c
+	$(COMPILE) $(SRC_DIR)\LYUtils.c
+
+parsdate.obj : $(SRC_DIR)\parsdate.c
+	$(COMPILE) $(SRC_DIR)\parsdate.c
+
+TRSTable.obj : $(SRC_DIR)\TRSTable.c
+	$(COMPILE) $(SRC_DIR)\TRSTable.c
+
+mktime.obj : $(SRC_DIR)\mktime.c
+	$(COMPILE) $(SRC_DIR)\mktime.c
+
+strstr.obj : $(SRC_DIR)\strstr.c
+	$(COMPILE) $(SRC_DIR)\strstr.c
+
+UCAuto.obj : $(SRC_DIR)\UCAuto.c
+	$(COMPILE) $(SRC_DIR)\UCAuto.c
+
+UCAux.obj : $(SRC_DIR)\UCAux.c
+	$(COMPILE) $(SRC_DIR)\UCAux.c
+
+UCdomap.obj : $(SRC_DIR)\UCdomap.c
+	$(COMPILE) $(SRC_DIR)\UCdomap.c
+
+Xsystem.obj : $(SRC_DIR)\Xsystem.c
+	$(COMPILE) $(SRC_DIR)\Xsystem.c
+
+LYIcon.obj : $(SRC_DIR)\LYIcon.rc
+	cd $(SRC_DIR)
+	$(RC) /r /fo ..\LYIcon.res LYIcon.rc
+	cd ..
+	cvtres /verbose /machine:ix86 LYIcon.res
+
+dirent.obj : $(ETC_LIB)\dirent.c
+	$(COMPILE) $(ETC_LIB)\dirent.c
+
+HTAABrow.obj : $(WWW_DIR)\HTAABrow.c
+	$(COMPILE) $(WWW_DIR)\HTAABrow.c
+
+HTAAFile.obj : $(WWW_DIR)\HTAAFile.c
+	$(COMPILE) $(WWW_DIR)\HTAAFile.c
+
+HTAAProt.obj : $(WWW_DIR)\HTAAProt.c
+	$(COMPILE) $(WWW_DIR)\HTAAProt.c
+
+HTAAUtil.obj : $(WWW_DIR)\HTAAUtil.c
+	$(COMPILE) $(WWW_DIR)\HTAAUtil.c
+
+HTAccess.obj : $(WWW_DIR)\HTAccess.c
+	$(COMPILE) $(WWW_DIR)\HTAccess.c
+
+HTAnchor.obj : $(WWW_DIR)\HTAnchor.c
+	$(COMPILE) $(WWW_DIR)\HTAnchor.c
+
+HTAssoc.obj : $(WWW_DIR)\HTAssoc.c
+	$(COMPILE) $(WWW_DIR)\HTAssoc.c
+
+HTAtom.obj : $(WWW_DIR)\HTAtom.c
+	$(COMPILE) $(WWW_DIR)\HTAtom.c
+
+HTBTree.obj : $(WWW_DIR)\HTBTree.c
+	$(COMPILE) $(WWW_DIR)\HTBTree.c
+
+HTChunk.obj : $(WWW_DIR)\HTChunk.c
+	$(COMPILE) $(WWW_DIR)\HTChunk.c
+
+HTDOS.obj : $(WWW_DIR)\HTDOS.c
+	$(COMPILE) $(WWW_DIR)\HTDOS.c
+
+HTFile.obj : $(WWW_DIR)\HTFile.c
+	$(COMPILE) $(WWW_DIR)\HTFile.c
+
+HTFinger.obj : $(WWW_DIR)\HTFinger.c
+	$(COMPILE) $(WWW_DIR)\HTFinger.c
+
+HTFormat.obj : $(WWW_DIR)\HTFormat.c
+	$(COMPILE) $(WWW_DIR)\HTFormat.c
+
+HTFTP.obj : $(WWW_DIR)\HTFTP.c
+	$(COMPILE) $(WWW_DIR)\HTFTP.c
+
+HTGopher.obj : $(WWW_DIR)\HTGopher.c
+	$(COMPILE) $(WWW_DIR)\HTGopher.c
+
+HTGroup.obj : $(WWW_DIR)\HTGroup.c
+	$(COMPILE) $(WWW_DIR)\HTGroup.c
+
+HTLex.obj : $(WWW_DIR)\HTLex.c
+	$(COMPILE) $(WWW_DIR)\HTLex.c
+
+HTList.obj : $(WWW_DIR)\HTList.c
+	$(COMPILE) $(WWW_DIR)\HTList.c
+
+HTMIME.obj : $(WWW_DIR)\HTMIME.c
+	$(COMPILE) $(WWW_DIR)\HTMIME.c
+
+HTMLDTD.obj : $(WWW_DIR)\HTMLDTD.c
+	$(COMPILE) $(WWW_DIR)\HTMLDTD.c
+
+HTMLGen.obj : $(WWW_DIR)\HTMLGen.c
+	$(COMPILE) $(WWW_DIR)\HTMLGen.c
+
+HTNews.obj : $(WWW_DIR)\HTNews.c
+	$(COMPILE) $(WWW_DIR)\HTNews.c
+
+HTParse.obj : $(WWW_DIR)\HTParse.c
+	$(COMPILE) $(WWW_DIR)\HTParse.c
+
+HTPlain.obj : $(WWW_DIR)\HTPlain.c
+	$(COMPILE) $(WWW_DIR)\HTPlain.c
+
+HTRules.obj : $(WWW_DIR)\HTRules.c
+	$(COMPILE) $(WWW_DIR)\HTRules.c
+
+HTString.obj : $(WWW_DIR)\HTString.c
+	$(COMPILE) $(WWW_DIR)\HTString.c
+
+HTStyle.obj : $(WWW_DIR)\HTStyle.c
+	$(COMPILE) $(WWW_DIR)\HTStyle.c
+
+HTTCP.obj : $(WWW_DIR)\HTTCP.c
+	$(COMPILE) $(WWW_DIR)\HTTCP.c
+
+HTTelnet.obj : $(WWW_DIR)\HTTelnet.c
+	$(COMPILE) $(WWW_DIR)\HTTelnet.c
+
+HTTP.obj : $(WWW_DIR)\HTTP.c
+	$(COMPILE) $(WWW_DIR)\HTTP.c
+
+HTUU.obj : $(WWW_DIR)\HTUU.c
+	$(COMPILE) $(WWW_DIR)\HTUU.c
+
+HTWSRC.obj : $(WWW_DIR)\HTWSRC.c
+	$(COMPILE) $(WWW_DIR)\HTWSRC.c
+
+SGML.obj : $(WWW_DIR)\SGML.c
+	$(COMPILE) $(WWW_DIR)\SGML.c
diff --git a/makelynx.bat b/makelynx.bat
new file mode 100644
index 00000000..9c1d0ee7
--- /dev/null
+++ b/makelynx.bat
@@ -0,0 +1,352 @@
+@echo off

+@rem $LynxId: makelynx.bat,v 1.16 2011/06/04 00:59:22 tom Exp $

+@echo Windows/Dos batch makefile for MingW32 and lynx.exe

+@echo Remember to precede this by "command /E:8192" for Windows prior to

+@echo W2000 and "cmd.exe /E:8192" for subsequent Window versions and to

+@echo set the MingW32 C_INCLUDE_PATH and %C_INCLUDE_PATH%..\..\bin paths

+@echo.

+@echo Usage: makelynx [option]

+@echo Default option: all

+@echo Specifying "src" causes the libwww code to be skipped.

+@echo Specifying "link" causes the batch file to skip to the final

+@echo linking phase.

+@echo.

+@echo Note that you have to edit early versions of i386-mingw32\include\stdlib.h

+@echo to put an "#ifndef WIN_EX" around the declaration for `sleep', or the

+@echo compile won't work.  There is also an "#ifndef PDCURSES" around

+@echo the declaration for `beep' for the same reason.

+@echo.

+@echo To change the console library from libpdcurses to libslang,

+@echo put a "rem" before the `SET LIBRARY' line below.

+@echo.

+@echo If you don't have libz.a, either compile it

+@echo or put a "rem" in front of the following USE_ZLIB line.

+@echo This will cause the gzip.exe version of lynx

+@echo to be compiled.  It doesn't work well at present:

+

+SET LIBRARY=PDCURSES

+SET USE_ZLIB=YES

+

+rem Uncomment these lines if the slang/curses headers and libraries

+rem are in the top-level lib directory:

+rem set C_INCLUDE_PATH=..\lib;..\..\..\lib;%C_INCLUDE_PATH%

+rem set LIBRARY_PATH=..\lib;..\..\..\lib;%LIBRARY_PATH%

+

+echo Your compiler may not support -march=pentiumpro.

+echo In that case, replace -march=pentiumpro with -mpentium or -m486 or nothing:

+

+if "%OS%" == "Windows_NT" goto then0

+rem command.com doesn't handle the 'a=b' option

+set CC=gcc -mpentium

+goto else0

+:then0

+rem assumes a cmd.exe, rather than command.com, environment

+set CC=gcc -march=pentiumpro -mthreads

+:else0

+

+

+rem These definitions come from the Microsoft.msc makefile, with some

+rem modification.  Note that -Dx=y didn't work in older versions

+rem of Windows batch files, only -Dx, so a lynx_cfg.h was needed as

+rem a workaround.

+echo /* Generated lynx_cfg.h file in the lynx directory: */ > lynx_cfg.h

+echo. >> lynx_cfg.h

+echo. >> lynx_cfg.h

+echo #define ANSI_VARARGS	 1 >> lynx_cfg.h

+echo #define BOXHORI             0 >> lynx_cfg.h

+echo #define BOXVERT             0 >> lynx_cfg.h

+echo #define CAN_PIPE_TO_MAILER  0 >> lynx_cfg.h

+echo #define HAVE_GETCWD	 1 >> lynx_cfg.h

+echo #define HAVE_STRERROR	 1 >> lynx_cfg.h

+echo #define LYNX_CFG_FILE "./lynx.cfg" >> lynx_cfg.h

+echo #define LY_MAXPATH       1024 >> lynx_cfg.h

+echo #define USE_BLAT_MAILER	 1 >> lynx_cfg.h

+echo #define VC			2.14FM  >> lynx_cfg.h

+echo #define _WIN_CC		 1 >> lynx_cfg.h

+rem echo #define USE_SCROLLBAR	 1 >> lynx_cfg.h

+

+SET DEFINES=-DCJK_EX

+SET DEFINES=%DEFINES% -DUSE_ALT_BINDINGS

+SET DEFINES=%DEFINES% -DEXP_NESTED_TABLES

+SET DEFINES=%DEFINES% -DUSE_JUSTIFY_ELTS

+SET DEFINES=%DEFINES% -DUSE_PERSISTENT_COOKIES

+SET DEFINES=%DEFINES% -DUSE_READPROGRESS

+if not "%OS%" == "Windows_NT" goto next11

+SET DEFINES=%DEFINES% -DLY_MAXPATH=1024

+rem The following is unnecessary and causes the

+rem compile to fail:

+rem SET DEFINES=%DEFINES% -DUSE_WINSOCK2_H

+:next11

+SET DEFINES=%DEFINES% -DACCESS_AUTH

+SET DEFINES=%DEFINES% -DDIRED_SUPPORT

+SET DEFINES=%DEFINES% -DDISP_PARTIAL

+SET DEFINES=%DEFINES% -DDOSPATH

+SET DEFINES=%DEFINES% -DHAVE_DIRENT_H

+SET DEFINES=%DEFINES% -DHAVE_KEYPAD

+SET DEFINES=%DEFINES% -DLONG_LIST

+SET DEFINES=%DEFINES% -DNOSIGHUP

+SET DEFINES=%DEFINES% -DNOUSERS

+SET DEFINES=%DEFINES% -DNO_CONFIG_INFO

+SET DEFINES=%DEFINES% -DNO_CUSERID

+SET DEFINES=%DEFINES% -DNO_FILIO_H

+SET DEFINES=%DEFINES% -DNO_TTYTYPE

+SET DEFINES=%DEFINES% -DNO_UNISTD_H

+SET DEFINES=%DEFINES% -DNO_UTMP

+SET DEFINES=%DEFINES% -DSH_EX

+SET DEFINES=%DEFINES% -DUSE_EXTERNALS

+SET DEFINES=%DEFINES% -DUSE_PRETTYSRC

+SET DEFINES=%DEFINES% -DUSE_SOURCE_CACHE

+SET DEFINES=%DEFINES% -DWIN32

+SET DEFINES=%DEFINES% -DWIN_EX

+SET DEFINES=%DEFINES% -D_WINDOWS

+if not "%USE_ZLIB%" == "YES" goto next1

+SET DEFINES=%DEFINES% -DUSE_ZLIB

+:next1

+if "%LIBRARY%" == "PDCURSES" goto else1

+SET DEFINES=%DEFINES% -DUSE_SLANG

+goto endif1

+:else1

+SET DEFINES=%DEFINES% -DFANCY_CURSES

+SET DEFINES=%DEFINES% -DCOLOR_CURSES

+SET DEFINES=%DEFINES% -DPDCURSES

+SET DEFINES=%DEFINES% -DUSE_MULTIBYTE_CURSES

+:endif1

+

+if not "%1" == "src" goto else

+	cd src

+	goto src

+:else

+if not "%1" == "link" goto endif

+	cd src

+	goto link

+:endif

+

+SET INCLUDES=-I. -I..\..\.. -I..\..\..\src

+

+set CFLAGS=-O3 %INCLUDES% %DEFINES%

+set COMPILE_CMD=%CC% -c %CFLAGS%

+

+cd WWW\Library\Implementation

+erase *.o

+

+%COMPILE_CMD% HTAABrow.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTAAProt.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTAAUtil.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTAccess.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTAnchor.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTAssoc.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTAtom.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTBTree.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTChunk.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTDOS.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTFile.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTFinger.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTFormat.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTFTP.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTFWriter.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTGopher.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTGroup.c

+if errorlevel 1 PAUSE

+

+%COMPILE_CMD% HTLex.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTList.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTMIME.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTMLDTD.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTMLGen.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTNews.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTParse.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTPlain.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTRules.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTString.c

+if errorlevel 1 PAUSE

+

+%COMPILE_CMD% HTStyle.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTTCP.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTTelnet.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTTP.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTUU.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTWSRC.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% SGML.c

+if errorlevel 1 PAUSE

+

+ar crv libwww.a *.o

+

+if errorlevel 1 PAUSE

+

+cd ..\..\..\src\chrtrans

+erase *.o

+

+SET INCLUDES=-I. -I.. -I..\.. -I..\..\WWW\Library\Implementation

+SET CFLAGS=-O3 %INCLUDES% %DEFINES%

+SET COMPILE_CMD=%CC% -c %CFLAGS%

+

+%COMPILE_CMD% makeuctb.c

+if errorlevel 1 PAUSE

+%CC% -o makeuctb.exe makeuctb.o

+if errorlevel 1 PAUSE

+

+call makew32.bat

+if errorlevel 1 PAUSE

+cd ..\

+

+:src

+SET INCLUDES=-I. -I.. -I.\chrtrans -I..\WWW\Library\Implementation

+SET CFLAGS=-O3 %INCLUDES% %DEFINES%

+SET COMPILE_CMD=%CC% -c %CFLAGS%

+SET PATH=..\WWW\Library\Implementation;%PATH%

+erase *.o

+

+%COMPILE_CMD% DefaultStyle.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% GridText.c

+if errorlevel 1 PAUSE

+if not exist TRSTable.c goto notrstable

+%COMPILE_CMD% TRSTable.c

+if errorlevel 1 PAUSE

+:notrstable

+if not exist Xsystem.c goto noxsystem

+%COMPILE_CMD% Xsystem.c

+if errorlevel 1 PAUSE

+:noxsystem

+%COMPILE_CMD% HTAlert.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTFWriter.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTInit.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% HTML.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYBookmark.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYCgi.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYCharSets.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYCharUtils.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYClean.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYCookie.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYCurses.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYDownload.c

+if errorlevel 1 PAUSE

+

+%COMPILE_CMD% LYEdit.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYEditmap.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYexit.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYExtern.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYForms.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYGetFile.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYHash.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYHistory.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYJump.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYKeymap.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYLeaks.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYList.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYLocal.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYMail.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYMain.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD%  LYMainLoop.c

+if errorlevel 1 PAUSE

+

+%COMPILE_CMD% LYMap.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYNews.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYOptions.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYPrettySrc.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYPrint.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYrcFile.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYReadCFG.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYSearch.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYSession.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYShowInfo.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYStrings.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYStyle.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYTraversal.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYUpload.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% LYUtils.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% UCAuto.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% UCAux.c

+if errorlevel 1 PAUSE

+%COMPILE_CMD% UCdomap.c

+if errorlevel 1 PAUSE

+

+:link

+if not "%LIBRARY%" == "PDCURSES" goto else2

+SET LIBS=-L..\WWW\Library\Implementation -lwww -lpdcurses

+goto endif2

+:else2

+SET LIBS=-L..\WWW\Library\Implementation -lwww -lslang

+:endif2

+

+SET LIBS=%LIBS% -lwsock32 -luser32

+

+if not "%USE_ZLIB%" == "YES" goto else4

+SET LIBS=%LIBS% -lz

+:else4

+

+%CC% -s -o lynx *.o %LIBS%

+if exist lynx.exe ECHO "Welcome to lynx!"

diff --git a/makew32.bat b/makew32.bat
new file mode 100644
index 00000000..15a3c95a
--- /dev/null
+++ b/makew32.bat
@@ -0,0 +1,7 @@
+@echo off

+rem Borland C

+rem    -m                Displays the date and time stamp of each file

+rem    -c                Caches auto-dependency information

+make.exe -m -c -f makefile.bcb %1 %2

+REM make.exe -m -c -f makefile.deb

+REM make.exe -f makefile.win

diff --git a/po/POTFILES.in b/po/POTFILES.in
new file mode 100644
index 00000000..b4d8b975
--- /dev/null
+++ b/po/POTFILES.in
@@ -0,0 +1,44 @@
+# List of source files containing translatable strings.
+
+# Package source files (use 'gettext()' function).
+
+LYMessages.c
+WWW/Library/Implementation/HTAABrow.c
+WWW/Library/Implementation/HTAccess.c
+WWW/Library/Implementation/HTFTP.c
+WWW/Library/Implementation/HTFinger.c
+WWW/Library/Implementation/HTNews.c
+WWW/Library/Implementation/HTTCP.c
+WWW/Library/Implementation/HTTP.c
+WWW/Library/Implementation/HTTelnet.c
+WWW/Library/Implementation/HTWAIS.c
+WWW/Library/Implementation/HTWSRC.c
+src/GridText.c
+src/HTAlert.c
+src/HTML.c
+src/LYBookmark.c
+src/LYCgi.c
+src/LYClean.c
+src/LYCookie.c
+src/LYCurses.c
+src/LYEdit.c
+src/LYDownload.c
+src/LYHistory.c
+src/LYLeaks.c
+src/LYList.c
+src/LYLocal.c
+src/LYMail.c
+src/LYMain.c
+src/LYMainLoop.c
+src/LYNews.c
+src/LYOptions.c
+src/LYPrint.c
+src/LYReadCFG.c
+src/LYShowInfo.c
+src/LYStyle.c
+src/LYTraversal.c
+src/LYUpload.c
+src/LYUtils.c
+src/LYrcFile.c
+
+# end of file POTFILE.in
diff --git a/po/ca.po b/po/ca.po
new file mode 100644
index 00000000..b7f44b31
--- /dev/null
+++ b/po/ca.po
@@ -0,0 +1,6025 @@
+# Missatges del lynx en català
+# Copyright (C) 2002 Free Software Foundation, Inc.
+# Carles Sadurní Anguita <isard@ctv.es>, 2000-2003
+#
+# Agraïments
+#
+# Gràcies als membres de la llista DocsTerms del CALIU i als de la 
+# llista del Translation Project per les correccions i els suggeriments. 
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.5pre15\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 2003-07-06 18:12+0200\n"
+"Last-Translator: Carles Sadurní Anguita <isard@ctv.es>\n"
+"Language-Team: Catalan <ca@dodds.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Alerta!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Benvinguts"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Esteu segur/a que voleu eixir?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Esteu segur/a que voleu eixir de Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Connexió interrompuda."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Transferència de dades interrompuda"
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Cancel·lat!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Cancel·lació!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Excel·lent!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "D'acord"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Fet!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Sol·licitud incorrecta!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "anterior"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "següent pantalla"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "AJUDA!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", ajuda sobre "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Useu les fletxes per a moure-us, '?' ajuda, 'q' eixir, '<-' torna enrere."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "Useu <espai> per a continuar, fletxes per a moure-us, '?' ajuda, 'q' eixir."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- premeu <espai> per passar a la següent pàgina --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "La URL especificada és massa llarga"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Camp d'entrada de text) Inactiu. Premeu <intro> per activar-lo."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Àrea de text) Inactiva. Premeu <intro> per activar-la."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Àrea de text) Inactiva. Premeu <intro> per activar-la (%s per a l'editor)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Camp de formulari) Inactiu. Useu <intro> per a editar."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Camp form.) Inactiu. <intro> per a editar (%s per a enviar sense mem. cau)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Camp form.) Inactiu. <intro> per a editar, <intro> dues vegades per a enviar."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(Camp de formulari de correu) Inactiu. Premeu <intro> per a canviar-ho."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Camp de contrasenya) Inactiu. Premeu <intro> per activar-lo."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Camp de fitxer IMMODIFICABLE. Useu les fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Camp de fitxer) Introduïu el nom de l'arxiu. Fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Camp de text) Introduïu text. Useu les fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Àrea de text) Introduïu text. Fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(À. text) Introduïu text. Fletxes o <tab> per a eixir-ne (%s per a l'editor)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Camp de text IMMODIFICABLE. Useu les fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Camp de formulari) Introduïu text. Useu <intro> per a enviar."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Camp de formulari) Introduïu text. <intro> per a enviar (%s sensemem. cau)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(C. form.) Introduïu text. <intro> per a enviar, fletxes o tab per eixir-ne."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Camp IMMODIFICABLE. Useu les fletxes o el tabulador per a eixir-ne."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(correu) Introduïu text. <intro> per enviar-lo, amb les fletxes n'eixireu."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(Camp form. correu) El correu no està permés: no podeu enviar-ne."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Contrasenya) Introduïu text. Useu les fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "Camp de contrasenya IMMODIFICABLE. Fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Camp de verificació) Useu '->' o <intro> per a canviar."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "Quadre de verificació IMMODIFICABLE. Useu les fletxes per a eixir-ne."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+#, fuzzy
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Botó de grup) Useu '->' o <intro> per a canviar."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Botó de grup IMMODIFICABLE. Useu fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Enviar a ('x' sense mem. cau) "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Enviar a "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Botó d'enviament) Useu '->' o <intro> per a enviar ('x' sense mem. cau)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Botó d'enviament) Useu '->' o <intro> per a enviar."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Botó d'enviament DESACTIVAT. Useu les fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Enviar correu a "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(Botó d'enviament de correu) Useu '->' o <intro> per a enviar-lo."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(Botó d'enviament de correu) El correu no està permés: no podeuenviar-ne."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Botó de reinici) Useu '->' o <intro> per a tornar als valors predeterminats."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Botó de reinici DESACTIVAT. Useu les fletxes o <tab> per a eixir-ne."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Opcions) Premeu <intro> i useu les fletxes i <intro> per a triar-ne una."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Tria) Premeu <intro>; useu les fletxes i <intro> per a triar una opció."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "Llista IMMODIFICABLE. <intro> per a revisar-la o fletxes per aeixir-ne."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "Llista IMMODIFICABLE. <intro> per a revisar-la o les fletxes per aeixir-ne."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Enviant..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Restablint els valors inicials del formulari..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Recarregant document. Qualsevol entrada anterior es perdrà!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Alerta: No es poden convertir les dades al joc de caràcters %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(ENLLAÇ NORMAL) Useu la fletxa a la dreta o <return> per a seguir-lo."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "El recurs sol·licitat no està disponible a hores d'ara."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Introduïu la combinació de tecles: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Buscant "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Rebent %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Saltant-se %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Usant %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Adreça il·legal: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Adreça mal formada: %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "No ha estat possible accedir a l'arxiu!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Índex de recerca. Useu %s per a buscar."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Més--  Índex de recerca. Useu %s per a buscar."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Heu introduït un número d'enllaç incorrecte."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Aquest és el document font. Premeu '\\' per tornar a la versió interpretada."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "Fletxes amunt i avall per a moure-us. '->' segueix l'enllaç; '<-' tornaenrere\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "H ajuda O)pcions im(P)rimir  G anar M principal Q ix  / buscar [del] història\n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "O altres  H ajuda  K tecles  G anar  im(P)rimir  M principal o)pcions  Q ix \n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "O altres  B enrere E)ditar D)escarregar ^R)ecarregar  ^W refrescar  / buscar \n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O altres C)omentari  [del] història  llibreta: V)eure, A)fegir, R eliminar\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "              Useu el teclat per a introduir text en el camp                 "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "      Ctrl-U esborra tot el text, [Backspace] esborra només un caràcter      "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "        Ctrl-U esborra el text, [Backspace] esborra només un caràcter      "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "      %s esborra tot el text, [Backspace] esborra només un caràcter      "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "       %s esborra el text, [Backspace] esborra només un caràcter      "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Formulari d'enviament de correu mal format! Anul·lació!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Alerta! Codis de control en l'adreça de correu substituïts per \"?\""
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "El correu no està permés! No s'ha pogut enviar."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "El formulari d'enviament de correu ha fallat!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Enviament cancel·lat!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Enviant el contingut del formulari..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "No hi ha cap adreça de correu en aquesta URL!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Ha estat impossible obrir el fitxer temporal per a enviar correu a URL!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Voleu incloure-hi el missatge original?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Voleu incloure-hi la font preanalitzada?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Obrint l'editor seleccionat per a editar el missatge de correu"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "No s'ha pogut obrir l'editor, comproveu-ne la definició en el menúd'opcions"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Enviar aquest comentari?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Enviar aquest missatge?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Enviant el missatge..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Enviant el comentari:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "No és una àrea de text; no hi podeu usar l'editor extern."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "No és una àrea de text; no s'hi pot usar l'ordre indicada."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "fitxer: les accions (ACTIONS) no estan permeses!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr ""
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "Accés als arxius locals denegat."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "fitxer: les URLs del fitxer d'adreces d'interés no estan permeses!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "No es permet aquesta URL especial en documents externs!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Premeu <return> per tornar a Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr ""
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Escriviu 'exit' per a tornar a Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Obrint la shell predeterminada. Useu \"exit\" per a tornar a Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr ""
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "Actualment l'opció de (d)escàrrega no està activa."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "No és possible descarregar un camp d'entrada de dades."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr ""
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "No es pot descarregar un enllaç a una adreça de correu."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Les cookies es poden descarregar."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "No es poden descarregar les opcions d'impressió."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "No es poden descarregar les opcions de càrrega."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr ""
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Aquesta URL especial no es pot descarregar!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "No hi ha res per descarregar."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Rastreig activat! (Trace ON!)"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Rastreig desactivat! (Trace OFF!)"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "S'hi inclouran els enllaços a totes les imatges! Recarregant..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Manejament estàndar d'imatges restaurat! Recarregant..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "S'inseriran pseudo-ALTs per a les imatges sense cadena ALT! Recarrega..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "S'ignoraran les imatges sense cadena alternativa ("
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Mode 8-bits cru o CJK activat! Recàrrega..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Mode 8-bits cru o CJK desactivat!  Recàrrega..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Voleu enviar una sol·licitud HEAD per al D)ocument o l'en(L)laç, or C)ancel·lar? (d,l,c):"
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Voleu enviar una sol·licitud HEAD per al D)ocument o C)ancel·lar? (d,c):"
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "El document no és una URL http."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "L'enllaç no és una URL http."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "L'ACCIÓ del formulari no està disponible."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "L'ACCIÓ del formulari no és una adreça de http."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "No és una URL http ni una ACCIO de formulari!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Aquesta URL especial no pot ser una ACCIO de formulari!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "La URL no està en el domini inicial!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "L'enviament de missatges als fòrums de discusió està desactivada!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "L'administració de fitxers està desactivada!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "No hi ha cap fitxer de salts disponible."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Saltar a (premeu '?' per veure la llista): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Les adreces aleatòries estan desactivades. Useu una drecera."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Fins ara no s'han usat URLs aleatòries."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Els \"favorits\" estan desactivats."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "L'execució a través del fitxer d'adreces està desactivada."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "El fitxer de favorits no està definit. Useu %s per a veure les opcions."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "No ha estat possible obrir el fitxer temporal per a convertir el fitxer d'adreces de Mosaic."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "ERROR: ha estat impossible obrir l'arxiu d'adreces"
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "No ha estat possible obrir l'arxiu d'adreces per esborrar l'enllaç."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr ""
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr ""
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Error quan s'intentava reanomenar un arxiu temporal."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr ""
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr ""
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Hi ha d'haver un "
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Impossible obrir el fitxer d'adreces, useu 'a' per a guardar-neuna primer."
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "No hi ha enllaços en aquest fitxer d'adreces!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "Voleu enviar una sol·licitud HEAD per al D)ocument o C)ancel·lar? (d,c):"
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Guardar com a adreça d'interés D)ocument o en(L)laç,o C)ancel·lar? (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Guardar D)ocument en l'arxiu d'adreces d'interéso C)ancel·lar? (d, c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Guardar en(L)laç en l'arxiu d'adreces d'interéso C)ancel·lar? (l, c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "No es pot guardar al fitxer d'adreces documents procedents de formularis POST."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr ""
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Els fitxers historial, informació, menú i lista no es poden guardar al fitxer d'adreces."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Esteu segurs que voleu esborrar aquest enllaç de l'arxiu d'adreces?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Adreça mal formada."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr ""
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr ""
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr ""
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr ""
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Utilitzant l'analitzador d'HTML TagSoup."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Utilitzant l'analitzador d'HTML SortaSGML!"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "És açò, el final del document."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "És ací, el principi del document."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "És aquesta, la %da pàgina del document."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "És aquest, l'enllaç número %d."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Aquest és el primer document"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "No hi ha enllaços per damunt d'aquesta línia."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "No hi ha enllaços per sota d'aquesta línia."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "S'ha assolit la longitud màxima! Esborreu text o eixiu del camp."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "No és ni un botó d'enviament ni un enllaç normal."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "Sempre s'ha de triar una opció!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "No hi ha cap botó d'enviament, enviar simplemtent el camp de text?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Voleu tornar al document anterior?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Useu les fletxes o <tab> per a eixir-ne."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Introduïu text. Useu les fletxes o el tabulador per a eixir-ne."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Codi HTML incorrecte!! No hi ha cap acció definida. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Codi HTML incorrecte! Ha estat impossible crear la finestra emergent!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Ha estat impossible crear la finestra emergent!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "El salt a una URL aleatòria està desactivat!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "L'accés a URLs que no compleixen el protocol http no està permés!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "No teniu permís per a anar a URLs \"%s\""
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "Anar a: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Editar l'adreça actual: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Editar l'adreça anterior: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Editar adreces anteriors: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "El document actual conté dades POST."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Editar l'adreça d'aquest document: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Editar l'adreça de l'enllaç actual: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "No es poden editar les URLs del gestor de fitxers."
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Introduïu una consulta a la base de dades: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Introduïu la paraula que voleu trobar: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Editar la consulta: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Editar la consulta anterior: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Editar una consulta anterior: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Useu Ctrl-R per a reenviar la consulta actual."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Editar la drecera actual: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Editar la drecera anterior: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Editar una drecera anterior: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "La tecla '%c' no està assignada a cap fitxer de salt!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "No s'ha pogut trobar el fitxer de salts!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "No s'ha pogut obrir el fitxer de salts!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Error de lectura en el fitxer de salts!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Memòria exhaurida durant la lectura del fitxer de salts!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Memòria exhaurida durant la lectura de la taula de salts!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "No hi ha cap índex disponible."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Esteu segur de voler anar a la pàgina principal?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "És aquesta, la pàgina principal!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "No és un document indexat: premeu '/' per a buscar una cadena de text"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "No consta el propietari de l'arxiu: no podeu enviar-li cap comentari"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "No consta el propietari. Usar %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Voleu enviar un comentari?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "El correu no està permés; per tant, no podeu enviar comentaris."
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "L'ordre Editar està desactivada."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "L'edició externa està desactivada."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Error del sistema: no s'ha pogut obtenir l'estat."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "No hi ha cap editor definit!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "L'ordre imPrimir està desactivada."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "El document no té barra d'enllaços ni banner."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr ""
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr ""
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr ""
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr ""
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr ""
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Seguir l'enllaç (o anar a la pàgina) número: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Triar opció (o pàgina) número: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "És aquesta, l'opció número %d."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "És ací, el final de la llista d'opcions."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "És ací, el començament de la llista d'opcions."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "És aquesta, la pàgina %d de la llista d'opcions."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Heu introduït un número d'opció que no és vàlid."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** HTML erroni!! Useu l'opció -trace per a obtenir un diagnòstic. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Cal un nom per a l'arxiu."
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "No s'ha pogut guardar les dades al fitxer: executeu WWW localment."
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "No ha estat possible obrir l'arxiu temporal!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "No ha estat possible obrir l'arxiu d'eixida! Anul·lat!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "L'execució no està activada."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "L'execució no està activada. Vegeu el menú d'opcions (useu %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "La capacitat d'executar programes no s'ha compilat en aquesta versió."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "El fitxer no es pot mostrar en aquest terminal."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "El fitxer no es pot mostrar en aquest terminal: D)escarregar oC)ancel·lar."
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s D)escarregar o C)ancel·lar"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Cancel·lant."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Descarregant fitxer. - ESPEREU, PER FAVOR -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Introduïu un nom per a l'arxiu: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Editar el nom anterior: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Editar els noms anteriors: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Introduïu un nom nou: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Els noms d'arxiu no poden començar amb punt."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr ""
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "L'arxiu existeix. Voleu sobreescriure'l?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "No es pot escriure en el fitxer."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "ERROR: l'ordre _descarregar_ està mal configurada."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Ha estat impossible descarregar el fitxer."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Llegint directori..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Construint la llista del directori..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Gravant..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "No ha estat possible editar el fitxer '%s'."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "No ha estat possible accedir al document!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "No ha estat possible accedir a l'arxiu."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "No ha estat possible accedir al directori."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "No ha estat possible carregar les dades."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx no pot editar fitxers WWW remots."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Aquest camp no es pot editar amb un editor extern."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Regla incorrecta"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Nombre d'operands insuficient:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "No teniu autorització per a editar aquest arxiu."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Títol: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Tema: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Nom d'usuari: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Contrassenya: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: fa falta el nom d'usuari i la contrasenya!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: fa falta la contrasenya!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Esborrar tota la informació sobre autorització d'aquesta sessió?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Informació esborrada."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Autorització fallida. Reintentar?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "s'ha desactivat el suport per a CGI."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "La capacitat d'usar CGI no ha estat compilada en aquesta versió."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Em sap greu, no sé com convertir %s a %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Ha estat impossible establir la connexió."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Ha estat impossible fer la connexió."
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Enllaç executable rebutjat a causa d'una sol·licitud mal formada."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Enllaç executable rebutjat a causa del caràcter \"%c\"."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Enllaç executable rebutjat a causa d'un camí relatiu (\"../\")."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Enllaç executable rebutjat a causa de la localització o la ruta."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "L'accés a correu no està activat!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Només podeu accedir a fitxers i servidors en la màquina local."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "L'accés a telnet no està activat"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Les especificacions del port telnet estan desactivades."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "L'accés als fòrums de discusió (USENET) no està activat!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "L'accés a través de rlogin està desactivat!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "L'accés a ftp no està activat!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "No hi ha referències d'aquest document."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "En aquest document només hi ha enllaços ocults."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "No ha estat possible obrir el fitxer d'ordres."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Missatge cancel·lat!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Creant el procés fill que obri l'editor per a editar el missatge"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Esteu segur que voleu enviar aquest missatge?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Afegir \"%s\"?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Enviant al(s) fòrum(s)..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Teniu correu pendent. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** Teniu correu. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Teniu correu nou. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Inserció del fitxer cancel·lada!!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "No hi ha prou memòria per al fitxer!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "No ha estat possible llegir l'arxiu."
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "L'arxiu no existeix."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "L'arxiu no existeix. Reescriviu-ne el nom o cancel·leu:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "L'arxiu no es pot llegir."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "L'arxiu no es pot llegir. Reescriviu-ne el nom o cancel·leu:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "No hi ha res per a inserir: el fitxer té longitud 0."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "(Gravar) Operació cancel·lada!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Sol·licitud de correu cancel·lada!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Font preanalitzada. Segur que voleu enviar-la?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Per favor, espereu..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Enviant arxiu. Per favor, espereu..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "ERROR: ha estat impossible enviar l'arxiu"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "L'arxiu ocupa %d pantalles. Esteu segur que voleu imprimir-lo?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Impressió cancel·lada!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Premeu <return> per començar: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Premeu <return> per finalitzar: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "L'arxiu ocupa %d pàgines. Esteu segur que voleu imprimir-lo?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Assegureu-vos que la impressora està connectada. Premeu <intro>per començar:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr ""
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "No ha estat possible obrir l'arxiu temporal"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "No ha estat possible obrir l'arxiu d'opcions d'impressió"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Imprimint l'arxiu. Per favor, espereu..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Per favor, introduïu una adreça de correu vàlida: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "ERROR: la impressora no està ben configurada!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr ""
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr ""
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr ""
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr ""
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "La pantalla ha de tenir si més no 24 línies per al menú d'opcions!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "La pantalla ha de tenir si més no 23 línies per al menú d'opcions"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "La pantalla ha de tenir si més no 22 línies per al menú d'opcions"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Per a usar aquesta tecla cal activar el mode d'usuari avançat"
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Tipus de contingut: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Ordre: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Ordre desconeguda o ambigua"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Versió "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " primer"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", provant..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Permisos per a "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr ""
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr ""
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr ""
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr ""
+
+#: LYMessages.c:565
+msgid " to "
+msgstr ""
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " o "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " índex"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " per a tornar a Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Acceptar els canvis"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Anul·lar els canvis"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "'<-' cancel·la els canvis"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Gravar les opcions al disc"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Premeu <return> per acceptar les dades introduïdes."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "<intro> accepta les dades. Esborreu-les si voleu els valors preestablerts"
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Valor acceptat!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Valor acceptat!  ALERTA: Lynx està configurat per a XWINDOWS!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Valor acceptat!  ALERTA: Lynx no està configurat per a XWINDOWS!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "No teniu permís per a canviar l'editor!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Ha estat impossible especificar el nou valor de la variable DISPLAY!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Ha estat impossible eliminar el valor de la variable DISPLAY!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "No teniu permís per a canviar l'arxiu d'adreces!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "El terminal no pot mostrar colors"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "El terminal '%s' no pot mostrar colors."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "L'accés als arxius que comencen amb un punt no està activat!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "La cadena que identifica el navegador no conté ni \"Lynx\" ni \"L_y_n_x\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Useu \"L_y_n_x\" o \"Lynx\" en l'identificador o semblareu desertors!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "El canvi de la cadena identificadora del navegador està desactivat!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "No teniu permís per a canviar aquesta opció."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Gravant les opcions..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Opcions gravades!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "No ha estat possible gravar les opcions!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' per tornar a Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' per gravar, 'r' per tornar a Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Premeu qualsevol tecla per canviar el valor; <intro> per acceptar."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Error descomprimint l'arxiu temporal!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "URL no suportada!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr ""
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "S'ha assolit el límit de redireccions: 10 URLs."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "S'ha rebut del servidor una URL de redirecció il·legal!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr ""
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P)rocedir, usar G)ET o C)ancel·lar "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P)rocedir o C)ancel·lar "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr ""
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr ""
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "El document procedeix d'un formulari amb contingut POST. Reenviar?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Reenviar el contingut del POST a %s?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "La llista prové d'un document amb dades POST. Voleu recarregar %s?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Continuar sense nom d'usuari i sense contrasenya?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Continuar (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr ""
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr ""
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Descartant les dades del POST..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "No es recarregarà el document!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Ubicació: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "no s'ha trobat \"%s\""
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Fitxer de favorits predeterminat"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Pantalla massa xicoteta! (8x35 min)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Trieu destinació o ^G per cancel·lar: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Trieu fitxer de favorits, \"=\" mostra el menú i ^G cancel·la: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "Reproduir l'en(L)laç en aquest fitxer de favorits o C)ancel·lar? (l,c):"
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "El suport per a més d'un fitxer d'adreces no està activat."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Trieu el fitxer de favorits (pantalla %d de %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Trieu fitxer de favorits"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Edició de la descripció i del camí del fitxer d'adreces interessants (%d de 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "Edició de la descripció i el camí del fitxer d'adreces d'interés"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Lletra: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr ""
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Useu un camí que no pertanga al vostre directori!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Superat el nre. d'enllaços/pàg.! Useu mitja pàg. o desplaçament de dues línies."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "No hi ha disponible cap enllaç anterior!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Memòria exhaurida! Programa vortat!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Memòria exhaurida! Avortant..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "No hi ha prou memòria!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "No hi ha cap administrador de fitxers disponible"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "La referència (HREF) en l'etiqueta BASE no és una URL absoluta."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "La URL no és absoluta."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "La URL de refresc no és absoluta."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Esteu enviant un missatge no buit a:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Esteu enviant un comentari a:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" Amb còpia a:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Amb còpies a:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Useu Ctrl-G per a cancel·lar si no voleu enviar el missatge\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Escriviu el vostre nom o deixeu l'espai en blanc si voleu que siga anònim\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Introduïu una adreça de correu o alguna altra\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " forma de contactar, si voleu resposta.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Introduïu l'assumpte.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Escriviu l'adreça a què voleu enviar una còpia del missatge.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Deixeu la línia en blanc si no en voleu enviar còpia.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Per favor, reviseu el cos del missatge:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Premeu <intro> per continuar: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Premeu <intro> per esborrar: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Premeu Ctrl-U per esborrar el valor suggerit.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Escriviu el missatge a partir d'ací."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Quan acabeu, premeu <intro> i escriviu només un punt (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" al començament de la línia i torneu a prémer <intro>."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "Cookie de %s: %.*s=%.*s Admetre-la? (S/N/A sempre/V mai)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Voleu acceptar la cookie amb el domini invàlid %s en comptes de '%s'?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Accepteu la cookie amb el camí (no vàlid) %s com a prefix de '%s'?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Tolerant aquesta cookie."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Rebutjant aquesta cookie."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "El recipient de les cookies és buit."
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "El recipient de les cookies és buit."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Seguiu els enllaços per eliminar les cookies o els dominis,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "o per a canviar l\"índex de tolerància\"."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Cookies sempre prohibides)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Cookies sempre tolerades)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Es pregunta abans d'acceptar cookies)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Cookies persistents)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Sense títol)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Sense nom)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Sense valor)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr ""
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Fi de la sessió)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Esborrar aquesta cookie?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "La cookie ha estat esborrada!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Esborrar aquest domini buit?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "El domini ha estat esborrat!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D esborrar el domini, admetre  A sempre/P)reguntar/V mai, o C)ancel·lar? "
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D esborrar domini, admetre  A sempre/P)reguntar/V mai, o C)ancel·lar?"
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Totes les cookies del domini han estat esborrades!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "Toler(A)r-les sempre que provinguen del domini '%s'."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "Rebutjar-les sempre que provinguen del domini '%s'."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "(P)reguntar sempre que provinguen del domini '%s'."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Esborrar totes les cookies del domini?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Totes les cookies han estat esborrades!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "El port 19 no està permés en les URLs."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "El port 25 no està permés en les URLs."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "El port %lu no està permés en les URLs."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr ""
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "S'ha excedit el màxim nombre d'anidaments permés per a l'HTML."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr ""
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "No s'ha pogut obrir el fitxer de rastreig. Rastreig desactivat!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Rastreig (Lynx Trace Log)"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "No s'ha iniciat el rastreig en aquesta sessió."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "S'ha assolit el nombre màxim de fitxers temporals!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "El valor del camp excedeix la longitud de la memòria intermèdia! Es tallarà."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr ""
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Directori"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "La navegació pel directori està prohibida."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "No està habilitat l'accés selectiu a aquest directori"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr ""
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "No es pot llegir el directori."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "No es pot accedir al fitxer sol·licitat."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr ""
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "No s'ha pogut obrir el fitxer per a descomprimir-lo!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Arxius:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Subdirectoris:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " directori"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "De "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "El directori actual és "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "El servidor no respon!"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "Índex CSO"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr "\n"
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "Resultats de la recerca CSO"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr ""
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Premeu 's' i introduïu els mots que voleu cercar.\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr "\n"
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "Í"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "Menú gopher"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr " Resultats de la recerca"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "S'està enviant una sol·licitud CSO/PH."
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "S'està enviant la sol·licitud gopher"
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "Sol·licitud COS/PH enviada; s'està esperant resposta."
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "S'ha enviat la sol·licitud gopher; s'està esperant resposta."
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Per favor, introduïu els mots que voleu cercar.\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Els mots que heu introduït us permetran cercar en un"
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr " nom de persona en una base de dades.\n"
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "Connexió tancada ??"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr "No ha estat possible obrir el fitxer temporal per enviar el missatge."
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Aquest client no pot enviar missatges als fòrums amb SSL."
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr ""
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr ""
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr ""
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "No es pot continuar sense un nom d'usuari i una contrasenya."
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "No es pot reintentar sense autorització! Poseu-vos en contacte amb el webmestre."
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "No es pot reintentar sense autorització del proxy! Poseu-vos en contacte amb el webmestre."
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr "Reintent amb la informació de autorització del servidor intermediari (proxy)."
+
+#: LYMessages.c:799
+#, fuzzy, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "Error SSL: servidor(%s)!=cert(%s). Voleu continuar?"
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: El missatge de retorn és massa llarg."
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr "Introduïu la consulta de tipus WAIS:"
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "Reintentant com a sol·licitud HTTP0."
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "%d bytes transferits"
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "Transferència completa"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Error mentre es processava la línia %d de %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr "Pàgina d'adreces"
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "Agenda d'adreces d'interés"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr "Configuració"
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr "Pot de les galetes (cookie jar) :-)"
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr "Combinacions de tecles actual"
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "Opcions d'administració de fitxers"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "Opcions de descàrrega"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "Historial"
+
+#: LYMessages.c:820
+#, fuzzy
+msgid "Cache Jar"
+msgstr "Pot de les galetes (cookie jar) :-)"
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr ""
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "Informació del fitxer lynx.cfg"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr "Fitxer d'adreces d'interés de Mosaic convertit"
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "Menú d'opcions"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "Opcions dels permissos dels fitxers"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "Opcions d'impressió"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "Informació del document actual"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "Missatges recents apareguts en la línia d'estat"
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "Opcions de càrrega"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr "Pàgina dels enllaços visitats"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "Vegeu també"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr ""
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr "opcions en temps d'execució"
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "opcions en temps de compilació"
+
+#: LYMessages.c:837
+#, fuzzy
+msgid "color-style configuration"
+msgstr "Configuració primària"
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "última versió"
+
+#: LYMessages.c:839
+msgid "pre-release version"
+msgstr "versió de prova"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "versió de desenvolupament"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Les dades següents es van generar durant el procés de configuració i\n"
+"compilació automàtiques d'aquesta còpia de Lynx. Quan informeu d'un error,\n"
+"per favor, incloeu una còpia d'aquesta pàgina."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Les dades següents es van usar com a definicions configurades automàticament\n"
+"quan es va compilar aquesta còpia de Lynx."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr ""
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr "Ha estat impossible obtenir l'estat de l'enllaç actual!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "URL especial que només és vàlida des del menú permisos de fitxer actual!"
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr ""
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+msgid "Changing working-directory is currently disabled."
+msgstr "El canvi de directori de treball està desactivat."
+
+#: LYMessages.c:864
+msgid "Linewrap OFF!"
+msgstr "Salt de línia automàtic desactivat!"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr "Salt de línia automàtic activat!"
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Anàlisi de taules imbricades desactivat! Recàrrega..."
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Analisi de taules imbricades activat! Recàrrega..."
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr ""
+
+#: LYMessages.c:869
+msgid "Trace not supported"
+msgstr "Rastreig no suportat"
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Nom d'usuari per a '%s' en %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Capçalera invàlida '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "Cal autorizació del proxy: reintentant"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "Accés sense autorització denegat: reintentant"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "Accés prohibit per una regla"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "El document amb contingut POST no s'ha trobat en la memòria cau. Reenviar?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr "Càrrega incompleta."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, fuzzy, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Error intern. Per favor escriviu a lynx-dev@sig.net!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr ""
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr "No ha estat possible accedir-hi"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "No ha estat possible accedir al document."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Contrasenya de l'usuari %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "No ha estat possible connectar amb el servidor FTP"
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr ""
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "Enllaç simbòlic"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "Rebent directori d'FTP"
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "%d (%5d) bytes transferits"
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "Rebent arxiu d'FTP"
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "No ha estat possible establir la connexió finger"
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "Número de port invàlid: s'usarà únicament el port 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "No ha estat possible accedir al servidor finger."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "El servidor finger no respon."
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Nom d'usuari per al servidor de notícies \"%s\":"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "Canviar el nom d'usuari?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "Nom d'usuari:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Contrasenya per al servidor de notícies '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "Canviar contrasenya?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "Cap coincidència amb: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"No hi ha articles en aquest fòrum.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"No hi ha cap article en aquest rang.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  articles %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "Articles anteriors"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Hi ha %d articles disponibles actualment en %s, \n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "Tots els articles disponibles en "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "Articles recents"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "Enviar a "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Aquest client no té suport per a URLs de SNEWS."
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "Connectant amb el servidor ..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "No ha estat possible accedir a %s."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "No s'ha pogut llegir la news info. El servidor %.20s ha respost: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "No s'ha pogut llegir la news info, resposta buida del servidor %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "Llegint la llista dels fòrums disponibles."
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "Llegint la llista d'articles del fòrum."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "Llegint article."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr "No ha estat possible carregar els missatges sol·licitats."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "L'adreça conté un port que no és vàlid"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "La longitud de l'adreça sembla invàlida"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Ha estat impossible trobar el servidor %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Servidor %s no vàlid"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Establint una connexió %s amb %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "La connexió ha fallat (massa reintents)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+#, fuzzy
+msgid "Socket read failed (too many tries)."
+msgstr "La connexió ha fallat (massa reintents)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "L'adreça conté un nom d'usuari: %s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Aquest client no admet adreces HTTPS."
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr "No ha estat possible connectar amb el servidor."
+
+#: WWW/Library/Implementation/HTTP.c:669
+msgid "Retrying connection without TLS."
+msgstr "S'està reintentant la connexió sense TLS."
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+#, fuzzy
+msgid "the certificate has been revoked"
+msgstr "La cookie ha estat esborrada!"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+#, fuzzy
+msgid "Can't find common name in certificate"
+msgstr "Error SSL: no s'ha pogut trobar el nom comú en el certificat. Continuem?"
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "Error SSL: servidor(%s)!=cert(%s). Voleu continuar?"
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "Enviant sol·licitud HTTP."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr "Error inesperat d'escriptura "
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "Sol·licitud HTTP enviada; esperant resposta."
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr "Error inesperat de lectura en la xarxa; s'ha avortat la connexió."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr ""
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr ""
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr "S'ha obtingut un codi 304 Not Modified inesperat (el document no ha estat modificat)."
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr "Estic reintentant amb la informació d'accés."
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr "Mostrar el cos del missatge d'error 401?"
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr "Mostrar el cos del missatge d'error 407?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr "Resposta desconeguda del servidor!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "No ha estat possible connectar al servidor WAIS."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "No s'ha pogut obrir cap connexió WAIS (per a lectura)."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "El codi de diagnòstic és "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Índex "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "La primera xifra després de cada entrada és la puntuació relativa, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "la segona és el nombre de línies."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (nom de fitxer incorrecte)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr " (identificador de document incorrecte)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Error sintàctic en la URL WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (Índex WAIS)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "Índex WAIS: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Aquest és un enllaç per a cercar en "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " l'índex WAIS.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Introduïu l'ordre de recerca ('s') i especifiqueu els mots que voleu cercar.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Sol·licitud massa gran."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Cercant en la base de dades WAIS..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Recerca interrompuda."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "No es pot convertir el format del document WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Sol·licitud massa llarga."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Descarregant el document WAIS..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "No s'ha tornat cap text!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "Accés directe"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (o a través d'un proxy, si està definit així)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "Mantenidor"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "Servidor"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "Memòria exhaurida, visualització interrompuda!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Memòria exhaurida, la transferència s'interromprà!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** MEMÔRIA EXHAURIDA ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "camp o enllaç desconegut"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "camp de text"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "camp de contrasenya"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "quadre de verificació"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "botó de grup"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "botó d'enviament"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "botó de reinici"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "menú emergent"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "camp de formulari ocult"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "àrea de text"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr "camp d'entrada d'interval"
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "camp de fitxer"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr "camp d'enviament de text"
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "botó d'enviament d'imatges"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr ""
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "camp de formulari desconegut"
+
+#: src/GridText.c:10279
+msgid "Can't open file for uploading"
+msgstr "No ha estat possible obrir el fitxer que voleu carregar."
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr "Enviant %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr "Trencar les línies per a ajustar a l'espai disponible?"
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr "Les línies molt llargues han estat tallades!"
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr "Les línies molt llargues han estat truncades!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "bytes"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "Llegits %s"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Llegits %s de %s."
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/sec"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (aturat durant %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ""
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Premeu 'z' per avortar)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "sí"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "no"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "Descripció:"
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr ""
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr "Camí:"
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(desconegut)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "El document només conté enllaços ocults. Useu el comand L)ist."
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr "Source cache error: disc ple?"
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr "Source cache error: no hi ha prou memòria!"
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+" Aquest fitxer és una representació en HTML de la llista d'adreces de l'X \n"
+" Mosaic. Els enllaços obsolets es poden eliminar amb l'ordre \"eliminar adreça\", que normalment s'executa prement la tecla R "
+"però l'usuari o\n"
+" l'administrador del sistema pot haver-la remapat."
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Podeu esborrar enllaços amb la tecla 'R'<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+" Es poden esborrar enllaços usant l'ordre \"eliminar adreça\". Normalment\n"
+" correspon a la tecla R, però pot ser remapada per l'usuari o  l'administrador\n"
+" del sistema."
+
+#: src/LYBookmark.c:378
+#, fuzzy
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     També es pot editar aquest fitxer amb un editor qualsevol per esborrar\n"
+"     enllaços obsolets o invàlids, o per canviar-ne l'ordre.\n"
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Nota: si editeu aquest fitxer manualment\n"
+"      no canvieu el format entre les línies\n"
+"      ni afegiu cap altra etiqueta d'HTML.\n"
+"      Assegureu-vos de que cada enllaç es guarda en una sola línia."
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "El fitxer es podrà recuperar des de %s durant aquesta sessió"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Ha estat impossible d'accedir al script cgi"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Bon consell"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Un servidor http excel·lent per a VMS està disponible "
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "ací"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Dóna informació del estat actual del suport per a scripts CGI.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Eixint a causa de la interrupció:"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr "(d'una sessió anterior)"
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr "Data límit d'eliminació:"
+
+#: src/LYCookie.c:2562
+msgid "Internal"
+msgstr ""
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr ""
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Ha fallat la inicialització del terminal: potser és un tipus de terminal desconegut."
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Heu d'usar un terminal vt100, 300, etc. amb aquest programa."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "El terminal especificat és desconegut!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "Introduïu un tipus de terminal:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "EL TIPUS DE TERMINAL ESTÀ FIXAT A"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"S'ha produït un error fatal en %s Ver. %s\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Per favor poseu-vos en contacte amb l'administrador per confirmar l'error i,\n"
+"si escau, per \n"
+
+#: src/LYEdit.c:266
+#, fuzzy, c-format
+msgid "Error starting editor, %s"
+msgstr "Error mentre es processava la línia %d de %s\n"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Editor mort pel senyal"
+
+#: src/LYEdit.c:274
+#, fuzzy, c-format
+msgid "Editor returned with error status %s"
+msgstr "L'editor ha finalitzat amb l'error \"%s\""
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "Heu descarregat:"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "Nom de l'arxiu suggerit:"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "Opcions estàndard per a descàrregues:"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "Opcions per a les descàrregues:"
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "Guardar al disc"
+
+#: src/LYDownload.c:545
+#, fuzzy
+msgid "View temporary file"
+msgstr "Veure el fitxer"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "La gravació en disc està desactivada."
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Addicions locals:"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "No heu donat cap nom"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Heu triat:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(cap adreça)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (intern)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (era intern)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (De l'historial)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Heu visitat (excepte POSTs, adreces d'interés, fitxers del menúi de la llista:"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Cap missatge encara)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "S'ha detectat un punter invàlid."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Punter:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Nom del fitxer:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Línia:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "S'ha detectat una pèrdua de memòria."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Conté:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr ""
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr ""
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Pèrdua de memòria (en total) en aquesta execució:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr ""
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Referències en "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "aquest document:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Enllaços visibles:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Enllaços ocults:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Referències"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Enllaços visibles"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Ha estat impossible obtenir l'estat de \"%s\"."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "L'element triat no és ni un fitxer ni un directori! Sol·licitud ignorada."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Ha estat impossible %s a causa d'un error del sistema!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "eliminar %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "moure %s a %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Ja existeig un directori amb aqueix nom! Sol·licitud ignorada."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Ja existeix un fitxer amb aqueix nom! Sol·licitud ignorada."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "El nom especificat ja s'està usant! Sol·licitud ignorada. "
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "La destinació té un propietari diferent! Sol·licitud denegada."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "La destinació no és un directori vàlid! Sol·licitud denegada."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Esborrar tots els fitxers i directoris indicats?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Introduïu la nova ubicació per als elements indicats: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Camí massa llarg"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "L'origen i la destinació coincideixen: sol·licitud ignorada!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Introduïu el nou nom del directori: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Introduïu el nou nom del directori: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "S'ha trobat un caràcter il·legal (separador de camí). Sol·licitudignorada"
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Introduïu la nova ubicació per al directori: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Introduïu la nova ubicació per al fitxer: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Error inesperat: ha estat impossible trobar el separador de camí"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "L'origen i la destinació coincideixen! Sol·licitud ignorada!"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Modificar nom, ubicació o permisos (n, l, p): "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Modificar nom o ubicació (n, l): "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Aquesta característica no està encara disponible!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Introduïu el nom del fitxer que voleu crear: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "S'ha trobat una redirecció il·legal \"//\"! Sol·licitud ignorada."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Introduïu el nom del nou directori: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Crear un fitxer o un directori (f, d): "
+
+#: src/LYLocal.c:1166
+#, fuzzy, c-format
+msgid "Remove directory '%s'?"
+msgstr "Voleu eliminar l'arxiu '%s'?"
+
+#: src/LYLocal.c:1169
+#, fuzzy
+msgid "Remove directory?"
+msgstr " directori"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Voleu eliminar l'arxiu '%s'?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Voleu eliminar l'arxiu?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Voleu eliminar l'enllaç simbòlic '%s'?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Voleu eliminar l'enllaç simbòlic?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Lynx, de moment, no pot gestionar els permisos de fitxers no-UNIX."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "No s'ha pogut obrir el fitxer d'opcions de permisos"
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Especifiqueu els permisos:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Propietari:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Grup"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Altres:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr ""
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Format invàlid."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Sintaxi incorrecta."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr ""
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr ""
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Executant %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Executant una ordre del sistema. Pot tardar una mica."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Directori actual:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Selecció actual:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Actualment no hi ha res seleccionat."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "element marcat:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "elements marcats:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Nom de fitxer il·legal; sol·licitud ignorada."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Està prohibida la instal·lació en el directori que heu triat."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "L'element que heu triat no és un directori! Solicitud ignorada."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Un moment..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr ""
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "L'origen i la destinació són el mateix: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "És aquest, el directori de destinació: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Instal·lació completada"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "La URL temporal o la llista serien massa llargues."
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Enviant"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr ""
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr ""
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "Potser ho volieu saber."
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "Aquest missatge va ser generat automàticament per"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr "No s'ha trobat Winsock."
+
+#: src/LYMain.c:1226
+#, fuzzy
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Heu de definir una àrea TMP o TEMP vàlida!\n"
+
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+msgid "No such directory"
+msgstr "No existeix el directori"
+
+#: src/LYMain.c:1464
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"El fitxer de configuració %s no està disponible\n"
+"\n"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Els jocs de caràcters no estan declarats.\n"
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1579
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"El fitxer %s no està disponible.\n"
+"\n"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr "Alerta:"
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr "l'estat de les cookies persistents no es canviarà fins la següent sessió"
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: joc de caràcters %s no reconegut. S'ignorarà.\n"
+
+#: src/LYMain.c:3181
+#, fuzzy, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Versió %s (%s)\n"
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Compilat per a %s el %s a les %s\n"
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+#, fuzzy
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr ""
+"Els drets de còpia pertanyen a la Universitat de Kansas, el CERN i altres\n"
+"contribuïdors.\n"
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Distribuït sota la Llicència Pública General.\n"
+
+#: src/LYMain.c:3244
+#, fuzzy
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+"Vegeu http://lynx.browser.org/ i l'ajuda en línia per a més informació.\n"
+"\n"
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "UTILITZACIÓ: %s [opcions] [arxiu]\n"
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr "Les opcions són:\n"
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: l'opció no és vàlida: %s\n"
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Error intern: l'enllaç del ratolí no és vàlid: %d!"
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr "Una URL especificada per l'usuari"
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr ""
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr "Pantalla d'ajuda"
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr "Índex del sistema"
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr "Entrar en la pantalla principal"
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr "No hi ha cap document més"
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "el joc de caràcters per a aquest document està especificat explicitament"
+
+#: src/LYMainLoop.c:5052
+msgid "cd to:"
+msgstr "canvia al directori:"
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr "Un component del camí no és un directori"
+
+#: src/LYMainLoop.c:5080
+msgid "failed to change directory"
+msgstr "no ha estat possible canviar de directori"
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr "Tornant a analitzar el document amb les opcions actuals..."
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Error fatal: no s'ha pogut obrir el fitxer d'eixida %s\n"
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:6960
+msgid "Current URL is empty."
+msgstr "La URL actual és buida."
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "No s'ha pogut copiar al porta-retalls."
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr "La URL del document s'ha copiat al porta-retalls."
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr "La URL de l'enllaç s'ha copiat al porta-retalls."
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr "No hi ha cap URL al porta-retalls."
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+msgid "-index-"
+msgstr "-índex-"
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr "lynx: No s'ha pogut accedir al fitxer inicial"
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: No s'ha trobat el fitxer o no és text/html ni text/plain"
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr "      Eixint..."
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr "-més-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr ""
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Per favor, indiqueu la vostra adreça per al remit (capçalera De:)\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Per favor indiqueu o editeu l'assumpte\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Per favor indiqueu o editeu la capçalera Organització:\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Per favor, introduïu el missatge."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "El missatge no conté text original!"
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "B revisar/editar fixers de favorits"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "B fitxer de favorits:"
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2242
+msgid "Novice"
+msgstr ""
+
+#: src/LYOptions.c:2243
+msgid "Intermediate"
+msgstr ""
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2279
+#, fuzzy
+msgid "as links"
+msgstr "ací"
+
+#: src/LYOptions.c:2286
+#, fuzzy
+msgid "show filename"
+msgstr " (nom de fitxer incorrecte)"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2329
+#, fuzzy
+msgid "Directories first"
+msgstr "Subdirectoris:"
+
+#: src/LYOptions.c:2330
+#, fuzzy
+msgid "Files first"
+msgstr " primer"
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr ""
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+#, fuzzy
+msgid "By Name"
+msgstr "Nom:"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+msgid "By Size"
+msgstr ""
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+#, fuzzy
+msgid "By Date"
+msgstr "Data:"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2346
+#, fuzzy
+msgid "By Group"
+msgstr "Grup"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, fuzzy, c-format
+msgid "Show %s/sec rate"
+msgstr "Mostrar taxa de transferència"
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2379
+#, fuzzy
+msgid "Show progressbar"
+msgstr "Mostrar la barra de desplaçament"
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2395
+#, fuzzy
+msgid "Accept all types"
+msgstr "Acceptar els canvis"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Useu %s per a invocar el menú d'opcions"
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr "(les opcions marcades amb (!) no es desen)"
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "Preferències generals"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "Tipus d'usuari"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "Editor"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "Tipus de recerca"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "Cookies"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "Teclat"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "Mode del teclat"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "Tecles d'emacs"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "Tecles de VI"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr ""
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr "Configuració del teclat"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "Pantalla i joc de caràcters"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+#, fuzzy
+msgid "Use locale-based character set"
+msgstr "Joc de caràcters"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "Joc de caràcters"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "Joc de caràcters predeterminat"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "mode CJK"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "8-bits cru"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr ""
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "Apariència dels documents"
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "En color"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "Mostrar cursor"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+#, fuzzy
+msgid "Underline links"
+msgstr "Enllaços ocults:"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr "Mostrar la barra de desplaçament"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr ""
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "Recuperació d'errors de HTML"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "Mostrar imatges"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "Detalls sobre imatges"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "Capçaleres que es transmeten als servidors remots"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "Adreça electrònica personal"
+
+#: src/LYOptions.c:3760
+#, fuzzy
+msgid "Password for anonymous ftp"
+msgstr "Contrasenya per al servidor de notícies '%s':"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+#, fuzzy
+msgid "Preferred media type"
+msgstr "%d bytes transferits"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+#, fuzzy
+msgid "Preferred encoding"
+msgstr "Idioma preferit"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "Joc de caràcters preferit"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "Idioma preferit"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "Identificació del navegador"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "Fitxers: llistat i accés"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "Criteri d'ordenació per a FTP"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "Criteri d'ordenació local"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+#, fuzzy
+msgid "Local directory sort order"
+msgstr "Criteri d'ordenació local"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "Mostrar fitxers .*"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "Enllaços d'execució"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr "Mostrar taxa de transferència"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "Fitxers i pantalles especials"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr ""
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "Editar fitxers de favorits"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "Veure el menú de múltiples fitxers d'adreces"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "Fitxer de favorits"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "Pàgines visitades"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr "Veure el fitxer"
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Imprimir treball complet.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Document:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Nombre de línies:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Nombre de pàgines:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "pàgines"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "pàgina"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(aproximadament)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Algunes funcions d'impressió han estat desactivades!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Opcions estàndard d'impressió:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Opcions d'impressió:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Gravar en un arxiu local"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Gravar en disc està desactivat"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Enviar l'arxiu per correu"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Imprimir en pantalla"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Imprimir en una impressora connectada al vostre terminal"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"S'ha trobat un error sintàctic mentre s'analitzava\n"
+"la variable COLOR en el fitxer de configuració:\n"
+"La línia ha de ser de la forma:\n"
+"COLOR:NOMBRE_ENTER:PRIMER_PLA:FONS\n"
+"\n"
+"Ací PRIMER_PLA i FONS han de ser:\n"
+"Les cadenes especials \"nocolor\" o \"default\", o\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Línia incorrecta:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "el remapatge de %s a %s per a %s ha fallat\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "el remapatge de %s a %s ha fallat\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr ""
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: impossible iniciar, el fitxer de regles del CERN %s no estàdisponible\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(sense nom)"
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Més de %d includes imbricats en lynx.cfg: potser hi ha un bucle?\n"
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "L'últim include ha estat \"%s\", \n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "inclós des de \"%s\".\n"
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr "Les dades següents s'han llegit del vostre fitxer lynx.cfg."
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr "Per favor, llegiu "
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr "si necessiteu més informació."
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr "RECARREGAR ELS CANVIS"
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr "Configuració primària"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "Directori que veieu actualment"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Nom:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "Directori triat"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "Arxiu triat"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "Enllaç simbòlic que heu triat"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "Element que heu triat"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "Nom complet:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "Ha estat impossible seguir l'enllaç"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "Apunta al fitxer:"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "Nom del propietari:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Nom del grup:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Grandària:"
+
+#: src/LYShowInfo.c:227
+#, fuzzy
+msgid "(bytes)"
+msgstr "bytes"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Data de creació:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Última modificació:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Últim accés:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Permisos d'accés"
+
+#: src/LYShowInfo.c:279
+#, fuzzy
+msgid "Group:"
+msgstr "Grup"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Fitxer que veieu actualment"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Nom:"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Joc de caràcters:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Servidor:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Data:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Últ. mod.:"
+
+#: src/LYShowInfo.c:352
+#, fuzzy
+msgid "Expires:"
+msgstr "&nbsp;Expira:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr ""
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Idioma:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr ""
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr ""
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Propietari(s):"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "grandària:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "línies"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr ""
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "font"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "normal"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ""
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ""
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ""
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ""
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ""
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "mode:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Enllaç triat"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Mètode:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr ""
+
+#: src/LYShowInfo.c:436
+#, fuzzy
+msgid "Action:"
+msgstr "Ubicació: "
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(Camp de formulari)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "No hi ha enllaços en aquesta pàgina"
+
+#: src/LYShowInfo.c:455
+#, fuzzy
+msgid "Server Headers:"
+msgstr "Servidor:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr ""
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "ERROR! La instrucció de càrrega no està ben configurada"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "S'ha trobat la redirecció il·legal \"../\"! Sol·licitud ignorada."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "S'ha trobat un caràcter no vàlid \"/\"! Sol·licitud ignorada."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Redirecció il·legal amb \"~\"! Sol·licitud ignorada."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Ha estat impossible carregar el fitxer."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Carregar a:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Opcions de càrrega:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr ""
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr "Massa fitxers temporals"
+
+#: src/LYUtils.c:3719
+msgid "unknown restriction"
+msgstr "restricció desconeguda"
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "No s'hi han establert restriccions.\n"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Restriccions:\n"
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr "No s'ha trobat el directori d'inici (HOME)"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Normalment desactivat. Veieu ENABLE_LYNXRC en lynx.cfg\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies permet l'usuari que indique a Lynx que accepte totes\n"
+"les cookies automàticament. El valor predeterminat és \"FALSE\" de forma\n"
+"que el programa preguntarà abans d'acceptar cap cookie. Doneu a \n"
+"accept_all_cookies el valor \"TRUE\" per acceptar qualsevol cookie.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file especifica el nom i la ubicació del fitxer d'adreces\n"
+"d'interés predeterminat, en el qual l'usuari pot enganxar enllaços\n"
+"per accedir-hi posteriorment amb facilitat.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Si el valor de case_sensitive_searching és \"on\", quan l'usuari realitze\n"
+"una recerca usant les tecles \"s\" o \"/\" les lletres majúscules i\n"
+"minúscules seran considerades lletres diferents. El valor predeterminat\n"
+"és \"off\".\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"La definició de character_set (joc de caràcters) controla la\n"
+"representació de caràcters de 8 bits en el vostre terminal. Si no hi\n"
+"apareixen correctament proveu de canviar-ne a un altre\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains i cookie_reject_domains són llistes de dominis\n"
+"delimitats per comues dels quals Lynx acceptarà o rebutjarà (respectivament)\n"
+"totes les cookies. Si s'especifica un domini en totes dues llistes\n"
+
+#: src/LYrcFile.c:357
+#, fuzzy
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file especifica el fitxer del qual es llegeixen les cookies\n"
+"persistents. Per omissió és ~/.lynx_cookies.\n"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains i \n"
+"cookie_query_invalid_domains són llistes separades per comes els\n"
+"dominis de les quals se sotmeten a diversos graus de comprovació\n"
+"de validesa. Si un domini \n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order^indica^l'ordre^en^què^s'ha^de^llistar^el^directori^sota\n"
+"DIRED_SUPPORT (si està disponible). Per omissió és \"ORDER_BY_NAME\".\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles^indica^com^s'ha^de^mostrar^el^directori^sota^DIRED_SUPPORT\n"
+"(si^està^disponible).^Per^omissió^és^\"MIXED_STYLE\",^que^ordena^els^fitxers\n"
+"i^els^directoris^indistintament.^\"FILES_FIRST\"^llista^primer^els^fitxers^i\n"
+"\"DIRECTORIES_FIRST\" llista primer els directoris.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Si emacs_keys té el valor \"on\", les tecles de moviment seran les\n"
+"habituals a l'EMACS:\n"
+"  ^N = avall     ^P = amunt\n"
+"  ^B = esquerra  ^F = dreta\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor indica quin editor s'usarà per a editar fitxers locals o per a\n"
+"enviar correu. Si no se n'especifica cap l'edició de fitxers quedarà\n"
+"desactivada (tret que s'active des de la línia d'ordres) i s'usarà l'editor\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method^indica^com^s'ha^de^realitzar^l'ordenació^quan^es\n"
+"visualitzen^llistes^de^fitxers^com^ara^directoris^FTP.^Les^opcions^són:\n"
+"^^^BY_FILENAME\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr "lineedit_mode especifica \n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr "personal_mail_address especifica la vostra adreça de correu. L'adre\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset especifica el joc de caràcters en notació MIME\n"
+"(p. ex.: ISO-8859-2) que Lynx indicarà que preferiu quan faça\n"
+"sol·licituds a servidors que usen la capçalera Accept-Charset. El\n"
+"valor NO ha de ser ni ISO-8859-1 ni US-ASCII atés que aquests són\n"
+"els valors per omissió. Podeu posar-hi una llista separada per comes.\n"
+"Si hi ha cap fitxer amb el joc de caràcters triat, el servidor l'envia.\n"
+"Si la capçalera Accept-Charset no està present, es considera que \n"
+"qualsevol joc de car\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language especifica l'idioma en notació MIME (p. ex.: ca,\n"
+"en; pot ser una llista separada per comes per ordre de preferència)\n"
+"que el programa indicarà com a preferit en les sol·licituds als \n"
+"servidors. Si està disponible el servidor l'usarà; si no, usarà\n"
+"l'idioma que tinga establert per omissió.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Si run_all_execution_links està activat els enllaços d'execució \n"
+"s'executen \n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Si run_all_execution_links_on_local_files està activat els enllaços\n"
+"d'execució que es troben en fitxers locals s'executen quan se\n"
+"seleccionen. Aquesta opció és diferent de run_all_execution_links\n"
+"en el fet que només es poden executar fitxers que es troben en \n"
+"l'ordinador local que tinguen permisos d'execució.\n"
+"\n"
+"ALERTA: Açò pot ser perillós. Atés que es possible veure\n"
+"        informació escrita per fonts desconegudes, existeix la\n"
+"        possibilitat de crear enllaços troians. Els enllaços\n"
+"        troians poden esborrar fitxers o comprometre la seguretat\n"
+"        del sistema. Aquesta opció només hauria d'activar-se si\n"
+"        veieu informació de confiança.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor indica si s'ha d'\"amagar\" el cursor a la dreta de la\n"
+"pantalla (i avall si és possible), o si s'ha de col·locar a l'esquerra\n"
+"de l'enllaç actual en els documents o de l'opció actual en les finestres\n"
+"de sel\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr "L'opció show_dotfiles indica que s'han d'incloure els \n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode especifica el nivell d'experiència que té l'usuari amb Lynx.\n"
+"Per omissió és \"NOVICE\"\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Si el valor de verbose_images és \"on\", lynx mostrarà el nom del fitxer\n"
+"de la imatge en lloc de [INLINE], [LINK] o [IMAGE]\n"
+"Vegeu també VERBOSE_IMAGES en el fitxer lynx.cfg\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Si vi_keys es posa a \"on\", podreu usar les tecles de moviment de VI\n"
+"  j = avall      k = amunt\n"
+"  h = esquerra   l = dreta\n"
+"Només en minúscula. L\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"La variable visited_links controla la forma en què Lynx organitza la\n"
+"informació en la pàgina d'enllaços visitats.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr "Si poseu keypad_mode \n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Si el valor de keypad_mode és \"LINKS_ARE_NUMBERED\" (enllaços numerats),\n"
+"aleshores apareixerà un número al costat de cada enllaç i podreu triar\n"
+"l'enllaç desitjat prement la tecla del número corresponent.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"NOTA: Alguns documents amb format fix poden aparéixer desfigurats quan\n"
+"trieu els valors \"LINKS_ARE_NUMBERED\" (enllaços numerats) o\n"
+"\"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" (enllaços i camps de formulari\n"
+"numerats.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+#, fuzzy
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Fitxer que conté els valors per omissió de l'usuari\n"
+"\n"
+"Aquest fitxer conté les opcions desades en la pantalla d'opcions\n"
+"(normalment amb la tecla '->'). Normalment no cal editar-lo manualment\n"
+"atés que els valors per omissió es poden canviar des de la pantalla\n"
+"d'opcions i la propera vegada que deseu les opcions aquest fitxer serà\n"
+"completament reescrit. Ja ho sabeu...\n"
+"Si busqueu el fitxer de configuració: normalment s'anomena lynx.cfg i\n"
+"té format i contingut diferents.\n"
+"No és aquest fitxer.\n"
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "L'historial ha assolit el màxim! Aquest document no s'hi afegirà."
+
+#~ msgid "KB"
+#~ msgstr "KB"
+
+#~ msgid "reason unknown."
+#~ msgstr "per raons desconegudes."
+
+#~ msgid "Remove '%s' and all of its contents?"
+#~ msgstr "Voleu eliminar \"%s\" i tot el seu contingut?"
+
+#~ msgid "Remove directory and all of its contents?"
+#~ msgstr "Voleu eliminar el directori i tot el seu contingut?"
+
+#~ msgid "create %s"
+#~ msgstr "crear %s"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "Ha estat impossible obrir el fitxer del menú de gestió de fitxers."
diff --git a/po/cs.po b/po/cs.po
new file mode 100644
index 00000000..5eb3a357
--- /dev/null
+++ b/po/cs.po
@@ -0,0 +1,6266 @@
+# Czech translation of the lynx.
+# Copyright (C) 1998 Free Software Foundation, Inc.
+# Jiøí Pavlovský <pavlovsk@ff.cuni.cz>, 1998,2000.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 2000-07-09 13:30+0200\n"
+"Last-Translator: Jiøí Pavlovský  <pavlovsk@ff.cuni.cz>\n"
+"Language-Team: Czech <cs@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Pozor!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Vítejte"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Opravdu chcete ukonèit program?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Opravdu chcete ukonèit Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Spojení bylo pøeru¹eno."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Pøenos dat byl pøeru¹en."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Zru¹eno!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Ru¹ím!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Výbornì!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Hotovo!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Chybný po¾adavek!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "pøedchozí"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "následující obrazovka"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "NÁPOVÌDA!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", nápovìda pro "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Pøíkazy: ¹ipky: pohyb, '?': nápovìda, 'q': ukonèení, '<-': návrat zpìt"
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- mezerník: dal¹í strana, ¹ipky: pohyb, '?': nápovìda. 'q': ukonèení"
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- mezerníkem zobrazíte dal¹í stranu --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL je pøíli¹ dlouhé"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Pole pro textový vstup) Vypnuto. Zapnutí pomocí <return>."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Textové pole) Vypnuto, Zapnutí pomocí <return>."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Textové pole) Zadejte text. Zapnutí pomocí <return> (%s pro editor)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Pole formuláøe) Vypnuto. <return> pro editaci."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Pole formuláøe) Vypnuto. <return> pro editaci (%s pro NO CACHE)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Pole formuláøe) Zadejte text. <return> pro editaci, 2x <return> pro odeslání."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(mailto pole formuláøe) Vypnuto. <return> pro zmìnu."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Pole pro zadání hesla) Vypnuto. Zapnutí pomocí <return>."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEMODIFIKOVATELNÉ pole pro výbìr souboru. NAHORU/DOLÙ èi tab pro odchod."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Pole pro výbìr souboru) Vyberte soubor. NAHORU/DOLÙ èi tab pro odchod."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Pole pro textový vstup) Zadejte text. NAHORU/DOLÙ èi TAB pro odchod."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Textové pole) Zadejte text. NAHORU/DOLÙ èi TAB pro odchod."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Textové pole) Zadejte text. NAHORU/DOLÙ èi TAB pro odchod (%s pro editor)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEMODIFIKOVATELNÉ textové pole formuláøe. NAHORU/DOLÙ èi tab pro odchod."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Pole formuláøe) Zadejte text. <return> pro odeslání."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Pole formuláøe) Zadejte text. <return> ode¹le (%s pro 'NO CACHE')."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Pole formuláøe) Zadejte text. <return> ode¹le, ¹ipky èi TAB pro odchod."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEMODIFIKOVATELNÉ pole formuláøe. NAHORU/DOLÙ èi TAB pro odchod."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(mailto pole formuláøe) Zadejte text. <return> ode¹le, ¹ipky pro odchod."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "('mailto' pole formuláøe) Po¹ta je vypnuta, tudí¾ nemù¾ete nic poslat."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Pole pro zadání hesla) Zadejte text. NAHORU/DOLÙ èi tab pro odchod."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEMODIFIKOVATELNÉ heslo formuláøe. NAHORU/DOLÙ èi tab pro odchod."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Za¹krtávací pole). ©ipka vpravo èi <return> pro pøepnutí."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEMODIFIKOVATELNÉ za¹krtávací pole. NAHORU/DOLÙ èi tab pro odchod."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Pøepínací tlaèítko) ©ipka vpravo èi <return> pro pøepnutí."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEMODIFIKOVATELNÉ pøepínací tlaèítko. NAHORU/DOLÙ èi tab pro odchod."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Odeslat ('x' pro 'NO CACHE') na "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Odeslat na "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Tlaèítko pro odeslání) ©ipka vpravo èi <return> pro odeslání (x pro NO CACHE)"
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Tlaèítko pro odeslání) ©ipka vpravo èi <return> pro odeslání"
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "(VYPNUTÉ tlaèítko pro odeslání) NAHORU/DOLÙ èi tab pro odchod."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Odeslat 'mailto' formuláø na "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(Tlaèítko pro odeslání) ©ipka vpravo èi <return> pro odeslání"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(Tlaèítko pro odeslání) Po¹ta je zakázána, tudí¾ nemù¾ete nic odeslat."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Tlaèítko pro smazání) ©ipka vpravo èi <return> pro smazání vlo¾ených údajù."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "(VYPNUTÉ tlaèítko pro smazání) NAHORU/DOLÙ èi tab pro odchod."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Seznam voleb) <return> a ¹ipky pro vybrání."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Nabídka mo¾ností) <return> a ¹ipky pro zvolení."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "NEMODIFIKOVATELNÝ seznam voleb. <return> èi ¹ipky pro prohlí¾ení èi odchod"
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "NEMODIFIKOVATELNÁ nabídka mo¾ností. <return> èi ¹ipky pro prohlí¾ení èi odchod"
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Odesílám formuláø..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Ma¾u obsah formuláøe..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Znovu nahrávám dokument. V¹echny údaje zapsané do formuláøù budou ztraceny!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Varování: Data formuláøe nelze pøevést do znakové sady %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(BÌ®NÝ ODKAZ)   Pou¾ijte ¹ipku vpravo èi <return> pro aktivaci."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "Po¾adovaný zdroj není v tuto chvíli pøístupný."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Stisknìte nìjakou pøíkazovou klávesu: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Vyhledávám "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Získávám %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Pøeskakuji %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Pou¾ívám %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Chybné URL %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Adresa %s je chybnì utvoøená."
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Pøístup k WWW souboru nelze získat!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Toto je prohledávatelný rejstøík. Pou¾ijte %s pro hledání."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Více-- Toto je prohledávatelný rejstøík. Pou¾ijte %s pro hledání."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Èíslo odkazu, které jste zadal je chybné."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Zobrazuji zdrojový kód.  Stisknìte '\\' pro návrat k interpretované verzi."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  ©ipky: Nahoru/Dolù pro pohyb. Vpravo následuje odkaz; vlevo se vrátí zpìt.  \n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "H>Nápovìda Vo)lby P>Tisk G>Jdi M>Hlavní obrazovka /=hledej [delete]=historie \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "  O)statní pøík. H>Nápovìda K)lávesová mapa G>Jdi_na P>Tisk M>Hlavní obrazovka o>volby Q>Konec\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "  O)statní pøík. B>Zpìt E)ditovat D>Stáhnout ^R>Znovu nahrát ^W>Smazat obraz hledat: /\n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O)statní pøík. C>Komentáø Historie: <backspace> Zálo¾ky: V>Zobrazit A>Nová R>Smazat\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Pomocí klávesnice vlo¾te text do pole                             "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U vyma¾e ve¹kerý text v poli; [Backspace] sma¾e jeden znak          "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "      Ctrl-U vyma¾e ve¹kerý text v poli; [Backspace] sma¾e jeden znak      "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s vyma¾e ve¹kerý text v poli; [Backspace] sma¾e jeden znak          "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "    %s vyma¾e text v poli; [Backspace] sma¾e jeden znak          "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Pokus o odeslání chybného 'mailto' formuláøe! Zru¹eno!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Varování! Øídící znaky v po¹tovní adrese byly nahrazeny ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "Po¹ta je zakázána! Nelze nic poslat."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Odeslání 'mailto' formuláøe se nezdaøilo!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Odeslání 'mailto' formuláøe zru¹eno!!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Posílám obsah formuláøe..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "'Mailto' URL neobsahuje po¹tovní adresu!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Doèasný soubor pro 'mailto' URL nelze otevøít!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Chcete zaøadit text pùvodní zprávy?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Chcete zaøadit pøedzpracovaný zdrojový text?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Spou¹tím vámi zvolený textový editor pro editaci zprávy"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Chyba pøi startu editoru. Zkontrolujte nastavení editoru v konfiguraèním menu."
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Odeslat tento komentáø?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Odeslat tuto zprávu?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Odesílám va¹i zprávu..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Odesílám vá¹ komentáø:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Toto není textová oblast; externí editor nelze pou¾ít."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Toto není textová oblast; pøíkaz nelze pou¾ít."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "file: AKCE jsou zakázány!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "Pou¾ívání odkazù ze vzdálených dokumentù pro lokální soubory je zakázáno!"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "Pøístup k místním souborùm je zakázán!"
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "Pou¾ívání zálo¾ek pro lokální soubory je zakázáno!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Toto zvlá¹tní URL není v externích dokumentech povoleno!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Stisknìte <return> pro návrat do programu Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Spou¹tím DCL proces. Pou¾ijte 'logout' pro návrat do programu Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Napi¹te EXIT pro návrat do programu Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Spou¹tím implicitní shell. Pou¾ijte 'exit' pro návrat do programu Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "Spou¹tìní je nyní vypnuto."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "Pøíkaz 'd' je nyní vypnut."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Nemù¾ete stahovat vstupní pole."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Formuláø obsahuje 'mailto' akci! Nelze stáhnout."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Nemù¾ete stáhnout 'mailto:' odkaz."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Nemù¾ete stahovat cookies."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Polo¾ku z menu voleb tisku nelze stahovat."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Polo¾ku z menu voleb posílání nelze stahovat."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Polo¾ku z menu nastavení práv souborù nelze stahovat."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Toto zvlá¹tní URL nemù¾e být sta¾eno!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Není co stáhnout."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Sledování ZAPNUTO!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Sledování VYPNUTO!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Budou zaøazeny odkazy na v¹echny obrázky! Znovu naèítám..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Implicitní zpracování obrázkù obnoveno! Znovu naèítám..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Zobrazuji pseudo-popisy pro vlo¾ené obrázky bez popisu! Znovu naèítám..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Vlo¾ené obrázky bez popisu budou ignorovány! Znovu naèítám..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Pøímý 8bitový èi CJK re¾im VYPNUT! Znovu naèítám..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Pøímý 8bitový èi CJK re¾im ZAPNUT! Znovu naèítám..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Poslat HEAD po¾adavek pro D)okument, L>Odkaz èi C>Zru¹it? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Poslat HEAD po¾adavek pro D)okument èi C>Zru¹it? (d,c): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Lituji, dokument není http URL."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Lituji, odkaz není http URL."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Akce tohoto formuláøe je vypnuta."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Akce tohoto formuláøe není http URL."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "Toto není http URL ani akce formuláøe!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Toto zvlá¹tní URL nemù¾e být akcí formuláøe!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "URL není ve startovní oblasti!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "Odesílání pøíspìvkù do diskuzních skupin je zakázáno!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Správce souborù je zakázán!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "®ádný soubor zkratek není dostupný."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Skoèit na ('?' pro seznam): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Není povoleno pøeskakovat na zkrácená URL!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Náhodná URL jsou zakázána! Pou¾ijte zkratku."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Doposud nebyla pou¾ita ¾ádná náhodná URL."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Pou¾ívání zálo¾ek je nyní zakázáno."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "Spou¹tìní programù pøes soubory zálo¾ek je zakázáno."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Soubor se zálo¾kami není zadán. Pou¾ijte %s pro zobrazení mo¾ností."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Doèasný soubor pro konverzi X Mosaic 'hotlistu' nelze otevøít."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "CHYBA - soubor zálo¾ek nelze otevøít."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Zálo¾ku nelze smazat: soubor zálo¾ek nelze otevøít"
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Zálo¾ku nelze smazat: doèasný soubor nelze otevøít"
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Chyba pøi pøejmenovávání doèasného souboru."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Chyba pøi pøejmenovávání doèasného souboru."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Zálo¾ku nelze smazat: doèasný soubor nelze kopírovat"
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Zálo¾ku nelze smazat: doèasný soubor nelze znovu otevøít"
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Zálo¾ka je del¹í ne¾ jeden øádek."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Odstranìní zálo¾ky se nezdaøilo."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Soubory se zálo¾kami nelze prolézat (pouze http URL)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Soubor se zálo¾kami nelze otevøít. Klávesou 'a' nejprve ulo¾te odkaz"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Tento soubor zálo¾ek je prázdný!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "Poslat HEAD po¾adavek pro D)okument èi C>Zru¹it? (d,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Ulo¾it do souboru se zálo¾kami D)okument, L>Odkaz èi C>Zru¹it? (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Ulo¾it do souboru se zálo¾kami D)okument èi C>Zru¹it? (d,c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Ulo¾it do souboru se zálo¾kami L>Odkaz èi C>Zru¹it? (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Zálo¾ky pro dokumenty s POST obsahem ukládat nelze."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Formuláøová pole/odkazy nelze ukládat."
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Zálo¾ky pro historii, showinfo, menu a seznamy nelze ukládat."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Opravdu chcete vymazat tento odkaz z va¹eho souboru se zálo¾kami?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Chybná adresa."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Historické komentáøe zapnuto (minimální komentáøe potlaèeny)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Historické komentáøe vypnuty (minimální komentáøe aktivní)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Historické komentáøe zapnuty (platné komentáøe potlaèeny)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Historické komentáøe vypnuty (platné komentáøù aktivní)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Pou¾ívání minimálních komentáøù zapnuto a aktivní!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Pou¾ívání minimálních komentáøù vypnuto (platné komentáøe aktivní)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Pou¾ívání minimálních komentáøù zapnuto (ale aktivní jsou historické komentáøe)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Pou¾ívání minimálních komentáøù vypnuto (historické komentáøù aktivní)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "Pou¾ívání '>' jako zakonèení znaèek a citací zapnuto!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "Pou¾ívání '>' jako zakonèení znaèek a citací vypnuto!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Pou¾ívám 'TagSoup' metodu zpracování HTML."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Pou¾ívám 'SortaSGML' metodu zpracování HTML!"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Ji¾ jste na konci dokumentu."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Ji¾ jste na zaèátku dokumentu."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Ji¾ jste na stranì %d."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Odkaz èíslo %d je právì zvolen."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Jste na prvním dokumentu."
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Nad tímto øádkem ji¾ nejsou ¾ádné odkazy."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Pod tímto øádkem ji¾ nejsou ¾ádné odkazy."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Maximální délka dosa¾ena! Sma¾te text, nebo se pøesuòte mimo pole."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Toto není bì¾ný odkaz ani tlaèítko na odeslání formuláøe."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "V¾dy musí být vybráno alespoò jedno z pøepínacích tlaèítek!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Tento formuláø nemá tlaèítko pro odeslání dat. Odeslat jediné textové pole?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Chcete se vrátit k pøedchozímu dokumentu?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Pou¾ijte ¹ipky èi tabelátor pro pøesun mimo pole."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Vlo¾te text. Pou¾ijte ¹ipky èi tabelátor pro pøesun mimo pole."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Chybné HTML!! Formuláø nemá definovánu ¾ádnou akci. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Chybné HTML!! Nelze vytvoøit vyskakovací okno!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Nelze vytvoøit vyskakovací okno!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Náhodná URL je zakázáno pou¾ít jako cíl!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Ne-http URL je zakázáno pou¾ít jako cíl!"
+
+#: LYMessages.c:360
+#, fuzzy, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "\"cso:\" URL nesmíte pou¾ít jako cíl!"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "Cílové URL: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Editace aktuálního cílového URL: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Editace pøedchozího cílového URL: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Editace pøedchozího cílového URL: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "Aktuální dokument obsahuje POST data."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Editace URL tohoto dokumentu: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Editace URL aktuálního odkazu: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "Nemù¾ete editovat URL Správce souborù"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Zadejte dotaz na databázi: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Zadejte hledaný øetìzec: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Editace aktuálního dotazu: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Editace pøedchozího dotazu: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Editace pøedchozího dotazu: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Pou¾ijte Control-R pro opìtovné odeslání dotazu."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Editovat aktuální zkratku: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Editovat pøedchozí zkratku: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Editovat pøedchozí zkratku: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Klávesa '%c' není svázána se souborem zkratek!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Soubor zkratek nelze nalézt!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Soubor zkratek nelze otevøít!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Chyba pøi ètení souboru zkratek!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Pøi ètení souboru zkratek do¹la pamì»!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Pøi ètení tabulky zkratek do¹la pamì»!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Není dostupný ¾ádný rejstøík."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Opravdu chcete pøejít na hlavní obrazovku?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "Ji¾ jste na hlavní obrazovce!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Toto není prohledávatelný rejstøík -- pou¾ijte '/' pro vyhledání øetìzce"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Není udán vlastník tohoto dokumentu, tudí¾ nemù¾ete zaslat komentáø."
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Není udán vlastník. Pou¾ít %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Chcete zaslat komentáø?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "Po¹ta je zakázána, tudí¾ nemù¾ete zaslat komentáø."
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "Pou¾ití pøíkazu 'e' je nyní zakázáno."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "pou¾ívání externího editoru je nyní zakázáno."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Systémová chyba - status nelze zjistit."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Není zadán ¾ádný editor!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "Pou¾ití pøíkazu 'p' je nyní zakázáno."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "Dokument nemá ¾ádnou nástrojovou li¹tu ani reklamní nudli."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Nelze otevøít 'traverse' soubor."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Nelze otevøít 'traverse_found' soubor."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Nelze otevøít 'traverse_reject' soubor."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Nelze otevøít 'traverse_errors' soubor."
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "PROLÉZÁNÍ BYLO PØERU©ENO"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Následovat odkaz (èi jít na odkaz nebo stránku) èíslo: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Zvolte èíslo volby (èi strany): "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Volba èíslo %d je právì aktivní."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Jste na konci seznamu voleb."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Jste na zaèátku seznamu voleb."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Ji¾ jste na stranì %d nabídky."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Zadal jste chybné èíslo volby."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Chybné HTML!! Pou¾ijte -trace pro diagnostiku. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Zadejte jméno souboru, do kterého mám ulo¾it"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Data nelze do souboru ulo¾it -- spus»te WWW místnì"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Doèasný soubor nelze otevøít!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Výstupní soubor nelze otevøít! Ru¹ím!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Spou¹tìní programù je zakázáno."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Tento soubor nelze spustit. Viz Konfiguraèní menu (pou¾ijte %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Podpora pro spou¹tìní programù byla vypnuta pøi pøekladu programu."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Tento soubor nelze na tomto terminálu zobrazit."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Tento soubor nelze na tomto terminálu zobrazit: D>Stáhnout èi C>Zru¹it"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D>Stáhnout èi C>Zru¹it"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Zru¹eno"
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Stahuji soubor.  - POÈKEJTE, PROSÍM -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Zadejte jméno souboru: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Editace pøedchozího jména souboru: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Editace pøedchozího jména souboru: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Zadejte nové jméno souboru: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Jméno souboru nesmí zaèínat teèkou."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Soubor ji¾ existuje. Vytvoøit jeho novou verzi?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Soubor ji¾ existuje. Pøepsat?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Do souboru nelze zapisovat."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "CHYBA! - pøíkaz pro stahování je chybný"
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Soubor nelze stáhnout."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Ètu adresáø..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Sestavuji výpis adresáøe..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Ukládám..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Soubor '%s' nelze editovat."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Pøístup k dokumentu nelze získat!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Soubor není dostupný."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Adresáø není dostupný."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Nelze naèíst data."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "V souèasné dobì nelze vzdálené WWW dokumenty z Lynxu (e)ditovat."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Toto pole nemù¾e být (e)ditováno pomocí externího editoru."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Chybné pravidlo"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Chybí operandy: "
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Nejste oprávnìn editovat tento soubor."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Titulek: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Pøedmìt: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "U¾ivatelské jméno: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Heslo: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Je tøena u¾ivatelské jméno a heslo!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "Lynx: Je tøeba heslo!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Smazat v¹echny autorizaèní informace pro toto sezení?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Autorizaèní informace smazány."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Autorizace se nezdaøila. Nový pokus?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "podpora cgi byla vypnuta."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Podpora pro spou¹tìní cgi byla vypnuta pøi pøekladu programu."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Není znám zpùsob jak pøevést %s na %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Spojení nelze navázat."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Spojení nelze navázat."
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Chybný po¾adavek na spu¹tìní programu."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Odkaz na program obsahuje chybný znak `%c'."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Odkaz na program nesmí být relativní ('../')'."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Odkaz na program odmítnut kvùli umístìní èi názvu cesty."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "Po¹ta je zakázána!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Pøístup je povolen pouze k místním souborùm a slu¾bám."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Pou¾ití telnetu je zakázáno!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Je zakázáno uvádìt port u telnetu."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "Pøístup do diskuzních skupin je zakázán!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Pou¾ití rlogin je zakázáno!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Pou¾ití FTP je zakázáno!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Tento dokument neobsahuje ¾ádné odkazy."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Tento dokument obsahuje pouze skryté odkazy."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Soubor s pøíkazy nelze otevøít."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Odeslání pøíspìvku do diskuzních skupin ZRU©ENO!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Spou¹tím editor pro editaci diskuzního pøíspìvku."
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Odeslat tuto zprávu?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Pøipojit '%s'?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Zasílám do diskuzních skupin..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Máte nepøeètenou po¹tu. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** Máte po¹tu. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Máte novou po¹tu. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Po¾adavek na vlo¾ení souboru byl zru¹en!!!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Pro soubor není dostatek pamìti!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Soubor nelze pro ètení otevøít!"
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Soubor neexistuje."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Soubor neexistuje. Zadejte jiný, èi zru¹te:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Soubor je neèitelný."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Soubor je neèitelný. Zadejte jiný, èi zru¹te:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Není co vlo¾it - soubor má nulovou délku."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Po¾adavek na ulo¾ení byl zru¹en!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Po¾adavek na odeslání po¹ty byl zru¹en!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Zobrazuji pøedzpracovaný zdrojový kód. Opravdu jej chcete poslat po¹tou?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Okam¾ik, prosím..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Posílám soubor po¹tou. Okam¾ik, prosím..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "CHYBA - Soubor nelze po¹tou odeslat."
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Délka souboru v obrazovkách je %d. Opravdu jej chcete vytisknout?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Po¾adavek na tisk byl zru¹en!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Zahajte stisknutím <return>: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Ukonèete stisknutím <return>: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Délka souboru ve stranách je %d. Opravdu jej chcete vytisknout?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Ujistìte se, ¾e tiskárna je zapnuta. Tisk zahajte stisknutím <return>:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "CHYBA - není dostatek místa pro soubor!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Doèasný soubor nelze otevøít."
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Soubor s menu voleb tisku nelze otevøít."
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Tisknu soubor. Okam¾ik, prosím..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Zadejte platnou adresu elektronické po¹ty: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "CHYBA! - tiskárna je ¹patnì nastavena!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Klikací mapa z odpovìdi na POST není dostupná!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Chybnì cílený po¾adavek z klikací mapy!"
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "Klientská klikací mapa není pøístupná!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Není dostupná ¾ádná klientská klikací mapa!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "Klientská klikací mapa není dostupná!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Konfiguraèní menu potøebuje obrazovku o alespoò 24 øádcích!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Konfiguraèní menu potøebuje obrazovku o alespoò 23 øádcích!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Konfiguraèní menu potøebuje obrazovku o alespoò 23 øádcích!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Tato klávesa funguje pouze v re¾imu pro pokroèilé u¾ivatele."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Content-type: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Pøíkaz: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr ""
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " verze "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " jako první"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", hádám..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Pøístupová práva pro "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Zvolte "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "velké písmeno"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " z volby,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " pro ulo¾ení,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " do "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " èi "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " rejstøík"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " pro návrat do programu Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Pøijmout zmìny"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Zru¹it zmìny"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "©ipka vlevo zru¹í zmìny"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Ulo¾it konfiguraci na disk"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Stisknìte RETURN pro pøijetí údajù."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Stisknìte RETURN pro pøijetí údajù. Smazáním vyvoláte implicitní nastavení."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Hodnota pøijmuta!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Hodnota pøijmuta! -- VAROVÁNÍ: Lynx je nastaven pro XWINDOWS!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Hodnota pøijmuta! -- VAROVÁNÍ: Lynx není nastaven pro XWINDOWS!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Nemáte oprávnìní mìnit editor!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Promìnnou DISPLAY se nepodaøilo nastavit!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Promìnnou DISPLAY se nepodaøilo nastavit!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Nemáte oprávnìní mìnit soubor zálo¾ek!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "Terminál nepodporuje barvy."
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Terminál '%s' nepodporuje barvy."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "Pøístup k teèkovým souborùm je zakázán!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "Hlavièka User-Agent neobsahuje \"Lynx\" èi \"L_y_n_x\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "V User-Agent pou¾ijte \"L_y_n_x\" èi \"Lynx\", nebo to bude zámìrný podvod!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "Mìnit hodnotu hlavièky User-Agent je zakázáno!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Nemáte oprávnìní mìnit tuto volbu."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Ukládám konfiguraci..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Konfigurace ulo¾ena!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Konfiguraci nelze ulo¾it!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' pro  návrat do programu Lynx"
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr "'>' pro ulo¾ení èi 'r' pro návrat do programu Lynx"
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Stisknìte jakoukoli klávesu pro zmìnu hodnoty; RETURN pro její pøijetí."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Chyba pøi dekompresi doèasného souboru!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Nepodporovaný typ URL!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Nepodporované 'data:' URL! Pou¾ijte SHOWINFO."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Maximální poèet pøesmìrování (10 URL) byl dosa¾en."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Server zaslal chybné URL pro pøesmìrování!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Server po¾aduje %d pøesmìrování POST obsahu na"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P)okraèovat, pou¾ít G)ET èi C>Zru¹it"
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P)okraèovat èi C>Zru¹it "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Pøesmìrování POST obsahu. P)okraèovat, zobrazit U)RL, pou¾ít G)ET èi C>Zru¹it"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Pøesmìrování POST obsahu. P)okraèovat, zobrazit U>RL èi C>Zru¹it"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Dokument z formuláøe s POST obsahem? Odeslat znovu?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Odeslat znovu POST obsah na %s?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Seznam z dokumentu s POST obsahem? Naèíst %s znovu?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Dokument vznikl z POST akce. Hlavièka nemusí být správnì zpracována. Pokraèovat?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Akce formuláøe pou¾ívá POST. Hlavièka nemusí být správnì zpracována. Pokraèovat?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Pokraèovat bez ovìøení u¾ivatelským jménem a heslem?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Pokraèovat (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Na tento poèítaè nelze data metodou POST odeslat."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "Pro toto URL není metoda POST podporována - ignoruji POST data!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Zahazuji POST data..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Dokument nebude znovu naèten!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Umístìní: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' nebylo nalezeno!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Implicitní soubor zálo¾ek"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Obrazovka je pøíli¹ malá! (alespoò 8x35)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Zvolte cíl èi zru¹te pomocí ^G: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Zvolte zálo¾ku, '=' pro menu èi ^G pro zru¹ení: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "L>Duplikovat zálo¾ku v tomto souboru èi C>Zru¹it? (l,c): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Dìlené zálo¾ky nejsou podporovány."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Zvolte zálo¾ku (obrazovka %d/%d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Zvolte zálo¾ku"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Nastavení podsouborù zálo¾ek a jejich popisu (%d/2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Nastavení podsouborù zálo¾ek a jejich popisu"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Písmeno: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Pou¾ijte jméno cesty z pøihla¹ovacího adresáøe a v syntaxi SHELLU!"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Pou¾ijte jméno cesty z domácího adresáøe!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Maximální poèet odkazù na stránku dosa¾en! Pou¾ijte posun o 1/2 strany èi 2 øádky."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "®ádné nav¹tívené odkazy nejsou k dispozici!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Do¹la pamì»! Program pøeru¹en!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Do¹la pamì»! Pøeru¹uji..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Do¹la pamì»!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Správce souborù není k dispozici."
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "Cílové URL v BASE znaèce není absolutní."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "URL není absolutní."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "Obnovovací URL není absolutní."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Posíláte zprávu na:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Posíláte komentáø na:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" S kopií na:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" S kopiemi na:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Odeslání zprávy mù¾ete zru¹it pomocí Ctrl-G.\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Zadejte va¹e jméno, nebo ponechte prázdné, aby jste zùstal v anonymitì.\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+"Pokud chcete dostat odpovìï, udejte adresu\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr "elektronické po¹ty èi jiný kontakt na vás.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Zadejte pøedmìt.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Zadejte adresu pro odeslání kopie této zprávy.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Ponechte prázdné, pokud kopie nechcete poslat.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Zkontrolujte tìlo zprávy:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Stisknìte RETURN pro pokraèování: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Stisknìte RETURN pro úklid: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Pou¾ijte Control-U pro smazání implicitních hodnot.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Zadejte text va¹í zprávy."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" A¾ budete hotov, stisknìte enter a napi¹te jednu teèku (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" na zaèátek øádku a stisknìte opìt enter."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s cookie: %.*s=%.*s   Pøijmout? (Y/N/Always/neVer)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Pøijmout chybnou cookie doménu (%s) pro '%s'?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Pøijmout chybnou cookie cestu (%s) jako prefix '%s'?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Cookie pøijmuto."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Cookie zamítnuto."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Sklad cookies je prázdný."
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "Sklad cookies je prázdný."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr ""
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr ""
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Cookies zakázány)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Cookies v¾dy povoleny)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Pøijetí cookies musí potvrdit u¾ivatel.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Trvalé cookies)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(®ádný titulek)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(®ádné jméno)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(®ádná hodnota)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "Nic"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Konec sezení)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Smazat toto cookie?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Cookie bylo smazáno!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Smazat tuto prázdnou doménu?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Doména byla smazána!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D>Smazat cookies z domény, pøijmout A>V¾dy/P)o potvrzení/V>Nikdy èi C>Zru¹it?"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D>Smazat doménu, pøijmout A>V¾dy/P)o potvrzení/V>Nikdy èi C>Zru¹it?"
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "V¹echna cookie v této doménì byly smazána!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "'A'V¾dy pøijímám z domény '%s'."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "'V'Nikdy nepøijímám z domény '%s'."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "Pøijetí z domény '%s' musí 'p'otvrdit u¾ivatel."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Smazat v¹echny cookies v této doménì?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Ùlo¾na cookies byla vyprázdnìna!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "URL nesmí obsahovat port 19."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "URL nesmí obsahovat port 25."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "URL nesmí obsahovat port %lu."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "URL obsahuje chybný port."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Maximální povolený poèet vnoøení HTML prvkù pøekroèen."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Chybný relativní odkaz! Odtrhuji úvodní teèky."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Nepodaøilo se otevøít soubor pro záznam èinnosti. Sledování vypnuto!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Záznam èinnosti programu Lynx"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Pro toto sezení nebylo sledování spu¹tìno."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Maximální povolený poèet doèasných souborù pøekroèen."
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Hodnota pole formuláøe pøesahuje délku bufferu! Zkra»te ji."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Zmìnìný konec hodnoty pole formuláøe byl spojen s jejím zaèátkem."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Adresáø"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Procházení adresáøù je zakázáno."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "Selektivní pøístup k tomuto adresáøi není zapnut."
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: volání scandir pro adresáø se nezdaøilo"
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Tento adresáø nelze èíst."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Pøístup k po¾adovanému souboru nelze získat."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Nelze nalézt vhodný formát dat pro pøenos."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Soubor pro dekompresi nelze otevøít!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Soubory:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Podadresáøe:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " adresáø"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "O úroveò vý¹e do "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Aktuální adresáø je "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "Od serveru nepøi¹la odpovìï!"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "CSO rejstøík"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Toto je prohledávatelný rejstøík CSO databáze.\n"
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "Výsledky prohledávání CSO"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Posun ukazovátka pro %s selhal\n"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Stisknìte klávesu 's' a zadejte hledaná klíèová slova.\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Toto je prohledávatelný Gopher rejstøík.\n"
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "Gopher rejstøík"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "Gopher Menu"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr " Výsledky hledání"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "Posílám CSO/PH po¾adavek."
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "Posílám Gopher po¾adavek."
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO/PH po¾adavek poslán; èekám na odpovìï."
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopher po¾adavek poslán; èekám na odpovìï."
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Zadejte hledaná klíèová slova.\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Klíèová slova, která zadáte, vám umo¾ní hledat"
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr " jméno osoby v databázi.\n"
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "Spojení uzavøeno ???"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr "Nelze otevøít doèasný soubor pro odeslání diskuzního pøíspìvku."
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Tento klient nepodporuje zasílání zpráv do diskuzních skupin pøes SSL."
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Styl %d `%s' SGML:%s. Písmo %s %.1f bodù.\n"
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tZarovnání=%d, %d tabulátorù. (%.0f pøed, %.0f za)\n"
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tDruh tabulátorù=%d na %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "Bez u¾ivatelského jména a hesla nelze pokraèovat."
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Dal¹í pokus s autorizací není mo¾ný! Kontaktujte pøíslu¹ného webmastera."
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "S proxy autorizací není dal¹í pokus mo¾ný! Kontaktujte pøíslu¹ného webmastera."
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr "Zkou¹im to znovu s proxy autorizací."
+
+#: LYMessages.c:799
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr ""
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Odpovìï je pøíli¹ veliká."
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr "Zadejte WAIS dotaz: "
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "Posílám znovu jako HTTP0 po¾adavek."
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Pøeneseno bajtù: %d"
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "Pøenos dat dokonèen"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Chyba pøi zpracování %d. øádku souboru%s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr "Seznam adres"
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "Soubor se zálo¾kami"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr "Konfigurace"
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr "Sklad cookies"
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr "Aktuální klávesová mapa"
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "Nabídka správce souborù"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "Mo¾nosti stahování"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "Historie"
+
+#: LYMessages.c:820
+#, fuzzy
+msgid "Cache Jar"
+msgstr "Sklad cookies"
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr "Seznam odkazù"
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "Lynx.cfg Informace"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr "Pøevedený 'Hotlist' Mosaicu"
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "Konfiguraèní menu"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "Menu nastavení práv souboru"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "Menu voleb tisku"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "Informace o aktuálním dokumentu"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "Zprávy stavové øádky"
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "Menu voleb posílání"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr "Nav¹tívené odkazy"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "Viz té¾"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr "vá¹"
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr "pro aktuální konfiguraci"
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "volby zadané pøi pøekladu"
+
+#: LYMessages.c:837
+#, fuzzy
+msgid "color-style configuration"
+msgstr "Va¹e primární konfigurace"
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "poslední verze"
+
+#: LYMessages.c:839
+msgid "pre-release version"
+msgstr "vývojová verze"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "vývojová verze"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Následující údaje byly získány pøi automatické konfiguraci a pøekladu této\n"
+"kopie programu Lynx. Pøi oznamování chyby pøilo¾te kopii této stránky."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Následující údaje byly získány pøi automatické konfiguraci a pou¾ity pøi\n"
+"pøekladu této kopie programu Lynx."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "  C>Vytvoøit D>Stáhnout E)ditovat F>Úplné menu R>Smazat T>Oznaèit U>Poslat \n"
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr "Nepodaøilo se zjistit status aktuálního odkazu!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Zvlá¹tní URL je platné pouze z aktuálního menu nastavení práv souboru!"
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr "Spou¹tìní externích programù je nyní zakázáno."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+#, fuzzy
+msgid "Changing working-directory is currently disabled."
+msgstr "Spou¹tìní je nyní vypnuto."
+
+#: LYMessages.c:864
+#, fuzzy
+msgid "Linewrap OFF!"
+msgstr "Sledování VYPNUTO!"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr ""
+
+#: LYMessages.c:866
+#, fuzzy
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Pøímý 8bitový èi CJK re¾im VYPNUT! Znovu naèítám..."
+
+#: LYMessages.c:867
+#, fuzzy
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Pøímý 8bitový èi CJK re¾im ZAPNUT! Znovu naèítám..."
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr ""
+
+#: LYMessages.c:869
+#, fuzzy
+msgid "Trace not supported"
+msgstr "Terminál nepodporuje barvy."
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tOdsazení: první=%.0f dal¹í=%.0f, Vý¹ka=%.1f Popis=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "U¾ivatelské jméno pro '%s' na %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Tento klient neumí vytvoøit proxy autorizaèní informace pro schéma "
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Tento klient neumí vytvoøit autorizaèní informace pro schéma "
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Chybná hlavièka '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "Proxy vy¾aduje autorizaci -- zkou¹ím znovu"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "Pøístup není bez autorizace povolen -- zkou¹ím znovu"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "Pøístup odmítnut implicitním pravidlem"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Dokument s POST obsahem nenalezen v cache. Odeslat znovu?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr "Nahrávání dokonèeno."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: soket èi èíslo souboru vráceno zastaralou load funkcí!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, fuzzy, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Vnitøní chyba programu. Za¹lete oznámení na lynx-dev@sig.net!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Návratový status: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr "Nelze získat pøístup"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "Nelze získat pøístup k dokumentu."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Zadejte heslo pro u¾ivatele %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Nelze navázat spojení s FTP serverem."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "zavøít hlavní soket"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "hlavní soket"
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "Symbol. odkaz"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "Stahuji výpis FTP adresáøe."
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Pøeneseno bajtù: %d (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr "datové spojení"
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "Stahuji FTP soubor."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "Spojení s finger serverem nelze navázat."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Finger URL neobsahuje jméno serveru."
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "Chybné èíslo portu - pou¾ívám pouze port 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "Spojení s finger serverem nelze navázat."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "Od finger serveru nepøi¹la ¾ádná odpovìï."
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "U¾ivatelské jméno na news serveru '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "Zmìnit u¾ivatelské jméno?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "U¾ivatelské jméno:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Heslo na news serveru '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "Zmìnit heslo?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "%s nic nevyhovuje"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Tato skupina neobsahuje ¾ádné pøíspìvky.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"V zadaném intervalu se nenacházejí ¾ádné pøíspìvky.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  Èlánky %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "Pøedchozí pøíspìvky"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Poèet èlánkù v %2$s: %1$d. ID jsou následující:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "V¹echny dostupné pøíspìvky v "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "Pozdìj¹í pøíspìvky"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "Poslat do"
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Tento klient nepodporuje SNEWS URL."
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr "®ádný cíl pro prostý text!"
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "Navazuji spojení s news serverem..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "S %s nelze navázat spojení."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Informace o diskuzních skupinách nelze získat. News server %.20s odpovìdìl %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Informace o diskuzních skupinách nelze získat. Prázdná odpovìï od serveru %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "Ètu seznam dostupných diskuzních skupin."
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "Ètu seznam èlánkù v diskuzní skupinì."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "Ètu pøíspìvek z diskuzní skupiny."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr "Lituji, po¾adované diskuzní pøíspìvky nelze stáhnout."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "Adresa má chybný port."
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "Délka adresy se zdá být chybnou."
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Adresu poèítaèe %s nelze zjistit."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Jméno poèítaèe %s je chybné"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Navazuji %s spojení s %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "chyba soketu."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Soket nelze nastavit jako neblokující."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "Spojení se nepodaøilo navázat (pøíli¹ mnoho pokusù)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Soket nelze nastavit jako blokující."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+#, fuzzy
+msgid "Socket read failed (too many tries)."
+msgstr "Spojení se nepodaøilo navázat (pøíli¹ mnoho pokusù)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Tento klient nepodporuje HTTPS URL."
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr "Spojení se vzdáleným poèítaèem nelze navázat."
+
+#: WWW/Library/Implementation/HTTP.c:669
+#, fuzzy
+msgid "Retrying connection without TLS."
+msgstr "Navazuji %s spojení s %s."
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+#, fuzzy
+msgid "the certificate has been revoked"
+msgstr "Cookie bylo smazáno!"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "Odesílám HTTP po¾adavek."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr "Neoèekávaná chyba pøi zápisu na soket; spojení uzavøeno."
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP po¾adavek odeslán; èekám na odpovìï"
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr "Neoèekávaná chyba pøi ètení ze soketu; spojení uzavøeno."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr "Neoèekávané Informaèní hlá¹ení."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr "Po¾adavek vyøízen. Obsah formuláøe smazán."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Neoèekávané hlá¹ení: 304 Not Modified"
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr "Pøesmìrování POST obsahu vy¾aduje souhlas u¾ivatele."
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Obsahuje POST data. Trvalé pøesmìrování pou¾ívám pouze jako doèasné.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr "Zkou¹ím to znovu s proxy autorizací."
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr "Zobrazit tìlo 401 hlá¹ení?"
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr "Zobrazit tìlo 407 hlá¹ení?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr "Neznámé hlá¹ení od serveru!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "vzdálené %s sezení:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Spojení s WAIS serverem nelze navázat."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "WAIS nelze pro ètení otevøít."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Diagnostický kód je"
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Rejstøík"
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " obsahuje %d následujících polo¾ek%s vztahujících se k \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Za ka¾dou polo¾kou následuje nejprve její bodové ohodnocení "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "a poté poèet øádkù."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (chybné jméno souboru)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(chybné id dokumentu)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "('Short Header' záznam, nelze zobrazit)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"'Long Header' záznamu, nelze zobrazit\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Textový záznam\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"'Headline' záznam, nelze zobrazit\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"'Code' záznam, nelze zobrazit\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Syntaktická chyba ve WAIS URL."
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS rejstøík)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS rejstøík: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Tento odkaz ukazuje na prohledávaè "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS rejstøíku.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Stisknìte 's' a pak zadejte hledaná slova.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (v "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS hledání \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" v: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: po¾adavek pøíli¹ dlouhý."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Prohledávám WAIS databázi..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Hledání pøeru¹eno."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Formát WAIS dokumentu nelze pøevést"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: po¾adavek pøíli¹ dlouhý"
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Stahuji WAIS dokument..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "®ádná odpovìï!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr "NENACHÁZÍ se ve zdrojovém souboru; "
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr " zdrojový soubor WAIS"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " popis"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "Odkazy"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "Pøímý pøístup"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (èi, pokud je definován, pøes proxy server)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "Správce"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "Poèítaè"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "Do¹la pamì», zobrazení pøeru¹eno!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Do¹la pamì», pøenos pøeru¹en!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** DO©LA PAMÌ« ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "neznámé pole èi odkaz"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "textové vstupní pole"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "vstupní pole pro heslo"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "za¹krtávací políèko"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "pøepínací tlaèítko"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "tlaèítko pro odeslání dat serveru"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "tlaèítko pro obnovení implicitních hodnot"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "vyskakovací menu"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "skryté pole formuláøe"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "textová vstupní oblast"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr "vstupní pole pro interval"
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "pole pro výbìr souboru"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr "tlaèítko pro odeslání textu"
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "tlaèítko pro odeslání obrázku"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr "pole pro vytvoøení klíèe"
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "neznámé pole formuláøe"
+
+#: src/GridText.c:10279
+#, fuzzy
+msgid "Can't open file for uploading"
+msgstr "Soubor nelze pro ètení otevøít!"
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr "Odesílám %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr "Zalamovat dlouhé øádky, aby se ve¹ly na obrazovku?"
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr "Pøíli¹ dlouhé øádky byly zalomeny!"
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr "Pøíli¹ dlouhé øádky byly oøezány!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "bajtù"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "Mno¾ství pøenesených dat: %s"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Mno¾ství pøenesených dat: %s/%s"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/s"
+
+#: src/HTAlert.c:342
+#, fuzzy, c-format
+msgid " (stalled for %s)"
+msgstr " (zamrznut %lds)"
+
+#: src/HTAlert.c:346
+#, fuzzy, c-format
+msgid ", ETA %s"
+msgstr ", zbývá %lds"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Stisknìte 'z' pro ukonèení)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "ano"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "ne"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "Popis:"
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr "(¾ádný)"
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr "Cesta:"
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(neznámá)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Dokument obsahuje pouze skryté odkazy. Pou¾ijte 'l' pro jejich vypsání."
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr "Chyba pøi práci s vyrovnávací pamìtí pro dokumenty - nedo¹lo místo na disku?"
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr "Chyba pøi práci s vyrovnávací pamìtí pro dokumenty - do¹la pamì»!"
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Tento soubor je HTML obdobou 'hotlistu' programu 'X Mosaic'. Zastaralé\n"
+"     èi chybné odkazy mohou být smazány pomocí klávesy 'R'. Správce\n"
+"     systému ale mohl tuto funkci svázat s jinou klávesou."
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"      Klávesou 'R' mù¾ete mazat odkazy<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Odkazy mohou být smazány pomocí klávesy 'R'. Správce\n"
+"     systému ale mohl tuto funkci svázat s jinou klávesou."
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Mazání odkazù èi zmìna jejich poøadí Mù¾e být provedena i pomocí úprav\n"
+"     tohoto souboru bì¾ným textovým editorem."
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Poznámka: pokud budete upravovat tento soubor ruènì, nemìl byste\n"
+"          mìnit jeho formát, èi pøidávat dal¹í HTML znaèky.\n"
+"          ®ádná zálo¾ka nesmí zabírat více ne¾ jeden øádek."
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Bìhem tohoto sezení lze soubor obnovit z %s."
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Nelze získat pøístup k cgi skriptu"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Dobrá rada"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Vynikající http server pro VMS je dostupný pøes"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "tento odkaz."
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Poskytuje výbornou podporu pro cgi skripty.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Konèím kvùli pøeru¹ení:"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr "(z pøedchozího sezení)"
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr ""
+
+#: src/LYCookie.c:2562
+msgid "Internal"
+msgstr "Vnitøní"
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "chyba cookie_domain_flag_set, ukonèuji program"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Inicializace terminálu se nezdaøila - neznámý typ terminálu?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "Terminál ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Tento program vy¾aduje terminál typu vt100, 200 etc."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "Typ va¹eho terminálu je neznámý!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "Zadejte typ terminálu:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TYP TERMINÁLU JE NASTAVEN NA"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"V programu %s verze %s nastala fatální chyba.\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Zeptejte se va¹eho správce systému, zda se vskutku jedná o chybu a pokud ano,\n"
+"uvìdomte o ní úèastníky konference lynx-dev. Chybová hlá¹ení by mìla obsahovat\n"
+"struèný popis pøíkazu a/nebo URL, který ji zpùsobil, jméno a verzi operaèního\n"
+"systému, TCPIP implementaci, TRACEBACK a v¹echny dal¹í relevantní informace.\n"
+
+#: src/LYEdit.c:266
+#, fuzzy, c-format
+msgid "Error starting editor, %s"
+msgstr "Chyba pøi zpracování %d. øádku souboru%s\n"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Editor ukonèen signálem."
+
+#: src/LYEdit.c:274
+#, fuzzy, c-format
+msgid "Editor returned with error status %s"
+msgstr "Editor skonèil s chybovým návratovým statusem %s"
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "Sta¾ený odkaz:"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "Doporuèené jméno souboru:"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "Standardní menu nabídek pro stahování:"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "Menu nabídek pro stahování:"
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "Ulo¾it na disk"
+
+#: src/LYDownload.c:545
+#, fuzzy
+msgid "View temporary file"
+msgstr "Doèasný soubor nelze otevøít!"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "Ukládání na disk je zakázáno."
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Místní roz¹íøení:"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Nebylo zadáno ¾ádné jméno."
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Nav¹tívené odkazy:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(¾ádná adresa)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (vnitøní)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (pùvodnì vnitøní)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (z historie)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Nav¹tívené odkazy (POST, zálo¾ky, menu a seznamy odkazù vynechány):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Zatím ¾ádné zprávy)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Nalezen chybný ukazatel."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Ukazatel:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Jméno souboru:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Øádek:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Zji¹tìn problém s pamìtí."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Obsahuje:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Velikost v bajtech:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "realokováno:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Celkový poèet problémù s pamìtí:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+#, fuzzy
+msgid "Bytes allocated"
+msgstr "realokováno:"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Odkazy v "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "v tomto dokumentu:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Viditelné odkazy:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Skryté odkazy:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Reference"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Viditelné odkazy"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Status '%s' nelze zjistit."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "Vybraný pøedmìt není souborem ani adresáøem! Po¾adavek ignorován."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "%s selhalo kvùli systémové chybì!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "%s pravdìpodobnì selhalo kvùli systémové chybì!"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "smazat %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "pøesunout %s do %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Byl nalezen adresáø stejného jména! Po¾adavek ignorován."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Byl nalezen soubor stejného jména! Po¾adavek ignorován."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Zadané jméno je ji¾ pou¾íváno! Po¾adavek ignorován."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "Cíl má jiného vlastníka! Po¾adavek zamítnut."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Cíl není platným adresáøem! Po¾adavek zamítnut."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Smazat v¹echny oznaèené soubory a adresáøe?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Zadejte nové místo urèení pro oznaèené pøedmìty: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Cesta je pøíli¹ dlouhá."
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Zdroj a cíl oznaèují jedno a to samé místo - po¾adavek zamítnut!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Zadejte nové jméno adresáøe: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Zadejte nové jméno souboru: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Nalezen chybný znak (oddìlovaè cesty)! Po¾adavek ignorován."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Zadejte nové místo urèení pro adresáø: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Zadejte nové místo urèení pro soubor: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Neoèekávaná chyba - koncový oddìlovaè cesty nelze nalézt"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Zdroj a cíl oznaèují jedno a to samé místo - po¾adavek zamítnut!"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Zmìnit jméno, umístìní èi pøístupová práva? (n,l èi p): "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Zmìnit jméno èi umístìní (n èi l): "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Tato funkce zatím nebyla implementována!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Zadejte jméno souboru, který mám vytvoøit: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Nalezeno chybné pøesmìrování \"//\"! Po¾adavek ignorován."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Zadejte nové jméno adresáøe: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Vytvoøit soubor èi adresáø? (f èi d):"
+
+#: src/LYLocal.c:1166
+#, fuzzy, c-format
+msgid "Remove directory '%s'?"
+msgstr "Smazat soubor '%s'?"
+
+#: src/LYLocal.c:1169
+#, fuzzy
+msgid "Remove directory?"
+msgstr " adresáø"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Smazat soubor '%s'?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Smazat soubor?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Smazat symbolický odkaz '%s'?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Smazat symbolický odkaz?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Nevím jak nastavit pøístupová práva na ne-UNIXOVÉM systému souborù"
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Soubor s menu nastavení práv souborù nelze otevøít."
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Zadejte pøístupová práva:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Vlastník:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Skupina"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Ostatní:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "formuláø"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Chybný formát."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Chybná syntaxe."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Varování! UUdekódovaný soubor bude vytvoøen v adresáøi, ze kterého byl Lynx spu¹tìn."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "NULOVÝ URL ukazatel"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Spou¹tím %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Spou¹tí se systémový pøíkaz. Okam¾ik, prosím."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Aktuální adresáø:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Zvolené polo¾ky:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "®ádné polo¾ky nejsou zvoleny."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "oznaèena polo¾ka:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "oznaèené polo¾ky:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Chybné jméno souboru; po¾adavek ignorován."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Instalace do zvoleného adresáøe není povolena."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "Zvolená polo¾ka není adresáøem! Po¾adavek ignorován."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Okam¾ik, prosím ..."
+
+#: src/LYLocal.c:2328
+#, fuzzy
+msgid "Error building install args"
+msgstr "Chyba pøi sestavování instalaèních argumentù."
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Zdroj je toto¾ný s cílem: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Cílový adresáø %s je toto¾ný s aktuálním."
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Instalace dokonèena"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "Doèasné URL nebo seznam by bylo pøíli¹ dlouhé."
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Posílám"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Odkaz      %s :?: %s \n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "volaný \"%s\"\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "v souboru \"%s\" se jménem \"%s\"\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "byl po¾adován, ale nebyl dostupný."
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "Pouze jsem vás chtìl informovat."
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "Tato zpráva byla vytvoøena automaticky programem"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr "Winsock nenalezen. lituji."
+
+#: src/LYMain.c:1226
+#, fuzzy
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "MUSÍTE zadat platný TMP èi TEMP prostor!\n"
+
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+#, fuzzy
+msgid "No such directory"
+msgstr " adresáø"
+
+#: src/LYMain.c:1464
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Konfiguraèní soubor %s je nedostupný.\n"
+"\n"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Znakové sady Lynxu nejsou deklarovány.\n"
+"\n"
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Editovací mapy Lynxu nejsou deklarovány.\n"
+"\n"
+
+#: src/LYMain.c:1579
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Soubor %s není dostupný.\n"
+"\n"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr "Varování:"
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr "Stav trvalých cookies bude zmìnìn a¾ pøi pøí¹tím sezení."
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: Ignoruji neznámou znakovou sadu %s\n"
+
+#: src/LYMain.c:3181
+#, fuzzy, c-format
+msgid "%s Version %s (%s)"
+msgstr ""
+"\n"
+"%s verze %s (%s)\n"
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Pøelo¾en na %s %s %s\n"
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+#, fuzzy
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "Autorská práva patøí Kansaské univerzitì, CERN a ostatním autorùm.\n"
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Roz¹iøován podle podmínek Obecné veøejné licence GNU.\n"
+
+#: src/LYMain.c:3244
+#, fuzzy
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+"Podrobnìj¹í informace získáte na http://lynx.browser.org a z nápovìdy k programu.\n"
+"\n"
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "Pou¾ití: %s [pøepínaèe] [soubor]\n"
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr "Pøepínaèe:\n"
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Chybný pøepínaè %s\n"
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Vnitøní chyba: chybný my¹í odkaz %d!"
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr "URL zadané u¾ivatelem"
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Kódování multipart/form-data není zatím podporováno. Nelze odeslat."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr "Nápovìda"
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr "Systémový index"
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr "Vstup na hlavní obrazovku"
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr ""
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "znaková sada tohoto dokumentu je explicitnì zadána, lituji..."
+
+#: src/LYMainLoop.c:5052
+#, fuzzy
+msgid "cd to:"
+msgstr " do "
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr ""
+
+#: src/LYMainLoop.c:5080
+#, fuzzy
+msgid "failed to change directory"
+msgstr "Adresáø není dostupný."
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr "Znovu zpracovávám dokument za pou¾ití nových nastavení..."
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Fatální chyba - výstupní soubor %s nelze otevøít\n"
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:6960
+#, fuzzy
+msgid "Current URL is empty."
+msgstr "Aktuální adresáø:"
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr ""
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+msgid "-index-"
+msgstr "-rejstøík-"
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr "lynx: startovní soubor nelze otevøít"
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: startovní soubor nelze nalézt, nebo není ani typu text/html ani text/plain."
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr "      Konèím..."
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr "-pokraèování-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Posíláte po¹tu na:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+"Zadejte adresu pro hlavièku From:\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+"Zadejte pøedmìt zprávy\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+"Zadejte hodnotu pro hlavièku Organization:\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+"Zadejte text zprávy."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Zpráva neobsahuje ¾ádný pùvodní text!"
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "zobrazit/editovat soubory se zálo¾kami B>"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "Soubor se zálo¾kami B>:"
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2242
+#, fuzzy
+msgid "Novice"
+msgstr "Nic"
+
+#: src/LYOptions.c:2243
+#, fuzzy
+msgid "Intermediate"
+msgstr "Vnitøní"
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2279
+#, fuzzy
+msgid "as links"
+msgstr "tento odkaz."
+
+#: src/LYOptions.c:2286
+#, fuzzy
+msgid "show filename"
+msgstr " (chybné jméno souboru)"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2329
+#, fuzzy
+msgid "Directories first"
+msgstr "Podadresáøe:"
+
+#: src/LYOptions.c:2330
+#, fuzzy
+msgid "Files first"
+msgstr " jako první"
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr ""
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+#, fuzzy
+msgid "By Name"
+msgstr "Jméno:"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+#, fuzzy
+msgid "By Size"
+msgstr "Velikost v bajtech:"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+#, fuzzy
+msgid "By Date"
+msgstr "Datum:"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2346
+#, fuzzy
+msgid "By Group"
+msgstr "Skupina"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, c-format
+msgid "Show %s/sec rate"
+msgstr ""
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2379
+msgid "Show progressbar"
+msgstr ""
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2395
+#, fuzzy
+msgid "Accept all types"
+msgstr "Pøijmout zmìny"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Pomocí %s mù¾ete aktivovat konfiguraèní menu!"
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr ""
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "V¹eobecná nastavení"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "U¾ivatelský re¾im"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "Editor"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "Druh hledání"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "Cookies"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "Nastavení klávesnice"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "Re¾im numerické klávesnice"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "Emacs klávesy"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "VI klávesy"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr ""
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+#, fuzzy
+msgid "Keyboard layout"
+msgstr "Nastavení klávesnice"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "Display a znaková sada"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+#, fuzzy
+msgid "Use locale-based character set"
+msgstr "Místní znaková sada"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "Místní znaková sada"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "Pøedpokládaná znaková sada"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "CJK re¾im"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "Pøímý 8bitový re¾im"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "X Display"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "Vzhled dokumentu"
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "Zobrazovat barvy"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "Zobrazovat kurzor"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+#, fuzzy
+msgid "Underline links"
+msgstr "Skryté odkazy:"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+#, fuzzy
+msgid "Show scrollbar"
+msgstr "Zobrazovat barvy"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr "Vyskakovací menu pro zvolená pole"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "Zotavení po chybách HTML"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "Zobrazení obrázkù"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "Doslovné obrázky"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "Hlavièky pøená¹ené na vzdálené servery"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "Osobní adresa elektronické po¹ty"
+
+#: src/LYOptions.c:3760
+#, fuzzy
+msgid "Password for anonymous ftp"
+msgstr "Heslo na news serveru '%s':"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+#, fuzzy
+msgid "Preferred media type"
+msgstr "Pøeneseno bajtù: %d"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+#, fuzzy
+msgid "Preferred encoding"
+msgstr "Upøednostòovaný jazyk dokumentu"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "Upøednostòovaná znaková sada"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "Upøednostòovaný jazyk dokumentu"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "Hlavièka 'User-Agent'"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "Zobrazování adresáøù a pøístup k souborùm"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "Øazení FTP adresáøù"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "Øazení lokálních adresáøù"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+#, fuzzy
+msgid "Local directory sort order"
+msgstr "Øazení lokálních adresáøù"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "Zobrazovat teèkové soubory"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "Spustitelné odkazy"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+#, fuzzy
+msgid "Show transfer rate"
+msgstr "Pøenos dat dokonèen"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "Zvlá¹tní soubory a stránky"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "Dìlené zálo¾ky"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "Editace podsouborù se zálo¾kami"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "Menu dìlených zálo¾ek"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "Soubor se zálo¾kami"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "Nav¹tívené odkazy"
+
+#: src/LYOptions.c:3920
+#, fuzzy
+msgid "View the file "
+msgstr "Poslat soubor po¹tou"
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr "Tisk dokonèen.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Dokument:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Poèet øádkù:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Poèet stran:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "stran(y)"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "strana"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(pøibli¾nì)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Nìkteré funkce tisku byly vypnuty!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Standardní menu voleb tisku:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Menu voleb tisku:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Ulo¾it do místního souboru"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Ukládání na disk je vypnuto"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Poslat soubor po¹tou"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Vytisknout na obrazovku"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Vytisknout na tiskárnu pøipojenou k va¹emu vt100 terminálu"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Byla nalezena syntaktická chyba pøi zpracování direktivy COLOR v konfiguraèním\n"
+"souboru:\n"
+"Øádek musí být ve formátu:\n"
+"COLOR:CELÉ ÈÍSLO:POPØEDÍ:POZADÍ\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "kritický øádek:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "chyba pøi pøemapovávání klávesy %1$s pro %3$s na %2$s\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "chyba pøi pøemapovávání klávesy %s na %s\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "Volba %s øádkového editoru pro klávesu %s je chybná. Volím v¹e.\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "klávesu %1$s (0x%2$x) se s funkcí %4$s (0x%3$x) øádkového editoru nepodaøilo svázat\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "klávesu %s (0x%x) se s funkcí %s øádkového editoru nepodaøilo svázat\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: nelze spustit, soubor %s s pravidly CERN není dostupný\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(¾ádné jméno)"
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Více ne¾ %d vnoøených vlo¾ení z lynx.cfg -- nejedná se o nekoneènou smyèku?!?\n"
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Poslední vlo¾ený soubor je '%s'.\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "vlo¾ený z '%s'.\n"
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr "Následující údaje jsou èteny z va¹eho lynx.cfg."
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr "Pøeètìte si implicitní dodávaný s distribucí"
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr "pro více informací."
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr "NAÈÍST ZMÌNY"
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr "Va¹e primární konfigurace"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "Adresáø, který právì prohlí¾íte"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Jméno:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "Adresáø, který jste právì zvolil"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "Soubor, který jste právì zvolil"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "Symbolický odkaz, který jste právì zvolil"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "Polo¾ka, kterou jste právì zvolil"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "Celé jméno:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "Odkaz nelze následovat"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "Odkazuje do souboru:"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "Jméno vlastníka:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Jméno skupiny:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Velikost souboru:"
+
+#: src/LYShowInfo.c:227
+#, fuzzy
+msgid "(bytes)"
+msgstr "bajtù"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Datum vytvoøení:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Poslední zmìna:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Poslední pøístup:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Pøístupová práva "
+
+#: src/LYShowInfo.c:279
+#, fuzzy
+msgid "Group:"
+msgstr "Skupina"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Soubor, který si právì prohlí¾íte"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Jméno odkazu:"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Znaková sada:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Server:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Datum:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Poslední modifikace:"
+
+#: src/LYShowInfo.c:352
+#, fuzzy
+msgid "Expires:"
+msgstr "&nbsp;Expiruje:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Cache-Control:"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:362
+#, fuzzy
+msgid "Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Jazyk:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "Post Data:"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "Post Content Type:"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Vlastníci:"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "velikost:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "øádky"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "formuláøový re¾im"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "zdroj"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "bì¾ný"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", bezpeèný"
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ", pøes vnitøní odkaz"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", no-cache"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", ISMAP skript"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", soubor zálo¾ek"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "re¾im:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Odkaz, který jste právì zvolil"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Metoda:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "Typ kódování"
+
+#: src/LYShowInfo.c:436
+#, fuzzy
+msgid "Action:"
+msgstr "Umístìní: "
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(Pole formuláøe)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "Aktuální stránka neobsahuje ¾ádné odkazy"
+
+#: src/LYShowInfo.c:455
+#, fuzzy
+msgid "Server Headers:"
+msgstr "Server:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Syntaktická chyba pøi zpracování stylu v lss souboru:\n"
+"[%s]\n"
+"Øádek musí mít formát:\n"
+"OBJEKT:MONO:BARVA (t.j. em:bold:brightblue:white)\n"
+"kde OBJEKT je jedno z EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "Zde je výpis historie "
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "CHYBA! - pøíkaz pro poslání je ¹patnì nakonfigurovaný"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Pøesmìrování obsahuje \"..\"! Po¾adavek ignorován."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Nalezen chybný znak \"/\"! Po¾adavek ignorován."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Pøesmìrování obsahuje \"~\"! Po¾adavek ignorován."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Soubor nelze poslat."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Poslat na:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Menu voleb posílání:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Neoèekávaný protokol pro tento typ URL."
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr ""
+
+#: src/LYUtils.c:3719
+#, fuzzy
+msgid "unknown restriction"
+msgstr "®ádná omezení.\n"
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "®ádná omezení.\n"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Zapnutá omezení:\n"
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr ""
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr ""
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"Volba accept_all_cookies øíká Lynxu, aby automaticky pøijímal v¹echna cookie.\n"
+"Implicitní  nastavení je \"FALSE\", pøi kterém budete muset potvrdit pøijetí\n"
+"ka¾dého cookie. Pøijetí ka¾dého cookie zapnete nastavením accept_all_cookies\n"
+"na \"TRUE\".\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"Volba bookmark_file udává jméno implicitního souboru se zálo¾kami, do kterého\n"
+"si u¾ivatel mù¾e ukládat odkazy pro pozdìj¹í pou¾ití.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Pokud je volba case_sensitive_searching zapnuta (\"on\") tak, kdy¾ u¾ivatel\n"
+"spustí klávesou 's' èi '/' vyhledávání, bude toto brát ohled na velikost písmen.\n"
+"Tato volba je implicitnì vypnuta (\"off\").\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"Volba character_set definuje zpùsob zobrazení 8bitových znakù na va¹em\n"
+"terminálu. Pokud se na va¹í obrazovce 8bitové znaky nezobrazují správnì,\n"
+"mù¾ete zkusit jiné 8bitové kódování, èi pou¾ít 7bitové aproximace.\n"
+"Mo¾né znakové sady:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains a cookie_reject_domains jsou dvojteèkou oddìlený seznam\n"
+"domén, z kterých Lynx automaticky pøijme, èi odmítne jakékoliv cookie. Pokud\n"
+"je doména uvedena v obou seznamech, má cookie_reject_domains pøednost. Volba\n"
+"accept_all_cookies má vy¹¹í prioritu, ne¾ obì tyto volby.\n"
+
+#: src/LYrcFile.c:357
+#, fuzzy
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"Volba cookie_file udává soubor, ve kterém se ukládají trvalé cookies.\n"
+"Implicitním hodnotou je ~/.lynx_cookies.\n"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains a\n"
+"cookie_query_invalid_domains jsou dvojteèkou oddìlený seznam domén, které\n"
+"které by mìly být podrobeny nejrùznìj¹ím stupòùm ovìøování. Pokud je\n"
+"doména nastavena na 'strict' ovìøování, bude postupováno pøesnì dle RFC2109.\n"
+"Doména s 'loose' ovìøováním bude moci nastavovat cookies s chybnou cestou\n"
+"èi doménovým atributem (implicitním nastavením je zeptat se u¾ivatele).\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"Volba dir_list_styles udává pou¾itý styl pro výpis adresáøù pod DIRED_SUPPORT\n"
+"(pokud je podporováno). Implicitní nastavení je \"MIXED_STYLE\", které zpùsobí\n"
+"vzájemné promíchání souborù s adresáøi. \"FILES_FIRST\" vypí¹e jako první\n"
+"soubory a \"DIRED_SUPPORT\" adresáøe.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Pokud je volba emacs_keys nastavena na \"on\", pak jsou bì¾né EMACSOVÉ klávesy pro pohyb:\n"
+"  ^N = dolù   ^P = nahoru\n"
+"  ^B = vlevo   ^F = vpravo\n"
+"zapnuty.\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"Volba file_editor udává, který editor bude pou¾it k úpravám místních souborù\n"
+"a psaní dopisù. Jestli¾e není specifikován ¾ádný editor, tak, pokud nejsou\n"
+"povoleny z pøíkazové øádky, jsou úpravy souborù zakázány. Pro psaní dopisù\n"
+"bude pou¾it vestavìný editor.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"Metoda øazení souborù udává klíè, dle kterého budou øazeny seznamy souborù,\n"
+"jako jsou napøíklad FTP adresáøe. Mo¾né volby jsou:\n"
+"   BY_FILENAME -- øadí dle jména souboru\n"
+"   BY_TYPE     -- øadí dle typu souboru\n"
+"   BY_SIZE     -- øadí dle velikosti souboru\n"
+"   BY_DATE     -- øadí dle data souboru\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"Volba lineedit_mode specifikuje funkce kláves pro øádkový editor. Pokud je tato\n"
+"volba nastavena na \"Default Binding\", pak jsou pro posun kurzoru a mazání\n"
+"textu pou¾ity následující klávesy:\n"
+"\n"
+"                Prev  Next      Enter = Pøijme zadaný text\n"
+" Posun o znak:  <-    ->        ^G    = Zru¹í zadávání\n"
+" Posun o slovo: ^P    ^N        ^U    = Sma¾e øádek\n"
+" Sma¾e znak:    ^H    ^R        ^A    = Zaèátek øádku\n"
+" Sma¾e slovo:   ^B    ^F        ^E    = Konec øádku\n"
+"\n"
+"Mo¾né re¾imy øádkového editoru:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Zde mù¾ete nastavit jména podsouborù zálo¾ek a jejich popisy. Formát je:\n"
+"multi_bookmark<velké_písmeno>=<jméno souboru>,<popis>. Mù¾e být zadáno a¾ 26\n"
+"podsouborù zálo¾ek (ka¾dý odpovídá jednomu velkému písmeno anglické abecedy).\n"
+"Zaèíná se s \"multi_bookmarkB\", proto¾e 'A' je implicitní (viz vý¹e).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"Volba personal_mail_address udává va¹i osobní adresu elektronické po¹ty. Bude\n"
+"pou¾ita pøi HTTP pøenosech souborù pro autorizaci a záznam èinnosti a pøi\n"
+"zasílání komentáøù.\n"
+"Pokud chcete, aby tato informace zùstala dùvìrnou, nastavte v konfiguraèním\n"
+"souboru lynx.cfg volbu NO_FROM_HEADER na TRUE, èi pou¾ijte pøepínaè -nofrom.\n"
+"Té¾ je mo¾né nechat toto pole prázdné, ale pak by nebylo zaèlenìno do vámi\n"
+"odeslaných komentáøù.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"Volba preferred_charset udává, ve kterých znakových sadách bude Lynx pøednostnì\n"
+"po¾adovat dokumenty od http serverù. Znaková sada musí být zadána v MIME notaci\n"
+"(ISO-8859-2, ISO-8859-5). ISO-8859-1 a US-ASCII by NEMÌLY být pou¾ity, nebo»\n"
+"tyto znakové sady jsou v¾dy implicitnì pøedpokládány. Znakových sad mù¾e být\n"
+"uvedeno více a musí být oddìleny èárkou.\n"
+"Pokud je dokument v této znakové sadì k dispozici, server jej za¹le. V pøípadì,\n"
+"¾e hlavièka Accept-Charset není pøítomna, se implicitnì pøedpokládá, ¾e bude\n"
+"akceptována jakákoli znaková sada. Jestli¾e je hlavièka Accept-Charset pøítomna\n"
+"a server nemù¾e zaslat dokument v poøadované znakové sadì, MÌL BY zaslat\n"
+"chybovou hlá¹ku. Mù¾e v¹ak také poslat dokument v jiné, ne¾ po¾adované\n"
+"znakové sadì.\n"
+
+#: src/LYrcFile.c:473
+#, fuzzy
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"Volba preferred_language udává, v kterých jazycích bude Lynx pøednostnì\n"
+"po¾adovat dokumenty od http serverù. Jazyk musí být zadán v MIME notaci (napø.\n"
+"en, fr; mù¾e jich být zadáno více oddìlených èárkou v sestupném poøadí dle\n"
+"preference). Pokud bude dokument v tomto jazyce k dispozici, server jej za¹le.\n"
+"V opaèném pøípadì jej za¹le ve svém implicitním jazyce.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Pokud je volba run_all_execution_links zapnuta (\"on\"), pak v¹echny programy\n"
+"budou pøi zvolení odkazu na tento program spu¹tìny.\n"
+"\n"
+"VAROVÁNÍ - Tato volba je VELICE nebezpeèná. Jeliko¾ si mù¾ete prohlí¾et\n"
+"           informace, které pocházejí z neznámých a nedùvìryhodných zdrojù,\n"
+"           existuje mo¾nost, ¾e nìkteré odkazy vedou k programùm typu 'trojský\n"
+"           kùò'. Úèelem odkazù na 'trojské konì' mù¾e být smazání souborù èi\n"
+"           naru¹ení bezpeènosti systému. Tato volba by mìla být zapnuta pouze\n"
+"           tehdy, jestli¾e soubory, které prohlí¾íte, pocházejí z dùvìryhodných\n"
+"           zdrojù.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Pokud je volba run_execution_links_on_local_files zapnuta (\"on\"), pak\n"
+"v¹echny místní programy, na které je odkaz v MÍSTNÍCH souborech, budou pøi\n"
+"zvolení tohoto odkazu spu¹tìny. Tato volba se od volby run_all_execution_links\n"
+"odli¹uje v tom, ¾e povoluje spou¹tìní pouze tìch programù, na nì¾ vedou odkazy\n"
+"z MÍSTNÍCH souborù.\n"
+"\n"
+"VAROVÁNÍ - Tato volba je potenciálnì nebezpeèná. Jeliko¾ si mù¾ete prohlí¾et\n"
+"           informace, které pocházejí z neznámých a nedùvìryhodných zdrojù,\n"
+"           existuje mo¾nost, ¾e nìkteré odkazy vedou k programùm typu 'trojský\n"
+"           kùò'. Úèelem odkazù na 'trojské konì' mù¾e být smazání souborù èi\n"
+"           naru¹ení bezpeènosti systému. Tato volba by mìla být zapnuta pouze\n"
+"           tehdy, jestli¾e soubory, které prohlí¾íte, pocházejí z dùvìryhodných\n"
+"           zdrojù.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"Volba select_popups udává, zda volby (OPTION) uvnitø prvku SELECT, který\n"
+"nemá specifikován atribut MULTIPLE, budou zobrazeny jako vertikální seznam\n"
+"pøepínacích tlaèítek èi jako vyskakovací menu. Pokud je atribut MULTIPLE\n"
+"specifikován, pak Lynx v¾dy vytvoøí vertikální seznam za¹krtávacích polí.\n"
+"Nastavení této volby na \"on\" zapne pou¾ívání vyskakovacích menu. Nastavení\n"
+"na \"off\" zapne pou¾ívání pøepínacích tlaèítek. Implicitní nastavení mù¾e být\n"
+"potlaèeno pøepínaèem -popup.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"Volba show_color udává, jak bude nastaven barevný re¾im po spu¹tìní programu.\n"
+"Hodnota \"never\" znamená, ¾e terminál bude chápán jako monochromatický (\n"
+"i kdyby podporoval barvy). Hodnota \"always\" zapne barevný re¾im i kdy¾ se\n"
+"terminál zdá být monochromatickým. Barvy musí být podporovány knihovnou, se\n"
+"kterou byl Lynx pøelo¾en. Hodnota \"default\" znamená, ¾e pokud bude splnìna\n"
+"jedna z následujících podmínek, bude terminál pova¾ován za barevný, jinak za\n"
+"monochromatický: terminál podporuje barvy, byl pou¾it pøepínaè -color èi je\n"
+"nastavena promìnná COLORTERM. Implicitní chování je v¾dy pou¾ito pro anonymní\n"
+"úèty, nebo pokud je nastaveno omezení \"option_save\".\n"
+"Nastavení této volby mù¾e být potlaèeno pøepínaèi -color èi -nocolor.\n"
+"Re¾im nastavený pøi startu mù¾e být zmìnìn pomocí volby \"show color\"\n"
+"v konfiguraèním menu (do nìj vstoupíte klávesou 'o'). Pokud je hodnota volby\n"
+"\"show color\" ulo¾ena, je pova¾ována za implicitní nastavení.\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"Volba show_cursor udává, zda 'schovat' kurzor k pravému (a pokud mo¾no\n"
+"i dolnímu) kraji obrazovky, èi zda jej umístit vlevo k aktuálnímu odkazu\n"
+"(v dokumentech) nebo volbì (ve vyskakovacích menu). Zobrazení kurzoru vlevo\n"
+"od aktuálního odkazu je u¾iteèné pro braille terminály a pro terminály, které\n"
+"neumí zvýraznit aktuální odkaz zvýraznìním èi barvou.\n"
+"Nastavení této volby na \"on\" zpùsobí zobrazování kurzoru vlevo od aktuálního\n"
+"odkazu. Nastavení na \"off\" zapne 'schovávání' kurzoru. Implicitní nastavení\n"
+"mù¾e být potlaèeno pøepínaèem -show_cursor.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"Volba show_dotfiles øíká, ¾e výpisy obsahu adresáøù by mìly zahrnovat\n"
+"'skryté' (teèkou zaèínající) soubory/adresáøe. Na zapnutí této volby (nastavení\n"
+"na \"on\"), bude brán zøetel pouze tehdy, jestli¾e je zapnuta také v lynx.cfg\n"
+"a/nebo v userdefs.h a zároveò není vypnuta z pøíkazové øádky. Pokud je\n"
+"zobrazování skrytých souborù vypnuto, nebude je mo¾né z Lynxu ani vytváøet.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Pokud není volba sub_bookmarks vypnuta (\"off\") a bylo specifikováno více\n"
+"souborù se zálo¾kami (viz ní¾e), pak pøi v¹ech operacích se zálo¾kami bude\n"
+"u¾ivatel nejprve vyzván, aby vybral nìkterý ze souborù. Jestli¾e je nastavena\n"
+"volba bookmark_file, pak bude implicitnì pou¾ita její hodnota.\n"
+"Jestli¾e je sub_bookmarks nastaveno na \"advanced\" a u¾ivatelský re¾im je také\n"
+"\"advanced\", tak pøíkaz pro zobrazení zálo¾ek ('v') vyvolá místo menu\n"
+"prompt. Nastavení této volby na \"standard\" zpùsobí zobrazení menu bez\n"
+"ohledu na u¾ivatelský re¾im.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"Volba user_mode udává úroveò znalostí u¾ivatele o programu Lynx. Implicitní\n"
+"nastavení je \"NOVICE\", které zpùsobí zobrazení 2 øádek s nápovìdou v dolní\n"
+"èásti obrazovky. Nastavení \"INTERMEDIATE\" vypne tuto nápovìdu a nastavení\n"
+"\"ADVANCED\" zpùsobí vypsání URL aktuálního odkazu v dolní èásti obrazovky.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Pokud je volba verbose_images zapnuta (\"on\"), lynx bude zobrazovat jména\n"
+"souborù s obrázky místo [INLINE], [LINK] èi [IMAGE].\n"
+"Viz té¾ volbu VERBOSE_IMAGES v kynx.cfg.\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Pokud je volba vi_keys nastavena na \"on\", pak jsou bì¾né VI klávesy pro pohyb:\n"
+"  j = dolù    k = nahoru\n"
+"  h = vlevo   l = vpravo\n"
+"zapnuty.  Fungují pouze malá písmena.\n"
+"Velké 'H', 'J' a 'K zapínají nápovìdu, zkrácená URL a výpis klávesové mapy.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr "Volba visited_links urèuje uspoøádání informací na stránce Nav¹tívených odkazù\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Pokud je volba keypad_mode nastavena na \"NUMBERS_AS_ARROWS\", pak se èísla na\n"
+"numerické klávesnici pøi zapnutém numlock budou chovat jako kurzorové klávesy:\n"
+"            8 = Nahoru\n"
+"  4 = Vlevo         6 = Vpravo\n"
+"            2 = Dolù\n"
+"Èísla na hlavní klávesnici se budou chovat jako kurzorové klávesy bez ohledu\n"
+"na stav numlock.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Pokud je volba keypad_mode nastavena na \"LINKS_ARE_NUMBERED\", pak v¹echny\n"
+"odkazy budou viditelnì oèíslovány a èísla budou pou¾ita ke zvolení pøíslu¹ného\n"
+"odkazu.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Pokud je volba keypad_mode nastavena na \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\",\n"
+"pak v¹echny odkazy a viditelná pole formuláøù budou viditelnì oèíslovány. Èísla\n"
+"budou pou¾ita ke zvolení pøíslu¹ného odkazu èi pøesunu na vstupní pole formuláøe\n"
+"èi tlaèítko. Volby vyskakovacích menu jsou indexovány, tak¾e u¾ivatel mù¾e\n"
+"zvolit polo¾ku napsáním jejího èísla i kdy¾ tato není viditelná na obrazovce.\n"
+"Seznamy odkazù a výstup pøíkazu 'list' jsou také èíslovány.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"POZOR: Formát nìkterých dokumentù s pevnou strukturou mù¾e pøi zapnutých volbách\n"
+"\"LINKS_ARE_NUMBERED\" a \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" vypadat jako\n"
+"po¹kozený.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+#, fuzzy
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Soubor s u¾ivatelskými preferencemi\n"
+"\n"
+"Tento soubor obsahuje preference a nastavení ulo¾ené z Konfiguraèního menu\n"
+"programu Lynx (obvykle klávesou '>'). Tento soubor není tøeba upravovat\n"
+"pøímo, jeliko¾ implicitní nastavení mohou být zmìnìna z Konfiguraèního\n"
+"menu a kdy¾ jsou preference z Konfiguraèního menu ulo¾eny, tento soubor bude\n"
+"celý pøepsán. Byl jste varován...\n"
+"V¹eobecný konfiguraèní soubor, který mo¾ná hledáte se normálnì jmenuje lynx.cfg\n"
+"a má jiný obsah a jiný formát. Není to tento soubor.\n"
+
+#~ msgid "Comment request cancelled!!!"
+#~ msgstr "Odeslání komentáøe zru¹eno!!!"
+
+#~ msgid "You are not allowed to goto \"file:\" URLs"
+#~ msgstr "\"file:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"finger:\" URLs"
+#~ msgstr "\"finger:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"ftp:\" URLs"
+#~ msgstr "\"ftp:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"gopher:\" URLs"
+#~ msgstr "\"gopher:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"http:\" URLs"
+#~ msgstr "\"http:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"https:\" URLs"
+#~ msgstr "\"https:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"lynxcgi:\" URLs"
+#~ msgstr "\"lynxcgi:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"lynxexec:\" URLs"
+#~ msgstr "\"lynxexec:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"lynxprog:\" URLs"
+#~ msgstr "\"lynxprog:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"mailto:\" URLs"
+#~ msgstr "\"mailto:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"news:\" URLs"
+#~ msgstr "\"news:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"nntp:\" URLs"
+#~ msgstr "\"nntp:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"rlogin:\" URLs"
+#~ msgstr "\"rlogin:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"snews:\" URLs"
+#~ msgstr "\"snews:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"telnet:\" URLs"
+#~ msgstr "\"telnet:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"tn3270:\" URLs"
+#~ msgstr "\"tn3270:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "You are not allowed to goto \"wais:\" URLs"
+#~ msgstr "\"wais:\" URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "This special URL is not allowed as a goto!"
+#~ msgstr "Toto zvlá¹tní URL nesmíte pou¾ít jako cíl!"
+
+#~ msgid "Option choice (or page) number: "
+#~ msgstr "Zvolte èíslo mo¾nosti (èi strany): "
+
+#~ msgid "Choice number %d already is current."
+#~ msgstr "Mo¾nost èíslo %d je právì aktivní."
+
+#~ msgid "You are already at the end of this choice list."
+#~ msgstr "Jste na konci seznamu mo¾ností."
+
+#~ msgid "You are already at the beginning of this choice list."
+#~ msgstr "Jste na zaèátku seznamu mo¾ností."
+
+#~ msgid "You are already at page %d of this choice list."
+#~ msgstr "Ji¾ jste na stranì %d seznamu mo¾ností."
+
+#~ msgid "You have entered an invalid choice number."
+#~ msgstr "Zadal jste chybné èíslo mo¾nosti."
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "Maximální velikost seznamu historie dosa¾ena! Dokument nebyl zaznamenán."
+
+#~ msgid "Socket read failed for 180,000 tries."
+#~ msgstr "180 000 neúspì¹ných pokusù èíst ze soketu."
+
+#~ msgid "reason unknown."
+#~ msgstr "dùvod není znám."
+
+#~ msgid "KB"
+#~ msgstr "KB"
+
+#~ msgid "Read %ld of %ld %s of data"
+#~ msgstr "Mno¾ství pøenesených dat: %ld/%ld %s"
+
+#~ msgid "Read %ld %s of data"
+#~ msgstr "Mno¾ství pøenesených dat: %ld %s"
+
+#~ msgid ", %ld %s/sec."
+#~ msgstr ", %ld %s/s."
+
+#~ msgid "(From Cookie Jar)"
+#~ msgstr "(Ze skladu cookies)"
+
+#~ msgid "create %s"
+#~ msgstr "vytvoøit %s"
+
+#~ msgid "Remove '%s' and all of its contents?"
+#~ msgstr "Smazat '%s' a ve¹kerý jeho obsah?"
+
+#~ msgid "Remove directory and all of its contents?"
+#~ msgstr "Smazat adresáø a ve¹kerý jeho obsah?"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "Nelze otevøít soubor s menu správce souborù."
+
+#~ msgid "Lynx ver. %s"
+#~ msgstr "Lynx ver. %s"
+
+#~ msgid "Personal_name: "
+#~ msgstr "Osobní_jméno: "
+
+#~ msgid "X_Personal_name: "
+#~ msgstr "X_Osobní jméno: "
+
+#~ msgid "Personal Name: "
+#~ msgstr "Osobní jméno: "
+
+#~ msgid "Inactive text input, activate to edit (e.g., press ENTER)"
+#~ msgstr "neaktivní textový vstup, aktivujte pro editaci (napø. stisknìte ENTER)"
+
+#~ msgid "Left mouse button or return to select, arrow keys to scroll."
+#~ msgstr "Levé tlaèítko my¹i èi return pro vybrání, ¹ipky pro posun."
+
+#~ msgid "Ignoring invalid HOME"
+#~ msgstr "Ignoruji chybnou hodnotu HOME"
+
+#~ msgid ""
+#~ "partial_thres specifies the number of lines Lynx should download and render\n"
+#~ "before we redraw the screen in Partial Display logic\n"
+#~ "e.g., partial_thres=2\n"
+#~ "would have Lynx redraw every 2 lines that it renders\n"
+#~ "partial_thres=-1 would use the entire screensize\n"
+#~ msgstr ""
+#~ "Volba partial_thres udává poèet øádkù, které by Lynx mìl stáhnout ne¾ bude,\n"
+#~ "vykreslena obrazovka. T.j. partial_thres=2 zpùsobí, ¾e Lynx zobrazí\n"
+#~ "ka¾dé 2 øádky, které stáhne. partial_thres=-1 znamená celou obrazovku.\n"
diff --git a/po/da.po b/po/da.po
new file mode 100644
index 00000000..3209d3c0
--- /dev/null
+++ b/po/da.po
@@ -0,0 +1,6124 @@
+# Danish translation of the Lynx browser message catalog
+# Copyright (C) 2000 Free Software Foundation, Inc.
+# Morten Bo Johansen <mbj@spamcop.net>, 2000-2006
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.6-dev19\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 2006-09-17 14:07+0200\n"
+"Last-Translator: Morten Bo Johansen <mojo@mbjnet.dk>\n"
+"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Advarsel!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Velkommen"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Afslut?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Afslut Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Forbindelse afbrudt."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Dataoverførsel afbrudt."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Afbrudt!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Afbryder!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Fortsætter ..."
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "O.k."
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Færdig!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Uforståelig forespørgsel!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "forrige"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "næste skærmbillede"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "HJÆLP!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", hjælp til "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Piletaster navigerer, '?' for hjælp', 'q' afslutter, '<-' går tilbage."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "- tast mellemrum for mere, piletaster navigerer, '?' for hjælp, 'q' afslutter."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "- tast mellemrum for næste side -"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "Adresse for lang"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Tekstindtastningsfelt) inaktivt. Tast <retur> for at aktivere."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Tekstområde) inaktivt. Tast <retur> for at aktivere."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Tekstområde) inaktivt. <Retur> aktiverer (%s for editor)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Formularfelt) Inaktivt. Tast <retur> for at aktivere."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Formularfelt> Inaktivt. <retur> aktiverer (%s for at indsende udenom cache)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr ""
+"(Formularfelt) Inaktivt. Tast <retur> for at aktivere, to gange <retur> \n"
+"sender."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(e-postformularfelt) Inaktivt. Tast <retur> for at aktivere."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Indtastningsfelt/adgangskode) Inaktivt. Tast <retur> for at aktivere."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVEBESKYTTET filindtastningssfelt. Brug pil OP/NED for at komme væk."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Filindtastningsfelt) Anfør filnavn. Pil OP/NED el. TAB forlader feltet."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Tekstindtastningsfelt) Indtast tekst.  Pil OP/NED el. TAB forlader feltet."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Tekstområde) Indtast tekst. Pil OP/NED el. TAB forlader området."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Tekstområde) Anfør tekst. Pil OP/NED el. TAB forlader (%s for editor)"
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVEBESKYTTET formulartekstfelt. Pil OP/NED el. TAB forlader feltet."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Formularfelt) Indtast tekst. Tast <retur> for at indsende."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Formularfelt) Anfør tekst. <Retur> indsender (%s sender udenom cache)"
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Formularfelt) Indtast tekst. <Retur> indsender, pile/TAB forlader feltet."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVEBESKYTTET formularfelt. Pil OP/NED el. TAB forlader feltet."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(e-postformularfelt) Anfør tekst. <Retur> indsender, piletaster forlader."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(e-postformularfelt) Postsystem spærret, så du kan ikke indsende."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Indtastningsfelt/adgangskode) Indtast kode. Pil OP/NED forlader feltet."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVEBESKYTTET adgangskodeformular. Pil OP/NED el. TAB forlader felt."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Afkrydsningsfelt) Højrepil eller <retur> (de)aktiverer."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVEBESKYTTET afkrydsningsboks. Pil OP/NED el. TAB forlader boks."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Radioknap)  Brug højrepil eller <retur> for at (de)aktivere."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVEBESKYTTET formular-radioknap. Pil OP/NED el. TAB forlader knap."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Indsend (\"x\" sender udenom cache) til "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Indsend til "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Indsend formular) Højrepil eller <retur> sender (\"x\" sender udenom cache)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Indsend formular) Brug højrepil eller <retur> for at indesende."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "UVIRKSOM formularindelsesknap. Pil OP/NED el. TAB forlader knap."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Indsend e-postformular til "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(indsend e-post-formular) Brug højrepil eller <retur> for at indsende."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(indsend e-post-formular) Postsystem spærret, så du kan ikke sende."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Formular-nulstilling) Højrepil eller <retur> nulstiller formularindhold."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "UVIRKSOM formular-rydningsknap. Pil OP/NED el. TAB forlader knap."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Valgmuligheder) Tast <retur> og brug pile for at vælge en indstilling."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Valgmuligheder) Tast <retur> og brug pile for at vælge en indstilling."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "SKRIVEBESKYTTET valgmulighedsliste. Brug retur el. pile for at gennemse el. forlade."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "SKRIVEBESKYTTET Valgliste. Brug retur el. pile for at gennemse eller forlade."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Indsender formular ..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Nulstiller formular ..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Genindlæser dokument. Alle formularens data går tabt!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Advarsel: Kan ikke omkode formulardata til tegnsæt %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(NORMALT LINK) Brug højrepil eller <retur> for at aktivere."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "Den ønskede facilitet er ikke tilgængelig i øjeblikket."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Indtast Lynx-kommando: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Kontakter "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Henter %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Springer %s over"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Bruger %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Ugyldig adresse: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Forkert udformet adresse %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "Adresse: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Webfilen er ikke tilgængelig!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Der kan søges i dette indeks.  Brug %s for at søge."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Mere-- Der kan søges i dette indeks. Brug %s for at søge."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Det indtastede linknummer er ugyldigt."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Dokumentets kildetekst vises. '\\'  returnerer til gengivet version."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  Piletaster: op/ned navigerer, højre følger et link, venstre går tilbage.  \n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " H=hjælp O=opsætning P=udskriv M=startskærm Q=afslut /=søg [backspace]=historik \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "  O=øvr. kmd  H=hjælp  K=taster  G=gå til  P=print  M=st.skærm  O=opsætn. Q=afslut  \n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "  O=øvr. kmd  B=retur E=rediger  D=hent ^R=genindlæs ^W=ryd skærm  søg/dok: / \n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O=øvr. kmd  C=kommentar <backspace>=Hist. Bogmærker: V=vis, A=tilføj R=slet \n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "     Brug tastaturet til at indtaste tekst i feltet                   "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U sletter al tekst i feltet. [Backspace] sletter et tegn "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "      Ctrl-U sletter tekst i feltet, [Backspace] sletter et tegn    "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s sletter al tekst i feltet, [Backspace] sletter et tegn    "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "     %s sletter tekst i feltet, [Backspace] sletter et tegn    "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Formateringsfejl i e-post-formular under afsendelse! Afbryder!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Advarsel! styrekoder i e-post-adressen erstattet af ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "Sending ikke tilladt! Kan ikke sende."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Indsendelse af e-post-formular slog fejl."
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Indsendelse af e-post-formular afbrudt!!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Sender formularens indhold ..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "'mailto:-linket indeholder ingen e-post-adresse!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Kan ikke åbne midlertidig fil til mailto:-adresse!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Vil du medsende den omhandlede side?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Vil du medsende HTML-koden?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Kalder din valgte editor for at skrive brev"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Fejl ved kald af editor, tjek valg af editor i (o)psætningsmenuen"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Send denne kommentar?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Send dette brev?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Sender dit brev ..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Sender din kommentar:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Ikke i et TEKSTOMRÅDE; kan ikke bruge en ekstern editor."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Ikke i et TEKSTOMRÅDE; kan ikke anvende kommando."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "file: ACTIONs er ikke tilladt!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "file: adresser via betjente links er ikke tilladt!"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "Adgang til lokale filer nægtet."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "file: Adresser via bogmærker er ikke tilladt!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Denne særlige adresse er ikke tilladt i eksterne dokumenter!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Tast <retur> for at komme tilbage til Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Kalder DCL-delproces. Tast \"logout\" for at returnere til Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Tast EXIT for at returnere til Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Kalder din kommandoskal. Tast 'exit' for at returnere til Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "Åbning af eksterne programmer er ikke tilladt i øjeblikket."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "'d'ownload-kommandoen er deaktiveret i øjeblikket."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Kan ikke hente et indtastningsfelt."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Formular indeholder en mailto-action! Kan ikke hente."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Kan ikke hente et mailto:-link."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Kan ikke hente cookier."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Kan ikke hente en printervalgmulighed."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Kan ikke hente en upload-valgmulighed."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Kan ikke hente en rettigheds-valgmulighed."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Denne særlige adresse kan ikke hentes!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Der er intet at hente."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Sporing slået TIL!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Sporing slået FRA!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Links vil blive vist for alle billeder!  Genindlæser ..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Standardhåndtering af billeder genoprettet! Genindlæser ..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Indlejrede billeder uden ALT-tekst gives Pseudo_ALTs! Genindlæser ..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Indlejrede billeder uden ALT-tekst ignoreres! Genindlæser ..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Rå 8-bit eller CJK-tilstand slået FRA!  Genindlæser ..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Rå 8-bit el. CJK-tilstand slået TIL! Genindlæser ..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Send HEAD-forespørgsel for D)okument, L)ink eller A)fbryd? (d,l,a): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Send HEAD-forespørgsel for D)okument, eller A)fbryd? (d,a): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Beklager, dokumentet er ikke en HTTP-adresse."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Beklager, linket er ikke en HTTP-adresse."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Beklager, ACTION for denne formular er deaktiveret."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Beklager, ACTION for denne formular er ikke en HTTP-adresse."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "Ikke en HTTP-adresse eller formular ACTION!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Denne særlige adresse kan ikke være en formular ACTION!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "Adresse befinder sig ikke i begyndelsesområde!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "Sending til nyhedsgrupper er slået fra!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Filhåndteringsfunktioner er sat ud af kraft!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Ingen genvejsfil er tilgængelig i øjeblikket."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Hop til (brug '?' for en liste): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Hop til en genvejsadresse er ikke tilladt!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Tilfældig adresse er ikke tilladt!  Brug en genvej."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Ingen tilfældige adresser er blevet brugt indtil videre."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Bogmærkefaciliteter er slået fra p.t."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "Programafvikling via bogmærker er slået fra."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Bogmærkefil er ikke defineret. Brug %s for at se valgmuligheder."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Kan ikke åbne midlertidig fil for at omdanne X-Mosaic-bogmærker."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "FEJL - kan ikke åbne bogmærkefil."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Kan ikke åbne bogmærkefil for at slette link."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Kan ikke åbne kladdefil for at slette link."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Fejl ved ny navngivning af kladdefil"
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Fejl ved ny navngivning af midlertidig fil."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Kan ikke kopiere midlertidig fil for at slette link."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Kan ikke genåbne midlertidig fil for at slette link."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Link står ikke for sig selv på en enkelt linje i bogmærkefilen."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Kunne ikke slette bogmærke."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Bogmærkefiler kan ikke traverseres (kun HTTP-adresser)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Kan ikke åbne bogmærkefil, brug 'a' for at gemme et link først."
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Der er ingen links i denne bogmærkefil!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "Send HEAD-forespørgsel for D)okument, eller A)fbryd? (d,a): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Gem D)okument eller L)ink i bogmærkefil eller A)fbryd? (d,l,a): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Gem D)okument i bogmærkefil eller A)fbryd? (d,a): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Gem L)ink i bogmærkefil eller A)fbryd? (l,a): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Formulardokumenter med POST-indhold kan ikke gemmes som bogmærker."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Kan ikke gemme formularfelter/-links"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Historik-, informations-, menu- og listefiler kan ikke gemmes som bogmærker."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Skal dette link virkelig slettes fra din bogmærkefil?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Forkert udformet adresse."
+
+# "Historisk kommentarfortolkning" betyder at Lynx opfatter tegnet ">" som
+# afsluttende tegn i en kommentar i stedet for det gyldige "-->"
+# At Lynx har en indstilling for dette er derfor vi elsker Lynx, ikk'? ;-)
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "\"Historisk\" kommentarfortolkning slået TIL (Minimal er tilsidesat)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Historisk\" kommentarfortolkning slået FRA (Minimal er virksom)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Historisk\" kommentarfortolkning slået TIL (Gyldig er tilsidesat)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Historisk\" kommentarfortolkning slået FRA (Gyldig er virksom)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Minimal kommentarfortolkning slået TIL (og er virksom)!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Minimal kommentarfortolkning slået FRA (Gyldig er virksom)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Minimal kommentarfortolkning slået TIL (men \"historisk\" er virksom)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Minimal kommentarfortolkning slået FRA (\"Historisk\" er virksom)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "\"Soft double-quote\"-analyse slået TIL!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "\"Soft double-quote\"-fortolkning slået FRA!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Bruger nu \"TagSoup\" til at fortolke HTML."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Bruger nu \"SortaSGML\" til at fortolke HTML!"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Slutningen af dette dokument er nået."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Du er allerede ved begyndelsen af dette dokument."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Du står allerede på side %d af dette dokument."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Linknummer %d er allerede det aktuelle."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Du står allerede på det første dokument"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Der er ingen links ovenover denne linje i dokumentet."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Der er ingen links under denne linje i dokumentet."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Største længde er nået! Slet tekst eller forlad feltet."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Du står ikke på en formularindsendelsesknap eller et normalt link."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "Mindst en radioknap skal altid være markeret!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Ingen indsendelsesknap til denne formular, indsend et enkelt tekstfelt?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Vil du returnere til det forrige dokument?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Brug pile eller TAB for at forlade feltet."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Indtast tekst. Brug pile eller TAB for at forlade feltet."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Dårlig HTML! Ingen 'form action' er defineret. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Dårlig HTML!! Kan ikke lave et pop op-vindue!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Kan ikke lave et pop op-vindue!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Der er spærret for tilfældige adresser!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Der er spærret for ikke-HTTP-adresser!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Der er spærret for \"%s\"-adresser"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "Åbn en side: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Ret den aktuelle adresse: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Ret den forrige adresse: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Ret en foregående adresse: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "Dette dokument har 'POST'-data."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Ret dette dokuments adresse: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Ret adresse på det aktuelle link: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "Du kan ikke rette i adresser til filhåndtering"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Indtast en databaseforespørgsel: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Søg efter: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Ret i søgemønster: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Ret forrige søgemønster: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Ret i et tidligere søgemønster: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Brug Control-R for at genaktivere den aktuelle søgning."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Rediger den aktuelle genvej: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Rediger den foregående genvej: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Rediger en foregående genvej: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Tasten '%c' er ikke bundet til en genvejsfil!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Kan ikke finde genvejsfilen!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Kan ikke åbne genvejsfilen!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Fejl ved læsning af genvejsfil!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Ikke nok hukommelse til læsning af genvejsfil!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Ikke nok hukommelse til læsning af genvejstabel!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Intet indeks er tilgængeligt i øjeblikket."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Vil du virkelig gå til startskærmen?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "Du står allerede i startskærmen!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Ikke et søgbart, indekseret dokument - tast '/' for at søge efter tekst"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Denne fil har ingen ejer, så du kan ikke sende en kommentar"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Ingen ejer er defineret. Brug %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Vil du gerne sende en kommentar?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "Postsystemet er spærret, så du kan ikke sende en kommentar"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "'e'dit-kommandoen er slået fra i øjeblikket."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "Ekstern redigering er slået fra i øjeblikket."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Systemfejl - indhentning af status slog fejl."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Ingen editor er defineret!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "'p'rint-kommandoen er slået fra i øjeblikket."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "Dokumentet har hverken værktøjsbjælke, links eller banner."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Kan ikke åbne traverseringsfil."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Kan ikke åbne traversering-fundet-fil."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Kan ikke åbne afvisningsfil."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Kan ikke åbne fil med uddata fra traverseringsfejl"
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "TRAVERSERING BLEV AFBRUDT"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Følg link, eller gå til link-/sidenummer: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Vælg valgmuligheds- eller sidenummer: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Valgmulighed nummer %d er allerede aktuelt."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Ingen valgmuligheder herunder."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Ingen valgmuligheder herover."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Du er allerede ved side %d af denne valgmulighedsliste."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Du har indtastet et ugyldigt nummer for valgmulighed."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Dårlig HTML!!  Brug -trace (sporing) til diagnostik. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Giv filen der skal gemmes i et navn"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Kan ikke gemme data i fil -- kør venligst WWW lokalt"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Kan ikke åbne midlertidig fil!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Kan ikke åbne uddatafil!  Afbryder!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Programudførelse er deaktiveret."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Denne fil kan ikke eksekveres. Se opsætningsmenuen (brug %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Denne version er ikke oversat, så filer kan eksekveres."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Filen kan ikke vises på denne terminal."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Filen kan ikke vises på denne terminal: D=hent, eller C=afbryd"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D=hent, eller C=afbryd"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Forkaster fil."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Henter fil - vent venligst ..."
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Indtast et filnavn: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Ret det foregående filnavn: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Ret et foregående filnavn: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Indtast et nyt filnavn: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Filnavn må ikke begynde med et punktum."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Fil eksisterer. Opret en nyere version?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Fil eksisterer. Overskriv?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Kan ikke skrive til fil."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "FEJL! - download-kommando er sat forkert op."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Kan ikke hente fil."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Læser filkatalog ..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Laver fortegnelse over filer i filkatalog ..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Gemmer ..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Kunne ikke redigere filen '%s'."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Kan ikke tilgå dokument!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Kunne ikke tilgå fil."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Kunne ikke tilgå filkatalog."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Kunne ikke indlæse data."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx kan ikke r(e)digere eksterne webfiler i øjeblikket."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Dette felt kan ikke r(e)digeres med en ekstern editor."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Forkert regel"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Ikke nok operander:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Du har ikke lov til at redigere denne fil."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Titel: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Emne: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Brugernavn: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Adgangskode: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Brugernavn og adgangskode er påkrævet!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: Adgangskode påkrævet!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Slet al autorisationsinfo for denne session?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Autorisationsinfo slettet."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Autorisation slog fejl.  Prøv igen?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "cgi-understøttelse er slået fra."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Denne version er ikke oversat med lynxcgi."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Beklager, ingen kendt metode til at omdanne %s til %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Kan ikke oprette forbindelse."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Kan ikke oprette forbindelse"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Afviste at eksekvere link pga. af fejl i underliggende kommando."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Eksekvering af link afvist pga. '%c'-tegn."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Eksekvering af link afvist, da stien er angivet relativt ('../')"
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Eksekvering af link afvist pga. placering eller sti."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "Postsystemet er spærret!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Kun filer og servere på den lokale værtsmaskine kan tilgås."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Adgang til Telnet er spærret!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Mulighed for at angive portnumre til Telnet er spærret."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "Adgang til USENET-nyhedsgrupper er spærret!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Der er spærret for Rlogin-adgang!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Der er spærret for FTP-adgang!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Der er ingen links i dette dokument."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Der er kun skjulte links i dette dokument."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Ude af stand til at åbne kommandofil."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Sending til nyhedsgruppe afbrudt!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Skriver indlæg til nyhedsgruppe med din valgte editor"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Send dette indlæg?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Tilføj '%s'?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Sender til nyhedsgruppe(r) ..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Du har ulæst post. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "***  Du har post. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Du har ny post. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Indsætning af fil afbrudt!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Ikke nok hukommelse til fil!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Kan ikke åbne fil for læsning."
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Filen eksisterer ikke."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Fil eksisterer ikke - genindtast eller afbryd:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Filen kan ikke læses."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Fil kan ikke læses - genindtast eller afbryd:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Intet at indsætte - filens længde er 0 (nul)."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Du ville ikke gemme alligevel!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Fortrød afsendelse af brev!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Viser nu HTML-kode. Vil du gerne sende koden med post?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Vent venligst ..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Sender fil. Vent venligst ..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "FEJL - kan ikke sende fil"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Filen er %d skærmbilleder lang. Vil du gerne udskrive den?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Fortrød udskrivning!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Tast <retur> for at begynde: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Tast <retur> for at afslutte: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Filen er %d sider lang. Er du sikker på at du vil udskrive den?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Sørg for at din printer er tændt. Tast <retur> for at udskrive:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "FEJL - kan ikke finde plads til fil!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Kan ikke åbne midlertidig fil"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Kan ikke åbne fil med printerindstillinger"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Udskriver fil. Vent venligst ..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Indtast venligst en gyldig e-post-adresse: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "FEJL! - printeren er sat forkert op!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Kortbillede fra 'POST'-svar ikke tilgængeligt!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Fejldirigering på ønsket kortbillede fra klienten!"
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "Kortbillede fra klient er ikke tilgængeligt!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Ingen kortbilleder fra klient er tilgængelige!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "Kortbillede fra klient er ikke tilgængeligt!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Skærmen skal have mindst 24 linjer til opsætningsmenuen!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Skærmen skal have mindst 23 linjer til opsætningsmenuen!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Skærmen skal have mindst 22 linjer til opsætningsmenuen!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Brugertilstand skal stå som avanceret for at bruge denne taste."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Content-type: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Kommando: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Ukendt eller tvetydig kommando"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Version "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " første"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", gætter ..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Rettigheder for "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Vælg "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "stort bogstav"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " på valgmulighedslinje."
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " for at gemme,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " til "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " eller "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " indeks"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " for at komme tilbage til Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Godkend"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Nulstil"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Venstre pil annullerer ændringer"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Gem indstillinger på disk"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Tast <retur> for at godkende indtastede data."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "<Retur> godkender indtastninger. Slet data for at genskabe standarder."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Værdi godkendt!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Værdi godkendt! -- ADVARSEL: Lynx er sat op til X WINDOW!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Værdi godkendt! -- ADVARSEL: Lynx er IKKE sat op til X WINDOW!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Du har ikke lov til vælge en anden editor!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Det lykkedes ikke at sætte DISPLAY-variablen!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Det lykkedes ikke at slette DISPLAY-variablen!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Du har ikke lov til at ændre bogmærkefilen!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "Terminal understøtter ikke farve"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Din '%s' terminal understøtter ikke farver."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "Adgang til punktumfiler er spærret!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "User-Agent-linje indeholder ikke \"Lynx\" eller \"L_y_n_x"
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Brug \"L_y_n_x\" eller \"Lynx\" i User-Agent-linjen. Ellers minder det om bevidst snyd!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "Der er ikke mulighed for at ændre værdien af User-Agent-variablen!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Du har ikke lov til at ændre denne indstilling."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Gemmer indstillinger ..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Indstillinger gemt!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Kan ikke gemme indstillinger!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' for at returnere til Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' for at gemme, eller 'r' for at returnere til Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Tryk enhver taste for at ændre værdi; <retur> accepterer."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Fejl ved dekomprimering af midlertidig fil!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Adressetype ikke understøttet!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Data ikke understøttet: Adresse! Brug 'SHOWINFO' indtil videre."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Grænse for omdirigering på 10 adresser er nået."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Modtog ugyldig omdirigeringsadresse fra server!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Server spurgte efter %d omdirigering af POST-indhold til"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P=fortsæt, brug G)et eller C=afbryd "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P=fortsæt eller C=afbryd "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Omdirigering af POST-indhold: P=fortsæt, U=se URL, G=brug GET, C=afbryd"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Omdirigering af POST-indhold: P=fortsæt, U=se URL, C=afbryd"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Dokument fra formular med POST-indhold. Genindsend?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Genindsend POST-indhold til %s ?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Liste fra dokument med POST-data. Genindlæs %s ?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Dokument fra \"POST action\". HEAD-kommando forstås måske ikke. Fortsæt?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Formularindsendelse sker med 'POST'. 'HEAD' forstås evt. ikke. Fortsæt?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Fortsæt uden brugernavn og adgangskode?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Fortsæt (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Kan ikke bruge POST-metode med denne vært."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "POST kan ikke bruges med denne adresse - ignorerer POST-data!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Forkaster POST-data ..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Dokumentet vil ikke blive genindlæst!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Placering: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' ikke fundet!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Standard bogmærkefil"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Skærm for lille! (min. 8x35)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Vælg bogmærkefil eller ^G for at afbryde: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Vælg bogmærkefil: '=' giver en menu. ^G afbryder: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "Genskab L)ink i denne bogmærkefil eller A)fbryd? (l,a): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Der er ikke mulighed for flere bogmærkefiler."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Vælg bogmærke (skærm %d af %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Vælg Bogmærke"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Redigerer bogmærkefilers BESKRIVELSE og PLACERING (%d af 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Redigerer bogmærkefilers BESKRIVELSE og PLACERING"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Bogstav: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Brug en filsti udenfor dit hjemmekatalog i kommandoskallens syntaks!"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Brug en filsti udenfor dit hjemmekatalog!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Max. links pr. side overskredet! Se en halv side eller 2 linjer ad gangen."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Side med tidligere besøgte links er ikke tilgængelig!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Hukommelse opbrugt! Program afsluttedes!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Hukommelse opbrugt! Afslutter ..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Ikke nok hukommelse!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Filkatalog/filhåndtering er ikke tilgængelig"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF i BASE-mærke er ikke en absolut adresse."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "Adresse er ikke absolut."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "Adresse er ikke absolut."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Du sender en meddelelse med indhold til:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Du sender en kommentar til:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+"Med kopi til:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+"Med kopier til:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Brug Ctrl-G for at afbryde, hvis du ikke vil sende meddelelse\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Indtast venligst dit navn (eller lad være hvis du vil være anonym)\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Anfør venligst en e-post-adresse eller en anden\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " måde at kontakte dig på, hvis du ønsker et svar.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Anfør venligst en emnelinje.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Anfør en e-post-adresse for en Cc af dit brev.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Undlad at udfylde, hvis du ikke vil have kopi.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Gennemse venligst brevets indhold:\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Tast <retur> for at fortsætte: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Tast <retur> for at rydde op: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Brug Control-U for at slette det forvalgte.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Skriv venligst dit brev nedenfor."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Når du er færdig, så tast <retur> og sæt et enkelt punktum (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" på en linje for sig selv og tast <retur> igen."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s cookie: %.*s=%.*s  Tillad? (Y=ja/N=nej/A=Altid/V=aldrig)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Godkend ugyldigt cookiedomæne=%s for '%s'?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Godkend ugyldig cookiesti=%s som et præfiks for '%s'?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Tillader denne cookie."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Afviser denne cookie."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Cookiebeholderen er tom."
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "Cookiebeholderen er tom."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Aktivér links for at slette cookier eller hele domæner,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "eller for at ændre et domænes status."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Cookier aldrig tilladt.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Cookier altid tilladt.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Cookier tilladt via prompt.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Varige cookier.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Ingen titel.)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Ingen navn.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Ingen værdi.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "Ingen"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Slut på session.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Slet denne cookie?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Cookier er blevet slettet!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Slet dette tomme domæne?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Domænet er blevet slettet!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D=slet domænes cookier, tillad: A=altid P=spørg V=aldrig C=afbryd? "
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D=slet domæne, tillad: A=altid P=spørg V=aldrig C=afbryd? "
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Alle cookier i domænet er blevet slettet!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "Tillader 'A'ltid fra domæne '%s'."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "Tillader aldrig(V) fra domæne '%s'."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "'Spørger(P) om tilladelse fra domæne '%s'."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Slet alle cookier under dette domæne?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Alle cookier i beholderen er blevet slettet!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Port 19 er ikke tilladt i adresser."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Port 25 er ikke tilladt i adresser."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Port %lu er ikke tilladt i adresser."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "Adresse har et forkert portfelt."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Øvre grænse for indlejring af HTML-elementer er overskredet."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Forkert delreference! Fjerner forreste punktummer."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Åbning af sporingslogfil mislykkedes. Sporing slået fra!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Lynx sporingslog"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Ingen sporingslog er åbnet for denne session."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Det maksimale antal midlertidige filer er nået!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Formularfeltets værdi overstiger bufferlængde! Gør den kortere."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Ændret \"hale\" kombineret med \"hoved\" i værdi for formularfelt."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Filkatalog"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Gennemsyn af filkatalog er ikke tilladt."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "Selektiv adgang til dette filkatalog er ikke muliggjort"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: Skanning af filkatalog mislykkedes."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Dette filkatalog kan ikke læses."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Kan ikke tilgå den ønskede fil."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Kunne ikke finde en passende repræsentation for overførsel."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Kunne ikke åbne fil til dekomprimering!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Filer:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Underkataloger:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " filkatalog"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Op til "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Aktuelle filkatalog er "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "Serveren svarede ikke!"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "CSO-indeks"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Dette er et søgbart indeks i en CSO-database.\n"
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "CSO-søgeresultater"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Søgning mislykkedes på %s\n"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Tryk på 's'-tasten og indtast nøgleord for søgning.\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Dette er et søgbart Gopher-indeks.\n"
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "Gopher-indeks"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "Gopher-menu"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr " Resultater af søgning"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "Sender CSO/PH-anmodning."
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "Sender Gopher-anmodning."
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO/PH-anmodning sendt; venter på svar."
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopher-anmodning sendt; venter på svar."
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Indtast venligst nøgleord for søgning.\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"De indtastede nøgleord vil lade dig søge på et"
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr " personnavn i databasen.\n"
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "Forbindelsen lukket ???"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr "Kan ikke åbne midlertidig fil for postning til nyhedsgruppe."
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Postning til nyhedsgrupper med SSL kan ikke benyttes med denne klient."
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Stil %d '%s' SGML:%s.  Font %s %.1f punkt.\n"
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tJuster=%d, %d tabs. (%.0f foran, %.0f efter)\n"
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tTab kind=%d ved %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "Kan ikke fortsætte uden et brugernavn og en adgangskode."
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Kan ikke prøve igen med godkendelse! Kontakt serverens WebMaster."
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Kan ikke prøve igen med proxy-godkendelse! Kontakt serverens WebMaster."
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr "Prøver igen med godkendelsesinformation fra proxyvært."
+
+#: LYMessages.c:799
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL-fejl:%s - fortsæt?"
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Retur-meddelelse er for stor."
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr "Indtast WAIS-forespørgsel: "
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "Prøver igen med HTTP0 som forespørgsel."
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Overført %d bytes"
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "Dataoverførsel fuldført"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Fejl ved behandling af linje %d af %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr "Side med adresseliste"
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "Bogmærkefil"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr "Opsætningsdefinitioner"
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr "Cookiebeholder"
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr "Aktuelle tastebindinger"
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "Valgmuligheder for filhåndtering"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "Valgmuligheder for download af filer"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "Historikside"
+
+#: LYMessages.c:820
+#, fuzzy
+msgid "Cache Jar"
+msgstr "Cookiebeholder"
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr "Oversigtsside"
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "Information om lynx.cfg"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr "Omdannet Mosaic-bogmærkefil"
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "Opsætningsmenu"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "Valgmuligheder for filrettigheder"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "Valgmuligheder ved udskrivning"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "Oplysninger om det aktuelle dokument"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "De seneste meddelelser fra statuslinjen"
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "Valgmuligheder for uploads"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr "Oversigt over besøgte links"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "Se også"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr "din"
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr "Valgmuligheder ved opstart"
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "Valgmuligheder ved oversættelse (compile)"
+
+#: LYMessages.c:837
+msgid "color-style configuration"
+msgstr "Opsætning af color-style"
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "seneste udgave"
+
+#: LYMessages.c:839
+msgid "pre-release version"
+msgstr "prøveversion"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "udviklingsversion"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Følgende data blev indhentet under den automatiske opsætningsproces\n"
+"af denne kopi af Lynx.  Ved indrapportering af en programfejl, medsend da\n"
+"venligst en kopi af denne side."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Følgende data blev brugt som forvalgte oversættelsesdefinitioner,\n"
+"da denne kopi af Lynx blev lavet."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "  C=Opret D=Hent  E=rediger  F=fuld menu  M=ret  R=slet  T=marker  U=upload      \n"
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr "Kunne ikke hente status på aktuelle link!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Særlig adresse er kun gyldig fra menu over aktuelle filrettigheder!"
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr "Ekstern understøttelse er slået fra i øjeblikket."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+msgid "Changing working-directory is currently disabled."
+msgstr "Ændring af arbejdskatalog er sat ud af kraft i øjeblikket."
+
+#: LYMessages.c:864
+msgid "Linewrap OFF!"
+msgstr "Linjeombrydning slået FRA!"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr "Linjeombrydning slået TIL!"
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Indlejrede tabeller fortolkes IKKE! Genindlæser ..."
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Indlejrede tabeller fortolkes! Genindlæser ..."
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Panorering er slået fra når linjeombrydning er aktiveret"
+
+#: LYMessages.c:869
+msgid "Trace not supported"
+msgstr "Sporing ikke understøttet"
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tIndryk: først=%.0f andre=%.0f, Højde=%.1f Beskr=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Brugernavn for '%s' på %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Denne klient kan ikke danne godkendelsesinformation til proxyvært"
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Denne klient kan ikke danne godkendelsesinformation til protokol"
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Ugyldigt hoved '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "proxygodkendelse påkrævet - forsøger igen"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "Adgang uden godkendelse nægtet - forsøger igen"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "Adgang forbudt pr. regel"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Dokument med 'POST'-indhold ikke fundet i cache. Genindsend?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr "Indlæsning slog fejl, brug en foregående kopi."
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr "Indlæsning ikke fuldført."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "** HTAccess: sokkel- el. filnr. returneret af forældet indlæsningsmetode!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Intern softwarefejl. Meld venligst til lynx-dev@nongnu.org!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Statustilbagemelding var: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr "Kan ikke tilgå"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "Kan ikke tilgå dokument."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Indtast adgangskode for bruger %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Kan ikke kontakte FTP-vært."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "luk primær sokkel"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "sokkel til primær sokkel"
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "Symbolsk link"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "FTP-filkatalog indlæses."
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Overført %d bytes (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr "dataforbindelse åben"
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "Modtager FTP-fil."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "Kunne ikke oprette finger-forbindelse."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Kunne ikke indlæse data (intet sitenavn i finger-adresse)"
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "Ugyldigt portnummer - vil kun bruge port 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "Kunne ikke få adgang til finger-vært."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "Intet svar fra finger-server."
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Brugernavn for nyhedsvært '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "Skift brugernavn?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "Brugernavn:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Adgangskode for nyhedsvært (news) '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "Skift adgangskode?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "Ingen resultater for: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Ingen artikler i denne gruppe.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Ingen artikler i dette interval.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  Artikler %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "Tidligere artikler"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Der er i øjeblikket ca. %d artikler i %s, ID'er som følger:\n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "Alle tilgængelige artikler i "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "Nyere artikler"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "Send til "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Denne klient kan ikke bruge SNEWS-adresser."
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr "Intet mål for rå tekst!"
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "Kontakter nyhedsvært ..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "Kunne ikke tilgå %s."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Kan ikke læse nyhedsinfo. Nyhedsvært %.20s svarede: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Kan ikke læse nyhedsinfo, tomt svar fra vært %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "Indlæser liste over tilgængelige nyhedsgrupper.."
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "Indlæser liste over artikler i nyhedsgruppe.."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "Læser nyhedsartikel.."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr "Beklager, kunne ikke indlæse artikler."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "Adresse har en ugyldig port"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "Adresselængde forekommer ugyldig"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Ude af stand til at finde fremmed vært %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Ugyldigt værtsnavn %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Opretter %s-forbindelse til %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "sokkel fejlede."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "sokkel fejlede: familie %d adr. %s port %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Kunne ikke oprette en ikke-blokerende forbindelse."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "Forbindelse opgivet (for mange forsøg)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Kunne ikke få sokkel til at blokere."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+#, fuzzy
+msgid "Socket read failed (too many tries)."
+msgstr "Forbindelse opgivet (for mange forsøg)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "Adresse indeholder et brugernavn: %s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Denne klient kan ikke bruge HTTPS-adresser."
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr "Kan ikke forbinde til fremmed vært."
+
+#: WWW/Library/Implementation/HTTP.c:669
+msgid "Retrying connection without TLS."
+msgstr "Forsøger at genetablere forbindelsen uden TLS."
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr "ingen udsteder fundet"
+
+# CA = Certification Authority
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr "udsteder er ikke en certificeringsmyndighed"
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr "certifikatet har ingen kendt udsteder"
+
+#: WWW/Library/Implementation/HTTP.c:720
+msgid "the certificate has been revoked"
+msgstr "certifikatet er blevet tilbagekaldt"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr "certifikatet er ikke troværdigt"
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Verificerede forbindelse til %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, fuzzy, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Verificerede forbindelse til %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr "Kan ikke finde fælles navn i certifikat"
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL-fejl:vært(%s)!=cert(%s) - fortsæt?"
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, fuzzy, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "Verificerede forbindelse til %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Sikker %d-bit %s (%s) HTTP-forbindelse"
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "Sender HTTP-anmodning."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr "Uventet skrivningsfejl i netværk; forbindelse afbrudt."
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP-anmodning sendt; venter på svar."
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr "Uventet læsningsfejl i netværk; forbindelse afbrudt"
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr "Modtog uventet \"Informational Status\"."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr "Anmodning imødekommet. Nulstil indhold."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Modtog uventet 304 \"Not Modified status\"."
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr "Omdirigering af POST-indhold kræver brugers godkendelse."
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Har POST-indhold. Behandler varig omdirigering som midlertidig.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr "Prøver igen med oplysning om adgangstilladelse."
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr "Vis indhold af 401-meddelelse?"
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr "Vis indhold af 407-meddelelse?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr "Ukendt statussvar fra server!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "fremmed %s session:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Kunne ikke skabe forbindelse til WAIS-server."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Kunne ikke åbne WAIS-forbindelse for læsning."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Diagnosticeringskode er "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Indeks "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " indeholder flg. %d enhed%s med relevans for \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Det første tal efter hver listning er dens relative score, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "det andet er antal linjer i enheden."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (forkert filnavn)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(forkert dok-id)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(headerlinje for kort, kan ikke vise)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"(headerlinje for lang, kan ikke vise)\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Tekstlinje\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Overskriftslinje, kan ikke vise\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Kodelinje, kan ikke vise\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Syntaksfejl i WAIS-adresse"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS-indeks)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS-indeks: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Dette er et link til søgning i "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS-indekset.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Indtast 's'øgekommando og anfør så søgeordene.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (i "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS-søgning efter \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" i: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Forespørgsel for lang."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Søger i WAIS-database ..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Søgning afbrudt."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Kan ikke omdanne WAIS-dokumentets format"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Anmodning for lang."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Henter WAIS-dokument ..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Ingen tekst blev returneret!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr " IKKE ANFØRT i kildefil; "
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr " WAIS-kildefil"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " beskrivelse"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "Adgangslinks"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "Direkte adgang"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (eller via proxy-server, hvis fastsat)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "Vedligeholder"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "Vært"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "Hukommelse opbrugt, fremvisning afbrudt!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Hukommelse opbrugt, vil afbryde overførsel!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** HUKOMMELSE OPBRUGT ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "ukendt felt eller link"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "indtast tekst"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "indtast adgangskode"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "afkrydsningsboks"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "radioknap"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "indsendelsesknap"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "nulstillingsknap"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "pop up-menu"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "skjult formularfelt"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "indtast tekst"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr "angiv interval"
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "angiv fil"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr "tekstindsendelsesfelt"
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "Billedindsendelsesknap"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr "nøglegen-felt"
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "ukendt formularfelt"
+
+#: src/GridText.c:10279
+msgid "Can't open file for uploading"
+msgstr "Kan ikke åbne fil til upload"
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr "Indsender %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Program hænger: TextAnchor-struktur ødelagt - det er bedst at afbryde!"
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr "Ombryd linjer så de passer til det viste område?"
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr "Meget lange linjer er blevet ombrudt!"
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr "Meget lange linjer er blevet afkortet!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "bytes"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "Læst %s af data"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Læst %s af %s af data"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/sek"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (gået i stå i %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", ETA %s"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Tast 'z' for at afbryde)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "ja"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "nej"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr "J/N/A/L"
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "Beskrivelse:"
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr "(ingen)"
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr "Filsti:"
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(ukendt)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Dokument har kun skjulte links. Brug 'l'istekommandoen."
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr "Cache-fejl - diskplads opbrugt?"
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr "Cache-fejl - ikke nok hukommelse!"
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Denne fil er en HTML-udgave af X Mosaics bogmærkefil. Gamle eller\n"
+"     ugyldige links kan slettes ved brug af kommandoen til at slette\n"
+"     et bogmærke, det er normalt 'R'-tasten, men kan have fået en\n"
+"     anden tildeling af din systemadministrator."
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Du kan slette links med 'R'-tasten<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Du kan slette links ved at bruge kommandoen til at slette et\n"
+"     bogmærke. Det er normalt 'R'-tasten, men kan have fået en anden\n"
+"     tildeling af din systemadministrator"
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Denne fil kan også redigeres med en almindelig teksteditor for at\n"
+"     slette gamle eller ugyldige links, eller for at ændre deres\n"
+"     rækkefølge."
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Bemærk: Hvis du redigerer denne fil manuelt,\n"
+"        bør du ikke ændre linjeformatet\n"
+"        eller tilføje anden HTML-kode.\n"
+"        Sørg for at ethvert bogmærke er gemt på en enkelt linje."
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Fil kan måske genskabes fra %s under denne session"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Vil du udføre \"%s\"?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Kan ikke få adgang til cgi-program"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Godt råd"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "En fortrinlig HTTP-server for VMS kan findes via"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "dette link"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Den tilbyder upåklagelig understøttelse af CGI-programmer\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Afslutter via interrupt:"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr "(fra en foregående session)"
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr "Udløbsdato for cookie:"
+
+#: src/LYCookie.c:2562
+msgid "Internal"
+msgstr "Intern"
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "'cookie_domain_set_flag'-fejl, afbryder program"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Klargøring af terminal slog fejl - ukendt terminaltype?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Du skal bruge en vt100, 200, etc. terminal med dette program."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "Din terminaltype er ukendt!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "Anfør en terminaltype:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TERMINAL-TYPE SAT TIL"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"En kritisk fejl opstod i %s Ver. %s\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Underret venligst din systemadministrator for at få bekræftet en\n"
+"programfejl, og hvis den bekræftes, send da også en meddelelse til\n"
+"postlisten lynx-dev. Rapporter om programfejl bør indeholde en koncis\n"
+"beskrivelse af den kommando og/eller adresse som forårsagede problemet,\n"
+"styresystemets navn og versionsnummer, TCP/IP-implementeringen, en\n"
+"sporingslog (trace) hvis en sådan kan laves, samt enhver anden relevant\n"
+"information.\n"
+
+#: src/LYEdit.c:266
+#, fuzzy, c-format
+msgid "Error starting editor, %s"
+msgstr "Fejl ved behandling af linje %d af %s\n"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Editor dræbt ved signal"
+
+#: src/LYEdit.c:274
+#, fuzzy, c-format
+msgid "Editor returned with error status %s"
+msgstr "Editor returnerede fejlstatus, %s"
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "Hentet link:"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "Foreslået filnavn:"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "Gængse valgmuligheder ved hjemtagning af filer:"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "Valgmuligheder ved download af filer:"
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "Gem på disk"
+
+#: src/LYDownload.c:545
+msgid "View temporary file"
+msgstr "Vis midlertidig file"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "Gem på disk deaktiveret."
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Egne tilføjelser:"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Intet navn givet"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Du valgte:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(ingen adresse)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (intern)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (var intern)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (Fra historik)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Du har besøgt: ('POSTs', bogmærke-, menu- og listefiler undtaget)"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Ingen meddelelser endnu)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Ugyldig peger opdaget."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "Sekvens:"
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Peger:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "FilNavn:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "LinjeAntal:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Hukommelseslæk opdaget."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Indeholder:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "ByteStr.:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "gentildelt:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Total hukommelsesudsivning denne gang:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr "Tildeling ved spidsbelastning"
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "Antal tildelte byte"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr "Totalt antal \"mallocs\""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr "Totalt antal \"frees\""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Henvisninger i "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "dette dokument:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Synlige links:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Skjulte links:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Henvisninger"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Synlige links"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Kan ikke indhente status på '%s'."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "Valgte enhed er ikke en fil eller et filkatalog!  Anmodning ignoreret."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Kan ikke %s pga. systemfejl!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Sandsynlig fejl for %s skyldes en systemfejl!"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "slet %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr "opret %s"
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "flyt %s til %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Der er allerede et filkatalog med dette navn! Anmodning ignoreret."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Der er allerede en fil med dette navn! Anmodning ignoreret."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Det anførte navn er allerede i brug! Anmodning ignoreret."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "Mål har en anden ejer! Nægtet."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Mål er ikke et gyldigt filkatalog! Nægtet."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Slet alle markerede filer og filkataloger?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Angiv en ny placering for de markerede filer: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Sti for lang"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Samme placering af kilde og mål - anmodning ignoreret!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Indtast nyt navn på filkatalog: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Indtast et nyt navn på fil: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Ugyldigt tegn (sti-separator) fundet! Anmodning ignoreret."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Anfør ny placering af filkatalog: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Anfør ny placering af fil: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Uventet fejl - kan ikke finde afsluttende sti-separator"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Samme placering af kilde og mål! Anmodning ignoreret!"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Ret n=navn, l=placering eller p=rettighed: "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Ret n=navn eller l=placering: "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Denne programfunktion er endnu ikke indarbejdet!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Anfør navn på den fil som skal oprettes: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Ugyldig omdirigering \"//\" opdaget! Anmodning ignoreret."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Anfør navn på nyt filkatalog: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Opret f=fil eller d=filkatalog: "
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Slet filkatalog '%s'?"
+
+#: src/LYLocal.c:1169
+msgid "Remove directory?"
+msgstr "Slet filkatalog?"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Slet fil '%s'?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Slet fil?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Slet symbolsk link '%s'?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Slet symbolsk link"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Beklager, kun UNIX-filer kan gives rettigheder indtil videre."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Ude af stand til at åbne fil med rettighedstilvalg."
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Anfør rettigheder nedenfor:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Ejer:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Gruppe"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Andre:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "formular som skal tillades"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Ugyldigt tilstandsformat."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Ugyldigt syntaksformat."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Advarsel!  UUDecodet fil lægges i filkatalog hvor du startede Lynx."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "NULL adressepeger"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Udfører %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Udfører systemkommando. Dette kan tage et øjeblik."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Aktuelle filkatalog:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Aktuelle udvalg:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Intet er aktuelt udvalgt."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "markeret enhed:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "markerede enheder:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Ugyldigt filnavn: anmodning ignoreret."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Installering i det valgte filkatalog er ikke tilladt."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "Den markerede enhed er ikke et filkatalog! Anmodning ignoreret."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Vent et øjeblik, ..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr "Kunne ikke danne installeringsparametre"
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Kilde og mål er det samme: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Står allerede i målkataloget: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Installering fuldført"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "Midlertidig adresse eller listen ville blive for lang."
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Sender"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Linket   %s :?: %s \n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "ved navn \"%s\"\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "i filen \"%s\" ved navn \"%s\"\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "blev der anmodet om, men den var ikke tilgængelig."
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "Du ville sikkert gerne vide dette."
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "Denne meddelelse blev automatisk lavet af"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr "Systemets postprogram er ikke sat op"
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr "Ingen \"Winsock\" fundet, beklager."
+
+#: src/LYMain.c:1226
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Du SKAL definere et gyldigt TMP- eller TEMP-område!"
+
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+msgid "No such directory"
+msgstr "Intet sådant filkatalog"
+
+#: src/LYMain.c:1464
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Opsætningsfil \"%s\" er ikke tilgængelig.\n"
+"\n"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx' tegnsæt er ikke angivet.\n"
+"\n"
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx \"edit map\" er ikke angivet.\n"
+"\n"
+
+#: src/LYMain.c:1579
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx-fil \"%s\" er ikke tilgængelig.\n"
+"\n"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr "Advarsel:"
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr "Ændring for varige cookier vil kun gælde næste session."
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: Ignorerer ukendt tegnsæt=%s\n"
+
+#: src/LYMain.c:3181
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Version %s (%s)"
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Bygget på %s %s %s\n"
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+#, fuzzy
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "Ophavsret indehaves af University of Kansas, CERN og andre bidragydere."
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Distribueret under GNU General Public License."
+
+#: src/LYMain.c:3244
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Se http://lynx.isc.org/ og online-hjælpen for flere oplysninger."
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "BRUG: %s [valgmuligheder] [fil]\n"
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr "Valgmuligheder er:\n"
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Ugyldig indstilling: %s\n"
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Intern fejl: Ugyldigt muselink %d!"
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr "En adresse angivet af brugeren"
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Kodningstype \"multipart/form-data\" ej understøttet! Kan ikke indsende."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr "Hjælpeskærm"
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr "Systemfortegnelse"
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr "Indgang til hovedskærm"
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr "Ingen yderligere dokumenter"
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "dette dokuments tegnsæt er udtrykkeligt angivet, beklager ..."
+
+#: src/LYMainLoop.c:5052
+msgid "cd to:"
+msgstr "cd til: "
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr "En del af stien er ikke et filkatalog"
+
+#: src/LYMainLoop.c:5080
+msgid "failed to change directory"
+msgstr "kunne ikke skifte filkatalog."
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr "Genfortolker dokument under nuværende indstillinger ..."
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Kritisk fejl - kunne ikke åbne uddatafil %s\n"
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr "TABEL-centrering slået til."
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr "TABEL-centrering slået fra."
+
+#: src/LYMainLoop.c:6960
+msgid "Current URL is empty."
+msgstr "Aktuelle adresse er tom."
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "Kopiering til klippebord slog fejl."
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr "Dokumentets adresse overført til klippebord."
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr "Linkets adresse overført til klippebord."
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr "Ingen adresse ligger på klippebord."
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+msgid "-index-"
+msgstr "-indeks-"
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr "lynx: Kan ikke få adgang til startfil"
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: startfil fandtes ikke eller er ikke i text/html, text/plain format"
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr "      Afslutter ..."
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr "-mere-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Du vil sende til:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Angiv venligst afsenderadresse\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Indtast eller ret venligst emnelinjen\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+"Indtast eller ret venligst Organization:-linjen\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Skriv dit indlæg nedenfor."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Indlæg har ingen oprindelig tekst!"
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "gennemse/rediger B)ogmærkefiler"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "B)ogmærkefil: "
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr "SLÅET TIL"
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr "SLÅET FRA"
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr "ALDRIG"
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr "ALTID"
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr "ignorér"
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr "spørg bruger"
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr "godtag alle"
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr "ALTID SLÅET FRA"
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr "KUN FOR LOKALE FILER"
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr "ALTID SLÅET TIL"
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr "Pile på numerisk tastatur aktive"
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr "Links er nummererede"
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr "Links og formularfelter er nummererede"
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr "Formularfelter er nummererede"
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr "Ikke versalfølsom"
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr "Versalfølsom"
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr "normal prompt"
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr "gennemtving bekræftende svar"
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr "gennemtving benægtende svar"
+
+#: src/LYOptions.c:2242
+msgid "Novice"
+msgstr "Begynder"
+
+#: src/LYOptions.c:2243
+msgid "Intermediate"
+msgstr "Videregående"
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr "Avanceret"
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr "Ved første besøg"
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr "Ved første besøg, i omvendt orden"
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr "Som træstruktur over besøg"
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr "Efter sidste besøg"
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr "Efter sidste besøg, i omvendt orden"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr "afslappet (TagSoup-tilstand)"
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr "striks (SortaSGML-tilstand)"
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr "som etiketter"
+
+#: src/LYOptions.c:2279
+msgid "as links"
+msgstr "som links"
+
+#: src/LYOptions.c:2286
+msgid "show filename"
+msgstr "vis filnavn"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr "STANDARD"
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr "AVANCERET"
+
+#: src/LYOptions.c:2329
+msgid "Directories first"
+msgstr "Filkataloger først"
+
+#: src/LYOptions.c:2330
+msgid "Files first"
+msgstr "Filer først"
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr "Blandet stil"
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+msgid "By Name"
+msgstr "Efter navn"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr "Efter type"
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+msgid "By Size"
+msgstr "Efter størrelse"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+msgid "By Date"
+msgstr "Efter dato"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr "Efter tilstand"
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr "Efter bruger"
+
+#: src/LYOptions.c:2346
+msgid "By Group"
+msgstr "Efter gruppe"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr "Vis ikke overførselshastighed"
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "Vis hastighed i %s/sek "
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "Vis %s/sek, ETA"
+
+#: src/LYOptions.c:2379
+#, fuzzy
+msgid "Show progressbar"
+msgstr "Vis rullebjælke"
+
+# types = mime-types
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr "Godtag Lynx' indbyggede MIME-typer"
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr "Godtag også MIME-typer i lynx.cfg"
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr "Godtag også brugerens MIME-typer"
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr "Godtag også systemets MIME-typer"
+
+#: src/LYOptions.c:2395
+msgid "Accept all types"
+msgstr "Godtag alle MIME-typer"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr "deflate"
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr "compress"
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr "Alle"
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Brug %s for at aktivere menu over valgmuligheder!"
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr "(indstillinger markeret med (!) vil ikke blive gemt)"
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "Generelle indstillinger"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "Brugertilstand"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "Editor"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "Søgningstype"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr "Sikkerhed og beskyttelse af persondata"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "Cookier"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr "Prompt ved ugyldig cookie"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr "Prompt ved SSL"
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "Tastatur-inddata"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "Numerisk tastaturtilstand"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "Emacs-taster"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "VI-taster"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr "Linjeredigeringsstil"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr "Tastaturudlægning"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "Skærm og tegnsæt"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+msgid "Use locale-based character set"
+msgstr "Brug tegnsæt baseret på lokaliseringsindstillinger"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "Skærmtegnsæt"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "Formodet dokumenttegnsæt"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "CJK-tilstand"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "Rå 8-bit"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "X-skærm"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "Udseende af dokument"
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "Vis farver"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "Vis markør"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+msgid "Underline links"
+msgstr "Understreg links"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr "Vis rullebjælke"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr "Pop op-vinduer for valgte felter"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "HTML-fejlgenopretning"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "Vis billeder"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "Billedtekst"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "Information til fremmede servere"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "Personlig e-post-adresse"
+
+#: src/LYOptions.c:3760
+msgid "Password for anonymous ftp"
+msgstr "Adgangskode til anonymous ftp"
+
+# media type refererer til content-type headeren, eks: image/xyz
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+msgid "Preferred media type"
+msgstr "Foretrukket medietype"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+msgid "Preferred encoding"
+msgstr "Foretrukket kodning"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "Foretrukket dokumenttegnsæt"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "Foretrukket dokumentsprog"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "User-Agent-linje"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "Filoversigt og Filadgang"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "FTP-sorteringskriterie"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "Sortering af lokale filkataloger"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+msgid "Local directory sort order"
+msgstr "Sortering af lokale filkataloger"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "Vis punktumfiler"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "Links til programafvikling"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr "Vis overførselshastighed"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "Særlige filer og skærmbilleder"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "Multi-bogmærker"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "Gennemse/ret bogmærkefiler"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "Gå til multi-bogmærkemenu"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "Bogmærkefil"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "Besøgte sider"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr "Vis filen "
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Udskrivningsjob fuldført.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Dokument:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Antal linjer:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Antal sider:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "sider"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "side"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(cirka)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Visse udskrivningsfunktioner er slået fra!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Forvalg for udskrivning:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Valgmuligheder for udskrivning:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Gem i lokal fil"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Gem på disk er slået fra"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Send fil med post"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Udskriv til skærm"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Udskriv på printer tilknyttet en vt100-terminal"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Syntaksfejl ved fortolkning af FARVE (COLOR) i opsætningsfil:\n"
+"Linjen skal have formen:\n"
+"FARVE:HELTAL:FORGRUND:BAGGRUND\n"
+"\n"
+"Her skal FORGRUND og BAGGRUND være en af:\n"
+"de særlige betegnelser 'nocolor' eller 'default', eller\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Problemskabende linje:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "Omtildeling af tasten %s til %s i %s slog fejl\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "Omtildeling af tasten %s til %s slog fejl\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "ugyldigt linje-editorvalg %s for taste %s, vælger alle\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "tildeling af taste %s (0x%x) til 0x%x for %s i linje-editor slog fejl\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "tildeling af tasten %s (0x%x) til %s i linje-editor slog fejl\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: Kan ikke starte op, CERN-regelfil %s findes ikke\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(intet navn)"
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Flere end %d inkluderingsfiler i lynx.cfg - måske en sløjfe!?\n"
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Sidste inkluderingsfil der forsøgtes indlæst var '%s',\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "inkluderet fra '%s'.\n"
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr "Følgende er læst fra din lynx.cfg-fil."
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr "Læs venligst distributionen"
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr "for flere kommentarer."
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr "GENINDLÆS ÆNDRINGERNE"
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr "Din primære opsætning"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "Filkatalog som du kigger på i øjeblikket"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Navn:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "Adresse:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "Aktuelt valgte filkatalog"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "Aktuelt valgte fil"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "Aktuelt valgte symbolske link"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "Aktuelt valgte enhed"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "Fulde navn:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "Ude af stand til at følge link"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "Peger til fil:"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "Ejers navn:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Gruppes navn:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Filstr.:"
+
+#: src/LYShowInfo.c:227
+msgid "(bytes)"
+msgstr "(bytes)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Oprettelsesdato:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Sidst rettet:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Sidst tilgået:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Adgangsrettigheder"
+
+#: src/LYShowInfo.c:279
+msgid "Group:"
+msgstr "Gruppe:"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr "Alle:"
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Oplysninger om det aktuelle dokument:"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Linknavn:"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Tegnsæt:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr "(formodet)"
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Server:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Dato:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Sidst ret:"
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr "Udløber:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Cachestyring:"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "'Content-Length':"
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr "Længde:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Sprog:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "POST-data:"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "POST-indholdstype:"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Ejer(e):"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "Str:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "linjer"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "formulartilstand"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "kilde"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "normal"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", sikker"
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ", via internt link"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", no-cache"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", ISMAP-script"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", bogmærkefil"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "Tilstand:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Aktuelt valgte link"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Metode:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "Kod.type:"
+
+#: src/LYShowInfo.c:436
+msgid "Action:"
+msgstr "Handling:"
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(Formularfelt)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "Ingen links på denne side"
+
+#: src/LYShowInfo.c:455
+msgid "Server Headers:"
+msgstr "Server-info:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Syntaksfejl ved fortolkning af stil i lss-fil:\n"
+"[%s]\n"
+"Linjen skal være på formen:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white),\n"
+"hvor OBJECT er en af EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "her er en liste over historikstakken, så du kan genopbygge"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "FEJL! - upload-kommandoen er sat forkert op"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Ulovlig omdirigering \"../\" opdaget! Anmodning ignoreret."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Fandt ugyldigt tegn \"/\" ! Anmodning ignoreret."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Ulovlig omdirigering ved \"~\"! Anmodning ignoreret."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Ude af stand til at uploade fil."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Upload til:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Valgmuligheder for uploads:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr "Hjemtag dokument fra adressen på klippebord."
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Uventet adgangsprotokol for denne adressetype."
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr "For mange midlertidige filer"
+
+#: src/LYUtils.c:3719
+msgid "unknown restriction"
+msgstr "ukendt begrænsning"
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Ingen begrænsninger sat.\n"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Begrænsninger sat:\n"
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr "Kan ikke finde HOME-katalog"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Normalt slået fra. Se ENABLE_LYNXRC i lynx.cfg\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies gør at Lynx automatisk vil acceptere alle cookier\n"
+"hvis dette ønskes. Standarden er \"FALSE\", hvilket vil lade hver cookie\n"
+"blive ledsaget af et spørgsmål om den skal accepteres eller ej. Sæt\n"
+"accept_all_cookies\" til \"TRUE\" for at acceptere alle cookier.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"anonftp_password lader brugeren instruere Lynx om at bruge den personlige\n"
+"e-post-adresse som adgangskode ved anonymous ftp. Hvis der ikke er angivet\n"
+"en værdi, vil Lynx bruge den personlige e-post-adresse. Sæt anonftp_password\n"
+"til en anden værdi hvis du ønsker det.\n"
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file angiver navn og placering på standardbogmærkefilen\n"
+"hvori brugeren kan indsætte de links som der ønskes let adgang til\n"
+"på et senere tidspunkt.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Hvis case_sensitive_searching er sat til \"on\", vil der blive skelnet\n"
+"mellem store og små bogstaver ved søgninger afgivet med 's' og '/'\n"
+"tasterne. Det normale er \"off\".\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"character_set styrer hvordan 8-bit-tegn vises på din terminal. Hvis\n"
+"8-bit-tegn ikke vises korrekt på din skærm, kan du forsøge at skifte til et\n"
+"andet 8-bit-tegnsæt eller bruge 7-bit tegntilnærmelser. Aktuelt gyldige\n"
+"tegnsæt er:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains og cookie_reject_domains er en kommasepareret\n"
+"liste over domæner hvorfra Lynx automatisk skal godkende eller afvise\n"
+"alle cookier.  Hvis et domæne er anført i begge indstillinger, vil\n"
+"afvisningen have forrang. Parameteren \"accept_all_cookies\" vil\n"
+"tilsidesætte begge disse indstillinger.\n"
+
+#: src/LYrcFile.c:357
+#, fuzzy
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file angiver den fil som varige cookier skal læses fra.\n"
+"Standarden er ~/.lynx_cookies.\n"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, og\n"
+"cookie_query_invalid_domains er en kommasepareret liste over hvilke\n"
+"domæner der skal underkastes varierende grader af gyldighedskontrol. hvis\n"
+"et domæne er sat til streng kontrol, vil en streng overholdelse af RFC2109\n"
+"blive krævet. Et domæne med et løs kontrol vil blive tilladt at sende\n"
+"cookier med en ugyldig sti eller domæneattribut. Alle domæner vil som\n"
+"standard spørge brugeren om en ugyldig sti eller domæne.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order angiver katalogsortering under DIRED_SUPPORT\n"
+"(hvis implementeret). Standarden er \"ORDER_BY_NAME\"\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles angiver stilen for visning af filkataloger under\n"
+"DIRED_SUPPORT\" (hvis indarbejdet). Standarden er \"MIXED_STYLE\"\n"
+"hvilket sorterer såvel filer som kataloger sammen.  \"FILES_FIRST\"\n"
+"oplister filer først og \"DIRECTORIES_FIRST\" oplister filkataloger\n"
+"først.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Hvis \"emac_keys\" er sat til \"on\", vil de normale EMACS-navigeringstaster:\n"
+"  ^N = ned        ^P = op\n"
+"  ^B = venstre    ^F = højre\n"
+"være aktive.\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor angiver den editor der skal bruges ved redigering af lokale\n"
+"filer eller ved afsendelse af post. Hvis ingen editor er angivet, vil der\n"
+"ikke være mulighed for at redigere filer, medmindre den er givet fra\n"
+"kommandolinjen. Den indbyggede linje-editor vil blive brugt ved afsendelse\n"
+"af post.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method angiver hvilken sorteringsmetode der anvendes ved\n"
+"visning af filoversigter som f.eks FTP-filkataloger. Mulighederne er:\n"
+"   BY_FILENAME -- sorterer efter filnavn\n"
+"   BY_TYPE     -- sorterer efter filtype\n"
+"   BY_SIZE     -- sorterer efter filstørrelse\n"
+"   BY_DATE     -- sorterer efter fildato\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode angiver de tastebindinger, der bruges for at indtaste\n"
+"tekststrenge ved prompter og i formularer. Hvis lineedit_mode er sat\n"
+"til \"Default Binding\", vil flg. kontroltegn blive brugt for flytning\n"
+"og sletning:\n"
+"\n"
+"            Forr.  Næste     Retur = Godkend indtastning\n"
+" Flyt tegn: <-    ->         ^G    = Afbryd indtastning\n"
+" Flyt  ord: ^P    ^N         ^U    = Slet linje\n"
+" Slet tegn: ^H    ^R         ^A    = Begyndelse af linje\n"
+" Slet  ord: ^B    ^F         ^E    = Slutning af linje\n"
+"\n"
+"Aktuelle tilstande ved linjeredigering er:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Følgende giver dig mulighed for at definere under-bogmærkefiler med\n"
+"tilhørende beskrivelser. Formatet er \"multi_bookmark\"<stort bogstav>=\n"
+"<filnavn>,<beskrivelse>. Indtil 26 bogmærkefiler fra A-Z (store bogstaver)\n"
+"er tilladt. Vi begynder med \"multi_bookmarkB\", idet \"A\" er standard (se\n"
+"ovenfor).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address angiver din personlige e-post-adresse. Denne\n"
+"adresse vil blive afsendt under HTTP-filoverførsler med henblik på\n"
+"brugergodkendelse og logning samt for afsendelse af kommentarer pr. post.\n"
+"Sæt NO_FROM_HEADER til TRUE i lynx.cfg, eller brug \"-nofrom\" kommando-\n"
+"linje parameteren, hvis du ikke ønsker denne oplysning viderebragt.\n"
+"Du kan også lade dette felt stå tomt, men så vil din e-post-adresse ikke\n"
+"blive medtaget i de kommentarer du sender i e-post.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset angiver det tegnsæt i MIME-notation (f.eks.\n"
+"ISO-8859-2, ISO-8859-5), som Lynx vil tilkendegive er dit foretrukne,\n"
+"i forespørgsler til HTTP-servere og ved brug af en \"Accept-Charset\n"
+"header \". Værdien bør IKKE indbefatte ISO-8859-1 eller US-ASCII, idet\n"
+"disse altid er underforståede som standard. Værdierne kan anføres på\n"
+"en kommasepareret liste. Hvis en fil i dette tegnsæt er tilgængelig,\n"
+"vil serveren sende den. Hvis ingen \"Accept-Charset\" header er til\n"
+"stede, er standarden at ethvert tegnsæt er acceptabelt. Hvis en\n"
+"\"Accept-Charset\"-header er til stede, og hvis serveren ikke kan sende\n"
+"et acceptabelt svar i henhold til denne header, da BØR serveren sende\n"
+"en fejlmeddelelse, omend afgivelse af et ikke-acceptabelt svar også er\n"
+"tilladt.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language angiver det sprog i MIME-notation (f.eks. \"en\", eller\n"
+"\"da\") og kan være en kommasepareret liste af faldende præference som Lynx så\n"
+"vil bruge til at meddele sit foretrukne sprog i sine forespørgsler til\n"
+"HTTP-servere. Hvis en fil på dette sprog er tilgængelig, vil serveren\n"
+"returnere den. I modsat fald vil den returnere filen på sit standardsprog.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Hvis run_all_execution_links er sat til \"on\" vil alle lokale\n"
+"programafviklingslinks blive udført når disse er valgt.\n"
+"\n"
+"ADVARSEL - Dette kan være MEGET farligt, eftersom du kan betragte\n"
+"           information, som er skrevet af ukendte og upålidelige\n"
+"           kilder. Der er mulighed for at links med \"trojanske heste\"\n"
+"           kan være skrevet med det formål at slette filer eller\n"
+"           kompromittere sikkerheden. Denne indstilling skal kun\n"
+"           sættes til \"on\", hvis du kigger på oplysninger fra kilder\n"
+"           som du kan stole på.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Hvis run_execution_links_on_local_files er sat til \"on\", vil alle\n"
+"lokale programafviklingslinks, som forefindes i LOKALE filer blive\n"
+"udført, når disse vælges.  Dette er anderledes end\n"
+"\"run_all_execution_links\", i den forstand at alene filer som ligger på\n"
+"det lokale system vil have tilladelse til at blive eksekveret.\n"
+"\n"
+"ADVARSEL - Dette er potentielt MEGET farligt, eftersom du kan betragte\n"
+"           information, som er skrevet af ukendte og upålidelige kilder.\n"
+"           Der er mulighed for at links med \"trojanske heste\" kan \n"
+"skrives,\n"
+"           med det formål at slette filer eller kompromittere sikkerheden.\n"
+"           Denne indstilling skal kun sættes til \"on\", hvis du har fuld\n"
+"           tillid til den kilde hvorfra informationen stammer.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups angiver om VALGMULIGHEDER i en \"SELECT\"-blok, som mangler en\n"
+"MULTIPLE\"-attribut bliver præsenteret som en lodret liste af radioknapper\n"
+"eller via en pop op-menu. Bemærk at hvis MULTIPLE\"-attributten er til stede\n"
+"i \"SELECT start tag\", vil Lynx altid oprette en lodret liste af\n"
+"afkrydsningsbokse for VALGMULIGHEDERne.  En værdi af \"on\" vil sætte pop\n"
+"op-menuer som standard, medens en værdi af \"off\" vil sætte brugen af\n"
+"radiobokse. Den forvalgte værdi kan ændres med kommandolinje-parameteret\n"
+"-popup.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color angiver hvorledes farveindstillingen skal være ved\n"
+"opstart. En værdi af \"never\" vil slå farver fra (som på en monokrom\n"
+"skærm) ved opstart, selvom der er tale om en farveskærm. En værdi af\n"
+"\"always\" vil slå farver til, selvom der er tale om en monokrom skærm,\n"
+"såfremt dette er understøttet af det terminalbibliotek, som Lynx er\n"
+"baseret på. En værdi af \"default\" vil medføre at en monokrom skærm\n"
+"forudsættes, medmindre farveegenskaber antydes ved opstart, enten ud fra\n"
+"skærmtypen, eller ved brug af kommandolinje-parameteret \"-color\",\n"
+"eller hvis miljøvariablen COLORTERM er sat. Indstillingen \"default\"\n"
+"bruges altid ved anonyme brugerkonti, eller hvis begræsningen \"option_save\"\n"
+"er virksom. Virkningen af den gemte værdi kan tilsidesættes med\n"
+"kommandolinje-parametrene -color og -nocolor. Startindstillingen\n"
+"kan ændres i punktet \"Vis farver\" i 'o'psætningsmenuen.  Hvis\n"
+"indstillingerne er gemt, vil farveindstilingerne blive opfattet som\n"
+"\"default\".\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor angiver om markøren skal gemmes væk i skærmen højre side\n"
+"(og hvis muligt også skærmens bund), eller om den skal placeres til\n"
+"venstre for det aktuelle link i dokumenter hhv. ved den aktuelle\n"
+"valgmulighed i pop op-vinduer. Placering af markør til venstre for det\n"
+"aktuelle link eller valgmulighed er hensigtsmæssigt for tale- eller\n"
+"Braille-brugerflader, eller hvor skærmen er af en type som ikke kan\n"
+"skelne det aktuelle link på baggrund af lysmarkering eller farve. En\n"
+"værdi af \"on\" vil sætte placeringen til venstre som standard, medens\n"
+"en værdi af \"off\" vil skjule markøren.  Standarden kan tilsidesættes\n"
+"med kommandolinje-parameteret \"-show-cursur\".\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles angiver, at \"skjulte\" punktumfiler/-kataloger vises i\n"
+"filoversigterne. Hvis sat til \"on\", vil det kun blive respekteret,\n"
+"såfremt det er aktiveret via userdefs.h og/eller lynx.cfg og ikke\n"
+"er slået fra via kommandolinjen. Hvis visning af skjulte filer er\n"
+"slået fra (off), vil man heller ikke kunne oprette sådanne skjulte filer\n"
+"eller filkataloger i Lynx.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Hvis sub_bookmarks ikke er sat til \"off\", og multi-bogmærker er defineret\n"
+"(se nedenfor), vil brugeren i forbindelse med alle bogmærke-operationer\n"
+"først blive bedt om at vælge en aktiv sekundær bogmærkefil. Hvis den gængse\n"
+"Lynx bookmark_file er defineret (se ovenfor), vil denne blive brugt som\n"
+"første valg. Når denne valgmulighed er sat til advanced og user_mode er\n"
+"sat til advanced, vil kommandoen (v)is bogmærke give en statuslinjeprompt,\n"
+"i stedet for den menu som fremkommer i brugertilstandene novice og\n"
+"intermediate. Når denne indstilling er sat til default, vil menuen\n"
+"fremkomme uanset brugertilstand.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode angiver en brugers kompetanceniveau i Lynx. Standarden er\n"
+"NOVICE, hvilket betyder at to ekstra linjer med hjælpetekst bliver\n"
+"vist i bunden af skærmen for at hjælpe brugeren med at lære de basale\n"
+"Lynx-kommandoer. Sæt user_mode til INTERMEDIATE for at slå disse\n"
+"ekstra oplysninger fra, Brug ADVANCED for at se adressen på det\n"
+"aktuelt valgte link i bunden af skærmen.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Hvis verbose_images er sat til \"on\", vil Lynx printe navnet på et\n"
+"kildefilen til et billedlink i stedet for [INLINE], [LINK] eller [IMAGE].\n"
+"Se også VERBOSE_IMAGES i lynx.cfg\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Hvis vi_keys er sat til \"on\", vil de normale VI-navigeringstaster:\n"
+"  J = ned        K = op\n"
+"  h = venstre    I = højre\n"
+"være slået til. Disse taster virker kun som små bogstaver.\n"
+"Stort H, J og K vil stadig aktivere henholdsvis hjælp,\n"
+"hop-genveje og oversigt over tastebindinger.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"visited_links styrer hvorledes Lynx organiserer oplysningerne i siden\n"
+"over besøgte links.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Hvis keypad_mode er sat til NUMBERS_AS_ARROWS vil tasterne på det\n"
+"numeriske tastatur, med numlock slået, til virke som piletaster:\n"
+"             8 = pil op\n"
+"   4 = venstre pil   6 = højre pil\n"
+"             2 = pil ned\n"
+"og de tilsvarende numeriske taster på tastaturet vil virke som piletaster,\n"
+"uanset om numlock er slået til eller ej\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Hvis keypad_mode er sat til LINKS_ARE_NUMBERED, vil ethvert link\n"
+"være ledsaget af et nummer som kan bruges til at aktivere linkene.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Hvis keypad_mode er sat til LINKS_AND_FORM_FIELDS_ARE_NUMBERED, vil der\n"
+"komme til at stå et tal ved siden af ethvert link og synligt\n"
+"formularindtastningsfelt. Tallene bruges til at vælge linkene eller til at\n"
+"flytte det \"aktuelle link\" til et formularindtastningsfelt eller til en\n"
+"knap. Herudover er valgmuligheder i pop op-menuer indekserede således at\n"
+"brugeren kan indtaste et tal for at vælge en indstillingsmulighed i en pop\n"
+"op-menu selvom denne ikke er synlig på skærmen. Oversigter over links og\n"
+"uddata fra \"list\"-kommandoen bliver også nummererede.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"NB: Visse fastformaterede dokumenter kan se fejlformaterede ud når\n"
+"LINKS_ARE_NUMBERED eller LINKS_AND_FORM_FIELDS_ARE_NUMBERED er\n"
+"aktiveret.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+#, fuzzy
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Lynxfil for brugers standardindstilinger\n"
+"\n"
+"Denne fil indeholder de indstillinger, som er gemt fra Lynx'\n"
+"opsætningsmenu (normalt gemt med \">\"-tasten). Der er normalt ingen\n"
+"grund til at redigere denne fil manuelt, eftersom standarderne heri\n"
+"kan styres fra (o)psætningsmenuen, og næste gang indstillingerne er gemt\n"
+"fra (o)psætningsmenuen vil denne fil blive fuldstændig omskrevet. Du er\n"
+"blevet advaret ...\n"
+"Hvis du er ude efter en almen opsætningsfil - den hedder sædvanligvis\n"
+"lynx.cfg, og har et andet indhold og format - så er det ikke denne fil.\n"
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "Antal linjer i historikliste udtømt! Dokument ikke skubbet ud."
+
+#~ msgid "Socket read failed for 180,000 tries."
+#~ msgstr "Læsning af sokkel slog fejl i 180.000 forsøg."
+
+#~ msgid "reason unknown."
+#~ msgstr "ukendt årsag."
diff --git a/po/de.po b/po/de.po
new file mode 100644
index 00000000..18dc3383
--- /dev/null
+++ b/po/de.po
@@ -0,0 +1,6249 @@
+# German translations for the `lynx' program.
+# This file is distributed under the same license as the lynx package.
+# But the TRANSLATIONS in this file are in the public domain.
+# This does not apply to the included original strings, which were
+# extracted from the Lynx source code by the xgettext program.
+#
+# Klaus Weide <kweide@enteract.com>, 1999.
+# Erwin Dieterich <bamse@gmx.de>, 2000.
+# Karl Eichwalder <ke@suse.de>, 2002-2004.
+# Fabian Fingerle <fabian@datensalat.eu>, 2008.
+# Roland Illig <roland.illig@gmx.de>, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.7-dev12\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-26 20:04-0500\n"
+"PO-Revision-Date: 2009-11-10 22:04+0100\n"
+"Last-Translator: Roland Illig <roland.illig@gmx.de>\n"
+"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Obacht: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Willkommen"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Programm wirklich beenden?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Willst du wirklich raus?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Verbindung abgebrochen."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Datentransfer abgebrochen."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Abgebrochen!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Abgebrochen!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Prima!"
+
+# This message is kinda stupid... - kw
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Fertig!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Fehlerhafter Request!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "vorhergehender"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "nächste Seite"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "HILFE!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", Hilfe über "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Pfeiltasten zum Bewegen, '?': Hilfe, 'q': Programmende, '<-': zurück"
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- Leertaste für mehr, Pfeiltasten zum Bewegen, '?': Hilfe, 'q': Programmende"
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- Leertaste für nächste Seite --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL zu lang"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Texteingabefeld) nicht aktiv. Zum Aktivieren <Return> eingeben."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Textbereich) nicht aktiv. Zum Aktivieren <Return> eingeben."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Textregion) nicht aktiv. Zum Aktivieren <Return> drücken (%s für Editor)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Formfeld) nicht aktiv. <Return> zum Editieren."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Formfeld) nicht aktiv. <Return> zum Editieren (%s: Abschicken ohne Zwischenspeicher (Cache))."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Formfeld) nicht aktiv. <return> zum Editieren, zweimal <return> zum Abschicken."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(Mailto-Formfeld) nicht aktiv. Zum Ändern <return> dücken."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Paßwort-Eingabefeld) nicht aktiv. Zum Aktivieren <return> dücken."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NICHTVERÄNDERBARES Formfeld. Verlassen mit Auf- oder Ab-Pfeiltaste oder TAB."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Texteingabefeld) Text eingeben. Verlassen mit Auf- oder Ab-Pfeiltaste oder TAB."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Texteingabefeld) Text eingeben. Verlassen mit Auf- oder Ab-Pfeiltaste oder TAB."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Textregion) Text eingeben. Mit Auf/Ab-Pfeiltaste oder TAB verlassen."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Textregion) Text eingeben. Verlassen mit Pfeiltasten oder TAB (%s für Editor)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NICHTVERÄNDERBARES Form-Textfeld. Verlassen mit Auf- oder Ab-Pfeiltaste oder TAB."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Formfeld) Text eingeben. <return> zum Abschicken."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Formfeld) Text eingeben. <return> zum Abschicken (%s: Cache umgehen)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Formfeld) Text eingeben. <return> zum Abschicken, Pfeiltasten/TAB: Verlassen."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NICHTVERÄNDERBARES Formfeld. Verlassen mit Auf- oder Ab-Pfeiltaste."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(Mailto-Formfeld) Text eingeben. <return>: Abschicken, Pfeiltasten: Verlassen"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(Mailto-Formfeld) Schicken nicht möglich, da Mail nicht erlaubt ist."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Paßwort-Eingabefeld) Text Eingeben. Auf- oder Ab-Pfeiltasten: Verlassen"
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "NICHTVERÄNDERBARES Form-Paßwort. Rauf- und Runter-Pfeiltasten zum Verlassen."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Checkbox-Feld)   Ein-/Ausschalten mit rechter Pfeiltaste oder <return>."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "NICHTVERÄNDERBARE Form-Checkbox. Auf- oder Ab-Pfeiltaste oder TAB zum Verlassen."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Radiotaste)      Ein-/Ausschalten mit rechter Pfeiltaste oder <return>."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "NICHTVERÄNDERBARE Form-Radiotaste. Auf- oder Ab-Pfeiltaste oder TAB zum Verlassen."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Eingabe: Schicken ('x': ohne Cache) zu "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Eingabe: Schicken zu "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Form-Submit-Button) Rechter Pfeiltaste / <return>: Schicken ('x': ohne Cache)"
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Form-Submit-Button) Rechter Pfeiltaste oder <return> zum Abschicken"
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "\\AUSGESCHALTETER Form-Submit-Button. Rechter Pfeiltaste / <return> zum Verlassen."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Eingabe: Mailto-Form schicken an "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(Mailto-Form-Submit-Button) Rechte Pfeiltaste oder <return>: Abschicken."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(Mailto-Form-Submit-Button) Schicken nicht möglich, da Mail nicht erlaubt ist."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Form-Resetbutton) Rechter Pfeiltaste / <return>: zu Ausgangszustand zurücksetzen."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "AUSGESCHALTETER Form-Resetbutton. Auf- und Ab-Pfeiltasten oder TAB zum Verlassen."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Optionsliste) Eingabetaste drücken und Pfeiltasten zur Optionswahl werwenden."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Auswahlliste) Eingabetaste drücken und Pfeiltasten zur Optionswahl werwenden."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "NICHTVERÄNDERBARE Optionsliste. Eingabetaste / Pfeile zum Ansehen / Verlassen."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "NICHTVERÄNDERBARE Auswahlliste. Eingabetaste / Pfeile zum Ansehen / Verlassen."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Form wird geschickt..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Form wird zurückgesetzt..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Dokument wird nachgeladen. Alle Formeingaben gehen verloren!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Warnung: Formdaten können nicht in Zeichensatz %s übersetzt werden!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(NORMALER LINK) Rechte Pfeiltaste oder <return> zum Aktivieren verwenden."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "Angeforderte Ressource ist zurzeit nicht verfügbar."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Lynx-Tastenbefehl eingeben: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Suche nach "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "%s wird geholt..."
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "%s wird übergangen."
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Umgeleitet nach %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Ungültiger URL: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Fehlgestaltete Adresse %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Zugriff auf die WWW-Datei ist nicht möglich!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Abfragbarer Index. Suchbegriff kann mit %s eingegeben werden."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Mehr -- Abfragbarer Index. Suchbegriff kann mit %s eingegeben werden."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Ungültige Link-Nummer."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Quelltext des Dokuments wird gezeigt. Rückkehr zur Normaldarstellung mit '\\'."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "Pfeile: Auf/Ab: andere Seite im Text. Rechts: Verweis folgen; Links: zurück.\n"
+
+# Used if lynx.cfg does NOT contain KEYMAP for TOGGLE_HELP, default.
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "H)ilfe O)ptionen P) Druck G)ehe zu M) Hauptseite Q) Beenden /=Suche <-=History\n"
+
+# Only used if lynx.cfg contains KEYMAP for TOGGLE_HELP.
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr ""
+"O: andere Befehle  H: Hilfe  K: Tastenbelegung  G: Gehe zu \n"
+"P: Drucken  M: Hauptseite  o: Optionen  Q: Beenden\n"
+
+# Only used if lynx.cfg contains KEYMAP for TOGGLE_HELP.
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr ""
+"O: Andere Befehle  B: Zurück  E: Editieren D: Download \n"
+"^R: Neu laden  ^W: Auffrischen  /: Suche im Text\n"
+
+# Only used if lynx.cfg contains KEYMAP for TOGGLE_HELP.
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr ""
+"O: Andere Befehle  C: Kommentar  Entfernen: History\n"
+"Lesezeichen:  V: Ansehen  A: Hinzufügen  R) Löschen\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "    Normale Tasten für Texteingabe verwenden.    "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr " Ctrl-U zum Löschen des ganzen Texts in einem Feld, [Entf] um einen Buchstaben zu löschen  "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr " Ctrl-U zum Löschen von Text in einem Feld, [Entf] um einen Buchstaben zu löschen  "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s zum Löschen des Textes in einem Feld, [Entf] um einen Buchstaben zu löschen  "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "   %s zum Löschen des Textes in einem Feld, [Entf] um einen Buchstaben zu löschen "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Fehlerhafte mailto-Form, kann nicht gesandt werden!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Warnung!  Kontrollzeichen in Mailadresse durch ? ersetzt"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "Mail ist nicht erlaubt!  Kann nicht gesandt werden."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Senden der mailto-Formdaten fehlgeschlagen!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Senden der mailto-Form abgebrochen!!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Formdaten werden gesandt..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "mailto-URL hat keine Mailadresse!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Temporäre Datei für Mailto-URL konnte nicht geöffnet werden!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Soll der Originaltext eingefügt werden?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Soll der vorverarbeitete Quelltext eingefügt werden?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Der ausgewählte Editor wird zur Erstellen der Mail-Botschaft gestartet."
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Editor nicht gestartet, bitte Einstellung im Options-Menü überprüfen!"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Kommentar abschicken?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Mail abschicken?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Mail wird gesandt..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Nachricht wird gesandt:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Nicht in einem TEXTAREA-Bereich; externer Editor ist hier nicht möglich."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Nicht in einem TEXTAREA-Bereich; Befehl ist hier nicht anwendbar."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "\"file\"-URLs sind nicht als Form-ACTION erlaubt!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "Aktivierung von \"file\"-URLs von externen Links aus ist nicht erlaubt!"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "Zugang zu lokalen Dateien nicht gestattet."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "\"file\"-URLs sind von Lesezeichen aus nicht erlaubt!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Dieser spezielle URLs ist von externen Dokumenten aus nicht erlaubt!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Zurück zu Lynx mit Eingabetaste."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "DCL-Unterprozess wird gestartet. Rückkehr zu Lynx mit 'logout'.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Für Rückkehr zu Lynx EXIT eingeben.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Default Shell wird gestartet, für Rückkehr zu Lynx 'exit' eingeben.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "Starten von Unterprozessen zurzeit nicht ermöglicht."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "Das Kommando 'd'ownload ist zurzeit nicht gestattet."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Download von Eingabefeldern ist nicht möglich."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Diese Form verlangt eine mailto-Aktion!  Download unmöglich."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Download unmöglich für mailto-Link."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Download unmöglich für Kekse."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Download unmöglich für Druckoption."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Download unmöglich für Upload-Option."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Download unmöglich für Berechtigungsoption."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Download unmöglich für diesen speziellen URL!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Nichts runterzuladen."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Trace EIN!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Trace AUS!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Links für alle Bilder werden eingefügt! Neuladen..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Wiederaufnahme der normalen Bildbehandlung! Neuladen..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Pseudo-ALTs werden für alle Inlinebilder ohne ALT-Attribut eingefügt! Neuladen..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Inlinebilder ohne ALT-Attribut werden jetzt ignoriert! Neuladen..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Raw 8-bit or CJK mode eingeschaltet!  Reloading..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Raw 8-bit or CJK mode ausgeschaltet!  Reloading..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "HEAD-Anforderung für D)okument oder L)link senden, oder Abbrec)hen? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "HEAD-Anforderung für D)okument senden, oder Abbrec)hen? (d,c): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Sorry, das Dokument ist kein http-URL."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Sorry, der Link ist kein http-URL."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Sorry, die ACTION für diese Form ist \"disabled\"."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Sorry, die ACTION für diese Form ist kein HTTP-URL."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "Dies ist weder ein http-URL noch eine Form-ACTION!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Dieser spezielle URL ist nicht möglich als Form-ACTION!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "URL ist nicht im erlaubten Start-Bereich!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "News-Posting nicht erlaubt."
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Dired-Unterstützung für Dateimanagement ist ausgeschaltet!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Eine Sprungdatei (jump file) ist zurzeit nicht erhältlich."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Sprung zu URL ('?' für Auswahlliste): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Abgekürzter URL-Sprung ist nicht erlaubt!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Eingabe von beliebigen URLs nicht erlaubt!  Bitte URL-Sprung benutzen."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "\"Go\"-URLs noch nicht benutzt."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Lesezeichen zurzeit ausgeschaltet."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "Ausführen von Befehlen ist hier nicht erlaubt."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Lesezeichendatei nicht definiert. Siehe Optionseinstellungen (Taste %s)."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Temporärdatei für Mosaic-Hotlistenumwandlung kann nicht geöffnet werden."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "FEHLER - Lesemarken-Datei kann nicht geöffnet werden."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Lesezeichendatei kann nicht zum Linkentfernen geöffnet werden."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Scratchdatei kann nicht zum Linkentfernen geöffnet werden."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Umbenennung einer Scratchdatei fehlgeschlagen."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Umbenennung einer temporären Datei fehlgeschlagen."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Temporäre Datei für das Linkentfernen kann nicht geöffnet werden."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Temporäre Datei für das Linkentfernen kann nicht wiedergeöffnet werden."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Link steht nicht allein in einer Zeile in der Lesezeichendatei."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Löschen des Lesezeicheneintrags fehlgeschlagen."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Traversal ist für Lesezeichendateien nicht erlaubt, nur für HTTP-URLs."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Lesezeichendatei kann nicht gelesen werden, erst mit 'a' einen Link speichern."
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Diese Lesezeichendatei hat keine Einträge!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "Zwischengespeichertes Dokument löschen (D) oder Abbrechen (C)?"
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Aktuelles D)okument oder L)ink als Lesezeichen speichern oder abbrec)hen? (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "D)okument als Lesezeichen speichern oder abbreC)hen? (d,c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "L)ink als Lesezeichen speichern oder abbre(C)hen? (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Anlegen von Lesezeichen für Dokumente mit POST-Formdaten nicht möglich."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Form-Eingabefelder können nicht gespeichert werden"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Lesezeichen für History-, Info-, Menü- und Listendateien nicht möglich."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Diesen Link wirklich aus Lesezeichendatei entfernen?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Fehlgeformte Adresse."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Historische Kommentarerkennung EIN (Minimalmodus AUS)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Historische Kommentarerkennung AUS (Minimalmodus EIN)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Historisches Kommentarparsing EIN (richtige Methode AUS)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Historisches Kommentarparsing AUS (richtige Methode EIN)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Minimale Kommentarerkennung EIN (und in Effekt)!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Minimale Kommentarerkennung AUS (richtige Methode ist in Effekt)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Minimale Kommentarerkennung EIN (aber geändert durch \"historisch\")!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Minimale Kommentarerkennung AUS (historische Methode ist in Effekt)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "Soft double-quote parsing EIN!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "Soft double-quote parsing AUS!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Von nun an \"TagSoup\"-Parsing für HTML."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Von nun an \"SortaSGML\"-Parsing für HTML!"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Schon am Ende."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Schon am Anfang."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Schon auf Seite %d in diesem Dokument."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Schon auf Link-Nummer %d."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Schon im ersten Dokument"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Keine Links mehr vor dieser Zeile."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Keine Links mehr nach dieser Zeile."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Maximale Länge erreicht! Text löschen oder Feld verlassen."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Kein Formaktivierungsbutton oder normaler Link gewählt."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "Eine von den Radiotasten muss immer markiert sein!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Kein Abschicken-Knopf für dieses Formular, einzelnes Textfeld abschicken?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Zurück zum vorherigen Dokument?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Form-Eingabefelder können mit Pfeil- oder Tabulatortasten verlassen werden."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Text Eingeben, Feld kann mit Pfeil- or Tabulatortasten verlassen werden."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Bad HTML!!  Keine Form-Aktion definiert. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Bad HTML!!  Popup-Fenster kann nicht erzeugt werden!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Popup-Fenster kann nicht erzeugt werden!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Das Gehen zu beliebigen URLs ist nicht erlaubt!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Das Gehen zu anderen als http-URLs ist nicht erlaubt!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Das Gehen zu \"%s\"-URLs ist nicht erlaubt"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "Neuer URL: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Jetziger URL: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Letzter URL: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Früherer URL: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "Das aktuelle Dokument ist mit POST-Daten verbunden."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "URL des gegenwärtigen Dokuments: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "URL dieses Links: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "Editieren von Dateimanagement-URLs (Dired-URLs) ist nicht möglich"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Datenbankabfrage eingeben: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Suche in gegenwärtigen Dokument: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Suche ändern: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Letzte Suche ändern: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Vorherige Suche ändern: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Wiederholung der gegenwärtigen Abfrage kann mit ^R erzwungen werden."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Abgekürzter Sprung (Jump): "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Letzter abgekürzter Sprung (Jump): "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Vorheriger abgekürzter Sprung (Jump): "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Die Taste '%c' entspricht keiner Sprungdatei!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Sprungdatei nicht gefunden!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Fehler beim Öffnen der Sprungdatei!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Fehler beim Lesen der Sprungdatei!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Nicht genug Memory um Sprungdatei zu lesen!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Nicht genug Memory um Sprungtabelle zu lesen!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Index zurzeit nicht verfügbar."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Wirklich zur Hauptseite gehen?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "Schon auf der Hauptseite!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Dies ist kein abfragbares ISINDEX-Dokument  --  für Textsuche '/' drücken."
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Besitzer oder Autor unbekannt, Kommentar daher nicht möglich"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Besitzeradresse nicht definiert. %s benutzen?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Kommentar schicken?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "Mail ist nicht erlaubt, Kommentar daher nicht möglich"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "Der Befehl 'E'dit ist zurzeit nicht erlaubt."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "Benutzung eines externen Editors ist zurzeit nicht erlaubt."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Systemfehler - Status konnte nicht bestimmt werden."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Kein Editor ist definiert!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "Der Befehl 'P'rint ist zurzeit nicht erlaubt."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "Dokument hat keine Toolbar-Links oder \"Banner\"."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Traversal-Datei konnte nicht geöffnet werden."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Traversal-Gefunden-Datei konnte nicht geöffnet werden."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Reject-Datei konnte nicht geöffnet werden."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Traversal-Fehlerdatei konnte nicht geöffnet werden."
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "TRAVERSAL UNTERBROCHEN"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Folge Link-Nummer (oder gehe zu Link oder Seite): "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Optionsnummer (oder Seitennummer) wählen: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Aktuelle Option ist schon Nummer %d."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Schon am Ende der Optionsliste."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Schon am Anfang der Optionsliste."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Schon auf Seite %d der Optionsliste."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Ungültige Optionsnummer eingegeben."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Bad HTML!!  ^T oder -trace Benutzen, um zu sehen was los ist. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Dateiname zum Speichern eingeben"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Speichern in Datei ist hier nicht möglich - bitte lokalen Client benutzen."
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Temporäre Datei kann nicht geöffnet werden!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Ausgabedatei kann nicht geöffnet werden!  Abgebrochen!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Befehlsausführung nicht erlaubt."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Ausführung für diese Datei nicht ermöglicht. Siehe Options-Menü (Taste %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Diese Version wurde ohne die Fähigkeit zur Programmausführung kompiliert."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Diese Datei kann auf diesem Terminal nicht gezeigt werden."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Kann an diesem Terminal nicht gezeigt werden: D)ownload oder abbre(C)hen"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D)ownload oder Abbru(c)h/(C)ancel"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Datei abgebrochen."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Datei wird geholt.  - BITTE WARTEN -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Dateiname eingeben: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Letzter Dateiname: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Früherer Dateiname: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Neuer Dateiname: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Dateiname darf nicht mit einem Punkt beginnen."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Datei existiert schon. Höhere Versionsnummer erzeugen?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Datei existiert schon. Ãœberschreiben?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Speichern in Datei nicht möglich."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "FEHLER! - Der Befehl \"Download\" ist falsch konfiguriert."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Download der Datei nicht möglich."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Verzeichnis wird gelesen..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Verzeichnisliste wird erzeugt..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Speichern..."
+
+# This seems unused - kw
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Datei '%s' konnte nicht editiert werden."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Zugriff auf Dokument nicht möglich!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Zugriff auf Datei fehlgeschlagen."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Zugriff auf Verzeichnis fehlgeschlagen."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Daten konnten nicht geladen werden."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx hat noch keine Unterstützung fürs (E)ditieren externer WWW-Dateien."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Externer Editor ist für dieses Feld nicht anwendbar."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Schlechte Regel in Konfiguration."
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Nicht genug Operanden:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Erlaubnis zum Editieren dieser Datei verweigert."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Titel: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Betreff/Subject: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Username: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Paßwort: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Username und Paßwort notwendig!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: Paßwort notwendig!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Alle Autorisationsdaten dieser Sitzung vergessen?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Autorisationsdaten gelöscht."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Noch nicht autorisiert. Noch mal versuchen?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "Unterstützung für cgi ist ausgeschaltet."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "LYNXCGI-Fähigkeit nicht eingebaut."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Sorry, keine Methode bekannt um %s in %s umzuwandeln."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Vorbereitung der Verbindung fehlgeschlagen."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Verbindung kann nicht hergestellt werden"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Fehlerhafte Anforderung: Ausführbarer Link wird zurückgewiesen."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Ausführbarer Link wird zurückgewiesen, weil das Zeichen `%c' vorkommt."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Ausführbarer Link wird wegen der Zeichenfolge '../' zurückgewiesen."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Ausführbarer Link aufgrund des Ortes oder Dateipfades zurückgewiesen."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "Zugang zu Mail ist ausgeschaltet!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Zugang ist nur zu Dateien und Diensten der lokalen Machine gestattet."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Zugang zu Telnet ist ausgeschaltet!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Erlaubnis zur Angabe eines Ports für Telnet ist nicht eingeschaltet."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "Zugang zu USENET news ist ausgeschaltet!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Zugang zu Rlogin ist ausgeschaltet!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Zugang zu Ftp ist ausgeschaltet!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Dieses Dokument hat keine Links."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Dieses Dokument hat nur versteckte Links."
+
+# Seems unused now.
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Kann die Befehlsdatei nicht öffnen"
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Wunsch zu drucken abgebrochen!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Ausgewählter Editor wird zum Erstellen der Nachricht gestartet."
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Message schicken?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "'%s' anhängen?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Posting zu Newsgroup(s)..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Du hast ungelesene Mail. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** Du hast Mail. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Du hast neue Mail. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Dateieinfügung abgebrochen!!!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Nicht genug Memory für Datei!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Datei konnte nicht zum Lesen geöffnet werden!"
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Datei nicht gefunden."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Datei nicht gefunden - Neueingabe oder Abbruch:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Datei nicht lesbar."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Datei nicht lesbar - Neueingabe oder Abbruch:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Kein einfügbarer Text vorhanden - die Datei ist leer."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Wunsch zu speichern abgebrochen!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Wunsch Mail zu schicken abgebrochen!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Quelltext ist vorverarbeitet. Wirklich schicken?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Bitte warten..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Datei wird als Mail geschickt.  Bitte warten..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "FEHLER - Datei konnte nicht als Mail geschickt werden"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Datei ist %d Bildschirme lang. Wirklich drucken?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Wunsch zu drucken abgebrochen!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Eingabetaste drücken um zu beginnen: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Eingabetaste drücken: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Datei ist %d Seiten lang. Wirklich drucken?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Ist der Drucker auch on-line?  Eingabetaste betätigen für Druckbeginn:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "FEHLER - Nicht genug Speicherplatz für Datei!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Temporäre Datei konnte nicht geöffnet werden"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Temporäre Datei für Druckeroptionen konnte nicht geöffnet werden"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Datei wird gedruckt.  Bitte warten..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Bitte gültige Internet-Mailadresse eingeben: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "FEHLER! - Drucker ist falsch konfiguriert!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Imagemap aus POST-Antwort nicht vorhanden!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Fehlgeleitete Anforderung einer client-side Image-MAP!"
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "Client-side Image-MAP ist nicht zugänglich!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Keinerlei client-side Image-MAPs verfügbar!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "Client-side Image-MAP ist nicht verfügbar!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Das Options-Menü braucht mindestens 24 Bildschirmzeilen!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Das Options-Menü braucht mindestens 23 Bildschirmzeilen!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Das Options-Menü braucht mindestens 22 Bildschirmzeilen!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Die Taste funktioniert nur im \"fortgeschrittenen\" Benutzermodus."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Content-Type: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Befehl: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Unbekannter oder doppeldeutiger Befehl"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Version "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " erster"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr " (Versuch zu raten...)"
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Zugriffsberechtigung für "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Wähle "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "Großbuchstaben"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " der Optionszeile,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " um zu speichern,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " um zu "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " oder "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr "-Index"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " für Rückkehr zu Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Änderungen akzeptieren"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Änderungen zurücknehmen"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Linke Pfeiltaste nimmt zurück"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Optionen permanent speichern"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "RETURN (Eingabetaste) für Bestätigung."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "RETURN (Eingabetaste) für Bestätigung, oder Feld leermachen für Vorgabewert."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Wert akzeptiert!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Wert akzeptiert! -- WARNUNG: Lynx ist für X Window System konfiguriert!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Wert akzeptiert! -- WARNUNG: Lynx ist NICHT für X Window System konfiguriert!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Es ist nicht erlaubt, die Auswahl des Editors zu ändern!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "DISPLAY-Variable konnte nicht gesetzt werden!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "DISPLAY-Variable konnte nicht gelöscht werden!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Änderung der Lesezeichendatei ist nicht erlaubt!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "Terminal hat keine Unterstützung für Farbe"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Das Terminal vom Typ '%s' hat keine Unterstützung für Farbe."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "Zugang zu Dateien, die mit Punkt beginnen, ist nicht erlaubt!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "Die Kennung des Benutzer-Agenten enthält weder \\\"Lynx\\\" noch \\\"L_y_n_x\\\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Benutze \\\"L_y_n_x\\\" oder \\\"Lynx\\\" im Benutzer-Agenten. Anderenfalls sieht es nach bewusster Täuschung aus."
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "Ändern der Kennung des Benutzer-Agenten ist außer Betrieb!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Das Ändern dieser Einstellung ist nicht erlaubt."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Optionen speichern..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Optionen gespeichert!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Optionen konnten nicht gespeichert werten!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' für Rückkehr zu Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' um zu speichern, oder 'r' für Rückkehr zu Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Beliebige Taste drücken um Wert zu verändern; Eingabetaste zum Akzeptieren."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Temporäre Datei konnte nicht dekomprimiert werden!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Ununterstütztes URL-Schema!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Der URL-Typ \"data:\" ist nicht unterstützt. Probier die '=' Taste."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Redirection-Limit von 10 URLs erreicht."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Der Server hat einen ungültigen Redirection-URL geschickt!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Server verlangte mit Status %d Umleitung von POST-Daten zu"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P)OST, in G)ET umwandeln oder Abbru(c)h/(C)ancel "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "Weitermachen/(P)roceed oder Abbruch/(C)ancel "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Umleitung von POST-Daten. P)OST, U)RL zeigen, G)ET, oder Abbre(C)hen"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Umleitung von POST-Daten. Weiter/(P)roceed, U)RL zeigen oder Abbre(C)en"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Dokument hat POST-Daten, d.h. bereits gesandten Forminhalt. POST wiederholen?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "POST-Daten neu senden zu %s ?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Liste für Dokuments mit Formdaten. %s neu laden?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Dokument ist Ergebnis einer POST-Aktion, HEAD vielleicht unanwendbar. Weiter?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Formzugriffsmethode ist POST, HEAD vielleicht unanwendbar. Weiter?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Weitermachen ohne Username und Passwort?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Weiter (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "POST nicht möglich für diesen Host."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "POST nicht möglich für diesen URL - POST-Daten werden ignoriert!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "POST-Daten weggeworfen..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Dokument wird nicht zwangsgeladen!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Location: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' nicht gefunden!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Lesezeichendatei wenn nicht angegeben"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Fenster zu klein, 8x35 nötig"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Ziel eingeben, oder ^G für Abbruch: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Unterlesezeichendatei wählen, '=' für Menü oder ^G für Abbruch:"
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "L)ink in dieser Lesezeichendatei duplizieren oder abbre(C)hen? (l,c): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Multi-Datei-Lesezeichen nicht verfügbar."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Wähle Lesezeichensammlung (Seite %d von %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Wähle Lesezeichensammlung"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "BESCHREIBUNG und DATEIPFAD für Lesezeichen ändern (%d von 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         BESCHREIBUNG und DATEIPFAD für Lesezeichen ändern"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Buchstabe: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Dateipfad relativ zum Home-Verzeichnis in SHELL-Syntax angeben!"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Dateipfad relativ zum Home-Verzeichnis angeben!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Max. Links/Bildschirm erreicht! Probier Halbseiten- oder Zweizeilenbewegung."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Noch keine schon besuchten Links!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Zu wenig Speicherplatz!  Programm abgebrochen!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Zu wenig Speicherplatz!  Programm bricht ab..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Nicht genug Speicher!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Verzeichnis- und Dateimanager (Dired) nicht verfügbar"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF in BASE-Tag ist kein absoluter URL."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "Location-URL ist nicht absolut."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "Refresh-URL ist nicht absolut."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Nachricht mit vergegebenem Inhalt wird geschickt an:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Kommentar wird geschickt an:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" Mit Kopie an:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Mit Kopien an:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Ctrl-G zum Abbrechen verwenden, falls keine Nachricht geschickt werden soll.\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Bitte eigenen Namen eingeben, oder für Anonymität leerlassen\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+"\n"
+" Bitte eigene Mailadresse oder ander Kontaktadresse\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " eingeben, fall eine Antwort gewünscht wird.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Bitte eine Zeile eingeben für Betreff/Subject.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Mailadresse für zusätztliche Kopie (CC) eingeben.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Kann leergelassen werden, falls keine Kopie erwünscht ist.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Bitte den Inhalt der Nachricht überprüfen:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"RETURN (Eingabetaste) um weiterzumachen: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"RETURN (Eingabetaste) um aufzuräumen: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Die Vorgaben können mit ^U gelöscht werden.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Bitte Nachricht unten eingeben."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Wenn du fertig bist, Eingabetaste drücken und einen einzelnen Punkt (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" in neue Zeile schreiben, dann noch einmal Eingabetaste."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "Keks von %s: %.*s=%.*s erlauben? (J/N/immer Akz./Verw.)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Schlechten Keks domain=%s von '%s' nehmen?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Keks: path=%s als Präfix von '%s' akzeptieren?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Dieser Keks wird erlaubt."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Dieser Keks wird zurückgewiesen."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Der Keksbeutel ist leer."
+
+#: LYMessages.c:705
+msgid "The Cache Jar is empty."
+msgstr "Der Cachebeutel ist leer."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Links aktivieren um einzelne Kekse oder ganze Domains zu vernichten,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "oder um den 'erlaubt'-Zustand für eine Domain zu ändern."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Kekse nie erlaubt.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Kekse immer gern gesehen.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Kekse erlaubt nach Bestätigung.)"
+
+# Not used any more in latest cookie code.
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Beständige Kekse.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(ohne Titel)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(kein Name.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(kein Wert.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "keine"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Ende der Session.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Diesen Keks wegschmeißen?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Der Keks ist weg!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Leere Domain entfernen?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Fort ist sie!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)iese Kekse weg, (immer)(A)kzept/ (P)rompt/ (immer)(V)erweig, oder Abbru(C)h? "
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)omain weg, (immer) (A)kzept. / (P)rompt / (immer)(V)erweig., oder Abbru(C)h? "
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Keine Kekse mehr da!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "'A'lle Kekse für Domain '%s' erlaubt."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "Kekse 'V'erboten für Domain '%s'."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "'P'rompte Frage wenn Kekse kommen für Domain '%s'."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Alle Kekse für diese Domain wegwerfen?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Der Keksbeutel ist total leer!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Port 19 nicht erlaubt in URLs."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Port 25 nicht erlaubt in URLs."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Port %lu nicht erlaubt in URLs."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "URL hat ungültigen Port."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Maximale Schachtelungstiefe für HTML-Elemente überschritten."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Link mit schlechter partieller URL-Reference! '../' wird entfernt."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Fehler beim Öffnen der Trace-Logdatei.  Trace AUS!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Lynx Trace Log"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Trace Log in dieser Session bislang nicht gestartet."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Die maximale Anzahl temporärer Dateien ist erreicht!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Wert des Formfeldes länger as Pufferspeicher! Schwanz ab."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Modifizierter Schwanz mit dem Kopf des Formfeldwertes kombiniert."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Verzeichnis"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Das Durchstöbern von Dateiverzeichnissen ist untersagt."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "Selektiver Zugriff ist für dieses Verzeichnis nicht möglich"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: Suche im Verzeichnis fehlgeschlagen."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Dieses Verzeichnis kann nicht gelesen werden."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Die gewünschte Datei ist nicht zugänglich."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Keine passende Datei von akzeptablem Typ gefunden."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Datei konnte nicht für Dekompression geöffnet werden!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Dateien:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Unterverzeichnisse:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " Verzeichnis"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Rauf nach "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Dies Verzeichnis ist "
+
+# This appears in FTP directory listings.  "Symbolischer Link"
+# does not fit in the (default?) format. - kw
+#. HTFTP.c
+#: LYMessages.c:765
+msgid "Symbolic Link"
+msgstr "Symbolic Link"
+
+#. HTGopher.c
+#: LYMessages.c:768
+msgid "No response from server!"
+msgstr "Keine Antwort vom Server!"
+
+#: LYMessages.c:769
+msgid "CSO index"
+msgstr "CSO-index"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Dies ist ein abfragbarer Index einer CSO-Datenbank.\n"
+
+#: LYMessages.c:771
+msgid "CSO Search Results"
+msgstr "CSO-Suchresultate"
+
+#: LYMessages.c:772
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Suchfehler auf %s\n"
+
+#: LYMessages.c:773
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Drück die Taste 's' und dann gib Schbegriffe ein.\n"
+
+#: LYMessages.c:774
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Dies ist ein abfragbarer Gopher-Index.\n"
+
+#: LYMessages.c:775
+msgid "Gopher index"
+msgstr "Gopher-Index"
+
+#: LYMessages.c:776
+msgid "Gopher Menu"
+msgstr "Gophermenü"
+
+#: LYMessages.c:777
+msgid " Search Results"
+msgstr " Suchergebnisse"
+
+#: LYMessages.c:778
+msgid "Sending CSO/PH request."
+msgstr "CSO/PH-Request wird geschickt."
+
+#: LYMessages.c:779
+msgid "Sending Gopher request."
+msgstr "Gopher-Request wird geschickt."
+
+#: LYMessages.c:780
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO/PH-Request geschickt; warten auf Antwort."
+
+#: LYMessages.c:781
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopher-Request geschickt; warten auf Godot."
+
+#: LYMessages.c:782
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Bitte Suchwörter eingeben.\n"
+
+#: LYMessages.c:783
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Die einzugebenden Wörter erlauben die Suche nach einem"
+
+#: LYMessages.c:784
+msgid " person's name in the database.\n"
+msgstr " Personennamen in der Datenbank.\n"
+
+#. HTNews.c
+#: LYMessages.c:787
+msgid "Connection closed ???"
+msgstr "Verbindung zugemacht ???"
+
+#: LYMessages.c:788
+msgid "Cannot open temporary file for news POST."
+msgstr "Temporäre Datei für das Posten der News-Message kann nicht geöffnet werden."
+
+#: LYMessages.c:789
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Dieses Clientprogramm hat keine Unterstützung für das News-Posten mit SSL."
+
+# These functions are never being called.
+#. HTStyle.c
+#: LYMessages.c:792
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Stil %d `%s' SGML:%s. Schrift %s %.1f point.\n"
+
+# These functions are never being called.
+#: LYMessages.c:794
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tAusrichten=%d, %d tabs. (%.0f vor, %.0f danach)\n"
+
+# These functions are never being called.
+#: LYMessages.c:795
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tTabulator-Art=%d bei %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:798
+msgid "Can't proceed without a username and password."
+msgstr "Weitermachen ohne Username und Passwort nicht möglich."
+
+#: LYMessages.c:799
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Autorisierungversuche fehlgeschlagen!  Webmaster kontaktieren."
+
+#: LYMessages.c:800
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Proxy-Autorisierungversuche fehlgeschlagen! Frag den Cachemaster oder so..."
+
+#: LYMessages.c:801
+msgid "Retrying with proxy authorization information."
+msgstr "Wir versuchen's noch einmal, mit Proxy-Autorisierungsinfo."
+
+#: LYMessages.c:802
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL-Fehler:%s - Fortfahren?"
+
+#. HTWAIS.c
+#: LYMessages.c:805
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Message zu lang."
+
+#: LYMessages.c:806
+msgid "Enter WAIS query: "
+msgstr "Gib WAIS-Frage ein: "
+
+#. Miscellaneous status
+#: LYMessages.c:809
+msgid "Retrying as HTTP0 request."
+msgstr "Wir versuchen's noch einmal, als HTTP0-Request."
+
+#: LYMessages.c:810
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "%d bytes übertragen"
+
+#: LYMessages.c:811
+msgid "Data transfer complete"
+msgstr "Ãœbertragung komplett."
+
+#: LYMessages.c:812
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Fehler beim Verarbeiten von Zeile %d von %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:815
+msgid "Address List Page"
+msgstr "Linkadressenliste"
+
+#: LYMessages.c:816
+msgid "Bookmark file"
+msgstr "Lesezeichendatei"
+
+#: LYMessages.c:817
+msgid "Configuration Definitions"
+msgstr "Konfiguration"
+
+#: LYMessages.c:818
+msgid "Cookie Jar"
+msgstr "Keksbeutel (Cookie Jar)"
+
+#: LYMessages.c:819
+msgid "Current Key Map"
+msgstr "Aktuelle Tastaturbelegung"
+
+#: LYMessages.c:820
+msgid "File Management Options"
+msgstr "Dateimanagement-Menü"
+
+#: LYMessages.c:821
+msgid "Download Options"
+msgstr "Download-Menü"
+
+#: LYMessages.c:822
+msgid "History Page"
+msgstr "History- oder Geschichtsseite"
+
+#: LYMessages.c:823
+msgid "Cache Jar"
+msgstr "Cachebeutel (Cache Jar)"
+
+#: LYMessages.c:824
+msgid "List Page"
+msgstr "Linkliste"
+
+#: LYMessages.c:825
+msgid "Lynx.cfg Information"
+msgstr "Informationen über lynx.cfg"
+
+#: LYMessages.c:826
+msgid "Converted Mosaic Hotlist"
+msgstr "Konvertierte Mosaic-Hotlist"
+
+#: LYMessages.c:827
+msgid "Options Menu"
+msgstr "Menü der persönlichen Konfigurationsoptionen"
+
+#: LYMessages.c:828
+msgid "File Permission Options"
+msgstr "Dateizugriffserlaubnis Ändern"
+
+#: LYMessages.c:829
+msgid "Printing Options"
+msgstr "Druckeroptionen"
+
+#: LYMessages.c:830
+msgid "Information about the current document"
+msgstr "Informationen über das aktuelle Dokument"
+
+#: LYMessages.c:831
+msgid "Your recent statusline messages"
+msgstr "Letzte Meldungen von der Statuszeile"
+
+#: LYMessages.c:832
+msgid "Upload Options"
+msgstr "Upload-Optionen"
+
+#: LYMessages.c:833
+msgid "Visited Links Page"
+msgstr "Seite der besuchten Links"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:836
+msgid "See also"
+msgstr "Siehe auch"
+
+#: LYMessages.c:837
+msgid "your"
+msgstr "dein"
+
+#: LYMessages.c:838
+msgid "for runtime options"
+msgstr "für Runtime-Optionen"
+
+#: LYMessages.c:839
+msgid "compile time options"
+msgstr "Einkompilierte Optionen"
+
+#: LYMessages.c:840
+msgid "color-style configuration"
+msgstr "Farbstil-Konfiguration"
+
+#: LYMessages.c:841
+msgid "latest release"
+msgstr "letzte Fassung"
+
+#: LYMessages.c:842
+msgid "pre-release version"
+msgstr "Pre-Release-Version"
+
+#: LYMessages.c:843
+msgid "development version"
+msgstr "Development-Version"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:845
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Die folgenden Informationen wurden beim Konfigurieren/Zusammenbau dieser\n"
+"Kopie von Lynx automatisch hergeleitet. Beim Melden eines Bugs bitte eine\n"
+"Kopie dieser Seite beifügen."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:849
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Die folgenden automatisch erzeugten Daten wurden beim Bau\n"
+"dieser Programmkopie als Definitionen verwendet."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:854
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "C) Erzeugen D)ownload E)dit F) Menü  M) Ändern R) Löschen T) Markieren U)pload\n"
+
+#: LYMessages.c:855
+msgid "Failed to obtain status of current link!"
+msgstr "Der Status des aktuellen Links konnte nicht bestimmt werden!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:858
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Dieser spezielle URL ist nur vom aktiven Zugriffsrechtemenü aus verwendbar!"
+
+#: LYMessages.c:862
+msgid "External support is currently disabled."
+msgstr "Unterstützung für EXTERNAL ist zurzeit ausgeschaltet."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:866
+msgid "Changing working-directory is currently disabled."
+msgstr "Wechseln des Arbeitsverzeichnisses ist zurzeit nicht aktiviert."
+
+#: LYMessages.c:867
+msgid "Linewrap OFF!"
+msgstr "Linewrap AUS!"
+
+#: LYMessages.c:868
+msgid "Linewrap ON!"
+msgstr "Linewrap AN!"
+
+#: LYMessages.c:869
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Erkennung verschachtelter Tabellen ist AUSgeschaltet!  Reloading..."
+
+#: LYMessages.c:870
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Erkennung verschachtelter Tabellen ist EINgeschaltet!  Reloading..."
+
+#: LYMessages.c:871
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Versetzen ist ausgeschaltet, solange Zeilenumbruch aktiv ist"
+
+#: LYMessages.c:872
+msgid "Trace not supported"
+msgstr "Trace hat keine Unterstützung"
+
+# These functions are never being called.
+#: LYMessages.c:793
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tEinrückungen: Erste=%.0f, Andere=%.0f, Höhe=%.1f, Nachklapp=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Username für '%s' auf %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Dieses Programm kann nichts anfangen mit dem Schema für Proxy-Autorisierung"
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Dieses Programm weiß nichts anzufangen mit dem Autorisierungsschema"
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Ungültiger Header '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "Proxy-Autorisierung verlangt -- wiederholter Versuch"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "Zugang ohne Autorisierung verweigert -- wiederholter Versuch"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "Zugang durch Konfigurationsregel verboten"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Dokument mit POST-Daten nicht im Seitencache gefunden. POST wiederholen?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr "Laden fehlgeschalten, die vorherige Kopie wird verwendet."
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8542
+msgid "Loading incomplete."
+msgstr "Unvollständig geladen."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: Alte Laderoutine hat Socket- oder Dateinummer zurückgegeben!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Interner Softwarefehler. Bitte lynx-dev@nongnu.org benachrichtigen!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Der empfangene Statuscode war %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7756
+msgid "Can't Access"
+msgstr "Zugriff fehlgeschlagen:"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "Zugriff auf Dokument nicht möglich."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Passwort eingeben für User %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Verbindung zum FTP-Host konnte nicht hergestellt werden."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "close master socket"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "socket for master socket"
+
+#: WWW/Library/Implementation/HTFTP.c:2977
+msgid "Receiving FTP directory."
+msgstr "FTP-Verzeichnis wird empfangen."
+
+#: WWW/Library/Implementation/HTFTP.c:3113
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "%d bytes übertragen (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3467
+msgid "connect for data"
+msgstr "connect for data"
+
+#: WWW/Library/Implementation/HTFTP.c:4128
+msgid "Receiving FTP file."
+msgstr "FTP-Datei wird empfangen."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "\"Finger\"-Verbindung konnte nicht hergestellt werden."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Nichts geladen (kein Site-Name im \"finger\"-URL)"
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "Ungültige Portnummer - Nur Port 79 kann benutzt werden!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "Der \"finger\"-Host konnte nicht erreicht werden."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "Keine Antwort vom \"finger\"-Server."
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Username für den News-Host '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "Username ändern?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "Username:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Passwort für den News-Host '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "Passwort ändern?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "Keine passenden Newsgroups für: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Keine Messages in dieser Newsgroup.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Keine Messages in diesem Bereich.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  Messages %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "Frühere Messages"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Ungefähr %d Messages zurzeit vorhanden in %s, IDs wie folgt:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "Alle zugänglichen Messages in "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "Spätere Messages"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "Message hinterlassen (Post) in "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Dieses Programm hat keine Unterstützung für SNEWS URLs."
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr "Kein target für rohen Text!"
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "Verbindungserstellung zum News-Host ..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "Kein Zugang zu %s."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "News-Info kann nicht gelesen werden. Server %.20s antwortet: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "News-Info kann nicht gelesen werden. Leere Antwort von Server %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "Liste vorhandener Newsgroups wird geladen."
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "Liste der vorhandenen Messages wird geladen."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "News-Message wird geladen."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr "Entschuldigung: konnte die angeforderten News nicht laden."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "Adresslänge hat einen ungültigen port"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "Adresslänge scheint ungültig zu sein"
+
+#: WWW/Library/Implementation/HTTCP.c:1618
+#: WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Remote Host %s nicht gefunden."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633
+#: WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Hostname ist ungültig: %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "%s-Verbindung zu %s wird aufgebaut."
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "Socket-Fehler."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "Socketfehler: family %d addr %s port %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Verbindung konnte nicht non-blocking gemacht werden."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "Verbindungsfehler (zu viele Versuche)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Socket konnte nicht wieder blocking gemacht werden."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+msgid "Socket read failed (too many tries)."
+msgstr "Lesefehler (zu viele Versuche)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "Adresse mit einem Username: %s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Zertifikat herausgegeben von: %s"
+
+#: WWW/Library/Implementation/HTTP.c:643
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Dieses Programm hat keine Unterstützung für HTTPS-URLs."
+
+#: WWW/Library/Implementation/HTTP.c:668
+msgid "Unable to connect to remote host."
+msgstr "Verbindung zum remote Host konnte nicht hergestellt werden."
+
+#: WWW/Library/Implementation/HTTP.c:692
+msgid "Retrying connection without TLS."
+msgstr "Verbindung erneut versuchen, ohne TLS."
+
+#: WWW/Library/Implementation/HTTP.c:737
+msgid "no issuer was found"
+msgstr "Kein Herausgeber gefunden"
+
+#: WWW/Library/Implementation/HTTP.c:739
+msgid "issuer is not a CA"
+msgstr "Herausgeber ist keine CA"
+
+#: WWW/Library/Implementation/HTTP.c:741
+msgid "the certificate has no known issuer"
+msgstr "Das Zertifikat hat keinen bekannten Herausgeber"
+
+#: WWW/Library/Implementation/HTTP.c:743
+msgid "the certificate has been revoked"
+msgstr "Das Zertifikat wurde widerrufen"
+
+#: WWW/Library/Implementation/HTTP.c:745
+msgid "the certificate is not trusted"
+msgstr "Dem Zertifikat wird nicht vertraut"
+
+#: WWW/Library/Implementation/HTTP.c:821
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Verifizierte Verbindung zu %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:869 WWW/Library/Implementation/HTTP.c:911
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Verifizierte Verbindung zu %s (subj=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:941
+msgid "Can't find common name in certificate"
+msgstr "Kann Allgemeinen Namen im Zertifikat nicht finden"
+
+#: WWW/Library/Implementation/HTTP.c:944
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL-Fehler:host(%s)!=cert(%s) - Fortfahren?"
+
+#: WWW/Library/Implementation/HTTP.c:957
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "UNVERIFIZIERTE Verbindung zu %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:966
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Sichere %d Bit %s (%s) HTTP-Verbindung"
+
+#: WWW/Library/Implementation/HTTP.c:1433
+msgid "Sending HTTP request."
+msgstr "HTTP Request wird geschickt."
+
+#: WWW/Library/Implementation/HTTP.c:1472
+msgid "Unexpected network write error; connection aborted."
+msgstr "Unerwarteter Netzschreibfehler; Verbindung abgebrochen."
+
+#: WWW/Library/Implementation/HTTP.c:1478
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP Request geschickt; warten auf Antwort."
+
+#: WWW/Library/Implementation/HTTP.c:1546
+msgid "Unexpected network read error; connection aborted."
+msgstr "Unerwarteter Netzlesefehler; Verbindung abgebrochen."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1740
+msgid "Got unexpected Informational Status."
+msgstr "Unerwarteter Informations-Statuscode empfangen."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1774
+msgid "Request fulfilled.  Reset Content."
+msgstr "Request ausgeführt. Seiteninhalt zurücksetzen."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1891
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Unerwarteter Status 304 \"Not Modified\"."
+
+#: WWW/Library/Implementation/HTTP.c:1954
+msgid "Redirection of POST content requires user approval."
+msgstr "Bestätigung ist erforderlich für Umleitung von POST-Daten."
+
+#: WWW/Library/Implementation/HTTP.c:1969
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "POST-Request. Permanente Umleitung wird als temporär behandelt.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2011
+msgid "Retrying with access authorization information."
+msgstr "Wir versuchen's noch einmal mit Autorisierungsinfo."
+
+#: WWW/Library/Implementation/HTTP.c:2023
+msgid "Show the 401 message body?"
+msgstr "Inhalt der 401-Antwort zeigen?"
+
+#: WWW/Library/Implementation/HTTP.c:2066
+msgid "Show the 407 message body?"
+msgstr "Inhalt der 407-Antwort zeigen?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2166
+msgid "Unknown status reply from server!"
+msgstr "Unbekannter Statuscode in Antwort vom Server!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "Entfernte %s Sitzung:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Verbindungsaufnahme zum WAIS-Server fehlgeschlagen."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Verbindung zum WAIS Server konnte nicht fürs Lesen geöffnet werden."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Codenummer für Dignose ist "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Index"
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " enthält folgenden %d relevanten Item%s für \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Die erste Zahl nach jedem Eintrag ist die relative Bewertung, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "die zweite ist die Länge des Items in Zeilen."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr "(schlechter Dateiname)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(schlechte Dokument-Identifizierungsnummer)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Kurzer Kopfeintrag, Anzeige nicht möglich)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Langer Kopfeintrag, Anzeige nicht möglich\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Texteintrag\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Überschriftseintrag, Anzeige nicht möglich\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Codeeintrag, Anzeige nicht möglich\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Syntaxfehler in WAIS-URL"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS-Index)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS-Index: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Dies ist ein Link zum Abfragen des "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS-Index.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+" Tastenkommando 's' für Suche, dann Suchwörter eingeben.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (in "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS-Suche von \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" in: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Request zu lang."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "WAIS-Datenbang wird abgefragt..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Suche unterbrochen."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Format des WAIS-Dokuments kann nicht konvertiert werden"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Request zu lang."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "WAIS-Dokument wird geholt..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Kein Text in Antwort!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr " NICHT VORHANDEN in Quelldatei; "
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr " WAIS-Quelldatei"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " Beschreibungs"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "Zugriffslinks"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "direkter Zugang"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (oder durch Proxyserver, falls definiert)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "Instandhalter"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "Host"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "zu wenig Hauptspeicher, Anzeige abgebrochen!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "zu wenig Hauptspeicher, Ãœbertragung wird abgebrochen!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** MEMORY ERSCHÖPFT ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "unbekanntes Feld oder Link"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "Texteingabefeld"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "Passwort-Eingabefeld"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "Checkbox"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "Radiobutton"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "Submit-Button"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "Reset-Button"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "Popup-Menü"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "verstecktes Formfeld"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "Texteingaberegion"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr "Bereichseingabefeld"
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "Dateieingabefeld"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr "Textsendefeld"
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "Image-Sendefeld"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr "\"Keygen\"-Feld"
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "unbekanntes Formfeld"
+
+#: src/GridText.c:10275
+msgid "Can't open file for uploading"
+msgstr "Datei konnte nicht zum Upload geöffnet werden!"
+
+#: src/GridText.c:11434
+#, c-format
+msgid "Submitting %s"
+msgstr "%s wird gesandt"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12487
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Hänger festgestellt: TextAnchor-Konstruktion ist schadhaft - am besten abbrechen!"
+
+#. don't show previous state
+#: src/GridText.c:12624
+msgid "Wrap lines to fit displayed area?"
+msgstr "Zeilen umbrechen, um in den sichtbaren Bereich einzupassen?"
+
+#: src/GridText.c:12676
+msgid "Very long lines have been wrapped!"
+msgstr "Sehr lange Zeilen wurden umbrochen!"
+
+#: src/GridText.c:13181
+msgid "Very long lines have been truncated!"
+msgstr "Sehr lange Zeilen wurden abgeschnitten!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "bytes"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "%s der Daten gelesen"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "%s von %s der Daten gelesen"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/sec"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (unterbrochen für %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", ETA %s"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " ('z' für Abbruch)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "ja"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "nein"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr "J/N/A/V"
+
+#: src/HTML.c:5913
+msgid "Description:"
+msgstr "Beschreibung:"
+
+#: src/HTML.c:5918
+msgid "(none)"
+msgstr "(keine)"
+
+#: src/HTML.c:5922
+msgid "Filepath:"
+msgstr "Dateipfad:"
+
+#: src/HTML.c:5928
+msgid "(unknown)"
+msgstr "(unbekannt)"
+
+#: src/HTML.c:7355
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Dokument hat nur versteckte Links. Tastenbefehl 'L' für Liste."
+
+#: src/HTML.c:7854
+msgid "Source cache error - disk full?"
+msgstr "Source Cache Fehler - Festplatte voll?"
+
+#: src/HTML.c:7867
+msgid "Source cache error - not enough memory!"
+msgstr "Source Cache Fehler - nicht genug Speicher!"
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Diese Datei ist eine HTML-Repräsentation der X-Mosaic-Hotlistdatei.\n"
+"     Alte oder ungültige Links können mit dem Tastenbefehl für\n"
+"     \"remove bookmark\" entfernt werden, das ist normalerweise der\n"
+"     Buchstabe 'R', außer wenn die Tastenbelegung geändert worden ist."
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Sie können Links mit der Taste 'R' löschen<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Links können mit dem Tastenbefehl für \"remove bookmark\" entfernt werden.\n"
+"     Das ist normalerweise der Buchstabe 'R', außer wenn die Tastenbelegung\n"
+"     geändert worden ist."
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Diese Datei kann auch mit einem Standard-Texteditor geändert werden,\n"
+"     um alte oder ungültige Links zu entfernen, or um die Reihenfolge der\n"
+"     Links zu modifizieren."
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Achtung: Beim manuellen Editieren dieser Datei sollte\n"
+"         das Format innerhalb der Zeilen nicht verändert\n"
+"         werden. Zusätzliches HTML-Markup sollte nicht\n"
+"         verwendet werden. Jeder einzelne Link muss vollständig\n"
+"         in einer einzigen Zeile enthalten sein."
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Datei kann möglicherweise während dieser Session mit %s wieder rekonstruiert werden"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Wollen Sie \"%s\" ausführen?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Zugang zu CGI-Script nicht möglich"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Guter Rat"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Ein exzellenter HTTP-Server für VMS ist durch"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "diesen Link erhältlich"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Er hat state of the art CGI-Unterstützung.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Programmende durch Interrupt:"
+
+#: src/LYCookie.c:2477
+msgid "(from a previous session)"
+msgstr "(von vorheriger Session)"
+
+#: src/LYCookie.c:2538
+msgid "Maximum Gobble Date:"
+msgstr "Verfallsdatum:"
+
+#: src/LYCookie.c:2577
+msgid "Internal"
+msgstr "Intern"
+
+#: src/LYCookie.c:2578
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "cookie_domain_flag_set-Fehler, beende das Programm"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Terminalinitialisierung fehlgeschlagen - unbekannter Terminaltyp?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Ein Textterminal wie VT100, VT200 usw. ist für dieses Programm notwendig."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "Terminaltyp ist unbekannt!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "Terminaltyp eingeben:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TERMINAL TYPE IS SET TO"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+" Ein fataler Fehler passierte in %s Ver. %s\n"
+
+# Yes, this is incomplete... - kw
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+" Bitte Systemverwalter benachrichtigen, um einen Bug zu bestätigen, und\n"
+"bei Bestätigung die lynx-dev Mailingliste benachrichtigen. Fehlermeldungen\n"
+"sollten eine knappe Beschreibung des Befehls oder der URL enthalten, die\n"
+"den Fehler verursacht haben, das Betriebssystem mit Versionsnummer,\n"
+"die TCPIP-Implementierung, den TRACEBACK (wenn er gewinnen werden\n"
+"konnte und andere relevante Information.\n"
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Fehler beim Starten des Editors, %s"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Editor von Signal abgeschossen"
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "Editor mit Fehler-Status %s beendet"
+
+#: src/LYDownload.c:506
+msgid "Downloaded link:"
+msgstr "Geladener Link:"
+
+#: src/LYDownload.c:511
+msgid "Suggested file name:"
+msgstr "Vorgeschlagener Dateiname:"
+
+#: src/LYDownload.c:516
+msgid "Standard download options:"
+msgstr "Normale Download-Optionen:"
+
+#: src/LYDownload.c:517
+msgid "Download options:"
+msgstr "Download-Optionen:"
+
+#: src/LYDownload.c:533
+msgid "Save to disk"
+msgstr "Speichern auf Disk"
+
+#: src/LYDownload.c:547
+msgid "View temporary file"
+msgstr "Temporäre Datei ansehen"
+
+#: src/LYDownload.c:554
+msgid "Save to disk disabled."
+msgstr "Speichern auf Disk nicht ermöglicht."
+
+#: src/LYDownload.c:558 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Lokale Zusätze:"
+
+#: src/LYDownload.c:569 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Kein Name gegeben"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Abfolge der gewählten Links:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(keine Adresse)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (intern)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (ehemals intern)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (Von History)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Besuchte Links (mit Ausnahme von POST, Lesezeichen, Menüs and Listen):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Bisher keine Nachrichten)"
+
+# The stuff in LYLeaks.c appears in a Lynx.leaks file, which is only
+# written if compiled with LY_FIND_LEAKS defined (--enable-find-leaks).
+# It's fairly technical, might have been better to leave these strings
+# untranslated.  As it is, the spaces in some of the strings are
+# necessary so that things line up (formatting uses TAB chars). - kw
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Ungültiger Zeiger gefunden."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "Abfolge: "
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Zeiger: "
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Quelle:  "
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Zeile:    "
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Speicherleck gefunden."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Inhalt:  "
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Länge:   "
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "realloziert:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Summe der Speicherlecks in diesem Programmlauf:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr "Höchstallozierung"
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "Bytes alloziert"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr "mallocs total"
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr "frees total"
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Verweise in "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "diesem Document:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Sichtbare Links:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Versteckte Links:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Verweise"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Sichtbare Links"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Status von '%s' nicht zugänglich."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "Das Ausgewählte ist weder eine Datei noch ein Verzeichnis! Befehl ignoriert."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "%s unmöglich wegen eines Fehlers vom System!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "%s wahrscheinlich fehlgeschlagen, Fehler vom System!"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "Löschen von %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr "\"Touchen\" von %s"
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "Verschieben von %s nach %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Es gibt schon ein Verzeichnis mit demselben Namen! Befehl ignoriert."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Es gibt schon eine Datei mit demselben Namen! Befehl ignoriert."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Der angegebene Name ist schon in Benutzung! Befehl ignoriert."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "Ziel gehört jemand anderem! Befehl verweigert."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Ziel ist kein gültiges Verzeichnis! Befehl verweigert."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Alle markierten Dateien und Verzeichnisse löschen?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Neuer Ort für markierte Objekte: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Pfad zu lang"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Quelle und Ziel sind derselbe Ort - Befehl ignoriert!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Neuer Name für Verzeichnis: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Neuer Name für Datei: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Ungültiges Zeichen (path-separator) gefunden! Befehl ignoriert."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Neuer Ort für Verzeichnis: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Neuer Ort für Datei: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Unerwarteter Fehler - kann den Pfadsperator am Ende nicht finden"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Quelle und Ziel sind derselbe Ort! Befehl ignoriert!"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Name(n), Ort(l) oder Zugriffsrechte(p) modifizieren? [nlp] "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Name(n) oder Ort(l) modifizieren? [nl] "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Noch nicht implementiert!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Name der Datei, die erzeugt werden soll: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Unerlaubte Umleitung \"//\" gefunden! Befehl ignoriert."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Name für neues Verzeichnis: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Datei(f) oder Verzeichnis(d) erzeugen? [fd] "
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Verzeichnis '%s' entfernen? "
+
+#: src/LYLocal.c:1169
+msgid "Remove directory?"
+msgstr "Verzeichnis entfernen?"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Datei '%s' entfernen? "
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Datei entfernen?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Symbolischen Link '%s' entfernen?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Symbolischen Link entfernen?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Sorry, Dateizugriffsrechte für Systeme außer UNIX können nicht geändert werden."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Zugriffsrechte-Optionsdatei kann nicht geöffnet werden"
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Zugriffsrechte angeben:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Besitzer:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Gruppe"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Andere:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "Form für Zugriffsrechte"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Ungültiges Format für mode."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Ungültiges Format für Syntax."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Warnung!  UUDekodierte Dateien werden im Startverzeichnis abgelegt."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "Null-URL-Zeiger"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Ausgeführt wird %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Systembefehl wird ausgeführt. Das kann eine Weile dauern."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Aktuelles Verzeichnis:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Aktuelle Auswahl:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Zurzeit nichts ausgewählt."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "Markiertes Objekt:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "Markierte Objekte:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Ungültiger Dateiname; Befehl ignoriert."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Installieren im ausgewählten Verzeichnis nicht gestattet."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "Das ausgewählte Objekt ist kein Verzeichnis! Befehl ignoriert."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Nur ein Weilchen, ..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr "Fehler beim Zusammenstellen der Installations-Argumente"
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Quelle und Ziel sind gleich: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Bereits im Zielverzeichis: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Installation fertig"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "Temporarärer URL oder Liste wäre zu lang."
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Mail wird gesandt:"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Der Link   %s :?: %s \n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "mit Namen \"%s\"\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "in der Datei \"%s\", genannt \"%s\",\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "wurde angefordert, und war nicht verfügbar."
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "Vielleicht wollten Sie das ja gerne wissen."
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "Diese Nachricht wurde automatisch generiert von"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr "Kein systemweiter Mailer konfiguriert"
+
+#: src/LYMain.c:1025
+msgid "No Winsock found, sorry."
+msgstr "Kein Winsock gefunden, sorry."
+
+#: src/LYMain.c:1222
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Es muß ein gültiger Bereich für TMP oder TEMP definiert sein!"
+
+#: src/LYMain.c:1275 src/LYMainLoop.c:5051
+msgid "No such directory"
+msgstr "Verzeichnis nicht vorhanden"
+
+#: src/LYMain.c:1460
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Konfigurationsdatei %s ist nicht zugänglich.\n"
+"\n"
+
+#: src/LYMain.c:1470
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx-Zeichensätze nicht deklariert.\n"
+"\n"
+
+#: src/LYMain.c:1499
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx \"edit map\" nicht deklariert.\n"
+"\n"
+
+#: src/LYMain.c:1575
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx-Datei %s ist nicht verfügbar.\n"
+"\n"
+
+#: src/LYMain.c:1650
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "%d Zeichen von der Standardeingabe ignoriert.\n"
+
+#: src/LYMain.c:1652
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Benutzen Sie \"-stdin\" oder \"-\", um festzulegen, wie die Eingabe behandelt wird.\n"
+
+#: src/LYMain.c:1800
+msgid "Warning:"
+msgstr "Warnung:"
+
+# No idea what this means.  Seems highly experimental anyway. - kw
+#: src/LYMain.c:2365
+msgid "persistent cookies state will be changed in next session only."
+msgstr "Beständige Kekse werden erst beim nächsten Programmaufruf geändert."
+
+#: src/LYMain.c:2610 src/LYMain.c:2655
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: ignoriere unbekannte Codierung (charset)=%s\n"
+
+#: src/LYMain.c:3174
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Version %s (%s)"
+
+#: src/LYMain.c:3212
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Kompiliert auf %s, %s %s\n"
+
+#: src/LYMain.c:3234
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "Die Vervielfältigungsrechte liegen bei der Lynx Developers Group,"
+
+#: src/LYMain.c:3235
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "der Universität Kansas, dem CERN und anderen Beitragenden."
+
+#: src/LYMain.c:3236
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Verbreitet unter den Bedingungen der GNU General Public License (Version 2)."
+
+#: src/LYMain.c:3237
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Weitere Informationen: http://lynx.isc.org/ und die Online-Hilfe."
+
+#: src/LYMain.c:4056
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "AUFRUF: %s [optionen] [datei oder URL]\n"
+
+#: src/LYMain.c:4057
+#, c-format
+msgid "Options are:\n"
+msgstr "Optionen sind:\n"
+
+#: src/LYMain.c:4356
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Ungültige Option: %s\n"
+
+#: src/LYMainLoop.c:571
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Interner Fehler: %d ist ungültig für mouse_link!"
+
+#: src/LYMainLoop.c:691 src/LYMainLoop.c:5073
+msgid "A URL specified by the user"
+msgstr "Ein vom Benutzer eingegegener URL"
+
+#: src/LYMainLoop.c:1150
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Enctype multipart/form-data noch nicht unterstützt! Submission unmöglich."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3082
+msgid "Help Screen"
+msgstr "Hilfe-Seite"
+
+#: src/LYMainLoop.c:3203
+msgid "System Index"
+msgstr "Systemindex"
+
+#: src/LYMainLoop.c:3562 src/LYMainLoop.c:5297
+msgid "Entry into main screen"
+msgstr "Eingang zur Hauptseite"
+
+#: src/LYMainLoop.c:3820
+msgid "No next document present"
+msgstr "Es gibt kein nächstes Dokument"
+
+#: src/LYMainLoop.c:4116
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "Charset für dieses Dokument ist schon explizit angegeben..."
+
+#: src/LYMainLoop.c:5029
+msgid "cd to:"
+msgstr "cd nach:"
+
+#: src/LYMainLoop.c:5054
+msgid "A component of path is not a directory"
+msgstr "Eine Pfadkomponente ist kein Verzeichnis"
+
+#: src/LYMainLoop.c:5057
+msgid "failed to change directory"
+msgstr "Fehler beim Verzeichniswechsel"
+
+# How does one translate reparsing anyway? - kw
+#: src/LYMainLoop.c:6229
+msgid "Reparsing document under current settings..."
+msgstr "Dokument wird mit jetzigen Einstellungen reinterpretiert..."
+
+#: src/LYMainLoop.c:6520
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Fataler Fehler - Ausgabedatei %s konnte nicht geöffnet werden\n"
+
+#: src/LYMainLoop.c:6857
+msgid "TABLE center enable."
+msgstr "TABLE-Zentrierung aktivieren."
+
+#: src/LYMainLoop.c:6860
+msgid "TABLE center disable."
+msgstr "TABLE-Zentrierung ausschalten."
+
+#: src/LYMainLoop.c:6937
+msgid "Current URL is empty."
+msgstr "Aktueller URL ist leer."
+
+#: src/LYMainLoop.c:6939 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "Kopieren in das Clipboard fehlgeschlagen."
+
+#: src/LYMainLoop.c:6941
+msgid "Document URL put to clipboard."
+msgstr "URL des Dokuments in das Clipboard gespeichert."
+
+#: src/LYMainLoop.c:6943
+msgid "Link URL put to clipboard."
+msgstr "URL des Links in das Clipboard gespeichert."
+
+#: src/LYMainLoop.c:6970
+msgid "No URL in the clipboard."
+msgstr "Kein URL in das Clipboard gespeichert."
+
+#: src/LYMainLoop.c:7641 src/LYMainLoop.c:7811
+msgid "-index-"
+msgstr "-Index"
+
+#: src/LYMainLoop.c:7751
+msgid "lynx: Can't access startfile"
+msgstr "lynx: Unzugängliche Startdatei"
+
+#: src/LYMainLoop.c:7763
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: Startdatei nicht gefunden oder nicht text/html oder text/plain"
+
+#: src/LYMainLoop.c:7764
+msgid "      Exiting..."
+msgstr "      Ende..."
+
+#: src/LYMainLoop.c:7805
+msgid "-more-"
+msgstr "-mehr-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Message wird hinterlegt werden in:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Bitte eigene Mailadresse für den From-Header angeben\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Bitte Betreff angeben oder ändern für den Subject-Header\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Bitte Inhalt angeben oder ändern für den Organization-Header\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Bitte Nachricht unten eingeben."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Die Message hat keinen neuen Text!"
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "Lesezeichendateien ((B)ookmark files) ansehen/ändern"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "Lesezeichendatei/(B)ookmark file: "
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr "AN"
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285
+#: src/LYOptions.c:2296
+msgid "OFF"
+msgstr "AUS"
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr "NIE"
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr "IMMER"
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr "ignorieren"
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr "Benutzer fragen"
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr "alle akzeptieren"
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr "IMMER AUS"
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr "NUR FÃœR LOKALE DATEIEN"
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr "IMMER AN"
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr "Zahlen als Pfeiltasten"
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr "Numerierte Links"
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr "Links und Formularfelder numerieren"
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr "Numerierte Formularfelder"
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr "Groß/klein nicht unterscheiden"
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr "Groß/klein unterscheiden<"
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr "normal auffordern"
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr "Ja-Antwort erzwingen"
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr "Nein-Antwort erzwingen"
+
+#: src/LYOptions.c:2242
+msgid "Novice"
+msgstr "Neuling"
+
+#: src/LYOptions.c:2243
+msgid "Intermediate"
+msgstr "Mäßig Geübter"
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr "Fortgeschrittener"
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr "Nach erstem Besuch"
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr "Nach erstem Besuch (rückläufig)"
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr "Als Besuchsbaum"
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr "Nach letztem Besuch"
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr "Nach letztem Besuch (rückläufig)"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr "lässig (TagSoup-Modus)"
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr "strikt (SortaSGML-Modus)"
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr "als Label"
+
+#: src/LYOptions.c:2279
+msgid "as links"
+msgstr "als Links"
+
+#: src/LYOptions.c:2286
+msgid "show filename"
+msgstr "Dateiname anzeigen"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr "STANDARD"
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr "FORTGESCHRITTEN"
+
+#: src/LYOptions.c:2329
+msgid "Directories first"
+msgstr "Verzeichnisse zuerst"
+
+#: src/LYOptions.c:2330
+msgid "Files first"
+msgstr "Dateien zuerst"
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr "Gemischter Stil"
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+msgid "By Name"
+msgstr "Nach Name"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr "Nach Typus"
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+msgid "By Size"
+msgstr "Nach Länge"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+msgid "By Date"
+msgstr "Nach Datum"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr "Nach Modus"
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr "Nach Benutzer"
+
+#: src/LYOptions.c:2346
+msgid "By Group"
+msgstr "Nach Gruppe"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr "Rate nicht anzeigen"
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "%s/sec Rate anzeigen"
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "%s/sec, ETA, anzeigen"
+
+#: src/LYOptions.c:2379
+msgid "Show progressbar"
+msgstr "Fortschrittsbalken zeigen"
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr "lynx interne Typen akzeptieren"
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr "Auch die Typen von lynx.cfg akzeptieren<"
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr "Auch die Typen des Benutzers akzeptieren<"
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr "Auch die Typen des Systems akzeptieren<"
+
+#: src/LYOptions.c:2395
+msgid "Accept all types"
+msgstr "Alle Typen akzeptieren"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr "deflate"
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr "compress"
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr "Alle"
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "%s benutzen, um das Options-Menü aufzurufen"
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr "(mit (!) markierte Optionen werden nicht gespeichert)"
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "Allgmeine Präferenzen"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "User mode"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "Editor"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "Art der Suche"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr "Sicherheit und Datenschutz"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "Kekse (Cookies)"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr "Bei Invalid-Cookie nachfragen"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr "Bei SSL nachfragen"
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "Tastatureingabe"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "Tastaturmodus/Keypad mode"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "Emacstasten"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "VI-Tasten"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr "Art für das Editieren von Zeilen"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr "Tastaturbelegung"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "Display und Zeichensatz"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+msgid "Use locale-based character set"
+msgstr "Locale-basierenden Zeichensatz verwenden"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "Zeichensatz des Displays"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "Angenommene Zeichensatzkodierung"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "CJK-Modus"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "Unkonvertiert (Raw 8-bit)"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "X DISPLAY"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "Aussehen des Dokuments"
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "Farbe zeigen/Show color"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "Positionsmarke zeigen/Show cursor"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+msgid "Underline links"
+msgstr "Links unterstreichen"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr "Scrollbar zeigen"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr "Popups für Select-Felder"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "HTML-Fehlerbehandlung"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "Bilder zeigen"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "Detaillierte Bildinformation"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "Einige Headers für Requests zu Remote Servern verschickt"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "Persönliche Mailadresse"
+
+#: src/LYOptions.c:3760
+msgid "Password for anonymous ftp"
+msgstr "Password für anonymen FTP"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+msgid "Preferred media type"
+msgstr "Erwünschter Medientyp"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+msgid "Preferred encoding"
+msgstr "Erwünschte Kodierung"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "Erwünschter Zeichensatz (Accept-Charset)"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "Erwünschte Dokumentsprache (Accept-Language)"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "Browseridentifizierung (User-Agent)"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "Dateiverzeichnisse anlegen und auf Dateien zugreifen"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr "Passives FTP benutzen"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "Sortierung für FTP-Verzeichnisse"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "Sortierkriterien für lokale Verzeichnisse"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+msgid "Local directory sort order"
+msgstr "Sortierreihenfolge für lokale Verzeichnisse"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "Dateien mit Punkt am Anfang sichtbar"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "Ausführbare Links/Execution links"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr "Ãœbertragungsrate anzeigen"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "Besondere Dateien und Bildschirme"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "Multi-Datei-Lesezeichen"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "Lesezeichendateien ansehen/bearbeiten"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "Zum Multi-Lesezeichenmenü"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "Lesezeichendatei"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr "Auto-Session"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr "Session-Datei"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "Besuchte Seiten"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr "Die Datei ansehen "
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr "Druckauftrag erledigt.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Dokument:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Anzahl Zeilen:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Seiten:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "Seiten"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "Seite"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(geschätzt)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Einige Druckfunktionen sind ausgeschaltet!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Normale Druckoptionen:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Druckoptionen:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "In lokale Datei speichern"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Speichern auf Disk nicht erlaubt"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Datei als Mail schicken"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Druckausgabe auf Bildschirm"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Ausgabe auf Drucker verbunden mit VT100-Terminal"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Syntaxfehler beim Parsen von COLOR in Konfigurationsdatei:\n"
+"Die Zeile muss die folgende Form haben:\n"
+"COLOR:NUMMER:VORDERGRUND:HINTERGRUND\n"
+"\n"
+"Dabei müssen VORDERGRUND und HINTERGRUND eins der folgenden sein:\n"
+"Die speziellen Wörter 'nocolor' oder 'default', oder\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Zeile mit Fehler:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "Remapping der Taste von %s zu %s für %s fehlgeschlagen\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "Umbelegung der Taste von %s zu %s fehlgeschlagen\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "ungültige Zeilen-Editor-Auswahl %s für Taste %s, wähle alle aus\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "Zeileneditor-Bindung der Taste %s (0x%x) an Wert 0x%x für %s ungültig\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "Zeileneditor-Bindung der Taste %s (0x%x) für %s ungültig\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: Programmstart verweigert, Regeldatei %s (CERN rules file) nicht verfügbar\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(ohne Namen)"
+
+#: src/LYReadCFG.c:1882
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Mehr als %d geschachtelte lynx.cfg-Includes -- wohl eine Schleife?!?\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "letztes INCLUDE war für '%s',\n"
+
+#: src/LYReadCFG.c:1885
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "enthalten in '%s'.\n"
+
+#: src/LYReadCFG.c:2289 src/LYReadCFG.c:2302 src/LYReadCFG.c:2360
+msgid "The following is read from your lynx.cfg file."
+msgstr "Folgendes ist der aktuellen Konfigurationsdatei entnommen."
+
+#: src/LYReadCFG.c:2290 src/LYReadCFG.c:2303
+msgid "Please read the distribution"
+msgstr "Bitte die installierte Konfigurationsdatei"
+
+#: src/LYReadCFG.c:2296 src/LYReadCFG.c:2306
+msgid "for more comments."
+msgstr ""
+" \n"
+"für weitere Erläuterungen ansehen."
+
+# Looks dangerous to me, so I sneak in a warning. - kw
+#: src/LYReadCFG.c:2342
+msgid "RELOAD THE CHANGES"
+msgstr "NEULADEN NACH ÄNDERUNG, AUF EIGENE GEFAHR!"
+
+#: src/LYReadCFG.c:2350
+msgid "Your primary configuration"
+msgstr "Ihre primäre Konfiguration"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "Zurzeit angeschautes Verzeichnis"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Name:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr " URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "Zurzeit ausgewähltes Verzeichnis"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "Zurzeit ausgewählte Datei"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "Zurzeit ausgewählter symbolischer Link"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "Zurzeit ausgewähltes Objekt"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "  Pfadname:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "Kann dem Link nicht folgen"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "      Zeigt auf:"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "Name des Besitzers:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Gruppenname:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Dateilänge:"
+
+#: src/LYShowInfo.c:227
+msgid "(bytes)"
+msgstr "(Bytes)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Erzeugungsdatum:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Letzte Änderung:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Letzter Zugriff:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Zugriffsrechte"
+
+#: src/LYShowInfo.c:279
+msgid "Group:"
+msgstr "Gruppe:"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr "Welt:"
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Zurzeit angeschautes Dokument"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Linkname:"
+
+# Some of the following stuff is highly technical, so leave as English
+# (or whatever the language of protocol elements is...) - kw
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Charset:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr "(vermutet)"
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Server:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Datum:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Geändert:"
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr "Expires:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Cache-Control:"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr "Länge:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Language:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "POST-Daten:"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "POST-Content-Type:"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Besitzer:"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "Länge:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "Zeilen"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "Formmodus"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "Quelltext"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "normal"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", sicher"
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ", durch internen Link"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", no-cache"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", ISMAP-Script"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", Lesezeichendatei"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "Modus:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Zurzeit ausgewählter Link"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Methode:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "Enctype:"
+
+#: src/LYShowInfo.c:436
+msgid "Action:"
+msgstr "Aktion:"
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(Formfeld)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "Keine Links auf dieser Seite"
+
+#: src/LYShowInfo.c:455
+msgid "Server Headers:"
+msgstr "Server-Headers:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Syntaxfehler beim Parsen eines style's in lss-Datei:\n"
+"[%s]\n"
+"Die Zeile muss die folgende Form haben:\n"
+"OBJECT:MONO:COLOR (z.B. em:bold:brightblue:white)\n"
+"wobei OBJECT eins von EM,STRONG,B,I,U,BLINK usw. ist.\n"
+"\n"
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "hier ist eine Auflistung des History-Stacks zur Rekonstruktion"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "FEHLER! - Upload-Befehl ist falsch konfiguriert"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Unerlaubte Umleitung \"../\" gefunden! Befehl ignoriert."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Ungültiges Zeichen \"/\" gefunden! Befehl ignoriert."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Unerlaubte Umleitung mit \"~\" gefunden! Befehl ignoriert."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Upload für Datei nicht möglich."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Upload - wohin:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Upload-Optionen:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr "URL des Download-Dokuments in das Clipboard gespeichert."
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Unerwartetes Zugangsprotokoll für dieses URL-Schema."
+
+#: src/LYUtils.c:3423
+msgid "Too many tempfiles"
+msgstr "Zu viele temporäre Dateien"
+
+#: src/LYUtils.c:3723
+msgid "unknown restriction"
+msgstr "unbekannte Beschränkung"
+
+#: src/LYUtils.c:3754
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Keine Beschränkungen gesetzt.\n"
+
+#: src/LYUtils.c:3757
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Aktuelle Beschränkungen:\n"
+
+#: src/LYUtils.c:5135
+msgid "Cannot find HOME directory"
+msgstr "Das HOME-Verzeichnis ist nicht zu finden"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Normalerweise nicht aktiviert.  Siehe ENABLE_LYNXRC in lynx.cfg.\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies erlaubt es, Lynx zu sagen, dass alle Kekse (Cookies)\n"
+"akzeptiert werden sollen, falls dies Verhalten erwünscht ist.\n"
+"Die Normaleinstellung ist \"FALSE\", so dass normalerweise bei jedem Keks\n"
+"gefragt wird.  Auf \"TRUE\" setzen, um alle Kekse zu akzeptieren.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"anonftp_password ermöglicht es dem Benutzer, Lynx zu sagen, dass\n"
+"es die persönliche Emailadresse als Passwort für anonymes FTP verwenden\n"
+"soll. Wenn kein Wert angegeben ist, benutzt Lynx die persönliche\n"
+"Emailadresse. Setzen Sie anonftp_password auf einen anderen Wert,\n"
+"wenn Sie wollen.\n"
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file gibt Name und Ort der normalen Lesezeichendatei (default\n"
+"bookmark file) an. Der Benutzer kann die URLs von Links an die\n"
+"Lesezeichendatei anfügen, so dass Dokumente später leicht wiedergefunden\n"
+"werden können.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Wenn case_sensitive_searching auf \"on\" gesetzt ist, dann werden mit\n"
+"den Tasten 's' oder '/' gestartete Suchen mit Vergleichsoperationen\n"
+"durchgeführt, die groß-/kleinschreibungsempfindlich sind, statt\n"
+"Kapitalisierung zu ignorieren. Die übliche Einstellung ist \"off\".\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"Die Definition von character_set bestimmt die Darstellung von 8-Bit-\n"
+"Zeichen auf dem Bildschirm. Falls 8-Bit-Zeichen nicht korrekt gezeigt\n"
+"werden, können Sie versuchen, zu einem anderen 8-Bit-Zeichensatz zu\n"
+"wechseln oder die \"7 bit approximations (US-ASCII)\" mit näherungs-\n"
+"weisen Ersatzdarstellungen zu verwenden.\n"
+"Zurzeit gültige Werte sind:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains und cookie_reject_domains sind kommaseparierte\n"
+"Listen von Domains (mit führendem '.'), von denen alle Kekse automatisch\n"
+"akzeptiert oder verweigert werden sollen. Der Parameter accept_all_cookies\n"
+"parameter hat jedoch Vorrang über jedwede Einstellungen, die durch diese\n"
+"Listen gemacht werden. Wenn dieselbe Domain in cookie_accept_domains und\n"
+"in cookie_reject_domains erscheint, hat die Verweigerung vorrang.\n"
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file gibt die Datei an, von der langlebige Kekse gelesen werden.\n"
+"Standardeinstellung ist ~/"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains und\n"
+"cookie_query_invalid_domains sind durch Kommas getrennte Listen von\n"
+"Internet-Domänen, die unterschiedlich strikten Gültigkeitstests\n"
+"unterzogen werden sollten. Wenn eine Domäne auf genaue Gültigkeit\n"
+"gesetzt ist, wird auf strikte Erfüllung von RFC2109 untersucht. Eine\n"
+"Domäne mit schwacher Gültigkeit kann Kekse mit einem ungültigen\n"
+"Pfad oder einem ungültigen Domänen-Attribut ablegen. Alle Domänen\n"
+"fragen grundsätzlich den Benutzer bei ungültigen Pfaden oder Domänen\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order bestimmt die Ordnung der Verzeichnislisten unter DIRED_SUPPORT\n"
+"(falls eingebaut).  Die Vorgabe ist \"ORDER_BY_NAME\".\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles bestimmt den Stil von Verzeichnislisten unter DIRED_SUPPORT\n"
+"(falls eingebaut). Die Normaleinstellung ist \"MIXED_STYLE\", d.h. sowohl\n"
+"Dateien als auch Verzeichnisse werden gemeinsam sortiert.\n"
+"Mit \"FILES_FIRST\" werde normale Dateien zuerst aufgelistet, und mit\n"
+"\"DIRECTORIES_FIRST\" kommen Verzeichnisse zuerst.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Wenn emacs_keys auf \"on\" gesetzt ist, werden die im Editor EMACS\n"
+"üblichen Bewegungstasten aktiviert:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor gibt das Programm an, das als Editor benutzt wird, wenn lokale\n"
+"Dateien geändert werden sollen oder wenn Mail geschickt werden soll.\n"
+"Wenn kein Editor angegeben ist, ist Editieren nicht möglich, außer wenn es\n"
+"von der Befehlszeile aus aktiviert wird, und der eingebaute Zeileneditor\n"
+"wird für das Schicken von Mail benutzt.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method gibt an, nach welchem Feld Dateilisten\n"
+"wie z.B. FTP-Verzeichnisse sortiert werden sollen.\n"
+"Die möglichen Optionen sind:\n"
+"   BY_FILENAME -- sortiert nach Dateinamen\n"
+"   BY_TYPE     -- sortiert nach Dateityp\n"
+"   BY_SIZE     -- sortiert nach Dateilänge\n"
+"   BY_DATE     -- sortiert nach Änderungsdatum\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode gibt an, welche Tastaturbindungen für die Zeicheneingabe\n"
+"in Prompts un Formfeldern verwendet werden. Wenn lineedit_mode auf\n"
+"\"Default Binding\" gesetzt ist, werden die folgenden Kontrollzeichen\n"
+"zum Bewegen und Löschen benutzt:\n"
+"\n"
+"         rückwärts/vorwärts    Enter = Eingabe =      Accept input\n"
+"Einzelzeichen: <-    ->        ^G    = Abbruch       (Cancel input)\n"
+"  ganzes Wort: ^P    ^N        ^U    = Zeile Löschen (Erase line)\n"
+"Lösch Zeichen: ^H    ^R        ^A    = Zeilenanfang  (Beginning of line)\n"
+"  Lösche Wort: ^B    ^F        ^E    = Zeilenende    (End of line)\n"
+"\n"
+"Zurzeit verfügbare Bindungen sind:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Im folgenden können Unterlesezeichendateien (sub-bookmark files)\n"
+"un ihre Beschreibungen definiert werden.  Das Format ist\n"
+"multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Bis zu 26 Lesezeichendateien (für die im Englischen verwendeten\n"
+"Großbuchstaben) sind erlaubt.\n"
+"Wir beginnen mit \"multi_bookmarkB\", da 'A' schon für normale\n"
+"Lesezeichen (siehe oben) benutzt wird.\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address gibt die persönliche Mailadresse des Benutzers an.\n"
+"Die Adresse wird für das Schicken von Kommentaren als Mail benutzt,\n"
+"und kann auch bei Zugriff zu einem HTTP-Server für Autorisierungs-\n"
+"und Logging-Zwecke in einem Header gesandt werden.  Letztere Nutzung\n"
+"ist normalerweise ausgeschaltet um personenbezogene Daten zu schützen,\n"
+"kann aber durch Setzen von NO_FROM_HEADER in lynx.cfg oder durch den\n"
+"Switch -from in der Befehlszeile aktiviert werden.\n"
+"Dieses Feld könnte hier auch leergelassen werden, aber dann wird die\n"
+"Absenderadresse in Mail-Kommentaren fehlen.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset gibt Zeichensatz und -kodierung (charset) in MIME-\n"
+"Notation an (z.B. ISO-8859-2, ISO-8859-5), Lynx benutzt diese Einstellung\n"
+"um einem HTTP-Server im Accept-Charset-Header mitzuteilen, welches der\n"
+"vorgezogene charset ist. Eine kommaseparierte Liste ist auch möglich.\n"
+"Die Werte ISO-8859-1 oder US-ASCII sollten NICHT explizit angegeben\n"
+"werden, da diese bereits als default vorausgesetzt werden.\n"
+"Falls eine Datei mit verlangtem charset vorhanden ist, sollte der Server\n"
+"sie dann schicken.  (Bei Abwesenheit eines Accept-Charset-Headers im\n"
+"Request gilt jeder beliebige charset als akzeptabel.)  Wenn der\n"
+"Accept-Charset-Header geschickt wird, der Server aber keine dem-\n"
+"entsprechend akzeptable Antwort schicken kann, dann sollte der Server\n"
+"mit einer Fehlermeldung antworten, das Senden einer Antwort mit\n"
+"nichtpassendem charset ist allerdings auch erlaubt.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language gibt eine Sprache oder mehrere Sprachen in MIME-\n"
+"Notation an (z.B. en oder fr, kann auch eine kommaseparierte, nach\n"
+"abnehmender Präferenz geordnete Liste sein).\n"
+"Lynx übermittelt die angegebene Sprachpräferenz in Requests zum\n"
+"HTTP-Server. Der Server sollte dann eine Datei in der vorgezogenen\n"
+"Sprache zurückschicken, falls vorhanden; andernfalls antwortet der\n"
+"Server in der für den Server (und die Datei) üblichen Sprache.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Wenn run_all_execution_links auf \"on\" gesetzt ist, werden alle \"local\n"
+"execution links\" ausgeführt, wenn sie aktiviert (ausgewählt) werden.\n"
+"\n"
+"WARNUNG - Dies ist potentiell SEHR gefährlich. Da Sie Dokumente ansehen\n"
+"          können, die von unbekannten oder verdächtigen Quellen stammen,\n"
+"          besteht die Möglichkeit, dass jemand Ihnen einen Link unterschiebt,\n"
+"          der wie ein trojanisches Pferd unerwünschten Zugang gestattet.\n"
+"          Solche trojanischen links könnten so geschrieben sein, dass sie\n"
+"          Dateien löschen oder die Sicherheit kompromittieren.\n"
+"          Die Einstellung sollte nur dann auf \"on\" gesetzt werden, wenn\n"
+"          die angeschauten Dokumente von einer vertrauenswürdigen Quelle\n"
+"          kommen.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Wenn run_execution_links_on_local_files auf \"on\" gesetzt ist, dann werden\n"
+"alle \"local execution links\", die in LOKALEN Dateien gefunden wurden,\n"
+"ausgeführt, wenn sie aktiviert (ausgewählt) werden.\n"
+"Dies underscheidet sich von run_all_execution_links, insofern als nur\n"
+"für Dateien, die sich auf dem lokalen System befinden, Erlaubnis zur\n"
+"Ausführung gegeben wird.\n"
+"\n"
+"WARNUNG - Dies ist potentiell gefährlich. Da Sie Dokumente ansehen\n"
+"          können, die von unbekannten oder verdächtigen Quellen stammen,\n"
+"          besteht die Möglichkeit, dass jemand Ihnen einen Link unterschiebt,\n"
+"          der wie ein trojanisches Pferd unerwünschten Zugang gestattet.\n"
+"          Solche trojanischen links könnten so geschrieben sein, dass sie\n"
+"          Dateien löschen oder die Sicherheit kompromittieren.\n"
+"          Die Einstellung sollte nur dann auf \"on\" gesetzt werden, wenn\n"
+"          die angeschauten Dokumente von einer vertrauenswürdigen Quelle\n"
+"          kommen.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups bestimmt, ob OPTIONs in einem SELECT-Block ohne das\n"
+"Attribute MULTIPLE als eine vertikale Liste von Radio-Buttons oder\n"
+"als Popup-Menü präsentiert werden. Es sei bemerkt, dass Lynx immer eine\n"
+"vertikale Liste von Checkboxes erzeugt, wenn das Attribut MULTIPLE im\n"
+"Start-Tag SELECT vorhanden ist. Der Wert \"on\" macht Popup-Menüs zum\n"
+"Normalverhalten, während der Wert \"off\" die Benutzung von Radio-Buttons\n"
+"zum Normalverhalten macht.  Die normale Einstellung kann durch den\n"
+"Toggle-Switch -popup in der Befehlszeile verändert werden.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color gibt den Farbmodus bei Programmstart an. Die Einstellung\n"
+"\"never\" schaltet Farbunterstützung in Lynx aus (so dass das Terminal\n"
+"als Schwarzweißbildschirm behandelt wird), sogar wenn es scheint dass\n"
+"das Terminal farbfähig ist. Die Einstellung \"always\" erzwingt die\n"
+"Aktivierung des Farbmodus in Lynx, sogar wenn der Terminaltyp nicht\n"
+"farbfähig zu sein scheint, falls die Programmbibliothek, mit der Lynx\n"
+"kompiliert und gelinkt wurde, dies zulässt.\n"
+"Wenn die Einstellung als \"default\" gespeichert ist, ist das Verhalten\n"
+"wie folgt:  Farbunterstützung im Terminal wird angenommen falls beim\n"
+"Programmstart die Beschreibung des Terminaltyps Farbfähigkeit anzeigt\n"
+"oder der Switch -color in der Befehlszeile verwendet wird oder die\n"
+"Umgebungsvariable COLORTERM gesetzt ist. Dieses \"default\"-Verhalten\n"
+"trifft außerdem für anomyme Acounts immer zu, und wenn die \"option_save\"\n"
+"Restriction gesetzt ist.\n"
+"Der Effekt der gespeicherten Einstellung kann durch -color oder -nocolor\n"
+"in der Befehlszeile aufgehoben werden.\n"
+"Der beim Programmstart gesetzte Modus kann mittels der Option \"show color\"\n"
+"im 'O'ptionsmenü geändert werden. Wenn die Optionseinstellungen gespei-\n"
+"chert werden, werden die Werte \"on\" und \"off\" für \"show color\" als\n"
+"\"default\" behandelt.\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor gibt an ob der Cursor (Schreibmarke) am rechten Bildschirmrand\n"
+"(und wennmöglich in der underen Ecke) 'versteckt' werden sollte, oder ob\n"
+"er links vom aktuellen Link oder der ausgewählten Option in Popup-Fenstern\n"
+"erscheinen soll.  Die Plazierung links von ausgewähltem Link oder Option\n"
+"ist nützlich für Sprach- und Brailleschnittstellen, und wenn das Terminal\n"
+"eines ist, welches nicht durch Hervorhebung oder Farbe die Unterscheidung \n"
+"des ausgewählten Links zulässt. Der Wert \"on\" bewirkt, dass der Cursor links\n"
+"von Links erscheint, der Wert \"off\" bewirkt 'Verstecken' des Cursors.\n"
+"Die gewählte Einstellung kann durch den Toggle-Switch -show_cursor in\n"
+"der Befehlszeile geändert werden.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles gibt an dass in der Auflistung von Verzeichnissen\n"
+"\"versteckte\" (dot-)Dateien und Verzeichnisse enthalten sein sollten.\n"
+"Die Einstellung \"on\" wird nur honoriert, wenn die durch userdefs.h\n"
+"und/oder lynx.cfg gegebenen Einstellungen dies erlauben und keine\n"
+"Restriktion von der Befehlszeile in Kraft ist.  Wenn die Anzeige\n"
+"von versteckten Dateien ausgeschaltet ist, ist auch die Erzeugung\n"
+"solcher Dateien von Lynx aus nicht erlaubt.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Wenn sub_bookmarks nicht \"off\" ist und Multi-Datei-Lesezeichen (multiple\n"
+"bookmarks) definiert sind (siehe unten), dann werden alle Lesezeichen-\n"
+"operationen als ersten den Benutzer bitten, eine aktive Unterlesezeichen-\n"
+"datei auszuwählen. Das normale bookmark_file wird als Vorgabe vorge-\n"
+"schlagen, fall es definiert ist (siehe oben). Wenn diese Option auf\n"
+"\"advanced\" (= fortgeschritten) gesetzt ist und der Benutzermodus (user\n"
+"mode) auch advanced ist, dann führt der Tastenbefehl 'v'iew bookmark\n"
+"zu einer Statuszeilenfrage statt zu dem Menü, welches erscheint wenn\n"
+"der Benutzermodus novice oder intermediate ist. Wenn diese Option auf\n"
+"\"standard\" gesetzt ist, dann erscheint das letzgenannt Menü immer,\n"
+"unabhängig vom Benutzermodus.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode bestimmt den Benutzermodus, das Kenntnisniveau des Benutzers\n"
+"im Umgang mit Lynx. Wenn nicht anders angegeben, wird die Einstellung\n"
+"\"NOVICE\" verwendet. In diesem Modus werden zwei zusätzliche Zeilen mit\n"
+"Hilfsinformationen am unteren Bildschirmrand gezeigt, um dem Benutzer zu\n"
+"helfen, die grundlegenden Tastaturbefehle für Lynx zu lernen.\n"
+"Wenn user_mode auf \"INTERMEDIATE\" gesetzt wird, werden die Extrazeilen\n"
+"ausgeschaltet.  Im Modus \"ADVANCED\" wird außerdem der URL des gerade\n"
+"ausgewählten Links am unteren Bildschirmrand angezeigt.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Wenn verbose_images auf \"on\" gesetzt ist, zeigt Lynx den Dateinamen\n"
+"der Bildquelle anstelle von [INLINE], [LINK] or [IMAGE] an.\n"
+"Siehe auch VERBOSE_IMAGES in lynx.cfg.\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Wenn vi_keys auf \"on\" gesetzt ist, werden die im Editor VI üblichen\n"
+"Bewegungstasten aktiviert:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"Diese Einstellung wirkt sich nur auf die Kleinbuchstaben aus.\n"
+"Die Wirkung der Großbuchstaben 'H', 'J' and 'K' bleibt unverändert,\n"
+"diese können daher zur gleichen Zeit immer noch verwendet werden um\n"
+"die normalen Aktionen (activate help, jump shortcuts, keymap display)\n"
+"auszulösen.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"Die visited_links Einrichtung legt fest, wie Lynx die Informationen\n"
+"auf der Seite für besuchte Links organisiert.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Wenn keypad_mode auf \"NUMBERS_AS_ARROWS\" gesetzt ist, dann werden die\n"
+"meisten Ziffern als entsprechende Bewegungstasten vom Ziffernblock\n"
+"der üblichen Tastatur behandelt. Dadurch können diese Tasten als\n"
+"Pfeiltasten verwendet werden, wenn \"Numlock\" aktiv ist.\n"
+"\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"Die über den Buchstaben gelegenen Zifferntasten haben dann natürlich\n"
+"denselben Effekt, unabhängig vom \"Numlock\"-Zustand.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Wenn keypad_mode auf \"LINKS_ARE_NUMBERED\" gesetzt ist, dann werden\n"
+"Links mit einer sichtbaren Nummerierung versehen, und Zifferntasten\n"
+"können zur Auswahl von Links benutzt werden.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Wenn keypad_mode auf \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" gesetzt ist,\n"
+"dann werden Links und sichtbare Formfelder mit nebenstehend erscheinender\n"
+"Nummerierung versehen, und Zifferntasten können zur Auswahl von Links oder\n"
+"für Positionierung auf Formeingabefelder und -buttons verwendet werden. \n"
+"Zusätzlich werden auch Optionen in Popup-Menüs durchnummeriert, so dass\n"
+"eine Option durch Eingabe der entsprechenden Nummer ausgewählt werden\n"
+"kann (sogar wenn die gewünschte Option nicht im gerade auf dem Bildschirm\n"
+"sichtbaren Bereich des Popup-Menüs liegt). Außerdem werden Formfelder\n"
+"auch in Verweislisten und im Ergebnis des Tastenbefehls 'L'ist nummeriert\n"
+"aufgelistet.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"Warnung: Einige Dokumente mit fixem Format können unschön aussehen,\n"
+"wenn \"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\"\n"
+"eingeschaltet ist.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"Lynx-Benutzereinstellungs-Datei\n"
+"\n"
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"Diese Datei enthält Optionen, die aus dem Lynx-Optionsschirm gespeichert\n"
+"wurden (normalerweise mit der Taste \"o\"). Um die Optionen mit diesem Schirm\n"
+"zu speichern, müssen Sie das Kästchen ankreuzen:\n"
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+"Danach müssen Sie die Einstellungen speichern, indem Sie dem Link in\n"
+"der Zeile über dem Ankreuzkästchen folgen:\n"
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"Sie können auch die Kommandozeilenoption \"-forms_options\" benutzen, die\n"
+"ein einfachereres Menü anzeigt. Speichern Sie die Optionen damit, indem Sie\n"
+"die Taste \">\" drücken.\n"
+"\n"
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"Diese Datei enthält Optionen, die aus dem Lynx-Options-Bildschirm gespeichert\n"
+"wurden (normalerweise mit der Taste \">\").\n"
+"\n"
+
+#: src/LYrcFile.c:910
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Normalerweise braucht diese Datei nicht manuell editiert zu werden, da\n"
+"die Einstellungen hier von der Optionsseite kontrolliert werden können.\n"
+"Außerdem wird diese Datei das nächste Mal, wenn Optionen von der\n"
+"Optionsseite gespeichert werden, komplett überschrieben. Sie sind\n"
+"gewarnt worden...\n"
+"Wenn Sie nach der generellen Konfigurationsdatei suchen - da sind sie\n"
+"hier am falschen Ort.  Die generelle Konfigurationsdatei wird üblicherweise\n"
+"lynx.cfg genannt, und ihr Inhalt und Format ist verschieden. Das hier ist\n"
+"sie jedenfalls nicht.\n"
+
+#~ msgid "Socket read failed for 180,000 tries."
+#~ msgstr "Lesefehler nach 180.000 Versuchen."
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "Maximum für History-Liste erreicht! Dokument nicht auf Stapel abgelegt."
+
+#~ msgid "reason unknown."
+#~ msgstr "Grund nicht bekannt."
+
+#~ msgid "Remove '%s' and all of its contents?"
+#~ msgstr "'%s' mit gesamtem Inhalt entfernen?"
+
+#~ msgid "Remove directory and all of its contents?"
+#~ msgstr "Verzeichnis und gesamten Inhalt löschen?"
+
+#~ msgid "Short read from file, problem?"
+#~ msgstr "Datei unvollständig gelesen; gibt es ein Problem?"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "Dateimanagement-Menüdatei kann nicht geöffnet werden."
+
+#~ msgid "Ignoring invalid HOME"
+#~ msgstr "Ungültiger Wert für HOME wird ignoriert"
+
+#~ msgid "This special URL is not allowed as a goto!"
+#~ msgstr "Das Gehen zu diesem speziellen URL ist nicht erlaubt!"
+
+#~ msgid "Option choice (or page) number: "
+#~ msgstr "Optionswahl (oder Seite) Nummer: "
+
+#~ msgid "Choice number %d already is current."
+#~ msgstr "Aktuelle Wahl ist schon Nummer %d."
+
+#~ msgid "You are already at the end of this choice list."
+#~ msgstr "Schon am Ende der Auswahlliste."
+
+#~ msgid "You are already at the beginning of this choice list."
+#~ msgstr "Schon am Anfang der Auswahlliste."
+
+#~ msgid "You are already at page %d of this choice list."
+#~ msgstr "Schon auf Seite %d der Auswahlliste."
+
+#~ msgid "You have entered an invalid choice number."
+#~ msgstr "Ungültige Auswahlnummer eingegeben."
+
+#~ msgid "(From Cookie Jar)"
+#~ msgstr "(Aus Keksbeutel)"
+
+#~ msgid "Inactive text input, activate to edit (e.g., press ENTER)"
+#~ msgstr "Inaktive Texteingabe, für Eingabe erst aktivieren (z.B. ENTER drücken)"
+
+#~ msgid "Left mouse button or return to select, arrow keys to scroll."
+#~ msgstr "RETURN oder linke Maustaste wählt aus, Pfeiltasten zum Auf- und Abbewegen."
diff --git a/po/eo.po b/po/eo.po
new file mode 100644
index 00000000..3ce1a9ef
--- /dev/null
+++ b/po/eo.po
@@ -0,0 +1,6186 @@
+# Esperanto translation of Lynx.
+# This file is distributed under the same license as the lynx package.
+# Translators:
+# Keith Bowes <zooplah@gmail.com>, 2011.
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.8-dev9\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-02-12 19:13-0500\n"
+"PO-Revision-Date: 2012-02-15 12:30-0500\n"
+"Last-Translator: Keith Bowes <zooplah@gmail.com>\n"
+"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
+"Language: eo\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:27
+#, c-format
+msgid "Alert!: %s"
+msgstr "Averto!: %s"
+
+#: LYMessages.c:28
+msgid "Welcome"
+msgstr "Bonvenon"
+
+#: LYMessages.c:29
+msgid "Are you sure you want to quit?"
+msgstr "Ĉu vi certas, ke vi volas eliri?"
+
+#: LYMessages.c:31
+msgid "Really exit from Lynx?"
+msgstr "Ĉu efektive eliri el Linko?"
+
+#: LYMessages.c:33
+msgid "Connection interrupted."
+msgstr "Konekto interrompita."
+
+#: LYMessages.c:34
+msgid "Data transfer interrupted."
+msgstr "Datumo-transigo interrompita."
+
+#: LYMessages.c:35
+msgid "Cancelled!!!"
+msgstr "Nuligita!"
+
+#: LYMessages.c:36
+msgid "Cancelling!"
+msgstr "Nuliganta!"
+
+#: LYMessages.c:37
+msgid "Excellent!!!"
+msgstr "Bonege!"
+
+#: LYMessages.c:38
+msgid "OK"
+msgstr "Bone"
+
+#: LYMessages.c:39
+msgid "Done!"
+msgstr "Finita!"
+
+#: LYMessages.c:40
+msgid "Bad request!"
+msgstr "FuÅan peton!"
+
+#: LYMessages.c:41
+msgid "previous"
+msgstr "antaÅ­a"
+
+#: LYMessages.c:42
+msgid "next screen"
+msgstr "sekva ekranpleno"
+
+# ??u komando al komputilo a?? ??u al uzanto?
+#: LYMessages.c:43
+msgid "HELP!"
+msgstr "Helpu min!"
+
+#: LYMessages.c:44
+msgid ", help on "
+msgstr ", helpo pri"
+
+#. #define HELP
+#: LYMessages.c:46
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Komandoj: Uzu la sagoklavojn por movi, '?' por helpo, 'q' por eliri, '<-' por retroiri."
+
+#. #define MOREHELP
+#: LYMessages.c:48
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- premu spacetklavon por la sekva ekranpleno, uzu sagoklavojn por movi, '?' por helpo, 'q' por eliri."
+
+#: LYMessages.c:49
+msgid "-- press space for next page --"
+msgstr "-- premu spacetklavon por la sekva ekranpleno --"
+
+#: LYMessages.c:50
+msgid "URL too long"
+msgstr "Retadreso tro longas"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:56
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Teksta kampo) Neaktiva. Premu enen-klavon por aktivigi."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:58
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Tekstregiono) Neaktiva. Premu enen-klavon por aktivigi."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:60
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Tekstregiono) Neaktiva. Premu enen-klavon por aktivigi (%s por tekstoredaktilo)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:62
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Formulara kampo) Neaktiva. Uzu enen-klavon por redakti."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:64
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Formulara kampo) Neaktiva. Uzu enen-klavon por redakti (%s por sendi ignorante la tenejon)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:66
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Formulara kampo) Neaktiva. Premu enen-klavon por redakti. Premu enen-klavon dufoje por sendi."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:68
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(retpoÅta kampo) Neaktiva. Premu enen-klavon por ÅanÄi."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:70
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Pasvorta kampo) Neaktiva. Premu enen-klavon por aktivigi."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:73
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEÅœANÄœEBLA kampo. Uzu la supran aÅ­ suban sagoklavojn aÅ­ tabon por movi de Äi."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:75
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Dosiera kampo) Enmetu dosiernomon. Uzu la supran aÅ­ suban sagoklavojn aÅ­ tabon por movi de Äi."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:77
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Teksta kampo) Enmetu tekston. Uzu la supran aÅ­ suban sagoklavojn aÅ­ tabon por movi de Äi."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:79
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Tekstregiono) Enmetu tekston. Uzu la supran aÅ­ suban sagoklavojn aÅ­ tabon por movi de Äi."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:81
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Tekstregiono) Enmetu tekston. Uzu la supran aÅ­ suban sagoklavojn aÅ­ tabon por movi de Äi (%s por tekstoredaktilo)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:83
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEÅœANÄœEBLA teksta kampo. Uzu la supran aÅ­ suban sagoklavojn aÅ­ tabon por movi de Äi (%s por tekstoredaktilo)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:85
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Teksta kampo) Enmetu tekston. Uzu enen-klavon por sendi."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:87
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Formulara kampo) Enmetu tekston. Uzu enen-klavon por sendi (%s por neniu tenejo)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:89
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Formulara kampo) Enmetu tekston. Uzu enen-klavon por sendi, sagoklavojn aÅ­ tabon por movi de Äi."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:91
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEÅœANÄœEBLA formulara kampo. Uzu supran aÅ­ suban sagoklavojn por movi de Äi."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:93
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(retpoÅta kampo) Enmetu tekston. Uzu enen-klavon por sendi, sagoklavojn por de movi de Äi."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:95
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(retpoÅta kampo) RetpoÅto estas malaktiva. Vi ne eblas sendi tion."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:97
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Pasvorta kampo) Enmetu tekston. Uzu supran aÅ­ suban sagoklavojn por movi de Äi."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:99
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEÅœANÄœEBLA pasvorto. Uzu supran aÅ­ suban sagoklavojn por movi de Äi."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:101
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Markobutono) Uzu la dekstran sagoklavon aÅ­ enen-klavon por inversigi."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:103
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEÅœANÄœEBLA markobutono. Uzu supran aÅ­ suban sagoklavojn por movi de Äi."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:105
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Radiobutono) Uzu la dekstran sagoklavon aÅ­ la enen-klavon por inversigi."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:107
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "NEÅœANÄœEBLA radiobutono. Uzu supran aÅ­ suban sagoklavojn por movi de Äi."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:109
+msgid "Submit ('x' for no cache) to "
+msgstr "Sendi ('x' por neniu konservado) al "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:111
+msgid "Submit to "
+msgstr "Sendi al "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:113
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Sendobutono) Uzu la dekstran sagoklavon aÅ­ enen-klavon por sendi ('x' por neniu tenejo)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:115
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Sendobutono) Uzu la dekstran sagoklavon aÅ­ enen-klavon por sendi."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:117
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "MALAKTIVA sendobutono. Uzu supran aÅ­ suban sagoklavojn por movi de Äi."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:119
+msgid "Submit mailto form to "
+msgstr "Sendi retpoÅtan formularon al "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:121
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(retpoÅta sendobutono) Uzu la dekstran sagoklavon aÅ­ enen-klavon por sendi."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:123
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(retpoÅta sendobutono) RetpoÅto estas malaktiva. Vi ne eblas sendi tion."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:125
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Restarigobutono) Uzu la dekstran sagoklavon aÅ­ enen-klavon por restarigi la kampojn."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:127
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "MALAKTIVA restarigobutono. Uzu supran aÅ­ suban sagoklavojn aÅ­ tabon por movi de Äi."
+
+#. #define FORM_LINK_BUTTON_MESSAGE
+#: LYMessages.c:129
+msgid "(Script button)   Use UP or DOWN arrows or tab to move off."
+msgstr "(Skriptobutono) Uzu supran aÅ­ suban sagoklavojn aÅ­ tabon por movi de Äi."
+
+#. #define FORM_LINK_BUTTON_DIS_MSG
+#: LYMessages.c:131
+msgid "DISABLED Script button.  Use UP or DOWN arrows or tab to move off."
+msgstr "MALAKTIVA skriptobutono. Uzu supran aÅ­ suban sagoklavojn aÅ­ tabon por movi de Äi."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:133
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Elektilo) Premu enen-klavon kaj uzu sagoklavojn kaj enen-klavon por elekti."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:135
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Elektilo) Premu enen-klavon kaj uzu sagoklavojn kaj enen-klavon por elekti."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:137
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "NEÅœANÄœEBLA elektilo. Uzu la enen-klavon aÅ­ sagoklavoj por kontroli aÅ­ forlasi."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:139
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "NEÅœANÄœEBLA elektilo. Uzu la enen-klavon aÅ­ sagoklavoj por kontroli aÅ­ foriri."
+
+#: LYMessages.c:140
+msgid "Submitting form..."
+msgstr "Sendante formularon..."
+
+#: LYMessages.c:141
+msgid "Resetting form..."
+msgstr "Restarigante formularon..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:143
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "ReÅarganta dokumenton. Ĉiuj kampoj estos forviÅitaj!"
+
+#. #define LINK_NOT_IN_FORM
+#: LYMessages.c:145
+msgid "The current link is not in a FORM"
+msgstr "La aktuala ligilo ne estas en formularo"
+
+#: LYMessages.c:146
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Averto: Ne eblas ÅanÄi la signaron de la formularo al %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:149
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(Ordinara ligilo) Uzu la dekstran sagoklavon aÅ­ la enen-klavon por aktivigi."
+
+#: LYMessages.c:150
+msgid "The resource requested is not available at this time."
+msgstr "La risurco petita ne estas aktuale havebla."
+
+#: LYMessages.c:151
+msgid "Enter Lynx keystroke command: "
+msgstr "Enmetu Linko-klavan komandon:"
+
+#: LYMessages.c:152
+msgid "Looking up "
+msgstr "Serĉanta je "
+
+#: LYMessages.c:153
+#, c-format
+msgid "Getting %s"
+msgstr "Ricevante je %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Skipping %s"
+msgstr "Preterpasante je %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Using %s"
+msgstr "Uzante je %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Nevalida retadreso: %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "Badly formed address %s"
+msgstr "FuÅa adreso %s"
+
+#: LYMessages.c:158
+#, c-format
+msgid "URL: %s"
+msgstr "Retadreso: %s"
+
+#: LYMessages.c:159
+msgid "Unable to access WWW file!!!"
+msgstr "Ne eblas atingi TTT-dosieron!"
+
+#: LYMessages.c:160
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Ĉi tio estas serĉebla indekso. Uzu la klavon %s por serĉi."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:162
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Plu-- Ĉi tio estas serĉebla indekso. Uzu la klavon %s por serĉi."
+
+#: LYMessages.c:163
+msgid "You have entered an invalid link number."
+msgstr "Vi enmetis nevalidan ligilan numeron."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:165
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Nune vidatan dokumentan fontotekston. Premu la klavon '\\' por reveni al interpretita versio."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:167
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "Sagoklavoj: Supra kaj suba por movi. Dekstra por sekvi ligilon. Maldekstra por retroiri.\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:169
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "H)elpo O) Agordo P)rinti G) Iri M) Ĉefa fako Q) Eliri /=serĉi [retropaÅo]=historio \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:171
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "O) Aliaj komandoj H)elpo K)lavomapo G) Ŝalti P)rinti M) Ĉefa fako O) Agordaĵoj Q) Eliri  \n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:173
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "O) Aliaj komandoj B) RetropaÅi E) Redakti D) ElÅuti ^R)eÅargi ^W) ForviÅi ekranon serĉi en dokumento: / \n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:175
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O) Aliaj komandoj C) Komenti Historio: <RetropaÅo> Legosignoj: V)idi, A)ldoni, R) Forigi \n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:177
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "           Enmetu tekston en la kampon per tajpado en la klavaro              "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:179
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    ^U por forviÅi la kampon, [RetropaÅo] forigi signon    "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:181
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "    ^U por forviÅi la kampon, [RetropaÅo] forigi signon    "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:183
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s por forviÅi la kampon, [RetropaÅo] forigi signon    "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:185
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "    %s por forviÅi la kampon, [RetropaÅo] forigi signon    "
+
+#. mailto
+#: LYMessages.c:188
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Misformita retpoÅta sendaĵo! Nuligita!"
+
+#: LYMessages.c:189
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Averto! Stirkodoj en retpoÅtadreso anstataÅ­iÄintaj per '?'"
+
+#: LYMessages.c:190
+msgid "Mail disallowed!  Cannot submit."
+msgstr "RetpoÅto malpermesita! Ne eblas sendi."
+
+#: LYMessages.c:191
+msgid "Mailto form submission failed!"
+msgstr "RetpoÅta sendado malsukcesis!"
+
+#: LYMessages.c:192
+msgid "Mailto form submission Cancelled!!!"
+msgstr "RetpoÅta sendado nuligita!"
+
+#: LYMessages.c:193
+msgid "Sending form content..."
+msgstr "Sendante formularan enhavon..."
+
+#: LYMessages.c:194
+msgid "No email address is present in mailto URL!"
+msgstr "Neniu retpoÅtadreso ekzistas en la retadreso!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:196
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Ne eblas malfermi provizoran dosieron por retadreson!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:198
+msgid "Do you wish to include the original message?"
+msgstr "Ĉu vi volas inkluzivi la fontan mesaÄon?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:200
+msgid "Do you wish to include the preparsed source?"
+msgstr "Ĉu vi volas inkluzivi la interpretitan fontotekston?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:202
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Plenumiganta vian tekstoredaktilon por redakti retleteron"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:204
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Eraro dum plenumigi tekstoredaktilon. Kontrolu viajn agordaĵojn"
+
+#: LYMessages.c:205
+msgid "Send this comment?"
+msgstr "Ĉu sendi la komenton?"
+
+#: LYMessages.c:206
+msgid "Send this message?"
+msgstr "Ĉu sendi la mesaÄon?"
+
+#: LYMessages.c:207
+msgid "Sending your message..."
+msgstr "Sendante vian mesaÄon..."
+
+#: LYMessages.c:208
+msgid "Sending your comment:"
+msgstr "Sendante vian komenton:"
+
+#. textarea
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Ne en TEKSTREGIONO; ne eblas uzi eksteran tekstoredaktilon."
+
+#: LYMessages.c:212
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Ne en TEKSTREGIONO; ne eblaas uzi komandon."
+
+#: LYMessages.c:214
+msgid "file: ACTIONs are disallowed!"
+msgstr "Agoj ĉe lokaj dosieroj estas malpermesitaj!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:216
+msgid "file: URLs via served links are disallowed!"
+msgstr "Lokaj servintaj ligiloj estas malpermesitaj!"
+
+#: LYMessages.c:217
+msgid "Access to local files denied."
+msgstr "Atingo de lokaj dosieroj rifuzita."
+
+#: LYMessages.c:218
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "Lokaj dokumentoj en legosignoj estas malpermesitaj!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:220
+msgid "This special URL is not allowed in external documents!"
+msgstr "Ĉi tiu speciala retadreso ne estas permesita en eksteraj dokumentoj!"
+
+#: LYMessages.c:221
+msgid "Press <return> to return to Lynx."
+msgstr "Premu enen-klavon por reiri al Linko."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:224
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Kreante DCL-subprocezon.  Uzu la komandon 'logout' por reiri al Linko.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:228
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Tajpu la vorton EXIT por reiri al Linko.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:231
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Kreante vian aprioran Åelon. Tajpe la vorton 'exit' por reiri al Linko.\n"
+
+#: LYMessages.c:234
+msgid "Spawning is currently disabled."
+msgstr "Krei procezoj ne estas permesitaj."
+
+#: LYMessages.c:235
+msgid "The 'd'ownload command is currently disabled."
+msgstr "ElÅuti per la komando 'd' aktuale estas malaktivigita."
+
+#: LYMessages.c:236
+msgid "You cannot download an input field."
+msgstr "Vi ne eblas elÅuti tekstan kampon."
+
+#: LYMessages.c:237
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Formularo havas retpoÅtan agon! Ne eblas elÅuti."
+
+#: LYMessages.c:238
+msgid "You cannot download a mailto: link."
+msgstr "vi ne eblas elÅuti retpoÅtan ligilon."
+
+#: LYMessages.c:239
+msgid "You cannot download cookies."
+msgstr "Vi ne eblas elÅuti kuketojn."
+
+#: LYMessages.c:240
+msgid "You cannot download a printing option."
+msgstr "Vi ne eblas elÅuti printan elekton."
+
+#: LYMessages.c:241
+msgid "You cannot download an upload option."
+msgstr "Vi ne eblas elÅuti alÅutan elekton."
+
+#: LYMessages.c:242
+msgid "You cannot download an permit option."
+msgstr "Vi ne eblas elÅuti permesan elekton."
+
+#: LYMessages.c:243
+msgid "This special URL cannot be downloaded!"
+msgstr "Ĉi tia speciala retadreso ne estas elÅutebla!"
+
+#: LYMessages.c:244
+msgid "Nothing to download."
+msgstr "Neniu por elÅuti."
+
+#: LYMessages.c:245
+msgid "Trace ON!"
+msgstr "Spurado ÅœALTITA!"
+
+#: LYMessages.c:246
+msgid "Trace OFF!"
+msgstr "Spurado MALÅœALTITA!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:248
+msgid "Links will be included for all images!  Reloading..."
+msgstr "LIGILOJ estos inkluzivitaj por ĉiuj bildoj! ReÅarganta..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:250
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Kutima bildo-traktado restarigita! ReÅarganta..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:252
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Afabla anstataÅ­ teksto por bildoj estas enmetita kiam necesa! ReÅarganta..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:254
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Bildoj kiam anstataÅ­a teksto estos ignoritaj! ReÅarganta..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Nuda 8-bita aÅ­ ĈJK-a reÄimo MALÅœALTITA. ReÅarganta..."
+
+#: LYMessages.c:256
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Nuda 8-bita aÅ­ ĈJK-a reÄimo ÅœALTITA. ReÅarganta..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:258
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Sendi kapo-peton por D)okumento aÅ­ L)igilo, aÅ­ C) Nuligi? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:260
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Sendi kapo-peton por D)okumento, aÅ­ C) Nuligi? (d,c): "
+
+#: LYMessages.c:261
+msgid "Sorry, the document is not an http URL."
+msgstr "BedaÅ­rinde la retadreso ne estas HTTP-a."
+
+#: LYMessages.c:262
+msgid "Sorry, the link is not an http URL."
+msgstr "BedaÅ­rinde la ligilo ne estas HTTP-a."
+
+#: LYMessages.c:263
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "BedaÅ­rinde la AGO de la formularo estas malaktivigita."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:265
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "BedaÅ­rinde la AGO por la formularo ne estas HTTP-retadreso."
+
+#: LYMessages.c:266
+msgid "Not an http URL or form ACTION!"
+msgstr "Ne estas HTTP-retadreso aÅ­ formulara AGO!"
+
+#: LYMessages.c:267
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Ĉi tia speciala retadreso ne eblas esti formulara AGO!"
+
+#: LYMessages.c:268
+msgid "URL is not in starting realm!"
+msgstr "Retadreso ne estas en komenca regno!"
+
+#: LYMessages.c:269
+msgid "News posting is disabled!"
+msgstr "Ne eblas afiÅi al novaĵgrupoj"
+
+#: LYMessages.c:270
+msgid "File management support is disabled!"
+msgstr "Dosieradministrada regado estas malaktivigita!"
+
+#: LYMessages.c:271
+msgid "No jump file is currently available."
+msgstr "Neniu saltodosiero estas aktuale havebla."
+
+#: LYMessages.c:272
+msgid "Jump to (use '?' for list): "
+msgstr "Salti al (uzu la klavon '?' por listo): "
+
+#: LYMessages.c:273
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Salti al mallonga retadreso estas malpermesita!"
+
+#: LYMessages.c:274
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Hazardaj retadresoj estas malpermesitaj. Uzi mallongigo."
+
+#: LYMessages.c:275
+msgid "No random URLs have been used thus far."
+msgstr "AnkoraÅ­ neniuj hazardaj retadresoj estis uzitaj."
+
+#: LYMessages.c:276
+msgid "Bookmark features are currently disabled."
+msgstr "Legosignaj trajtoj aktuale estas malaktivigitaj."
+
+#: LYMessages.c:277
+msgid "Execution via bookmarks is disabled."
+msgstr "Plenumo per legosignoj estas malaktivigita."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:279
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Legosigna dosiero ne estas difinita. Uzu la klavon %s por vidi agordaĵojn."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:281
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Ne eblas malfermi provizoran dosieron por konvertado de X-Mosaic legosignojn."
+
+#: LYMessages.c:282
+msgid "ERROR - unable to open bookmark file."
+msgstr "ERARO - ne eblas malfermi legosignan dosieron."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:284
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Ne eblas malfermi legosignan dosieron por forigi de ligilo."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:286
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Ne eblas malfermi provizoran dosieron por forigi ligilon."
+
+#: LYMessages.c:288
+msgid "Error renaming scratch file."
+msgstr "Eraro alinomanta provizoran dosieron."
+
+#: LYMessages.c:290
+msgid "Error renaming temporary file."
+msgstr "Eraro alinomanta provizoran dosieron."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:292
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Ne eblas kopii provizoran dosieron por forigi ligilon."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:294
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Ne eblas remalfermi provizoran dosieron por forigi ligilon."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:297
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Ligilo ne estas sola en unuopa linio en legosigna dosiero."
+
+#: LYMessages.c:298
+msgid "Bookmark deletion failed."
+msgstr "Legosigna forigo malsukcesis"
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:300
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Legosignaj dosieroj ne eblas esti travenitaj (nur HTTP-adresoj)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:302
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Ne eblas malfermi legosignan dosieron. Uzu la klavon 'a' por konservi ligilon."
+
+#: LYMessages.c:303
+msgid "There are no links in this bookmark file!"
+msgstr "Ne ekzistas ligiloj en ĉi tiu legosigna dosiero!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:305
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "D)okumunton en la tenejo forigu aÅ­ C) Nuligi? (d,c)"
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:307
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Konservi D)okumenton aÅ­ L)igilon al legosigna dosiero aÅ­ C) Nuligi? (d, l, c): "
+
+#: LYMessages.c:308
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Konservi D)okumenton al legosignan dosiero aÅ­ C) Nuligi? (d,c)"
+
+#: LYMessages.c:309
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Konservi L)igilon al legosigna dosiero aÅ­ C) Nuligi? (l,c)"
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:311
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Dokumentoj de formularoj kun kaÅita enhavo ne eblas esti konservitaj kiel legosignoj."
+
+#: LYMessages.c:312
+msgid "Cannot save form fields/links"
+msgstr "Ne eblas konservi kampojn/ligilojn"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:314
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Historio, informoj, menuo kaj listoj ne eblas estis konservitaj kiel legosignoj."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:316
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Ĉu vi efektive volas forigi ĉi tiun ligilon de via legosigna dosiero?"
+
+#: LYMessages.c:317
+msgid "Malformed address."
+msgstr "Malbone formita retadreso."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:319
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Historia komenta interpretado ÅœALTITA!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:321
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Historia komenta interpretado MALÅœALTITA!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:323
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Historia komenta interpretado ÅœALTITA!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:325
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Historia komenta interpretado MALÅœALTITA!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:327
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Historia komenta interpretado ÅœALTITA!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:329
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Historia komenta interpretado MALÅœALTITA!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:331
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Historia komenta interpretado ÅœALTITA!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:333
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Historia komenta interpretado MALÅœALTITA!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing ON!"
+msgstr "Molaj citiloj ÅœALTITA!"
+
+#: LYMessages.c:335
+msgid "Soft double-quote parsing OFF!"
+msgstr "Molaj citiloj MALÅœALTITA!"
+
+#: LYMessages.c:336
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Uzanta malseveran interpretadon de HTML."
+
+#: LYMessages.c:337
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Uzanta severan interpretadon de HTML."
+
+#: LYMessages.c:338
+msgid "You are already at the end of this document."
+msgstr "Vi jam estas je la fino de ĉi tiu dokumento."
+
+#: LYMessages.c:339
+msgid "You are already at the beginning of this document."
+msgstr "Vi jam estas je la komenco de ĉi tiu dokumento."
+
+#: LYMessages.c:340
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Vi jam estas ĉe ekranpleno %d de ĉi tiu dokumento."
+
+#: LYMessages.c:341
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Ligila numero %d jam estas nuna."
+
+#: LYMessages.c:342
+msgid "You are already at the first document"
+msgstr "Vi jam estas je la unua dokumento"
+
+#: LYMessages.c:343
+msgid "There are no links above this line of the document."
+msgstr "Ne estas ligiloj supra al ĉi tiu linio de la dokumento."
+
+#: LYMessages.c:344
+msgid "There are no links below this line of the document."
+msgstr "Ne estas ligiloj suba al ĉi tiu linio de la dokumento."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:346
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Maksimuma longo atingita. Forigi tekston aÅ­ movi de Äi."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:348
+msgid "You are not on a form submission button or normal link."
+msgstr "Vi ne estas en formulara sendobutono aÅ­ ordinara ligilo."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:350
+msgid "One radio button must be checked at all times!"
+msgstr "Unu radiobutono ĉiam devas markita!"
+
+#: LYMessages.c:351
+msgid "No submit button for this form, submit single text field?"
+msgstr "Neniu sendobutono por la formularo, ĉu sendi unuopan tekstan kampon?"
+
+#: LYMessages.c:352
+msgid "Do you want to go back to the previous document?"
+msgstr "Ĉu vi volas retroiri?"
+
+#: LYMessages.c:353
+msgid "Use arrows or tab to move off of field."
+msgstr "Uzu sagoklavojn aÅ­ tabon por movi de la kampon."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:355
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Enmetu tekston. Uzu sagoklavojn aÅ­ tabon por movi de la kampo."
+
+#: LYMessages.c:356
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** FuÅa HTML! Neniu formulara ago difinita. **"
+
+#: LYMessages.c:357
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "FuÅa HTML! Ne eblas krei Åprucaĵon."
+
+#: LYMessages.c:358
+msgid "Unable to create popup window!"
+msgstr "Ne eblas krei Åprucaĵon."
+
+#: LYMessages.c:359
+msgid "Goto a random URL is disallowed!"
+msgstr "Salti hazardajn retadresojn estas malpermesitaj!"
+
+#: LYMessages.c:360
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Salti tian retadreson estas malpermesite."
+
+#: LYMessages.c:361
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Vi ne eblas iri al retadresoj de \"%s\""
+
+#: LYMessages.c:362
+msgid "URL to open: "
+msgstr "Ironta retadreso: "
+
+#: LYMessages.c:363
+msgid "Edit the current Goto URL: "
+msgstr "Redakti la aktualan retadreson: "
+
+#: LYMessages.c:364
+msgid "Edit the previous Goto URL: "
+msgstr "Redakti la antaÅ­an irintan retadreson: "
+
+#: LYMessages.c:365
+msgid "Edit a previous Goto URL: "
+msgstr "Redakti antaÅ­an irintan retadreson: "
+
+#: LYMessages.c:366
+msgid "Current document has POST data."
+msgstr "Nuna dokumento havas kaÅitajn datumojn."
+
+#: LYMessages.c:367
+msgid "Edit this document's URL: "
+msgstr "ÅœanÄi la aktualan retadreson: "
+
+#: LYMessages.c:368
+msgid "Edit the current link's URL: "
+msgstr "Redakti la retadreson de la nuna ligilo: "
+
+#: LYMessages.c:369
+msgid "Edit the form's submit-URL: "
+msgstr "ÅœanÄi la sendo-retadreson de la formularo: "
+
+#: LYMessages.c:370
+msgid "You cannot edit File Management URLs"
+msgstr "Vi ne eblas redakti dosieradministradajn retadresojn"
+
+#: LYMessages.c:371
+msgid "Enter a database query: "
+msgstr "Enmetu datumbazan mendon: "
+
+#: LYMessages.c:372
+msgid "Enter a whereis query: "
+msgstr "Serĉi en la vidata dokumento: "
+
+#: LYMessages.c:373
+msgid "Edit the current query: "
+msgstr "Redakti la nunan mendon:"
+
+#: LYMessages.c:374
+msgid "Edit the previous query: "
+msgstr "Redakti la antaÅ­an mendon: "
+
+#: LYMessages.c:375
+msgid "Edit a previous query: "
+msgstr "Redakti antaÅ­an mendon: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:377
+msgid "Use Control-R to resubmit the current query."
+msgstr "^R por resendi la nunan mendon."
+
+#: LYMessages.c:378
+msgid "Edit the current shortcut: "
+msgstr "Redakti la nunan mallongigon: "
+
+#: LYMessages.c:379
+msgid "Edit the previous shortcut: "
+msgstr "Redakti la antaÅ­an mallongigon: "
+
+#: LYMessages.c:380
+msgid "Edit a previous shortcut: "
+msgstr "Redakti antaÅ­an mallongigon: "
+
+#: LYMessages.c:381
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Klavo '%c' ne estas agordita al saltodosiero!"
+
+#: LYMessages.c:382
+msgid "Cannot locate jump file!"
+msgstr "Ne eblas loki saltodosieron!"
+
+#: LYMessages.c:383
+msgid "Cannot open jump file!"
+msgstr "Ne eblas malfermi saltodosieron!"
+
+#: LYMessages.c:384
+msgid "Error reading jump file!"
+msgstr "Eraro dum legado de saltodosiero!"
+
+#: LYMessages.c:385
+msgid "Out of memory reading jump file!"
+msgstr "Maltro da memoro por legi saltodosieron."
+
+#: LYMessages.c:386
+msgid "Out of memory reading jump table!"
+msgstr "Maltro da memoro por legi saltotabelon."
+
+#: LYMessages.c:387
+msgid "No index is currently available."
+msgstr "Neniu indekso aktuale haveblas."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:389
+msgid "Do you really want to go to the Main screen?"
+msgstr "Ĉu vi efektive volas iri al la ĉefa fako?"
+
+#: LYMessages.c:390
+msgid "You are already at main screen!"
+msgstr "Vi jam estas en la ĉefa fako!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:392
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Ne serĉebla indicita dokumento. Prume la klavon '/' por serĉi tekstan ĉenon"
+
+#. #define NO_OWNER
+#: LYMessages.c:394
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Neniu estro estas difinita por ĉi tiu dosiero, do vi ne eblas sendi komenton."
+
+#: LYMessages.c:395
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Neniu estro estas difinita. Ĉu uzu je %s?"
+
+#: LYMessages.c:396
+msgid "Do you wish to send a comment?"
+msgstr "Ĉu vi volas sendi komenton?"
+
+#: LYMessages.c:397
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "RetpoÅto estas malaktiva. Vi ne eblas sendi komenton."
+
+#: LYMessages.c:398
+msgid "The 'e'dit command is currently disabled."
+msgstr "Redaktado aktuale estas malebligita."
+
+#: LYMessages.c:399
+msgid "External editing is currently disabled."
+msgstr "Ekstera redakto aktuale estas malebligita."
+
+#: LYMessages.c:400
+msgid "System error - failure to get status."
+msgstr "Sistema eraro - malsukceso atingi staton."
+
+#: LYMessages.c:401
+msgid "No editor is defined!"
+msgstr "Neniu tekstoredaktilo estas difinita!"
+
+#: LYMessages.c:402
+msgid "The 'p'rint command is currently disabled."
+msgstr "Printado aktuale estas malebligita."
+
+#: LYMessages.c:403
+msgid "Document has no Toolbar links or Banner."
+msgstr "Dokumento havas neniun ilobretajn ligilojn aÅ­ Åildon."
+
+#: LYMessages.c:404
+msgid "Unable to open traversal file."
+msgstr "Ne eblas malfermi trairan dosieron."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal found file."
+msgstr "Ne eblas trovi dosieron."
+
+#: LYMessages.c:406
+msgid "Unable to open reject file."
+msgstr "Ne eblas malfermi la dosieron."
+
+#: LYMessages.c:407
+msgid "Unable to open traversal errors output file"
+msgstr "Ne eblas malfermi trairo-eraran dosieron"
+
+#: LYMessages.c:408
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "TRAIRO ESTIS INTERROMPITA"
+
+#: LYMessages.c:409
+msgid "Follow link (or goto link or page) number: "
+msgstr "Sekvi ligilan (aÅ­ iri al ligila aÅ­ paÄa) numeron: "
+
+#: LYMessages.c:410
+msgid "Select option (or page) number: "
+msgstr "Elekti elektan (aÅ­ paÄon) numeron: "
+
+#: LYMessages.c:411
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Elekta numero %d jam estas nuna."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:413
+msgid "You are already at the end of this option list."
+msgstr "Vi jam estas je la fino de la elektilo."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:415
+msgid "You are already at the beginning of this option list."
+msgstr "Vi jam estas je la komencoo de la elektilo."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:417
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Vi jam estas je ekranpleno %d de la elektilo."
+
+#: LYMessages.c:418
+msgid "You have entered an invalid option number."
+msgstr "Vi enmetis nevalidan elektan numeron."
+
+#: LYMessages.c:419
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** FuÅa HTML! Uzu la parametron -trace por diagnozi."
+
+#: LYMessages.c:420
+msgid "Give name of file to save in"
+msgstr "Donu nomon de dosiero en kiu konservi"
+
+#: LYMessages.c:421
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Ne eblas konservi datumojn al dosiero -- Bonvolu loke fari"
+
+#: LYMessages.c:422
+msgid "Can't open temporary file!"
+msgstr "Ne eblas malfermi provizoran dosieron!"
+
+#: LYMessages.c:423
+msgid "Can't open output file!  Cancelling!"
+msgstr "Ne eblas malfermi eligan dosieron! Nuliganta!"
+
+#: LYMessages.c:424
+msgid "Execution is disabled."
+msgstr "Plenumo estas malebligita."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:426
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Plenumo ne estas ebla por ĉi tiu dosiero. Uzu la agordilon (klavo %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:428
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Plenumeblaj kapabloj ne estas en ĉi tiu versio."
+
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal."
+msgstr "La dosiero ne estas montrebla."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:431
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "La dosiero ne estas montrebla. D) ElÅuti, aÅ­ C) Nuligi"
+
+#: LYMessages.c:432
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s D) ElÅuti, aÅ­ C) Nuligi"
+
+#: LYMessages.c:433
+msgid "Cancelling file."
+msgstr "Nuliganta dosieron."
+
+#: LYMessages.c:434
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Ricevanta dosieron. - BONVOLU ATENDI -"
+
+#: LYMessages.c:435
+msgid "Enter a filename: "
+msgstr "Enmetu dosiernomon: "
+
+#: LYMessages.c:436
+msgid "Edit the previous filename: "
+msgstr "Redakti antaÅ­an dosiernomon: "
+
+#: LYMessages.c:437
+msgid "Edit a previous filename: "
+msgstr "Redakti antaÅ­an dosiernomon: "
+
+#: LYMessages.c:438
+msgid "Enter a new filename: "
+msgstr "Enmetu novan dosiernomon:"
+
+#: LYMessages.c:439
+msgid "File name may not begin with a dot."
+msgstr "Dosiernome ne eblas komenci per punkto."
+
+#: LYMessages.c:441
+msgid "File exists.  Create higher version?"
+msgstr "Dosiero ekzistas. Ĉu krei pli novan eldonon?"
+
+#: LYMessages.c:443
+msgid "File exists.  Overwrite?"
+msgstr "Dosiero ekzistas. Ĉu anstataŭi?"
+
+#: LYMessages.c:445
+msgid "Cannot write to file."
+msgstr "Ne eblas skribi al dosiero."
+
+#: LYMessages.c:446
+msgid "ERROR! - download command is misconfigured."
+msgstr "ERARO! - Ne eblas elÅuti."
+
+#: LYMessages.c:447
+msgid "Unable to download file."
+msgstr "Ne eblas elÅuti dosieron."
+
+#: LYMessages.c:448
+msgid "Reading directory..."
+msgstr "Leganta dosierujon..."
+
+#: LYMessages.c:449
+msgid "Building directory listing..."
+msgstr "Munti dosierujan liston..."
+
+#: LYMessages.c:450
+msgid "Saving..."
+msgstr "Konservanta..."
+
+#: LYMessages.c:451
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Ne povis redakti dosieron '%s'."
+
+#: LYMessages.c:452
+msgid "Unable to access document!"
+msgstr "Ne eblas atingi dokumenton!"
+
+#: LYMessages.c:453
+msgid "Could not access file."
+msgstr "Ne eblas atingi dosieron."
+
+#: LYMessages.c:454
+msgid "Could not access directory."
+msgstr "Ne povis atingi dosierujon."
+
+#: LYMessages.c:455
+msgid "Could not load data."
+msgstr "Ne eblas Åargi datumojn."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:457
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Linko aktuale ne eblas redakti forajn TTT-dosierojn."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:459
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "La kampo ne eblas esti ekstere redaktita."
+
+#: LYMessages.c:460
+msgid "Bad rule"
+msgstr "FuÅa regulo"
+
+#: LYMessages.c:461
+msgid "Insufficient operands:"
+msgstr "FuÅaj operaciiloj:"
+
+#: LYMessages.c:462
+msgid "You are not authorized to edit this file."
+msgstr "Vi ne permesas redakti ĉi tiun doseron."
+
+#: LYMessages.c:463
+msgid "Title: "
+msgstr "Titolo: "
+
+#: LYMessages.c:464
+msgid "Subject: "
+msgstr "Temo: "
+
+#: LYMessages.c:465
+msgid "Username: "
+msgstr "Salutnomo: "
+
+#: LYMessages.c:466
+msgid "Password: "
+msgstr "Pasvorto: "
+
+#: LYMessages.c:467
+msgid "lynx: Username and Password required!!!"
+msgstr "Salutnomo kaj pasvorto necesaj!"
+
+#: LYMessages.c:468
+msgid "lynx: Password required!!!"
+msgstr "Pasvorto necesa!"
+
+#: LYMessages.c:469
+msgid "Clear all authorization info for this session?"
+msgstr "Ĉu forviÅi ĉiujn atestajn informojn por ĉi tiu seanco?"
+
+#: LYMessages.c:470
+msgid "Authorization info cleared."
+msgstr "Atestaj informoj forviÅitaj."
+
+#: LYMessages.c:471
+msgid "Authorization failed.  Retry?"
+msgstr "Atestado malsukcesis. Ĉu reprovi?"
+
+#: LYMessages.c:472
+msgid "cgi support has been disabled."
+msgstr "CGI-regade estas malaktivigita."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:474
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "CGI-kapabloj ne estas en ĉi tiu versio."
+
+#: LYMessages.c:475
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Ne eblas konverti el %s al %s."
+
+#: LYMessages.c:476
+msgid "Unable to set up connection."
+msgstr "Ne eblas aranÄi konekton."
+
+#: LYMessages.c:477
+msgid "Unable to make connection"
+msgstr "Ne eblas starigi konekto"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:479
+msgid "Executable link rejected due to malformed request."
+msgstr "Plenumebla ligilo rifuzita pro fuÅa peto."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:481
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Plenumebla ligilo rifuzita pro signo '%c'."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Plenumebla ligilo rifuzita pro relativa voja ĉeno ('.../')."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:485
+msgid "Executable link rejected due to location or path."
+msgstr "Plenumebla ligilo rifuzita pro loko aÅ­ vojo."
+
+#: LYMessages.c:486
+msgid "Mail access is disabled!"
+msgstr "RetpoÅta atingo estas malebligita!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:488
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Nur dosieroj kaj serviloj en la loka komputilo estas atingeblaj."
+
+#: LYMessages.c:489
+msgid "Telnet access is disabled!"
+msgstr "Atingo al Telnet malebligita!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:491
+msgid "Telnet port specifications are disabled."
+msgstr "Specifoj pri Telnet-pordoj estas malebligitaj."
+
+#: LYMessages.c:492
+msgid "USENET news access is disabled!"
+msgstr "USENET estas malebligita!"
+
+#: LYMessages.c:493
+msgid "Rlogin access is disabled!"
+msgstr "RLogin estas malebligita!"
+
+#: LYMessages.c:494
+msgid "Ftp access is disabled!"
+msgstr "FTP estas malebligita!"
+
+#: LYMessages.c:495
+msgid "There are no references from this document."
+msgstr "Ne ekzistas referencoj de ĉi tiu dokumento."
+
+#: LYMessages.c:496
+msgid "There are only hidden links from this document."
+msgstr "Ekzistas nur kaÅitaj ligiloj de ĉi tiu dokumento."
+
+#: LYMessages.c:498
+msgid "Unable to open command file."
+msgstr "Ne eblas malfermi komandan dosieron."
+
+#: LYMessages.c:500
+msgid "News Post Cancelled!!!"
+msgstr "AfiÅo nuligita!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:502
+msgid "Spawning your selected editor to edit news message"
+msgstr "Plenumanta vian elektitan redaktilon por redakti la mesaÄon"
+
+#: LYMessages.c:503
+msgid "Post this message?"
+msgstr "Ĉu afiÅi ĉi tiun mesaÄon?"
+
+#: LYMessages.c:504
+#, c-format
+msgid "Append '%s'?"
+msgstr "Ĉu almeti je '%s'?"
+
+#: LYMessages.c:505
+msgid "Posting to newsgroup(s)..."
+msgstr "AfiÅanta al novaĵgrupo(j)..."
+
+#: LYMessages.c:507
+msgid "*** You have unread mail. ***"
+msgstr "*** Vi havas nelegitajn retmesaÄojn. ***"
+
+#: LYMessages.c:509
+msgid "*** You have mail. ***"
+msgstr "*** Vi havas retmesaÄojn. ***"
+
+#: LYMessages.c:511
+msgid "*** You have new mail. ***"
+msgstr "*** Vi havas novajn retmesaÄojn. ***"
+
+#: LYMessages.c:512
+msgid "File insert cancelled!!!"
+msgstr "Dosiera enmetado nuligita!"
+
+#: LYMessages.c:513
+msgid "Not enough memory for file!"
+msgstr "Nesufiĉa memoro por dosiero!"
+
+#: LYMessages.c:514
+msgid "Can't open file for reading."
+msgstr "Vi ne eblas malfermi dosieron por legado."
+
+#: LYMessages.c:515
+msgid "File does not exist."
+msgstr "Dosiero ne ekzistas."
+
+#: LYMessages.c:516
+msgid "File does not exist - reenter or cancel:"
+msgstr "Dosiero ne ekzistas - reeniri aÅ­ nuligi:"
+
+#: LYMessages.c:517
+msgid "File is not readable."
+msgstr "Dosiero nelegeblas."
+
+#: LYMessages.c:518
+msgid "File is not readable - reenter or cancel:"
+msgstr "Dosiero ne estas legebla - reeniri aÅ­ nuligi:"
+
+#: LYMessages.c:519
+msgid "Nothing to insert - file is 0-length."
+msgstr "Nenio por enmeti - dosiero estas vaka."
+
+#: LYMessages.c:520
+msgid "Save request cancelled!!!"
+msgstr "Konservado de pote nuligita!"
+
+#: LYMessages.c:521
+msgid "Mail request cancelled!!!"
+msgstr "RetpoÅta peto nuligita!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:523
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Vidanta interpretitan fontotekston. Ĉu vi certas, ke vi volas sendi Äin per retpoÅto?"
+
+#: LYMessages.c:524
+msgid "Please wait..."
+msgstr "Bonvolu atendi..."
+
+#: LYMessages.c:525
+msgid "Mailing file.  Please wait..."
+msgstr "Bonvolu atendi dum sendi la dosieron per retpoÅto..."
+
+#: LYMessages.c:526
+msgid "ERROR - Unable to mail file"
+msgstr "ERARO - Ne eblas sendi dosieron per retpoÅto"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:528
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Dosiero estas %d ekranplenoj. Ĉu vi certas, ke vi volas printi?"
+
+#: LYMessages.c:529
+msgid "Print request cancelled!!!"
+msgstr "Printa peto nuligita!"
+
+#: LYMessages.c:530
+msgid "Press <return> to begin: "
+msgstr "Premu enen-klavon por komenci: "
+
+#: LYMessages.c:531
+msgid "Press <return> to finish: "
+msgstr "Premu enen-klavon por fini: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:533
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Dosiero estas %d ekranplenoj. Ĉu vi certas, ke vi volas printi?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:535
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Certigu, ke via printilo estas konektita. Premu enen-klavon por printi:"
+
+#: LYMessages.c:536
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "ERARO - Ne eblas akiri dosieran spacon!"
+
+#: LYMessages.c:537
+msgid "Unable to open tempfile"
+msgstr "Ne eblas malfermi provizoran dosieron"
+
+#: LYMessages.c:538
+msgid "Unable to open print options file"
+msgstr "Ne eblas malfermi printo-agordan dosieron"
+
+#: LYMessages.c:539
+msgid "Printing file.  Please wait..."
+msgstr "Printanta dosieron. Bonvolu atendi..."
+
+#: LYMessages.c:540
+msgid "Please enter a valid internet mail address: "
+msgstr "Bonvolu enmeti validan retpoÅtadreson: "
+
+#: LYMessages.c:541
+msgid "ERROR! - printer is misconfigured!"
+msgstr "ERARO! - Printilo estas malÄuste agordita!"
+
+#: LYMessages.c:542
+msgid "Image map from POST response not available!"
+msgstr "Bildmapo de kaÅita respondo ne haveblas!"
+
+#: LYMessages.c:543
+msgid "Misdirected client-side image MAP request!"
+msgstr "MalÄuste direktita enklienta bildmapa peto!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not accessible!"
+msgstr "Enklienta bildmapo ne atingeblas!"
+
+#: LYMessages.c:545
+msgid "No client-side image MAPs are available!"
+msgstr "Neniuj enklientaj bildmapoj haveblas!"
+
+#: LYMessages.c:546
+msgid "Client-side image MAP is not available!"
+msgstr "Enklienta bildmapo ne haveblas!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:549
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Ekrana alto devas esti minimume 24 linioj por la agordilo!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:551
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Ekrana alto devas esti minimume 23 linioj por la agordilo!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:553
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Ekrana alto devas esti minimume 22 linioj por la agordilo!"
+
+#: LYMessages.c:555
+msgid "That key requires Advanced User mode."
+msgstr "Tiu klavo bezonas altnivelan uzantareÄimon."
+
+#: LYMessages.c:556
+#, c-format
+msgid "Content-type: %s"
+msgstr "Enhavtipo: %s"
+
+#: LYMessages.c:557
+msgid "Command: "
+msgstr "Komando"
+
+#: LYMessages.c:558
+msgid "Unknown or ambiguous command"
+msgstr "Nekonata aÅ­ neklara komando"
+
+#: LYMessages.c:559
+msgid " Version "
+msgstr " Versio "
+
+#: LYMessages.c:560
+msgid " first"
+msgstr " antaÅ­ aliaj"
+
+#: LYMessages.c:561
+msgid ", guessing..."
+msgstr ", provanta korekti..."
+
+#: LYMessages.c:562
+msgid "Permissions for "
+msgstr "Permesoj por"
+
+#: LYMessages.c:563
+msgid "Select "
+msgstr "Elekti"
+
+#: LYMessages.c:564
+msgid "capital letter"
+msgstr "Majusklo"
+
+#: LYMessages.c:565
+msgid " of option line,"
+msgstr " de agorda linio,"
+
+#: LYMessages.c:566
+msgid " to save,"
+msgstr " por konservi,"
+
+#: LYMessages.c:567
+msgid " to "
+msgstr " al"
+
+#: LYMessages.c:568
+msgid " or "
+msgstr " aÅ­"
+
+#: LYMessages.c:569
+msgid " index"
+msgstr " indekso"
+
+#: LYMessages.c:570
+msgid " to return to Lynx."
+msgstr " por reiri al Linko."
+
+#: LYMessages.c:571
+msgid "Accept Changes"
+msgstr "Akcepti ÅanÄojn"
+
+#: LYMessages.c:572
+msgid "Reset Changes"
+msgstr "Restarigi ÅanÄojn"
+
+#: LYMessages.c:573
+msgid "Left Arrow cancels changes"
+msgstr "Maldekstra sagoklavo nuligas ÅanÄojn"
+
+#: LYMessages.c:574
+msgid "Save options to disk"
+msgstr "Konservi agordaĵojn al la disko"
+
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data."
+msgstr "Premu enen-klavon por akcepti enmetitajn datumojn."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:577
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Enmetu enen-klavon por akcepti enmetitajn datumojn. Forigi datumojn por alvoki la aprioran."
+
+#: LYMessages.c:578
+msgid "Value accepted!"
+msgstr "Valoro akceptita!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Valoro akceptita! -- AVERTO: Linko estas agordita por la fenestrosistemo X"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:582
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Valoro akceptita! -- AVERTO: Linko NE estas agordita por la fenestrosistemo X"
+
+#: LYMessages.c:583
+msgid "You are not allowed to change which editor to use!"
+msgstr "Vi ne estas permesata ÅanÄi vian tekstoredaktilon!"
+
+#: LYMessages.c:584
+msgid "Failed to set DISPLAY variable!"
+msgstr "Malsukcesis valorizi medivariablon DISPLAY!"
+
+#: LYMessages.c:585
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Malsukcesis forviÅi medivariablon DISPLAY!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:587
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Vi ne estas permesita ÅanÄi la legosignan dosieron!"
+
+#: LYMessages.c:588
+msgid "Terminal does not support color"
+msgstr "Terminalo ne havas kolorojn"
+
+#: LYMessages.c:589
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Via terminalo '%s' ne havas kolorojn."
+
+#: LYMessages.c:590
+msgid "Access to dot files is disabled!"
+msgstr "Atingo al kaÅitaj dosieroj estas malebligita!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:592
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "Via TTT-legilo ne identigas sin kiel Linkon"
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:594
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Uzu la ĉenojn \"L_y_n_x\" aŭ \"Lynx\" por identigi la TTT-legilon por eviti aspekti intence trompa."
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:596
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "ÅœanÄi la TTT-legilan identigon estas malebligite!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:598
+msgid "You are not allowed to change this setting."
+msgstr "Vi ne estas permesata ÅanÄi tiun agordaĵon."
+
+#: LYMessages.c:599
+msgid "Saving Options..."
+msgstr "Konservanta agordaĵojn..."
+
+#: LYMessages.c:600
+msgid "Options saved!"
+msgstr "Agordaĵoj konservitaj!"
+
+#: LYMessages.c:601
+msgid "Unable to save Options!"
+msgstr "Ne eblas konservi agordaĵojn!"
+
+#: LYMessages.c:602
+msgid " 'r' to return to Lynx "
+msgstr " 'r' por reiri al Linko "
+
+#: LYMessages.c:603
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' por konservi, aÅ­ 'r' por reiri al Linko "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:605
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Premu iun klavon por ÅanÄi valoron; enen-klavon por akcepti"
+
+#: LYMessages.c:606
+msgid "Error uncompressing temporary file!"
+msgstr "Eraro dum malpaki provizoran dosieron!"
+
+#: LYMessages.c:607
+msgid "Unsupported URL scheme!"
+msgstr "Ne komprenas la retadresan skemon!"
+
+#: LYMessages.c:608
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Ne komprenas la datuman retadreson. Uzu la komando SHOWINFO nune."
+
+#: LYMessages.c:609
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Alidirektada limigo de 10 retadresoj atingita."
+
+#: LYMessages.c:610
+msgid "Illegal redirection URL received from server!"
+msgstr "Nevalida alidirektada retadreso ricevita el servilo!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:612
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Servila petita por %d alidirektadoj de kaÅita enhavo al"
+
+#: LYMessages.c:615
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P) DaÅ­rigi, G) MalkaÅi, aÅ­ C) Nuligi"
+
+#: LYMessages.c:616
+msgid "P)roceed, or C)ancel "
+msgstr "P) DaÅ­rigi, aÅ­ C) Nuligi"
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Alidirektado de kaÅita enhavo. P) DaÅ­rigi, U) vidi retadreson, G) MalkaÅi, aÅ­ C) Nuligi"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:620
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Alidirektado de kaÅita enhavo. P) DaÅ­rigi, U) Vidi retadreson, aÅ­ C) Nuligi"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:622
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Dokumento kun kaÅita enhavo. Ĉu resendi?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:624
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Resendi kaÅitan enhavon al %s ?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:626
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Listo el dokumento kun kaÅitaj datumoj. Ĉu reÅargi je %s ?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:628
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Dokumento kun kaÅita enhavo, ricevado de kapo eble ne kompreniÄos. Ĉu daÅ­ri?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:630
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Formularo kun kaÅita enhavo, ricevado de kapo eble ne kompreniÄos. Ĉu daÅ­ri?"
+
+#: LYMessages.c:631
+msgid "Proceed without a username and password?"
+msgstr "Ĉu daŭri sen salutnomo kaj pasvorto?"
+
+#: LYMessages.c:632
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Ĉu daŭri (%s)?"
+
+#: LYMessages.c:633
+msgid "Cannot POST to this host."
+msgstr "Ne eblas sendi kaÅitajn datumojn al tiu gastiganto."
+
+#: LYMessages.c:634
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "Tiu retadreso ne komprenas kaÅitan enhavon - ignoranta!"
+
+#: LYMessages.c:635
+msgid "Discarding POST data..."
+msgstr "Forĵetanta kaÅitajn datumojn..."
+
+#: LYMessages.c:636
+msgid "Document will not be reloaded!"
+msgstr "Dokumento ne estos reÅargita!"
+
+#: LYMessages.c:637
+msgid "Location: "
+msgstr "Loko: "
+
+#: LYMessages.c:638
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' ne trovita!"
+
+#: LYMessages.c:639
+msgid "Default Bookmark File"
+msgstr "Apriora legosigna dosiero"
+
+#: LYMessages.c:640
+msgid "Screen too small! (8x35 min)"
+msgstr "Ekrano tro malgranda! (minimume 8 de 35 rastrumeroj)"
+
+#: LYMessages.c:641
+msgid "Select destination or ^G to Cancel: "
+msgstr "Elektu celon aÅ­ ^G por nuligi: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:643
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Elekti sublegosignon, '=' por menuo, aÅ­ ^G por nuligi: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:645
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "Kloni L)igilon en ĉi tiu legosigna dosiero aŭ C) Nuligi? (l,c): "
+
+#: LYMessages.c:646
+msgid "Multiple bookmark support is not available."
+msgstr "Plurnivelaj legosignoj estas ne disponeblaj."
+
+#: LYMessages.c:647
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Elektu legosignon (ekranpleno %d el %d)"
+
+#: LYMessages.c:648
+msgid "       Select Bookmark"
+msgstr "       Elekti legosignon"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:650
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Redaktanta la priskribon kaj vojon de legosigno (%d el 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:652
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Redaktanta la priskribon kaj vojon de legosigno"
+
+#: LYMessages.c:653
+msgid "Letter: "
+msgstr "Litero: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:656
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Uzu dosiervojon de via hejdosierujo laÅ­ SHELL-sintakson!"
+
+#: LYMessages.c:658
+msgid "Use a filepath off your home directory!"
+msgstr "Uzu dosiervojon de via hejmdosierujo."
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:661
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Maksimumaj ligiloj je ĉiu ekranpleno preterpasis! Uzu duonekranplenan aŭ dulinian rulumadon."
+
+#: LYMessages.c:662
+msgid "No previously visited links available!"
+msgstr "Neniuj antaÅ­e vizititaj ligiloj haveblaj!"
+
+#: LYMessages.c:663
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Uzis la tuton de la memoro! Programo ĉesigita!"
+
+#: LYMessages.c:664
+msgid "Memory exhausted!  Aborting..."
+msgstr "Uzis la tuton de la memoro! Ĉesiganta..."
+
+#: LYMessages.c:665
+msgid "Not enough memory!"
+msgstr "Ne sufiĉo da memoro!"
+
+#: LYMessages.c:666
+msgid "Directory/File Manager not available"
+msgstr "Dosieradministrilo ne haveblas"
+
+#: LYMessages.c:667
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "Baza retadreso de la paÄo ne estas absoluta."
+
+#: LYMessages.c:668
+msgid "Location URL is not absolute."
+msgstr "Loko-retadreso ne estas absoluta."
+
+#: LYMessages.c:669
+msgid "Refresh URL is not absolute."
+msgstr "ReÅarga retadreso ne estas absoluta."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:671
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Vi sendas mesaÄon kun korpo al:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Vi sendas komenton al:\n"
+"  "
+
+#: LYMessages.c:673
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" Kun kopio al:\n"
+" "
+
+#: LYMessages.c:674
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Kun kopioj al:\n"
+" "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:676
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"^G por nuligi, se vi ne volas sendi mesaÄon\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Bonvolu enmeti vian nomon, aÅ­ restigi Äin vaka por resti sennoma\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:680
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Bonvolu enmeti retpoÅtadreson aÅ­ iun alian\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:682
+msgid " means to contact you, if you desire a response.\n"
+msgstr " maniero por kontakti vin, se vi deziras respondon.\n"
+
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Bonvolu enmeti unulinian temon.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Enmetu retpoÅtadreson por kopio de la mesaÄo.\n"
+
+#: LYMessages.c:686
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Restigu vaka, se vi ne volas kopion.)\n"
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Bonvolu kontroli la mesaÄan korpon:\n"
+"\n"
+
+#: LYMessages.c:688
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Premu enen-klavon por daÅ­ri: "
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Premu enen-klavon por purigi: "
+
+#: LYMessages.c:690
+msgid " Use Control-U to erase the default.\n"
+msgstr " Uzu la klavon ^U por forviÅi la jaman.\n"
+
+#: LYMessages.c:691
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"Bonvolu enmeti vian mesaÄon sube."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:693 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Kiam finita, premu la enen-klavon kaj klavu unuopan punkton (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:695 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" en unuopa linio kaj repremu la enen-klavon."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s kuketo: %.*s=%.*s Ĉu Permesi? (J/N/ĉIam/nEniam)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Ĉu akcepti nevalidan kuketon domajno=%s por '%s'?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:703
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Ĉu akcepti nevalidan kuketon vojo=%s kiel prefikson de '%s'?"
+
+#: LYMessages.c:704
+msgid "Allowing this cookie."
+msgstr "Permesanta ĉi tiun kuketon."
+
+#: LYMessages.c:705
+msgid "Rejecting this cookie."
+msgstr "Rifuzanta ĉi tiun kuketon."
+
+#: LYMessages.c:706
+msgid "The Cookie Jar is empty."
+msgstr "La kuketa skatolo estas vaka."
+
+#: LYMessages.c:707
+msgid "The Cache Jar is empty."
+msgstr "La teneja skatolo estas vaka."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:709
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Aktivigi ligilojn por vori kuketojn aÅ­ tutajn domajnojn."
+
+#: LYMessages.c:710
+msgid "or to change a domain's 'allow' setting."
+msgstr "aÅ­ ÅanÄi permeson de domajno."
+
+#: LYMessages.c:711
+msgid "(Cookies never allowed.)"
+msgstr "(Kuketoj neniam permesitaj.)"
+
+#: LYMessages.c:712
+msgid "(Cookies always allowed.)"
+msgstr "(Kuketoj ĉiam permesitaj.)"
+
+#: LYMessages.c:713
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Kuketoj permesitaj per demandilo.)"
+
+#: LYMessages.c:714
+msgid "(Persistent Cookies.)"
+msgstr "(DaÅ­rantaj kuketoj.)"
+
+#: LYMessages.c:715
+msgid "(No title.)"
+msgstr "(Neniu titolo.)"
+
+#: LYMessages.c:716
+msgid "(No name.)"
+msgstr "(Neniu nomo.)"
+
+#: LYMessages.c:717
+msgid "(No value.)"
+msgstr "(Neniu valoro.)"
+
+#: LYMessages.c:718 src/LYOptions.c:2409
+msgid "None"
+msgstr "Neniu(j)"
+
+#: LYMessages.c:719
+msgid "(End of session.)"
+msgstr "(Fino de seanco.)"
+
+#: LYMessages.c:720
+msgid "Delete this cookie?"
+msgstr "Ĉu forigi ĉi tiun kuketon?"
+
+#: LYMessages.c:721
+msgid "The cookie has been eaten!"
+msgstr "La kuketo estas manÄita!"
+
+#: LYMessages.c:722
+msgid "Delete this empty domain?"
+msgstr "Ĉu forigi la vakan domajnon?"
+
+#: LYMessages.c:723
+msgid "The domain has been eaten!"
+msgstr "La domajno estis manÄita!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)omajnan kuketon forigi, permesu A) Ĉiam/P) Demandi/V) Neniam, aŭ C) Nuligi?"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:727
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)omajnon forigi, permesu A) Ĉiam/P) Demandi/V) Neniam, aŭ C) Nuligi?"
+
+#: LYMessages.c:728
+msgid "All cookies in the domain have been eaten!"
+msgstr "Ĉiuj kuketoj en la domajno estis manÄitaj!"
+
+#: LYMessages.c:729
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "'A' por ĉiam permesi el la domajno '%s'."
+
+#: LYMessages.c:730
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "'V' por neniam permesi el la domajno '%s'."
+
+#: LYMessages.c:731
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "'P' por demandilo por domajno '%s'."
+
+#: LYMessages.c:732
+msgid "Delete all cookies in this domain?"
+msgstr "Ĉu forigi ĉiujn kuketojn en ĉi tiu domajno?"
+
+#: LYMessages.c:733
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Ĉiuj kuketoj en la skatolo estis manÄitaj!"
+
+#: LYMessages.c:735
+msgid "Port 19 not permitted in URLs."
+msgstr "Pordo 19 ne estas permesata en retadresoj."
+
+#: LYMessages.c:736
+msgid "Port 25 not permitted in URLs."
+msgstr "Pordo 19 ne estas permesata en retadresoj."
+
+#: LYMessages.c:737
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Pordo %lu ne estas permesata en retadresoj."
+
+#: LYMessages.c:738
+msgid "URL has a bad port field."
+msgstr "Retadreso havas fuÅan pordon."
+
+#: LYMessages.c:739
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Superfluis maksimuma nestado de HTML-elementoj."
+
+#: LYMessages.c:740
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "FuÅa parta refero! Foriganta komencajn punktoj."
+
+#: LYMessages.c:741
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Malsukcesis malfermi la spuran protokolon. MalÅaltita."
+
+#: LYMessages.c:742
+msgid "Lynx Trace Log"
+msgstr "Spura protokolo de Linko"
+
+#: LYMessages.c:743
+msgid "No trace log has been started for this session."
+msgstr "Neniu spura protokolo estis komencita por ĉi tiu seanco."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:745
+msgid "The maximum temporary file count has been reached!"
+msgstr "La maksimuma nombro provizoraj dosieroj estis atingita!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:747
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Valoro de formulara kampo estas tro granda por la bufro. Tranĉu la voston!"
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:749
+msgid "Modified tail combined with head of form field value."
+msgstr "Modifita vosto kun kunigita kun kapo de formulara kampa valoro."
+
+#. HTFile.c
+#: LYMessages.c:752
+msgid "Directory"
+msgstr "Dosierujo"
+
+#: LYMessages.c:753
+msgid "Directory browsing is not allowed."
+msgstr "Dosieruja foliumado estas ne permesata."
+
+#: LYMessages.c:754
+msgid "Selective access is not enabled for this directory"
+msgstr "Elektebla atingo ne estas ebla por ĉi tiu dosierujo"
+
+#: LYMessages.c:755
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: dosieruja skano malsukcesis."
+
+#: LYMessages.c:756
+msgid "This directory is not readable."
+msgstr "Ĉi tiu dosierujo ne legeblas."
+
+#: LYMessages.c:757
+msgid "Can't access requested file."
+msgstr "Ne eblas atingi petitan dosieron."
+
+#: LYMessages.c:758
+msgid "Could not find suitable representation for transmission."
+msgstr "Ne povis trovi taÅ­gan prezentadon por elsendi."
+
+#: LYMessages.c:759
+msgid "Could not open file for decompression!"
+msgstr "Ne povis malfermi malpakotan dosieron!"
+
+#: LYMessages.c:760
+msgid "Files:"
+msgstr "Dosieroj:"
+
+#: LYMessages.c:761
+msgid "Subdirectories:"
+msgstr "Subdosierujoj:"
+
+#: LYMessages.c:762
+msgid " directory"
+msgstr " dosierujo"
+
+#: LYMessages.c:763
+msgid "Up to "
+msgstr "Supren Äis "
+
+#: LYMessages.c:764
+msgid "Current directory is "
+msgstr "Aktuala dosierujo estas "
+
+#. HTFTP.c
+#: LYMessages.c:767
+msgid "Symbolic Link"
+msgstr "Mola ligilo"
+
+#. HTGopher.c
+#: LYMessages.c:770
+msgid "No response from server!"
+msgstr "Neniu respondo el servilo!"
+
+#: LYMessages.c:771
+msgid "CSO index"
+msgstr "CSO-indekso"
+
+#: LYMessages.c:772
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Ĉi tiu estas serĉebla indekso de CSO-datumbazo.\n"
+
+#: LYMessages.c:773
+msgid "CSO Search Results"
+msgstr "CSO-serĉo-rezultoj"
+
+#: LYMessages.c:774
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Malsukceso pri trovado je %s\n"
+
+#: LYMessages.c:775
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Premu la klavon 's' kaj enmetu serĉo-Ålosilvortojn.\n"
+
+#: LYMessages.c:776
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Ĉi tiu estas serĉebla Gopher-indekso.\n"
+
+#: LYMessages.c:777
+msgid "Gopher index"
+msgstr "Gopher-indekso"
+
+#: LYMessages.c:778
+msgid "Gopher Menu"
+msgstr "Gopher-menuo"
+
+#: LYMessages.c:779
+msgid " Search Results"
+msgstr " Serĉo-rezultoj"
+
+#: LYMessages.c:780
+msgid "Sending CSO/PH request."
+msgstr "Sendante CSO-peton."
+
+#: LYMessages.c:781
+msgid "Sending Gopher request."
+msgstr "Sendante Gopher-peton."
+
+#: LYMessages.c:782
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO-peto sendita; atendanta respondon."
+
+#: LYMessages.c:783
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopher-peto sendita; atendanta respondon."
+
+#: LYMessages.c:784
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Bonvolu enmeti serĉo-Ålosilvortoj.\n"
+
+#: LYMessages.c:785
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"La Ålosilvortoj, kiujn vi enmetas, permesos, ke vi serĉu pri"
+
+#: LYMessages.c:786
+msgid " person's name in the database.\n"
+msgstr " nomo de persono en la datumbazo.\n"
+
+#. HTNews.c
+#: LYMessages.c:789
+msgid "Connection closed ???"
+msgstr "Konekto fermita ?"
+
+#: LYMessages.c:790
+msgid "Cannot open temporary file for news POST."
+msgstr "Ne eblas malfermi provizoran dosieron por novaĵgrupa afiÅo."
+
+#: LYMessages.c:791
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Ĉi tiu kliento ne regas afiÅi al novaĵgrupaj serviloj kun SSL."
+
+#. HTStyle.c
+#: LYMessages.c:794
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Silo %d '%s' SGML:%s.  Tiparo %s %.lf punkto.\n"
+
+#: LYMessages.c:796
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tAlign=%d, %d taboj. (%.0f antaÅ­e, %.0f poste)\n"
+
+#: LYMessages.c:797
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tTabspeco=%d je %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:800
+msgid "Can't proceed without a username and password."
+msgstr "Ne eblas daÅ­ri sen salutnomo kaj pasvorto."
+
+#: LYMessages.c:801
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Ne eblas reprovi kun atestado! Kontakti la TTT-ejo-estron."
+
+#: LYMessages.c:802
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Ne eblas reprovi kun prokurila atestado! Kontakti la TTT-ejo-estron."
+
+#: LYMessages.c:803
+msgid "Retrying with proxy authorization information."
+msgstr "Reprovanta kun informoj pri prokurila atestado."
+
+#: LYMessages.c:804
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL-eraro:%s- DaÅ­ri?"
+
+#. HTWAIS.c
+#: LYMessages.c:807
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Responda mesaÄo tro granda."
+
+#: LYMessages.c:808
+msgid "Enter WAIS query: "
+msgstr "Enmetu WAIS-mendon: "
+
+#. Miscellaneous status
+#: LYMessages.c:811
+msgid "Retrying as HTTP0 request."
+msgstr "Reprovantan kiel HTTP0-peton."
+
+#: LYMessages.c:812
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Transigis %d bajtojn"
+
+#: LYMessages.c:813
+msgid "Data transfer complete"
+msgstr "Datumo-transigo kompleta"
+
+#: LYMessages.c:814
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Eraro traktanta linion %d de %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:817
+msgid "Address List Page"
+msgstr "Adreslista paÄo"
+
+#: LYMessages.c:818
+msgid "Bookmark file"
+msgstr "Legosigna dosiero"
+
+#: LYMessages.c:819
+msgid "Configuration Definitions"
+msgstr "Agordaj difinoj"
+
+#: LYMessages.c:820
+msgid "Cookie Jar"
+msgstr "Kuketa skatolo"
+
+#: LYMessages.c:821
+msgid "Current Key Map"
+msgstr "Nuna klavomapo"
+
+#: LYMessages.c:822
+msgid "File Management Options"
+msgstr "Dosieradministradaj agordaĵoj"
+
+#: LYMessages.c:823
+msgid "Download Options"
+msgstr "ElÅutaj agordaĵoj"
+
+#: LYMessages.c:824
+msgid "History Page"
+msgstr "Historia paÄo"
+
+#: LYMessages.c:825
+msgid "Cache Jar"
+msgstr "Teneja skatolo"
+
+#: LYMessages.c:826
+msgid "List Page"
+msgstr "Lista paÄo"
+
+#: LYMessages.c:827
+msgid "Lynx.cfg Information"
+msgstr "Lynk.cfg-informoj"
+
+#: LYMessages.c:828
+msgid "Converted Mosaic Hotlist"
+msgstr "Konvertis legosignojn de Mosaic"
+
+#: LYMessages.c:829
+msgid "Options Menu"
+msgstr "Menuo pri agordaĵoj"
+
+#: LYMessages.c:830
+msgid "File Permission Options"
+msgstr "Dosieratingaj agordaĵoj"
+
+#: LYMessages.c:831
+msgid "Printing Options"
+msgstr "Printaj agordaĵoj"
+
+#: LYMessages.c:832
+msgid "Information about the current document"
+msgstr "Informoj pri la nuna dokumento"
+
+#: LYMessages.c:833
+msgid "Your recent statusline messages"
+msgstr "FreÅaj statliniaj mesaÄoj"
+
+#: LYMessages.c:834
+msgid "Upload Options"
+msgstr "AlÅutaj agordaĵoj"
+
+#: LYMessages.c:835
+msgid "Visited Links Page"
+msgstr "PaÄo pri vizititaj ligiloj"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:838
+msgid "See also"
+msgstr "AnkaÅ­ vidu"
+
+#: LYMessages.c:839
+msgid "your"
+msgstr "vian"
+
+#: LYMessages.c:840
+msgid "for runtime options"
+msgstr "por plenumaj agordaĵoj"
+
+#: LYMessages.c:841
+msgid "compile time options"
+msgstr "tradukantaj agordaĵoj"
+
+#: LYMessages.c:842
+msgid "color-style configuration"
+msgstr "kolorstilaj agordaĵoj"
+
+#: LYMessages.c:843
+msgid "latest release"
+msgstr "plej freÅa eldono"
+
+#: LYMessages.c:844
+msgid "pre-release version"
+msgstr "beta eldono"
+
+#: LYMessages.c:845
+msgid "development version"
+msgstr "alfa eldono"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:847
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"La sekvaj datumoj estis derivitaj dum la aÅ­tomata muntada procezo\n"
+"de ĉi tiu ekzemplero de Linko. Dum raportado de eraro, bonvolu inkluzivi ekzempleron\n"
+"de ĉi tiu paÄo."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:851
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"La sekvaj datumoj estis uzataj kiel difinoj dum tradukado\n"
+"de Linko."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:856
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "  C) Krei D) ElÅuti E) Redakti F) Plena menuo M)odifi R) Forigi T) Marki U) AlÅuti\n"
+
+#: LYMessages.c:857
+msgid "Failed to obtain status of current link!"
+msgstr "Malsukcesis atingi staton de nuna ligilo!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:860
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Speciala retadreso nur validas el menuo pri atingopermesoj!"
+
+#: LYMessages.c:864
+msgid "External support is currently disabled."
+msgstr "Ekstera subteno estas aktuale malebligita."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:868
+msgid "Changing working-directory is currently disabled."
+msgstr "ÅœanÄi labordosierujon aktuale estas malebligita."
+
+#: LYMessages.c:869
+msgid "Linewrap OFF!"
+msgstr "Linifaldo MALÅœALTITA!"
+
+#: LYMessages.c:870
+msgid "Linewrap ON!"
+msgstr "Linifaldo ÅœALTITA!"
+
+#: LYMessages.c:871
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Interpretanta nestintajn tabelojn MALÅœALTITA! ReÅarganta..."
+
+#: LYMessages.c:872
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Interpretanta nestintajn tabelojn ÅœALTITA! ReÅarganta..."
+
+#: LYMessages.c:873
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Tio estas malebligita dum linifaldado."
+
+#: LYMessages.c:874
+msgid "Trace not supported"
+msgstr "Spurado ne komprenita"
+
+#: LYMessages.c:795
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tDeÅovoj: ununaj=%.0f aliaj=%.0f, Alto=%.lf Pri=%.lf\n"
+
+#.
+#. * Set up the message for the username prompt, and then issue the
+#. * prompt.  The default username is included in the call to the
+#. * prompting function, but the password is NULL-ed and always replaced.
+#. * - FM
+#.
+#: WWW/Library/Implementation/HTAABrow.c:634
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Salutnomo por '%s' ĉe %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:904
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Ĉi tiu kliento ne scias kiel komponi prokurilajn atesto-informojn por skemo"
+
+#: WWW/Library/Implementation/HTAABrow.c:983
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Ĉi tiu kliento ne scias kiel komponi atesto-informojn por skemo"
+
+#: WWW/Library/Implementation/HTAABrow.c:1093
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Nevalida kapo '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1198
+msgid "Proxy authorization required -- retrying"
+msgstr "Prokurila atestado bezonita -- reprovanta"
+
+#: WWW/Library/Implementation/HTAABrow.c:1256
+msgid "Access without authorization denied -- retrying"
+msgstr "Atingo sen atestado rifuzata -- reprovanta"
+
+#: WWW/Library/Implementation/HTAccess.c:698
+msgid "Access forbidden by rule"
+msgstr "Atingo malpermesita laÅ­ regulo"
+
+#: WWW/Library/Implementation/HTAccess.c:793
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Dokumento kun kaÅita enhavo ne trovita en tenejo. Resendi?"
+
+#: WWW/Library/Implementation/HTAccess.c:949
+msgid "Loading failed, use a previous copy."
+msgstr "Åœargo malsukcesis, uzu antaÅ­an ekzempleron."
+
+#: WWW/Library/Implementation/HTAccess.c:1058 src/GridText.c:8867
+msgid "Loading incomplete."
+msgstr "Åœargo nekompleta."
+
+#: WWW/Library/Implementation/HTAccess.c:1089
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: konektingo aÅ­ dosiernomo returnita de malaktuala Åargo-funkcio!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1091
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Interna programa eraro. Bonvolu sendi retleteron al lynx-dev@nongnu.org!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1092
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Statuso returnita estis: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1098 src/LYMainLoop.c:8050
+msgid "Can't Access"
+msgstr "Ne eblas atingi"
+
+#: WWW/Library/Implementation/HTAccess.c:1106
+msgid "Unable to access document."
+msgstr "Ne eblas atingi dokumenton."
+
+#: WWW/Library/Implementation/HTFTP.c:849
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Enmetu pasvorton por uzanto %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:877
+msgid "Unable to connect to FTP host."
+msgstr "Ne eblas konektiÄi al FTP-gastiganto."
+
+#: WWW/Library/Implementation/HTFTP.c:1158
+msgid "close master socket"
+msgstr "fermu estran konektingon"
+
+#: WWW/Library/Implementation/HTFTP.c:1220
+msgid "socket for master socket"
+msgstr "konektingo por estra konektingo"
+
+#: WWW/Library/Implementation/HTFTP.c:2986
+msgid "Receiving FTP directory."
+msgstr "Ricevanta FTP-dosierujon."
+
+#: WWW/Library/Implementation/HTFTP.c:3122
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Transigis %d bajtojn (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3480
+msgid "connect for data"
+msgstr "konekti por datumoj"
+
+#: WWW/Library/Implementation/HTFTP.c:4141
+msgid "Receiving FTP file."
+msgstr "Ricevanta FTP-dosieron."
+
+#: WWW/Library/Implementation/HTFinger.c:278
+msgid "Could not set up finger connection."
+msgstr "Ne povis atingi finger-konekton."
+
+#: WWW/Library/Implementation/HTFinger.c:325
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Ne povis Åargi datumojn (neniu gastigantonomo en finger-adreso)"
+
+#: WWW/Library/Implementation/HTFinger.c:329
+msgid "Invalid port number - will only use port 79!"
+msgstr "Nevalida pordo-numero - sole uzos pordo 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:395
+msgid "Could not access finger host."
+msgstr "Ne povis atingi finger-gastiganton."
+
+#: WWW/Library/Implementation/HTFinger.c:403
+msgid "No response from finger server."
+msgstr "Neniu respondo de finger-servilo."
+
+#: WWW/Library/Implementation/HTNews.c:421
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Salutnomo por novaĵgrupa gastiganto '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:474
+msgid "Change username?"
+msgstr "Ĉu ÅanÄi salutnomon?"
+
+#: WWW/Library/Implementation/HTNews.c:478
+msgid "Username:"
+msgstr "Salutnomo:"
+
+#: WWW/Library/Implementation/HTNews.c:503
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Pasvorto por novaĵgrupa gastiganto '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:586
+msgid "Change password?"
+msgstr "Ĉu ÅanÄi pasvorton?"
+
+#: WWW/Library/Implementation/HTNews.c:1707
+#, c-format
+msgid "No matches for: %s"
+msgstr "Nenio kongruas kun %s"
+
+#: WWW/Library/Implementation/HTNews.c:1757
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Neniuj artikoloj en ĉi tiu novaĵgrupo.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1769
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Neniuj artikoloj en ĉi tiu gamo.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1782
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s, Artikoloj %d–%d"
+
+#: WWW/Library/Implementation/HTNews.c:1805
+msgid "Earlier articles"
+msgstr "Pli fruaj artikoloj"
+
+#: WWW/Library/Implementation/HTNews.c:1818
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Ekzistas proksimume %d artikloj en %s, identigiloj sekvas:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1880
+msgid "All available articles in "
+msgstr "Ĉiuj haveblaj artikoloj en "
+
+#: WWW/Library/Implementation/HTNews.c:2094
+msgid "Later articles"
+msgstr "Pli malfruaj artikoloj"
+
+#: WWW/Library/Implementation/HTNews.c:2117
+msgid "Post to "
+msgstr "AfiÅi al "
+
+#: WWW/Library/Implementation/HTNews.c:2338
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Ĉi tiu kliento ne enhavas regon por SNEWS-retadresoj."
+
+#: WWW/Library/Implementation/HTNews.c:2545
+msgid "No target for raw text!"
+msgstr "Neniu celo por nuda teksto!"
+
+#: WWW/Library/Implementation/HTNews.c:2575
+msgid "Connecting to NewsHost ..."
+msgstr "Konektanta al novaĵgrupa gastiganto..."
+
+#: WWW/Library/Implementation/HTNews.c:2627
+#, c-format
+msgid "Could not access %s."
+msgstr "Ne povis atingi servilon %s."
+
+#: WWW/Library/Implementation/HTNews.c:2733
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Ne povis legi informojn. Gastiganto %.20s respondis: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2737
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Ne eblas legi informojn. Vaka respondo de gastiganto %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2941
+msgid "Reading list of available newsgroups."
+msgstr "Leganta liston de haveblaj novaĵgrupoj."
+
+#: WWW/Library/Implementation/HTNews.c:2962
+msgid "Reading list of articles in newsgroup."
+msgstr "Leganta liston de artikolojn en novaĵgrupo."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading news article."
+msgstr "Leganta novaĵgrupan artiklon."
+
+#: WWW/Library/Implementation/HTNews.c:2998
+msgid "Sorry, could not load requested news."
+msgstr "BedaÅ­rinde ne povis ÅarÄi la peton."
+
+#: WWW/Library/Implementation/HTTCP.c:1286
+msgid "Address has invalid port"
+msgstr "Retadreso havas nevalidan pordon"
+
+#: WWW/Library/Implementation/HTTCP.c:1362
+msgid "Address length looks invalid"
+msgstr "Retadresa longo Åajnas nevalida"
+
+#: WWW/Library/Implementation/HTTCP.c:1622
+#: WWW/Library/Implementation/HTTCP.c:1640
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Ne eblas loki foran gastiganton %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1637
+#: WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Nevalida gastigantonomo %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1651
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Faranta konekto-tipon %s al %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1662
+msgid "socket failed."
+msgstr "konektingo malsukcesis."
+
+#: WWW/Library/Implementation/HTTCP.c:1676
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "konektingo malsukcesis: familio %d adreso %s pordo %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1700
+msgid "Could not make connection non-blocking."
+msgstr "Ne eblas fari konekton senbloka."
+
+#: WWW/Library/Implementation/HTTCP.c:1768
+msgid "Connection failed (too many retries)."
+msgstr "Konekto malsukcesis (tro da reprovoj.)"
+
+#: WWW/Library/Implementation/HTTCP.c:1955
+msgid "Could not restore socket to blocking."
+msgstr "Ne povis restarigi konektingon je bloka."
+
+#: WWW/Library/Implementation/HTTCP.c:2021
+msgid "Socket read failed (too many tries)."
+msgstr "Legado de konektingo malsukcesis (tro da provoj)."
+
+#: WWW/Library/Implementation/HTTP.c:81
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "SSL-revoko: %s, prevarify_ok=%d, ssl_okay=%d"
+
+#: WWW/Library/Implementation/HTTP.c:432
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "Retadreso enhavas salutnomon: %s"
+
+#: WWW/Library/Implementation/HTTP.c:486
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Atestilo eldonita de %s"
+
+#: WWW/Library/Implementation/HTTP.c:673
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Ĉi tiu kliento ne enhavas regon por HTTPS-retadresoj."
+
+#: WWW/Library/Implementation/HTTP.c:698
+msgid "Unable to connect to remote host."
+msgstr "Ne eblas konektiÄi al fora gastiganto."
+
+#: WWW/Library/Implementation/HTTP.c:730
+msgid "Retrying connection without TLS."
+msgstr "Reprovanta konekton sen TLS."
+
+#: WWW/Library/Implementation/HTTP.c:773
+msgid "no issuer was found"
+msgstr "neniu eldoninto troviÄis"
+
+#: WWW/Library/Implementation/HTTP.c:775
+msgid "issuer is not a CA"
+msgstr "eldoninto ne oficiala"
+
+#: WWW/Library/Implementation/HTTP.c:777
+msgid "the certificate has no known issuer"
+msgstr "la atestilo havas neniun konatan eldoninton"
+
+#: WWW/Library/Implementation/HTTP.c:779
+msgid "the certificate has been revoked"
+msgstr "la atestilo estis forprenita"
+
+#: WWW/Library/Implementation/HTTP.c:781
+msgid "the certificate is not trusted"
+msgstr "la atestilo ne estas fidinda"
+
+#: WWW/Library/Implementation/HTTP.c:855
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Konstatita konekto al %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:903 WWW/Library/Implementation/HTTP.c:945
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Konstatita konekto al %s (subj=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:975
+msgid "Can't find common name in certificate"
+msgstr "Ne eblas trovi komunan nomon en atestilo"
+
+#: WWW/Library/Implementation/HTTP.c:978
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL eraro:gastiganto(%s)!=cert(%s)-Ĉu daŭri?"
+
+#: WWW/Library/Implementation/HTTP.c:991
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "NEKONSTATITA konekto al %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:1000
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Sekura %d-bita HTTP-konekto de %s (%s)"
+
+#: WWW/Library/Implementation/HTTP.c:1467
+msgid "Sending HTTP request."
+msgstr "Sendante HTTP-peton."
+
+#: WWW/Library/Implementation/HTTP.c:1509
+msgid "Unexpected network write error; connection aborted."
+msgstr "Neanticipita reta skriberaro; konekto ĉesigita."
+
+#: WWW/Library/Implementation/HTTP.c:1515
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP-peto sendita; atendanta respondon."
+
+#: WWW/Library/Implementation/HTTP.c:1588
+#: WWW/Library/Implementation/HTTP.c:1598
+msgid "Unexpected network read error; connection aborted."
+msgstr "Neanticipita reta legeraro; konekto ĉesigita."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1800
+msgid "Got unexpected Informational Status."
+msgstr "Ricevis neanticipitan informan staton."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1834
+msgid "Request fulfilled.  Reset Content."
+msgstr "Peto plenumita. Enhavo restarigita."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1949
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Ricevis neanticipitan staton 304 Ne Modifita"
+
+#: WWW/Library/Implementation/HTTP.c:2012
+msgid "Redirection of POST content requires user approval."
+msgstr "Alidirektado de kaÅita enhavo bezonas aprobon de uzanto."
+
+#: WWW/Library/Implementation/HTTP.c:2027
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Havi kaÅitan enhavon. Traktanta ĉiaman alidirekton kiel provizoran.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2071
+msgid "Retrying with access authorization information."
+msgstr "Reprovante kun atingo-atestadaj informoj."
+
+#: WWW/Library/Implementation/HTTP.c:2083
+msgid "Show the 401 message body?"
+msgstr "Ĉu montri la mesaÄan korpon?"
+
+#: WWW/Library/Implementation/HTTP.c:2127
+msgid "Show the 407 message body?"
+msgstr "Ĉu montri la mesaÄan korpon?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2227
+msgid "Unknown status reply from server!"
+msgstr "Nekonata stata respondo el servilo!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "fora seanco %s:"
+
+#: WWW/Library/Implementation/HTWAIS.c:163
+msgid "Could not connect to WAIS server."
+msgstr "Ne povis konektiÄi al WAIS-servilo."
+
+#: WWW/Library/Implementation/HTWAIS.c:171
+msgid "Could not open WAIS connection for reading."
+msgstr "Ne eblas malfermi WAIS-konekton por legi."
+
+#: WWW/Library/Implementation/HTWAIS.c:193
+msgid "Diagnostic code is "
+msgstr "Diagnoza kodo estas "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Indekso "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " enhavas la jenajn %d erojn (%s) laÅ­tema al \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "La unua figuraĵo post ĉiu ero estas Äia relativa totalo, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "la dua estas la nombro da linioj en la ero."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (fuÅa dosiernomo)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(fuÅa identigilo"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Mallonga kapa rikordo, ne eblas montri)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Longa kapa rikordo, ne eblas montri\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Teksta rikordo\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Rubrika rikordo, ne eblas montri\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Koda rikordo, ne eblas montri\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Sintaksa eraro en WAIS-retadreso"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS-Indekso)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS-Indekso: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Ĉi tio estas ligilo por serĉi la "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS-indekson.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Enmutu la 's'erĉan komandon kaj tiam specifu serĉajn vortojn.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (en "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS-serĉo de \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" en: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Petro tro granda."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Serĉanta WAIS-datumbazon..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Serĉo interrompita."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Ne eblas konverti formaton de WAIS-dokumento"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Peto tro longa."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Atinganta WAIS-dokumenton..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Neniu teksto estis redonita!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:301
+msgid " NOT GIVEN in source file; "
+msgstr " NE DONITA en fontoteksta dosiero; "
+
+#: WWW/Library/Implementation/HTWSRC.c:324
+msgid " WAIS source file"
+msgstr "WAIS-a fontoteksta dosiero"
+
+#: WWW/Library/Implementation/HTWSRC.c:331
+msgid " description"
+msgstr " priskribo"
+
+#: WWW/Library/Implementation/HTWSRC.c:341
+msgid "Access links"
+msgstr "Atingaj ligiloj"
+
+#: WWW/Library/Implementation/HTWSRC.c:362
+msgid "Direct access"
+msgstr "Rekta atingo"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:365
+msgid " (or via proxy server, if defined)"
+msgstr " (aÅ­ per prokurilo, se difinita)"
+
+#: WWW/Library/Implementation/HTWSRC.c:380
+msgid "Maintainer"
+msgstr "Prizorganto"
+
+#: WWW/Library/Implementation/HTWSRC.c:388
+msgid "Host"
+msgstr "Gastiganto"
+
+#: src/GridText.c:699
+msgid "Memory exhausted, display interrupted!"
+msgstr "Maltro da memoro, montrado interrompita!"
+
+#: src/GridText.c:704
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Maltro da memoro, interrompos transigon!"
+
+#: src/GridText.c:3685
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr "*** MALTRO DA MEMORO ***"
+
+#: src/GridText.c:6146
+msgid "text entry field"
+msgstr "teksta kampo"
+
+#: src/GridText.c:6149
+msgid "password entry field"
+msgstr "pasvorta kampo"
+
+#: src/GridText.c:6152
+msgid "checkbox"
+msgstr "markobutono"
+
+#: src/GridText.c:6155
+msgid "radio button"
+msgstr "radiobutono"
+
+#: src/GridText.c:6158
+msgid "submit button"
+msgstr "sendobutono"
+
+#: src/GridText.c:6161
+msgid "reset button"
+msgstr "restarigobutono"
+
+#: src/GridText.c:6164
+msgid "script button"
+msgstr "skripta butono"
+
+#: src/GridText.c:6167
+msgid "popup menu"
+msgstr "Åprucmenuo"
+
+#: src/GridText.c:6170
+msgid "hidden form field"
+msgstr "kaÅita kampo"
+
+#: src/GridText.c:6173
+msgid "text entry area"
+msgstr "tekstregiono"
+
+#: src/GridText.c:6176
+msgid "range entry field"
+msgstr "gama kampo"
+
+#: src/GridText.c:6179
+msgid "file entry field"
+msgstr "dosiera kampo"
+
+#: src/GridText.c:6182
+msgid "text-submit field"
+msgstr "teksta sendobutono"
+
+#: src/GridText.c:6185
+msgid "image-submit button"
+msgstr "bilda sendobutono"
+
+#: src/GridText.c:6188
+msgid "keygen field"
+msgstr "Ålosila kampo"
+
+#: src/GridText.c:6191
+msgid "unknown form field"
+msgstr "nekonata kampo"
+
+#: src/GridText.c:6211 src/GridText.c:6218 src/LYList.c:248
+msgid "unknown field or link"
+msgstr "nekonata kampo aÅ­ ligilo"
+
+#: src/GridText.c:10649
+msgid "Can't open file for uploading"
+msgstr "Ne eblas malfermi dosieron por alÅuti"
+
+#: src/GridText.c:11837
+#, c-format
+msgid "Submitting %s"
+msgstr "Sendante je %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12894
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Eraro: rikordo TextAnchor fuÅita - proponas ĉesigi!"
+
+#. don't show previous state
+#: src/GridText.c:13056
+msgid "Wrap lines to fit displayed area?"
+msgstr "Ĉu linifaldi por plenigi montritan regionon?"
+
+#: src/GridText.c:13696
+msgid "Very long lines have been truncated!"
+msgstr "Tre longaj linioj estis mallongigitaj!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:364 src/LYShowInfo.c:368
+msgid "bytes"
+msgstr "bajtoj"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:303 src/HTAlert.c:329
+#, c-format
+msgid "Read %s of data"
+msgstr "Legita %s da datumo"
+
+#: src/HTAlert.c:326
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Legita %s el %s da datumo"
+
+#: src/HTAlert.c:335
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s en sekundo"
+
+#: src/HTAlert.c:347
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (paÅ­zanta dum %s)"
+
+#: src/HTAlert.c:351
+#, c-format
+msgid ", ETA %s"
+msgstr ", aproksimate je %s"
+
+#: src/HTAlert.c:373
+msgid " (Press 'z' to abort)"
+msgstr " (Premu 'z' por ĉesigi)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:411 src/HTAlert.c:459
+msgid "yes"
+msgstr "jes"
+
+#: src/HTAlert.c:414 src/HTAlert.c:460
+msgid "no"
+msgstr "ne"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:913
+msgid "Y/N/A/V"
+msgstr "J/N/I/E"
+
+#: src/HTML.c:5915
+msgid "Description:"
+msgstr "Priskribo:"
+
+#: src/HTML.c:5920
+msgid "(none)"
+msgstr "(neniu)"
+
+#: src/HTML.c:5924
+msgid "Filepath:"
+msgstr "(Dosiera vojo):"
+
+#: src/HTML.c:5930
+msgid "(unknown)"
+msgstr "(nekonata)"
+
+#: src/HTML.c:7370
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Dokumento havas nur kaÅitajn ligilojn. Uzu la komandon 'l'istigi."
+
+#: src/HTML.c:7869
+msgid "Source cache error - disk full?"
+msgstr "Eraro ĉe fontoteksta tenejo - ĉu disko plenigita?"
+
+#: src/HTML.c:7882
+msgid "Source cache error - not enough memory!"
+msgstr "Eraro ĉe fontoteksta tenejo - ne sufiĉo da memoro"
+
+#: src/LYBookmark.c:167
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"    Ĉi tiu dosiero estas HTML-prezento de la legosignoj de X Mosaic.\n"
+"    Malmodernaj aÅ­ nevalidaj ligiloj povas esti forigitaj per uzi la    komandon 'forigi legosignon'. Ordinare Äi estas la klavo 'R', sed eble    vi aÅ­ via sistemestro ÅanÄis Äin."
+
+#: src/LYBookmark.c:376
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Vi povas forigi ligilojn per la klavo 'R'<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:379
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Vi povas forigi ligilojn uzantaj la komandon 'forigi legosignon'. Äœi ordinare\n"
+"     estas la klavo 'R', sed eble vi aÅ­ via sistemestro\n"
+"     ÅanÄis Äin."
+
+#: src/LYBookmark.c:383
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Oni povas ankaŭ redakti ĉi tiun dosieron per ordinara tekstoredaktilo por forigi\n"
+"     malaktualajn aÅ­ nevalidajn ligilojn aÅ­ por ÅanÄi ilian ordon."
+
+#: src/LYBookmark.c:386
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Noto: Se vi redakti ĉi tiun dosieron permane\n"
+"      vi ne ÅanÄu la aranÄon en la linioj\n"
+"      aÅ­ aldoni aliajn HTML-markojn.\n"
+"      Certigi, ke legosignan ligilon estas en precize unu linio."
+
+#: src/LYBookmark.c:684
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Dosiero eble ne restarigebla de %s dum ĉi tiu seanco"
+
+#: src/LYCgi.c:158
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Ĉu vi volas plenumigi la programon \"%s\"?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:273
+msgid "Unable to access cgi script"
+msgstr "Ne eblas atingi CGI-programeton."
+
+#: src/LYCgi.c:707 src/LYCgi.c:710
+msgid "Good Advice"
+msgstr "Bona konsilo"
+
+#: src/LYCgi.c:714
+msgid "An excellent http server for VMS is available via"
+msgstr "Bonega HTTP-servilo por VMBS haveblas per"
+
+#: src/LYCgi.c:721
+msgid "this link"
+msgstr "ĉi tiu ligilo"
+
+#: src/LYCgi.c:725
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Äœi havigas nevenkeblan regadon de CGI-programetoj.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Eliranta per interrompo:"
+
+#: src/LYCookie.c:2537
+msgid "(from a previous session)"
+msgstr "(el eksa seanco)"
+
+#: src/LYCookie.c:2598
+msgid "Maximum Gobble Date:"
+msgstr "(maksimuma voranta dato:"
+
+#: src/LYCookie.c:2637
+msgid "Internal"
+msgstr "Interna"
+
+#: src/LYCookie.c:2638
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "eraro cookie_domain_flag_set, eliranta programon"
+
+#: src/LYCurses.c:1297
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Terminala startigo malsukcesis - ĉu nekonata terminala tipo?"
+
+#: src/LYCurses.c:1780
+msgid "Terminal ="
+msgstr "Terminalo ="
+
+#: src/LYCurses.c:1784
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Vi devas uzi terminalon vt100, 200 ktp kun ĉi tiu programo."
+
+#: src/LYCurses.c:1833
+msgid "Your Terminal type is unknown!"
+msgstr "Via terminala tipo estas nekonata!"
+
+#: src/LYCurses.c:1834
+msgid "Enter a terminal type:"
+msgstr "Enmetu terminalan tipon:"
+
+#: src/LYCurses.c:1848
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TERMINALA TIPO ESTAS AGORDITA AL"
+
+#: src/LYCurses.c:2398
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Paneanta eraro okazis en %s Eldono %s\n"
+
+#: src/LYCurses.c:2401
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Bonvolo sciigi vian sistemestron por konfirmi eraron, kaj se\n"
+"konfirmita, sciigi la dissendoliston lynx-dev. Eraraj raportoj havu koncizajn\n"
+"priskribojn de la komando kajaÅ­ retadreso, kio kaÅ­zis la problemon, la\n"
+"operaciuma nomo kaj eldonnumero, kaj aliaj koncernaj informoj.\n"
+
+#: src/LYEdit.c:272
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Eraro dum plenumigi tekstoredaktilon %s"
+
+#: src/LYEdit.c:275
+msgid "Editor killed by signal"
+msgstr "Tekstoredaktilo ĉesigita per signalo"
+
+#: src/LYEdit.c:280
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "Tekstoredaktilo redonis erarstaton %s"
+
+#: src/LYDownload.c:509
+msgid "Downloaded link:"
+msgstr "ElÅuta ligilo:"
+
+#: src/LYDownload.c:514
+msgid "Suggested file name:"
+msgstr "Proponita dosiernomo:"
+
+#: src/LYDownload.c:519
+msgid "Standard download options:"
+msgstr "Ordinaraj elÅutaj elektoj:"
+
+#: src/LYDownload.c:520
+msgid "Download options:"
+msgstr "ElÅutaj elektoj:"
+
+#: src/LYDownload.c:536
+msgid "Save to disk"
+msgstr "Konservi al disko"
+
+#: src/LYDownload.c:550
+msgid "View temporary file"
+msgstr "Vidi provizoran dosieron"
+
+#: src/LYDownload.c:557
+msgid "Save to disk disabled."
+msgstr "Konservado al disko malebligita."
+
+#: src/LYDownload.c:561 src/LYPrint.c:1322
+msgid "Local additions:"
+msgstr "Lokaj aldonoj:"
+
+#: src/LYDownload.c:572 src/LYUpload.c:209
+msgid "No Name Given"
+msgstr "Neniu nomo donita"
+
+#: src/LYHistory.c:679
+msgid "You selected:"
+msgstr "Vi elektis:"
+
+#: src/LYHistory.c:703 src/LYHistory.c:932
+msgid "(no address)"
+msgstr "(neniu adreso)"
+
+#: src/LYHistory.c:707
+msgid " (internal)"
+msgstr "(interna)"
+
+#: src/LYHistory.c:709
+msgid " (was internal)"
+msgstr " (estis interna)"
+
+#: src/LYHistory.c:807
+msgid " (From History)"
+msgstr "(El Historio)"
+
+#: src/LYHistory.c:852
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Vi vizitis (kaÅaj petoj, legosigno, menuo kaj listoj ne estas inkluzivitaj):"
+
+#: src/LYHistory.c:1154
+msgid "(No messages yet)"
+msgstr "(AnkoraÅ­ neniuj mesaÄoj)"
+
+#: src/LYLeaks.c:222
+msgid "Invalid pointer detected."
+msgstr "Nevalida montrilo malkovrita."
+
+#: src/LYLeaks.c:224 src/LYLeaks.c:262
+msgid "Sequence:"
+msgstr "Sinsekvo:"
+
+#: src/LYLeaks.c:227 src/LYLeaks.c:265
+msgid "Pointer:"
+msgstr "Montrilo:"
+
+#: src/LYLeaks.c:236 src/LYLeaks.c:243 src/LYLeaks.c:284
+msgid "FileName:"
+msgstr "Dosiernomo:"
+
+#: src/LYLeaks.c:239 src/LYLeaks.c:246 src/LYLeaks.c:287 src/LYLeaks.c:298
+msgid "LineCount:"
+msgstr "Nombro da linioj:"
+
+#: src/LYLeaks.c:260
+msgid "Memory leak detected."
+msgstr "Memorliko malkovrita."
+
+#: src/LYLeaks.c:268
+msgid "Contains:"
+msgstr "Enhavas:"
+
+#: src/LYLeaks.c:281
+msgid "ByteSize:"
+msgstr "Bajta grando:"
+
+#: src/LYLeaks.c:295
+msgid "realloced:"
+msgstr "reokupita:"
+
+#: src/LYLeaks.c:316
+msgid "Total memory leakage this run:"
+msgstr "Totala memorlekado dum ĉi tiu plenumado:"
+
+#: src/LYLeaks.c:320
+msgid "Peak allocation"
+msgstr "Kulmina okupado"
+
+#: src/LYLeaks.c:322
+msgid "Bytes allocated"
+msgstr "Bajtoj okupitaj"
+
+#: src/LYLeaks.c:324
+msgid "Total mallocs"
+msgstr "Totalaj okupadoj"
+
+#: src/LYLeaks.c:326
+msgid "Total frees"
+msgstr "Totalaj malokupadoj"
+
+#: src/LYList.c:88
+msgid "References in "
+msgstr "Referencoj en "
+
+#: src/LYList.c:91
+msgid "this document:"
+msgstr "ĉi tiu dokumento:"
+
+#: src/LYList.c:97
+msgid "Visible links:"
+msgstr "Videblaj ligiloj:"
+
+#: src/LYList.c:201 src/LYList.c:312
+msgid "Hidden links:"
+msgstr "KaÅitaj ligiloj:"
+
+#: src/LYList.c:349
+msgid "References"
+msgstr "Referencoj"
+
+#: src/LYList.c:353
+msgid "Visible links"
+msgstr "Videblaj ligiloj"
+
+#: src/LYLocal.c:289
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Ne eblas atingi staton de '%s'."
+
+#: src/LYLocal.c:354
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "La elektita ero ne estas dosier(uj)o. Peto ignorita."
+
+#: src/LYLocal.c:455
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Ne eblas fari %s pro sistemaj eraroj!"
+
+#: src/LYLocal.c:489
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Probabla fiasko ĉe %s pro sistemaj eraroj!"
+
+#: src/LYLocal.c:554 src/LYLocal.c:577
+#, c-format
+msgid "remove %s"
+msgstr "forigi je %s"
+
+#: src/LYLocal.c:597
+#, c-format
+msgid "touch %s"
+msgstr "tuÅi je %s"
+
+#: src/LYLocal.c:627
+#, c-format
+msgid "move %s to %s"
+msgstr "movi je %s al %s"
+
+#: src/LYLocal.c:675
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Jam ekzistas dosierujo kun tiu nomo. Peto ignorita."
+
+#: src/LYLocal.c:677
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Jam ekzistas dosiero kun tiu nomo! Peto ignorita"
+
+#: src/LYLocal.c:679
+msgid "The specified name is already in use!  Request ignored."
+msgstr "La specifa nomo jam estas uzita! Peto ignorita."
+
+#: src/LYLocal.c:691
+msgid "Destination has different owner!  Request denied."
+msgstr "Celo havas malsaman estron! Peto rifuzita."
+
+#: src/LYLocal.c:694
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Celo ne estas valida dosierujo. Peto rifuzita."
+
+#: src/LYLocal.c:710
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Fonto kaj celo estas la sama loko! Peto ignorita!"
+
+#: src/LYLocal.c:734
+msgid "Remove all tagged files and directories?"
+msgstr "Ĉu forigi ĉiujn markitajn dosier(uj)ojn?"
+
+#: src/LYLocal.c:807
+msgid "Enter new location for tagged items: "
+msgstr "Enmetu novan lokon por markitaj eroj: "
+
+#: src/LYLocal.c:905
+msgid "Enter new name for directory: "
+msgstr "Enmetu nomon por nova dosierujo: "
+
+#: src/LYLocal.c:907
+msgid "Enter new name for file: "
+msgstr "Enmetu novan nomon por dosiero: "
+
+#: src/LYLocal.c:919
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Nevalida signo (voja apartigilo) trovita! Peto ignorita."
+
+#: src/LYLocal.c:969
+msgid "Enter new location for directory: "
+msgstr "Enmetu novan lokon por dosierujo: "
+
+#: src/LYLocal.c:971
+msgid "Enter new location for file: "
+msgstr "Enmetu novan lokon por dosiero: "
+
+#: src/LYLocal.c:998
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Neanticipita fiasko - ne eblas trovi antaÅ­vojan apartigilon"
+
+#: src/LYLocal.c:1060
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Modifi nomon, lokon aÅ­ permeson (n,l,p): "
+
+#: src/LYLocal.c:1062
+msgid "Modify name or location (n or l): "
+msgstr "Modifi nomon aÅ­ lokon (n aÅ­ l): "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1091
+msgid "This feature not yet implemented!"
+msgstr "Tiu trajto ne jam estas realigita!"
+
+#: src/LYLocal.c:1112
+msgid "Enter name of file to create: "
+msgstr "Enmetu nomon de dosiero por krei: "
+
+#: src/LYLocal.c:1115 src/LYLocal.c:1152
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Nevalida alidirektado \"//\" trovita! Peto ignorita."
+
+#: src/LYLocal.c:1149
+msgid "Enter name for new directory: "
+msgstr "Enmetu nomon por nova dosierujo: "
+
+#: src/LYLocal.c:1190
+msgid "Create file or directory (f or d): "
+msgstr "Krei dosieron aÅ­ dosierujon (f aÅ­ d): "
+
+#: src/LYLocal.c:1232
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Ĉu forigi dosierujon '%s'?"
+
+#: src/LYLocal.c:1235
+msgid "Remove directory?"
+msgstr "Ĉu forigi dosierujon?"
+
+#: src/LYLocal.c:1240
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Ĉu forigi dosieron '%s'?"
+
+#: src/LYLocal.c:1242
+msgid "Remove file?"
+msgstr "Ĉu forigi dosieron?"
+
+#: src/LYLocal.c:1247
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Ĉu forigi molan ligilon '%s'?"
+
+#: src/LYLocal.c:1249
+msgid "Remove symbolic link?"
+msgstr "Ĉu forigi molan ligilon?"
+
+#: src/LYLocal.c:1347
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "BedaÅ­rinde ne scias kiel permesi dosierojn ekster Unikso."
+
+#: src/LYLocal.c:1376
+msgid "Unable to open permit options file"
+msgstr "Ne eblas malfermi permesan dosieron"
+
+#: src/LYLocal.c:1404
+msgid "Specify permissions below:"
+msgstr "Specifi permesojn sube:"
+
+#: src/LYLocal.c:1405 src/LYShowInfo.c:265
+msgid "Owner:"
+msgstr "Estro:"
+
+#: src/LYLocal.c:1421
+msgid "Group"
+msgstr "Grupo"
+
+#: src/LYLocal.c:1437
+msgid "Others:"
+msgstr "Aliaj:"
+
+#: src/LYLocal.c:1455
+msgid "form to permit"
+msgstr "formularo por permesi:"
+
+#: src/LYLocal.c:1551
+msgid "Invalid mode format."
+msgstr "Nevalida reÄima formato."
+
+#: src/LYLocal.c:1555
+msgid "Invalid syntax format."
+msgstr "Nevalida sintaksa formato."
+
+#: src/LYLocal.c:1742
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Averto! UUDecoded-dosiero ekzistos en la dosierujo en kiu vi plenumigis Linkon."
+
+#: src/LYLocal.c:1932
+msgid "NULL URL pointer"
+msgstr "Vaka retadresa montrilo"
+
+#: src/LYLocal.c:2014
+#, c-format
+msgid "Executing %s "
+msgstr "Plenumanta je %s "
+
+#: src/LYLocal.c:2017
+msgid "Executing system command. This might take a while."
+msgstr "Plenumanta sisteman komandon. Tio eble estos malrapida."
+
+#: src/LYLocal.c:2091
+msgid "Current directory:"
+msgstr "Aktuala dosierujo:"
+
+#: src/LYLocal.c:2094 src/LYLocal.c:2112
+msgid "Current selection:"
+msgstr "Aktuala elekto:"
+
+#: src/LYLocal.c:2098
+msgid "Nothing currently selected."
+msgstr "Nenio nune elektita."
+
+#: src/LYLocal.c:2114
+msgid "tagged item:"
+msgstr "markita ero:"
+
+#: src/LYLocal.c:2115
+msgid "tagged items:"
+msgstr "markitaj eroj:"
+
+#: src/LYLocal.c:2215 src/LYLocal.c:2224
+msgid "Illegal filename; request ignored."
+msgstr "Nevalida dosiernomo; peto ignorita."
+
+#. directory not writable
+#: src/LYLocal.c:2322 src/LYLocal.c:2381
+msgid "Install in the selected directory not permitted."
+msgstr "Instali en la elektitan dosierujon ne estas permesita."
+
+#: src/LYLocal.c:2377
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "La elektita ero ne estas dosiero. Peto ignorita."
+
+#: src/LYLocal.c:2386
+msgid "Just a moment, ..."
+msgstr " Nur momento"
+
+#: src/LYLocal.c:2403
+msgid "Error building install args"
+msgstr "Eraro dum munti instalajn parametrojn"
+
+#: src/LYLocal.c:2418 src/LYLocal.c:2449
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Fonto kaj celo estas samaj: %s"
+
+#: src/LYLocal.c:2425 src/LYLocal.c:2456
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Jam en la cela dosierujo: %s"
+
+#: src/LYLocal.c:2474
+msgid "Installation complete"
+msgstr "Instalado kompleta"
+
+#: src/LYLocal.c:2666
+msgid "Temporary URL or list would be too long."
+msgstr "Provizora retadreso aÅ­ listo estus tro longa."
+
+#: src/LYMail.c:544
+msgid "Sending"
+msgstr "Sendante"
+
+#: src/LYMail.c:1030
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "La ligilo %s :?: %s \n"
+
+#: src/LYMail.c:1032
+#, c-format
+msgid "called \"%s\"\n"
+msgstr ""
+"vokita \"%s\n"
+"\n"
+
+#: src/LYMail.c:1033
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "en la dosiero \"%s\" nomita \"%s\"\n"
+
+#: src/LYMail.c:1034
+msgid "was requested but was not available."
+msgstr "estis petita sed ne havebla."
+
+#: src/LYMail.c:1035
+msgid "Thought you might want to know."
+msgstr "Pensis, ke vi eble volus scii."
+
+#: src/LYMail.c:1037
+msgid "This message was automatically generated by"
+msgstr "La mesaÄo estis aÅ­tomate generita per"
+
+#: src/LYMail.c:1751
+msgid "No system mailer configured"
+msgstr "Neniu sistema retpoÅto-servilo agordita"
+
+#: src/LYMain.c:1049
+msgid "No Winsock found, sorry."
+msgstr "BedaÅ­rinde neniu Winsock"
+
+#: src/LYMain.c:1240
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Vi devas difini validan provizoran dosierujon per la medivariabloj TMP aÅ­ TEMP!"
+
+#: src/LYMain.c:1293 src/LYMainLoop.c:5260
+msgid "No such directory"
+msgstr "Ne ekzistas tiu dosiero"
+
+#: src/LYMain.c:1487
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Agorda dosiero \"%s\" ne haveblas.\n"
+"\n"
+
+#: src/LYMain.c:1497
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Linko-signaroj ne deklaritaj.\n"
+"\n"
+
+#: src/LYMain.c:1526
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Linko-redaktomapo ne deklarita.\n"
+"\n"
+
+#: src/LYMain.c:1608
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Linko-dosiero \"%s\" ne haveblas.\n"
+"\n"
+
+#: src/LYMain.c:1683
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "Ignoris %d signojn el ordinara enigo.\n"
+
+#: src/LYMain.c:1685
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Uzu parametrojn \"-stdin\" aÅ­ \"-\" por specifi, kiel trakti enigojn tubajn.\n"
+
+#: src/LYMain.c:1843
+msgid "Warning:"
+msgstr "Averto:"
+
+#: src/LYMain.c:2408
+msgid "persistent cookies state will be changed in next session only."
+msgstr "stato de daÅ­rantaj kuketoj ÅanÄiÄos nur en la sekva seanco."
+
+#: src/LYMain.c:2644 src/LYMain.c:2689
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Linko: ignoranta nekonatan signaron=%s\n"
+
+#: src/LYMain.c:3208
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Versio %s (%s)"
+
+#: src/LYMain.c:3246
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Muntita je %s %s %s\n"
+
+#: src/LYMain.c:3268
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "Kopirajtoj tenata de la Grupo pri Linko-Disvolvado,"
+
+#: src/LYMain.c:3269
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "la Universitato de Kansaso, CERN, kaj aliaj kontribuintoj."
+
+#: src/LYMain.c:3270
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Distribuita laÅ­ la GPL de GNU (Eldono 2)."
+
+#: src/LYMain.c:3271
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Vidu al http://lynx.isc.org/ por helpoj kaj informoj."
+
+#: src/LYMain.c:4104
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "UZO: %s [parametroj] [dosiero]\n"
+
+#: src/LYMain.c:4105
+#, c-format
+msgid "Options are:\n"
+msgstr "Parametroj estas:\n"
+
+#: src/LYMain.c:4406
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Nevalida parametro: %s\n"
+
+#: src/LYMainLoop.c:575
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Interna eraro: Nevalida musa ligilo %d!"
+
+#: src/LYMainLoop.c:696 src/LYMainLoop.c:5282
+msgid "A URL specified by the user"
+msgstr "Retadreso specifita de la uzanto"
+
+#: src/LYMainLoop.c:1148
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Encytpe multipart/form-data ne jam komprenita! Ne eblas sendi."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3177
+msgid "Help Screen"
+msgstr "Helpo-fako"
+
+#: src/LYMainLoop.c:3308
+msgid "System Index"
+msgstr "Sistema indekso"
+
+#: src/LYMainLoop.c:3556
+#, c-format
+msgid "Query parameter %d: "
+msgstr "Menda parametro %d: "
+
+#: src/LYMainLoop.c:3781 src/LYMainLoop.c:5558
+msgid "Entry into main screen"
+msgstr "Eniro en ĉefan fakon"
+
+#: src/LYMainLoop.c:4039
+msgid "No next document present"
+msgstr "Neniu sekva dokumento ĉeesta"
+
+#: src/LYMainLoop.c:4334
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "bedaŭrinde signaro por ĉi tiu dokumento specifita aparte..."
+
+#: src/LYMainLoop.c:5240
+msgid "cd to:"
+msgstr "Åd al:"
+
+#: src/LYMainLoop.c:5263
+msgid "A component of path is not a directory"
+msgstr "Komponanto de vojo ne estas dosierujo"
+
+#: src/LYMainLoop.c:5266
+msgid "failed to change directory"
+msgstr "ÅanÄi dosierujon malsukcesis"
+
+#: src/LYMainLoop.c:6496
+msgid "Reparsing document under current settings..."
+msgstr "Reinterpretanta dokumenton laŭ nunaj agordaĵoj..."
+
+#: src/LYMainLoop.c:6790
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Paneanta eraro - ne povis malfermi eligan dosieron %s\n"
+
+#: src/LYMainLoop.c:7128
+msgid "TABLE center enable."
+msgstr "Ebligita centrigo de tabeloj."
+
+#: src/LYMainLoop.c:7131
+msgid "TABLE center disable."
+msgstr "Malebligita centrigo de tabeloj."
+
+#: src/LYMainLoop.c:7211
+msgid "Current URL is empty."
+msgstr "Nuna retadreso estas vaka."
+
+#: src/LYMainLoop.c:7213 src/LYUtils.c:1881
+msgid "Copy to clipboard failed."
+msgstr "Malsukcesis kopii al poÅo."
+
+#: src/LYMainLoop.c:7215
+msgid "Document URL put to clipboard."
+msgstr "Dokumenta retadreso enpoÅigita."
+
+#: src/LYMainLoop.c:7217
+msgid "Link URL put to clipboard."
+msgstr "Ligila retadreso enpoÅigita."
+
+#: src/LYMainLoop.c:7244
+msgid "No URL in the clipboard."
+msgstr "Neniu retadreso en la poÅo."
+
+#: src/LYMainLoop.c:7936 src/LYMainLoop.c:8105
+msgid "-index-"
+msgstr "-indekso-"
+
+#: src/LYMainLoop.c:8045
+msgid "lynx: Can't access startfile"
+msgstr "Linko: ne eblas atingi hejmdosieron"
+
+#: src/LYMainLoop.c:8057
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "Linko: Hejmdosiero ne estis trovita aÅ­ ne havis la tipon text/html aÅ­ text/plain"
+
+#: src/LYMainLoop.c:8058
+msgid "      Exiting..."
+msgstr "      Eliranta..."
+
+#: src/LYMainLoop.c:8099
+msgid "-more-"
+msgstr "-plu-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Vi afiÅos al:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+"Bonvolu havigi vian retpoÅtadreson por la kapo From:\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+"Bonvolu havigi aÅ­ redakti la kapon Subject: (temo)\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+"Bonvolu havigi aŭ redakti la kapon Organization: (organizaĵo)\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+"Bonvolu enmetu vian mesaÄon sube."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "MesaÄo havas neniun originalan tekston!"
+
+#: src/LYOptions.c:770
+msgid "review/edit B)ookmarks files"
+msgstr "kontroli/redakti B) legosignajn dosierojn"
+
+#: src/LYOptions.c:772
+msgid "B)ookmark file: "
+msgstr "B) Legosigna dosiero: "
+
+#: src/LYOptions.c:2120 src/LYOptions.c:2127
+msgid "ON"
+msgstr "Åœaltita"
+
+#. verbose_img variable
+#: src/LYOptions.c:2121 src/LYOptions.c:2126 src/LYOptions.c:2289
+#: src/LYOptions.c:2300
+msgid "OFF"
+msgstr "MalÅaltita"
+
+#: src/LYOptions.c:2122
+msgid "NEVER"
+msgstr "Neniam"
+
+#: src/LYOptions.c:2123
+msgid "ALWAYS"
+msgstr "Ĉiam"
+
+#: src/LYOptions.c:2139 src/LYOptions.c:2281
+msgid "ignore"
+msgstr "ignoru"
+
+#: src/LYOptions.c:2140
+msgid "ask user"
+msgstr "demandu al uzanto"
+
+#: src/LYOptions.c:2141
+msgid "accept all"
+msgstr "akceptu ĉiujn"
+
+#: src/LYOptions.c:2153
+msgid "ALWAYS OFF"
+msgstr "Ĉiam malÅaltita"
+
+#: src/LYOptions.c:2154
+msgid "FOR LOCAL FILES ONLY"
+msgstr "Nur por lokaj dosieroj"
+
+#: src/LYOptions.c:2156
+msgid "ALWAYS ON"
+msgstr "Ĉiam Åaltita"
+
+#: src/LYOptions.c:2168
+msgid "Numbers act as arrows"
+msgstr "Nombroj kondutas kiel sagoj"
+
+#: src/LYOptions.c:2170
+msgid "Links are numbered"
+msgstr "Ligiloj estas nombritaj"
+
+#: src/LYOptions.c:2173
+msgid "Links and form fields are numbered"
+msgstr "Ligiloj kaj formularaj kampoj estas nombritaj"
+
+#: src/LYOptions.c:2176
+msgid "Form fields are numbered"
+msgstr "Formularaj kampoj estas nombritaj"
+
+#: src/LYOptions.c:2191
+msgid "Case insensitive"
+msgstr "Uskleco ne gravas"
+
+#: src/LYOptions.c:2192
+msgid "Case sensitive"
+msgstr "Uskleco gravas"
+
+#: src/LYOptions.c:2216
+msgid "prompt normally"
+msgstr "demandu kiel ordinare"
+
+#: src/LYOptions.c:2217
+msgid "force yes-response"
+msgstr "devigu respondon jesan"
+
+#: src/LYOptions.c:2218
+msgid "force no-response"
+msgstr "devigu respondon nean"
+
+#: src/LYOptions.c:2236
+msgid "Novice"
+msgstr "Novula"
+
+#: src/LYOptions.c:2237
+msgid "Intermediate"
+msgstr "Meznivela"
+
+#: src/LYOptions.c:2238
+msgid "Advanced"
+msgstr "Altnivela"
+
+#: src/LYOptions.c:2247
+msgid "By First Visit"
+msgstr "LaÅ­ unua vizito"
+
+#: src/LYOptions.c:2249
+msgid "By First Visit Reversed"
+msgstr "LaÅ­ unua vizito inversigita"
+
+#: src/LYOptions.c:2250
+msgid "As Visit Tree"
+msgstr "Kiel vizita arbo"
+
+#: src/LYOptions.c:2251
+msgid "By Last Visit"
+msgstr "LaÅ­ lasta vizito"
+
+#: src/LYOptions.c:2253
+msgid "By Last Visit Reversed"
+msgstr "LaÅ­ lasta vizito inversigita"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2264
+msgid "relaxed (TagSoup mode)"
+msgstr "malsevera"
+
+#: src/LYOptions.c:2265
+msgid "strict (SortaSGML mode)"
+msgstr "severa"
+
+#: src/LYOptions.c:2272
+msgid "Ignore"
+msgstr "Ignoru"
+
+#: src/LYOptions.c:2273
+msgid "Add to trace-file"
+msgstr "Aldonu al spuro-dosiero"
+
+#: src/LYOptions.c:2274
+msgid "Add to LYNXMESSAGES"
+msgstr "Aldonu al LYNXMESSAGES"
+
+#: src/LYOptions.c:2275
+msgid "Warn, point to trace-file"
+msgstr "Avertu, almontru al spuro-dosiero"
+
+#: src/LYOptions.c:2282
+msgid "as labels"
+msgstr "kiel teksto"
+
+#: src/LYOptions.c:2283
+msgid "as links"
+msgstr "kiel ligiloj"
+
+#: src/LYOptions.c:2290
+msgid "show filename"
+msgstr "montri dosiernomon"
+
+#: src/LYOptions.c:2301
+msgid "STANDARD"
+msgstr "ORDINARA"
+
+#: src/LYOptions.c:2302
+msgid "ADVANCED"
+msgstr "ALTNIVELA"
+
+#: src/LYOptions.c:2336
+msgid "Directories first"
+msgstr "Dosierujoj antaÅ­ dosieroj"
+
+#: src/LYOptions.c:2337
+msgid "Files first"
+msgstr "Dosieroj antaÅ­ dosierujoj"
+
+#: src/LYOptions.c:2338
+msgid "Mixed style"
+msgstr "Miksita ordo"
+
+#: src/LYOptions.c:2346 src/LYOptions.c:2366
+msgid "By Name"
+msgstr "LaÅ­ nomo"
+
+#: src/LYOptions.c:2347 src/LYOptions.c:2367
+msgid "By Type"
+msgstr "LaÅ­ tipo"
+
+#: src/LYOptions.c:2348 src/LYOptions.c:2368
+msgid "By Size"
+msgstr "LaÅ­ grando"
+
+#: src/LYOptions.c:2349 src/LYOptions.c:2369
+msgid "By Date"
+msgstr "LaÅ­ dato"
+
+#: src/LYOptions.c:2350
+msgid "By Mode"
+msgstr "LaÅ­ reÄimo"
+
+#: src/LYOptions.c:2352
+msgid "By User"
+msgstr "LaÅ­ uzanto"
+
+#: src/LYOptions.c:2353
+msgid "By Group"
+msgstr "LaÅ­ grupo"
+
+#: src/LYOptions.c:2378
+msgid "Do not show rate"
+msgstr "Ne montru rapidon"
+
+#: src/LYOptions.c:2379 src/LYOptions.c:2380
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "Montru rapidon (%s en sekundo)"
+
+#: src/LYOptions.c:2382 src/LYOptions.c:2383
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "Montru aproksimatan %sn en sekundo"
+
+#: src/LYOptions.c:2386
+msgid "Show progressbar"
+msgstr "Montru progresilon"
+
+#: src/LYOptions.c:2398
+msgid "Accept lynx's internal types"
+msgstr "Akceptu la internajn tipojn de Linko"
+
+#: src/LYOptions.c:2399
+msgid "Also accept lynx.cfg's types"
+msgstr "AnkaÅ­ akceptu la tipojn de lynx.cfg"
+
+#: src/LYOptions.c:2400
+msgid "Also accept user's types"
+msgstr " AnkaÅ­ akceptu tipojn de uzantoj"
+
+#: src/LYOptions.c:2401
+msgid "Also accept system's types"
+msgstr "AnkaÅ­ akceptu tipojn el la sistemo"
+
+#: src/LYOptions.c:2402
+msgid "Accept all types"
+msgstr "Akceptu ĉiujn tipojn"
+
+#: src/LYOptions.c:2411
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2412
+msgid "deflate"
+msgstr "malgrandigo"
+
+#: src/LYOptions.c:2415
+msgid "compress"
+msgstr "kunpremo"
+
+#: src/LYOptions.c:2418
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2420
+msgid "All"
+msgstr "Ĉiuj"
+
+#: src/LYOptions.c:2699 src/LYOptions.c:2728
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Uzu la klavon %s por la agorda menuo."
+
+#: src/LYOptions.c:3541
+msgid "(options marked with (!) will not be saved)"
+msgstr "(agordaĵoj markitaj kun (!) ne estos konservitaj)"
+
+#: src/LYOptions.c:3549
+msgid "General Preferences"
+msgstr "Äœeneralaj preferoj"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3553
+msgid "User mode"
+msgstr "UzantoreÄimo"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3559
+msgid "Editor"
+msgstr "Tekstoredaktilo"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3564
+msgid "Type of Search"
+msgstr "Serĉtipo"
+
+#: src/LYOptions.c:3569
+msgid "Security and Privacy"
+msgstr "Sekureco kaj privateco"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3573
+msgid "Cookies"
+msgstr "Kuketoj"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3587
+msgid "Invalid-Cookie Prompting"
+msgstr "Demandoj pri nevalidaj kuketoj"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3594
+msgid "SSL Prompting"
+msgstr "SSL-demandoj"
+
+#: src/LYOptions.c:3600
+msgid "Keyboard Input"
+msgstr "Klavara enmeto"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3604
+msgid "Keypad mode"
+msgstr "Ciferklavara reÄimo"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3610
+msgid "Emacs keys"
+msgstr "Klavoj kiel Emakso"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3616
+msgid "VI keys"
+msgstr "Klavoj kiel Vi"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3623
+msgid "Line edit style"
+msgstr "Linio-redaktila stilo"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3635
+msgid "Keyboard layout"
+msgstr "KlavararanÄo"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3649
+msgid "Display and Character Set"
+msgstr "Elmontrado kaj signaro"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3654
+msgid "Use locale-based character set"
+msgstr "Bazi signaron sur lokaĵaro"
+
+#: src/LYOptions.c:3661
+msgid "Use HTML5 charset replacements"
+msgstr "AnstataÅ­igi signojn laÅ­ HTML5"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3667
+msgid "Display character set"
+msgstr "Montra signaro"
+
+#: src/LYOptions.c:3698
+msgid "Assumed document character set"
+msgstr "Supozita dokumenta signaro"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3718
+msgid "CJK mode"
+msgstr "Azia reÄimo"
+
+#: src/LYOptions.c:3720
+msgid "Raw 8-bit"
+msgstr "Nuda 8-bita"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3728
+msgid "X Display"
+msgstr "X-servilo"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3734
+msgid "Document Appearance"
+msgstr "Dokumenta aspekto"
+
+#: src/LYOptions.c:3740
+msgid "Show color"
+msgstr "Montri kolorojn"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3764
+msgid "Show cursor"
+msgstr "Montri kursoron"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3770
+msgid "Underline links"
+msgstr "Substreki ligilojn"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3777
+msgid "Show scrollbar"
+msgstr "Montri rulumilon"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3784
+msgid "Popups for select fields"
+msgstr "Åœprucmenuoj por iaj kampoj"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3790
+msgid "HTML error recovery"
+msgstr "HTML-erara riparado"
+
+#. Bad HTML messages: SELECT
+#: src/LYOptions.c:3796
+msgid "Bad HTML messages"
+msgstr "MesaÄoj pri fuÅa HTML"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3802
+msgid "Show images"
+msgstr "Montri bildojn"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3816
+msgid "Verbose images"
+msgstr "Vortplenaj bildoj"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3824
+msgid "Headers Transferred to Remote Servers"
+msgstr "Ĉapoj transigitaj al foraj serviloj"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3828
+msgid "Personal mail address"
+msgstr "Propra retpoÅtadreso"
+
+#: src/LYOptions.c:3833
+msgid "Personal name for mail"
+msgstr "Propra nomo por la retpoÅtadreso"
+
+#: src/LYOptions.c:3840
+msgid "Password for anonymous ftp"
+msgstr "Pasvorto por sennoma FTP"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3846
+msgid "Preferred media type"
+msgstr "Preferata enhavtipo"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3852
+msgid "Preferred encoding"
+msgstr "Preferata kunprema formato"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3858
+msgid "Preferred document character set"
+msgstr "Preferata dokumenta signaro"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3863
+msgid "Preferred document language"
+msgstr "Preferata dokumenta lingvo"
+
+#: src/LYOptions.c:3869
+msgid "Send User-Agent header"
+msgstr "Konigi la TTT-legilon"
+
+#: src/LYOptions.c:3871
+msgid "User-Agent header"
+msgstr "TTT-legila identigilo"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3879
+msgid "Listing and Accessing Files"
+msgstr "Listigi kaj atingi dosierojn"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3884
+msgid "Use Passive FTP"
+msgstr "Uzu pasivan FTP-on"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3890
+msgid "FTP sort criteria"
+msgstr "FTP-ordigaj kriterioj"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3898
+msgid "Local directory sort criteria"
+msgstr "Ordigi lokajn dosierujojn kun"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3904
+msgid "Local directory sort order"
+msgstr "Ordo por lokaj dosierujoj"
+
+#: src/LYOptions.c:3913
+msgid "Show dot files"
+msgstr "Montri punkto-dosierojn"
+
+#: src/LYOptions.c:3921
+msgid "Execution links"
+msgstr "Plenumeblaj ligiloj"
+
+#: src/LYOptions.c:3939
+msgid "Pause when showing message"
+msgstr "PaÅ­zu dum montri mesaÄojn"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3946
+msgid "Show transfer rate"
+msgstr "Montri transigo-rapidon"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3966
+msgid "Special Files and Screens"
+msgstr "Specialaj dosieroj kaj ekranoj"
+
+#: src/LYOptions.c:3971
+msgid "Multi-bookmarks"
+msgstr "Plurnivelaj legosignoj"
+
+#: src/LYOptions.c:3979
+msgid "Review/edit Bookmarks files"
+msgstr "Kontroli/redakti legosignajn dosierojn"
+
+#: src/LYOptions.c:3982
+msgid "Goto multi-bookmark menu"
+msgstr "Iri al menuo pri plurnivelaj legosignoj"
+
+#: src/LYOptions.c:3984
+msgid "Bookmarks file"
+msgstr "Legosigna dosiero"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3991
+msgid "Auto Session"
+msgstr "AÅ­tomata seanco"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3997
+msgid "Session file"
+msgstr "Seanco-dosiero"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:4003
+msgid "Visited Pages"
+msgstr "Vizititaj paÄoj"
+
+#: src/LYOptions.c:4008
+msgid "View the file "
+msgstr "Vidi la dosierojn "
+
+#: src/LYPrint.c:947
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Printo-tasko kompleta.\n"
+
+#: src/LYPrint.c:1274
+msgid "Document:"
+msgstr "Dokumento:"
+
+#: src/LYPrint.c:1275
+msgid "Number of lines:"
+msgstr "Nombro da linioj:"
+
+#: src/LYPrint.c:1276
+msgid "Number of pages:"
+msgstr "Nombro da paÄoj:"
+
+#: src/LYPrint.c:1277
+msgid "pages"
+msgstr "paÄoj"
+
+#: src/LYPrint.c:1277
+msgid "page"
+msgstr "paÄo"
+
+#: src/LYPrint.c:1278
+msgid "(approximately)"
+msgstr "(proksimume)"
+
+#: src/LYPrint.c:1285
+msgid "Some print functions have been disabled!"
+msgstr "Iuj printaj funkcioj estis malebligitaj!"
+
+#: src/LYPrint.c:1289
+msgid "Standard print options:"
+msgstr "Ordinaraj printaj agordaĵoj:"
+
+#: src/LYPrint.c:1290
+msgid "Print options:"
+msgstr "Printaj agordaĵoj"
+
+#: src/LYPrint.c:1297
+msgid "Save to a local file"
+msgstr "Konservi al loka dosiero"
+
+#: src/LYPrint.c:1299
+msgid "Save to disk disabled"
+msgstr "Konservado al disko malebligita"
+
+#: src/LYPrint.c:1306
+msgid "Mail the file"
+msgstr "Sendi la dosieron per retpoÅto"
+
+#: src/LYPrint.c:1313
+msgid "Print to the screen"
+msgstr "Printi la ekranon"
+
+#: src/LYPrint.c:1318
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Printi al printilo almetita al via terminalo vt100"
+
+#: src/LYReadCFG.c:441
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Sintaksa eraro dum legi la Ålosilvorton COLOR en agorda dosiero:\n"
+"La linio devas esti laÅ­ la formo:\n"
+"COLOR:ENTJERO:MALFONO:FONO\n"
+"\n"
+"MALFONO kaj FONO devas esti unu el:\n"
+"La specialaj ĉenoj 'nocolor' (senkolora) aŭ 'default' (aŭtomata), aŭ\n"
+
+#: src/LYReadCFG.c:454
+msgid "Offending line:"
+msgstr "Ofenda linio:"
+
+#: src/LYReadCFG.c:757
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "klavoÅanÄo de %s al %s por %s malsukcesis\n"
+
+#: src/LYReadCFG.c:764
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "klavoÅanÄo de %s al %s malsukcesis\n"
+
+#: src/LYReadCFG.c:785
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "nevalida linio-redaktila elekto %s por klavo %s, elektanta ĉion\n"
+
+#: src/LYReadCFG.c:810 src/LYReadCFG.c:822
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "agordi linio-redaktilan bindadon por klavo %s (0x%x) al 0x(%x) por %s malsukcesis\n"
+
+#: src/LYReadCFG.c:826
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "agordi linio-redaktilon bindadon por klavo %s (0x%x) por %s malsukcesis\n"
+
+#: src/LYReadCFG.c:922
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Linko: ne eblas starti, CERN-regula dosiero %s ne haveblas\n"
+
+#: src/LYReadCFG.c:923
+msgid "(no name)"
+msgstr "(neniu nomo)"
+
+#: src/LYReadCFG.c:2044
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Pli ol %d nestita inkludoj en lynx.cfg -- eble estas volvaĵo?\n"
+
+#: src/LYReadCFG.c:2046
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Lasta provita inkludo estis '%s',\n"
+
+#: src/LYReadCFG.c:2047
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "inkluzivita el '%s'.\n"
+
+#: src/LYReadCFG.c:2450 src/LYReadCFG.c:2463 src/LYReadCFG.c:2521
+msgid "The following is read from your lynx.cfg file."
+msgstr "La jena estis legita el la dosiero lynx.cfg."
+
+#: src/LYReadCFG.c:2451 src/LYReadCFG.c:2464
+msgid "Please read the distribution"
+msgstr "Bonvolu legi la distribuaĵon"
+
+#: src/LYReadCFG.c:2457 src/LYReadCFG.c:2467
+msgid "for more comments."
+msgstr "por pliaj komentoj."
+
+#: src/LYReadCFG.c:2503
+msgid "RELOAD THE CHANGES"
+msgstr "REÅœARGU LA ÅœANÄœOJ"
+
+#: src/LYReadCFG.c:2511
+msgid "Your primary configuration"
+msgstr "Via ĉefa agordo"
+
+#: src/LYShowInfo.c:177
+msgid "Directory that you are currently viewing"
+msgstr "Dosierujo, kiun vi aktuale estas rigardanta"
+
+#: src/LYShowInfo.c:180
+msgid "Name:"
+msgstr "Nomo:"
+
+#: src/LYShowInfo.c:183
+msgid "URL:"
+msgstr "Retadreso:"
+
+#: src/LYShowInfo.c:197
+msgid "Directory that you have currently selected"
+msgstr "Dosiero, kiu estas aktuale elektita"
+
+#: src/LYShowInfo.c:199
+msgid "File that you have currently selected"
+msgstr "Dosiero, kiu estas aktuale elektita"
+
+#: src/LYShowInfo.c:202
+msgid "Symbolic link that you have currently selected"
+msgstr "Mola ligilo, kiu estas aktuale elektita"
+
+#: src/LYShowInfo.c:205
+msgid "Item that you have currently selected"
+msgstr "Ero, kiu estas aktuale elektita"
+
+#: src/LYShowInfo.c:207
+msgid "Full name:"
+msgstr "Plena nomo:"
+
+#: src/LYShowInfo.c:217
+msgid "Unable to follow link"
+msgstr "Ne eblas sekvi ligilon"
+
+#: src/LYShowInfo.c:219
+msgid "Points to file:"
+msgstr "Almontras al dosiero:"
+
+#: src/LYShowInfo.c:224
+msgid "Name of owner:"
+msgstr "Nomo de estro:"
+
+#: src/LYShowInfo.c:227
+msgid "Group name:"
+msgstr "Grupnomo:"
+
+#: src/LYShowInfo.c:229
+msgid "File size:"
+msgstr "Dosiergrando"
+
+#: src/LYShowInfo.c:231
+msgid "(bytes)"
+msgstr "(bajtoj)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:236
+msgid "Creation date:"
+msgstr "Krea dato:"
+
+#: src/LYShowInfo.c:239
+msgid "Last modified:"
+msgstr "Laste modifita:"
+
+#: src/LYShowInfo.c:242
+msgid "Last accessed:"
+msgstr "Laste atingita:"
+
+#: src/LYShowInfo.c:248
+msgid "Access Permissions"
+msgstr "Atingaj permesoj"
+
+#: src/LYShowInfo.c:283
+msgid "Group:"
+msgstr "Grupo:"
+
+#: src/LYShowInfo.c:303
+msgid "World:"
+msgstr "Mondo:"
+
+#: src/LYShowInfo.c:310
+msgid "File that you are currently viewing"
+msgstr "Dosiero, kiun vi estas aktuale rigardanta"
+
+#: src/LYShowInfo.c:318 src/LYShowInfo.c:422
+msgid "Linkname:"
+msgstr "Ligilnomo:"
+
+#: src/LYShowInfo.c:324 src/LYShowInfo.c:339
+msgid "Charset:"
+msgstr "Signaro:"
+
+#: src/LYShowInfo.c:338
+msgid "(assumed)"
+msgstr "(supozita)"
+
+#: src/LYShowInfo.c:345
+msgid "Server:"
+msgstr "Servilo:"
+
+#: src/LYShowInfo.c:348
+msgid "Date:"
+msgstr "Dato:"
+
+#: src/LYShowInfo.c:351
+msgid "Last Mod:"
+msgstr "Lasta modifo:"
+
+#: src/LYShowInfo.c:356
+msgid "Expires:"
+msgstr "EksvalidiÄos:"
+
+#: src/LYShowInfo.c:359
+msgid "Cache-Control:"
+msgstr "Cache-Control:"
+
+#: src/LYShowInfo.c:362
+msgid "Content-Length:"
+msgstr "Enhavo-longo:"
+
+#: src/LYShowInfo.c:366
+msgid "Length:"
+msgstr "Longo:"
+
+#: src/LYShowInfo.c:371
+msgid "Language:"
+msgstr "Lingvo:"
+
+#: src/LYShowInfo.c:378
+msgid "Post Data:"
+msgstr "KaÅitaj datumoj"
+
+#: src/LYShowInfo.c:381
+msgid "Post Content Type:"
+msgstr "Enhavo-tipo de kaÅitaj datumoj:"
+
+#: src/LYShowInfo.c:384
+msgid "Owner(s):"
+msgstr "Estro(j):"
+
+#: src/LYShowInfo.c:389
+msgid "size:"
+msgstr "grando:"
+
+#: src/LYShowInfo.c:391
+msgid "lines"
+msgstr "linioj"
+
+#: src/LYShowInfo.c:395
+msgid "forms mode"
+msgstr "formulara reÄimo"
+
+#: src/LYShowInfo.c:397
+msgid "source"
+msgstr "fontoteksto"
+
+#: src/LYShowInfo.c:398
+msgid "normal"
+msgstr "kutima"
+
+#: src/LYShowInfo.c:400
+msgid ", safe"
+msgstr ", sekura"
+
+#: src/LYShowInfo.c:402
+msgid ", via internal link"
+msgstr ", per interna ligilo"
+
+#: src/LYShowInfo.c:407
+msgid ", no-cache"
+msgstr ", sen tenejo"
+
+#: src/LYShowInfo.c:409
+msgid ", ISMAP script"
+msgstr ", ISMAP-programeto"
+
+#: src/LYShowInfo.c:411
+msgid ", bookmark file"
+msgstr ", legosigna dosiero"
+
+#: src/LYShowInfo.c:415
+msgid "mode:"
+msgstr "reÄimo:"
+
+#: src/LYShowInfo.c:421
+msgid "Link that you currently have selected"
+msgstr "Ligilo, kiu estas aktuale elektita"
+
+#: src/LYShowInfo.c:430
+msgid "Method:"
+msgstr "Metodo:"
+
+#: src/LYShowInfo.c:434
+msgid "Enctype:"
+msgstr "Enctype:"
+
+#: src/LYShowInfo.c:440
+msgid "Action:"
+msgstr "Ago:"
+
+#: src/LYShowInfo.c:446
+msgid "(Form field)"
+msgstr "(Formulara kampo)"
+
+#: src/LYShowInfo.c:457
+msgid "No Links on the current page"
+msgstr "Neniuj ligiloj en la nuna paÄo"
+
+#: src/LYShowInfo.c:463
+msgid "Server Headers:"
+msgstr "Servilaj kapoj:"
+
+#: src/LYStyle.c:331
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Sintaksa eraro en la stildosiero:\n"
+"[%s]\n"
+"La linio devas esti laÅ­ la formo:\n"
+"ELEMENTO:STILO:KOLORO (ekz-e em:bold:brightblue:white)\n"
+"ELEMENTO estas unu el EM,STRONG,I,U,BLINK ktp.\n"
+"\n"
+
+#: src/LYTraversal.c:111
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "jen listo de la historia stako por ke vi povu rekonstrui"
+
+#: src/LYUpload.c:77
+msgid "ERROR! - upload command is misconfigured"
+msgstr "ERARO! - alÅuta komando estas fuÅe agordita"
+
+#: src/LYUpload.c:98
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Nevalida alidirektado \"../\" trovita! Peto ignorita."
+
+#: src/LYUpload.c:101
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Nevalida signo \"/\" trovita! Peto ignorita."
+
+#: src/LYUpload.c:104
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Nevalida alidirektado per \"~\" trovita! Peto ignorita."
+
+#: src/LYUpload.c:157
+msgid "Unable to upload file."
+msgstr "Ne eblas alÅuti dosieron."
+
+#: src/LYUpload.c:199
+msgid "Upload To:"
+msgstr "AlÅuti al:"
+
+#: src/LYUpload.c:200
+msgid "Upload options:"
+msgstr "AlÅutaj elektoj:"
+
+#: src/LYUtils.c:1883
+msgid "Download document URL put to clipboard."
+msgstr "ElÅuti dokumentan retadreson en poÅo."
+
+#: src/LYUtils.c:2668
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Neanticipita atingo-protokolo por tiu retadresa skemo."
+
+#: src/LYUtils.c:3492
+msgid "Too many tempfiles"
+msgstr "Tro da provizoraj dosieroj"
+
+#: src/LYUtils.c:3792
+msgid "unknown restriction"
+msgstr "nekonata malhelpo"
+
+#: src/LYUtils.c:3823
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Neniuj malhelpoj elektitaj.\n"
+
+#: src/LYUtils.c:3826
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Malhelpoj elektitaj:\n"
+
+#: src/LYUtils.c:5212
+msgid "Cannot find HOME directory"
+msgstr "Ne eblas trovi la hejmdosierujon."
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Ordinare malaktivigite. ÅœanÄi la agordaĵon ENABLE_LYNXRC en lynx.cfg\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies permesas, ke uzanto specifu ĉu aŭtomate\n"
+"akcepti ĉiujn kuketojn aŭ ne. La aŭtomata estas \"FALSE\", kiu demandos\n"
+"pri ĉiu kuketo. Valoro \"TRUE\" akceptos\n"
+"ĉiujn kuketojn.\n"
+
+#: src/LYrcFile.c:333
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"anonftp_password permesas, ke uzanto specifu al Linko propran\n"
+"retpoÅtadreson kiel la posvorton por sennoma FTP. Se ne havas\n"
+"valoron,Linko uzos la propran retpoÅtadreson. LaÅ­vole\n"
+"elektu alian valoron.\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file specifas la nomon kaj lokon de la apriora legosigna\n"
+"dosiero en kiu la uzanto povas alglui ligilojn por facila atingo\n"
+"pli malfrue.\n"
+
+#: src/LYrcFile.c:347
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Se case_sensitive_searching estas \"on\", kiam la uzanto startigas\n"
+"serĉo per la klavojn 's' aŭ '/', la serĉo plenumota ne ignoros la usklecon\n"
+"anstataÅ­ la ordinara konduto de ignori usklecon (valoro \"off\").\n"
+
+#: src/LYrcFile.c:352
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"La difino character_set regas la prezenton de 8-bitaj\n"
+"signoj por via terminalo. Se 8-bitaj signoj ne Äuste elmontriÄas\n"
+"ĉe via ekrano, vi provu malsaman 8-bitan signaron\n"
+"aŭ uzu la 7-bitajn signarajn aproksimaĵojn.\n"
+"Aktuale validaj signaroj estas:\n"
+
+#: src/LYrcFile.c:359
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains kaj cookie_reject domains estas listoj de domajnoj\n"
+"el kiuj Linko aŭtomate akceptu aŭ rifuzu (respektive) ĉiujn kuketojn,\n"
+"apartigante de komoj. Se domajno estas specifita en ambaŭ agordaĵoj, rifuzado\n"
+"regos. La parametro accept_all_cookies superregos ĉiujn\n"
+"agordaĵojn ĉi tie.\n"
+
+#: src/LYrcFile.c:367
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file specifas la dosieron el kiu legi daÅ­rantajn kuketojn.\n"
+"La apriora estas ~/"
+
+#: src/LYrcFile.c:372
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, kaj\n"
+"cookie_query_invalid_domains estas listoj, apartigantaj de komoj, de kiuj domajnoj\n"
+"estu submetita al variantaj gradoj de kontrolado. Se vi specifas,\n"
+"ke domajno ricevos severan kontroladon, severa konformado al RFC2109\n"
+"aplikiÄos. Domajno kun malsevera kontrolado estos permesita doni kuketojn\n"
+"kun nevalidaj atributoj vojo kaj domajno. Ĉiuj domajno aŭtomate estos demandi\n"
+"al la uzanto pri nevalida vojo aÅ­ domajno.\n"
+
+#: src/LYrcFile.c:386
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order specifas la dosierujlistan ordon de DIRED_SUPPORT\n"
+"(se realigita). La apriora estas \"ORDER_BY_NAME\"\n"
+
+#: src/LYrcFile.c:391
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles specifas la dosierujlistan stilon de DIRED_SUPPORT\n"
+"(se realigita). La apriora estas \"MIXED_STYLE\", kiu ordigas laÅ­ kaj\n"
+"dosieroj kaj dosierujoj. \"FILES_FIRST\" listigas dosierojn antaÅ­ aliaj\n"
+"kaj \"DIRECTORIES_FIRST\" listigas dosierujojn antaÅ­ aliaj.\n"
+
+#: src/LYrcFile.c:399
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Se emacs_keys estas \"on\", la ordinaraj moviloj de Emakso:\n"
+"  ^N = suben        ^P = supren\n"
+"  ^B = maldekstren  ^F = dekstren\n"
+"estos aktivaj.\n"
+
+#: src/LYrcFile.c:405
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor specifas la tekstoredaktilon plenumontan por redakti lokajn dosierojn\n"
+"aÅ­ sendi retleterojn. So neniu estas specifita, do redakti dosierojn estos malebligitaj\n"
+"se Äi ne estas aktivigita laÅ­ la komanda linio, kaj la integra liniredaktilo\n"
+"estos uzata por sendi retleterojn.\n"
+
+#: src/LYrcFile.c:412
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method specifas laÅ­ kiu valoro ordigi kiam oni vidas\n"
+"dosierlistojn kiajn FTP-dosierujojn. La elektoj estas:\n"
+"   BY_FILENAME -- ordigas laÅ­ dosiernomo\n"
+"   BY_TYPE     -- ordigas laÅ­ dosiertipo\n"
+"   BY_SIZE     -- ordigas laÅ­ dosiergrando\n"
+"   BY_DATE     -- ordigas laÅ­ dosierdato\n"
+
+#: src/LYrcFile.c:435
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"line_mode specifas la klavojn uzi por enmeti ĉenojn en\n"
+"demandiloj kaj formularoj. Se linedit_mode estas \"Default Binding\",\n"
+"la sekvaj stirsignoj estas uzatoj por movi kaj forigi:\n"
+"\n"
+"                AntaÅ­a Sekva      Enen-klavon = Akcepti enmeton\n"
+"   Movi signon: <-      ->        ^G          = Nuligi enmeton\n"
+"   Movi vorton: ^P      ^N        ^U          = ForviÅi linion\n"
+" Forigi signon: ^H      ^R        ^A          = Komenco de linio\n"
+" Forigi vorton: ^B      ^F        ^E          = Fino de linio\n"
+"\n"
+"Aktuale reÄimoj linio-redaktantaj estas:\n"
+
+#: src/LYrcFile.c:453
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"La sekvaj permesas, ke vi difinu sublegosignajn dosierojn kaj priskribojn.\n"
+"La formato estas multi_bookmark<majusklo>=<dosiernomo>,<priskribo>\n"
+"Maksimume 26 legosignaj dosieroj (por la askiaj ĉefliteroj) estas permesitaj.\n"
+"Oni komencas kun \"multi_bookmarkB\" pro tio, ke 'A' estas la ĉefa (vidu supran).\n"
+
+#: src/LYrcFile.c:459
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address specifas vian propran retpoÅtadreson. La\n"
+"adreso estos sendita dum HTTP-aj dosiero-transigoj por atestado kaj\n"
+"protokolado, kaj por retleteroj.\n"
+"Se vi ne volas, ke ĉi tiu informo eldoniÄu, donu al NO_FROM_HEADER\n"
+"la valoron TRUE en lynx.cfg, aÅ­ uzu la komandlinian parametron -nofrom.\n"
+"Vi ankaŭ povas restigi ĉi tiun kampo vaka, sed se vi faras tion, via\n"
+"retpoÅtadreso ne aÅ­tomate uziÄos en viaj retleteroj.\n"
+
+#: src/LYrcFile.c:468
+msgid ""
+"personal_mail_name specifies your personal name, for mail.  The\n"
+"name is sent for mailed comments.  Lynx will prompt for this,\n"
+"showing the configured value as a default when sending mail.\n"
+"This is not necessarily the same as a name provided as part of the\n"
+"personal_mail_address.\n"
+"Lynx does not save your changes to that default value as a side-effect\n"
+"of sending email.  To update the default value, you must use the options\n"
+"menu, or modify this file directly.\n"
+msgstr ""
+"personal_mail_name specifas vian propran nomon, por retpoÅto. La\n"
+"nomo estas sendita por retleteroj. Linko demandos por tio,\n"
+"montrante la agorditan valoron aÅ­tomate dum sendi retleterojn.\n"
+"Ĉi tio ne estas nepre la sama kiel la nomo provizita kiel parto de la\n"
+"personal_mail_address.\n"
+"Linko ne devos konservi viajn ÅanÄojn al tiu valoro kiel kromefiko\n"
+"de sendi retleterojn. Aktualigi la aÅ­tomatan valorono, vi devas uzi la agordojn\n"
+"aŭ modifi ĉi tiun dosieron permane.\n"
+
+#: src/LYrcFile.c:478
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset specifas la signaron laÅ­ MIME-notacio (ekzemple\n"
+"ISO-8859-2, ISO-8859-5), kion Linko indikos preferita en petoj\n"
+"al HTTP-serviloj uzante la kapon Accept-Charset. La valoro ne inkluzivu\n"
+"la signarojn ISO-8859-1 aÅ­ US-ASCII pro tio, ke tiuj valoroj jam estas\n"
+"aÅ­tomate supozitaj. Povas esti listo apartigitaj per komoj.\n"
+"Se dosiero laÅ­ tiu signaro estas havebla, la servilo sendos Äin.\n"
+"Se neniu kapo Accept-Charset estas ĉeesta, la aŭtomata valoro estas ĉia\n"
+"signaro aprobinda. Se kapo Accept-Charset ĉeestas,\n"
+"kaj se la servilo ne eblas sendi respondon, kiu estas aprobinda\n"
+"laÅ­ la kapo Accept-Charset, do la servilo sendu eraro-respondon\n"
+"kvankam sendi malaprobindan respondon\n"
+"ankaÅ­ estas permesata.\n"
+
+#: src/LYrcFile.c:494
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language specifas la lingvon laÅ­ MIME-notacio (ekzemple en,\n"
+"fr, povas esti listo, apartigita per komoj, laÅ­ prefero)\n"
+"kion Linko indikos, ke vi preferas en petoj al HTTP-serviloj.\n"
+"Se dosiero en tiu lingvo estas havebla, la servilo sendos Äin.\n"
+"Aliokaze la servilo sendos la dosieron en sia apriora lingvo.\n"
+
+#: src/LYrcFile.c:505
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Se run_all_execution_links havas la valoron \"on\", ĉiuj lokaj\n"
+"plenumeblaj ligiloj estos plenumigitaj kiam ili estas elektitaj.\n"
+"\n"
+"ATENTO - Tio estas eventuale TRE danÄera pro\n"
+"eventualaj nekonataj fontoj.\n"
+"Pro tio ekzistas eblecon de malica programo,\n"
+"kiun povus forigi dosierojn.\n"
+"aÅ­ kompromiti sekurecon. Nur elektu la valoron \"on\",\n"
+"se vi vidas informojn el tute fidindaj fontoj.\n"
+
+#: src/LYrcFile.c:516
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Se run_execution_links_on_local_files havas la valoron \"on\",\n"
+"ĉiuj lokaj plenumeblaj ligiloj trovitaj en LOKAJ dosieroj\n"
+"estos plenumigitaj kiam ili estas elektitaj.\n"
+"Ĉi tio estas malsama de run_execution_links pro tio, ke nur dosieroj,\n"
+"kiuj estas en via laka komputilo estos plenumeblaj.\n"
+"\n"
+"ATENTO - Tio estas eventuale TRE danÄera pro\n"
+"eventualaj nekonataj fontoj.\n"
+"Pro tio ekzistas eblecon de malica programo,\n"
+"kiun povus forigi dosierojn.\n"
+"aÅ­ kompromiti sekurecon. Nur elektu la valoron \"on\",\n"
+"se vi vidas informojn el tute fidindaj fontoj.\n"
+
+#: src/LYrcFile.c:534
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups specifas ĉu la elektoj en elektiloj, kiuj\n"
+"povas havi nur unu elekton, estas prezentitaj kiel vertikala listo da\n"
+"radiobutonoj aÅ­ Åprucmenuo. Notu, ke se la elekto permesas plurajn elektojn,\n"
+"Linko ĉiam kreos vertikalan liston de markobutonojn por la elektoj.\n"
+"Valoro de \"on\" specifas, ke aro da Åprucmenuoj estas preferataj.\n"
+"Valoro de \"off\" specifas, ke aro da radiobutonoj estas preferataj.\n"
+"La aÅ­tomatan valoron oni povas nuligi per la komandlinian parametron -popup.\n"
+
+#: src/LYrcFile.c:545
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color specifas, kiel agordi kolorreÄimon dum plenumo. Valoro de\n"
+"\"never\" devigos kolorreÄimon malÅaltita (trakti la terminalon kiel unukoloran)\n"
+"dum plenumo, eĉ se la terminalo Åajnas esti kolorhava. Valoro de\n"
+"\"always\" devigos kolorreÄimon Åaltita eĉ se la terminalo Åajnas esti\n"
+"unuklora, se tio estas regata de la biblioteko uzata por munti Linkon.\n"
+"Valoro de \"default\" cedos la konduton de supozado\n"
+"unukolora terminalo se kolora kapablo ne estas decidita dum plenumo\n"
+"bazita sur la terminala tipo, aÅ­ la komandlinia parametro -color, aÅ­\n"
+"la medivariablo COLORTERM estas valorizita. La aŭtomata konduto ĉiam estas\n"
+"uzita en sennomaj kontoj aÅ­ se la malhelpo \"option_save\" estas valorizita.\n"
+"La efikon de la konservita voloro oni povas nuligi per\n"
+"la komandliniaj parametroj -color kaj -nocolor.\n"
+"La reÄimo aÅ­tomata je plenumo povos ÅanÄita per la agordaĵo \"montri kolorojn\" en\n"
+"la agordoj. Se la agordaĵoj estas konservitaj, la agordaĵoj \"on\" kaj \"off\"\n"
+"agordaĵoj de \"montri kolorojn\" estos traktitaj same al \"default\".\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor specifas ĉu 'kaÅi' la kursoron ĉe la dekstro (kaj\n"
+"subo, se eble) de la ekrano, aÅ­ meti Äin ĉe la maldekstro de la\n"
+"nuna ligilo en dokumentoj, aÅ­ nuna elekto en elektilo.\n"
+"Meti la kursoron ĉe la maldekstro de la nuna ligilo aŭ elekto estas\n"
+"helpa por parolaj kaj brajlaj fasadoj, kaj kiam la terminalo estas\n"
+"tia, kia ne distingas la nunan ligilon bazita sur prilumado\n"
+"aÅ­ koloro. Valoro de \"on\" metos Äin ĉe la maldekstro aÅ­tomate.\n"
+"La valoro de \"off\" metos la kursoron 'kaÅanta'.\n"
+"La aÅ­tomatan valoron oni povas nuligi per la komandlinia parametro -show_cursor.\n"
+
+#: src/LYrcFile.c:573
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles specifas, ke la dosierujlisto inkluzivu\n"
+"\"kaÅatajn\" (punktajn) dosier(uj)ojn. Valoro de \"on\" estos\n"
+"obeataj nur se ebligitaj per userdefs.h kajaÅ­ lynx.cfg, kaj ne\n"
+"malhelpita per komandlinia parametro. Se montrado de kaÅataj dosieroj\n"
+"estas malebligita, kredado de tiaj dosieroj en Linko ankaÅ­ estas malebligita.\n"
+
+#: src/LYrcFile.c:584
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Se sub_bookmarks ne havas valoron de \"off\", kaj pluraj legosignaj dosieroj\n"
+"estis difinitaj (vidu sube), do ĉiuj legosignaj operacioj unue demandos\n"
+"ke la uzanto elektu aktiva sublegosigna dosiero. Se la aÅ­tomata\n"
+"Linko-bookmark_file estas difinita (vidu supre), Äi estos uzita kiel la\n"
+"aŭtomata elekto. Kiam la valoro de tiu agordaĵo estas \"advanced\", kaj la\n"
+"uzantoreÄimo estas altnivela, la komandon \"'v'idi legosignojn\" kreos\n"
+"statlinian demandilon antstataÅ­ la menuo vidata en la uzantoreÄimoj novula kaj meznivela\n"
+"Kiam tiu elekto estas \"standard\", la menuo estos\n"
+"prezentita senkonsidere de uzantoreÄimo.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode specifas la scinivelon de la uzanto. La aÅ­tomata valoro\n"
+"estas \"NOVICE\", kiu montras du aldonajn liniojn de helpo ĉe la\n"
+"malsupro de la ekrano por helpi la uzanton lerni la fundamentajn\n"
+"komandoj de Linko. Valoro de \"INTERMEDIATE\" malÅaltas la aldonajn\n"
+"informojn. \"Advanced\" montras la retadreson de la nuna ligilo ĉe la\n"
+"malsupro de la ekrano.\n"
+
+#: src/LYrcFile.c:607
+msgid ""
+"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"
+msgstr ""
+"Se la valoro de verbose_images estas \"on\", Linko montros la dosiernomo\n"
+"de la bildon anstataÅ­ [INLINE], [LINK], aÅ­ [IMAGE]\n"
+
+#: src/LYrcFile.c:612
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Se la valoro de vi_keys estas \"on\", do la ordinaraj moviloj de Vi:\n"
+"  j = suben        k = supren\n"
+"  h = maldekstren  l = dekstren\n"
+"estos aktivigitaj. La klavoj nur estas minusklaj.\n"
+"Majusklaj 'H', 'J' kaj 'K' malgraÅ­e aktivigos helpon, Åaltojn,\n"
+"kaj la klavomapon, respektive.\n"
+
+#: src/LYrcFile.c:620
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"La agordaĵo visited_links regas, kiel Linko organizas la informojn\n"
+"en la paÄo 'Vizititaj Ligiloj'.\n"
+
+#: src/LYrcFile.c:845
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Se la valoro de keypad_mode estas \"NUMBERS_AS_ARROWS\", la ciferoj sur\n"
+"via cifera klavaro (kiam aktiva) kondutos kiel sagoklavoj:\n"
+"            8 = Supra\n"
+"  4 = Maldekstra    6 = Dekstra\n"
+"            2 = Suba\n"
+
+#: src/LYrcFile.c:854
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Se la valoro de keypad_mode estas \"LINKS_ARE_NUMBERED\", do ciferoj\n"
+"aperos apud ĉiu ligilo kaj ciferoj uziÄos por elekti ligilojn.\n"
+
+#: src/LYrcFile.c:858
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Se la valoro de keypad_mode estas \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\",\n"
+"ciferoj aperos apud ĉiu ligilo kaj videbla formulara kampo.\n"
+"Ciferoj estas uzitaj por elekti ligilojn, aÅ­ movi la \"nunan ligilon\" al\n"
+"formulara kampo aÅ­ butono. Aldone elektoj en elektiloj estas indicitaj\n"
+"por ke la uzanto povu tajpi elektan ciferon por elekti elekton en\n"
+"Åprucmenuoj, eĉ se la elekto ne estas videbla sur la ekrano. Referencaj\n"
+"listoj kaj eligoj de la lista komando ankaŭ ciferigas formularajn aĵojn.\n"
+
+#: src/LYrcFile.c:867
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"NOTE: Iuj firmaj dokumentoj eble aspektos malbone formitaj kiam\n"
+"\"LINKS_ARE_NUMBERED\" aÅ­ \"LINKS_AND_FORM_FIELDS\" estas\n"
+"aktivaj.\n"
+
+#: src/LYrcFile.c:899
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"Dosiero pri propraj agordaĵoj de Linko-uzanto\n"
+"\n"
+
+#: src/LYrcFile.c:908
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"Ĉi tiu dosiero enhavas agordaĵojn konservitajn de la agordilo de Linko\n"
+"(ordinare per la klavo 'o'). Por konservi agordaĵojn en tio, oni devas elekti la\n"
+"markobutonon:\n"
+
+#: src/LYrcFile.c:915
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+"Vi devas poste konservi la agordaĵojn per la ligilo en la linio supra\n"
+"al la markobutonon\n"
+
+#: src/LYrcFile.c:922
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"Vi povas ankaÅ­ uzi la komandlinian parametron \"-forms_options\", kiu anstataÅ­e\n"
+"montras la pli mallongan menuon. Konservi agordaĵojn per la klavo '>'.\n"
+"\n"
+
+#: src/LYrcFile.c:929
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"Ĉi tiu dosiero enhavas agordaĵojn konservitajn el la agordilo de Linko\n"
+"(ordinare per la klavo '>').\n"
+"\n"
+
+#: src/LYrcFile.c:936
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Ordinare ekzistas neniu bezono por permane redakti ĉi tiun dosieron pro tio, ke la aŭtomataj valoroj\n"
+"en Äi povas esti regata de la agordilo, kaj je la sekva fojo, ke agordaĵoj\n"
+"estas konservitaj de la agordilo, ĉi tiu dosiero estos reskribita.\n"
+"Mi avertis vin...\n"
+"\n"
+"Se vi serĉas la Äeneralan agordo-dosieron - Äi ordinare\n"
+"nomiÄas \"lynx.cfg\". Äœi havas malsaman enhavon kaj formaton.\n"
+"Ĝi ne estas ĉi tiu dosiero.\n"
+
+#~ msgid " (p%d of %d)"
+#~ msgstr " (p%d el %d)"
+
+#~ msgid "Very long lines have been wrapped!"
+#~ msgstr "Tre longaj linoj estis falditaj!"
+
+#~ msgid "Path too long"
+#~ msgstr "Vojo tro longa"
+
+#~ msgid "See http://www.openssl.org/ for information about OpenSSL."
+#~ msgstr "Vidi al http://www.openssl.org/ por informoj pri OpenSSL."
diff --git a/po/et.po b/po/et.po
new file mode 100644
index 00000000..42ae7a45
--- /dev/null
+++ b/po/et.po
@@ -0,0 +1,6162 @@
+# This file is distributed under the same license as the lynx package.
+# Estonian translations for lynx
+# Copyright (C) 2001 Free Software Foundation, Inc.
+# Toomas Soome <Toomas.Soome@microlink.ee>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.8-dev9\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-02-12 19:13-0500\n"
+"PO-Revision-Date: 2012-02-15 00:10+0200\n"
+"Last-Translator: Toomas Soome <Toomas.Soome@microlink.ee>\n"
+"Language-Team: Estonian <linux-ee@lists.eenet.ee>\n"
+"Language: et\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-15\n"
+"Content-Transfer-Encoding: 8-bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:27
+#, c-format
+msgid "Alert!: %s"
+msgstr "Tähelepanu!: %s"
+
+#: LYMessages.c:28
+msgid "Welcome"
+msgstr "Tere tulemast"
+
+#: LYMessages.c:29
+msgid "Are you sure you want to quit?"
+msgstr "Olete kindel, et soovite väljuda?"
+
+#: LYMessages.c:31
+msgid "Really exit from Lynx?"
+msgstr "Soovite tõesti väljuda Lynxist?"
+
+#: LYMessages.c:33
+msgid "Connection interrupted."
+msgstr "Ühendus katkestati."
+
+#: LYMessages.c:34
+msgid "Data transfer interrupted."
+msgstr "Andmete ülekanne katkestati."
+
+#: LYMessages.c:35
+msgid "Cancelled!!!"
+msgstr "Katkestatud!!!"
+
+#: LYMessages.c:36
+msgid "Cancelling!"
+msgstr "Katkestan!!!"
+
+#: LYMessages.c:37
+msgid "Excellent!!!"
+msgstr "Suurepärane!!!"
+
+#: LYMessages.c:38
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:39
+msgid "Done!"
+msgstr "Valmis!"
+
+#: LYMessages.c:40
+msgid "Bad request!"
+msgstr "Halb päring!"
+
+#: LYMessages.c:41
+msgid "previous"
+msgstr "eelmine"
+
+#: LYMessages.c:42
+msgid "next screen"
+msgstr "järgmine ekraan"
+
+#: LYMessages.c:43
+msgid "HELP!"
+msgstr "APPI!"
+
+#: LYMessages.c:44
+msgid ", help on "
+msgstr ", abiinfo"
+
+#. #define HELP
+#: LYMessages.c:46
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Käsud: Liikumiseks kasutage nooli, '?' abiinfo, 'q' väljumine, '<-' tagasi."
+
+#. #define MOREHELP
+#: LYMessages.c:48
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- edasi saate tühikuga, liikumiseks nooled, '?' annab abi. väljumiseks 'q'."
+
+#: LYMessages.c:49
+msgid "-- press space for next page --"
+msgstr "-- vajutage tühikut --"
+
+#: LYMessages.c:50
+msgid "URL too long"
+msgstr "URL on liiga pikk"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:56
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Tekstiväli) Pole aktiivne. Aktiveerimiseks vajutage <return>."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:58
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Tekstiala) Pole aktiivne. Aktiveerimiseks vajutage <return>."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:60
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Tekstiala) Pole aktiivne. Aktiveerimiseks vajutage <return> (%s toimeti)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:62
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Vormiväli) Pole aktiivne. Toimetamiseks vajutage <return>."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:64
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Vormiväli) Pole aktiivne. Toimetamiseks <return> (%s saada puhverdamata)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:66
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Vormiväli) Pole aktiivne. Toimetamiseks <return>, saatmiseks topelt."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:68
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(mailto vormi väli) Pole aktiivne. Muutmiseks vajutage <return>."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:70
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Parooliväli) Pole aktiivne. Aktiveerimiseks vajutage <return>."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:73
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "MITTEMUUDETAV failiväli. Väljalt lahkumiseks kasutage ÜLES, ALLA või TAB."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:75
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Failiväli) Sisestage faili nimi. Väljalt lahkumiseks ÜLES, ALLA või TAB."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:77
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Tekstiväli) Sisestage tekst. Väljalt lahkumiseks ÜLES, ALLA või TAB."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:79
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Tekstiala) Sisestage tekst. Lahkumiseks kasutage ÜLES, ALLA või TAB."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:81
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Tekstiala) Sisestage tekst. Lahkumiseks ÜLES, ALLA või TAB (%s toimeti)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:83
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "MITTEMUUDETAV vormi tekst. Väljalt lahkumiseks ÜLES, ALLA või TAB."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:85
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Vormi väli) Sisestage tekst. Saatmiseks vajutage <return>."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:87
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Vormi väli) Sisestage tekst. Saatmiseks vajutage <return> (%s puhverdamata)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:89
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Vormi väli) Sisestage tekst. Saatmiseks <return>, lahkumiseks nooled/tab."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:91
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "MITTEMUUDETAV vormi väli. Lahkumiseks nooled või tab."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:93
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(mailto vorm) Sisestage tekst. Postitamiseks <return>, lahkumiseks nooled."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:95
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(mailto vorm) E-post on blokeeritud, seega postitada ei saa."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:97
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Parooliväli) Sisestage tekst. Lahkumiseks nooled või tab."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:99
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "MITTEMUUDETAV vormi parool. Lahkumiseks nooled või tab."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:101
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Märkeruut) Valimiseks kasutage nool paremale või <return>."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:103
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "MITTEMUUDETAV märkeruut. Lahkumiseks nooled või tab."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:105
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Raadionupp) Valimiseks kasutage nool paremale või <return>."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:107
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "MITTEMUUDETAV raadionupp. Lahkumiseks nooled või tab."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:109
+msgid "Submit ('x' for no cache) to "
+msgstr "postita ('x' puhverdamata): "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:111
+msgid "Submit to "
+msgstr "Postita: "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:113
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Vormi postitamine) Täitmiseks nool paremale või <return> ('x' ei puhverda)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:115
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Vormi postitamine) Täitmiseks nool paremale või <return>."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:117
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "BLOKEERITUD vormi postitamine. Kasutage tab või nool üles või alla."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:119
+msgid "Submit mailto form to "
+msgstr "Postita mailto vorm aadressil "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:121
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(mailto vormi postitamine) Täitmiseks nool paremale või <return>."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:123
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(mailto vormi postitamine) E-post on keelatud, seda ei saa kasutada."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:125
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Vormi algväärtustamise nupp)  Nool paremale või <return> algväärtustab. "
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:127
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "BLOKEERITUD vormi algväärtustamine) Kasutage tab või nool üles või alla."
+
+#. #define FORM_LINK_BUTTON_MESSAGE
+#: LYMessages.c:129
+msgid "(Script button)   Use UP or DOWN arrows or tab to move off."
+msgstr "(Skripti nupp)    Kasutage tab või nool üles või alla."
+
+#. #define FORM_LINK_BUTTON_DIS_MSG
+#: LYMessages.c:131
+msgid "DISABLED Script button.  Use UP or DOWN arrows or tab to move off."
+msgstr "BLOKEERITUD skripti nupp. Kasutage tab või nool üles või alla."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:133
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Seadete loend) Vajutage return ja valige noolte ja return klahviga seade."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:135
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Valiku loend) Vajutage return ja valige noolte ja return klahviga seade."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:137
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "MITTEMUUDETAVAD seaded. Vaatamiseks või liikumiseks nooled või <return>."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:139
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "MITTEMUUDETAVAD valikud. Vaatamiseks või liikumiseks nooled või <return>."
+
+#: LYMessages.c:140
+msgid "Submitting form..."
+msgstr "Saadan vormi..."
+
+#: LYMessages.c:141
+msgid "Resetting form..."
+msgstr "Algväärtustan vormi..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:143
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Laen dokumendi uuesti. Kõik vormi väljad lähevad kaotsi!"
+
+#. #define LINK_NOT_IN_FORM
+#: LYMessages.c:145
+msgid "The current link is not in a FORM"
+msgstr "Praegune viide ei ole VORMIS"
+
+#: LYMessages.c:146
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Hoiatus: Vormi andmeid ei õnnestu teisendada kooditabelisse %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:149
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(TAVALINE VIIDE) Aktiveerimiseks kasutage nool paremale või <return>."
+
+#: LYMessages.c:150
+msgid "The resource requested is not available at this time."
+msgstr "Ressurss, mida soovisite, ei ole hetkel kättesaadav."
+
+#: LYMessages.c:151
+msgid "Enter Lynx keystroke command: "
+msgstr "Sisestage Lynxi klahvikäsklus: "
+
+#: LYMessages.c:152
+msgid "Looking up "
+msgstr "Otsin serverit "
+
+#: LYMessages.c:153
+#, c-format
+msgid "Getting %s"
+msgstr "Laen %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Skipping %s"
+msgstr "Jätan %s vahele"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Using %s"
+msgstr "Kasutan %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Vigane URL: %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Vigaselt vormitud aadress %s"
+
+#: LYMessages.c:158
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:159
+msgid "Unable to access WWW file!!!"
+msgstr "WWW failile pole juurdepääsu!!!"
+
+#: LYMessages.c:160
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "See on otsitav indeks. Otsimiseks kasutage %s."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:162
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Veel-- See on otsitav indeks. Otsimiseks kasutage %s."
+
+#: LYMessages.c:163
+msgid "You have entered an invalid link number."
+msgstr "Te sisestasite vigase viitenumbri."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:165
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Dokumendi algtekst. Renderdatud versiooni vaatamiseks vajutage '\\'."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:167
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  Nooleklahvid: liikumiseks üles ja alla. Parem järgib viidet, vasakuga tagasi.\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:169
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " H=appi O=seaded P=trüki G=mine M=põhiaken Q=välju /=otsing [delete]=ajalugu\n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:171
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "O=muud  H=abiinfo  K)lahvid  G=mine  P)rindi  M=põhiekraan  o=seaded  Q=välju\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:173
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "O=muud  B=tagasi  toim'E'ta  D=lae alla ^R=lae uuesti ^W=pühi ekraan /=otsing\n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:175
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O=muud käsud C=kommentaar  Ajalugu: <bsp>  Järjed: V)aata, A=lisa, R=eemalda \n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:177
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Sisestage väljale tekst                                          "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:179
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U kustutab väljalt kogu teksti, [Backspace] kustutab sümboli        "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:181
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "      Ctrl-U kustutab väljalt teksti, [Backspace] kustutab sümboli         "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:183
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s kustutab väljalt kogu teksti, [Backspace] kustutab sümboli        "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:185
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "      %s kustutab väljalt teksti, [Backspace] kustutab sümboli         "
+
+#. mailto
+#: LYMessages.c:188
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Vigane mailto vormi edastamine! Katkestasin!"
+
+#: LYMessages.c:189
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Hoiatus! Asendasin kontrollkoodid kirja aadressis küsimärkidega"
+
+#: LYMessages.c:190
+msgid "Mail disallowed!  Cannot submit."
+msgstr "Kirjad ei ole lubatud! Ei saa postitada."
+
+#: LYMessages.c:191
+msgid "Mailto form submission failed!"
+msgstr "Mailto vormi andmete edastamine ebaõnnestus!"
+
+#: LYMessages.c:192
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Mailto vormi andmete edastamine katkestati!!!"
+
+#: LYMessages.c:193
+msgid "Sending form content..."
+msgstr "Saadan vormi sisu..."
+
+#: LYMessages.c:194
+msgid "No email address is present in mailto URL!"
+msgstr "mailto URLis puudub e-posti aadress!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:196
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "mailto URLile ei õnnestu avada ajutist faili!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:198
+msgid "Do you wish to include the original message?"
+msgstr "Kas te soovite kaasata originaalteadet?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:200
+msgid "Do you wish to include the preparsed source?"
+msgstr "Kas soovite kaasata eelnevalt töödeldud teksti?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:202
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Käivitan kirja toimetamiseks teie poolt valitud toimeti"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:204
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Viga toimeti käivitamisel, kontrollige toimeti definitsiooni seadete menüüs"
+
+#: LYMessages.c:205
+msgid "Send this comment?"
+msgstr "Saata teie kommentaar?"
+
+#: LYMessages.c:206
+msgid "Send this message?"
+msgstr "Saata teie teade?"
+
+#: LYMessages.c:207
+msgid "Sending your message..."
+msgstr "Saadan teie teadet..."
+
+#: LYMessages.c:208
+msgid "Sending your comment:"
+msgstr "Saadan teie kommentaari:"
+
+#. textarea
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Pole TEXTAREA, välist toimetit ei saa kasutada."
+
+#: LYMessages.c:212
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Pole TEXTAREA, käsku ei saa kasutada."
+
+#: LYMessages.c:214
+msgid "file: ACTIONs are disallowed!"
+msgstr "file: TEGEVUSed ei ole lubatud!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:216
+msgid "file: URLs via served links are disallowed!"
+msgstr "file: URLid teeninduslikest viidetest ei ole lubatud! "
+
+#: LYMessages.c:217
+msgid "Access to local files denied."
+msgstr "Juurdepääs lokaalsetele failidele on keelatud."
+
+#: LYMessages.c:218
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "faile: URLE ei lubata järgedes kasutada!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:220
+msgid "This special URL is not allowed in external documents!"
+msgstr "See spetsiaal URL ei ole välistes dokumentides lubatud!"
+
+#: LYMessages.c:221
+msgid "Press <return> to return to Lynx."
+msgstr "Lynxi tagasi pääsemiseks vajutage <return>."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:224
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Loon DCL alamprotsessi.  Tagasi Lynxi saamiseks kasutage 'logout'.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:228
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Lynxi tagasi pääsemiseks sisestage exit.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:231
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Käivitan teie vaikimisi shelli.  Tagasi Lynxi saamiseks kasutage 'exit'.\n"
+
+#: LYMessages.c:234
+msgid "Spawning is currently disabled."
+msgstr "Alamprotsessi loomine on hetkel blokeeritud."
+
+#: LYMessages.c:235
+msgid "The 'd'ownload command is currently disabled."
+msgstr "Allalaa'd'imise käsklus on praegu blokeeritud."
+
+#: LYMessages.c:236
+msgid "You cannot download an input field."
+msgstr "Sisendvälja ei saa alla laadida."
+
+#: LYMessages.c:237
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Vormil on mailto tegevus! Ei saa alla laadida."
+
+#: LYMessages.c:238
+msgid "You cannot download a mailto: link."
+msgstr "mailto: viidet ei saa alla laadida."
+
+#: LYMessages.c:239
+msgid "You cannot download cookies."
+msgstr "Präänikuid ei saa alla laadida."
+
+#: LYMessages.c:240
+msgid "You cannot download a printing option."
+msgstr "Trükkimise seadeid ei saa alla laadida."
+
+#: LYMessages.c:241
+msgid "You cannot download an upload option."
+msgstr "Üleslaadimise seadeid ei saa alla laadida."
+
+#: LYMessages.c:242
+msgid "You cannot download an permit option."
+msgstr "lubamise seadeid ei saa alla laadida."
+
+#: LYMessages.c:243
+msgid "This special URL cannot be downloaded!"
+msgstr "Seda spetsiaal URLi ei saa alla laadida!"
+
+#: LYMessages.c:244
+msgid "Nothing to download."
+msgstr "Pole midagi alla laadida."
+
+#: LYMessages.c:245
+msgid "Trace ON!"
+msgstr "Trasseerimine sees!"
+
+#: LYMessages.c:246
+msgid "Trace OFF!"
+msgstr "Trasseerimine väljas!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:248
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Viiteid kasutatakse kõikide piltidega! Laen uuesti..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:250
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Standartne piltide käsitlemine taastatud! Laen uuesti..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:252
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Lisan ALT sõnedeta piltidele pseudo_ALTid! Laen uuesti..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:254
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Ignoreerin ALT sõnedeta pilte! Laen uuesti..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Puhas 8-bit või CJK mood on välja lülitatud! Laen uuesti..."
+
+#: LYMessages.c:256
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Puhas 8-bit või CJK mood on sisse lülitatud! Laen uuesti..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:258
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Saada HEAD päring D)okumendile või L=viitele või C=katkesta? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:260
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Saada HEAD päring D)okumendile või C=katkesta? (d,c): "
+
+#: LYMessages.c:261
+msgid "Sorry, the document is not an http URL."
+msgstr "Vabandust, dokument ei ole http URL."
+
+#: LYMessages.c:262
+msgid "Sorry, the link is not an http URL."
+msgstr "Vabandust, viide ei ole http URL."
+
+#: LYMessages.c:263
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Vabandust, sellel vormil on tegevus keelatud."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:265
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Vabandust, selle vormi tegevus ei ole http URL."
+
+#: LYMessages.c:266
+msgid "Not an http URL or form ACTION!"
+msgstr "Ei ole http URL ega vormi tegevus!"
+
+#: LYMessages.c:267
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Vormi tegevus ei saa olla see spetsiaal URL!"
+
+#: LYMessages.c:268
+msgid "URL is not in starting realm!"
+msgstr "URL ei ole startfailis!"
+
+#: LYMessages.c:269
+msgid "News posting is disabled!"
+msgstr "Artiklite postitamine on blokeeritud!"
+
+#: LYMessages.c:270
+msgid "File management support is disabled!"
+msgstr "Failide haldamine on blokeeritud!"
+
+#: LYMessages.c:271
+msgid "No jump file is currently available."
+msgstr "Hüpete fail ei ole praegu kasutatav."
+
+#: LYMessages.c:272
+msgid "Jump to (use '?' for list): "
+msgstr "Hüppa aadressil (nimekirjaks '?'): "
+
+#: LYMessages.c:273
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Lühiurlile hüppamine ei ole lubatud!"
+
+#: LYMessages.c:274
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Juhuslik URL ei ole lubatud! Kasutage lühiurli."
+
+#: LYMessages.c:275
+msgid "No random URLs have been used thus far."
+msgstr "Seni ei ole juhuslikke urle kasutatud."
+
+#: LYMessages.c:276
+msgid "Bookmark features are currently disabled."
+msgstr "Järgede kasutamine on praegu blokeeritud."
+
+#: LYMessages.c:277
+msgid "Execution via bookmarks is disabled."
+msgstr "Järgede kaudu täitmine on blokeeritud."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:279
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Järgede faili ei ole defineeritud. Seadete vaatamiseks kasutage %s."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:281
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "X Mosaic hotlist teisendamiseks ei õnnestu avada ajutist faili."
+
+#: LYMessages.c:282
+msgid "ERROR - unable to open bookmark file."
+msgstr "VIGA - järgede faili ei saa avada."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:284
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Järgede faili ei õnnestu viite kustutamiseks avada."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:286
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Viite kustutamiseks ei õnnestu avada ajutist faili."
+
+#: LYMessages.c:288
+msgid "Error renaming scratch file."
+msgstr "Viga ajutise faili ümber nimetamisel."
+
+#: LYMessages.c:290
+msgid "Error renaming temporary file."
+msgstr "Viga ajutise faili ümbernimetamisel."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:292
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Viite kustutamiseks ei õnnestu ajutist faili kopeerida."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:294
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Viite kustutamiseks ei õnnestu ajutist faili uuesti avada."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:297
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Viide järgede failis ei ole ühel real."
+
+#: LYMessages.c:298
+msgid "Bookmark deletion failed."
+msgstr "Järje kustutamine ebaõnnestus."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:300
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Järgede faile ei saa läbida (ainult http URLe)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:302
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Järgede faili ei saa avada, salvestage viide kõigepealt käsuga 'a'"
+
+#: LYMessages.c:303
+msgid "There are no links in this bookmark file!"
+msgstr "Selles järgede failis pole viiteid!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:305
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "D=kustuta puhverdatud dokument või C=katkesta? (d,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:307
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Salvesta D)okument, L=viide järgede faili või C=katkesta? (d,l,c): "
+
+#: LYMessages.c:308
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Salvesta D)okument järgede faili või C=katkesta? (d,c): "
+
+#: LYMessages.c:309
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Salvesta L=viide järgede faili või C=katkesta? (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:311
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Dokumente vormidelt POST sisuga ei saa järgedena salvestada."
+
+#: LYMessages.c:312
+msgid "Cannot save form fields/links"
+msgstr "Vormide välju/viiteid ei saa salvestada"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:314
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Ajaloo, info, menüü ja loendi faile ei saa järgedena salvestada."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:316
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Kas te tõesti soovite kustutada seda viidet oma järgede failist?"
+
+#: LYMessages.c:317
+msgid "Malformed address."
+msgstr "Vigane aadress."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:319
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Ajalooline kommentaaride parsimine sees (minimaalne on kõrvale lükatud)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:321
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Ajalooline kommentaaride parsimine väljas (kasutatakse minimaalset)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:323
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Ajalooline kommentaaride parsimine sees (kehtiv on kõrvale lükatud)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:325
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Ajalooline kommentaaride parsimine väljas (kasutatakse kehtivat)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:327
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Minimaalne kommentaaride parsimine sees (kasutatakse kehtivat)!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:329
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Minimaalne kommentaaride parsimine väljas (kasutatakse kehtivat)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:331
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Minimaalne kommentaaride parsimine sees (kasutatakse ajaloolist)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:333
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Minimaalne kommentaaride parsimine väljas (kasutatakse ajaloolist)!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing ON!"
+msgstr "Pehme jutumärkide parsmine sees (ON)!"
+
+#: LYMessages.c:335
+msgid "Soft double-quote parsing OFF!"
+msgstr "Pehme jutumärkide parsmine väljas (OFF)!"
+
+#: LYMessages.c:336
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Kasutan nüüd HTML TagSoup parsimist."
+
+#: LYMessages.c:337
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Kasutan nüüd HTML SortaSGML parsimist!"
+
+#: LYMessages.c:338
+msgid "You are already at the end of this document."
+msgstr "Te olete juba selle dokumendi lõpus."
+
+#: LYMessages.c:339
+msgid "You are already at the beginning of this document."
+msgstr "Te olete juba selle dokumendi alguses."
+
+#: LYMessages.c:340
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Te olete juba selle dokumendi leheküljel %d."
+
+#: LYMessages.c:341
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Viide number %d on juba jooksev viide."
+
+#: LYMessages.c:342
+msgid "You are already at the first document"
+msgstr "Te vaatate juba esimest dokumenti"
+
+#: LYMessages.c:343
+msgid "There are no links above this line of the document."
+msgstr "Ülalpool seda rida ei ole dokumendis enam viiteid."
+
+#: LYMessages.c:344
+msgid "There are no links below this line of the document."
+msgstr "Allpool seda rida ei ole dokumendis enam viiteid."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:346
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Maksimaalne pikkus on saavutatud! Kustutage teksti või lahkuge väljalt."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:348
+msgid "You are not on a form submission button or normal link."
+msgstr "Te pole vormi postitamise nupul ega viitel."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:350
+msgid "One radio button must be checked at all times!"
+msgstr "Üks raadionupp peab olema valitud!"
+
+#: LYMessages.c:351
+msgid "No submit button for this form, submit single text field?"
+msgstr "Sellel vormil puudub postitamise nupp, postitan ühe tekstivälja?"
+
+#: LYMessages.c:352
+msgid "Do you want to go back to the previous document?"
+msgstr "Kas te soovite minna tagasi eelmisele dokumendile?"
+
+#: LYMessages.c:353
+msgid "Use arrows or tab to move off of field."
+msgstr "Väljalt lahkumiseks kasutage nooli või tabulaatorit."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:355
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Sisestage tekst. Väljalt lahkumiseks kasutage nooli või tabulaatorit."
+
+#: LYMessages.c:356
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Vigane HTML!! Vormil pole tegevust defineeritud. **"
+
+#: LYMessages.c:357
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Vigane HTML!! Ei saa luua hüpikakent!"
+
+#: LYMessages.c:358
+msgid "Unable to create popup window!"
+msgstr "Ei saa luua hüpikakent!"
+
+#: LYMessages.c:359
+msgid "Goto a random URL is disallowed!"
+msgstr "Juhuslikule URLile minek on blokeeritud!"
+
+#: LYMessages.c:360
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Mitte-http URLile minek on blokeeritud!"
+
+#: LYMessages.c:361
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Teil ei ole lubatud minna \"%s\" URLile"
+
+#: LYMessages.c:362
+msgid "URL to open: "
+msgstr "URL, mida avada: "
+
+#: LYMessages.c:363
+msgid "Edit the current Goto URL: "
+msgstr "Toimeta jooksvat Goto URLi: "
+
+#: LYMessages.c:364
+msgid "Edit the previous Goto URL: "
+msgstr "Toimeta eelmist Goto URLi: "
+
+#: LYMessages.c:365
+msgid "Edit a previous Goto URL: "
+msgstr "Toimeta eelmist Goto URLi: "
+
+#: LYMessages.c:366
+msgid "Current document has POST data."
+msgstr "Jooksev dokument sisaldab POST andmeid."
+
+#: LYMessages.c:367
+msgid "Edit this document's URL: "
+msgstr "Toimeta selle dokumendi URLi: "
+
+#: LYMessages.c:368
+msgid "Edit the current link's URL: "
+msgstr "Toimeta selle viite URLi: "
+
+#: LYMessages.c:369
+msgid "Edit the form's submit-URL: "
+msgstr "Toimeta selle vormi postitamise URLi: "
+
+#: LYMessages.c:370
+msgid "You cannot edit File Management URLs"
+msgstr "Failide haldamise URLe ei saa toimetada"
+
+#: LYMessages.c:371
+msgid "Enter a database query: "
+msgstr "Sisestage andmebaasi päring: "
+
+#: LYMessages.c:372
+msgid "Enter a whereis query: "
+msgstr "Sisestage kus-on päring: "
+
+#: LYMessages.c:373
+msgid "Edit the current query: "
+msgstr "Toimetage jooksvat päringut: "
+
+#: LYMessages.c:374
+msgid "Edit the previous query: "
+msgstr "Toimetage eelmist päringut: "
+
+#: LYMessages.c:375
+msgid "Edit a previous query: "
+msgstr "Toimetage eelmist päringut: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:377
+msgid "Use Control-R to resubmit the current query."
+msgstr "Päringu uuesti postitamiseks kasutage Control-R."
+
+#: LYMessages.c:378
+msgid "Edit the current shortcut: "
+msgstr "Toimeta jooksvat lühiurli: "
+
+#: LYMessages.c:379
+msgid "Edit the previous shortcut: "
+msgstr "Toimeta eelmist lühiurli: "
+
+#: LYMessages.c:380
+msgid "Edit a previous shortcut: "
+msgstr "Toimeta eelmist lühiurli: "
+
+#: LYMessages.c:381
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Klahv '%c' ei ole seotud hüpete failiga!"
+
+#: LYMessages.c:382
+msgid "Cannot locate jump file!"
+msgstr "Ei leia hüpete faili!"
+
+#: LYMessages.c:383
+msgid "Cannot open jump file!"
+msgstr "Hüpete faili ei saa avada!"
+
+#: LYMessages.c:384
+msgid "Error reading jump file!"
+msgstr "Viga hüpete failist lugemisel!"
+
+#: LYMessages.c:385
+msgid "Out of memory reading jump file!"
+msgstr "Hüpete failist lugemisel sai mälu otsa!"
+
+#: LYMessages.c:386
+msgid "Out of memory reading jump table!"
+msgstr "Hüpete tabeli lugemisel sai mälu otsa!"
+
+#: LYMessages.c:387
+msgid "No index is currently available."
+msgstr "Indeksid ei ole praegu kasutatavad."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:389
+msgid "Do you really want to go to the Main screen?"
+msgstr "Kas te soovite tõesti minne põhiekraanile?"
+
+#: LYMessages.c:390
+msgid "You are already at main screen!"
+msgstr "Te olete juba põhiekraanil!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:392
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Pole otsimiseks indekseeritud dokument -- teksti otsimiseks vajutage '/'"
+
+#. #define NO_OWNER
+#: LYMessages.c:394
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Sellel failil ei ole omanikku defineeritud, seega ei saa kommentaari saata"
+
+#: LYMessages.c:395
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Omanikku ei ole defineeritud. Kasutan %s?"
+
+#: LYMessages.c:396
+msgid "Do you wish to send a comment?"
+msgstr "Kas te soovite saata kommentaari?"
+
+#: LYMessages.c:397
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "E-post pole lubatud, seega ei saa kommentaare saata"
+
+#: LYMessages.c:398
+msgid "The 'e'dit command is currently disabled."
+msgstr "Toim'e'ta käsklus on praegu blokeeritud."
+
+#: LYMessages.c:399
+msgid "External editing is currently disabled."
+msgstr "Väline toimeti on praegu blokeeritud."
+
+#: LYMessages.c:400
+msgid "System error - failure to get status."
+msgstr "Süsteemi viga - olekut ei õnnestu lugeda."
+
+#: LYMessages.c:401
+msgid "No editor is defined!"
+msgstr "Tekstitoimetit ei ole määratud!"
+
+#: LYMessages.c:402
+msgid "The 'p'rint command is currently disabled."
+msgstr "Trükkimise käsklus 'p' on praegu blokeeritud."
+
+#: LYMessages.c:403
+msgid "Document has no Toolbar links or Banner."
+msgstr "Dokumendis puuduvad Toolbar viited või Banner."
+
+#: LYMessages.c:404
+msgid "Unable to open traversal file."
+msgstr "Ei saa avada läbimise faili."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal found file."
+msgstr "Ei saa avada läbimise leidude faili."
+
+#: LYMessages.c:406
+msgid "Unable to open reject file."
+msgstr "Ei saa avada keeldumiste faili."
+
+#: LYMessages.c:407
+msgid "Unable to open traversal errors output file"
+msgstr "Ei õnnestu avada läbimise vigade väljundfaili"
+
+#: LYMessages.c:408
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "LÄBIMINE KATKESTATI"
+
+#: LYMessages.c:409
+msgid "Follow link (or goto link or page) number: "
+msgstr "Järgne viitele (või mine viitele või lehele) number: "
+
+#: LYMessages.c:410
+msgid "Select option (or page) number: "
+msgstr "Valige seade (või lehe) number: "
+
+#: LYMessages.c:411
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Seade numbriga %d on juba jooksev."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:413
+msgid "You are already at the end of this option list."
+msgstr "Te olete juba nende seadete loendi lõpus."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:415
+msgid "You are already at the beginning of this option list."
+msgstr "Te olete juba nende seadete loendi alguses."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:417
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Te olete juba nende seadete loendi lehel %d."
+
+#: LYMessages.c:418
+msgid "You have entered an invalid option number."
+msgstr "Te sisestasite vigase seade numbri."
+
+#: LYMessages.c:419
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Vigane HTML!! Diagnoosimiseks kasutage võtit -trace. **"
+
+#: LYMessages.c:420
+msgid "Give name of file to save in"
+msgstr "Andke faili nimi, kuhu salvestada"
+
+#: LYMessages.c:421
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Andmete salvestamine faili ebaõnnestus -- palun käivitage WWW lokaalselt"
+
+#: LYMessages.c:422
+msgid "Can't open temporary file!"
+msgstr "Ajutist faili ei saa avada!"
+
+#: LYMessages.c:423
+msgid "Can't open output file!  Cancelling!"
+msgstr "Väljundfaili ei saa avada! katkestan!"
+
+#: LYMessages.c:424
+msgid "Execution is disabled."
+msgstr "Käivitamine ei ole lubatud."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:426
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Selle faili täitmine ei ole lubatud. Vaadake omaduste menüüd (kasutage %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:428
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Täitmise omadus ei ole selle sellesse versiooni kompileeritud."
+
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal."
+msgstr "Seda faili ei saa sellel terminalil näidata."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:431
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Seda faili ei saa sellel terminalil näidata: D=allalaadimine, C=katkesta"
+
+#: LYMessages.c:432
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s D=allalaadimine, C=katkesta"
+
+#: LYMessages.c:433
+msgid "Cancelling file."
+msgstr "Katkestan faili."
+
+#: LYMessages.c:434
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Laen faili. - PALUN OODAKE -"
+
+#: LYMessages.c:435
+msgid "Enter a filename: "
+msgstr "Sisestage failinimi: "
+
+#: LYMessages.c:436
+msgid "Edit the previous filename: "
+msgstr "Toimetage eelmist failinime: "
+
+#: LYMessages.c:437
+msgid "Edit a previous filename: "
+msgstr "Toimetage eelmist failinime: "
+
+#: LYMessages.c:438
+msgid "Enter a new filename: "
+msgstr "Sisestage uus failinimi: "
+
+#: LYMessages.c:439
+msgid "File name may not begin with a dot."
+msgstr "Faili nimi ei või alata punktiga."
+
+#: LYMessages.c:441
+msgid "File exists.  Create higher version?"
+msgstr "Fail on olemas. Loon uuema versioni?"
+
+#: LYMessages.c:443
+msgid "File exists.  Overwrite?"
+msgstr "Fail on olemas. Kirjutan üle?"
+
+#: LYMessages.c:445
+msgid "Cannot write to file."
+msgstr "Faili ei õnnestu kirjutada."
+
+#: LYMessages.c:446
+msgid "ERROR! - download command is misconfigured."
+msgstr "VIGA! - allalaadimise käsk on vigaste seadetega."
+
+#: LYMessages.c:447
+msgid "Unable to download file."
+msgstr "Faili ei saa alla laadida."
+
+#: LYMessages.c:448
+msgid "Reading directory..."
+msgstr "Loen kataloogi..."
+
+#: LYMessages.c:449
+msgid "Building directory listing..."
+msgstr "Ehitan kataloogi nimiekirja..."
+
+#: LYMessages.c:450
+msgid "Saving..."
+msgstr "Salvestan..."
+
+#: LYMessages.c:451
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Faili '%s' ei saa toimetada."
+
+#: LYMessages.c:452
+msgid "Unable to access document!"
+msgstr "Dokumendi ei saa kasutada!"
+
+#: LYMessages.c:453
+msgid "Could not access file."
+msgstr "Faili kasutamiseks pole õiguseid."
+
+#: LYMessages.c:454
+msgid "Could not access directory."
+msgstr "Kataloogi kasutamiseks pole õiguseid."
+
+#: LYMessages.c:455
+msgid "Could not load data."
+msgstr "Andmeid ei õnnestu laadida."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:457
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx ei saa praegu toim'e'tada faile WWW serveritel."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:459
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Seda välja ei saa välise toimetiga toim'e'tada."
+
+#: LYMessages.c:460
+msgid "Bad rule"
+msgstr "Vigane reegel"
+
+#: LYMessages.c:461
+msgid "Insufficient operands:"
+msgstr "Puuduvad operandid: "
+
+#: LYMessages.c:462
+msgid "You are not authorized to edit this file."
+msgstr "Teil ei ole lubatud seda faili muuta."
+
+#: LYMessages.c:463
+msgid "Title: "
+msgstr "Tiitel: "
+
+#: LYMessages.c:464
+msgid "Subject: "
+msgstr "Teema: "
+
+#: LYMessages.c:465
+msgid "Username: "
+msgstr "Kasutaja: "
+
+#: LYMessages.c:466
+msgid "Password: "
+msgstr "Parool: "
+
+#: LYMessages.c:467
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Nõutakse kasutajanime ja parooli!!!"
+
+#: LYMessages.c:468
+msgid "lynx: Password required!!!"
+msgstr "lynx: nõutakse parooli!!!"
+
+#: LYMessages.c:469
+msgid "Clear all authorization info for this session?"
+msgstr "Tühjendan selle sessiooni kogu autoriseerimise info?"
+
+#: LYMessages.c:470
+msgid "Authorization info cleared."
+msgstr "Autoriseerimisinfo eemaldatud."
+
+#: LYMessages.c:471
+msgid "Authorization failed.  Retry?"
+msgstr "Autoriseerimine ebaõnnestus. Kordan?"
+
+#: LYMessages.c:472
+msgid "cgi support has been disabled."
+msgstr "cgi tugi on blokeeritud."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:474
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Lynxcgi võimalused ei ole sellesse versiooni kompileeritud."
+
+#: LYMessages.c:475
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Kahjuks ei tunne ühtegi meetodit teisendamaks %s -> %s."
+
+#: LYMessages.c:476
+msgid "Unable to set up connection."
+msgstr "Ühendust ei õnnestu luua."
+
+#: LYMessages.c:477
+msgid "Unable to make connection"
+msgstr "Ühendust ei õnnestu tekitada"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:479
+msgid "Executable link rejected due to malformed request."
+msgstr "Vigase päringu tõttu keeldutakse viidet täitmast."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:481
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Sümboli `%c' tõttu keeldutakse viidet täitmast."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Suhtelise tee ('../') tõttu keeldutakse viidet täitmast."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:485
+msgid "Executable link rejected due to location or path."
+msgstr "Asukoha või tee tõttu keeldutakse viidet täitmast."
+
+#: LYMessages.c:486
+msgid "Mail access is disabled!"
+msgstr "E-posti kasutamine on blokeeritud!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:488
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Kasutada saab ainult lokaalse serveri faile või teenuseid."
+
+#: LYMessages.c:489
+msgid "Telnet access is disabled!"
+msgstr "Telneti kasutamine on blokeeritud!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:491
+msgid "Telnet port specifications are disabled."
+msgstr "Telneti pordi määramine on blokeeritud."
+
+#: LYMessages.c:492
+msgid "USENET news access is disabled!"
+msgstr "USENET uudisegruppide kasutamine on blokeeritud!"
+
+#: LYMessages.c:493
+msgid "Rlogin access is disabled!"
+msgstr "Rlogin kasutamine on blokeeritud!"
+
+#: LYMessages.c:494
+msgid "Ftp access is disabled!"
+msgstr "Ftp kasutamine on blokeeritud!"
+
+#: LYMessages.c:495
+msgid "There are no references from this document."
+msgstr "Sellest dokumendist ei ole viiteid."
+
+#: LYMessages.c:496
+msgid "There are only hidden links from this document."
+msgstr "Selles dokumendis on ainult peidetud viited."
+
+#: LYMessages.c:498
+msgid "Unable to open command file."
+msgstr "Käskude faili ei saa avada."
+
+#: LYMessages.c:500
+msgid "News Post Cancelled!!!"
+msgstr "Artikli postitamine katkestatud!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:502
+msgid "Spawning your selected editor to edit news message"
+msgstr "Käivitan uudise artikli toimetamiseks teie poolt valitud toimeti"
+
+#: LYMessages.c:503
+msgid "Post this message?"
+msgstr "Postitan selle teate?"
+
+#: LYMessages.c:504
+#, c-format
+msgid "Append '%s'?"
+msgstr "Lisan '%s'?"
+
+#: LYMessages.c:505
+msgid "Posting to newsgroup(s)..."
+msgstr "Postitan gruppi(desse)..."
+
+#: LYMessages.c:507
+msgid "*** You have unread mail. ***"
+msgstr "*** Teil on lugemata teateid. ***"
+
+#: LYMessages.c:509
+msgid "*** You have mail. ***"
+msgstr "*** Teil on kiri. ***"
+
+#: LYMessages.c:511
+msgid "*** You have new mail. ***"
+msgstr "*** Teil on uus kiri. ***"
+
+#: LYMessages.c:512
+msgid "File insert cancelled!!!"
+msgstr "Faili lisamine katkestati!!!"
+
+#: LYMessages.c:513
+msgid "Not enough memory for file!"
+msgstr "Faili jaoks napib mälu!"
+
+#: LYMessages.c:514
+msgid "Can't open file for reading."
+msgstr "Faili ei õnnestu lugemiseks avada."
+
+#: LYMessages.c:515
+msgid "File does not exist."
+msgstr "Faili ei ole."
+
+#: LYMessages.c:516
+msgid "File does not exist - reenter or cancel:"
+msgstr "Faili pole - sisestage uuesti või katkestage:"
+
+#: LYMessages.c:517
+msgid "File is not readable."
+msgstr "Fail ei ole loetav."
+
+#: LYMessages.c:518
+msgid "File is not readable - reenter or cancel:"
+msgstr "Fail pole loetav - sisestage uuesti või katkestage:"
+
+#: LYMessages.c:519
+msgid "Nothing to insert - file is 0-length."
+msgstr "Midagi pole lisada - fail on pikkusega null."
+
+#: LYMessages.c:520
+msgid "Save request cancelled!!!"
+msgstr "Salvestamine katkestati!!!"
+
+#: LYMessages.c:521
+msgid "Mail request cancelled!!!"
+msgstr "Postitamine katkestati!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:523
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Vaatan eeltöödeldud lähteteksti. Olete kindel, et soovite seda postitada?"
+
+#: LYMessages.c:524
+msgid "Please wait..."
+msgstr "Palun oodake..."
+
+#: LYMessages.c:525
+msgid "Mailing file.  Please wait..."
+msgstr "Saadan faili.  Palun oodake..."
+
+#: LYMessages.c:526
+msgid "ERROR - Unable to mail file"
+msgstr "VIGA - Faili saatmine ebaõnnestus"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:528
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Faili pikkus on %d ekraanitäit. Olete kindel, et soovite seda trükkida?"
+
+#: LYMessages.c:529
+msgid "Print request cancelled!!!"
+msgstr "Trükkimise päring katkestati!!!"
+
+#: LYMessages.c:530
+msgid "Press <return> to begin: "
+msgstr "Vajutage alustamiseks <return>: "
+
+#: LYMessages.c:531
+msgid "Press <return> to finish: "
+msgstr "Vajutage lõpetamiseks <return>: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:533
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Faili pikkus on %d lehekülge. Olete kinde, et soovite seda trükkida?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:535
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Kontrollige printerit. Trükkimise alustamiseks vajutage <return>:"
+
+#: LYMessages.c:536
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "VIGA - Ei õnnestu reserveerida faili ruumi!!!"
+
+#: LYMessages.c:537
+msgid "Unable to open tempfile"
+msgstr "Ajutist faili ei õnnestu avada"
+
+#: LYMessages.c:538
+msgid "Unable to open print options file"
+msgstr "Ei õnnestu avada trükiseadete faili"
+
+#: LYMessages.c:539
+msgid "Printing file.  Please wait..."
+msgstr "Trükin faili. Palun oodake..."
+
+#: LYMessages.c:540
+msgid "Please enter a valid internet mail address: "
+msgstr "palun sisestage kehtiv interneti postiaadress: "
+
+#: LYMessages.c:541
+msgid "ERROR! - printer is misconfigured!"
+msgstr "VIGA! - trükkal on vigaselt seadistatud!"
+
+#: LYMessages.c:542
+msgid "Image map from POST response not available!"
+msgstr "Hüperpilt POST vastusest ei ole kasutatav!"
+
+#: LYMessages.c:543
+msgid "Misdirected client-side image MAP request!"
+msgstr "Vigaselt suunatud kliendi-poolse hüperpildi päring!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not accessible!"
+msgstr "Kliendi-poolne hüperpilt ei ole kasutatav!"
+
+#: LYMessages.c:545
+msgid "No client-side image MAPs are available!"
+msgstr "Kliendi-poolseid hüperpilte pole!"
+
+#: LYMessages.c:546
+msgid "Client-side image MAP is not available!"
+msgstr "Kliendi-poolne hüperpilt ei ole kätte saadav!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:549
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Seadete menüü nõuab vähemalt 24 rida ekraanile!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:551
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Seadete menüü nõuab vähemalt 23 rida ekraanile!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:553
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Seadete menüü nõuab vähemalt 22 rida ekraanile!"
+
+#: LYMessages.c:555
+msgid "That key requires Advanced User mode."
+msgstr "See klahv nõuab \"advanced\" kasutaja moodi."
+
+#: LYMessages.c:556
+#, c-format
+msgid "Content-type: %s"
+msgstr "Sisu tüüp: %s"
+
+#: LYMessages.c:557
+msgid "Command: "
+msgstr "Käsk: "
+
+#: LYMessages.c:558
+msgid "Unknown or ambiguous command"
+msgstr "Tundmatu või segane käsklus"
+
+#: LYMessages.c:559
+msgid " Version "
+msgstr " Versioon "
+
+#: LYMessages.c:560
+msgid " first"
+msgstr " esimene"
+
+#: LYMessages.c:561
+msgid ", guessing..."
+msgstr ", arvan..."
+
+#: LYMessages.c:562
+msgid "Permissions for "
+msgstr "Õigused failile "
+
+#: LYMessages.c:563
+msgid "Select "
+msgstr "Valige "
+
+#: LYMessages.c:564
+msgid "capital letter"
+msgstr "suurtäht"
+
+#: LYMessages.c:565
+msgid " of option line,"
+msgstr " valiku rida,"
+
+#: LYMessages.c:566
+msgid " to save,"
+msgstr " salvestamiseks"
+
+#: LYMessages.c:567
+msgid " to "
+msgstr " et "
+
+#: LYMessages.c:568
+msgid " or "
+msgstr " või "
+
+#: LYMessages.c:569
+msgid " index"
+msgstr " indeks"
+
+#: LYMessages.c:570
+msgid " to return to Lynx."
+msgstr " viib tagasi Lynxi."
+
+#: LYMessages.c:571
+msgid "Accept Changes"
+msgstr "Arvesta muutuseid"
+
+#: LYMessages.c:572
+msgid "Reset Changes"
+msgstr "Algväärtusta"
+
+#: LYMessages.c:573
+msgid "Left Arrow cancels changes"
+msgstr "Nool vasakule tühistab muutused"
+
+#: LYMessages.c:574
+msgid "Save options to disk"
+msgstr "Salvesta seaded kettale"
+
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data."
+msgstr "Sisestatud andmete kasutamiseks vajutage RETURN."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:577
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Andmete kasutamiseks vajutage RETURN. Kustutades andmed saate vaikeväärtuse."
+
+#: LYMessages.c:578
+msgid "Value accepted!"
+msgstr "Väärtus aktsepteeritud!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Väärtus vastu võetud! -- HOIATUS: Lynx on seadistatud XWINDOWSi kasutamiseks!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:582
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Väärtus vastu võetud! -- HOIATUS: Lynx ei ole XWINDOWSi jaoks seadistatud!"
+
+#: LYMessages.c:583
+msgid "You are not allowed to change which editor to use!"
+msgstr "Teil ei ole lubatud toimetit vahetada!"
+
+#: LYMessages.c:584
+msgid "Failed to set DISPLAY variable!"
+msgstr "DISPLAY muutuja seadmine ebaõnnestus!"
+
+#: LYMessages.c:585
+msgid "Failed to clear DISPLAY variable!"
+msgstr "DISPLAY muutuja tühjendamine ebaõnnestus!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:587
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Teil ei ole lubatud järgede faili muuta!"
+
+#: LYMessages.c:588
+msgid "Terminal does not support color"
+msgstr "Terminal ei toeta värve"
+
+#: LYMessages.c:589
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Teie '%s' terminal ei toeta värve."
+
+#: LYMessages.c:590
+msgid "Access to dot files is disabled!"
+msgstr "Punktiga algavaid faile ei ole lubatud kasutada!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:592
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "User-Agent sõne ei sisalda \"Lynx\" ega \"L_y_n_x\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:594
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Kasutage User-Agent sees sõnu \"L_y_n_x\" või \"Lynx\", muidu paistab tegu olevat sihiliku pettusena!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:596
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "User-Agent väärtuse muutmine ei ole lubatud!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:598
+msgid "You are not allowed to change this setting."
+msgstr "Teil ei ole lubatud seda seadet muuta."
+
+#: LYMessages.c:599
+msgid "Saving Options..."
+msgstr "Salvestan seaded..."
+
+#: LYMessages.c:600
+msgid "Options saved!"
+msgstr "Seaded salvestatud!"
+
+#: LYMessages.c:601
+msgid "Unable to save Options!"
+msgstr "Seadeid ei õnnestu salvestada!"
+
+#: LYMessages.c:602
+msgid " 'r' to return to Lynx "
+msgstr " 'r' laseb Lynxi tagasi "
+
+#: LYMessages.c:603
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' salvestamiseks, 'r' laseb Lynxi tagasi "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:605
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Väärtuse muutmiseks vajutage mõnd klahvi; RETURN aktsepteerimiseks."
+
+#: LYMessages.c:606
+msgid "Error uncompressing temporary file!"
+msgstr "Viga ajutise faili lahtipakkimisel!"
+
+#: LYMessages.c:607
+msgid "Unsupported URL scheme!"
+msgstr "Mittetoetatud URL skeem!"
+
+#: LYMessages.c:608
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Mittetoetatud andmed: URL! Kasutage praegu SHOWINFO."
+
+#: LYMessages.c:609
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Saavutati ümbersuunamiste piirang, 10 URLi."
+
+#: LYMessages.c:610
+msgid "Illegal redirection URL received from server!"
+msgstr "Server saatis vigase ümbersuunamise URLi!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:612
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Server palus %d POST sisu ümbersuunamist aadressil"
+
+#: LYMessages.c:615
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P=jätka, kasuta G)ET või C=katkesta "
+
+#: LYMessages.c:616
+msgid "P)roceed, or C)ancel "
+msgstr "P=jätka või C=katkesta "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "POST sisu ümbersuunamine. P=jätka, vaata U)RL, kasuta G)ET või C=katkesta"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:620
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "POST sisu ümbersuunamine. P=jätka, vaata U)RL või C=katkesta"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:622
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Dokument vormist POST sisuga. Postitan uuesti?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:624
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Postitan uuesti POST sisu aadressil %s ?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:626
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Loend dokumendist POST andmetega. Laen %s uuesti?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:628
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Dokument POST tegevusest, HEAD ei pruugi olla arusaadav. Jätkan?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:630
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Vormi postitamise tegevus on POST, HEAD ei pruugi olla arusaadav. Jätkan?"
+
+#: LYMessages.c:631
+msgid "Proceed without a username and password?"
+msgstr "Jätkan kasutaja ja paroolita?"
+
+#: LYMessages.c:632
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Jätkan (%s)?"
+
+#: LYMessages.c:633
+msgid "Cannot POST to this host."
+msgstr "POST ei saa sellele serverile saata."
+
+#: LYMessages.c:634
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "Selle URLiga POST ei toetata - ignoreerin POST andmeid!"
+
+#: LYMessages.c:635
+msgid "Discarding POST data..."
+msgstr "Loobun POST andmetest..."
+
+#: LYMessages.c:636
+msgid "Document will not be reloaded!"
+msgstr "Dokumenti ei laeta uuesti!"
+
+#: LYMessages.c:637
+msgid "Location: "
+msgstr "Asukoht: "
+
+#: LYMessages.c:638
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' ei leidu!"
+
+#: LYMessages.c:639
+msgid "Default Bookmark File"
+msgstr "Vaikimisi järgede fail"
+
+#: LYMessages.c:640
+msgid "Screen too small! (8x35 min)"
+msgstr "Ekraan on liiga väike! (min on 8x35)"
+
+#: LYMessages.c:641
+msgid "Select destination or ^G to Cancel: "
+msgstr "Valige sihtkoht või katkestamiseks ^G: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:643
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Valige alamjärg, '=' annab menüü, ^G katkestab: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:645
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "L=Uuenda viide selles järgede failis või C=katkesta? (l,c):  "
+
+#: LYMessages.c:646
+msgid "Multiple bookmark support is not available."
+msgstr "Mitut järgede faili ei toetata."
+
+#: LYMessages.c:647
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Valige järg (ekraan %d/%d)"
+
+#: LYMessages.c:648
+msgid "       Select Bookmark"
+msgstr "       Valige järg"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:650
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Järgede kirjelduste ja failiteede toimetamine (%d/2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:652
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Järje kirjelduse ja failitee toimetamine"
+
+#: LYMessages.c:653
+msgid "Letter: "
+msgstr "Täht: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:656
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Kasutage failiteed oma kodukataloogis ja shelli süntaksiga!"
+
+#: LYMessages.c:658
+msgid "Use a filepath off your home directory!"
+msgstr "Kasutage failiteed oma kodukataloogis!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:661
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Viidete maksimum lehel ületatud! Kasutage poolt lehte või kahe-rea skrolli."
+
+#: LYMessages.c:662
+msgid "No previously visited links available!"
+msgstr "Varem külastatud viiteid pole!"
+
+#: LYMessages.c:663
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Mälu on otsas! Programm katkestab töö!"
+
+#: LYMessages.c:664
+msgid "Memory exhausted!  Aborting..."
+msgstr "Mälu on otsas! Katkestan töö..."
+
+#: LYMessages.c:665
+msgid "Not enough memory!"
+msgstr "Mälu on otsas!"
+
+#: LYMessages.c:666
+msgid "Directory/File Manager not available"
+msgstr "Kataloogi/faili haldur ei ole kasutatav"
+
+#: LYMessages.c:667
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF BASE silt ei ole absoluutne URL."
+
+#: LYMessages.c:668
+msgid "Location URL is not absolute."
+msgstr "Asukoha URL ei ole absoluutne."
+
+#: LYMessages.c:669
+msgid "Refresh URL is not absolute."
+msgstr "Uuendatud URL ei ole absoluutne."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:671
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Te olete saatmas pikemat teadet aadressil:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Te olete saatmas kommentaari aadressil:\n"
+"  "
+
+#: LYMessages.c:673
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+"Koopia aadressile:\n"
+"  "
+
+#: LYMessages.c:674
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+"Koopiad aadressidele:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:676
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Kui te ei soovi teadet saata, vajutage katkestamiseks Ctrl-G\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Palun sisestage oma nimi või jätke tühjaks, kui soovite jääda anonüümseks\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:680
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Kui soovite vastust, sisestage palun e-posti\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:682
+msgid " means to contact you, if you desire a response.\n"
+msgstr " aadress või muu kontakti info.\n"
+
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Palun sisestage teemarida.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Sisestage palun aadress, millele saata teate koopia.\n"
+
+#: LYMessages.c:686
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Jätke tühjaks, kui te ei soovi koopiat.)\n"
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Palun vaadake teade üle:\n"
+"\n"
+
+#: LYMessages.c:688
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Jätkamiseks vajutage RETURN: "
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Puhastamiseks vajutage RETURN: "
+
+#: LYMessages.c:690
+msgid " Use Control-U to erase the default.\n"
+msgstr " Vaikeväärtuse kustutamiseks vajutage Control-U.\n"
+
+#: LYMessages.c:691
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Palun sisestage all oma teade."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:693 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+"Kui te olete valmis, vajutage enter ja kirjutage punkt (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:695 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" ja vajutage uuesti enter klahvi."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s präänik: %.*s=%.*s  Luban? (Y/N/Alati/Mitte kunagi)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Aktsepteerin vogast prääniku doomenit=%s, server '%s'?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:703
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Aktsepteerin vigast prääniku teed=%s '%s' prefiksina?"
+
+#: LYMessages.c:704
+msgid "Allowing this cookie."
+msgstr "Luban seda präänikut."
+
+#: LYMessages.c:705
+msgid "Rejecting this cookie."
+msgstr "Keeldun sellest präänikust."
+
+#: LYMessages.c:706
+msgid "The Cookie Jar is empty."
+msgstr "Prääniku Jar on tühi."
+
+#: LYMessages.c:707
+msgid "The Cache Jar is empty."
+msgstr "Puhvri Jar on tühi."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:709
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Präänikute või tervete doomenite neelamiseks aktiveerige viited "
+
+#: LYMessages.c:710
+msgid "or to change a domain's 'allow' setting."
+msgstr "või muutke doomeni 'allow' seadet."
+
+#: LYMessages.c:711
+msgid "(Cookies never allowed.)"
+msgstr "(Präänikuid ei lubata kunagi.)"
+
+#: LYMessages.c:712
+msgid "(Cookies always allowed.)"
+msgstr "(Präänikuid lubatakse alati.)"
+
+#: LYMessages.c:713
+msgid "(Cookies allowed via prompt.)"
+msgstr "(präänikute lubamist küsitakse.)"
+
+#: LYMessages.c:714
+msgid "(Persistent Cookies.)"
+msgstr "(Püsivad präänikud.)"
+
+#: LYMessages.c:715
+msgid "(No title.)"
+msgstr "(Tiitlita.)"
+
+#: LYMessages.c:716
+msgid "(No name.)"
+msgstr "(Nimeta.)"
+
+#: LYMessages.c:717
+msgid "(No value.)"
+msgstr "(Väärtuseta.)"
+
+#: LYMessages.c:718 src/LYOptions.c:2409
+msgid "None"
+msgstr "Puudub"
+
+#: LYMessages.c:719
+msgid "(End of session.)"
+msgstr "(Sessiooni lõpp.)"
+
+#: LYMessages.c:720
+msgid "Delete this cookie?"
+msgstr "Kustutan selle prääniku?"
+
+#: LYMessages.c:721
+msgid "The cookie has been eaten!"
+msgstr "Präänik on söödud!"
+
+#: LYMessages.c:722
+msgid "Delete this empty domain?"
+msgstr "Kustutan selle tühja doomeni?"
+
+#: LYMessages.c:723
+msgid "The domain has been eaten!"
+msgstr "Doomen on söödud!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D=kustuta doomeni präänikud, sea luba A)lati/P=küsi/V=ei või C=katkesta? "
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:727
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D=Kustuta doomen, sea luba A)lati/P=küsi/V=ei või C=katkesta? "
+
+#: LYMessages.c:728
+msgid "All cookies in the domain have been eaten!"
+msgstr "Doomeni kõik präänikud on söödud!"
+
+#: LYMessages.c:729
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "'A'lati luban doomenist '%s'."
+
+#: LYMessages.c:730
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "'V'=ei luba kunagi doomenist '%s'."
+
+#: LYMessages.c:731
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "'P'=küsi, et lubada doomenist '%s'."
+
+#: LYMessages.c:732
+msgid "Delete all cookies in this domain?"
+msgstr "Kustutan kõik selle doomeni präänikud?"
+
+#: LYMessages.c:733
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Kõik jari küpsised on söödud!"
+
+#: LYMessages.c:735
+msgid "Port 19 not permitted in URLs."
+msgstr "Porti 19 ei ole lubatud URLis kasutada."
+
+#: LYMessages.c:736
+msgid "Port 25 not permitted in URLs."
+msgstr "Porti 25 ei ole lubatud URLis kasutada."
+
+#: LYMessages.c:737
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Porti %lu ei ole lubatud URLis kasutada."
+
+#: LYMessages.c:738
+msgid "URL has a bad port field."
+msgstr "Port urlis on vigane."
+
+#: LYMessages.c:739
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Üksteises sisalduvate HTML elementide maksimum ületatud."
+
+#: LYMessages.c:740
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Vigane osaline viide! Eemaldan esimesed punktid."
+
+#: LYMessages.c:741
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Trasseerimise logi avamine ebaõnnestus. Ei trasseeri!"
+
+#: LYMessages.c:742
+msgid "Lynx Trace Log"
+msgstr "Lynx trasseerimise logi"
+
+#: LYMessages.c:743
+msgid "No trace log has been started for this session."
+msgstr "Selle sessiooniga ei ole trasseerimist alustatud."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:745
+msgid "The maximum temporary file count has been reached!"
+msgstr "Maksimaalne ajutiste failide arv on ületatud!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:747
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Vormi väärtuse pikkus ületab puhvri pikkust! Eemaldan ülejäägi."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:749
+msgid "Modified tail combined with head of form field value."
+msgstr "Muudetud lõpp kombineeriti vormi välja väärtuse päisega."
+
+#. HTFile.c
+#: LYMessages.c:752
+msgid "Directory"
+msgstr "Kataloog"
+
+#: LYMessages.c:753
+msgid "Directory browsing is not allowed."
+msgstr "Kataloogide prausimine ei ole lubatud."
+
+#: LYMessages.c:754
+msgid "Selective access is not enabled for this directory"
+msgstr "Valikuline lubamine ei ole selles kataloogis lubatud"
+
+#: LYMessages.c:755
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: kataloogi skaneerimine ebaõnnestus."
+
+#: LYMessages.c:756
+msgid "This directory is not readable."
+msgstr "See kataloog ei ole loetav."
+
+#: LYMessages.c:757
+msgid "Can't access requested file."
+msgstr "Soovitud faili ei saa kasutada."
+
+#: LYMessages.c:758
+msgid "Could not find suitable representation for transmission."
+msgstr "Ei leia ülekandeks sobivat esitusviisi."
+
+#: LYMessages.c:759
+msgid "Could not open file for decompression!"
+msgstr "Faili ei õnnestu lahtipakkimiseks avada!"
+
+#: LYMessages.c:760
+msgid "Files:"
+msgstr "Failid:"
+
+#: LYMessages.c:761
+msgid "Subdirectories:"
+msgstr "Alamkataloogid:"
+
+#: LYMessages.c:762
+msgid " directory"
+msgstr " kataloog"
+
+#: LYMessages.c:763
+msgid "Up to "
+msgstr "Tagasi "
+
+#: LYMessages.c:764
+msgid "Current directory is "
+msgstr "Jooksev kataloog on "
+
+#. HTFTP.c
+#: LYMessages.c:767
+msgid "Symbolic Link"
+msgstr "Nimeviide"
+
+#. HTGopher.c
+#: LYMessages.c:770
+msgid "No response from server!"
+msgstr "Server ei vasta!"
+
+#: LYMessages.c:771
+msgid "CSO index"
+msgstr "CSO indeks"
+
+#: LYMessages.c:772
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"See on CSO andmebaasi otsingu indeks.\n"
+
+#: LYMessages.c:773
+msgid "CSO Search Results"
+msgstr "CSO otsingu tulemused"
+
+#: LYMessages.c:774
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "%s positsioneerimine ebaõnnestus\n"
+
+#: LYMessages.c:775
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Vajutage klahvi 's' ja sisestage otsingu võtmesõnad.\n"
+
+#: LYMessages.c:776
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"See on Gopheri otsingu indeks.\n"
+
+#: LYMessages.c:777
+msgid "Gopher index"
+msgstr "Gopher indeks"
+
+#: LYMessages.c:778
+msgid "Gopher Menu"
+msgstr "Gopher Menüü"
+
+#: LYMessages.c:779
+msgid " Search Results"
+msgstr " Otsingu tulemused"
+
+#: LYMessages.c:780
+msgid "Sending CSO/PH request."
+msgstr "Saadan CSO/PH päringu."
+
+#: LYMessages.c:781
+msgid "Sending Gopher request."
+msgstr "Saadan Gopher päringu."
+
+#: LYMessages.c:782
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO/PH päring saadetud; ootan vastust."
+
+#: LYMessages.c:783
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopher päring saadetud; ootan vastust."
+
+#: LYMessages.c:784
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Palun sisestage otsitavad võtmesõnad.\n"
+
+#: LYMessages.c:785
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Sisestatavate võtmesõnadega otsitakse"
+
+#: LYMessages.c:786
+msgid " person's name in the database.\n"
+msgstr " andmebaasist inimeste nimesid.\n"
+
+#. HTNews.c
+#: LYMessages.c:789
+msgid "Connection closed ???"
+msgstr "Ühendus suleti ???"
+
+#: LYMessages.c:790
+msgid "Cannot open temporary file for news POST."
+msgstr "Uudisegruppi postitamiseks ei õnnestu avada ajutist faili."
+
+#: LYMessages.c:791
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "See klient ei toeta SSL vahendusel uudisegruppi postitamist."
+
+#. HTStyle.c
+#: LYMessages.c:794
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Stiil %d `%s' SGML:%s.  Kiri %s %.1f punkti.\n"
+
+#: LYMessages.c:796
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tJoondus=%d, %d tab. (%.0f enen, %.0f peale)\n"
+
+#: LYMessages.c:797
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tTab tüüp=%d kohal %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:800
+msgid "Can't proceed without a username and password."
+msgstr "Kasutajanime ja paroolita ei saa jätkata."
+
+#: LYMessages.c:801
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Autoriseerimisega ei õnnestu jätkata! Võtke ühendust serveri haldajaga."
+
+#: LYMessages.c:802
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Proksi autoriseerimisega ei õnnestu jätkata! Kontakteeruge serveri haldajaga."
+
+#: LYMessages.c:803
+msgid "Retrying with proxy authorization information."
+msgstr "Proovin uuesti proksi autoriseerimise infoga."
+
+#: LYMessages.c:804
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL viga:%s-Jätkan?"
+
+#. HTWAIS.c
+#: LYMessages.c:807
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Tagastatav teade on liiga pikk."
+
+#: LYMessages.c:808
+msgid "Enter WAIS query: "
+msgstr "Sisestage WAIS päring: "
+
+#. Miscellaneous status
+#: LYMessages.c:811
+msgid "Retrying as HTTP0 request."
+msgstr "Proovin uuesti HTTP0 päringuna."
+
+#: LYMessages.c:812
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Laetud %d baiti"
+
+#: LYMessages.c:813
+msgid "Data transfer complete"
+msgstr "Andmed laetud"
+
+#: LYMessages.c:814
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Viga rea %d töötlemisel (%s)\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:817
+msgid "Address List Page"
+msgstr "Aadressi loendi leht"
+
+#: LYMessages.c:818
+msgid "Bookmark file"
+msgstr "Järgede fail"
+
+#: LYMessages.c:819
+msgid "Configuration Definitions"
+msgstr "Seadete definitsioonid"
+
+#: LYMessages.c:820
+msgid "Cookie Jar"
+msgstr "Präänikute Jar"
+
+#: LYMessages.c:821
+msgid "Current Key Map"
+msgstr "Jooksev klahvitabel"
+
+#: LYMessages.c:822
+msgid "File Management Options"
+msgstr "Failide haldamise seaded"
+
+#: LYMessages.c:823
+msgid "Download Options"
+msgstr "Allalaadimise võimalused"
+
+#: LYMessages.c:824
+msgid "History Page"
+msgstr "Ajaloo leht"
+
+#: LYMessages.c:825
+msgid "Cache Jar"
+msgstr "Puhvi Jar"
+
+#: LYMessages.c:826
+msgid "List Page"
+msgstr "Lehe info"
+
+#: LYMessages.c:827
+msgid "Lynx.cfg Information"
+msgstr "Lynx.cfg Informatsioon"
+
+#: LYMessages.c:828
+msgid "Converted Mosaic Hotlist"
+msgstr "Teisendatud Mosaic Hotlist"
+
+#: LYMessages.c:829
+msgid "Options Menu"
+msgstr "Omaduste menüü"
+
+#: LYMessages.c:830
+msgid "File Permission Options"
+msgstr "Failiõiguste seaded"
+
+#: LYMessages.c:831
+msgid "Printing Options"
+msgstr "Trükkimise võimalused"
+
+#: LYMessages.c:832
+msgid "Information about the current document"
+msgstr "Info jooksvast dokumendist"
+
+#: LYMessages.c:833
+msgid "Your recent statusline messages"
+msgstr "Viimased olekurea teated"
+
+#: LYMessages.c:834
+msgid "Upload Options"
+msgstr "Üleslaadimise seaded"
+
+#: LYMessages.c:835
+msgid "Visited Links Page"
+msgstr "Külastatud viidete leht"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:838
+msgid "See also"
+msgstr "Vaadake ka"
+
+#: LYMessages.c:839
+msgid "your"
+msgstr "teie"
+
+#: LYMessages.c:840
+msgid "for runtime options"
+msgstr "töö-aja seaded"
+
+#: LYMessages.c:841
+msgid "compile time options"
+msgstr "kompileerimise aegsed seaded"
+
+#: LYMessages.c:842
+msgid "color-style configuration"
+msgstr "värvistiili seaded"
+
+#: LYMessages.c:843
+msgid "latest release"
+msgstr "viimane versioon"
+
+#: LYMessages.c:844
+msgid "pre-release version"
+msgstr "eelversioon"
+
+#: LYMessages.c:845
+msgid "development version"
+msgstr "arendusversioon"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:847
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Järgnevad andmed tuletati selle Lynxi automaatse seadistamise ja ehitamise\n"
+"protsessi käigus. Vearaportite saatmisel lisage palun koopia ka sellest\n"
+"lehest."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:851
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Järgnevaid andmeid kasutati selle Lynxi ehitamisel automaatselt seadistatud\n"
+"kompileerimise aegsete definitsioonidena."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:856
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "  C=loo D=lae alla E=toimeta F=kogu menüü M)uuda R=eemalda T=märgi U=lae üles\n"
+
+#: LYMessages.c:857
+msgid "Failed to obtain status of current link!"
+msgstr "Jooksva viite oleku lugemine ebaõnnestus!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:860
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Spetsiaal URL on lubatud ainult faili õiguste menüüs!"
+
+#: LYMessages.c:864
+msgid "External support is currently disabled."
+msgstr "Väline tugi on hetkel blokeeritud."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:868
+msgid "Changing working-directory is currently disabled."
+msgstr "Töökataloogi muutmine on hetkel blokeeritud."
+
+#: LYMessages.c:869
+msgid "Linewrap OFF!"
+msgstr "Reamurdmine väljas!"
+
+#: LYMessages.c:870
+msgid "Linewrap ON!"
+msgstr "Reamurdmine sees!"
+
+#: LYMessages.c:871
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Tabelid tabelites töötlemine on välja lülitatud! Laen uuesti..."
+
+#: LYMessages.c:872
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Tabelid tabelites töötlemine on sisse lülitatud! Laen uuesti..."
+
+#: LYMessages.c:873
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Kui kasutatakse reamurdmist, on nihutamine blokeeritud"
+
+#: LYMessages.c:874
+msgid "Trace not supported"
+msgstr "Trasseerimine ei ole toetatud"
+
+#: LYMessages.c:795
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tTaanded: esimene=%.0f teised=%.0f, Kõrgus=%.1f Kirj=%.1f\n"
+
+#.
+#. * Set up the message for the username prompt, and then issue the
+#. * prompt.  The default username is included in the call to the
+#. * prompting function, but the password is NULL-ed and always replaced.
+#. * - FM
+#.
+#: WWW/Library/Implementation/HTAABrow.c:634
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Kasutajanimi '%s' kasutamiseks, %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:904
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "See klient ei tea, kuidas koostada proksi autoriseerimise infot skeemile"
+
+#: WWW/Library/Implementation/HTAABrow.c:983
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "See klient ei tea, kuidas koostada autoriseerimise infot skeemile"
+
+#: WWW/Library/Implementation/HTAABrow.c:1093
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Vigane päis '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1198
+msgid "Proxy authorization required -- retrying"
+msgstr "Nõutakse proksi autentimist -- proovin uuesti"
+
+#: WWW/Library/Implementation/HTAABrow.c:1256
+msgid "Access without authorization denied -- retrying"
+msgstr "Autoriseerimata ei lubata kasutada -- proovin uuesti"
+
+#: WWW/Library/Implementation/HTAccess.c:698
+msgid "Access forbidden by rule"
+msgstr "Reeglid piiravad juurdepääsu"
+
+#: WWW/Library/Implementation/HTAccess.c:793
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "POST sisuga dokument puudub puhvrist. Postitan uuesti?"
+
+#: WWW/Library/Implementation/HTAccess.c:949
+msgid "Loading failed, use a previous copy."
+msgstr "laadimine ebaõnnestus, kasuta eelmist koopiat."
+
+#: WWW/Library/Implementation/HTAccess.c:1058 src/GridText.c:8867
+msgid "Loading incomplete."
+msgstr "Mittetäielik laadimine."
+
+#: WWW/Library/Implementation/HTAccess.c:1089
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: pistiku või faili numbri tagastas aegunud protseduur!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1091
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Sisemine tarkvaraline viga.  Teavitage palun lynx-dev@nongnu.org!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1092
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Tagastatud olek oli: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1098 src/LYMainLoop.c:8050
+msgid "Can't Access"
+msgstr "Ei saa kasutada"
+
+#: WWW/Library/Implementation/HTAccess.c:1106
+msgid "Unable to access document."
+msgstr "Dokumenti ei saa kasutada."
+
+#: WWW/Library/Implementation/HTFTP.c:849
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Sisestage kasutaja %s@%s parool:"
+
+#: WWW/Library/Implementation/HTFTP.c:877
+msgid "Unable to connect to FTP host."
+msgstr "Ei õnnestu luua ühendust FTP serveriga."
+
+#: WWW/Library/Implementation/HTFTP.c:1158
+msgid "close master socket"
+msgstr "ülem pistiku sulgemine"
+
+#: WWW/Library/Implementation/HTFTP.c:1220
+msgid "socket for master socket"
+msgstr "pistik ülem pistikule"
+
+#: WWW/Library/Implementation/HTFTP.c:2986
+msgid "Receiving FTP directory."
+msgstr "Laen FTP kataloogi."
+
+#: WWW/Library/Implementation/HTFTP.c:3122
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Üle kantud %d baiti (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3480
+msgid "connect for data"
+msgstr "loon andmekanalit"
+
+#: WWW/Library/Implementation/HTFTP.c:4141
+msgid "Receiving FTP file."
+msgstr "Laen FTP faili."
+
+#: WWW/Library/Implementation/HTFinger.c:278
+msgid "Could not set up finger connection."
+msgstr "Ei õnnestu luua ühendust finger teenusega."
+
+#: WWW/Library/Implementation/HTFinger.c:325
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Ei õnnestu lugeda andmeid (finger URLis puudub serveri nimi)"
+
+#: WWW/Library/Implementation/HTFinger.c:329
+msgid "Invalid port number - will only use port 79!"
+msgstr "Vigane pordi number - kasutan ainult porti 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:395
+msgid "Could not access finger host."
+msgstr "Finger serverit ei saa kasutada."
+
+#: WWW/Library/Implementation/HTFinger.c:403
+msgid "No response from finger server."
+msgstr "Finger server ei vasta."
+
+#: WWW/Library/Implementation/HTNews.c:421
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Kasutajanimi uudiseserverile '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:474
+msgid "Change username?"
+msgstr "Muudan kasutajanime?"
+
+#: WWW/Library/Implementation/HTNews.c:478
+msgid "Username:"
+msgstr "Kasutajanimi:"
+
+#: WWW/Library/Implementation/HTNews.c:503
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Parool uudiseserverile '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:586
+msgid "Change password?"
+msgstr "Muudan parooli?"
+
+#: WWW/Library/Implementation/HTNews.c:1707
+#, c-format
+msgid "No matches for: %s"
+msgstr "Ei leia: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1757
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Selles grupis ei ole artikleid.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1769
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Selles vahemikus artikleid ei ole.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1782
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  Artiklid %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1805
+msgid "Earlier articles"
+msgstr "Varasemad artiklid"
+
+#: WWW/Library/Implementation/HTNews.c:1818
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Leidsin umbes %d artiklit grupis %s, järgnevad artiklite ID:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1880
+msgid "All available articles in "
+msgstr "Kõik kasutatavad artiklid grupis "
+
+#: WWW/Library/Implementation/HTNews.c:2094
+msgid "Later articles"
+msgstr "Hilisemad artiklid"
+
+#: WWW/Library/Implementation/HTNews.c:2117
+msgid "Post to "
+msgstr "Postita gruppi "
+
+#: WWW/Library/Implementation/HTNews.c:2338
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "See klient ei toeta SNEWS URLe."
+
+#: WWW/Library/Implementation/HTNews.c:2545
+msgid "No target for raw text!"
+msgstr "Toore teksti jaoks pole kohta!"
+
+#: WWW/Library/Implementation/HTNews.c:2575
+msgid "Connecting to NewsHost ..."
+msgstr "Loon ühendust uudisegruppide serveriga ..."
+
+#: WWW/Library/Implementation/HTNews.c:2627
+#, c-format
+msgid "Could not access %s."
+msgstr "%s ei saa kasutada."
+
+#: WWW/Library/Implementation/HTNews.c:2733
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Ei õnnestu lugeda uudiste infot. Server %.20s vastas: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2737
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Ei õnnestu lugeda uudiste infot, tühi vastus serverilt %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2941
+msgid "Reading list of available newsgroups."
+msgstr "Loen kasutatavate gruppide nimekirja."
+
+#: WWW/Library/Implementation/HTNews.c:2962
+msgid "Reading list of articles in newsgroup."
+msgstr "Loen artiklite nimekirja grupis."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading news article."
+msgstr "Loen artiklit."
+
+#: WWW/Library/Implementation/HTNews.c:2998
+msgid "Sorry, could not load requested news."
+msgstr "Kahjuks ei õnnestunud soovitud uudiseid laadida."
+
+#: WWW/Library/Implementation/HTTCP.c:1286
+msgid "Address has invalid port"
+msgstr "Aadressis on vigane port"
+
+#: WWW/Library/Implementation/HTTCP.c:1362
+msgid "Address length looks invalid"
+msgstr "Aadressi pikkus tundub vigane"
+
+#: WWW/Library/Implementation/HTTCP.c:1622
+#: WWW/Library/Implementation/HTTCP.c:1640
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Ei leia serverit %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1637
+#: WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Vigane serveri nimi %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1651
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Loon %s ühendust serveriga %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1662
+msgid "socket failed."
+msgstr "socket ebaõnnestus."
+
+#: WWW/Library/Implementation/HTTCP.c:1676
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "socket ebaõnnestus: perekond %d aadress %s port %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1700
+msgid "Could not make connection non-blocking."
+msgstr "Ei õnnestu muuta ühendust mitte-blokeerivaks."
+
+#: WWW/Library/Implementation/HTTCP.c:1768
+msgid "Connection failed (too many retries)."
+msgstr "Ühendus ebaõnnestus (looga palju katseid)."
+
+#: WWW/Library/Implementation/HTTCP.c:1955
+msgid "Could not restore socket to blocking."
+msgstr "Pistikul ei õnnestu taastada blokeerivat moodi."
+
+#: WWW/Library/Implementation/HTTCP.c:2021
+msgid "Socket read failed (too many tries)."
+msgstr "Pistikust lugemine ebaõnnestus (liiga palju katseid)."
+
+#: WWW/Library/Implementation/HTTP.c:81
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+
+#: WWW/Library/Implementation/HTTP.c:432
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "Aadress sisaldab kasutajanime: %s"
+
+#: WWW/Library/Implementation/HTTP.c:486
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Sertifikaadi väljastaja: %s"
+
+#: WWW/Library/Implementation/HTTP.c:673
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "See klient ei toeta HTTPS URLe."
+
+#: WWW/Library/Implementation/HTTP.c:698
+msgid "Unable to connect to remote host."
+msgstr "Serveriga ühenduse loomine ebaõnnestus."
+
+#: WWW/Library/Implementation/HTTP.c:730
+msgid "Retrying connection without TLS."
+msgstr "Üritan ühendust uuesti luua TLS kasutamata."
+
+#: WWW/Library/Implementation/HTTP.c:773
+msgid "no issuer was found"
+msgstr "väljaandja puudub"
+
+#: WWW/Library/Implementation/HTTP.c:775
+msgid "issuer is not a CA"
+msgstr "väljaandja pole CA"
+
+#: WWW/Library/Implementation/HTTP.c:777
+msgid "the certificate has no known issuer"
+msgstr "sertifikaadil puudub tuntud väljaandja"
+
+#: WWW/Library/Implementation/HTTP.c:779
+msgid "the certificate has been revoked"
+msgstr "sertifikaat on kehtivuse kaotanud"
+
+#: WWW/Library/Implementation/HTTP.c:781
+msgid "the certificate is not trusted"
+msgstr "sertifikaat pole usaldusväärne"
+
+#: WWW/Library/Implementation/HTTP.c:855
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Kontrollitud ühendus serveriga %s (sertifikaat=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:903 WWW/Library/Implementation/HTTP.c:945
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Kontrollitud ühendus serveriga %s (subj=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:975
+msgid "Can't find common name in certificate"
+msgstr "Sertifikaadis puudub ühine nimi"
+
+#: WWW/Library/Implementation/HTTP.c:978
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL viga:host(%s)!=sert(%s)-Jätkan?"
+
+#: WWW/Library/Implementation/HTTP.c:991
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "KONTROLLIMATA ühendus serveriga %s (sertifikaat=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:1000
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Turvaline %d-bitti %s (%s) HTTP ühendus"
+
+#: WWW/Library/Implementation/HTTP.c:1467
+msgid "Sending HTTP request."
+msgstr "Saadan HTTP päringu."
+
+#: WWW/Library/Implementation/HTTP.c:1509
+msgid "Unexpected network write error; connection aborted."
+msgstr "Ootamatu tõrge võrku kirjutamisel; ühendus katkestati."
+
+#: WWW/Library/Implementation/HTTP.c:1515
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP päring on saadetud; ootan vastust."
+
+#: WWW/Library/Implementation/HTTP.c:1588
+#: WWW/Library/Implementation/HTTP.c:1598
+msgid "Unexpected network read error; connection aborted."
+msgstr "Ootamatu tõrge võrgust lugemisel; ühendus katkestati."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1800
+msgid "Got unexpected Informational Status."
+msgstr "Sain ootamatu informatiivse oleku."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1834
+msgid "Request fulfilled.  Reset Content."
+msgstr "Päring täidetud. Algväärtusta sisu."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1949
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Sain ootamatu oleku, 304 Pole muudetud."
+
+#: WWW/Library/Implementation/HTTP.c:2012
+msgid "Redirection of POST content requires user approval."
+msgstr "POST sisu ümbersuunamine nõuab kasutaja kinnitust."
+
+#: WWW/Library/Implementation/HTTP.c:2027
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Oman POST sisu. Käsitlen püsivat ümbersuunamist ajutisena.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2071
+msgid "Retrying with access authorization information."
+msgstr "Proovin uuesti kasutades autoriseerimise infot."
+
+#: WWW/Library/Implementation/HTTP.c:2083
+msgid "Show the 401 message body?"
+msgstr "Näitan teate 401 keha?"
+
+#: WWW/Library/Implementation/HTTP.c:2127
+msgid "Show the 407 message body?"
+msgstr "Näitan teate 407 keha?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2227
+msgid "Unknown status reply from server!"
+msgstr "Tundmatu oleku vastus serverilt!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "%s sessioon:"
+
+#: WWW/Library/Implementation/HTWAIS.c:163
+msgid "Could not connect to WAIS server."
+msgstr "Ei õnnestu luua ühendust WAIS serveriga."
+
+#: WWW/Library/Implementation/HTWAIS.c:171
+msgid "Could not open WAIS connection for reading."
+msgstr "Ei õnnestu luua lugemiseks WAIS ühendust."
+
+#: WWW/Library/Implementation/HTWAIS.c:193
+msgid "Diagnostic code is "
+msgstr "Diagnostika kood on "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Indeks "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " sisaldab järgnevad asjasse puutuvas %d element%s \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Esimene number iga kirje järel on selle suhteline kaal, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "teine on ridade arv selles."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (halb failinimi)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(halb dokumendi id)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Lühike päise kirje, ei saa näidata)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Pikk päise kirje, ei saa näidata\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Tekstikirje\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Päisrea kirje, ei saa näidata\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Koodi kirje, ei saa näidata\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Süntaksi viga WAIS URLis"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS Indeks)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS Indeks: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "See on viide otsimaks "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS Indeks.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Andke ot's'ingu käsklus ja seejärel otsitavad sõnad.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (baasis "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS Otsing \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" baasis: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Päring on liiga suur."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Otsin WAIS andmebaasis..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Otsing katkestati."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "WAIS dokumendi vormingut ei õnnestu teisendada"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Päring on liiga pikk."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Laen WAIS dokumenti..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Teksti ei tagastatud!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:301
+msgid " NOT GIVEN in source file; "
+msgstr " EI ESITATUD lähtefailis; "
+
+#: WWW/Library/Implementation/HTWSRC.c:324
+msgid " WAIS source file"
+msgstr " WAIS lähtefail"
+
+#: WWW/Library/Implementation/HTWSRC.c:331
+msgid " description"
+msgstr " kirjeldus"
+
+#: WWW/Library/Implementation/HTWSRC.c:341
+msgid "Access links"
+msgstr "Kasutamise viited"
+
+#: WWW/Library/Implementation/HTWSRC.c:362
+msgid "Direct access"
+msgstr "Otsene kasutamine"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:365
+msgid " (or via proxy server, if defined)"
+msgstr " (või proksi serveri vahendusel, kui on defineeritud)"
+
+#: WWW/Library/Implementation/HTWSRC.c:380
+msgid "Maintainer"
+msgstr "Haldaja"
+
+#: WWW/Library/Implementation/HTWSRC.c:388
+msgid "Host"
+msgstr "Server"
+
+#: src/GridText.c:699
+msgid "Memory exhausted, display interrupted!"
+msgstr "Mälu on otsas, esitus katkestati!"
+
+#: src/GridText.c:704
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Mälu on otsas, katkestan ülekande!"
+
+#: src/GridText.c:3685
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** MÄLU ON OTSAS ***"
+
+#: src/GridText.c:6146
+msgid "text entry field"
+msgstr "teksti väli"
+
+#: src/GridText.c:6149
+msgid "password entry field"
+msgstr "parooli väli"
+
+#: src/GridText.c:6152
+msgid "checkbox"
+msgstr "märkeruut"
+
+#: src/GridText.c:6155
+msgid "radio button"
+msgstr "raadionupp"
+
+#: src/GridText.c:6158
+msgid "submit button"
+msgstr "postitamise nupp"
+
+#: src/GridText.c:6161
+msgid "reset button"
+msgstr "algväärtustamise nupp"
+
+#: src/GridText.c:6164
+msgid "script button"
+msgstr "skripti nupp"
+
+#: src/GridText.c:6167
+msgid "popup menu"
+msgstr "hüpikmenüü"
+
+#: src/GridText.c:6170
+msgid "hidden form field"
+msgstr "peidetud vormi väli"
+
+#: src/GridText.c:6173
+msgid "text entry area"
+msgstr "tekstiala"
+
+#: src/GridText.c:6176
+msgid "range entry field"
+msgstr "vahemiku väli"
+
+#: src/GridText.c:6179
+msgid "file entry field"
+msgstr "faili väli"
+
+#: src/GridText.c:6182
+msgid "text-submit field"
+msgstr "teksti postitamise väli"
+
+#: src/GridText.c:6185
+msgid "image-submit button"
+msgstr "pildi postitamise nupp"
+
+#: src/GridText.c:6188
+msgid "keygen field"
+msgstr "võtme loomise väli"
+
+#: src/GridText.c:6191
+msgid "unknown form field"
+msgstr "tundmatu vormi väli"
+
+#: src/GridText.c:6211 src/GridText.c:6218 src/LYList.c:248
+msgid "unknown field or link"
+msgstr "tundmatu väli või viide"
+
+#: src/GridText.c:10649
+msgid "Can't open file for uploading"
+msgstr "Faili ei õnnestu üleslaadimiseks avada"
+
+#: src/GridText.c:11837
+#, c-format
+msgid "Submitting %s"
+msgstr "Postitan %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12894
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Tuvastati hangumine: TextAnchor struktuur on vigane - soovitan katkestada!"
+
+#. don't show previous state
+#: src/GridText.c:13056
+msgid "Wrap lines to fit displayed area?"
+msgstr "Murran read et mahtuda ekraanile?"
+
+#: src/GridText.c:13696
+msgid "Very long lines have been truncated!"
+msgstr "Väga pikad read on lõigatud!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:364 src/LYShowInfo.c:368
+msgid "bytes"
+msgstr "baiti"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:303 src/HTAlert.c:329
+#, c-format
+msgid "Read %s of data"
+msgstr "Loetud andmeid %s"
+
+#: src/HTAlert.c:326
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Loetud andmeid %s, kokku %s"
+
+#: src/HTAlert.c:335
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/sek"
+
+#: src/HTAlert.c:347
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (peatunud %s)"
+
+#: src/HTAlert.c:351
+#, c-format
+msgid ", ETA %s"
+msgstr ", ELA %s"
+
+#: src/HTAlert.c:373
+msgid " (Press 'z' to abort)"
+msgstr " (Katkestamiseks vajutage 'z')"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:411 src/HTAlert.c:459
+msgid "yes"
+msgstr "jah"
+
+#: src/HTAlert.c:414 src/HTAlert.c:460
+msgid "no"
+msgstr "ei"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:913
+msgid "Y/N/A/V"
+msgstr "J/E/A/M"
+
+#: src/HTML.c:5915
+msgid "Description:"
+msgstr "Kirjeldus:"
+
+#: src/HTML.c:5920
+msgid "(none)"
+msgstr "(puudub)"
+
+#: src/HTML.c:5924
+msgid "Filepath:"
+msgstr "Failitee:"
+
+#: src/HTML.c:5930
+msgid "(unknown)"
+msgstr "(tundmatu)"
+
+#: src/HTML.c:7370
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Dokumendis on ainult peidetud viited. Kasuta käsklust 'l'ist."
+
+#: src/HTML.c:7869
+msgid "Source cache error - disk full?"
+msgstr "Lähtefaili puhvri viga - ketas on täis?"
+
+#: src/HTML.c:7882
+msgid "Source cache error - not enough memory!"
+msgstr "Lähtefaili puhvri viga - mälu on otsas?"
+
+#: src/LYBookmark.c:167
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     See fail on HTML esitus X Mosaic hotlist failist. Aegunud või\n"
+"     vigased viited saab eemaldada eemalda järg käsklusega, mis \n"
+"     käivitatakse tavaliselt vajutades klahvile 'R'. 'R' võib olla\n"
+"     ka teie süsteemi administraatori poolt ümber määratud."
+
+#: src/LYBookmark.c:376
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Viiteid saate kustutada klahviga 'R'<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:379
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Viiteid saate eemaldada kasutades eemalda järg käsklust. See on\n"
+"     tavaliselt klahv 'R', aga võib olla ka ümber määratud teie enda\n"
+"     või teie süsteemi administraatori poolt."
+
+#: src/LYBookmark.c:383
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Selle faili muutmiseks, näiteks aegunud viidete eemaldamiseks\n"
+"     või viidete järjekorra muutmiseks, võib kasutada ka tavalist\n"
+"     tekstitoimetit."
+
+#: src/LYBookmark.c:386
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Märkus: kui te muudate seda faili käsitsi, ei tohiks te\n"
+"      muuta ridade vormingut ega lisada HTML konstruktsioone.\n"
+"      Kontrollige, et järjed oleksid salvestatud ühe reana."
+
+#: src/LYBookmark.c:684
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Fail võib selle sessiooni jooksul olla taastatav failist %s"
+
+#: src/LYCgi.c:158
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Kas soovite \"%s\" käivitada?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:273
+msgid "Unable to access cgi script"
+msgstr "Cgi skripti ei saa kasutada"
+
+#: src/LYCgi.c:707 src/LYCgi.c:710
+msgid "Good Advice"
+msgstr "Hea soovitus"
+
+#: src/LYCgi.c:714
+msgid "An excellent http server for VMS is available via"
+msgstr "Suurepärane http server VMS süsteemile on saadav"
+
+#: src/LYCgi.c:721
+msgid "this link"
+msgstr "sellelt viitelt"
+
+#: src/LYCgi.c:725
+msgid "It provides state of the art CGI script support.\n"
+msgstr "See pakub korralikku CGI skriptide tuge.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Lõpetan katkestuse tõttu:"
+
+#: src/LYCookie.c:2537
+msgid "(from a previous session)"
+msgstr "(eelmisest sessioonist)"
+
+#: src/LYCookie.c:2598
+msgid "Maximum Gobble Date:"
+msgstr "Maksimaalne söömise aeg: "
+
+#: src/LYCookie.c:2637
+msgid "Internal"
+msgstr "Sisemine"
+
+#: src/LYCookie.c:2638
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "cookie_domain_flag_set viga, katkestan programmi töö"
+
+#: src/LYCurses.c:1297
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Terminali initsialiseerimine ebaõnnestus - tundmatu terminali tüüp?"
+
+#: src/LYCurses.c:1780
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1784
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Selle programmiga peate kasutama vt100, 200 vms terminali."
+
+#: src/LYCurses.c:1833
+msgid "Your Terminal type is unknown!"
+msgstr "Teie terminali tüüp on tundmatu!"
+
+#: src/LYCurses.c:1834
+msgid "Enter a terminal type:"
+msgstr "Sisestage terminali tüüp:"
+
+#: src/LYCurses.c:1848
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TERMINALI TÜÜBIKS ON SEATUD"
+
+#: src/LYCurses.c:2398
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Fataalne viga tekkis programmis %s Ver. %s\n"
+
+#: src/LYCurses.c:2401
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Palun teavitage oma süsteemi administraatorit, et ta kinnitaks viga\n"
+"ja kui vea olemasolu on kindel, teavitaks lynx-dev postiloendit.\n"
+"Vearaport peab olema lakooniline kirjeldus käskidest ja/või URList,\n"
+"mis vea põhjustas, operatsioonisüsteemi nimi ja versiooni number,\n"
+"info TCPIP realisatsioonist ja muu asjakohane info.\n"
+
+#: src/LYEdit.c:272
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Viga tekstitoimeti käivitamisel, %s"
+
+#: src/LYEdit.c:275
+msgid "Editor killed by signal"
+msgstr "Toimeti tapeti signaaliga"
+
+#: src/LYEdit.c:280
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "Toimeti lõpetas veakoodiga %s"
+
+#: src/LYDownload.c:509
+msgid "Downloaded link:"
+msgstr "Laetud viide:"
+
+#: src/LYDownload.c:514
+msgid "Suggested file name:"
+msgstr "Soovitatav faili nimi:"
+
+#: src/LYDownload.c:519
+msgid "Standard download options:"
+msgstr "Standardsed allalaadimise võimalused:"
+
+#: src/LYDownload.c:520
+msgid "Download options:"
+msgstr "Allalaadimise võimalused:"
+
+#: src/LYDownload.c:536
+msgid "Save to disk"
+msgstr "Salvesta kettale"
+
+#: src/LYDownload.c:550
+msgid "View temporary file"
+msgstr "Vaata ajutist faili"
+
+#: src/LYDownload.c:557
+msgid "Save to disk disabled."
+msgstr "Kettale salvestamine blokeeritud"
+
+#: src/LYDownload.c:561 src/LYPrint.c:1322
+msgid "Local additions:"
+msgstr "Lokaalsed lisad:"
+
+#: src/LYDownload.c:572 src/LYUpload.c:209
+msgid "No Name Given"
+msgstr "Nimi puudub"
+
+#: src/LYHistory.c:679
+msgid "You selected:"
+msgstr "Teie valik:"
+
+#: src/LYHistory.c:703 src/LYHistory.c:932
+msgid "(no address)"
+msgstr "(aadress puudub)"
+
+#: src/LYHistory.c:707
+msgid " (internal)"
+msgstr " (sisemine)"
+
+#: src/LYHistory.c:709
+msgid " (was internal)"
+msgstr " (oli sisemine)"
+
+#: src/LYHistory.c:807
+msgid " (From History)"
+msgstr " (Ajaloost)"
+
+#: src/LYHistory.c:852
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Teie külastused (v.a. POST, järjed, menüü ja listingu failid):"
+
+#: src/LYHistory.c:1154
+msgid "(No messages yet)"
+msgstr "(Teateid pole veel)"
+
+#: src/LYLeaks.c:222
+msgid "Invalid pointer detected."
+msgstr "Tuvastati vigane viit."
+
+#: src/LYLeaks.c:224 src/LYLeaks.c:262
+msgid "Sequence:"
+msgstr "Järjend:"
+
+#: src/LYLeaks.c:227 src/LYLeaks.c:265
+msgid "Pointer:"
+msgstr "Viit:"
+
+#: src/LYLeaks.c:236 src/LYLeaks.c:243 src/LYLeaks.c:284
+msgid "FileName:"
+msgstr "Failinimi:"
+
+#: src/LYLeaks.c:239 src/LYLeaks.c:246 src/LYLeaks.c:287 src/LYLeaks.c:298
+msgid "LineCount:"
+msgstr "Ridu:"
+
+#: src/LYLeaks.c:260
+msgid "Memory leak detected."
+msgstr "Tuvastasin mälulekke."
+
+#: src/LYLeaks.c:268
+msgid "Contains:"
+msgstr "Sisaldab:"
+
+#: src/LYLeaks.c:281
+msgid "ByteSize:"
+msgstr "Maht:"
+
+#: src/LYLeaks.c:295
+msgid "realloced:"
+msgstr "uuesti võetud:"
+
+#: src/LYLeaks.c:316
+msgid "Total memory leakage this run:"
+msgstr "Mälulekkeid selles sessioonis kokku:"
+
+#: src/LYLeaks.c:320
+msgid "Peak allocation"
+msgstr "Mäluhaaramiste tipp"
+
+#: src/LYLeaks.c:322
+msgid "Bytes allocated"
+msgstr "Baiti võetud"
+
+#: src/LYLeaks.c:324
+msgid "Total mallocs"
+msgstr "Kokku malloc kasutamisi"
+
+#: src/LYLeaks.c:326
+msgid "Total frees"
+msgstr "Vabastamisi kokku"
+
+#: src/LYList.c:88
+msgid "References in "
+msgstr "Viited lehel "
+
+#: src/LYList.c:91
+msgid "this document:"
+msgstr "see dokument:"
+
+#: src/LYList.c:97
+msgid "Visible links:"
+msgstr "Nähtavad viited:"
+
+#: src/LYList.c:201 src/LYList.c:312
+msgid "Hidden links:"
+msgstr "Peidetud viited:"
+
+#: src/LYList.c:349
+msgid "References"
+msgstr "Viited"
+
+#: src/LYList.c:353
+msgid "Visible links"
+msgstr "Nähtavad viited"
+
+#: src/LYLocal.c:289
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Ei õnnestu lugeda '%s' olekut."
+
+#: src/LYLocal.c:354
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "Valik ei ole fail ega kataloog! Ignoreerin päringut."
+
+#: src/LYLocal.c:455
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Süsteemi vea tõttu ei õnnestu %s!"
+
+#: src/LYLocal.c:489
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Ilmselt %s viga süsteemi vea tõttu!"
+
+#: src/LYLocal.c:554 src/LYLocal.c:577
+#, c-format
+msgid "remove %s"
+msgstr "eemalda %s"
+
+#: src/LYLocal.c:597
+#, c-format
+msgid "touch %s"
+msgstr "puuduta %s"
+
+#: src/LYLocal.c:627
+#, c-format
+msgid "move %s to %s"
+msgstr "tõstan %s -> %s"
+
+#: src/LYLocal.c:675
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Sellise nimega kataloog on juba olemas! Ignoreerin päringut."
+
+#: src/LYLocal.c:677
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Sellise nimega fail on juba olemas! Ignoreerin päringut."
+
+#: src/LYLocal.c:679
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Antud nimi on juba kasutusel! Ignoreerin päringut."
+
+#: src/LYLocal.c:691
+msgid "Destination has different owner!  Request denied."
+msgstr "Sihtkohal on teine omanik! Keeldun päringut täitmast."
+
+#: src/LYLocal.c:694
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Sihtkoht ei ole lubatud kataloog! Keeldun päringut täitmast."
+
+#: src/LYLocal.c:710
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Allikas ja sihtkoht on samad! Ignoreerin päringut!"
+
+#: src/LYLocal.c:734
+msgid "Remove all tagged files and directories?"
+msgstr "Eemaldan kõik märgitud failid ja kataloogid?"
+
+#: src/LYLocal.c:807
+msgid "Enter new location for tagged items: "
+msgstr "Sisestage valitud elementidele uus asukoht: "
+
+#: src/LYLocal.c:905
+msgid "Enter new name for directory: "
+msgstr "Sisestage kataloogi uus nimi: "
+
+#: src/LYLocal.c:907
+msgid "Enter new name for file: "
+msgstr "Sisestage faili uus nimi: "
+
+#: src/LYLocal.c:919
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Leiti lubamatu sümbol (tee eraldaja)! Päringut ignoreeritakse."
+
+#: src/LYLocal.c:969
+msgid "Enter new location for directory: "
+msgstr "Sisestage kataloogi uus asukoht: "
+
+#: src/LYLocal.c:971
+msgid "Enter new location for file: "
+msgstr "Sisestage faili uus asukoht: "
+
+#: src/LYLocal.c:998
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Ootamatu tõrge - ei leia lõpust tee eraldajat"
+
+#: src/LYLocal.c:1060
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Muuda nime, asukohta või õiguseid (n, l või p): "
+
+#: src/LYLocal.c:1062
+msgid "Modify name or location (n or l): "
+msgstr "Muuda nime või asukohta (n või l): "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1091
+msgid "This feature not yet implemented!"
+msgstr "Seda omadust ei ole veel realiseeritud!"
+
+#: src/LYLocal.c:1112
+msgid "Enter name of file to create: "
+msgstr "Sisestage loodavale failile nimi: "
+
+#: src/LYLocal.c:1115 src/LYLocal.c:1152
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Leiti vigane ümbersuunamine \"//\"! Ignoreerin päringut."
+
+#: src/LYLocal.c:1149
+msgid "Enter name for new directory: "
+msgstr "Sisestage nimi uuele kataloogile: "
+
+#: src/LYLocal.c:1190
+msgid "Create file or directory (f or d): "
+msgstr "Luua fail või kataloog (f või d): "
+
+#: src/LYLocal.c:1232
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Kustutan kataloogi '%s'?"
+
+#: src/LYLocal.c:1235
+msgid "Remove directory?"
+msgstr "Kustutan kataloogi?"
+
+#: src/LYLocal.c:1240
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Eemaldan faili '%s'?"
+
+#: src/LYLocal.c:1242
+msgid "Remove file?"
+msgstr "Eemaldan faili?"
+
+#: src/LYLocal.c:1247
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Eemaldan nimeviite '%s'?"
+
+#: src/LYLocal.c:1249
+msgid "Remove symbolic link?"
+msgstr "Eemaldan nimeviite?"
+
+#: src/LYLocal.c:1347
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Vabandust, ma ei tea veel, kuidas sedada mitte-UNIX failide õiguseid."
+
+#: src/LYLocal.c:1376
+msgid "Unable to open permit options file"
+msgstr "Õiguste seadete faili avamine ebaõnnestus"
+
+#: src/LYLocal.c:1404
+msgid "Specify permissions below:"
+msgstr "Määrake õigused allpool:"
+
+#: src/LYLocal.c:1405 src/LYShowInfo.c:265
+msgid "Owner:"
+msgstr "Omanik:"
+
+#: src/LYLocal.c:1421
+msgid "Group"
+msgstr "Grupp:"
+
+#: src/LYLocal.c:1437
+msgid "Others:"
+msgstr "Ülejäänud:"
+
+#: src/LYLocal.c:1455
+msgid "form to permit"
+msgstr "vorm seadmaks õiguseid"
+
+#: src/LYLocal.c:1551
+msgid "Invalid mode format."
+msgstr "Vigane moodi formaat."
+
+#: src/LYLocal.c:1555
+msgid "Invalid syntax format."
+msgstr "Vigane süntaksi formaat."
+
+#: src/LYLocal.c:1742
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Hoiatus! UUdekodeeritud fail luuakse kataloogi, kus Lynx käivitati."
+
+#: src/LYLocal.c:1932
+msgid "NULL URL pointer"
+msgstr "NULL URL viit"
+
+#: src/LYLocal.c:2014
+#, c-format
+msgid "Executing %s "
+msgstr "Täidan %s "
+
+#: src/LYLocal.c:2017
+msgid "Executing system command. This might take a while."
+msgstr "Täidan süsteemse käsu. See võib kesta mõne aja."
+
+#: src/LYLocal.c:2091
+msgid "Current directory:"
+msgstr "Jooksev kataloog:"
+
+#: src/LYLocal.c:2094 src/LYLocal.c:2112
+msgid "Current selection:"
+msgstr "Praegune valik:"
+
+#: src/LYLocal.c:2098
+msgid "Nothing currently selected."
+msgstr "Midagi ei ole valitud."
+
+#: src/LYLocal.c:2114
+msgid "tagged item:"
+msgstr "märgitud element:"
+
+#: src/LYLocal.c:2115
+msgid "tagged items:"
+msgstr "märgitud elemendid:"
+
+#: src/LYLocal.c:2215 src/LYLocal.c:2224
+msgid "Illegal filename; request ignored."
+msgstr "Vigane failinimi; ignoreerin päringut."
+
+#. directory not writable
+#: src/LYLocal.c:2322 src/LYLocal.c:2381
+msgid "Install in the selected directory not permitted."
+msgstr "Valitud kataloogi ei ole lubatud installeerida."
+
+#: src/LYLocal.c:2377
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "Valik ei ole kataloog! Ignoreerin päringut."
+
+#: src/LYLocal.c:2386
+msgid "Just a moment, ..."
+msgstr "Üks hetk, ..."
+
+#: src/LYLocal.c:2403
+msgid "Error building install args"
+msgstr "Viga installi argumentide koostamisel"
+
+#: src/LYLocal.c:2418 src/LYLocal.c:2449
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Lähte ja sihtkoht on samad: %s"
+
+#: src/LYLocal.c:2425 src/LYLocal.c:2456
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "On juba sihtkataloogis: %s"
+
+#: src/LYLocal.c:2474
+msgid "Installation complete"
+msgstr "Installeerimine on valmis"
+
+#: src/LYLocal.c:2666
+msgid "Temporary URL or list would be too long."
+msgstr "Ajutine URL või loend oleks liiga pikk."
+
+#: src/LYMail.c:544
+msgid "Sending"
+msgstr "Saadan"
+
+#: src/LYMail.c:1030
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Viide   %s :?: %s \n"
+
+#: src/LYMail.c:1032
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "nimega \"%s\"\n"
+
+#: src/LYMail.c:1033
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "failis \"%s\" nimega \"%s\"\n"
+
+#: src/LYMail.c:1034
+msgid "was requested but was not available."
+msgstr "sooviti, aga ei ole kasutatav."
+
+#: src/LYMail.c:1035
+msgid "Thought you might want to know."
+msgstr "Ma arvasin, et te sooviksite seda teada."
+
+#: src/LYMail.c:1037
+msgid "This message was automatically generated by"
+msgstr "See teade on automaatselt loodud"
+
+#: src/LYMail.c:1751
+msgid "No system mailer configured"
+msgstr "Süsteemset e-posti programmi ei ole seadistatud"
+
+#: src/LYMain.c:1049
+msgid "No Winsock found, sorry."
+msgstr "Winsock puudub, kahju."
+
+#: src/LYMain.c:1240
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Te PEATE defineerima kehtiva TMP või TEMP piirkonna!"
+
+#: src/LYMain.c:1293 src/LYMainLoop.c:5260
+msgid "No such directory"
+msgstr "Sellist kataloogi ei ole"
+
+#: src/LYMain.c:1487
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Seadete faili \"%s\" ei ole.\n"
+"\n"
+
+#: src/LYMain.c:1497
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx kooditabeleid ei ole deklareeritud.\n"
+"\n"
+
+#: src/LYMain.c:1526
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx kaadri toimeti ei ole deklareeritud.\n"
+"\n"
+
+#: src/LYMain.c:1608
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx fail \"%s\" ei ole kasutatav.\n"
+"\n"
+
+#: src/LYMain.c:1683
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "Ignoreerisin %d sümbolit standard sisendist.\n"
+
+#: src/LYMain.c:1685
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Toruga suunatud sisendi määramiseks kasutage \"-stdin\" või \"-\".\n"
+
+#: src/LYMain.c:1843
+msgid "Warning:"
+msgstr "Hoiatus:"
+
+#: src/LYMain.c:2408
+msgid "persistent cookies state will be changed in next session only."
+msgstr "püsivate präänikute olekut muudetakse alles järgmise sessiooniga."
+
+#: src/LYMain.c:2644 src/LYMain.c:2689
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: ignoreerin tundmatut kooditabelit %s\n"
+
+#: src/LYMain.c:3208
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Versioon %s (%s)"
+
+#: src/LYMain.c:3246
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Ehitatud %s masinal %s %s\n"
+
+#: src/LYMain.c:3268
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "Autoriõiguseid hoiavad Lynx Developers Group,"
+
+#: src/LYMain.c:3269
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "University of Kansas, CERN ja teised."
+
+#: src/LYMain.c:3270
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Levitatakse GNU üldise avaliku litsensiga (Versioon 2)."
+
+#: src/LYMain.c:3271
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Abi ja muud infot leiate aadressil http://lynx.isc.org/."
+
+#: src/LYMain.c:4104
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "KASUTAMINE: %s [võtmed] [fail]\n"
+
+#: src/LYMain.c:4105
+#, c-format
+msgid "Options are:\n"
+msgstr "Võtmed on:\n"
+
+#: src/LYMain.c:4406
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Vigane võti: %s\n"
+
+#: src/LYMainLoop.c:575
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Sisemine viga: Vigane hiire viide %d!"
+
+#: src/LYMainLoop.c:696 src/LYMainLoop.c:5282
+msgid "A URL specified by the user"
+msgstr "Kasutaja poolt antud URL"
+
+#: src/LYMainLoop.c:1148
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "multipart/form-data kodeering ei ole veel toetatud! Ei saa saata."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3177
+msgid "Help Screen"
+msgstr "Abiinfo ekraan"
+
+#: src/LYMainLoop.c:3308
+msgid "System Index"
+msgstr "Süsteemi indeks"
+
+#: src/LYMainLoop.c:3556
+#, c-format
+msgid "Query parameter %d: "
+msgstr "Päringu parameeter %d: "
+
+#: src/LYMainLoop.c:3781 src/LYMainLoop.c:5558
+msgid "Entry into main screen"
+msgstr "Sisenemine põhiekraanile"
+
+#: src/LYMainLoop.c:4039
+msgid "No next document present"
+msgstr "Järgmist dokumenti pole"
+
+#: src/LYMainLoop.c:4334
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "kahjuks on selle dokumendi kooditabel üheselt määratud..."
+
+#: src/LYMainLoop.c:5240
+msgid "cd to:"
+msgstr "mine kataloogi:"
+
+#: src/LYMainLoop.c:5263
+msgid "A component of path is not a directory"
+msgstr "Tee komponent ei ole kataloog"
+
+#: src/LYMainLoop.c:5266
+msgid "failed to change directory"
+msgstr "kataloogi ei õnnestu vahetada"
+
+#: src/LYMainLoop.c:6496
+msgid "Reparsing document under current settings..."
+msgstr "Parsin dokumendi uuesti jooksvate seadetega..."
+
+#: src/LYMainLoop.c:6790
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Fataalne viga - ei õnnestu avada väljundfaili %s\n"
+
+#: src/LYMainLoop.c:7128
+msgid "TABLE center enable."
+msgstr "TABELI tsentreerimine lubatud."
+
+#: src/LYMainLoop.c:7131
+msgid "TABLE center disable."
+msgstr "TABELI tsentreerimine blokeeritud."
+
+#: src/LYMainLoop.c:7211
+msgid "Current URL is empty."
+msgstr "Jooksev URL on tühi."
+
+#: src/LYMainLoop.c:7213 src/LYUtils.c:1881
+msgid "Copy to clipboard failed."
+msgstr "Lõikepuhvrisse kopeerimine ebaõnnestus."
+
+#: src/LYMainLoop.c:7215
+msgid "Document URL put to clipboard."
+msgstr "Panin dokumendi URLi lõikepuhvrisse."
+
+#: src/LYMainLoop.c:7217
+msgid "Link URL put to clipboard."
+msgstr "Panin viite URLi lõikepuhvrisse."
+
+#: src/LYMainLoop.c:7244
+msgid "No URL in the clipboard."
+msgstr "Lõikepuhvris URLe ei ole."
+
+#: src/LYMainLoop.c:7936 src/LYMainLoop.c:8105
+msgid "-index-"
+msgstr "-indeks-"
+
+#: src/LYMainLoop.c:8045
+msgid "lynx: Can't access startfile"
+msgstr "lynx: Ei õnnestu laadida esilehte"
+
+#: src/LYMainLoop.c:8057
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: Esilehte pole või ei ole text/html ega text/plain tüüpi"
+
+#: src/LYMainLoop.c:8058
+msgid "      Exiting..."
+msgstr "      Lõpetan..."
+
+#: src/LYMainLoop.c:8099
+msgid "-more-"
+msgstr "-veel-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Te postitate gruppi:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Palun teie aadress From: päisesse\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Palun lisage või muutke teema Subject: päises\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Palun lisage või muutke Organization: päises\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Palun sisestage oma teade."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Teatel puudub algne tekst!"
+
+#: src/LYOptions.c:770
+msgid "review/edit B)ookmarks files"
+msgstr "vaara/toimeta B=järgede faile"
+
+#: src/LYOptions.c:772
+msgid "B)ookmark file: "
+msgstr "B=järgede fail: "
+
+#: src/LYOptions.c:2120 src/LYOptions.c:2127
+msgid "ON"
+msgstr "SEES"
+
+#. verbose_img variable
+#: src/LYOptions.c:2121 src/LYOptions.c:2126 src/LYOptions.c:2289
+#: src/LYOptions.c:2300
+msgid "OFF"
+msgstr "VÄLJAS"
+
+#: src/LYOptions.c:2122
+msgid "NEVER"
+msgstr "MITTE KUNAGI"
+
+#: src/LYOptions.c:2123
+msgid "ALWAYS"
+msgstr "ALATI"
+
+#: src/LYOptions.c:2139 src/LYOptions.c:2281
+msgid "ignore"
+msgstr "ignoreeri"
+
+#: src/LYOptions.c:2140
+msgid "ask user"
+msgstr "küsi kasutajalt"
+
+#: src/LYOptions.c:2141
+msgid "accept all"
+msgstr "luba kõik"
+
+#: src/LYOptions.c:2153
+msgid "ALWAYS OFF"
+msgstr "ALATI VÄLJAS"
+
+#: src/LYOptions.c:2154
+msgid "FOR LOCAL FILES ONLY"
+msgstr "AINULT KOHALIKELE FAILIDELE"
+
+#: src/LYOptions.c:2156
+msgid "ALWAYS ON"
+msgstr "ALATI SEES"
+
+#: src/LYOptions.c:2168
+msgid "Numbers act as arrows"
+msgstr "numbrid käituvad nooltena"
+
+#: src/LYOptions.c:2170
+msgid "Links are numbered"
+msgstr "Viited on nummerdatud"
+
+#: src/LYOptions.c:2173
+msgid "Links and form fields are numbered"
+msgstr "Viited ja vormide väljad on nummerdatud"
+
+#: src/LYOptions.c:2176
+msgid "Form fields are numbered"
+msgstr "Vormide väljad on nummerdatud"
+
+#: src/LYOptions.c:2191
+msgid "Case insensitive"
+msgstr "Tõstutundetu"
+
+#: src/LYOptions.c:2192
+msgid "Case sensitive"
+msgstr "Tõstutundlik"
+
+#: src/LYOptions.c:2216
+msgid "prompt normally"
+msgstr "küsi tavapäraselt"
+
+#: src/LYOptions.c:2217
+msgid "force yes-response"
+msgstr "paku jah-vastus"
+
+#: src/LYOptions.c:2218
+msgid "force no-response"
+msgstr "paku ei-vastus"
+
+#: src/LYOptions.c:2236
+msgid "Novice"
+msgstr "Algaja"
+
+#: src/LYOptions.c:2237
+msgid "Intermediate"
+msgstr "Vahepealne"
+
+#: src/LYOptions.c:2238
+msgid "Advanced"
+msgstr "Edasijõudnud"
+
+#: src/LYOptions.c:2247
+msgid "By First Visit"
+msgstr "Esmase külastuse järgi"
+
+#: src/LYOptions.c:2249
+msgid "By First Visit Reversed"
+msgstr "Pööratud esmase külastuse järgi"
+
+#: src/LYOptions.c:2250
+msgid "As Visit Tree"
+msgstr "Külastuste puu"
+
+#: src/LYOptions.c:2251
+msgid "By Last Visit"
+msgstr "Viimase külastuse järgi"
+
+#: src/LYOptions.c:2253
+msgid "By Last Visit Reversed"
+msgstr "Pööratud viimase külastuse järgi"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2264
+msgid "relaxed (TagSoup mode)"
+msgstr "lõtv (TagSoup mood)"
+
+#: src/LYOptions.c:2265
+msgid "strict (SortaSGML mode)"
+msgstr "range (SortaSGML mood)"
+
+#: src/LYOptions.c:2272
+msgid "Ignore"
+msgstr "Ignoreeri"
+
+#: src/LYOptions.c:2273
+msgid "Add to trace-file"
+msgstr "Lisa trasseerimise faili"
+
+#: src/LYOptions.c:2274
+msgid "Add to LYNXMESSAGES"
+msgstr "Lisa LYNXMESSAGES"
+
+#: src/LYOptions.c:2275
+msgid "Warn, point to trace-file"
+msgstr "Hoiatus, osutab trasserimise failile"
+
+#: src/LYOptions.c:2282
+msgid "as labels"
+msgstr "kui märgendid"
+
+#: src/LYOptions.c:2283
+msgid "as links"
+msgstr "kui viited"
+
+#: src/LYOptions.c:2290
+msgid "show filename"
+msgstr "näita failinime"
+
+#: src/LYOptions.c:2301
+msgid "STANDARD"
+msgstr "STANDARD"
+
+#: src/LYOptions.c:2302
+msgid "ADVANCED"
+msgstr "LAIENDATUD"
+
+#: src/LYOptions.c:2336
+msgid "Directories first"
+msgstr "Esmalt kataloogid"
+
+#: src/LYOptions.c:2337
+msgid "Files first"
+msgstr "Esimalt failid"
+
+#: src/LYOptions.c:2338
+msgid "Mixed style"
+msgstr "Segastiil"
+
+#: src/LYOptions.c:2346 src/LYOptions.c:2366
+msgid "By Name"
+msgstr "Nime järgi"
+
+#: src/LYOptions.c:2347 src/LYOptions.c:2367
+msgid "By Type"
+msgstr "Tüübi järgi"
+
+#: src/LYOptions.c:2348 src/LYOptions.c:2368
+msgid "By Size"
+msgstr "Mahu järgi"
+
+#: src/LYOptions.c:2349 src/LYOptions.c:2369
+msgid "By Date"
+msgstr "Kuupäeva järgi"
+
+#: src/LYOptions.c:2350
+msgid "By Mode"
+msgstr "moodi järgi"
+
+#: src/LYOptions.c:2352
+msgid "By User"
+msgstr "Kasutaja järgi"
+
+#: src/LYOptions.c:2353
+msgid "By Group"
+msgstr "Grupi järgi"
+
+#: src/LYOptions.c:2378
+msgid "Do not show rate"
+msgstr "Ära näita kiirust"
+
+#: src/LYOptions.c:2379 src/LYOptions.c:2380
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "Näita %s/sek kiirust"
+
+#: src/LYOptions.c:2382 src/LYOptions.c:2383
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "Näita %s/sek, ETA"
+
+#: src/LYOptions.c:2386
+msgid "Show progressbar"
+msgstr "Näita progressiriba"
+
+#: src/LYOptions.c:2398
+msgid "Accept lynx's internal types"
+msgstr "Luba lynxi sisemised tüübid"
+
+#: src/LYOptions.c:2399
+msgid "Also accept lynx.cfg's types"
+msgstr "Luba ka lynx.cfg tüübid"
+
+#: src/LYOptions.c:2400
+msgid "Also accept user's types"
+msgstr "Luba ka kasutaja tüübid"
+
+#: src/LYOptions.c:2401
+msgid "Also accept system's types"
+msgstr "Luba ka süsteemsed tüübid"
+
+#: src/LYOptions.c:2402
+msgid "Accept all types"
+msgstr "Luba kõik tüübid"
+
+#: src/LYOptions.c:2411
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2412
+msgid "deflate"
+msgstr "kahanda"
+
+#: src/LYOptions.c:2415
+msgid "compress"
+msgstr "compress"
+
+#: src/LYOptions.c:2418
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2420
+msgid "All"
+msgstr "Kõik"
+
+#: src/LYOptions.c:2699 src/LYOptions.c:2728
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Seadete menüü saamiseks kasutage %s!"
+
+#: src/LYOptions.c:3541
+msgid "(options marked with (!) will not be saved)"
+msgstr "((!) märgitud seadeid ei salvestata)"
+
+#: src/LYOptions.c:3549
+msgid "General Preferences"
+msgstr "Üldised seaded"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3553
+msgid "User mode"
+msgstr "Kasutaja mood"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3559
+msgid "Editor"
+msgstr "Toimeti"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3564
+msgid "Type of Search"
+msgstr "Otsingutüüp"
+
+#: src/LYOptions.c:3569
+msgid "Security and Privacy"
+msgstr "Turvalisus ja privaatsus"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3573
+msgid "Cookies"
+msgstr "Präänikud"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3587
+msgid "Invalid-Cookie Prompting"
+msgstr "Vigase prääniku küsimine"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3594
+msgid "SSL Prompting"
+msgstr "SSL küsimine"
+
+#: src/LYOptions.c:3600
+msgid "Keyboard Input"
+msgstr "Sisend klaviatuurilt"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3604
+msgid "Keypad mode"
+msgstr "Klahvistiku mood"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3610
+msgid "Emacs keys"
+msgstr "Emacs klahvid"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3616
+msgid "VI keys"
+msgstr "VI klahvid"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3623
+msgid "Line edit style"
+msgstr "Reatoimeti mood"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3635
+msgid "Keyboard layout"
+msgstr "Klaviatuuri asetus"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3649
+msgid "Display and Character Set"
+msgstr "Ekraan ja kooditabel"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3654
+msgid "Use locale-based character set"
+msgstr "Kasuta lokaadi põhist kooditabelit"
+
+#: src/LYOptions.c:3661
+msgid "Use HTML5 charset replacements"
+msgstr "Kasuta HTML5 tähestiku asendusi"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3667
+msgid "Display character set"
+msgstr "Ekraani kooditabel"
+
+#: src/LYOptions.c:3698
+msgid "Assumed document character set"
+msgstr "Eeldatav dokumendi kooditabel"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3718
+msgid "CJK mode"
+msgstr "CJK mood"
+
+#: src/LYOptions.c:3720
+msgid "Raw 8-bit"
+msgstr "Puhas 8-bitti"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3728
+msgid "X Display"
+msgstr "X Ekraan"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3734
+msgid "Document Appearance"
+msgstr "Dokumendi esitamine"
+
+#: src/LYOptions.c:3740
+msgid "Show color"
+msgstr "Näita värve"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3764
+msgid "Show cursor"
+msgstr "Näita kursorit"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3770
+msgid "Underline links"
+msgstr "Jooni viited"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3777
+msgid "Show scrollbar"
+msgstr "Näita kerimisriba"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3784
+msgid "Popups for select fields"
+msgstr "Hüpikud valikuväljadele"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3790
+msgid "HTML error recovery"
+msgstr "HTML veatöötlus"
+
+#. Bad HTML messages: SELECT
+#: src/LYOptions.c:3796
+msgid "Bad HTML messages"
+msgstr "Halvad HTML teated"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3802
+msgid "Show images"
+msgstr "Näita pilte"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3816
+msgid "Verbose images"
+msgstr "Verbaalsed pildid"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3824
+msgid "Headers Transferred to Remote Servers"
+msgstr "Serverile saadetavad päised"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3828
+msgid "Personal mail address"
+msgstr "Isiklik e-posti aadress"
+
+#: src/LYOptions.c:3833
+msgid "Personal name for mail"
+msgstr "Teie nimi e-postituses"
+
+#: src/LYOptions.c:3840
+msgid "Password for anonymous ftp"
+msgstr "Anonüümse ftp parool"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3846
+msgid "Preferred media type"
+msgstr "Eelistatud meedia tüüp"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3852
+msgid "Preferred encoding"
+msgstr "Eelistatud kodeering"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3858
+msgid "Preferred document character set"
+msgstr "Eelistatuim dokumendi kooditabel"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3863
+msgid "Preferred document language"
+msgstr "Eelistatuim dokumendi keel"
+
+#: src/LYOptions.c:3869
+msgid "Send User-Agent header"
+msgstr "Saada User-Agent päis"
+
+#: src/LYOptions.c:3871
+msgid "User-Agent header"
+msgstr "User-Agent päis"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3879
+msgid "Listing and Accessing Files"
+msgstr "Failide näitamine ja kasutamine"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3884
+msgid "Use Passive FTP"
+msgstr "Kasuta Passive FTP"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3890
+msgid "FTP sort criteria"
+msgstr "FTP järjestamine"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3898
+msgid "Local directory sort criteria"
+msgstr "Lokaalse kataloogi järjestamine"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3904
+msgid "Local directory sort order"
+msgstr "Lokaalse kataloogi järjestamine"
+
+#: src/LYOptions.c:3913
+msgid "Show dot files"
+msgstr "Näita punktiga faile"
+
+#: src/LYOptions.c:3921
+msgid "Execution links"
+msgstr "Täidetavad viited"
+
+#: src/LYOptions.c:3939
+msgid "Pause when showing message"
+msgstr "Peatu teate näitamisel"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3946
+msgid "Show transfer rate"
+msgstr "Näita laadimise kiirust"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3966
+msgid "Special Files and Screens"
+msgstr "Spetsiaalfailid ja ekraanid"
+
+#: src/LYOptions.c:3971
+msgid "Multi-bookmarks"
+msgstr "Järgede failid"
+
+#: src/LYOptions.c:3979
+msgid "Review/edit Bookmarks files"
+msgstr "vaata/toimeta järgede faile"
+
+#: src/LYOptions.c:3982
+msgid "Goto multi-bookmark menu"
+msgstr "Mine mitme-järje menüüsse"
+
+#: src/LYOptions.c:3984
+msgid "Bookmarks file"
+msgstr "Järgede fail"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3991
+msgid "Auto Session"
+msgstr "Auto Sessioon"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3997
+msgid "Session file"
+msgstr "Sessiooni fail"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:4003
+msgid "Visited Pages"
+msgstr "Külastatud lehed"
+
+#: src/LYOptions.c:4008
+msgid "View the file "
+msgstr "Vaata faili"
+
+#: src/LYPrint.c:947
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Trükitöö lõpetas.\n"
+
+#: src/LYPrint.c:1274
+msgid "Document:"
+msgstr "Dokument:"
+
+#: src/LYPrint.c:1275
+msgid "Number of lines:"
+msgstr "Ridu:"
+
+#: src/LYPrint.c:1276
+msgid "Number of pages:"
+msgstr "Lehekülgi:"
+
+#: src/LYPrint.c:1277
+msgid "pages"
+msgstr "lehekülge"
+
+#: src/LYPrint.c:1277
+msgid "page"
+msgstr "lehekülg"
+
+#: src/LYPrint.c:1278
+msgid "(approximately)"
+msgstr "(umbkaudu)"
+
+#: src/LYPrint.c:1285
+msgid "Some print functions have been disabled!"
+msgstr "Osad trükkimise funktsioonid on blokeeritud!"
+
+#: src/LYPrint.c:1289
+msgid "Standard print options:"
+msgstr "Standardsed trükkimise võimalused:"
+
+#: src/LYPrint.c:1290
+msgid "Print options:"
+msgstr "Trükkimise võimalused:"
+
+#: src/LYPrint.c:1297
+msgid "Save to a local file"
+msgstr "Salvesta lokaalsesse faili"
+
+#: src/LYPrint.c:1299
+msgid "Save to disk disabled"
+msgstr "Kettale salvestamine on blokeeritud"
+
+#: src/LYPrint.c:1306
+msgid "Mail the file"
+msgstr "Postita fail"
+
+#: src/LYPrint.c:1313
+msgid "Print to the screen"
+msgstr "Väljasta ekraanile"
+
+#: src/LYPrint.c:1318
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Trüki vt100 terminaliga ühendatud printerile"
+
+#: src/LYReadCFG.c:441
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Süntaksi viga seadete failis COLOR parsimisel:\n"
+"Rida peab olema kujul:\n"
+"COLOR:TÄISARV:ESIPLAAN:TAUST\n"
+"\n"
+"ESIPLAAN ja TAUST peab olema üks järgnevaist:\n"
+"Sõne 'nocolor' või 'default', või\n"
+
+#: src/LYReadCFG.c:454
+msgid "Offending line:"
+msgstr "Vigane rida:"
+
+#: src/LYReadCFG.c:757
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "klahvi %s -> %s ümbermääramine %s jaoks ebaõnnestus\n"
+
+#: src/LYReadCFG.c:764
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "klahvi %s -> %s ümbermääramine ebaõnnestus\n"
+
+#: src/LYReadCFG.c:785
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "vigane rea-toimeti valik %s klahvile %s, valik kõik\n"
+
+#: src/LYReadCFG.c:810 src/LYReadCFG.c:822
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "rea-toimeti klahviseose seadmine %s (0x%x) -> 0x%x %s jaoks ebaõnnestus\n"
+
+#: src/LYReadCFG.c:826
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "rea-toimeti klahviseose seadmine klahv %s (0x%x) %s jaoks ebaõnnestus\n"
+
+#: src/LYReadCFG.c:922
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: ei saa startida, CERN reeglite fail %s ei ole kasutatav\n"
+
+#: src/LYReadCFG.c:923
+msgid "(no name)"
+msgstr "(nimetu)"
+
+#: src/LYReadCFG.c:2044
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Rohkem kui %d lynx.cfg kaasamist -- vahest on tekkinud tsükkel?!?\n"
+
+#: src/LYReadCFG.c:2046
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Viimane kaasata üritatud fail oli '%s',\n"
+
+#: src/LYReadCFG.c:2047
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "kaasatud failist '%s'.\n"
+
+#: src/LYReadCFG.c:2450 src/LYReadCFG.c:2463 src/LYReadCFG.c:2521
+msgid "The following is read from your lynx.cfg file."
+msgstr "Järgnev on loetud teie lynx.cfg failist."
+
+#: src/LYReadCFG.c:2451 src/LYReadCFG.c:2464
+msgid "Please read the distribution"
+msgstr "Lisainfo jaoks lugege palun"
+
+#: src/LYReadCFG.c:2457 src/LYReadCFG.c:2467
+msgid "for more comments."
+msgstr "paketis olevat faili."
+
+#: src/LYReadCFG.c:2503
+msgid "RELOAD THE CHANGES"
+msgstr "MUUTUSTE LAADIMINE"
+
+#: src/LYReadCFG.c:2511
+msgid "Your primary configuration"
+msgstr "Teie primaarsed seaded"
+
+#: src/LYShowInfo.c:177
+msgid "Directory that you are currently viewing"
+msgstr "Praegu vaadatav kataloog"
+
+#: src/LYShowInfo.c:180
+msgid "Name:"
+msgstr "Nimi:"
+
+#: src/LYShowInfo.c:183
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:197
+msgid "Directory that you have currently selected"
+msgstr "Praegu valitud kataloog"
+
+#: src/LYShowInfo.c:199
+msgid "File that you have currently selected"
+msgstr "Praegu valitud fail"
+
+#: src/LYShowInfo.c:202
+msgid "Symbolic link that you have currently selected"
+msgstr "Praegu valitud nimeviide"
+
+#: src/LYShowInfo.c:205
+msgid "Item that you have currently selected"
+msgstr "Praegu valitud element"
+
+#: src/LYShowInfo.c:207
+msgid "Full name:"
+msgstr "Täisnimi"
+
+#: src/LYShowInfo.c:217
+msgid "Unable to follow link"
+msgstr "Viidet ei õnnestu järgida"
+
+#: src/LYShowInfo.c:219
+msgid "Points to file:"
+msgstr "Osutab failile: "
+
+#: src/LYShowInfo.c:224
+msgid "Name of owner:"
+msgstr "Omaniku nimi"
+
+#: src/LYShowInfo.c:227
+msgid "Group name:"
+msgstr "Grupi nimi"
+
+#: src/LYShowInfo.c:229
+msgid "File size:"
+msgstr "Faili suurus"
+
+#: src/LYShowInfo.c:231
+msgid "(bytes)"
+msgstr "(baiti)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:236
+msgid "Creation date:"
+msgstr "Loodud:"
+
+#: src/LYShowInfo.c:239
+msgid "Last modified:"
+msgstr "Viimati muudetud:"
+
+#: src/LYShowInfo.c:242
+msgid "Last accessed:"
+msgstr "Viimane kasutamine:"
+
+#: src/LYShowInfo.c:248
+msgid "Access Permissions"
+msgstr "Kasutamise õigused"
+
+#: src/LYShowInfo.c:283
+msgid "Group:"
+msgstr "Grupp:"
+
+#: src/LYShowInfo.c:303
+msgid "World:"
+msgstr "Ülejäänud:"
+
+#: src/LYShowInfo.c:310
+msgid "File that you are currently viewing"
+msgstr "Fail mida te parajasti vaatate"
+
+#: src/LYShowInfo.c:318 src/LYShowInfo.c:422
+msgid "Linkname:"
+msgstr "Viite nimi:"
+
+#: src/LYShowInfo.c:324 src/LYShowInfo.c:339
+msgid "Charset:"
+msgstr "Kooditabel:"
+
+#: src/LYShowInfo.c:338
+msgid "(assumed)"
+msgstr "(eeldatatkse)"
+
+#: src/LYShowInfo.c:345
+msgid "Server:"
+msgstr "Server:"
+
+#: src/LYShowInfo.c:348
+msgid "Date:"
+msgstr "Kuupäev:"
+
+#: src/LYShowInfo.c:351
+msgid "Last Mod:"
+msgstr "Viimane muutmine:"
+
+#: src/LYShowInfo.c:356
+msgid "Expires:"
+msgstr "Aegub:"
+
+#: src/LYShowInfo.c:359
+msgid "Cache-Control:"
+msgstr "Vahemälu-kontroll:"
+
+#: src/LYShowInfo.c:362
+msgid "Content-Length:"
+msgstr "Sisu-pikkus:"
+
+#: src/LYShowInfo.c:366
+msgid "Length:"
+msgstr "Pikkus:"
+
+#: src/LYShowInfo.c:371
+msgid "Language:"
+msgstr "Keel:"
+
+#: src/LYShowInfo.c:378
+msgid "Post Data:"
+msgstr "Post andmed:"
+
+#: src/LYShowInfo.c:381
+msgid "Post Content Type:"
+msgstr "Post sisu tüüp:"
+
+#: src/LYShowInfo.c:384
+msgid "Owner(s):"
+msgstr "Omanik(ud):"
+
+#: src/LYShowInfo.c:389
+msgid "size:"
+msgstr "maht:"
+
+#: src/LYShowInfo.c:391
+msgid "lines"
+msgstr "ridu"
+
+#: src/LYShowInfo.c:395
+msgid "forms mode"
+msgstr "vormide mood"
+
+#: src/LYShowInfo.c:397
+msgid "source"
+msgstr "lähtetekst"
+
+#: src/LYShowInfo.c:398
+msgid "normal"
+msgstr "normaalne"
+
+#: src/LYShowInfo.c:400
+msgid ", safe"
+msgstr ", turvaline"
+
+#: src/LYShowInfo.c:402
+msgid ", via internal link"
+msgstr ", sisemise viitega"
+
+#: src/LYShowInfo.c:407
+msgid ", no-cache"
+msgstr ", mitte-puhverdatav"
+
+#: src/LYShowInfo.c:409
+msgid ", ISMAP script"
+msgstr ", ISMAP skript"
+
+#: src/LYShowInfo.c:411
+msgid ", bookmark file"
+msgstr ", järgede fail"
+
+#: src/LYShowInfo.c:415
+msgid "mode:"
+msgstr "mood:"
+
+#: src/LYShowInfo.c:421
+msgid "Link that you currently have selected"
+msgstr "Praegu valitud viide"
+
+#: src/LYShowInfo.c:430
+msgid "Method:"
+msgstr "Meetod:"
+
+#: src/LYShowInfo.c:434
+msgid "Enctype:"
+msgstr "Kodeering:"
+
+#: src/LYShowInfo.c:440
+msgid "Action:"
+msgstr "Tegevus: "
+
+#: src/LYShowInfo.c:446
+msgid "(Form field)"
+msgstr "(Vormi väli)"
+
+#: src/LYShowInfo.c:457
+msgid "No Links on the current page"
+msgstr "Jooksval lehel ei ole viiteid"
+
+#: src/LYShowInfo.c:463
+msgid "Server Headers:"
+msgstr "Serveri päised:"
+
+#: src/LYStyle.c:331
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Süntaksi viga lss failis stiili parsimisel:\n"
+"[%s]\n"
+"Rida peab olema kujul:\n"
+"OBJEKT:MONO:COLOR (n. em:bold:brightblue:white)\n"
+"kus OBJEKT on üks järgnevaist EM,STRONG,B,I,U,BLINK jne.\n"
+"\n"
+
+#: src/LYTraversal.c:111
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "siin on väljavõte ajaloo magasinist, saate vajadusel taastada"
+
+#: src/LYUpload.c:77
+msgid "ERROR! - upload command is misconfigured"
+msgstr "VIGA! - üleslaadimise käsklus on vigaselt seadistatud"
+
+#: src/LYUpload.c:98
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Leidsin vigase ümbersuunamise \"../\"! Ignoreerin päringut."
+
+#: src/LYUpload.c:101
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Leidsin lubamatu sümboli \"/\"! Ignoreerin päringut."
+
+#: src/LYUpload.c:104
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Leidsin lubamatu ümbersuunamine, mis kasutab \"~\"! Ignoreerin päringut."
+
+#: src/LYUpload.c:157
+msgid "Unable to upload file."
+msgstr "Faili ei õnnestu üles laadida."
+
+#: src/LYUpload.c:199
+msgid "Upload To:"
+msgstr "Lae üles:"
+
+#: src/LYUpload.c:200
+msgid "Upload options:"
+msgstr "Üleslaadimise seaded:"
+
+#: src/LYUtils.c:1883
+msgid "Download document URL put to clipboard."
+msgstr "Panin dokumendi allalaadimise URLi lõikepuhvrisse."
+
+#: src/LYUtils.c:2668
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Selle URL skeemiga kasutatakse ootamatut kasutamise protokolli."
+
+#: src/LYUtils.c:3492
+msgid "Too many tempfiles"
+msgstr "Liiga palju ajutisi faile"
+
+#: src/LYUtils.c:3792
+msgid "unknown restriction"
+msgstr "tundmatu piirang"
+
+#: src/LYUtils.c:3823
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Piiranguid pole.\n"
+
+#: src/LYUtils.c:3826
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Seatud piirangud:\n"
+
+#: src/LYUtils.c:5212
+msgid "Cannot find HOME directory"
+msgstr "Ei leie HOME kataloogi"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Tavaliselt blokeeritud. Vaadake lynx.cfg failis ENABLE_LYNXRC kohta\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies võimaldab kasutajal paluda Lynxil automaatselt\n"
+"võtta vastu kõik pakutavad präänikud. Vaikeseade on \"FALSE\", mis\n"
+"tähendab, et iga prääniku korral küsitakse kasutaja nõusolekut.\n"
+"Kõikide präänikute vastu võtmiseks kasutage väärtust \"TRUE\".\n"
+
+#: src/LYrcFile.c:333
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"anonftp_password võimaldab kasutajal määrata anonüümse ftp parooliks\n"
+"isiklik e-posti aadress. Kui väärtust ei anta, kasutab Lynx isiklikku\n"
+"e-posti aadressi. Vajadusel saab kasutada ka mingit muud e-posti aadressi.\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file määrab vaikimisi järgede faili nime ja asukoha, kuhu\n"
+"kasutaja saab salvestada viiteid hilisemaks kasutamiseks.\n"
+
+#: src/LYrcFile.c:347
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Kui case_sensitive_searching väärtus on \"on\", siis teostatakse klahvidega\n"
+"'s' või '/' antud otsing tõstutundlikult. Väärtuse \"off\" korral on otsing\n"
+"tõstutundetu. Vaikimisi on tavaliselt \"off\".\n"
+
+#: src/LYrcFile.c:352
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"character_set definitsioon kontrollib teie ekraanil 8 bitiste sümbolite\n"
+"esitust. Kui 8 bitised sümbolid ei ole teie ekraanil esitatud korrektselt,\n"
+"võite proovida kasutada muud 8 bitist kooditabelit või kasutada 7 bitiseid\n"
+"lähendusi.\n"
+"Lubatud kooditabelid on:\n"
+
+#: src/LYrcFile.c:359
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains ja cookie_reject_domains on komadega eraldatud\n"
+"loend doomenitest, mille pakutavad präänikud peaks Lynx automaatselt\n"
+"vastu võtma või tagasi lükkama. Kui doomen on esindatud mõlemas seades,\n"
+"eelistatakse tagasi lükkamist. accept_all_cookies parameeter käib\n"
+"siinsetest määrangutest üle.\n"
+
+#: src/LYrcFile.c:367
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file määrab faili, millest loetakse püsivad präänikud.\n"
+"Vaikeväärtus on ~/"
+
+#: src/LYrcFile.c:372
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains ja\n"
+"cookie_query_invalid_domains on komadega eraldatud loendid doomenitest,\n"
+"millele rakendatakse erinevaid kehtivuse piiranguid. \"strict\" kontrolli\n"
+"korral nõutakse ranget RFC2109 vastavust. \"loose\" kontrolli korral\n"
+"lubatakse seada vigase tee või doomeni atribuudiga präänikuid. Kõikide\n"
+"doomenite korral küsitakse vigase tee või doomeni korral luba kasutajalt.\n"
+
+#: src/LYrcFile.c:386
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order määrab kataloogi esituse järjestuse DIRED_SUPPORT sees\n"
+"(kui on realiseeritud).  Vaikimisi on \"ORDER_BY_NAME\"\n"
+
+#: src/LYrcFile.c:391
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles määraba karaloogi listingu stiili DIRED_SUPPORT\n"
+"keskkonnas (kui see on realiseeritud). Vaikeväärtus on \"MIXED_STYLE\",\n"
+"mis järjestab läbisegi nii failid, kui kataloogid. \"FILES_FIRST\"\n"
+"järjestab esimesteks failid ja \"DIRECTORIES_FIRST\" järjestab esimesteks\n"
+"kataloogid.\n"
+
+#: src/LYrcFile.c:399
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Kui emacs_keys väärtus on \"on\", siis on lubatud tavalised EMACS stiilis\n"
+"liikumise klahvid:\n"
+"  ^N = alla     ^P = üles\n"
+"  ^B = vasakule ^F = paremale\n"
+
+#: src/LYrcFile.c:405
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor määrab toimeti, mida käivitatakse lokaalsete failide\n"
+"toimetamiseks või kirja saatmiseks. Kui toimetit ei ole määratud, siis\n"
+"failide toimetamine on blokeeritud, välja arvatud juhul, kui toimeti\n"
+"on määratud käsureal, ja kirjade saatmisel kasutatakse sisemist toimetit. \n"
+
+#: src/LYrcFile.c:412
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method määrab millise väärtuse järgi järjestada failide\n"
+"loendeid, nagu näiteks FTP katalooge. Valikud on:\n"
+"   BY_FILENAME -- järjestab failide nimede järgi\n"
+"   BY_TYPE     -- järjestab failide tüüpide järgi\n"
+"   BY_SIZE     -- järjestab failide suuruste järgi\n"
+"   BY_DATE     -- järjestab failide aegade järgi\n"
+
+#: src/LYrcFile.c:435
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode määrab sisendteksti klahviseosed küsimustes ja\n"
+"vormides. Kui lineedit_mode väärtuseks on seatud \"Default Binding\",\n"
+"kasutatakse liikumiseks ja kustutamiseks järgnevaid seoseid:\n"
+"\n"
+"                Eelm  Järgm      Enter = Nõustu sisendiga\n"
+"  Sümbol haaval: <-    ->        ^G    = katkesta sisend\n"
+"    Sõna haaval: ^P    ^N        ^U    = Kustuta rida\n"
+" Kustuta sümbol: ^H    ^R        ^A    = Rea algus\n"
+"   Kustuta sõna: ^B    ^F        ^E    = Rea lõpp\n"
+"\n"
+"Current lineedit modes are:\n"
+
+#: src/LYrcFile.c:453
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Järgnev võimaldab teil defineerida alam-järgede faile ja kirjeldusi.\n"
+"Vorming on multi_bookmark<suurtäht>=<failinimi>,<kirjeldus>\n"
+"Lubatud on kuni 26 järgede faili (Inglise tähestiku suurtähtede arv).\n"
+"Alustatakse seadega \"multi_bookmarkB\", kuna 'A' on vaikeväärtus\n"
+"(vaadake ülaltpoolt).\n"
+
+#: src/LYrcFile.c:459
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address seab teie isikliku e-posti aadressi. Aadressi\n"
+"kasutatakse HTTP failide ülekandmise autoriseerimiseks ja logimiseks\n"
+"ning kommentaaride saatmisel.\n"
+"Kui te ei soovi seda infot jagada, seadke lynx.cfg failis NO_FROM_HEADER\n"
+"väärtuseks TRUE või kasutage -nofrom käsurea võtit. Selle välja võib\n"
+"jätta ka tühjaks, kuid siis ei kasutata seda ka kommentaaride saatmisel.\n"
+
+#: src/LYrcFile.c:468
+msgid ""
+"personal_mail_name specifies your personal name, for mail.  The\n"
+"name is sent for mailed comments.  Lynx will prompt for this,\n"
+"showing the configured value as a default when sending mail.\n"
+"This is not necessarily the same as a name provided as part of the\n"
+"personal_mail_address.\n"
+"Lynx does not save your changes to that default value as a side-effect\n"
+"of sending email.  To update the default value, you must use the options\n"
+"menu, or modify this file directly.\n"
+msgstr ""
+"personal_mail_name määrab eposti jaoks teie nime. Nimi saadetakse kui teie\n"
+"kommentaare saadetakse e-postiga. Lynx küsib seda postitamisel, näidates\n"
+"seadistatud nime vaikeväärtusena. Ei pea olema sama, kui personal_mail_address\n"
+"seadistuses.\n"
+"E-kirja saatmisel antud nime ei salvestata, nime muutmiseks tuleb seda teha kas\n"
+"seadistuste menüüs või siin failis.\n"
+
+#: src/LYrcFile.c:478
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset määrab MIME notatsioonis (n. ISO-8859-15, ISO-8859-5)\n"
+"kooditabeli, mida Lynx esitab Accept-Charset päises http serveritele\n"
+"teie poolt eelistatuima kooditabelina. Väärtusena ei peaks kasutama\n"
+"ISO-8859-1 ega US-ASCII, kuna neid kasutatakse alati vaikimisi. Väärtus\n"
+"võib olla komadega eraldatud loend. Kui soovitud kooditabelit kasutav\n"
+"fail on olemas, saadab server selle. Kui Accept-Charset päist ei kasutata,\n"
+"aktsepteeritakse suvalise kooditabeliga. Kui Accept-Charset päis on olemas,\n"
+"aga soovitud kooditabelit kasutavad faili pole, peaks server vastama\n"
+"veateatega, lubatud on aga ka vastata mittesoovitud kooditabelit kasutava\n"
+"failiga.\n"
+
+#: src/LYrcFile.c:494
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language määrab keele MIME esituses (n., et, en võib\n"
+"olla ka komadega eraldatud kahaneva eelistusega loend),\n"
+"mida Lynx näitab teie eelistusena http serveritele.\n"
+"Kui fail antud keeles on olemas, server saadab selle. Kui pole,\n"
+"saadab faili oma vaikimisi keeles.\n"
+
+#: src/LYrcFile.c:505
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Kui run_all_execution_links väärtus on \"on\", täidetakse kõik valitud\n"
+"lokaalsed täidetavad viited.\n"
+"\n"
+"HOIATUS - See seade on VÄGA ohtlik. Kuna info võib olla loodud tundmatu\n"
+"          ja kontrollimatu allika poolt, võib olla võimalik luua viiteid\n"
+"          Trooja hobustele. Trooja hobune võib hävitada teie andmeid või\n"
+"          ohustada teie süsteemi muul moel. Väärtust \"on\" võib kasutada\n"
+"          ainult juhul, kui vaatate usaldatavatest allikatest pärit infot.\n"
+
+#: src/LYrcFile.c:516
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Kui run_execution_links_on_local_files väärtus on \"on\", täidetakse kõik\n"
+"valitud lokaalsed täidetavad viited LOKAALSETEL failidel. Erinevus\n"
+"run_all_execution_links seadega on selles, et ainult lokaalse süsteemi\n"
+"failidel võib olla täidetavate viidete õigused.\n"
+"\n"
+"HOIATUS - See seade võib olla ohtlik. Kuna info võib olla loodud tundmatu\n"
+"          ja kontrollimatu allika poolt, võib olla võimalik luua viiteid\n"
+"          Trooja hobustele. Trooja hobune võib hävitada teie andmeid või\n"
+"          ohustada teie süsteemi muul moel. Väärtust \"on\" võib kasutada\n"
+"          ainult juhul, kui vaatate usaldatavatest allikatest pärit infot.\n"
+
+#: src/LYrcFile.c:534
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups määrab kas valikud valiku kastis millel puudub atribuut\n"
+"MULTIPLE esitatakse vertikaalse raadionuppude loendina või hüpikmenüüna.\n"
+"Kui atribuut MULTIPLE on SELECT alguslipikus olemas, loob Lynx valikute\n"
+"jaoks alati vertikaalse märkeruutude loendi. Väärtus \"on\" seab\n"
+"vaikeväärtuse hüpikmenüü ja väärtus \"off\" määrab raadionuppude loendi\n"
+"kasutamise. Vaikeväärtust saab üle määrata käsurea lülitiga -popup.\n"
+
+#: src/LYrcFile.c:545
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color määrab värvide kasutamise programmi käivitamisel. Väärtus\n"
+"\"never\" lülitab värvide kasutamise välja (terminali käsitletakse\n"
+"ühevärvilisena) isegi kui terminal peaks suutma värve kasutada.\n"
+"Väärtus \"always\" lükutab värvide kasutamise sisse isegi kui terminal\n"
+"ei toeta värvide kasutamist, aga seda juhul, kui sellist värvide\n"
+"kasutamist toetab Lynx kompileerimisel kasutatud teek. Väärtus \"default\"\n"
+"lülitab käitumise, kus eeldatakse ühevärvilist terminali, välja arvatud\n"
+"juhul, kui värvide kasutamist on võimalik tuvastada terminali tüübist,\n"
+"kasutatakse käsurea võtit -color või on kasutatud keskkonna muutujat\n"
+"COLORTERM. Vaikimisi käitumist kasutatakse alati anonüümsete kasutajate\n"
+"korral või kui on seatud piirang \"option_save\". Salvestatud väärtust\n"
+"saab muuta käsurea võtmetega -color ja -nocolor.\n"
+"Käivitamisel seatud moodi saab muuta o=seadete menüü \"Näita värve\"\n"
+"seadega. Kui seaded salvestatakse, käsitletakse \"Näita värve\" omaduse\n"
+"väärtusi \"on\" ja \"off\" kui väärtust \"default\".\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor määrab kas 'peita' kursor ekraani paremasse (ja kui võimalik,\n"
+"alumisse) serva või asetada ta dokumendi jooksvast viitest või hüpikakna\n"
+"valikust vasakule. Kusrori positsioneerimine viitest vasemale aitab kõne\n"
+"või punktkirja liideseid ning juhul, kui terminal ei erista jooksvat\n"
+"viidet heleduse ega värviga. Väärtus \"on\" asetab kursori viidetest\n"
+"vasakule ja on vaikeväärtus ning \"off\" määrab kursori 'peitmise'.\n"
+"vaikeväärtust saab ümber määrata käsurea lülitiga -show_cursor.\n"
+
+#: src/LYrcFile.c:573
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles määrab et kataloogi listingus peavad olema ka\n"
+"\"peidetud\" (punktiga algavad) failid ja kataloogid. Kui väärtus\n"
+"on \"on\", kasutatakse seda ainult, kui on nii seatud failis\n"
+"userdefs.h ja/või lynx.cfg, ning seda ei piirata käsurea võtmega.\n"
+"Kui punktiga algavate failide näitamine on keelatud, ei lubata neid\n"
+"ka Lynx vahenditega luua.\n"
+
+#: src/LYrcFile.c:584
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Kui sub_bookmarks väärtus ei ole \"off\" ja on defineeritud mitu järgede\n"
+"faili (vaadake allpool), siis paluvad kõik järgede operatsioonid määrata\n"
+"kasutajal kõigepealt kasutatab alam-järgede fail. Kui vaikimisi järgede\n"
+"fail on määratud (vaadake ülalpoolt), kasutatakse seda vaikimisi valikuna.\n"
+"Kui selle seade väärtus on \"advanced\" ja kasutaja mood on samuti \"advanced\",\n"
+"kasutab 'v'aata järgi käsklus menüü asemel olekurea viipa. Kui selle\n"
+"seade väärtus on \"standard\", näidatakse alati menüüd.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode näitab kui tuttav on kasutaja Lynx programmiga. Vaikeseade\n"
+"on \"NOVICE\", mille korral näidatakse kaht lisarida abiinfoga ekraani\n"
+"alaosas, et aidata kasutajal õppida Lynx põhikäske. Seades user_mode\n"
+"väärtuseks \"INTERMEDIATE\", lülitate selle lisainfo välja. Määrang\n"
+"\"ADVANCED\" korral näidatakse ekraani alaosas parajasti vaadeldava\n"
+"viite URLi.\n"
+
+#: src/LYrcFile.c:607
+msgid ""
+"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"
+msgstr ""
+"Kui verbose_images väärtus on \"on\", trükib lynx pildi nime tekstide\n"
+"[INLINE], [LINK] või [IMAGE] asemel.\n"
+"Vaadake ka lynx.cfg failis VERBOSE_IMAGES seadet.\n"
+
+#: src/LYrcFile.c:612
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Kui vi_keys väärtus on \"on\", on lubatud tavalised VI liikumiskäsud:\n"
+"  j = alla       k = üles\n"
+"  h = vasakule   l = paremale\n"
+"Need käsud on ainult väiketähed.\n"
+"Suured 'H', 'J' ja 'K' aktiveerivad ikka vastavalt abiinfo, hüpped\n"
+"ja klahvitabeli ekraani.\n"
+
+#: src/LYrcFile.c:620
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"visited_links seade kontrollib, kuidas Lynx organiseerib infot külastatud\n"
+"viidete lehel.\n"
+
+#: src/LYrcFile.c:845
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Kui keypad_mode väärtus on \"NUMBERS_AS_ARROWS\", toimivad numbrid \n"
+"teie klahvistikul nooltena ka siis, kui numlock on sisse lülitatud:\n"
+"              8 = Nool üles\n"
+"  4 = Nool vasakule   6 = Nool paremale\n"
+"              2 = Nool alla\n"
+"ning ka vastavad klaviatuuri numbrid toimivad nooltena sõltumata\n"
+"numlock seadest.\n"
+
+#: src/LYrcFile.c:854
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Kui keypad_mode väärtus on \"LINKS_ARE_NUMBERED\", ilmuvad iga viite\n"
+"kõrvale numbrid ja viidete valimiseks kasutatakse numbreid.\n"
+
+#: src/LYrcFile.c:858
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Kui keypad_mode väärtus on \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\",\n"
+"ilmuvad numbrid iga nähtava viite ja nähtava vormi sisendvälja kõrvale.\n"
+"Numbreid kasutatakse viidete valimiseks või \"jooksva viite\" viimiseks\n"
+"vormi sisendväljale või nupule. Lisaks indekseeritakse valikud\n"
+"hüpikmenüüdes nii, et kasutaja saab valiku valida sisestades vastava\n"
+"hüpikmenüü valiku numbri, isegi kui valik ei ole hetkel ekraanil nähtav.\n"
+"Viidete nimekirjad ja loendikäskude väljundid nummerdavad samuti\n"
+"vormide sisendeid.\n"
+
+#: src/LYrcFile.c:867
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"MÄRKUS: Mõnede fikseeritud vormingus dokumentide esitus võib olla\n"
+"\"LINKS_ARE_NUMBERED\" või \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\"\n"
+"kasutamisel segane.\n"
+
+#: src/LYrcFile.c:899
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"Lynx Kasutaja Seadete Fail\n"
+"\n"
+
+#: src/LYrcFile.c:908
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"See fail sisaldab seadeid Lynx seadete ekraanilt (tavaliselt klahviga 'o').\n"
+"Selle ekraaniga määratud seadete salvestamiseks valige:\n"
+
+#: src/LYrcFile.c:915
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr "Seejärel peate salvestama seaded kasutades viidet valikukasti kohal:\n"
+
+#: src/LYrcFile.c:922
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"Te võite samuti kasutada käsurea võtit \"-forms_options\", mis näitab lihtsamat\n"
+"seadete menüüd. Seadete salvestamiseks seal kasutage klahvi '>'.\n"
+"\n"
+
+#: src/LYrcFile.c:929
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"See fail sisaldab parameetreid Lynx seadete ekraanilt (tavaliselt\n"
+"salvestatud klahviga '>').\n"
+"\n"
+
+#: src/LYrcFile.c:936
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"See fail sisaldab seadeid, mis on salvestatud Lynx omaduste ekraanil.\n"
+"Tavaliselt ei ole vajadust seda faili käsitsi muuta, kuna siinseid\n"
+"väärtusi saab muuta omaduste ekraanilt ning peale järgmist\n"
+"salvestamist kirjutatakse see fail täielikult üle.\n"
+"Teid on hoiatatud...\n"
+"\n"
+"Kui te otsite üldist seadete faili - selle nimi on tavaliselt \"lynx.cfg\"\n"
+"ja tal on erinev sisu ning vorming. See ei ole see fail.\n"
diff --git a/po/fi.po b/po/fi.po
new file mode 100644
index 00000000..8cb579e0
--- /dev/null
+++ b/po/fi.po
@@ -0,0 +1,5763 @@
+# Finnish messages for Lynx
+# This file is distributed under the same license as the lynx package.
+# Copyright © 2008 The package's copyright holder
+# Lauri Nurmi <lanurmi@iki.fi>, 1999, 2003, 2008.
+#
+# Permission is granted to freely copy and distribute
+# this file and modified versions, provided, that this
+# header is not removed and modified versions are marked
+# as such.
+#
+# Tätä tiedostoa ja muutettuja versioita saa kopioida
+# ja levittää vapaasti edellyttäen, että tätä otsikkoa
+# ei poisteta, ja muutetut versiot merkitään muutetuiksi.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.7-dev9\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-27 19:12-0400\n"
+"PO-Revision-Date: 2008-11-01 20:17+0200\n"
+"Last-Translator: Lauri Nurmi <lanurmi@iki.fi>\n"
+"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Varoitus!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Tervetuloa"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Haluatko varmasti lopettaa?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Haluatko varmasti poistua Lynxistä?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Yhteys keskeytetty."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Tiedonsiirto keskeytetty."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Peruutettu!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Peruutetaan!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Erinomaista!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Valmis!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Virheellinen pyyntö!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "edellinen"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "seuraava ruutu"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "APUA!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", ohje aiheesta "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Komennot: Käytä nuolia liikkumiseen, '?' opastaa, 'q' lopettaa, '<-' palaa."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- välilyönnillä lisää, käytä nuolia liikkumiseen, '?' opastaa, 'q' lopettaa."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- välilyönnillä seuraava sivu --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "Liian pitkä URL"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, fuzzy, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Tekstialue) Syötä tekstiä. Ylä/alanuolella tai sarkaimella pois. (^Ve editori)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+#, fuzzy
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Lomakekenttä) Syötä tekstiä. Enter lähettää ('x' ei cacheta)."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, fuzzy, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Lomakekenttä) Syötä tekstiä. Enter lähettää ('x' ei cacheta)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+#, fuzzy
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Lomakekenttä) Syötä tekstiä. Enter lähettää, nuolilla tai sarkaimella pois."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr ""
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+#, fuzzy
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Salasanakenttä) Syötä tekstiä. Ylä/alanuolilla tai sarkaimella pois."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "EI-MUUTETTAVA kenttä. Ylä/alanuolella tai sarkaimella pois."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Tiedostokenttä) Syötä tiedostonimi. Ylä/alanuolella tai sarkaimella pois."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Tekstikenttä) Syötä tekstiä. Ylä/alanuolella tai sarkaimella pois."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Tekstialue) Syötä tekstiä. Ylä/alanuolella tai sarkaimella pois."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, fuzzy, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Tekstialue) Syötä tekstiä. Ylä/alanuolella tai sarkaimella pois. (%s editori)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "EI-MUUTETTAVA tekstikenttä. Ylä/alanuolella tai sarkaimella pois."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Lomakekenttä) Syötä tekstiä. <Enter> lähettää."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Lomakekenttä) Syötä tekstiä. <Enter> lähettää (%s ilman välimuistia)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Lomakekenttä) Syötä tekstiä. Enter lähettää, nuolilla tai sarkaimella pois."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "EI-MUUTETTAVA kenttä. Ylä/alanuolella tai sarkaimella pois."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr ""
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Salasanakenttä) Syötä tekstiä. Ylä/alanuolilla tai sarkaimella pois."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "Ei-muutettavissa oleva salasana. Ylä/alanuolilla tai sarkaimella pois."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Valintaruutu)   Oikea nuoli tai <return> valitsee."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Radiopainike)  Oikea nuoli tai <return> valitsee."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Lähetä ('x':llä ei välimuistia) "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Lähetä "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Lomakkeenlähetysnappi) Oikea nuoli tai <return> lähettää ('x' välimuistitta)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr ""
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr ""
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+# Pudotusvalikko on aika vapaa suomennos option listille...
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Pudotusvalikko) Paina return ja tee valinta nuolinäppäimillä."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr ""
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr ""
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr ""
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Lähetetään lomaketta..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Tyhjennetään lomaketta..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Sivu ladataan uudelleen. Kaikki lomaketiedot katoavat!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Varoitus: Lomakkeen tietojen muuttaminen merkistölle %s ei onnistu!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(NORMAALI LINKKI)   Oikea nuoli tai <return> valitsee."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "Haluttu resurssi ei ole saatavissa tällä hetkellä."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Syötä Lynxin näppäinkomento: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Etsitään "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Haetaan %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Ohitetaan %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Käytetään %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Virheellinen URL: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Vääränmuotoinen osoite %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "WWW-tiedoston käyttö ei onnistu!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Tämä on [searchable index]. %s etsii."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Lisää-- Tämä on joo. Käytä %s etsiäksesi."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Syötit virheellisen linkin numeron."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr ""
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  Nuolinapit: Ylös/alas liikkumiseen. Oikea seuraa linkkiä, vasen palaa.   \n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " H) Ohje O) Asetukset P) Tulosta G) Mene M) Aloitussivu Q) Lopeta /=etsi \n"
+
+# [delete]=jotain
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "O) Muut käskyt H) Ohje K) Näppäimet G) Mene M) Aloitussivu O) Asetukset Q) Lopeta\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "O) Muut käskyt B) takaisin E)ditoi D) imuroi ^R) lataa uud. ^W) tyhjennä etsi: /\n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O)Muut käskyt C)ommentti Historia: <askelpal.> Kirjanmerkit: V)katso A)lisää R)poista\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Syötä kenttään tekstiä näppäimistöä käyttäen                     "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U tyhjentää kentän, [Askelpalautin] poistaa merkin                  "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "      Ctrl-U tyhjentää kentän, [Askelpalautin] poistaa merkin              "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s tyhjentää kentän, [Askelpalautin] poistaa merkin                  "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "      %s tyhjentää kentän, [Askelpalautin] poistaa merkin              "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr ""
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr ""
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr ""
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr ""
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Lähetetään lomakkeen sisältöä..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr ""
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr ""
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr ""
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr ""
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr ""
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr ""
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr ""
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr ""
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr ""
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr ""
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr ""
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr ""
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr ""
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr ""
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr ""
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr ""
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr ""
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr ""
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr ""
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr ""
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr ""
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr ""
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr ""
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr ""
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr ""
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr ""
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr ""
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr ""
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr ""
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr ""
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr ""
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr ""
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr ""
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr ""
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr ""
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr ""
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr ""
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr ""
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr ""
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr ""
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr ""
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr ""
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr ""
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr ""
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr ""
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr ""
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr ""
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr ""
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr ""
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr ""
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr ""
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr ""
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr ""
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr ""
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr ""
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr ""
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr ""
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr ""
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr ""
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr ""
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr ""
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr ""
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr ""
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr ""
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr ""
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr ""
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr ""
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr ""
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Tallenna D)okumentti, L)inkki kirjanmerkkeihin tai C)peruuta? (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr ""
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr ""
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr ""
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr ""
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr ""
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr ""
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr ""
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr ""
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr ""
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr ""
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr ""
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr ""
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr ""
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr ""
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr ""
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr ""
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr ""
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Olet jo ensimmäisellä sivulla"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Sivulla ei ole linkkejä ennen tätä riviä."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Sivulla ei ole linkkejä tämän rivin jälkeen."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Suurin pituus saavutettu! Poista tekstiä tai siirry pois kentästä."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr ""
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr ""
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr ""
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr ""
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr ""
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr ""
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Virheellistä HTML:ää!!  Lomakkeen toimintoa ei ole määritetty. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr ""
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr ""
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr ""
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "Avattava URL: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr ""
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr ""
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr ""
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr ""
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr ""
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr ""
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr ""
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr ""
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr ""
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr ""
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr ""
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr ""
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr ""
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr ""
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr ""
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr ""
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr ""
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr ""
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr ""
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr ""
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr ""
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr ""
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr ""
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr ""
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr ""
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr ""
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr ""
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr ""
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr ""
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr ""
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr ""
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr ""
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr ""
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr ""
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr ""
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr ""
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr ""
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr ""
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr ""
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr ""
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr ""
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr ""
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr ""
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr ""
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr ""
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr ""
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr ""
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr ""
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr ""
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr ""
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr ""
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr ""
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr ""
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr ""
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr ""
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr ""
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr ""
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr ""
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr ""
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr ""
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr ""
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr ""
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr ""
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr ""
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr ""
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr ""
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr ""
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr ""
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr ""
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr ""
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr ""
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr ""
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr ""
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr ""
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr ""
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr ""
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr ""
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr ""
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr ""
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr ""
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr ""
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr ""
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr ""
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr ""
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr ""
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr ""
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr ""
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr ""
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr ""
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr ""
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr ""
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr ""
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr ""
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr ""
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr ""
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr ""
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr ""
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr ""
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr ""
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr ""
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr ""
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr ""
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr ""
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr ""
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr ""
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr ""
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr ""
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr ""
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr ""
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr ""
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr ""
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr ""
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr ""
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr ""
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr ""
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr ""
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr ""
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr ""
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr ""
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr ""
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr ""
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr ""
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr ""
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr ""
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr ""
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr ""
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr ""
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr ""
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr ""
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr ""
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr ""
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr ""
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr ""
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr ""
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr ""
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr ""
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr ""
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr ""
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr ""
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr ""
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr ""
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr ""
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr ""
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr ""
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr ""
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr ""
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr ""
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr ""
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr ""
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr ""
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr ""
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr ""
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr ""
+
+#: LYMessages.c:558
+#, fuzzy
+msgid " first"
+msgstr " ensiksi."
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", arvataan..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr ""
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Valitse "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "iso kirjain"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr ""
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr ""
+
+#: LYMessages.c:565
+msgid " to "
+msgstr ""
+
+#: LYMessages.c:566
+msgid " or "
+msgstr ""
+
+#: LYMessages.c:567
+msgid " index"
+msgstr ""
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr ""
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Hyväksy muutokset"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Peruuta muutokset"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Vasen nuoli peruuttaa muutokset"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr ""
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr ""
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr ""
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr ""
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr ""
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr ""
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr ""
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr ""
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr ""
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr ""
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr ""
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr ""
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr ""
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr ""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr ""
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr ""
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr ""
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr ""
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr ""
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr ""
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr ""
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr ""
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr ""
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr ""
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr ""
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr ""
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr ""
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr ""
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr ""
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr ""
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr ""
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr ""
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr ""
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr ""
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr ""
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr ""
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr ""
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr ""
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr ""
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr ""
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr ""
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr ""
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr ""
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr ""
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr ""
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr ""
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr ""
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr ""
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr ""
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr ""
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr ""
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr ""
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr ""
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr ""
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr ""
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr ""
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr ""
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr ""
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr ""
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr ""
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr ""
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr ""
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr ""
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr ""
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "Location-URL ei ole absoluuttinen."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "Refresh-URL ei ole absoluuttinen."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr ""
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr ""
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr ""
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:357
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:358
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, fuzzy, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "Eväste: %s: %.*s=%.*s  Sallitaanko? (Y/N/Aina/V ei koskaan)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr ""
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr ""
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr ""
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr ""
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr ""
+
+#: LYMessages.c:705
+msgid "The Cache Jar is empty."
+msgstr ""
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr ""
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr ""
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr ""
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr ""
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr ""
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr ""
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr ""
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr ""
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr ""
+
+#: LYMessages.c:716 src/LYOptions.c:2403
+msgid "None"
+msgstr ""
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr ""
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr ""
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr ""
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr ""
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr ""
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr ""
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr ""
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr ""
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr ""
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr ""
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr ""
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr ""
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr ""
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr ""
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr ""
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr ""
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr ""
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr ""
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr ""
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr ""
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr ""
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr ""
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr ""
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr ""
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr ""
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr ""
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr ""
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr ""
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr ""
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr ""
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr ""
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr ""
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr ""
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr ""
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr ""
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr ""
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr ""
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr ""
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr ""
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr ""
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr ""
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr ""
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr ""
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr ""
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr ""
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr ""
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr ""
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr ""
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr ""
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr ""
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr ""
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr ""
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr ""
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr ""
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr ""
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr ""
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr ""
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr ""
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr ""
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr ""
+
+#: LYMessages.c:799
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr ""
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr ""
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr ""
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr ""
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Siirretty %d tavua"
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "Tiedonsiirto valmis"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr ""
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr ""
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr ""
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr ""
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr ""
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr ""
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr ""
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr ""
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr ""
+
+#: LYMessages.c:820
+msgid "Cache Jar"
+msgstr ""
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr ""
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr ""
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr ""
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr ""
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "Tiedosto-oikeuksien asetukset"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "Tulostusasetukset"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "Tietoa nykyisestä sivusta"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr ""
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr ""
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr ""
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "Katso myös"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr "sinun"
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr ""
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "käännöksen aikaiset asetukset"
+
+#: LYMessages.c:837
+msgid "color-style configuration"
+msgstr ""
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "viimeisin julkaisu"
+
+#: LYMessages.c:839
+#, fuzzy
+msgid "pre-release version"
+msgstr "kehitysversio"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "kehitysversio"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr ""
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr ""
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr ""
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr ""
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+msgid "Changing working-directory is currently disabled."
+msgstr ""
+
+#: LYMessages.c:864
+msgid "Linewrap OFF!"
+msgstr ""
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr ""
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr ""
+
+#: LYMessages.c:869
+msgid "Trace not supported"
+msgstr ""
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:684
+msgid "Access forbidden by rule"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:781
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:935
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1044 src/GridText.c:8580
+msgid "Loading incomplete."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1075
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1077
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr ""
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1084 src/LYMainLoop.c:7800
+msgid "Can't Access"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1092
+msgid "Unable to access document."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr ""
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733
+#: WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr ""
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr ""
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "Luetaan artikkelia uutisista."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+#, fuzzy
+msgid "Address has invalid port"
+msgstr "Osoitteen pituus vaikuttaa virheelliseltä"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "Osoitteen pituus vaikuttaa virheelliseltä"
+
+#: WWW/Library/Implementation/HTTCP.c:1607
+#: WWW/Library/Implementation/HTTCP.c:1625
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr ""
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1622
+#: WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Virheellinen koneen nimi %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1636
+#, fuzzy, c-format
+msgid "Making %s connection to %s"
+msgstr "Muodostetaan %s-yhteyttä kohteeseen %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+msgid "socket failed."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1660
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1684
+msgid "Could not make connection non-blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1752
+msgid "Connection failed (too many retries)."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1945
+msgid "Could not restore socket to blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:2011
+msgid "Socket read failed for 180,000 tries."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:669
+#, fuzzy
+msgid "Retrying connection without TLS."
+msgstr "Muodostetaan %s-yhteyttä kohteeseen %s."
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+msgid "the certificate has been revoked"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "Lähetetään HTTP-pyyntöä."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP-pyyntö lähetetty, odotetaan vastausta."
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr ""
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr ""
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr ""
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr ""
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:159
+msgid "Could not connect to WAIS server."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:167
+msgid "Could not open WAIS connection for reading."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:189
+msgid "Diagnostic code is "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:461
+msgid "Index "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:465
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:473
+msgid "The first figure after each entry is its relative score, "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:474
+msgid "the second is the number of lines in the item."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:516
+msgid " (bad file name)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:542
+msgid "(bad doc id)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:558
+msgid "(Short Header record, can't display)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:565
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:572
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:581
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:589
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:693
+msgid "Syntax error in WAIS URL"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:765
+msgid " (WAIS Index)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:772
+msgid "WAIS Index: "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:778
+msgid "This is a link for searching the "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:782
+msgid " WAIS Index.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:811
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:833
+msgid " (in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:842
+msgid "WAIS Search of \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:846
+msgid "\" in: "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:861
+msgid "HTWAIS: Request too large."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:870
+msgid "Searching WAIS database..."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:880
+msgid "Search interrupted."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:931
+msgid "Can't convert format of WAIS document"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:975
+msgid "HTWAIS: Request too long."
+msgstr ""
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:989
+msgid "Fetching WAIS document..."
+msgstr ""
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1028
+msgid "No text was returned!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr ""
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr ""
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr ""
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Muisti lopussa, siirto keskeytetään!"
+
+#: src/GridText.c:3650
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** MUISTI LOPUSSA ***"
+
+#: src/GridText.c:6085 src/GridText.c:6092 src/LYList.c:239
+msgid "unknown field or link"
+msgstr ""
+
+#: src/GridText.c:6101
+msgid "text entry field"
+msgstr ""
+
+#: src/GridText.c:6104
+msgid "password entry field"
+msgstr ""
+
+#: src/GridText.c:6107
+msgid "checkbox"
+msgstr ""
+
+#: src/GridText.c:6110
+msgid "radio button"
+msgstr ""
+
+#: src/GridText.c:6113
+msgid "submit button"
+msgstr ""
+
+#: src/GridText.c:6116
+msgid "reset button"
+msgstr ""
+
+#: src/GridText.c:6119
+msgid "popup menu"
+msgstr ""
+
+#: src/GridText.c:6122
+msgid "hidden form field"
+msgstr ""
+
+#: src/GridText.c:6125
+msgid "text entry area"
+msgstr ""
+
+#: src/GridText.c:6128
+msgid "range entry field"
+msgstr ""
+
+#: src/GridText.c:6131
+msgid "file entry field"
+msgstr ""
+
+#: src/GridText.c:6134
+msgid "text-submit field"
+msgstr ""
+
+#: src/GridText.c:6137
+msgid "image-submit button"
+msgstr ""
+
+#: src/GridText.c:6140
+msgid "keygen field"
+msgstr ""
+
+#: src/GridText.c:6143
+msgid "unknown form field"
+msgstr ""
+
+#: src/GridText.c:10313
+msgid "Can't open file for uploading"
+msgstr ""
+
+#: src/GridText.c:11472
+#, c-format
+msgid "Submitting %s"
+msgstr ""
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12621
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:12826
+msgid "Wrap lines to fit displayed area?"
+msgstr ""
+
+#: src/GridText.c:12878
+msgid "Very long lines have been wrapped!"
+msgstr ""
+
+#: src/GridText.c:13320
+msgid "Very long lines have been truncated!"
+msgstr ""
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:359 src/LYShowInfo.c:363
+msgid "bytes"
+msgstr ""
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:323
+#, c-format
+msgid "Read %s of data"
+msgstr "Luettu %s dataa"
+
+#: src/HTAlert.c:320
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Luettu %s/%s dataa"
+
+#: src/HTAlert.c:329
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/s."
+
+#: src/HTAlert.c:341
+#, c-format
+msgid " (stalled for %s)"
+msgstr ""
+
+#: src/HTAlert.c:345
+#, c-format
+msgid ", ETA %s"
+msgstr ""
+
+#: src/HTAlert.c:367
+msgid " (Press 'z' to abort)"
+msgstr " ('z' keskeyttää)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:405 src/HTAlert.c:453
+msgid "yes"
+msgstr "kyllä"
+
+#: src/HTAlert.c:408 src/HTAlert.c:454
+msgid "no"
+msgstr "ei"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:910
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5921
+msgid "Description:"
+msgstr "Kuvaus:"
+
+#: src/HTML.c:5926
+msgid "(none)"
+msgstr "(ei mitään)"
+
+#: src/HTML.c:5930
+msgid "Filepath:"
+msgstr "Tiedoston polku:"
+
+#: src/HTML.c:5936
+msgid "(unknown)"
+msgstr "(tuntematon)"
+
+#: src/HTML.c:7381
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Sivulla on vain piilotettuja linkkejä. Käytä 'l'ista-komentoa."
+
+#: src/HTML.c:7880
+msgid "Source cache error - disk full?"
+msgstr ""
+
+#: src/HTML.c:7893
+msgid "Source cache error - not enough memory!"
+msgstr ""
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr ""
+
+#: src/LYCgi.c:159
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:274
+msgid "Unable to access cgi script"
+msgstr ""
+
+#: src/LYCgi.c:699 src/LYCgi.c:702
+msgid "Good Advice"
+msgstr ""
+
+#: src/LYCgi.c:706
+msgid "An excellent http server for VMS is available via"
+msgstr ""
+
+#: src/LYCgi.c:713
+msgid "this link"
+msgstr "tämä linkki"
+
+#: src/LYCgi.c:717
+msgid "It provides state of the art CGI script support.\n"
+msgstr ""
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr ""
+
+#: src/LYCookie.c:2460
+msgid "(from a previous session)"
+msgstr ""
+
+#: src/LYCookie.c:2521
+msgid "Maximum Gobble Date:"
+msgstr ""
+
+#: src/LYCookie.c:2561
+#, fuzzy
+msgid "Internal"
+msgstr " (sisäinen)"
+
+#: src/LYCookie.c:2562
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr ""
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Päätteen alustus epäonnistui - tuntematon päätetyyppi?"
+
+#: src/LYCurses.c:1538
+msgid "Terminal ="
+msgstr "Pääte ="
+
+#: src/LYCurses.c:1542
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Tämän ohjelman kanssa on käytettävä vt100-, 200-, tms. päätettä."
+
+#: src/LYCurses.c:1591
+msgid "Your Terminal type is unknown!"
+msgstr "Päätetyyppi on tuntematon!"
+
+#: src/LYCurses.c:1592
+msgid "Enter a terminal type:"
+msgstr "Anna päätetyyppi:"
+
+#: src/LYCurses.c:1606
+msgid "TERMINAL TYPE IS SET TO"
+msgstr ""
+
+#: src/LYCurses.c:2111
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+
+#: src/LYCurses.c:2114
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr ""
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr ""
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr ""
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "Ladattu linkki:"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "Ehdotettu tiedostonimi:"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr ""
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr ""
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "Tallenna levylle"
+
+#: src/LYDownload.c:545
+msgid "View temporary file"
+msgstr "Katso väliaikaistiedostoa"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "Levylle tallennus pois käytöstä."
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr ""
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr ""
+
+#: src/LYHistory.c:671
+msgid "You selected:"
+msgstr "Valitsit:"
+
+#: src/LYHistory.c:695 src/LYHistory.c:924
+msgid "(no address)"
+msgstr "(ei osoitetta)"
+
+#: src/LYHistory.c:699
+msgid " (internal)"
+msgstr " (sisäinen)"
+
+#: src/LYHistory.c:701
+msgid " (was internal)"
+msgstr " (oli sisäinen)"
+
+#: src/LYHistory.c:799
+msgid " (From History)"
+msgstr ""
+
+#: src/LYHistory.c:844
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr ""
+
+#: src/LYHistory.c:1137
+msgid "(No messages yet)"
+msgstr ""
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr ""
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr ""
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr ""
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr ""
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Muistivuoto havaittu."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr ""
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr ""
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr ""
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr ""
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr ""
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr ""
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr ""
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr ""
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr ""
+
+#: src/LYList.c:332
+msgid "References"
+msgstr ""
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr ""
+
+#: src/LYLocal.c:269
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr ""
+
+#: src/LYLocal.c:303
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:371
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:405
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:467 src/LYLocal.c:488
+#, c-format
+msgid "remove %s"
+msgstr ""
+
+#: src/LYLocal.c:506
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:534
+#, c-format
+msgid "move %s to %s"
+msgstr ""
+
+#: src/LYLocal.c:575
+msgid "There is already a directory with that name!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:577
+msgid "There is already a file with that name!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:579
+msgid "The specified name is already in use!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:590
+msgid "Destination has different owner!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:593
+msgid "Destination is not a valid directory!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:615
+msgid "Remove all tagged files and directories?"
+msgstr ""
+
+#: src/LYLocal.c:673
+msgid "Enter new location for tagged items: "
+msgstr ""
+
+#: src/LYLocal.c:743
+msgid "Path too long"
+msgstr ""
+
+#: src/LYLocal.c:774
+msgid "Source and destination are the same location - request ignored!"
+msgstr ""
+
+#: src/LYLocal.c:831
+msgid "Enter new name for directory: "
+msgstr ""
+
+#: src/LYLocal.c:833
+msgid "Enter new name for file: "
+msgstr ""
+
+#: src/LYLocal.c:845
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:895
+msgid "Enter new location for directory: "
+msgstr ""
+
+#: src/LYLocal.c:901
+msgid "Enter new location for file: "
+msgstr ""
+
+#: src/LYLocal.c:928
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr ""
+
+#: src/LYLocal.c:948
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr ""
+
+#: src/LYLocal.c:995
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr ""
+
+#: src/LYLocal.c:997
+msgid "Modify name or location (n or l): "
+msgstr ""
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1026
+msgid "This feature not yet implemented!"
+msgstr ""
+
+#: src/LYLocal.c:1046
+msgid "Enter name of file to create: "
+msgstr ""
+
+#: src/LYLocal.c:1050 src/LYLocal.c:1086
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:1082
+msgid "Enter name for new directory: "
+msgstr ""
+
+#: src/LYLocal.c:1122
+msgid "Create file or directory (f or d): "
+msgstr ""
+
+#: src/LYLocal.c:1164
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1167
+msgid "Remove directory?"
+msgstr ""
+
+#: src/LYLocal.c:1172
+#, c-format
+msgid "Remove file '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1174
+msgid "Remove file?"
+msgstr ""
+
+#: src/LYLocal.c:1179
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1181
+msgid "Remove symbolic link?"
+msgstr ""
+
+#: src/LYLocal.c:1276
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr ""
+
+#: src/LYLocal.c:1306
+msgid "Unable to open permit options file"
+msgstr ""
+
+#: src/LYLocal.c:1336
+msgid "Specify permissions below:"
+msgstr ""
+
+#: src/LYLocal.c:1337 src/LYShowInfo.c:260
+msgid "Owner:"
+msgstr ""
+
+#: src/LYLocal.c:1353
+msgid "Group"
+msgstr ""
+
+#: src/LYLocal.c:1369
+msgid "Others:"
+msgstr ""
+
+#: src/LYLocal.c:1387
+msgid "form to permit"
+msgstr ""
+
+#: src/LYLocal.c:1482
+msgid "Invalid mode format."
+msgstr ""
+
+#: src/LYLocal.c:1486
+msgid "Invalid syntax format."
+msgstr ""
+
+#: src/LYLocal.c:1668
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr ""
+
+#: src/LYLocal.c:1858
+msgid "NULL URL pointer"
+msgstr ""
+
+#: src/LYLocal.c:1940
+#, c-format
+msgid "Executing %s "
+msgstr ""
+
+#: src/LYLocal.c:1943
+msgid "Executing system command. This might take a while."
+msgstr ""
+
+#: src/LYLocal.c:2015
+msgid "Current directory:"
+msgstr ""
+
+#: src/LYLocal.c:2018 src/LYLocal.c:2036
+msgid "Current selection:"
+msgstr ""
+
+#: src/LYLocal.c:2022
+msgid "Nothing currently selected."
+msgstr ""
+
+#: src/LYLocal.c:2038
+msgid "tagged item:"
+msgstr ""
+
+#: src/LYLocal.c:2039
+msgid "tagged items:"
+msgstr ""
+
+#: src/LYLocal.c:2136 src/LYLocal.c:2147
+msgid "Illegal filename; request ignored."
+msgstr ""
+
+#. directory not writable
+#: src/LYLocal.c:2245 src/LYLocal.c:2304
+msgid "Install in the selected directory not permitted."
+msgstr ""
+
+#: src/LYLocal.c:2300
+msgid "The selected item is not a directory!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:2309
+msgid "Just a moment, ..."
+msgstr ""
+
+#: src/LYLocal.c:2326
+msgid "Error building install args"
+msgstr ""
+
+#: src/LYLocal.c:2341 src/LYLocal.c:2372
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr ""
+
+#: src/LYLocal.c:2348 src/LYLocal.c:2379
+#, c-format
+msgid "Already in target directory: %s"
+msgstr ""
+
+#: src/LYLocal.c:2397
+msgid "Installation complete"
+msgstr ""
+
+#: src/LYLocal.c:2584
+msgid "Temporary URL or list would be too long."
+msgstr ""
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr ""
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr ""
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr ""
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr ""
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr ""
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1019
+msgid "No Winsock found, sorry."
+msgstr ""
+
+#: src/LYMain.c:1200
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr ""
+
+#: src/LYMain.c:1253 src/LYMainLoop.c:5085
+msgid "No such directory"
+msgstr ""
+
+#: src/LYMain.c:1461
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1471
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1500
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1576
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1651
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1653
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1801
+msgid "Warning:"
+msgstr ""
+
+#: src/LYMain.c:2369
+msgid "persistent cookies state will be changed in next session only."
+msgstr ""
+
+#: src/LYMain.c:2614 src/LYMain.c:2659
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr ""
+
+#: src/LYMain.c:3178
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr ""
+
+#: src/LYMain.c:3216
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr ""
+
+#: src/LYMain.c:3238
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3239
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr ""
+
+#: src/LYMain.c:3240
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr ""
+
+#: src/LYMain.c:3241
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+
+#: src/LYMain.c:4054
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr ""
+
+#: src/LYMain.c:4055
+#, c-format
+msgid "Options are:\n"
+msgstr ""
+
+#: src/LYMain.c:4354
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr ""
+
+#: src/LYMainLoop.c:588
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr ""
+
+#: src/LYMainLoop.c:708 src/LYMainLoop.c:5107
+msgid "A URL specified by the user"
+msgstr ""
+
+#: src/LYMainLoop.c:1167
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr ""
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3113
+msgid "Help Screen"
+msgstr ""
+
+#: src/LYMainLoop.c:3234
+msgid "System Index"
+msgstr ""
+
+#: src/LYMainLoop.c:3594 src/LYMainLoop.c:5335
+msgid "Entry into main screen"
+msgstr ""
+
+#: src/LYMainLoop.c:3852
+msgid "No next document present"
+msgstr ""
+
+#: src/LYMainLoop.c:4150
+msgid "charset for this document specified explicitly, sorry..."
+msgstr ""
+
+#: src/LYMainLoop.c:5063
+msgid "cd to:"
+msgstr ""
+
+#: src/LYMainLoop.c:5088
+msgid "A component of path is not a directory"
+msgstr ""
+
+#: src/LYMainLoop.c:5091
+msgid "failed to change directory"
+msgstr ""
+
+#: src/LYMainLoop.c:6267
+msgid "Reparsing document under current settings..."
+msgstr ""
+
+#: src/LYMainLoop.c:6558
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr ""
+
+#: src/LYMainLoop.c:6901
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6904
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:6981
+msgid "Current URL is empty."
+msgstr ""
+
+#: src/LYMainLoop.c:6983 src/LYUtils.c:1810
+msgid "Copy to clipboard failed."
+msgstr ""
+
+#: src/LYMainLoop.c:6985
+msgid "Document URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6987
+msgid "Link URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7014
+msgid "No URL in the clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7685 src/LYMainLoop.c:7855
+msgid "-index-"
+msgstr ""
+
+#: src/LYMainLoop.c:7795
+msgid "lynx: Can't access startfile"
+msgstr ""
+
+#: src/LYMainLoop.c:7807
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr ""
+
+#: src/LYMainLoop.c:7808
+msgid "      Exiting..."
+msgstr ""
+
+#: src/LYMainLoop.c:7849
+msgid "-more-"
+msgstr ""
+
+#. Enable scrolling.
+#: src/LYNews.c:183
+msgid "You will be posting to:"
+msgstr ""
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:192
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:209
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+
+#: src/LYNews.c:299
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:356
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+
+#: src/LYNews.c:402
+msgid "Message has no original text!"
+msgstr ""
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr ""
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr ""
+
+#: src/LYOptions.c:2128 src/LYOptions.c:2135
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2129 src/LYOptions.c:2134 src/LYOptions.c:2286
+#: src/LYOptions.c:2297
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2131
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2147 src/LYOptions.c:2278
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2149
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2162
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2164
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2176
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2178
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2181
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2184
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2199
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2225
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2243
+msgid "Novice"
+msgstr "Aloittelija"
+
+#: src/LYOptions.c:2244
+msgid "Intermediate"
+msgstr "Keskitaso"
+
+#: src/LYOptions.c:2245
+msgid "Advanced"
+msgstr "Edistynyt"
+
+#: src/LYOptions.c:2254
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2258
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2260
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2271
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2272
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2279
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2280
+#, fuzzy
+msgid "as links"
+msgstr "tämä linkki"
+
+#: src/LYOptions.c:2287
+#, fuzzy
+msgid "show filename"
+msgstr "Ehdotettu tiedostonimi:"
+
+#: src/LYOptions.c:2298
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2299
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2330
+msgid "Directories first"
+msgstr ""
+
+#: src/LYOptions.c:2331
+#, fuzzy
+msgid "Files first"
+msgstr " ensiksi."
+
+#: src/LYOptions.c:2332
+msgid "Mixed style"
+msgstr ""
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Name"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+msgid "By Size"
+msgstr ""
+
+#: src/LYOptions.c:2343 src/LYOptions.c:2363
+msgid "By Date"
+msgstr ""
+
+#: src/LYOptions.c:2344
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2346
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2347
+msgid "By Group"
+msgstr ""
+
+#: src/LYOptions.c:2372
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2373 src/LYOptions.c:2374
+#, c-format
+msgid "Show %s/sec rate"
+msgstr ""
+
+#: src/LYOptions.c:2376 src/LYOptions.c:2377
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2380
+msgid "Show progressbar"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2395
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2396
+#, fuzzy
+msgid "Accept all types"
+msgstr "Hyväksy muutokset"
+
+#: src/LYOptions.c:2405
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2406
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2409
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2412
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2414
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2682 src/LYOptions.c:2706
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr ""
+
+#: src/LYOptions.c:3478
+msgid "(options marked with (!) will not be saved)"
+msgstr "((!)-merkittyjä asetuksia ei tallenneta)"
+
+#: src/LYOptions.c:3486
+msgid "General Preferences"
+msgstr "Yleisasetukset"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3490
+msgid "User mode"
+msgstr "Käyttäjän taso"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3496
+msgid "Editor"
+msgstr ""
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3501
+msgid "Type of Search"
+msgstr "Haun toiminta"
+
+#: src/LYOptions.c:3506
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3510
+msgid "Cookies"
+msgstr ""
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3524
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3531
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3537
+msgid "Keyboard Input"
+msgstr ""
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3541
+msgid "Keypad mode"
+msgstr ""
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3547
+msgid "Emacs keys"
+msgstr ""
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3553
+msgid "VI keys"
+msgstr ""
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3560
+msgid "Line edit style"
+msgstr ""
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3572
+msgid "Keyboard layout"
+msgstr ""
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3586
+msgid "Display and Character Set"
+msgstr ""
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3591
+msgid "Use locale-based character set"
+msgstr ""
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3600
+msgid "Display character set"
+msgstr ""
+
+#: src/LYOptions.c:3631
+msgid "Assumed document character set"
+msgstr ""
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3651
+msgid "CJK mode"
+msgstr ""
+
+#: src/LYOptions.c:3653
+msgid "Raw 8-bit"
+msgstr ""
+
+#. X Display: INPUT
+#: src/LYOptions.c:3661
+msgid "X Display"
+msgstr ""
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3667
+msgid "Document Appearance"
+msgstr ""
+
+#: src/LYOptions.c:3673
+msgid "Show color"
+msgstr ""
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3697
+msgid "Show cursor"
+msgstr ""
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3703
+msgid "Underline links"
+msgstr ""
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3710
+msgid "Show scrollbar"
+msgstr ""
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3717
+msgid "Popups for select fields"
+msgstr ""
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3723
+msgid "HTML error recovery"
+msgstr ""
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3729
+msgid "Show images"
+msgstr ""
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3743
+msgid "Verbose images"
+msgstr ""
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3751
+msgid "Headers Transferred to Remote Servers"
+msgstr ""
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3755
+msgid "Personal mail address"
+msgstr ""
+
+#: src/LYOptions.c:3761
+msgid "Password for anonymous ftp"
+msgstr ""
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3767
+msgid "Preferred media type"
+msgstr ""
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3773
+msgid "Preferred encoding"
+msgstr ""
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3779
+msgid "Preferred document character set"
+msgstr ""
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3784
+msgid "Preferred document language"
+msgstr ""
+
+#: src/LYOptions.c:3790
+msgid "User-Agent header"
+msgstr ""
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3798
+msgid "Listing and Accessing Files"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3803
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3809
+msgid "FTP sort criteria"
+msgstr ""
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3817
+msgid "Local directory sort criteria"
+msgstr ""
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3823
+msgid "Local directory sort order"
+msgstr ""
+
+#: src/LYOptions.c:3832
+msgid "Show dot files"
+msgstr ""
+
+#: src/LYOptions.c:3840
+msgid "Execution links"
+msgstr ""
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3860
+msgid "Show transfer rate"
+msgstr ""
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3880
+msgid "Special Files and Screens"
+msgstr ""
+
+#: src/LYOptions.c:3885
+msgid "Multi-bookmarks"
+msgstr ""
+
+#: src/LYOptions.c:3893
+msgid "Review/edit Bookmarks files"
+msgstr ""
+
+#: src/LYOptions.c:3895
+msgid "Goto multi-bookmark menu"
+msgstr ""
+
+#: src/LYOptions.c:3897
+msgid "Bookmarks file"
+msgstr ""
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3904
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3910
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3916
+msgid "Visited Pages"
+msgstr ""
+
+#: src/LYOptions.c:3921
+msgid "View the file "
+msgstr ""
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr ""
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr ""
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr ""
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr ""
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr ""
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr ""
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr ""
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr ""
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr ""
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr ""
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr ""
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr ""
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr ""
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr ""
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr ""
+
+#: src/LYReadCFG.c:369
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+
+#: src/LYReadCFG.c:382
+msgid "Offending line:"
+msgstr ""
+
+#: src/LYReadCFG.c:679
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:686
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:707
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr ""
+
+#: src/LYReadCFG.c:732 src/LYReadCFG.c:744
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:748
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:844
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr ""
+
+#: src/LYReadCFG.c:845
+msgid "(no name)"
+msgstr ""
+
+#: src/LYReadCFG.c:1877
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1879
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1880
+#, c-format
+msgid "included from '%s'.\n"
+msgstr ""
+
+#: src/LYReadCFG.c:2288 src/LYReadCFG.c:2301 src/LYReadCFG.c:2359
+msgid "The following is read from your lynx.cfg file."
+msgstr ""
+
+#: src/LYReadCFG.c:2289 src/LYReadCFG.c:2302
+msgid "Please read the distribution"
+msgstr ""
+
+#: src/LYReadCFG.c:2295 src/LYReadCFG.c:2305
+msgid "for more comments."
+msgstr ""
+
+#: src/LYReadCFG.c:2341
+msgid "RELOAD THE CHANGES"
+msgstr ""
+
+#: src/LYReadCFG.c:2349
+msgid "Your primary configuration"
+msgstr ""
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr ""
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr ""
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr ""
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr ""
+
+#: src/LYShowInfo.c:212
+msgid "Unable to follow link"
+msgstr ""
+
+#: src/LYShowInfo.c:214
+msgid "Points to file:"
+msgstr ""
+
+#: src/LYShowInfo.c:219
+msgid "Name of owner:"
+msgstr ""
+
+#: src/LYShowInfo.c:222
+msgid "Group name:"
+msgstr ""
+
+#: src/LYShowInfo.c:224
+msgid "File size:"
+msgstr ""
+
+#: src/LYShowInfo.c:226
+#, fuzzy
+msgid "(bytes)"
+msgstr "kyllä"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:231
+msgid "Creation date:"
+msgstr ""
+
+#: src/LYShowInfo.c:234
+msgid "Last modified:"
+msgstr ""
+
+#: src/LYShowInfo.c:237
+msgid "Last accessed:"
+msgstr ""
+
+#: src/LYShowInfo.c:243
+msgid "Access Permissions"
+msgstr ""
+
+#: src/LYShowInfo.c:278
+msgid "Group:"
+msgstr ""
+
+#: src/LYShowInfo.c:298
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:305
+msgid "File that you are currently viewing"
+msgstr "Nyt katseltava tiedosto"
+
+#: src/LYShowInfo.c:313 src/LYShowInfo.c:417
+msgid "Linkname:"
+msgstr ""
+
+#: src/LYShowInfo.c:319 src/LYShowInfo.c:334
+msgid "Charset:"
+msgstr ""
+
+#: src/LYShowInfo.c:333
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:340
+msgid "Server:"
+msgstr "Palvelin:"
+
+#: src/LYShowInfo.c:343
+msgid "Date:"
+msgstr ""
+
+#: src/LYShowInfo.c:346
+msgid "Last Mod:"
+msgstr ""
+
+#: src/LYShowInfo.c:351
+msgid "Expires:"
+msgstr ""
+
+#: src/LYShowInfo.c:354
+msgid "Cache-Control:"
+msgstr ""
+
+#: src/LYShowInfo.c:357
+msgid "Content-Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:361
+msgid "Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:366
+msgid "Language:"
+msgstr ""
+
+#: src/LYShowInfo.c:373
+msgid "Post Data:"
+msgstr ""
+
+#: src/LYShowInfo.c:376
+msgid "Post Content Type:"
+msgstr ""
+
+#: src/LYShowInfo.c:379
+msgid "Owner(s):"
+msgstr ""
+
+#: src/LYShowInfo.c:384
+msgid "size:"
+msgstr ""
+
+#: src/LYShowInfo.c:386
+msgid "lines"
+msgstr ""
+
+#: src/LYShowInfo.c:390
+msgid "forms mode"
+msgstr ""
+
+#: src/LYShowInfo.c:392
+msgid "source"
+msgstr ""
+
+#: src/LYShowInfo.c:393
+msgid "normal"
+msgstr ""
+
+#: src/LYShowInfo.c:395
+msgid ", safe"
+msgstr ""
+
+#: src/LYShowInfo.c:397
+#, fuzzy
+msgid ", via internal link"
+msgstr " (oli sisäinen)"
+
+#: src/LYShowInfo.c:402
+msgid ", no-cache"
+msgstr ""
+
+#: src/LYShowInfo.c:404
+msgid ", ISMAP script"
+msgstr ""
+
+#: src/LYShowInfo.c:406
+msgid ", bookmark file"
+msgstr ""
+
+#: src/LYShowInfo.c:410
+msgid "mode:"
+msgstr ""
+
+#: src/LYShowInfo.c:416
+msgid "Link that you currently have selected"
+msgstr "Nyt valittu linkki"
+
+#: src/LYShowInfo.c:425
+msgid "Method:"
+msgstr ""
+
+#: src/LYShowInfo.c:429
+msgid "Enctype:"
+msgstr ""
+
+#: src/LYShowInfo.c:435
+#, fuzzy
+msgid "Action:"
+msgstr "Kuvaus:"
+
+#: src/LYShowInfo.c:440
+msgid "(Form field)"
+msgstr ""
+
+#: src/LYShowInfo.c:449
+msgid "No Links on the current page"
+msgstr ""
+
+#: src/LYShowInfo.c:454
+msgid "Server Headers:"
+msgstr ""
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr ""
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr ""
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr ""
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr ""
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr ""
+
+#: src/LYUtils.c:1812
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2597
+msgid "Unexpected access protocol for this URL scheme."
+msgstr ""
+
+#: src/LYUtils.c:3401
+msgid "Too many tempfiles"
+msgstr ""
+
+#: src/LYUtils.c:3701
+msgid "unknown restriction"
+msgstr ""
+
+#: src/LYUtils.c:3732
+#, c-format
+msgid "No restrictions set.\n"
+msgstr ""
+
+#: src/LYUtils.c:3735
+#, fuzzy, c-format
+msgid "Restrictions set:\n"
+msgstr "Kuvaus:"
+
+#: src/LYUtils.c:5113
+msgid "Cannot find HOME directory"
+msgstr ""
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr ""
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+
+#: src/LYrcFile.c:816
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+
+#: src/LYrcFile.c:825
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+
+#: src/LYrcFile.c:829
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+
+#: src/LYrcFile.c:838
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:870
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).  There is normally no need to edit this file manually,\n"
+"since the defaults here can be controlled from the Options Screen, and the\n"
+"next time options are saved from the Options Screen this file will be\n"
+"completely rewritten.  You have been warned...\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called lynx.cfg, and it has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+
+#~ msgid "Looking up %s."
+#~ msgstr "Etsitään %s."
diff --git a/po/fr.po b/po/fr.po
new file mode 100644
index 00000000..30d52036
--- /dev/null
+++ b/po/fr.po
@@ -0,0 +1,6211 @@
+# Lynx French translation text messages
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the lynx package.
+# You may freely copy this file and add messages and translations
+# as long no comments are removed.
+# FIRST AUTHOR:
+# * * * * * * * * * *
+# The French translations for Lynx were created by the
+# Chebucto Project.
+# Contributors include:
+# Chris Maxwell (CM)
+# David Potter
+# David Trueman (NdT)
+# * * * * * * * * * *
+#
+# relecture complète 09/2008 N. Provost
+#
+# started: Wed Sep  2 20:22:45 EDT 1998
+# J.E. Spath <jspath@bcpl.net> wedged this into Lynx, 1999.
+# Nicolas Provost <nprovost@quadriv.com>, since 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.7-dev12\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-01-18 19:08-0500\n"
+"PO-Revision-Date: 2009-01-05 12:08+0100\n"
+"Last-Translator: Nicolas Provost <nprovost@quadriv.com>\n"
+"Language-Team: French <traduc@traduc.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Alerte! : %s"
+
+# END of the file browser/F)ull menu
+# Following are from the File browser
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Bienvenue"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Désirez-vous vraiment quitter ?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Voulez-vous vraiment quitter Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Connexion interrompue."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Transfert de données interrompu."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Annulé !"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Annulation!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Excellent !"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Terminé !"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Demande erronée !"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "écran précédent"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "écran suivant"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "Aide !"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", aide activée "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Commandes : flèches=se déplacer, '?'=aide, 'q'=quitter, '<--'=retour"
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "appui sur 'espace'=page suiv., flèches=se déplacer, '?'=aide, 'q'=quitter"
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "- appuyez sur la barre d'espace pour aller à la page suivante -"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL trop longue"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Champ texte) inactif. Appuyez sur <entrée> pour l'activer."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Zone de texte) inactive. Appuyez sur <entrée> pour l'activer."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Zone de texte) Inactive. Appuyez sur <entrée> pour l'activer (%s pour éditer)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Champ formulaire) inactif. <Entrée> pour éditer."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Champ formulaire) inactif. <Entrée> pour éditer (%s soumettre sans cache)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Champ formulaire) inactif. <Entrée> pour éditer, deux fois pour soumettre."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(Champ mailto) inactif. <Entrée> pour modifier."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Champ mot de passe) inactif. <Entrée> pour activer."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Champ fichier non modifiable. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "Entrez le nom de fichier. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "Entrez le texte. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Zone texte) Entrez le texte. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Zone de texte) Entrez le texte. Déplacez-vous avec <haut>,<bas>,<tab> (%s pour éditeur)"
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Champ texte non modifiable. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Champ formulaire) Entrez le texte. <Entrée> pour soumettre."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Champ formulaire) Entrez le texte. <Entrée> pour confirmer (%s : nouvelle instance)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Champ formulaire) Entrez le texte. <Entrée> pour confirmer; <flèches>,<tab> pour se déplacer."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Champ formulaire non modifiable. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(Champ mailto) Entrez le texte. <Entrée> pour confirmer, <flèches> pour vous déplacer."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(champ mailto) Fonction de courrier invalidée; impossible de soumettre l'envoi."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "Entrez le mot de passe. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "Champ mot de passe non modifiable. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Case à cocher) Touche <droite> ou <Entrée> pour changer d'option."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "Case à cocher non modifiable. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Bouton radio) Touche <droite> ou <Entrée> pour changer d'option."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Bouton radio non modifiable. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Soumettre ('x' pour annuler le cache) à"
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Soumettre à"
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Bouton d'envoi) Touche <droite> ou <Entrée> pour envoyer ('x' : nouvelle instance)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Bouton d'envoi) Utilisez la touche <droite> ou <Entrée> pour confirmer."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Bouton d'envoi désactivé. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Soumettre le formulaire via mail à"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(bouton de soumission mail) Utilisez la touche <droite> ou <Entrée> pour confirmer."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(bouton soumission mail) Fonction de courrier invalidée; envoi impossible"
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Bouton de raz formulaire) Pressez <droite> ou <Entrée> pour réinitialiser le formulaire."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Bouton de raz formulaire désactivé. Déplacez-vous avec <haut>,<bas>,<tab>."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Liste d'options) Pressez <Entrée> puis les <flèches> ; <Entrée> pour choisir une option."
+
+# /maxwell/lynx2.7.1/LYMessages_en.h
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Liste de choix) <Entrée>, puis <flèches> ; <Entrée> pour faire votre choix."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "Liste d'options non modifiable. Pressez <Entrée> ou <flèches> pour revoir les options ou quitter."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "Liste de choix non modifiable. Pressez <Entrée> ou <flèches> pour revoir ou quitter."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Envoi du formulaire... "
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Réinitialisation du formulaire..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Rechargement du document.  Toutes les entrées seront effacées !"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Impossible de coder les données du formulaire dans le jeu de caractères %s !"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(Lien normal) Pressez <droite> ou <Entrée> pour activer le lien."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "La ressource demandée n'est pas disponible en ce moment."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Entrer la commande Lynx au clavier : "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Recherche "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Accès à %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Ignoré : %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Utilisation de %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "URL illégale : %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Adresse mal formée %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL : %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Impossible d'accéder au fichier WWW !"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Ceci est un index consultable.  Utilisez %s pour la recherche."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "-Suite- Ceci est un index consultable. Utilisez %s pour la recherche."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Vous avez saisi un numéro de lien non valide."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Vous visualisez le code source. Faites '\\' pour la version hypertexte."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "<haut>/<bas>=se déplacer, <droite>=activer le lien, <gauche>=document précédent.\n"
+
+# Is the AIDE command correct? There is no online Help in Lynx.
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "H)Aide  O)ptions  P)Imprimer G)Aller à  M)écran pal Q)uitter </>=chercher <retour>=Histor.\n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "  O)Autres comm.  H)Aide  K)Clavier G)Aller à  P)Imprimer  M)Ecran pal  o)ptions Q)uitter\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "  O)Autres comm.  B)retour  E)diter  D)Télécharger ^R)echarger ^W)nettoyer écran </> chercher doc\n"
+
+# NOVICE_LINE_TWO_C
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O)Autres comm.  C)ommentaires  <retour>=historique | Signets : V)oir, A)jouter, R)supprimer\n"
+
+#  Z)ap Transfer missing from line, since it does nothing
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Entrez le texte dans la zone à partir du clavier                 "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    <Ctrl-U> pour supprimer tout le texte, <retour arr> pour effacer caractère"
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "      <Ctrl-U> pour supprimer tout le texte, <retour arr> pour effacer caractère"
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s pour effacer tout le texte, <retour arr> pour effacer caractère"
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "      %s pour effacer tout le texte, <retour arr> pour effacer caractère"
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Envoi de formulaire mailto incorrect. Annulé !"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Attention ! Les codes de contrôles de l'adresse mail ont été remplacés par ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "Envoi de courrier interdit. Impossible de soumettre l'envoi !"
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Impossible d'envoyer le formulaire par mail !"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Envoi du formulaire par mail annulé !"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Envoi du contenu du formulaire..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "Aucune adresse de courriel ne figure dans l'URL d'envoi !"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Impossible d'ouvrir de fichier temporaire pour l'URL mailto !"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Voulez-vous inclure le message d'origine ?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Voulez-vous inclure la source pré-analysée ?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Lancement de votre éditeur de choix pour l'édition du courriel"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Erreur de lancement de l'éditeur ; vérifier la configuration de l'éditeur (menu options)"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Envoyer ce commentaire ? "
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Envoyer ce message ? "
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Envoi de votre message..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Envoi de votre commentaire :"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Ce n'est pas une zone de texte, impossible d'utiliser l'éditeur externe."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Ce n'est pas une zone de texte, impossible d'utiliser cette commande."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "Aucune action autorisée avec une URL 'file:'"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "Une URL 'file:' n'est pas admise dans les liens servis."
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "L'accès aux fichiers locaux est refusé !"
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "Une URL 'file:' n'est pas autorisée dans les signets."
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Cette URL spéciale n'est pas autorisée dans les documents externes !"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Pressez <Entrée> pour retourner à Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Sous-processus DCL lancé ; saisir \"logout\" pour retourner à Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Saisir \"exit\" pour retourner à Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Lancement du shell par défaut. Saisir \"exit\" pour retourner à Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "Le lancement est présentement désactivé."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "La commande \"d\" (télécharger) est présentement désactivée."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Vous ne pouvez pas télécharger un champ de formulaire."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Le formulaire contient une entité 'mailto:'. Téléchargement impossible."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Vous ne pouvez pas télécharger un lien mailto."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Vous ne pouvez pas télécharger les cookies."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Impossible de télécharger une option d'impression."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Impossible de télécharger une option de chargement."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Impossible de télécharger une option de permission."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Cette URL spéciale ne peut être téléchargée !"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Il n'y a rien à télécharger."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Traçage ACTIVÉ"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Traçage DÉSACTIVÉ"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Les liens seront inclus pour toutes les images ! Chargement..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Traitement d'image standard restauré. Chargement... "
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "De pseudos champs \"ALT\" seront assignées aux images sans \"ALT\" !  Chargement..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Les images incluses sans l'attribut ALT seront ignorées !  Chargement..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Modes 8-bits \"brut\" ou CJK désactivés ! Chargement..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Modes 8-bits \"brut\" ou CJK activés ! Chargement..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Envoyer requête HEAD pour D)ocument, L)ien  ou C) Annuler? (d,l,c) :   "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Envoyer requête HEAD pour D)ocument ou C) Annuler? (d,c) :"
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Désolé, le document n'est pas une URL http."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Désolé, le document n'est pas une URL http."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Désolé, l'attribut ACTION est désactivé pour ce formulaire."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Désolé, l'attribut ACTION de ce formulaire n'est pas une URL http."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "L'élément n'est ni une URL http ni un attribut ACTION !"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Cette URL spéciale ne peut être un attribut ACTION !"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "L'URL n'est pas dans la hiérarchie de départ !"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "L'envoi d'articles Usenet est désactivé !"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Le support de la gestion de fichiers est désactivé !"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Aucun fichier-raccourci n'est présentement disponible."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Accès à (entrez '?' pour la liste des raccourcis) : "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "L'accès à un raccourci URL est désactivé !"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "L'accès aléatoire URL est désactivé. Utilisez un raccourci."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Aucune URL aléatoire n'a encore été utilisée."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Les fonctions de signets sont présentement désactivées."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "L'exécution à partir des signets est désactivée."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Le fichier de signets n'est pas défini. Utilisez %s pour voir les options."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Impossible d'ouvrir le fichier temporaire pour convertir les favoris X Mosaic."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "ERREUR - impossible d'ouvrir le fichier de signets."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Impossible d'ouvrir le fichier de signets pour supprimer un lien."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Impossible d'ouvrir le fichier de travail pour supprimer un lien."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Erreur de renommage du fichier de travail."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Erreur de renommage du fichier temporaire."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Impossible de copier le fichier temporaire (pour l'effacement du lien)."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Impossible de réouvrir le fichier temporaire pour supprimer un lien."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Le lien ne tient pas sur une seule ligne dans le fichier de signets."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Impossible de supprimer le signet."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Les fichiers de signets ne peuvent être parcourus (URL http seulement)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Impossible d'ouvrir les signets r; tapez 'a' pour enreg. un lien d'abord."
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Il n'y a aucun signet dans ce fichier !"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "D)supprimer le document du cache ou C)annuler (d,c) ?"
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Enregistrer le D)ocument ou le L)ien comme signet ou C) Annuler? (d,l,c) : "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Enregistrer le D)ocument dans les signets ou C) Annuler? (d,c) : "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Enregistrer le L)ien dans les signets ou C) Annuler? (l,c) : "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Les documents envoyés par POST ne peuvent être marqués d'un signet."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Impossible d'enregistrer les zones ou les liens d'un formulaire."
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Historique, Information, Menu et Références ne peuvent être des signets"
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Voulez-vous vraiment supprimer ce lien de vos signets ?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Adresse incorrecte."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Analyse historique ACTIVÉE (analyse minimale annulée)"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Analyse historique DÉSACTIVÉE (analyse minimale activée)"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Analyse historique ACTIVÉE (analyse de validation annulée)"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Analyse historique DÉSACTIVÉE (validation activée)"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Analyse minimale ACTIVÉE (et en cours)"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Analyse minimale DÉSACTIVÉE (analyse de validation en cours)"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Analyse minimale ACTIVÉE (mais l'analyse historique est en cours)"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Analyse minimale DÉSACTIVÉE (l'analyse historique est en cours)"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "Analyse tolérante sur les guillemets ACTIVÉE"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "Analyse tolérante sur les guillemets DÉSACTIVÉE"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Analyse du HTML à l'aide de TagSoup."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Analyse du HTML à l'aide de SortaSGML."
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Vous êtes déjà à la fin du document."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Vous êtes déjà au début du document."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Vous êtes déjà à la page %d du document."
+
+#  Needs context for LINK_ALREADY_CURRENT
+#  Prints "Enter link number to follow: "
+#  User enters 5
+#  Their cursor was on the 5th link, so it says:
+#   "Link number 5 already is current."
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Le lien %d est déjà le lien actif."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Vous êtes déjà au premier document."
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Il n'y a pas de lien au-dessus de cette ligne dans le document."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Il n'y a pas de lien en dessous de cette ligne dans le document."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Longueur maximale atteinte ; effacez du texte ou quittez le champ."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Vous n'êtes pas sur un bouton Envoyer ou un lien normal."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "Un seul bouton radio peut être coché à la fois."
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Pas de bouton d'envoi pour ce formulaire, soumettre ce seul champ texte ?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Voulez-vous retourner au document précédent ?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Utilisez <flèches> ou <tab> pour quitter le champ."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Entrez le texte. Déplacez-vous avec <flèches> ou <tab>."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Erreur HTML ! Aucune action définie pour le formulaire. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Erreur de code HTML ! Impossible de créer de fenêtre popup."
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Impossible de créer de fenêtre popup."
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Accès à une URL aléatoire désactivé."
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Accès à une URL non http invalidé."
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Vous ne pouvez accéder aux URL «%s»"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "URL à ouvrir : "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Éditer la commande \"Aller à URL\" en cours :"
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Éditer la commande \"Aller à URL\" précédente :"
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Éditer une commande \"Aller à URL\" précédente :"
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "Le document en cours contient des données POST."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Éditer l'URL de ce document :"
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Éditer l'URL relative au lien courant : "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "Vous ne pouvez pas éditer les URL de gestion de fichier."
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Entrez une requête de base de données : "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Entrez le mot à rechercher : "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Éditer la recherche en cours :"
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Éditer la recherche précédente :"
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Éditer une recherche précédente :"
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Faites <Ctrl-R> pour soumettre de nouveau la demande."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Éditer le raccourci courant :"
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Éditer le raccourci précédent :"
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Éditer un raccourci précédent :"
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Touche '%c' non configurée pour correspondre à un raccourci !"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Impossible de localiser le fichier-raccourci."
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Impossible d'ouvrir le fichier-raccourci."
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Erreur de lecture du fichier-raccourci."
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Mémoire insuffisante pour lire le fichier-raccourci."
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Mémoire insuffisante pour lire les tables de raccourcis !"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Aucun index n'est présentement disponible."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Voulez-vous vraiment aller à l'écran principal ?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "Vous êtes déjà à l'écran principal."
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Document non indexé - faites '/' pour chercher une séquence de texte."
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Aucun propriétaire pour ce fichier ; impossible d'envoyer un commentaire."
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Aucun propriétaire n'est défini.  Utiliser %s ?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Voulez-vous envoyer un commentaire ?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "Fonction de courrier désactivée ; impossible d'envoyer un commentaire"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "La commande 'e' (Éditer) est présentement désactivée."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "L'édition externe est présentement désactivée."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Erreur système - impossible d'obtenir l'état."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Aucun éditeur n'est défini."
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "La commande 'p' (Imprimer) est présentement désactivée."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "Aucun lien vers une barre d'outil ou une bannière."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Impossible d'ouvrir le fichier des URL parcourues."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Impossible d'ouvrir le fichier de parcours des URL trouvées."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Impossible d'ouvrir le fichier des URL rejetées."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Impossible d'ouvrir le fichier des URL parcourues erronées."
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "PARCOURS INTERROMPU"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Suivre le lien (ou aller à la page) numéro : "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Choisir le numéro d'option (ou de page) : "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "L'option %d est déjà l'option en cours."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Vous êtes déjà à la fin de cette liste d'options."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Vous êtes déjà au début de cette liste d'options."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Vous êtes déjà à la page %d de cette liste d'options."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Vous avez entré un numéro d'option non valide."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Erreur de code HTML ! Utiliser -trace pour le diagnostic. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Donnez le nom du fichier où sauvegarder."
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Impossible d'enregistrer les données dans le fichier -- Merci d'utiliser WWW localement."
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Impossible d'ouvrir le fichier temporaire !"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Impossible d'ouvrir le fichier de sortie ! Demande annulée."
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "L'exécution est désactivée."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Exécution désactivée pour ce fichier. Voir les paramètres (use %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Capacités d'exécution non compilées dans cette version."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Ce fichier ne peut être affiché sur votre terminal."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Ne peut être affiché sur votre terminal:  D) Télécharger ou C) Annuler  "
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D) Télécharger ou C) Annuler"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Annulation."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Récupération du fichier.  - VEUILLEZ ATTENDRE -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Entrez un nom de fichier : "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Éditez le nom de fichier précédent : "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Éditez un nom de fichier précédent : "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Entrez un nouveau nom de fichier : "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Le nom de fichier ne peut commencer avec un point."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Ce fichier existe déjà. Créer une nouvelle version ?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Ce fichier existe déjà. Remplacer ?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Écriture non autorisée."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "ERREUR - la commande de téléchargement est mal configurée."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Impossible de télécharger le fichier."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Lecture du répertoire..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Création des listes de répertoire..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Enregistrement..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Impossible d'éditer le fichier '%s'."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Impossible d'accéder au document !"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Impossible d'accéder au fichier."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Impossible d'accéder au répertoire."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Impossible de charger les données."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx ne peut (e)diter de fichiers WWW distants."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Ce champ ne peut être (e)dité par un éditeur externe."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Mauvaise règle."
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Nombre d'opérandes insuffisant."
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Vous n'êtes pas autorisé à éditer ce fichier."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Titre : "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Objet : "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Nom d'utilisateur : "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Mot de passe : "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx : nom d'utilisateur et mot de passe requis !"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx : mot de passe requis !"
+
+# LYMessages_en.h
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Effacer l'information d'autorisation de cette session?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Information d'autorisation effacée."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "L'autorisation a échouée. Réessayer ?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "support cgi désactivé."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Fonctionnalités Lynxcgi non compilées dans cette version"
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Désolé. Aucun moyen connu de convertir  %s en %s. "
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Impossible d'initialiser la connexion."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Impossible d'établir la connexion."
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Lien exécutable rejeté dû à une demande erronée."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Lien exécutable rejeté dû au caractère \"%c\"."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Lien exécutable rejeté dû à un chemin relatif ('../')"
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Lien exécutable rejeté dû à l'emplacement ou au chemin d'accès"
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "L'accès au courrier est désactivé."
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Seuls les fichiers/serveurs logés sur l'hôte local sont accessibles."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "L'accès Telnet est désactivé."
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Les spécifications de port Telnet sont désactivées."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "L'accès aux articles USENET est désactivé."
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "L'accès Rlogin est désactivé."
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "L'accès FTP est désactivé."
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Il n'y a aucune référence dans ce document."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Ce document ne renvoie qu'à des liens cachés."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Impossible d'ouvrir le fichier de commande."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Envoi des news annulé !"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Lancement de votre éditeur pour éditer un message"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Envoyer ce message ?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Adjoindre '%s'?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Envoi du message (news)..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Vous avez du courrier non lu. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** Vous avez du courrier. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Vous avez du nouveau courrier. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Insertion de fichier annulée !"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Mémoire insuffisante pour le fichier !"
+
+# WWW/Libary/Implementation/HTFile.c
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Impossible d'ouvrir le fichier en lecture."
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Le fichier n'existe pas."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "LE fichier n'existe pas - réessayer ou annuler :"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Le fichier n'est pas lisible."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Le fichier n'est pas lisible - réessayer ou annuler :"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Rien à insérer - le fichier est vide."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Demande d'enregistrement annulée !"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Demande de courrier annulée !"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Lecture de la source pré-analysée. Veuillez confirmer l'envoi par mail ?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Veuillez attendre..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Envoi du fichier (mail). Veuillez attendre..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "ERREUR - impossible d'envoyer le fichier."
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Le fichier représente %d écrans. Voulez-vous l'imprimer ?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Demande d'impression annulée !"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Pressez <Entrée> pour commencer : "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Pressez <Entrée> pour terminer : "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Le fichier représente %d pages. Voulez-vous l'imprimer ?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Assurez vous que votre imprimante est allumée. Pressez <Entrée> pour démarrer l'impression."
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "ERREUR - impossible d'allouer de l'espace pour le fichier !"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Impossible d'ouvrir le fichier temporaire."
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Impossible d'ouvrir le fichier d'options d'impression."
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Impression du fichier. Veuillez attendre..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Veuillez entrer une adresse de courriel valide : "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "ERREUR - l'imprimante est mal configurée."
+
+# src/LYMap.c
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "L'image réactive dans la réponse POST n'est pas disponible."
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Mauvaise requête d'image réactive (MAP) côté client."
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "L'image réactive (MAP) côté client n'est pas accessible."
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Aucune image réactive (MAP) disponible côté client."
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "Image réactive (MAP) non disponible côté client."
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "La hauteur d'écran doit être d'au moins 24 lignes pour le menu Options !"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "La hauteur d'écran doit être d'au moins 23 lignes pour le menu Options !"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "La hauteur d'écran doit être d'au moins 22 lignes pour le menu Options !"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Cette touche n'est active qu'en mode utilisateur avancé."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Type de contenu : %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Commande :"
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Commande inconnue ou ambiguë."
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Version "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " premier"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", analyse..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Permissions pour "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Choisir "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "majuscule"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " de la ligne d'option,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " pour enregistrer,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " à "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " ou "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " index"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " pour retourner à Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Accepter les changements"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Annuler les changements"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "<gauche> pour annuler les changements"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Enregistrer les options sur disque"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Pressez <Entrée> pour valider les données saisies."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Pressez <Entrée> pour valider la saisie, <suppr> pour les valeurs par défaut."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Valeur acceptée !"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Valeur acceptée ! NB : Lynx est configuré pour XWINDOWS !"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Valeur acceptée !  NB : Lynx n'est PAS configuré pour XWINDOWS !"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Vous ne pouvez pas choisir un autre éditeur !"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Impossible de régler la variable DISPLAY."
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Impossible d'effacer la variable DISPLAY."
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Changement du fichier de signets non autorisé !"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "Le terminal ne supporte pas l'affichage en couleur"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Votre terminal '%s' ne permet pas l'affichage couleur."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "Accès aux fichiers cachés désactivé."
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "La chaîne 'User-Agent' ne contient ni \"Lynx\" ni \"L_y_n_x\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Utilisez \"L_y_n_x\" ou \"Lynx\" dans le champ 'User-Agent' ou cela apparaîtra comme une erreur volontaire !"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "La modification du champ 'User-Agent' est interdite !"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Vous n'êtes pas autorisé à changer ce paramètre."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Enregistrement des options..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Options enregistrées"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Impossible d'enregistrer les options!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr "Pressez \"r\" pour retourner à Lynx. "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr "\">\" pour enregistrer, \"r\" pour retourner à Lynx."
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Touche quelconque pour changer la valeur, <Entrée> pour accepter."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Erreur de décompression du fichier temporaire !"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Schèma d'URL non supporté !"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Données URL non reconnues, utilisez SHOWINFO pour l'instant."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Limite des redirection de 10 URL atteinte."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "URL de redirection illégale reçue du serveur !"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Le serveur a demandé la redirection %d du contenu POST vers"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P)rocéder, obtenir par G)ET ou C)Annuler "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P)rocéder ou C) Annuler "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Redirection du contenu POST. P)rocéder, voir l' U)RL, G)ET ou C) Annuler"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Réacheminement du contenu POST. P)rocéder, voir l' U)RL ou C) Annuler"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Document FORM avec contenu POST. Envoyer de nouveau ?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Ré-envoyer le contenu POST vers %s ?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Liste depuis un document avec données POST. Recharger %s ?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Document de type POST, l'élément HEAD peut être mal compris. Procéder ?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Envoi par méthode POST, l'élément HEAD peut être mal compris. Procéder ?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Procéder sans identification de l'utilisateur par mot de passe ?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Procéder (%s) ?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Impossible d'envoyer par POST vers cet hôte."
+
+# src/LYGetFile.c
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "Méthode POST non supportée pour cette URL - données POST ignorées."
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Suppression des données POST..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Le document ne sera pas rechargé !"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Emplacement : "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' non trouvé(e) !"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Fichier signets par défaut"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "L'écran est trop petit ! (8x35 min)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Choisissez une destination ou entrez ^G pour annuler : "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Choisir classeur de signets, '=' pour le menu ou ^G pour annuler : "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "Copier le L)ien dans ce fichier de signets ou C) Annuler? (l,c) : "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Le support des signets multiples n'est pas disponible."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr "Sélection de signets (écran %d de %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Sélection signets"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Édition de signet : description, chemin de fichier (%d de 2)"
+
+# UNSURE
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Édition de signet : description et chemin"
+
+# UNSURE
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Lettre : "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Utilisez un chemin de fichier hors de votre répertoire personnel (syntaxe du shell)"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Utilisez un chemin de fichier hors de votre répertoire personnel"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Maximum de liens/page dépassé. Utilisez le défilement demi-page ou double lignes."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Aucun lien déjà visité n'est disponible."
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Mémoire insuffisante ! Abandon !"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Mémoire insuffisante ! Abandon !"
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Mémoire insuffisante !"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Gestionnaire de fichiers/répertoires non disponible"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "L'attribut HREF de l'élément BASE n'est pas une URL absolue."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "Il ne s'agit pas d'une URL absolue."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "Il ne s'agit pas d'une URL absolue."
+
+# NdT: This one is not clear...
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Vous envoyez un message non vide à :\n"
+" "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Vous envoyez un commentaire à :\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" En copie à :\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" En copies à :\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Faites <Ctrl-G> pour annuler l'envoi du message\n"
+
+# The following two messages have been put together to make:
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Entrez votre nom (ou laissez un blanc pour rester anonyme)\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Entrez une adresse de courrier ou un autre moyen\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " moyen de vous joindre si vous désirez une réponse.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Veuillez entrer le sujet du message.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Entrez une adresse de courrier pour la copie conforme.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Laissez en blanc si vous ne voulez pas de copie.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Veuillez revoir le corps du message :\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Pressez <Entrée> pour continuer :"
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Pressez <Entrée> pour restaurer : "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr "Faites <Ctrl-U> pour effacer la valeur par défaut.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Veuillez entrer votre message ci-après."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Une fois terminé, faites <Entrée> et tapez un point (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" sur une ligne, puis faites <Entrée> de nouveau."
+
+# NOTE:  I will have to get you an example text.
+#
+#  Example:
+#    csuite.chebucto.ns.ca cookie: Status=Active+Requests  Allow? (Y/N/Always/neVer
+#   ie <host> cookie: <key>=<value> Allow?
+# Ndt: Yes! The word order might be different...
+# NdT: Can you make the system accept the O, N, T, J commands?
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "cookie de %s : %.*s=%.*s  Accepter ? (Oui/Non/Toujours/Jamais)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Accepter un cookie au domaine non valide=%s pour '%s' ?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Accepter un chemin de cookie invalide=%s comme préfixe de '%s' ?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Acceptation du cookie"
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Rejet du cookie"
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Le conteneur de «cookies» est vide"
+
+#: LYMessages.c:705
+msgid "The Cache Jar is empty."
+msgstr "Le cache mémoire est vide."
+
+# --------
+# Missed strings 97-12-07
+# LYMessages_en.h (LYCookie.c)
+# NdT: What do they mean by "gobble up an entire domain"?
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Activer les liens pour englober les cookies ou les domaines entiers,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "ou pour changer les paramètres de permission pour un domaine."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Cookies jamais acceptés)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Cookies toujours acceptés)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Cookies acceptés sur demande)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Cookies persistants)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Pas de titre)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Aucun nom)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Aucune valeur)"
+
+#: LYMessages.c:716 src/LYOptions.c:2406
+msgid "None"
+msgstr "Aucun(e)"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Fin de session)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Supprimer ce cookie ?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Le cookie a été supprimé !"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Supprimer ce domaine vide ?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Le domaine a été supprimé !"
+
+# NdT: Does P)rompt trigger a confirmation screen?
+#  NOTE:  Option letters come from the capitalised letter in the option,
+#      so if introducing a new option make sure it has a translation.
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)Supprimer cookies du domaine ; régler permission : A)Toujours P)Demander V)Jamais C)Annuler ?"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)Supprimer domaine ; régler permission : A)Toujours P)Demander V)Jamais C)Annuler ?"
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Tous les cookies du domaine ont été supprimés !"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "A) Toujours accepter les cookies du domaine '%s'."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "V) Ne jamais accepter les cookies du domaine '%s'."
+
+# NdT: What does happen exatly when you chose P)rompt?
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "P) Demander avant d'accepter les cookies du domaine '%s'."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Supprimer tous les cookies de ce domaine ?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Tous les cookies ont été supprimés !"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Le port 19 n'est pas permis dans les URL."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Le port 25 n'est pas permis dans les URL."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Le port %lu n'est pas permis dans les URL."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "Champ \"port\" dans l'URL erroné."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Imbrication maximale d'éléments HTML atteinte."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Référence partielle erronée! Suppression des points (../)."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Échec d'ouverture du journal. Journalisation désactivée."
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Journal d'activité Lynx"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Aucun journal d'activité n'a été lancé pour cette session."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Le nombre maximum de fichiers temporaires a été atteint."
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "La valeur excède la taille du tampon ; réduire la fin."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Lignes finales modifiées combinées avec entête (champ de formulaire)"
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Répertoire"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Le parcours du répertoire n'est pas permis."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "L'accès sélectif n'est pas activé pour ce répertoire."
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat : l'analyse du répertoire a échoué."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Ce répertoire ne peut être lu."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Impossible d'accéder au fichier requis."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Impossible de trouver une représentation correcte pour la transmission."
+
+# WWW/Libary/Implementation/HTFile.c
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Impossible d'ouvrir le fichier pour décompression."
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Fichiers :"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Sous-répertoires :"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " répertoire"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "jusqu'à "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Le répertoire courant est "
+
+#. HTFTP.c
+#: LYMessages.c:765
+msgid "Symbolic Link"
+msgstr "Lien symbolique"
+
+#. HTGopher.c
+#: LYMessages.c:768
+msgid "No response from server!"
+msgstr "Pas de réponse du serveur !"
+
+#: LYMessages.c:769
+msgid "CSO index"
+msgstr "index CSO"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Ceci est un index interrogeable d'une base de données CSO.\n"
+
+#: LYMessages.c:771
+msgid "CSO Search Results"
+msgstr "Résultats de recherche CSO"
+
+#: LYMessages.c:772
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Echec de positionnement sur %s\n"
+
+#: LYMessages.c:773
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Appuyez sur la touche 's' et entrez les mots-clefs de recherche.\n"
+
+#: LYMessages.c:774
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Ceci est un index Gopher interrogeable.\n"
+
+#: LYMessages.c:775
+msgid "Gopher index"
+msgstr "Index Gopher"
+
+#: LYMessages.c:776
+msgid "Gopher Menu"
+msgstr "Menu Gopher"
+
+#: LYMessages.c:777
+msgid " Search Results"
+msgstr " Résultats de la recherche"
+
+#: LYMessages.c:778
+msgid "Sending CSO/PH request."
+msgstr "Envoi de la requête CSO/PH."
+
+#: LYMessages.c:779
+msgid "Sending Gopher request."
+msgstr "Envoi de la requête Gopher."
+
+#: LYMessages.c:780
+msgid "CSO/PH request sent; waiting for response."
+msgstr "Requête CSO/PH envoyée, attente de réponse."
+
+#: LYMessages.c:781
+msgid "Gopher request sent; waiting for response."
+msgstr "Requête Gopher envoyée, attente de réponse."
+
+#: LYMessages.c:782
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Merci d'entrer les mots clefs à rechercher.\n"
+
+#: LYMessages.c:783
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Les mots clefs saisis vous permettront de faire une recherche sur un"
+
+#: LYMessages.c:784
+msgid " person's name in the database.\n"
+msgstr " nom de personne dans la base de donnée.\n"
+
+#. HTNews.c
+#: LYMessages.c:787
+msgid "Connection closed ???"
+msgstr "Connexion fermée ???"
+
+#: LYMessages.c:788
+msgid "Cannot open temporary file for news POST."
+msgstr "Impossible d'ouvrir un fichier temporaire pour les articles de forums."
+
+#: LYMessages.c:789
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Ce client ne permet pas l'envoi de news avec SSL"
+
+#. HTStyle.c
+#: LYMessages.c:792
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Style %d '%s' SGML:%s. Police %s %.1f point.\n"
+
+#: LYMessages.c:794
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tAlign=%d, %d tabs. (%.0f avant, %.0f après)\n"
+
+#: LYMessages.c:795
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tType Tab =%d à %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:798
+msgid "Can't proceed without a username and password."
+msgstr "Impossible de procéder sans id-utilisateur et mot de passe."
+
+#: LYMessages.c:799
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Impossible de rejouer l'autorisation ! Contactez le Webmestre du serveur."
+
+#: LYMessages.c:800
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Impossible de redemander l'autorisation au mandataire (proxy) ; contacter le webmestre."
+
+#: LYMessages.c:801
+msgid "Retrying with proxy authorization information."
+msgstr "Nouvelle tentative d'envoi des informations d'autorisation au mandataire (proxy)."
+
+#: LYMessages.c:802
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "Erreur SSL : %s - Continuer?"
+
+#. HTWAIS.c
+#: LYMessages.c:805
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS : Message de retour trop grand."
+
+#: LYMessages.c:806
+msgid "Enter WAIS query: "
+msgstr "Entrez votre requête WAIS :"
+
+#. Miscellaneous status
+#: LYMessages.c:809
+msgid "Retrying as HTTP0 request."
+msgstr "Nouvel essai de requête HTTP0."
+
+#: LYMessages.c:810
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "%d octets transférés"
+
+#: LYMessages.c:811
+msgid "Data transfer complete"
+msgstr "Transfert de données terminé"
+
+#: LYMessages.c:812
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Erreur à la ligne %d de %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:815
+msgid "Address List Page"
+msgstr "Page de liste d'adresses"
+
+#: LYMessages.c:816
+msgid "Bookmark file"
+msgstr "Fichier de signets"
+
+#: LYMessages.c:817
+msgid "Configuration Definitions"
+msgstr "Définitions de configuration"
+
+#: LYMessages.c:818
+msgid "Cookie Jar"
+msgstr "Cache des «cookies»"
+
+#: LYMessages.c:819
+msgid "Current Key Map"
+msgstr "Configuration des touches"
+
+#: LYMessages.c:820
+msgid "File Management Options"
+msgstr "Options de gestion de fichier"
+
+#: LYMessages.c:821
+msgid "Download Options"
+msgstr "Options de téléchargement"
+
+#: LYMessages.c:822
+msgid "History Page"
+msgstr "Historique"
+
+#: LYMessages.c:823
+msgid "Cache Jar"
+msgstr "Mémoire cache"
+
+#: LYMessages.c:824
+msgid "List Page"
+msgstr "Page de la liste"
+
+#: LYMessages.c:825
+msgid "Lynx.cfg Information"
+msgstr "Informations sur Lynx.cfg"
+
+#: LYMessages.c:826
+msgid "Converted Mosaic Hotlist"
+msgstr "Liste de signets Mosaic convertie"
+
+#: LYMessages.c:827
+msgid "Options Menu"
+msgstr "Menu Options"
+
+#: LYMessages.c:828
+msgid "File Permission Options"
+msgstr "Options de permissions d'accès"
+
+#: LYMessages.c:829
+msgid "Printing Options"
+msgstr "Options d'impression"
+
+#: LYMessages.c:830
+msgid "Information about the current document"
+msgstr "Informations sur le document courant"
+
+#: LYMessages.c:831
+msgid "Your recent statusline messages"
+msgstr "Votre ligne d'état de messages récente"
+
+#: LYMessages.c:832
+msgid "Upload Options"
+msgstr "Options d'envoi de fichiers"
+
+#: LYMessages.c:833
+msgid "Visited Links Page"
+msgstr "Page des liens visités"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:836
+msgid "See also"
+msgstr "Voir aussi"
+
+#: LYMessages.c:837
+msgid "your"
+msgstr "votre"
+
+#: LYMessages.c:838
+msgid "for runtime options"
+msgstr "pour les options d'exécution"
+
+#: LYMessages.c:839
+msgid "compile time options"
+msgstr "options de compilation"
+
+#: LYMessages.c:840
+msgid "color-style configuration"
+msgstr "configuration en style coloré"
+
+#: LYMessages.c:841
+msgid "latest release"
+msgstr "dernière version"
+
+#: LYMessages.c:842
+msgid "pre-release version"
+msgstr "version pré finale"
+
+#: LYMessages.c:843
+msgid "development version"
+msgstr "version de développement"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:845
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Les données suivantes ont été créées lors de la construction automatique\n"
+"de cette copie de lynx. Lorsque vous nous informez d'un bug, merci \n"
+"d'inclure une copie de cette page."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:849
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Les données suivantes ont été utilisées comme des options de compilations\n"
+"configurées automatiquement lors de la compilation de cette version de Lynx."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:854
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "C)réer D)télécharger E)diter F)Menu  M)odifier R)Supprimer T)Marquer U)Envoyer\n"
+
+#: LYMessages.c:855
+msgid "Failed to obtain status of current link!"
+msgstr "Impossible d'obtenir l'état du lien courant !"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:858
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "URL spéciales validées uniquement dans le menu \"permissions\" !"
+
+#: LYMessages.c:862
+msgid "External support is currently disabled."
+msgstr "Le support externe est présentement inactif."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:866
+msgid "Changing working-directory is currently disabled."
+msgstr "Le changement de répertoire de travail est désactivé."
+
+#: LYMessages.c:867
+msgid "Linewrap OFF!"
+msgstr "Coupure des lignes désactivée"
+
+#: LYMessages.c:868
+msgid "Linewrap ON!"
+msgstr "Coupure des lignes activée"
+
+#: LYMessages.c:869
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Analyse des tables imbriquées activée. Rechargement..."
+
+#: LYMessages.c:870
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Analyse des tables imbriquées désactivée. Rechargement..."
+
+#: LYMessages.c:871
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Glissement de ligne désactivé (coupures de lignes activées)"
+
+#: LYMessages.c:872
+msgid "Trace not supported"
+msgstr "Traçage non supporté"
+
+#: LYMessages.c:793
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tIndentations : première=%.0f autres=%.0f, hauteur=%.1f desc=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:629
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Nom d'utilisateur pour '%s' à %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:897
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Ce client ne sait pas former les données d'autorisation du mandataire (proxy) dans ce schéma"
+
+#: WWW/Library/Implementation/HTAABrow.c:974
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Ce client ne sait pas former les données d'autorisation (proxy) pour le schéma"
+
+#: WWW/Library/Implementation/HTAABrow.c:1082
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Entête invalide '%s%s%s%s%s'"
+
+# WWW/Libary/Implementation/HTAABrow.c
+#: WWW/Library/Implementation/HTAABrow.c:1184
+msgid "Proxy authorization required -- retrying"
+msgstr "Autorisation du mandataire (proxy) requise - nouvelle tentative"
+
+#: WWW/Library/Implementation/HTAABrow.c:1242
+msgid "Access without authorization denied -- retrying"
+msgstr "Accès non autorisé refusé - nouvelle tentative"
+
+#: WWW/Library/Implementation/HTAccess.c:689
+msgid "Access forbidden by rule"
+msgstr "Accès interdit par une règle"
+
+# WWW/Libary/Implementation/HTAccess.c
+#: WWW/Library/Implementation/HTAccess.c:784
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Document avec contenu POST non trouvé dans l'antémémoire. Réessayer ?"
+
+#: WWW/Library/Implementation/HTAccess.c:939
+msgid "Loading failed, use a previous copy."
+msgstr "Echec de chargement, utilisation d'une copie précédente."
+
+#: WWW/Library/Implementation/HTAccess.c:1048 src/GridText.c:8513
+msgid "Loading incomplete."
+msgstr "Chargement incomplet."
+
+#: WWW/Library/Implementation/HTAccess.c:1079
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess : socket ou numéro de fichier renvoyé par une routine de chargement obsolète !\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess : Erreur interne. Merci de contacter lynx-dev@nongnu.org !\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1082
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess : L'état retourné était : %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1088 src/LYMainLoop.c:7757
+msgid "Can't Access"
+msgstr "Accès impossible"
+
+#: WWW/Library/Implementation/HTAccess.c:1096
+msgid "Unable to access document."
+msgstr "Impossible d'accéder au document."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Mot de passe pour l'utilisateur %s@%s :"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Impossible d'établir une connexion à l'hôte FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "ferme le socket maître"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "slot pour le socket maître"
+
+#: WWW/Library/Implementation/HTFTP.c:2976
+msgid "Receiving FTP directory."
+msgstr "Réception du répertoire FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:3112
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "%d octets transférés (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3467
+msgid "connect for data"
+msgstr "connection d'échange de données"
+
+#: WWW/Library/Implementation/HTFTP.c:4128
+msgid "Receiving FTP file."
+msgstr "Réception du fichier FTP."
+
+#: WWW/Library/Implementation/HTFinger.c:276
+msgid "Could not set up finger connection."
+msgstr "Impossible d'établir une connection finger."
+
+#: WWW/Library/Implementation/HTFinger.c:323
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Impossible de lire les données (pas de nom de site dans l'URL finger)"
+
+#: WWW/Library/Implementation/HTFinger.c:329
+msgid "Invalid port number - will only use port 79!"
+msgstr "Numéro de port invalide - seul le port 79 sera utilisé."
+
+#: WWW/Library/Implementation/HTFinger.c:395
+msgid "Could not access finger host."
+msgstr "Impossible d'atteindre l'hôte finger."
+
+#: WWW/Library/Implementation/HTFinger.c:403
+msgid "No response from finger server."
+msgstr "Pas de réponses du serveur finger."
+
+#: WWW/Library/Implementation/HTNews.c:425
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Nom d'utilisateur pour l'hôte de forums '%s' :"
+
+#: WWW/Library/Implementation/HTNews.c:478
+msgid "Change username?"
+msgstr "Modifier le nom d'utilisateur ?"
+
+#: WWW/Library/Implementation/HTNews.c:482
+msgid "Username:"
+msgstr "Nom d'utilisateur :"
+
+#: WWW/Library/Implementation/HTNews.c:507
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Mot de passe pour l'hôte de forums '%s' :"
+
+#: WWW/Library/Implementation/HTNews.c:590
+msgid "Change password?"
+msgstr "Changer le mot de passe ?"
+
+#: WWW/Library/Implementation/HTNews.c:1710
+#, c-format
+msgid "No matches for: %s"
+msgstr "Pas de correspondance pour %s"
+
+#: WWW/Library/Implementation/HTNews.c:1760
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Par d'article dans ce groupe.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1772
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Pas d'article dans cet intervalle.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1785
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  Articles %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1808
+msgid "Earlier articles"
+msgstr "Articles anciens"
+
+#: WWW/Library/Implementation/HTNews.c:1821
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Il y a environ %d articles accessibles dans %s, les ID suivent :\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1883
+msgid "All available articles in "
+msgstr "Tout les articles accessibles dans "
+
+#: WWW/Library/Implementation/HTNews.c:2097
+msgid "Later articles"
+msgstr "Articles récents"
+
+#: WWW/Library/Implementation/HTNews.c:2120
+msgid "Post to "
+msgstr "Postez vers "
+
+#: WWW/Library/Implementation/HTNews.c:2341
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Ce client ne supporte pas les URLs SNEWS"
+
+#: WWW/Library/Implementation/HTNews.c:2548
+msgid "No target for raw text!"
+msgstr "Aucune cible pour du texte brut !"
+
+#: WWW/Library/Implementation/HTNews.c:2578
+msgid "Connecting to NewsHost ..."
+msgstr "Connection à l'hôte de forums..."
+
+#: WWW/Library/Implementation/HTNews.c:2630
+#, c-format
+msgid "Could not access %s."
+msgstr "Impossible d'accéder à %s."
+
+#: WWW/Library/Implementation/HTNews.c:2736
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Impossible de lire les informations. Le serveur de nouvelles %.20s à répondu : %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2740
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Impossible de lire les informations, réponse vide de l'hôte %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2944
+msgid "Reading list of available newsgroups."
+msgstr "Lecture de la liste des forums disponibles."
+
+#: WWW/Library/Implementation/HTNews.c:2965
+msgid "Reading list of articles in newsgroup."
+msgstr "Lecture de la liste des articles du forum."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2971
+msgid "Reading news article."
+msgstr "Lecture d'articles de forums."
+
+#: WWW/Library/Implementation/HTNews.c:3001
+msgid "Sorry, could not load requested news."
+msgstr "Désolé, impossible de charger les nouvelles demandées."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "L'adresse a un numéro de port non valide"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "La longueur de l'adresse semble invalide"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Impossible de localiser l'hôte distant %s"
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Nom d'hôte invalide : %s"
+
+# First %s will be FTP, HTTP or other protocol and second %s will be hostname
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Connexion %s à %s "
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "échec de socket."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "échec de socket : famille %d adresse %s port %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Impossible d'établir une connection non bloquante."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "Echec de connection (trop d'essais successifs)"
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Impossible de rétablir le mode bloquant sur le slot."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+msgid "Socket read failed (too many tries)."
+msgstr "Echec de lecture réseau (trop d'essais)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "retour d'appel SSL : %s, preverify_ok=%d, ssl_okay=%d"
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "L'adresse contient un nom d'utilisateur : %s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Certificat émis par: %s"
+
+#: WWW/Library/Implementation/HTTP.c:643
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Ce client n'est pas conçu pour traiter les URL HTTPS."
+
+#: WWW/Library/Implementation/HTTP.c:668
+msgid "Unable to connect to remote host."
+msgstr "Impossible d'établir une connexion à l'hôte distant."
+
+# First %s will be FTP, HTTP or other protocol and second %s will be hostname
+#: WWW/Library/Implementation/HTTP.c:692
+msgid "Retrying connection without TLS."
+msgstr "Tentative de reconnection sans TLS."
+
+#: WWW/Library/Implementation/HTTP.c:737
+msgid "no issuer was found"
+msgstr "l'émetteur n'a pas été trouvé"
+
+#: WWW/Library/Implementation/HTTP.c:739
+msgid "issuer is not a CA"
+msgstr "l'émetteur n'est pas une autorité CA"
+
+#: WWW/Library/Implementation/HTTP.c:741
+msgid "the certificate has no known issuer"
+msgstr "le certificat n'a pas d'émetteur connu"
+
+#: WWW/Library/Implementation/HTTP.c:743
+msgid "the certificate has been revoked"
+msgstr "le certificat a été révoqué"
+
+#: WWW/Library/Implementation/HTTP.c:745
+msgid "the certificate is not trusted"
+msgstr "le certificat n'est pas approuvé"
+
+#: WWW/Library/Implementation/HTTP.c:821
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Connection vérifiée à %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:869 WWW/Library/Implementation/HTTP.c:911
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Connection vérifiée à %s (sujet=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:941
+msgid "Can't find common name in certificate"
+msgstr "Impossible de trouver le nom usuel dans le certificat"
+
+#: WWW/Library/Implementation/HTTP.c:944
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "erreur SSL : hôte (%s) <> cert(%s) - Continuer ?"
+
+#: WWW/Library/Implementation/HTTP.c:957
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "Connection NON vérifiée à %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:966
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Connection HTTP sécurisée %d-bit %s (%s)"
+
+#: WWW/Library/Implementation/HTTP.c:1433
+msgid "Sending HTTP request."
+msgstr "Envoi de la requête HTTP."
+
+#: WWW/Library/Implementation/HTTP.c:1472
+msgid "Unexpected network write error; connection aborted."
+msgstr "Erreur d'écriture réseau inattendue : connection interrompue."
+
+#: WWW/Library/Implementation/HTTP.c:1478
+msgid "HTTP request sent; waiting for response."
+msgstr "Requête HTTP envoyée. Attente de réponse."
+
+# END of Permit FORM
+# More progress strings follow
+#: WWW/Library/Implementation/HTTP.c:1549
+msgid "Unexpected network read error; connection aborted."
+msgstr "Erreur de lecture inattendue ; connexion interrompue."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1744
+msgid "Got unexpected Informational Status."
+msgstr "Réception d'information de statut inattendue."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1778
+msgid "Request fulfilled.  Reset Content."
+msgstr "Requête complétée. Restauration du contenu."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1894
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Réception inattendue d'un état \"non modifié\" 304."
+
+#: WWW/Library/Implementation/HTTP.c:1957
+msgid "Redirection of POST content requires user approval."
+msgstr "La redirection d'un contenu POST nécessite l'accord de l'utilisateur."
+
+#: WWW/Library/Implementation/HTTP.c:1972
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Contenu POST. La redirection permanente est traitée comme temporaire.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2014
+msgid "Retrying with access authorization information."
+msgstr "Nouvel essai avec information d'autorisation d'accès."
+
+#: WWW/Library/Implementation/HTTP.c:2026
+msgid "Show the 401 message body?"
+msgstr "Visualiser le corps du message 401 ?"
+
+#: WWW/Library/Implementation/HTTP.c:2069
+msgid "Show the 407 message body?"
+msgstr "Afficher le corps du message 407 ?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2169
+msgid "Unknown status reply from server!"
+msgstr "Réponse d'état inconnue reçue du serveur !"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "session distante %s :"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Connection au serveur WAIS impossible."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Impossible d'ouvrir une connection WAIS en lecture."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Le code de diagnostic est "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Index "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " contient les %d éléments suivants %s relatifs à \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "La première mention après chaque entrée est son score relatif"
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "la seconde est le nombre de ligne dans l'élément."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr "(mauvais nom de fichier)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(mauvais id de doc)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(enr. d'entête abrégé, impossible d'afficher)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"enr. d'entête long, impossible d'afficher\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Enregistrement de texte\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Enregistrement d'entête, affichage impossible\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Enregistrement du code, affichage impossible\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Erreur de syntaxe dans l'URL WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (Index WAIS) "
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "Index WAIS : "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Ceci est un lien pour chercher l' "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr "Index WAIS.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Entrez la commande de recherche (s) puis les mots à rechercher.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (dans "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "Recherche WAIS de \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" dans: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS : requête trop grande."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Recherche dans la base de donnée WAIS..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Recherche interrompue."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Impossible de convertir le format du document WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS : requête trop longue."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Rapatriement du document WAIS...."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Aucun texte n'a été retourné !\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:299
+msgid " NOT GIVEN in source file; "
+msgstr "NON donné dans le fichier source ;"
+
+#: WWW/Library/Implementation/HTWSRC.c:322
+msgid " WAIS source file"
+msgstr "fichier source WAIS"
+
+#: WWW/Library/Implementation/HTWSRC.c:329
+msgid " description"
+msgstr " description"
+
+#: WWW/Library/Implementation/HTWSRC.c:339
+msgid "Access links"
+msgstr "Accès aux liens"
+
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid "Direct access"
+msgstr "Accès direct"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:363
+msgid " (or via proxy server, if defined)"
+msgstr " (ou via un serveur mandataire proxy, si défini)"
+
+#: WWW/Library/Implementation/HTWSRC.c:378
+msgid "Maintainer"
+msgstr "Mainteneur"
+
+#: WWW/Library/Implementation/HTWSRC.c:386
+msgid "Host"
+msgstr "Hôte"
+
+# src/GridText.c
+#: src/GridText.c:704
+msgid "Memory exhausted, display interrupted!"
+msgstr "Mémoire insuffisante ; interruption de l'affichage."
+
+#: src/GridText.c:709
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Mémoire saturée, interruption du transfert !"
+
+#: src/GridText.c:3663
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** MÉMOIRE INSUFFISANTE ***"
+
+#: src/GridText.c:6057 src/GridText.c:6064 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "champ ou lien inconnu"
+
+#: src/GridText.c:6073
+msgid "text entry field"
+msgstr "champ de saisie texte"
+
+#: src/GridText.c:6076
+msgid "password entry field"
+msgstr "champ d'entrée du mot de passe"
+
+#: src/GridText.c:6079
+msgid "checkbox"
+msgstr "case à cocher"
+
+#: src/GridText.c:6082
+msgid "radio button"
+msgstr "bouton d'option"
+
+#: src/GridText.c:6085
+msgid "submit button"
+msgstr "bouton Envoyer"
+
+#: src/GridText.c:6088
+msgid "reset button"
+msgstr "bouton RAZ"
+
+#: src/GridText.c:6091
+msgid "popup menu"
+msgstr "menu popup"
+
+#: src/GridText.c:6094
+msgid "hidden form field"
+msgstr "champ de formulaire caché"
+
+#: src/GridText.c:6097
+msgid "text entry area"
+msgstr "zone saisie de texte"
+
+#: src/GridText.c:6100
+msgid "range entry field"
+msgstr "champ de saisie (intervalle)"
+
+#: src/GridText.c:6103
+msgid "file entry field"
+msgstr "champ de saisie (fichier)"
+
+#: src/GridText.c:6106
+msgid "text-submit field"
+msgstr "champ d'envoi (texte)"
+
+#: src/GridText.c:6109
+msgid "image-submit button"
+msgstr "bouton d'envoi (image)"
+
+#: src/GridText.c:6112
+msgid "keygen field"
+msgstr "champ «keygen»"
+
+#: src/GridText.c:6115
+msgid "unknown form field"
+msgstr "champ de formulaire inconnu"
+
+# WWW/Libary/Implementation/HTFile.c
+#: src/GridText.c:10245
+msgid "Can't open file for uploading"
+msgstr "Impossible d'ouvrir le fichier pour envoi."
+
+#: src/GridText.c:11404
+#, c-format
+msgid "Submitting %s"
+msgstr "Envoi de %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12457
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Problème détecté : structure TextAnchor corrompue - abandon suggéré !"
+
+#. don't show previous state
+#: src/GridText.c:12594
+msgid "Wrap lines to fit displayed area?"
+msgstr "Couper les lignes pour remplir la zone d'affichage ?"
+
+#: src/GridText.c:12646
+msgid "Very long lines have been wrapped!"
+msgstr "Les très longues lignes ont été coupées !"
+
+#: src/GridText.c:13151
+msgid "Very long lines have been truncated!"
+msgstr "Les très longues lignes ont été tronquées !"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "octets"
+
+# WWW/Library/Implementation/HTFormat.c
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "Données lues : %s"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Données lues : %s de %s"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/sec"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (bloqué pour %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", temps estimé ETA : %s"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Pressez 'z' pour annuler)"
+
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+# The French translations for Lynx were created by the
+# Chebucto Project.
+# Contributors include:
+# Chris Maxwell (CM)
+# David Potter
+# David Trueman (NdT)
+# * * * * * * * * * *
+# J.E. Spath <jspath @ bcpl . net> wedged this into Lynx
+# started: Wed Sep  2 20:22:45 EDT 1998
+#
+# , fuzzy
+# MUST GO AND FIND NdT= to address problems.
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "oui"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "non"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr "O/N/T/J"
+
+#: src/HTML.c:5912
+msgid "Description:"
+msgstr "Description :"
+
+#: src/HTML.c:5917
+msgid "(none)"
+msgstr "(aucun(e))"
+
+#: src/HTML.c:5921
+msgid "Filepath:"
+msgstr "Chemin de fichier :"
+
+#: src/HTML.c:5927
+msgid "(unknown)"
+msgstr "(inconnu)"
+
+#: src/HTML.c:7352
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Le document ne contient que des liens cachés. Utiliser L)iste."
+
+#: src/HTML.c:7851
+msgid "Source cache error - disk full?"
+msgstr "Erreur de cache - disque plein ?"
+
+#: src/HTML.c:7864
+msgid "Source cache error - not enough memory!"
+msgstr "Erreur de cache - pas assez de mémoire !"
+
+#: src/LYBookmark.c:167
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Ce fichier est une représentation HTML du fichier de signets de X Mosaic.\n"
+"     Les liens désuets ou non valides peuvent être supprimés au moyen de la\n"
+"     commande de suppression de signet, habituellement la touche 'R' mais les\n"
+"     touches peuvent avoir été reconfigurées par vous ou l'administrateur système."
+
+#: src/LYBookmark.c:374
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Vous pouvez effacer des liens avec la touche 'R'<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:377
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Vous pouvez supprimer des liens avec la commande de suppression de signet,\n"
+"     habituellement la touche 'R' mais les touches peuvent avoir été\n"
+"     reconfigurées par vous ou par votre administrateur système."
+
+#: src/LYBookmark.c:381
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Le fichier peut aussi être édité au moyen d'un éditeur de texte standard.\n"
+"     Vous pouvez supprimer les liens désuets/non valides ou modifier l'ordre."
+
+#: src/LYBookmark.c:384
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Note: si vous éditez ce fichier, ne changez\n"
+"      pas la structure des lignes et n'\n"
+"      ajoutez pas de balise HTML.\n"
+"      Soyez sûr que chaque signet est sur une seule ligne."
+
+#: src/LYBookmark.c:680
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Le fichier pourrait être récupérable depuis %s lors de cette session"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Voulez-vous exécuter \"%s\" ?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Impossible d'accéder au script cgi"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Bon conseil"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Un excellent serveur http pour VMS est disponible via"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "ce lien"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Il offre un soutien <b>hors pair</b> pour les scripts CGI.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Sortie par interruption :"
+
+#: src/LYCookie.c:2477
+msgid "(from a previous session)"
+msgstr "(d'une session précédente)"
+
+#: src/LYCookie.c:2538
+msgid "Maximum Gobble Date:"
+msgstr "Date d'obtention maximale :"
+
+#: src/LYCookie.c:2577
+msgid "Internal"
+msgstr "Interne"
+
+#: src/LYCookie.c:2578
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "erreur cookie_domain_flag_set, fin du programme"
+
+#: src/LYCurses.c:1101
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Défaut d'initialisation du terminal ; type de terminal inconnu ?"
+
+#: src/LYCurses.c:1559
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1563
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Il faut utiliser un terminal vt100, 200, etc. avec ce programme."
+
+#: src/LYCurses.c:1612
+msgid "Your Terminal type is unknown!"
+msgstr "Votre type de terminal n'est pas reconnu."
+
+#: src/LYCurses.c:1613
+msgid "Enter a terminal type:"
+msgstr "Entrez un type de terminal :"
+
+#: src/LYCurses.c:1627
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TYPE DE TERMINAL RÉGLÉ À"
+
+#: src/LYCurses.c:2139
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Une erreur fatale s'est produite dans %s Ver. %s\n"
+
+#: src/LYCurses.c:2142
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Merci de prévenir votre administrateur système pour confirmer un bug.\n"
+"Si le bug est confirmé, merci de prévenir la liste de diffusion lynx-dev.\n"
+"Les rapports de bugs devraient être des descriptions concises de la\n"
+"commande et/ou de l'URL en cause, précisant le système d'exploitation\n"
+"et sa version, l'implémentation TCP/IP, le TRACEBACK si il a pu être\n"
+"capturé ainsi que toute information pouvant s'avérer utile.\n"
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Erreur en lançant l'éditeur, %s"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Editeur interrompu par signal"
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "L'éditeur a retourné un code d'erreur %s"
+
+#: src/LYDownload.c:506
+msgid "Downloaded link:"
+msgstr "Lien téléchargé :"
+
+#: src/LYDownload.c:511
+msgid "Suggested file name:"
+msgstr "Nom de fichier suggéré :"
+
+#: src/LYDownload.c:516
+msgid "Standard download options:"
+msgstr "Options standard de téléchargement :"
+
+#: src/LYDownload.c:517
+msgid "Download options:"
+msgstr "Options de téléchargement :"
+
+#: src/LYDownload.c:533
+msgid "Save to disk"
+msgstr "Enregistrement sur disque"
+
+#: src/LYDownload.c:547
+msgid "View temporary file"
+msgstr "Voir le fichier temporaire"
+
+#: src/LYDownload.c:554
+msgid "Save to disk disabled."
+msgstr "Enregistrement sur disque désactivé."
+
+#: src/LYDownload.c:558 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Ajouts locaux :"
+
+#: src/LYDownload.c:569 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Aucun nom donné"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Vous avez choisi :"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(aucune adresse)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (interne)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (était interne)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (de l'Historique)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Vous avez consulté (données POST, références et signets exclus) :"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Pas encore de message)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Pointeur non valide détecté."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "Séquence :"
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Pointeur :"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Nom de fichier :"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Nombre de lignes :"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Fuite de mémoire détectée."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Contient :"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Taille (octets) :"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "réallocation(s) :"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Total de fuites de mémoire pour cette exécution :"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr "Pic d'allocation mémoire"
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "Octets alloués"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr "Total des réservations \"malloc\""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr "Total des libérations \"free\""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Références dans"
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "ce document"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Liens visibles :"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Liens cachés :"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Références"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Liens visibles"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Impossible d'obtenir l'état de '%s'."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "L'élément sélectionné n'est ni un fichier ni un répertoire. Requête ignorée."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Opération (%s) impossible suite à une erreur système !"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Echec de %s dû probablement à une erreur système."
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "destruction de %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr "%s atteint"
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "déplacement de %s vers %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Le répertoire existe déjà. Requête ignorée."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Ce fichier existe déjà. Requête ignorée."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Ce nom est déjà utilisé. Requête ignorée."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "Destination possédée par un autre propriétaire. Requête ignorée."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "La destination n'est pas un répertoire valide. Requête ignorée."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Détruire tous les répertoires et fichiers marqués ?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Entrer un nouvel emplacement pour éléments marqués : "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Chemin trop long"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Source et destination au même endroit ; demande ignorée !"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Entrer un nouveau nom pour le répertoire : "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Entrer un nouveau nom pour le fichier : "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Caractère séparateur de fichier illégal ; demande non traitée."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Entrez le nouvel emplacement du répertoire : "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Entrez la nouvelle localisation du fichier :"
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Echec. Impossible de trouver les séparateurs dans le chemin"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "La source et la destination sont similaires. Requête ignorée."
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Modifier nom, emplacement ou permission (n, l ou p) : "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Modifier le nom ou l'emplacement (n ou l) : "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Fonctionnalité non encore disponible."
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Entrez le nom du fichier à créer : "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Réacheminement \"//\" non autorisé ; demande non traitée."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Entrer le nom du nouveau répertoire : "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Créer un fichier ou un répertoire (f ou d) :"
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Supprimer le répertoire '%s' ?"
+
+#: src/LYLocal.c:1169
+msgid "Remove directory?"
+msgstr "Supprimer le répertoire ?"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Supprimer le fichier '%s' ?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Supprimer le fichier ?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Supprimer le lien symbolique '%s' ?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Supprimer le lien symbolique ?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Désolé, impossible d'accepter les fichiers non UNIX pour le moment."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Impossible d'ouvrir le fichier de permissions."
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Spécifier les permissions d'accès ci-après :"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Propriétaire :"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Groupe"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Autres :"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "formulaire pour permission"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Format de mode non valide."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Format de syntaxe non valide."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Attention : le fichier \"UUDécodé\" sera dans le répertoire où vous avez lancé Lynx."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "pointeur sur URL nul"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Exécution : %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Exécution de la commande système. Veuillez patienter."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Le répertoire courant :"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "La sélection courante :"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Il n'y a rien de sélectionné."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "élément marqué :"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "éléments marqués :"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Nom de fichier non valide ; demande non traitée."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Installation dans le répertoire choisi non permise."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "L'élément sélectionné n'est pas un répertoire valide. Requête ignorée."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Un instant svp..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr "Erreur lors de la mise en place des arguments d'installation"
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Source et destination identiques : %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Déjà dans le répertoire destination : %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Installation terminée"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "L'URL ou la liste temporaires seraient trop longues."
+
+#: src/LYMail.c:523
+msgid "Sending"
+msgstr "Envoi"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Le lien   %s :?: %s \n"
+
+#: src/LYMail.c:1011
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "appelé «%s»\n"
+
+#: src/LYMail.c:1012
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "dans le fichier «%s» appelé «%s»\n"
+
+#: src/LYMail.c:1013
+msgid "was requested but was not available."
+msgstr "a été demandé mais n'est pas disponible."
+
+#: src/LYMail.c:1014
+msgid "Thought you might want to know."
+msgstr "Pour votre information."
+
+#: src/LYMail.c:1016
+msgid "This message was automatically generated by"
+msgstr "Ce message est généré automatiquement par"
+
+#: src/LYMail.c:1731
+msgid "No system mailer configured"
+msgstr "Aucun agent de courrier sortant"
+
+#: src/LYMain.c:1001
+msgid "No Winsock found, sorry."
+msgstr "Pas de Winsock trouvée, désolé."
+
+#: src/LYMain.c:1198
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "vous DEVEZ définir une zone TMP ou TEMP valide !"
+
+#: src/LYMain.c:1251 src/LYMainLoop.c:5051
+msgid "No such directory"
+msgstr "Pas de tel répertoire"
+
+#: src/LYMain.c:1436
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Le fichier de configuration \"%s\" n'est pas disponible.\n"
+"\n"
+
+# src/LYMain.c
+#: src/LYMain.c:1446
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Jeux de caractères Lynx non déclaré.\n"
+"\n"
+
+#: src/LYMain.c:1475
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Plan d'édition Lynx non déclaré.\n"
+"\n"
+
+#: src/LYMain.c:1551
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Le fichier Lynx \"%s\" n'est pas disponible.\n"
+"\n"
+
+#: src/LYMain.c:1626
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "%d caractères ignorés sur l'entrée standard.\n"
+
+#: src/LYMain.c:1628
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Utilisez \"-stdin\" or \"-\" pour préciser la gestion du flux d'entrée.\n"
+
+#: src/LYMain.c:1776
+msgid "Warning:"
+msgstr "Attention :"
+
+#: src/LYMain.c:2341
+msgid "persistent cookies state will be changed in next session only."
+msgstr "L'état des cookies persistants sera changé au cours de la prochaine session seulement."
+
+#: src/LYMain.c:2586 src/LYMain.c:2631
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx : jeu de caractères=%s inconnu et ignoré\n"
+
+#: src/LYMain.c:3150
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Version %s (%s)"
+
+#: src/LYMain.c:3188
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Compilé le %s %s %s\n"
+
+#: src/LYMain.c:3210
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "Copyrights :  Lynx Developers Group,"
+
+#: src/LYMain.c:3211
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "l'université du Kansas, le CERN, et d'autres contributeurs."
+
+#: src/LYMain.c:3212
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Distribué sous licence GNU General Public License (version 2)."
+
+#: src/LYMain.c:3213
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Voyez http://lynx.isc.org/ et d'aide en ligne pour plus d'information."
+
+#: src/LYMain.c:4032
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "Utilisation : %s [options] [fichier]\n"
+
+#: src/LYMain.c:4033
+#, c-format
+msgid "Options are:\n"
+msgstr "Les options sont :\n"
+
+#: src/LYMain.c:4332
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s : Option non valide : %s\n"
+
+#: src/LYMainLoop.c:571
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Erreur interne : lien pour la souris %d non valide"
+
+#: src/LYMainLoop.c:691 src/LYMainLoop.c:5073
+msgid "A URL specified by the user"
+msgstr "Une URL spécifiée par l'utilisateur"
+
+#: src/LYMainLoop.c:1150
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Type d'encodage \"multipart/form-data\" non supporté. Envoi impossible."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3082
+msgid "Help Screen"
+msgstr "Ecran d'Aide"
+
+#: src/LYMainLoop.c:3203
+msgid "System Index"
+msgstr "Index système"
+
+#: src/LYMainLoop.c:3562 src/LYMainLoop.c:5297
+msgid "Entry into main screen"
+msgstr "Entrée dans l'écran principal"
+
+#: src/LYMainLoop.c:3820
+msgid "No next document present"
+msgstr "Aucun document suivant"
+
+#: src/LYMainLoop.c:4116
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "jeu de caractères pour ce document spécifié explicitement, désolé..."
+
+#: src/LYMainLoop.c:5029
+msgid "cd to:"
+msgstr "changer de répertoire vers :"
+
+#: src/LYMainLoop.c:5054
+msgid "A component of path is not a directory"
+msgstr "Une partie du chemin n'est pas un répertoire."
+
+#: src/LYMainLoop.c:5057
+msgid "failed to change directory"
+msgstr "échec de changement de répertoire"
+
+#: src/LYMainLoop.c:6229
+msgid "Reparsing document under current settings..."
+msgstr "Relecture du document avec les paramètres actuels..."
+
+#: src/LYMainLoop.c:6521
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Erreur fatale - impossible d'ouvrir le fichier de sortie %s\n"
+
+#: src/LYMainLoop.c:6858
+msgid "TABLE center enable."
+msgstr "centrage des TABLEs activé."
+
+#: src/LYMainLoop.c:6861
+msgid "TABLE center disable."
+msgstr "centrage des TABLEs désactivé."
+
+#: src/LYMainLoop.c:6938
+msgid "Current URL is empty."
+msgstr "URL courante vide."
+
+#: src/LYMainLoop.c:6940 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "Echec de copie dans le presse-papiers."
+
+#: src/LYMainLoop.c:6942
+msgid "Document URL put to clipboard."
+msgstr "URL du document copiée dans le presse-papiers."
+
+#: src/LYMainLoop.c:6944
+msgid "Link URL put to clipboard."
+msgstr "URL du lien copiée dans le presse-papiers."
+
+#: src/LYMainLoop.c:6971
+msgid "No URL in the clipboard."
+msgstr "Aucune URL dans le presse-papiers."
+
+#: src/LYMainLoop.c:7642 src/LYMainLoop.c:7812
+msgid "-index-"
+msgstr "-index-"
+
+#: src/LYMainLoop.c:7752
+msgid "lynx: Can't access startfile"
+msgstr "lynx : accès impossible au fichier de départ"
+
+#: src/LYMainLoop.c:7764
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx : fichier de départ introuvable ou n'est pas de type \"text/html\" ou \"text/plain\""
+
+#: src/LYMainLoop.c:7765
+msgid "      Exiting..."
+msgstr "      Sortie..."
+
+#: src/LYMainLoop.c:7806
+msgid "-more-"
+msgstr "-suite-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Vous postez à : "
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Veuillez fournir votre courriel ou éditer l'entête \"From:\" :\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Veuillez fournir ou éditer l'entête \"Subject:\" (Objet) :\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Veuillez fournir ou éditer l'entête \"Organization:\" (Organisme) :\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+"Veuillez entrer votre message ci-après :"
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Le message n'a pas de texte original !"
+
+#: src/LYOptions.c:768
+msgid "review/edit B)ookmarks files"
+msgstr "B) Voir/Éditer les signets "
+
+#: src/LYOptions.c:770
+msgid "B)ookmark file: "
+msgstr "B) Fichier de signets : "
+
+#: src/LYOptions.c:2131 src/LYOptions.c:2138
+msgid "ON"
+msgstr "ON"
+
+#. verbose_img variable
+#: src/LYOptions.c:2132 src/LYOptions.c:2137 src/LYOptions.c:2289 src/LYOptions.c:2300
+msgid "OFF"
+msgstr "OFF"
+
+#: src/LYOptions.c:2133
+msgid "NEVER"
+msgstr "JAMAIS"
+
+#: src/LYOptions.c:2134
+msgid "ALWAYS"
+msgstr "TOUJOURS"
+
+#: src/LYOptions.c:2150 src/LYOptions.c:2281
+msgid "ignore"
+msgstr "ignorer"
+
+#: src/LYOptions.c:2151
+msgid "ask user"
+msgstr "demander"
+
+#: src/LYOptions.c:2152
+msgid "accept all"
+msgstr "tout accepter"
+
+#: src/LYOptions.c:2164
+msgid "ALWAYS OFF"
+msgstr "TOUJOURS \"OFF\""
+
+#: src/LYOptions.c:2165
+msgid "FOR LOCAL FILES ONLY"
+msgstr "FICHIERS LOCAUX SEULEMENT"
+
+#: src/LYOptions.c:2167
+msgid "ALWAYS ON"
+msgstr "TOUJOURS \"ON\""
+
+#: src/LYOptions.c:2179
+msgid "Numbers act as arrows"
+msgstr "touches <nombres> => <flèches>"
+
+#: src/LYOptions.c:2181
+msgid "Links are numbered"
+msgstr "Les liens sont numérotés"
+
+#: src/LYOptions.c:2184
+msgid "Links and form fields are numbered"
+msgstr "Les liens et champs de formulaire sont numérotés"
+
+#: src/LYOptions.c:2187
+msgid "Form fields are numbered"
+msgstr "Les champs de formulaires sont numérotés"
+
+#: src/LYOptions.c:2201
+msgid "Case insensitive"
+msgstr "Insensible à la casse"
+
+#: src/LYOptions.c:2202
+msgid "Case sensitive"
+msgstr "Sensible à la casse"
+
+#: src/LYOptions.c:2226
+msgid "prompt normally"
+msgstr "demander normalement"
+
+#: src/LYOptions.c:2227
+msgid "force yes-response"
+msgstr "forcer la réponse \"oui\""
+
+#: src/LYOptions.c:2228
+msgid "force no-response"
+msgstr "forcer la réponse \"non\""
+
+#: src/LYOptions.c:2246
+msgid "Novice"
+msgstr "Débutant"
+
+#: src/LYOptions.c:2247
+msgid "Intermediate"
+msgstr "Intermédiaire"
+
+#: src/LYOptions.c:2248
+msgid "Advanced"
+msgstr "Avancé(es)"
+
+#: src/LYOptions.c:2257
+msgid "By First Visit"
+msgstr "Première visite"
+
+#: src/LYOptions.c:2259
+msgid "By First Visit Reversed"
+msgstr "Première visite (inversé)"
+
+#: src/LYOptions.c:2260
+msgid "As Visit Tree"
+msgstr "Arbre de visites"
+
+#: src/LYOptions.c:2261
+msgid "By Last Visit"
+msgstr "Dernière visite"
+
+#: src/LYOptions.c:2263
+msgid "By Last Visit Reversed"
+msgstr "Dernière visite (inversé)"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2274
+msgid "relaxed (TagSoup mode)"
+msgstr "souple (mode TagSoup)"
+
+#: src/LYOptions.c:2275
+msgid "strict (SortaSGML mode)"
+msgstr "strict (mode SortaSGML)"
+
+#: src/LYOptions.c:2282
+msgid "as labels"
+msgstr "comme étiquettes"
+
+#: src/LYOptions.c:2283
+msgid "as links"
+msgstr "comme des liens"
+
+#: src/LYOptions.c:2290
+msgid "show filename"
+msgstr "voir le nom du fichier"
+
+#: src/LYOptions.c:2301
+msgid "STANDARD"
+msgstr "Standard"
+
+#: src/LYOptions.c:2302
+msgid "ADVANCED"
+msgstr "Avancé"
+
+#: src/LYOptions.c:2333
+msgid "Directories first"
+msgstr "Répertoires en premier"
+
+#: src/LYOptions.c:2334
+msgid "Files first"
+msgstr "Fichiers en premier"
+
+#: src/LYOptions.c:2335
+msgid "Mixed style"
+msgstr "Style mixte"
+
+#: src/LYOptions.c:2343 src/LYOptions.c:2363
+msgid "By Name"
+msgstr "Par Nom"
+
+#: src/LYOptions.c:2344 src/LYOptions.c:2364
+msgid "By Type"
+msgstr "Par type"
+
+#: src/LYOptions.c:2345 src/LYOptions.c:2365
+msgid "By Size"
+msgstr "Par Taille"
+
+#: src/LYOptions.c:2346 src/LYOptions.c:2366
+msgid "By Date"
+msgstr "Par Date"
+
+#: src/LYOptions.c:2347
+msgid "By Mode"
+msgstr "Par mode"
+
+#: src/LYOptions.c:2349
+msgid "By User"
+msgstr "Par utilisateur"
+
+#: src/LYOptions.c:2350
+msgid "By Group"
+msgstr "Par Groupe"
+
+#: src/LYOptions.c:2375
+msgid "Do not show rate"
+msgstr "Cacher le taux"
+
+#: src/LYOptions.c:2376 src/LYOptions.c:2377
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "Montrer le taux %s/sec"
+
+#: src/LYOptions.c:2379 src/LYOptions.c:2380
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "Montrer %s/sec, ETA"
+
+#: src/LYOptions.c:2383
+msgid "Show progressbar"
+msgstr "Montrer la barre de progression"
+
+#: src/LYOptions.c:2395
+msgid "Accept lynx's internal types"
+msgstr "Accepter les types internes Lynx"
+
+#: src/LYOptions.c:2396
+msgid "Also accept lynx.cfg's types"
+msgstr "Accepter aussi les types lynx.cfg"
+
+#: src/LYOptions.c:2397
+msgid "Also accept user's types"
+msgstr "Accepter aussi les types de l'utilisateur"
+
+#: src/LYOptions.c:2398
+msgid "Also accept system's types"
+msgstr "Accepter aussi les types systèmes"
+
+#: src/LYOptions.c:2399
+msgid "Accept all types"
+msgstr "Accepter tous les types"
+
+#: src/LYOptions.c:2408
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2409
+msgid "deflate"
+msgstr "deflate"
+
+#: src/LYOptions.c:2412
+msgid "compress"
+msgstr "compress"
+
+#: src/LYOptions.c:2415
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2417
+msgid "All"
+msgstr "Tous"
+
+#: src/LYOptions.c:2685 src/LYOptions.c:2709
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Utilisez %s pour invoquer le menu des Options."
+
+#: src/LYOptions.c:3481
+msgid "(options marked with (!) will not be saved)"
+msgstr "(les options marquées avec (!) ne seront pas sauvées)"
+
+#: src/LYOptions.c:3489
+msgid "General Preferences"
+msgstr "Préférences globales"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3493
+msgid "User mode"
+msgstr "Mode utilisateur"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3499
+msgid "Editor"
+msgstr "Éditeur"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3504
+msgid "Type of Search"
+msgstr "Type de recherche"
+
+#: src/LYOptions.c:3509
+msgid "Security and Privacy"
+msgstr "Sécurité et Vie privée"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3513
+msgid "Cookies"
+msgstr "Cookies"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3527
+msgid "Invalid-Cookie Prompting"
+msgstr "Dialogue pour les cookies non valides"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3534
+msgid "SSL Prompting"
+msgstr "Dialogue SSL"
+
+#: src/LYOptions.c:3540
+msgid "Keyboard Input"
+msgstr "Entrée du clavier"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3544
+msgid "Keypad mode"
+msgstr "Mode pavé numérique"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3550
+msgid "Emacs keys"
+msgstr "Touches emacs"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3556
+msgid "VI keys"
+msgstr "Touches vi"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3563
+msgid "Line edit style"
+msgstr "Style d'édition de ligne"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3575
+msgid "Keyboard layout"
+msgstr "Plan du clavier"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3589
+msgid "Display and Character Set"
+msgstr "Affichage et jeu de caractères"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3594
+msgid "Use locale-based character set"
+msgstr "Utiliser le jeu de caractères local"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3603
+msgid "Display character set"
+msgstr "Afficher le jeu de caractères"
+
+#: src/LYOptions.c:3634
+msgid "Assumed document character set"
+msgstr "Jeu de caractères présumé du document"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3654
+msgid "CJK mode"
+msgstr "Mode CJK"
+
+#: src/LYOptions.c:3656
+msgid "Raw 8-bit"
+msgstr "Mode 8-bit \"brut\""
+
+#. X Display: INPUT
+#: src/LYOptions.c:3664
+msgid "X Display"
+msgstr "X Display"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3670
+msgid "Document Appearance"
+msgstr "Apparence du document"
+
+#: src/LYOptions.c:3676
+msgid "Show color"
+msgstr "Afficher les couleurs"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3700
+msgid "Show cursor"
+msgstr "Afficher le curseur"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3706
+msgid "Underline links"
+msgstr "Souligner les liens"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3713
+msgid "Show scrollbar"
+msgstr "Montrer l'ascenseur"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3720
+msgid "Popups for select fields"
+msgstr "Fenêtre popup pour les champs sélectionnés"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3726
+msgid "HTML error recovery"
+msgstr "Reprise d'une erreur HTML"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3732
+msgid "Show images"
+msgstr "Montrer les images"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3746
+msgid "Verbose images"
+msgstr "Images verbeuses"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3754
+msgid "Headers Transferred to Remote Servers"
+msgstr "Entêtes transférés aux serveurs distants"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3758
+msgid "Personal mail address"
+msgstr "Adresse email personnelle"
+
+#: src/LYOptions.c:3764
+msgid "Password for anonymous ftp"
+msgstr "Mot de passe pour l'accès FTP anonyme"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3770
+msgid "Preferred media type"
+msgstr "Type média préféré"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3776
+msgid "Preferred encoding"
+msgstr "Encodage préféré"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3782
+msgid "Preferred document character set"
+msgstr "Jeu de caractères de document préféré"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3787
+msgid "Preferred document language"
+msgstr "Langue de document préférée"
+
+#: src/LYOptions.c:3793
+msgid "User-Agent header"
+msgstr "Entête \"User-Agent\""
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3801
+msgid "Listing and Accessing Files"
+msgstr "Listes et accès aux fichiers"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3806
+msgid "Use Passive FTP"
+msgstr "Utiliser le mode FTP passif"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3812
+msgid "FTP sort criteria"
+msgstr "Critères de tri FTP"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3820
+msgid "Local directory sort criteria"
+msgstr "Critère de tri des répertoires locaux."
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3826
+msgid "Local directory sort order"
+msgstr "Ordre de tri des répertoires locaux"
+
+#: src/LYOptions.c:3835
+msgid "Show dot files"
+msgstr "Montrer les fichiers cachés"
+
+#: src/LYOptions.c:3843
+msgid "Execution links"
+msgstr "Liens à éxécuter"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3863
+msgid "Show transfer rate"
+msgstr "Montrer le taux de transfert"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3883
+msgid "Special Files and Screens"
+msgstr "Fichiers et écrans spéciaux"
+
+#: src/LYOptions.c:3888
+msgid "Multi-bookmarks"
+msgstr "Signets multiples"
+
+#: src/LYOptions.c:3896
+msgid "Review/edit Bookmarks files"
+msgstr "Revoir/Éditer les fichiers signets"
+
+#: src/LYOptions.c:3898
+msgid "Goto multi-bookmark menu"
+msgstr "Aller au menu signets multiples"
+
+#: src/LYOptions.c:3900
+msgid "Bookmarks file"
+msgstr "Fichier de signets"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3907
+msgid "Auto Session"
+msgstr "Session Auto"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3913
+msgid "Session file"
+msgstr "Fichier de session"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3919
+msgid "Visited Pages"
+msgstr "Pages visitées"
+
+#: src/LYOptions.c:3924
+msgid "View the file "
+msgstr "Voir le fichier"
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr "Impression terminée.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Document :"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Nombre de lignes :"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Nombre de pages :"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "pages"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "page"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(approximativement)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Certaines fonctions d'impression ont été désactivées."
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Options d'impression standard."
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Options d'impression :"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Enregistrer dans un fichier"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Enregistrement sur disque désactivé"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Envoyer le fichier par courrier"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Imprimer à l'écran"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Utiliser le terminal vt100 pour imprimer"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Erreur de syntaxe lors de l'analyse de COLOR dans le fichier de\n"
+"configuration. La ligne doit être du type:\n"
+"COULEUR:ENTIER:PREMIERPLAN:ARRIEREPLAN\n"
+"\n"
+"Ici, PREMIERPLAN et ARRIEREPLAN doivent être au choix\n"
+"une chaîne de caractères spéciale 'nocolor' ou 'default', ou\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Ligne fautive :"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "échec de changement de touche de %s vers %s pour %s\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "échec du changement de touche de %s vers %s\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "Sélection de lignes éditées %s non valide pour la touche %s, sélection de l'ensemble\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "Echec de définition (éditeur de ligne) pour la touche %s (0x%x) en 0x%x pour %s.\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "Echec de définition (éditeur de ligne) pour la touche %s (0x%x) pour %s.\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx : impossible de démarrer. Le fichier de règles CERN %s n'est pas accessible.\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(pas de nom)"
+
+#: src/LYReadCFG.c:1882
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Plus de %d inclusions de lynx.cfg imbriquées. Peut être y a t'il une boucle ?\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "La dernière inclusion tentée était: '%s',\n"
+
+#: src/LYReadCFG.c:1885
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "inclusion de '%s'.\n"
+
+#: src/LYReadCFG.c:2289 src/LYReadCFG.c:2302 src/LYReadCFG.c:2360
+msgid "The following is read from your lynx.cfg file."
+msgstr "Les données suivantes sont lues à partir de votre fichier lynx.cfg."
+
+#: src/LYReadCFG.c:2290 src/LYReadCFG.c:2303
+msgid "Please read the distribution"
+msgstr "Merci de chercher dans la distribution"
+
+#: src/LYReadCFG.c:2296 src/LYReadCFG.c:2306
+msgid "for more comments."
+msgstr "pour plus de commentaires."
+
+#: src/LYReadCFG.c:2342
+msgid "RELOAD THE CHANGES"
+msgstr "RECHARGER LES MODIFICATIONS"
+
+#: src/LYReadCFG.c:2350
+msgid "Your primary configuration"
+msgstr "Votre configuration principale"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "Répertoire vu en ce moment"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Nom :"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL :"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "Répertoire présentement sélectionné"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "Fichier présentement sélectionné"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "Lien symbolique présentement sélectionné"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "Article que vous avez sélectionné"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "Nom complet :"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "Impossible de suivre le lien"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "Pointe vers le fichier :"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "Nom du propriétaire :"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Nom du groupe :"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Taille du fichier :"
+
+#: src/LYShowInfo.c:227
+msgid "(bytes)"
+msgstr "(octets)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Date de création :"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Dernière mise à jour :"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Dernier accès :"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Permissions d'accès"
+
+#: src/LYShowInfo.c:279
+msgid "Group:"
+msgstr "Groupe :"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr "Mot :"
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Fichier que vous visualisez présentement"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Nom du lien :"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Jeu de caractères :"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr "(implicite)"
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Serveur :"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Date :"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Dernière modification :"
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr "Expire :"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Contrôle du cache :"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "Longueur du contenu :"
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr "Longueur :"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Langage :"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "Données POST :"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "Type de contenu POST :"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Propriétaire(s) :"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "Taille :"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "lignes"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "mode formulaires"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "source"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "normal"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", sécurisé"
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ", lien interne"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", pas de cache"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", script ISMAP"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", fichier signet"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "mode :"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Lien que vous avez sélectionné"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Méthode :"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "Encodage :"
+
+#: src/LYShowInfo.c:436
+msgid "Action:"
+msgstr "Action : "
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(champ de formulaire)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "Aucun lien dans la page courante"
+
+#: src/LYShowInfo.c:455
+msgid "Server Headers:"
+msgstr "Entêtes serveur :"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Erreur de syntaxe lors de l'analyse du style dans le fichier lss:\n"
+"[%s]\n"
+"La ligne doit être de la forme :\n"
+"OBJET:MONO:COULEUR (em:bold:brightblue:white)\n"
+"Où OBJET est un élément parmi EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+
+#: src/LYTraversal.c:111
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "voici une liste de l'Historique que vous pouvez reconstituer"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "ERREUR - commande d'envoi mal configurée"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Redirection «../» non autorisée ; demande non traitée."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Caractère  «/» non autorisé ; demande non traitée."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Redirection avec «~» non autorisée ; demande non traitée."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Impossible d'envoyer le fichier."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Envoi vers:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Options d'envoi de fichiers :"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr "URL du document téléchargé copiée dans le presse-papiers."
+
+#: src/LYUtils.c:2614
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Protocole d'accès inattendu pour ce schéma l'URL"
+
+#: src/LYUtils.c:3422
+msgid "Too many tempfiles"
+msgstr "Trop de fichiers temporaires"
+
+#: src/LYUtils.c:3722
+msgid "unknown restriction"
+msgstr "restriction inconnue"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Pas de restriction définie.\n"
+
+#: src/LYUtils.c:3756
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Définitions de restrictions :\n"
+
+#: src/LYUtils.c:5134
+msgid "Cannot find HOME directory"
+msgstr "Impossible de trouver le répertoire personnel (HOME)"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Normalement désactivé(e). Voyez ENABLE_LYNXRC dans lynx.cfg\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies permet à l'utilisateur de dire à Lynx d'accepter\n"
+"automatiquement tous les cookies.  \"FALSE\" (non) par défaut, donc\n"
+"demande pour chaque cookie.  Mettre accept_all_cookies à \"TRUE\"\n"
+"(vrai) pour accepter tous les cookies.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"anonftp_password permet à l'utilisateur de faire utiliser par Lynx l'adresse\n"
+"mail personnelle comme mot de passe FTP anonyme.  Si aucune valeur,\n"
+"précisée, Lynx utilise l'adresse personnelle.  Fixer anonftp_password\n"
+"à une autre valeur si vous le souhaitez.\n"
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file spécifie le nom et l'emplacement du fichier de signets par\n"
+"défaut dans lequel l'utilisateur peut copier des liens pour un accès\n"
+"rapide ultérieurement.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Si case_sensitive_searching est réglé à «on», lors d'une recherche au\n"
+"moyen des touches 's' ou '/', la recherche tient compte de la casse au lieu\n"
+"de prendre tous les caractères. La valeur par défaut est «off».\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"L'option character_set définit la représentation des caractères 8 bits\n"
+"pour votre terminal.  Si de tels caractères 8 bits ne s'affichent pas\n"
+"correctement à l'écran, vous pouvez essayer de changer pour un jeu\n"
+" de caractères 8 bits différent ou utiliser les caractères approximatifs\n"
+" 7 bits. Les jeux de caractères valides courants sont :\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains et cookie_reject_domains sont des listes de\n"
+"domaines séparés par des virgules dont Lynx accepte ou rejette\n"
+"les cookies. Si un domaine est précisé dans les deux, le rejet\n"
+"prévaut.  Le paramètre accept_all_cookies est prioritaire sur les\n"
+"réglages précisés ici.\n"
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file spécifie le fichier à partir duquel lire les cookies persistants\n"
+"Valeur par défaut : ~/"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, et\n"
+"cookie_query_invalid_domains sont des listes de domaines séparés\n"
+"par des virgules soumis à divers degrés de validation.  Si un domaine\n"
+"est \"strict\", la stricte conformation à RFC2109 est vérifiée.\n"
+"Un domaine \"loose\" est autorisé à poster des cookies avec un\n"
+"chemin ou un domaine non valides.  Pour les autres domaines\n"
+"l'utilisateur sera prévenu en cas de mauvais chemin ou domaine.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order spécifie l'ordre de listage des répertoires sous DIRED_SUPPORT\n"
+"(si implémenté).  Par défaut : \"ORDER_BY_NAME\"\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"L'option dir_list_styles spécifie le style de liste de répertoires sous\n"
+"DIRED_SUPPORT (si l'option est offerte). La valeur «MIXED_STYLE»\n"
+"(défaut) trie fichiers et répertoires ensemble. La valeur «FILES_FIRST»\n"
+"permet de lister les fichiers d'abord tandis que «DIRECTORIES_FIRST»\n"
+"permet de lister les répertoires d'abord.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Si emacs_keys est réglé à «on», le jeu de touches EMACS normal :\n"
+"  ^N = bas    ^P = haut\n"
+"  ^B = gauche    ^F = droite\n"
+"est activé.\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor spécifie l'éditeur pour l'édition de fichiers locaux ou l'envoi\n"
+"de courrier.  Si aucun n'est précisé, l'édition de fichier est désactivée,\n"
+"à moins qu'elle soit activée de la ligne de commande, auquel cas l'éditeur\n"
+"de lignes sera utilisé pour l'envoi de courrier.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method spécifie le mode de tri à utiliser pour consulter\n"
+"des listes de fichiers tels que des répertoires FTP. Les options sont:\n"
+"   BY_FILENAME -- tri selon le nom de fichier\n"
+"   BY_TYPE -- tri selon le type de fichier\n"
+"   BY_VOLUME -- tri selon la taille du fichier\n"
+"   BY_DATE -- tri selon la date du fichier\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode spécifie l'association de touche utilisée pour \n"
+"entrer des chaîne de caractères dans les formulaires et les.\n"
+"dialogues. Si lineedit_mode est égal à \"Default Binding\" alors\n"
+"les caractères de contrôle suivants seront utilisés pour se\n"
+"déplacer et effacer du texte:\n"
+"\n"
+"                 Précèdent Suivant      Entrée = Accepter les données\n"
+"Déplacer car.     <-        ->           ^G  = Annuler les données\n"
+"Déplacer mot     ^P        ^N           ^U  = Effacer la ligne.\n"
+"Effacer car.        ^H        ^R           ^A  = Début de ligne.\n"
+"Effacer mot        ^B        ^F           ^E  = Fin de ligne.\n"
+"\n"
+"Les modes d'édition de ligne courants sont:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Vous pouvez définir des sous-catégories de signets et de descriptions.\n"
+"Le format est multi_bookmark<lettre_majuscule>=<nom_de_fichier>,<description>\n"
+"vous pouvez définir jusque 26 fichiers de signets (l'alphabet anglais).\n"
+"commencez avec «multi_bookmarkB» car 'A' est le fichier implicite (voir après).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address spécifie votre adresse email personelle. \n"
+"Cette adresse sera envoyée lors des transferts de fichiers HTTP comme\n"
+"moyen d'autorisation,de logs et pour les commentaires postés par mail.\n"
+"Si vous ne voulez pas que cette information soit communiquée, définissez\n"
+"la variable NO_FROM_HEADER comme étant vraie (TRUE) dans lynx.cfg, ou\n"
+"utilisez l'option -nofrom en ligne de commande. Vous pouvez aussi laisser\n"
+"ce champ vide, mais alors il n'apparaîtra pas dans vos commentaires postés.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset spécifie la jeu de caractères en notation MIME (cad \n"
+"ISO-8859-2, ISO-8859-5) que lynx indiquera comme jeu de car. préféré\n"
+"lors des requêtes http en utilisant l'entête Accept-Charset. Cette valeur\n"
+"ne dois PAS inclure ISO-8859-1 ou US-ASCII car ces valeurs sont toujours\n"
+"prises par défaut. La liste de choix peut être composée de types séparés par\n"
+"des virgules. Si un fichier dans ce jeu de caractères est disponible, \n"
+"le serveur vous l'enverra. Si il n'y a pas d'entête Accept-Charset, le \n"
+"comportement par défaut est d'accepter n'importe quel type de jeu de car.\n"
+"Si il existe un entête Accept-Charset mais que le serveur ne peut renvoyer une\n"
+"réponse acceptable relativement à votre choix, le serveur DEVRAIT renvoyer un \n"
+"message d'erreur bien que le renvoi d'une réponse inacceptable soit permis.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language spécifie la langue selon le code MIME (ex., en,\n"
+"fr ou liste de langues séparées par des virgule, préférence décroissante).\n"
+"Lynx tient compte des préférences lors des requêtes aux serveurs http.\n"
+"Si un fichier est disponible dans la langue précisée, le serveur l'envoie.\n"
+"Sinon, le serveur envoie le fichier dans la langue par défaut.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Si 'run_all_execution_links' est réglé à «on», tous les liens actifs\n"
+"locaux sont exécutés lorsqu'ils sont sélectionnés.\n"
+"\n"
+"AVIS -    Cette option est potentiellement très dangereuse car elle permet\n"
+"          de voir de l'information écrite par des sources inconnues ou non\n"
+"          fiables.  Il existe un danger que des fichiers Cheval de Troie\n"
+"          soient inclus.  Les fichiers troyens peuvent provoquer\n"
+"          l'effacement de fichiers ou compromettre la sécurité.  Cette\n"
+"          fonction devrait être réglée à «on» uniquement si vous\n"
+"          consultez de l'information fiable.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Si 'run_execution_links_on_local_files' est réglé à «on», tous les liens\n"
+"actifs qui se trouvent dans des fichiers LOCAUX seront exécutés lorsque\n"
+"choisis. Cette option est différente de 'run_all_execution_links' en ce que\n"
+"les permissions d'accès sont accordées uniquement pour les fichiers du\n"
+"système local.\n"
+"\n"
+"AVIS -    Cette option est potentiellement très dangereuse car elle permet de\n"
+"          voir de l'information écrite par des sources inconnues ou non fiables.\n"
+"          Il existe un danger que des fichiers Cheval de Troie soient inclus.\n"
+"          Les fichiers troyens peuvent provoquer l'effacement de fichiers ou\n"
+"          compromettre la sécurité. Cette fonction devrait être réglée à\n"
+"          «activé» uniquement si vous consultez de l'information fiable.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups spécifie si les OPTIONs d'un bloc SELECT qui ne \n"
+"contient pas l'attribut MULTIPLE doivent être présentés comme une liste\n"
+"verticale de boutons radio ou comme un menu popup. Notez que si l'attribut\n"
+"MULTIPLE est défini dans le tag SELECT, lynx créera toujours une liste \n"
+"verticale de cases à cocher pour chaque OPTION. Une valeur à \"on\" \n"
+"sélectionnera les menus popup par défaut alors qu'une valeur à \"off\" \n"
+"sélectionnera les boutons radio par défaut. Cette option peut être surchargée\n"
+"par l'option -popup en ligne de commande.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color permet de paramétrer le mode couleur à l'initialisation.  La\n"
+"valeur «never» désactive le mode couleur (ce qui équivaut à un terminal\n"
+"monochrome) même si le terminal est capable d'afficher les couleurs.  La\n"
+"valeur «always» active le mode couleur même si le terminal est\n"
+"monochrome, en autant que cette valeur soit incluse dans la librairie\n"
+"utilisée pour créer Lynx.  La valeur «default» suppose par défaut un\n"
+"terminal monochrome à moins que la capacité d'afficher les couleurs soit\n"
+"déterminée à l'initialisation en fonction du type de terminal, ou que\n"
+"l'option -color soit entrée à la ligne de commande, ou que la variable\n"
+"d'environnement soit réglée à COLORTERM.  La valeur implicite est toujours\n"
+"utilisée dans le cas des connexions anonymes ou si la restriction\n"
+"«option_save» est activée.  L'effet de la valeur enregistrée peut être\n"
+"annulé en permutant les options -color et -nocolor sur la ligne de\n"
+"commande.  Le mode attribué à l'initialisation peut être modifié au moyen\n"
+"de l'option «afficher les couleurs» dans le menu Paramètres.  Si les\n"
+"paramètres sont enregistrés, les attributs «on» et «off» de l'option\n"
+"«afficher les couleurs» sont interprétés comme étant la valeur «default».\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor permet d'indiquer si le curseur doit être caché à droite\n"
+"(et au bas, si possible) de l'écran, ou s'il doit être placé à la gauche du\n"
+"lien actif dans les documents, ou de l'option active dans les fenêtres\n"
+"flash.  Le placement du curseur à la gauche de l'option ou du lien actif\n"
+"est utile dans le cas des interfaces de reconnaissance de la parole ou de\n"
+"braille, et quand le terminal est incapable de distinguer le lien actif au\n"
+"moyen de la surbrillance ou de la couleur.  La valeur «on» règle le\n"
+"placement du curseur à la gauche par défaut, tandis que la valeur «off»\n"
+"équivaut à 'cacher' le curseur de l'écran.  La valeur implicite peut être\n"
+"annulée à la ligne de commande au moyen de l'option -show_cursor.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"Le paramètre show_dotfiles spécifie que la liste des répertoires doit\n"
+"inclure les fichiers et répertoires «cachés».  S'il est réglé à «on»,\n"
+"il n'est pris en compte que s'il est activé dans userdefs.h et/ou lynx.cfg\n"
+"et s'il n'est pas restreint par une option de la ligne de commande.  Si\n"
+"l'affichage des fichiers cachés est désactivé, la création de tels fichiers\n"
+"dans Lynx est aussi désactivée.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Si le sub_bookmark n'est pas désactivé (\"off\") et que les signets\n"
+"multiples (cf plus bas) ont étés définis, alors toutes les opérations\n"
+"relatives aux signets déclencheront un dialogue utilisateur afin qu'il\n"
+"puisse sélectionner un fichier de sous signet actif. Si le fichier \n"
+"de signets par défaut est défini (cf plus haut), il sera utilisé comme\n"
+"la sélection par défaut. Lorsque cette option est fixée à \"advanced\"\n"
+"et que le mode d'utilisation est avancé, la commande 'v'oire les signets\n"
+"invoquera un prompt sur la ligne d'état au lieu du menu qui apparait dans les\n"
+"modes novices et intermédiaires. Lorsque cette option est définie comme \n"
+"\"standard\", le menu apparaîtra quelque soit le mode d'utilisation.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"Le paramètre user_mode spécifie le niveau de connaissance de Lynx par\n"
+"l'utilisateur. La valeur «NOVICE» (défaut) commande l'affichage de deux\n"
+"lignes supplémentaires d'aide au bas de l'écran pour aider l'utilisateur à\n"
+"apprendre les commandes Lynx de base. Réglez le paramètre user_mode à\n"
+"«INTERMEDIATE» pour éliminer ces lignes.  Utilisez l'option «ADVANCED» pour\n"
+"afficher l'URL du lien sélectionné au bas de l'écran.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Si verbose_images est à \"on\", lynx affichera les noms des fichiers\n"
+"sources d'images au lieu de [INLINE],[LINK] ou [IMAGE]\n"
+"Voir aussi VERBOSE_IMAGES dans lynx.cfg\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Si vi_keys est réglé à «on», le mouvement de touches VI normal :\n"
+"  j = bas     k = haut\n"
+"  h = gauche  l = droite\n"
+"est activé.  Ces touches sont en minuscule uniquement.\n"
+"Les majuscules 'H', 'J' et 'K' activent l'aide, les touches de raccourci\n"
+"et la configuration des touches respectivement.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"L'option visited_links contrôle la façon dont Lynx organise les informations\n"
+"sur la page Liens visités.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Si keypad_mode est définit comme \"NUMBERS_AS_ARROWS\", alors les \n"
+"chiffres de votre pavé numérique se comporteront comme des flèches\n"
+"lorsque numlock est à on:\n"
+"               8 = haut \n"
+"     4 = gauche           6 = droite \n"
+"               2 = bas \n"
+"et les chiffres correspondants de votre clavier se comporteront\n"
+"comme des flèches, quelque soit l'état du numlock.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Si keypad_mode est défini comme \"LINKS_ARE_NUMBERED\"; alors des \n"
+"nombres apparaitront à coté des liens afin de pouvoir les sélectionner.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Si keypad_mode est défini comme \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\",\n"
+"alors des nombres apparaîtront à coté de chaque liens et des champs\n"
+"de formulaires. Ces nombres seront utilisés pour sélectionner un lien, \n"
+"ou pour déplacer le \"lien courant\" vers un champ de formulaire ou \n"
+"un bouton. En plus, les options des menus popup seront indexées afin que \n"
+"l'utilisateur puisse taper un chiffre pour sélectionner une option de l'un\n"
+"de ces menus,même si cette option n'est pas visible à l'écran. Les listes\n"
+"de référence et les sorties de ces listes de commandes énumèrent aussi les\n"
+"champs de formulaires.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"NB : certains formats de document peuvent apparaître défigurés\n"
+"lorsque \"LINKS_ARE_NUMBERED\" ou \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" \n"
+"sont activés.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"Fichier de param. utilisateur par défaut Lynx\n"
+"\n"
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"Ce fichier contient les options sauvegardées depuis l'écran d'options Lynx\n"
+"(normalement, touche 'o'). Pour sauvegarder les options de cet écran,\n"
+"vous devez sélectionner la case à cocher :\n"
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+"Vous devez maintenant enregistrer les réglages à l'aide du lien sur la\n"
+"ligne au-dessus de la case à cocher :\n"
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"Vous pouvez aussi utiliser la commande en ligne \"-forms_options\", qui fait\n"
+"apparaître le menu d'Options simplifié à la place. Enregistrez ces options en\n"
+"utilisant la touche '>'.\n"
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"Ce fichier contient les options enregistrées depuis l'écran d'options Lynx\n"
+"(normalement, touche '>').\n"
+"\n"
+
+#: src/LYrcFile.c:910
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Il n'y a normalement pas besoin d'éditer ce fichier à la main, puisque les\n"
+"réglages par défaut se font via l'écran \"Options\", et que la prochaine fois\n"
+"ce fichier sera modifié avec les valeurs de cet écran.\n"
+"Vous êtes prévenu...\n"
+"\n"
+"Si vous cherchez le fichier de configuration générale il est normalement\n"
+"nommé \"lynx.cfg\". Son contenu et son format sont différents.\n"
+"Il ne s'agit pas de ce fichier.\n"
+
+#~ msgid "Socket read failed for 180,000 tries."
+#~ msgstr "La lecture de la socket a échouée pour 180,000 essais"
+
+#~ msgid "reason unknown."
+#~ msgstr "raison inconnue"
+
+#~ msgid "KB"
+#~ msgstr "KB"
+
+#~ msgid "Remove '%s' and all of its contents?"
+#~ msgstr "Supprimer '%s' et tout son contenu"
+
+#~ msgid "Remove directory and all of its contents?"
+#~ msgstr "Supprimer le répertoire et tout son contenu"
+
+#~ msgid "create %s"
+#~ msgstr "création de %s"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "Impossible d'ouvrir le menu de gestion de fichier."
+
+#~ msgid "Ignoring invalid HOME"
+#~ msgstr "Non prise en compte d'un HOME invalide"
diff --git a/po/hu.po b/po/hu.po
new file mode 100644
index 00000000..152002dd
--- /dev/null
+++ b/po/hu.po
@@ -0,0 +1,6098 @@
+# A Lynx szöveges webböngészõ program magyar fordításai
+# Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+# Mihály Gyulai <gyulai@fbi.hu>, 2004.
+# Elsõ fordító: Gábor István <stive@mezobereny.hu>, 2002.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.6-dev8\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 2004-11-14 19:52+0100\n"
+"Last-Translator: Mihály Gyulai <gyulai@fbi.hu>\n"
+"Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Figyelem!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Üdvözöljük"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Ki akar lépni a programból?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Kilép a Lynx-bõl?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "A kapcsolat megszakadt."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Az adatátvitel megszakadt."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Megszakítva!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Megszakítás!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Kitûnõ!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "RENDBEN"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Kész!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Hibás kérés!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "elõzõ"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "következõ képernyõ"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "További segítség az opciókhoz"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", segítség "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Le-föl billentyû: mozgás, ?: súgó, q: kilép, balra nyíl: vissza"
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- Szóköz: tovább, le-föl nyíl: mozgás, ?: súgó, q: kilép"
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- Szóköz: következõ oldal --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "Az URL túl hosszú"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Szövegbeviteli mezõ). Nem aktív. <return>: aktivál"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Szöveges terület). Nem aktív. <return>: aktivál"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Szövegmezõ). Nem aktív. <return>: aktivál. (%s szerkesztõvel)"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Ûrlap mezõ). Nem aktív. <return>: szerkeszt"
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Ûrlap mezõ). Nem aktív. <return>: szerkeszt (%s: gyorsítótár nélküli küldés)"
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Ûrlap mezõ). Nem aktív. <return>: szerkeszt, 2x <return>: elküld"
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(címzés mezõ). Nem aktív. <return>: váltás"
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Jelszó mezõ). Nem aktív. <return>: aktivál"
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "MÓDOSÍTHATATLAN fájl megadási mezõ. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Fájl megadási mezõ). Kérem a fájl nevét. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Szövegbeviteli mezõ). Kérem a szöveget. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Szöveges terület). Kérem a szöveget. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Szöveges terület). Kérem a szöveget. Le-föl nyíl, Tab: kilép. (%s szerkesztõ)"
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "MÓDOSÍTHATATLAN szöveg mezõ. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Ûrlap mezõ). Kérem a szöveget. <return>: elküld"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Ûrlap mezõ). Kérem a szöveget. <return>: elküld (%s: gyorstár nélküli küldés)"
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Ûrlap mezõ). Kérem a szöveget. <return>: elküld. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "MÓDOSÍTHATATLAN ûrlap mezõ. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(Levelezõ mezõ). Kérem a szöveget. <return>: elküld. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(címzés mezõ). A levelezés használata nincs engedélyezve, nem tudjuk elküldeni."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Jelszó mezõ). Kérem a szöveget. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "MÓDOSÍTHATATLAN jelszó mezõ. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Jelölõnégyzet mezõ). Jobb nyíl vagy <return>: kijelöl"
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "MÓDOSÍTHATATLAN jelölõnégyzet. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Választógomb). Jobbra nyíl vagy <return>: kijelöl"
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "MÓDOSÍTHATATLAN választógomb. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Elküldés (x: gyorstár nélküli küldés) "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Küldés "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Ûrlap küldõ gomb). Jobbra nyíl vagy <return>: ('x': gyorstár nélküli küldés)"
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Ûrlap küldõ gomb). Jobbra nyíl vagy <return>: elküld"
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "A küldés gomb le van tiltva. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Levél küldése "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(Levélküldõ gomb). Jobbra nyíl vagy <return>: elküld"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(Levélküldõ gomb). A levelezés le van tiltva, nem lehet elküldeni."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Ûrlap törlés gomb). Jobbra nyíl vagy <return>: alaphelyzetbe hoz"
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "A törlés gomb le van tiltva. Le-föl nyíl, Tab: kilép"
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Legördülõ menü). <return>, jobbra nyíl: belép"
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Választó lista). Le-föl nyíl: mozgás, <return>: választ"
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "MÓDOSÍTHATATLAN legördülõ menü. <return>: megnéz, le-föl nyíl: kilép"
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "MÓDOSÍTHATATLAN választó lista. <return>: megnéz, le-föl nyíl: kilép"
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Ûrlap elküldése..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Ûrlap törlése..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Dokumentum újratöltése: Az összes bejegyzés el fog veszni!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Figyelem: Nem lehet átkódolni az adatokat a(z) %s karakterkészletre!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(HIVATKOZÁS). Jobbra nyíl vagy <return>: kiválaszt"
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "A kívánt erõforrás most nem áll rendelkezésre."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Kérem a Lynx billentyû-parancsot: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Keresés "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "%s lekérdezése"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "%s kihagyása"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "%s használata"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Érvénytelen URL: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Hibás címzés %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Nem lehet elérni WWW fájlt!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Ez egy kereshetõ index. Használja a %s-t a kereséshez."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Tovább--  Ez egy kereshetõ index. Használja a %s-t a kereséshez."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Ön egy érvénytelen hivatkozás-számot írt be."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Ez a dokumentum forrása. Nyomja le a \\-t a normál nézethez."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  Le-föl nyilak: mozgás. Jobbra nyíl: hivatkozást követ; Balra nyíl: visszalép.\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "H: Súgó, O: Beállít, P: Nyomtat, M:Fõablak, Q:Kilép, /:Keres\n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "O:Parancs, H:Súgó, K:Bill., G:Ugrik, P:Nyomtat, M:Fõoldal, O:Beállít, Q:Kilép\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "O:Parancs, B:Vissza, E:Szerk., D:Letölt, Ctl-R:Újratölt, Ctl-W:Frissít, /:Keres\n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O:Parancs, C:Megj., BS:Elõzmény, Könyvjelzõnél: V:Néz, A:Új, R:Töröl\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Írja be a szöveget a mezõbe                    "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U: kitörli az egész szöveget,  [Backspace]: egy karaktert töröl     "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "  Ctrl-U: kitörli a szöveget a mezõbõl,  [Backspace]: egy karaktert töröl  "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "     %s kitörli az egész szöveget,  [Backspace]: egy karaktert töröl   "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "     %s kitörli a szöveget,  [Backspace]: egy karaktert töröl    "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Hibás levél kitöltés! Megszakítva!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Figyelmeztetés! Az ellenõrzõ kódokat a levél címében kicserélte?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "A levelezés le van tiltva! Nem lehet elküldeni."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "A levél küldése nem sikerült!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "A levél küldése megszakítva!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Ûrlap tartalmának küldése..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "Nincs email cím ebben a \"mailto\" URL-ben!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Nem lehet az átmeneti fájlt megnyitni a levelezõ URL-hez"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Szeretné az eredeti üzenetet a levélbe illeszteni?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Szeretné az elemzett forrást a levélbe illeszteni?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "A kiválasztott szerkesztõ meghívása a levél szerkesztéséhez"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Hiba a szerkesztõ meghívásakor. Az opcióknál a szerkesztõ jól lett megadva?"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Üzenet küldése?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Az üzenet küldése?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Az üzenet küldése..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Üzenet küldése:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Nem szövegmezõ! Nem lehet használni külsõ szerkesztõt."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Nem szövegmezõ! Nem lehet használni parancsokat."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "fájl: A mûveletek le vannak tiltva!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "fájl: URL-ek hivatkozásokon keresztüli elérése le van tiltva!"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "A helyi fájl-elérés le van tiltva."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "fájl: az URL-ek könyvjelzõn keresztüli elérése le van tiltva!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Ez a speciális URL nincs engedélyezve külsõ dokumentumokban!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Nyomja meg a <return> billentyût, hogy visszatérjen a Lynx-hez."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "DCL folyamat hívása. Használja a 'logout' parancsot a Lynx-hez való visszatéréshez.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Gépelje be az 'exit' parancsot a Lynx-hez való visszatéréshez.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Az alapértelmezett parancsértelmezõ meghívása. Használja az 'exit' parancsot a Lynx-hez való visszatéréshez.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "A meghívás most le van tiltva."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "A letöltés parancs (D) most le van tiltva."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Beviteli mezõt nem lehet letölteni."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Ez az ûrlap levelezésre való! Nem lehet letölteni."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Nem lehet letölteni levél-hivatkozást."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Sütiket nem lehet letölteni."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Nyomtatási beállításokat nem lehet letölteni."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Feltöltés opciót nem lehet letölteni."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Engedélyezõ opciót nem lehet letölteni."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Ezt a speciális URL-t nem lehet letölteni!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Nincs mit letölteni."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Nyomkövetés BE!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Nyomkövetés KI!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Hivatkozások betöltése a képekhez. Újratöltés..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Alapértelmezett képkezelés visszaállítva! Újratöltés..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Pszeudo_ALT-ok lesznek beszúrva ALT sztringek nélküli \"inline\"-okhoz! Újratöltés.."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Az ALT sztringek nélküli sorok ki lesznek hagyva! Újratöltés..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Nyers 8-bites vagy CJK mód KIkapcsolva! Újratöltés..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Nyers 8-bites vagy CJK mód BEkapcsolva! Újratöltés..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "HEAD kérés küldése a dokumentumnak (D), vagy hivatkozásnak (L) vagy sehova (C): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "HEAD kérés küldése a dokumentumnak (D), vagy sehova (C): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Sajnálom, de ez a dokumentum nem HTTP URL."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Sajnálom, de a hivatkozás nem HTTP URL."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Sajnálom, de ez a mûvelet erre az ûrlapra le van tiltva."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Sajnálom, de ez a mûvelet erre a ûrlapra nem HTTP URL."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "Nem HTTP URL vagy ûrlap mûvelet!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Ez a speciális URL nem lehet ûrlap mûvelet!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "Az URL nem kezdõtartományban van!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "Hírek postázása le van tiltva!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "A fájlkezelés le van tiltva!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Ugrásfájl jelenleg nem áll rendelkezésre."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Ugrás ('?': listát mutat) : "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Az URL billentyûparanccsal való ugrás le van tiltva!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Közvetlen URL le van tiltva!  Használjon billentyûparancsot."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "A közvetlen URL-ek eddig még nem voltak használva."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "A könyvjelzõ jelenleg le van tiltva."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "Futtatás könyvjelzõn keresztül le van tiltva."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Nincs megadva könyvjelzõ fájl. Használja a %s-t a beállítások megnézéséhez."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Nem lehet megnyitni átmeneti fájlt az X Mosaic gyorslista átalakításához."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "HIBA - Nem lehet megnyitni könyvjelzõ fájlt."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Nem lehet megnyitni könyvjelzõ fájlt a hivatkozás törléséhez."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Nem lehet megnyitni visszavonó fájlt a hivatkozás törléséhez."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Hiba a visszavonó fájl átnevezése közben."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Hiba az átmeneti fájl átnevezése közben."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Nem lehet másolni az átmeneti fájlt a hivatkozás törléséhez."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Nem lehet újra megnyitni az átmeneti fájlt a hivatkozás törléséhez."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "A hivatkozás nem egy sorban van a könyvjelzõ fájlon belül."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Könyvjelzõ törlés sikertelen."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Könyvjelzõ fájlt nem lehet átirányítani (csak http URL-ek szerepelhetnek)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Nem lehet megnyitni könyvjelzõ fájlt, az 'a'-val elmentheti az elsõ hivatkozást"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Ebben a könyvjelzõ fájlban nincs hivatkozás!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "HEAD kérés küldése a dokumentumnak (D), vagy sehova (C): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "D: Dokumentum vagy L: hivatkozás mentése a könyvjelzõkhöz vagy C: Semmi"
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "D: Dokumentum mentése a könyvjelzõkhöz, vagy C: Semmi"
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "A hivatkozás (L) mentése a könyvjelzõkhöz, vagy Semmi (C)"
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "POST tartalmú ûrlapnál lévõ dokumentumokat nem lehet könyvjelzõként elmenteni."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Nem lehet elmenteni ûrlap mezõt/hivatkozást"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Elõzményt, információt, menüt és listafájlt nem lehet elmenteni könyvjelzõként."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Törölni akarja ezt a hivatkozást a könyvjelzõ fájlból?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Hibásan megadott cím."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Elõzmények megjegyzés-elemzése BE! (\"minimális\" felülbírálva)"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Elõzmények megjegyzés-elemzése KI! (\"minimális\"-ba kapcsolva)"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Elõzmények megjegyzés-elemzése BE (\"érvényes\" felülbírálva)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Elõzmény megjegyzés elemzés KI(\"érvényes\" bekapcsolva)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Minimális megjegyzés-elemzés BE!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Minimális megjegyzés-elemzés KI (\"érvényes\" bekapcsolva)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Minimális megjegyzés-elemzés BE (de az \"elõzmények\" is érvényes)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Minimális megjegyzés-elemzés KI (az \"elõzmények\" is érvényes)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "Dupla-idézõjel elemzés BE!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "Dupla-idézõjel elemzés KI!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Most a \"TagSoup HTML\" elemzést használom."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Most a \"SortaSGML HTML\" elemzést használom."
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "A dokumentum végénél vagyunk."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "A dokumentum elejénél vagyunk."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "A dokumentum %d. oldalán vagyunk."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "A %d. hivatkozás már aktuális volt."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Az elsõ dokumentumon állunk."
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "A dokumentumban e sor fölött nincs semmilyen hivatkozás."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "A dokumentumban e sor alatt nincs semmilyen hivatkozás."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Elértük a max. hosszúságot! Töröljön a szövegbõl, vagy lépjen ki a mezõbõl."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Nem ûrlapküldõ gombon vagy hivatkozáson állunk."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "A választó gombok közül egy mindenképpen ki lesz jelölve!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Nincs küldés gomb ezen az ûrlapon. Elküldjem önálló szövegmezõként?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Visszatérünk az elõzõ dokumentumhoz?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Használja a le-föl nyilat vagy a tabulátort a mezõ elhagyásához."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Kérem a szöveget. Le-föl nyíl vagy Tab: mezõ elhagyása."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Hibás HTML! Nincs ûrlap mûvelet meghatározva. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Hibás HTML! Nem lehet létrehozni legördülõ ablakot!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Nem lehet létrehozni legördülõ ablakot!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Az \"ugrás közvetlen URL-re\" le van tiltva!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Az \"ugrás nem HTTP URL-re\" le van tiltva!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Az Ön számára nincs engedélyezve \"%s\" URL-ekre való ugrás"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "URL megnyitása: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Az aktuális \"URL-re ugrás\" szerkesztése: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Az elõzõ \"URL-re ugrás\" szerkesztése: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Egy elõzõ \"URL-re ugrás\" szerkesztése: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "A jelenlegi dokumentumban POST adatok vannak."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "A dokumentum URL-jének szerkesztése: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "A jelenlegi hivatkozás URL-jének szerkesztése: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "A fájlkezelés URL-jeit nem lehet szerkeszteni"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Kérem az adatbázisbeli keresést: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Kérem a keresendõ szöveget: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "A keresendõ szöveg szerkesztése: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Az elõzõ keresendõ szöveg szerkesztése: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Egy elõzõ keresendõ szöveg szerkesztése: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Használja a Control-R gombot a keresési kulcs újraküldéséhez."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "A billentyûparancs szerkesztése: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Az elõzõ billentyûparancs szerkesztése: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Egyik elõzõ billentyûparancs szerkesztése: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "A '%c' billentyû nincs hozzárendelve ugrás fájlhoz!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Nem találok ugrás fájlt!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Nem tudok megnyitni ugrás fájlt!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Hiba az ugrás fájl olvasásakor!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Elfogyott a memória az ugrás fájl olvasásakor!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Elfogyott a memória az ugrás tábla olvasásakor!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Nincs elérhetõ index."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Vissza akar térni a fõképre?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "A fõképnél vagyunk!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Nem indexelt dokumentum -- használja a '/'-t a szövegben való kereséshez"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Nincs meghatározva a fájl tulajdonosa, így nem tudunk üzenetet küldeni"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Nincs tulajdonos meghatározva. Használjuk a(z) %s-t?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "El akar küldeni egy üzenetet?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "A levélküldés nincs engedélyezve, nem lehet küldeni üzenetet"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "A szerkesztés parancs (E) jelenleg le van tiltva."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "A külsõ szerkesztés le van tiltva."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Rendszerhiba - nem lehet kiolvasni az állapotot."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Nincs szerkesztõ meghatározva!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "A nyomtatásparancs (P) jelenleg le van tiltva."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "A dokumentumban nincs Eszköztár link, sem Felirat (\"banner\")."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Nem lehet megnyitni a bejárás fájlt (\"traversal\")."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Nem lehet megnyitni a talált bejárás fájlt (\"traversal\")."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Nem lehet megnyitni a visszautasítás fájlt."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Nem lehet megnyitni a bejárás hibakimeneti fájlt."
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "BEJÁRÁS MEGSZAKADT"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Hivatkozás követésének (vagy hivatkozásra ugrásnak vagy lapnak) száma:"
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Opció kiválasztásának (vagy lapnak) a száma: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "A %d. opció már ki van választva."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "A legördülõ menü végénél vagyunk."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "A legördülõ menü elejénél vagyunk."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "A legördülõ menü %d. oldalán vagyunk."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "A beírt opció-szám érvénytelen."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Hibás HTML!! Használja a -trace kapcsolót a hibakereséshez. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Kérem a menteni kívánt fájl nevét"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Nem lehet az adatokat fájlba menteni -- kérem futtassa WWW-t helyileg"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Nem lehet megnyitni átmeneti fájlt!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Nem lehet megnyitni kimeneti fájlt! Megszakítva!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Futtatás tiltva."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "A futtatás le van tiltva erre a fájlra.  Nézze meg a beállítások menüben (használja a(z) %s-t)"
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "A futtatás lehetõsége nincs beleépítve ebbe a verzióba."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Ezt a fájlt nem lehet megjeleníteni ezen a terminálon."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Ezt a fájlt nem lehet megjeleníteni ezen a terminálon. Letöltés (D), vagy mégse (C)"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s Letöltés (D) vagy mégse (C)"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Fájl megszakítása."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Fájl letöltése. - KÉREM VÁRJON -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Kérem a fájlnevet: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Az elõzõ fájlnév szerkesztése: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Egy elõzõ fájlnév szerkesztése: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Kérem az új fájlnevet: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Fájlnév nem kezdõdhet ponttal."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "A fájl már létezik. Létrehozzak egy újabb verziót?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "A fájl már létezik. Felülírjam?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Nem lehet fájlba írni."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "HIBA! A letöltés parancs nincs jól beállítva."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Nem lehet letölteni a fájlt."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Könyvtár olvasása..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Könyvtárlista felépítése..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Mentés..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Nem lehet szerkeszteni a(z) %s fájlt."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Nem lehet elérni a dokumentumot!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Nem lehet elérni a fájlt."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Nem lehet elérni a könyvtárat."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Nem lehet betölteni az adatokat."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "A Lynx jelenleg nem tud szerkeszteni távoli WWW fájlokat."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Ez a mezõ nem szerkeszthetõ külsõ szerkesztõvel."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Hibás szabály"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Kevés mûvelet:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Ön nem jogosult e fájl szerkesztésére."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Megnevezés: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Tárgy: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Felhasználói név: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Jelszó: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Felhasználói név és jelszó szükséges!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: Jelszó szükséges!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Minden felhatalmazás törlése errõl a folyamatról?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Felhatalmazási információk törölve."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "A felhasználói azonosítás sikertelen. Újra?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "A CGI támogatás le van tiltva."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Lynxcgi lehetõségek nincsenek beépítve ebbe a verzióba."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Sajnálom, nincs ismert módja a(z) %s %s átalakításnak."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Nem lehet beállítani a csatlakozást."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Nem lehet csatlakozást létrehozni"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "A végrehajtható link visszautasítva, hibás kérés miatt."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "A végrehajtható link visszautasítva, '%c' karakter miatt."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "A végrehajtható link visszautasítva, relatív útvonal ('../')  miatt."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "A végrehajtható link visszautasítva, hely vagy útvonal miatt."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "A levelek elérése le van tiltva!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Csak a helyi számítógépen található szolgáltatásokat és fájlokat lehet elérni."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "A telnet hozzáférés le van tiltva!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "A telnet port beállítása le van tiltva."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "A USENET hírek elérése le van tiltva!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Az rlogin elérése le van tiltva!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Az FTP-s elérés le van tiltva!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Ebben a dokumentumban nincsenek hivatkozások."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Ebben a dokumentumban csak rejtett hivatkozások vannak."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Nem lehet megnyitni a parancs fájlt."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Hírek postázása megszakítva!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "A kiválasztott szerkesztõ meghívása hírüzenet szerkesztéséhez"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Postázzam az üzenetet?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Hozzáfûzés: '%s'?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Hírcsoport(ok) felé postázás..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Önnek olvasatlan levele van. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** Önnek új levele van. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Önnek új levele van. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Fájlbeszúrás megszakítva!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Nincs elég memória a fájlnak!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Nem lehet megnyitni a fájlt olvasásra."
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "A fájl nem létezik."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "A fájl nem létezik - újra vagy mégsem:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "A fájl nem olvasható."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "A fájl nem olvasható - újra vagy mégsem:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Nincs mit beszúrni - a fájl 0 hosszú."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Mentési kérés megszakítva!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Levelezési kérés megszakítva!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Az elõkészített forrás megtekintése. El akarja postázni?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Kérem várjon..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Fájl postázása. Kérem várjon..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "HIBA - Nem lehet postázni a fájlt"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "A fájl %d képernyõ hosszú. Ki akarja nyomtatni?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Nyomtatási kérés megszakítva!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Nyomja le a <return>-t a kezdéshez: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Nyomja le a <return>-t a befejezéshez: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "A fájl %d oldal hosszú. Ki akarja nyomtatni?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "A nyomtató legyen bekapcsolva. Nyomja le a <return>-t a nyomtatáshoz:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "HIBA - Nem lehet lefoglalni a fájlnak elég helyet!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Nem lehet megnyitni az átmeneti fájlt"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Nem lehet megnyitni a nyomtatási beállítások fájlt"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Nyomtatás. Kérem várjon..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Írjon be egy érvényes email címet: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "HIBA - a nyomtató nincs jól beállítva!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Képtérkép nem áll rendelkezésre POST válaszból!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Félreirányított ügyféloldali képtérkép kérés!"
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "Az ügyféloldali képtérkép nem hozzáférhetõ!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Nincs elérhetõ ügyféloldali képtérkép!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "Az ügyfél oldali képtérkép nem elérhetõ!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "A képernyõ magassága legalább 24 sor legyen a Beállítások menü számára!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "A képernyõ magassága legalább 23 sor legyen a Beállítások menü számára!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "A képernyõ magassága legalább 22 sor legyen a Beállítások menü számára!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Ehhez a gombhoz Haladó Felhasználói Mód kell."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Tartalom típusa: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Parancs: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Ismeretlen vagy bizonytalan parancs"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Verzió "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " elõször"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", próbálkozás..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Jogosultságok "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Választás "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "nagybetû"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr "beállítások sorának,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " mentés,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr "  "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " vagy "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " index"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " vissza a Lynx-be."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "A változások elfogadása"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Változások eldobása"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Balra nyíl: változtatások figyelmen kívül hagyása"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "A beállítások lemezre mentése"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Nyomja le a RETURN-t a beírt adatok elfogadásához."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Nyomja le a RETURN-t a beírt adatok elfogadásához. Az adatok törlésével az alapbeállításokat hívja meg."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Érték elfogadva!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Érték elfogadva! -- FIGYELMEZTETÉS: a Lynx-et az XWINDOW-hoz állította be!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Érték elfogadva! -- FIGYELMEZTETÉS: a Lynx nincs beállítva XWINDOW-hoz!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Ön nem állíthatja be, hogy melyik szerkesztõt használja!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Nem sikerült beállítani a DISPLAY változót!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Nem sikerült törölni a DISPLAY változót!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Ön nem módosíthatja a könyvjelzõ fájlt!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "A terminál nem támogatja a színeket"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Ez a '%s' terminál nem támogatja a színeket."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "A rejtett fájlok elérése le van tiltva!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "A böngészõ-azonosító sztring nem tartalmaz \"Lynx\" vagy \"L_y_n_x\"-et"
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Használja a \"L_y_n_x\" vagy a \"Lynx\"-et a böngészõ-azonosítóban egyébként ez szándékos csalás!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "A böngészõ-azonosító sztring változtatása le van tiltva!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Önnek nincs engedélyezve ennek a beállításnak a módosítása."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Beállítások mentése..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Beállítások elmentve!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Nem lehet elmenteni a beállításokat!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr "'r': visszatérés a Lynx-hez "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr "'>': mentés vagy az 'r': visszatérés a Lynx-hez "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Bármely billentyû lenyomásával módosíthatja az értéket; RETURN elfogadja"
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Hiba az átmeneti fájl kitömörítése közben!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Nem támogatott URL séma!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Nem támogatott adat: URL! Használja a SHOWINFO-t."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Elértük a 10 URL-es átirányítási határt."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Érvénytelen URL átirányítás érkezett a szervertõl!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "A kiszolgáló %d átirányítást kért POST tartalommal"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "Folytatás (P), használjam a GET-et (G), vagy hagyjuk (C) "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "Folytatás (P), vagy hagyjuk (C) "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "POST tartalmú átirányítás. Folytatás (P), nézzük az URL-t, használjam a GET-et (G), vagy mégsem (C)"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "POST tartalmú átirányítás. Folytatás (P), nézzük az URL-t, vagy mégsem (C)"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Dokumentum ûrlap POST tartalommal. Újraküldés?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "A POST tartalom újraküldése a %s-hez?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "A dokumentum listázása POST adatokkal. %s újratöltése?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "POST mûveletbõl dokumentum, a HEAD nem értelmezhetõ. Tovább?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Az ûrlap kitöltése POST mûvelet, a HEAD nem értelmezhetõ. Tovább?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Tovább felhasználónév és jelszó nélkül?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Tovább (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Nem lehet ezen a kiszolgálón POST mûveletet végrehajtani."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "A POST nincs támogatva ezen az URL-en - a POST adatok eldobása!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "POST adatok eldobása."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "A dokumentum nem lesz újratöltve!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Hely: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' nem található!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Alapértelmezett könyvjelzõ-fájl"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "A képernyõ túl kicsi (8x35 a minimum)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Válasszon célt vagy ^G-vel vissza: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Segédkönyvjelzõ kiválasztása, '=': menü, vagy a ^G-vel vissza: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "Lemásolja a hivatkozást (L) ebbe a könyvjelzõ-fájlba, vagy mégsem (C): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Többszörös könyvjelzõ-támogatás nem áll rendelkezésre."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr "Könyvjelzõ kiválasztása (%d. képernyõ, összesen %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "      Könyvjelzõ kiválasztása"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Könyvjelzõ leírás és útvonal szerkesztése (2-bõl %d)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "            Könyvjelzõ leírás és útvonal szerkesztése"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Betû: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Használja a belépési könyvtár útvonalát parancsértelmezõ stílusban!"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Használja a HOME könyvtártól az útvonalat!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Elértük az oldalankénti maximális hivatkozások számát! Használjon fél oldalt vagy kétsoros görgetést."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Nem áll rendelkezésre meglátogatott hivatkozás!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "A memória kimerült! A program megszakítva!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "A memória kimerült! Megszakítás..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Nincs elég memória!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Könyvtár- vagy fájlkezelõprogram nem elérhetõ"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "A HREF a BASE tagban nem egy abszolút URL."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "Az URL nem abszolút."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "A frissítési URL nem abszolút."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Ön egy üzenet küld ide:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Ön egy üzenetet küld ide:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" Másolat ide:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Másolatok ide:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Használja a Ctrl G-t a megszakításhoz, ha mégsem akar üzenetet küldeni\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Kérem írja be a nevét, vagy hagyja üresen, ha névtelen akar maradni\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Kérem írja ide az email címét, vagy más elérhetõségét\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " ahol kapcsolatba léphetnek önnel, ha választ vár.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Kérem írja be a levél tárgyát.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Írja be azt a címet, ahova szeretne az üzenetrõl másolatot küldeni.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Hagyja üresen, ha nem akar másolatot.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Kérem nézze át az üzenet szövegét:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Nyomjon RETURN-t a folytatáshoz: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Nyomjon RETURN-t a törléshez: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Használja a Control-U -t a teljes törléshez\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Ide írhatja az üzenet szövegét."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Mikor kész, nyomjon ENTER-t, és egy üres sorba írjon pontot (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" egy sorban nyomjon újból ENTER-t."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s süti: %.*s=%.*s  Engedjük? (Igen/Nem/Mindig/Soha)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Elfogadjuk az érvénytelen süti tartományt=%s %s-nek?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Elfogadjuk az érvénytelen süti útvonalat=%s, mint '%s' elõtétjét?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "A süti elfogadása."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "A süti elutasítása."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "A sütis tálca üres."
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "A sütis tálca üres."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "A hivatkozás aktiválásával felfalhatja a sütiket vagy teljes tartományokat,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "vagy módosíthatja a tartomány 'engedélyezési' beállítását."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Sütiket soha nem engedélyezi.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Sütiket mindig engedélyezi.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Sütiket csak rákérdezés után engedélyezi.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Állandó sütik.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Nincs cím)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Nincs név.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Nincs érték.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "Nincs"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Folyamat vége.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "A süti törlése?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "A sütit megettük!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Töröljem ezt az üres tartományt?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "A tartományt megettük!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "A tartomány sütijeinek törlése (D), engedélyez mindig (A), kérdez (P), Soha (V), mégsem (C)?"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "A tartomány törlése (D), engedélyez mindig (A), kérdez (P), Soha (V), mégsem (C)?"
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Minden sütit megettünk ebben a tartományban!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "(A): Mindig engedélyezi a %s tartományt."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "(V): Soha nem engedélyezi a %s tartományt."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "(P): Rákérdez a %s tartomány engedélyezésére."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Töröljek minden sütit ebben a tartományban?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Az összes sütit megettük errõl a tálcáról!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "A 19-es port nem megengedett URL-ekben."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "A 25-ös port nem megengedett URL-ekben."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "A %lu port nem megengedett URL-ekben."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "Az URL-ben hibás a port beállítása."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Túlléptük a maximálisan egymásba ágyazható HTML elemszámot."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Hibás részleges hivatkozás! A soreleji pontokat elhagyom."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "A nyomozati napló megnyitása nem sikerült. Nyomozás kikapcsolva!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Lynx nyomozati napló"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Nincs nyomozati napló indítva ezen a folyamaton."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Elértük a maximális átmeneti fájlok számát!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Az ûrlap mezõ értéke nagyobb, mint a puffer hossza! Megpróbálom levágni a végét."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "A módosított véget kombináltam az ûrlapmezõ fejlécével."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Könyvtár"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "A könyvtárak tallózása nincs engedélyezve."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "A válogatott elérés nincs engedélyezve ezen a könyvtáron"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: a könyvtár vizsgálata sikertelen."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Ez a könyvtár nem olvasható."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Nem lehet elérni a kívánt fájlt."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Nem találtam megfelelõ ábrázolást az átvitelre."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Nem lehet megnyitni a fájlt a kitömörítéshez!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Fájlok:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Alkönyvtárak:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " könyvtár"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Fel "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "A jelenlegi könyvtár "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "Nem válaszol a szerver!"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "CSO index"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Ez egy CSO adatbázis kereshetõ indexe.\n"
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "CSO Keresés eredménye"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "A keresés nem sikerült: %s\n"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Nyomja le az 's' gombot, és írja be a keresendõ szavakat.\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Ez egy kereshetõ Gopher index.\n"
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "Gopher index"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "Gopher menü"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr " A keresés eredménye"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "CSO/PH kérés küldése."
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "Gopher kérés küldése."
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO/PH kérés elküldve; várakozás a válaszra."
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopher kérés elküldve; várakozás a válaszra."
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Írja be a keresendõ kulcsszavakat.\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"A megadott kulcsszavak lehetõvé teszik a keresést egy"
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr " személy neve után az adatbázisban.\n"
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "A kapcsolat bezáródott?"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr "Nem sikerült az átmeneti fájl megnyitása a hírek postázásához."
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Ez az ügyfél nem tartalmazza az SSL kapcsolaton keresztüli hírküldést."
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "%d stílus `%s' SGML:%s. %s font %.1f pont.\n"
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tIgazítás=%d, %d tab (%.0f elõtte, %.0f mögötte)\n"
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tTab típusa=%d a %.0f-nél\n"
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "Nem lehet folytatni felhasználói név és jelszó nélkül."
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Nem lehet újrapróbálni az azonosítást! Lépjen kapcsolatba a szerver webmesterével."
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Nem lehet újrapróbálni proxy felhatalmazást! Lépjen kapcsolatba a szerver webmesterével."
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr "Újra próbálkozom a proxy felhatalmazási információval."
+
+#: LYMessages.c:799
+#, fuzzy, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL hiba:host(%s)!=cert(%s)-Tovább?"
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: A visszaadott üzenet túl nagy."
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr "Gépelje be a WAIS keresést: "
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "Újra próbálom HTTP0 kéréssel."
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Továbbítva %d bájt"
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "Adatátvitel kész"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Hiba a feldolgozásban a %d. sorban (össz: %s)\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr "Címlista lap"
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "Könyvjelzõ fájl"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr "Beállítás meghatározásai"
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr "Sütis tálca"
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr "Jelenlegi billentyûkiosztás"
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "Fájlkezelési beállítások"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "Letöltési beállítások"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "Elõzmények lap"
+
+#: LYMessages.c:820
+#, fuzzy
+msgid "Cache Jar"
+msgstr "Sütis tálca"
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr "Lista lap"
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "Lynx.cfg információ"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr "Átalakított Mosaic gyorslista"
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "Beállítások menü"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "Fájl-jogok beállításai"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "Nyomtatási beállítások"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "Információ az aktuális dokumentumról"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "A legutóbbi állapotsori üzenetek"
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "Feltöltési beállítások"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr "Látogatott linkek lapja"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "Lásd még:"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr "az ön"
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr "futásidejû beállítások"
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "programfordítási beállítások"
+
+#: LYMessages.c:837
+msgid "color-style configuration"
+msgstr "szín-stílus beállítása"
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "A Lynx honlapja"
+
+#: LYMessages.c:839
+msgid "pre-release version"
+msgstr "A Lynx kiadás elõtti változata"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "Fejlesztõi változat helye"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"A következõ adatok ennek a Lynx példánynak az automatikus konfigurációja/\n"
+"fordítása alatt készültek. Ha hibajelentést küld, kérem mellékeljen \n"
+"egy másolatot errõl az oldalról. (másolat: 'p' parancs)"
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"A következõ adatok lettek felhasználva ennek a Lynx példánynak az automatikus\n"
+" konfigurálása során."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "Létrehoz (C), Letölt (D), Szerkeszt (E), Teljes menü (F), Módosít (M), Eltávolít (R), Jelöl (T), Feltölt (U)\n"
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr "Nem sikerült megállapítani az aktuális link állapotát!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Speciális URL csak az aktuális Fájl-Jogok menübõl érvényes!"
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr "A külsõ támogatás jelenleg le van tiltva."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+msgid "Changing working-directory is currently disabled."
+msgstr "A munkakönyvtár váltás most le van tiltva."
+
+#: LYMessages.c:864
+msgid "Linewrap OFF!"
+msgstr "Sortörés KI!"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr "Sortörés BE!"
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Egymásba ágyazott táblázatok kikapcsolva! Újratöltés..."
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Egymásba ágyazott táblázatok bekapcsolva! Újratöltés..."
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Az eltolás le van tiltva a sortörés alatt"
+
+#: LYMessages.c:869
+msgid "Trace not supported"
+msgstr "A nyomozás nincs támogatva"
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tÖsszetevõk: elsõ=%.0f többi=%.0f, Magasság=%.1f Leírás=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "'%s' %s '%s%s' felhasználónév:"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Ez a program nem tudja, hogyan kell összeállítani proxy jogosultságot ehhez a sémához"
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Ez az ügyfél nem tudja, hogyan kell összeállítani jogosultságot ehhez a sémához"
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Helytelen fejléc: '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "Proxy felhatalmazás szükséges -- újra"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "Felhatalmazás nélküli elérés megtagadva -- újra"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "Az elérést szabály tiltja"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "POST tartalommal rendelkezõ dokumentum nem található a gyorstárban. Újratöltsem?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr "A betöltés sikertelen, korábbi példány használata."
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr "A betöltés nem teljes."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: elavult betöltési rutin által adott socket vagy fájl szám!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTaccess: Belsõ programhiba. Kérem írjon egy emailt a lynx-dev@nongnu.org címre (angolul)!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Visszatérési állapot: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr "Nem lehet elérni"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "Nem lehet elérni a dokumentumot."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Kérem a %s@%s felhasználó jelszavát:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Nem lehet kapcsolódni az FTP kiszolgálóhoz."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "a fõ socket bezárása"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "socket a fõ-socket-hez"
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "Szimbolikus hivatkozás"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "FTP könyvtár fogadása."
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Letöltve: %d bájt (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr "kapcsolás az adatért"
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "FTP fájl fogadása."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "Nem lehet finger csatlakozást felépíteni."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Nem lehet betölteni az adatokat (nincs megadva webhely a finger URL-ben)"
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "Érvénytelen port szám - csak a 79-es port lesz használva!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "Nem lehet elérni a finger gazdagépet."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "Nem válaszol a finger szerver."
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Felhasználónév a(z) '%s' hírszolgáltatóhoz:"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "Felhasználónév módosítása?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "Felhasználói név:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Jelszó a(z) '%s' hírszolgáltatóhoz:"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "Jelszó módosítása?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "Nincs illeszkedés: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Nincs cikk ebben csoportban.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Nincs cikk ebben tartományban.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s, Cikk: %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "Korábbi cikkek"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Körülbelül %d cikk van itt: %s, a következõ azonosítókkal:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "Minden rendelkezésre álló cikk "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "Újabb cikkek"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "Cikk írása "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Ez az ügyfél nem támogatja az SNEWS URL-eket."
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr "Nincs cél a nyers szöveghez!"
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "Kapcsolódás NewsHost-hoz..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "Nem lehet elérni %s-t."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Nem lehet olvasni a hír információkat. A %.20s hírszolgáltató válasza: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Nem lehet olvasni a hír információkat. A %s hírszolgáltató üres választ adott"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "A rendelkezésre álló hírcsoportok olvasása."
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "A hírlista olvasása a hírcsoportból."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "Cikk olvasása."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr "Sajnálom, nem tudom betölteni a hírt."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "A címben érvénytelen a port"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "A cím hosszúsága érvénytelen"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Nem találom a %s távoli számítógépet."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "A %s helytelen gépnév"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "%s csatlakozás létrehozása ide: %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "az illesztõpont sérült."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "az illesztõpont sérült: család: %d cím: %s port: %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Nem sikerült a nem blokkolt csatlakozás."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "A kapcsolat sikertelen (túl sok próbálkozás)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Nem lehet visszaállítani az illesztõpontot blokkoltra."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+#, fuzzy
+msgid "Socket read failed (too many tries)."
+msgstr "A kapcsolat sikertelen (túl sok próbálkozás)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "A cím felhasználói nevet tartalmaz: %s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Ez az ügyfél nem támogatja a HTTPS URL-eket."
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr "Nem lehet kapcsolódni a távoli számítógéphez."
+
+#: WWW/Library/Implementation/HTTP.c:669
+msgid "Retrying connection without TLS."
+msgstr "Újbóli csatlakozás TLS nélkül."
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+#, fuzzy
+msgid "the certificate has been revoked"
+msgstr "A sütit megettük!"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+#, fuzzy
+msgid "Can't find common name in certificate"
+msgstr "SSL hiba: nem található azonos név a bizonyítványban - folytatjuk?"
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL hiba:host(%s)!=cert(%s)-Tovább?"
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Biztonságos %d-bit %s (%s) HTTP csatlakozás"
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "HTTP kérés küldése."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr "Váratlan hálózati írási hiba; a csatlakozás megszakítva."
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP kérés elküldve, várakozás a válaszra."
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr "Váratlan hálózati olvasási hiba, a csatlakozás megszakítva."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr "Váratlan tájékoztatást kaptam az állapotról."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr "Kérés teljesítve. Állítsa vissza a tartalmat."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Váratlan 304-es hiba: Nem lett módosítva az állapot."
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr "A POST tartalom átirányításához felhasználói engedély kell."
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "POST tartalom. Az állandó átirányítást átmenetiként kezelem.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr "Újra próbálom elérés felhatalmazási információval."
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr "Mutassam a 401-es üzenet szövegét?"
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr "Mutassam a 407-es üzenet szövegét?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr "A szerver válasza: Ismeretlen állapot!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "távoli %s folyamat:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Nem lehet kapcsolódni WAIS szerverhez."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Nem lehet megnyitni WAIS csatlakozást az olvasáshoz."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "A diagnosztikai kód "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Index "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " tartalmazza a következõ %d elemet %s fontos \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Minden bejegyzés után álló elsõ számjegy egy arányos pontszám, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "a második a sorok száma a tételben."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (hibás fájlnév)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(hibás dok. azonosító)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Rövid fejléc-rekord, nem lehet megjeleníteni)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Hosszú fejlécrekord, nem lehet megjeleníteni\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Szöveg rekord\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Fejléc-rekord, nem lehet megjeleníteni\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Kód rekord, nem lehet megjeleníteni\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Szintaktikai hiba a WAIS URL-ben"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS Index)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS Index: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Ezt a hivatkozást keresem a "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS Indexben.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Adjon ki keresés parancsot (S), és határozza meg a keresendõ szavakat.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " ("
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS Keresés: \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" itt: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: A kérés túl nagy."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Keresés a WAIS adatbázisban..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "A keresés megszakítva."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Nem lehet átalakítani WAIS dokumentum formátumot"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: A kérés túl hosszú."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "WAIS dokumentum lehívása..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Nem jött vissza szöveg!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr " NINCS MEGADVA a forrás fájlban, "
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr " WAIS forrás fájl"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " leírás"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "Hivatkozás elérése"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "Közvetlen elérés"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (vagy proxykiszolgálón keresztül, ha meg van adva)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "Karbantartó"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "Kiszolgáló"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "A memória elfogyott, megjelenítés megszakítva!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "A memória elfogyott, az átvitel meg lesz szakítva!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** A MEMÓRIA ELFOGYOTT ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "ismeretlen mezõ vagy hivatkozás"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "szöveg bejegyzés mezõ"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "jelszó bejegyzés mezõ"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "jelölõnégyzet"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "választógomb"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "küldõ gomb"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "törlés gomb"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "felbukkanó menü"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "rejtett ûrlap mezõ"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "szöveg bejegyzés terület"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr "tartomány bejegyzés mezõ"
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "fájl bejegyzés mezõ"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr "szöveg-küldõ mezõ"
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "kép-küldõ mezõ"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr "kulcsgeneráló mezõ"
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "ismeretlen ûrlap mezõ"
+
+#: src/GridText.c:10279
+msgid "Can't open file for uploading"
+msgstr "Nem lehet megnyitni a fájlt a feltöltéshez"
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr "%s továbbítása"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Akadásjelzés: A TextAnchor szerkezete sérült - javaslom a megszakítást!"
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr "Tördeljem a sorokat, hogy kiférjenek?"
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr "A hosszú sorokat új sorba tördeltem!"
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr "A hosszú sorok végét levágtam!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "bájt"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "%s adat olvasása"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Adat olvasása: %s (összesen: %s)"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/sec"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (megállt %s sec-ra)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", ETA %s sec"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Nyomja le a 'Z'-t a megszakításhoz)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "igen"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "nem"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr "I/N/M/S"
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "Leírás:"
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr "(nincs)"
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr "Útvonal:"
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(ismeretlen)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "(A dokumentum csak rejtett hivatkozásokat tartalmaz. Használja az 'L' parancsot."
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr "Forrás gyorstárazási hiba - a lemez megtelt?"
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr "Forrás gyorstárazási hiba - nincs elég memória!"
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"      Ez a fájl HTML ábrázolása egy X Mosaic gyorslista fájlnak.\n"
+"      A régi vagy érvénytelen hivatkozásokat törölheti\n"
+"      a könyvjelzõ eltávolítás paranccsal, ami általában az \n"
+"      'R' billentyû (lehet, hogy ez meg lett változtatva)."
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     A hivatkozásokat az 'R' billentyûvel törölheti<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"      A hivatkozásokat törölheti a könyvjelzõ eltávolítás paranccsal.\n"
+"      Ez általában a 'R' billentyû, de lehet, hogy ez meg lett változtatva."
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Ez a fájl szövegszerkesztõvel módosítható, törölhetõk a \n"
+"     régi vagy érvénytelen hivatkozások, vagy módosítható a sorrendjük."
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Megjegyzés: ha ön ezt a fájlt kézzel szerkeszti,\n"
+"      nem szabad változtatnia a sor felépítésén, és\n"
+"      ne adjon hozzá más HTML tagot.\n"
+"      Gyõzõdjön meg róla, hogy minden hivatkozás egy sorban van."
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "A fájl még helyreállítható innen: %s, ebben a folyamatban"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Nem lehet elérni a cgi alkalmazói programot"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Jó tanács"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Egy kitûnõ http szerver VMS-hez rendelkezésre áll"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "ezen a linken keresztül"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Nagyon jól támogatja a CGI szkripteket.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Kilépés megszakításon keresztül:"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr "(egy elõzõ folyamatból)"
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr "Maximális evési dátum:"
+
+#: src/LYCookie.c:2562
+msgid "Internal"
+msgstr "Belsõ"
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "cookie_domain_flag_set hiba, program megszakítva"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Terminál megnyitás sikertelen - ismeretlen terminál típus?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "Terminál ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Önnek vt100, 200 stb.-t kell használnia ehhez a programhoz."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "A terminál típus ismeretlen!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "Kérem a terminál típusát:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "A TERMINÁL TÍPUS BEÁLLÍTVA:"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Végzetes hiba lépett fel a %s %s verzióban\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Kérem beszéljen a rendszergazdájával, hogy ellenõrizze a hibát,\n"
+"és ha õ megerõsítette, akkor küldjön egy jelentést a lynx-dev listára.\n"
+"A hibajelentésbe írja bele: a parancs leírását, melyik URL-el volt gond,\n"
+" az operációs rendszert verziószámmal együtt, a TCP/IP implementációt \n"
+"(ha tudja), mi hozta létre a hibát és egyéb fontos lényegeket.\n"
+
+#: src/LYEdit.c:266
+#, fuzzy, c-format
+msgid "Error starting editor, %s"
+msgstr "Hiba a feldolgozásban a %d. sorban (össz: %s)\n"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Szerkesztõprogram kilõve:"
+
+#: src/LYEdit.c:274
+#, fuzzy, c-format
+msgid "Editor returned with error status %s"
+msgstr "A szerkesztõprogram a következõ hibaállapottal tért vissza: %s"
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "Letöltött link:"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "Javasolt fájlnév:"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "Alapvetõ letöltési beállítások:"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "Letöltési beállítások:"
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "Mentés lemezre"
+
+#: src/LYDownload.c:545
+msgid "View temporary file"
+msgstr "Átmeneti fájl nézése"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "Mentés lemezre le van tiltva."
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Helyi adalékok:"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Nincs név megadva"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Kiválasztva:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(nincs cím)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (belsõ)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (belsõ volt)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (Elõzményekbõl)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Ön itt volt (POST, könyvjelzõ, menü és listafájl kihagyva):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Még nincs üzenet)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Helytelen mutatót észleltem."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "Sorozat:"
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Mutató:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Fájlnév:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Sorok száma:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Memóriaszivárgást észleltem."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Tartalom:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Bájtméret:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "újra lefoglalva:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Összes memóriaszivárgás ebben a futtatásban:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr "Lefoglalási csúcs"
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "bájt lefoglalva"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr "Össz 'malloc'"
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr "Össz 'free'"
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Hivatkozások itt: "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "ez a dokumentum:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Látható hivatkozás:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Rejtett hivatkozás:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Hivatkozások"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Látható hivatkozás"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Nem lehet a(z) %s állapotát meghatározni."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "A kiválasztott elem nem fájl vagy könyvtár! A kérés figyelmen kívül hagyva."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "A(z) %s nem végrehajtható, rendszerhiba miatt!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Valószínûleg sérült %s, rendszerhiba miatt!"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "%s eltávolítása"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr "%s létrehozása"
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "%s mozgatása ide: %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Ezen a néven már létezik egy könyvtár! A kérés figyelmen kívül hagyva."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Ezen a néven már létezik egy fájl! A kérés figyelmen kívül hagyva."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "A megadott név már használatban van! A kérés figyelmen kívül hagyva."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "A célnak más a tulajdonosa! Kérés megtagadva."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "A cél nem érvényes könyvtár! Kérés megtagadva."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Minden megjelölt fájl és könyvtár eltávolítása?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Kérem az új helyét a megjelölt elemeknek: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Az elérési út túl hosszú"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "A forrás és a cél ugyanaz az hely - figyelmen kívül hagyva!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Kérem az új könyvtárnevet: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Kérem az új fájlnevet: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Érvénytelen karaktert találtam (elérési út elválasztó)! Kérés figyelmen kívül hagyva."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Kérem a könyvtár új helyét: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Kérem a fájl új helyét: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Váratlan hiba - hiányzik a záró elérési út elválasztó"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "A forrás és a cél ugyanaz az hely - figyelmen kívül hagyva!"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Név (N), hely (L) vagy jogok (P) módosítása:"
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Név (N) vagy hely (L) módosítása:"
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Ez a képesség még nincs készen!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Kérem a létrehozandó fájl nevét: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Érvénytelen átirányítás \"//\"! A kérés figyelmen kívül hagyva."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Kérem az új könyvtár nevét: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Fájl (F) vagy könyvtár (D) létrehozása: "
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "'%s' könyvtár eltávolítása?"
+
+#: src/LYLocal.c:1169
+msgid "Remove directory?"
+msgstr "Könyvtár eltávolítása?"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "'%s' fájl eltávolítása?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Fájl eltávolítása?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Eltávolítsam a %s szimbolikus hivatkozást?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Eltávolítsam a szimbolikus hivatkozást?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Sajnálom, nem tudom hogy kell engedélyezni a nem-UNIX fájlokat."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Nem lehet megnyitni az engedély beállítások fájlt"
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Adja meg a jogosultságokat:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Tulajdonos:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Csoport"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "A többiek:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "engedélyezve"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Érvénytelen mód formátum."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Érvénytelen szintaktika."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Figyelmeztetés! UU-dekódolt fájl jön létre abban a könyvtárban, ahonnan elindította a Lynxet."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "ÜRES URL mutató"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "%s futtatása "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Rendszerparancs végrehajtása. Ez eltarthat egy ideig."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Aktuális könyvtár:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Jelenlegi kiválasztás:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Semmi nincs kiválasztva."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "jelölt elem:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "jelölt elemek:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Érvénytelen fájlnév; a kérés figyelmen kívül hagyva."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "A telepítés nincs engedélyezve a kiválasztott könyvtárba."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "A kiválasztott elem nem könyvtár! A kérés figyelmen kívül hagyva."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Egy pillanat, ..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr "Hiba a telepítési paraméterek létrehozása során"
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "A forrás és a cél ugyanaz: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Már a cél könyvtárban van: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Telepítés kész"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "Az átmeneti URL vagy lista túl hosszú."
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Küldés"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "A hivatkozás :%s :?: %s \n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "\"%s\" meghívva\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "a(z) %s fájlban meghívtam a(z) \"%s\"-t\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "igényeltem, de nem állt rendelkezésre."
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "Azt hiszem, jó tudni."
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "Ez az üzenet önmûködõen jött létre"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr "Nincsen rendszerszintû levelezõ beállítva"
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr "Nem találtam Winsock-ot, sajnálom."
+
+#: src/LYMain.c:1226
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Önnek meg kell adnia egy érvényes TMP vagy TEMP területet"
+
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+msgid "No such directory"
+msgstr "Nincs ilyen könyvtár"
+
+#: src/LYMain.c:1464
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"A(z) %s konfigurációs fájl nem áll rendelkezésre.\n"
+"\n"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Nincs deklarált karakterkészlet a Lynx-ben.\n"
+"\n"
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Nincs deklarált szerkesztõkép a Lynx-ben.\n"
+"\n"
+
+#: src/LYMain.c:1579
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"A(z) %s Lynx-fájl nem áll rendelkezésre.\n"
+"\n"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr "Figyelem:"
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr "az állandó süti állapot csak a következõ folyamat során fog megváltozni."
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "A Lynx figyelmen kívül hagyja a %s fel nem ismert karakterkészletet\n"
+
+#: src/LYMain.c:3181
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Verzió %s (%s)"
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Készítve %s %s %s\n"
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+#, fuzzy
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "A szerzõi és kiadó jogokat a Kansas Egyetem, a CERN és az egyéb közremûködõk gyakorolják."
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "A GNU Általános Nyilvános Licensz szerint kiadva."
+
+#: src/LYMain.c:3244
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Nézze meg a súgót és a http://lynx.isc.org/-ot, ahol segítséget kaphat."
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "HASZNÁLAT: %s [opciók] [fájl]\n"
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr "Opciók:\n"
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Érvénytelen opció: %s \n"
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Belsõ hiba: Hibás egér hivatkozás %d!"
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr "Felhasználó által megadott URL"
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Enctype multipart/form-data még nincs támogatva! Nem tudjuk elküldeni."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr "Súgó képernyõ"
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr "Rendszer index"
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr "Belépés a fõképernyõbe"
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr "Nincs további dokumentum"
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "a dokumentum karakterkészlete már be van állítva..."
+
+#: src/LYMainLoop.c:5052
+msgid "cd to:"
+msgstr "könyvtárváltás:"
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr "Az útvonal egy összetevõje nem könyvtár"
+
+#: src/LYMainLoop.c:5080
+msgid "failed to change directory"
+msgstr "nem sikerült a  könyvtárváltás"
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr "A dokumentumot átalakítom az aktuális beállításoknak megfelelõen..."
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Végzetes hiba: nem lehet megnyitni a(z) '%s' kimeneti fájlt\n"
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr "'Táblázat középre' engedélyezve."
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr "'Táblázat középre' tiltva."
+
+#: src/LYMainLoop.c:6960
+msgid "Current URL is empty."
+msgstr "Üres a pillanatnyi URL."
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "Sikertelen a vágólapra másolás."
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr "A dokumentum URL-jét a vágólapra tesszük."
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr "A link URL-jét a vágólapra tesszük."
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr "Nincsen URL a vágólapon."
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+msgid "-index-"
+msgstr "-index-"
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr "lynx: Nincs kezdõfájl!"
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: A kezdõfájlt nem találom (sem HTML szöveget, sem sima szöveget)"
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr "      Kilépés..."
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr "-tovább-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Ön levelet fog küldeni:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Kérem adja meg a postacímét a fejléc \"Feladó:\" sorába\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Adja meg vagy szerkessze a fejléc \"Tárgy:\" sorát\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Adja meg vagy szerkessze a fejléc \"Szervezet:\" sorát\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Kérem írja be az üzenetet ez alá."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Az üzenetben nincs eredeti szöveg!"
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "(B): a könyvjelzõ fájlok áttekintése/szerkesztése"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "(B): a könyvjelzõ fájl: "
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr "BE"
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr "KI"
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr "SOHA"
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr "MINDIG"
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr "hanyagol"
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr "kérdez"
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr "mindent elfogad"
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr "Mindig: KI"
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr "Csak helyi fájlokra"
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr "Mindig: BE"
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr "A számok mint nyilak"
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr "A linkek számozottak"
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr "Linkek és ûrlapok számozottak"
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr "Ûrlap mezõk számozottak"
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr "Kis/nagybetûre érzéketlen"
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr "Kis/nagybetûre érzékeny"
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr "szokásos kérdés"
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr "mindig IGEN-válasz"
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr "mindig NEM-válasz"
+
+#: src/LYOptions.c:2242
+msgid "Novice"
+msgstr "Kezdõ"
+
+#: src/LYOptions.c:2243
+msgid "Intermediate"
+msgstr "Haladó"
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr "Profi"
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr "Elsõ alkalommal"
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr "Elsõ alkalommal, megfordítva"
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr "Látogatási fa"
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr "Utolsó látogatás"
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr "Utolsó látogatás, megfordítva"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr "enyhe (TagSoup mód)"
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr "szigorú (SortaSGML mód)"
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr "címkék"
+
+#: src/LYOptions.c:2279
+msgid "as links"
+msgstr "linkek"
+
+#: src/LYOptions.c:2286
+msgid "show filename"
+msgstr "fájlnév mutatása"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr "SZOKÁSOS"
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr "FEJLETT"
+
+#: src/LYOptions.c:2329
+msgid "Directories first"
+msgstr "Elõbb könyvtárak"
+
+#: src/LYOptions.c:2330
+msgid "Files first"
+msgstr "Elõbb fájlok"
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr "Kevert stílus"
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+msgid "By Name"
+msgstr "Név szerint"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr "Típus szerint"
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+msgid "By Size"
+msgstr "Méret szerint"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+msgid "By Date"
+msgstr "Dátum szerint"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr "Mód szerint"
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr "Felh. szerint"
+
+#: src/LYOptions.c:2346
+msgid "By Group"
+msgstr "Csoport szerint"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr "Ne mutassa a sebességet"
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "Az átviteli sebesség megjelenítése (%s/s)"
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "%s/s mutatása, ETA"
+
+#: src/LYOptions.c:2379
+#, fuzzy
+msgid "Show progressbar"
+msgstr "Csúszka mutatása"
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr "Lynx belsõ típusainak elfogadása"
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr "lynx.cfg fájl típusainak elfogadása"
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr "Felhasználói típusok elfogadása"
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr "Rendszer-típusok elfogadása"
+
+#: src/LYOptions.c:2395
+msgid "Accept all types"
+msgstr "minden típust elfogad"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr "kibont (deflate)"
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr "compress"
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr "mindegyik"
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Használja a(z) %s-t, hogy bejöjjön a Beállítások menü!"
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr "(a '!'-el jelölt opciók nem lesznek megõrizve!)"
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "Általános beállítások"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "Felhasználói mód"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "Szerkesztõ"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "Keresés típusa"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr "Biztonság és magánszféra"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "Sütik"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr "Érvénytelen süti"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr "SSL választás"
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "Billentyûzet bevitel"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "Numerikus pad módja"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "Emacs billentyûk"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "vi billentyûk"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr "Sorszerkesztõi stílus"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr "Billentyûzet kiosztás"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "Képernyõ és karakterkészlet "
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+msgid "Use locale-based character set"
+msgstr "Helyi karakterkészlet használata"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "Képernyõ karakterkészlet"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "Feltételezett karakterkészlet"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "CJK mód"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "Nyers 8-bites mód"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "X képernyõ"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "Dokumentum megjelenése"
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "Színek mutatása"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "Kurzor mutatása"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+msgid "Underline links"
+msgstr "Rejtett hivatkozás"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr "Csúszka mutatása"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr "Felbukkanó ablakok használata"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "HTML hiba helyreállítás"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "Képek mutatása"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "Tallózás a képek között"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "A távoli gépeknek átküldött fejlécek"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "Személyes email cím"
+
+#: src/LYOptions.c:3760
+#, fuzzy
+msgid "Password for anonymous ftp"
+msgstr "Jelszó a(z) '%s' hírszolgáltatóhoz:"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+msgid "Preferred media type"
+msgstr "Elsõdleges média-típus"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+msgid "Preferred encoding"
+msgstr "Elsõdleges kódolás"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "Elsõdleges karakterkészlet"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "Elsõdleges nyelv"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "Böngészõ-azonosító fejléc"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "Fájlok listázása és elérése"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "FTP-s rendezés módja"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "Helyi könyvtárrendezés módja"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+msgid "Local directory sort order"
+msgstr "Helyi könyvtárrendezés sorrendje"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "Rejtett fájlok mutatása"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "Futtatható hivatkozások"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr "Az átviteli sebesség megjelenítése"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "Speciális fájlok és képernyõk"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "Többszörös könyvjelzõk"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "Könyvjelzõk szerkesztése, átnézése"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "Ugrás a többszörös könyvjelzõi menübe"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "Könyvjelzõ fájl"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "Meglátogatott lapok"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr "A fájl nézése "
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr "Nyomtatási munka kész.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Dokumentum:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Sorok száma:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Oldalak száma:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "oldal"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "oldal"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(körülbelül)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Néhány nyomtatási funkció le van tiltva!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Nyomtatási alapbeállítások: "
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Nyomtatási beállítások:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Mentés helyi fájlba"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "A lemezre mentés le van tiltva"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Fájl küldése levélben"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Nyomtatás a képernyõre"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Nyomtatás a vt100-as terminálhoz csatlakozó nyomtatóra."
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Szintaktikai hiba a konfigurációs fájl SZÍNEK (COLOR) részében\n"
+"A sor a következõ szerkezetû legyen:\n"
+"SZÍN:EGÉSZ:ELÕTÉR:HÁTTÉR\n"
+"\n"
+"Itt az ELÕTÉR és a HÁTTÉR a következõ lehet:\n"
+"A különleges szavak lehetnek 'nocolor' vagy 'default', vagy\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Nem jó sor:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "a %s billentyû átállítása %s-re nem sikerült (%s)\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "a %s billentyû átállítása %s-re nem sikerült\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "%s: érvénytelen sor-szerkesztõ kiválasztás %s gombnak, összes kiválasztva\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "a sorszerkesztõ hozzárendelése a %s gombnak (0x%x) a 0x%x-hez (%s) sikertelen\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "a sorszerkesztõ hozzárendelése %s gombhoz (0x%x) sikertelen (%s)\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Nem tud elindulni, a CERN szabály fájlja nem áll rendelkezésre (%s)\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(névtelen)"
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Több mint %d egymásba-ágyazást találtam a lynx.cfg-ben -- hurok alakult ki???\n"
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Az utolsó beillesztés %s volt,\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "beszúrva innen: %s.\n"
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr "Az itt következõk a lynx.cfg fájlban olvashatók."
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr "Kérem olvassa el az ide vonatkozó leírást ("
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr ") további információért."
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr "VÁLTOZÁSOK ÚJRATÖLTÉSE"
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr "Az elsõdleges beállítás:"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "A könyvtár, amit jelenleg néz:"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Név:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "A kiválasztott könyvtár"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "A kiválasztott fájl"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "A kiválasztott szimbolikus link"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "A kiválasztott elem"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "Teljes név:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "Nem tudom követni a linket"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "Erre a fájlra mutat:"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "Tulajdonos neve:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Csoport neve:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Fájl méret:"
+
+#: src/LYShowInfo.c:227
+msgid "(bytes)"
+msgstr "(bájt)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Létrehozás dátuma:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Utolsó módosítás:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Utolsó hozzáférés:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Elérési jogok"
+
+#: src/LYShowInfo.c:279
+msgid "Group:"
+msgstr "Csoport"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr "Világ:"
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Az aktuális fájl"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Hivatkozásnév:"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Karakterkészlet:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr "(feltételezett)"
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Kiszolgáló:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Dátum:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Utolsó módosítás:"
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr "Lejár:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Gyorstár vezérlés:"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "Tartalom hossz:"
+
+#: src/LYShowInfo.c:362
+#, fuzzy
+msgid "Length:"
+msgstr "Tartalom hossz:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Nyelv:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "Elküldött adat:"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "Elküldött tartalom-típus:"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Tulajdonos:"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "méret:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "sor"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "ûrlap mód"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "forrás"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "normál"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", biztonságos"
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ", belsõ hivatkozáson keresztül"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", gyorstár nélkül"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", ISMAP parancsállomány"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", könyvjelzõ fájl"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "mód:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Az aktuális link"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Módszer:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "Kódolás típusa:"
+
+#: src/LYShowInfo.c:436
+msgid "Action:"
+msgstr "Mûvelet:"
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(Ûrlap mezõ)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "Nincs hivatkozás ezen a lapon"
+
+#: src/LYShowInfo.c:455
+msgid "Server Headers:"
+msgstr "Kiszolgáló fejléc:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Szintaktikai hiba az lss fájlban:\n"
+"[%s]\n"
+"A sornak a következõ szerkezete legyen:\n"
+"TÁRGY:MONO:SZÍN (pl. em:bold:brightblue:white)\n"
+"ahol a TÁRGY lehet: EM, STRONG, B, I, U, BLINK stb.\n"
+"\n"
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "itt egy lista az elõzmények veremrõl, így újra tudja építeni"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "HIBA! - a feltöltési parancs nincs jól beállítva"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Érvénytelen átirányítás! \"../\" A kérés figyelmen kívül hagyva."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Érvénytelen karakter! \"/\" A kérés figyelmen kívül hagyva."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Érvénytelen átirányítás! \"~\" A kérés figyelmen kívül hagyva."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Nem lehet feltölteni a fájlt."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Feltöltés:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Feltöltési beállítások:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr "A letöltendõ dokumentum URL-jét a vágólapra tesszük."
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Nem támogatott elérési protokoll ezen az URL sémán."
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr "Túl sok átmeneti fájl"
+
+#: src/LYUtils.c:3719
+msgid "unknown restriction"
+msgstr "ismeretlen szigorítás"
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Nincs szigorítás beállítva.\n"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Szigorítási beállítás:\n"
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr "Nem találom a HOME könyvtárat"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Általában letiltva. Nézze meg az ENABLE_LYNXRC-t a lynx.cfg-ben\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"Az accept_all_cookies TRUE-ra állítása lehetõvé teszi a sütik automatikus\n"
+" fogadását. Alapban FALSE, így mindig rákérdez.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"a bookmark_file eltárolja annak a fájlnak a nevét és helyét, amibe linkeket\n"
+" lehet felvenni, és késõbb felhasználni.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Ha a case_sensitive_searching \"on\", akkor a keresés megkülönbözteti\n"
+" a kis- és nagybetûket. Az alapbeállítás az \"off\" állapot.\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"A character_set definíció vezérli a 8 bites megjelenítést a terminálon.\n"
+"Ha a 8 bites betûk nem megfelelõen látszanak, akkor megpróbálhatja\n"
+"használni a 7 bites karaktereket.\n"
+"A jelenlegi karakterkészletek:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"A cookie_accept_domains és a cookie_reject_domains vesszõvel elválasztott\n"
+"tartomány-listák, ahonnan a Lynxnek automatikusan el kell fogadnia, \n"
+"vagy elvetnie a kapott sütiket. Ha egy tartomány mindkét listában szerepelne,\n"
+"az elutasítás lép érvénybe. Az accept_all_cookies felülírja az itt megadott\n"
+"beállítást.\n"
+
+#: src/LYrcFile.c:357
+#, fuzzy
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr "A cookie_file az a fájl, ahonnan az állandó sütiket be kell olvasni. Alaphelyzetben ez a ~/.lynx_cookies.\n"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"A cookie_loose_invalid_domains, a cookie_strict_invalid_domains, és\n"
+"a cookie_query_invalid_domains vesszõvel elválasztott tartomány-listák,\n"
+" ahonnan különbözõ mértékû azonosítást kívánunk meg. Ha egy tartomány\n"
+"'strict checking'-re van állítva, akkor az RFC2109-nek megfelelõ eljárás\n"
+"lép érvénybe. A 'loose checking' megengedi a sütik érvénytelen útvonallal\n"
+"való elfogadását. Alapbeállításban a felhasználó egy kérdést kap, melyben\n"
+"eldöntheti, hogy elfogadja-e az érvénytelen útvonalat vagy tartományt.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"A dir_list_order határozza meg a könyvtárlista rendezését, a \n"
+"DIRED_SUPPORT-nál (ha rendelkezésre áll). Alaphelyzet: \"ORDER_BY_NAME\"\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"A dir_list_styles határozza meg a könyvtárlista módját a DIRED_SUPPORT-nál\n"
+"(ha rendelkezésre áll). Alaphelyzet: \"MIXED_STYLE\", amiben a könyvtárak\n"
+"és a fájlok egy listában vannak. A \"FILES_FIRST\" elõször a fájlokat\n"
+" listázza, a \"DIRECTORIES_FIRST\" elõször a könyvtárakat.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Ha az emacs_keys \"on\" állásban van, akkor az alábbi EMACS gombok \n"
+"használhatók:\n"
+"  ^N = le      ^P = fel\n"
+"  ^B = balra   ^F = jobbra\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"A file_editor rendeli a szerkesztõt a helyi fájlokhoz vagy levelekhez.\n"
+"Ha ez nincs meghatározva, akkor a fájl szerkesztés letiltódik, hacsak nem\n"
+"parancssorból lett aktiválva, mert akkor a beépített szerkesztõt lehet\n"
+"használni a levélíráshoz.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"A file_sorting_method meghatározza, hogy melyik érték szerint rendezze\n"
+"sorba az éppen látható FTP könyvtárat. Az opciók:\n"
+"   BY_FILENAME -- fájlnév szerint rendez\n"
+"   BY_TYPE     -- fájl típusa szerint rendez\n"
+"   BY_SIZE     -- fájl mérete szerint rendez\n"
+"   BY_DATE     -- fájl dátuma szerint rendez\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"\"A lineedit_mode határozza meg azokat a hozzárendeléseket, amiket az\n"
+"ûrlapoknál használunk. Ha a lineedit_mode \"Default Binding\"-re van állítva\n"
+"(alapértelmezés), akkor a következõ vezérlõkaraktereket lehet használni\n"
+"mozgásra és törlésre:\n"
+"\n"
+"                    Elõzõ   Köv.   Enter = rendben\n"
+"Mozgás karakterre:   <-      ->    ^G = mégsem \n"
+"Mozgás szóra:        ^P      ^N    ^U = sor törlése \n"
+"Karakter törlése:    ^H      ^R    ^A = sor elejére\n"
+"Szó törlése:         ^B      ^F    ^E = sor végére \n"
+"A pillanatnyi 'lineedit' módok:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Itt definiálhatjuk az al-könyvjelzõ fájlokat és leírásukat.\n"
+"A forma a következõ: többszörös_könyvjelzõ<nagy_betû>=<fájlnév>,<leírás>\n"
+"Összesen 26 könyvjelzõt lehet létrehozni (az angol ABC nagy betûibõl)\n"
+"Kezdjük a \"multi_bookmarkB\"-vel, mivel az 'A' az alapbeállítás.\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"A personal_mail_address határozza meg az ön személyes email címét. Ez a\n"
+"cím lesz elküldve HTTP fájl átvitel hitelesítésekor, tárolva lesz, amikor\n"
+"bejelentkezik egy gépre és amikor egy levelet küld.\n"
+"Ha nem akarja, hogy ezt az adatot kiadja a program, akkor \n"
+"állítsa be a NO_FROM_HEADER-t TRUE-ra a lynx.cfg-ben, vagy használja\n"
+"a -nofrom parancssori kapcsolót. Üresen is hagyhatja a mezõt, akkor\n"
+"nem lesz benne az elküldött levélben.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"A preferred_charset meghatározza a MIME jelölés karakterkészletét (pl.\n"
+"ISO-8859-2, ISO-8859-5) amit a Lynx jelez a http szervernek az Accept-Charset\n"
+"fejlécen keresztül. Fölösleges az ISO-8859-1 vagy US-ASCII beállítás,\n"
+"mert ezeket alapból használja.\n"
+"Készíthetünk belõlük kettõsponttal elválasztott listát.\n"
+"Ha a karakterkészlet elérhetõ, a szerver azt küldi.\n"
+"Ha nincs Accept-Charset fejléc, akkor az összes karakterkészletet\n"
+"elfogadjuk. Ha az Accept-Charset létezik, de a szerver nem tud küldeni\n"
+"ennek megfelelõ választ, akkor a szervernek hibaüzenetet\n"
+"kell küldenie, bár elfogadhatatlan válasz is lehetséges.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"A preferred_language meghatározza a MIME jelölés nyelvét (pl: hu, en,\n"
+"fr; ezeket csökkenõ fontossági sorrendben kettõsponttal el lehet\n"
+"választani egymástól), amit a Lynx jelezni fog a http szerver felé. Ha\n"
+"a fájl ezen a nyelven elérhetõ, akkor a szerver azt küldi vissza. \n"
+"Egyébként a szerver az általa alapértelmezettnek vett nyelven fog beszélni.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Ha a run_all_execution_links \"on\"-ra van állítva, akkor minden\n"
+" végrehajtható link kiválasztás után végrehajtódik.\n"
+"\n"
+"FIGYELEM - Ez egy NAGYON veszélyes beállítás. Minthogy ismeretlen\n"
+"           forrás által készített anyagot használunk, \n"
+"           megvan a lehetõsége, hogy trójai programot indítunk el.\n"
+"           A trójai program fájlokat törölhet a gépünkrõl, vagy\n"
+"           hozzáférhet a személyes adatainkhoz. Kizárólag abban az\n"
+"           esetben állítsuk \"on\"-ra, ha megbízható forrást használunk.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Ha a run_execution_links_on_local_files \"on\"-ra van állítva, akkor\n"
+"a helyi végrehajtható linkeket kiválasztással el lehet indítani.\n"
+"Ez különbözik a run_all_execution_links beállítástól, mert\n"
+"csak a helyi fájlokra vonatkozik.\n"
+"\n"
+"FIGYELEM - Ez egy veszélyes beállítás. Minthogy ismeretlen\n"
+"           forrás által készített anyagot használunk, \n"
+"           megvan a lehetõsége, hogy trójai programot indítunk el.\n"
+"           A trójai program fájlokat törölhet a gépünkrõl, vagy\n"
+"           hozzáférhet a személyes adatainkhoz. Kizárólag abban az\n"
+"           esetben állítsuk \"on\"-ra, ha megbízható forrást használunk.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"A select_popups meghatározza, hogy a SELECT blokkban lévõ OPCIÓK\n"
+"hogyan jelenjen meg, ha hiányzik a MULTIPLE attribútum: függõleges\n"
+"rádiógombokkal, vagy legördülõ menüvel. Megjegyezzük, hogy ha a \n"
+"MULTIPLE attribútum be van állítva a SELECT tagban, akkor a Lynx\n"
+" automatikusan jelölõnégyzeteket rajzol egymás alá. Ha az érték \"on\"\n"
+" állásban van, akkor mindig legördülõ menüt használ, \"off\" állásban\n"
+"pedig jelölõnégyzeteket.\n"
+"Az alapértelmezett beállítást a -popup paranccsal felül lehet bírálni.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"A show_color meghatározza, hogy induláskor a Lynx színes legyen, vagy sem.\n"
+"A \"never\" érték kikapcsolja a színes módot (a terminál fekete-fehér lesz),\n"
+"akkor is, ha lehetséges lenne színes mód használata. Az \"always\" érték\n"
+"bekapcsolja a színes üzemmódot még fekete-fehér monitoron is, ha \n"
+"a támogatás bele lett fordítva a Lynx-be. A \"default\" érték hatására\n"
+"fekete-fehér terminált használ, hacsak színes képernyõt nem talál,\n"
+"esetleg a -color parancssori, vagy a COLORTERM \n"
+"környezeti változó be nem lett állítva. Az alapértelmezett viselkedés \n"
+" lesz érvényes a névtelen bejelentkezések esetén, vagy ha\n"
+"a felhasználó az \"option_save\" szigorítást használja.\n"
+"Az elmentett beállításokat felül lehet bírálni a parancssori\n"
+" -color és -nocolor kapcsolókkal.\n"
+"Az induláskori beállításokat meg lehet változtatni a \"színek mutatása\" opcióval.\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"A show_cursor határozza meg, hogy a kurzort elrejtjük-e ('hide') a\n"
+"képernyõ jobb oldalára, alulra (ha lehetséges), vagy az aktuális\n"
+"linktõl balra, vagy az aktuális opcióra egy felbukkanó menüben. A\n"
+"kurzor balra helyezése elõnyös felolvasó- vagy braille csatolók\n"
+"esetén, és általában akkor, ha a terminál nem különbözteti meg\n"
+"kiemeléssel vagy színnel a linkeket. Alaphelyzet az \"ON\", ekkor a\n"
+"\"balra\" pozicionálás érvényes, míg \"OFF\" állásban a kurzor elrejtésre\n"
+"kerül. Felülírható a \"-show_cursor\" parancssori opcióval.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"A show_dotfiles meghatározza, hogyan viselkedjen a program azokkal a \n"
+"könyvtárakkal, amikben rejtett (ponttal kezdõdõ) fájlok, könyvtárak vannak. \n"
+"A kapcsolót csak úgy tudjuk \"ON\" állásba helyezni, hogy a userdefs.h vagy \n"
+"a lynx.cfg-ben engedélyezzük és a parancssorban sem tiltottuk le. Ha a rejtett \n"
+"fájlok megjelenítése le van tiltva, akkor az ilyen fájlok létrehozása sem \n"
+"lehetséges.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Ha az al-könyvjelzõ nincs kikapcsolva (OFF), és többszörös könyvjelzõt\n"
+"állítottunk be (lásd késõbb), akkor könyvjelzõ mûveletek elõtt elõször\n"
+"megkérdezzük a felhasználót, hogy melyik al-könyvjelzõt akarja\n"
+"használni. Ha az alapértelmezett Lynx könyvjelzõ definiálva van (lásd\n"
+"fentebb), akkor azt használjuk alapból. Amikor ez a beállítás haladó\n"
+"(\"advanced\") módban van és a felhasználó is haladó, akkor a könyvjelzõ\n"
+"megnézése parancs állapotsorában prompt lesz látható a kezdõ és közép-\n"
+"haladónál látható menü helyett. Ha ez az opció \"standard\"-re van\n"
+"állítva, akkor a menü - felhasználói módra való tekintet nélkül -\n"
+"megjelenik.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"A user_mode határozza meg a felhasználó tapasztalati szintjét\n"
+"Lynx-szel kapcsolatban. Alaphelyzet a \"KEZDÕ\" szint, ekkor két plusz\n"
+"sor segíti a felhasználót a képernyõ alján. A \"KÖZÉPFOKÚ\" szint\n"
+"kikapcsolja ezeket a sorokat. A \"HALADÓ\" szinten a képernyõ alján a\n"
+"kiválasztott link URL-je látható.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Ha a verbose_images \"ON\" állásban van, akkor a Lynx kiírja a kép nevét\n"
+"az [INLINE], [LINK] vagy [IMAGE] elõfordulásakor. (Lásd még:\n"
+"VERBOSE_IMAGES a lynx.cfg fájlban\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Ha a vi_keys \"ON\" állásban van, akkor a VI mozgató gombokat \n"
+"használhatjuk:\n"
+"  j = le      k = fel\n"
+"  h = balra   l = jobbra\n"
+"A parancsok kisbetûsek! A nagy 'H', 'J' és 'K' segítséget, ugrást, és\n"
+"billentyû beállítást jelent.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"A visited_links beállítás határozza meg, hogy a Lynx hogyan szervezi a\n"
+"meglátogatott oldalakkal kapcsolatos információkat.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Ha a keypad_mode \"NUMBERS_AS_ARROWS\" beállításban van (a numerikus\n"
+"gombok nyilakként viselkedjenek), akkor a numerikus gombokkal a következõ\n"
+"haladási irányt adhatjuk meg (feltéve, hogy a NumLock gomb be van nyomva):\n"
+"\n"
+"           8 = fel\n"
+"  4 = balra    6 = jobbra\n"
+"           2 = le  \n"
+"\n"
+"Ugyanígy viselkednek a betûknél lévõ számok is, függetlenül a NumLock\n"
+"gomb állásától.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Ha a keypad_mode \"LINKS_ARE_NUMBERED\"-re van állítva (\"a hivatkozások\n"
+"számozva lesznek\"), a hivatkozások mellett számok fognak megjelenni, amivel\n"
+"ki lehet választani az adott hivatkozást.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Ha a keypad_mode \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\"-re van állítva,\n"
+"akkor a hivatkozások és a látható bemeneti mezõk mellett számok fognak\n"
+"megjelenni. A számokat a hivatkozás kiválasztására lehet használni,\n"
+"vagy az \"aktuális link\"-et lehet átállítani bemeneti mezõre vagy\n"
+"gombra. Ezen felül a felbukkanó menükben lévõ opciók indexet kapnak,\n"
+"ami alapján is ki lehet választani õket számokkal, akkor is, ha az\n"
+"opció nem látható a képernyõn. Referencia listák és a listaparancsból\n"
+"származó kimenetek szintén beszámozzák az ûrlap bemeneteket.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"MEGJEGYZÉS: Bizonyos meghatározott formátumú dokumentum rosszul nézhet\n"
+"ki, ha a LINKS_ARE_NUMBERED vagy a LINKS_AND_FORM_FIELDS_ARE_NUMBERED\n"
+"opció engedélyezve van.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+#, fuzzy
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Lynx Felhasználói Alapbeállítások Fájl\n"
+"\n"
+"Ez a fájl tartalmazza a Lynx Beállítások Képernyõn elmentett\n"
+"beállításokat. Nem szükséges ennek a fájlnak a kézi szerkesztése,\n"
+"mivel a Beállítások Képernyõ teljesen átveszi a fájl kezelését. Ha ön\n"
+"az általános beállítások fájlt keresi - azt általában lynx.cfg -nek\n"
+"nevezik. Ez nem az a fájl.\n"
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "Elértük az elõzménylista maximális hosszát! A dokumentum nem lett berakva."
+
+#~ msgid "Socket read failed for 180,000 tries."
+#~ msgstr "Az illesztõpont 180.000 olvasás után is sikertelen."
+
+#~ msgid "reason unknown."
+#~ msgstr "ok ismeretlen."
diff --git a/po/id.po b/po/id.po
new file mode 100644
index 00000000..dfab9ae5
--- /dev/null
+++ b/po/id.po
@@ -0,0 +1,6099 @@
+# Pesan bahasa indonesia untuk lynx
+# Copyright (C) 2008 Arif E. Nugroho <arif_endro@yahoo.com>
+# This file is distributed under the same license as the lynx package.
+# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.7-dev12\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-01-01 20:55-0500\n"
+"PO-Revision-Date: 2009-01-01 18:53+0700\n"
+"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
+"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Peringatan!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Selamat datang"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Apakah anda yakin anda ingin berhenti"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Benar benar keluar dari Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Koneksi terinterupsi."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Transfer data terinterupsi."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Dibatalkan!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Membatalkan!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Ekselen!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Selesai!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Permintaan buruk!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "sebelumnya"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "layar selanjutnya"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "TOLONG!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", bantuan di "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Perintah: Gunakan tombol panah untuk berpindah, '?' untuk bantuan, 'q' untuk berhenti, '<-' untuk kembali."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- tekan spasi untuk lebih lanjut, gunakan tombol panah untuk berpindah, '?' untuk bantuan, 'q' untuk berhenti."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- tekan spasi untuk halaman selanjutnya --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL terlalu panjang"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Bagian masukan teks) Tidak aktif. Tekan <return> mengaktivasi."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Daerah teks) Tidak aktif. Tekan <return> untuk mengaktivasi."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Daerah teks) Tidak aktif. Tekan <return> untuk mengaktivasi (%s untuk pengubah)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Bagian formulir) Tidak aktif. Gunakan <return> untuk mengubah."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Bagian formulir) Tidak aktif. Gunakan <return> untuk mengubah (%s untuk mengirim dengan tidak ada cache)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Bagian formulir) Tidak aktif. Tekan <return> untuk mengubah, tekan <return> dua kali untuk mengirimkan."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(bagian formulir mailto) Tidak aktif. Tekan <return> untuk mengubah."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Bagian masukan sandi lewat) Tidak aktif. Tekan <return> untuk mengaktivasi."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Bagian masukan berkas UNMODIFIABLE. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Bagian masukan berkas) Masukan nama berkas. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Bagian masukan teks) Masukan teks. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Daerah teks) Masukan teks. Gunakan panah NAIK/TURUN atau TAB untuk move off."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Daerah teks) Masukan teks. Gunakan panah NAIK/TURUN atau TAB untuk move off (%s untuk pengubah)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Daerah formulir teks UNMODIFIABLE. Gunakan NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Daerah formulir) Masukan teks. Gunakan <return> untuk mengirimkan."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Daerah formulir) Masukan teks. Gunakan <return> untuk mengirimkan (%s untuk tidak ada cache)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Daerah formulir) Masukan teks. Gunakan <return> untuk mengirimkan, panah atau tabs untuk move off."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "daerah formulir UNMODIFIABLE. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(daerah formulir mailto) Masukan teks. Gunakan <return> untuk mengirimkan, panah untuk move off."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(daerah formulir mailto) Surat dilarang jadi anda tidak dapat mengirimkan."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Daerah masukan sandi lewat) Masukan teks. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "formulir sandi lewat UNMODIFIABLE. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Daerah checkbox)  Gunakan panah-kanan atau <return> untuk mengubah."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "formulir checkbox UNMODIFIABLE. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Tombol radio)   Gunakan panah-kanan atau <return> untuk mengubah."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "tombol formulir radio UNMODIFIABLE. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Kirim ('x' untuk tanpa cache) ke "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Kirim ke "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Tombol kirim formulir) Gunakan panah-kanan atau <kembali> untuk mengirimkan ('x' untuk tanpa cache)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Tombol kirim formulir) Gunakan panah-kanan atau <return> untuk mengirimkan."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "tombol kirim formulir TIDAK AKTIF. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Kirim formulir mailto ke "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(tombol kirim formulir mailto) Gunakan panah-kanan atau <kembali> untuk mengirimkan."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(tombol kirim formulir mailto) Surat dilarang jadi anda tidak dapat mengirimkan."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Tombol reset formulir) Gunakan panah-kanan atau <return> untuk mereset formulir ke baku."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "tombol reset formulir TIDAK AKTIF. Gunakan panah NAIK atau TURUN atau tab untuk move off."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Daftar opsi) Tekan return dan gunakan tombol panah dan return untuk memilih opsi."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Daftar pilihan) Tekan return dan gunakan tombol panah dan return untuk memilih opsi."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "daftar opsi TIDAK DAPAT DIMODIFIKASI. Gunakan return atau tombol panah untuk mengulas atau tinggalkan."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "daftar pilihan TIDAK DAPAT DIMODIFIKASI. Gunakan return atau tombol panah untuk mengulas atau tinggalkan."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Mengirimkan formulir..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Mereset formulir..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Memuat kembali dokumen. Masukan formulir apapun akan hilang!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Peringatan: Tidak dapat transcode formulir data ke set karakter %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(LINK NORMAL)   Gunakan panah-kanan atau <return> untuk mengaktivasi."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "Sumber daya yang diminta tidak tersedia saat ini."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Masukan perintah tombol singkat Lynx: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Mencari "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Mendapatkan %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Melewatkan %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Menggunakan %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "URL Tidak legal: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Alamat %s terbentuk buruk"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Tidak dapat mengakses berkas WWW!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Ini adalah sebuah indeks yang dapat dicari. Gunakan %s untuk mencari"
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Lebih-- Ini adalah sebuah indeks yang dapat dicari. Gunakan %s untuk mencari."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Anda telah memasukan sebuah nomor link tidak valid."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Saat ini melihat sumber dokumen. Tekan '\\' untuk kembali ke versi biasa."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  Tombol panah: Naik dan Turun untuk bergerak. Kanan untuk mengikuti sebuah sambungan. Kiri untuk kembali.\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "H)elp O)ptions P)rint G)o M)ain layar Q)uit /=cari [delete]=daftar sejarah \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain layar   o)psi     Q)quit \n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "  O)ther cmds  B)lack E)dit  D)downlod ^R)eload ^W)ipe layar   cari doc: / \n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O)ther cmds C)omment Sejarah: <backspace> Bookmarks: V)iew, A)dd, R)emove\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Masukan teks kedalah daerah dengan mengetikannya di papan ketik  "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U untuk menghapus seluruh teks dalam daerah, [Backspace] untuk menghapus sebuah karakter "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "      Ctrl-U untuk menghapus teks dalam daerah, [Backspace] untuk menghapus sebuah karakter "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s untuk menghapus seluruh teks dalam daerah, [Backspace] untuk menghapus sebuah karakter   "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "      %s untuk menghapus teks dalam daerah, [Backspace] untuk menghapus sebuah karakter  "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Pengiriman formulir mailto salah bentuk! Dibatalkan!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Peringatan! Kode kontrol dalam alamat surat digantikan oleh ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "Surat dilarang!   Tidak dapat mengirimkan."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Formulir pengiriman mailto gagal!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Formulir pengiriman mailto dibatalkan!!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Mengirimkan isi formulir..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "Tidak ada alamat email yang ada dalam URL mailto!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Tidak dapat membuka berkas sementara untuk URL mailto!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Anda ingin memasukan pesan asli?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Anda ingin memasukan sumber yang sudah diparse?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Spawning pengubah yang anda pilih untuk mengubah pesan surat"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Error mengubah spawning, periksa definisi pengubah anda dalam opsi menu"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Kirim komentar ini?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Kirim pesan ini?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Mengirimkan pesan anda..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Mengirimkan komentar anda:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Tidak dalam sebuah TEXTAREA; tidak dapat menggunakan pengubah eksternal."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Tidak dalam sebuah TEKSAREA. tidak dapat menggunakan perintah."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "berkas: AKSI dilarang!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "berkas: URL melalui sambungan yang dilayani dilarang!"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "Akses ke berkas lokal ditolak."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "berkas: URL melalui bookmarks dilarang!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "URL spesial ini dilarang dalam dokumen eksternal!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Tekan <return> untuk kembali ke Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Spawning subproses DCL. Gunakan 'logout' untuk kembali ke Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Ketik EXIT untuk kembali ke Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Spawning ke shell baku. Gunakan 'exit' untuk kembali ke Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "Spawning saat ini tidak aktif."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "Perintah 'd'ownload saat ini tidak aktif."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Anda tidak dapat mengubah sebuah daerah masukan."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Formulir memiliki sebuah aksi mailto! Tidak dapat mengunduh."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Anda tidak dapat mengunduh sebuah sambungan mailto:."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Anda tidak dapat mengunduh cookies."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Anda tidak dapat mengunduh sebuah opsi pencetakan."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Anda tidak dapat mengunduh sebuah opsi upload."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Anda tidak dapat mengunduh sebuah opsi ijin."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "URL spesial ini tidak dapat diunduh!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Tidak ada yang akan diunduh."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Jejak AKTIF!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Jejak TIDAK AKTIF!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Sambungan tidak akan dimasukan untuk seluruh gambar! Memuat kembali..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Penanganan gambar baku dikembalikan! Memuat kembali..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Pseudo_ALTs akan dimasukan untuk inlines tanpa string ALT! Memuat kembali..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Inlines tanpa sebuah string ALT dispesifikan akan diabaikan! Memuat kembali..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Mentah 8-bit atau mode CJK diubah TIDAK AKTIF! Memuat kembali..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Mentah 8-bit atau mode CJK diubah AKTIF! Memuat kembali..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Kirim permintaan HEAD untuk D)okumen atau L)ink, atau C)ancel? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Kirim permintaan HEAD untuk D)okumen, atau C)ancel? (d,c): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Maaf, dokumen bukan sebuah URL http."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Maaf, sambungan bukan sebuah URL http."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Maaf, AKSI untuk formulir ini tidak aktif."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Maaf, AKSI untuk formulir ini bukan sebuah URL http."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "Bukan sebuah URL http atau formulir AKSI!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "URL spesial ini tidak dapat berupa sebuah formulir AKSI!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "URL tidak dalam realm starting!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "Pengiriman berita tidak aktif!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Dukungan manajemen berkas tidak aktif!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Tidak ada berkas lompat yang saat ini tersedia."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Lompat ke (gunakan '?' untuk daftar): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Melompat ke sebuah shortcut URL dilarang!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "URL random dilarang! Gunakan sebuah shortcut."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Tidak ada URL random yang telah digunakan sampai saat ini."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Features bookmark saat ini tidak aktif."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "Eksekusi melalui bookmarks tidak aktif."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Berkas bookmark tidak didefinisikan. Gunakan %s untuk melihat opsi."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Tidak dapat membuka berkas sementara untuk konversi hotlist X Mosaic."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "ERROR - tidak dapat membuka berkas bookmark."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Tidak dapat membuka berkas bookmark untuk penghapusan sebuah link."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Tidak dapat membuka berkas scratch untuk penghapusan sebuah sambungan."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Error mengubah nama berkas scratch."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Error mengubah nama berkas sementara."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Tidak dapat menyalin berkas sementara untuk penghapusan dari sambungan."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Tidak dapat membuka kembali berkas sementara untuk penghapusan dari link."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Sambungan bukan dengan dirinya sendiri seluruh di satu baris di berkas bookmark."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Penghapusan bookmark gagal."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Berkas bookmark tidak dapat di traversed (hanya URL http)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Tidak dapat membuka berkas bookmark, gunakan 'a' untuk menyimpan sebuah link pertama"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Tidak ada link di berkas bookmark ini!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "D)elete cached dokumen atau C)ancel? (d,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Simpan D)okumen atau L)ink untuk berkas bookmark atau C)ancel? (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Simpan D)okumen ke berkas bookmark atau C)ancel? (d,c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Simpan L)ink ke berkas bookmark atau C)ancel? (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Dokumen dari formulir dengan isi POST tidak dapat disimpan sebagai bookmarks."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Tidak dapat menyimpan sambungan/daerah formulir"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Sejarah, showinfo, menu dan daftar berkas tidak dapat disimpan sebagai bookmarks."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Apakah anda benar benar ingin menghapus sambungan ini dari berkas bookmark anda?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Alamat salah bentuk."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Komentar sejarah parsing AKTIF (Minimal adalah overridden)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Komentar historical parsing OFF (Minimal adalah dalam efek)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Komentar historical parsing AKTIF (Valid overridden)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Historical komentar parsing TIDAK AKTIF (Valid berada dalam efek)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Komentar minimal parsing AKTIF (dan dalam efek)!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Komentar minimal parsing TIDAK AKTIF (Valid adalah dalam efek)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Komentar minimal parsing AKTIF (tetapi Historical berada dalam efek)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Komentar minimal parsing TIDAK AKTIF (Historical berada dalam efek)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "Soft double-quote parsing AKTIF!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "Soft double-quote parsing TIDAK AKTIF!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Sekarang menggunakan TagSoup parsing dari HTML."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Sekarang menggunakan SortaSGML parsing dari HTML!"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Anda telah berada di akhir dari dokumen ini."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Anda telah berada diawal dari dokumen ini."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Anda telah berada di halaman %d dari dokumen ini."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Sambungan nomor %d telah baru."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Anda telah berada di awal dokumen"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Tidak ada sambungan diatas baris ini dari dokumen."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Tidak ada sambungan dibawah baris ini dari dokumen."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Panjang maksimal dicapai! Hapus teks atau move off field."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Anda tidak berada di tombol pengiriman formulir atau sambungan normal."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "Satu tombol radio harus dicentang di setiap saat!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Tidak ada tombol kirim untuk formulir ini, kirim sebuah field teks tunggal?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Apakah anda ingin kembali ke dokumen sebelumnya?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Gunakan panah atau tab untuk move off dari field."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Masukan teks. Gunakan panah atau tab untuk move off dari field."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** HTML buruk!! Tidak ada formulir aksi yang didefinisikan.**"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "HTML buruk!! Tidak dapat membuat jendela popup!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Tidak dapat membuat jendela popup!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Pergi ke URL random tidak diijinkan!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Pergi ke sebuah URL bukan http tidak diijinkan!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Anda tidak diijinkan untuk pergi ke URL \"%s\""
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "URL untuk dibuka: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Ubah URL Goto sekarang: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Ubah URL Goto sebelumnya: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Ubah sebuah URL Goto sebelumnya: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "Dokumen sekarang memiliki data POST."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Ubah URL dokumen ini: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Ubah sambungan URL sekarang: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "Anda tidak dapat mengubah URL Manajemen Berkas"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Masukan sebuah permintaan basis data: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Masukan sebuah permintaan whereis: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Ubah permintaan sekarang: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Ubah permintaan sebelumnya: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Ubah permintaan sebelumnya: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Gunakan Ctrl-R untuk mengirim kembali permintaan sekarang."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Ubah tombol singkat sekarang: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Ubah tombol singkat sebelumnya: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Ubah sebuah tombol singkat sebelumnya: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Tombol '%c' tidak dipetakan ke sebuah berkas lompat!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Tidak dapat menemukan berkas lompat!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Tidak dapat membuka berkas lompat!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Error membaca berkas lompat!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Kehabisan memori membaca berkas lompat!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Kehabisan memori membaca tabel lompat!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Tidak ada indeks yang saat ini tersedia."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Apakah anda benar benar ingin pergi ke layar Utama?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "Anda telah berada dilayar utama!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Bukan sebuah dokumen terindeks yang dapat dicari -- tekan '/' untuk mencari untuk sebuah string teks"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Tidak ada pemilik didefinisikan untuk berkas ini jadi anda tidak dapat mengirim sebuah komentar"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Tidak ada pemilik yang didefinisikan. Gunakan %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Apakah anda ingin mengirim sebuah komentar?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "Surat tidak diijinkan jadi anda tidak dapat mengirim sebuah komentar"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "Perintah 'e' saat ini tidak aktif."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "Pengubahan eksternal saat ini tidak aktif."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Sistem error - gagal untuk memperoleh status."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Tidak ada pengubah yang didefinisikan!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "Perintah 'p' saat ini tidak aktif."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "Dokumen tidak memiliki sebuah sambungan Toolbar atau Banner."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Tidak dapat membuka sebuah berkas traversal."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Tidak dapat membuka berkas traversal yang ditemukan."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Tidak dapat membuka sebuah berkas reject."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Tidak dapat membuka traversal errors berkas keluaran"
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "TRAVERSAL TELAH DIINTERUPSI"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Ikuti sambungan (atau pergi link atau halaman) nomor: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Pilih opsi (atau halaman) nomor: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Opsi nomor %d telah baru."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Anda telah berada di akhir dari daftar opsi ini."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Anda telah berada di awal dari daftar opsi ini."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Anda telah berada di halaman %d dari daftar opsi ini."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Anda telah memasukan sebuah nomor opsi tidak valid."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** HTML buruk!! Gunakan -trace untuk mendiagnosa. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Berikan nama dari berkas untuk menyimpan"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Tidak dapat menyimpan data ke berkas -- mohon jalankan WWW secara lokal"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Tidak dapat membuka berkas sementara!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Tidak dapat membuka berkas! Membatalkan!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Eksekusi tidak aktif."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Eksekusi tidak aktif untuk berkas ini. Lihat menu Opsi (gunakan %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Kapabilitas eksekusi tidak dikompile kedalam versi ini."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Berkas ini tidak dapat ditampilkan di terminal ini."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Berkas ini tidak dapat ditampilkan di terminal ini: D)ownload, atau C)cancel"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D)ownload, atau C)ancel"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Membatalkan berkas."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Mendapatkan berkas. - MOHON TUNGGU -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Masukan sebuah nama berkas: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Ubah nama berkas sebelumnya: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Ubah nama berkas sebelumnya: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Masukan sebuah nama berkas baru: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Nama berkas tidak boleh dimulai dengan sebuah dot."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Berkas ada. Buat sebuah versi lebih tinggi?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Berkas ada. Paksa tulis?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Tidak dapat menulis ke berkas."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "ERROR! - perintah unduh salah konfigurasi."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Tidak dapat mengunduh berkas."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Membaca direktori..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Membuat daftar direktori..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Menyimpan..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Tidak dapat mengubah berkas '%s'."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Tidak dapat mengakses dokumen!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Tidak dapat mengakses berkas."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Tidak dapat mengakses direktori."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Tidak dapat memuat data."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx tidak dapat saat ini (e)dit berkas WWW remote."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Daerah ini tidak dapat (e)dited dengan sebuah pengubah eksternal."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Aturan buruk"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Operan tidak mencukupi:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Anda tidak diijinkan untuk mengubah berkas ini."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Judul: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Subjek: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Nama pengguna: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Sandi lewat: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Nama pengguna dan Sandi lewat dibutuhkan!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: Sandi lewat dibutuhkan!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Hapus seluruh informasi otorisasi untuk sesi ini?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Informasi otorisasi dihapus."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Otorisasi gagal. Coba lagi?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "dukungan cgi telah dinon-aktifkan."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Kapabilitas lynxcgi tidak dikompile kedalam versi ini."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Maaf, tidak ada cara yang dikenal untuk mengubah %s ke %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Tidak dapat menset up koneksi."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Tidak dapat membuat koneksi"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Sambungan eksekusi ditolak karena permintaan salah bentuk."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Sambungan eksekusi ditolak karena karakter `%c'."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Sambungan eksekusi ditolak karena string jalur relatif ('../')."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Sambungan eksekusi ditolak karena lokasi atau jalur."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "Akses surat tidak aktif!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Hanya berkas dan server di lokal host yang dapat diakses."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Akses telnet tidak aktif!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Spesifikasi telnet port tidak aktif."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "akses berita USENET tidak aktif!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "akses Rlogin tidak aktif!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "akses ftp tidak aktif!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Tidak ada referensi dari dokumen ini."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Hanya sambungan tersembunyi dari dokumen ini."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Tidak dapat membuka berkas perintah."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Pos Berita Dibatalkan!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Spawning ke pengubah yang anda pilih untuk mengubah pesan berita"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Pos pesan ini?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Tambahkan '%s'?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Posting ke newsgroup(s)..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Anda memiliki surat tidak terbaca.***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** Anda memiliki surat. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Anda memiliki surat baru. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Pemasukan berkas dibatalkan!!!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Tidak cukup memori untuk berkas!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Tidak dapat membuka berkas untuk pembacaan."
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Berkas tidak ada."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Berkas tidak ada - reenter atau batalkan:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Berkas tidak dapat dibaca."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Berkas tidak dapat dibaca - reenter atau batal:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Tidak ada untuk dimasukan - berkas panjang-0."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Permintaan penyimpanan dibatalkan!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Permintaan surat dibatalkan!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Melihat preparsed sumber. Apakah anda yang anda ingin untuk mengirimnya?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Mohon tunggu..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Mengirim surat berkas. Mohon tunggu..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "ERROR - Tidak dapat mengirim surat berkas"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Berkas %d panjang layar. Apakah anda yakin anda ingin untuk mencetaknya?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Permintaan pencetakan dibatalkan!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Tekan <return> untuk memulai: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Tekan <return> untuk selesai: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Berkas memiliki %d halaman. Apakah anda yakin anda ingin untuk mencetaknya?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Yakinkan pencetak anda sudah nyala. Tekan <return> untuk memulai pencetakan:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "ERROR - Tidak dapat mengalokasikan ruang berkas!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Tidak dapat membuka berkas sementara"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Tidak dapat membuka opsi cetak berkas"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Mencetak berkas. Mohon tunggu..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Mohon masukan sebuah alamat internet surat yang valid: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "ERROR! - pencetak salah konfigurasi!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Peta gambar dari balasan POST tidak tersedia!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Salah arah permintaan sisi klien peta gambar!"
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "Gambar PETA sisi klien tidak dapat diakses!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Tidak ada peta gambar sisi klien yang tersedia!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "Gambar PETA sisi klien tidak tersedia!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Tinggi layar harus paling tidak 24 baris untuk menu Opsi!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Tinggi layar harus berada paling tidak 23 baris untuk menu Opsi!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Tinggi layar harus berada paling tidak 22 baris untuk menu Opsi!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Tombol itu membutuhkan mode Pengguna Expert."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Tipe-isi: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Perintah: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Tidak diketahui atau perintah ambigu"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Versi "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " pertama"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", menebak..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Ijin untuk "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Pilih "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "huruf besar"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " dari baris opsi,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " untuk menyimpan,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " ke "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " atau "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " indeks"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " untuk kembali ke Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Terima Perubahan"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Bakukan Perubahan"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Panah Kirim membatalkan perubahan"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Simpan opsi ke disk"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Tekan RETURN untuk menerima data yang dimasukan."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Tekan RETURN untuk menerima data yang dimasukan. Hapus data untuk memanggil baku."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Nilai diterima!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Nilai diterima! -- PERINGATAN: Lynx dikonfigurasikan untuk XWINDOWS!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Nilai diterima! -- PERINGATAN: Lynx TIDAK dikonfigurasikan untuk XWINDOWS!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Anda tidak diijinkan untuk mengubah pengubah mana untuk digunakan!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Gagal untuk menset variabel DISPLAY!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Gagal untuk menghapus variabel DISPLAY!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Anda tidak diijinkan untuk mengubah berkas bookmark!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "Terminal tidak mendukung warna"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Terminal '%s' anda tidak mendukung warna."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "Akses ke berkas titik tidak aktif!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "String User-Agent tidak berisi \"Lynx\" atau \"L_y_n_x\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Gunakan \"L_y_n_x\" atau \"Lynx\" dalam User-Agent, atau ini tampak seperti penipuan sengaja!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "Perubahan dari string User-Agent tidak aktif!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Anda tidak diijinkan untuk mengubah konfigurasi ini."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Menyimpan Opsi..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Opsi disimpan!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Tidak dapat menyimpan Opsi!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' untuk kembali ke Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' untuk menyimpan, atau 'r' untuk kembali ke Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Tekan tombol apapun untuk mengubah nilai; RETURN untuk menerima."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Error mengurai berkas sementara!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Skema URL tidak didukung!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Data tidak didukung: URL! Gunakan SHOWINFO, untuk saat ini."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Batas redireksi dari 10 URL dicapai."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Redireksi URL tidak legal diterima dari server!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Server diminta untuk %d redireksi dari isi POST ke"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P)roceed, gunakan G)ET atau C)ancel "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P)roceed, atau C)ancel "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Redireksi dari isi POST. P)roceed, lihat U)RL, gunakan G)ET atau C)ancel"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Redireksi dari isi POST. P)roceed, lihat U)RL, atau C)ancel"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Dokumen dari Form dengan isi POST. Kirim kembali?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Kirim kembali isi POST ke %s?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Daftar dari dokumen dengan data POST. Muat kembali %s ?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Dokumen dari aksi POST, HEAD mungkin tidak dimengerti.  Lanjutkan?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Aksi kirim formulir adalah POST, HEAD mungkin tidak dimengerti. Lanjutkan?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Lanjutkan tanpa sebuah nama pengguna dan sandi lewat?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Lanjutkan (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Tidak dapat POST ke host ini."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "POST tidak didukung untuk URL ini - mengabaikan data POST!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Mengabaikan data POST..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Dokumen tidak akan dimuat kembali!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Lokasi: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' tidak ditemukan!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Berkas Bookmark Baku"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Layar terlalu kecil! (minimal 8x35)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Pilih tujuan atau ^G untuk membatalkan: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Pilih subbookmark, '=' untuk menu, atau ^G untuk membatalkan: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "Membuat kembali L)ink dalam berkas bookmark ini atau C)ancel? (l,c): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Dukungan multiple bookmark tidak tersedia."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Pilih Bookmark (layar %d dari %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Pilih Bookmark"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Pengubahan DESKRIPSI bookmark dan FILEPATH (%d dari 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Pengubahan DESKRIPSI bookmark dan FILEPATH"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Huruf: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Gunakan sebuah jalur berkas dari direktori login anda dalam sintaks SHELL!"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Gunakan sebuah jalur berkas diluar dari direktori rumah anda!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Sambungan maksimal per halaman dilampaui! Gunakan setengah-halaman atau dua-baris scrolling."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Tidak ada sebelumnya sambungan dikunjungi yang tersedia!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Kehabisan memori! Aplikasi dibatalkan!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Kehabisan memori! Membatalkan..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Tidak cukup memori!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Direktori/Manajer Berkas tidak tersedia"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF dalam tag BASE bukan sebuah URL absolut."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "Lokasi URL tidak absolut."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "Refresh URL tidak absolut."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Anda sedang mengirimkan sebuah pesan dengan tubuh ke:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Anda sedang mengirimkan sebuah komentar ke:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" Dengan salinan ke:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Dengan salinan ke:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Gunakan Ctrl-G untuk membatalkan jika anda tidak ingin mengirim sebuah pesan\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Mohon masukan nama anda, atau tinggalkan itu kosong supaya tetap anonim\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Mohon masukan sebuah alamat surat atau beberapa yang lain\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " cara untuk menghubungi anda, jika anda menginginkan sebuah balasan.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Mohon masukan sebuah baris subjek.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Masukan sebuah alamat surat untuk CC dari pesan anda.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Tinggalkan kosong jika anda tidak ingin sebuah salinan.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Mohon ulas kembali tubuh pesan:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Tekan RETURN untuk melanjutkan: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Tekan RETURN untuk membersihkan: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Gunakan Control-U untuk menghapus baku.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Mohon masukan pesan anda dibawah."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Ketika anda telah selesai, tekan enter dan letakan sebuah titik tunggal (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" di sebuah baris dan tekan enter lagi."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s cookie: %.*s=%.*s  Ijinkan? (Y/N/Always/NeVer)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Terima cookie tidak valid domain=%s untuk '%s'?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Terima cookie tidak valid jalur=%s sebagai sebuah awalan dari '%s'?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Ijinkan cookie ini."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Menolak cookie ini."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Cookie Jar kosong."
+
+#: LYMessages.c:705
+msgid "The Cache Jar is empty."
+msgstr "Cache Jar kosong."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Aktifkan sambungan untuk gobble up cookies atau seluruh domains,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "atau untuk mengubah sebuah domain 'allow' konfigurasi."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Cookies tidak pernah diijinkan.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Cookies selalu diijinkan.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Cookies diijinkan melalui prompt.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Persistent Cookies.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Tidak ada judul.)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Tidak ada nama.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Tidak ada nilai.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2406
+msgid "None"
+msgstr "Kosong"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Akhir dari sesi.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Hapus cookie ini?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Cookie telah dimakan!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Hapus domain kosong ini?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Domain telah dimakan!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)elete domain cookies, set ijinkan A)lways/P)rompt/neV)er, atau C)ancel? "
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)elete domain, set ijinkan A)lways/P)rompt/neV)er, atau C)ancel? "
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Seluruh cookies dalam domain telah dimakan!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "'A'lways mengijinkan dari domain '%s'."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "ne'V'er mengijinkan dari domain '%s'."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "'P'rompting untuk mengijinkan dari domain '%s'."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "hapus seluruh cookies dalam domain ini?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Seluruh cookies dalam jar telah dimakan!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Port 19 tidak diijinkan dalam URL."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Port 25 tidak diijinkan dalam URL."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Port %lu tidak diijinkan dalam URL."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "URL memiliki daerah port buruk."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Jumlah maksimal nesting dari elemen HTML dilampaui"
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Referensi partial buruk! Stripping lead dots."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Pembukaan catatan penjejakan gagal. Penjejakan tidak aktif!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Catatan Jejak Lynx"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Tidak ada catatan jejak yang telah dimulai untuk sesi ini."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Jumlah maksimal berkas sementara telah dicapai!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Nilai isi formulir melebihi panjang penyangga! Trim the tail."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Modifikasi tail dikombinasikan dengan kepala dari nilai bagian formulir."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Direktori"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Direktori browsing tidak diijinkan."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "Akses selektif tidak aktif untuk direktori ini"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: pemindaian direktori gagal."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Direktori ini tidak dapat dibaca."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Tidak dapat mengakses berkas yang diminta."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Tidak dapat menemukan representasi cocok untuk transmisi."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Tidak dapat membuka berkas untuk dekompresi!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Berkas:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Subdirektori:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " direktori"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Sampai ke "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Direktori saat ini adalah "
+
+#. HTFTP.c
+#: LYMessages.c:765
+msgid "Symbolic Link"
+msgstr "Link simbolik"
+
+#. HTGopher.c
+#: LYMessages.c:768
+msgid "No response from server!"
+msgstr "Tidak ada balasan dari server!"
+
+#: LYMessages.c:769
+msgid "CSO index"
+msgstr "CSO indeks"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+" Ini adalah sebuah indeks yang dapat dipindah dari sebuah basis data CSO.\n"
+
+#: LYMessages.c:771
+msgid "CSO Search Results"
+msgstr "Hasil pencarian CSO"
+
+#: LYMessages.c:772
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Pencarian gagal di %s\n"
+
+#: LYMessages.c:773
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Tekan tombol 's'  dan masukan kata kunci pencarian.\n"
+
+#: LYMessages.c:774
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Ini adalah sebuah indeks Gopher yang dapat dipindai.\n"
+
+#: LYMessages.c:775
+msgid "Gopher index"
+msgstr "Indeks Gopher"
+
+#: LYMessages.c:776
+msgid "Gopher Menu"
+msgstr "Menu Gopher"
+
+#: LYMessages.c:777
+msgid " Search Results"
+msgstr " Hasil Pencarian"
+
+#: LYMessages.c:778
+msgid "Sending CSO/PH request."
+msgstr "Mengirimkan permintaan CSO/PH."
+
+#: LYMessages.c:779
+msgid "Sending Gopher request."
+msgstr "Mengirimkan permintaan Gopher."
+
+#: LYMessages.c:780
+msgid "CSO/PH request sent; waiting for response."
+msgstr "Permintaan CSO/PH dikirimkan; menunggu balasan."
+
+#: LYMessages.c:781
+msgid "Gopher request sent; waiting for response."
+msgstr "Permintaan Gopher dikirimkan; menunggu balasan."
+
+#: LYMessages.c:782
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Mohon masukan kata kunci pencarian.\n"
+
+#: LYMessages.c:783
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Kata kunci yang anda masukan akan mengijinkan anda untuk mencari di"
+
+#: LYMessages.c:784
+msgid " person's name in the database.\n"
+msgstr " nama orang dalam basis data.\n"
+
+#. HTNews.c
+#: LYMessages.c:787
+msgid "Connection closed ???"
+msgstr "Koneksi ditutup ???"
+
+#: LYMessages.c:788
+msgid "Cannot open temporary file for news POST."
+msgstr "Tidak dapat membuka berkas sementara untuk news POST."
+
+#: LYMessages.c:789
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Klien ini tidak berisi dukungan untuk posting ke news dengan SSL."
+
+#. HTStyle.c
+#: LYMessages.c:792
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Gaya %d `%s'  SGML:%s. Font %s %.1f titik.\n"
+
+#: LYMessages.c:794
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tAlign=%d, %d tabs. (%.0f sebelumnya, %.0f sesudahnya)\n"
+
+#: LYMessages.c:795
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tTab jenis=%d di %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:798
+msgid "Can't proceed without a username and password."
+msgstr "Tidak dapat melanjutkan tanpa sebuah nama pengguna dan kata sandi"
+
+#: LYMessages.c:799
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Tidak dapat mencoba dengan otorisasi! Hubungi WebMaster server."
+
+#: LYMessages.c:800
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Tidak dapat mencoba dengan proxy otorisasi! Hubungi WebMaster server."
+
+#: LYMessages.c:801
+msgid "Retrying with proxy authorization information."
+msgstr "Mencoba dengan informasi otorisasi proxy."
+
+#: LYMessages.c:802
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL error:%s-Lanjutkan?"
+
+#. HTWAIS.c
+#: LYMessages.c:805
+msgid "HTWAIS: Return message too large."
+msgstr "HTWIS: Pesan yang dikembalikan terlalu besar."
+
+#: LYMessages.c:806
+msgid "Enter WAIS query: "
+msgstr "Masukan permintaan WAIS: "
+
+#. Miscellaneous status
+#: LYMessages.c:809
+msgid "Retrying as HTTP0 request."
+msgstr "Mencoba kembali sebagai permintaan HTTPO."
+
+#: LYMessages.c:810
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Dikirimkan %d bytes"
+
+#: LYMessages.c:811
+msgid "Data transfer complete"
+msgstr "Transfer data selesai"
+
+#: LYMessages.c:812
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Error memproses baris %d dari %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:815
+msgid "Address List Page"
+msgstr "Daftar halaman alamat"
+
+#: LYMessages.c:816
+msgid "Bookmark file"
+msgstr "Berkas bookmark"
+
+#: LYMessages.c:817
+msgid "Configuration Definitions"
+msgstr "Definisi konfigurasi"
+
+#: LYMessages.c:818
+msgid "Cookie Jar"
+msgstr "Cookie Jar"
+
+#: LYMessages.c:819
+msgid "Current Key Map"
+msgstr "Peta kunci saat ini"
+
+#: LYMessages.c:820
+msgid "File Management Options"
+msgstr "Opsi manajemen berkas"
+
+#: LYMessages.c:821
+msgid "Download Options"
+msgstr "Opsi unduh"
+
+#: LYMessages.c:822
+msgid "History Page"
+msgstr "Halaman sejarah"
+
+#: LYMessages.c:823
+msgid "Cache Jar"
+msgstr "Cache Jar"
+
+#: LYMessages.c:824
+msgid "List Page"
+msgstr "Daftar Halaman"
+
+#: LYMessages.c:825
+msgid "Lynx.cfg Information"
+msgstr "Informasi Lynx.cfg"
+
+#: LYMessages.c:826
+msgid "Converted Mosaic Hotlist"
+msgstr "Diubah Mosaic Hotlist"
+
+#: LYMessages.c:827
+msgid "Options Menu"
+msgstr "Opsi menu"
+
+#: LYMessages.c:828
+msgid "File Permission Options"
+msgstr "Opsi ijin berkas"
+
+#: LYMessages.c:829
+msgid "Printing Options"
+msgstr "Opsi pencetakan"
+
+#: LYMessages.c:830
+msgid "Information about the current document"
+msgstr "Informasi mengenai dokumen saat ini"
+
+#: LYMessages.c:831
+msgid "Your recent statusline messages"
+msgstr "Pesan baris status anda baru baru ini"
+
+#: LYMessages.c:832
+msgid "Upload Options"
+msgstr "Opsi upload"
+
+#: LYMessages.c:833
+msgid "Visited Links Page"
+msgstr "Sambungan halaman yang pernah dikunjungi"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:836
+msgid "See also"
+msgstr "Lihat juga"
+
+#: LYMessages.c:837
+msgid "your"
+msgstr "anda"
+
+#: LYMessages.c:838
+msgid "for runtime options"
+msgstr "opsi untuk waktu jalan"
+
+#: LYMessages.c:839
+msgid "compile time options"
+msgstr "opsi waktu kompilasi"
+
+#: LYMessages.c:840
+msgid "color-style configuration"
+msgstr "konfigurasi gaya-warna"
+
+#: LYMessages.c:841
+msgid "latest release"
+msgstr "keluaran terakhir"
+
+#: LYMessages.c:842
+msgid "pre-release version"
+msgstr "versi sebelum dikeluarkan"
+
+#: LYMessages.c:843
+msgid "development version"
+msgstr "versi pengembangan"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:845
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Data berikut diturunkan ketika proses otomatis konfigurasi/buat\n"
+"dari salinan lynx ini. Ketika melaporkan sebuah bug, mohon masukan\n"
+"sebuah salinan dari halaman ini."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:849
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Data berikut digunakan sebagai definisi terkonfigurasi otomatis waktu kompilasi\n"
+"ketika salinan dari lynx dibuat."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:854
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+
+#: LYMessages.c:855
+msgid "Failed to obtain status of current link!"
+msgstr "Gagal untuk memperoleh status dari sambungan sekarang!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:858
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Hanya URL spesial saja yang valid dari menu permisi berkas sekarang!"
+
+#: LYMessages.c:862
+msgid "External support is currently disabled."
+msgstr "Dukungan eksternal saat ini tidak aktif."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:866
+msgid "Changing working-directory is currently disabled."
+msgstr "Pengubahan direktori kerja saat ini tidak aktif."
+
+#: LYMessages.c:867
+msgid "Linewrap OFF!"
+msgstr "Linewrap OFF!"
+
+#: LYMessages.c:868
+msgid "Linewrap ON!"
+msgstr "Linewrap ON!"
+
+#: LYMessages.c:869
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Parsing nested tables dimatikan! Memuat kembali..."
+
+#: LYMessages.c:870
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Parsing nested tables diaktifkan! Memuat kembali..."
+
+#: LYMessages.c:871
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Shifting tidak aktif ketika line-wrap berada dalam efek"
+
+#: LYMessages.c:872
+msgid "Trace not supported"
+msgstr "Trace tidak didukung"
+
+#: LYMessages.c:793
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tIndents: pertama=%.0f lain=%.0f, Tinggi=%.1f Desc=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Nama pengguna untuk '%s' di %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Klien ini tidak tahu bagaimana mengisi informasi otorisasi proxy untuk skema"
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Klien ini tidak tahu bagaimana mengisi informasi otorisasi untuk skema"
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Header tidak  valid '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "Otorisasi proxy dibutuhkan -- memcoba"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "Akses tanpa otorisasi ditolak -- mencoba"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "Akses dilarang oleh aturan"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Dokumen dengan isi POST tidak ditemukan dalam cache. Kirim kembali?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr "Pemuatan gagal, gunakan salinan sebelumnya."
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8513
+msgid "Loading incomplete."
+msgstr "Pemuatan tidak lengkap."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HHTAccess: socket atau nomor berkas yang dikembalikan oleh pemuatan rutinitas sudah ditinggalkan!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Internal software error. Mohon kirimkan surat ke lynx-dev@nongnu.org!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Status yang dikembalikan: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7757
+msgid "Can't Access"
+msgstr "Tidak dapat mengakses"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "Tidak dapat mengakses dokumen."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Masukan kata sandi untuk pengguna %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Tidak dapat menghubungi ke FTP host."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "tutup master socket"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "socket untuk master socket"
+
+#: WWW/Library/Implementation/HTFTP.c:2976
+msgid "Receiving FTP directory."
+msgstr "Menerima direktori FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:3112
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Ditransfer %d bytes (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3466
+msgid "connect for data"
+msgstr "hubungi untuk data"
+
+#: WWW/Library/Implementation/HTFTP.c:4127
+msgid "Receiving FTP file."
+msgstr "Menerima berkas FTP."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "Tidak dapat menset up koneksi finger."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Tidak dapat memuat  data (tidak ada nama site dalam finger URL)"
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "Nomor port tidak valid - hanya akan menggunakan port 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "Tidak dapat mengakses host finger."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "Tidak ada balasan dari server finger."
+
+#: WWW/Library/Implementation/HTNews.c:425
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Nama pengguna untuk news host '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:478
+msgid "Change username?"
+msgstr "Ubah nama pengguna?"
+
+#: WWW/Library/Implementation/HTNews.c:482
+msgid "Username:"
+msgstr "Nama pengguna:"
+
+#: WWW/Library/Implementation/HTNews.c:507
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Kata sandi untuk news host '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:590
+msgid "Change password?"
+msgstr "Ubah kata sandi?"
+
+#: WWW/Library/Implementation/HTNews.c:1710
+#, c-format
+msgid "No matches for: %s"
+msgstr "Tidak cocok untuk: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1760
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Tidak ada artikel dalam grup ini.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1772
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Tidak ada artikel dalam jangkauan ini.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1785
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s, Artikel %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1808
+msgid "Earlier articles"
+msgstr "Artikel sebelumnya"
+
+#: WWW/Library/Implementation/HTNews.c:1821
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Disana ada sekitar %d artikel yang saat ini tersedia dalam %s, ID sebagai berikut:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1883
+msgid "All available articles in "
+msgstr "Semua artikel yang tersedia dalam "
+
+#: WWW/Library/Implementation/HTNews.c:2097
+msgid "Later articles"
+msgstr "Artikel selanjutnya"
+
+#: WWW/Library/Implementation/HTNews.c:2120
+msgid "Post to "
+msgstr "Post ke "
+
+#: WWW/Library/Implementation/HTNews.c:2341
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Klien ini tidak memiliki dukungan untuk URL SNEWS."
+
+#: WWW/Library/Implementation/HTNews.c:2548
+msgid "No target for raw text!"
+msgstr "Tidak ada target untuk teks mentah!"
+
+#: WWW/Library/Implementation/HTNews.c:2578
+msgid "Connecting to NewsHost ..."
+msgstr "Menghubungi ke NewsHost ..."
+
+#: WWW/Library/Implementation/HTNews.c:2630
+#, c-format
+msgid "Could not access %s."
+msgstr "Tidak dapat mengakses %s."
+
+#: WWW/Library/Implementation/HTNews.c:2736
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Tidak dapat membaca informasi news. News host %.20s dibalas: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2740
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Tidak dapat membaca informasi news, balasan kosong dari host %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2944
+msgid "Reading list of available newsgroups."
+msgstr "Membaca daftar dari newsgroups yang tersedia."
+
+#: WWW/Library/Implementation/HTNews.c:2965
+msgid "Reading list of articles in newsgroup."
+msgstr "Membaca daftar dari artikel dalam newsgrup."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2971
+msgid "Reading news article."
+msgstr "Membaca news artikel."
+
+#: WWW/Library/Implementation/HTNews.c:3001
+msgid "Sorry, could not load requested news."
+msgstr "Maaf, tidak dapat memuat berita yang diminta."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "Alamat memiliki port tidak valid"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "Panjang alamat kelihatannya tidak valid"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Tidak dapat melokasi remote host %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Nama host tidak valid %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Membuat %s koneksi ke %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "socket gagal."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "socket gagal: keluarga %d alamat %s port %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Tidak dapat membuat koneksi tidak terblok."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "Koneksi gagal (terlalu banyak percobaan)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Tidak dapat mengembalikan socket ke bloking."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+msgid "Socket read failed (too many tries)."
+msgstr "Pembacaan socket gagal (terlalu banyak percobaan)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "Alamat berisi sebuah nama pengguna: %s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Sertifikan diisukan oleh: %s"
+
+#: WWW/Library/Implementation/HTTP.c:643
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Klien ini tidak berisi dukungan untuk URL HTTPS."
+
+#: WWW/Library/Implementation/HTTP.c:668
+msgid "Unable to connect to remote host."
+msgstr "Tidak dapat menghubungi ke remote host."
+
+#: WWW/Library/Implementation/HTTP.c:692
+msgid "Retrying connection without TLS."
+msgstr "Mencoba koneksi tanpa TLS."
+
+#: WWW/Library/Implementation/HTTP.c:737
+msgid "no issuer was found"
+msgstr "tidak ada penerbit yang ditemukan"
+
+#: WWW/Library/Implementation/HTTP.c:739
+msgid "issuer is not a CA"
+msgstr "penerbit bukan sebuah CA"
+
+#: WWW/Library/Implementation/HTTP.c:741
+msgid "the certificate has no known issuer"
+msgstr "sertifikat tidak memiliki penerbit yang diketahui"
+
+#: WWW/Library/Implementation/HTTP.c:743
+msgid "the certificate has been revoked"
+msgstr "sertifikat telah dicabut"
+
+#: WWW/Library/Implementation/HTTP.c:745
+msgid "the certificate is not trusted"
+msgstr "sertifikat tidak dipercaya"
+
+#: WWW/Library/Implementation/HTTP.c:821
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Koneksi terverifikasi ke %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:869 WWW/Library/Implementation/HTTP.c:911
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Koneksi terverifikasi ke %s (subj=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:941
+msgid "Can't find common name in certificate"
+msgstr "Tidak dapat menemukan nama sama dalam sertifikat"
+
+#: WWW/Library/Implementation/HTTP.c:944
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL error:host(%s)!=cert(%s)-Lanjutkan?"
+
+#: WWW/Library/Implementation/HTTP.c:957
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "Koneksi TIDAK TERVERIFIKASI ke %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:966
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Aman %d-bit %s (%s) koneksi HTTP"
+
+#: WWW/Library/Implementation/HTTP.c:1433
+msgid "Sending HTTP request."
+msgstr "Mengirimkan permintaan HTTP."
+
+#: WWW/Library/Implementation/HTTP.c:1472
+msgid "Unexpected network write error; connection aborted."
+msgstr "Tidak terduga penulisan jaringan error: koneksi dibatalkan."
+
+#: WWW/Library/Implementation/HTTP.c:1478
+msgid "HTTP request sent; waiting for response."
+msgstr "permintaan HTTP dikirimkan; menunggu balasan."
+
+#: WWW/Library/Implementation/HTTP.c:1546
+msgid "Unexpected network read error; connection aborted."
+msgstr "Tidak terduga pembacaan jaringan error; koneksi dibatalkan."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1740
+msgid "Got unexpected Informational Status."
+msgstr "Diperoleh Status Informasi tidak terduga."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1774
+msgid "Request fulfilled.  Reset Content."
+msgstr "Permintaan dipenuhi. Reset Isi."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1890
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Diperoleh tidak terduga 304 status Tidak Termodifikasi."
+
+#: WWW/Library/Implementation/HTTP.c:1953
+msgid "Redirection of POST content requires user approval."
+msgstr "Redireksi dari isi POST membutuhkan persetujuan pengguna."
+
+#: WWW/Library/Implementation/HTTP.c:1968
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Memiliki isi POST. Memperlakukan Redireksi Permanen sebagai Sementara.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2010
+msgid "Retrying with access authorization information."
+msgstr "Mencoba kembali dengan informasi otorisasi akses."
+
+#: WWW/Library/Implementation/HTTP.c:2022
+msgid "Show the 401 message body?"
+msgstr "Tampilkan tubuh pesan 401?"
+
+#: WWW/Library/Implementation/HTTP.c:2065
+msgid "Show the 407 message body?"
+msgstr "Tampilkan tubuh pesan 407?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2165
+msgid "Unknown status reply from server!"
+msgstr "Balasan status dari server tidak diketahui!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "remote %s sesi:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Tidak dapat menghubungi ke server WAIS."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Tidak dapat membuka koneksi WAIS untuk pembacaan."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Kode diagnosa adalah "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Indeks "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " berisi %d berikut item%s relevan ke \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "gambar pertama setelah masukan adalah score relatifnya, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "kedua adalah jumlah dari baris dalam item."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (nama berkas buruk)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(doc id buruk)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Rekaman header Pendek, tidak dapat menampilkan)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"rekaman Header panjang, tidak dapat menampilkan\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Rekaman teks\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Rekaman headline, tidak dapat menampilkan\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Rekaman kode, tidak dapat menampilkan\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Sintaks error dalam URL WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (Indeks WAIS)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "Indeks WAIS: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Ini adalah sebuah link untuk pencarian "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " Indeks WAIS.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Masukan perintah s'each dan kemudian spesifikasikan kata pencarian.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (in "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS Pencarian dari \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" dalam: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Permintaan terlalu besar."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Pencarian basis data WAIS..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Pencarian terinterupsi."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Tidak dapat mengubah format dari dokumen WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Permintaan terlalu panjang."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Mengambil dokumen WAIS..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Tidak ada teks yang dikembalikan!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr " TIDAK DIBERIKAN dalam berkas sumber; "
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr " berkas sumber WAIS"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " deskripsi"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "links akses"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "Akses langsung"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (atau melalui server proxy, jika didefinisikan)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "Pengelola"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "Host"
+
+#: src/GridText.c:704
+msgid "Memory exhausted, display interrupted!"
+msgstr "Kehabisan memori, penampilan terinterupsi!"
+
+#: src/GridText.c:709
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Kehabisan memori, akan menginterupsi transfer!"
+
+#: src/GridText.c:3663
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** KEHABISAN MEMORI ***"
+
+#: src/GridText.c:6057 src/GridText.c:6064 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "field atau link tidak diketahui"
+
+#: src/GridText.c:6073
+msgid "text entry field"
+msgstr "daerah masukan teks"
+
+#: src/GridText.c:6076
+msgid "password entry field"
+msgstr "daerah masukan kata sandi"
+
+#: src/GridText.c:6079
+msgid "checkbox"
+msgstr "checkbox"
+
+#: src/GridText.c:6082
+msgid "radio button"
+msgstr "tombol radio"
+
+#: src/GridText.c:6085
+msgid "submit button"
+msgstr "tombol kirim"
+
+#: src/GridText.c:6088
+msgid "reset button"
+msgstr "tombol reset"
+
+#: src/GridText.c:6091
+msgid "popup menu"
+msgstr "menu popup"
+
+#: src/GridText.c:6094
+msgid "hidden form field"
+msgstr "daerah formulir tersembunyi"
+
+#: src/GridText.c:6097
+msgid "text entry area"
+msgstr "daerah masukan teks"
+
+#: src/GridText.c:6100
+msgid "range entry field"
+msgstr "daerah masukan jangkauan"
+
+#: src/GridText.c:6103
+msgid "file entry field"
+msgstr "daerah masukan berkas"
+
+#: src/GridText.c:6106
+msgid "text-submit field"
+msgstr "daerah teks-kirim"
+
+#: src/GridText.c:6109
+msgid "image-submit button"
+msgstr "tombol gambar-kirim"
+
+#: src/GridText.c:6112
+msgid "keygen field"
+msgstr "daerah keygen"
+
+#: src/GridText.c:6115
+msgid "unknown form field"
+msgstr "daerah formulir tidak diketahui"
+
+#: src/GridText.c:10245
+msgid "Can't open file for uploading"
+msgstr "Tidak dapat membuka berkas untuk upload"
+
+#: src/GridText.c:11404
+#, c-format
+msgid "Submitting %s"
+msgstr "Mengirimkan %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12457
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Hang Deteksi: TextAnchor struct terkorupsi - disarankan untuk dibatalkan!"
+
+#. don't show previous state
+#: src/GridText.c:12594
+msgid "Wrap lines to fit displayed area?"
+msgstr "Potong baris untuk menyesuaikan daerah penampilan?"
+
+#: src/GridText.c:12646
+msgid "Very long lines have been wrapped!"
+msgstr "Baris sangat panjang telah dipotong!"
+
+#: src/GridText.c:13151
+msgid "Very long lines have been truncated!"
+msgstr "Baris sangat panjang telah dipotong!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "byte"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "Terbaca %s dari data"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Terbaca %s dari %s dari data"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/detik"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (berhenti untuk %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", ETA %s"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Tekan 'z' untuk membatalkan)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "ya"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "tidak"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr "Y/N/A/V"
+
+#: src/HTML.c:5912
+msgid "Description:"
+msgstr "Deskripsi:"
+
+#: src/HTML.c:5917
+msgid "(none)"
+msgstr "(kosong)"
+
+#: src/HTML.c:5921
+msgid "Filepath:"
+msgstr "Jalur berkas:"
+
+#: src/HTML.c:5927
+msgid "(unknown)"
+msgstr "(tidak diketahui)"
+
+#: src/HTML.c:7352
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Dokumen hanya memiliki link tersembunyi. Gunakan perintah l."
+
+#: src/HTML.c:7851
+msgid "Source cache error - disk full?"
+msgstr "Cache sumber error - disk penuh?"
+
+#: src/HTML.c:7864
+msgid "Source cache error - not enough memory!"
+msgstr "Cache sumber error - tidak cukup memori!"
+
+#: src/LYBookmark.c:167
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Berkas ini adalah sebuah representasi HTML dari berkas hotlist X Mosaic.\n"
+"     Outdated atau link tidak valid dapat dihapus menggunakan perintah hapus\n"
+"     bookmark, ini biasanya dengan tombol 'R' tetapi mungkin telah dipetakan\n"
+"     oleh anda atau sistem administrasi anda."
+
+#: src/LYBookmark.c:374
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Anda dapat menghapus link dengan tombol 'R'<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:377
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Anda dapat menghapus link menggunakan perintah hapus bookmark. Ini\n"
+"     biasanya tombol 'R' tetapi mungkin telah dipetakan oleh anda atau\n"
+"     sistem administrator anda."
+
+#: src/LYBookmark.c:381
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Berkas ini juga mungkin telah diubah dengan pengubah teks standar\n"
+"     untuk menghapus outdated atau links tidak valid, atau mengubah urutannya."
+
+#: src/LYBookmark.c:384
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Catat: jika anda mengubah berkas ini secara manual\n"
+"       anda seharusnya tidak mengubah format didalam baris\n"
+"       atau menambahkan markup HTML.\n"
+"       Pastikan link bookmark disimpan sebagai sebuah baris tunggal."
+
+#: src/LYBookmark.c:680
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Berkas mungkin dapat direkover dari %s selama sesi ini"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Anda ingin menjalankan \"%s\"?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Tidak dapat mengakses script cgi"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Saran Baik"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Sebuah server https sempurna untuk VMS tesedia melalui"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "link ini"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Ini menyediakan dukungan CGI script terbaik.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Keluar melalui interupsi:"
+
+#: src/LYCookie.c:2477
+msgid "(from a previous session)"
+msgstr "(daeri sebuah sesi sebelumnya)"
+
+#: src/LYCookie.c:2538
+msgid "Maximum Gobble Date:"
+msgstr "Maksimal Tanggal Gobble:"
+
+#: src/LYCookie.c:2577
+msgid "Internal"
+msgstr "Internal"
+
+#: src/LYCookie.c:2578
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "cookie_domain_flag_set error, membatalkan aplikasi"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Inisialisasi terminal gagal - tipe terminal tidak diketahui?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Anda harus menggunakan sebuah vt100, 200, etc. terminal dengan aplikasi ini."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "Tipe terminal anda tidak diketahui!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "Masukan sebuah tipe terminal:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TIPE TERMINAL DISET KE"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Sebuah Fatal error telah terjadi dalam %s Ver. %s\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Mohon notifikasi sistem administrator anda untuk mengkonfirmasi sebuah bug,\n"
+"dan jika terkonfirmasi, untuk menotifikasi ke daftar lynx-dev. Laporan bug\n"
+"seharusnya memiliki deskripsi singkat dari perintah dan/atau URL yang\n"
+"menyebabkan masalah, nama sistem operasi dengan nomor versi, implementasi\n"
+"TCPIP, TRACKBACK jika ini dapat ditangkap, dan informasi lain yang berhubungan.\n"
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Error memulai pengubah, %s"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Pengubah dihentikan oleh sinyal"
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "Pengubah kembali dengan status error %s"
+
+#: src/LYDownload.c:506
+msgid "Downloaded link:"
+msgstr "Link terunduh:"
+
+#: src/LYDownload.c:511
+msgid "Suggested file name:"
+msgstr "Nama berkas yang disarankan:"
+
+#: src/LYDownload.c:516
+msgid "Standard download options:"
+msgstr "Opsi unduh standar:"
+
+#: src/LYDownload.c:517
+msgid "Download options:"
+msgstr "Opsi unduh:"
+
+#: src/LYDownload.c:533
+msgid "Save to disk"
+msgstr "Simpan ke disk"
+
+#: src/LYDownload.c:547
+msgid "View temporary file"
+msgstr "Lihat berkas sementara"
+
+#: src/LYDownload.c:554
+msgid "Save to disk disabled."
+msgstr "Simpan ke disk tidak aktif."
+
+#: src/LYDownload.c:558 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Penambahan lokal:"
+
+#: src/LYDownload.c:569 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Tidak ada nama yang diberikan"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Pilihan anda:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(tidak ada alamat)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (internal)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (adalah internal)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (Dari Sejarah)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Anda telah mengunjungi (POST, bookmark, menu dan daftar berkas diabaikan):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Belum ada pesan)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Penunjuk tidak valid terdeteksi."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "Urutan:"
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Penunjuk:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Nama Berkas:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Jumlah Baris:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Kebocoran memori terdeteksi."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Berisi:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Ukuran Byte:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "realokasi:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Total kebocoran memori saat ini:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr "Puncak alokasi"
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "Byte alokasi"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr "Total mallocs"
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr "Total frees"
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "References dalam "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "dokumen ini:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Sambungan yang terlihat:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Sambungan tersembunyi:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Referensi"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Sambungan terlihat"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Tidak dapat memperoleh status dari '%s'."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "Item yang dipilih bukan sebuah berkas atau sebuah direktori! Permintaan ditolak."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Tidak dapat ke %s karena sistem error!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Mungkin gagal ke %s karena sistem error!"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "hapus %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr "sentuh %s"
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "pindahkan %s ke %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Telah ada sebuah direktori dengan nama itu! Permintaan diabaikan."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Telah ada sebuah berkas dengan nama itu! Permintaan diabaikan."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Nama yang dispesifikasikan telah digunakan! Permintaan diabaikan."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "Tujuan memiliki pemilik yang berbeda! Permintaan ditolak."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Tujuan bukan sebuah direktori yang  valid! Permintaan ditolak."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Hapus  seluruh berkas tagged dan direktori!"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Masukan lokasi baru untuk tagged items: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Jalur terlalu panjang"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Sumber dan tujuan berada dilokasi yang sama - permintaan diabaikan!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Masukan nama baru untuk direktori: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Masukan nama baru untuk berkas: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Karakter tidak legal (pemisah-jalur) ditemukan! Permintaan diabaikan."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Masukan lokasi baru untuk direktori: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Masukan lokasi baru untuk berkas: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Kegagalan tidak terduga - tidak dapat menemukan akhiran jalur pemisah"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Sumber dan tujuan berada dilokasi yang sama! Permintaan diabaikan!"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Modifikasi nama, lokasi, atau ijin (n, l, atau p): "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Modifikasi nama atau lokasi (n atau l):"
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Fitur ini belum diimplementasikan!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Masukan nama dari berkas untuk dibuat: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Redireksi \"//\" tidak legal ditemukan! Permintaan diabaikan."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Masukan nama untuk direktori baru: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Buat berkas atau direktori (f atau d): "
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Hapus direktori '%s'?"
+
+#: src/LYLocal.c:1169
+msgid "Remove directory?"
+msgstr "Hapus direktori?"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Hapus berkas '%s'?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Hapus berkas?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Hapus sambungan simbolik '%s'?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Hapus sambungan simbolik?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Maaf, tidak tahu bagaimana mengijinkan berkas bukan UNIX."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Tidak dapat membuka opsi ijin berkas"
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Spesifikasikan ijin dibawah:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Pemilik:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Grup"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Lain:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "formulir untuk ijin"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Format mode tidak valid."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Format sintaks tidak valid."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Peringatan! UUDecoded berkas akan ada dalam direktori dimana anda memulai Lynx."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "Penunjuk URL KOSONG"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Menjalankan %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Menjalankan perintah sistem. Ini mungkin membutuhkan waktu beberapa saat."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Direktori saat ini:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Pemilihaan saat ini:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Tidak ada yang dipilih saat ini."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "tagged item:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "tagged item:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Nama berkas tidak legal; permintaan diabaikan."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Pemasangan di direktori yang dipilih tidak diijinkan."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "Item yang dipilih bukan sebuah direktori! Permintaan diabaikan."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Tunggu sebentar, ..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr "Error membuat args pemasangan"
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Sumber dan target sama: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Telah berada dalam target direktori: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Pemasangan lengkap"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "URL sementara atau daftar akan menjadi terlalu panjang."
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Mengirimkan"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Sambungan  %s :?: %s \n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "dipanggil \"%s\"\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "dalam berkas \"%s\" dipanggil \"%s\"\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "telah diminta tetapi tidak tersedia."
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "Dikira anda mungkin ingin mengetahui."
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "Pesan ini secara otomatis dibuat oleh"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr "Tidak ada pengirim surat sistem yang dikonfigurasikan"
+
+#: src/LYMain.c:1001
+msgid "No Winsock found, sorry."
+msgstr "Tidak ada Winsock ditemukan, maaf."
+
+#: src/LYMain.c:1198
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Anda HARUS mendefinisikan sebuah daerah valid TMP atau TEMP!"
+
+#: src/LYMain.c:1251 src/LYMainLoop.c:5051
+msgid "No such directory"
+msgstr "Tidak ada direktori seperti itu"
+
+#: src/LYMain.c:1436
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Berkas konfigurasi \"%s\" tidak tersedia.\n"
+"\n"
+
+#: src/LYMain.c:1446
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Karakter set Lynx tidak dideklarasikan.\n"
+"\n"
+
+#: src/LYMain.c:1475
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lunx peta pengubahan tidak dideklarasikan.\n"
+"\n"
+
+#: src/LYMain.c:1551
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Berkas Lynx \"%s\" tidak tersedia.\n"
+"\n"
+
+#: src/LYMain.c:1626
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "Diabaikan %d karakter dari standar masukan.\n"
+
+#: src/LYMain.c:1628
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Gunakan \"-stdin\" atatu \"-\" untuk mengetahui bagaimana menangani masukan piped.\n"
+
+#: src/LYMain.c:1776
+msgid "Warning:"
+msgstr "Peringatan:"
+
+#: src/LYMain.c:2341
+msgid "persistent cookies state will be changed in next session only."
+msgstr "persisten keadaan cookies hanya akan berubah di sesi selanjutnya saja."
+
+#: src/LYMain.c:2586 src/LYMain.c:2631
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: mengabaikan charset=%s tidak diketahui\n"
+
+#: src/LYMain.c:3150
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Versi %s (%s)"
+
+#: src/LYMain.c:3188
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Dibuat di %s %s %s\n"
+
+#: src/LYMain.c:3210
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "Hak Cipta dipegang oleh Lynx Developers Group,"
+
+#: src/LYMain.c:3211
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "the University of Kansas, CERN, dan kontributor lain."
+
+#: src/LYMain.c:3212
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Didistribusikan dibawah GNU General Public License (Version 2)."
+
+#: src/LYMain.c:3213
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Lihat http://lynx.isc.org/ dan bantuan online untuk informasi lebih lanjut."
+
+#: src/LYMain.c:4032
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "PENGGUNAAN: %s [opsi] [berkas]\n"
+
+#: src/LYMain.c:4033
+#, c-format
+msgid "Options are:\n"
+msgstr "Opsi adalah:\n"
+
+#: src/LYMain.c:4332
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Opsi tidak valid: %s\n"
+
+#: src/LYMainLoop.c:571
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Internal error: Sambungan mouse tidak valid %d!"
+
+#: src/LYMainLoop.c:691 src/LYMainLoop.c:5073
+msgid "A URL specified by the user"
+msgstr "Sebuah URL dispesifikasikan oleh pengguna"
+
+#: src/LYMainLoop.c:1150
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Enctype multipart/form-data belum didukung! Tidak dapat mengirimkan."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3082
+msgid "Help Screen"
+msgstr "Layar Bantuan"
+
+#: src/LYMainLoop.c:3203
+msgid "System Index"
+msgstr "Indeks Sistem"
+
+#: src/LYMainLoop.c:3562 src/LYMainLoop.c:5297
+msgid "Entry into main screen"
+msgstr "Masukan ke layar utama"
+
+#: src/LYMainLoop.c:3820
+msgid "No next document present"
+msgstr "Tidak ada dokumen selanjutnya yang ada"
+
+#: src/LYMainLoop.c:4116
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "charset untuk dokumen ini dispesifikasikan secara eksplisit, maaf..."
+
+#: src/LYMainLoop.c:5029
+msgid "cd to:"
+msgstr "cd ke:"
+
+#: src/LYMainLoop.c:5054
+msgid "A component of path is not a directory"
+msgstr "Sebuah komponen dari jalur bukan sebuah direktori"
+
+#: src/LYMainLoop.c:5057
+msgid "failed to change directory"
+msgstr "gagal untuk berpindah direktori"
+
+#: src/LYMainLoop.c:6229
+msgid "Reparsing document under current settings..."
+msgstr "Reparsing dokumen dibawah konfigurasi saat ini..."
+
+#: src/LYMainLoop.c:6521
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Fatal error - tidak dapat membuka berkas keluaran %s\n"
+
+#: src/LYMainLoop.c:6858
+msgid "TABLE center enable."
+msgstr "pusat TABEL aktif."
+
+#: src/LYMainLoop.c:6861
+msgid "TABLE center disable."
+msgstr "pusat TABEL tidak aktif."
+
+#: src/LYMainLoop.c:6938
+msgid "Current URL is empty."
+msgstr "URL sekarang kosong."
+
+#: src/LYMainLoop.c:6940 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "Salin ke clipboard gagal."
+
+#: src/LYMainLoop.c:6942
+msgid "Document URL put to clipboard."
+msgstr "URL dokumen diletakan ke clipboard."
+
+#: src/LYMainLoop.c:6944
+msgid "Link URL put to clipboard."
+msgstr "Sambungan URL diletakan ke clipboard."
+
+#: src/LYMainLoop.c:6971
+msgid "No URL in the clipboard."
+msgstr "Tidak ada URL dalam clipboard."
+
+#: src/LYMainLoop.c:7642 src/LYMainLoop.c:7812
+msgid "-index-"
+msgstr "-index-"
+
+#: src/LYMainLoop.c:7752
+msgid "lynx: Can't access startfile"
+msgstr "lynx: Tidak dapat mengakses startfile"
+
+#: src/LYMainLoop.c:7764
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: Start file tidak dapat ditemukana atau bukan teks/html atau teks/plain"
+
+#: src/LYMainLoop.c:7765
+msgid "      Exiting..."
+msgstr "      Keluar..."
+
+#: src/LYMainLoop.c:7806
+msgid "-more-"
+msgstr "-lebih-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Anda akan mempost ke:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Mohon sediakan alamat surat anda untuk header From:\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Mohon sediakan atau ubah header Subject:\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Mohon sediakan atau ubah header Organization:\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Mohon masukan pesan anda dibawah."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Pesan tidak memiliki teks asli!"
+
+#: src/LYOptions.c:768
+msgid "review/edit B)ookmarks files"
+msgstr "ulas/ubah berkas B)ookmarks"
+
+#: src/LYOptions.c:770
+msgid "B)ookmark file: "
+msgstr "berkas B)ookmark: "
+
+#: src/LYOptions.c:2131 src/LYOptions.c:2138
+msgid "ON"
+msgstr "ON"
+
+#. verbose_img variable
+#: src/LYOptions.c:2132 src/LYOptions.c:2137 src/LYOptions.c:2289 src/LYOptions.c:2300
+msgid "OFF"
+msgstr "OFF"
+
+#: src/LYOptions.c:2133
+msgid "NEVER"
+msgstr "NEVER"
+
+#: src/LYOptions.c:2134
+msgid "ALWAYS"
+msgstr "SELALU"
+
+#: src/LYOptions.c:2150 src/LYOptions.c:2281
+msgid "ignore"
+msgstr "abaikan"
+
+#: src/LYOptions.c:2151
+msgid "ask user"
+msgstr "tanya pengguna"
+
+#: src/LYOptions.c:2152
+msgid "accept all"
+msgstr "terima semua"
+
+#: src/LYOptions.c:2164
+msgid "ALWAYS OFF"
+msgstr "SELALU OFF"
+
+#: src/LYOptions.c:2165
+msgid "FOR LOCAL FILES ONLY"
+msgstr "UNTUK BERKAS LOKAL SAJA"
+
+#: src/LYOptions.c:2167
+msgid "ALWAYS ON"
+msgstr "SELALU ON"
+
+#: src/LYOptions.c:2179
+msgid "Numbers act as arrows"
+msgstr "Angka berlaku sebagai panah"
+
+#: src/LYOptions.c:2181
+msgid "Links are numbered"
+msgstr "Sambungan dinomori"
+
+#: src/LYOptions.c:2184
+msgid "Links and form fields are numbered"
+msgstr "Sambungan dan daerah formulir dinomori"
+
+#: src/LYOptions.c:2187
+msgid "Form fields are numbered"
+msgstr "Daerah formulir dinomori"
+
+#: src/LYOptions.c:2201
+msgid "Case insensitive"
+msgstr "Tidak memperhatikan besar huruf"
+
+#: src/LYOptions.c:2202
+msgid "Case sensitive"
+msgstr "Memperhatikan besar huruf"
+
+#: src/LYOptions.c:2226
+msgid "prompt normally"
+msgstr "tanya secara manual"
+
+#: src/LYOptions.c:2227
+msgid "force yes-response"
+msgstr "paksa balasan ya"
+
+#: src/LYOptions.c:2228
+msgid "force no-response"
+msgstr "paksa balasan tidak"
+
+#: src/LYOptions.c:2246
+msgid "Novice"
+msgstr "Pemula"
+
+#: src/LYOptions.c:2247
+msgid "Intermediate"
+msgstr "Menengah"
+
+#: src/LYOptions.c:2248
+msgid "Advanced"
+msgstr "Ahli"
+
+#: src/LYOptions.c:2257
+msgid "By First Visit"
+msgstr "Dengan Kunjungan Pertama"
+
+#: src/LYOptions.c:2259
+msgid "By First Visit Reversed"
+msgstr "Dengan Kunjungan Pertama dibalik"
+
+#: src/LYOptions.c:2260
+msgid "As Visit Tree"
+msgstr "Sebagai Pohon Pengunjung"
+
+#: src/LYOptions.c:2261
+msgid "By Last Visit"
+msgstr "Dengan Kunjungan Terakhir"
+
+#: src/LYOptions.c:2263
+msgid "By Last Visit Reversed"
+msgstr "Dengan Kunjungan Terakhir Dibalik"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2274
+msgid "relaxed (TagSoup mode)"
+msgstr "relaxed (mode TagSoup)"
+
+#: src/LYOptions.c:2275
+msgid "strict (SortaSGML mode)"
+msgstr "strict (mode SortaSGML)"
+
+#: src/LYOptions.c:2282
+msgid "as labels"
+msgstr "sebagai labels"
+
+#: src/LYOptions.c:2283
+msgid "as links"
+msgstr "sebagai links"
+
+#: src/LYOptions.c:2290
+msgid "show filename"
+msgstr "tampilkan nama berkas"
+
+#: src/LYOptions.c:2301
+msgid "STANDARD"
+msgstr "STANDAR"
+
+#: src/LYOptions.c:2302
+msgid "ADVANCED"
+msgstr "ADVANCED"
+
+#: src/LYOptions.c:2333
+msgid "Directories first"
+msgstr "Direktori dahulu"
+
+#: src/LYOptions.c:2334
+msgid "Files first"
+msgstr "Berkas dahulu"
+
+#: src/LYOptions.c:2335
+msgid "Mixed style"
+msgstr "Gaya campur"
+
+#: src/LYOptions.c:2343 src/LYOptions.c:2363
+msgid "By Name"
+msgstr "Dengan Nama"
+
+#: src/LYOptions.c:2344 src/LYOptions.c:2364
+msgid "By Type"
+msgstr "Dengan Tipe"
+
+#: src/LYOptions.c:2345 src/LYOptions.c:2365
+msgid "By Size"
+msgstr "Dengan Ukuran"
+
+#: src/LYOptions.c:2346 src/LYOptions.c:2366
+msgid "By Date"
+msgstr "Dengan Tanggal"
+
+#: src/LYOptions.c:2347
+msgid "By Mode"
+msgstr "Dengan Mode"
+
+#: src/LYOptions.c:2349
+msgid "By User"
+msgstr "Dengan Pengguna"
+
+#: src/LYOptions.c:2350
+msgid "By Group"
+msgstr "Dengan Grup"
+
+#: src/LYOptions.c:2375
+msgid "Do not show rate"
+msgstr "Jangan tampilkan kecepatan"
+
+#: src/LYOptions.c:2376 src/LYOptions.c:2377
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "Tampilkan kecepatan %s/detik"
+
+#: src/LYOptions.c:2379 src/LYOptions.c:2380
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "Tampilkan ETA %s/detik"
+
+#: src/LYOptions.c:2383
+msgid "Show progressbar"
+msgstr "Tampilkan bar perkembangan"
+
+#: src/LYOptions.c:2395
+msgid "Accept lynx's internal types"
+msgstr "Terima tipe internal lynx"
+
+#: src/LYOptions.c:2396
+msgid "Also accept lynx.cfg's types"
+msgstr "Juga terima tipe lynx.cfg"
+
+#: src/LYOptions.c:2397
+msgid "Also accept user's types"
+msgstr "Juga terima tipe pengguna"
+
+#: src/LYOptions.c:2398
+msgid "Also accept system's types"
+msgstr "Juga terima tipe sistem"
+
+#: src/LYOptions.c:2399
+msgid "Accept all types"
+msgstr "Terima semua tipe"
+
+#: src/LYOptions.c:2408
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2409
+msgid "deflate"
+msgstr "deflate"
+
+#: src/LYOptions.c:2412
+msgid "compress"
+msgstr "compress"
+
+#: src/LYOptions.c:2415
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2417
+msgid "All"
+msgstr "Semua"
+
+#: src/LYOptions.c:2685 src/LYOptions.c:2709
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Gunakan %s untuk menjalankan Opsi menu!"
+
+#: src/LYOptions.c:3481
+msgid "(options marked with (!) will not be saved)"
+msgstr "(opsi ditandai dengan (!) tidak akan disimpan)"
+
+#: src/LYOptions.c:3489
+msgid "General Preferences"
+msgstr "Kesukaan Umum"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3493
+msgid "User mode"
+msgstr "Mode pengguna"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3499
+msgid "Editor"
+msgstr "Pengubah"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3504
+msgid "Type of Search"
+msgstr "Tipe Pencarian"
+
+#: src/LYOptions.c:3509
+msgid "Security and Privacy"
+msgstr "Keamanan dan Privasi"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3513
+msgid "Cookies"
+msgstr "Cookies"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3527
+msgid "Invalid-Cookie Prompting"
+msgstr "Tanya Cookie Tidak valid"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3534
+msgid "SSL Prompting"
+msgstr "Tanya SSL"
+
+#: src/LYOptions.c:3540
+msgid "Keyboard Input"
+msgstr "Masukan Keyboard"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3544
+msgid "Keypad mode"
+msgstr "Mode Keypad"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3550
+msgid "Emacs keys"
+msgstr "Tombol Emacs"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3556
+msgid "VI keys"
+msgstr "Tombol VI"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3563
+msgid "Line edit style"
+msgstr "Gaya pengubahan baris"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3575
+msgid "Keyboard layout"
+msgstr "Layout keyboard"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3589
+msgid "Display and Character Set"
+msgstr "Layar dan Set Karakter"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3594
+msgid "Use locale-based character set"
+msgstr "Gunakan Set Karakter berbasis lokal"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3603
+msgid "Display character set"
+msgstr "Karakter Set Penampilan"
+
+#: src/LYOptions.c:3634
+msgid "Assumed document character set"
+msgstr "Asumsikan karakter set dokumen"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3654
+msgid "CJK mode"
+msgstr "mode CJK"
+
+#: src/LYOptions.c:3656
+msgid "Raw 8-bit"
+msgstr "Raw 8-bit"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3664
+msgid "X Display"
+msgstr "Tampilan X"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3670
+msgid "Document Appearance"
+msgstr "Tampilan Dokumen"
+
+#: src/LYOptions.c:3676
+msgid "Show color"
+msgstr "Tampilkan warna"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3700
+msgid "Show cursor"
+msgstr "Tampilkan cursor"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3706
+msgid "Underline links"
+msgstr "Garis bawah sambungan"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3713
+msgid "Show scrollbar"
+msgstr "Tampilkan scrollbar"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3720
+msgid "Popups for select fields"
+msgstr "Popups untuk daerah yang dipilih"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3726
+msgid "HTML error recovery"
+msgstr "HTML error rekoveri"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3732
+msgid "Show images"
+msgstr "Tampilkan gambar"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3746
+msgid "Verbose images"
+msgstr "Verbose gambar"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3754
+msgid "Headers Transferred to Remote Servers"
+msgstr "Headers ditransfer ke Server Remote"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3758
+msgid "Personal mail address"
+msgstr "Alamat surat pribadi"
+
+#: src/LYOptions.c:3764
+msgid "Password for anonymous ftp"
+msgstr "Kata sandi untuk ftp anonim"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3770
+msgid "Preferred media type"
+msgstr "Tipe media yang disukai"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3776
+msgid "Preferred encoding"
+msgstr "Pengkodean yang disukai"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3782
+msgid "Preferred document character set"
+msgstr "Set Karakter dokumen yang disukai"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3787
+msgid "Preferred document language"
+msgstr "Bahasa dokumen yang disukai"
+
+#: src/LYOptions.c:3793
+msgid "User-Agent header"
+msgstr "Header User-Agent"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3801
+msgid "Listing and Accessing Files"
+msgstr "Mendaftar dan Mengakses Berkas"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3806
+msgid "Use Passive FTP"
+msgstr "Gunakan Passive FTP"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3812
+msgid "FTP sort criteria"
+msgstr "Kriteria pengurutan FTP"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3820
+msgid "Local directory sort criteria"
+msgstr "Kriteria pengurutan direktori lokal"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3826
+msgid "Local directory sort order"
+msgstr "Pengurutan direktori lokal"
+
+#: src/LYOptions.c:3835
+msgid "Show dot files"
+msgstr "Tampilkan berkas titik"
+
+#: src/LYOptions.c:3843
+msgid "Execution links"
+msgstr "Eksekusi sambungan"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3863
+msgid "Show transfer rate"
+msgstr "Tampilkan kecepatan transfer"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3883
+msgid "Special Files and Screens"
+msgstr "Berkas Spesial dan Layar"
+
+#: src/LYOptions.c:3888
+msgid "Multi-bookmarks"
+msgstr "Multi-bookmarks"
+
+#: src/LYOptions.c:3896
+msgid "Review/edit Bookmarks files"
+msgstr "Ulas/ubah berkas Bookmarks"
+
+#: src/LYOptions.c:3898
+msgid "Goto multi-bookmark menu"
+msgstr "Goto menu multi-bookmark"
+
+#: src/LYOptions.c:3900
+msgid "Bookmarks file"
+msgstr "Berkas bookmarks"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3907
+msgid "Auto Session"
+msgstr "Sesi otomatis"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3913
+msgid "Session file"
+msgstr "Berkas sesi"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3919
+msgid "Visited Pages"
+msgstr "Halaman Dikunjungi"
+
+#: src/LYOptions.c:3924
+msgid "View the file "
+msgstr "Lihat berkas "
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Pekerjaan pencetakan selesai.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Dokumen:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Jumlah dari baris:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Jumlah dari halaman:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "halaman"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "halaman"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(kira kira)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Beberapa fungsi pencetakan telah dinon-aktifkan!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Opsi pencetakan standar:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Opsi pencetakan:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Simpan ke sebuah bekas lokal"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Simpan ke disk tidak aktif"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Berkas dikirimkan melalui surat"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Tampilkan ke layar"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Tampilkan ke sebuah pencetak dipasang ke terminal vt100 anda"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Sintaks Error parsing COLOR dalam berkas konfigurasi:\n"
+"Baris harus berupa formulir:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Disini FOREGROUND dan BACKGROUND harus salah sati dari:\n"
+"String spesial 'nocolor' atau 'baku', atau\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Baris yang menyerang:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "Pemetaan tombol dari %s ke %s untuk %s gagal\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "pemetaan tombol dari %s ke %s gagal\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "pemilihan pengubah baris %s untuk tombol %s tidak valid, memilih semua\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "setting dari binding pengubah baris untuk tombol %s (0x%x) ke 0x%x untuk %s gagal\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "setting dari pengubah baris binding untuk tombol %s (0x%x) untuk %s gagal\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lunx: tidak dapat memulai, berkas aturan CERN %s tidak tersedia\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(tidak ada nama)"
+
+#: src/LYReadCFG.c:1882
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Lebih dari %d nested lynx.cfg termasuk -- mungkin disana ada sebuah loop?!?\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Percobaan terakhir termasuk '%s',\n"
+
+#: src/LYReadCFG.c:1885
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "dimasukan dari '%s'.\n"
+
+#: src/LYReadCFG.c:2289 src/LYReadCFG.c:2302 src/LYReadCFG.c:2360
+msgid "The following is read from your lynx.cfg file."
+msgstr "Berikut dibaca dari berkas lynx.cfg anda."
+
+#: src/LYReadCFG.c:2290 src/LYReadCFG.c:2303
+msgid "Please read the distribution"
+msgstr "Mohon baca distribusi"
+
+#: src/LYReadCFG.c:2296 src/LYReadCFG.c:2306
+msgid "for more comments."
+msgstr "Untuk komentar lebih."
+
+#: src/LYReadCFG.c:2342
+msgid "RELOAD THE CHANGES"
+msgstr "MUAT KEMBALI PERUBAHAN"
+
+#: src/LYReadCFG.c:2350
+msgid "Your primary configuration"
+msgstr "Konfigurasi Utama Anda"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "Direktori yang saat ini sedang anda lihat"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Nama:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "Direktori yang saat ini sedang anda pilih"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "Berkas yang saat ini sedang anda pilih"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "Link simbolik yang saat ini sedang anda pilih"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "Item yang saat ini sedang anda pilih"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "Nama lengkap:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "Tidak dapat mengikuti sambungan"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "Menunjuk ke berkas:"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "Nama dari pemilik:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Nama grup:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Ukuran berkas:"
+
+#: src/LYShowInfo.c:227
+msgid "(bytes)"
+msgstr "(byte)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Tanggal pembuatan:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Modifikasi terakhir:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Terakhir diakses:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Ijin Akses"
+
+#: src/LYShowInfo.c:279
+msgid "Group:"
+msgstr "Grup:"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr "Dunia:"
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Berkas yang saat ini sedang anda lihat"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Nama sambungan:"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Charset:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr "(diasumsikan)"
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Server:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Tanggal:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Modifikasi Terakhir:"
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr "Kadaluarsa:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Cache-Control:"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr "Panjang:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Bahasa:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "Post Data:"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "Tipe Isi Post:"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Pemilik:"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "ukuran:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "baris"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "formulir mode"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "sumber"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "normal"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", aman"
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ", melalui link internal"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", tidak ada cache"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", ISMAP script"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", berkas bookmark"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "mode:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Sambungan yang saat ini anda pilih"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Metode:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "Enctype:"
+
+#: src/LYShowInfo.c:436
+msgid "Action:"
+msgstr "Aksi:"
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(Form Field)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "Tidak ada sambungan di halaman sekarang"
+
+#: src/LYShowInfo.c:455
+msgid "Server Headers:"
+msgstr "Header Server:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Sintaks Error parsing style dalam berkas lss:\n"
+"[%s]\n"
+"Baris harus berupa dalam bentuk:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"dimana OBJECT adalah salah satu dari EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+
+#: src/LYTraversal.c:111
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "disini adalah daftar dari sejarah stack yang dapat anda buat kembali"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "ERROR! - perintah upload salah konfigurasi"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "redireksi \"../\" tidak legal ditemukan! Permintaan diabaikan."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Karakter tidak legal \"/\" ditemukan! Permintaan diabaikan."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Redireksi menggunakan \"~\" tidak legal ditemukan! Permintaan diabaikan."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Tidak dapat mengupload berkas."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Upload Ke:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Opsi Upload:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr "URL unduh dokumen diletakan ke clipboard."
+
+#: src/LYUtils.c:2614
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Protokol akses tidak terduga untuk skema URL ini."
+
+#: src/LYUtils.c:3422
+msgid "Too many tempfiles"
+msgstr "Terlalu banyak berkas tempfiles"
+
+#: src/LYUtils.c:3722
+msgid "unknown restriction"
+msgstr "restriksi tidak diketahui"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Tidak ada set restriksi.\n"
+
+#: src/LYUtils.c:3756
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Set restriksi:\n"
+
+#: src/LYUtils.c:5134
+msgid "Cannot find HOME directory"
+msgstr "Tidak dapat menemukan direktori HOME"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Secara normal tidak aktif. Lihat ENABLE_LYNXRC dalam lynx.cfg\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies mengijinkan pengguna untuk memberitahu Lynx secara otomatis\n"
+"menerima seluruh cookies jika diinginkan. Baku adalah \"FALSE\" yang akan\n"
+"menanyakan untuk setiap cookie. Set accept_all_cookies ke \"TRUE\" untuk\n"
+"menerima semua cookie.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"anonftp_password mengijinkan pengguna untuk memberitahu Lynx untuk menggunakan\n"
+"alamat email pribadi sebagai kata sandi untuk ftp anonim. Jika tidak ada nilai\n"
+"yang diberikan Lynx akan menggunakan alamat email pribadi. Set anonftp_password\n"
+"ke sebuah nilai berbeda jika anda memilih.\n"
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file menspesifikasikan nama dan lokasi dari berkas bookmark baku\n"
+"kedalam dimana pengguna dapat paste link untuk akses mudah di waktu\n"
+"kemudian.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Jika case_sensitive_searching \"on\" maka ketika pengguna menjalankan sebuah\n"
+"pencarian menggunakan tombol 's' atau '/', pencarian yang dilakukan akan\n"
+"memperhatikan besar huruf dari pada tidak diperhatikan. Baku biasanya \"off\".\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"Definisi kontrol character_set representasi dari 8 bit karakter untuk\n"
+"terminal anda. Jika 8 bit karakter tidak tampil dengan benar di layar\n"
+"anda mungkin coba mengubah ke 8 bit set yang berbeda atau menggunakan\n"
+"approksimasi karakter 7 bit.\n"
+"Set karakter yang valid sekarang adalah:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains dan cookie_reject_domain adalah daftar dipisahkan\n"
+"koma dari domain dari Lynx yang seharusnya secara otomatis diterima atau\n"
+"ditolak untuk semua cookie. Jika sebuah domain dispesifikasikan di kedua\n"
+"opsi, penolakan akan mengambil prioritas. Parameter accept_all_cookies akan\n"
+"override konfigurasi apapun yang dibuat disini.\n"
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file menspesifikasikan berkas yang dibaca persistent cookies.\n"
+"Baku adalah ~/"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, dan\n"
+"cookie_query_invalid_domain adalah daftar  dipisahkan koma dari domain\n"
+"yang seharusnya ditunjukan untuk tingkat berbeda dari pemeriksaan keabsahan.\n"
+"Jika sebuah domain diset ke pemeriksaan strict, strict konformance ke\n"
+"RFC22109 akan diaplikasikan. Sebuah domain akan kehilangan pemeriksaan akan\n"
+"diijinkan untuk menset cookies dengan sebuah jalur tidak valid atau atribut\n"
+"domain. Semua domain akan baku ke permintaan pengguna untuk sebuah jalur atau domain tidak valid.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order menspesifikasikan urutan daftar direktori dibawah DIRED_SUPPORT\n"
+"(jika diimplementasikan). Baku adalah \"ORDER_BY_NAME\"\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_style menspesifikasikan gaya daftar direktori dibawah DIRED_SUPPORT\n"
+"(jika diimplementasikan). Baku adalah \"MIXED_STYLE\", jika diurutkan baik\n"
+"berkas dan direktori bersama. \"FILES_FIRST\" daftar berkas pertama dan\n"
+"\"DIRECTORIES_FIRST\" daftar direktori pertama.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Jika emacs_keys aktif ke \"on\" maka normal tombol pemindahan EMACS:\n"
+"  ^N = turun   ^P = naik\n"
+"  ^B = kiri    ^F = kanan\n"
+"akan diaktifkan.\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor menspesifikasikan pengubah yang dipanggil ketika mengubah berkas\n"
+"lokal atau mengirim surat. Jika tidak ada pengubah yang dispesifikasikan,\n"
+"maka pengubahan berkas tidak aktif kecuali ini diaktifkan dari baris perintah,\n"
+"dan built-in baris pengubah akan digunakan untuk mengirim surat.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method menspesifikasikan nilai untuk mengurutkan ketika melihat\n"
+"daftar berkas seperti direktori FTP. opsi adalah:\n"
+"   BY_FILENAME -- urutkan berdasarkan nama dari berkas\n"
+"   BY_TYPE     -- urutkan berdasarkan tipe dari berkas\n"
+"   BY_SIZE     -- urutkan berdasarkan ukuran dari berkas\n"
+"   BY_DATE     -- urutkan berdasarkan tanggal dari berkas\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode menspesifikasikan pengikatan tombol digunakan untuk memasukan\n"
+"string dalam pertanyaan dan formulir. Jika lineedit_mode diset ke \"Default Binding\" maka\n"
+"kontrol karakter berikut digunakan untuk berpindah dan menghapus:\n"
+"\n"
+"            Sebelumnya Sesudahnya        Enter   = Terima Masukan\n"
+"  Pindah char:   <-      ->                ^G    = Batalkan masukan\n"
+"  Pindah kata:   ^P      ^N                ^U    = Hapus baris\n"
+" Hapus char:     ^H      ^R                ^A    = Awal dari baris\n"
+" Hapus kata:     ^B      ^F                ^E    = Akhir dari baris\n"
+"\n"
+"Mode lineedit sekarang:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Berikut mengijinkan anda untuk mendefinisikan berkas sub-bookmark dan deskripsi.\n"
+"Format adalah multi_bookmark<huruf_besaar>=<nama berkas>, <deskripsi>\n"
+"Sampai ke 26 berkas bookmark (untuk huruf besar bahasa inggris) diijinkan.\n"
+"Kita memulai dengan \"multi_bookmarkB\" karena 'A' adalah baku (lihat diatas).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address menspesifikasikan alamat email pribadi anda.\n"
+"Alamat akan dikirimkan ketika transfer berkas HTTP untuk tujuan otorisasi\n"
+"dan pencatatan, dan untuk mengirimkan komentar.\n"
+"Jika anda tidak ingin informasi ini dikirimkan keluar, set NO_FROM_HEADER\n"
+"ke TRUE dalam lynx.cfg, atau gunakan opsi baris perintah -nofrom. Anda\n"
+"juga dapat meninggalkan daerah ini kosong, tetapi nanti anda tidak akan\n"
+"memasukannya ke komentar surat anda.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset menspesifikasikan set karakter dalam notasi MIME (e.g,\n"
+"ISO-8859-2, ISO-8859-5) dimana Lynx akan mengindikasikan kesukaan anda\n"
+"dalam permintaan ke server http menggunakan sebuah header Accept-Charset.\n"
+"Nilai seharusnya TIDAK termasuk ISO-8859-1 atau US-ASCII, karena nilai itu\n"
+"selalu diasumsikan secara baku. Mungkin berupa sebuah daftar dipisahkan koma.\n"
+"Jika sebuah berkas dalam set karakter tersedia, server akan mengirimkannya.\n"
+"Jika tidak ada header Accept-Charset yang ada, baku adalah set karakter apapun\n"
+"yang diterima. Jika sebuah header Accept-Charset header ada, dan jika server\n"
+"tidak dapat mengirimkan sebuah balasan dimana itu dapat diterima\n"
+"menurut header Accept-Charset, maka server SEHARUSNYA mengirimkan sebuah\n"
+"pesan balasan error, walaupun pengiriman dari sebuah balasan tidak diterima\n"
+"juga diijinkan.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language menspesifikasikan bahasa dalam notasi MIME (e.g., en,\n"
+"fr, mungkin berupa daftar dipisahkan koma dalam kesukaan menurun)\n"
+"dimana Lynx akan mengindikasikan kesukaan anda dalam permintaan ke server http.\n"
+"Jika sebuah berkas dalam bahasa itu tersedia, server akan mengirimkannya.\n"
+"Jika tidak, server akan mengirim berkas dalam bahasa bakunya.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Jika run_all_execution_links di set ke \"on\" maka seluruh link eksekusi lokal\n"
+"akan dieksekusi ketika mereka dipilih.\n"
+"\n"
+"PERINGATAN - Ini mungkin akan SANGAT berbahaya. Karena anda mungkin melihat\n"
+"             informasi yang ditulis oleh sumber yang tidak diketahui dan\n"
+"             tidak dipercaya dimana ada kemungkinan link ke Trojan Horse dapat\n"
+"             ditulis. Trojan horse link dapat ditulis untuk menghapus berkas\n"
+"             atau kompromi keamanan. Ini seharusnya hanya diset ke \"on\" jika\n"
+"             anda melihat sumber informasi yang dipercaya.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Jika run_execution_links_on_local_files diset ke \"on\" maka seluruh link\n"
+"eksekusi lokal yang ditemukan dalam berkas LOCAL akan dieksekusi ketika\n"
+"mereka dipilih. Ini berbeda dari run_all_execution_links yang hanya\n"
+"berkas yang berada di sistem lokal yang memiliki ijin eksekusi link.\n"
+"\n"
+"PERINGATAN - Ini mungkin berbahaya. Karena anda mungkin melihat informasi\n"
+"             yang ditulis oleh sumber yang tidak diketahui dan tidak dipercaya\n"
+"             ada kemungkinan bahwa link Trojan Horse dapat ditulis. Trojan horse\n"
+"             link dapat ditulis untuk menghapus berkas atau kompromi keamanan.\n"
+"             Ini seharusnya diset ke \"on\" jika anda melihat ke sumber\n"
+"             informasi yang dapat dipercaya.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups menspesifikasikan apakah OPSI dalam blok SELECT yang kurang\n"
+"atribut MULTIPLE ada sebagai sebuah daftar vertikal dari tombol radio atau\n"
+"melalui sebuah menu popup. Catat jika sebuah atribut MULTIPLE ada dalam tag\n"
+"mulai SELECT, Lynx selalu membuat sebuah daftar vertikal dari checkboxes\n"
+"untuk OPSI. Sebuah NILAI dari \"on\" akan menset popups menu\n"
+"sebagai baku ketika sebuah nilai dari \"off\" akan menset penggunaan dari boxes.\n"
+"Baku dapat dioverridden melalui opsi baris perintah -popup .\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color menspesifikasikan bagaiman menset mode warna di waktu awal. Sebuah\n"
+"nilai dari \"never\" akan memaksa mode warna tidak aktif (perlakukan termina\n"
+"sebagai monochrome) di waktu awal walaupun terminal kelihatannya mampu\n"
+"menampilkan warna. Sebuah warna dari \"always\" selalu memaksa mode warna aktif\n"
+"walaupun terminal tampak seperti monochrome, jika ini didukung oleh perpustakaan\n"
+"yang digunakan untuk membuat lynx.\n"
+"Sebuah nilai dari \"default\" akan menghasilkan perilaku dengan mengasumsikan\n"
+"sebuah terminal monochrome kecuali kapabilitas warna tidak ada ketika awal\n"
+"variabel lingkungan COLORTERM diset. Perilaku baku selalu digunakan dalam akun\n"
+"anonim atau jika \"option_save\" pembatasan diset.\n"
+"Efek dari nilai yang disimpan dapat dioverride melalui opsi baris perintah\n"
+"-color dan -nocolor.\n"
+"Mode set di waktu awal dapat diubah melalui opsi \"show color\" dalam menu\n"
+"'o'ptions. Jika konfigurasi option disimpan, \"on\" dan \"off\" \"show color\"\n"
+"konfigurasi akan diperlakukan sebagai \"default\".\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor menspesifikasikan apakah 'hide' cursor ke kanan (dan\n"
+"bawah, jika memungkinkan) dari layar, atau tempatkan itu ke kiri dari\n"
+"link saat ini dalam dokumen, atau opsi sekarang dalam jendela popups yang dipilih\n"
+"Posisi kursor dikiri dari link sekarang atau opsi berguna untuk antarmuka\n"
+"suara atau braile, dan ketika termina adalah salah satu yang tidak membedakan\n"
+"link sekarang berdasarkan dari highlighting atau warna. Sebuah nilai dari \"on\"\n"
+"akan menset posisi ke kiri sebagai baku ketika nilai dari \"off\" akan menset\n"
+"'hiding' dari kursor.\n"
+"baku dapat dioverriden melalui opsi baris perintah -show_cursor.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles menspesifikasikan bahwa daftar direktori seharusnya termasuk\n"
+"\"hidden\" (dot) files/direktori. Jika diset \"on\", ini akan dihargai jika\n"
+"aktif melalui userdefs.h dan/atau lynx.cfg, dan tidak terbatas melalui\n"
+"sebuah opsi baris perintah. Jika penampilan dari berkas tersembunyi tidak \n"
+"aktif, pembuatan dari berkas seperti itu melalui Lynx juga tidak aktif.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Jika sub_bookmarks tidak di ubah \"off\", dan multiple bookmark telah\n"
+"didefinisikan (lihat dibawah), maka semua operasi bookmark pertama akan\n"
+"menanyakan pengguna untuk memilih sebuah berkas sub-bookmark aktif. Jika\n"
+"bookmark_file Lynx baku didefinisikan (lihat atas), ini akan digunakan\n"
+"sebagai pemilihan baku. Ketika opsi ini diset ke \"advanced\", dan mode\n"
+"pengguna advanced, perintah bookmark 'v'iew akan memanggil sebuah prompt\n"
+"statusline daripada menu terlihat dalam mode pengguna pemula dan menengah.\n"
+"Ketika opsi ini diset ke \"standard\", menu akan ditampilkan tidak perduli mode pengguna.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode menspesifikasikan tingkat pengetahuan pengguna dengan Lynx. Baku\n"
+"adalah \"NOVICE\" dimana menampilkan kelebihan dua baris dari bantuan di bawah\n"
+"layar untuk menolong pengguna menggunakan perintah dasar Lynx.\n"
+"Set user_mode ke \"INTERMEDIATE\" untuk menon-aktifkan informasi tambahan.\n"
+"Gunakan \"ADVANCED\" untuk melihat URL dari link yang saat ini dipilih di\n"
+"bawah dari layar.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Jika verbose_images \"on\", lynx akan menampilkan nama dari gambar\n"
+"berkas sumber ditempat dari [INLINE], [LINK] atau [GAMBAR]\n"
+"Lihat juga VERBOSE_IMAGES dalam lynx.cfg\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Jika vi_keys di set ke \"on\", maka tombol perpindahan normal VI:\n"
+"  j = turun   k = naik\n"
+"  h = kiri    l = kanan\n"
+"akan aktif. Tombol ini hanya huruf kecil.\n"
+"Huruf kapital 'H', 'J' dan 'K' akan tetapi mengaktifkan bantuan, lompat shortcuts,\n"
+"dan menampilkan peta tombol.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"visited_links konfigurasi mengontrol bagaimana Lynx mengorganisasi informasi\n"
+"dalam halaman Visited Links.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Jika keypad_mode diset ke \"NUMBERS_AS_ARROWS\", maka nomor di keypad\n"
+"anda ketika numlock aktif akan berlaku sebagai tombol panah:\n"
+"           8 = Panah atas\n"
+"  4 = Panah Kiri    6 = Panah Kiri\n"
+"           2 = Panah bawah\n"
+"dan nomor keyboard yang berhubungan akan berlaku sebagai tombol panah,\n"
+"tidak perduli apakah numlock aktif.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Jika keypad_mode diset ke \"LINKS_ARE_NUMBERED\", maka nomor akan muncul\n"
+"setelah setiap link dan nomor yang digunakan untuk memilih link.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Jika keypad_mode diset ke \"LINKS_AND_FORM_FIELD_ARE_NUMBERED\", maka\n"
+"nomor akan muncul setelah setiap link dan terlihat dari daerah masukan formulir.\n"
+"Nomor digunakan untuk memilih link, atau untuk memindahkan ke \"current link\" ke\n"
+"sebuah daerah masukan formulir atau tombol. Sebagai tambahan, opsi dalam menu\n"
+"popup terindeks jadi pengguna mugkin mengetikan sebuah nomor opsi untuk memilih\n"
+"sebuah opsi dalam sebuah menu popup, bahkan jika opsi tidak terlihat dilayar.\n"
+"Daftar referensi dan keluaran dari baris perintah juga mengenumerasi masukan formulir.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"CATAT: Beberapa format dokumen tetap mungkin tampak salah bentuk ketika\n"
+"\"LINKS_ARE_NUMBERED\" atau \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\"\n"
+"diaktifkan.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"Berkas Baku Pengguna Lynx\n"
+"\n"
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"Berkas ini berisi opsi disimpan dari Opsi Layar Lynx (secara normal\n"
+"dengan tombol 'o'). Untuk menyimpan opsi di layar itu, anda harus\n"
+"memilih checkbox:\n"
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+"Anda harus menyimpan konfigurasi menggunakan sambungan di baris\n"
+"diatas checkbox:\n"
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"Anda juga boleh menggunakan opsi baris-perintah \" -forms_options\", yang\n"
+"menampilkan Opsi Menu lebih sederhana. Simpan opsi dengan itu menggunakan\n"
+"tombol '>'.\n"
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"Berkas ini berisi opsi disimpan dari Layar Opsi Lynx (secara normal\n"
+"dengan tombol '>').\n"
+"\n"
+
+#: src/LYrcFile.c:910
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Disana secara normal tidak dibutuhkan untuk mengubah berkas ini\n"
+"secara manual, karena disini baku dapat dikontrol dari Layar Opsi, dan opsi\n"
+"selanjutnya disimpan dari Layar Opsi berkas ini akan ditulis ulang.\n"
+"Anda telah diperingatkan...\n"
+"\n"
+"Jika anda mencari untuk berkas konfigurasi umum - ini secara normal dipanggil\n"
+"lynx.cfg, dan ini memiliki isi berbeda dan sebuah format berbeda.\n"
+"Tapi bukan berkas ini.\n"
+
+#~ msgid "Socket read failed for 180,000 tries."
+#~ msgstr "Pembacaan socket gagal untuk pencobaan 180,000 kali."
diff --git a/po/it.po b/po/it.po
new file mode 100644
index 00000000..4577de23
--- /dev/null
+++ b/po/it.po
@@ -0,0 +1,6110 @@
+# ITALIAN TRANSLATION OF LYNX-2.8.7-dev12
+# Copyright (C) 1998, 2002, 2008, 2009 Free Software Foundation, Inc.
+# This file is distributed under the same license as the lynx package.
+#
+# Sabato De Rosa, 1997 (release 2.7)
+# Giuliano Artico <artico@math.unipd.it>, 2002.
+# Vincenzo Campanella <vinz65@gmail.com>, 2008, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.7-dev12\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-04-26 11:42-0400\n"
+"PO-Revision-Date: 2009-04-10 17:59+0200\n"
+"Last-Translator: Vincenzo Campanella <vinz65@gmail.com>\n"
+"Language-Team: Italian <tp@lists.linux.it>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Attenzione: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Benvenuti"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Uscire da Lynx?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Uscire veramente da Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Connessione interrotta."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Trasferimento di dati interrotto."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Annullato."
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Annullamento in corso."
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Ottimo!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Fatto."
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Richiesta non corretta."
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "precedente"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "prossima schermata"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "AIUTO"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", aiuto su "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Comandi: usare le frecce per spostarsi, «?» per l'aiuto, «q» per uscire, «<-»' per tornare indietro."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- premere la barra spaziatrice per continuare, usare le frecce per spostarsi, «?» per l'aiuto, «q» per uscire."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- premere la barra spaziatrice per andare alla prossima pagina --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL troppo lungo"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Campo immissione testo) Non attivo. Premere <Invio> per attivare."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Area testo) Non attiva. Premere <Invio> per attivare."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Area testo) Non attiva. Premere <Invio> per attivare (%s per l'editor)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Campo modulo) Non attivo. Usare <Invio> per modificare."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Campo modulo) Non attivo. Usare <Invio> per modificare (%s per inviare senza cache)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Campo modulo) Non attivo. Premere <Invio> per modificare, premere due volte <Invio> per inviare."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(Campo invio posta elettronica) Non attivo. Premere <Invio> per cambiare."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Campo immissione password) Non attivo. Premere <Invio> per attivare."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Campo immissione file INALTERABILE. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Campo immissione file) Inserire il nome del file. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Campo immissione testo) Inserire il testo. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Area testo) Inserire il testo. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Area testo) Inserire il testo. Usare le frecce Su/Giù oppure il tabulatore per spostarsi (%s per l'editor)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Campo testo modulo INALTERABILE. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Campo modulo) Inserire il testo. Usare <Invio> per inviare."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Campo modulo) Inserire il testo. Usare <Invio> per inviare (%s per escludere la cache)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Campo modulo) Inserire il testo. Usare <Invio> per inviare, le frecce oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Campo modulo INALTERABILE. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(Campo invio posta elettronica) Inserire il testo. Usare <Invio> per inviare, le frecce per spostarsi."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(Campo invio posta elettronica) L'invio di posta elettronica non è ammesso, impossibile inviare."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Campo immissione password) Inserire il testo. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "Modulo password INALTERABILE. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Casella di scelta) Usare la freccia destra o <Invio> per cambiare lo stato."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "Casella di scelta INALTERABILE. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Pulsante radio) Usare la freccia destra o <Invio> per cambiare lo stato."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Pulsante radio INALTERABILE. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Invia («x» per escludere la cache) a "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Invia a "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Pulsante invio modulo) Usare la freccia destra o <Invio> per inviare («x» per escludere la cache)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Pulsante invio modulo) Usare la freccia destra o <Invio> per inviare."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Pulsante invio modulo DISABILITATO. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Invia il modulo tramite posta elettronica a "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(Pulsante invio posta elettronica) Usare la freccia destra o <Invio> per inviare."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(Pulsante invio posta elettronica) L'invio di posta elettronica non è ammesso, impossibile inviare."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Pulsante azzeramento modulo) Usare la freccia destra oppure <Invio> per riportare il modulo ai valori predefiniti."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Pulsante azzeramento modulo DISABILITATO. Usare le frecce Su/Giù oppure il tabulatore per spostarsi."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Elenco opzioni) Premere <Invio>, scegliere con le frecce e confermare con <Invio>."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Elenco scelte) Premere <Invio>, scegliere con le frecce e confermare con <Invio>."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "Elenco opzioni INALTERABILE. Usare le frecce o <Invio> per esaminare o abbandonare."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "Elenco scelte INALTERABILE. Usare le frecce o <Invio> per esaminare o abbandonare."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Invio del modulo in corso"
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Azzeramento del modulo in corso"
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Ricarica del documento in corso. I dati immessi nel modulo andranno persi."
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Attenzione: impossibile convertire nel set di caratteri %s i dati del modulo."
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(COLLEGAMENTO NORMALE) Usare la freccia destra o <Invio> per attivare."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "La risorsa richiesta non è disponibile in questo momento."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Immettere il comando di Lynx con la tastiera: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Ricerca in corso di "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Acquisizione di %s in corso"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "%s viene ignorato"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "%s viene usato"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "URL illecito: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Indirizzo malformato %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Impossibile accedere al file WWW."
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Questo è un indice consultabile. Usare %s per cercare."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Segue-- Questo è un indice consultabile. Usare %s per cercare."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Il numero di collegamento immesso non è valido."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Attualmente viene visualizzato il codice sorgente. Premere «\\» per tornare alla versione ipertestuale."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  Frecce: Su/Giù per spostarsi, destra per seguire un collegamento, sinistra per tornare indietro.  \n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " H = aiuto, O = opzioni, P = stampa, G = vai, M = pagina principale, Q = esci, / = cerca, <canc> = cronologia \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr ""
+"  O = altri comandi, H = aiuto, K = mappatura della tastiera, G = vai, P = stampa, M = pagina principale, o = opzioni, Q = "
+"esci  \n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "  O = altri comandi, B = indietro, E = modifica, D = scarica, ^R = ricarica, ^W = pulisci schermo, / = cerca documento \n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O = altri comandi, C = commento, <backspace> = cronologia | Segnalibri: V = visualizza, A = aggiungi, R = rimuovi \n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Usare la tastiera per immettere il testo nel campo               "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U per cancellare tutto il testo nel campo, <Backspace> per cancellare un carattere    "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "     Ctrl-U per cancellare il testo nel campo, <Backspace> per cancellare un carattere    "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s per cancellare tutto il testo nel campo, <Backspace> per cancellare un carattere    "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "      %s per cancellare tutto il testo nel campo, <Backspace> per cancellare un carattere    "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Invio del modulo di posta elettronica malformato. Richiesta annullata."
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Attenzione: i codici di controllo nell'indirizzo di posta elettronica sono stati sostituiti con ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "L'invio di posta elettronica non è ammesso. Impossibile inviare."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Impossibile inviare il modulo di posta elettronica."
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Invio del modulo di posta elettronica annullato."
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Invio del contenuto del modulo in corso"
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "Non è presente alcun indirizzo di posta elettronica nell'URL mailto."
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Impossibile aprire il file temporaneo per l'URL mailto."
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Includere il messaggio originale?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Includere il sorgente preanalizzato?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Avvio in corso dell'editor prescelto per l'elaborazione della posta elettronica"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Errore durante l'avvio dell'editor. Verificare la definizione dell'editor nel menù delle opzioni"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Inviare questo commento?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Inviare questo messaggio?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Invio del messaggio in corso"
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Invio del commento in corso:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Non si è in un'area di testo, impossibile usare l'editor esterno."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Non si è in un'area di testo, impossibile usare questo comando."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "Le azioni non sono ammesse con questo file."
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "L'URL «file:» non è ammesso con i collegamenti serviti."
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "Accesso ai file locali negato."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "L'URL «file:» non è ammesso nei segnalibri."
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Questo particolare URL non è ammesso nei documenti esterni."
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Premere <Invio> per ritornare a Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Avvio di un sottoprocesso DCL in corso. Usare «logout» per ritornare a Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Scrivere «EXIT» per ritornare a Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Avvio della shell predefinita in corso. Usare «exit» per ritornare a Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "L'avvio è attualmente disabilitato."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "Il comando «d» (scarica) è attualmente disabilitato."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Impossibile scaricare un campo d'immissione."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Il modulo contiene un'azione «mailto:». Impossibile scaricare."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Impossibile scaricare un collegamento di tipo «mailto»."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Impossibile scaricare cookie."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Impossibile scaricare un'opzione di stampa."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Impossibile scaricare un'opzione di caricamento."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Impossibile scaricare un'opzione di permessi."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Questo particolare URL non può essere scaricato."
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Non c'è nulla da scaricare."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Tracciamento ATTIVATO."
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Tracciamento DISATTIVATO."
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "I collegamenti saranno inclusi per tutte le immagini. Ricaricamento in corso."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Trattamento normale delle immagini ripristinato. Ricaricamento in corso."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Verranno inseriti «pseudo-ALT» per le immagini prive dell'attributo «ALT». Ricaricamento in corso."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Le immagini prive dell'attributo ALT verranno ignorate. Ricaricamento in corso."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Modalità 8-bit o CJK DISATTIVATA. Ricaricamento in corso."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Modalità 8-bit o CJK ATTIVATA. Ricaricamento in corso."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Inviare richiesta HEAD per D = documento, L = collegamento, o C = annullare? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Inviare richiesta HEAD per D = documento, o C = annullare? (d,c): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Spiacente, il documento non è un URL http."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Spiacente, il collegamento non è un URL http."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Spiacente, l'attributo ACTION per questo modulo è disabilitato."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Spiacente, l'attributo ACTION per questo modulo non è un URL http."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "L'elemento non è né un URL http né ha un attributo ACTION."
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Questo particolare URL non può essere un attributo ACTION."
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "L'URL non è nel dominio di partenza."
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "L'invio di articoli è disabilitato."
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Il supporto alla gestione di file è disabilitato."
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Non è disponibile alcun file di accesso rapido."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Vai a (usare «?» per l'elenco): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "L'accesso rapido a una scorciatoia URL non è ammesso."
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Gli URL casuali non sono ammessi. Usare una scorciatoia."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Finora non è stato usato alcun URL casuale."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Le funzioni riguardanti i segnalibri sono attualmente disabilitate."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "L'esecuzione a partire dai segnalibri è disabilitata."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Il file dei segnalibri non è definito. Usare %s per vedere le opzioni."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Impossibile aprire il file temporaneo per convertire i segnalibri di X Mosaic."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "ERRORE - Impossibile aprire il file dei segnalibri."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Impossibile aprire il file dei segnalibri per l'eliminazione del collegamento."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Impossibile aprire il file di appoggio per l'eliminazione del collegamento."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Errore nel rinominare il file di appoggio."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Errore nel rinominare il file temporaneo."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Impossibile copiare il file temporaneo per l'eliminazione del collegamento."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Impossibile riaprire il file temporaneo per l'eliminazione del collegamento."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Il collegamento non è contenuto in un'unica riga nel file dei segnalibri."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Impossibile eliminare il segnalibro."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Impossibile scorrere i file dei segnalibri (solo gli URL http)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Impossibile aprire il file dei segnalibri; usare dapprima «a» per salvare un collegamento."
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Nessun collegamento in questo file dei segnalibri."
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "D = elimina il documento nella cache, C = annulla? (d,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "D = salva il documento nei preferiti, L = salva il collegamento nei preferiti, C = annulla? (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "D = salva il documento nei segnalibri, C = annulla? (d,c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "L = salva il collegamento nei segnalibri, C = Annulla? (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Impossibile salvare nei segnalibri documenti da moduli con contenuto POST."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Impossibile salvare campi o collegamenti di un modulo."
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Impossibile salvare come segnalibri cronologia, informazioni, menù ed elenco di file."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Eliminare veramente questa voce dai segnalibri?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Indirizzo malformato."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Analisi storica dei commenti ATTIVATA (l'analisi minima viene sostituita)."
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Analisi storica dei commenti DISATTIVATA (analisi minima in atto)."
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Analisi storica dei commenti ATTIVATA (l'analisi di validità viene sostituita)."
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Analisi storica dei commenti DISATTIVATA (analisi di validità in atto)."
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Analisi minima dei commenti ATTIVATA (e in atto)."
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Analisi minima dei commenti DISATTIVATA (analisi di validità in atto)."
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Analisi minima dei commenti ATTIVATA (ma l'analisi storica è in atto)."
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Analisi minima dei commenti DISATTIVATA (analisi storica in atto)."
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "Analisi flessibile delle virgolette (soft double-quote) ATTIVATA."
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "Analisi flessibile delle virgolette (soft double-quote) DISATTIVATA."
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Analisi dell'HTML in stile TagSoup (meno rigida) in uso."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Analisi dell'HTML in stile SortaSGML (più rigida) in uso."
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Si è già alla fine del documento."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Si è già all'inizio del documento."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Si è già alla pagina %d di questo documento."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Si è già al collegamento numero %d."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Si è già al primo documento."
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Non ci sono collegamenti sopra questa riga del documento."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Non ci sono collegamenti sotto questa riga del documento."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Raggiunta la lunghezza massima. Cancellare del testo o uscire dal campo."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Non si è su un pulsante di invio del modulo o su un collegamento normale."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "Un pulsante radio deve sempre esser attivato."
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Questo modulo non contiene un pulsante di invio. Inviare il campo di testo singolo?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Ritornare al documento precedente?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Usare le frecce o il tabulatore per uscire da questo campo."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Inserire il testo. Usare le frecce Su/Giù oppure il tabulatore per uscire dal campo."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Errore nel codice HTML: non è definita alcuna azione per il modulo. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Errore nel codice HTML: impossibile creare la finestra di popup."
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Impossibile creare la finestra di popup."
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Il rinvio a un URL casuale non è ammesso."
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Il rinvio a un URL non HTTP non è ammesso."
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Non è consentito andare agli URL «%s»"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "URL da aprire: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Modifica dell'URL Goto attuale: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Modifica dell'URL Goto precedente: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Modifica di un URL Goto precedente: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "Il documento attuale contiene dati POST."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Modifica l'URL di questo documento: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Modifica l'URL del collegamento attuale: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "Impossibile modificare gli URL della gestione dei file."
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Immettere un'interrogazione per il database: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Immettere un'interrogazione whereis: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Modifica l'interrogazione attuale: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Modifica l'interrogazione precedente: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Modifica di un'interrogazione precedente: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Usare Ctrl-R per inviare nuovamente l'interrogazione attuale."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Modifica la scorciatoia attuale: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Modifica la scorciatoia precedente: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Modifica una scorciatoia precedente: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Il tasto «%c» non corrisponde a un file di accesso rapido."
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Impossibile trovare il file di accesso rapido."
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Impossibile aprire il file di accesso rapido."
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Errore durante la lettura del file di accesso rapido."
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Memoria esaurita durante la lettura del file di accesso rapido."
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Memoria esaurita durante la lettura della tabella degli accessi rapidi."
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Attualmente non è disponibile alcun indice."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Andare alla pagina principale?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "Si è già nella pagina principale."
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Documento non indicizzato. Premere «/» per cercare una stringa di testo."
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Non è stato definito alcun proprietario di questo file. Impossibile inviare un commento."
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Non è stato definito alcun proprietario. Usare %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Inviare un commento?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "La posta elettronica non è ammessa. Impossibile inviare un commento."
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "Il comando «e» (editor) è attualmente disabilitato."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "La modifica esterna è attualmente disabilitata."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Errore di sistema: impossibile rilevare lo stato."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Non è stato definito alcun editor."
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "Il comando «p» (stampa) è attualmente disabilitato."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "Il documento non ha barre di strumenti o banner."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Impossibile aprire il file dei percorsi."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Impossibile aprire il file dei percorsi trovato."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Impossibile aprire il file dei percorsi respinti."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Impossibile aprire il file degli errori dei percorsi"
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "RILEVAMENTO DEI PERCORSI INTERROTTO"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Seguire il collegamento (o andare al collegamento o alla pagina) numero: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Selezionare il numero di opzione o di pagina: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "L'opzione numero %d è già quella attuale."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Si è già alla fine di questo elenco di opzioni."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Si è già all'inizio di questo elenco di opzioni."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Si è già alla pagina %d di questo elenco di opzioni."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Il numero di opzione immesso non è valido."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Errore nel codice HTML. Usare «-trace» per la diagnosi. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Inserire il nome del file in cui salvare"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Impossibile salvare i dati nel file. Eseguire WWW localmente"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Impossibile aprire il file temporaneo."
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Impossibile aprire il file di output. Richiesta annullata."
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "L'esecuzione è disabilitata."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Esecuzione disabilitata per questo file. Vedere il menù Opzioni (usare %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Le funzionalità di esecuzione non sono compilate in questa versione."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Questo file non può essere visualizzato su questo terminale."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Impossibile mostrare il file su questo terminale: D = scaricarlo, o C = annullare"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D = scaricare, o C = annullare"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Annullamento in corso."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Recupero del file in corso. ATTENDERE."
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Inserire un nome di file: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Modificare il nome di file precedente: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Modificare un nome di file precedente: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Inserire un nuovo nome di file: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Un nome di file non può iniziare con un punto."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Il file esiste già. Crearne una nuova versione?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Il file esiste già. Sovrascriverlo?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Impossibile scrivere il file."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "ERRORE: il comando di scaricamento è mal configurato."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Impossibile scaricare il file."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Lettura della directory in corso."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Generazione dell'elenco delle directory in corso."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Salvataggio in corso."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Impossibile modificare il file «%s»."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Impossibile accedere al documento."
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Impossibile accedere al file."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Impossibile accedere alla directory."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Impossibile caricare i dati."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Attualmente non è possibile (E) modificare file WWW remoti."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Questo campo non può essere (E) modificato con un editor esterno."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Regola non valida."
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Numero di operandi insufficiente."
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Nessuna autorizzazione per modificare questo file."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Titolo: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Oggetto: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Nome utente: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Password: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: nome utente e password obbligatori."
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: password obbligatoria."
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Eliminare tutte le informazioni di autorizzazione per questa sessione?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Informazioni di autorizzazione eliminate."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Autorizzazione fallita. Riprovare?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "Il supporto cgi è stato disabilitato."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Le funzionalità Lynxcgi non sono compilate in questa versione."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Spiacente, non è noto alcun metodo per convertire %s in %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Impossibile stabilire la connessione."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Impossibile creare la connessione"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Collegamento eseguibile rifiutato a causa di richiesta malformata."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Collegamento eseguibile rifiutato a causa del carattere «%c»."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Collegamento eseguibile rifiutato a causa di una stringa di percorso relativo («../»)."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Collegamento eseguibile rifiutato a causa della posizione o del percorso."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "L'accesso alla posta elettronica è disabilitato."
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Sono accessibili solo i file e i server del sistema locale."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "L'accesso Telnet è disabilitato."
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Le specifiche delle porte Telnet sono disabilitate."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "L'accesso agli articoli Usenet è disabilitato."
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "L'accesso Rlogin è disabilitato."
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "L'accesso FTP è disabilitato."
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Non esistono riferimenti da questo documento."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Ci sono solo collegamenti nascosti da questo documento."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Impossibile aprire il file dei comandi."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Invio dell'articolo annullato."
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Avvio in corso dell'editor prescelto per la modifica dell'articolo"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Inviare questo messaggio?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Accodare «%s»?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Invio del messaggio ai gruppi di discussione in corso."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** È presente posta non letta ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** È presente posta. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** È presente nuova posta. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Inserimento del file annullato."
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Memoria insufficiente per il file."
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Impossibile aprire il file per la lettura."
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Il file non esiste."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Il file non esiste. Inserire nuovamente o annullare:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Il file non è leggibile."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Il file non è leggibile. Inserire nuovamente o annullare:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Nulla da inserire, il file è vuoto."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Richiesta di salvataggio annullata."
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Richiesta di invio annullata."
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "È attualmente visualizzato il sorgente preanalizzato. Inviarlo tramite posta elettronica?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Attendere..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Invio del file in corso. Attendere..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "ERRORE: impossibile inviare il file"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Il file è lungo %d schermate. Stamparlo?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Richiesta di stampa annullata."
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Premere <Invio> per iniziare: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Premere <Invio> per terminare: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Il file è lungo %d pagine. Stamparlo?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Verificare che la stampante sia accesa e collegata. Premere <Invio> per avviare la stampa:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "ERRORE: impossibile allocare lo spazio per il file."
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Impossibile aprire il file temporaneo."
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Impossibile aprire il file delle opzioni di stampa"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Stampa del file in corso. Attendere..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Inserire un indirizzo di posta elettronica valido: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "ERRORE: la stampante è mal configurata."
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Mappa dell'immagine dalla risposta POST non disponibile."
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Errore di indirizzamento della richiesta di mappa immagine gestita dal client."
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "La mappa immagine gestita dal client non è accessibile."
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Nessuna mappa immagine gestita dal client disponibile."
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "La mappa immagine gestita dal client non è disponibile."
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "L'altezza dello schermo per il menù delle opzioni deve essere di almeno 24 righe."
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "L'altezza dello schermo per il menù delle opzioni deve essere di almeno 23 righe."
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "L'altezza dello schermo per il menù delle opzioni deve essere di almeno 22 righe."
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Questo tasto è attivo solo nella modalità «esperto»."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Tipo di contenuto: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Comando: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Comando sconosciuto o ambiguo."
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Versione "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " per primo"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", supponendo..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Diritti di accesso per "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Scegliere "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "maiuscola"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " della riga delle opzioni,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " per salvare,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " a "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " o "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " indice"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " per ritornare a Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Accetta le modifiche"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Azzera le modifiche"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Freccia sinistra per annullare le modifiche"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Salvare le opzioni nel disco"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Premere <Invio> per accettare i dati immessi."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Premere <Invio> per accettare i dati immessi. Eliminare i dati per recuperare i valori predefiniti."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Valore accettato."
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Valore accettato. NOTA: Lynx è configurato per XWINDOWS."
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Valore accettato. NOTA: Lynx NON è configurato per XWINDOWS!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Non è consentito cambiare l'editor."
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Impossibile impostare la variabile DISPLAY."
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Lo svuotamento della variabile DISPLAY è fallito."
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Non è consentito cambiare il file dei segnalibri."
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "Il terminale non supporta i colori."
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Il terminale «%s» non supporta i colori."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "L'accesso ai file nascosti è disabilitato."
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "La sequenza di caratteri «User-Agent» non contiene né «Lynx» né «L_y_n_x»"
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Usare \"L_y_n_x\" o \"Lynx\" in «User-Agent», altrimenti sembrerà un inganno intenzionale."
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "La modifica di «User-Agent» è disabilitata."
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Non si posseggono i permessi per cambiare questa impostazione."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Salvataggio delle opzioni in corso."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Opzioni salvate."
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Impossibile salvare le opzioni."
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " «r» per ritornare a Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " «>» per salvare, o «r» per ritornare a Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Premere <Invio> per accettare, qualsiasi altro tasto per cambiare il valore."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Errore durante la decompressione del file temporaneo."
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Schema di URL non supportato."
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Dato non supportato: URL. Per ora consultare la pagina di informazioni."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Reindirizzamento: raggiunto il limite di 10 URL."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "URL di reindirizzamento illecito ricevuto dal server."
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Il server chiede %d reindirizzamento del contenuto POST verso"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P = proseguire, G = ottenere, C = annullare "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P = proseguire, C = annullare "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Reindirizzamento del contenuto POST. P = proseguire, U = vedere URL, G = ottenere, C = annullare"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Reindirizzamento del contenuto POST. P = proseguire, U = vedere URL, C = annullare"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Documento da un modulo con contenuto POST. Inviare nuovamente?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Inviare nuovamente il contenuto POST a %s?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Elenco da documento con dati POST. Ricaricare %s?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Documento da azione POST, l'elemento HEAD può non essere interpretato. Proseguire?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "L'azione di invio del modulo è POST, l'elemento HEAD potrebbe non essere interpretato. Proseguire?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Proseguire senza nome utente e password?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Proseguire (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Impossibile usare il metodo POST con questo host."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "Il metodo POST non è supportato per questo URL. I dati POST vengono ignorati."
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Eliminazione dei dati POST in corso."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Il documento non sarà ricaricato."
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Posizione: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "«%s» non trovato."
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "File dei segnalibri predefinito"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Schermo troppo piccolo (min 8x35)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Scegliere la destinazione o ^G per annullare: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Scegliere il sottosegnalibro, = per il menù, ^G per annullare: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "L = riprodurre il collegamento in questo file di segnalibri, C = annullare? (l,c): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Supporto per i segnalibri multipli non disponibile."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Scelta dei segnalibri (schermata %d di %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Scelta dei segnalibri"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Modifica della descrizione e del percorso del segnalibro (%d di 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Modifica della descrizione e del percorso del segnalibro"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Lettera: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Usare la sintassi SHELL con un percorso di file a partire dalla propria directory iniziale."
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Usare un percorso del file relativo alla propria directory home."
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Troppi collegamenti nella pagina. Scorrere di due righe o di mezza pagina."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Non è disponibile alcun collegamento visitato in precedenza."
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Memoria esaurita. Esecuzione annullata."
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Memoria esaurita. Annullamento in corso."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Memoria insufficiente."
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Gestore di directory/file non disponibile"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "L'attributo HREF dell'elemento BASE non è un URL assoluto."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "L'indirizzo dell'URL non è assoluto."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "L'URL di aggiornamento non è assoluto."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Invio di un messaggio con corpo in corso a:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+" Invio di un commento in corso a:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" Con copia a:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Con copie a:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Usare Ctrl-G per annullare l'invio del messaggio\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Inserire il proprio nome, o lasciare vuoto per rimanere anonimi\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Inserire un indirizzo di posta elettronica o qualche altro mezzo\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " per essere contattati, se si desidera una risposta.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Inserire una riga con l'oggetto del messaggio.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Inserire un indirizzo di posta elettronica per una CC del messaggio\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (lasciare vuoto per non inviare copie).\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Rivedere il corpo del messaggio:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Premere <Invio> per proseguire: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Premere <Invio> per ripulire: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Usare Ctrl-U per cancellare il valore predefinito.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Immettere il messaggio qui di seguito."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Una volta terminato, premere <Invio> e mettere un singolo punto (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" su una riga, poi premere nuovamente <Invio>."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "cookie %s: %.*s=%.*s  Accettare? (Y = sì, N = no, A = sempre, V = mai)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Accettare dominio di cookie non valido = %s per «%s»?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Accettare percorso di cookie non valido = %s come prefisso di «%s»?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Cookie accettato."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Cookie rifiutato."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Il contenitore dei cookie è vuoto."
+
+#: LYMessages.c:705
+msgid "The Cache Jar is empty."
+msgstr "Il contenitore della cache è vuoto."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Attivare i collegamenti per eliminare i cookie o gli interi domini,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "o per cambiare l'impostazione di autorizzazione per un dominio."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Cookie mai accettati.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Cookie sempre accettati.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Cookie accettati su richiesta.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Cookie permanenti.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Nessun titolo.)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Nessun nome.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Nessun valore.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2408
+msgid "None"
+msgstr "Nessuno"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Fine della sessione.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Eliminare questo cookie?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Il cookie è stato eliminato."
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Eliminare questo dominio vuoto?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Il dominio è stato eliminato."
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D = eliminare cookie del dominio, imposta livello di permessi a A = sempre, P = chiedi, V = mai, C = annullare?"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D = eliminare dominio, imposta livello dei permessi a A = sempre, P = chiedi, V = mai, C = annullare?"
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Tutti i cookie nel dominio sono stati eliminati."
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "«A»: tutti i cookie del dominio «%s» verranno accettati."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "«V»: nessun cookie dal dominio «%s» verrà accettato."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "«P»: verrà sempre chiesta conferma prima di accettare cookie dal dominio «%s»."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Eliminare tutti i cookie in questo dominio?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Tutti i cookie nel contenitore sono stati eliminati."
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Porta 19 non autorizzata negli URL."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Porta 25 non autorizzata negli URL."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Porta %lu non autorizzata negli URL."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "Campo porta dell'URL non valido."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Annidamento massimo di elementi HTML superato."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Riferimento parziale errato. I punti iniziali vengono rimossi."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Errore nell'apertura del «Trace Log». Tracciamento non attivo."
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Trace Log di Lynx"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Non è stato iniziato alcun «Trace Log» per questa sessione."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Il numero massimo di file temporanei è stato raggiunto."
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Il valore del campo eccede la lunghezza del buffer. La coda viene tagliata."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Coda modificata combinata con il valore in testa al campo del modulo."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Directory"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Non è consentito leggere le directory."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "L'accesso selettivo non è abilitato per questa directory"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: scansione della directory fallita."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Questa directory non è leggibile."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Impossibile accedere al file richiesto."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Impossibile trovare una rappresentazione adatta per la trasmissione."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Impossibile aprire il file per la decompressione."
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "File:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Sottodirectory:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " directory"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Risali a "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "La directory attuale è: "
+
+#. HTFTP.c
+#: LYMessages.c:765
+msgid "Symbolic Link"
+msgstr "Collegamento simbolico"
+
+#. HTGopher.c
+#: LYMessages.c:768
+msgid "No response from server!"
+msgstr "Nessuna risposta dal server."
+
+#: LYMessages.c:769
+msgid "CSO index"
+msgstr "indice CSO"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Questo è un indice ricercabile proveniente da un database CSO.\n"
+
+#: LYMessages.c:771
+msgid "CSO Search Results"
+msgstr "Risultati della ricerca CSO"
+
+#: LYMessages.c:772
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Ricerca fallita su %s\n"
+
+#: LYMessages.c:773
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Premere il tasto «s» e immettere le parole chiave per la ricerca.\n"
+
+#: LYMessages.c:774
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Questo è un indice Gopher ricercabile.\n"
+
+#: LYMessages.c:775
+msgid "Gopher index"
+msgstr "Indice Gopher"
+
+#: LYMessages.c:776
+msgid "Gopher Menu"
+msgstr "Menù Gopher"
+
+#: LYMessages.c:777
+msgid " Search Results"
+msgstr " Risultati della ricerca"
+
+#: LYMessages.c:778
+msgid "Sending CSO/PH request."
+msgstr "Invio della richiesta CSO/PH in corso."
+
+#: LYMessages.c:779
+msgid "Sending Gopher request."
+msgstr "Invio della richiesta Gopher in corso."
+
+#: LYMessages.c:780
+msgid "CSO/PH request sent; waiting for response."
+msgstr "Richiesta CSO/PH inviata; in attesa di risposta."
+
+#: LYMessages.c:781
+msgid "Gopher request sent; waiting for response."
+msgstr "Richiesta Gopher inviata; in attesa di risposta."
+
+#: LYMessages.c:782
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Immettere le parole chiave per la ricerca.\n"
+
+#: LYMessages.c:783
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Le parole chiave immesse permetteranno di effettuare una ricerca su un"
+
+#: LYMessages.c:784
+msgid " person's name in the database.\n"
+msgstr " nome di persona nel database.\n"
+
+#. HTNews.c
+#: LYMessages.c:787
+msgid "Connection closed ???"
+msgstr "Connessione terminata?"
+
+#: LYMessages.c:788
+msgid "Cannot open temporary file for news POST."
+msgstr "Impossibile aprire un file temporaneo per inviare il contributo."
+
+#: LYMessages.c:789
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Questo client non supporta l'invio di articoli mediante SSL."
+
+#. HTStyle.c
+#: LYMessages.c:792
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Stile %d «%s» SGML:%s. Carattere %s %.1f punti.\n"
+
+#: LYMessages.c:794
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tAllinea=%d, %d tab. (%.0f prima, %.0f dopo)\n"
+
+#: LYMessages.c:795
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tTipo tab.=%d a %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:798
+msgid "Can't proceed without a username and password."
+msgstr "Impossibile proseguire senza nome utente e password."
+
+#: LYMessages.c:799
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Impossibile ritentare l'autorizzazione. Contattare l'amministratore del server."
+
+#: LYMessages.c:800
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Impossibile ritentare l'autorizzazione proxy. Contattare l'amministratore del server."
+
+#: LYMessages.c:801
+msgid "Retrying with proxy authorization information."
+msgstr "Nuovo tentativo con informazioni di autorizzazione del proxy in corso."
+
+#: LYMessages.c:802
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "Errore SSL: %s. Continuare?"
+
+#. HTWAIS.c
+#: LYMessages.c:805
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: messaggio troppo grande respinto."
+
+#: LYMessages.c:806
+msgid "Enter WAIS query: "
+msgstr "Inserire l'interrogazione WAIS:"
+
+#. Miscellaneous status
+#: LYMessages.c:809
+msgid "Retrying as HTTP0 request."
+msgstr "Nuovo tentativo come richiesta HTTP0 in corso."
+
+#: LYMessages.c:810
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "%d byte trasferiti"
+
+#: LYMessages.c:811
+msgid "Data transfer complete"
+msgstr "Trasferimento dei dati completato"
+
+#: LYMessages.c:812
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Errore durante l'elaborazione della riga %d di %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:815
+msgid "Address List Page"
+msgstr "Pagina con l'elenco degli indirizzi"
+
+#: LYMessages.c:816
+msgid "Bookmark file"
+msgstr "File dei segnalibri"
+
+#: LYMessages.c:817
+msgid "Configuration Definitions"
+msgstr "Definizioni della configurazione"
+
+#: LYMessages.c:818
+msgid "Cookie Jar"
+msgstr "Contenitore dei cookie"
+
+#: LYMessages.c:819
+msgid "Current Key Map"
+msgstr "Mappatura attuale della tastiera"
+
+#: LYMessages.c:820
+msgid "File Management Options"
+msgstr "Opzioni di gestione dei file"
+
+#: LYMessages.c:821
+msgid "Download Options"
+msgstr "Opzioni di scaricamento"
+
+#: LYMessages.c:822
+msgid "History Page"
+msgstr "Cronologia"
+
+#: LYMessages.c:823
+msgid "Cache Jar"
+msgstr "Contenitore della cache"
+
+#: LYMessages.c:824
+msgid "List Page"
+msgstr "Pagina di riferimenti"
+
+#: LYMessages.c:825
+msgid "Lynx.cfg Information"
+msgstr "Informazioni su Lynx.cfg"
+
+#: LYMessages.c:826
+msgid "Converted Mosaic Hotlist"
+msgstr "Segnalibri di Mosaic convertiti"
+
+#: LYMessages.c:827
+msgid "Options Menu"
+msgstr "Menù delle opzioni"
+
+#: LYMessages.c:828
+msgid "File Permission Options"
+msgstr "Opzioni di permessi sui file"
+
+#: LYMessages.c:829
+msgid "Printing Options"
+msgstr "Opzioni di stampa"
+
+#: LYMessages.c:830
+msgid "Information about the current document"
+msgstr "Informazioni sul documento attuale"
+
+#: LYMessages.c:831
+msgid "Your recent statusline messages"
+msgstr "Messaggi recenti nella riga di stato"
+
+#: LYMessages.c:832
+msgid "Upload Options"
+msgstr "Opzioni di caricamento"
+
+#: LYMessages.c:833
+msgid "Visited Links Page"
+msgstr "Pagina dei collegamenti visitati"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:836
+msgid "See also"
+msgstr "Vedere anche"
+
+#: LYMessages.c:837
+msgid "your"
+msgstr "il proprio"
+
+#: LYMessages.c:838
+msgid "for runtime options"
+msgstr "per le opzioni di esecuzione"
+
+#: LYMessages.c:839
+msgid "compile time options"
+msgstr "opzioni di compilazione"
+
+#: LYMessages.c:840
+msgid "color-style configuration"
+msgstr "configurazione dello stile dei colori"
+
+#: LYMessages.c:841
+msgid "latest release"
+msgstr "ultima versione"
+
+#: LYMessages.c:842
+msgid "pre-release version"
+msgstr "versione pre-rilascio"
+
+#: LYMessages.c:843
+msgid "development version"
+msgstr "versione di sviluppo"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:845
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"I dati seguenti sono stati desunti durante la configurazione automatica\n"
+"di questa copia di Lynx. Nel segnalare un difetto, si prega di\n"
+"includere una copia di questa pagina."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:849
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"I dati seguenti sono stati usati come opzioni di compilazione configurati\n"
+"automaticamente quando questa versione di Lynx è stata compilata."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:854
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr ""
+"  C = creare, D = scaricare, E = modificare, F = menù completo, M = modificare, R = eliminare, T = contrassegnare, U = caricare\n"
+
+#: LYMessages.c:855
+msgid "Failed to obtain status of current link!"
+msgstr "Impossibile ottenere lo stato del collegamento attuale."
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:858
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "URL speciale valido solo dal menù dei permessi sul file attuale."
+
+#: LYMessages.c:862
+msgid "External support is currently disabled."
+msgstr "Il supporto esterno è attualmente disabilitato."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:866
+msgid "Changing working-directory is currently disabled."
+msgstr "Il cambio della directory di lavoro è attualmente disabilitato."
+
+#: LYMessages.c:867
+msgid "Linewrap OFF!"
+msgstr "A capo automatico DISATTIVATO."
+
+#: LYMessages.c:868
+msgid "Linewrap ON!"
+msgstr "A capo automatico ATTIVATO."
+
+#: LYMessages.c:869
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Analisi delle tabelle annidate DISATTIVATA. Ricaricamento in corso."
+
+#: LYMessages.c:870
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Analisi delle tabelle annidate ATTIVATA. Ricaricamento in corso."
+
+#: LYMessages.c:871
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Lo spostamento è disabilitato mentre l'a capo automatico è in funzione"
+
+#: LYMessages.c:872
+msgid "Trace not supported"
+msgstr "Trace non supportato"
+
+#: LYMessages.c:793
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tRientri: primo=%.0f altri=%.0f, Altezza=%.1f Desc=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:629
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Nome utente per «%s» a %s «%s%s»:"
+
+#: WWW/Library/Implementation/HTAABrow.c:897
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Il client non sa come comporre l'informazione di autorizzazione del proxy per lo schema"
+
+#: WWW/Library/Implementation/HTAABrow.c:974
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Il client non sa come comporre le informazioni di autorizzazione per lo schema"
+
+#: WWW/Library/Implementation/HTAABrow.c:1082
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Intestazione non valida «%s%s%s%s%s»"
+
+#: WWW/Library/Implementation/HTAABrow.c:1184
+msgid "Proxy authorization required -- retrying"
+msgstr "Autorizzazione del proxy obbligatoria. Nuovo tentativo in corso"
+
+#: WWW/Library/Implementation/HTAABrow.c:1242
+msgid "Access without authorization denied -- retrying"
+msgstr "Accesso senza autorizzazione negato. Nuovo tentativo in corso"
+
+#: WWW/Library/Implementation/HTAccess.c:689
+msgid "Access forbidden by rule"
+msgstr "Accesso vietato da una regola"
+
+#: WWW/Library/Implementation/HTAccess.c:784
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Documento con contenuto POST non trovato nella cache. Inviare nuovamente?"
+
+#: WWW/Library/Implementation/HTAccess.c:939
+msgid "Loading failed, use a previous copy."
+msgstr "Caricamento fallito, usare una copia precedente."
+
+#: WWW/Library/Implementation/HTAccess.c:1048 src/GridText.c:8543
+msgid "Loading incomplete."
+msgstr "Caricamento incompleto."
+
+#: WWW/Library/Implementation/HTAccess.c:1079
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: socket o numero file restituito da routine di caricamento obsoleta.\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: errore interno del software. Segnalare a lynx-dev@nongnu.org.\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1082
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: stato di ritorno: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1088 src/LYMainLoop.c:7757
+msgid "Can't Access"
+msgstr "Impossibile accedere"
+
+#: WWW/Library/Implementation/HTAccess.c:1096
+msgid "Unable to access document."
+msgstr "Impossibile accedere al documento."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Inserire la password per l'utente %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Impossibile collegarsi all'host FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "chiudere il socket principale"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "socket per il socket principale"
+
+#: WWW/Library/Implementation/HTFTP.c:2976
+msgid "Receiving FTP directory."
+msgstr "Ricezione della directory FTP in corso."
+
+#: WWW/Library/Implementation/HTFTP.c:3112
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Trasferiti %d byte (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3467
+msgid "connect for data"
+msgstr "connessione per dati"
+
+#: WWW/Library/Implementation/HTFTP.c:4128
+msgid "Receiving FTP file."
+msgstr "Ricezione del file FTP in corso."
+
+#: WWW/Library/Implementation/HTFinger.c:276
+msgid "Could not set up finger connection."
+msgstr "Impossibile stabilire la connessione finger."
+
+#: WWW/Library/Implementation/HTFinger.c:323
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Impossibile caricare i dati (URL finger senza nome del sito)"
+
+#: WWW/Library/Implementation/HTFinger.c:329
+msgid "Invalid port number - will only use port 79!"
+msgstr "Numero di porta non valido. Sarà usata solo la porta 79."
+
+#: WWW/Library/Implementation/HTFinger.c:395
+msgid "Could not access finger host."
+msgstr "Impossibile accedere all'host finger."
+
+#: WWW/Library/Implementation/HTFinger.c:403
+msgid "No response from finger server."
+msgstr "Nessuna risposta dal server finger."
+
+#: WWW/Library/Implementation/HTNews.c:425
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Nome utente per l'host delle news «%s»:"
+
+#: WWW/Library/Implementation/HTNews.c:478
+msgid "Change username?"
+msgstr "Cambiare il nome utente?"
+
+#: WWW/Library/Implementation/HTNews.c:482
+msgid "Username:"
+msgstr "Nome utente:"
+
+#: WWW/Library/Implementation/HTNews.c:507
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Password per l'host delle news «%s»:"
+
+#: WWW/Library/Implementation/HTNews.c:590
+msgid "Change password?"
+msgstr "Cambiare la password?"
+
+#: WWW/Library/Implementation/HTNews.c:1710
+#, c-format
+msgid "No matches for: %s"
+msgstr "Nessuna corrispondenza per: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1760
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Nessun articolo in questo gruppo.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1772
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Nessun articolo in questo intervallo.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1785
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s, articoli %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1808
+msgid "Earlier articles"
+msgstr "Articoli precedenti"
+
+#: WWW/Library/Implementation/HTNews.c:1821
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Ci sono attualmente circa %d articoli disponibili in %s, ID come segue:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1883
+msgid "All available articles in "
+msgstr "Tutti gli articoli disponibili in "
+
+#: WWW/Library/Implementation/HTNews.c:2097
+msgid "Later articles"
+msgstr "Articoli successivi"
+
+#: WWW/Library/Implementation/HTNews.c:2120
+msgid "Post to "
+msgstr "Invia a "
+
+#: WWW/Library/Implementation/HTNews.c:2341
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Questo client non è predisposto per supportare gli URL SNEWS."
+
+#: WWW/Library/Implementation/HTNews.c:2548
+msgid "No target for raw text!"
+msgstr "Nessuna destinazione per il testo grezzo."
+
+#: WWW/Library/Implementation/HTNews.c:2578
+msgid "Connecting to NewsHost ..."
+msgstr "Connessione all'host delle news in corso."
+
+#: WWW/Library/Implementation/HTNews.c:2630
+#, c-format
+msgid "Could not access %s."
+msgstr "Impossibile accedere a %s."
+
+#: WWW/Library/Implementation/HTNews.c:2736
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Impossibile leggere le informazioni delle news. L'host delle news %.20s ha risposto: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2740
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Impossibile leggere le informazioni delle news, risposta vuota dall'host %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2944
+msgid "Reading list of available newsgroups."
+msgstr "Lettura dell'elenco dei gruppi di discussione disponibili in corso."
+
+#: WWW/Library/Implementation/HTNews.c:2965
+msgid "Reading list of articles in newsgroup."
+msgstr "Lettura dell'elenco degli articoli nel gruppo di discussione in corso."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2971
+msgid "Reading news article."
+msgstr "Lettura del contributo news."
+
+#: WWW/Library/Implementation/HTNews.c:3001
+msgid "Sorry, could not load requested news."
+msgstr "Spiacente, impossibile caricare l'articolo richiesto."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "L'indirizzo ha un numero di porta non valido."
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "La lunghezza dell'indirizzo non sembra essere valida"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Impossibile individuare l'host remoto %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Nome di host %s non valido"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Creazione della connessione %s a %s in corso"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "socket fallito."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "socket fallito: famiglia %d indirizzo %s porta %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Impossibile stabilire una connessione non bloccante."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "Connessione fallita (troppi tentativi)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Impossibile ripristinare il socket bloccante."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+msgid "Socket read failed (too many tries)."
+msgstr "Lettura del socket fallita (troppi tentativi)."
+
+#: WWW/Library/Implementation/HTTP.c:85
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "Richiamata SSL: %s, preverify_ok=%d, ssl_okay=%d"
+
+#: WWW/Library/Implementation/HTTP.c:390
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "L'indirizzo contiene un nome utente: %s"
+
+#: WWW/Library/Implementation/HTTP.c:444
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Certificato emesso da: %s"
+
+#: WWW/Library/Implementation/HTTP.c:627
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Questo client non supporta gli URL HTTPS."
+
+#: WWW/Library/Implementation/HTTP.c:652
+msgid "Unable to connect to remote host."
+msgstr "Impossibile stabilire la connessione con l'host remoto."
+
+#: WWW/Library/Implementation/HTTP.c:684
+msgid "Retrying connection without TLS."
+msgstr "Nuovo tentativo di connessione senza TLS."
+
+#: WWW/Library/Implementation/HTTP.c:729
+msgid "no issuer was found"
+msgstr "non è stato trovato alcun emittente"
+
+#: WWW/Library/Implementation/HTTP.c:731
+msgid "issuer is not a CA"
+msgstr "l'emittente non è un'autorità di certificazione"
+
+#: WWW/Library/Implementation/HTTP.c:733
+msgid "the certificate has no known issuer"
+msgstr "l'emittente del certificato è sconosciuto"
+
+#: WWW/Library/Implementation/HTTP.c:735
+msgid "the certificate has been revoked"
+msgstr "il certificato è stato revocato"
+
+#: WWW/Library/Implementation/HTTP.c:737
+msgid "the certificate is not trusted"
+msgstr "il certificato non è fidato"
+
+#: WWW/Library/Implementation/HTTP.c:810
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Connessione a %s verificata (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:858 WWW/Library/Implementation/HTTP.c:900
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Connessione a %s verificata (ogg=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:930
+msgid "Can't find common name in certificate"
+msgstr "Impossibile trovare un nome comune nel certificato"
+
+#: WWW/Library/Implementation/HTTP.c:933
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "Errore di SSL: host(%s)!=cert(%s). Continuare?"
+
+#: WWW/Library/Implementation/HTTP.c:946
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "Connessione NON VERIFICATA a %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:955
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Connessione HTTP sicura %d bit %s (%s)"
+
+#: WWW/Library/Implementation/HTTP.c:1422
+msgid "Sending HTTP request."
+msgstr "Invio della richiesta HTTP in corso."
+
+#: WWW/Library/Implementation/HTTP.c:1461
+msgid "Unexpected network write error; connection aborted."
+msgstr "Errore inatteso di scrittura in rete; connessione annullata."
+
+#: WWW/Library/Implementation/HTTP.c:1467
+msgid "HTTP request sent; waiting for response."
+msgstr "Richiesta HTTP inviata; in attesa di risposta."
+
+#: WWW/Library/Implementation/HTTP.c:1538
+msgid "Unexpected network read error; connection aborted."
+msgstr "Errore inatteso di lettura in rete; connessione annullata."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr "Ricevuta un'informazione di stato inattesa."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr "Richiesta soddisfatta. Ripristino del contenuto."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1883
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Ricevuto uno stato non modificato 304 inatteso."
+
+#: WWW/Library/Implementation/HTTP.c:1946
+msgid "Redirection of POST content requires user approval."
+msgstr "Il reindirizzamento del contenuto POST richiede il consenso dell'utente."
+
+#: WWW/Library/Implementation/HTTP.c:1961
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Contenuto POST. Il reindirizzamento permanente viene trattato come temporaneo.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2003
+msgid "Retrying with access authorization information."
+msgstr "Nuovo tentativo con le informazioni di autorizzazione d'accesso."
+
+#: WWW/Library/Implementation/HTTP.c:2015
+msgid "Show the 401 message body?"
+msgstr "Visualizzare il corpo del messaggio 401?"
+
+#: WWW/Library/Implementation/HTTP.c:2058
+msgid "Show the 407 message body?"
+msgstr "Visualizzare il corpo del messaggio 407?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2158
+msgid "Unknown status reply from server!"
+msgstr "Risposta di stato sconosciuto ricevuta dal server."
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "sessione remota %s:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Impossibile collegarsi al server WAIS."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Impossibile aprire una connessione WAIS in lettura."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Il codice diagnostico è "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Indice "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " contiene i seguenti %d elementi (%s) relativi a \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "La prima cifra dopo ciascuna voce è il suo punteggio relativo, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "la seconda è il numero di righe nella voce."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (nome di file non valido)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(ID del documento non valido)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Registro d'intestazione corto, impossibile visualizzare)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Registro d'intestazione lungo, impossibile visualizzare\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Voce di testo\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Voce di riga d'intestazione, impossibile visualizzare\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Voce di codice, impossibile visualizzare\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Errore di sintassi nell'URL WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (Indice WAIS)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "Indice WAIS: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Questo è un collegamento per cercare l'"
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " indice WAIS.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Inserire il comando di ricerca (s), poi specificare le parole da cercare.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (in "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "Ricerca WAIS di \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" in: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: richiesta troppo grande."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Ricerca nel database WAIS in corso."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Ricerca interrotta."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Impossibile convertire il formato del documento WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: richiesta troppo lunga."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Recupero del documento WAIS in corso."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Non è stato restituito alcun testo.\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:299
+msgid " NOT GIVEN in source file; "
+msgstr " NON DATO nel file di origine; "
+
+#: WWW/Library/Implementation/HTWSRC.c:322
+msgid " WAIS source file"
+msgstr " file di origine WAIS"
+
+#: WWW/Library/Implementation/HTWSRC.c:329
+msgid " description"
+msgstr " descrizione"
+
+#: WWW/Library/Implementation/HTWSRC.c:339
+msgid "Access links"
+msgstr "Collegamenti di accesso"
+
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid "Direct access"
+msgstr "Accesso diretto"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:363
+msgid " (or via proxy server, if defined)"
+msgstr " (o tramite un server proxy, se definito)"
+
+#: WWW/Library/Implementation/HTWSRC.c:378
+msgid "Maintainer"
+msgstr "Curatore"
+
+#: WWW/Library/Implementation/HTWSRC.c:386
+msgid "Host"
+msgstr "Host"
+
+#: src/GridText.c:711
+msgid "Memory exhausted, display interrupted!"
+msgstr "Memoria esaurita, visualizzazione interrotta."
+
+#: src/GridText.c:716
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Memoria esaurita, il trasferimento sarà interrotto."
+
+#: src/GridText.c:3688
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** MEMORIA ESAURITA ***"
+
+#: src/GridText.c:6087 src/GridText.c:6094 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "campo o collegamento sconosciuto"
+
+#: src/GridText.c:6103
+msgid "text entry field"
+msgstr "campo di immissione testo"
+
+#: src/GridText.c:6106
+msgid "password entry field"
+msgstr "campo di immissione password"
+
+#: src/GridText.c:6109
+msgid "checkbox"
+msgstr "casella di scelta"
+
+#: src/GridText.c:6112
+msgid "radio button"
+msgstr "pulsante radio"
+
+#: src/GridText.c:6115
+msgid "submit button"
+msgstr "pulsante di invio"
+
+#: src/GridText.c:6118
+msgid "reset button"
+msgstr "pulsante di azzeramento"
+
+#: src/GridText.c:6121
+msgid "popup menu"
+msgstr "menù a comparsa"
+
+#: src/GridText.c:6124
+msgid "hidden form field"
+msgstr "campo nascosto di modulo"
+
+#: src/GridText.c:6127
+msgid "text entry area"
+msgstr "area di immissione testo"
+
+#: src/GridText.c:6130
+msgid "range entry field"
+msgstr "campo di immissione intervallo"
+
+#: src/GridText.c:6133
+msgid "file entry field"
+msgstr "campo di immissione file"
+
+#: src/GridText.c:6136
+msgid "text-submit field"
+msgstr "campo di invio testo"
+
+#: src/GridText.c:6139
+msgid "image-submit button"
+msgstr "pulsante di invio immagine"
+
+#: src/GridText.c:6142
+msgid "keygen field"
+msgstr "campo «keygen»"
+
+#: src/GridText.c:6145
+msgid "unknown form field"
+msgstr "campo di modulo sconosciuto"
+
+#: src/GridText.c:10275
+msgid "Can't open file for uploading"
+msgstr "Impossibile aprire il file per il caricamento"
+
+#: src/GridText.c:11434
+#, c-format
+msgid "Submitting %s"
+msgstr "Invio di %s in corso"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12487
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Interruzione: struttura di TextAnchor danneggiata. Si suggerisce di abbandonare."
+
+#. don't show previous state
+#: src/GridText.c:12624
+msgid "Wrap lines to fit displayed area?"
+msgstr "Spezzare le righe per adattarle all'area di visualizzazione?"
+
+#: src/GridText.c:12676
+msgid "Very long lines have been wrapped!"
+msgstr "Le righe molto lunghe sono state spezzate."
+
+#: src/GridText.c:13181
+msgid "Very long lines have been truncated!"
+msgstr "Le righe molto lunghe sono state troncate."
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:364 src/LYShowInfo.c:368
+msgid "bytes"
+msgstr "byte"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "Letti %s di dati"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Letti %s su %s di dati"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/sec"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (bloccato per %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", mancano %s"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Premere «z» per annullare)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "sì"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "no"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr "S/N/sEmpre/Mai"
+
+#: src/HTML.c:5899
+msgid "Description:"
+msgstr "Descrizione:"
+
+#: src/HTML.c:5904
+msgid "(none)"
+msgstr "(nessuno)"
+
+#: src/HTML.c:5908
+msgid "Filepath:"
+msgstr "Percorso del file:"
+
+#: src/HTML.c:5914
+msgid "(unknown)"
+msgstr "(sconosciuto)"
+
+#: src/HTML.c:7340
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Il documento ha solo collegamenti nascosti. Usare il comando «l» per l'elenco."
+
+#: src/HTML.c:7839
+msgid "Source cache error - disk full?"
+msgstr "Errore nella cache di origine. Controllare se il disco è pieno."
+
+#: src/HTML.c:7852
+msgid "Source cache error - not enough memory!"
+msgstr "Errore nella cache di origine. Memoria insufficiente."
+
+#: src/LYBookmark.c:167
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Questo file è una rappresentazione HTML del file segnalibri di X Mosaic.\n"
+"     Si possono eliminare i collegamenti scaduti o non validi con il consueto\n"
+"     comando di cancellazione dei segnalibri, normalmente il tasto «R», che però\n"
+"     potrebbe essere stato riconfigurato dall'utente o dall'amministratore del sistema."
+
+#: src/LYBookmark.c:374
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Si possono cancellare le voci con il tasto «R»<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:377
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Si possono cancellare le voci con il tasto di cancellazione dei segnalibri,\n"
+"     di solito il tasto «R», ma i tasti possono essere stati riconfigurati\n"
+"     dall'utente o dall'amministratore del sistema."
+
+#: src/LYBookmark.c:381
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Il file può anche essere modificato con un normale editor di testi per\n"
+"     eliminare le voci scadute o non valide o per modificarne l'ordine."
+
+#: src/LYBookmark.c:384
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Nota: se si elabora manualmente questo file,\n"
+"      non si deve cambiare il formato all'interno delle righe\n"
+"      e nemmeno aggiungere altro codice HTML.\n"
+"      Assicurarsi che ogni collegamento del segnalibro venga salvato su una singola riga."
+
+#: src/LYBookmark.c:680
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Il file potrebbe essere recuperabile da %s durante questa sessione."
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Eseguire «%s»?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Impossibile accedere allo script CGI"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Buon consiglio"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Un ottimo server http per VMS è disponibile tramite"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "questo collegamento"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Esso offre il supporto per gli script CGI al miglior livello attuale.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Uscita tramite interrupt in corso:"
+
+#: src/LYCookie.c:2477
+msgid "(from a previous session)"
+msgstr "(da una sessione precedente)"
+
+#: src/LYCookie.c:2538
+msgid "Maximum Gobble Date:"
+msgstr "Data massima di scadenza:"
+
+#: src/LYCookie.c:2577
+msgid "Internal"
+msgstr "Interno"
+
+#: src/LYCookie.c:2578
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "errore cookie_domain_flag_set: programma interrotto"
+
+#: src/LYCurses.c:1105
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Inizializzazione del terminale fallita, probabilmente a causa di un tipo di terminale sconosciuto."
+
+#: src/LYCurses.c:1574
+msgid "Terminal ="
+msgstr "Terminale ="
+
+#: src/LYCurses.c:1578
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Con questo programma si deve usare un terminale vt100, 200, ecc."
+
+#: src/LYCurses.c:1627
+msgid "Your Terminal type is unknown!"
+msgstr "Il tipo di terminale è sconosciuto."
+
+#: src/LYCurses.c:1628
+msgid "Enter a terminal type:"
+msgstr "Inserire un tipo di terminale:"
+
+#: src/LYCurses.c:1642
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "IL TIPO DI TERMINALE È IMPOSTATO A"
+
+#: src/LYCurses.c:2163
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Un errore irreversibile si è verificato in %s Ver. %s\n"
+
+#: src/LYCurses.c:2166
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Avvisare l'amministratore del sistema per segnalare un difetto e, se il\n"
+"difetto è confermato, segnalarlo alla lista lynx-dev.\n"
+"La segnalazione dovrebbe contenere una descrizione concisa del comando e/o dell'URL\n"
+"che provoca il problema, il nome del sistema operativo con il numero di versione,\n"
+"l'implementazione TCP/IP, il TRACEBACK se è possibile catturarlo, e ogni\n"
+"altra informazione significativa.\n"
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Errore durante l'avvio dell'editor, %s"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Editor terminato da segnale"
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "L'editor ha restituito un codice di errore %s"
+
+#: src/LYDownload.c:506
+msgid "Downloaded link:"
+msgstr "Collegamento scaricato:"
+
+#: src/LYDownload.c:511
+msgid "Suggested file name:"
+msgstr "Nome di file proposto:"
+
+#: src/LYDownload.c:516
+msgid "Standard download options:"
+msgstr "Opzioni normali di scaricamento:"
+
+#: src/LYDownload.c:517
+msgid "Download options:"
+msgstr "Opzioni di scaricamento:"
+
+#: src/LYDownload.c:533
+msgid "Save to disk"
+msgstr "Salva su disco"
+
+#: src/LYDownload.c:547
+msgid "View temporary file"
+msgstr "Visualizza il file temporaneo"
+
+#: src/LYDownload.c:554
+msgid "Save to disk disabled."
+msgstr "Salvataggio su disco disabilitato."
+
+#: src/LYDownload.c:558 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Aggiunte locali:"
+
+#: src/LYDownload.c:569 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Nessun nome dato"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Scelte effettuate:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(nessun indirizzo)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (interno)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (era interno)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (dalla cronologia)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Elementi visitati (sono esclusi file POST, segnalibri, voci di menù ed elenchi):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Ancora nessun messaggio)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Individuato puntatore non valido."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "Sequenza:"
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Puntatore:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Nome del file:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Numero di righe:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Individuata perdita di memoria."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Contiene:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Dimensione in byte:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "reallocato:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Perdita totale di memoria in questa esecuzione:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr "Allocazione massima"
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "Byte allocati"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr "«malloc» totali"
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr "«free» totali"
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Riferimenti in "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "questo documento:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Collegamenti visibili:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Collegamenti nascosti:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Riferimenti"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Collegamenti visibili"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Impossibile rilevare lo stato di «%s»."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "L'elemento selezionato non è un file né una directory. Richiesta ignorata."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Operazione %s impossibile a causa di un errore di sistema."
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Probabile insuccesso di %s a causa di un errore di sistema."
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "eliminare %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr "touch %s"
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "sposta %s in %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Una directory con questo nome esiste già. Richiesta ignorata."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Un file con questo nome esiste già. Richiesta ignorata."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Il nome indicato è già usato. Richiesta ignorata."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "La destinazione ha un proprietario diverso. Richiesta negata."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "La destinazione non è una directory valida. Richiesta negata."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Eliminare tutte le directory e i file contrassegnati?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Inserire la nuova posizione per le voci contrassegnate: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Percorso troppo lungo"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Origine e destinazione sono identici. Richiesta ignorata."
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Inserire il nuovo nome per la directory: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Inserire il nuovo nome per il file: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Trovato carattere illecito (separatore di percorso). Richiesta ignorata."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Immettere la nuova posizione per la directory: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Immettere la nuova posizione per il file: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Errore inatteso: impossibile trovare il separatore di percorso finale"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Origine e destinazione sono identici. Richiesta ignorata."
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Modificare il nome (n), la posizione (l) o i diritti di accesso (p) (n, l o p): "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Modificare il nome (n) o la posizione (l) (n o l): "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Questa funzionalità non è ancora implementata."
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Inserire il nome del file da creare: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Trovato reindirizzamento illecito «//». Richiesta ignorata."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Inserire il nome della nuova directory: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Creare un file (f) o una directory (d) (f o d): "
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Eliminare la directory «%s»?"
+
+#: src/LYLocal.c:1169
+msgid "Remove directory?"
+msgstr "Eliminare la directory?"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Eliminare il file «%s»?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Eliminare il file?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Eliminare il collegamento simbolico «%s»?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Eliminare il collegamento simbolico?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Spiacente, non è ancora possibile gestire i diritti di accesso per i file non UNIX."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Impossibile aprire il file delle opzioni di permesso."
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Specificare di seguito i diritti di accesso:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:265
+msgid "Owner:"
+msgstr "Proprietario:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Gruppo"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Altri:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "modulo da autorizzare"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Formato del modo non valido."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Formato di sintassi non valido."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Attenzione: il file UUDecoded sarà creato nella directory da cui è stato avviato Lynx."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "Puntatore a URL NULL"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Esecuzione in corso di %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Esecuzione di un comando di sistema in corso. Potrebbe volerci un po' di tempo."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Directory attuale:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Selezione attuale:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Nulla attualmente selezionato."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "voce contrassegnata:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "voci contrassegnate:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Nome di file illecito. Richiesta ignorata."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Manca il diritto per l'installazione nella directory selezionata."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "La voce selezionata non è una directory. Richiesta ignorata."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Solo un attimo..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr "Errore nella preparazione degli argomenti di installazione"
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Origine e destinazione sono identici: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Si è già nella directory destinazione: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Installazione terminata"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "L'URL temporanea o l'elenco temporaneo sarebbero troppo lunghi."
+
+#: src/LYMail.c:523
+msgid "Sending"
+msgstr "Invio in corso"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Il collegamento %s :?: %s \n"
+
+#: src/LYMail.c:1011
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "chiamato «%s»\n"
+
+#: src/LYMail.c:1012
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "nel file «%s» chiamato «%s»\n"
+
+#: src/LYMail.c:1013
+msgid "was requested but was not available."
+msgstr "è stato richiesto ma non è disponibile."
+
+#: src/LYMail.c:1014
+msgid "Thought you might want to know."
+msgstr "Probabilmente è utile saperlo."
+
+#: src/LYMail.c:1016
+msgid "This message was automatically generated by"
+msgstr "Questo messaggio è stato generato automaticamente da"
+
+#: src/LYMail.c:1731
+msgid "No system mailer configured"
+msgstr "Non è stato configurato alcun programma di sistema per l'invio della posta elettronica"
+
+#: src/LYMain.c:1002
+msgid "No Winsock found, sorry."
+msgstr "Nessun Winsock trovato, spiacente."
+
+#: src/LYMain.c:1199
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "SI DEVE definire un'area TMP o TEMP valida."
+
+#: src/LYMain.c:1252 src/LYMainLoop.c:5051
+msgid "No such directory"
+msgstr "Directory inesistente"
+
+#: src/LYMain.c:1437
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Il file di configurazione «%s» non è disponibile.\n"
+"\n"
+
+#: src/LYMain.c:1447
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Set di caratteri di Lynx non dichiarati.\n"
+"\n"
+
+#: src/LYMain.c:1476
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Edit map di Lynx non dichiarata.\n"
+"\n"
+
+#: src/LYMain.c:1552
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Il file di Lynx «%s» non è disponibile.\n"
+"\n"
+
+#: src/LYMain.c:1627
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "%d caratteri ignorati dallo standard input.\n"
+
+#: src/LYMain.c:1629
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Usare «-stdin» o «-» per indicare come gestire l'input del pipe.\n"
+
+#: src/LYMain.c:1777
+msgid "Warning:"
+msgstr "Attenzione:"
+
+#: src/LYMain.c:2342
+msgid "persistent cookies state will be changed in next session only."
+msgstr "lo stato dei cookie permanenti sarà modificato solo alla prossima sessione."
+
+#: src/LYMain.c:2578 src/LYMain.c:2623
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: il set di caratteri %s sconosciuto viene ignorato.\n"
+
+#: src/LYMain.c:3142
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s versione %s (%s)"
+
+#: src/LYMain.c:3180
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Compilato il %s %s %s\n"
+
+#: src/LYMain.c:3202
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "Il copyright appartiene al Lynx Developers Group.,"
+
+#: src/LYMain.c:3203
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "all'Università del Kansas, al CERN e ad altri collaboratori."
+
+#: src/LYMain.c:3204
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Distribuito sotto la GNU General Public License (GPL) (versione 2)."
+
+#: src/LYMain.c:3205
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Vedere http://lynx.isc.org/ e l'aiuto in linea per ulteriori informazioni."
+
+#: src/LYMain.c:4024
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "USO: %s [opzioni] [file]\n"
+
+#: src/LYMain.c:4025
+#, c-format
+msgid "Options are:\n"
+msgstr "Le opzioni sono:\n"
+
+#: src/LYMain.c:4326
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: opzione non valida: %s\n"
+
+#: src/LYMainLoop.c:571
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Errore interno: collegamento al mouse %d non valido."
+
+#: src/LYMainLoop.c:691 src/LYMainLoop.c:5073
+msgid "A URL specified by the user"
+msgstr "Un URL specificato dall'utente"
+
+#: src/LYMainLoop.c:1150
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "«Enctype multipart/form-data» non ancora supportato. Impossibile inviare."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3082
+msgid "Help Screen"
+msgstr "Schermata di aiuto"
+
+#: src/LYMainLoop.c:3203
+msgid "System Index"
+msgstr "Indice di sistema"
+
+#: src/LYMainLoop.c:3562 src/LYMainLoop.c:5297
+msgid "Entry into main screen"
+msgstr "Ingresso nella schermata principale"
+
+#: src/LYMainLoop.c:3820
+msgid "No next document present"
+msgstr "Non è presente alcun documento successivo"
+
+#: src/LYMainLoop.c:4116
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "il set di caratteri per questo documento è specificato in modo esplicito, spiacente..."
+
+#: src/LYMainLoop.c:5029
+msgid "cd to:"
+msgstr "cd in:"
+
+#: src/LYMainLoop.c:5054
+msgid "A component of path is not a directory"
+msgstr "Un elemento del percorso non è una directory"
+
+#: src/LYMainLoop.c:5057
+msgid "failed to change directory"
+msgstr "cambiamento di directory fallito"
+
+#: src/LYMainLoop.c:6229
+msgid "Reparsing document under current settings..."
+msgstr "Rianalisi del documento con le impostazioni attuali in corso."
+
+#: src/LYMainLoop.c:6521
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Errore fatale: impossibile aprire il file di output %s\n"
+
+#: src/LYMainLoop.c:6858
+msgid "TABLE center enable."
+msgstr "TABELLA abilita la centratura."
+
+#: src/LYMainLoop.c:6861
+msgid "TABLE center disable."
+msgstr "TABELLA disabilita la centratura."
+
+#: src/LYMainLoop.c:6938
+msgid "Current URL is empty."
+msgstr "L'URL attuale è vuoto."
+
+#: src/LYMainLoop.c:6940 src/LYUtils.c:1880
+msgid "Copy to clipboard failed."
+msgstr "Copia negli appunti di sistema fallita."
+
+#: src/LYMainLoop.c:6942
+msgid "Document URL put to clipboard."
+msgstr "URL del documento copiato negli appunti di sistema."
+
+#: src/LYMainLoop.c:6944
+msgid "Link URL put to clipboard."
+msgstr "URL del collegamento copiato negli appunti di sistema."
+
+#: src/LYMainLoop.c:6971
+msgid "No URL in the clipboard."
+msgstr "Nessun URL negli appunti di sistema."
+
+#: src/LYMainLoop.c:7642 src/LYMainLoop.c:7812
+msgid "-index-"
+msgstr "-indice-"
+
+#: src/LYMainLoop.c:7752
+msgid "lynx: Can't access startfile"
+msgstr "lynx: impossibile accedere al file di avvio"
+
+#: src/LYMainLoop.c:7764
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: il file di avvio non è stato trovato o non ha un formato text/html o text/plain"
+
+#: src/LYMainLoop.c:7765
+msgid "      Exiting..."
+msgstr "      Uscita in corso."
+
+#: src/LYMainLoop.c:7806
+msgid "-more-"
+msgstr "-seguente-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "L'articolo sarà inviato a: "
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Immettere il proprio indirizzo di posta elettronica per l'intestazione «From:»\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Immettere o modificare l'intestazione «Subject:»\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Immettere o modificare l'intestazione «Organization:»\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Immettere il messaggio qui di seguito:"
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Il messaggio non ha testo originale."
+
+#: src/LYOptions.c:769
+msgid "review/edit B)ookmarks files"
+msgstr "B) revisione o modifica dei file dei segnalibri"
+
+#: src/LYOptions.c:771
+msgid "B)ookmark file: "
+msgstr "B) File dei segnalibri: "
+
+#: src/LYOptions.c:2132 src/LYOptions.c:2139
+msgid "ON"
+msgstr "B) File dei segnalibri: "
+
+#. verbose_img variable
+#: src/LYOptions.c:2133 src/LYOptions.c:2138 src/LYOptions.c:2290 src/LYOptions.c:2301
+msgid "OFF"
+msgstr "DISABILITATO"
+
+#: src/LYOptions.c:2134
+msgid "NEVER"
+msgstr "MAI"
+
+#: src/LYOptions.c:2135
+msgid "ALWAYS"
+msgstr "SEMPRE"
+
+#: src/LYOptions.c:2151 src/LYOptions.c:2282
+msgid "ignore"
+msgstr "ignora"
+
+#: src/LYOptions.c:2152
+msgid "ask user"
+msgstr "chiedi conferma"
+
+#: src/LYOptions.c:2153
+msgid "accept all"
+msgstr "accetta tutto"
+
+#: src/LYOptions.c:2165
+msgid "ALWAYS OFF"
+msgstr "SEMPRE DISABILITATO"
+
+#: src/LYOptions.c:2166
+msgid "FOR LOCAL FILES ONLY"
+msgstr "SOLO PER FILE LOCALI"
+
+#: src/LYOptions.c:2168
+msgid "ALWAYS ON"
+msgstr "SEMPRE ABILITATO"
+
+#: src/LYOptions.c:2180
+msgid "Numbers act as arrows"
+msgstr "I tasti numerici fungono da frecce"
+
+#: src/LYOptions.c:2182
+msgid "Links are numbered"
+msgstr "I collegamenti sono numerati"
+
+#: src/LYOptions.c:2185
+msgid "Links and form fields are numbered"
+msgstr "I collegamenti e i campi dei moduli sono numerati"
+
+#: src/LYOptions.c:2188
+msgid "Form fields are numbered"
+msgstr "I campi dei moduli sono numerati"
+
+#: src/LYOptions.c:2202
+msgid "Case insensitive"
+msgstr "Non distinguere fra maiuscolo e minuscolo"
+
+#: src/LYOptions.c:2203
+msgid "Case sensitive"
+msgstr "Distingui fra maiuscolo e minuscolo"
+
+#: src/LYOptions.c:2227
+msgid "prompt normally"
+msgstr "normalmente chiedi"
+
+#: src/LYOptions.c:2228
+msgid "force yes-response"
+msgstr "forza la risposta positiva"
+
+#: src/LYOptions.c:2229
+msgid "force no-response"
+msgstr "forza la risposta negativa"
+
+#: src/LYOptions.c:2247
+msgid "Novice"
+msgstr "Novizio"
+
+#: src/LYOptions.c:2248
+msgid "Intermediate"
+msgstr "Medio"
+
+#: src/LYOptions.c:2249
+msgid "Advanced"
+msgstr "Esperto"
+
+#: src/LYOptions.c:2258
+msgid "By First Visit"
+msgstr "Alla prima visita"
+
+#: src/LYOptions.c:2260
+msgid "By First Visit Reversed"
+msgstr "Alla prima visita invertita"
+
+#: src/LYOptions.c:2261
+msgid "As Visit Tree"
+msgstr "Come albero delle visite"
+
+#: src/LYOptions.c:2262
+msgid "By Last Visit"
+msgstr "All'ultima visita"
+
+#: src/LYOptions.c:2264
+msgid "By Last Visit Reversed"
+msgstr "All'ultima visita invertita"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2275
+msgid "relaxed (TagSoup mode)"
+msgstr "meno rigida (modalità «TagSoup»)"
+
+#: src/LYOptions.c:2276
+msgid "strict (SortaSGML mode)"
+msgstr "rigida (modalità «SortaSGML»)"
+
+#: src/LYOptions.c:2283
+msgid "as labels"
+msgstr "come testi"
+
+#: src/LYOptions.c:2284
+msgid "as links"
+msgstr "come collegamenti"
+
+#: src/LYOptions.c:2291
+msgid "show filename"
+msgstr "mostra il nome del file"
+
+#: src/LYOptions.c:2302
+msgid "STANDARD"
+msgstr "NORMALE"
+
+#: src/LYOptions.c:2303
+msgid "ADVANCED"
+msgstr "AVANZATO"
+
+#: src/LYOptions.c:2335
+msgid "Directories first"
+msgstr "Prima le directory"
+
+#: src/LYOptions.c:2336
+msgid "Files first"
+msgstr "Prima i file"
+
+#: src/LYOptions.c:2337
+msgid "Mixed style"
+msgstr "Stile misto"
+
+#: src/LYOptions.c:2345 src/LYOptions.c:2365
+msgid "By Name"
+msgstr "Per nome"
+
+#: src/LYOptions.c:2346 src/LYOptions.c:2366
+msgid "By Type"
+msgstr "Per tipo"
+
+#: src/LYOptions.c:2347 src/LYOptions.c:2367
+msgid "By Size"
+msgstr "Per dimensione"
+
+#: src/LYOptions.c:2348 src/LYOptions.c:2368
+msgid "By Date"
+msgstr "Per data"
+
+#: src/LYOptions.c:2349
+msgid "By Mode"
+msgstr "Per modalità"
+
+#: src/LYOptions.c:2351
+msgid "By User"
+msgstr "Per utente"
+
+#: src/LYOptions.c:2352
+msgid "By Group"
+msgstr "Per gruppo"
+
+#: src/LYOptions.c:2377
+msgid "Do not show rate"
+msgstr "Non mostrare la velocità"
+
+#: src/LYOptions.c:2378 src/LYOptions.c:2379
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "Mostra velocità %s/sec."
+
+#: src/LYOptions.c:2381 src/LYOptions.c:2382
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "Mostra %s/sec., ETA"
+
+#: src/LYOptions.c:2385
+msgid "Show progressbar"
+msgstr "Mostra la barra di avanzamento"
+
+#: src/LYOptions.c:2397
+msgid "Accept lynx's internal types"
+msgstr "Accetta i tipi interni di Lynx"
+
+#: src/LYOptions.c:2398
+msgid "Also accept lynx.cfg's types"
+msgstr "Accetta anche i tipi lynx.cfg"
+
+#: src/LYOptions.c:2399
+msgid "Also accept user's types"
+msgstr "Accetta anche i tipi dell'utente"
+
+#: src/LYOptions.c:2400
+msgid "Also accept system's types"
+msgstr "Accetta anche i tipi di sistema"
+
+#: src/LYOptions.c:2401
+msgid "Accept all types"
+msgstr "Accetta tutti i tipi"
+
+#: src/LYOptions.c:2410
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2411
+msgid "deflate"
+msgstr "decomprimi"
+
+#: src/LYOptions.c:2414
+msgid "compress"
+msgstr "comprimi"
+
+#: src/LYOptions.c:2417
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2419
+msgid "All"
+msgstr "Tutti"
+
+#: src/LYOptions.c:2687 src/LYOptions.c:2711
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Usare %s per richiamare il menù delle opzioni."
+
+#: src/LYOptions.c:3500
+msgid "(options marked with (!) will not be saved)"
+msgstr "(le opzioni marcate con (!) non saranno salvate)"
+
+#: src/LYOptions.c:3508
+msgid "General Preferences"
+msgstr "Preferenze generali"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3512
+msgid "User mode"
+msgstr "Modalità utente"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3518
+msgid "Editor"
+msgstr "Editor"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3523
+msgid "Type of Search"
+msgstr "Tipo di ricerca"
+
+#: src/LYOptions.c:3528
+msgid "Security and Privacy"
+msgstr "Sicurezza e riservatezza"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3532
+msgid "Cookies"
+msgstr "Cookie"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3546
+msgid "Invalid-Cookie Prompting"
+msgstr "Dialogo per i cookie non valido"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3553
+msgid "SSL Prompting"
+msgstr "Dialogo SSL"
+
+#: src/LYOptions.c:3559
+msgid "Keyboard Input"
+msgstr "Immissione da tastiera"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3563
+msgid "Keypad mode"
+msgstr "Modalità tastierino numerico"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3569
+msgid "Emacs keys"
+msgstr "Tasti Emacs"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3575
+msgid "VI keys"
+msgstr "Tasti VI"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3582
+msgid "Line edit style"
+msgstr "Stile di elaborazione riga"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3594
+msgid "Keyboard layout"
+msgstr "Mappatura della tastiera"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3608
+msgid "Display and Character Set"
+msgstr "Visualizzazione e set di caratteri"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3613
+msgid "Use locale-based character set"
+msgstr "Usa il set di caratteri basato sulla localizzazione"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3622
+msgid "Display character set"
+msgstr "Mostra il set di caratteri"
+
+#: src/LYOptions.c:3653
+msgid "Assumed document character set"
+msgstr "Set di caratteri presunto dei documenti"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3673
+msgid "CJK mode"
+msgstr "Modalità CJK"
+
+#: src/LYOptions.c:3675
+msgid "Raw 8-bit"
+msgstr "Non convertito (raw 8-bit)"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3683
+msgid "X Display"
+msgstr "Schermo di X"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3689
+msgid "Document Appearance"
+msgstr "Aspetto del documento"
+
+#: src/LYOptions.c:3695
+msgid "Show color"
+msgstr "Mostra i colori"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3719
+msgid "Show cursor"
+msgstr "Mostra il cursore"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3725
+msgid "Underline links"
+msgstr "Sottolinea i collegamenti"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3732
+msgid "Show scrollbar"
+msgstr "Mostra la barra di scorrimento"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3739
+msgid "Popups for select fields"
+msgstr "Menù a comparsa per i campi «select»"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3745
+msgid "HTML error recovery"
+msgstr "Ripristina da errori HTML"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3751
+msgid "Show images"
+msgstr "Mostra le immagini"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3765
+msgid "Verbose images"
+msgstr "Immagini prolisse"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3773
+msgid "Headers Transferred to Remote Servers"
+msgstr "Le intestazioni vengono trasmesse ai server remoti"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3777
+msgid "Personal mail address"
+msgstr "Indirizzo personale di posta elettronica"
+
+#: src/LYOptions.c:3783
+msgid "Password for anonymous ftp"
+msgstr "Password per FTP anonimo"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3789
+msgid "Preferred media type"
+msgstr "Tipo di media preferito"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3795
+msgid "Preferred encoding"
+msgstr "Codifica preferita"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3801
+msgid "Preferred document character set"
+msgstr "Set di caratteri preferito per i documenti"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3806
+msgid "Preferred document language"
+msgstr "Lingua preferita per i documenti"
+
+#: src/LYOptions.c:3812
+msgid "User-Agent header"
+msgstr "Intestazione «User-Agent»"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3820
+msgid "Listing and Accessing Files"
+msgstr "Elencazione e accesso ai file"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3825
+msgid "Use Passive FTP"
+msgstr "Usa FTP passivo"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3831
+msgid "FTP sort criteria"
+msgstr "Criterio di ordinamento FTP"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3839
+msgid "Local directory sort criteria"
+msgstr "Criterio di ordinamento delle directory locali"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3845
+msgid "Local directory sort order"
+msgstr "Ordinamento delle directory locali"
+
+#: src/LYOptions.c:3854
+msgid "Show dot files"
+msgstr "Mostra i file nascosti"
+
+#: src/LYOptions.c:3862
+msgid "Execution links"
+msgstr "Collegamenti per l'esecuzione"
+
+#: src/LYOptions.c:3880
+msgid "Pause when showing message"
+msgstr ""
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3887
+msgid "Show transfer rate"
+msgstr "Mostra la velocità di trasferimento"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3907
+msgid "Special Files and Screens"
+msgstr "File e schermate speciali"
+
+#: src/LYOptions.c:3912
+msgid "Multi-bookmarks"
+msgstr "Segnalibri multipli"
+
+#: src/LYOptions.c:3920
+msgid "Review/edit Bookmarks files"
+msgstr "Revisione/modifica dei file dei segnalibri"
+
+#: src/LYOptions.c:3923
+msgid "Goto multi-bookmark menu"
+msgstr "Andare al menù dei segnalibri multipli"
+
+#: src/LYOptions.c:3925
+msgid "Bookmarks file"
+msgstr "File dei segnalibri"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3932
+msgid "Auto Session"
+msgstr "Sessione automatica"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3938
+msgid "Session file"
+msgstr "File della sessione"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3944
+msgid "Visited Pages"
+msgstr "Pagine visitate"
+
+#: src/LYOptions.c:3949
+msgid "View the file "
+msgstr "Visualizza il file "
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Stampa completata.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Documento:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Numero di righe:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Numero di pagine:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "pagine"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "pagina"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(approssimativamente)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Alcune funzionalità di stampa sono state disabilitate."
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Opzioni di stampa predefinite:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Opzioni di stampa:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Salvare in un file locale"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Salvataggio su disco disabilitato"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Invia il file tramite posta elettronica"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Stampa sullo schermo"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Stampa su una stampante collegata al terminale vt100"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Errore di sintassi durante l'analisi di COLOR nel file di configurazione:\n"
+"la riga deve essere del formato:\n"
+"COLOR:INTERO:PRIMOPIANO:SFONDO\n"
+"\n"
+"Dove PRIMOPIANO e SFONDO devono essere uno fra:\n"
+"i termini speciali «nocolor» o «default», o\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Riga erronea:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "cambiamento del tasto da %s a %s per %s fallito\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "cambiamento del tasto da %s a %s fallito\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "selezione «line-editor» %s per il tasto %s non valida, seleziono tutto\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "impostazione dell'associazione «line-editor» per il tasto %s (0x%x) a 0x%x per %s fallita.\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "impostazione dell'associazione «line-editor» per il tasto %s (0x%x) per %s fallita.\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: impossibile iniziare. File di regole CERN %s non disponibile\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(nessun nome)"
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Oltre %d inclusioni annidate in lynx.cfg. Controllare se c'è un circolo vizioso.\n"
+
+#: src/LYReadCFG.c:1885
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "L'ultima inclusione tentata era «%s»,\n"
+
+#: src/LYReadCFG.c:1886
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "incluso da «%s».\n"
+
+#: src/LYReadCFG.c:2290 src/LYReadCFG.c:2303 src/LYReadCFG.c:2361
+msgid "The following is read from your lynx.cfg file."
+msgstr "Quanto segue è tratto dal file lynx.cfg."
+
+#: src/LYReadCFG.c:2291 src/LYReadCFG.c:2304
+msgid "Please read the distribution"
+msgstr "Consultare la distribuzione"
+
+#: src/LYReadCFG.c:2297 src/LYReadCFG.c:2307
+msgid "for more comments."
+msgstr "per ulteriori commenti."
+
+#: src/LYReadCFG.c:2343
+msgid "RELOAD THE CHANGES"
+msgstr "RICARICARE LE MODIFICHE"
+
+#: src/LYReadCFG.c:2351
+msgid "Your primary configuration"
+msgstr "Configurazione principale"
+
+#: src/LYShowInfo.c:177
+msgid "Directory that you are currently viewing"
+msgstr "Directory attualmente visualizzata"
+
+#: src/LYShowInfo.c:180
+msgid "Name:"
+msgstr "Nome:"
+
+#: src/LYShowInfo.c:183
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:197
+msgid "Directory that you have currently selected"
+msgstr "Directory attualmente selezionata"
+
+#: src/LYShowInfo.c:199
+msgid "File that you have currently selected"
+msgstr "File attualmente selezionato"
+
+#: src/LYShowInfo.c:202
+msgid "Symbolic link that you have currently selected"
+msgstr "Collegamento simbolico attualmente selezionato"
+
+#: src/LYShowInfo.c:205
+msgid "Item that you have currently selected"
+msgstr "Voce attualmente selezionata"
+
+#: src/LYShowInfo.c:207
+msgid "Full name:"
+msgstr "Nome completo:"
+
+#: src/LYShowInfo.c:217
+msgid "Unable to follow link"
+msgstr "Impossibile seguire il collegamento"
+
+#: src/LYShowInfo.c:219
+msgid "Points to file:"
+msgstr "Punta al file:"
+
+#: src/LYShowInfo.c:224
+msgid "Name of owner:"
+msgstr "Nome del proprietario:"
+
+#: src/LYShowInfo.c:227
+msgid "Group name:"
+msgstr "Nome del gruppo:"
+
+#: src/LYShowInfo.c:229
+msgid "File size:"
+msgstr "Dimensione del file:"
+
+#: src/LYShowInfo.c:231
+msgid "(bytes)"
+msgstr "(byte)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:236
+msgid "Creation date:"
+msgstr "Data di creazione:"
+
+#: src/LYShowInfo.c:239
+msgid "Last modified:"
+msgstr "Ultima modifica:"
+
+#: src/LYShowInfo.c:242
+msgid "Last accessed:"
+msgstr "Ultimo accesso:"
+
+#: src/LYShowInfo.c:248
+msgid "Access Permissions"
+msgstr "Diritti di accesso"
+
+#: src/LYShowInfo.c:283
+msgid "Group:"
+msgstr "Gruppo"
+
+#: src/LYShowInfo.c:303
+msgid "World:"
+msgstr "Mondo:"
+
+#: src/LYShowInfo.c:310
+msgid "File that you are currently viewing"
+msgstr "File attualmente visualizzato"
+
+#: src/LYShowInfo.c:318 src/LYShowInfo.c:422
+msgid "Linkname:"
+msgstr "Nome del collegamento:"
+
+#: src/LYShowInfo.c:324 src/LYShowInfo.c:339
+msgid "Charset:"
+msgstr "Set di caratteri:"
+
+#: src/LYShowInfo.c:338
+msgid "(assumed)"
+msgstr "(presunto)"
+
+#: src/LYShowInfo.c:345
+msgid "Server:"
+msgstr "Server:"
+
+#: src/LYShowInfo.c:348
+msgid "Date:"
+msgstr "Data:"
+
+#: src/LYShowInfo.c:351
+msgid "Last Mod:"
+msgstr "Ultima modifica:"
+
+#: src/LYShowInfo.c:356
+msgid "Expires:"
+msgstr "Scadenza:"
+
+#: src/LYShowInfo.c:359
+msgid "Cache-Control:"
+msgstr "Controllo della cache:"
+
+#: src/LYShowInfo.c:362
+msgid "Content-Length:"
+msgstr "Lunghezza del contenuto:"
+
+#: src/LYShowInfo.c:366
+msgid "Length:"
+msgstr "Lunghezza:"
+
+#: src/LYShowInfo.c:371
+msgid "Language:"
+msgstr "Lingua:"
+
+#: src/LYShowInfo.c:378
+msgid "Post Data:"
+msgstr "Dati POST:"
+
+#: src/LYShowInfo.c:381
+msgid "Post Content Type:"
+msgstr "Tipo di contenuto POST:"
+
+#: src/LYShowInfo.c:384
+msgid "Owner(s):"
+msgstr "Proprietari:"
+
+#: src/LYShowInfo.c:389
+msgid "size:"
+msgstr "dimensione:"
+
+#: src/LYShowInfo.c:391
+msgid "lines"
+msgstr "righe"
+
+#: src/LYShowInfo.c:395
+msgid "forms mode"
+msgstr "tipo di modulo"
+
+#: src/LYShowInfo.c:397
+msgid "source"
+msgstr "origine"
+
+#: src/LYShowInfo.c:398
+msgid "normal"
+msgstr "normale"
+
+#: src/LYShowInfo.c:400
+msgid ", safe"
+msgstr ", protetto"
+
+#: src/LYShowInfo.c:402
+msgid ", via internal link"
+msgstr ", tramite collegamento interno"
+
+#: src/LYShowInfo.c:407
+msgid ", no-cache"
+msgstr ", nessuna cache"
+
+#: src/LYShowInfo.c:409
+msgid ", ISMAP script"
+msgstr ", script ISMAP"
+
+#: src/LYShowInfo.c:411
+msgid ", bookmark file"
+msgstr ", file dei segnalibri"
+
+#: src/LYShowInfo.c:415
+msgid "mode:"
+msgstr "modalità:"
+
+#: src/LYShowInfo.c:421
+msgid "Link that you currently have selected"
+msgstr "Collegamento attualmente selezionato"
+
+#: src/LYShowInfo.c:430
+msgid "Method:"
+msgstr "Metodo:"
+
+#: src/LYShowInfo.c:434
+msgid "Enctype:"
+msgstr "Tpo di codifica:"
+
+#: src/LYShowInfo.c:440
+msgid "Action:"
+msgstr "Azione:"
+
+#: src/LYShowInfo.c:446
+msgid "(Form field)"
+msgstr "(Campo del modulo)"
+
+#: src/LYShowInfo.c:457
+msgid "No Links on the current page"
+msgstr "Nessun collegamento nella pagina attuale"
+
+#: src/LYShowInfo.c:463
+msgid "Server Headers:"
+msgstr "Intestazioni del server:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Errore di sintassi durante l'analisi di stile nel file lss:\n"
+"[%s]\n"
+"La riga deve essere del tipo:\n"
+"OGGETTO:MONO:COLORE (es. em:bold:brightblue:white)\n"
+"dove OGGETTO è un elemento fra EM, STRONG, B, I, U, BLINK, ecc.\n"
+"\n"
+
+#: src/LYTraversal.c:111
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "ecco un elenco della cronologia per poter ricostruire"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "ERRORE: comando di caricamento configurato male"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Trovato reindirizzamento illecito «../». Richiesta ignorata."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr " Trovato carattere illecito «/». Richiesta ignorata."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Reindirizzamento illecito nell'uso di «~». Richiesta ignorata."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Impossibile caricare il file."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Caricare su:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Opzioni di caricamento:"
+
+#: src/LYUtils.c:1882
+msgid "Download document URL put to clipboard."
+msgstr "Scarica l'URL del documento nel blocco appunti del sistema."
+
+#: src/LYUtils.c:2666
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Protocollo di accesso inatteso per questo schema di URL."
+
+#: src/LYUtils.c:3474
+msgid "Too many tempfiles"
+msgstr "Troppi file temporanei"
+
+#: src/LYUtils.c:3774
+msgid "unknown restriction"
+msgstr "restrizione sconosciuta"
+
+#: src/LYUtils.c:3805
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Nessuna restrizione impostata.\n"
+
+#: src/LYUtils.c:3808
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Restrizioni impostate:\n"
+
+#: src/LYUtils.c:5186
+msgid "Cannot find HOME directory"
+msgstr "Impossibile trovare la directory HOME"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Normalmente disattivato. Vedere «ENABLE_LYNXRC» in lynx.cfg\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"«accept_all_cookies» permette di impostare Lynx in modo che accetti\n"
+"automaticamente tutti i cookie, se si desidera. La condizione predefinita\n"
+"è «FALSE», per cui è chiesto il consenso per ogni cookie. Impostare\n"
+"«accept_all_cookies» a «TRUE» per accettare tutti i cookie.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"«anonftp_password» permette di impostare Lnxy in modo che usi l'indirizzo\n"
+"personale di posta elettronica come password per l'FTP anonimo. Se non è inserito\n"
+"alcun valore, verrà utilizzato l'indirizzo personale di posta elettronica. Se si\n"
+"desidera, è possibile impostare «anonftp_password» a un valore diverso.\n"
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"«bookmark_file» indica il nome e la posizione del file dei segnalibri\n"
+"predefinito nel quale si possono copiare i collegamenti ai quali accedere\n"
+"rapidamente in un momento successivo.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Se «case_sensitive_searching» è impostato a «on», le ricerche richiamate con\n"
+"i tasti «s» o «/» distingueranno fra maiuscole e minuscole presenti nel\n"
+"documento. Il valore predefinito è «off» (insensibile a maiuscolo/minuscolo).\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"Il parametro «character_set» determina la rappresentazione dei caratteri a\n"
+"8 bit per il terminale usato. Se i caratteri non vengono visualizzati\n"
+"correttamente sullo schermo, si può provare un diverso set di caratteri a\n"
+"8 bit, oppure si possono utilizzare le approssimazioni a 7 bit.\n"
+"I set di caratteri attualmente validi sono:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"«cookie_accept_domains» e «cookie_reject_domains» sono elenchi di domini,\n"
+"separati da virgole, dai quali si vuole che vengano accettati o respinti\n"
+"automaticamente tutti i cookie. Se un dominio è indicato in entrambi gli\n"
+"elenchi, il rifiuto avrà la priorità. Il parametro «accept_all_cookies»\n"
+"sovrascrive qualunque impostazione fatta con queste due opzioni.\n"
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"«cookie_file» indica il file da cui leggere i cookie permanenti.\n"
+"Il valore predefinito è ~/"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"«cookie_loose_invalid_domains», «cookie_strict_invalid_domains» e\n"
+"«cookie_query_invalid_domains» sono elenchi di domini, separati da virgole,\n"
+"per i quali il controllo di validità può variare. Se un dominio è soggetto\n"
+"a un controllo «strict» verrà adottata una rigorosa conformità con la\n"
+"RFC2109. A un dominio con verifica «loose» verrà consentito di presentare\n"
+"cookie con attributi path o domain non validi. Per ogni dominio la condizione\n"
+"predefinita è di interpellare l'utente in caso di path o dominio non valido.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"«dir_list_order» specifica l'ordinamento dell'elenco delle directory in «DIRED_SUPPORT»\n"
+"(se implementato). Il valore predefinito è «ORDER_BY_NAME»\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"«dir_list_styles» specifica lo stile degli elenchi delle directory sotto\n"
+"«DIRED_SUPPORT» (se implementato). Il valore predefinito è «MIXED_STYLE»,\n"
+"che ordina file e directory insieme. «FILES_FIRST» elenca per primi i file,\n"
+"mentre «DIRECTORIES_FIRST» elenca per prime le directory.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Se «emacs_keys» è impostato a «on», i normali tasti di movimento di EMACS:\n"
+"  ^N = giù         ^P = su\n"
+"  ^B = sinistra    ^F = destra\n"
+"saranno abilitati.\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"«file_editor» indica l'editor da richiamare per l'elaborazione di file locali o\n"
+"per l'invio di posta elettronica. Se non è specificato nessuno, l'elaborazione dei\n"
+"file è disabilitata, a meno che non venga attivata da riga di comando, e viene\n"
+"usato l'editor di riga incorporato per la preparazione dei messaggi di posta.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"Il metodo «file_sorting_method» indica il valore su cui eseguire l'ordinamento durante\n"
+"la consultazione di elenchi di file, quali le directory FTP. Le opzioni sono:\n"
+"   BY_FILENAME -- ordina in base al nome del file\n"
+"   BY_TYPE     -- ordina in base al tipo di file\n"
+"   BY_SIZE     -- ordina in base alla dimensione dei file\n"
+"   BY_DATE     -- ordina in base alla data dei file\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"«lineedit_mode» specifica l'associazione dei tasti da utilizzare per\n"
+"immettere le sequenze di caratteri nei moduli e nelle richieste.\n"
+"Se impostato a «Default Binding», i caratteri di controllo seguenti\n"
+"verranno usati per gli spostamenti e le cancellazioni:\n"
+"\n"
+"                     Prec  Succ      Invio = Accetta il dato\n"
+"   Muovi carattere:  <-    ->        ^G    = Annulla immissione\n"
+"      Muovi parola:  ^P    ^N        ^U    = Cancella riga\n"
+"Cancella carattere:  ^H    ^R        ^A    = Inizio riga\n"
+"   Cancella parola:  ^B    ^F        ^E    = Fine riga\n"
+"\n"
+"I metodi attuali di modifica delle righe sono:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Quanto segue consente di definire file e descrizioni di sotto-segnalibri.\n"
+"Il formato è multi_bookmark<lettera_maiuscola>=<nomefile>,<descrizione>\n"
+"Sono consentiti fino a 26 file di segnalibri (per le 26 lettere maiuscole\n"
+"dell'alfabeto inglese). Si parte da «multi_bookmarkB», poiché «A» è il\n"
+"valore predefinito (vedi sopra).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"«personal_mail_address» indica l'indirizzo personale di posta elettronica che\n"
+"viene inviato durante i trasferimenti di file HTTP per l'autorizzazione e\n"
+"i registri, nonché per i commenti inviati.\n"
+"Se non si desidera fornire questa informazione, impostare «NO_FROM_HEADER»\n"
+"al valore «TRUE» in lynx.cfg, o usare l'opzione «-nofrom» nella riga di comando.\n"
+"Si potrebbe anche lasciar vuoto questo campo, ma in tal caso l'indirizzo\n"
+"non comparirebbe nei commenti inviati.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"«preferred_charset» specifica il set di caratteri in notazione MIME (p.es.\n"
+"ISO-8859-2, ISO-8859-5) che Lynx indicherà come preferiti nelle richieste\n"
+"ai server http che accettano l'intestazione «Accept-Charset». Il valore NON deve\n"
+"includere ISO-8859-1 o US-ASCII, poiché che tali valori sono sempre assunti\n"
+"come predefiniti. Può essere un elenco separato da virgole.\n"
+"Il server invierà un file con quel set di caratteri, se è disponibile.\n"
+"In assenza dell'intestazione «Accept-Charset», il comportamento predefinito è\n"
+"che ogni set di caratteri è accettabile. Se c'è l'intestazione «Accept-Charset»,\n"
+"ma il server non è in grado di dare una risposta accettabile secondo tale\n"
+"intestazione, il server DOVREBBE ritornare un messaggio di errore, malgrado\n"
+"l'invio di una risposta inaccettabile sia ugualmente consentito.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"«preferred_language» precisa la lingua in notazione MIME (p.es. «it» o «en»;\n"
+"può essere un elenco separato da virgole in ordine di preferenza decrescente)\n"
+"che Lynx indicherà come preferenza ai server http.\n"
+"Il server invierà un file in tale lingua, se è disponibile, altrimenti\n"
+"invierà il file nella sua lingua predefinita.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Se «run_all_execution_links» è impostato su «on», tutti i collegamenti eseguibili\n"
+"localmente saranno eseguiti quando verranno selezionati.\n"
+"\n"
+"ATTENZIONE: questo può essere MOLTO pericoloso. Poiché si può accedere a fonti\n"
+"            sconosciute o non fidate, può accadere di registrare collegamenti che\n"
+"            sono «cavalli di Troia». Tali collegamenti potrebbero essere prodotti\n"
+"            con lo scopo di cancellare file o di compromettere la sicurezza.\n"
+"            Questo parametro va impostato su «on» solo nel caso in cui si acceda\n"
+"            esclusivamente a fonti completamente fidate.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Se «run_execution_links_on_local_files» è impostato su «on», tutti i collegamenti\n"
+"eseguibili trovati nei file LOCALI verranno eseguiti quando verranno selezionati.\n"
+"Questo differisce da «run_all_execution_links» in quanto il permesso di\n"
+"esecuzione come collegamento verrà accordato soltanto ai file che si trovano\n"
+"nel sistema locale.\n"
+"\n"
+"ATTENZIONE: questo può essere pericoloso. Poiché si può accedere a fonti\n"
+"            sconosciute o non fidate, può accadere di registrare collegamenti che\n"
+"            sono «cavalli di Troia». Tali collegamenti potrebbero essere prodotti\n"
+"            con lo scopo di cancellare file o di compromettere la sicurezza.\n"
+"            Questo parametro va impostato su «on» solo nel caso in cui si acceda\n"
+"            esclusivamente a fonti completamente fidate.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"«select_popups» specifica se le OPTION in un blocco SELECT privo dell'attributo\n"
+"MULTIPLE sono presentate come una lista verticale di pulsanti radio oppure\n"
+"mediante un menù a comparsa. Notare che se l'attributo MULTIPLE è presente\n"
+"nel comando iniziale SELECT, Lynx genera comunque una lista verticale di\n"
+"caselle di scelta per le OPTION. Il valore «on» imposta i menù a comparsa come\n"
+"predefiniti, mentre il valore «off» imposta l'uso dei pulsanti radio.\n"
+"Il valore predefinito può essere sovrascritto tramite l'istruzione «-popup» da\n"
+"riga di comando.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"«show_color» specifica come impostare i colori all'avvio. Il valore «never»\n"
+"forzerà l'esclusione dei colori (considerando il terminale come monocromatico)\n"
+"all'avvio, anche se il terminale è in grado di visualizzare i colori. Il valore\n"
+"«always» forzerà l'attivazione dei colori, anche se il terminale è monocromatico,\n"
+"se ciò è previsto dalla libreria usata per compilare Lynx.\n"
+"Il valore «default» presuppone che il terminale sia monocromatico, a meno che\n"
+"la capacità di visualizzare i colori venga dedotta all'avvio in base al tipo\n"
+"di terminale, o che sia indicata sulla riga di comando l'opzione «-color», o che\n"
+"sia impostata la variabile di ambiente COLORTERM. Il comportamento predefinito\n"
+"è sempre adottato in caso di connessione anonima o se è impostata la restrizione\n"
+"«option_save». L'effetto del valore registrato può essere sovrascritto tramite\n"
+"le opzioni «-color» e «-nocolor» dalla riga di comando.\n"
+"La modalità impostata all'avvio può essere cambiata nel menù 'o'pzioni agendo\n"
+"sulla voce «show color» (mostra i colori). Se le impostazioni vengono\n"
+"registrate, i valori «on» e «off» di tale voce sono trattati come «default».\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"«show_cursor» specifica se il cursore deve essere \"nascosto\" alla destra (in fondo,\n"
+"se possibile) dello schermo, oppure se va posto alla sinistra del collegamento attuale\n"
+"nei documenti e dell'opzione attuale nelle finestre a comparsa di scelta.\n"
+"Il posizionamento del cursore alla sinistra del collegamento o dell'opzione attuale è\n"
+"utile per le interfacce in voce o tattili (braille) e quando il terminale non\n"
+"permette di distinguere il collegamento attivo in base alla brillantezza o al\n"
+"colore. Il valore «on» fissa il posizionamento alla sinistra come predefinito,\n"
+"mentre il valore «off» determina l'occultamento del cursore. Il valore\n"
+"predefinito può essere sovrascritto con l'opzione «-show_cursor» da riga di comando.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"«show_dotfiles» specifica che l'elenco delle directory deve includere\n"
+"file e directory nascosti. Se impostato su «on», ciò sarà rispettato\n"
+"solo se abilitato tramite userdefs.h o lynx.cfg e non ristretto da\n"
+"un'opzione dalla riga di comando. Se la visualizzazione dei file nascosti è\n"
+"disattivata, è disabilitata anche la creazione di tali file da parte di Lynx.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Se «sub_bookmarks» non è impostato su «off» e i segnalibri multipli sono\n"
+"stati definiti, (vedere più avanti), tutte le operazioni sui segnalibri\n"
+"inizieranno proponendo all'utente di scegliere un file di sotto-segnalibri\n"
+"attivo. Se è impostato il file predefinito (vedere sopra), questi sarà utilizzato\n"
+"come scelta predefinita. Quando questa opzione è impostata come «advanced» e la\n"
+"modalità d'uso è «esperto», il comando 'v'edi bookmark richiamerà una\n"
+"richiesta di riga di stato anziché il menù visibile nei modi «novizio»\n"
+"e «medio». Quando l'opzione è impostata su «standard», verrà presentato il\n"
+"menù indipendentemente dalla modalità d'uso.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"«user_mode» specifica il grado di conoscenza di Lynx da parte dell'utente.\n"
+"Il valore predefinito è «novizio», che mostra due righe di aiuto\n"
+"aggiuntive in fondo allo schermo per aiutare l'utente ad apprendere i\n"
+"comandi basilari di Lynx. Impostarlo a «medio» per togliere le informazioni\n"
+"supplementari. Usare la modalità «esperto» per vedere in fondo allo schermo\n"
+"l'URL del collegamento attualmente selezionato.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Se «verbose_images» è impostato su «on», Lynx visualizzerà il nome del file\n"
+"origine dell'immagine anziché [INLINE], [LINK] o [IMAGE].\n"
+"Vedere anche «VERBOSE_IMAGES» in lynx.cfg.\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Se «vi_keys» è impostato su «on», allora i consueti tasti di movimento di VI:\n"
+"  j = giù        k = su\n"
+"  h = sinistra   l = destra\n"
+"verranno abilitati. Questi tasti sono unicamente in carattere minuscolo.\n"
+"Le maiuscole «H», «J» e «K» continuano a richiamare rispettivamente l'aiuto,\n"
+"le scorciatoie e la mappatura della tastiera.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"L'opzione «visited_links» determina il modo in cui Lynx organizza le\n"
+"informazioni nella pagina dei collegamenti visitati.\n"
+
+#: src/LYrcFile.c:820
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Se keypad_mode è impostato su «NUMBERS_AS_ARROWS», i numeri del tastierino\n"
+"agiranno come le frecce, se «numlock» è acceso:\n"
+"              8 = freccia su\n"
+"  4 = freccia sinistra    6 = freccia destra\n"
+"              2 = freccia giù\n"
+"e i corrispondenti numeri della tastiera agiranno come le frecce,\n"
+"qualunque sia lo stato di «numlock».\n"
+
+#: src/LYrcFile.c:829
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Se «keypad_mode» è impostato su «LINKS_ARE_NUMBERED», a fianco di ciascun collegamento\n"
+"comparirà un numero e sanno usati i numeri per selezionare i collegamenti.\n"
+
+#: src/LYrcFile.c:833
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Se «keypad_mode» è impostato su «LINKS_AND_FORM_FIELDS_ARE_NUMBERED» verranno inseriti\n"
+"dei numeri a fianco dei collegamenti e dei campi di immissione visibili nei moduli.\n"
+"I numeri saranno usati per scegliere i collegamenti o per spostare il «collegamento attuale»\n"
+"in un campo di immissione o in un pulsante. Inoltre le opzioni nei menù a comparsa vengono\n"
+"indicizzate, in modo che l'utente possa scrivere un numero per selezionare un'opzione in un\n"
+"menù di questo tipo, anche se l'opzione non è visibile sullo schermo. Gli elenchi di\n"
+"riferimenti e l'output del comando «list» enumerano anche i campi di immissione nei moduli.\n"
+
+#: src/LYrcFile.c:842
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"NOTA: alcuni documenti con formato fisso possono apparire sfigurati quando\n"
+"si usano i valori «LINKS_ARE_NUMBERED» o «LINKS_AND_FORM_FIELDS_ARE_NUMBERED».\n"
+
+#: src/LYrcFile.c:874
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"File dei valori predefiniti dall'utente per Lynx.\n"
+"\n"
+
+#: src/LYrcFile.c:883
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"Questo file contiene le impostazioni salvate nel menù delle opzioni di Lynx\n"
+"(di solito con il tasto «o»). Per salvare le opzioni con quella schermata si\n"
+"deve selezionare la casella di spunta:\n"
+
+#: src/LYrcFile.c:890
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+"Si dovranno poi salvare le impostazioni usando il collegamento nella riga\n"
+"sopra la casella di spunta:\n"
+
+#: src/LYrcFile.c:897
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"È anche possibile usare l'opzione da riga di comando «-forms_options», la quale\n"
+"mostra, invece, il menù delle opzioni semplificato. Le opzioni in tal caso verranno\n"
+"salvate usando il tasto«>».\n"
+"\n"
+
+#: src/LYrcFile.c:904
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"Questo file contiene le opzioni salvate dalla schermata delle opzioni di Lynx\n"
+"(normalmente con il tasto «>»).\n"
+"\n"
+
+#: src/LYrcFile.c:911
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Normalmente non vi è alcun bisogno di modificare manualmente questo file,\n"
+"poiché i valori predefiniti possono essere modificati nel menù delle opzioni e\n"
+"al prossimo salvataggio delle opzioni nella relativa schermata questo file\n"
+"verrà completamente riscritto. Tenerlo presente...\n"
+"\n"
+"Il file per la configurazione generale si chiama normalmente lynx.cfg e ha\n"
+"contenuto e formato diversi, non è questo file.\n"
diff --git a/po/ja.po b/po/ja.po
new file mode 100644
index 00000000..914bd8b3
--- /dev/null
+++ b/po/ja.po
@@ -0,0 +1,6143 @@
+# Japanese messages for Lynx
+# Copyright (C) 2000 Free Software Foundation, Inc.
+# This file is distributed under the same license as the lynx package.
+# Masayuki Hatta <mhatta@po.airs.net>, 2000-2003.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.5pre9\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-09-21 16:20-0400\n"
+"PO-Revision-Date: 2003-04-19 20:40+0900\n"
+"Last-Translator: Masayuki Hatta <mhatta@po.airs.net>\n"
+"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=EUC-JP\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "·Ù¹ð!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "¤è¤¦¤³¤½"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "ËÜÅö¤Ë½ªÎ»¤·¤Æ¤â¤è¤í¤·¤¤¤Ç¤¹¤«?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "ËÜÅö¤Ë Lynx ¤ò½ªÎ»¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Àܳ¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "¥Ç¡¼¥¿Å¾Á÷¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "¥­¥ã¥ó¥»¥ë¤µ¤ì¤Þ¤·¤¿!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "¥­¥ã¥ó¥»¥ë¤·¤Þ¤¹!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "¤½¤¦Íè¤Ê¤¯¤Ã¤Á¤ã!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "´°Î»!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "̵¸ú¤Ê¥ê¥¯¥¨¥¹¥È¤Ç¤¹!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "Á°¤Î²èÌÌ"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "¼¡¤Î²èÌÌ"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "¥Ø¥ë¥×!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", ¥Ø¥ë¥×¢ª"
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "¥³¥Þ¥ó¥É: [Ìð°õ¥­¡¼] °ÜÆ°¡¢[?] ¥Ø¥ë¥×¡¢[q] ½ªÎ»¡¢[¢«] Ìá¤ë"
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- [¥¹¥Ú¡¼¥¹¥­¡¼] ¼¡¥Ú¡¼¥¸¤Ø [Ìð°õ¥­¡¼] °ÜÆ° [?] ¥Ø¥ë¥× [q] ½ªÎ»"
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- ¥¹¥Ú¡¼¥¹¥­¡¼¤Ç¼¡¤Î¥Ú¡¼¥¸ --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL ¤¬Ä¹¤¹¤®¤Þ¤¹"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(¥Æ¥­¥¹¥ÈÆþÎÏ¥Õ¥£¡¼¥ë¥É) ¸½ºß̤ÁªÂò ¥ê¥¿¡¼¥ó¥­¡¼¤ÇÆþÎϳ«»Ï"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(¥Æ¥­¥¹¥È¥¨¥ê¥¢) ¸½ºß̤ÁªÂò ¥ê¥¿¡¼¥ó¥­¡¼¤ÇÆþÎϳ«»Ï"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(¥Æ¥­¥¹¥È¥¨¥ê¥¢) ̤ÁªÂò ¥ê¥¿¡¼¥ó¤ÇÆþÎϳ«»Ï (%s ¤Ç¥¨¥Ç¥£¥¿µ¯Æ°)"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É) ¸½ºß̤ÁªÂò ¥ê¥¿¡¼¥ó¥­¡¼¤ÇÊÔ½¸³«»Ï"
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É) ¸½ºß̤ÁªÂò ¥ê¥¿¡¼¥ó¤ÇÊÔ½¸³«»Ï (%s ¤Ï¥­¥ã¥Ã¥·¥å̵¸ú¤ÇÁ÷¿®)"
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É) ¸½ºß̤ÁªÂò ¥ê¥¿¡¼¥ó¤ÇÊÔ½¸¡¢¥ê¥¿¡¼¥ó2²ó¤ÇÁ÷¿®"
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(mailto ¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É) ¸½ºß̤ÁªÂò ¥ê¥¿¡¼¥ó¤ÇÊѹ¹"
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(¥Ñ¥¹¥ï¡¼¥ÉÆþÎÏ¥Õ¥£¡¼¥ë¥É) ¸½ºß̤ÁªÂò ¥ê¥¿¡¼¥ó¥­¡¼¤ÇÆþÎϳ«»Ï"
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Êѹ¹¤Ç¤­¤Ê¤¤¥Õ¥¡¥¤¥ëÆþÎÏ¥Õ¥£¡¼¥ë¥É [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(¥Õ¥¡¥¤¥ëÆþÎÏ¥Õ¥£¡¼¥ë¥É) ¥Õ¥¡¥¤¥ë̾¤òÆþÎÏ [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(¥Æ¥­¥¹¥ÈÆþÎÏ¥Õ¥£¡¼¥ë¥É) ¥Æ¥­¥¹¥È¤òÆþÎÏ [¢¬][¢­] ¤È¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(¥Æ¥­¥¹¥È¥¨¥ê¥¢) ¥Æ¥­¥¹¥È¤òÆþÎÏ [¢¬][¢­] ¤È¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(¥Æ¥­¥¹¥È¥¨¥ê¥¢) ¥Æ¥­¥¹¥È¤òÆþÎÏ [¢¬][¢­] ¤È¥¿¥Ö¤Ç°ÜÆ° (%s ¤Ç¥¨¥Ç¥£¥¿µ¯Æ°)"
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Êѹ¹¤Ç¤­¤Ê¤¤¥Õ¥©¡¼¥à¥Æ¥­¥¹¥È¥Õ¥£¡¼¥ë¥É [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É) ¥Æ¥­¥¹¥È¤òÆþÎÏ ¥ê¥¿¡¼¥ó¥­¡¼¤ÇÁ÷¿®"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É) ¥Æ¥­¥¹¥È¤òÆþÎÏ ¥ê¥¿¡¼¥ó¥­¡¼¤ÇÁ÷¿® (%s ¤Ç¥­¥ã¥Ã¥·¥å̵¸ú)"
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É) ¥Æ¥­¥¹¥È¤òÆþÎÏ ¥ê¥¿¡¼¥ó¥­¡¼¤ÇÁ÷¿®¡¢Ìð°õ¥­¡¼¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Êѹ¹¤Ç¤­¤Ê¤¤¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(mailto ¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É) ¥Æ¥­¥¹¥È¤òÆþÎÏ ¥ê¥¿¡¼¥ó¤ÇÁ÷¿®¡¢Ìð°õ¥­¡¼¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(mailto ¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É) ¥á¡¼¥ë¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤ÇÁ÷¿®¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(¥Ñ¥¹¥ï¡¼¥ÉÆþÎÏ¥Õ¥£¡¼¥ë¥É) ¥Æ¥­¥¹¥È¤òÆþÎÏ [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "Êѹ¹¤Ç¤­¤Ê¤¤¥Ñ¥¹¥ï¡¼¥É¥Õ¥©¡¼¥à [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(¥Á¥§¥Ã¥¯¥Ü¥Ã¥¯¥¹) [¢ª] ¤«¥ê¥¿¡¼¥ó¥­¡¼¤Ç¥È¥°¥ëÊѹ¹"
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "Êѹ¹¤Ç¤­¤Ê¤¤¥Õ¥©¡¼¥à¥Á¥§¥Ã¥¯¥Ü¥Ã¥¯¥¹ [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(¥é¥¸¥ª¥Ü¥¿¥ó) [¢ª] ¤«¥ê¥¿¡¼¥ó¥­¡¼¤Ç¥È¥°¥ëÁªÂò"
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Êѹ¹¤Ç¤­¤Ê¤¤¥Õ¥©¡¼¥à¥é¥¸¥ª¥Ü¥¿¥ó [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Á÷¿®([x] ¤Ç¥­¥ã¥Ã¥·¥å̵¸ú): "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Á÷¿®ÂоÝ: "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(¥Õ¥©¡¼¥àÁ÷¿®¥Ü¥¿¥ó) [¢ª] ¤«¥ê¥¿¡¼¥ó¥­¡¼¤ÇÁ÷¿® ([x] ¤Ç¥­¥ã¥Ã¥·¥å̵¸ú)"
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(¥Õ¥©¡¼¥àÁ÷¿®¥Ü¥¿¥ó) [¢ª] ¤«¥ê¥¿¡¼¥ó¥­¡¼¤ÇÁ÷¿®"
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "̵¸ú¤Ë¤µ¤ì¤¿Á÷¿®¥Ü¥¿¥ó [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "mailto ¥Õ¥©¡¼¥à¤ò°Ê²¼¤ËÁ÷¿®: "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(mailto ¥Õ¥©¡¼¥àÁ÷¿®¥Ü¥¿¥ó) [¢ª]¤«¥ê¥¿¡¼¥ó¤ÇÁ÷¿®"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(mailto ¥Õ¥©¡¼¥àÁ÷¿®¥Ü¥¿¥ó) ¥á¡¼¥ë¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤ÇÁ÷¿®¤Ç¤­¤Þ¤»¤ó"
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(¥Õ¥©¡¼¥à¥ê¥»¥Ã¥È¥Ü¥¿¥ó) [¢ª] ¤«¥ê¥¿¡¼¥ó¥­¡¼¤Ç¥Õ¥©¡¼¥àÆâÍƤò¥ê¥»¥Ã¥È"
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "̵¸ú¤Ë¤µ¤ì¤¿¥Õ¥©¡¼¥à¥ê¥»¥Ã¥È¥Ü¥¿¥ó [¢¬][¢­]¤«¥¿¥Ö¤Ç°ÜÆ°"
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(¥ª¥×¥·¥ç¥ó¥ê¥¹¥È) ¥ê¥¿¡¼¥ó¥­¡¼¤ò²¡¤·¡¢Ìð°õ¥­¡¼¤È¥ê¥¿¡¼¥ó¥­¡¼¤Ç°ìÍ÷¤«¤éÁªÂò"
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(¥Á¥ç¥¤¥¹¥ê¥¹¥È) ¥ê¥¿¡¼¥ó¥­¡¼¤ò²¡¤·¡¢Ìð°õ¥­¡¼¤È¥ê¥¿¡¼¥ó¥­¡¼¤Ç°ìÍ÷¤«¤éÁªÂò"
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "Êѹ¹¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó¥ê¥¹¥È¤Ç¤¹¡£¥ê¥¿¡¼¥ó¤«Ìð°õ¥­¡¼¤Ç±ÜÍ÷¤Þ¤¿¤Ï°ÜÆ°"
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "Êѹ¹¤Ç¤­¤Ê¤¤ÁªÂò¥ê¥¹¥È¤Ç¤¹¡£¥ê¥¿¡¼¥ó¥­¡¼¤«Ìð°õ¥­¡¼¤Ç±ÜÍ÷¤Þ¤¿¤Ï°ÜÆ°"
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "¥Õ¥©¡¼¥à¤òÁ÷¿®¤·¤Æ¤¤¤Þ¤¹..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "¥Õ¥©¡¼¥à¤ò¥ê¥»¥Ã¥È¤·¤Æ¤¤¤Þ¤¹..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "ʸ½ñ¤ÎºÆÆɤ߹þ¤ßÃæ¡£¥Õ¥©¡¼¥àÆâÍƤÏÁ´¤Æ¼º¤ï¤ì¤Þ¤¹!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Ãí°Õ: ¥Õ¥©¡¼¥à¥Ç¡¼¥¿¤ò¥­¥ã¥é¥¯¥¿¥»¥Ã¥È %s ¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(Ä̾ï¥ê¥ó¥¯) [¢ª] ¤«¥ê¥¿¡¼¥ó¥­¡¼¤ÇÁªÂò"
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "¸½ºßÍ׵ᤵ¤ì¤¿¥ê¥½¡¼¥¹¤ÏÍøÍѤǤ­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Lynx ¤Î¥³¥Þ¥ó¥É¥­¡¼¤òÆþÎÏ: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "õº÷Ãæ: "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "%s ¤ò¼èÆÀÃæ"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "%s ¤òÈô¤Ð¤·¤Þ¤¹"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "%s ¤ò»È¤¤¤Þ¤¹"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "ÉÔÀµ¤Ê URL ¤Ç¤¹: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "%s ¤Ï¥¢¥É¥ì¥¹¤È¤·¤Æ̵¸ú¤Ç¤¹"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "WWW ¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "¤³¤ì¤Ï¸¡º÷²Äǽ¤Ê¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ç¤¹¡£%s ¤Ç¸¡º÷¤Ç¤­¤Þ¤¹¡£"
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--³¤­¤¢¤ê-- ¤³¤ì¤Ï¸¡º÷²Äǽ¤Ê¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ç¤¹¡£%s ¤Ç¸¡º÷¤Ç¤­¤Þ¤¹¡£"
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "ÉÔÀµ¤Ê¥ê¥ó¥¯Èֹ椬ÆþÎϤµ¤ì¤Þ¤·¤¿¡£"
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "¸½ºßʸ½ñ¤Î¥½¡¼¥¹¤ò±ÜÍ÷Ãæ¤Ç¤¹¡£[\\] ¤ÇÄ̾ï²èÌ̤ËÌá¤ê¤Þ¤¹¡£"
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  Ìð°õ¥­¡¼: [¢¬][¢­]¤Ç°ÜÆ° [¢ª]¤Ç¥ê¥ó¥¯¤òé¤ë [¢«]¤Ç°ì¤ÄÌá¤ë  \n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " [H]¥Ø¥ë¥×[o]ÀßÄê[p]°õºþ[g]°ÜÆ°[m]¥á¥¤¥ó²èÌÌ[q]½ªÎ» /=¸¡º÷ [BackSpace]=ÍúÎò \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "  [o]¤½¤Î¾[H]¥Ø¥ë¥×[K]¥­¡¼ÇÛÃÖ[g]°ÜÆ°[p]°õºþ[m]¥á¥¤¥ó [o]¥ª¥×¥·¥ç¥ó [q]½ªÎ» \n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "  [o]¤½¤Î¾[b]Ìá¤ë[e]ÊÔ½¸[d]¥À¥¦¥ó¥í¡¼¥É [^R]ºÆÆɹþ[^W]¥¯¥ê¥¢ ʸ½ñ¸¡º÷: / \n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "[o]¤½¤Î¾[c]¥³¥á¥ó¥È ÍúÎò: [Backspace] ¥Ö¥Ã¥¯¥Þ¡¼¥¯: [v]±ÜÍ÷[a]ÄɲÃ[r]ºï½ü \n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            ¥­¡¼¥Ü¡¼¥É¤ò¥¿¥¤¥×¤¹¤ë¤³¤È¤Ç¥Æ¥­¥¹¥È¤ò¥Õ¥£¡¼¥ë¥ÉÆâ¤ËÆþÎÏ"
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U ¤Ç¥Õ¥£¡¼¥ë¥ÉÆâ¤ÎÁ´¥Æ¥­¥¹¥È¤òºï½ü¡¢[Backspace] ¤Ç°ìʸ»úºï½ü        "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "      Ctrl-U ¤Ç¥Õ¥£¡¼¥ë¥ÉÆâ¤Î¥Æ¥­¥¹¥È¤òºï½ü¡¢[Backspace] ¤Ç°ìʸ»úºï½ü      "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s ¤Ç¥Õ¥£¡¼¥ë¥ÉÆâ¤ÎÁ´¥Æ¥­¥¹¥È¤òºï½ü¡¢[Backspace] ¤Ç°ìʸ»úºï½ü        "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "      %s ¤Ç¥Õ¥£¡¼¥ë¥ÉÆâ¤Î¥Æ¥­¥¹¥È¤òºï½ü¡¢[Backspace] ¤Ç°ìʸ»úºï½ü     "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "ÉÔÀµ¤Ê mailto ¥Õ¥©¡¼¥àÁ÷¿®¤Ç¤¹! ¥­¥ã¥ó¥»¥ë¤µ¤ì¤Þ¤·¤¿!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Ãí°Õ! ¥á¡¼¥ë¥¢¥É¥ì¥¹Ãæ¤Î¥³¥ó¥È¥í¡¼¥ë¥³¡¼¥É¤Ï ? ¤ÇÃÖ´¹¤µ¤ì¤Þ¤¹"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "¥á¡¼¥ë¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹! Á÷¿®¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Mailto ¥Õ¥©¡¼¥à¤ÎÁ÷¿®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Mailto ¥Õ¥©¡¼¥à¤ÎÁ÷¿®¤¬¥­¥ã¥ó¥»¥ë¤µ¤ì¤Þ¤·¤¿!!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "¥Õ¥©¡¼¥à¤ÎÆâÍƤòÁ÷¿®Ãæ..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "mailto URL ¤ËÅŻҥ᡼¥ë¥¢¥É¥ì¥¹¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "mailto URL ¤Î¤¿¤á¤Î°ì¼¡¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "¸µ¤Î¥á¥Ã¥»¡¼¥¸¤ò´Þ¤á¤Þ¤¹¤«?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "²òÀϺѤߤΥ½¡¼¥¹¤ò´Þ¤á¤Þ¤¹¤«?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "¥á¡¼¥ëËÜʸ¤òÊÔ½¸¤¹¤ë¤¿¤á»ØÄê¤Î¥¨¥Ç¥£¥¿¤òµ¯Æ°¤·¤Æ¤¤¤Þ¤¹"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "¥¨¥Ç¥£¥¿¤Îµ¯Æ°¤Ç¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£ÀßÄê¥á¥Ë¥å¡¼¤Î¥¨¥Ç¥£¥¿¤ÎÀßÄê¤ò³Î¤«¤á¤Æ²¼¤µ¤¤¡£"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "¤³¤Î¥³¥á¥ó¥È¤òÁ÷¤ê¤Þ¤¹¤«?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "¤³¤Î¥á¥Ã¥»¡¼¥¸¤òÁ÷¤ê¤Þ¤¹¤«?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "¥á¥Ã¥»¡¼¥¸¤òÁ÷¤Ã¤Æ¤¤¤Þ¤¹..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "¥³¥á¥ó¥ÈÁ÷ÉÕÀè:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "¥Æ¥­¥¹¥È¥¨¥ê¥¢¤Ç¤Ï¤Ê¤¤¤Î¤Ç³°Éô¥¨¥Ç¥£¥¿¤Ï»È¤¨¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "¥Æ¥­¥¹¥È¥¨¥ê¥¢¤Ç¤Ï¤Ê¤¤¤Î¤Ç¥³¥Þ¥ó¥É¤Ï»È¤¨¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "file: ACTION ¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "file: Ä󶡤µ¤ì¤¿¥ê¥ó¥¯·Ðͳ¤Î URL ¤Ïǧ¤á¤é¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "¥í¡¼¥«¥ë¥Õ¥¡¥¤¥ë¤Ø¤Î¥¢¥¯¥»¥¹¤ÏµñÈݤµ¤ì¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "file: ¥Ö¥Ã¥¯¥Þ¡¼¥¯·Ðͳ¤Î URL ¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "¤³¤ÎÆÃÊÌ¤Ê URL ¤Ï³°Éôʸ½ñÃæ¤Ç¤Ïǧ¤á¤é¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "¥ê¥¿¡¼¥ó¥­¡¼¤Ç Lynx ¤ËÌá¤ê¤Þ¤¹¡£"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "DCL ¥µ¥Ö¥×¥í¥»¥¹¤òµ¯Æ°¤·¤Æ¤¤¤Þ¤¹¡£'logout' ¤Ç Lynx ¤ËÌá¤ê¤Þ¤¹¡£\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "EXIT ¤È¥¿¥¤¥×¤¹¤ë¤È Lynx ¤ËÌá¤ê¤Þ¤¹¡£\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "¥Ç¥Õ¥©¥ë¥È¥·¥§¥ë¤òµ¯Æ°¤·¤Þ¤·¤¿¡£'exit' ¤Ç Lynx ¤ËÌá¤ê¤Þ¤¹¡£\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "³°Éô¥³¥Þ¥ó¥Éµ¯Æ°¤Ï¸½ºß¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "¥À¥¦¥ó¥í¡¼¥É¥³¥Þ¥ó¥É [d] ¤Ï¸½ºßÍøÍѤǤ­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "ÆþÎÏ¥Õ¥£¡¼¥ë¥É¤ò¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "¥Õ¥©¡¼¥à¤Ë¤Ï mailto ¥¢¥¯¥·¥ç¥ó¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹! ¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "mailto: ¥ê¥ó¥¯¤Ï¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "¥¯¥Ã¥­¡¼¤ò¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "°õºþ¥ª¥×¥·¥ç¥ó¤ò¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "¥¢¥Ã¥×¥í¡¼¥É¥ª¥×¥·¥ç¥ó¤ò¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "µö²Ä¥ª¥×¥·¥ç¥ó¤ò¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "¤³¤ÎÆüì¤Ê URL ¤Ï¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤»¤ó!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "ÄÉÀ׳«»Ï!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "ÄÉÀ×½ªÎ»!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "²èÁü¤¹¤Ù¤Æ¤Ø¤Î¥ê¥ó¥¯¤òɽ¼¨¤·¤Þ¤¹! ºÆÆɤ߹þ¤ßÃæ..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "ɸ½àŪ¤Ê²èÁü¤Î¼è¤ê°·¤¤¤ËÌᤷ¤Þ¤¹! ºÆÆɤ߹þ¤ßÃæ..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "ALT »ØÄê¤Î̵¤¤¥¤¥ó¥é¥¤¥ó¤Ëµ¿»÷Ū ALT ¤òÁÞÆþ¤·¤Þ¤¹¡£ºÆÆɤ߹þ¤ßÃæ..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "ALT »ØÄê¤Î̵¤¤¥¤¥ó¥é¥¤¥ó¤Ï̵»ë¤µ¤ì¤Þ¤¹! ºÆÆɤ߹þ¤ßÃæ..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "À¸ 8 ¥Ó¥Ã¥È / CJK ¥â¡¼¥É ¥È¥°¥ë¥ª¥Õ! ºÆÆɤ߹þ¤ßÃæ..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "À¸ 8 ¥Ó¥Ã¥È / CJK ¥â¡¼¥É ¥È¥°¥ë¥ª¥ó! ºÆÆɤ߹þ¤ßÃæ..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "[d]ʸ½ñ ¤« [l]¥ê¥ó¥¯¤Ë HEAD ¥ê¥¯¥¨¥¹¥È¤òÁ÷¤ê¤Þ¤¹¤«? ([c]¥­¥ã¥ó¥»¥ë): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "[d]ʸ½ñ ¤Ë HEAD ¥ê¥¯¥¨¥¹¥È¤òÁ÷¤ê¤Þ¤¹¤«? ([c]¥­¥ã¥ó¥»¥ë): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "¤³¤Îʸ½ñ¤Ï http URL ¤Ç¤Ï¤Ê¤¤¤è¤¦¤Ç¤¹¡£"
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "¤³¤Î¥ê¥ó¥¯¤Ï http URL ¤Ç¤Ï¤Ê¤¤¤è¤¦¤Ç¤¹¡£"
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "¤³¤Î¥Õ¥©¡¼¥à¤Ø¤Î ACTION ¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "¤³¤Î¥Õ¥©¡¼¥à¤Ø¤Î ACTION ¤Ï http URL ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "http URL ¤Ç¤â¥Õ¥©¡¼¥à ACTION ¤Ç¤â¤¢¤ê¤Þ¤»¤ó!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "¤³¤ÎÆÃÊÌ¤Ê URL ¤Ï¥Õ¥©¡¼¥à ACTION ¤Ë¤Ï¤Ê¤êÆÀ¤Þ¤»¤ó!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "URL ¤¬³«»ÏÎΰè¤Ë¤¢¤ê¤Þ¤»¤ó!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "¥Ë¥å¡¼¥¹Åê¹Æ¤Ï¤Ç¤­¤Þ¤»¤ó!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "¥Õ¥¡¥¤¥ë´ÉÍý¥µ¥Ý¡¼¥È¤ÏÍøÍѤǤ­¤Þ¤»¤ó!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "¸½ºßÍøÍѲÄǽ¤Ê¥¸¥ã¥ó¥×¥Õ¥¡¥¤¥ë¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "¥¸¥ã¥ó¥×Àè ([?] ¤Ç°ìÍ÷): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "¥·¥ç¡¼¥È¥«¥Ã¥È URL ¤Ø¤Î¥¸¥ã¥ó¥×¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "¥é¥ó¥À¥à URL ¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó! ¥·¥ç¡¼¥È¥«¥Ã¥È¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "º£¤Þ¤Ç¤Î¤È¤³¤í¥é¥ó¥À¥à URL ¤Ï°ì¤Ä¤â»È¤ï¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯µ¡Ç½¤Ï¸½ºßÍøÍѤǤ­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¤«¤é¤Î¼Â¹Ô¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£%s ¤Ç¥ª¥×¥·¥ç¥ó¤¬¸«¤é¤ì¤Þ¤¹¡£"
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "X Mosaic ¥Û¥Ã¥È¥ê¥¹¥ÈÊÑ´¹ÍѤΰì»þ¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "¥¨¥é¡¼ - ¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤ò³«¤±¤Þ¤»¤ó¡£"
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "¥ê¥ó¥¯¤òºï½ü¤¹¤ë¤Î¤Ë¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "¥ê¥ó¥¯¤òºï½ü¤¹¤ë¤Î¤Ë¥¹¥¯¥é¥Ã¥Á¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "¥¹¥¯¥é¥Ã¥Á¥Õ¥¡¥¤¥ë¤Î²þ̾»þ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "°ì»þ¥Õ¥¡¥¤¥ë¤Î²þ̾»þ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£"
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "¥ê¥ó¥¯ºï½ü¤Î¤¿¤á¤Ë¡¢°ì»þ¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "¥ê¥ó¥¯ºï½ü¤Î¤¿¤á¤Ë¡¢°ì»þ¥Õ¥¡¥¤¥ë¤òºÆ¥ª¡¼¥×¥ó¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "¥ê¥ó¥¯¤¬¡¢¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤Ë¤ª¤¤¤Æ¤½¤ì¤À¤±¤Ç°ì¹Ô¤Ë¤Þ¤È¤Þ¤Ã¤Æ¤¤¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯ºï½ü¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£"
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤Ï¥È¥é¥Ð¡¼¥¹¤Ç¤­¤Þ¤»¤ó (http URL ¤Î¤ß)¡£"
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ò³«¤±¤Þ¤»¤ó¡£ºÇ½é¤Ë [a] ¤Ç¥ê¥ó¥¯¤òÊݸ¤·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "¤³¤Î¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤Ë¤Ï°ì¤Ä¤â¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "[d]ʸ½ñ ¤Ë HEAD ¥ê¥¯¥¨¥¹¥È¤òÁ÷¤ê¤Þ¤¹¤«? ([c]¥­¥ã¥ó¥»¥ë): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "[d]ʸ½ñ [l]¥ê¥ó¥¯ ¤ò¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ËÊݸ¤·¤Þ¤¹ ([c]¥­¥ã¥ó¥»¥ë): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "[d]¤Çʸ½ñ¤ò¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤ËÊݸ ([c]¥­¥ã¥ó¥»¥ë): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "[l]¤Ç¥ê¥ó¥¯¤ò¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤ËÊݸ ([c]¥­¥ã¥ó¥»¥ë): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "POST ¥³¥ó¥Æ¥ó¥È¤Î¥Õ¥©¡¼¥à¤«¤é¤Î¥É¥­¥å¥á¥ó¥È¤Ï¥Ö¥Ã¥¯¥Þ¡¼¥¯¤È¤·¤ÆÊݸ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É/¥ê¥ó¥¯¤ÏÊݸ¤Ç¤­¤Þ¤»¤ó"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "ÍúÎò¤ä¾ðÊóɽ¼¨¡¢¥á¥Ë¥å¡¼¡¢¥Õ¥¡¥¤¥ë°ìÍ÷¤Ï¥Ö¥Ã¥¯¥Þ¡¼¥¯¤È¤·¤ÆÊݸ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "ËÜÅö¤Ë¤³¤Î¥ê¥ó¥¯¤ò¥Ö¥Ã¥¯¥Þ¡¼¥¯¤«¤éºï½ü¤·¤Æ¤è¤í¤·¤¤¤Ç¤¹¤«?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "ÉÔÀµ¤Ê¥¢¥É¥ì¥¹¤Ç¤¹¡£"
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "ÀΤʤ¬¤é¤Î¥³¥á¥ó¥È²òÀÏ¥ª¥ó(ºÇ¾®¸Â¤Î²òÀϤè¤êÍ¥Àè)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "ÀΤʤ¬¤é¤Î¥³¥á¥ó¥È²òÀÏ¥ª¥Õ(ºÇ¾®¸Â¤Î²òÀϤ¬Í­¸ú)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "ÀΤʤ¬¤é¤Î¥³¥á¥ó¥È²òÀÏ¥ª¥ó(¸·Ì©¤Ê²òÀϤè¤êÍ¥Àè)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "ÀΤʤ¬¤é¤Î¥³¥á¥ó¥È²òÀÏ¥ª¥Õ(¸·Ì©¤Ê²òÀϤ¬Í­¸ú)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "ºÇ¾®¸Â¤Î¥³¥á¥ó¥È²òÀÏ¥ª¥ó(¤«¤ÄÍ­¸ú)!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "ºÇ¾®¸Â¤Î¥³¥á¥ó¥È²òÀÏ¥ª¥Õ(¸·Ì©¤Ê²òÀϤ¬Í­¸ú)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "ºÇ¾®¸Â¤Î¥³¥á¥ó¥È²òÀÏ¥ª¥ó(¤Ç¤âÀΤʤ¬¤é¤Î²òÀϤ¬Í­¸ú)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "ºÇ¾®¸Â¤Î¥³¥á¥ó¥È²òÀÏ¥ª¥Õ(ÀΤʤ¬¤é¤Î²òÀϤ¬Í­¸ú)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "´Ë¤ä¤«¤Ê¥À¥Ö¥ë¥¯¥©¡¼¥È²òÀÏ¥ª¥ó!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "´Ë¤ä¤«¤Ê¥À¥Ö¥ë¥¯¥©¡¼¥È²òÀÏ¥ª¥Õ!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "HTML ¤ò¡Ö¥¿¥°¤Î¤´¤Ã¤¿¼Ñ¡×É÷Ì£¤Ç²òÀϤ·¤Þ¤¹¡£"
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "HTML ¤ò¡Ö¤½¤³¤½¤³¸·Ì© SGML¡×É÷Ì£¤Ç²òÀϤ·¤Þ¤¹!"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "¤¹¤Ç¤Ë¤³¤Îʸ½ñ¤ÎËöÈø¤Ë¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "¤¹¤Ç¤Ë¤³¤Îʸ½ñ¤ÎÀèƬ¤Ë¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "¤¹¤Ç¤Ë¤³¤Îʸ½ñ¤Î %d ¥Ú¡¼¥¸Ìܤˤ¤¤Þ¤¹¡£"
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "¤¹¤Ç¤Ë¥ê¥ó¥¯ÈÖ¹æ %d ¤òÁªÂò¤·¤Æ¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "¤³¤ì°Ê¾åÌá¤ì¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Åöʸ½ñ¤Î¤³¤Î¹Ô¤è¤ê¾å¤Ë¥ê¥ó¥¯¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Åöʸ½ñ¤Î¤³¤Î¹Ô¤è¤ê²¼¤Ë¥ê¥ó¥¯¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Ťµ¤Î¸Â³¦¤Ç¤¹! ¥Æ¥­¥¹¥È¤òºï½ü¤¹¤ë¤«¥Õ¥£¡¼¥ë¥É¤ò°ÜÆ°¤·¤Æ¤¯¤À¤µ¤¤"
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "¸½ºß¥Õ¥©¡¼¥àÁ÷¿®¥Ü¥¿¥ó¤Þ¤¿¤ÏÄ̾ï¤Î¥ê¥ó¥¯¤Î¾å¤Ë¤¤¤Þ¤»¤ó"
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "¥é¥¸¥ª¥Ü¥¿¥ó¤ÏºÇÄã°ì¤Ä¤Ï»ØÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "¥Õ¥©¡¼¥à¤Ë¤ÏÁ÷¿®¥Ü¥¿¥ó¤¬¤¢¤ê¤Þ¤»¤ó¡£Ã±°ì¤Î¥Æ¥­¥¹¥È¥Õ¥£¡¼¥ë¥É¤òÁ÷¿®¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "°ì¤ÄÁ°¤Îʸ½ñ¤ËÌá¤ê¤Þ¤¹¤«?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Ìð°õ¥­¡¼¤«¥¿¥Ö¤Ç¥Õ¥£¡¼¥ë¥É¤ò°ÜÆ°"
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "¥Æ¥­¥¹¥È¤òÆþÎÏ Ìð°õ¥­¡¼¤«¥¿¥Ö¤Ç¥Õ¥£¡¼¥ë¥É¤ò°ÜÆ°"
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "ÉÔÀµ¤Ê HTML ¤Ç¤¹!! ¥Õ¥©¡¼¥à¥¢¥¯¥·¥ç¥ó¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "ÉÔÀµ¤Ê HTML ¤Ç¤¹!! ¥Ý¥Ã¥×¥¢¥Ã¥×¥¦¥£¥ó¥É¥¦¤¬ºî¤ì¤Þ¤»¤ó **"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "¥Ý¥Ã¥×¥¢¥Ã¥×¥¦¥£¥ó¥É¥¦¤¬ºî¤ì¤Þ¤»¤ó!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "¥é¥ó¥À¥à URL ¤Ø¤Î Goto ¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Èó http URL ¤Ø¤Î Goto ¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Goto ¤Ç \"%s\" URL ¤ò»ØÄꤹ¤ë¤Î¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "³«¤­¤¿¤¤ URL: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "¸½ºß¤Î Goto URL ¤òÊÔ½¸: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Á°¤Î Goto URL: ¤òÊÔ½¸: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "°ÊÁ°¤Î Goto URL: ¤òÊÔ½¸: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "¸½ºß¤Îʸ½ñ¤Ï POST ¥Ç¡¼¥¿¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "¤³¤Îʸ½ñ¤Î URL ¤òÊÔ½¸: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "¸½ºß¤Î URL ¥ê¥ó¥¯Àè¤òÊÔ½¸: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "¥Õ¥¡¥¤¥ë´ÉÍý URL ¤ÏÊÔ½¸¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ç¸¡º÷¤¹¤ëʸ»úÎó¤òÆþÎÏ: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "¸¡º÷¤¹¤ëʸ»úÎó: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "¸½ºß¤Î¸¡º÷ʸ»úÎó¤òÊÔ½¸: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "°ì¤ÄÁ°¤Î¸¡º÷ʸ»úÎó¤òÊÔ½¸: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "°ÊÁ°¤Î¸¡º÷ʸ»úÎó¤òÊÔ½¸: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Ctrl-R ¤Ç¸½ºß¤Î¸¡º÷ʸ»úÎó¤òºÆÁ÷¿®"
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "¸½ºß¤Î¥·¥ç¡¼¥È¥«¥Ã¥È¤òÊÔ½¸: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "°ì¤ÄÁ°¤Î¥·¥ç¡¼¥È¥«¥Ã¥È¤òÊÔ½¸: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "°ÊÁ°¤Î¥·¥ç¡¼¥È¥«¥Ã¥È¤òÊÔ½¸: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "¥­¡¼ '%c' ¤Ï¥¸¥ã¥ó¥×¥Õ¥¡¥¤¥ë¤Ë³ä¤êÅö¤Æ¤é¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "¥¸¥ã¥ó¥×¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "¥¸¥ã¥ó¥×¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "¥¸¥ã¥ó¥×¥Õ¥¡¥¤¥ë¤ÎÆɤ߹þ¤ß¤Ç¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "¥¸¥ã¥ó¥×¥Õ¥¡¥¤¥ë¤ÎÆɤ߹þ¤ß¤Ç¥á¥â¥ê¤¬Â­¤ê¤Ê¤¯¤Ê¤ê¤Þ¤·¤¿!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "¥¸¥ã¥ó¥×¥Æ¡¼¥Ö¥ë¤ÎÆɤ߹þ¤ß¤Ç¥á¥â¥ê¤¬Â­¤ê¤Ê¤¯¤Ê¤ê¤Þ¤·¤¿!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "¸½ºßÍøÍѲÄǽ¤Ê¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "ËÜÅö¤Ë¥á¥¤¥ó²èÌ̤˹Ԥ­¤Þ¤¹¤«?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "¤¹¤Ç¤Ë¥á¥¤¥ó²èÌ̤ˤ¤¤Þ¤¹!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "¸¡º÷²Äǽ¤Êº÷°úÉÕ¤­Ê¸½ñ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó -- [/] ¤Çʸ»úÎó¤ò¸¡º÷"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "¥Õ¥¡¥¤¥ë¤Î½êÍ­¼Ô¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ç¥³¥á¥ó¥È¤ÏÁ÷¤ì¤Þ¤»¤ó"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "½êÍ­¼Ô¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£%s ¤ò»È¤¤¤Þ¤¹¤«?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "¥³¥á¥ó¥È¤òÁ÷¤ê¤Þ¤¹¤«?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "¥á¡¼¥ë¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ç¥³¥á¥ó¥È¤ÏÁ÷¤ì¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "ÊÔ½¸ [e] ¥³¥Þ¥ó¥É¤Ï¸½ºßÍøÍѤǤ­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "³°ÉôÊÔ½¸µ¡Ç½¤Ï¸½ºßÍøÍѤǤ­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "¥·¥¹¥Æ¥à¥¨¥é¡¼ - ¥¹¥Æ¡¼¥¿¥¹¤òÆÀ¤ë¤Î¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "¥¨¥Ç¥£¥¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "°õºþ¥³¥Þ¥ó¥É [p] ¤Ï¸½ºßÍøÍѤǤ­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "¤³¤Îʸ½ñ¤Ë¤Ï¥Ä¡¼¥ë¥Ð¡¼¥ê¥ó¥¯¤â¥Ð¥Ê¡¼¤â´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "¥È¥é¥Ð¡¼¥µ¥ë¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "¥È¥é¥Ð¡¼¥µ¥ëȯ¸«¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "¥ê¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "¥È¥é¥Ð¡¼¥µ¥ë¥¨¥é¡¼½ÐÎÏ¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó"
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "¥È¥é¥Ð¡¼¥µ¥ë¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "é¤ë¥ê¥ó¥¯(¤â¤·¤¯¤Ï goto ¥ê¥ó¥¯¤«¥Ú¡¼¥¸)¤ÎÈÖ¹æ: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "¥ª¥×¥·¥ç¥ó(¤Þ¤¿¤Ï¥Ú¡¼¥¸)ÈÖ¹æ¤òÁªÂò: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "¥ª¥×¥·¥ç¥óÈÖ¹æ %d ¤Ï¤¹¤Ç¤ËÁªÂò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£"
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "¤¹¤Ç¤Ë¤³¤Î¥ª¥×¥·¥ç¥ó¥ê¥¹¥È¤Î½ªÃ¼¤Ë¤¤¤Þ¤¹¡£"
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "¤¹¤Ç¤Ë¤³¤Î¥ª¥×¥·¥ç¥ó¥ê¥¹¥È¤ÎÀèƬ¤Ë¤¤¤Þ¤¹¡£"
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "¤¹¤Ç¤Ë¤³¤Î¥ª¥×¥·¥ç¥ó¥ê¥¹¥È¤Î¥Ú¡¼¥¸ %d ¤Ë¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "ÉÔÀµ¤Ê¥ª¥×¥·¥ç¥óÈֹ椬ÆþÎϤµ¤ì¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** ÉÔÀµ¤Ê HTML ¤Ç¤¹!! -trace ¤Ç¸¶°ø¤òÄ´¤Ù¤é¤ì¤Þ¤¹ **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Êݸ¤¹¤ë¥Õ¥¡¥¤¥ë¤Î̾Á°¤òÆþÎϤ·¤Æ¤¯¤À¤µ¤¤"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "¥Ç¡¼¥¿¤ò¥Õ¥¡¥¤¥ë¤ËÊݸ¤Ç¤­¤Þ¤»¤ó -- WWW ¤ò¥í¡¼¥«¥ë¤Ç¼Â¹Ô¤·¤Æ¤¯¤À¤µ¤¤"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "°ì»þŪ¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "½ÐÎÏ¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó! ¥­¥ã¥ó¥»¥ë¤·¤Þ¤¹!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "¼Â¹Ôµ¡Ç½¤ÏÍøÍѤǤ­¤Þ¤»¤ó¡£"
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "¤³¤Î¥Õ¥¡¥¤¥ë¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¥ª¥×¥·¥ç¥ó¥á¥Ë¥å¡¼¤ò»²¾È(%s¤ò»È¤¦)¤·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "¼Â¹Ôµ¡Ç½¤Ï¤³¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ï¥³¥ó¥Ñ¥¤¥ë»þ¤ËÁȤ߹þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¸½ºß¤ÎüËö¤Ç¤Ïɽ¼¨¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¸½ºß¤ÎüËö¤Ç¤Ïɽ¼¨¤Ç¤­¤Þ¤»¤ó¡£[d]¥À¥¦¥ó¥í¡¼¥É [c]¥­¥ã¥ó¥»¥ë"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s [d]¥À¥¦¥ó¥í¡¼¥É ¤Þ¤¿¤Ï [c]¥­¥ã¥ó¥»¥ë"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "¥Õ¥¡¥¤¥ë¤ò¥­¥ã¥ó¥»¥ë¤·¤Þ¤¹¡£"
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "¥Õ¥¡¥¤¥ë¤ò¼õ¿®Ãæ - ¤ªÂÔ¤Á¤¯¤À¤µ¤¤"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "¥Õ¥¡¥¤¥ë̾¤òÆþÎÏ: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "°ì¤ÄÁ°¤Î¥Õ¥¡¥¤¥ë̾¤òÊÔ½¸: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "°ÊÁ°¤Î¥Õ¥¡¥¤¥ë̾¤òÊÔ½¸: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "¿·¤·¤¤¥Õ¥¡¥¤¥ë̾¤òÆþÎÏ: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "¥Õ¥¡¥¤¥ë̾¤Ï¥É¥Ã¥È¤Ç»Ï¤Þ¤Ã¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Þ¤¹¡£¤è¤ê¹â¤¤¥Ð¡¼¥¸¥ç¥ó¤òºîÀ®¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Þ¤¹¡£¾å½ñ¤­¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤á¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "¥¨¥é¡¼! - ¥À¥¦¥ó¥í¡¼¥É¥³¥Þ¥ó¥É¤ÎÀßÄ꤬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "¥Õ¥¡¥¤¥ë¤ò¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤òÆɤ߹þ¤ßÃæ..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê°ìÍ÷¤òºîÀ®Ãæ..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Êݸ¤·¤Æ¤¤¤Þ¤¹..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "¥Õ¥¡¥¤¥ë '%s' ¤òÊÔ½¸¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "ʸ½ñ¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "¥Ç¡¼¥¿¤òÆɤ߹þ¤á¤Þ¤»¤ó¡£"
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "¸½ºß Lynx ¤Ï¥ê¥â¡¼¥È WWW ¥Õ¥¡¥¤¥ë¤ò [e] ÊÔ½¸¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "¤³¤Î¥Õ¥£¡¼¥ë¥É¤Ï³°Éô¥¨¥Ç¥£¥¿¤ÇÊÔ½¸ [e] ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "ÉÔÀµ¤Ê¥ë¡¼¥ë¤Ç¤¹¡£"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "¥ª¥Ú¥é¥ó¥É¤¬Â­¤ê¤Þ¤»¤ó:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "¤³¤Î¥Õ¥¡¥¤¥ë¤òÊÔ½¸¤¹¤ë¸¢¸Â¤¬¤¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Âê̾: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "¥µ¥Ö¥¸¥§¥¯¥È: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "¥æ¡¼¥¶Ì¾: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "¥Ñ¥¹¥ï¡¼¥É: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: ¥æ¡¼¥¶Ì¾¤È¥Ñ¥¹¥ï¡¼¥É¤¬É¬ÍפǤ¹!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: ¥Ñ¥¹¥ï¡¼¥É¤¬É¬ÍפǤ¹!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "¤³¤Î¥»¥Ã¥·¥ç¥ó¤Î¤¹¤Ù¤Æ¤Îǧ¾Ú¾ðÊó¤ò¥¯¥ê¥¢¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "ǧ¾Ú¾ðÊó¤ò¥¯¥ê¥¢¤·¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "ǧ¾Ú¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£ºÆ»î¹Ô¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "cgi ¥µ¥Ý¡¼¥È¤ÏÍøÍѤǤ­¤Þ¤»¤ó¡£"
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Lynxcgi µ¡Ç½¤Ï¤³¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë¤ÏÁȤ߹þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "%s ¤ò %s ¤ËÊÑ´¹¤¹¤ë¼êÃʤϤ¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Àܳ¤ò½àÈ÷¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Àܳ¤ò³ÎΩ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "ÉÔÀµ¤Ê¥ê¥¯¥¨¥¹¥È¤Î¤¿¤á¡¢¼Â¹Ô²Äǽ¤Ê¥ê¥ó¥¯¤ÏµñÈݤµ¤ì¤Þ¤·¤¿¡£"
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "¥­¥ã¥é¥¯¥¿ '%c' ¤Î¤¿¤á¡¢¼Â¹Ô²Äǽ¤Ê¥ê¥ó¥¯¤ÏµñÈݤµ¤ì¤Þ¤·¤¿¡£"
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "ÁêÂХѥ¹Ê¸»úÎó('../')¤Î¤¿¤á¡¢¼Â¹Ô²Äǽ¤Ê¥ê¥ó¥¯¤ÏµñÈݤµ¤ì¤Þ¤·¤¿¡£"
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "¾ì½ê¤Þ¤¿¤Ï¥Ñ¥¹¤Î¤¿¤á¡¢¼Â¹Ô²Äǽ¤Ê¥ê¥ó¥¯¤ÏµñÈݤµ¤ì¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "¥á¡¼¥ë¥¢¥¯¥»¥¹¤ÏÍøÍѤǤ­¤Þ¤»¤ó!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "¥í¡¼¥«¥ë¥Û¥¹¥È¾å¤Î¥Õ¥¡¥¤¥ë¤È¥µ¡¼¥Ð¤Î¤ß¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£"
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Telnet ¥¢¥¯¥»¥¹¤ÏÍøÍѤǤ­¤Þ¤»¤ó!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Telnet ¥Ý¡¼¥È»ØÄê¤ÏÍøÍѤǤ­¤Þ¤»¤ó!"
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "USENET ¥Ë¥å¡¼¥¹¥¢¥¯¥»¥¹¤ÏÍøÍѤǤ­¤Þ¤»¤ó!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Rlogin ¥¢¥¯¥»¥¹¤ÏÍøÍѤǤ­¤Þ¤»¤ó!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Ftp ¥¢¥¯¥»¥¹¤ÏÍøÍѤǤ­¤Þ¤»¤ó!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "¤³¤Îʸ½ñ¤«¤é¤Î»²¾È¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "¤³¤Îʸ½ñ¤Ë¤Ï±£¤·¥ê¥ó¥¯¤·¤«¤¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "¥³¥Þ¥ó¥É¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "¥Ë¥å¡¼¥¹¤ÎÅê¹Æ¤Ï¥­¥ã¥ó¥»¥ë¤µ¤ì¤Þ¤·¤¿!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "»ØÄê¤Î¥¨¥Ç¥£¥¿¤òµ¯Æ°¤·¤Æ¥Ë¥å¡¼¥¹¥á¥Ã¥»¡¼¥¸¤òÊÔ½¸¤·¤Þ¤¹"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "¤³¤Î¥á¥Ã¥»¡¼¥¸¤òÅê¹Æ¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "'%s' ¤òÄɲä·¤Þ¤¹¤«?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "¥Ë¥å¡¼¥¹¥°¥ë¡¼¥×¤ËÅê¹ÆÃæ..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** ¤Þ¤ÀÆɤó¤Ç¤¤¤Ê¤¤¥á¡¼¥ë¤¬¤¢¤ê¤Þ¤¹ ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** ¥á¡¼¥ë¤¬Íè¤Æ¤¤¤Þ¤¹ ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** ¿·Ãå¥á¡¼¥ë¤¬¤¢¤ê¤Þ¤¹ ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "¥Õ¥¡¥¤¥ëÁÞÆþ¤¬¥­¥ã¥ó¥»¥ë¤µ¤ì¤Þ¤·¤¿!!!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤à¥á¥â¥ê¤¬Â­¤ê¤Þ¤»¤ó"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Æɤ߹þ¤à¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Þ¤»¤ó - ºÆÆþÎϤ«¥­¥ã¥ó¥»¥ë:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "¥Õ¥¡¥¤¥ë¤ÏÆɤ߹þ¤ßÉԲĤǤ¹¡£"
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "¥Õ¥¡¥¤¥ë¤¬Æɤá¤Þ¤»¤ó - ºÆÆþÎϤ«¥­¥ã¥ó¥»¥ë:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "ÁÞÆþ¤¹¤ëÆâÍƤ¬¤¢¤ê¤Þ¤»¤ó - ¥Õ¥¡¥¤¥ë¤ÎŤµ¤¬ 0 ¤Ç¤¹¡£"
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Êݸ¥ê¥¯¥¨¥¹¥È¤¬¥­¥ã¥ó¥»¥ë¤µ¤ì¤Þ¤·¤¿!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "¥á¡¼¥ë¥ê¥¯¥¨¥¹¥È¤¬¥­¥ã¥ó¥»¥ë¤µ¤ì¤Þ¤·¤¿!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "²òÀϺѤߥ½¡¼¥¹¤ò±ÜÍ÷Ãæ¤Ç¤¹¡£ËÜÅö¤Ë¤³¤ì¤ò¥á¡¼¥ë¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "¤ªÂÔ¤Á¤¯¤À¤µ¤¤..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "¥Õ¥¡¥¤¥ë¤ò¥á¡¼¥ë¤ÇÁ÷¿®Ãæ¡£¤ªÂÔ¤Á¤¯¤À¤µ¤¤..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "¥¨¥é¡¼ - ¥Õ¥¡¥¤¥ë¤ò¥á¡¼¥ë¤ÇÁ÷¿®¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "¥Õ¥¡¥¤¥ë¤Ï %d ²èÌÌʬ¤ÎŤµ¤Ç¤¹¡£ËÜÅö¤Ë°õºþ¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "°õºþ¥ê¥¯¥¨¥¹¥È¤Ï¥­¥ã¥ó¥»¥ë¤µ¤ì¤Þ¤·¤¿!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "¥ê¥¿¡¼¥ó¥­¡¼¤Ç³«»Ï: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "¥ê¥¿¡¼¥ó¥­¡¼¤Ç½ªÎ»"
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "¥Õ¥¡¥¤¥ë¤Ï %d ¥Ú¡¼¥¸Ê¬¤ÎŤµ¤Ç¤¹¡£ËÜÅö¤Ë°õºþ¤·¤Þ¤¹¤«?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "¥×¥ê¥ó¥¿¤¬¥ª¥ó¥é¥¤¥ó¤«³Î¤«¤á¤Æ¤¯¤À¤µ¤¤¡£¥ê¥¿¡¼¥ó¥­¡¼¤Ç°õºþ³«»Ï:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "¥¨¥é¡¼ - ¥Õ¥¡¥¤¥ëÎΰ褬³ÎÊݤǤ­¤Þ¤»¤ó!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "°ì»þ¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "°õºþ¥ª¥×¥·¥ç¥ó¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "¥Õ¥¡¥¤¥ë¤ò°õºþ¤·¤Æ¤¤¤Þ¤¹¡£¤ªÂÔ¤Á¤¯¤À¤µ¤¤..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Àµ¤·¤¤¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥á¡¼¥ë¥¢¥É¥ì¥¹¤òÆþÎϤ·¤Æ¤¯¤À¤µ¤¤: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "¥¨¥é¡¼! - ¥×¥ê¥ó¥¿¤ÎÀßÄ꤬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "POST ¥ì¥¹¥Ý¥ó¥¹¤«¤é¤Î¥¤¥á¡¼¥¸¥Þ¥Ã¥×¤¬ÍøÍѤǤ­¤Þ¤»¤ó!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "¥¯¥é¥¤¥¢¥ó¥È¥µ¥¤¥É¥¤¥á¡¼¥¸ MAP ¥ê¥¯¥¨¥¹¥È¤Î¥Ç¥£¥ì¥¯¥·¥ç¥ó¤¬ÉÔÀµ¤Ç¤¹!"
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "¥¯¥é¥¤¥¢¥ó¥È¥µ¥¤¥É¥¤¥á¡¼¥¸ MAP ¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "ÍøÍѤǤ­¤ë¥¯¥é¥¤¥¢¥ó¥È¥µ¥¤¥É¥¤¥á¡¼¥¸ MAP ¤¬¤¢¤ê¤Þ¤»¤ó!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "¥¯¥é¥¤¥¢¥ó¥È¥µ¥¤¥É¥¤¥á¡¼¥¸ MAP ¤ÏÍøÍѤǤ­¤Þ¤»¤ó!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "¥ª¥×¥·¥ç¥ó¥á¥Ë¥å¡¼¤òɽ¼¨¤¹¤ë¤Ë¤Ï¥¹¥¯¥ê¡¼¥ó¤Î¹â¤µ¤¬ºÇÄã 24 ¹ÔʬɬÍפǤ¹!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "¥ª¥×¥·¥ç¥ó¥á¥Ë¥å¡¼¤òɽ¼¨¤¹¤ë¤Ë¤Ï¥¹¥¯¥ê¡¼¥ó¤Î¹â¤µ¤¬ºÇÄã 23 ¹ÔʬɬÍפǤ¹!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "¥ª¥×¥·¥ç¥ó¥á¥Ë¥å¡¼¤òɽ¼¨¤¹¤ë¤Ë¤Ï¥¹¥¯¥ê¡¼¥ó¤Î¹â¤µ¤¬ºÇÄã 22 ¹ÔʬɬÍפǤ¹!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "¤½¤Î¥­¡¼¤ò»È¤¦¤Ë¤Ï¹âÅ٥桼¥¶¥â¡¼¥É¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Content-type: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "¥³¥Þ¥ó¥É: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "ÉÔÌÀ¤Þ¤¿¤Ï¤¢¤¤¤Þ¤¤¤Ê¥³¥Þ¥ó¥É¤Ç¤¹"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " ¥Ð¡¼¥¸¥ç¥ó "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " ¤òºÇ½é¤Ëõ¤·¤Þ¤¹"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr "¡¢¿ä¬Ãæ..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó: "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "ÁªÂò "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "Âçʸ»ú"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " ¤Î¥ª¥×¥·¥ç¥ó¥é¥¤¥ó¡¢"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " ¤ÇÊݸ¡¢"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " ¤Ø "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " ¤Þ¤¿¤Ï "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " º÷°ú"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " ¤Ç Lynx ¤ËÌá¤ë¡£"
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Êѹ¹¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Êѹ¹¤ò¥ê¥»¥Ã¥È"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "[¢«] ¥­¥ã¥ó¥»¥ë"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Êѹ¹¤ò¥Ç¥£¥¹¥¯¤ËÊݸ"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "¥ê¥¿¡¼¥ó¥­¡¼¤ÇÆþÎϤ·¤¿¥Ç¡¼¥¿¤òÅÐÏ¿"
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "¥ê¥¿¡¼¥ó¤ÇÆþÎϤ·¤¿¥Ç¡¼¥¿¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤ËÌ᤹¤Ë¤Ï¥Ç¡¼¥¿¤òºï½ü"
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Ãͤò¼õ¤±Æþ¤ì¤Þ¤·¤¿!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Ãͤò¼õ¤±Æþ¤ì¤Þ¤·¤¿! -- Ãí°Õ: Lynx ¤Ï XWINDOWS ¸þ¤±¤ËÀßÄꤵ¤ì¤Þ¤·¤¿!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Ãͤò¼õ¤±Æþ¤ì¤Þ¤·¤¿! -- Ãí°Õ: Lynx ¤Ï XWINDOWS ¸þ¤±¤ËÀßÄꤵ¤ì¤Æ*¤¤¤Þ¤»¤ó*"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "»ÈÍѤ¹¤ë¥¨¥Ç¥£¥¿¤ÎÊѹ¹¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "´Ä¶­ÊÑ¿ô DISPLAY ¤ÎÀßÄê¤Ë¼ºÇÔ¤·¤Þ¤·¤¿!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "´Ä¶­ÊÑ¿ô DISPLAY ¤Î¥¯¥ê¥¢¤Ë¼ºÇÔ¤·¤Þ¤·¤¿!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤ÎÊѹ¹¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "üËö¤¬¥«¥é¡¼É½¼¨¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "¤¢¤Ê¤¿¤ÎüËö '%s' ¤Ï¥«¥é¡¼É½¼¨¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "¥É¥Ã¥È¥Õ¥¡¥¤¥ë¤Ø¤Î¥¢¥¯¥»¥¹¤Ï¤Ç¤­¤Þ¤»¤ó!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "User-Agent ¤Ë \"Lynx\" ¤¢¤ë¤¤¤Ï \"L_y_n_x\" ¤È¤¤¤¦Ê¸»úÎ󤬴ޤޤì¤Æ¤¤¤Þ¤»¤ó"
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "User-Agent ¤Ë \"L_y_n_x\" ¤Ê¤¤¤· \"Lynx\" ¤È¤¤¤¦Ê¸»úÎó¤ò´Þ¤á¤Æ¤¯¤À¤µ¤¤¡£¤µ¤â¤Ê¤¤¤È°Õ¿ÞŪ¤Êµ½â֤ȸ«¤Ê¤·¤Þ¤¹!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "User-Agent ʸ»úÎó¤ÎÊѹ¹¤Ï¤Ç¤­¤Þ¤»¤ó!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "¤³¤ÎÀßÄê¤ÎÊѹ¹¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "ÀßÄê¤òÊݸÃæ..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "ÀßÄê¤òÊݸ¤·¤Þ¤·¤¿!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "ÀßÄê¤òÊݸ¤Ç¤­¤Þ¤»¤ó!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr "[r]¤Ç Lynx ¤ËÌá¤ê¤Þ¤¹ "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " [>] ¤ÇÊݸ¡¢[r] ¤Ç Lynx ¤ËÌá¤ê¤Þ¤¹ "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "²¿¤«¥­¡¼¤ò²¡¤·¤ÆÃͤòÊѤ¨¤Æ¤¯¤À¤µ¤¤¡£¥ê¥¿¡¼¥ó¤ÇÅÐÏ¿"
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "°ì»þ¥Õ¥¡¥¤¥ë¤ÎŸ³«¤Ç¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤ URL ¥¹¥­¡¼¥à¤Ç¤¹!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ç¡¼¥¿: URL! ¤È¤ê¤¢¤¨¤º SHOWINFO ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "¥ê¥À¥¤¥ì¥¯¥·¥ç¥óÀ©¸Â (10 URL) ¤ËÅþ㤷¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "¥µ¡¼¥Ð¤«¤éÉÔÀµ¤Ê¥ê¥À¥¤¥ì¥¯¥·¥ç¥ó URL ¤ò¼õ¿®¤·¤Þ¤·¤¿!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "¥µ¡¼¥Ð¤Ï POST ¥³¥ó¥Æ¥ó¥È¤Î°Ê²¼¤Ø¤Î %d ¥ê¥À¥¤¥ì¥¯¥·¥ç¥ó¤òÍ׵ᤷ¤Þ¤·¤¿: "
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "[p]¤Ç³¹Ô¡¢[g]GET¤ò»È¤¦¡¢[c]¥­¥ã¥ó¥»¥ë"
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "[p]¤Ç³¹Ô¡¢¤Þ¤¿¤Ï [c]¥­¥ã¥ó¥»¥ë"
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "POST ¥³¥ó¥Æ¥ó¥È¤Î¥ê¥À¥¤¥ì¥¯¥·¥ç¥ó [p]³¹Ô [u]URL¤ò¸«¤ë [g]GET¤ò»È¤¦ [c]¥­¥ã¥ó¥»¥ë"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "POST ¥³¥ó¥Æ¥ó¥È¤Î¥ê¥À¥¤¥ì¥¯¥·¥ç¥ó [p]³¹Ô [u]URL¤ò¸«¤ë [c]¥­¥ã¥ó¥»¥ë"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "POST ¥³¥ó¥Æ¥ó¥È¤ò»ý¤Ä¥Õ¥©¡¼¥à¤«¤é¤Î¥É¥­¥å¥á¥ó¥È¤Ç¤¹¡£ºÆÁ÷¿®¤·¤Þ¤¹¤«?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "POST ¥³¥ó¥Æ¥ó¥È¤ò %s ¤ËºÆÁ÷¿®¤·¤Þ¤¹¤«?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "POST ¥Ç¡¼¥¿¤ò»ý¤Ä¥É¥­¥å¥á¥ó¥È¤«¤é¤Î¥ê¥¹¥È¤Ç¤¹¡£%s ¤òºÆÆɤ߹þ¤ß¤·¤Þ¤¹¤«?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "POST ¥¢¥¯¥·¥ç¥ó¤«¤é¤Îʸ½ñ¤Ç¤¹¤¬¡¢HEAD ¤ÏÍý²ò¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£Â³¹Ô¤·¤Þ¤¹¤«?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "¥Õ¥©¡¼¥àÁ÷¿®¥¢¥¯¥·¥ç¥ó¤Ï POST ¤Ç¤¹¤¬¡¢HEAD ¤ÏÍý²ò¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£Â³¹Ô¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "¥æ¡¼¥¶Ì¾¤â¥Ñ¥¹¥ï¡¼¥É¤â̵¤·¤Ç³¹Ô¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "³¹Ô¤·¤Þ¤¹¤« (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "¤³¤Î¥Û¥¹¥È¤Ë¤Ï POST ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "¤³¤Î URL ¤Î¤¿¤á¤Î POST ¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£POST ¥Ç¡¼¥¿¤Ï̵»ë¤µ¤ì¤Þ¤¹!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "POST ¥Ç¡¼¥¿¤òÇÑ´þ¤·¤Æ¤¤¤Þ¤¹..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "ʸ½ñ¤ÏºÆÆɤ߹þ¤ß¤µ¤ì¤Þ¤»¤ó!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "¾ì½ê: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' ¤Ï¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "¥Ç¥Õ¥©¥ë¥È¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "¥¹¥¯¥ê¡¼¥ó¤¬¾®¤µ¤¹¤®¤Þ¤¹!!! (ºÇÄã 8x35 ɬÍפǤ¹)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "¥Õ¥¡¥¤¥ë¤òÁªÂò¤·¤Æ¤¯¤À¤µ¤¤ (^G ¤Ç¥­¥ã¥ó¥»¥ë): "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¤òÁªÂò [=] ¥á¥Ë¥å¡¼ [^g] ¥­¥ã¥ó¥»¥ë: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "[l]¤³¤Î¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ëÆâ¤Ç¥ê¥ó¥¯¤òºÆÀ½ ([c]¥­¥ã¥ó¥»¥ë): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "¥Þ¥ë¥Á¥Ö¥Ã¥¯¥Þ¡¼¥¯¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¤òÁªÂò (¥Ú¡¼¥¸ %d¡¢Á´ %d ¥Ú¡¼¥¸)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       ¥Ö¥Ã¥¯¥Þ¡¼¥¯¤òÁªÂò"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ÎÀâÌÀ¤È¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤òÊÔ½¸ (2 ¤Î %d) "
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ÎÀâÌÀ¤È¥Õ¥¡¥¤¥ë̾¤òÊÔ½¸"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "ʸ»ú¤òÆþÎÏ: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "SHELL ¹½Ê¸¤Ç¤Ï¤¢¤Ê¤¿¤Î¥í¥°¥¤¥ó¥Ç¥£¥ì¥¯¥È¥ê¤ò½ü¤¤¤¿¥Õ¥¡¥¤¥ë¥Ñ¥¹¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤!"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "¤¢¤Ê¤¿¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤ò½ü¤¤¤¿¥Õ¥¡¥¤¥ë¥Ñ¥¹¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "°ì¥Ú¡¼¥¸¤¢¤¿¤ê¤Î¥ê¥ó¥¯¤ÎºÇÂç¿ô¤òĶ¤¨¤Þ¤·¤¿! Ⱦ¥Ú¡¼¥¸¤Ê¤¤¤·Æó¹Ôñ°Ì¤Î¥¹¥¯¥í¡¼¥ë¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "°ÊÁ°¤Ëˬ¤Í¤¿¥ê¥ó¥¯¤Ï°ì¤Ä¤â¤¢¤ê¤Þ¤»¤ó!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "¥á¥â¥ê¤ò»È¤¤¤­¤ê¤Þ¤·¤¿! ¥×¥í¥°¥é¥à¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "¥á¥â¥ê¤ò»È¤¤¤­¤ê¤Þ¤·¤¿! ½ªÎ»¤·¤Þ¤¹..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "¥á¥â¥ê¤¬Â­¤ê¤Þ¤»¤ó!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê/¥Õ¥¡¥¤¥ë¥Þ¥Í¡¼¥¸¥ã¤ÏÍøÍѤǤ­¤Þ¤»¤ó"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "BASE ¥¿¥°Ãæ¤Î HREF ¤ÏÀäÂÐ URL ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "¥í¥±¡¼¥·¥ç¥ó URL ¤ÏÀäÂÐŪ¤Ê¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "¥ê¥Õ¥ì¥Ã¥·¥å URL ¤ÏÀäÂÐŪ¤Ê¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"ËÜʸ¤ò´Þ¤à¥á¥Ã¥»¡¼¥¸¤ò°Ê²¼¤ØÁ÷¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"°Ê²¼¤Î¥¢¥É¥ì¥¹¤Ë¥³¥á¥ó¥È¤òÁ÷¤ê¤Þ¤¹:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" °Ê²¼¤Ø¤â¥³¥Ô¡¼¤òÁ÷¤ê¤Þ¤¹:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" °Ê²¼¤Ø¤â¥³¥Ô¡¼¤òÁ÷¤ê¤Þ¤¹:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Ctrl-G ¤Ç¥á¥Ã¥»¡¼¥¸Á÷¿®¤òÃæ»ß¤·¤Þ¤¹\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+"¤¢¤Ê¤¿¤Î¤ªÌ¾Á°¤òÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£¶õÇò¤Î¤Þ¤Þ¤À¤Èƿ̾¤Ë¤Ê¤ê¤Þ¤¹\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" ÊÖ»ö¤ò´õ˾¤¹¤ë¾ì¹ç¤Ï¡¢¥á¡¼¥ë¥¢¥É¥ì¥¹¤«¡¢¤½¤Î¾¤Î\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " Ï¢Íí¼êÃʤò¤³¤³¤Ç»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" ¥µ¥Ö¥¸¥§¥¯¥È¤òÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" ¤¢¤Ê¤¿¤Î¥á¥Ã¥»¡¼¥¸¤ò CC ¤¹¤ë¥á¡¼¥ë¥¢¥É¥ì¥¹¤òÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (¤â¤·¥³¥Ô¡¼¤·¤¿¤¯¤Ê¤±¤ì¤Ð¶õÇò¤Î¤Þ¤Þ¤Ë¤·¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" ¥á¥Ã¥»¡¼¥¸ËÜʸ¤ò³Îǧ¤·¤Æ²¼¤µ¤¤:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"³¤±¤ë¤Ë¤Ï¥ê¥¿¡¼¥ó¥­¡¼¤ò²¡¤·¤Æ²¼¤µ¤¤: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Á´¤Æºï½ü¤¹¤ë¤Ë¤Ï¥ê¥¿¡¼¥ó¥­¡¼¤ò²¡¤·¤Æ²¼¤µ¤¤: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr "Ctrl-U ¤Ç¥Ç¥Õ¥©¥ë¥ÈÃͤòºï½ü¤·¤Þ¤¹¡£\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" ¤¢¤Ê¤¿¤Î¥á¥Ã¥»¡¼¥¸¤ò°Ê²¼¤ËÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:357
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" ½ª¤ï¤Ã¤¿¤é¡¢²þ¹Ô¥­¡¼¤ò²¡¤·¤Æ¤½¤Î¹Ô¤Ë¥Ô¥ê¥ª¥É (.) ¤ò°ì¤Ä"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:358
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" ÆþÎϤ·¡¢¤â¤¦°ìÅÙ²þ¹Ô¥­¡¼¤ò²¡¤·¤Æ²¼¤µ¤¤¡£"
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s ¤«¤é¤Î¥¯¥Ã¥­¡¼: %.*s=%.*s ¼õ¤±ÉÕ¤±¤Þ¤¹¤«? (Y/N/Always/neVer)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "ÉÔÀµ¤Ê¥¯¥Ã¥­¡¼¥É¥á¥¤¥ó= %s ¤ò %s ¤È¤·¤Æ¼õ¤±ÉÕ¤±¤Þ¤¹¤«?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "ÉÔÀµ¤Ê¥¯¥Ã¥­¡¼¥Ñ¥¹ = %s ¤ò %s ¤Î¥×¥ê¥Õ¥£¥Ã¥¯¥¹¤È¤·¤Æ¼õ¤±ÉÕ¤±¤Þ¤¹¤«? "
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "¤³¤Î¥¯¥Ã¥­¡¼¤ò¼õ¤±ÉÕ¤±¤Þ¤¹¡£"
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "¤³¤Î¥¯¥Ã¥­¡¼¤òµñÈݤ·¤Þ¤¹¡£"
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "¥¯¥Ã¥­¡¼È¢¤Ï¶õ¤Ã¤Ý¤Ç¤¹¡£"
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "¥¯¥Ã¥­¡¼È¢¤Ï¶õ¤Ã¤Ý¤Ç¤¹¡£"
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "¥ê¥ó¥¯¤òé¤ë¤È¡¢¥¯¥Ã¥­¡¼¤ä¥É¥á¥¤¥óÁ´ÂΤò¡Ö¿©¤Ù¡×¤¿¤ê¡¢"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "¥É¥á¥¤¥ó¤´¤È¤Î¥¯¥Ã¥­¡¼¼õ¤±ÉÕ¤±ÀßÄê¤òÊѤ¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£"
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(¥¯¥Ã¥­¡¼¤ò¾ï¤ËµñÈݤ·¤Þ¤¹)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(¥¯¥Ã¥­¡¼¤ò¾ï¤Ë¼õ¤±ÉÕ¤±¤Þ¤¹)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(¥¯¥Ã¥­¡¼¼õ¤±ÉÕ¤±¤Ï¤½¤Î¤Ä¤ÉȽÃǤ·¤Þ¤¹)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(±Ê³Ū¤Ê¥¯¥Ã¥­¡¼)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(¥¿¥¤¥È¥ë¤Ê¤·)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(̾Á°¤Ê¤·)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Ãͤʤ·)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "¤Ê¤·"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(¥»¥Ã¥·¥ç¥ó¤Î½ª¤ï¤ê)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "¤³¤Î¥¯¥Ã¥­¡¼¤òºï½ü¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "¥¯¥Ã¥­¡¼¤Ï¿©¤Ù¤é¤ì¤Æ¤·¤Þ¤¤¤Þ¤·¤¿!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "¤³¤Î¶õ¤Ë¤Ê¤Ã¤¿¥É¥á¥¤¥ó¤òºï½ü¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "¥É¥á¥¤¥ó¤Ï¿©¤Ù¤é¤ì¤Æ¤·¤Þ¤¤¤Þ¤·¤¿!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "¥É¥á¥¤¥ó¤Î¥¯¥Ã¥­¡¼¤ò[d]ºï½ü¡¢¾ï¤Ë[a]¼õÉÕ[v]µñÈÝ¡¢[p]ȽÃÇ ([c]¥­¥ã¥ó¥»¥ë)? "
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "¥É¥á¥¤¥ó¤ò[d]ºï½ü¡¢¾ï¤Ë[a]¼õÉÕ[v]µñÈÝ¡¢[p]ȽÃÇ ([c]¥­¥ã¥ó¥»¥ë)? "
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "¥É¥á¥¤¥ó¤Î¥¯¥Ã¥­¡¼¤Ï¤¹¤Ù¤Æ¿©¤Ù¤é¤ì¤Æ¤·¤Þ¤¤¤Þ¤·¤¿!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "¥É¥á¥¤¥ó %s ¤«¤é¤Ï¾ï¤Ë¼õ¤±ÉÕ¤±¤Þ¤¹¡£"
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "¥É¥á¥¤¥ó %s ¤«¤é¤ÏÁ´¤ÆµñÈݤ·¤Þ¤¹¡£"
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "¥É¥á¥¤¥ó %s ¤«¤é¤Ï¤½¤Î¤Ä¤ÉȽÃǤ·¤Þ¤¹¡£"
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "¤³¤Î¥É¥á¥¤¥ó¤Î¥¯¥Ã¥­¡¼¤ò¤¹¤Ù¤Æºï½ü¤·¤Þ¤¹¤«?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "¥¯¥Ã¥­¡¼È¢¤Î¥¯¥Ã¥­¡¼¤Ï¤ß¤ó¤Ê¿©¤Ù¤é¤ì¤Æ¤·¤Þ¤¤¤Þ¤·¤¿!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "¥Ý¡¼¥È 19 ¤ò URL ¤Ç»ØÄꤹ¤ë¤³¤È¤Ïǧ¤á¤é¤ì¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "¥Ý¡¼¥È 25 ¤ò URL ¤Ç»ØÄꤹ¤ë¤³¤È¤Ïǧ¤á¤é¤ì¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "¥Ý¡¼¥È %lu ¤ò URL ¤Ç»ØÄꤹ¤ë¤³¤È¤Ïǧ¤á¤é¤ì¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "URL ¤ËÉÔÀµ¤Ê¥Ý¡¼¥È¥Õ¥£¡¼¥ë¥É¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "HTML ¥¨¥ì¥á¥ó¥È¤Î¥Í¥¹¥Æ¥£¥ó¥°¤¬¸Â³¦¤òĶ¤¨¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "ÉÔÀµ¤ÊÉôʬŪ»²¾È¤Ç¤¹! ÀèƬ¥É¥Ã¥È¤òºï¤ê¤Þ¤¹¡£"
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "ÄÉÀ×¥í¥°¤ò³«¤¯¤Î¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£ÄÉÀ×½ªÎ»!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Lynx ÄÉÀ×¥í¥°"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "¤³¤Î¥»¥Ã¥·¥ç¥ó¤Ç³«»Ï¤µ¤ì¤¿ÄÉÀ×¥í¥°¤Ï¤¢¤ê¤Þ¤»¤ó¡£"
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "°ì»þŪ¥Õ¥¡¥¤¥ë¿ô¤¬¸Â³¦¤ò±Û¤¨¤Þ¤·¤¿!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É¤ÎÃͤ¬¥Ð¥Ã¥Õ¥¡¤ÎŤµ¤ò±Û¤¨¤Þ¤·¤¿¡£½ªÃ¼¤òÀÚ¤ê¤Þ¤¹¡£"
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "½ªÃ¼¤ò¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É¤ÎÃͤÎÀèƬ¤È·ë¹ç¤¹¤ë¤è¤¦Êѹ¹¤·¤Þ¤·¤¿¡£"
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê±ÜÍ÷¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "ÁªÂòŪ¥¢¥¯¥»¥¹¤Ï¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï»È¤¨¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "¥Þ¥ë¥Á¥Õ¥©¡¼¥Þ¥Ã¥È: ¥Ç¥£¥ì¥¯¥È¥ê¤Î¥¹¥­¥ã¥ó¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£"
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ÏÆɤá¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Í׵ᤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "ÅÁ㤹¤ëŬÅö¤Êɽ¸½¤ò¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡£"
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Ÿ³«¤¹¤ë¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "¥Õ¥¡¥¤¥ë:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " ¥Ç¥£¥ì¥¯¥È¥ê"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "°Ê²¼¤Þ¤Ç: "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "¥µ¡¼¥Ð¤«¤é±þÅú¤¬¤¢¤ê¤Þ¤»¤ó!"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "CSO ¥¤¥ó¥Ç¥Ã¥¯¥¹"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"¤³¤ì¤ÏCSO¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¸¡º÷²Äǽ¤Ê¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ç¤¹¡£\n"
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "CSO ¸¡º÷·ë²Ì"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "%s ¤Ç¸¡º÷¤Ë¼ºÇÔ\n"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+" 's' ¥­¡¼¤ò²¡¤·¤Æ¸¡º÷¤¹¤ë¥­¡¼¥ï¡¼¥É¤òÆþÎϤ·¤Æ²¼¤µ¤¤¡£\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"¤³¤ì¤Ï¸¡º÷²Äǽ¤Ê Gopher ¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ç¤¹¡£\n"
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "Gopher ¥¤¥ó¥Ç¥Ã¥¯¥¹"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "Gopher ¥á¥Ë¥å¡¼"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr " ¸¡º÷·ë²Ì"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "CSO/PH ¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®Ãæ¡£"
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "Gopher ¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®Ãæ¡£"
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO/PH ¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤·¤Þ¤·¤¿¡£±þÅú¤òÂԤäƤ¤¤Þ¤¹¡£"
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopher ¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤·¤Þ¤·¤¿¡£±þÅú¤òÂԤäƤ¤¤Þ¤¹¡£"
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"¸¡º÷¤¹¤ë¥­¡¼¥ï¡¼¥É¤òÆþÎϤ·¤Æ²¼¤µ¤¤¡£\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"ÆþÎϤ·¤¿¥­¡¼¥ï¡¼¥É¤Ë¤è¤ê¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹Æâ¤Î¸Ä¿Í»á̾¤ò"
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr "¸¡º÷¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£\n"
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "Àܳ¤¬ÊĤ¸¤é¤ì¤¿¤Î¤«¤â ???"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr "¥Ë¥å¡¼¥¹ POST ¤Î¤¿¤á¤Î°ì»þ¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "¤³¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ç¤Ï¥Ë¥å¡¼¥¹¤ò SSL ·Ðͳ¤Ç¥Ý¥¹¥È¤¹¤ëµ¡Ç½¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "¥¹¥¿¥¤¥ë %d `%s'¡¢SGML:%s¡£ ¥Õ¥©¥ó¥È %s %.1f ¥Ý¥¤¥ó¥È¡£\n"
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tÄ´À°=%d¡¢%d ¥¿¥Ö¡£(Á°¤Ë %.0f¡¢¸å¤Ë %.0f)\n"
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\t¥¿¥Ö ¼ïÎà=%d (%.0f ¤Ë¤ª¤±¤ë)\n"
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "¥æ¡¼¥¶Ì¾¤È¥Ñ¥¹¥ï¡¼¥É̵¤·¤Ç¤Ï³¹Ô¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "ǧ¾ÚÉÕ¤­¤ÇºÆ»î¹Ô¤Ç¤­¤Þ¤»¤ó! ¥µ¡¼¥Ð¤Î¥¦¥§¥Ö¥Þ¥¹¥¿¤ËÏ¢Íí¤·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "¥×¥í¥­¥·Ç§¾ÚÉÕ¤­¤ÇºÆ»î¹Ô¤Ç¤­¤Þ¤»¤ó! ¥µ¡¼¥Ð¤Î¥¦¥§¥Ö¥Þ¥¹¥¿¤ËÏ¢Íí¤·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr "¥×¥í¥­¥·Ç§¾Ú¾ðÊóÉÕ¤­¤ÇºÆ»î¹Ô¤·¤Æ¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:799
+#, fuzzy, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL¥¨¥é¡¼: ¥Û¥¹¥È(%s) ¤¬ cert(%s) ¤È°ìÃפ·¤Þ¤»¤ó ³¤±¤Þ¤¹¤«?"
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: ¥ê¥¿¡¼¥ó¥á¥Ã¥»¡¼¥¸¤¬Â礭¤¹¤®¤Þ¤¹¡£"
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr "WAIS ¸¡º÷ʸ»úÎó¤òÆþÎÏ: "
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "HTTP0 ¥ê¥¯¥¨¥¹¥È¤È¤·¤ÆºÆÁ÷¿®¤·¤Æ¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "%d ¥Ð¥¤¥ÈžÁ÷ºÑ"
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "¥Ç¡¼¥¿Å¾Á÷´°Î»"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "%d ¹ÔÌÜ(%s Ãæ)¤Î½èÍý¤Ç¥¨¥é¡¼\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr "¥¢¥É¥ì¥¹¥ê¥¹¥È¥Ú¡¼¥¸"
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr "¥³¥ó¥Ñ¥¤¥ë»þ¤ËÄêµÁ¤µ¤ì¤¿ÀßÄê"
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr "¥¯¥Ã¥­¡¼È¢"
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr "¸½ºß¤Î¥­¡¼¥Þ¥Ã¥×"
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "¥Õ¥¡¥¤¥ë´ÉÍý¥ª¥×¥·¥ç¥ó"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "¥À¥¦¥ó¥í¡¼¥ÉÀè¤òÁªÂò"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "ÍúÎò¥Ú¡¼¥¸"
+
+#: LYMessages.c:820
+#, fuzzy
+msgid "Cache Jar"
+msgstr "¥¯¥Ã¥­¡¼È¢"
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr "¥ê¥¹¥È¥Ú¡¼¥¸"
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "Lynx.cfg ¤Î¾ðÊó"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr "ÊÑ´¹¤µ¤ì¤¿ Mosaic ¤Î Hotlist"
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "ÀßÄê¥á¥Ë¥å¡¼"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "¥Õ¥¡¥¤¥ë¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤ÎÀßÄê"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "°õºþ¤ÎÀßÄê"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "¸½ºß¤Îʸ½ñ¤Ë¤Ä¤¤¤Æ¤Î¾ðÊó"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "ºÇ¶á¤Î¥¹¥Æ¡¼¥¿¥¹¥é¥¤¥ó¥á¥Ã¥»¡¼¥¸"
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "¥¢¥Ã¥×¥í¡¼¥É¤ÎÀßÄê"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr "ˬ¤ì¤¿¥ê¥ó¥¯°ìÍ÷"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "¤³¤Á¤é¤â»²¾È:"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr "¤¢¤Ê¤¿¤Î"
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr "¥é¥ó¥¿¥¤¥à¥ª¥×¥·¥ç¥ó¸þ¤±"
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "¥³¥ó¥Ñ¥¤¥ë»þ¤Î¥ª¥×¥·¥ç¥ó"
+
+#: LYMessages.c:837
+#, fuzzy
+msgid "color-style configuration"
+msgstr "ºÇ½é¤Ë»²¾È¤µ¤ì¤ëÀßÄê¥Õ¥¡¥¤¥ë¤Ï"
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "ºÇ¿·ÈÇ"
+
+#: LYMessages.c:839
+msgid "pre-release version"
+msgstr "¥×¥ì¥ê¥ê¡¼¥¹ÈÇ"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "³«È¯ÈÇ"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"°Ê²¼¤Î¥Ç¡¼¥¿¤Ï¤³¤Î Lynx ¤Î¥³¥Ô¡¼¤¬¼«Æ°Åª¤ËÀßÄê/¹½ÃÛ¤µ¤ì¤ë²áÄø¤Ç\n"
+"ÆÀ¤é¤ì¤¿¤â¤Î¤Ç¤¹¡£¥Ð¥°¤òÊó¹ð¤¹¤ëºÝ¤Ë¤Ï¡¢¤³¤Î¥Ú¡¼¥¸¤Î¥³¥Ô¡¼¤ò\n"
+"´Þ¤á¤Æ¤¯¤À¤µ¤¤¡£"
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"°Ê²¼¤Î¥Ç¡¼¥¿¤Ï¡¢¤³¤Î Lynx ¤Î¥³¥Ô¡¼¤¬¥Ó¥ë¥É¤µ¤ì¤¿ºÝ¤Ë¡¢¼«Æ°Åª¤ËÀßÄꤵ¤ì¤¿\n"
+"¥³¥ó¥Ñ¥¤¥ë»þÄêµÁ¤È¤·¤Æ»È¤ï¤ì¤¿¤â¤Î¤Ç¤¹¡£"
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "  [c]ºîÀ® [d]¥À¥¦¥ó¥í¡¼¥É [e]ÊÔ½¸ [f]¥Õ¥ë¥á¥Ë¥å¡¼ [m]Êѹ¹ [r]ºï½ü [t]¥¿¥° [u]¥¢¥Ã¥×¥í¡¼¥É     \n"
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr "¸½ºß¤Î¥ê¥ó¥¯¤Î¥¹¥Æ¡¼¥¿¥¹¤ÎÆþ¼ê¤Ë¼ºÇÔ¤·¤Þ¤·¤¿!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "ÆÃÊÌ URL ¤Ï¸½ºß¤Î¥Õ¥¡¥¤¥ëµö²Ä¥á¥Ë¥å¡¼¤«¤é¤Î¤ßÍ­¸ú¤Ç¤¹!"
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr "³°Éô¥µ¥Ý¡¼¥È¤Ï¸½ºß̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£"
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+msgid "Changing working-directory is currently disabled."
+msgstr "ºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ÎÊѹ¹¤Ï¸½ºß̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£"
+
+#: LYMessages.c:864
+msgid "Linewrap OFF!"
+msgstr "¹Ô¥é¥Ã¥× ¥ª¥Õ!"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr "¹Ô¥é¥Ã¥× ¥ª¥ó!"
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Æþ¤ì»Ò¥Æ¡¼¥Ö¥ë¤Î²òÀÏ ¥È¥°¥ë¥ª¥Õ! ºÆÆɤ߹þ¤ßÃæ..."
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Æþ¤ì»Ò¥Æ¡¼¥Ö¥ë¤Î²òÀÏ ¥È¥°¥ë¥ª¥ó! ºÆÆɤ߹þ¤ßÃæ..."
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "¹Ô¥é¥Ã¥×¤¬Í­¸ú¤Ê´Ö¡¢°ÜÆ°¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
+
+#: LYMessages.c:869
+msgid "Trace not supported"
+msgstr "ÄÉÀפϥµ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\t¥¤¥ó¥Ç¥ó¥È: ºÇ½é=%.0f ¤½¤Î¾=%.0f¡¢¹â¤µ=%.1f Desc=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "'%s' ¤Î¤¿¤á¤Î %s '%s%s' ¤Ë¤ª¤±¤ë¥æ¡¼¥¶Ì¾:"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "¤³¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ï¤³¤Î¥¹¥­¡¼¥à¸þ¤±¤Ë¥×¥í¥­¥·Ç§¾Ú¾ðÊó¤ò¹½À®¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó"
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "¤³¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ï¤³¤Î¥¹¥­¡¼¥à¸þ¤±¤Ëǧ¾Ú¾ðÊó¤ò¹½À®¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó"
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "ÉÔÀµ¤Ê¥Ø¥Ã¥À '%s%s%s%s%s' ¤Ç¤¹"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "¥×¥í¥­¥·Ç§¾Ú¤¬É¬ÍפǤ¹ -- ºÆ»î¹Ô¤·¤Æ¤¤¤Þ¤¹"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "ǧ¾Ú̵¤·¤Î¥¢¥¯¥»¥¹¤ÏµñÈݤµ¤ì¤Þ¤·¤¿ -- ºÆ»î¹Ô¤·¤Æ¤¤¤Þ¤¹"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "µ¬Â§¤Ë¤è¤ê¥¢¥¯¥»¥¹¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "POST ¥³¥ó¥Æ¥ó¥Ä¤ò´Þ¤à¥É¥­¥å¥á¥ó¥È¤Ï¥­¥ã¥Ã¥·¥å¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó¤Ç¤·¤¿¡£ºÆÁ÷¿®¤·¤Þ¤¹¤«?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8587
+msgid "Loading incomplete."
+msgstr "Æɤ߹þ¤ß¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "*** HTAccess: ¥½¥±¥Ã¥È¤«¥Õ¥¡¥¤¥ë¤ÎÈֹ椬¡¢µì¼°¤ÎÆɤ߹þ¤ß¥ë¡¼¥Á¥ó¤«¤éÊÖ¤µ¤ì¤Æ¤¤¤Þ¤¹!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, fuzzy, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: ¥½¥Õ¥È¥¦¥§¥¢ÆâÉô¤Î¥¨¥é¡¼¤Ç¤¹¡£lynx-dev@sig.net ¤Ë¥á¡¼¥ë¤ÇÊó¹ð¤·¤Æ¤¯¤À¤µ¤¤!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Ê֤äƤ­¤¿¥¹¥Æ¡¼¥¿¥¹¤Ï: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7783
+msgid "Can't Access"
+msgstr "¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "ʸ½ñ¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "¥æ¡¼¥¶ %s@%s ¤Î¥Ñ¥¹¥ï¡¼¥É¤òÆþÎÏ:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "FTP ¥Û¥¹¥È¤ËÀܳ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "¥Þ¥¹¥¿¡¼¥½¥±¥Ã¥È¤¬ÊĤ¸¤Þ¤¹"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "¥Þ¥¹¥¿¡¼¥½¥±¥Ã¥ÈÍÑ¥½¥±¥Ã¥È"
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "FTP ¥Ç¥£¥ì¥¯¥È¥ê¤ò¼õ¿®Ãæ"
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "%d ¥Ð¥¤¥ÈžÁ÷ºÑ (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr "¥Ç¡¼¥¿¤ËÀܳ"
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "FTP ¥Õ¥¡¥¤¥ë¤ò¼õ¿®Ãæ"
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "finger Àܳ¤òÍѰդǤ­¤Þ¤»¤ó¤Ç¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "¥Ç¡¼¥¿¤¬Æɤ߹þ¤á¤Þ¤»¤ó¤Ç¤·¤¿(finger URL ¤Ë¥µ¥¤¥È̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó)"
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "ÉÔÀµ¤Ê¥Ý¡¼¥ÈÈÖ¹æ¤Ç¤¹ - ¥Ý¡¼¥È 79 ¤Î¤ß¤ò»È¤¤¤Þ¤¹!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "finger ¥Û¥¹¥È¤ËÀܳ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "finger ¥µ¡¼¥Ð¤¬±þÅú¤·¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "¥Ë¥å¡¼¥¹¥Û¥¹¥È '%s' ¤Ç¤Î¥æ¡¼¥¶Ì¾:"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "¥æ¡¼¥¶Ì¾¤òÊѹ¹¤·¤Þ¤¹¤«?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "¥æ¡¼¥¶Ì¾:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "¥Ë¥å¡¼¥¹¥Û¥¹¥È '%s' ¤Î¥Ñ¥¹¥ï¡¼¥É:"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤·¤Þ¤¹¤«?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "³ºÅö¤¹¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤»¤ó: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"¤³¤Î¥°¥ë¡¼¥×Æâ¤Ë¤Ïµ­»ö¤¬¤¢¤ê¤Þ¤»¤ó¡£\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"¤³¤ÎÈϰϤˤϵ­»ö¤¬¤¢¤ê¤Þ¤»¤ó¡£\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s¡¢µ­»ö %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "°ÊÁ°¤Îµ­»ö"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"¸½ºß %d Ä̤ۤɤε­»ö¤ò %s ¤ÇÆɤळ¤È¤¬¤Ç¤­¤Þ¤¹¡£ID ¤Ï°Ê²¼¤ÎÄ̤ê:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "°Ê²¼¤ÇÆɤá¤ëÁ´µ­»ö: "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "¤½¤Î¸å¤Îµ­»ö"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "°Ê²¼¤Ø¥Ý¥¹¥È: "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "¤³¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ë¤Ï SNEWS URL ¤Î¥µ¥Ý¡¼¥È¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr "À¸¥Æ¥­¥¹¥È¸þ¤±¤Î¥¿¡¼¥²¥Ã¥È¤¬¤¢¤ê¤Þ¤»¤ó!"
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "¥Ë¥å¡¼¥¹¥Û¥¹¥È¤ËÀܳÃæ ..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "%s ¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "¥Ë¥å¡¼¥¹¾ðÊó¤¬Æɤá¤Þ¤»¤ó¡£¥Ë¥å¡¼¥¹¥Û¥¹¥È %.20s ¤Î±þÅú: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "¥Ë¥å¡¼¥¹¾ðÊó¤¬Æɤá¤Þ¤»¤ó¡£¥Û¥¹¥È %s ¤«¤é¤Î±þÅú¤Ï¶õ¤Ç¤¹"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "ÍøÍѲÄǽ¤Ê¥Ë¥å¡¼¥¹¥°¥ë¡¼¥×¤Î¥ê¥¹¥È¤òÆɤ߹þ¤ßÃæ¡£"
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "¥Ë¥å¡¼¥¹¥°¥ë¡¼¥×Æâ¤Îµ­»ö¤Î¥ê¥¹¥È¤òÆɤ߹þ¤ßÃæ¡£"
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "¥Ë¥å¡¼¥¹µ­»ö¤òÆɤ߹þ¤ßÃæ¡£"
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr "¤¦¤¦¤à¡¢Í׵ᤵ¤ì¤¿¥Ë¥å¡¼¥¹¤òÆɤ߹þ¤á¤Þ¤»¤ó¤Ç¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "¥¢¥É¥ì¥¹¤ËÉÔÀµ¤Ê¥Ý¡¼¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "¥¢¥É¥ì¥¹Ä¹¤¬ÉÔÀµ¤Î¤è¤¦¤Ç¤¹"
+
+#: WWW/Library/Implementation/HTTCP.c:1607 WWW/Library/Implementation/HTTCP.c:1625
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "¥ê¥â¡¼¥È¥Û¥¹¥È %s ¤Î°ÌÃÖ¤òÆÃÄê¤Ç¤­¤Þ¤»¤ó¡£"
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1622 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "%s ¤ÏÉÔÀµ¤Ê¥Û¥¹¥È̾¤Ç¤¹"
+
+#: WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "%s ¤Ç %s ¤ËÀܳÃæ"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+msgid "socket failed."
+msgstr "¥½¥±¥Ã¥È¤¬¼ºÇÔ¤·¤Þ¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTTCP.c:1660
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "¥½¥±¥Ã¥È¤¬¼ºÇÔ¤·¤Þ¤·¤¿: ¥Õ¥¡¥ß¥ê %d ¥¢¥É¥ì¥¹ %s ¥Ý¡¼¥È %s¡£"
+
+#: WWW/Library/Implementation/HTTCP.c:1684
+msgid "Could not make connection non-blocking."
+msgstr "Àܳ¤òÈó¥Ö¥í¥Ã¥­¥ó¥°¤Ë¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTTCP.c:1752
+msgid "Connection failed (too many retries)."
+msgstr "Àܳ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿ (ºÆ»î¹Ô¤¬Â¿¤¹¤®¤Þ¤¹)"
+
+#: WWW/Library/Implementation/HTTCP.c:1945
+msgid "Could not restore socket to blocking."
+msgstr "¥Ö¥í¥Ã¥­¥ó¥°¤Î¤¿¤á¤Î¥½¥±¥Ã¥È¤òÉüµì¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTTCP.c:2011
+msgid "Socket read failed for 180,000 tries."
+msgstr "180,000 ²ó»î¹Ô¤·¤Þ¤·¤¿¤¬¥½¥±¥Ã¥È¤ÎÆɤ߹þ¤ß¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "¥¢¥É¥ì¥¹¤Ï¥æ¡¼¥¶Ì¾ %s ¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "¤³¤Î¥¯¥é¥¤¥¢¥ó¥È¤Ï HTTPS URL ¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr "¥ê¥â¡¼¥È¥Û¥¹¥È¤ËÀܳ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTTP.c:669
+msgid "Retrying connection without TLS."
+msgstr "TLS¤ò»È¤ï¤º¤ËÀܳ¤òºÆ»î¹Ô¤·¤Æ¤¤¤Þ¤¹¡£"
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+#, fuzzy
+msgid "the certificate has been revoked"
+msgstr "¥¯¥Ã¥­¡¼¤Ï¿©¤Ù¤é¤ì¤Æ¤·¤Þ¤¤¤Þ¤·¤¿!"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL¥¨¥é¡¼: ¥Û¥¹¥È(%s) ¤¬ cert(%s) ¤È°ìÃפ·¤Þ¤»¤ó ³¤±¤Þ¤¹¤«?"
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "¥»¥­¥å¥¢¤Ê %d ¥Ó¥Ã¥È %s (%s) HTTP Àܳ"
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "HTTP ¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®Ãæ"
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr "ÆÍÁ³¤Î¥Í¥Ã¥È¥ï¡¼¥¯½ñ¤­¹þ¤ß¥¨¥é¡¼: Àܳ¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP ¥ê¥¯¥¨¥¹¥È¤òÁ÷¿®¤·¤Þ¤·¤¿: ±þÅú¤òÂԤäƤ¤¤Þ¤¹"
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr "ÆÍÁ³¤Î¥Í¥Ã¥È¥ï¡¼¥¯Æɤ߹þ¤ß¥¨¥é¡¼: Àܳ¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿¡£"
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr "ͽ´ü¤·¤Ê¤¤ Informational Status ¤ò¼õ¤±¼è¤ê¤Þ¤·¤¿¡£"
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr "¥ê¥¯¥¨¥¹¥È¤¬¼Â¹Ô¤µ¤ì¤Þ¤·¤¿¡£¥³¥ó¥Æ¥ó¥È¤ò¥ê¥»¥Ã¥È¤·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr "ͽ´ü¤»¤Ì 304 Not Modified ¥¹¥Æ¡¼¥¿¥¹¤ò¼õ¤±¼è¤ê¤Þ¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr "POST ¥³¥ó¥Æ¥ó¥È¤Î¥ê¥À¥¤¥ì¥¯¥·¥ç¥ó¤Ë¤Ï¥æ¡¼¥¶¤Î¾µÇ§¤¬É¬ÍפǤ¹¡£"
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "POST ¥³¥ó¥Æ¥ó¥È¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹¡£±Ê³Ū¤Ê¥ê¥À¥¤¥ì¥¯¥·¥ç¥ó¤ò°ì»þŪ¤Ê¤â¤Î¤È¤·¤Æ°·¤¤¤Þ¤¹¡£\n"
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr "¥¢¥¯¥»¥¹Ç§¾Ú¾ðÊóÉÕ¤­¤ÇºÆ»î¹Ô¤·¤Æ¤¤¤Þ¤¹¡£"
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr "401 ¥á¥Ã¥»¡¼¥¸ËÜÂΤò¸«¤Þ¤¹¤«?"
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr "407 ¥á¥Ã¥»¡¼¥¸ËÜÂΤò¸«¤Þ¤¹¤«?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr "¥µ¡¼¥Ð¤«¤é¤ÎÉÔÌÀ¤Ê¥¹¥Æ¡¼¥¿¥¹¥ê¥×¥é¥¤¤Ç¤¹!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "¥ê¥â¡¼¥È %s ¥»¥Ã¥·¥ç¥ó:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "WAIS ¥µ¡¼¥Ð¤ËÀܳ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Æɤ߹þ¤ß¤Î¤¿¤á¤Î WAIS Àܳ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "¿ÇÃÇ¥³¡¼¥É¤Ï "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "¥¤¥ó¥Ç¥Ã¥¯¥¹ "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " ¤Ï°Ê²¼¤Î %d ¥¢¥¤¥Æ¥à%s¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹¡£¤³¤ì¤¬´ØÏ¢¤¹¤ë¤Î¤Ï\""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "³Æ¥¨¥ó¥È¥ê¤Î¸å¤ÎºÇ½é¤Î¿ô»ú¤Ï¤½¤ÎÁêÂÐ¥¹¥³¥¢¤Ç¤¢¤ë "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "ÂèÆó¤Î¿ô»ú¤Ï¥¢¥¤¥Æ¥àÆâ¤Ë¤ª¤±¤ë¹ÔÈÖ¹æ¤Ç¤¹¡£"
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (ÉÔÀµ¤Ê¥Õ¥¡¥¤¥ë̾)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(ÉÔÀµ¤Ê¥É¥­¥å¥á¥ó¥È ID)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(û¤¤¥Ø¥Ã¥À¥ì¥³¡¼¥É¡¢É½¼¨ÉÔǽ)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Ť¤¥Ø¥Ã¥À¥ì¥³¡¼¥É¡¢É½¼¨ÉÔǽ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"¥Æ¥­¥¹¥È¥ì¥³¡¼¥É\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"¥Ø¥Ã¥É¥é¥¤¥ó¥ì¥³¡¼¥É¡¢É½¼¨ÉÔǽ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"¥³¡¼¥É¥ì¥³¡¼¥É¡¢É½¼¨ÉÔǽ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "WAIS URL ¤Î¹½Ê¸¥¨¥é¡¼¤Ç¤¹¡£"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr "(WAIS ¥¤¥ó¥Ç¥Ã¥¯¥¹)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS ¥¤¥ó¥Ç¥Ã¥¯¥¹: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "¤³¤ì¤Ï°Ê²¼¤ò¸¡º÷¤¹¤ë¤¿¤á¤Î¥ê¥ó¥¯¤Ç¤¹: "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS ¥¤¥ó¥Ç¥Ã¥¯¥¹¡£\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"¸¡º÷¥³¥Þ¥ó¥É 's' ¤òÆþÎϤ·¡¢¸¡º÷¤¹¤ë¸ÀÍÕ¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (´Þ¤Þ¤ì¤Æ¤¤¤ë¤Î¤Ï "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS ¥µ¡¼¥Á ÂоÝ: \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" ´Þ¤Þ¤ì¤ë¤Î¤Ï: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: ¥ê¥¯¥¨¥¹¥È¤¬Â礭¤¹¤®¤Þ¤¹¡£"
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "WAIS ¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò¸¡º÷¤·¤Æ¤¤¤Þ¤¹..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "¸¡º÷¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿¡£"
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "WAIS ¥É¥­¥å¥á¥ó¥È¤Î·Á¼°¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: ¥ê¥¯¥¨¥¹¥È¤¬Ä¹¤¹¤®¤Þ¤¹¡£"
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "WAIS ¥É¥­¥å¥á¥ó¥È¤ò¼èÆÀÃæ..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Ê֤äƤ­¤¿¥Æ¥­¥¹¥È¤Ï¤¢¤ê¤Þ¤»¤ó!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr " °Ê²¼¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Ç»ØÄꤵ¤ì¤Æ*¤¤¤Þ¤»¤ó*: "
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr " WAIS ¥½¡¼¥¹¥Õ¥¡¥¤¥ë"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " ÀâÌÀ"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "¥ê¥ó¥¯¤Ë¥¢¥¯¥»¥¹"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "ľÀÜ¥¢¥¯¥»¥¹"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr "(¤¢¤ë¤¤¤Ï¥×¥í¥­¥·¥µ¡¼¥Ð·Ðͳ¤Ç¡¢¤â¤·ÄêµÁ¤µ¤ì¤Æ¤¤¤ì¤Ð)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "¥á¥ó¥Æ¥Ê"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "¥Û¥¹¥È"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "¥á¥â¥ê¤ò»È¤¤¤­¤ê¤Þ¤·¤¿¡£É½¼¨¤òÃæÃǤ·¤Þ¤¹!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "¥á¥â¥ê¤ò»È¤¤¤­¤ê¤Þ¤·¤¿¡£Å¾Á÷¤òÃæÃǤ·¤Þ¤¹!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr "*** ¥á¥â¥ê¤ò»È¤¤¤­¤ê¤Þ¤·¤¿ ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "̤ÃΤΥե£¡¼¥ë¥É¤Þ¤¿¤Ï¥ê¥ó¥¯¤Ç¤¹"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "¥Æ¥­¥¹¥ÈÆþÎÏ¥Õ¥£¡¼¥ë¥É"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "¥Ñ¥¹¥ï¡¼¥ÉÆþÎÏ¥Õ¥£¡¼¥ë¥É"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "¥Á¥§¥Ã¥¯¥Ü¥Ã¥¯¥¹"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "¥é¥¸¥ª¥Ü¥¿¥ó"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "Á÷¿®¥Ü¥¿¥ó"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "¥ê¥»¥Ã¥È¥Ü¥¿¥ó"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "¥Ý¥Ã¥×¥¢¥Ã¥×¥á¥Ë¥å¡¼"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "±£¤µ¤ì¤¿¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "¥Æ¥­¥¹¥ÈÆþÎÏ¥¨¥ê¥¢"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr "ÈÏ°ÏÆþÎÏ¥Õ¥£¡¼¥ë¥É"
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "¥Õ¥¡¥¤¥ëÆþÎÏ¥Õ¥£¡¼¥ë¥É"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr "¥Æ¥­¥¹¥ÈÁ÷¿®¥Õ¥£¡¼¥ë¥É"
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "²èÁüÁ÷¿®¥Ü¥¿¥ó"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr "keygen ¥Õ¥£¡¼¥ë¥É"
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "̤ÃΤΥե©¡¼¥à¥Õ¥£¡¼¥ë¥É"
+
+#: src/GridText.c:10320
+msgid "Can't open file for uploading"
+msgstr "¥¢¥Ã¥×¥í¡¼¥É¤¹¤ë¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£"
+
+#: src/GridText.c:11479
+#, c-format
+msgid "Submitting %s"
+msgstr "%s ¤òÁ÷¿®Ãæ"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12532
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "¥Ï¥ó¥°¸¡½Ð: TextAnchor ¹½Â¤ÂΤ¬²õ¤ì¤Þ¤·¤¿ - ½ªÎ»¤ò¤ª´«¤á¤·¤Þ¤¹!"
+
+#. don't show previous state
+#: src/GridText.c:12669
+msgid "Wrap lines to fit displayed area?"
+msgstr "ɽ¼¨Îΰè¤Ë¼ý¤Þ¤ë¤è¤¦¹Ô¤òÀÞ¤êÊÖ¤·¤Þ¤¹¤«?"
+
+#: src/GridText.c:12721
+msgid "Very long lines have been wrapped!"
+msgstr "Ť¹¤®¤ë¹Ô¤ÏÀÞ¤êÊÖ¤µ¤ì¤Þ¤¹!"
+
+#: src/GridText.c:13226
+msgid "Very long lines have been truncated!"
+msgstr "Ť¹¤®¤ë¹Ô¤ÏÀÚ¤êµÍ¤á¤é¤ì¤Þ¤¹!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:359 src/LYShowInfo.c:363
+msgid "bytes"
+msgstr "¥Ð¥¤¥È"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "%s Æɤ߹þ¤ßºÑ"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "%s (%s Ãæ) Æɤ߹þ¤ßºÑ"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr "¡¢%s/ÉÃ"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (%s ÉÃÄä»ßÃæ)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr "¡¢ ETA %s"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " ([z] ¤ÇÃæ»ß)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "yes"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "no"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "ÀâÌÀ:"
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr "(¤Ê¤·)"
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr "¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹:"
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(ÉÔÌÀ)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "ʸ½ñ¤Ë¤Ï±£¤·¥ê¥ó¥¯¤·¤«¤¢¤ê¤Þ¤»¤ó¡£[l]¤«¤éé¤Ã¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr "¥½¡¼¥¹¥­¥ã¥Ã¥·¥å¥¨¥é¡¼¤Ç¤¹ - ¥Ç¥£¥¹¥¯¤¬°ìÇÕ¤«¤â?"
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr "¥½¡¼¥¹¥­¥ã¥Ã¥·¥å¥¨¥é¡¼¤Ç¤¹ - ¥á¥â¥ê¤¬Â­¤ê¤Þ¤»¤ó!"
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     ¤³¤Î¥Õ¥¡¥¤¥ë¤Ï X Moasaic ¥Û¥Ã¥È¥ê¥¹¥È¥Õ¥¡¥¤¥ë¤ò HTML ¤Ë¤·¤¿¤â¤Î¤Ç¤¹¡£\n"
+"     µì¼°¤Ê¤¤¤·ÉÔÀµ¤Ê¥ê¥ó¥¯¤Ï¡¢¥Ö¥Ã¥¯¥Þ¡¼¥¯ºï½ü¥³¥Þ¥ó¥É¤Çºï½ü¤Ç¤­¤Þ¤¹¡£\n"
+"     ¤³¤Î¥³¥Þ¥ó¥É¤ÏÄ̾ï [r] ¥­¡¼¤Ë³ä¤êÅö¤Æ¤é¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢¤¢¤Ê¤¿¤«¥·¥¹¥Æ¥à\n"
+"     ´ÉÍý¼Ô¤Ë¤è¤Ã¤ÆÊѹ¹¤µ¤ì¤Æ¤¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£"
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     [r] ¥­¡¼¤Ç¥ê¥ó¥¯¤òºï½ü¤Ç¤­¤Þ¤¹<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     ¥ê¥ó¥¯¤Ï¥Ö¥Ã¥¯¥Þ¡¼¥¯ºï½ü¥³¥Þ¥ó¥É¤Çºï½ü¤Ç¤­¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤Ï\n"
+"     Ä̾ï [r] ¥­¡¼¤Ë³ä¤êÅö¤Æ¤é¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢¤¢¤Ê¤¿¤«¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ë¤è¤Ã¤Æ\n"
+"     Êѹ¹¤µ¤ì¤Æ¤¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£"
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     ¤Þ¤¿¡¢É¸½àŪ¤Ê¥Æ¥­¥¹¥È¥¨¥Ç¥£¥¿¤ò»È¤Ã¤Æ¤³¤Î¥Õ¥¡¥¤¥ë¤òÊÔ½¸¤·¡¢\n"
+"     ¸Å¤«¤Ã¤¿¤ê´Ö°ã¤Ã¤¿¤ê¤·¤Æ¤¤¤ë¥ê¥ó¥¯¤òºï½ü¤·¤¿¤ê¡¢\n"
+"     ½çÈÖ¤òÊѤ¨¤¿¤ê¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£"
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Ãí°Õ: ¤³¤Î¥Õ¥¡¥¤¥ë¤ò¼ê¤ÇÊÔ½¸¤¹¤ëºÝ¤Ë¤Ï¡¢³Æ¹Ô¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤ò\n"
+"      Êѹ¹¤·¤¿¤ê¡¢Â¾¤Î HTML ¥Þ¡¼¥¯¥¢¥Ã¥×¤ò²Ã¤¨¤¿¤ê¤·¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£\n"
+"      ¥Ö¥Ã¥¯¥Þ¡¼¥¯¤Î¥ê¥ó¥¯¤Ï°ì¹Ô¤Ë¼ý¤Þ¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "¤³¤Î¥»¥Ã¥·¥ç¥ó¤Î´Ö¤Ï %s ¤«¤é¥Õ¥¡¥¤¥ë¤òÉüµì¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¤«¤â¤·¤ì¤Þ¤»¤ó"
+
+#: src/LYCgi.c:159
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:274
+msgid "Unable to access cgi script"
+msgstr "cgi ¥¹¥¯¥ê¥×¥È¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó"
+
+#: src/LYCgi.c:699 src/LYCgi.c:702
+msgid "Good Advice"
+msgstr "Îɤ¤¥¢¥É¥Ð¥¤¥¹"
+
+#: src/LYCgi.c:706
+msgid "An excellent http server for VMS is available via"
+msgstr "VMS ¤Ë¤·¤Æ¤Ï¤Ê¤«¤Ê¤«Í¥¤ì¤¿ http ¥µ¡¼¥Ð¤¬°Ê²¼¤«¤éÍøÍѲÄǽ¤Ç¤¹: "
+
+#: src/LYCgi.c:713
+msgid "this link"
+msgstr "¤³¤Î¥ê¥ó¥¯"
+
+#: src/LYCgi.c:717
+msgid "It provides state of the art CGI script support.\n"
+msgstr "¸½ºß˾¤ß¤¦¤ëºÇ¹â¿å½à¤Î CGI ¥¹¥¯¥ê¥×¥È¥µ¥Ý¡¼¥È¤òÈ÷¤¨¤Æ¤¤¤Þ¤¹¡£\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "½ªÎ»¤·¤Þ¤¹ ¸¶°ø: ³ä¤ê¹þ¤ß"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr "(°ÊÁ°¤Î¥»¥Ã¥·¥ç¥ó¤«¤é)"
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr "¾ÞÌ£´ü¸Â:"
+
+#: src/LYCookie.c:2562
+msgid "Internal"
+msgstr "ÆâÉô"
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "cookie_domain_flag_set ¥¨¥é¡¼¡¢¥×¥í¥°¥é¥à¤ò½ªÎ»¤·¤Þ¤¹"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "üËö¤Î½é´ü²½¤Ë¼ºÇÔ¤·¤Þ¤·¤¿ - üËö¤Î¥¿¥¤¥×¤¬ÉÔÌÀ?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "üËö ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "¤³¤Î¥×¥í¥°¥é¥à¤Ï vt100¡¢200 ¤Ê¤É¤ÎüËö¾å¤Ç¼Â¹Ô¤·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "¤ª»È¤¤¤ÎüËö¥¿¥¤¥×¤¬Ê¬¤«¤ê¤Þ¤»¤ó!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "üËö¥¿¥¤¥×¤òÆþÎÏ:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "ÀßÄꤵ¤ì¤ëüËö¥¿¥¤¥×¤Ï"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Ã×̿Ū¤Ê¥¨¥é¡¼¤¬ %s ¥Ð¡¼¥¸¥ç¥ó %s ¤ÇȯÀ¸¤·¤Þ¤·¤¿\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"¥Ð¥°¤ò³Îǧ¤¹¤ë¤¿¤á¥·¥¹¥Æ¥à´ÉÍý¼Ô¤ËÏ¢Íí¤·¡¢¤â¤·³Îǧ¤µ¤ì¤¿¤Ê¤é¤Ð lynx-dev \n"
+"¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤ËÏ¢Íí¤·¤Æ¤¯¤À¤µ¤¤¡£¥Ð¥°Êó¹ð¤Ë¤Ï¡¢ÌäÂê¤òµ¯¤³¤·¤¿¥³¥Þ¥ó¥É¤«\n"
+"URL ¤ÎÀµ³Î¤ÊÀâÌÀ¤È¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à̾(¥Ð¡¼¥¸¥ç¥óÈÖ¹æ´Þ¤à)¡¢TCPIP \n"
+"¼ÂÁõ¡¢¤â¤·Ê᪤Ǥ­¤¿¤Ê¤é¤Ð TRACEBACK¡¢¤½¤Î¾¤ÎŬÀڤʾðÊó¤ò´Þ¤á¤Æ¤¯¤À¤µ¤¤¡£\n"
+
+#: src/LYEdit.c:266
+#, fuzzy, c-format
+msgid "Error starting editor, %s"
+msgstr "%d ¹ÔÌÜ(%s Ãæ)¤Î½èÍý¤Ç¥¨¥é¡¼\n"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "¥¨¥Ç¥£¥¿¤¬°Û¾ï½ªÎ»¤·¤Þ¤·¤¿ ¥·¥°¥Ê¥ë:"
+
+#: src/LYEdit.c:274
+#, fuzzy, c-format
+msgid "Editor returned with error status %s"
+msgstr "¥¨¥Ç¥£¥¿¤Ï¥¨¥é¡¼¥¹¥Æ¡¼¥¿¥¹ %s ¤òÊÖ¤·¤Þ¤·¤¿"
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "¥À¥¦¥ó¥í¡¼¥É¤·¤¿¥ê¥ó¥¯:"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "¿ä¾©¤¹¤ë¥Õ¥¡¥¤¥ë̾:"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "ɸ½à¤Î¥À¥¦¥ó¥í¡¼¥ÉÀè:"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "¥À¥¦¥ó¥í¡¼¥ÉÀè"
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "¥Ç¥£¥¹¥¯¤ËÊݸ"
+
+#: src/LYDownload.c:545
+#, fuzzy
+msgid "View temporary file"
+msgstr "¥Õ¥¡¥¤¥ë¤ò±ÜÍ÷"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "¥Ç¥£¥¹¥¯¤ËÊݸ¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "¥í¡¼¥«¥ë¤Ç¤ÎÄɲÃ:"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "̾Á°¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "ÁªÂò¤·¤¿¥Ú¡¼¥¸: "
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(¥¢¥É¥ì¥¹¤Ê¤·)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (ÆâÉô)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr "(¤«¤Ä¤ÆÆâÉô)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (ÍúÎò¤è¤ê)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "¤¢¤Ê¤¿¤¬Ë¬¤ì¤¿¥ê¥ó¥¯(POST¡¢¥Ö¥Ã¥¯¥Þ¡¼¥¯¡¢¥á¥Ë¥å¡¼¡¢¥ê¥¹¥È¥Õ¥¡¥¤¥ë¤Ï½ü¤¯):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(¤Þ¤À¥á¥Ã¥»¡¼¥¸¤Ï̵¤¤)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "ÉÔÀµ¤Ê¥Ý¥¤¥ó¥¿¤¬¸¡½Ð¤µ¤ì¤Þ¤·¤¿¡£"
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "¥Ý¥¤¥ó¥¿:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "¥Õ¥¡¥¤¥ë̾:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "¹Ô¿ô:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "¥á¥â¥ê¥ê¡¼¥¯¤¬¸¡½Ð¤µ¤ì¤Þ¤·¤¿¡£"
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "´Þ¤à:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "¥Ð¥¤¥È¥µ¥¤¥º:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "ºÆ³ä¤êÅö¤Æ:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "º£²ó¤Î¼Â¹Ô¤Ç¤Î¥á¥â¥ê¥ê¡¼¥¯ÁíÎÌ"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+#, fuzzy
+msgid "Bytes allocated"
+msgstr "ºÆ³ä¤êÅö¤Æ:"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "±¦¤«¤é¤Î»²¾È: "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "¤³¤Îʸ½ñ:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "¸«¤¨¤ë¥ê¥ó¥¯:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "±£¤µ¤ì¤¿¥ê¥ó¥¯:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "»²¾È"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "¸«¤¨¤ë¥ê¥ó¥¯"
+
+#: src/LYLocal.c:269
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "'%s' ¤Î¥¹¥Æ¡¼¥¿¥¹¤òÆÀ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: src/LYLocal.c:303
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "ÁªÂò¤µ¤ì¤¿¥¢¥¤¥Æ¥à¤Ï¥Õ¥¡¥¤¥ë¤Ç¤â¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤â¤¢¤ê¤Þ¤»¤ó¡£¥ê¥¯¥¨¥¹¥È¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£"
+
+#: src/LYLocal.c:371
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "¥·¥¹¥Æ¥à¥¨¥é¡¼¤Ë¤è¤ê %s ¤Ç¤­¤Þ¤»¤ó!"
+
+#: src/LYLocal.c:405
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "¥·¥¹¥Æ¥à¥¨¥é¡¼¤Ë¤è¤ê %s ¤¬¼ºÇÔ¤·¤¿¤è¤¦¤Ç¤¹!"
+
+#: src/LYLocal.c:467 src/LYLocal.c:488
+#, c-format
+msgid "remove %s"
+msgstr "%s ¤òºï½ü¤·¤Þ¤¹"
+
+#: src/LYLocal.c:506
+#, c-format
+msgid "touch %s"
+msgstr "%s ¤ò touch ¤·¤Þ¤¹"
+
+#: src/LYLocal.c:534
+#, c-format
+msgid "move %s to %s"
+msgstr "%s ¤ò %s ¤Ë°ÜÆ°¤·¤Þ¤¹"
+
+#: src/LYLocal.c:575
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "»ØÄê¤Î̾Á°¤ò»ý¤Ä¥Ç¥£¥ì¥¯¥È¥ê¤¬¤¹¤Ç¤Ë¸ºß¤·¤Þ¤¹! ¥ê¥¯¥¨¥¹¥È¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡£"
+
+#: src/LYLocal.c:577
+msgid "There is already a file with that name!  Request ignored."
+msgstr "»ØÄê¤Î̾Á°¤ò»ý¤Ä¥Õ¥¡¥¤¥ë¤¬¤¹¤Ç¤Ë¸ºß¤·¤Þ¤¹! ¥ê¥¯¥¨¥¹¥È¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡£"
+
+#: src/LYLocal.c:579
+msgid "The specified name is already in use!  Request ignored."
+msgstr "»ØÄê¤Î̾Á°¤Ï¤¹¤Ç¤Ë»È¤ï¤ì¤Æ¤¤¤Þ¤¹! ¥ê¥¯¥¨¥¹¥È¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡£"
+
+#: src/LYLocal.c:590
+msgid "Destination has different owner!  Request denied."
+msgstr "ÌÜŪÃϤϽêÍ­¼Ô¤¬°Û¤Ê¤ê¤Þ¤¹! ¥ê¥¯¥¨¥¹¥È¤ÏµñÈݤµ¤ì¤Þ¤·¤¿¡£"
+
+#: src/LYLocal.c:593
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "ÌÜŪÃϤÏÀµ¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó! Í×µá¤ÏµñÈݤµ¤ì¤Þ¤·¤¿¡£"
+
+#: src/LYLocal.c:615
+msgid "Remove all tagged files and directories?"
+msgstr "ÁªÂò¤·¤¿Á´¤Æ¤Î¥Õ¥¡¥¤¥ë¤È¥Ç¥£¥ì¥¯¥È¥ê¤òºï½ü¤·¤Þ¤¹¤«?"
+
+#: src/LYLocal.c:673
+msgid "Enter new location for tagged items: "
+msgstr "ÁªÂò¤·¤¿¥¢¥¤¥Æ¥à¤Î¿·¤·¤¤¾ì½ê¤òÆþÎÏ: "
+
+#: src/LYLocal.c:743
+msgid "Path too long"
+msgstr "¥Ñ¥¹¤¬Ä¹¤¹¤®¤Þ¤¹"
+
+#: src/LYLocal.c:774
+msgid "Source and destination are the same location - request ignored!"
+msgstr "¥½¡¼¥¹¤ÈÌÜŪÃϤ¬Æ±¤¸¾ì½ê¤Ç¤¹ - Í×µá¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿!"
+
+#: src/LYLocal.c:831
+msgid "Enter new name for directory: "
+msgstr "¿·¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê̾¤òÆþÎÏ"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for file: "
+msgstr "¿·¤·¤¤¥Õ¥¡¥¤¥ë̾¤òÆþÎÏ: "
+
+#: src/LYLocal.c:845
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "ÉÔÀµ¤Ê¥­¥ã¥é¥¯¥¿(¥Ñ¥¹¥»¥Ñ¥ì¡¼¥¿)¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿! ¥ê¥¯¥¨¥¹¥È¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡£"
+
+#: src/LYLocal.c:895
+msgid "Enter new location for directory: "
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤Î¿·¤·¤¤¾ì½ê¤òÆþÎÏ: "
+
+#: src/LYLocal.c:901
+msgid "Enter new location for file: "
+msgstr "¥Õ¥¡¥¤¥ë¤Î¿·¤·¤¤¾ì½ê¤òÆþÎÏ: "
+
+#: src/LYLocal.c:928
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "ͽ´ü¤»¤Ì¼ºÇÔ - Äɤ¦¥Ñ¥¹¥»¥Ñ¥ì¡¼¥¿¤ò¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó"
+
+#: src/LYLocal.c:948
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "¥½¡¼¥¹¤ÈÌÜŪÃϤ¬Æ±¤¸¾ì½ê¤Ç¤¹! ¥ê¥¯¥¨¥¹¥È¤Ï̵»ë¤µ¤ì¤Þ¤¹!"
+
+#: src/LYLocal.c:995
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "[n]̾Á°¡¢[l]¾ì½ê¡¢¤¢¤ë¤¤¤Ï [p]¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤òÊѹ¹: "
+
+#: src/LYLocal.c:997
+msgid "Modify name or location (n or l): "
+msgstr "[n]̾Á° ¤¢¤ë¤¤¤Ï [l]¾ì½ê¤òÊѹ¹: "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1026
+msgid "This feature not yet implemented!"
+msgstr "¤³¤Îµ¡Ç½¤Ï¤Þ¤À¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: src/LYLocal.c:1046
+msgid "Enter name of file to create: "
+msgstr "ºîÀ®¤¹¤ë¥Õ¥¡¥¤¥ë̾¤òÆþÎÏ: "
+
+#: src/LYLocal.c:1050 src/LYLocal.c:1086
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "ÉÔÀµ¤Ê¥ê¥À¥¤¥ì¥¯¥·¥ç¥ó \"//\" ¤ò¸¡½Ð¤·¤Þ¤·¤¿! Í×µá¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£"
+
+#: src/LYLocal.c:1082
+msgid "Enter name for new directory: "
+msgstr "¿·¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê̾¤òÆþÎÏ: "
+
+#: src/LYLocal.c:1122
+msgid "Create file or directory (f or d): "
+msgstr "¥Õ¥¡¥¤¥ë [f] ¤Þ¤¿¤Ï ¥Ç¥£¥ì¥¯¥È¥ê [d] ¤òºîÀ®: "
+
+#: src/LYLocal.c:1164
+#, fuzzy, c-format
+msgid "Remove directory '%s'?"
+msgstr "¥Õ¥¡¥¤¥ë '%s' ¤òºï½ü¤·¤Þ¤¹¤«?"
+
+#: src/LYLocal.c:1167
+#, fuzzy
+msgid "Remove directory?"
+msgstr " ¥Ç¥£¥ì¥¯¥È¥ê"
+
+#: src/LYLocal.c:1172
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "¥Õ¥¡¥¤¥ë '%s' ¤òºï½ü¤·¤Þ¤¹¤«?"
+
+#: src/LYLocal.c:1174
+msgid "Remove file?"
+msgstr "¥Õ¥¡¥¤¥ë¤òºï½ü¤·¤Þ¤¹¤«?"
+
+#: src/LYLocal.c:1179
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯ '%s' ¤òºï½ü¤·¤Þ¤¹¤«?"
+
+#: src/LYLocal.c:1181
+msgid "Remove symbolic link?"
+msgstr "¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤òºï½ü¤·¤Þ¤¹¤«?"
+
+#: src/LYLocal.c:1276
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Èó UNIX ¥Õ¥¡¥¤¥ë¤Î¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤Ï¤Þ¤À°·¤¨¤Þ¤»¤ó¡£"
+
+#: src/LYLocal.c:1306
+msgid "Unable to open permit options file"
+msgstr "¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¥ª¥×¥·¥ç¥ó¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó"
+
+#: src/LYLocal.c:1336
+msgid "Specify permissions below:"
+msgstr "°Ê²¼¤Î¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤ò»ØÄê:"
+
+#: src/LYLocal.c:1337 src/LYShowInfo.c:260
+msgid "Owner:"
+msgstr "½êÍ­¼Ô:"
+
+#: src/LYLocal.c:1353
+msgid "Group"
+msgstr "¥°¥ë¡¼¥×"
+
+#: src/LYLocal.c:1369
+msgid "Others:"
+msgstr "¤½¤Î¾:"
+
+#: src/LYLocal.c:1387
+msgid "form to permit"
+msgstr "µö²Ä¤¹¤ë¥Õ¥©¡¼¥à"
+
+#: src/LYLocal.c:1482
+msgid "Invalid mode format."
+msgstr "ÉÔÀµ¤Ê¥â¡¼¥É¥Õ¥©¡¼¥Þ¥Ã¥È"
+
+#: src/LYLocal.c:1486
+msgid "Invalid syntax format."
+msgstr "ÉÔÀµ¤Ê¹½Ê¸¥Õ¥©¡¼¥Þ¥Ã¥È"
+
+#: src/LYLocal.c:1668
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Ãí°Õ! UUDecode ¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ï¤¢¤Ê¤¿¤¬ Lynx ¤òµ¯Æ°¤·¤¿¥Ç¥£¥ì¥¯¥È¥êÆâ¤ËÃÖ¤«¤ì¤Þ¤¹¡£"
+
+#: src/LYLocal.c:1858
+msgid "NULL URL pointer"
+msgstr "¥Ì¥ë URL ¥Ý¥¤¥ó¥¿"
+
+#: src/LYLocal.c:1940
+#, c-format
+msgid "Executing %s "
+msgstr "%s ¤ò¼Â¹ÔÃæ "
+
+#: src/LYLocal.c:1943
+msgid "Executing system command. This might take a while."
+msgstr "¥·¥¹¥Æ¥à¥³¥Þ¥ó¥É¤ò¼Â¹ÔÃæ¤Ç¤¹¡£¤·¤Ð¤é¤¯¤«¤«¤ê¤Þ¤¹¡£"
+
+#: src/LYLocal.c:2015
+msgid "Current directory:"
+msgstr "¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê:"
+
+#: src/LYLocal.c:2018 src/LYLocal.c:2036
+msgid "Current selection:"
+msgstr "¸½ºßÁªÂò:"
+
+#: src/LYLocal.c:2022
+msgid "Nothing currently selected."
+msgstr "¸½ºß²¿¤âÁªÂò¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: src/LYLocal.c:2038
+msgid "tagged item:"
+msgstr "ÁªÂò¤µ¤ì¤¿¥¢¥¤¥Æ¥à:"
+
+#: src/LYLocal.c:2039
+msgid "tagged items:"
+msgstr "ÁªÂò¤µ¤ì¤¿¥¢¥¤¥Æ¥à:"
+
+#: src/LYLocal.c:2136 src/LYLocal.c:2147
+msgid "Illegal filename; request ignored."
+msgstr "ÉÔÀµ¤Ê¥Õ¥¡¥¤¥ë̾¤Ç¤¹: Í×µá¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£"
+
+#. directory not writable
+#: src/LYLocal.c:2245 src/LYLocal.c:2304
+msgid "Install in the selected directory not permitted."
+msgstr "ÁªÂò¤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ø¤Î¥¤¥ó¥¹¥È¡¼¥ë¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
+#: src/LYLocal.c:2300
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "ÁªÂò¤µ¤ì¤¿¥¢¥¤¥Æ¥à¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó! Í×µá¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£"
+
+#: src/LYLocal.c:2309
+msgid "Just a moment, ..."
+msgstr "¤ªÂÔ¤Á¤¯¤À¤µ¤¤ ..."
+
+#: src/LYLocal.c:2326
+#, fuzzy
+msgid "Error building install args"
+msgstr "¥¤¥ó¥¹¥È¡¼¥ë°ú¿ô¤òÀ¸À®¤¹¤ë¤Î¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
+
+#: src/LYLocal.c:2341 src/LYLocal.c:2372
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "¥½¡¼¥¹¤È¥¿¡¼¥²¥Ã¥È¤¬Æ±¤¸¤Ç¤¹: %s"
+
+#: src/LYLocal.c:2348 src/LYLocal.c:2379
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "¤¹¤Ç¤Ë¥¿¡¼¥²¥Ã¥È¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¤¤Þ¤¹: %s"
+
+#: src/LYLocal.c:2397
+msgid "Installation complete"
+msgstr "¥¤¥ó¥¹¥È¡¼¥ë´°Î»"
+
+#: src/LYLocal.c:2584
+msgid "Temporary URL or list would be too long."
+msgstr "°ì»þŪ URL ¤¢¤ë¤¤¤Ï¥ê¥¹¥È¤¬Ä¹¤¹¤®¤ë¤è¤¦¤Ç¤¹¡£"
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Á÷¿®Ãæ"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "¥ê¥ó¥¯   %s :?: %s \n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "\"%s\"¤È¤·¤Æ¸Æ¤Ð¤ì¤ë\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "¥Õ¥¡¥¤¥ë \"%s\" ¤Ç \"%s\" ¤È¸Æ¤Ð¤ì¤ë\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "¤¬Í׵ᤵ¤ì¤Þ¤·¤¿¤¬ÍøÍѤǤ­¤Þ¤»¤ó¤Ç¤·¤¿¡£"
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "¤¢¤Ê¤¿¤¬ÃΤꤿ¤¤¤«¤â¤·¤ì¤Ê¤¤¤È»×¤¤¤Þ¤·¤¿¡£"
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "¤³¤Î¥á¥Ã¥»¡¼¥¸¤Ï°Ê²¼¤Ë¤è¤Ã¤Æ¼«Æ°Åª¤ËÀ¸À®¤µ¤ì¤Þ¤·¤¿: "
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1022
+msgid "No Winsock found, sorry."
+msgstr "Winsock ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£"
+
+#: src/LYMain.c:1225
+#, fuzzy
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "TMP ¤Ê¤¤¤· TEMP Îΰè¤òÀµ¤·¤¯ÄêµÁ¤·¤Ê¤±¤ì¤Ð*¤Ê¤ê¤Þ¤»¤ó*!\n"
+
+#: src/LYMain.c:1278 src/LYMainLoop.c:5074
+msgid "No such directory"
+msgstr "¤½¤ó¤Ê¥Ç¥£¥ì¥¯¥È¥ê¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#: src/LYMain.c:1463
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"ÄêµÁ¥Õ¥¡¥¤¥ë %s ¤¬ÍøÍѤǤ­¤Þ¤»¤ó¡£\n"
+"\n"
+
+#: src/LYMain.c:1473
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx ¥­¥ã¥é¥¯¥¿¥»¥Ã¥È¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£\n"
+"\n"
+
+#: src/LYMain.c:1502
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx ÊÔ½¸¥Þ¥Ã¥×¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£\n"
+"\n"
+
+#: src/LYMain.c:1578
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx ¥Õ¥¡¥¤¥ë %s ¤ÏÍøÍѤǤ­¤Þ¤»¤ó¡£\n"
+"\n"
+
+#: src/LYMain.c:1653
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1655
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1803
+msgid "Warning:"
+msgstr "Ãí°Õ: "
+
+#: src/LYMain.c:2371
+msgid "persistent cookies state will be changed in next session only."
+msgstr "±Ê³Ū¥¯¥Ã¥­¡¼¤Î¾õÂ֤ϼ¡¤Î¥»¥Ã¥·¥ç¥ó¤Ë¤Ê¤é¤Ê¤¤¤ÈÊѹ¹¤µ¤ì¤Þ¤»¤ó¡£"
+
+#: src/LYMain.c:2616 src/LYMain.c:2661
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: ÉÔÌÀ¤Ê¥­¥ã¥é¥¯¥¿¥»¥Ã¥È %s ¤ò̵»ë¤·¤Þ¤¹¡£\n"
+
+#: src/LYMain.c:3180
+#, fuzzy, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s ¥Ð¡¼¥¸¥ç¥ó %s (%s)\n"
+
+#: src/LYMain.c:3218
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "%s ¾å¤Ç %s %s ¤Ë¥Ó¥ë¥É¤µ¤ì¤Þ¤·¤¿¡£\n"
+
+#: src/LYMain.c:3240
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3241
+#, fuzzy
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "¥«¥ó¥¶¥¹Âç³Ø¡¢CERN ¤È¤½¤Î¾¤Î¹×¸¥¼Ô¤¬Ãøºî¸¢¤òÊÝÍ­¤·¡¢\n"
+
+#: src/LYMain.c:3242
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "GNU °ìÈ̸øÍ­»ÈÍѵöÂú·ÀÌó½ñ¤Î²¼¤ÇÇÛÉÛ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£\n"
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+"¾Ü¤·¤¯¤Ï http://lynx.browser.org/ ¤È¥ª¥ó¥é¥¤¥ó¥Ø¥ë¥×¤ò¤´Í÷¤¯¤À¤µ¤¤¡£\n"
+"\n"
+
+#: src/LYMain.c:4060
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "»È¤¤Êý: %s [¥ª¥×¥·¥ç¥ó] [¥Õ¥¡¥¤¥ë]\n"
+
+#: src/LYMain.c:4061
+#, c-format
+msgid "Options are:\n"
+msgstr "¥ª¥×¥·¥ç¥ó:\n"
+
+#: src/LYMain.c:4360
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: ÉÔÀµ¤Ê¥ª¥×¥·¥ç¥ó¤Ç¤¹: %s\n"
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "ÆâÉô¥¨¥é¡¼: %d ¤ÏÉÔÀµ¤Ê¥Þ¥¦¥¹¥ê¥ó¥¯¤Ç¤¹!"
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr "¥æ¡¼¥¶¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤¿ URL"
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Enctype multipart/form-data ¤Ï¤Þ¤À¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó! Á÷¿®¤Ç¤­¤Þ¤»¤ó¡£"
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr "¥Ø¥ë¥×²èÌÌ"
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr "¥·¥¹¥Æ¥à¥¤¥ó¥Ç¥Ã¥¯¥¹"
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5324
+msgid "Entry into main screen"
+msgstr "¥á¥¤¥ó²èÌ̤ؤÎÆþÎÏ"
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr "¼¡¤Î¥É¥­¥å¥á¥ó¥È¤¬Â¸ºß¤·¤Þ¤»¤ó"
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "¤³¤Îʸ½ñ¤Î¥­¥ã¥é¥¯¥¿¥»¥Ã¥È¤ÏÌÀ¼¨Åª¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹..."
+
+#: src/LYMainLoop.c:5052
+msgid "cd to:"
+msgstr "°Ê²¼¤Ø°ÜÆ°:"
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr "¥Ñ¥¹¤Î°ìÉô¤¬¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#: src/LYMainLoop.c:5080
+msgid "failed to change directory"
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤òÊѹ¹¤Ç¤­¤Þ¤»¤ó"
+
+#: src/LYMainLoop.c:6256
+msgid "Reparsing document under current settings..."
+msgstr "¸½ºß¤ÎÀßÄê¤Î²¼¤Çʸ½ñ¤òºÆ²ò¼áÃæ..."
+
+#: src/LYMainLoop.c:6547
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Ã×̿Ū¥¨¥é¡¼ - ½ÐÎÏ¥Õ¥¡¥¤¥ë %s ¤¬³«¤±¤Þ¤»¤ó\n"
+
+#: src/LYMainLoop.c:6884
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6887
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:6964
+#, fuzzy
+msgid "Current URL is empty."
+msgstr "¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê:"
+
+#: src/LYMainLoop.c:6966 src/LYUtils.c:1817
+msgid "Copy to clipboard failed."
+msgstr ""
+
+#: src/LYMainLoop.c:6968
+msgid "Document URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6970
+msgid "Link URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6997
+msgid "No URL in the clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7668 src/LYMainLoop.c:7838
+msgid "-index-"
+msgstr "-¥¤¥ó¥Ç¥Ã¥¯¥¹-"
+
+#: src/LYMainLoop.c:7778
+msgid "lynx: Can't access startfile"
+msgstr "lynx: ¥¹¥¿¡¼¥È¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó"
+
+#: src/LYMainLoop.c:7790
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: ¥¹¥¿¡¼¥È¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤é¤Ê¤¤¤«¡¢text/html ¤Ê¤¤¤· text/plain ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#: src/LYMainLoop.c:7791
+msgid "      Exiting..."
+msgstr "      ½ªÎ»¤·¤Þ¤¹..."
+
+#: src/LYMainLoop.c:7832
+msgid "-more-"
+msgstr "-³¤­¤¢¤ê-"
+
+#. Enable scrolling.
+#: src/LYNews.c:183
+msgid "You will be posting to:"
+msgstr "Åê¹ÆÀè: "
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:192
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" From: ¥Ø¥Ã¥ÀÍѤˤ¢¤Ê¤¿¤Î¥á¡¼¥ë¥¢¥É¥ì¥¹¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:209
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Subject: ¥Ø¥Ã¥À¤òÊÔ½¸¤·¤ÆÍÑ°Õ¤·¤Æ¤¯¤À¤µ¤¤\n"
+
+#: src/LYNews.c:299
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+"Organization: ¥Ø¥Ã¥À¤òÊÔ½¸¤·¤ÆÍÑ°Õ¤·¤Æ¤¯¤À¤µ¤¤\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:356
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" °Ê²¼¤Ë¤¢¤Ê¤¿¤Î¥á¥Ã¥»¡¼¥¸¤òÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: src/LYNews.c:402
+msgid "Message has no original text!"
+msgstr "¥á¥Ã¥»¡¼¥¸¤Ë¤Ï¸µ¤Î¥Æ¥­¥¹¥È¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "[b]¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤ò±ÜÍ÷/ÊÔ½¸"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "[b]¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë"
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2242
+#, fuzzy
+msgid "Novice"
+msgstr "¤Ê¤·"
+
+#: src/LYOptions.c:2243
+#, fuzzy
+msgid "Intermediate"
+msgstr "ÆâÉô"
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2279
+#, fuzzy
+msgid "as links"
+msgstr "¤³¤Î¥ê¥ó¥¯"
+
+#: src/LYOptions.c:2286
+#, fuzzy
+msgid "show filename"
+msgstr " (ÉÔÀµ¤Ê¥Õ¥¡¥¤¥ë̾)"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2329
+#, fuzzy
+msgid "Directories first"
+msgstr "¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê:"
+
+#: src/LYOptions.c:2330
+#, fuzzy
+msgid "Files first"
+msgstr " ¤òºÇ½é¤Ëõ¤·¤Þ¤¹"
+
+#: src/LYOptions.c:2331
+#, fuzzy
+msgid "Mixed style"
+msgstr "¹ÔÊÔ½¸¥¹¥¿¥¤¥ë"
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+#, fuzzy
+msgid "By Name"
+msgstr "̾Á°:"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+#, fuzzy
+msgid "By Size"
+msgstr "¥Ð¥¤¥È¥µ¥¤¥º:"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+#, fuzzy
+msgid "By Date"
+msgstr "Æü»þ:"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2346
+#, fuzzy
+msgid "By Group"
+msgstr "¥°¥ë¡¼¥×"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, fuzzy, c-format
+msgid "Show %s/sec rate"
+msgstr "žÁ÷¥ì¡¼¥È¤òɽ¼¨"
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2379
+#, fuzzy
+msgid "Show progressbar"
+msgstr "¥¹¥¯¥í¡¼¥ë¥Ð¡¼¤òɽ¼¨"
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2395
+#, fuzzy
+msgid "Accept all types"
+msgstr "Êѹ¹¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "%s ¤ÇÀßÄê¥á¥Ë¥å¡¼¤òµ¯Æ°¤·¤Þ¤¹!"
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr "((!) ¤¬¤Ä¤¤¤¿¥ª¥×¥·¥ç¥ó¤ÏÊݸ¤µ¤ì¤Þ¤»¤ó)"
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "Á´ÈÌŪ¤ÊÀßÄê"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "¥æ¡¼¥¶¥â¡¼¥É"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "»ÈÍѤ¹¤ë¥¨¥Ç¥£¥¿"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "¸¡º÷¥¿¥¤¥×"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "¥¯¥Ã¥­¡¼"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "¥­¡¼¥Ü¡¼¥ÉÆþÎÏ"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "¥­¡¼¥Ñ¥Ã¥É¤Î¥â¡¼¥É"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "Emacs É÷¥­¡¼ÇÛÎó"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "VI É÷¥­¡¼ÇÛÎó"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr "¹ÔÊÔ½¸¥¹¥¿¥¤¥ë"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr "¥­¡¼¥Ü¡¼¥É¥ì¥¤¥¢¥¦¥È"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "ɽ¼¨¤È¥­¥ã¥é¥¯¥¿¥»¥Ã¥È"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+#, fuzzy
+msgid "Use locale-based character set"
+msgstr "ɽ¼¨¤¹¤ë¥­¥ã¥é¥¯¥¿¥»¥Ã¥È"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "ɽ¼¨¤¹¤ë¥­¥ã¥é¥¯¥¿¥»¥Ã¥È"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "²¾Äꤹ¤ë¥­¥ã¥é¥¯¥¿¥»¥Ã¥È"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "CJK ¥â¡¼¥É"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "À¸ 8 ¥Ó¥Ã¥È"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "X ¥Ç¥£¥¹¥×¥ì¥¤"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "ʸ½ñ¤Î³°¸«"
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "¿§¤òÉÕ¤±¤ë"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "¥«¡¼¥½¥ë¤ò¸«¤»¤ë"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+#, fuzzy
+msgid "Underline links"
+msgstr "±£¤µ¤ì¤¿¥ê¥ó¥¯:"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr "¥¹¥¯¥í¡¼¥ë¥Ð¡¼¤òɽ¼¨"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr "¥Õ¥£¡¼¥ë¥ÉÁªÂò»þ¤Ë¥Ý¥Ã¥×¥¢¥Ã¥×"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "HTML ¥¨¥é¡¼¤«¤é¤Î²óÉü"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "²èÁü¤Îɽ¼¨"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "¾éĹ¤Ê²èÁüɽ¼¨"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "¥ê¥â¡¼¥È¥µ¡¼¥Ð¤ËžÁ÷¤µ¤ì¤ë¥Ø¥Ã¥À"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "¸Ä¿Í¤Î¥á¡¼¥ë¥¢¥É¥ì¥¹"
+
+#: src/LYOptions.c:3760
+#, fuzzy
+msgid "Password for anonymous ftp"
+msgstr "¥Ë¥å¡¼¥¹¥Û¥¹¥È '%s' ¤Î¥Ñ¥¹¥ï¡¼¥É:"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+#, fuzzy
+msgid "Preferred media type"
+msgstr "%d ¥Ð¥¤¥ÈžÁ÷ºÑ"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+#, fuzzy
+msgid "Preferred encoding"
+msgstr "ɽ¼¨¤·¤¿¤¤¸À¸ì"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "ɽ¼¨¤·¤¿¤¤¥­¥ã¥é¥¯¥¿¡¼¥»¥Ã¥È"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "ɽ¼¨¤·¤¿¤¤¸À¸ì"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "User-Agent ¥Ø¥Ã¥À"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "¥ê¥¹¥Èɽ¼¨¤È¥Õ¥¡¥¤¥ë¤Ø¤Î¥¢¥¯¥»¥¹"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "FTP ¥Ç¥£¥ì¥¯¥È¥ê¤Î¥½¡¼¥È´ð½à"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "¥í¡¼¥«¥ë¥Ç¥£¥ì¥¯¥È¥ê¤Î¥½¡¼¥È´ð½à"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+msgid "Local directory sort order"
+msgstr "¥í¡¼¥«¥ë¥Ç¥£¥ì¥¯¥È¥ê¤Î¥½¡¼¥È½ç"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "¥É¥Ã¥È¥Õ¥¡¥¤¥ë¤òɽ¼¨"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "¥ê¥ó¥¯¤ò¼Â¹Ô"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr "žÁ÷¥ì¡¼¥È¤òɽ¼¨"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "ÆÃÊÌ¥Õ¥¡¥¤¥ë¤È²èÌÌ"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "¥Þ¥ë¥Á¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ò»È¤¦"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë¤Î±ÜÍ÷/ÊÔ½¸"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "¥Þ¥ë¥Á¥Ö¥Ã¥¯¥Þ¡¼¥¯¥á¥Ë¥å¡¼¤Ø"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "ˬ¤ì¤¿¥Ú¡¼¥¸"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr "¥Õ¥¡¥¤¥ë¤ò±ÜÍ÷"
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr "°õºþ¥¸¥ç¥Ö¤¬´°Î»¤·¤Þ¤·¤¿¡£\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "ʸ½ñ:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "¹Ô¿ô:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "¥Ú¡¼¥¸¿ô:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "¥Ú¡¼¥¸"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "¥Ú¡¼¥¸"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(³µ»»)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "°õºþµ¡Ç½¤Î°ìÉô¤Ï»È¤¨¤Þ¤»¤ó!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "ɸ½à¤Î°õºþÀè"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "°õºþÀè¤òÁªÂò:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "¥í¡¼¥«¥ë¥Õ¥¡¥¤¥ë¤ËÊݸ"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "¥Ç¥£¥¹¥¯¤Ø¤ÎÊݸ¤Ï¤Ç¤­¤Þ¤»¤ó"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "¥Õ¥¡¥¤¥ë¤ò¥á¡¼¥ë¤ÇÁ÷¿®"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "²èÌ̤Ëɽ¼¨"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "¤¢¤Ê¤¿¤Î vt100 üËö¤ËÀܳ¤µ¤ì¤¿¥×¥ê¥ó¥¿¤Ë°õºþ"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"ÀßÄê¥Õ¥¡¥¤¥ë¤Î COLOR ¤ò²òÀÏÃæ¤Ë¥·¥ó¥¿¥Ã¥¯¥¹¥¨¥é¡¼¤ò¸¡½Ð¤·¤Þ¤·¤¿:\n"
+"¤³¤Î¹Ô¤Ï°Ê²¼¤Î·Á¼°¤ò¼è¤é¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"FOREGROUND ¤È BACKGROUND ¤Ï°Ê²¼¤Î¤¦¤Á°ì¤Ä¤ò¼è¤ê¤Þ¤¹:\n"
+"ÆÃÊÌʸ»úÎó¤Î¡Önocolor¡×¡¢¡Ödefault¡×¡¢¤¢¤ë¤¤¤Ï\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "ÌäÂê¤Î¹Ô:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "¥­¡¼ %s ¤ò %s ¤Ø (Æ°ºî¤Ï %s) ºÆÄêµÁ¤¹¤ë¤Î¤Ë¼ºÇÔ¤·¤Þ¤·¤¿\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "¥­¡¼ %s ¤ò %s ¤ØºÆÄêµÁ¤¹¤ë¤Î¤Ë¼ºÇÔ¤·¤Þ¤·¤¿\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "¥­¡¼ %s ¤Î¹Ô¥¨¥Ç¥£¥¿ÁªÂò %s ¤¬ÉÔÀµ¤Ç¤¹¡¢Á´ÂΤòÁªÂò¤·¤Þ¤¹\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "¹Ô¥¨¥Ç¥£¥¿¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¥­¡¼ %s (0x%x) ¤ò 0x%x (Æ°ºî ¤Ï %s)¤ËÀßÄꤹ¤ë¤Î¤Ë¼ºÇÔ¤·¤Þ¤·¤¿\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "¹Ô¥¨¥Ç¥£¥¿¥Ð¥¤¥ó¥Ç¥£¥ó¥°¤Ç¥­¡¼ %s (0x%x) ¤òÆ°ºî %s¤ËÀßÄꤹ¤ë¤Î¤Ë¼ºÇÔ¤·¤Þ¤·¤¿\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: ³«»Ï¤Ç¤­¤Þ¤»¤ó¡£CERN ¥ë¡¼¥ë¥Õ¥¡¥¤¥ë %s ¤¬ÍøÍѤǤ­¤Þ¤»¤ó\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(̾Á°Ìµ¤·)"
+
+#: src/LYReadCFG.c:1880
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "lynx.cfg ¥¤¥ó¥¯¥ë¡¼¥É¤¬ %d ²ó°Ê¾å¤ÎÆþ¤ì»Ò¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹ -- ¤ª¤½¤é¤¯¥ë¡¼¥×¤¬¤¢¤ë¤Î¤Ç¤Ï!?\n"
+
+#: src/LYReadCFG.c:1882
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "ºÇ¸å¤Ë»î¤ß¤¿¥¤¥ó¥¯¥ë¡¼¥É¤Ï '%s' ¤Ç¡¢\n"
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "'%s' ¤«¤é¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤Æ¤¤¤Þ¤¹¡£\n"
+
+#: src/LYReadCFG.c:2291 src/LYReadCFG.c:2304 src/LYReadCFG.c:2362
+msgid "The following is read from your lynx.cfg file."
+msgstr "°Ê²¼¤Ï¤¢¤Ê¤¿¤Î lynx.cfg ¥Õ¥¡¥¤¥ë¤«¤éÆɤ߹þ¤Þ¤ì¤¿¾ðÊó¤Ç¤¹¡£"
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305
+msgid "Please read the distribution"
+msgstr "ÇÛÉÛ¤Î"
+
+#: src/LYReadCFG.c:2298 src/LYReadCFG.c:2308
+msgid "for more comments."
+msgstr "¤Ë¤Ï¾ÜºÙ¤ÊÃí¤¬ÉÕ¤¤¤Æ¤¤¤Þ¤¹¤Î¤Ç»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£"
+
+#: src/LYReadCFG.c:2344
+msgid "RELOAD THE CHANGES"
+msgstr "Êѹ¹¤òºÆÆɤ߹þ¤ß"
+
+#: src/LYReadCFG.c:2352
+msgid "Your primary configuration"
+msgstr "ºÇ½é¤Ë»²¾È¤µ¤ì¤ëÀßÄê¥Õ¥¡¥¤¥ë¤Ï"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "¸½ºß¸«¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "̾Á°:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "¸½ºßÁªÂò¤·¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "¸½ºßÁªÂò¤·¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "¸½ºßÁªÂò¤·¤Æ¤¤¤ë¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "¸½ºßÁªÂò¤·¤Æ¤¤¤ë¥¢¥¤¥Æ¥à"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "¥Õ¥ë¥Í¡¼¥à:"
+
+#: src/LYShowInfo.c:212
+msgid "Unable to follow link"
+msgstr "¥ê¥ó¥¯¤òé¤ì¤Þ¤»¤ó"
+
+#: src/LYShowInfo.c:214
+msgid "Points to file:"
+msgstr "¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ý¥¤¥ó¥È:"
+
+#: src/LYShowInfo.c:219
+msgid "Name of owner:"
+msgstr "½êÍ­¼Ô¤Î̾Á°:"
+
+#: src/LYShowInfo.c:222
+msgid "Group name:"
+msgstr "¥°¥ë¡¼¥×¤Î̾Á°:"
+
+#: src/LYShowInfo.c:224
+msgid "File size:"
+msgstr "¥Õ¥¡¥¤¥ë¥µ¥¤¥º:"
+
+#: src/LYShowInfo.c:226
+#, fuzzy
+msgid "(bytes)"
+msgstr "¥Ð¥¤¥È"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:231
+msgid "Creation date:"
+msgstr "ºîÀ®Æü»þ:"
+
+#: src/LYShowInfo.c:234
+msgid "Last modified:"
+msgstr "ºÇ½ªÊѹ¹Æü»þ:"
+
+#: src/LYShowInfo.c:237
+msgid "Last accessed:"
+msgstr "ºÇ¸å¤Ë¥¢¥¯¥»¥¹¤µ¤ì¤¿Æü»þ:"
+
+#: src/LYShowInfo.c:243
+msgid "Access Permissions"
+msgstr "¥¢¥¯¥»¥¹µö²Ä"
+
+#: src/LYShowInfo.c:278
+#, fuzzy
+msgid "Group:"
+msgstr "¥°¥ë¡¼¥×"
+
+#: src/LYShowInfo.c:298
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:305
+msgid "File that you are currently viewing"
+msgstr "¸½ºß¤¢¤Ê¤¿¤¬¸«¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë"
+
+#: src/LYShowInfo.c:313 src/LYShowInfo.c:417
+msgid "Linkname:"
+msgstr "¥ê¥ó¥¯Ì¾"
+
+#: src/LYShowInfo.c:319 src/LYShowInfo.c:334
+msgid "Charset:"
+msgstr "¥­¥ã¥é¥¯¥¿¥»¥Ã¥È:"
+
+#: src/LYShowInfo.c:333
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:340
+msgid "Server:"
+msgstr "¥µ¡¼¥Ð:"
+
+#: src/LYShowInfo.c:343
+msgid "Date:"
+msgstr "Æü»þ:"
+
+#: src/LYShowInfo.c:346
+msgid "Last Mod:"
+msgstr "ºÇ½ª¹¹¿·:"
+
+#: src/LYShowInfo.c:351
+#, fuzzy
+msgid "Expires:"
+msgstr "&nbsp;Í­¸ú´ü¸Â:"
+
+#: src/LYShowInfo.c:354
+msgid "Cache-Control:"
+msgstr "Cache-Control:"
+
+#: src/LYShowInfo.c:357
+msgid "Content-Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:361
+#, fuzzy
+msgid "Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:366
+msgid "Language:"
+msgstr "¸À¸ì:"
+
+#: src/LYShowInfo.c:373
+msgid "Post Data:"
+msgstr "Post ¥Ç¡¼¥¿:"
+
+#: src/LYShowInfo.c:376
+msgid "Post Content Type:"
+msgstr "Post ¥³¥ó¥Æ¥ó¥È¥¿¥¤¥×:"
+
+#: src/LYShowInfo.c:379
+msgid "Owner(s):"
+msgstr "½êÍ­¼Ô:"
+
+#: src/LYShowInfo.c:384
+msgid "size:"
+msgstr "¥µ¥¤¥º:"
+
+#: src/LYShowInfo.c:386
+msgid "lines"
+msgstr "¹Ô"
+
+#: src/LYShowInfo.c:390
+msgid "forms mode"
+msgstr "Ê£¿ô¥Õ¥©¡¼¥à¥â¡¼¥É"
+
+#: src/LYShowInfo.c:392
+msgid "source"
+msgstr "¥½¡¼¥¹"
+
+#: src/LYShowInfo.c:393
+msgid "normal"
+msgstr "Ä̾ï"
+
+#: src/LYShowInfo.c:395
+msgid ", safe"
+msgstr "¡¢°ÂÁ´"
+
+#: src/LYShowInfo.c:397
+msgid ", via internal link"
+msgstr "¡¢ÆâÉô¥ê¥ó¥¯·Ðͳ"
+
+#: src/LYShowInfo.c:402
+msgid ", no-cache"
+msgstr "¡¢¥­¥ã¥Ã¥·¥å̵¤·"
+
+#: src/LYShowInfo.c:404
+msgid ", ISMAP script"
+msgstr "¡¢ISMAP ¥¹¥¯¥ê¥×¥È"
+
+#: src/LYShowInfo.c:406
+msgid ", bookmark file"
+msgstr "¡¢¥Ö¥Ã¥¯¥Þ¡¼¥¯¥Õ¥¡¥¤¥ë"
+
+#: src/LYShowInfo.c:410
+msgid "mode:"
+msgstr "¥â¡¼¥É:"
+
+#: src/LYShowInfo.c:416
+msgid "Link that you currently have selected"
+msgstr "¸½ºßÁªÂò¤·¤Æ¤¤¤ë¥ê¥ó¥¯"
+
+#: src/LYShowInfo.c:425
+msgid "Method:"
+msgstr "¥á¥½¥Ã¥É:"
+
+#: src/LYShowInfo.c:429
+msgid "Enctype:"
+msgstr "Enctype:"
+
+#: src/LYShowInfo.c:435
+#, fuzzy
+msgid "Action:"
+msgstr "¾ì½ê: "
+
+#: src/LYShowInfo.c:440
+msgid "(Form field)"
+msgstr "(¥Õ¥©¡¼¥à¥Õ¥£¡¼¥ë¥É)"
+
+#: src/LYShowInfo.c:449
+msgid "No Links on the current page"
+msgstr "¸½ºß¤Î¥Ú¡¼¥¸¤Ë¤Ï¥ê¥ó¥¯¤¬¤¢¤ê¤Þ¤»¤ó"
+
+#: src/LYShowInfo.c:454
+#, fuzzy
+msgid "Server Headers:"
+msgstr "¥µ¡¼¥Ð:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"lss ¥Õ¥¡¥¤¥ë¤Î¥¹¥¿¥¤¥ë¤ò²òÀÏÃæ¤Ë¥·¥ó¥¿¥Ã¥¯¥¹¥¨¥é¡¼¤ò¸¡½Ð¤·¤Þ¤·¤¿:\n"
+"[%s]\n"
+"¤³¤Î¹Ô¤Ï°Ê²¼¤Î·Á¼°¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó:\n"
+"OBJECT:MONO:COLOR (em:bold:brightblue:white ¤«¤éÁª¤Ö)\n"
+"OBJECT ¤Ï EM¡¢STRONG¡¢B¡¢I¡¢U¡¢BLINK ¤Ê¤É¤«¤é°ì¤ÄÁª¤Ó¤Þ¤¹¡£\n"
+"\n"
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "°Ê²¼¤ÏºÆ¹½ÃۤΤ¿¤á¤ÎÍúÎò¥¹¥¿¥Ã¥¯¤Î¥ê¥¹¥È¤Ç¤¹¡£"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "¥¨¥é¡¼! - ¥¢¥Ã¥×¥í¡¼¥É¥³¥Þ¥ó¥É¤ÎÀßÄ꤬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹¡£"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "ÉÔÀµ¤Ê¥ê¥À¥¤¥ì¥¯¥·¥ç¥ó \"../\" ¤òȯ¸«! ¥ê¥¯¥¨¥¹¥È¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£"
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "ÉÔÀµ¤Ê¥­¥ã¥é¥¯¥¿ \"/\" ȯ¸«! ¥ê¥¯¥¨¥¹¥È¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£"
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "ÉÔÀµ¤Ê¥ê¥À¥¤¥ì¥¯¥·¥ç¥ó \"~\" ȯ¸«! ¥ê¥¯¥¨¥¹¥È¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£"
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "¥Õ¥¡¥¤¥ë¤ò¥¢¥Ã¥×¥í¡¼¥É¤Ç¤­¤Þ¤»¤ó¡£"
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "°Ê²¼¤Ë¥¢¥Ã¥×¥í¡¼¥É:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "¥¢¥Ã¥×¥í¡¼¥É¥ª¥×¥·¥ç¥ó:"
+
+#: src/LYUtils.c:1819
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2604
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "¤³¤Î URL ¥¹¥­¡¼¥à¤Ç¤ÏÁÛÄꤵ¤ì¤Æ¤¤¤Ê¤¤¥¢¥¯¥»¥¹¥×¥í¥È¥³¥ë¤Ç¤¹¡£"
+
+#: src/LYUtils.c:3408
+msgid "Too many tempfiles"
+msgstr "°ì»þ¥Õ¥¡¥¤¥ë¤¬Â¿¤¹¤®¤Þ¤¹"
+
+#: src/LYUtils.c:3708
+msgid "unknown restriction"
+msgstr "ÉÔÌÀ¤ÊÀ©¸Â"
+
+#: src/LYUtils.c:3739
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "À©¸Â¤ÏÀßÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£\n"
+
+#: src/LYUtils.c:3742
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "À©¸Â¤ò°Ê²¼¤ËÀßÄê:\n"
+
+#: src/LYUtils.c:5120
+msgid "Cannot find HOME directory"
+msgstr "HOME ¥Ç¥£¥ì¥¯¥È¥ê¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Ä̾ï¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£lynx.cfg ¤Î ENABLE_LYNXRC ¤ÎÉôʬ¤ò»²¾È¤·¤Æ²¼¤µ¤¤\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+
+#: src/LYrcFile.c:357
+#, fuzzy
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/.lynx_cookies.\n"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr " ----\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"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"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+#, fuzzy
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Lynx User Defaults File\n"
+"\n"
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).  There is normally no need to edit this file manually,\n"
+"since the defaults here can be controlled from the Options Screen, and the\n"
+"next time options are saved from the Options Screen this file will be\n"
+"completely rewritten.  You have been warned...\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called lynx.cfg, and it has different content and a different format.\n"
+"It is not this file.\n"
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "ÍúÎò¥ê¥¹¥È¤¬ºÇÂç¿ô¤òĶ¤¨¤Þ¤·¤¿! ¥É¥­¥å¥á¥ó¥È¤Ï¥×¥Ã¥·¥å¤µ¤ì¤Þ¤»¤ó¡£"
+
+#~ msgid "Short read from file, problem?"
+#~ msgstr "¥Õ¥¡¥¤¥ë¤«¤é¤ÎÆɤ߹þ¤ß¤¬ÃæÃǤ·¤Þ¤·¤¿ ÌäÂêȯÀ¸¤«¤â?"
+
+#~ msgid "KB"
+#~ msgstr "KB"
+
+#~ msgid "reason unknown."
+#~ msgstr "(ÉÔÌÀ)"
+
+#~ msgid "Remove '%s' and all of its contents?"
+#~ msgstr "'%s' ¤È¤½¤ÎÁ´¤Æ¤ÎÆâÍƤòºï½ü¤·¤Þ¤¹¤«?"
+
+#~ msgid "Remove directory and all of its contents?"
+#~ msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤È¤½¤ÎÁ´¤Æ¤ÎÆâÍƤòºï½ü¤·¤Þ¤¹¤«?"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "¥Õ¥¡¥¤¥ë´ÉÍý¥á¥Ë¥å¡¼¥Õ¥¡¥¤¥ë¤ò³«¤±¤Þ¤»¤ó¡£"
diff --git a/po/lynx.pot b/po/lynx.pot
new file mode 100644
index 00000000..d933d2b0
--- /dev/null
+++ b/po/lynx.pot
@@ -0,0 +1,5872 @@
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.8dev.9\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-02-12 19:13-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:27
+#, c-format
+msgid "Alert!: %s"
+msgstr ""
+
+#: LYMessages.c:28
+msgid "Welcome"
+msgstr ""
+
+#: LYMessages.c:29
+msgid "Are you sure you want to quit?"
+msgstr ""
+
+#: LYMessages.c:31
+msgid "Really exit from Lynx?"
+msgstr ""
+
+#: LYMessages.c:33
+msgid "Connection interrupted."
+msgstr ""
+
+#: LYMessages.c:34
+msgid "Data transfer interrupted."
+msgstr ""
+
+#: LYMessages.c:35
+msgid "Cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:36
+msgid "Cancelling!"
+msgstr ""
+
+#: LYMessages.c:37
+msgid "Excellent!!!"
+msgstr ""
+
+#: LYMessages.c:38
+msgid "OK"
+msgstr ""
+
+#: LYMessages.c:39
+msgid "Done!"
+msgstr ""
+
+#: LYMessages.c:40
+msgid "Bad request!"
+msgstr ""
+
+#: LYMessages.c:41
+msgid "previous"
+msgstr ""
+
+#: LYMessages.c:42
+msgid "next screen"
+msgstr ""
+
+#: LYMessages.c:43
+msgid "HELP!"
+msgstr ""
+
+#: LYMessages.c:44
+msgid ", help on "
+msgstr ""
+
+#. #define HELP
+#: LYMessages.c:46
+msgid ""
+"Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr ""
+
+#. #define MOREHELP
+#: LYMessages.c:48
+msgid ""
+"-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr ""
+
+#: LYMessages.c:49
+msgid "-- press space for next page --"
+msgstr ""
+
+#: LYMessages.c:50
+msgid "URL too long"
+msgstr ""
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:56
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:58
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:60
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:62
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr ""
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:64
+#, c-format
+msgid ""
+"(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr ""
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:66
+msgid ""
+"(Form field) Inactive. Press <return> to edit, press <return> twice to "
+"submit."
+msgstr ""
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:68
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr ""
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:70
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:73
+msgid ""
+"UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:75
+msgid ""
+"(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:77
+msgid ""
+"(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:79
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:81
+#, c-format
+msgid ""
+"(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:83
+msgid ""
+"UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:85
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:87
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:89
+msgid ""
+"(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:91
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:93
+msgid ""
+"(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:95
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr ""
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:97
+msgid ""
+"(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:99
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:101
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr ""
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:103
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:105
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr ""
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:107
+msgid ""
+"UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:109
+msgid "Submit ('x' for no cache) to "
+msgstr ""
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:111
+msgid "Submit to "
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:113
+msgid ""
+"(Form submit button) Use right-arrow or <return> to submit ('x' for no "
+"cache)."
+msgstr ""
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:115
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:117
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:119
+msgid "Submit mailto form to "
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:121
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:123
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr ""
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:125
+msgid ""
+"(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr ""
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:127
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_BUTTON_MESSAGE
+#: LYMessages.c:129
+msgid "(Script button)   Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_BUTTON_DIS_MSG
+#: LYMessages.c:131
+msgid "DISABLED Script button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:133
+msgid ""
+"(Option list) Hit return and use arrow keys and return to select option."
+msgstr ""
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:135
+msgid ""
+"(Choice list) Hit return and use arrow keys and return to select option."
+msgstr ""
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:137
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr ""
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:139
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr ""
+
+#: LYMessages.c:140
+msgid "Submitting form..."
+msgstr ""
+
+#: LYMessages.c:141
+msgid "Resetting form..."
+msgstr ""
+
+#. #define RELOADING_FORM
+#: LYMessages.c:143
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr ""
+
+#. #define LINK_NOT_IN_FORM
+#: LYMessages.c:145
+msgid "The current link is not in a FORM"
+msgstr ""
+
+#: LYMessages.c:146
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr ""
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:149
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr ""
+
+#: LYMessages.c:150
+msgid "The resource requested is not available at this time."
+msgstr ""
+
+#: LYMessages.c:151
+msgid "Enter Lynx keystroke command: "
+msgstr ""
+
+#: LYMessages.c:152
+msgid "Looking up "
+msgstr ""
+
+#: LYMessages.c:153
+#, c-format
+msgid "Getting %s"
+msgstr ""
+
+#: LYMessages.c:154
+#, c-format
+msgid "Skipping %s"
+msgstr ""
+
+#: LYMessages.c:155
+#, c-format
+msgid "Using %s"
+msgstr ""
+
+#: LYMessages.c:156
+#, c-format
+msgid "Illegal URL: %s"
+msgstr ""
+
+#: LYMessages.c:157
+#, c-format
+msgid "Badly formed address %s"
+msgstr ""
+
+#: LYMessages.c:158
+#, c-format
+msgid "URL: %s"
+msgstr ""
+
+#: LYMessages.c:159
+msgid "Unable to access WWW file!!!"
+msgstr ""
+
+#: LYMessages.c:160
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr ""
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:162
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr ""
+
+#: LYMessages.c:163
+msgid "You have entered an invalid link number."
+msgstr ""
+
+#. #define SOURCE_HELP
+#: LYMessages.c:165
+msgid ""
+"Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr ""
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:167
+msgid ""
+"  Arrow keys: Up and Down to move.  Right to follow a link; Left to go "
+"back.  \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:169
+msgid ""
+" H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history "
+"list \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:171
+msgid ""
+"  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)"
+"uit  \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:173
+msgid ""
+"  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search "
+"doc: / \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:175
+msgid ""
+"O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)"
+"emove \n"
+msgstr ""
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:177
+msgid ""
+"            Enter text into the field by typing on the keyboard              "
+msgstr ""
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:179
+msgid ""
+"    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr ""
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:181
+msgid ""
+"      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr ""
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:183
+#, c-format
+msgid ""
+"    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr ""
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:185
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr ""
+
+#. mailto
+#: LYMessages.c:188
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr ""
+
+#: LYMessages.c:189
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr ""
+
+#: LYMessages.c:190
+msgid "Mail disallowed!  Cannot submit."
+msgstr ""
+
+#: LYMessages.c:191
+msgid "Mailto form submission failed!"
+msgstr ""
+
+#: LYMessages.c:192
+msgid "Mailto form submission Cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:193
+msgid "Sending form content..."
+msgstr ""
+
+#: LYMessages.c:194
+msgid "No email address is present in mailto URL!"
+msgstr ""
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:196
+msgid "Unable to open temporary file for mailto URL!"
+msgstr ""
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:198
+msgid "Do you wish to include the original message?"
+msgstr ""
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:200
+msgid "Do you wish to include the preparsed source?"
+msgstr ""
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:202
+msgid "Spawning your selected editor to edit mail message"
+msgstr ""
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:204
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr ""
+
+#: LYMessages.c:205
+msgid "Send this comment?"
+msgstr ""
+
+#: LYMessages.c:206
+msgid "Send this message?"
+msgstr ""
+
+#: LYMessages.c:207
+msgid "Sending your message..."
+msgstr ""
+
+#: LYMessages.c:208
+msgid "Sending your comment:"
+msgstr ""
+
+#. textarea
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr ""
+
+#: LYMessages.c:212
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr ""
+
+#: LYMessages.c:214
+msgid "file: ACTIONs are disallowed!"
+msgstr ""
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:216
+msgid "file: URLs via served links are disallowed!"
+msgstr ""
+
+#: LYMessages.c:217
+msgid "Access to local files denied."
+msgstr ""
+
+#: LYMessages.c:218
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr ""
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:220
+msgid "This special URL is not allowed in external documents!"
+msgstr ""
+
+#: LYMessages.c:221
+msgid "Press <return> to return to Lynx."
+msgstr ""
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:224
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr ""
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:228
+msgid "Type EXIT to return to Lynx.\n"
+msgstr ""
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:231
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr ""
+
+#: LYMessages.c:234
+msgid "Spawning is currently disabled."
+msgstr ""
+
+#: LYMessages.c:235
+msgid "The 'd'ownload command is currently disabled."
+msgstr ""
+
+#: LYMessages.c:236
+msgid "You cannot download an input field."
+msgstr ""
+
+#: LYMessages.c:237
+msgid "Form has a mailto action!  Cannot download."
+msgstr ""
+
+#: LYMessages.c:238
+msgid "You cannot download a mailto: link."
+msgstr ""
+
+#: LYMessages.c:239
+msgid "You cannot download cookies."
+msgstr ""
+
+#: LYMessages.c:240
+msgid "You cannot download a printing option."
+msgstr ""
+
+#: LYMessages.c:241
+msgid "You cannot download an upload option."
+msgstr ""
+
+#: LYMessages.c:242
+msgid "You cannot download an permit option."
+msgstr ""
+
+#: LYMessages.c:243
+msgid "This special URL cannot be downloaded!"
+msgstr ""
+
+#: LYMessages.c:244
+msgid "Nothing to download."
+msgstr ""
+
+#: LYMessages.c:245
+msgid "Trace ON!"
+msgstr ""
+
+#: LYMessages.c:246
+msgid "Trace OFF!"
+msgstr ""
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:248
+msgid "Links will be included for all images!  Reloading..."
+msgstr ""
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:250
+msgid "Standard image handling restored!  Reloading..."
+msgstr ""
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:252
+msgid ""
+"Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr ""
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:254
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:256
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr ""
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:258
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr ""
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:260
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr ""
+
+#: LYMessages.c:261
+msgid "Sorry, the document is not an http URL."
+msgstr ""
+
+#: LYMessages.c:262
+msgid "Sorry, the link is not an http URL."
+msgstr ""
+
+#: LYMessages.c:263
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr ""
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:265
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr ""
+
+#: LYMessages.c:266
+msgid "Not an http URL or form ACTION!"
+msgstr ""
+
+#: LYMessages.c:267
+msgid "This special URL cannot be a form ACTION!"
+msgstr ""
+
+#: LYMessages.c:268
+msgid "URL is not in starting realm!"
+msgstr ""
+
+#: LYMessages.c:269
+msgid "News posting is disabled!"
+msgstr ""
+
+#: LYMessages.c:270
+msgid "File management support is disabled!"
+msgstr ""
+
+#: LYMessages.c:271
+msgid "No jump file is currently available."
+msgstr ""
+
+#: LYMessages.c:272
+msgid "Jump to (use '?' for list): "
+msgstr ""
+
+#: LYMessages.c:273
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:274
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr ""
+
+#: LYMessages.c:275
+msgid "No random URLs have been used thus far."
+msgstr ""
+
+#: LYMessages.c:276
+msgid "Bookmark features are currently disabled."
+msgstr ""
+
+#: LYMessages.c:277
+msgid "Execution via bookmarks is disabled."
+msgstr ""
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:279
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr ""
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:281
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr ""
+
+#: LYMessages.c:282
+msgid "ERROR - unable to open bookmark file."
+msgstr ""
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:284
+msgid "Unable to open bookmark file for deletion of link."
+msgstr ""
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:286
+msgid "Unable to open scratch file for deletion of link."
+msgstr ""
+
+#: LYMessages.c:288
+msgid "Error renaming scratch file."
+msgstr ""
+
+#: LYMessages.c:290
+msgid "Error renaming temporary file."
+msgstr ""
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:292
+msgid "Unable to copy temporary file for deletion of link."
+msgstr ""
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:294
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr ""
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:297
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr ""
+
+#: LYMessages.c:298
+msgid "Bookmark deletion failed."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:300
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:302
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr ""
+
+#: LYMessages.c:303
+msgid "There are no links in this bookmark file!"
+msgstr ""
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:305
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr ""
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:307
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr ""
+
+#: LYMessages.c:308
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr ""
+
+#: LYMessages.c:309
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr ""
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:311
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr ""
+
+#: LYMessages.c:312
+msgid "Cannot save form fields/links"
+msgstr ""
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:314
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr ""
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:316
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr ""
+
+#: LYMessages.c:317
+msgid "Malformed address."
+msgstr ""
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:319
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:321
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr ""
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:323
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:325
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:327
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:329
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:331
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:333
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr ""
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing ON!"
+msgstr ""
+
+#: LYMessages.c:335
+msgid "Soft double-quote parsing OFF!"
+msgstr ""
+
+#: LYMessages.c:336
+msgid "Now using TagSoup parsing of HTML."
+msgstr ""
+
+#: LYMessages.c:337
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr ""
+
+#: LYMessages.c:338
+msgid "You are already at the end of this document."
+msgstr ""
+
+#: LYMessages.c:339
+msgid "You are already at the beginning of this document."
+msgstr ""
+
+#: LYMessages.c:340
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr ""
+
+#: LYMessages.c:341
+#, c-format
+msgid "Link number %d already is current."
+msgstr ""
+
+#: LYMessages.c:342
+msgid "You are already at the first document"
+msgstr ""
+
+#: LYMessages.c:343
+msgid "There are no links above this line of the document."
+msgstr ""
+
+#: LYMessages.c:344
+msgid "There are no links below this line of the document."
+msgstr ""
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:346
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr ""
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:348
+msgid "You are not on a form submission button or normal link."
+msgstr ""
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:350
+msgid "One radio button must be checked at all times!"
+msgstr ""
+
+#: LYMessages.c:351
+msgid "No submit button for this form, submit single text field?"
+msgstr ""
+
+#: LYMessages.c:352
+msgid "Do you want to go back to the previous document?"
+msgstr ""
+
+#: LYMessages.c:353
+msgid "Use arrows or tab to move off of field."
+msgstr ""
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:355
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr ""
+
+#: LYMessages.c:356
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr ""
+
+#: LYMessages.c:357
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr ""
+
+#: LYMessages.c:358
+msgid "Unable to create popup window!"
+msgstr ""
+
+#: LYMessages.c:359
+msgid "Goto a random URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:360
+msgid "Goto a non-http URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:361
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr ""
+
+#: LYMessages.c:362
+msgid "URL to open: "
+msgstr ""
+
+#: LYMessages.c:363
+msgid "Edit the current Goto URL: "
+msgstr ""
+
+#: LYMessages.c:364
+msgid "Edit the previous Goto URL: "
+msgstr ""
+
+#: LYMessages.c:365
+msgid "Edit a previous Goto URL: "
+msgstr ""
+
+#: LYMessages.c:366
+msgid "Current document has POST data."
+msgstr ""
+
+#: LYMessages.c:367
+msgid "Edit this document's URL: "
+msgstr ""
+
+#: LYMessages.c:368
+msgid "Edit the current link's URL: "
+msgstr ""
+
+#: LYMessages.c:369
+msgid "Edit the form's submit-URL: "
+msgstr ""
+
+#: LYMessages.c:370
+msgid "You cannot edit File Management URLs"
+msgstr ""
+
+#: LYMessages.c:371
+msgid "Enter a database query: "
+msgstr ""
+
+#: LYMessages.c:372
+msgid "Enter a whereis query: "
+msgstr ""
+
+#: LYMessages.c:373
+msgid "Edit the current query: "
+msgstr ""
+
+#: LYMessages.c:374
+msgid "Edit the previous query: "
+msgstr ""
+
+#: LYMessages.c:375
+msgid "Edit a previous query: "
+msgstr ""
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:377
+msgid "Use Control-R to resubmit the current query."
+msgstr ""
+
+#: LYMessages.c:378
+msgid "Edit the current shortcut: "
+msgstr ""
+
+#: LYMessages.c:379
+msgid "Edit the previous shortcut: "
+msgstr ""
+
+#: LYMessages.c:380
+msgid "Edit a previous shortcut: "
+msgstr ""
+
+#: LYMessages.c:381
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr ""
+
+#: LYMessages.c:382
+msgid "Cannot locate jump file!"
+msgstr ""
+
+#: LYMessages.c:383
+msgid "Cannot open jump file!"
+msgstr ""
+
+#: LYMessages.c:384
+msgid "Error reading jump file!"
+msgstr ""
+
+#: LYMessages.c:385
+msgid "Out of memory reading jump file!"
+msgstr ""
+
+#: LYMessages.c:386
+msgid "Out of memory reading jump table!"
+msgstr ""
+
+#: LYMessages.c:387
+msgid "No index is currently available."
+msgstr ""
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:389
+msgid "Do you really want to go to the Main screen?"
+msgstr ""
+
+#: LYMessages.c:390
+msgid "You are already at main screen!"
+msgstr ""
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:392
+msgid ""
+"Not a searchable indexed document -- press '/' to search for a text string"
+msgstr ""
+
+#. #define NO_OWNER
+#: LYMessages.c:394
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr ""
+
+#: LYMessages.c:395
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr ""
+
+#: LYMessages.c:396
+msgid "Do you wish to send a comment?"
+msgstr ""
+
+#: LYMessages.c:397
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr ""
+
+#: LYMessages.c:398
+msgid "The 'e'dit command is currently disabled."
+msgstr ""
+
+#: LYMessages.c:399
+msgid "External editing is currently disabled."
+msgstr ""
+
+#: LYMessages.c:400
+msgid "System error - failure to get status."
+msgstr ""
+
+#: LYMessages.c:401
+msgid "No editor is defined!"
+msgstr ""
+
+#: LYMessages.c:402
+msgid "The 'p'rint command is currently disabled."
+msgstr ""
+
+#: LYMessages.c:403
+msgid "Document has no Toolbar links or Banner."
+msgstr ""
+
+#: LYMessages.c:404
+msgid "Unable to open traversal file."
+msgstr ""
+
+#: LYMessages.c:405
+msgid "Unable to open traversal found file."
+msgstr ""
+
+#: LYMessages.c:406
+msgid "Unable to open reject file."
+msgstr ""
+
+#: LYMessages.c:407
+msgid "Unable to open traversal errors output file"
+msgstr ""
+
+#: LYMessages.c:408
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr ""
+
+#: LYMessages.c:409
+msgid "Follow link (or goto link or page) number: "
+msgstr ""
+
+#: LYMessages.c:410
+msgid "Select option (or page) number: "
+msgstr ""
+
+#: LYMessages.c:411
+#, c-format
+msgid "Option number %d already is current."
+msgstr ""
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:413
+msgid "You are already at the end of this option list."
+msgstr ""
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:415
+msgid "You are already at the beginning of this option list."
+msgstr ""
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:417
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr ""
+
+#: LYMessages.c:418
+msgid "You have entered an invalid option number."
+msgstr ""
+
+#: LYMessages.c:419
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr ""
+
+#: LYMessages.c:420
+msgid "Give name of file to save in"
+msgstr ""
+
+#: LYMessages.c:421
+msgid "Can't save data to file -- please run WWW locally"
+msgstr ""
+
+#: LYMessages.c:422
+msgid "Can't open temporary file!"
+msgstr ""
+
+#: LYMessages.c:423
+msgid "Can't open output file!  Cancelling!"
+msgstr ""
+
+#: LYMessages.c:424
+msgid "Execution is disabled."
+msgstr ""
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:426
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr ""
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:428
+msgid "Execution capabilities are not compiled into this version."
+msgstr ""
+
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal."
+msgstr ""
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:431
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr ""
+
+#: LYMessages.c:432
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr ""
+
+#: LYMessages.c:433
+msgid "Cancelling file."
+msgstr ""
+
+#: LYMessages.c:434
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr ""
+
+#: LYMessages.c:435
+msgid "Enter a filename: "
+msgstr ""
+
+#: LYMessages.c:436
+msgid "Edit the previous filename: "
+msgstr ""
+
+#: LYMessages.c:437
+msgid "Edit a previous filename: "
+msgstr ""
+
+#: LYMessages.c:438
+msgid "Enter a new filename: "
+msgstr ""
+
+#: LYMessages.c:439
+msgid "File name may not begin with a dot."
+msgstr ""
+
+#: LYMessages.c:441
+msgid "File exists.  Create higher version?"
+msgstr ""
+
+#: LYMessages.c:443
+msgid "File exists.  Overwrite?"
+msgstr ""
+
+#: LYMessages.c:445
+msgid "Cannot write to file."
+msgstr ""
+
+#: LYMessages.c:446
+msgid "ERROR! - download command is misconfigured."
+msgstr ""
+
+#: LYMessages.c:447
+msgid "Unable to download file."
+msgstr ""
+
+#: LYMessages.c:448
+msgid "Reading directory..."
+msgstr ""
+
+#: LYMessages.c:449
+msgid "Building directory listing..."
+msgstr ""
+
+#: LYMessages.c:450
+msgid "Saving..."
+msgstr ""
+
+#: LYMessages.c:451
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr ""
+
+#: LYMessages.c:452
+msgid "Unable to access document!"
+msgstr ""
+
+#: LYMessages.c:453
+msgid "Could not access file."
+msgstr ""
+
+#: LYMessages.c:454
+msgid "Could not access directory."
+msgstr ""
+
+#: LYMessages.c:455
+msgid "Could not load data."
+msgstr ""
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:457
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr ""
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:459
+msgid "This field cannot be (e)dited with an external editor."
+msgstr ""
+
+#: LYMessages.c:460
+msgid "Bad rule"
+msgstr ""
+
+#: LYMessages.c:461
+msgid "Insufficient operands:"
+msgstr ""
+
+#: LYMessages.c:462
+msgid "You are not authorized to edit this file."
+msgstr ""
+
+#: LYMessages.c:463
+msgid "Title: "
+msgstr ""
+
+#: LYMessages.c:464
+msgid "Subject: "
+msgstr ""
+
+#: LYMessages.c:465
+msgid "Username: "
+msgstr ""
+
+#: LYMessages.c:466
+msgid "Password: "
+msgstr ""
+
+#: LYMessages.c:467
+msgid "lynx: Username and Password required!!!"
+msgstr ""
+
+#: LYMessages.c:468
+msgid "lynx: Password required!!!"
+msgstr ""
+
+#: LYMessages.c:469
+msgid "Clear all authorization info for this session?"
+msgstr ""
+
+#: LYMessages.c:470
+msgid "Authorization info cleared."
+msgstr ""
+
+#: LYMessages.c:471
+msgid "Authorization failed.  Retry?"
+msgstr ""
+
+#: LYMessages.c:472
+msgid "cgi support has been disabled."
+msgstr ""
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:474
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr ""
+
+#: LYMessages.c:475
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr ""
+
+#: LYMessages.c:476
+msgid "Unable to set up connection."
+msgstr ""
+
+#: LYMessages.c:477
+msgid "Unable to make connection"
+msgstr ""
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:479
+msgid "Executable link rejected due to malformed request."
+msgstr ""
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:481
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr ""
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr ""
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:485
+msgid "Executable link rejected due to location or path."
+msgstr ""
+
+#: LYMessages.c:486
+msgid "Mail access is disabled!"
+msgstr ""
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:488
+msgid "Only files and servers on the local host can be accessed."
+msgstr ""
+
+#: LYMessages.c:489
+msgid "Telnet access is disabled!"
+msgstr ""
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:491
+msgid "Telnet port specifications are disabled."
+msgstr ""
+
+#: LYMessages.c:492
+msgid "USENET news access is disabled!"
+msgstr ""
+
+#: LYMessages.c:493
+msgid "Rlogin access is disabled!"
+msgstr ""
+
+#: LYMessages.c:494
+msgid "Ftp access is disabled!"
+msgstr ""
+
+#: LYMessages.c:495
+msgid "There are no references from this document."
+msgstr ""
+
+#: LYMessages.c:496
+msgid "There are only hidden links from this document."
+msgstr ""
+
+#: LYMessages.c:498
+msgid "Unable to open command file."
+msgstr ""
+
+#: LYMessages.c:500
+msgid "News Post Cancelled!!!"
+msgstr ""
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:502
+msgid "Spawning your selected editor to edit news message"
+msgstr ""
+
+#: LYMessages.c:503
+msgid "Post this message?"
+msgstr ""
+
+#: LYMessages.c:504
+#, c-format
+msgid "Append '%s'?"
+msgstr ""
+
+#: LYMessages.c:505
+msgid "Posting to newsgroup(s)..."
+msgstr ""
+
+#: LYMessages.c:507
+msgid "*** You have unread mail. ***"
+msgstr ""
+
+#: LYMessages.c:509
+msgid "*** You have mail. ***"
+msgstr ""
+
+#: LYMessages.c:511
+msgid "*** You have new mail. ***"
+msgstr ""
+
+#: LYMessages.c:512
+msgid "File insert cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:513
+msgid "Not enough memory for file!"
+msgstr ""
+
+#: LYMessages.c:514
+msgid "Can't open file for reading."
+msgstr ""
+
+#: LYMessages.c:515
+msgid "File does not exist."
+msgstr ""
+
+#: LYMessages.c:516
+msgid "File does not exist - reenter or cancel:"
+msgstr ""
+
+#: LYMessages.c:517
+msgid "File is not readable."
+msgstr ""
+
+#: LYMessages.c:518
+msgid "File is not readable - reenter or cancel:"
+msgstr ""
+
+#: LYMessages.c:519
+msgid "Nothing to insert - file is 0-length."
+msgstr ""
+
+#: LYMessages.c:520
+msgid "Save request cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:521
+msgid "Mail request cancelled!!!"
+msgstr ""
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:523
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr ""
+
+#: LYMessages.c:524
+msgid "Please wait..."
+msgstr ""
+
+#: LYMessages.c:525
+msgid "Mailing file.  Please wait..."
+msgstr ""
+
+#: LYMessages.c:526
+msgid "ERROR - Unable to mail file"
+msgstr ""
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:528
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr ""
+
+#: LYMessages.c:529
+msgid "Print request cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:530
+msgid "Press <return> to begin: "
+msgstr ""
+
+#: LYMessages.c:531
+msgid "Press <return> to finish: "
+msgstr ""
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:533
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr ""
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:535
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr ""
+
+#: LYMessages.c:536
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr ""
+
+#: LYMessages.c:537
+msgid "Unable to open tempfile"
+msgstr ""
+
+#: LYMessages.c:538
+msgid "Unable to open print options file"
+msgstr ""
+
+#: LYMessages.c:539
+msgid "Printing file.  Please wait..."
+msgstr ""
+
+#: LYMessages.c:540
+msgid "Please enter a valid internet mail address: "
+msgstr ""
+
+#: LYMessages.c:541
+msgid "ERROR! - printer is misconfigured!"
+msgstr ""
+
+#: LYMessages.c:542
+msgid "Image map from POST response not available!"
+msgstr ""
+
+#: LYMessages.c:543
+msgid "Misdirected client-side image MAP request!"
+msgstr ""
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not accessible!"
+msgstr ""
+
+#: LYMessages.c:545
+msgid "No client-side image MAPs are available!"
+msgstr ""
+
+#: LYMessages.c:546
+msgid "Client-side image MAP is not available!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:549
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:551
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:553
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr ""
+
+#: LYMessages.c:555
+msgid "That key requires Advanced User mode."
+msgstr ""
+
+#: LYMessages.c:556
+#, c-format
+msgid "Content-type: %s"
+msgstr ""
+
+#: LYMessages.c:557
+msgid "Command: "
+msgstr ""
+
+#: LYMessages.c:558
+msgid "Unknown or ambiguous command"
+msgstr ""
+
+#: LYMessages.c:559
+msgid " Version "
+msgstr ""
+
+#: LYMessages.c:560
+msgid " first"
+msgstr ""
+
+#: LYMessages.c:561
+msgid ", guessing..."
+msgstr ""
+
+#: LYMessages.c:562
+msgid "Permissions for "
+msgstr ""
+
+#: LYMessages.c:563
+msgid "Select "
+msgstr ""
+
+#: LYMessages.c:564
+msgid "capital letter"
+msgstr ""
+
+#: LYMessages.c:565
+msgid " of option line,"
+msgstr ""
+
+#: LYMessages.c:566
+msgid " to save,"
+msgstr ""
+
+#: LYMessages.c:567
+msgid " to "
+msgstr ""
+
+#: LYMessages.c:568
+msgid " or "
+msgstr ""
+
+#: LYMessages.c:569
+msgid " index"
+msgstr ""
+
+#: LYMessages.c:570
+msgid " to return to Lynx."
+msgstr ""
+
+#: LYMessages.c:571
+msgid "Accept Changes"
+msgstr ""
+
+#: LYMessages.c:572
+msgid "Reset Changes"
+msgstr ""
+
+#: LYMessages.c:573
+msgid "Left Arrow cancels changes"
+msgstr ""
+
+#: LYMessages.c:574
+msgid "Save options to disk"
+msgstr ""
+
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data."
+msgstr ""
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:577
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr ""
+
+#: LYMessages.c:578
+msgid "Value accepted!"
+msgstr ""
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr ""
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:582
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr ""
+
+#: LYMessages.c:583
+msgid "You are not allowed to change which editor to use!"
+msgstr ""
+
+#: LYMessages.c:584
+msgid "Failed to set DISPLAY variable!"
+msgstr ""
+
+#: LYMessages.c:585
+msgid "Failed to clear DISPLAY variable!"
+msgstr ""
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:587
+msgid "You are not allowed to change the bookmark file!"
+msgstr ""
+
+#: LYMessages.c:588
+msgid "Terminal does not support color"
+msgstr ""
+
+#: LYMessages.c:589
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr ""
+
+#: LYMessages.c:590
+msgid "Access to dot files is disabled!"
+msgstr ""
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:592
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr ""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:594
+msgid ""
+"Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional "
+"deception!"
+msgstr ""
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:596
+msgid "Changing of the User-Agent string is disabled!"
+msgstr ""
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:598
+msgid "You are not allowed to change this setting."
+msgstr ""
+
+#: LYMessages.c:599
+msgid "Saving Options..."
+msgstr ""
+
+#: LYMessages.c:600
+msgid "Options saved!"
+msgstr ""
+
+#: LYMessages.c:601
+msgid "Unable to save Options!"
+msgstr ""
+
+#: LYMessages.c:602
+msgid " 'r' to return to Lynx "
+msgstr ""
+
+#: LYMessages.c:603
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr ""
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:605
+msgid "Hit any key to change value; RETURN to accept."
+msgstr ""
+
+#: LYMessages.c:606
+msgid "Error uncompressing temporary file!"
+msgstr ""
+
+#: LYMessages.c:607
+msgid "Unsupported URL scheme!"
+msgstr ""
+
+#: LYMessages.c:608
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr ""
+
+#: LYMessages.c:609
+msgid "Redirection limit of 10 URL's reached."
+msgstr ""
+
+#: LYMessages.c:610
+msgid "Illegal redirection URL received from server!"
+msgstr ""
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:612
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr ""
+
+#: LYMessages.c:615
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr ""
+
+#: LYMessages.c:616
+msgid "P)roceed, or C)ancel "
+msgstr ""
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr ""
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:620
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr ""
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:622
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr ""
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:624
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr ""
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:626
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr ""
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:628
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:630
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#: LYMessages.c:631
+msgid "Proceed without a username and password?"
+msgstr ""
+
+#: LYMessages.c:632
+#, c-format
+msgid "Proceed (%s)?"
+msgstr ""
+
+#: LYMessages.c:633
+msgid "Cannot POST to this host."
+msgstr ""
+
+#: LYMessages.c:634
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr ""
+
+#: LYMessages.c:635
+msgid "Discarding POST data..."
+msgstr ""
+
+#: LYMessages.c:636
+msgid "Document will not be reloaded!"
+msgstr ""
+
+#: LYMessages.c:637
+msgid "Location: "
+msgstr ""
+
+#: LYMessages.c:638
+#, c-format
+msgid "'%s' not found!"
+msgstr ""
+
+#: LYMessages.c:639
+msgid "Default Bookmark File"
+msgstr ""
+
+#: LYMessages.c:640
+msgid "Screen too small! (8x35 min)"
+msgstr ""
+
+#: LYMessages.c:641
+msgid "Select destination or ^G to Cancel: "
+msgstr ""
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:643
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr ""
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:645
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr ""
+
+#: LYMessages.c:646
+msgid "Multiple bookmark support is not available."
+msgstr ""
+
+#: LYMessages.c:647
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr ""
+
+#: LYMessages.c:648
+msgid "       Select Bookmark"
+msgstr ""
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:650
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr ""
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:652
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr ""
+
+#: LYMessages.c:653
+msgid "Letter: "
+msgstr ""
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:656
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr ""
+
+#: LYMessages.c:658
+msgid "Use a filepath off your home directory!"
+msgstr ""
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:661
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr ""
+
+#: LYMessages.c:662
+msgid "No previously visited links available!"
+msgstr ""
+
+#: LYMessages.c:663
+msgid "Memory exhausted!  Program aborted!"
+msgstr ""
+
+#: LYMessages.c:664
+msgid "Memory exhausted!  Aborting..."
+msgstr ""
+
+#: LYMessages.c:665
+msgid "Not enough memory!"
+msgstr ""
+
+#: LYMessages.c:666
+msgid "Directory/File Manager not available"
+msgstr ""
+
+#: LYMessages.c:667
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr ""
+
+#: LYMessages.c:668
+msgid "Location URL is not absolute."
+msgstr ""
+
+#: LYMessages.c:669
+msgid "Refresh URL is not absolute."
+msgstr ""
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:671
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:672
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:673
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:674
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:676
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:680
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:682
+msgid " means to contact you, if you desire a response.\n"
+msgstr ""
+
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+
+#: LYMessages.c:686
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr ""
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+
+#: LYMessages.c:688
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+
+#: LYMessages.c:690
+msgid " Use Control-U to erase the default.\n"
+msgstr ""
+
+#: LYMessages.c:691
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:693 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:695 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr ""
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr ""
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:703
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr ""
+
+#: LYMessages.c:704
+msgid "Allowing this cookie."
+msgstr ""
+
+#: LYMessages.c:705
+msgid "Rejecting this cookie."
+msgstr ""
+
+#: LYMessages.c:706
+msgid "The Cookie Jar is empty."
+msgstr ""
+
+#: LYMessages.c:707
+msgid "The Cache Jar is empty."
+msgstr ""
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:709
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr ""
+
+#: LYMessages.c:710
+msgid "or to change a domain's 'allow' setting."
+msgstr ""
+
+#: LYMessages.c:711
+msgid "(Cookies never allowed.)"
+msgstr ""
+
+#: LYMessages.c:712
+msgid "(Cookies always allowed.)"
+msgstr ""
+
+#: LYMessages.c:713
+msgid "(Cookies allowed via prompt.)"
+msgstr ""
+
+#: LYMessages.c:714
+msgid "(Persistent Cookies.)"
+msgstr ""
+
+#: LYMessages.c:715
+msgid "(No title.)"
+msgstr ""
+
+#: LYMessages.c:716
+msgid "(No name.)"
+msgstr ""
+
+#: LYMessages.c:717
+msgid "(No value.)"
+msgstr ""
+
+#: LYMessages.c:718 src/LYOptions.c:2409
+msgid "None"
+msgstr ""
+
+#: LYMessages.c:719
+msgid "(End of session.)"
+msgstr ""
+
+#: LYMessages.c:720
+msgid "Delete this cookie?"
+msgstr ""
+
+#: LYMessages.c:721
+msgid "The cookie has been eaten!"
+msgstr ""
+
+#: LYMessages.c:722
+msgid "Delete this empty domain?"
+msgstr ""
+
+#: LYMessages.c:723
+msgid "The domain has been eaten!"
+msgstr ""
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid ""
+"D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr ""
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:727
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr ""
+
+#: LYMessages.c:728
+msgid "All cookies in the domain have been eaten!"
+msgstr ""
+
+#: LYMessages.c:729
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr ""
+
+#: LYMessages.c:730
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr ""
+
+#: LYMessages.c:731
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr ""
+
+#: LYMessages.c:732
+msgid "Delete all cookies in this domain?"
+msgstr ""
+
+#: LYMessages.c:733
+msgid "All of the cookies in the jar have been eaten!"
+msgstr ""
+
+#: LYMessages.c:735
+msgid "Port 19 not permitted in URLs."
+msgstr ""
+
+#: LYMessages.c:736
+msgid "Port 25 not permitted in URLs."
+msgstr ""
+
+#: LYMessages.c:737
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr ""
+
+#: LYMessages.c:738
+msgid "URL has a bad port field."
+msgstr ""
+
+#: LYMessages.c:739
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr ""
+
+#: LYMessages.c:740
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr ""
+
+#: LYMessages.c:741
+msgid "Trace Log open failed.  Trace off!"
+msgstr ""
+
+#: LYMessages.c:742
+msgid "Lynx Trace Log"
+msgstr ""
+
+#: LYMessages.c:743
+msgid "No trace log has been started for this session."
+msgstr ""
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:745
+msgid "The maximum temporary file count has been reached!"
+msgstr ""
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:747
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr ""
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:749
+msgid "Modified tail combined with head of form field value."
+msgstr ""
+
+#. HTFile.c
+#: LYMessages.c:752
+msgid "Directory"
+msgstr ""
+
+#: LYMessages.c:753
+msgid "Directory browsing is not allowed."
+msgstr ""
+
+#: LYMessages.c:754
+msgid "Selective access is not enabled for this directory"
+msgstr ""
+
+#: LYMessages.c:755
+msgid "Multiformat: directory scan failed."
+msgstr ""
+
+#: LYMessages.c:756
+msgid "This directory is not readable."
+msgstr ""
+
+#: LYMessages.c:757
+msgid "Can't access requested file."
+msgstr ""
+
+#: LYMessages.c:758
+msgid "Could not find suitable representation for transmission."
+msgstr ""
+
+#: LYMessages.c:759
+msgid "Could not open file for decompression!"
+msgstr ""
+
+#: LYMessages.c:760
+msgid "Files:"
+msgstr ""
+
+#: LYMessages.c:761
+msgid "Subdirectories:"
+msgstr ""
+
+#: LYMessages.c:762
+msgid " directory"
+msgstr ""
+
+#: LYMessages.c:763
+msgid "Up to "
+msgstr ""
+
+#: LYMessages.c:764
+msgid "Current directory is "
+msgstr ""
+
+#. HTFTP.c
+#: LYMessages.c:767
+msgid "Symbolic Link"
+msgstr ""
+
+#. HTGopher.c
+#: LYMessages.c:770
+msgid "No response from server!"
+msgstr ""
+
+#: LYMessages.c:771
+msgid "CSO index"
+msgstr ""
+
+#: LYMessages.c:772
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+
+#: LYMessages.c:773
+msgid "CSO Search Results"
+msgstr ""
+
+#: LYMessages.c:774
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr ""
+
+#: LYMessages.c:775
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+
+#: LYMessages.c:776
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+
+#: LYMessages.c:777
+msgid "Gopher index"
+msgstr ""
+
+#: LYMessages.c:778
+msgid "Gopher Menu"
+msgstr ""
+
+#: LYMessages.c:779
+msgid " Search Results"
+msgstr ""
+
+#: LYMessages.c:780
+msgid "Sending CSO/PH request."
+msgstr ""
+
+#: LYMessages.c:781
+msgid "Sending Gopher request."
+msgstr ""
+
+#: LYMessages.c:782
+msgid "CSO/PH request sent; waiting for response."
+msgstr ""
+
+#: LYMessages.c:783
+msgid "Gopher request sent; waiting for response."
+msgstr ""
+
+#: LYMessages.c:784
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+
+#: LYMessages.c:785
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+
+#: LYMessages.c:786
+msgid " person's name in the database.\n"
+msgstr ""
+
+#. HTNews.c
+#: LYMessages.c:789
+msgid "Connection closed ???"
+msgstr ""
+
+#: LYMessages.c:790
+msgid "Cannot open temporary file for news POST."
+msgstr ""
+
+#: LYMessages.c:791
+msgid "This client does not contain support for posting to news with SSL."
+msgstr ""
+
+#. HTStyle.c
+#: LYMessages.c:794
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr ""
+
+#: LYMessages.c:796
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr ""
+
+#: LYMessages.c:797
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr ""
+
+#. HTTP.c
+#: LYMessages.c:800
+msgid "Can't proceed without a username and password."
+msgstr ""
+
+#: LYMessages.c:801
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr ""
+
+#: LYMessages.c:802
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr ""
+
+#: LYMessages.c:803
+msgid "Retrying with proxy authorization information."
+msgstr ""
+
+#: LYMessages.c:804
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr ""
+
+#. HTWAIS.c
+#: LYMessages.c:807
+msgid "HTWAIS: Return message too large."
+msgstr ""
+
+#: LYMessages.c:808
+msgid "Enter WAIS query: "
+msgstr ""
+
+#. Miscellaneous status
+#: LYMessages.c:811
+msgid "Retrying as HTTP0 request."
+msgstr ""
+
+#: LYMessages.c:812
+#, c-format
+msgid "Transferred %d bytes"
+msgstr ""
+
+#: LYMessages.c:813
+msgid "Data transfer complete"
+msgstr ""
+
+#: LYMessages.c:814
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr ""
+
+#. Lynx internal page titles
+#: LYMessages.c:817
+msgid "Address List Page"
+msgstr ""
+
+#: LYMessages.c:818
+msgid "Bookmark file"
+msgstr ""
+
+#: LYMessages.c:819
+msgid "Configuration Definitions"
+msgstr ""
+
+#: LYMessages.c:820
+msgid "Cookie Jar"
+msgstr ""
+
+#: LYMessages.c:821
+msgid "Current Key Map"
+msgstr ""
+
+#: LYMessages.c:822
+msgid "File Management Options"
+msgstr ""
+
+#: LYMessages.c:823
+msgid "Download Options"
+msgstr ""
+
+#: LYMessages.c:824
+msgid "History Page"
+msgstr ""
+
+#: LYMessages.c:825
+msgid "Cache Jar"
+msgstr ""
+
+#: LYMessages.c:826
+msgid "List Page"
+msgstr ""
+
+#: LYMessages.c:827
+msgid "Lynx.cfg Information"
+msgstr ""
+
+#: LYMessages.c:828
+msgid "Converted Mosaic Hotlist"
+msgstr ""
+
+#: LYMessages.c:829
+msgid "Options Menu"
+msgstr ""
+
+#: LYMessages.c:830
+msgid "File Permission Options"
+msgstr ""
+
+#: LYMessages.c:831
+msgid "Printing Options"
+msgstr ""
+
+#: LYMessages.c:832
+msgid "Information about the current document"
+msgstr ""
+
+#: LYMessages.c:833
+msgid "Your recent statusline messages"
+msgstr ""
+
+#: LYMessages.c:834
+msgid "Upload Options"
+msgstr ""
+
+#: LYMessages.c:835
+msgid "Visited Links Page"
+msgstr ""
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:838
+msgid "See also"
+msgstr ""
+
+#: LYMessages.c:839
+msgid "your"
+msgstr ""
+
+#: LYMessages.c:840
+msgid "for runtime options"
+msgstr ""
+
+#: LYMessages.c:841
+msgid "compile time options"
+msgstr ""
+
+#: LYMessages.c:842
+msgid "color-style configuration"
+msgstr ""
+
+#: LYMessages.c:843
+msgid "latest release"
+msgstr ""
+
+#: LYMessages.c:844
+msgid "pre-release version"
+msgstr ""
+
+#: LYMessages.c:845
+msgid "development version"
+msgstr ""
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:847
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:851
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:856
+msgid ""
+"  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)"
+"pload     \n"
+msgstr ""
+
+#: LYMessages.c:857
+msgid "Failed to obtain status of current link!"
+msgstr ""
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:860
+msgid "Special URL only valid from current File Permission menu!"
+msgstr ""
+
+#: LYMessages.c:864
+msgid "External support is currently disabled."
+msgstr ""
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:868
+msgid "Changing working-directory is currently disabled."
+msgstr ""
+
+#: LYMessages.c:869
+msgid "Linewrap OFF!"
+msgstr ""
+
+#: LYMessages.c:870
+msgid "Linewrap ON!"
+msgstr ""
+
+#: LYMessages.c:871
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:872
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:873
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr ""
+
+#: LYMessages.c:874
+msgid "Trace not supported"
+msgstr ""
+
+#: LYMessages.c:795
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr ""
+
+#.
+#. * Set up the message for the username prompt, and then issue the
+#. * prompt.  The default username is included in the call to the
+#. * prompting function, but the password is NULL-ed and always replaced.
+#. * - FM
+#.
+#: WWW/Library/Implementation/HTAABrow.c:634
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:904
+msgid ""
+"This client doesn't know how to compose proxy authorization information for "
+"scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:983
+msgid ""
+"This client doesn't know how to compose authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1093
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1198
+msgid "Proxy authorization required -- retrying"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1256
+msgid "Access without authorization denied -- retrying"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:698
+msgid "Access forbidden by rule"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:793
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:949
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1058 src/GridText.c:8867
+msgid "Loading incomplete."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1089
+#, c-format
+msgid ""
+"**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1091
+#, c-format
+msgid ""
+"**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1092
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr ""
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1098 src/LYMainLoop.c:8050
+msgid "Can't Access"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1106
+msgid "Unable to access document."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:849
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:877
+msgid "Unable to connect to FTP host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1158
+msgid "close master socket"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1220
+msgid "socket for master socket"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:2986
+msgid "Receiving FTP directory."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:3122
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:3480
+msgid "connect for data"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:4141
+msgid "Receiving FTP file."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:278
+msgid "Could not set up finger connection."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:325
+msgid "Could not load data (no sitename in finger URL)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:329
+msgid "Invalid port number - will only use port 79!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:395
+msgid "Could not access finger host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:403
+msgid "No response from finger server."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:421
+#, c-format
+msgid "Username for news host '%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:474
+msgid "Change username?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:478
+msgid "Username:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:503
+#, c-format
+msgid "Password for news host '%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:586
+msgid "Change password?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1707
+#, c-format
+msgid "No matches for: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1757
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1769
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1782
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1805
+msgid "Earlier articles"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1818
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1880
+msgid "All available articles in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2094
+msgid "Later articles"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2117
+msgid "Post to "
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2338
+msgid "This client does not contain support for SNEWS URLs."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2545
+msgid "No target for raw text!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2575
+msgid "Connecting to NewsHost ..."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2627
+#, c-format
+msgid "Could not access %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2733
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2737
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr ""
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2941
+msgid "Reading list of available newsgroups."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2962
+msgid "Reading list of articles in newsgroup."
+msgstr ""
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading news article."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2998
+msgid "Sorry, could not load requested news."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1286
+msgid "Address has invalid port"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1362
+msgid "Address length looks invalid"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1622
+#: WWW/Library/Implementation/HTTCP.c:1640
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr ""
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1637
+#: WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1651
+#, c-format
+msgid "Making %s connection to %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1662
+msgid "socket failed."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1676
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1700
+msgid "Could not make connection non-blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1768
+msgid "Connection failed (too many retries)."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1955
+msgid "Could not restore socket to blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:2021
+msgid "Socket read failed (too many tries)."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:81
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:432
+#, c-format
+msgid "Address contains a username: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:486
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:673
+msgid "This client does not contain support for HTTPS URLs."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:698
+msgid "Unable to connect to remote host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:730
+msgid "Retrying connection without TLS."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:773
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:775
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:777
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:779
+msgid "the certificate has been revoked"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:781
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:903 WWW/Library/Implementation/HTTP.c:945
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:975
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:978
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:991
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1000
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1467
+msgid "Sending HTTP request."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1509
+msgid "Unexpected network write error; connection aborted."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1515
+msgid "HTTP request sent; waiting for response."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1588
+#: WWW/Library/Implementation/HTTP.c:1598
+msgid "Unexpected network read error; connection aborted."
+msgstr ""
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1800
+msgid "Got unexpected Informational Status."
+msgstr ""
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1834
+msgid "Request fulfilled.  Reset Content."
+msgstr ""
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1949
+msgid "Got unexpected 304 Not Modified status."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2012
+msgid "Redirection of POST content requires user approval."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2027
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2071
+msgid "Retrying with access authorization information."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2083
+msgid "Show the 401 message body?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2127
+msgid "Show the 407 message body?"
+msgstr ""
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2227
+msgid "Unknown status reply from server!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:163
+msgid "Could not connect to WAIS server."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:171
+msgid "Could not open WAIS connection for reading."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:193
+msgid "Diagnostic code is "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr ""
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr ""
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:301
+msgid " NOT GIVEN in source file; "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:324
+msgid " WAIS source file"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:331
+msgid " description"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:341
+msgid "Access links"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:362
+msgid "Direct access"
+msgstr ""
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:365
+msgid " (or via proxy server, if defined)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:380
+msgid "Maintainer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:388
+msgid "Host"
+msgstr ""
+
+#: src/GridText.c:699
+msgid "Memory exhausted, display interrupted!"
+msgstr ""
+
+#: src/GridText.c:704
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr ""
+
+#: src/GridText.c:3685
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr ""
+
+#: src/GridText.c:6146
+msgid "text entry field"
+msgstr ""
+
+#: src/GridText.c:6149
+msgid "password entry field"
+msgstr ""
+
+#: src/GridText.c:6152
+msgid "checkbox"
+msgstr ""
+
+#: src/GridText.c:6155
+msgid "radio button"
+msgstr ""
+
+#: src/GridText.c:6158
+msgid "submit button"
+msgstr ""
+
+#: src/GridText.c:6161
+msgid "reset button"
+msgstr ""
+
+#: src/GridText.c:6164
+msgid "script button"
+msgstr ""
+
+#: src/GridText.c:6167
+msgid "popup menu"
+msgstr ""
+
+#: src/GridText.c:6170
+msgid "hidden form field"
+msgstr ""
+
+#: src/GridText.c:6173
+msgid "text entry area"
+msgstr ""
+
+#: src/GridText.c:6176
+msgid "range entry field"
+msgstr ""
+
+#: src/GridText.c:6179
+msgid "file entry field"
+msgstr ""
+
+#: src/GridText.c:6182
+msgid "text-submit field"
+msgstr ""
+
+#: src/GridText.c:6185
+msgid "image-submit button"
+msgstr ""
+
+#: src/GridText.c:6188
+msgid "keygen field"
+msgstr ""
+
+#: src/GridText.c:6191
+msgid "unknown form field"
+msgstr ""
+
+#: src/GridText.c:6211 src/GridText.c:6218 src/LYList.c:248
+msgid "unknown field or link"
+msgstr ""
+
+#: src/GridText.c:10649
+msgid "Can't open file for uploading"
+msgstr ""
+
+#: src/GridText.c:11837
+#, c-format
+msgid "Submitting %s"
+msgstr ""
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12894
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:13056
+msgid "Wrap lines to fit displayed area?"
+msgstr ""
+
+#: src/GridText.c:13696
+msgid "Very long lines have been truncated!"
+msgstr ""
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:364 src/LYShowInfo.c:368
+msgid "bytes"
+msgstr ""
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:303 src/HTAlert.c:329
+#, c-format
+msgid "Read %s of data"
+msgstr ""
+
+#: src/HTAlert.c:326
+#, c-format
+msgid "Read %s of %s of data"
+msgstr ""
+
+#: src/HTAlert.c:335
+#, c-format
+msgid ", %s/sec"
+msgstr ""
+
+#: src/HTAlert.c:347
+#, c-format
+msgid " (stalled for %s)"
+msgstr ""
+
+#: src/HTAlert.c:351
+#, c-format
+msgid ", ETA %s"
+msgstr ""
+
+#: src/HTAlert.c:373
+msgid " (Press 'z' to abort)"
+msgstr ""
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:411 src/HTAlert.c:459
+msgid "yes"
+msgstr ""
+
+#: src/HTAlert.c:414 src/HTAlert.c:460
+msgid "no"
+msgstr ""
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:913
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5915
+msgid "Description:"
+msgstr ""
+
+#: src/HTML.c:5920
+msgid "(none)"
+msgstr ""
+
+#: src/HTML.c:5924
+msgid "Filepath:"
+msgstr ""
+
+#: src/HTML.c:5930
+msgid "(unknown)"
+msgstr ""
+
+#: src/HTML.c:7370
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr ""
+
+#: src/HTML.c:7869
+msgid "Source cache error - disk full?"
+msgstr ""
+
+#: src/HTML.c:7882
+msgid "Source cache error - not enough memory!"
+msgstr ""
+
+#: src/LYBookmark.c:167
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+
+#: src/LYBookmark.c:376
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+
+#: src/LYBookmark.c:379
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+
+#: src/LYBookmark.c:383
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+
+#: src/LYBookmark.c:386
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+
+#: src/LYBookmark.c:684
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr ""
+
+#: src/LYCgi.c:158
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:273
+msgid "Unable to access cgi script"
+msgstr ""
+
+#: src/LYCgi.c:707 src/LYCgi.c:710
+msgid "Good Advice"
+msgstr ""
+
+#: src/LYCgi.c:714
+msgid "An excellent http server for VMS is available via"
+msgstr ""
+
+#: src/LYCgi.c:721
+msgid "this link"
+msgstr ""
+
+#: src/LYCgi.c:725
+msgid "It provides state of the art CGI script support.\n"
+msgstr ""
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr ""
+
+#: src/LYCookie.c:2537
+msgid "(from a previous session)"
+msgstr ""
+
+#: src/LYCookie.c:2598
+msgid "Maximum Gobble Date:"
+msgstr ""
+
+#: src/LYCookie.c:2637
+msgid "Internal"
+msgstr ""
+
+#: src/LYCookie.c:2638
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr ""
+
+#: src/LYCurses.c:1297
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr ""
+
+#: src/LYCurses.c:1780
+msgid "Terminal ="
+msgstr ""
+
+#: src/LYCurses.c:1784
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr ""
+
+#: src/LYCurses.c:1833
+msgid "Your Terminal type is unknown!"
+msgstr ""
+
+#: src/LYCurses.c:1834
+msgid "Enter a terminal type:"
+msgstr ""
+
+#: src/LYCurses.c:1848
+msgid "TERMINAL TYPE IS SET TO"
+msgstr ""
+
+#: src/LYCurses.c:2398
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+
+#: src/LYCurses.c:2401
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+
+#: src/LYEdit.c:272
+#, c-format
+msgid "Error starting editor, %s"
+msgstr ""
+
+#: src/LYEdit.c:275
+msgid "Editor killed by signal"
+msgstr ""
+
+#: src/LYEdit.c:280
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr ""
+
+#: src/LYDownload.c:509
+msgid "Downloaded link:"
+msgstr ""
+
+#: src/LYDownload.c:514
+msgid "Suggested file name:"
+msgstr ""
+
+#: src/LYDownload.c:519
+msgid "Standard download options:"
+msgstr ""
+
+#: src/LYDownload.c:520
+msgid "Download options:"
+msgstr ""
+
+#: src/LYDownload.c:536
+msgid "Save to disk"
+msgstr ""
+
+#: src/LYDownload.c:550
+msgid "View temporary file"
+msgstr ""
+
+#: src/LYDownload.c:557
+msgid "Save to disk disabled."
+msgstr ""
+
+#: src/LYDownload.c:561 src/LYPrint.c:1322
+msgid "Local additions:"
+msgstr ""
+
+#: src/LYDownload.c:572 src/LYUpload.c:209
+msgid "No Name Given"
+msgstr ""
+
+#: src/LYHistory.c:679
+msgid "You selected:"
+msgstr ""
+
+#: src/LYHistory.c:703 src/LYHistory.c:932
+msgid "(no address)"
+msgstr ""
+
+#: src/LYHistory.c:707
+msgid " (internal)"
+msgstr ""
+
+#: src/LYHistory.c:709
+msgid " (was internal)"
+msgstr ""
+
+#: src/LYHistory.c:807
+msgid " (From History)"
+msgstr ""
+
+#: src/LYHistory.c:852
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr ""
+
+#: src/LYHistory.c:1154
+msgid "(No messages yet)"
+msgstr ""
+
+#: src/LYLeaks.c:222
+msgid "Invalid pointer detected."
+msgstr ""
+
+#: src/LYLeaks.c:224 src/LYLeaks.c:262
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:227 src/LYLeaks.c:265
+msgid "Pointer:"
+msgstr ""
+
+#: src/LYLeaks.c:236 src/LYLeaks.c:243 src/LYLeaks.c:284
+msgid "FileName:"
+msgstr ""
+
+#: src/LYLeaks.c:239 src/LYLeaks.c:246 src/LYLeaks.c:287 src/LYLeaks.c:298
+msgid "LineCount:"
+msgstr ""
+
+#: src/LYLeaks.c:260
+msgid "Memory leak detected."
+msgstr ""
+
+#: src/LYLeaks.c:268
+msgid "Contains:"
+msgstr ""
+
+#: src/LYLeaks.c:281
+msgid "ByteSize:"
+msgstr ""
+
+#: src/LYLeaks.c:295
+msgid "realloced:"
+msgstr ""
+
+#: src/LYLeaks.c:316
+msgid "Total memory leakage this run:"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:322
+msgid "Bytes allocated"
+msgstr ""
+
+#: src/LYLeaks.c:324
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:326
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:88
+msgid "References in "
+msgstr ""
+
+#: src/LYList.c:91
+msgid "this document:"
+msgstr ""
+
+#: src/LYList.c:97
+msgid "Visible links:"
+msgstr ""
+
+#: src/LYList.c:201 src/LYList.c:312
+msgid "Hidden links:"
+msgstr ""
+
+#: src/LYList.c:349
+msgid "References"
+msgstr ""
+
+#: src/LYList.c:353
+msgid "Visible links"
+msgstr ""
+
+#: src/LYLocal.c:289
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr ""
+
+#: src/LYLocal.c:354
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:455
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:489
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:554 src/LYLocal.c:577
+#, c-format
+msgid "remove %s"
+msgstr ""
+
+#: src/LYLocal.c:597
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:627
+#, c-format
+msgid "move %s to %s"
+msgstr ""
+
+#: src/LYLocal.c:675
+msgid "There is already a directory with that name!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:677
+msgid "There is already a file with that name!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:679
+msgid "The specified name is already in use!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:691
+msgid "Destination has different owner!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:694
+msgid "Destination is not a valid directory!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:710
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr ""
+
+#: src/LYLocal.c:734
+msgid "Remove all tagged files and directories?"
+msgstr ""
+
+#: src/LYLocal.c:807
+msgid "Enter new location for tagged items: "
+msgstr ""
+
+#: src/LYLocal.c:905
+msgid "Enter new name for directory: "
+msgstr ""
+
+#: src/LYLocal.c:907
+msgid "Enter new name for file: "
+msgstr ""
+
+#: src/LYLocal.c:919
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:969
+msgid "Enter new location for directory: "
+msgstr ""
+
+#: src/LYLocal.c:971
+msgid "Enter new location for file: "
+msgstr ""
+
+#: src/LYLocal.c:998
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr ""
+
+#: src/LYLocal.c:1060
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr ""
+
+#: src/LYLocal.c:1062
+msgid "Modify name or location (n or l): "
+msgstr ""
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1091
+msgid "This feature not yet implemented!"
+msgstr ""
+
+#: src/LYLocal.c:1112
+msgid "Enter name of file to create: "
+msgstr ""
+
+#: src/LYLocal.c:1115 src/LYLocal.c:1152
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:1149
+msgid "Enter name for new directory: "
+msgstr ""
+
+#: src/LYLocal.c:1190
+msgid "Create file or directory (f or d): "
+msgstr ""
+
+#: src/LYLocal.c:1232
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1235
+msgid "Remove directory?"
+msgstr ""
+
+#: src/LYLocal.c:1240
+#, c-format
+msgid "Remove file '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1242
+msgid "Remove file?"
+msgstr ""
+
+#: src/LYLocal.c:1247
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1249
+msgid "Remove symbolic link?"
+msgstr ""
+
+#: src/LYLocal.c:1347
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr ""
+
+#: src/LYLocal.c:1376
+msgid "Unable to open permit options file"
+msgstr ""
+
+#: src/LYLocal.c:1404
+msgid "Specify permissions below:"
+msgstr ""
+
+#: src/LYLocal.c:1405 src/LYShowInfo.c:265
+msgid "Owner:"
+msgstr ""
+
+#: src/LYLocal.c:1421
+msgid "Group"
+msgstr ""
+
+#: src/LYLocal.c:1437
+msgid "Others:"
+msgstr ""
+
+#: src/LYLocal.c:1455
+msgid "form to permit"
+msgstr ""
+
+#: src/LYLocal.c:1551
+msgid "Invalid mode format."
+msgstr ""
+
+#: src/LYLocal.c:1555
+msgid "Invalid syntax format."
+msgstr ""
+
+#: src/LYLocal.c:1742
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr ""
+
+#: src/LYLocal.c:1932
+msgid "NULL URL pointer"
+msgstr ""
+
+#: src/LYLocal.c:2014
+#, c-format
+msgid "Executing %s "
+msgstr ""
+
+#: src/LYLocal.c:2017
+msgid "Executing system command. This might take a while."
+msgstr ""
+
+#: src/LYLocal.c:2091
+msgid "Current directory:"
+msgstr ""
+
+#: src/LYLocal.c:2094 src/LYLocal.c:2112
+msgid "Current selection:"
+msgstr ""
+
+#: src/LYLocal.c:2098
+msgid "Nothing currently selected."
+msgstr ""
+
+#: src/LYLocal.c:2114
+msgid "tagged item:"
+msgstr ""
+
+#: src/LYLocal.c:2115
+msgid "tagged items:"
+msgstr ""
+
+#: src/LYLocal.c:2215 src/LYLocal.c:2224
+msgid "Illegal filename; request ignored."
+msgstr ""
+
+#. directory not writable
+#: src/LYLocal.c:2322 src/LYLocal.c:2381
+msgid "Install in the selected directory not permitted."
+msgstr ""
+
+#: src/LYLocal.c:2377
+msgid "The selected item is not a directory!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:2386
+msgid "Just a moment, ..."
+msgstr ""
+
+#: src/LYLocal.c:2403
+msgid "Error building install args"
+msgstr ""
+
+#: src/LYLocal.c:2418 src/LYLocal.c:2449
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr ""
+
+#: src/LYLocal.c:2425 src/LYLocal.c:2456
+#, c-format
+msgid "Already in target directory: %s"
+msgstr ""
+
+#: src/LYLocal.c:2474
+msgid "Installation complete"
+msgstr ""
+
+#: src/LYLocal.c:2666
+msgid "Temporary URL or list would be too long."
+msgstr ""
+
+#: src/LYMail.c:544
+msgid "Sending"
+msgstr ""
+
+#: src/LYMail.c:1030
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr ""
+
+#: src/LYMail.c:1032
+#, c-format
+msgid "called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1033
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1034
+msgid "was requested but was not available."
+msgstr ""
+
+#: src/LYMail.c:1035
+msgid "Thought you might want to know."
+msgstr ""
+
+#: src/LYMail.c:1037
+msgid "This message was automatically generated by"
+msgstr ""
+
+#: src/LYMail.c:1751
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1049
+msgid "No Winsock found, sorry."
+msgstr ""
+
+#: src/LYMain.c:1240
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr ""
+
+#: src/LYMain.c:1293 src/LYMainLoop.c:5260
+msgid "No such directory"
+msgstr ""
+
+#: src/LYMain.c:1487
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1497
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1526
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1608
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1683
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1685
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1843
+msgid "Warning:"
+msgstr ""
+
+#: src/LYMain.c:2408
+msgid "persistent cookies state will be changed in next session only."
+msgstr ""
+
+#: src/LYMain.c:2644 src/LYMain.c:2689
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr ""
+
+#: src/LYMain.c:3208
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr ""
+
+#: src/LYMain.c:3246
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr ""
+
+#: src/LYMain.c:3268
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3269
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr ""
+
+#: src/LYMain.c:3270
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr ""
+
+#: src/LYMain.c:3271
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+
+#: src/LYMain.c:4104
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr ""
+
+#: src/LYMain.c:4105
+#, c-format
+msgid "Options are:\n"
+msgstr ""
+
+#: src/LYMain.c:4406
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr ""
+
+#: src/LYMainLoop.c:575
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr ""
+
+#: src/LYMainLoop.c:696 src/LYMainLoop.c:5282
+msgid "A URL specified by the user"
+msgstr ""
+
+#: src/LYMainLoop.c:1148
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr ""
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3177
+msgid "Help Screen"
+msgstr ""
+
+#: src/LYMainLoop.c:3308
+msgid "System Index"
+msgstr ""
+
+#: src/LYMainLoop.c:3556
+#, c-format
+msgid "Query parameter %d: "
+msgstr ""
+
+#: src/LYMainLoop.c:3781 src/LYMainLoop.c:5558
+msgid "Entry into main screen"
+msgstr ""
+
+#: src/LYMainLoop.c:4039
+msgid "No next document present"
+msgstr ""
+
+#: src/LYMainLoop.c:4334
+msgid "charset for this document specified explicitly, sorry..."
+msgstr ""
+
+#: src/LYMainLoop.c:5240
+msgid "cd to:"
+msgstr ""
+
+#: src/LYMainLoop.c:5263
+msgid "A component of path is not a directory"
+msgstr ""
+
+#: src/LYMainLoop.c:5266
+msgid "failed to change directory"
+msgstr ""
+
+#: src/LYMainLoop.c:6496
+msgid "Reparsing document under current settings..."
+msgstr ""
+
+#: src/LYMainLoop.c:6790
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr ""
+
+#: src/LYMainLoop.c:7128
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:7131
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:7211
+msgid "Current URL is empty."
+msgstr ""
+
+#: src/LYMainLoop.c:7213 src/LYUtils.c:1881
+msgid "Copy to clipboard failed."
+msgstr ""
+
+#: src/LYMainLoop.c:7215
+msgid "Document URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7217
+msgid "Link URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7244
+msgid "No URL in the clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7936 src/LYMainLoop.c:8105
+msgid "-index-"
+msgstr ""
+
+#: src/LYMainLoop.c:8045
+msgid "lynx: Can't access startfile"
+msgstr ""
+
+#: src/LYMainLoop.c:8057
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr ""
+
+#: src/LYMainLoop.c:8058
+msgid "      Exiting..."
+msgstr ""
+
+#: src/LYMainLoop.c:8099
+msgid "-more-"
+msgstr ""
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr ""
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr ""
+
+#: src/LYOptions.c:770
+msgid "review/edit B)ookmarks files"
+msgstr ""
+
+#: src/LYOptions.c:772
+msgid "B)ookmark file: "
+msgstr ""
+
+#: src/LYOptions.c:2120 src/LYOptions.c:2127
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2121 src/LYOptions.c:2126 src/LYOptions.c:2289
+#: src/LYOptions.c:2300
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2122
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2123
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2139 src/LYOptions.c:2281
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2140
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2141
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2153
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2154
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2156
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2168
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2170
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2173
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2176
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2191
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2192
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2216
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2217
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2218
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2236
+msgid "Novice"
+msgstr ""
+
+#: src/LYOptions.c:2237
+msgid "Intermediate"
+msgstr ""
+
+#: src/LYOptions.c:2238
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2247
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2249
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2250
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2251
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2264
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2265
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2272
+msgid "Ignore"
+msgstr ""
+
+#: src/LYOptions.c:2273
+msgid "Add to trace-file"
+msgstr ""
+
+#: src/LYOptions.c:2274
+msgid "Add to LYNXMESSAGES"
+msgstr ""
+
+#: src/LYOptions.c:2275
+msgid "Warn, point to trace-file"
+msgstr ""
+
+#: src/LYOptions.c:2282
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2283
+msgid "as links"
+msgstr ""
+
+#: src/LYOptions.c:2290
+msgid "show filename"
+msgstr ""
+
+#: src/LYOptions.c:2301
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2302
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2336
+msgid "Directories first"
+msgstr ""
+
+#: src/LYOptions.c:2337
+msgid "Files first"
+msgstr ""
+
+#: src/LYOptions.c:2338
+msgid "Mixed style"
+msgstr ""
+
+#: src/LYOptions.c:2346 src/LYOptions.c:2366
+msgid "By Name"
+msgstr ""
+
+#: src/LYOptions.c:2347 src/LYOptions.c:2367
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2348 src/LYOptions.c:2368
+msgid "By Size"
+msgstr ""
+
+#: src/LYOptions.c:2349 src/LYOptions.c:2369
+msgid "By Date"
+msgstr ""
+
+#: src/LYOptions.c:2350
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2352
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2353
+msgid "By Group"
+msgstr ""
+
+#: src/LYOptions.c:2378
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2379 src/LYOptions.c:2380
+#, c-format
+msgid "Show %s/sec rate"
+msgstr ""
+
+#: src/LYOptions.c:2382 src/LYOptions.c:2383
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2386
+msgid "Show progressbar"
+msgstr ""
+
+#: src/LYOptions.c:2398
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2399
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2400
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2401
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2402
+msgid "Accept all types"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2412
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2415
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2418
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2420
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2699 src/LYOptions.c:2728
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr ""
+
+#: src/LYOptions.c:3541
+msgid "(options marked with (!) will not be saved)"
+msgstr ""
+
+#: src/LYOptions.c:3549
+msgid "General Preferences"
+msgstr ""
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3553
+msgid "User mode"
+msgstr ""
+
+#. Editor: INPUT
+#: src/LYOptions.c:3559
+msgid "Editor"
+msgstr ""
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3564
+msgid "Type of Search"
+msgstr ""
+
+#: src/LYOptions.c:3569
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3573
+msgid "Cookies"
+msgstr ""
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3587
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3594
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3600
+msgid "Keyboard Input"
+msgstr ""
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3604
+msgid "Keypad mode"
+msgstr ""
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3610
+msgid "Emacs keys"
+msgstr ""
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3616
+msgid "VI keys"
+msgstr ""
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3623
+msgid "Line edit style"
+msgstr ""
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3635
+msgid "Keyboard layout"
+msgstr ""
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3649
+msgid "Display and Character Set"
+msgstr ""
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3654
+msgid "Use locale-based character set"
+msgstr ""
+
+#: src/LYOptions.c:3661
+msgid "Use HTML5 charset replacements"
+msgstr ""
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3667
+msgid "Display character set"
+msgstr ""
+
+#: src/LYOptions.c:3698
+msgid "Assumed document character set"
+msgstr ""
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3718
+msgid "CJK mode"
+msgstr ""
+
+#: src/LYOptions.c:3720
+msgid "Raw 8-bit"
+msgstr ""
+
+#. X Display: INPUT
+#: src/LYOptions.c:3728
+msgid "X Display"
+msgstr ""
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3734
+msgid "Document Appearance"
+msgstr ""
+
+#: src/LYOptions.c:3740
+msgid "Show color"
+msgstr ""
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3764
+msgid "Show cursor"
+msgstr ""
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3770
+msgid "Underline links"
+msgstr ""
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3777
+msgid "Show scrollbar"
+msgstr ""
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3784
+msgid "Popups for select fields"
+msgstr ""
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3790
+msgid "HTML error recovery"
+msgstr ""
+
+#. Bad HTML messages: SELECT
+#: src/LYOptions.c:3796
+msgid "Bad HTML messages"
+msgstr ""
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3802
+msgid "Show images"
+msgstr ""
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3816
+msgid "Verbose images"
+msgstr ""
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3824
+msgid "Headers Transferred to Remote Servers"
+msgstr ""
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3828
+msgid "Personal mail address"
+msgstr ""
+
+#: src/LYOptions.c:3833
+msgid "Personal name for mail"
+msgstr ""
+
+#: src/LYOptions.c:3840
+msgid "Password for anonymous ftp"
+msgstr ""
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3846
+msgid "Preferred media type"
+msgstr ""
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3852
+msgid "Preferred encoding"
+msgstr ""
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3858
+msgid "Preferred document character set"
+msgstr ""
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3863
+msgid "Preferred document language"
+msgstr ""
+
+#: src/LYOptions.c:3869
+msgid "Send User-Agent header"
+msgstr ""
+
+#: src/LYOptions.c:3871
+msgid "User-Agent header"
+msgstr ""
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3879
+msgid "Listing and Accessing Files"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3884
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3890
+msgid "FTP sort criteria"
+msgstr ""
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3898
+msgid "Local directory sort criteria"
+msgstr ""
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3904
+msgid "Local directory sort order"
+msgstr ""
+
+#: src/LYOptions.c:3913
+msgid "Show dot files"
+msgstr ""
+
+#: src/LYOptions.c:3921
+msgid "Execution links"
+msgstr ""
+
+#: src/LYOptions.c:3939
+msgid "Pause when showing message"
+msgstr ""
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3946
+msgid "Show transfer rate"
+msgstr ""
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3966
+msgid "Special Files and Screens"
+msgstr ""
+
+#: src/LYOptions.c:3971
+msgid "Multi-bookmarks"
+msgstr ""
+
+#: src/LYOptions.c:3979
+msgid "Review/edit Bookmarks files"
+msgstr ""
+
+#: src/LYOptions.c:3982
+msgid "Goto multi-bookmark menu"
+msgstr ""
+
+#: src/LYOptions.c:3984
+msgid "Bookmarks file"
+msgstr ""
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3991
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3997
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:4003
+msgid "Visited Pages"
+msgstr ""
+
+#: src/LYOptions.c:4008
+msgid "View the file "
+msgstr ""
+
+#: src/LYPrint.c:947
+#, c-format
+msgid " Print job complete.\n"
+msgstr ""
+
+#: src/LYPrint.c:1274
+msgid "Document:"
+msgstr ""
+
+#: src/LYPrint.c:1275
+msgid "Number of lines:"
+msgstr ""
+
+#: src/LYPrint.c:1276
+msgid "Number of pages:"
+msgstr ""
+
+#: src/LYPrint.c:1277
+msgid "pages"
+msgstr ""
+
+#: src/LYPrint.c:1277
+msgid "page"
+msgstr ""
+
+#: src/LYPrint.c:1278
+msgid "(approximately)"
+msgstr ""
+
+#: src/LYPrint.c:1285
+msgid "Some print functions have been disabled!"
+msgstr ""
+
+#: src/LYPrint.c:1289
+msgid "Standard print options:"
+msgstr ""
+
+#: src/LYPrint.c:1290
+msgid "Print options:"
+msgstr ""
+
+#: src/LYPrint.c:1297
+msgid "Save to a local file"
+msgstr ""
+
+#: src/LYPrint.c:1299
+msgid "Save to disk disabled"
+msgstr ""
+
+#: src/LYPrint.c:1306
+msgid "Mail the file"
+msgstr ""
+
+#: src/LYPrint.c:1313
+msgid "Print to the screen"
+msgstr ""
+
+#: src/LYPrint.c:1318
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr ""
+
+#: src/LYReadCFG.c:441
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+
+#: src/LYReadCFG.c:454
+msgid "Offending line:"
+msgstr ""
+
+#: src/LYReadCFG.c:757
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:764
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:785
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr ""
+
+#: src/LYReadCFG.c:810 src/LYReadCFG.c:822
+#, c-format
+msgid ""
+"setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:826
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:922
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr ""
+
+#: src/LYReadCFG.c:923
+msgid "(no name)"
+msgstr ""
+
+#: src/LYReadCFG.c:2044
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr ""
+
+#: src/LYReadCFG.c:2046
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr ""
+
+#: src/LYReadCFG.c:2047
+#, c-format
+msgid "included from '%s'.\n"
+msgstr ""
+
+#: src/LYReadCFG.c:2450 src/LYReadCFG.c:2463 src/LYReadCFG.c:2521
+msgid "The following is read from your lynx.cfg file."
+msgstr ""
+
+#: src/LYReadCFG.c:2451 src/LYReadCFG.c:2464
+msgid "Please read the distribution"
+msgstr ""
+
+#: src/LYReadCFG.c:2457 src/LYReadCFG.c:2467
+msgid "for more comments."
+msgstr ""
+
+#: src/LYReadCFG.c:2503
+msgid "RELOAD THE CHANGES"
+msgstr ""
+
+#: src/LYReadCFG.c:2511
+msgid "Your primary configuration"
+msgstr ""
+
+#: src/LYShowInfo.c:177
+msgid "Directory that you are currently viewing"
+msgstr ""
+
+#: src/LYShowInfo.c:180
+msgid "Name:"
+msgstr ""
+
+#: src/LYShowInfo.c:183
+msgid "URL:"
+msgstr ""
+
+#: src/LYShowInfo.c:197
+msgid "Directory that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:199
+msgid "File that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:202
+msgid "Symbolic link that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:205
+msgid "Item that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:207
+msgid "Full name:"
+msgstr ""
+
+#: src/LYShowInfo.c:217
+msgid "Unable to follow link"
+msgstr ""
+
+#: src/LYShowInfo.c:219
+msgid "Points to file:"
+msgstr ""
+
+#: src/LYShowInfo.c:224
+msgid "Name of owner:"
+msgstr ""
+
+#: src/LYShowInfo.c:227
+msgid "Group name:"
+msgstr ""
+
+#: src/LYShowInfo.c:229
+msgid "File size:"
+msgstr ""
+
+#: src/LYShowInfo.c:231
+msgid "(bytes)"
+msgstr ""
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:236
+msgid "Creation date:"
+msgstr ""
+
+#: src/LYShowInfo.c:239
+msgid "Last modified:"
+msgstr ""
+
+#: src/LYShowInfo.c:242
+msgid "Last accessed:"
+msgstr ""
+
+#: src/LYShowInfo.c:248
+msgid "Access Permissions"
+msgstr ""
+
+#: src/LYShowInfo.c:283
+msgid "Group:"
+msgstr ""
+
+#: src/LYShowInfo.c:303
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:310
+msgid "File that you are currently viewing"
+msgstr ""
+
+#: src/LYShowInfo.c:318 src/LYShowInfo.c:422
+msgid "Linkname:"
+msgstr ""
+
+#: src/LYShowInfo.c:324 src/LYShowInfo.c:339
+msgid "Charset:"
+msgstr ""
+
+#: src/LYShowInfo.c:338
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:345
+msgid "Server:"
+msgstr ""
+
+#: src/LYShowInfo.c:348
+msgid "Date:"
+msgstr ""
+
+#: src/LYShowInfo.c:351
+msgid "Last Mod:"
+msgstr ""
+
+#: src/LYShowInfo.c:356
+msgid "Expires:"
+msgstr ""
+
+#: src/LYShowInfo.c:359
+msgid "Cache-Control:"
+msgstr ""
+
+#: src/LYShowInfo.c:362
+msgid "Content-Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:366
+msgid "Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:371
+msgid "Language:"
+msgstr ""
+
+#: src/LYShowInfo.c:378
+msgid "Post Data:"
+msgstr ""
+
+#: src/LYShowInfo.c:381
+msgid "Post Content Type:"
+msgstr ""
+
+#: src/LYShowInfo.c:384
+msgid "Owner(s):"
+msgstr ""
+
+#: src/LYShowInfo.c:389
+msgid "size:"
+msgstr ""
+
+#: src/LYShowInfo.c:391
+msgid "lines"
+msgstr ""
+
+#: src/LYShowInfo.c:395
+msgid "forms mode"
+msgstr ""
+
+#: src/LYShowInfo.c:397
+msgid "source"
+msgstr ""
+
+#: src/LYShowInfo.c:398
+msgid "normal"
+msgstr ""
+
+#: src/LYShowInfo.c:400
+msgid ", safe"
+msgstr ""
+
+#: src/LYShowInfo.c:402
+msgid ", via internal link"
+msgstr ""
+
+#: src/LYShowInfo.c:407
+msgid ", no-cache"
+msgstr ""
+
+#: src/LYShowInfo.c:409
+msgid ", ISMAP script"
+msgstr ""
+
+#: src/LYShowInfo.c:411
+msgid ", bookmark file"
+msgstr ""
+
+#: src/LYShowInfo.c:415
+msgid "mode:"
+msgstr ""
+
+#: src/LYShowInfo.c:421
+msgid "Link that you currently have selected"
+msgstr ""
+
+#: src/LYShowInfo.c:430
+msgid "Method:"
+msgstr ""
+
+#: src/LYShowInfo.c:434
+msgid "Enctype:"
+msgstr ""
+
+#: src/LYShowInfo.c:440
+msgid "Action:"
+msgstr ""
+
+#: src/LYShowInfo.c:446
+msgid "(Form field)"
+msgstr ""
+
+#: src/LYShowInfo.c:457
+msgid "No Links on the current page"
+msgstr ""
+
+#: src/LYShowInfo.c:463
+msgid "Server Headers:"
+msgstr ""
+
+#: src/LYStyle.c:331
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+
+#: src/LYTraversal.c:111
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr ""
+
+#: src/LYUpload.c:77
+msgid "ERROR! - upload command is misconfigured"
+msgstr ""
+
+#: src/LYUpload.c:98
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:101
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:104
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:157
+msgid "Unable to upload file."
+msgstr ""
+
+#: src/LYUpload.c:199
+msgid "Upload To:"
+msgstr ""
+
+#: src/LYUpload.c:200
+msgid "Upload options:"
+msgstr ""
+
+#: src/LYUtils.c:1883
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2668
+msgid "Unexpected access protocol for this URL scheme."
+msgstr ""
+
+#: src/LYUtils.c:3492
+msgid "Too many tempfiles"
+msgstr ""
+
+#: src/LYUtils.c:3792
+msgid "unknown restriction"
+msgstr ""
+
+#: src/LYUtils.c:3823
+#, c-format
+msgid "No restrictions set.\n"
+msgstr ""
+
+#: src/LYUtils.c:3826
+#, c-format
+msgid "Restrictions set:\n"
+msgstr ""
+
+#: src/LYUtils.c:5212
+msgid "Cannot find HOME directory"
+msgstr ""
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr ""
+
+#: src/LYrcFile.c:325
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+
+#: src/LYrcFile.c:333
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:342
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+
+#: src/LYrcFile.c:347
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:352
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:359
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+
+#: src/LYrcFile.c:367
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+
+#: src/LYrcFile.c:372
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+
+#: src/LYrcFile.c:386
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+
+#: src/LYrcFile.c:391
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+
+#: src/LYrcFile.c:399
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:405
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+
+#: src/LYrcFile.c:412
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+
+#: src/LYrcFile.c:435
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:453
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+
+#: src/LYrcFile.c:459
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+
+#: src/LYrcFile.c:468
+msgid ""
+"personal_mail_name specifies your personal name, for mail.  The\n"
+"name is sent for mailed comments.  Lynx will prompt for this,\n"
+"showing the configured value as a default when sending mail.\n"
+"This is not necessarily the same as a name provided as part of the\n"
+"personal_mail_address.\n"
+"Lynx does not save your changes to that default value as a side-effect\n"
+"of sending email.  To update the default value, you must use the options\n"
+"menu, or modify this file directly.\n"
+msgstr ""
+
+#: src/LYrcFile.c:478
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+
+#: src/LYrcFile.c:494
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+
+#: src/LYrcFile.c:505
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:516
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:534
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:545
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:562
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:573
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:584
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+
+#: src/LYrcFile.c:598
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+
+#: src/LYrcFile.c:607
+msgid ""
+"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"
+msgstr ""
+
+#: src/LYrcFile.c:612
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+
+#: src/LYrcFile.c:620
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+
+#: src/LYrcFile.c:845
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+
+#: src/LYrcFile.c:854
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+
+#: src/LYrcFile.c:858
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+
+#: src/LYrcFile.c:867
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:899
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:908
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:915
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:922
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' "
+"key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:929
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:936
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
diff --git a/po/makefile.inn b/po/makefile.inn
new file mode 100644
index 00000000..dfb37b90
--- /dev/null
+++ b/po/makefile.inn
@@ -0,0 +1,264 @@
+# $LynxId: makefile.inn,v 1.19 2010/09/19 18:34:55 tom Exp $
+#
+# Makefile for program source directory in GNU NLS utilities package.
+# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
+#
+# This file may be copied and used freely without restrictions.  It can
+# be used in projects which are not available under the GNU Public License
+# but which still want to provide support for the GNU gettext functionality.
+# Please note that the actual code is *not* freely available.
+
+SHELL = /bin/sh
+@SET_MAKE@
+
+PACKAGE		= @PACKAGE@
+VERSION		= @VERSION@
+NLS_TEXTDOMAIN	= @NLS_TEXTDOMAIN@
+
+srcdir		= @srcdir@
+top_srcdir	= @top_srcdir@
+VPATH		= @srcdir@
+
+DESTDIR		= @DESTDIR@
+
+prefix		= @prefix@
+exec_prefix	= @exec_prefix@
+
+datadir		= @NLS_DATADIR@
+localedir	= $(datadir)/locale
+gnulocaledir	= $(prefix)/share/locale
+gettextsrcdir	= $(prefix)/share/gettext/po
+
+subdir		= po
+
+DATADIR		= $(DESTDIR)$(datadir)
+LOCALEDIR	= $(DESTDIR)$(localedir)
+GNULOCALEDIR	= $(DESTDIR)$(gnulocaledir)
+GETTEXTSRCDIR	= $(DESTDIR)$(gettextsrcdir)
+
+INSTALL		= @INSTALL@
+INSTALL_DATA	= @INSTALL_DATA@
+
+CC		= @CC@
+GENCAT		= @GENCAT@
+GMSGFMT		= PATH=../src:$$PATH @GMSGFMT@
+MSGFMT		= @MSGFMT@
+XGETTEXT	= PATH=../src:$$PATH @XGETTEXT@
+MSGMERGE	= PATH=../src:$$PATH msgmerge
+
+DEFS		= @DEFS@
+CFLAGS		= @CFLAGS@
+CPPFLAGS	= @CPPFLAGS@
+
+INCLUDES	= -I.. -I$(top_srcdir)/intl
+
+COMPILE		= $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
+
+SOURCES		= # cat-id-tbl.c
+POFILES		= @POFILES@
+GMOFILES	= @GMOFILES@
+DISTFILES	= ChangeLog makefile.inn POTFILES.in $(PACKAGE).pot \
+stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES)
+
+POTFILES = \
+
+CATALOGS	= @CATALOGS@
+CATOBJEXT	= @CATOBJEXT@
+INSTOBJEXT	= @INSTOBJEXT@
+
+INSTOBJ		= $(NLS_TEXTDOMAIN)$(INSTOBJEXT)
+
+.SUFFIXES:
+.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
+
+.c.o:
+	$(COMPILE) $<
+
+.po.pox:
+	$(MAKE) $(PACKAGE).pot
+	$(MSGMERGE) -w 132 $< $(srcdir)/$(PACKAGE).pot -o $*.pox
+
+.po.mo:
+	$(MSGFMT) -o $@ $<
+
+.po.gmo:
+	file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
+	  && rm -f $$file && $(GMSGFMT) -o $$file $<
+
+.po.cat:
+	sed -f ../intl/po2msg.sed < $< > $*.msg \
+	  && rm -f $@ && $(GENCAT) $@ $*.msg
+
+
+all: all-@USE_NLS@
+
+all-yes: $(SOURCES) $(CATALOGS)
+all-no:
+
+en.po :	
+	msginit --no-translator -l en -i $(PACKAGE).pot
+
+$(srcdir)/$(PACKAGE).pot: $(POTFILES)
+	$(XGETTEXT) --default-domain=$(NLS_TEXTDOMAIN) --directory=$(top_srcdir) \
+	  --add-comments --keyword=_ --keyword=N_ \
+	  --files-from=$(srcdir)/POTFILES.in \
+	&& test ! -f $(PACKAGE).po \
+	   || ( rm -f $(srcdir)/$(PACKAGE).pot \
+		&& ( sed -e 1,5d -e s/"Project-Id-Version: PACKAGE VERSION"/"Project-Id-Version: $(PACKAGE) $(VERSION)"/ $(PACKAGE).po > $(srcdir)/$(PACKAGE).pot ) )
+
+$(srcdir)/cat-id-tbl.c: stamp-cat-id; @:
+$(srcdir)/stamp-cat-id: $(PACKAGE).pot
+	rm -f cat-id-tbl.tmp
+	sed -f ../intl/po2tbl.sed $(srcdir)/$(PACKAGE).pot \
+		| sed -e "s/@PACKAGE NAME@/$(PACKAGE)/" > cat-id-tbl.tmp
+	if cmp -s cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; then \
+	  rm cat-id-tbl.tmp; \
+	else \
+	  echo cat-id-tbl.c changed; \
+	  rm -f $(srcdir)/cat-id-tbl.c; \
+	  mv cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; \
+	fi
+	cd $(srcdir) && rm -f stamp-cat-id && echo timestamp > stamp-cat-id
+
+
+install: install-exec install-data
+install-exec:
+install-data: install-data-@USE_NLS@
+install-data-no: all
+install-data-yes: all
+	mkdir -p $(DATADIR)
+	@catalogs='$(CATALOGS)'; \
+	for cat in $$catalogs; do \
+	  cat=`basename $$cat`; \
+	  case "$$cat" in \
+	    *.gmo) destdir=$(GNULOCALEDIR);; \
+	    *)     destdir=$(LOCALEDIR);; \
+	  esac; \
+	  lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+	  dir=$$destdir/$$lang/LC_MESSAGES; \
+	  mkdir -p $$dir; \
+	  if test -r $$cat; then \
+	    $(INSTALL_DATA) $$cat $$dir/$(INSTOBJ); \
+	    echo "installing $$cat as $$dir/$(INSTOBJ)"; \
+	  else \
+	    $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(INSTOBJ); \
+	    echo "installing $(srcdir)/$$cat as" \
+		 "$$dir/$(INSTOBJ)"; \
+	  fi; \
+	  if test -r $$cat.m; then \
+	    $(INSTALL_DATA) $$cat.m $$dir/$(INSTOBJ).m; \
+	    echo "installing $$cat.m as $$dir/$(INSTOBJ).m"; \
+	  else \
+	    if test -r $(srcdir)/$$cat.m ; then \
+	      $(INSTALL_DATA) $(srcdir)/$$cat.m \
+		$$dir/$(INSTOBJ).m; \
+	      echo "installing $(srcdir)/$$cat as" \
+		   "$$dir/$(INSTOBJ).m"; \
+	    else \
+	      true; \
+	    fi; \
+	  fi; \
+	done
+	if test "$(PACKAGE)" = "gettext"; then \
+	  mkdir -p $(GETTEXTSRCDIR); \
+	  $(INSTALL_DATA) $(srcdir)/makefile.inn \
+			  $(GETTEXTSRCDIR)/makefile.inn; \
+	else \
+	  : ; \
+	fi
+
+# Define this as empty until I find a useful application.
+installcheck:
+
+uninstall:
+	catalogs='$(CATALOGS)'; \
+	for cat in $$catalogs; do \
+	  cat=`basename $$cat`; \
+	  lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+	  rm -f $(LOCALEDIR)/$$lang/LC_MESSAGES/$(INSTOBJ); \
+	  rm -f $(LOCALEDIR)/$$lang/LC_MESSAGES/$(INSTOBJ).m; \
+	  rm -f $(GNULOCALEDIR)/$$lang/LC_MESSAGES/$(INSTOBJ); \
+	  rm -f $(GNULOCALEDIR)/$$lang/LC_MESSAGES/$(INSTOBJ).m; \
+	done
+	rm -f $(GETTEXTSRCDIR)/po-makefile.inn
+
+check: all
+
+cat-id-tbl.o: ../intl/libgettext.h
+
+dvi info tags TAGS ID:
+
+mostlyclean:
+	rm -f core core.* *.pox $(PACKAGE).po en.po *.old.po cat-id-tbl.tmp
+	rm -fr *.o
+
+clean: mostlyclean
+
+distclean: clean
+	rm -f cat-id-tbl.c stamp-cat-id *.gmo *.mo
+	rm -f makefile makefile.in POTFILES *.mo *.msg *.cat *.cat.m
+
+maintainer-clean: distclean
+	@echo "This command is intended for maintainers to use;"
+	@echo "it deletes files that may require special tools to rebuild."
+	rm -f $(GMOFILES)
+
+distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
+dist distdir: update-po $(DISTFILES)
+	dists="$(DISTFILES)"; \
+	for file in $$dists; do \
+	  ln $(srcdir)/$$file $(distdir) 2> /dev/null \
+	    || cp -p $(srcdir)/$$file $(distdir); \
+	done
+
+# GNU msgfmt -C option can also check for X/Open compat.
+check-po:
+	cd $(srcdir); \
+	catalogs='$(CATALOGS)'; \
+	for cat in $$catalogs; do \
+	  cat=`basename $$cat`; \
+	  lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+	  echo "$$lang:"; \
+	  $(MSGFMT) -f -c -v $$lang.po; \
+	done
+
+update-po: makefile
+	$(MAKE) $(PACKAGE).pot
+	PATH=`pwd`/../src:$$PATH; \
+	cd $(srcdir); \
+	catalogs='$(CATALOGS)'; \
+	for cat in $$catalogs; do \
+	  cat=`basename $$cat`; \
+	  lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+	  mv $$lang.po $$lang.old.po; \
+	  echo "$$lang:"; \
+	  if $(MSGMERGE) -w 132 $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \
+	    rm -f $$lang.old.po; \
+	  else \
+	    echo "msgmerge for $$cat failed!"; \
+	    rm -f $$lang.po; \
+	    mv $$lang.old.po $$lang.po; \
+	  fi; \
+	done
+
+POTFILES: POTFILES.in
+	( if test 'x$(srcdir)' != 'x.'; then \
+	    posrcprefix='$(top_srcdir)/'; \
+	  else \
+	    posrcprefix="../"; \
+	  fi; \
+	  rm -f $@-t $@ \
+	    && (sed -e '/^#/d' -e '/^[ 	]*$$/d' \
+		    -e "s@.*@	$$posrcprefix& \\\\@" < $(srcdir)/$@.in \
+		| sed -e '$$s/\\$$//') > $@-t \
+	    && chmod a-w $@-t \
+	    && mv $@-t $@ )
+
+makefile: makefile.inn ../config.status POTFILES
+	cd .. \
+	  && CONFIG_FILES=$(subdir)/$@.in:$(subdir)/$@.inn CONFIG_HEADERS= \
+	       $(SHELL) ./config.status
+
+# Tell versions [3.59,3.63) of GNU make not to export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/po/nl.po b/po/nl.po
new file mode 100644
index 00000000..be694c04
--- /dev/null
+++ b/po/nl.po
@@ -0,0 +1,6111 @@
+# Dutch translations for lynx-2.8.7-dev9.
+# This file is distributed under the same license as the lynx package.
+#
+# Tijs van Bakel <smoke@casema.net>, 1999, 2000.
+# Luk Claes <luk.claes@ugent.be>, 2004.
+# Benno Schulenberg <benno@vertaalt.nl>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx-2.8.7-dev12\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-26 20:04-0500\n"
+"PO-Revision-Date: 2011-05-28 18:16+0200\n"
+"Last-Translator: Erwin Poeze <erwin.poeze@gmail.com>\n"
+"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
+"Language: nl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Let op!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Welkom"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Afsluiten?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Lynx afsluiten?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Verbinding is onderbroken."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Gegevensoverdracht is onderbroken."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Geannuleerd!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Annuleren..."
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Prima!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Klaar!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Ongeldig verzoek!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "vorige"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "volgend scherm"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "HELP!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", hulp bij "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Commando's: pijltjes verplaatsen, '?'=hulp, 'q'=afsluiten, '<-'=terug."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- spatiebalk=volgend blad, pijltjes verplaatsen, '?'=help, 'q'=afsluiten."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- druk op spatiebalk voor volgend blad --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL is te lang"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Tekstinvoerveld) Niet actief.  Druk op <Enter> om te activeren."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Tekstgebied) Niet actief.  Druk op <Enter> om te activeren."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Tekstgebied) Niet actief.  Druk op <Enter> om te activeren (%s voor editor)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Formulierveld) Niet actief.  Gebruik <Enter> om te wijzigen."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Form.veld) Niet actief.  Wijzig met <Enter> (%s = verzenden zonder cache)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Form.veld) Niet actief.  Wijzig met <Enter>, verzenden met twee keer <Enter>."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(E-mailformulierveld) Niet actief.  Gebruik <Enter> om te wijzigen."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Wachtwoordveld) Niet actief.  Gebruik <Enter> om te activeren."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "ONVERANDERBAAR bestandsnaaminvoerveld.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Bestandsnaamveld) Voer een bestandsnaam in.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Tekstinvoerveld) Voer tekst in.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Tekstgebied) Voer tekst in.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Tekstgebied) Voer tekst in.  Ga weg met pijltjes of <Tab> (%s voor editor)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "ONVERANDERBAAR formuliertekstveld.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Formulierveld) Voer tekst in.  Verzend met <Enter>."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Formulierveld) Voer tekst in.  Verzend met <Enter> (%s = geen cache)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Form.veld) Voer tekst in.  <Enter>=verzenden, ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "ONVERANDERBAAR formulierveld.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(E-mailformulierveld) Voer tekst in.  Verzend met <Enter>, ga weg met pijltjes."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(E-mailformulierveld) Post verzenden is niet toegestaan; u kunt niets versturen."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Wachtwoordveld) Voer tekst in.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "ONVERANDERBAAR formulierwachtwoord.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Aanvinkveld)   Gebruik pijltje-naar-rechts of <Enter> om te veranderen."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "ONVERANDERBAAR formulieraanvinkveld.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Drukknop)   Gebruik pijltje-naar-rechts of <Enter> om te veranderen."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "ONVERANDERBARE formulierdrukknop.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Verzenden ('x' voor geen cache) naar "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Verzenden naar "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Form.verzendknop)  Verzend met pijltje-rechts of <Enter> ('x'-geen cache)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Formulierverzendknop)  Verzend met pijltje-rechts of <Enter>."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "UITGESCHAKELDE formulierverzendknop.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "E-mailformulier verzenden naar "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(E-mailformulierverzendknop)  Verzend met pijltje-rechts of <Enter>."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(E-mailformulierverzendknop)  Post is niet toegestaan; u kunt niet verzenden."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Formulierherstelknop)  Herstel standaardwaarden met pijltje-rechts of <Enter>."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "UITGESCHAKELDE formulierherstelknop.  Ga weg met pijltjes of <Tab>."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Lijst van opties) Druk op <Enter>, dan pijltjes en <Enter> om te kiezen."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Keuzelijst) Druk op <Enter>, dan pijltjes en <Enter> om een optie te kiezen."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "ONVERANDERBARE optielijst.  <Enter> en pijltjes om te bekijken of weg te gaan."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "ONVERANDERBARE keuzelijst.  <Enter> of pijltjes om te bekijken of weg te gaan."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Verzenden van formulier..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Herstellen van oningevuld formulier..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Bezig document te herladen.  Alle formulierinvoer gaat verloren!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Waarschuwing: kan de formuliergegevens niet omzetten naar tekenset %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(GEWONE LINK)   Activeer met pijltje-naar-rechts of <Enter>."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "De gevraagde hulpbron is op dit moment niet beschikbaar."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Voer een Lynx-sneltoetscommando in: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Opzoeken van "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "%s wordt opgehaald"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "%s wordt overgeslagen"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "%s wordt gebruikt"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Ongeldige URL: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Foutief adres %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Kan WWW-bestand niet vinden!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Deze index kan doorzocht worden.  Gebruik %s om te zoeken."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Meer--  Deze index kan doorzocht worden.  Gebruik %s om te zoeken."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "U hebt een ongeldig linknummer ingevoerd."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Dit is de brontekst van het document.  Druk op '\\' voor de verwerkte versie."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "Pijltjes omhoog en omlaag=verplaatsen; Rechts=link volgen; Links=terug.\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "H)elp O)pties P)rint G)a naar M)-beginscherm Q)-stop /=zoek [bkspc]=historie\n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "O)verige cmds H)elp K)eymap G)a naar P)rint M)-beginscherm o)pties Q)-stop\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "O)verige cmds B)-terug E)dit D)ownload ^R)-herladen ^W)is scherm  doorzoeken: /\n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O)verige C)ommentaar <backspace>-Historie Boekenleggers: V)-inzien A)-toevoegen R)-wissen\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "Voer tekst in door te typen."
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "Ctrl-U wist alle tekst in het invoerveld, [Backspace] wist één teken."
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "Ctrl-U wist tekst in het invoerveld, [Backspace] wist één teken."
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "%s wist alle tekst in het invoerveld, [Backspace] wist één teken."
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "%s wist tekst in het invoerveld, [Backspace] wist één teken."
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Verkeerd geformuleerde mailto-formulierverzending!  Geannuleerd!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Waarschuwing!  Stuurcodes in mailadres zijn vervangen door ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "U mag niet e-mailen!  Gegevens kunnen niet worden verzonden."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Mailto-formulierverzending is mislukt!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Mailto-formulierverzending is geannuleerd!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Gegevens worden verzonden..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "Er staat geen e-mailadres in de mailto-URL!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Kan geen tijdelijk bestand voor mailto-URL openen!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Wilt u het originele bericht opnemen?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Wilt u de voorverwerkte brontekst opnemen?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Uw editor wordt gestart om het e-mailbericht te maken"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "De editor wil niet starten; controleer de instellingen in het Optiesmenu"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Dit commentaar verzenden?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Dit bericht verzenden?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Uw bericht wordt verzonden..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Uw commentaar wordt verzonden:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Niet in een TEKSTVELD; kan geen externe editor gebruiken."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Niet in een TEKSTVELD; dit commando heeft hier geen zin."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "bestand: ACTIEs zijn niet toegestaan!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "bestand: URL's via aangeboden links zijn niet toegestaan!"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "Toegang tot lokale bestanden is geweigerd."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "bestand: URL's via boekenleggers zijn niet toegestaan!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Deze specifieke URL is niet toegestaan in externe documenten!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Druk op <Enter> om terug te keren naar Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "DCL-subproces wordt gestart.  Gebruik 'logout' om terug te keren naar Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Typ 'exit' om terug te keren naar Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Uw standaardshell wordt aangeroepen.  Typ 'exit' om terug te keren naar Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "Het starten van externe programma's is uitgeschakeld."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "Het 'd'ownload-commando is momenteel uitgeschakeld."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "U kunt niet downloaden in een invoerveld."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Formulier heeft een mailto-actie!  Kan niet downloaden."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "U kunt een 'mailto:'-koppeling niet downloaden."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "U kunt koekjes niet downloaden."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "U kunt een printopdracht niet downloaden."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "U kunt een upload-optie niet downloaden."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "U kunt een toestemmingsoptie niet downloaden."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Deze specifieke URL kan niet worden gedownload!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Er is niets om te downloaden."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Traceren AAN!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Traceren UIT!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Links voor alle afbeeldingen worden opgenomen!  Herladen..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Normale afhandeling van afbeeldingen is hersteld!  Herladen..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Pseudo-ALT's worden ingevoegd voor inlines zonder ALT-strings!  Herladen..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Inlines zonder ALT-strings worden genegeerd!  Herladen..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Ruwe 8-bit- of CJK-modus is UITgezet!  Herladen..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Ruwe 8-bit- of CJK-modus is AANgezet!  Herladen..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "'HEAD'-verzoek verzenden voor D)ocument, L)ink of C)-annuleren? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "'HEAD'-verzoek verzenden voor D)ocument of C)-annuleren? (d,c): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Sorry, het document is geen http-URL."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Sorry, de link is geen http-URL."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Sorry, de ACTIE voor dit formulier is uitgeschakeld."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Sorry, de ACTIE voor dit formulier is geen http-URL."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "Niet een http-URL of formulier-ACTIE!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Deze specifieke URL kan geen formulier-ACTIE zijn!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "URL is niet in begin-omgeving!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "Nieuwsberichten zenden is uitgeschakeld!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Bestandsbeheer is uitgeschakeld!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Er is momenteel geen snelkoppelingenbestand beschikbaar."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Spring naar ('?' toont een lijst): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Springen naar een snelkoppeling-URL is niet toegestaan!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Willekeurige URL is niet toegestaan!  Gebruik een sneltoets."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Tot nog toe zijn er geen willeukeurige URL's gebruikt."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Boekenleggerfuncties zijn momenteel uitgeschakeld."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "Uitvoeren via boekenleggers is uitgeschakeld."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Boekenleggerbestand is niet opgegeven.  Gebruik %s om de opties te zien."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Kan geen tijdelijk bestand openen voor 'X Mosaic hotlist'-conversie."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "FOUT -- Kan boekenleggerbestand niet openen."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Kan boekenleggerbestand niet openen om link te verwijderen."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Kan geen kladbestand openen om link te verwijderen."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Fout bij het hernoemen van kladbestand."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Fout bij het hernoemen van tijdelijk bestand."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Kan tijdelijk bestand niet kopiëren om link te verwijderen."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Kan tijdelijk bestand niet heropenen om link te verwijderen."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "De link gebruikt meer dan één regel in het boekenleggerbestand."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Wissen van boekenlegger is mislukt."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Boekenleggerbestanden kunnen niet doorkruist worden (alleen http-URL's)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Kan boekenleggerbestand niet openen; gebruik 'a' om de link eerst op te slaan"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Er zijn geen links in dit boekenleggerbestand!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "Gecachet document D)-verwijderen of C)-annuleren? (d,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Opslaan in boekenleggerbestand: D)ocument, L)ink of C)-annuleren? (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Opslaan in boekenleggerbestand: D)ocument of C)-annuleren? (d,c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Opslaan in boekenleggerbestand: L)ink of C)-annuleren? (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Kan geen boekenlegger maken van document van formulier met POST-informatie."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Kan formuliervelden/links niet opslaan"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Kan geen boekenleggers maken van historie, info-overzicht, menu of lijsten."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Deze link echt uit het boekenleggerbestand verwijderen?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Ongeldig adres."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Oorspronkelijke commentaarverwerking AAN (Minimale methode is onderdrukt)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Oorspronkelijke commentaarverwerking UIT (Minimale methode is actief)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Oorspronkelijke commentaarverwerking AAN (Geldige methode is onderdrukt)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Oorspronkelijke commentaarverwerking UIT (Geldige methode is actief)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Minimale verwerking van commentaar AAN (en actief)!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Minimale verwerking van commentaar UIT (Geldige methode is actief)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Minimale verwerking van commentaar AAN (Oorspronkelijke methode is actief)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Minimale verwerking van commentaar UIT (Oorspronkelijke methode is actief)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "'Soft double-quote' ontleden AAN!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "'Soft double-quote' ontleden UIT!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Vanaf nu wordt 'TagSoup' gebruikt om HTML te ontleden."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Vanaf nu wordt 'SortaSGML' gebruikt om HTML te ontleden."
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Dit is het einde van het document."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Dit is het begin van het document."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Dit is pagina %d van dit document."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Linknummer %d is al geselecteerd."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Dit is het eerste document."
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Boven deze regel zijn er geen links in dit document."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Beneden deze regel zijn er geen links in dit document."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Maximale lengte is bereikt!  Verwijder tekst of ga hier weg."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "U staat niet op een formulierverzendknop of op een normale link."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "Er moet altijd één drukknop ingedrukt zijn!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Geen invoerknop aanwezig voor dit formulier; het enige tekstveld verzenden?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Wilt u teruggaan naar het vorige document?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Gebruik pijltjes of <Tab> om weg te gaan van dit veld."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Voer tekst in.  Ga weg met pijltjes of <Tab>."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Onjuiste HTML!!  Geen formulieractie gedefinieerd. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Onjuiste HTML!!  Kan geen popup-venster aanmaken!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Kan geen popup-venster aanmaken!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Naar een willekeurige URL gaan is niet toegestaan!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Naar een niet-http-URL gaan is niet toegestaan!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Het is niet toegestaan naar \"%s\"-URL's te gaan"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "Te openen URL: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Wijzig de huidige Ga-naar URL: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Wijzig de vorige Ga-naar URL: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Wijzig een voorgaande Ga-naar URL: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "Huidige document bevat geen POST-informatie."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Wijzig de URL van dit document: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Wijzig de URL van de huidige link: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "U kunt Bestandsbeheer-URL's niet wijzigen"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Voer een databankopdracht in: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Voer een zoekopdracht in: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Wijzig de huidige opdracht: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Wijzig de vorige opdracht: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Wijzig een voorgaande opdracht: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Gebruik Ctrl-R om de huidige opdracht nog eens te verzenden."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Wijzig de huidige snelkoppeling: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Wijzig de vorige snelkoppeling: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Wijzig een voorgaande snelkoppeling: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Toets '%c' is niet gebonden aan een snelkoppelingenbestand!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Kan snelkoppelingenbestand niet vinden!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Kan snelkoppelingenbestand niet openen!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Fout bij lezen van snelkoppelingenbestand!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Geen geheugen meer beschikbaar tijdens lezen van snelkoppelingenbestand!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Geen geheugen meer beschikbaar tijdens lezen van snelkoppelingentabel!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Er is momenteel geen index beschikbaar."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Wilt u echt naar het beginscherm gaan?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "U bent al in het beginscherm!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Dit is geen geïndexeerd document -- gebruik '/' om een tekenreeks te zoeken"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Er is geen eigenaar genoemd voor dit bestand, dus u kunt geen commentaar zenden"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Er is geen eigenaar gedefinieerd.  %s gebruiken?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Wilt u commentaar versturen?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "E-mail is niet toegestaan, dus u kunt geen commentaar zenden"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "Het 'e'dit-commando is momenteel uitgeschakeld."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "Extern editen is momenteel uitgeschakeld."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Systeemfout -- status opvragen is mislukt."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Er is geen editor opgegeven!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "Het 'p'rint-commando is momenteel uitgeschakeld."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "Het document heeft geen Werkbalk-links of koptekst."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Kan bestand met doorkruisingen niet openen."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Kan bestand met gevonden doorkruisingen niet openen."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Kan bestand met verwerpingen niet openen."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Kan bestand met fouten van doorkruisingen niet vinden"
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "DOORKRUISING WERD ONDERBROKEN"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Volg link (of ga naar link of pagina) met nummer: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Selecteer optie (of pagina) met nummer: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Optienummer %d is al het huidige."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Dit is het einde van deze optielijst."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Dit is het begin van deze optielijst."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Dit is pagina %d van deze optielijst."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "U hebt een ongeldig optienummer ingevoerd."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Ongeldige HTML!!  Gebruik -trace om een diagnose op te maken. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Voer de naam in van het bestand om in op te slaan"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Kan gegevens niet opslaan in bestand -- draai WWW lokaal"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Kan tijdelijk bestand niet openen!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Kan uitvoerbestand niet openen!  Bezig met annuleren!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Uitvoeren is uitgeschakeld."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Uitvoeren is niet aangezet voor dit bestand.  Zie het Optiesmenu (gebruik %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Uitvoermogelijkheden zijn niet ingebouwd in deze versie."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Dit bestand kan niet op deze terminal getoond worden."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Dit bestand kan niet op deze terminal getoond worden:  D)ownload, C)-annuleren"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D)ownloaden, of C)-annuleren"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Bestand wordt geannuleerd."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Bestand wordt opgehaald.  Even geduld..."
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Voer een bestandsnaam in: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Wijzig de vorige bestandsnaam: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Wijzig een voorgaande bestandsnaam: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Voer een nieuwe bestandsnaam in: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Bestandsnaam mag niet met een punt beginnen."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Bestand bestaat al.  Hogere versie aanmaken?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Bestand bestaat al.  Overschrijven?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Kan niet naar bestand schrijven."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "FOUT -- Downloadcommando is onjuist ingesteld."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Kan bestand niet downloaden."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Lezen van mapinhoud..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Opbouwen van bestandenoverzicht voor map..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Bezig met opslaan..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Kan bestand '%s' niet wijzigen."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Geen toegang tot document!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Geen toegang tot bestand."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Geen toegang tot map."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Kan gegevens niet inlezen."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx kan momenteel geen WWW-bestanden op een andere computer wijzigen."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Dit veld kan niet gewijzigd worden met een externe editor."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Foutieve regel"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Onvoldoende argumenten:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "U bent niet geautoriseerd om dit bestand te wijzigen."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Titel: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Onderwerp: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Gebruikersnaam: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Wachtwoord: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Gebruikersnaam en wachtwoord zijn vereist!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: Wachtwoord is vereist!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Alle autorisatie-informatie voor deze sessie wissen?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Autorisatie-informatie is gewist."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Autorisatie is mislukt.  Nog eens proberen?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "CGI-ondersteuning is uitgeschakeld."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Lynx-CGI-functies zijn niet ingebouwd in deze versie."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Sorry, er is geen bekende manier om %s naar %s te converteren."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Kan verbinding niet voorbereiden."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Kan verbinding niet maken"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Uitvoerbare link is verworpen vanwege een verkeerd geformuleerde opdracht."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Uitvoerbare link is verworpen vanwege '%c'-teken."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Uitvoerbare link is verworpen vanwege een relatief pad ('../')."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Uitvoerbare link is verworpen vanwege locatie of pad."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "E-mailtoegang is uitgeschakeld!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Er is alleen toegang tot bestanden en servers op de lokale computer."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Toegang via telnet is uitgeschakeld!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Telnet-poortspecificaties zijn uitgeschakeld."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "Toegang tot USENET-nieuws is uitgeschakeld!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Toegang via 'rlogin' is uitgeschakeld!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Toegang via FTP is uitgeschakeld!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Er zijn geen referenties vanuit dit document."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Er zijn alleen verborgen links vanuit dit document."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Kan opdrachtenbestand niet openen."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Nieuwsverzending is geannuleerd!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Uw geselecteerde editor wordt opgestart om een nieuwsbericht in te voeren"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Dit bericht posten?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "'%s' aan einde toevoegen?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Posten naar nieuwsgroep(en)..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** U hebt ongelezen e-mail. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** U hebt e-mail. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** U hebt nieuwe e-mail. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Opname van bestand is geannuleerd!!!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Niet genoeg geheugen beschikbaar voor bestand!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Kan bestand niet openen om te lezen."
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Bestand bestaat niet."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Bestand bestaat niet -- voer opnieuw in of annuleer:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Bestand is niet leesbaar."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Bestand is niet leesbaar -- voer opnieuw in of annuleer:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Er is niets om in te voegen -- bestand heeft lengte 0."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Opslagverzoek is geannuleerd!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "E-mailopdracht is geannuleerd!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Voorverwerkte brontekst wordt getoond.  Verzenden?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Even geduld..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Bestand wordt verzonden.  Even geduld..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "FOUT -- Kan e-mailbestand niet openen."
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Bestand is %d schermen lang.  Toch afdrukken?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Adrukverzoek is geannuleerd!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Druk op <Enter> om te beginnen: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Druk op <Enter> om te voltooien: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Bestand is %d pagina's lang.  Toch afdrukken?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Zorg dat de printer aan staat.  Druk op <Enter> om het afdrukken te beginnen:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "FOUT -- Kan geen ruimte voor bestand reserveren."
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Kan tijdelijk bestand niet openen"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Kan optiesbestand niet afdrukken"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Bestand wordt afgedrukt.  Even geduld..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Voer een geldig e-mailadres in: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "FOUT -- Printer is niet goed ingesteld."
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Menuplaatje van POST-antwoord is niet beschikbaar!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Verkeerd gerichte opdracht voor menuplaatje aan cliëntzijde!"
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "Menuplaatje aan cliëntzijde is niet bereikbaar!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Er zijn aan cliëntzijde geen menuplaatjes beschikbaar!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "Menuplaatje aan cliëntzijde is niet beschikbaar!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Voor het Optiesmenu moet de schermhoogte minimaal 24 regels zijn."
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Voor het Optiesmenu moet de schermhoogte minimaal 23 regels zijn."
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Voor het Optiesmenu moet de schermhoogte minimaal 22 regels zijn."
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Die toets werkt alleen in de 'expert'-gebruikersmodus."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Inhoudstype: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Commando: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Onbekend of meerduidig commando"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " versie "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " eerst"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", er naar raden..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Toegangsrechten voor "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Selecteer "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "hoofdletter"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " van optieregel,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " om op te slaan,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " aan "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " of "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " index"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " om terug te keren naar Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Bevestigen"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Annuleren"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "(pijltje naar links annuleert ook)"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Opties op schijf opslaan"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Druk op <Enter> om ingevoerde gegevens te accepteren."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Druk op <Enter> om gegevens te accepteren.  Wis gegevens om te herstellen."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Waarde is geaccepteerd!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Waarde is geaccepteerd! -- WAARSCHUWING: Lynx is geconfigureerd voor X Windows!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Waarde is geaccepteerd! -- WAARSCHUWING: Lynx is NIET geconfigureerd voor X Windows!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "U mag niet opgeven welke editor u wilt gebruiken!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Zetten van variabele DISPLAY is mislukt!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Wissen van variabele DISPLAY is mislukt!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "U mag het boekenleggerbestand niet veranderen!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "De terminal ondersteunt geen kleur"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Uw '%s'-terminal ondersteunt geen kleur."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "Toegang tot puntbestanden is uitgeschakeld!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "Waarde van 'User-Agent' bevat geen \"Lynx\" of \"L_y_n_x\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Gebruik \"L_y_n_x\" of \"Lynx\" in 'User-Agent', anders lijkt het op bedrog."
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "Wijzigen van de waarde van 'User-Agent' is uitgeschakeld!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "U mag deze instelling niet wijzigen."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Opslaan van opties..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Opties zijn opgeslagen."
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Kan opties niet opslaan!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' om terug te keren naar Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' om op te slaan, of 'r' om terug te keren naar Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Druk op een toets om de waarde te veranderen; <Enter> om te accepteren."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Fout bij decomprimeren van tijdelijk bestand!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Niet-ondersteunde URL-methode!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Niet-ondersteunde 'data:'-URL!  Gebruik voorlopig SHOWINFO."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Doorverwijzingslimiet van 10 URL's is bereikt."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Ongeldige doorverwijzing-URL ontvangen van server!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Server vroeg om %d-doorverwijzing van POST-inhoud naar"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P)-doorgaan, G)ET gebruiken of C)-annuleren "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P)-doorgaan, of C)-annuleren "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Doorverwezen POST-inhoud.  P)-doorgaan, U)RL zien, G)ET of C)-annuleren"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Doorverwezen POST-inhoud.  P)-doorgaan, U)RL bekijken, of C)-annuleren"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Document van formulier met POST-inhoud.  Opnieuw verzenden?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Opnieuw POST-inhoud naar %s verzenden?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Lijst van document met POST-informatie.  Opnieuw %s laden?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Document met POST-actie, HEAD wordt mogelijk niet begrepen.  Doorgaan?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Formulierverzendactie is POST, HEAD wordt mogelijk niet begrepen.  Doorgaan?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Doorgaan zonder gebruikersnaam en wachtwoord?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Doorgaan (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Kan geen 'POST' verzenden naar deze host."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "POST wordt niet ondersteund voor deze URL -- POST-informatie wordt genegeerd!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Weggooien van POST-informatie..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Document zal niet opnieuw geladen worden!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Locatie: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' niet gevonden!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Standaard boekenleggerbestand"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Scherm is te klein! (minimaal 8x35)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Selecteer bestemming of Ctrl-G om te annuleren: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Selecteer subboekenlegger, '=' = menu, Ctrl-G = annuleren: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "L)ink reproduceren in dit boekenleggerbestand of C)-annuleren? (l,c): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Meervoudige boekenleggerondersteuning is niet beschikbaar."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Selecteer boekenlegger (scherm %d van %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Selecteer boekenlegger"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Wijzigen van boekenlegger-OMSCHRIJVING en -BESTANDSPAD (%d van 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "        Wijzigen van boekenlegger-OMSCHRIJVING en -BESTANDSPAD"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Letter: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Gebruik een bestandspad vanuit uw login-map in shell-syntaxis!"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Gebruik een bestandspad vanuit uw persoonlijke map!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Te veel links per pagina!  Blader per halve pagina of tweeregelig."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Geen voorgaande bezochte links beschikbaar!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Geen geheugen meer beschikbaar!  Programma is afgebroken!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Geen geheugen meer beschikbaar!  Programma wordt afgebroken..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Onvoldoende geheugen beschikbaar!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Bestandsbeheer is niet beschikbaar"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF in 'BASE'-element is niet een absolute URL."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "Locatie-URL is niet absoluut."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "Verversings-URL is niet absoluut."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"U zendt een bericht met inhoud naar:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"U zendt commentaar naar:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" Met kopie naar:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Met kopieën naar:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Gebruik Ctrl-G om te annuleren (bericht niet verzenden).\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Voer uw naam in, of laat het leeg om anoniem te blijven\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Vul een e-mailadres in of een andere manier om\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " u te bereiken, als u antwoord wenst te ontvangen.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Vul een onderwerp in.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Voer een e-mailadres in om een kopie van het bericht naar toe te sturen.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Laat dit leeg indien u geen kopie wilt.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Controleer de inhoud van het bericht:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Druk op <Enter> om door te gaan: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Druk op <Enter> om op te ruimen: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Gebruik Ctrl-U om de huidige regel te wissen.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Schrijf uw bericht hieronder."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Wanneer u klaar bent, druk dan op <Enter> en plaats vervolgens"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" een punt (.) op één regel, en druk dan opnieuw op <Enter>."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s koekje: %.*s=%.*s  Toestaan? (Ja, Nee, Altijd, nOoit)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Ongeldig koekjesdomein=%s voor '%s' accepteren?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Ongeldig koekjespad=%s als een prefix voor '%s' accepteren?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Dit koekje wordt toegelaten."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Dit koekje wordt verworpen."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "De koekjestrommel is leeg."
+
+#: LYMessages.c:705
+msgid "The Cache Jar is empty."
+msgstr "De cachetrommel is leeg."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Activeer de links om koekjes over hun houdbaarheidsdatum heen te helpen,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "of om de 'toelaatbaarheids'-instelling van een domein te wijzigen."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Koekjes nooit toegestaan.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Koekjes altijd toegestaan.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Koekjes toegestaan met prompt.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Persistente koekjes.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Geen titel.)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Geen naam.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Geen waarde.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "geen"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Einde van sessie.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Dit koekje verwijderen?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Het koekje is opgegeten!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Dit lege domein verwijderen?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Het domein is opgegeten!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)omein wissen; zet toelaten op A)ltijd/P)rompt/V)-nooit, of C)-annuleren? "
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)omein wissen; zet toestaan op A)ltijd/P)rompt/V)-nooit, of C)-annuleren? "
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Alle koekjes in het domein zijn opgegeten!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "(A) altijd toelaten van domein '%s'."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "(V) nooit toelaten van domein '%s'."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "(P) prompten voor toestaan van domein '%s'."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Alle koekjes in dit domein verwijderen?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Alle koekjes in de trommel zijn opgegeten!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Poort 19 is niet toegestaan in URL's."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Poort 25 is niet toegestaan in URL's."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Poort %lu is niet toegestaan in URL's."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "URL heeft een foutief poortveld."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Maximale nestingsdiepte van HTML-elementen is overschreden."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Foutieve gedeeltelijke referentie!  Voorafgaande puntjes worden weggelaten."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Kan trace-logbestand niet openen.  Traceren is uitgezet!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Lynx-trace-logbestand"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Er is geen trace-logbestand gestart voor deze sessie."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Het maximale aantal tijdelijke bestanden is bereikt!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Waarde in formulierveld overschrijdt lengte van de buffer!  Staart wordt afgeknipt."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Veranderde staart samengevoegd met kop van waarde uit formulierveld."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Map"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Bladeren door mappen is niet toegestaan."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "Selectieve toegang is niet aangezet voor deze map"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: doorzoeken van map mislukt."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Deze map is niet leesbaar."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Geen toegang tot opgevraagd bestand."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Kan geen passende representatie vinden voor overdracht."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Kan bestand niet openen voor decompressie!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Bestanden:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Submappen:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " map"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Terug naar "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Huidige map is "
+
+#. HTFTP.c
+#: LYMessages.c:765
+msgid "Symbolic Link"
+msgstr "Symbolische koppeling"
+
+#. HTGopher.c
+#: LYMessages.c:768
+msgid "No response from server!"
+msgstr "Geen reactie van die server!"
+
+#: LYMessages.c:769
+msgid "CSO index"
+msgstr "CSO-index"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Dit is een doorzoekbare index van een CSO-databank.\n"
+
+#: LYMessages.c:771
+msgid "CSO Search Results"
+msgstr "CSO-zoekresultaten"
+
+#: LYMessages.c:772
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Zoekopdracht is mislukt op %s\n"
+
+#: LYMessages.c:773
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Druk op de 's'-toets en voer zoektermen in.\n"
+
+#: LYMessages.c:774
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Dit is een doorzoekbare Gopher-index.\n"
+
+#: LYMessages.c:775
+msgid "Gopher index"
+msgstr "Gopher-index"
+
+#: LYMessages.c:776
+msgid "Gopher Menu"
+msgstr "Gopher-menu"
+
+#: LYMessages.c:777
+msgid " Search Results"
+msgstr " Zoekresultaten"
+
+#: LYMessages.c:778
+msgid "Sending CSO/PH request."
+msgstr "Verzenden van CSO/PH-verzoek."
+
+#: LYMessages.c:779
+msgid "Sending Gopher request."
+msgstr "Verzenden van Gopher-verzoek."
+
+#: LYMessages.c:780
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO/PH-verzoek is verzonden; wacht op antwoord."
+
+#: LYMessages.c:781
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopher-verzoek is verzonden; wacht op antwoord."
+
+#: LYMessages.c:782
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Voer zoektermen in.\n"
+
+#: LYMessages.c:783
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"De zoektermen die u opgeeft maken het mogelijk te zoeken op"
+
+#: LYMessages.c:784
+msgid " person's name in the database.\n"
+msgstr " een persoonsnaam in de databank.\n"
+
+#. HTNews.c
+#: LYMessages.c:787
+msgid "Connection closed ???"
+msgstr "Verbinding gesloten???"
+
+#: LYMessages.c:788
+msgid "Cannot open temporary file for news POST."
+msgstr "Kan tijdelijk bestand niet openen voor nieuws-POST."
+
+#: LYMessages.c:789
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Dit programma ondersteunt versturen van nieuwsberichten met SSL niet."
+
+#. HTStyle.c
+#: LYMessages.c:792
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Stijl %d '%s' SGML:%s.  Lettertype %s %.1f-punts.\n"
+
+#: LYMessages.c:794
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "        Uitlijnen=%d, %d tabs. (%.0f voor, %.0f na)\n"
+
+#: LYMessages.c:795
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "                Tabsoort=%d op %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:798
+msgid "Can't proceed without a username and password."
+msgstr "Kan niet verder zonder gebruikersnaam en wachtwoord."
+
+#: LYMessages.c:799
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Herhalen gaat niet met autorisatie!  Vraag beheerder van de webserver."
+
+#: LYMessages.c:800
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Herhalen gaat niet met proxy-autorisatie!  Vraag beheerder van de webserver."
+
+#: LYMessages.c:801
+msgid "Retrying with proxy authorization information."
+msgstr "Nieuwe poging met proxy-autorisatie-informatie."
+
+#: LYMessages.c:802
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL-fout: %s -- Verdergaan?"
+
+#. HTWAIS.c
+#: LYMessages.c:805
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Geretourneerd bericht is te groot."
+
+#: LYMessages.c:806
+msgid "Enter WAIS query: "
+msgstr "Voer een WAIS-verzoek in: "
+
+#. Miscellaneous status
+#: LYMessages.c:809
+msgid "Retrying as HTTP0 request."
+msgstr "Nieuwe poging als HTTP0-verzoek."
+
+#: LYMessages.c:810
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "%d bytes overgezet"
+
+#: LYMessages.c:811
+msgid "Data transfer complete"
+msgstr "Gegevensoverdracht is voltooid"
+
+#: LYMessages.c:812
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Fout bij verwerking van regel %d van %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:815
+msgid "Address List Page"
+msgstr "Adreslijst Pagina"
+
+#: LYMessages.c:816
+msgid "Bookmark file"
+msgstr "Boekenleggerbestand"
+
+#: LYMessages.c:817
+msgid "Configuration Definitions"
+msgstr "Instellingen"
+
+#: LYMessages.c:818
+msgid "Cookie Jar"
+msgstr "Koekjestrommel"
+
+#: LYMessages.c:819
+msgid "Current Key Map"
+msgstr "Huidige toetsenbordindeling"
+
+#: LYMessages.c:820
+msgid "File Management Options"
+msgstr "Bestandsbeheeropties"
+
+#: LYMessages.c:821
+msgid "Download Options"
+msgstr "Downloadopties"
+
+#: LYMessages.c:822
+msgid "History Page"
+msgstr "Historiepagina"
+
+#: LYMessages.c:823
+msgid "Cache Jar"
+msgstr "Cachetrommel"
+
+#: LYMessages.c:824
+msgid "List Page"
+msgstr "Lijstenpagina"
+
+#: LYMessages.c:825
+msgid "Lynx.cfg Information"
+msgstr "Lynx.cfg-informatie"
+
+#: LYMessages.c:826
+msgid "Converted Mosaic Hotlist"
+msgstr "Geconverteerde Mosaic-hotlist"
+
+#: LYMessages.c:827
+msgid "Options Menu"
+msgstr "Optiesmenu"
+
+#: LYMessages.c:828
+msgid "File Permission Options"
+msgstr "Opties voor bestandstoegangsrechten"
+
+#: LYMessages.c:829
+msgid "Printing Options"
+msgstr "Afdrukopties"
+
+#: LYMessages.c:830
+msgid "Information about the current document"
+msgstr "Informatie over het huidige document"
+
+#: LYMessages.c:831
+msgid "Your recent statusline messages"
+msgstr "Recente berichten van de statusregel"
+
+#: LYMessages.c:832
+msgid "Upload Options"
+msgstr "Uploadopties"
+
+#: LYMessages.c:833
+msgid "Visited Links Page"
+msgstr "Bezochte links-pagina"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:836
+msgid "See also"
+msgstr "Zie ook"
+
+#: LYMessages.c:837
+msgid "your"
+msgstr "uw"
+
+#: LYMessages.c:838
+msgid "for runtime options"
+msgstr "voor uitvoeropties"
+
+#: LYMessages.c:839
+msgid "compile time options"
+msgstr "compilatieopties"
+
+#: LYMessages.c:840
+msgid "color-style configuration"
+msgstr "instellingen van kleurstijl"
+
+#: LYMessages.c:841
+msgid "latest release"
+msgstr "laatste versie"
+
+#: LYMessages.c:842
+msgid "pre-release version"
+msgstr "testversie"
+
+#: LYMessages.c:843
+msgid "development version"
+msgstr "ontwikkelversie"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:845
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Onderstaande gegevens werden bepaald tijdens het configuratieproces van\n"
+"dit exemplaar van Lynx.  Voeg een kopie van deze gegevens bij wanneer u\n"
+"een programmafout rapporteert."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:849
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Onderstaande gegevens werden gebruikt als automatisch bepaalde\n"
+"definities tijdens het compileren van dit exemplaar van Lynx."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:854
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "C)reëer D)ownload E)dit F)-volledig menu M)-wijzig R)-wis T)-vink U)pload\n"
+
+#: LYMessages.c:855
+msgid "Failed to obtain status of current link!"
+msgstr "Kan status van de huidige link niet verkrijgen!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:858
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Speciale URL is alleen geldig vanuit huidige Bestandstoegangsrechten-menu!"
+
+#: LYMessages.c:862
+msgid "External support is currently disabled."
+msgstr "Externe ondersteuning is momenteel uitgeschakeld."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:866
+msgid "Changing working-directory is currently disabled."
+msgstr "De werkmap wijzigen is momenteel uitgeschakeld."
+
+#: LYMessages.c:867
+msgid "Linewrap OFF!"
+msgstr "Regelvouwen UIT!"
+
+#: LYMessages.c:868
+msgid "Linewrap ON!"
+msgstr "Regelvouwen AAN!"
+
+#: LYMessages.c:869
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Ontleden van geneste tabellen is UIT gezet!  Herladen..."
+
+#: LYMessages.c:870
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Ontleden van geneste tabellen is AAN gezet!  Herladen..."
+
+#: LYMessages.c:871
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Gebruik van shift is uitgeschakeld als regelvouwen in gebruik is"
+
+#: LYMessages.c:872
+msgid "Trace not supported"
+msgstr "Traceren wordt niet ondersteund"
+
+#: LYMessages.c:793
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "        Inspringen: eerste=%.0f overigen=%.0f, hoogte=%.1f omschr=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Gebruikersnaam voor '%s' op %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Dit programma weet niet hoe proxy-autorisatie-informatie te maken voor schema"
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Dit programma weet niet hoe autorisatie-informatie te maken voor schema"
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Foutieve kop '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "Proxy-autorisatie is vereist -- nieuwe poging"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "Toegang zonder autorisatie is geweigerd -- nieuwe poging"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "Toegang is verboden volgens regel"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Document met POST inhoud niet gevonden in cache.  Nog eens verzenden?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr "Het laden is mislukt, gebruik een vroegere kopie."
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8542
+msgid "Loading incomplete."
+msgstr "Laden niet voltooid."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: socket of bestandsnummer teruggegeven door verouderde laadroutine!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Interne fout.  Meld dit aan <lynx-dev@nongnu.org>!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Geretourneerde status was: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7756
+msgid "Can't Access"
+msgstr "Kan geen toegang krijgen"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "Kan geen toegang krijgen tot document."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Voer wachtwoord in voor gebruiker %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Kan geen verbinding maken met FTP-host."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "hoofdsocket sluiten"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "socket voor hoofdsocket"
+
+#: WWW/Library/Implementation/HTFTP.c:2977
+msgid "Receiving FTP directory."
+msgstr "Ophalen van FTP-bestandenoverzicht."
+
+#: WWW/Library/Implementation/HTFTP.c:3113
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "%d bytes overgezet (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3467
+msgid "connect for data"
+msgstr "verbinden voor datastroom"
+
+#: WWW/Library/Implementation/HTFTP.c:4128
+msgid "Receiving FTP file."
+msgstr "Ophalen van FTP-bestand."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "Kan finger-verbinding niet maken."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Kan gegevens niet laden (geen site-naam in finger-URL)"
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "Ongeldig poortnummer -- zal alleen poort 79 gebruiken!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "Kan finger-host niet bereiken."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "Geen antwoord van finger-server."
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Gebruikersnaam voor nieuws-host '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "Gebruikersnaam wijzigen?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "Gebruikersnaam:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Wachtwoord voor nieuws-host '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "Wachtwoord wijzigen?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "Geen overeenkomsten voor: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Geen artikelen gevonden in deze groep.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Geen artikelen in dit bereik.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  Artikelen %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "Eerdere artikelen"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Er zijn momenteel ongeveer %d artikelen beschikbaar in %s, met volgende ID's:\n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "Alle beschikbare artikelen in "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "Latere artikelen"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "Posten naar "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Dit programma ondersteunt geen SNEWS-URL's."
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr "Geen bestemming voor ruwe tekst!"
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "Verbinden met nieuws-host ..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "Geen toegang tot %s."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Kan nieuwsinformatie niet lezen.  Nieuws-host %.20s antwoordde: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Kan nieuwsinformatie niet lezen; loos antwoord van host %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "Lezen van lijst met beschikbare nieuwsgroepen."
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "Lezen van lijst met artikelen in nieuwsgroep."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "Lezen van nieuwsartikel."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr "Sorry, kan het opgevraagde nieuws niet laden."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "Adres bevat ongeldige poort"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "Adreslengte ziet er ongeldig uit"
+
+#: WWW/Library/Implementation/HTTCP.c:1618
+#: WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Kan gindse computer %s niet vinden."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633
+#: WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Ongeldige hostnaam %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Maken van %s-verbinding met %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "socket is mislukt."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "socket is mislukt: familie %d adres %s poort %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Kan verbinding niet niet-blokkerend maken."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "Verbinden is mislukt (te vaak opnieuw geprobeerd)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Kan socket niet naar blokkerende modus herstellen."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+msgid "Socket read failed (too many tries)."
+msgstr "Socket uitlezen is mislukt (te vaak opnieuw geprobeerd)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "Adres bevat een gebruikersnaam: %s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Certificaat is uitgeven door: %s"
+
+#: WWW/Library/Implementation/HTTP.c:643
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Dit programma ondersteunt geen HTTPS-URL's."
+
+#: WWW/Library/Implementation/HTTP.c:668
+msgid "Unable to connect to remote host."
+msgstr "Kan geen verbinding maken met gindse computer."
+
+#: WWW/Library/Implementation/HTTP.c:692
+msgid "Retrying connection without TLS."
+msgstr "Verbinding wordt opnieuw geprobeerd zonder TLS."
+
+#: WWW/Library/Implementation/HTTP.c:737
+msgid "no issuer was found"
+msgstr "geen uitgever gevonden"
+
+#: WWW/Library/Implementation/HTTP.c:739
+msgid "issuer is not a CA"
+msgstr "uitgever is geen CA"
+
+#: WWW/Library/Implementation/HTTP.c:741
+msgid "the certificate has no known issuer"
+msgstr "het certificaat heeft geen bekende uitgever"
+
+#: WWW/Library/Implementation/HTTP.c:743
+msgid "the certificate has been revoked"
+msgstr "het certificaat is herroepen"
+
+#: WWW/Library/Implementation/HTTP.c:745
+msgid "the certificate is not trusted"
+msgstr "het certificaat wordt niet vertrouwd"
+
+#: WWW/Library/Implementation/HTTP.c:821
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Geverifieerde verbinding met %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:869 WWW/Library/Implementation/HTTP.c:911
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Geverifieerde verbinding met %s (subj=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:941
+msgid "Can't find common name in certificate"
+msgstr "Kan in certificaat geen gewone naam vinden"
+
+#: WWW/Library/Implementation/HTTP.c:944
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL-fout: computer(%s)!=certificaat(%s).  Verdergaan?"
+
+#: WWW/Library/Implementation/HTTP.c:957
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "ONGEVERIFIEERDE verbinding met %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:966
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Veilige %d-bits %s (%s) HTTP-verbinding"
+
+#: WWW/Library/Implementation/HTTP.c:1433
+msgid "Sending HTTP request."
+msgstr "Zenden van HTTP-verzoek."
+
+#: WWW/Library/Implementation/HTTP.c:1472
+msgid "Unexpected network write error; connection aborted."
+msgstr "Onverwachte fout bij schrijven naar netwerk; verbinding is verbroken."
+
+#: WWW/Library/Implementation/HTTP.c:1478
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP-verzoek is verzonden; wacht op antwoord."
+
+#: WWW/Library/Implementation/HTTP.c:1546
+msgid "Unexpected network read error; connection aborted."
+msgstr "Onverwachte fout bij lezen uit netwerk; verbinding is verbroken."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1740
+msgid "Got unexpected Informational Status."
+msgstr "Onverwachte informatieve status ontvangen."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1774
+msgid "Request fulfilled.  Reset Content."
+msgstr "Verzoek is volbracht.  Herstellen van inhoud."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1891
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Kreeg een onverwachte '304 Niet gewijzigd'-statusmelding."
+
+#: WWW/Library/Implementation/HTTP.c:1954
+msgid "Redirection of POST content requires user approval."
+msgstr "Doorverwijzing van POST-inhoud vereist toestemming van de gebruiker."
+
+#: WWW/Library/Implementation/HTTP.c:1969
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Heb POST-inhoud.  Permanente doorverwijzing wordt behandeld als een tijdelijke.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2011
+msgid "Retrying with access authorization information."
+msgstr "Bezig opnieuw te proberen met toegangsautorisatie-informatie."
+
+#: WWW/Library/Implementation/HTTP.c:2023
+msgid "Show the 401 message body?"
+msgstr "Inhoud van het 401-bericht laten zien?"
+
+#: WWW/Library/Implementation/HTTP.c:2066
+msgid "Show the 407 message body?"
+msgstr "Inhoud van het 407-bericht laten zien?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2166
+msgid "Unknown status reply from server!"
+msgstr "Onbekende statusmelding van server!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "sessie %s op andere computer:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Kan verbinding met WAIS-server niet tot stand brengen."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Kan WAIS-verbinding voor lezen niet tot stand brengen."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Diagnostische code is "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Inhoud "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " bevat de volgende %d item%s relevant voor \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Het eerste cijfer achter elk item is zijn relatieve score, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "het tweede is het aantal regels in het item."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (foutieve bestandsnaam)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(foutief document-ID.)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Verkorte Kop structuur, niet toonbaar)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Lange Kop structuur, niet toonbaar\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Tekst structuur\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Kopregel structuur, niet toonbaar\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Code structuur, niet toonbaar\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Syntactische fout in WAIS-URL"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS-index)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS-index: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Deze link is om te zoeken in de "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS-index.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Typ het 's'-zoekcommando en specificeer dan zoektermen.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (in "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS doorzoeken naar \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" in: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Verzoek is te groot."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Doorzoeken van WAIS-databank..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Zoeken is onderbroken."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Kan opmaak van WAIS-document niet converteren"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Verzoek is te lang."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Ophalen van WAIS-document..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Er is geen tekst geretourneerd!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr " NIET OPGEGEVEN in bronbestand; "
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr " WAIS-bronbestand"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " omschrijving"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "Toegangs-links"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "Directe toegang"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (of via een proxy-server, indien opgegeven)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "Beheerder"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "Computer"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "Geen geheugen meer beschikbar, weergave is onderbroken!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Geen geheugen meer beschikbaar, overdracht wordt afgebroken!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** ONVOLDOENDE GEHEUGEN BESCHIKBAAR ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "onbekend veld of link"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "tekstinvoerveld"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "wachtwoordinvoerveld"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "aanvinkvakje"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "drukknop"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "verzendknop"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "herstelknop"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "popup-menu"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "verborgen formulierveld"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "tekstinvoergebied"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr "bereikinvoerveld"
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "bestandsnaaminvoerveld"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr "tekst-verzendveld"
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "afbeelding-verzendknop"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr "sleutelaanmaakveld"
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "onbekend formulierveld"
+
+#: src/GridText.c:10275
+msgid "Can't open file for uploading"
+msgstr "Kan bestand niet openen voor upload"
+
+#: src/GridText.c:11434
+#, c-format
+msgid "Submitting %s"
+msgstr "Verzenden van %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12487
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Ophanging Gedetecteerd: TextAnchor-struct is corrupt - stel voor te onderbreken!"
+
+#. don't show previous state
+#: src/GridText.c:12624
+msgid "Wrap lines to fit displayed area?"
+msgstr "Regels omvouwen zodat alles zichtbaar is?"
+
+#: src/GridText.c:12676
+msgid "Very long lines have been wrapped!"
+msgstr "Erg lange regels zijn omgevouwen!"
+
+#: src/GridText.c:13181
+msgid "Very long lines have been truncated!"
+msgstr "Erg lange regels zijn afgekapt!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "bytes"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "%s aan gegevens gelezen"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "%s van %s aan gegevens gelezen"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/s"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (gestopt voor %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", ETA %s"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Druk op 'z' om te stoppen)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "ja"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "nee"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr "(J/N/A/V)"
+
+#: src/HTML.c:5913
+msgid "Description:"
+msgstr "Omschrijving:"
+
+#: src/HTML.c:5918
+msgid "(none)"
+msgstr "(geen)"
+
+#: src/HTML.c:5922
+msgid "Filepath:"
+msgstr "Bestandspad:"
+
+#: src/HTML.c:5928
+msgid "(unknown)"
+msgstr "(onbekend)"
+
+#: src/HTML.c:7355
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Document heeft slechts verborgen links.  Gebruik het 'l'ijst commando."
+
+# Source?
+#: src/HTML.c:7854
+msgid "Source cache error - disk full?"
+msgstr "Cache fout - schijf vol?"
+
+#: src/HTML.c:7867
+msgid "Source cache error - not enough memory!"
+msgstr "Cache fout - niet genoeg geheugen!"
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Dit bestand is een HTML representatie van het 'X Mosaic hotlist'\n"
+"     bestand.  Verlopen of foutieve links kunnen verwijderd worden met\n"
+"     het 'verwijder boekenlegger', welke doorgaans gekoppeld is aan\n"
+"     de 'R' toets, maar uw systeembeheerder heeft dit wellicht gewijzigd."
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     U kunt links verwijderen met de 'R' toets<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     U kunt links verwijderen met het commando 'verwijder boekenlegger'.\n"
+"     Dit is doorgaans de 'R' toets, maar uw systeembeheerder kan dit\n"
+"     gewijzigd hebben."
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Dit bestand kan ook met een doorsnee tekst-editor worden gewijzigd om\n"
+"     verlopen of foutieve links te wissen, of om de volgorde aan te passen."
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"N.B.: als u dit bestand handmatig hebt aangepast\n"
+"      moet u niet de formattering binnen de regels aanpassen\n"
+"      of andere HTML opmaak toevoegen.\n"
+"      Boekenlegger-links dienen als één regel te worden opgeslagen."
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Het bestand is gedurende deze sessie wellicht terug te halen uit %s"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Wilt u \"%s\" uitvoeren?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Geen toegang tot cgi script"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Goede Raad"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Een uitstekende http server voor VMS is bereikbaar via"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "deze link"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Het biedt voortreffelijke CGI script ondersteuning.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Beëindiging via interrupt:"
+
+#: src/LYCookie.c:2477
+msgid "(from a previous session)"
+msgstr "(van een eerdere sessie)"
+
+#: src/LYCookie.c:2538
+msgid "Maximum Gobble Date:"
+msgstr "Uiterste Houdbaarheidsdatum:"
+
+#: src/LYCookie.c:2577
+msgid "Internal"
+msgstr "Intern"
+
+#: src/LYCookie.c:2578
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "cookie_domain_flag_set fout, programma wordt afgebroken"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Terminal initialisatie mislukt - onbekend terminal type?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "U mout een vt100, 200, enz. terminal gebruiken met dit programma."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "Uw terminal type is onbekend!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "Voer een terminal type in:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TERMINAL TYPE IS GEZET OP"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Een fatale fout is opgetreden in %s Ver. %s\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Vraag uw systeembeheerder om deze fout te bevestigen, en indien bevestigd,\n"
+"breng dan de lynx-dev mailinglijst hiervan op de hoogte.  Een foutrapportage\n"
+"moet een nauwgezette omschrijving bevatten van het commando en/of de URL die\n"
+"het probleem veroorzaakt heeft, alsmede de naam en het versienummer van het\n"
+"besturingssysteem, de TCP/IP-implementatie, de BACKTRACE (indien beschikbaar),\n"
+"en alle andere relevante informatie.\n"
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Fout bij starten van editor, %s"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Editor is geëlimineerd door signaal"
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "Editor gaf afsluitwaarde %s terug"
+
+#: src/LYDownload.c:506
+msgid "Downloaded link:"
+msgstr "Gedownloade link:"
+
+#: src/LYDownload.c:511
+msgid "Suggested file name:"
+msgstr "Voorgestelde bestandsnaam:"
+
+#: src/LYDownload.c:516
+msgid "Standard download options:"
+msgstr "Standaard downloadmogelijkheden:"
+
+#: src/LYDownload.c:517
+msgid "Download options:"
+msgstr "Downloadmogelijkheden:"
+
+#: src/LYDownload.c:533
+msgid "Save to disk"
+msgstr "Opslaan op schijf"
+
+#: src/LYDownload.c:547
+msgid "View temporary file"
+msgstr "Tijdelijk bestand bekijken"
+
+#: src/LYDownload.c:554
+msgid "Save to disk disabled."
+msgstr "Opslaan op schijf is uitgeschakeld."
+
+#: src/LYDownload.c:558 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Lokale toevoegingen:"
+
+#: src/LYDownload.c:569 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Geen naam opgegeven"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "U selecteerde:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(geen adres)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (intern)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (was intern)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (Uit historie)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "U bezocht (m.u.v. POST's, boekenlegger, menu en lijstbestanden):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Nog geen vermeldingen)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Foutieve verwijzing gevonden."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "Sequentie:"
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Verwijzing:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "BestandsNaam:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "RegelAantal:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Geheugenlek ontdekt."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Bevat:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "ByteGrootte:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "Geherreserveerd:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Totale geheugenlekkage tijdens deze uitvoering:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr "Piekreserveringen"
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "Aantal gereserveerde bytes"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr "Totaal aantal reserveringen"
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr "Totaal aantal vrijgevingen"
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Referenties in "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "dit document:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Zichtbare links:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Verborgen links:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Referenties"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Zichtbare links"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Kan status van '%s' niet opvragen."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "Het geselecteerde item is geen bestand of map!  Verzoek is genegeerd."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Het %s is mislukt vanwege systeemfout!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Waarschijnlijke fout tijdens het %s vanwege systeemfout!"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "verwijderen van %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr "aanraken van %s"
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "verplaatsen van %s naar %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Er is al een map met die naam!  Verzoek is genegeerd."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Er is al een bestand met die naam!  Verzoek is genegeerd."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "De opgegeven naam is al in gebruik!  Verzoek is genegeerd."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "Bestemming heeft een andere eigenaar!  Verzoek is genegeerd."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Bestemming is geen geldige map!  Verzoek is genegeerd."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Alle aangevinkte bestand en mappen verwijderen?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Voer een nieuwe bestemming in voor aangevinkte items: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Pad is te lang"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Bron en bestemming zijn dezelfde locatie -- verzoek is genegeerd!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Voer een nieuwe naam in voor map: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Voer een nieuwe naam in voor bestand: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Ongeldig teken (padscheidingsteken) gevonden!  Verzoek is genegeerd."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Voer een nieuwe locatie in voor map: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Voer een nieuwe locatie voor bestand in: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Onverwachte mislukking - kan nakomend padscheidingsteken niet vinden"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Bron en bestemming zijn dezelfde locatie!  Verzoek is genegeerd!"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Wijzig N)aam, L)ocatie, of P)ermissies (n,l, of p): "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Wijzig N)aam of L)ocatie (n of l): "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Deze optie is nog niet geïmplementeerd!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Voer een bestandsnaam in om aan te maken: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Foutieve verwijzing \"/\"gevonden!  Verzoek is genegeerd."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Voer een naam in voor een nieuwe map: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Maak F)-bestand of D)-map (f of d): "
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Map '%s' verwijderen?"
+
+#: src/LYLocal.c:1169
+msgid "Remove directory?"
+msgstr "Map verwijderen?"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Verwijder bestand '%s'?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Verwijder bestand?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Verwijder symbolische koppeling '%s'?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Verwijder symbolische koppeling?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Sorry, weet nog niet hoe met permissies van niet-UNIX bestanden om te gaan."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Kan bestand met permissie-opties niet openen"
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Specificeer permissies hieronder:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Eigenaar:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Groep"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Anderen:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "formulier voor permissies"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Onjuist formaat voor modus."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Onjuiste syntaxis."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Let op!  UUDecoded bestand blijft bestaan in de map waarin u Lynx startte."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "NULL URL verwijzing"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Bezig met uitvoeren van %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Bezig met uitvoeren van systeemcommando.  Dit kan even duren."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Huidige map:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Geselecteerd:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Er is momenteel niets geselecteerd."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "aangevinkt item:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "aangevinkte items:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Onjuiste bestandsnaam; verzoek is genegeerd."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Installatie in de geselecteerde map is niet toegestaan."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "Het geselecteerde item is geen map!  Verzoek is genegeerd."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Een ogenblik geduld..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr "Fout bij opbouwen van installatie-argumenten"
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Bron en bestemming zijn gelijk: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Al in bestemmingsmap: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Installatie is voltooid"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "Tijdelijke URL of lijst zou te lang zijn."
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Bezig met zenden"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "De link   %s :?: %s\n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "genaamd \"%s\"\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "in het bestand \"%s\" genaamd \"%s\"\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "is opgevraagd maar niet beschikbaar."
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "Het leek me dat u dat zou willen weten."
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "Dit bericht is automatisch gegenereerd door"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr "Geen systeemmailer geconfigureerd"
+
+#: src/LYMain.c:1025
+msgid "No Winsock found, sorry."
+msgstr "Geen Winsock gevonden, sorry."
+
+#: src/LYMain.c:1222
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "U MOET een geldig TMP- of TEMP-gebied opgeven!"
+
+#: src/LYMain.c:1275 src/LYMainLoop.c:5051
+msgid "No such directory"
+msgstr "Map bestaat niet"
+
+#: src/LYMain.c:1460
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Configuratiebestand '%s' is niet beschikbaar.\n"
+"\n"
+
+#: src/LYMain.c:1470
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx-tekensets zijn niet opgegeven.\n"
+"\n"
+
+#: src/LYMain.c:1499
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx-editkaart is niet opgegeven.\n"
+"\n"
+
+#: src/LYMain.c:1575
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx-bestand '%s' is niet beschikbaar.\n"
+"\n"
+
+#: src/LYMain.c:1650
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "Er zijn %d tekens van standaardinvoer genegeerd.\n"
+
+#: src/LYMain.c:1652
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Gebruik \"-stdin\" of \"-\" om aan te geven hoe doorgesluisde invoer behandeld moet worden.\n"
+
+#: src/LYMain.c:1800
+msgid "Warning:"
+msgstr "Waarschuwing:"
+
+#: src/LYMain.c:2365
+msgid "persistent cookies state will be changed in next session only."
+msgstr "Voortbestaande stand van koekjes wordt pas in volgende sessie gewijzigd."
+
+#: src/LYMain.c:2610 src/LYMain.c:2655
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: onbekende tekenset '%s' wordt genegeerd\n"
+
+#: src/LYMain.c:3174
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s versie %s (%s)"
+
+#: src/LYMain.c:3212
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Gecompileerd op %s op %s om %s\n"
+
+#: src/LYMain.c:3234
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "De auteursrechten zijn in handen van de Lynx-ontwikkelaarsgroep,"
+
+#: src/LYMain.c:3235
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "de Universiteit van Kansas, CERN, en andere medewerkers."
+
+#: src/LYMain.c:3236
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Gedistribueerd onder de GPL (GNU General Public License), versie 2."
+
+#: src/LYMain.c:3237
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Zie http://lynx.isc.org/ en de online help voor meer informatie."
+
+#: src/LYMain.c:4056
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "Gebruik:  %s [opties] [bestand]\n"
+
+#: src/LYMain.c:4057
+#, c-format
+msgid "Options are:\n"
+msgstr "Mogelijke opties zijn:\n"
+
+#: src/LYMain.c:4356
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Ongeldige optie: %s\n"
+
+#: src/LYMainLoop.c:571
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "**Interne fout**: Ongeldige muiskoppeling %d!"
+
+#: src/LYMainLoop.c:691 src/LYMainLoop.c:5073
+msgid "A URL specified by the user"
+msgstr "Een door de gebruiker opgegeven URL"
+
+#: src/LYMainLoop.c:1150
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Het Enctype 'multipart/form-data' wordt nog niet ondersteund!  Kan niet verzenden."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3082
+msgid "Help Screen"
+msgstr "Hulpscherm"
+
+#: src/LYMainLoop.c:3203
+msgid "System Index"
+msgstr "Systeemindex"
+
+#: src/LYMainLoop.c:3562 src/LYMainLoop.c:5297
+msgid "Entry into main screen"
+msgstr "Ingang naar beginscherm"
+
+#: src/LYMainLoop.c:3820
+msgid "No next document present"
+msgstr "Geen volgend document aanwezig"
+
+#: src/LYMainLoop.c:4116
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "de tekenset voor dit document is expliciet opgegeven, sorry..."
+
+#: src/LYMainLoop.c:5029
+msgid "cd to:"
+msgstr "cd naar:"
+
+#: src/LYMainLoop.c:5054
+msgid "A component of path is not a directory"
+msgstr "Een component van het pad is geen map"
+
+#: src/LYMainLoop.c:5057
+msgid "failed to change directory"
+msgstr "Map wijzigen is mislukt"
+
+#: src/LYMainLoop.c:6229
+msgid "Reparsing document under current settings..."
+msgstr "Document wordt opnieuw ontleed met huidige instellingen..."
+
+#: src/LYMainLoop.c:6520
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Fatale fout: kan uitvoerbestand %s niet openen\n"
+
+#: src/LYMainLoop.c:6857
+msgid "TABLE center enable."
+msgstr "TABLE centreren ingeschakeld."
+
+#: src/LYMainLoop.c:6860
+msgid "TABLE center disable."
+msgstr "TABLE centreren uitgeschakeld."
+
+#: src/LYMainLoop.c:6937
+msgid "Current URL is empty."
+msgstr "Huidige URL is leeg."
+
+#: src/LYMainLoop.c:6939 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "Kopiëren naar klembord is mislukt."
+
+#: src/LYMainLoop.c:6941
+msgid "Document URL put to clipboard."
+msgstr "Document-URL is op klembord geplaatst."
+
+#: src/LYMainLoop.c:6943
+msgid "Link URL put to clipboard."
+msgstr "Link-URL is op klembord geplaatst."
+
+#: src/LYMainLoop.c:6970
+msgid "No URL in the clipboard."
+msgstr "Geen URL op het klembord."
+
+#: src/LYMainLoop.c:7641 src/LYMainLoop.c:7811
+msgid "-index-"
+msgstr "-index-"
+
+#: src/LYMainLoop.c:7751
+msgid "lynx: Can't access startfile"
+msgstr "lynx: Geen toegang tot startbestand"
+
+#: src/LYMainLoop.c:7763
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: Startbestand kan niet gevonden worden of is geen tekst/html of tekst/plain"
+
+#: src/LYMainLoop.c:7764
+msgid "      Exiting..."
+msgstr "      Afsluiten..."
+
+#: src/LYMainLoop.c:7805
+msgid "-more-"
+msgstr "-meer-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "U zult posten naar:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Geef uw e-mailadres voor de 'From:'-kopregel\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Geef of wijzig de 'Subject:'-kopregel (Onderwerp)\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Geef of wijzig de 'Organization:'-kopregel (Organisatie)\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Schrijf hieronder uw bericht."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Bericht bevat geen oorspronkelijke tekst!"
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "B)ladwijzerbestanden bekijken/wijzigen"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "B)ladwijzerbestand: "
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr "AAN"
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285
+#: src/LYOptions.c:2296
+msgid "OFF"
+msgstr "UIT"
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr "NOOIT"
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr "ALTIJD"
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr "negeren"
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr "gebruiker vragen"
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr "alles aanvaarden"
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr "ALTIJD UIT"
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr "ALLEEN VOOR LOKALE BESTANDEN"
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr "ALTIJD AAN"
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr "cijfers doen als pijltjes"
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr "cijfers kiezen koppelingen"
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr "cijfers kiezen koppelingen/formuliervelden"
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr "cijfers kiezen formuliervelden"
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr "hoofdletterongevoelig"
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr "hoofdlettergevoelig"
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr "normaal prompten"
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr "ja-antwoord afdwingen"
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr "nee-antwoord afdwingen"
+
+#: src/LYOptions.c:2242
+msgid "Novice"
+msgstr "beginner"
+
+#: src/LYOptions.c:2243
+msgid "Intermediate"
+msgstr "gevorderd"
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr "expert"
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr "op eerstbezocht"
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr "omgekeerd eerstbezocht"
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr "als bezoekboom"
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr "op laatstbezocht"
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr "omgekeerd laatstbezocht"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr "versoepeld (TagSoup-modus)"
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr "strikt (SortaSGML-modus)"
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr "tonen als labels"
+
+#: src/LYOptions.c:2279
+msgid "as links"
+msgstr "tonen als koppelingen"
+
+#: src/LYOptions.c:2286
+msgid "show filename"
+msgstr "bestandsnaam tonen"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr "STANDAARD"
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr "GEAVANCEERD"
+
+#: src/LYOptions.c:2329
+msgid "Directories first"
+msgstr "mappen eerst"
+
+#: src/LYOptions.c:2330
+msgid "Files first"
+msgstr "bestanden eerst"
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr "gemengd"
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+msgid "By Name"
+msgstr "op naam"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr "op type"
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+msgid "By Size"
+msgstr "op grootte"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+msgid "By Date"
+msgstr "op datum"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr "op modus"
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr "op gebruiker"
+
+#: src/LYOptions.c:2346
+msgid "By Group"
+msgstr "op groep"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr "niet tonen"
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "als %s/s tonen"
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "als %s/s plus ETA tonen"
+
+#: src/LYOptions.c:2379
+msgid "Show progressbar"
+msgstr "als voortgangsbalk"
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr "interne types van Lynx accepteren"
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr "ook types uit lynx.cfg accepteren"
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr "ook gebruikertypes accepteren"
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr "ook systeemtypes accepteren"
+
+#: src/LYOptions.c:2395
+msgid "Accept all types"
+msgstr "alle types accepteren"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr "deflate"
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr "compress"
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr "allemaal"
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Gebruik %s om naar het Optiesmenu te gaan!"
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr "(opties gemarkeerd met (!) worden niet opgeslagen)"
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "Algemene voorkeuren"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "Gebruikersmodus"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "Editor"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "Zoekmethode"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr "Veiligheid en privacy"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "Koekjes"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr "Prompt bij ongeldige koekjes"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr "SSL-prompt"
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "Toetsenbordinvoer"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "Gedrag van cijfertoetsen"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "Emacs-toetsen"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "VI-toetsen"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr "Regelbewerkingsstijl"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr "Toetsenbordindeling"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "Weergave en tekenset"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+msgid "Use locale-based character set"
+msgstr "Tekenset van taalregio nemen"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "Gebruikte tekenset op scherm"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "Tekenset van huidig document"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "CJK-modus"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "Kale 8-bit"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "X-display"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "Uiterlijk van document"
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "Kleur tonen"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "Cursor tonen"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+msgid "Underline links"
+msgstr "Koppelingen onderstrepen"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr "Schuifbalk tonen"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr "Menuutjes voor keuzevelden"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "HTML-foutcorrectie"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "Afbeeldingen"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "Details van afbeeldingen"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "Naar servers verzonden kopregels"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "Persoonlijk e-mailadres"
+
+#: src/LYOptions.c:3760
+msgid "Password for anonymous ftp"
+msgstr "Wachtwoord voor anonieme FTP"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+msgid "Preferred media type"
+msgstr "Voorkeursmediatype"
+
+# Het gaat over compressiemethodes, niet over codering.
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+msgid "Preferred encoding"
+msgstr "Voorkeurscompressie"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "Voorkeurstekenset van document"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "Voorkeurstaal van document"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "User-Agent-kopregel"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "Bestandslijsten en snelheid"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr "passieve FTP gebruiken"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "Sortering voor FTP"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "Groepering in lokale mappen"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+msgid "Local directory sort order"
+msgstr "Sortering van lokale bestanden"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "puntbestanden tonen"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "verwijzingen die programma's starten"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr "Overdrachtssnelheid tonen"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "Speciale bestanden en schermen"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "Meervoudige boekenleggers"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "Boekenleggerbestanden bekijken/wijzigen"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "Naar multiboekenleggermenu"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "Boekenleggerbestand"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr "Automatische sessie"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr "Sessiebestand"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "Bezochte pagina's"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr "Instellingenbestand bekijken: "
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Printopdracht is voltooid.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Document:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Aantal regels:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Aantal pagina's:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "pagina's"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "pagina"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(bij benadering)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Enkele afdrukinstellingen zijn uitgeschakeld."
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Standaard afdrukinstellingen:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Afdrukinstellingen:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Opslaan naar een lokaal bestand"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Opslaan naar schijf is uitgeschakeld"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Het bestand mailen"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Afdrukken naar het scherm"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Afdrukken naar een printer die verbonden is aan uw vt100-terminal"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Syntactische fout bij het verwerken van KLEUR in het configuratiebestand:\n"
+"De regel moet in de volgende vorm staan:\n"
+"KLEUR:GEHEEL GETAL:VOORGROND:ACHTERGROND\n"
+"\n"
+"Hier kunnen VOORGROND en ACHTERGROND één van de volgende zijn:\n"
+"De uitzonderingen 'nocolor' of 'default', of\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Regel waar het mis ging:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "toetsherdefinitie van %s naar %s voor %s is mislukt\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "toetsherdefinitie van %s naar %s is mislukt\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "ongeldige selectie %s voor toets %s; alles wordt geselecteerd\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "maken van koppeling voor toets %s (0x%x) naar 0x%x voor %s mislukt\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "maken van koppeling voor toets %s (0x%x) voor %s mislukt\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: kan niet starten, CERN reglement bestand %s is niet beschikbaar\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(naamloos)"
+
+#: src/LYReadCFG.c:1882
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Meer dan %d geneste insluitingen in lynx.cfg -- misschien een lus?!?\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "De laatst geprobeerde insluiting was '%s',\n"
+
+#: src/LYReadCFG.c:1885
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "ingevoegd vanuit '%s'.\n"
+
+#: src/LYReadCFG.c:2289 src/LYReadCFG.c:2302 src/LYReadCFG.c:2360
+msgid "The following is read from your lynx.cfg file."
+msgstr "Onderstaande gegevens werden gelezen uit uw lynx.cfg-bestand."
+
+#: src/LYReadCFG.c:2290 src/LYReadCFG.c:2303
+msgid "Please read the distribution"
+msgstr "Lees de meegeleverde versie van"
+
+#: src/LYReadCFG.c:2296 src/LYReadCFG.c:2306
+msgid "for more comments."
+msgstr "voor meer opmerkingen."
+
+#: src/LYReadCFG.c:2342
+msgid "RELOAD THE CHANGES"
+msgstr "DE VERANDERINGEN HERLADEN"
+
+#: src/LYReadCFG.c:2350
+msgid "Your primary configuration"
+msgstr "Uw primaire instellingenbestand is:"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "De map die u op dit moment bekijkt"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Naam:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "Geselecteerde map"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "Geselecteerd bestand"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "Geselecteerde symbolische verwijzing"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "Geselecteerd item"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "Volledige naam:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "De verwijzing kan niet vervolgd worden"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "Wijst naar bestand:"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "Naam van eigenaar:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Groepsnaam:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Bestandsgrootte:"
+
+#: src/LYShowInfo.c:227
+msgid "(bytes)"
+msgstr "(bytes)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Aanmaakdatum:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Laatst gewijzigd op:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Laatst bezocht op:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Toegangsrechten"
+
+#: src/LYShowInfo.c:279
+msgid "Group:"
+msgstr "Groep:"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr "Wereld:"
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Het bestand dat u op dit moment bekijkt"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Linknaam:"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Tekenset:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr "(verondersteld)"
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Server:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Datum:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Laatst veranderd:"
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr "Vervalt:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Cache-besturing:"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "Inhoudslengte:"
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr "Lengte:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Taal:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "POST-informatie:"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "POST-inhoudstype:"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Eigenaar:"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "grootte:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "regels"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "formuliermodus"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "bron"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "normaal"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", veilig"
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ", via interne link"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", geen cache"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", ISMAP-script"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", boekenleggerbestand"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "modus:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Link die nu geselecteerd is"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Methode:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "Enctype:"
+
+#: src/LYShowInfo.c:436
+msgid "Action:"
+msgstr "Actie:"
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(formulierveld)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "Er zijn geen verwijzingen op de huidige pagina"
+
+#: src/LYShowInfo.c:455
+msgid "Server Headers:"
+msgstr "Serverkopregels:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Syntactische fout bij verwerken van stijl in lss-bestand:\n"
+"[%s]\n"
+"De regel moet van de volgende vorm zijn:\n"
+"OBJECT:MONO:KLEUR (dat is, em:bold:brightblue:white)\n"
+"waar OBJECT een van de volgende is: EM,STRONG,B,I,U,BLINK enz.\n"
+"\n"
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "hier is een lijst van de logs, zodat u opnieuw kunt bouwen"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "FOUT! -- upload-commando is niet goed ingesteld"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Ongeldige doorverwijzing \"../\" gevonden!  Verzoek is genegeerd."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Ongeldig teken \"/\" gevonden!  Verzoek is genegeerd."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Ongeldige doorverwijzing met \"~\" gevonden!  Verzoek is genegeerd."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Kan bestand niet uploaden."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Zenden naar:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Zendopties:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr "Document afhalings-URL op klembord geplaatst."
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Onverwacht toegangsprotocol voor deze URL-methode."
+
+#: src/LYUtils.c:3423
+msgid "Too many tempfiles"
+msgstr "Te veel tijdelijke bestanden"
+
+#: src/LYUtils.c:3723
+msgid "unknown restriction"
+msgstr "Onbekende beperking"
+
+#: src/LYUtils.c:3754
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Er zijn geen beperkingen gesteld.\n"
+
+#: src/LYUtils.c:3757
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Gestelde beperkingen:\n"
+
+#: src/LYUtils.c:5135
+msgid "Cannot find HOME directory"
+msgstr "Kan persoonlijke map niet vinden"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Normaliter uitgeschakeld.  Zie ENABLE_LYNXRC in lynx.cfg\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies stelt de gebruiker in staat om, indien gewenst,\n"
+"Lynx automatisch alle koekjes te laten accepteren.  De standaard is\n"
+"\"FALSE\", zodat voor elk koekje om bevestiging zal worden gevraagd.\n"
+"Zet accept_all_cookies op \"TRUE\" om alle koekjes te accepteren.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"anonftp_password geeft de gebruiker de gelegenheid op het e-mailadres\n"
+"op te geven dat gebruikt wordt als wachtwoord bij anonieme FTP-toegang.n Als geen waarde gegeven wordt, gebruikt Lynx het persoonlijke e-mailadres.\n"
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file specificeert de naam en locatie van het standaard\n"
+"boekenleggerbestand waarin de gebruiker links kan plaatsen om deze\n"
+"op een later tijdstip eenvoudig te kunnen bereiken.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Als case_sensitive_searching \"on\" is, zal indien de gebruiker een zoekopdracht\n"
+"opgeeft met de 's' of '/' toetsen, het zoeken gevoelig voor verschil in grote\n"
+"en kleine letters, in plaats van ongevoelig voor kast.  De standaard is\n"
+"meestal \"off\".\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"De character_set definitie bepaalt de representatie van 8 bit tekens\n"
+"voor uw terminal.  Als 8 bit tekens niet correct afgebeeld worden op uw\n"
+"scherm, kunt u een andere 8 bit verzameling proberen of 7 bit benaderingen.\n"
+"Huidig geldige tekenverzamelingen zijn:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr "cookie_accept_domains en cookie_reject_domains zijn door komma's gescheiden lijsten van domeinen voor welke Lynx automatisch alle koekjes respectievelijk toelaat of weigert.  Als een domein opgegeven wordt voor beide opties zal verwerping het winnen van toelaten.  De accept_all_cookies parameter doet deze instellingen teniet.\n"
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"'cookie_file' specificeert het bestand waaruit blijvende koekjes worden\n"
+"gelezen.  Standaard is dit ~/"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, en\n"
+"cookie_query_invalid_domains zijn door komma's gescheiden lijsten\n"
+"waarmee domeinen op verscheidene niveau's van geldigheid worden\n"
+"gecontroleerd.  Als een domein op `strict'e controle wordt gezet, moet\n"
+"strict voldaan worden aan RFC2109.  Een domein met 'loose' controle\n"
+"zal toegestaan worden om koekjes met een ongeldige padnaam of\n"
+"domein-attribuut te plaatsen.  Alle domeinen zullen standaard de\n"
+"gebruiker vragen (query) in geval van ongeldig pad of domein.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order bepaalt de volgorde van de mappenlijst onder DIRED_SUPPORT\n"
+"(als geïmplementeerd).  De standaard is \"ORDER_BY_NAME\"\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles specificeert de stijl van een map in DIRED_SUPPORT\n"
+"(indien geïmplementeerd).  De standaard is \"MIXED_STYLE\", waarmee\n"
+"bestanden en mappen samen worden gesorteerd.  \"FILES_FIRST\" plaatst\n"
+"bestanden eerst, \"DIRECTORIES_FIRST\" plaatst mappen eerst.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Als emacs_keys \"on\" is dan zullen de normale EMACS toetsen:\n"
+"  ^N = omlaag (next-line)      ^P = omhoog (previous-line)\n"
+"  ^B = links (backward-char)   ^F = rechts (forward-char)\n"
+"in gebruik zijn.\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor specificeert de editor die aangeroepen wordt om lokale bestanden\n"
+"te wijzigen of om e-mail te verzenden.  Als geen editor gespecificeerd wordt,\n"
+"dan is bestanden wijzigen niet mogelijk, tenzij het vanaf de commando-regel\n"
+"wordt opgegeven.  De ingebouwde editor zal worden gebruikt om e-mail te\n"
+"verzenden.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"De file_sorting_method specificeert op welke waarde gesorteerd wordt bij\n"
+"het bekijken van lijsten zoals FTP mappen.  De opties zijn:\n"
+"  BY_FILENAME -- sorteert op de naam van het bestand\n"
+"  BY_TYPE     -- sorteert op het type van het bestand\n"
+"  BY_SIZE     -- sorteert op de grootte van het bestand\n"
+"  BY_DATE     -- sorteert op de datum van het bestand\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode specificeert de toetsaanslagen die gebruikt worden voor het invoeren van tekenreeksen in prompten en formulieren.  Als lineedit_mode gezet wordt op \"Default Binding\" dan worden de volgende tekens gebruikt voor verplaatsen en verwijderen:\n"
+"                  Vorig Volgend     return = Accepteer invoer\n"
+"  Verplaats teken: <-     ->        ^G     = annuleer invoer\n"
+"  Verplaats woord: ^P     ^N        ^U     = wis regel\n"
+"        Wis teken: ^H     ^R        ^A     = ga naar begin van regel\n"
+"        Wis woord: ^B     ^F        ^E     = ga naar einde van regel\n"
+"\n"
+"Huidige mogelijkheden voor lineedit_mode zijn:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Op de volgende regels kunt u sub-boekenlegger bestanden en\n"
+"omschrijvingen opgeven.  Het formaat is als volgt:\n"
+"multi_bookmark<hoofdletter>=<bestandsnaam>,<omschrijving>\n"
+"Er kunnen 26 boekenleggerbestanden zijn, voor elke hoofdletter A-Z.\n"
+"We beginnen met \"multi_bookmarkB\" omdat 'A' de gewone is (zie boven).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address specificeert uw persoonlijke e-mailadres.\n"
+"Het adres zal verzonden worden tijdens HTTP bestandsoverdrachten voor\n"
+"autorisatie- en log-doeleinden, en voor e-mailcommentaren.\n"
+"Als u deze informatie niet uit wilt reiken, zet dan NO_FROM_HEADER op\n"
+"TRUE in lynx.cfg, of gebruik de -nofrom commando-regel optie.  U kunt\n"
+"ook dit veld leeg laten, maar dan wordt het ook niet opgenomen in\n"
+"uw e-mailcommentaren.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset specificeert de tekenset in MIME-notatie\n"
+"(bijvoorbeeld ISO-8859-2, ISO-8859-5 -- een kommagescheiden lijst)\n"
+"waarmee Lynx uw voorkeuren doorgeeft aan HTTP-servers die een\n"
+"'Accept-Charset'-kopregel gebruiken.  De waarde mag _niet_ ISO-8859-1\n"
+"of US-ASCII bevatten, omdat deze waarden altijd standaard aangenomen\n"
+"worden.  Als een bestand in die tekenverzameling beschikbaar is, zal\n"
+"de server het verzenden.  Als geen Accept-Charset header aanwezig is, is\n"
+"elke willekeurige tekenverzameling acceptabel.  Als een Accept-Charset\n"
+"header aanwezig is, en als de server geen antwoord kan zenden dat\n"
+"acceptabel is volgens deze header, dan ZOU de server een foutmelding\n"
+"moeten sturen, maar het verzenden van een onacceptabel antwoord is ook\n"
+"toegestaan.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language specificeert de taal in MIME notatie (dat is, en,\n"
+"fr, een door komma's gescheiden lijst in afnemende volgorde van\n"
+"voorkeur) waarmee Lynx uw voorkeuren doorgeeft in opdrachten aan http\n"
+"servers.  Als een bestand in een bepaalde taal aanwezig is, zal de\n"
+"server het verzenden.  Als dit niet het geval is, zal de server het\n"
+"bestand in zijn standaard taal verzenden.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Als run_all_execution_links op \"on\" wordt gezet zullen alle lokale uitvoer-linksworden uitgevoerd als ze geselecteerd worden.\n"
+"\n"
+"LET OP - Dit is potentieel ERG gevaarlijk.  Omdat u informatie kunt\n"
+"         bekijken die geschreven is door onbekende en niet vertrouwde\n"
+"         bronnen, bestaat er een mogelijkheid dat Trojaanse paarden in\n"
+"         de vorm van links geschreven kunnen worden.  Deze kunnen\n"
+"         worden geschreven om bestanden te wissen of beveiligingen te\n"
+"         omzeilen.  Deze optie moet alleen op \"on\" gezet worden als u\n"
+"         alleen maar informatie bekijkt uit een vertrouwde bron.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Als run_execution_links_on_local_files op \"on\" wordt gezet zullen alle lokale uitvoer-links gevonden in LOKALE bestanden worden uitgevoerd als ze geselecteerd worden.  Dit verschilt van run_all_execution_links, daar slechts bestanden die zich op het lokale systeem bevinden deze uitvoer rechten krijgen.\n"
+"\n"
+"LET OP - Hier dreigt potentieel gevaar.  Omdat u informatie kunt\n"
+"         bekijken die geschreven is door onbekende en niet vertrouwde\n"
+"         bronnen, bestaat er een mogelijkheid dat Trojaanse paarden in\n"
+"         de vorm van links geschreven kunnen worden.  Deze kunnen\n"
+"         worden geschreven om bestanden te wissen of beveiligingen te\n"
+"         omzeilen.  Deze optie moet alleen op \"on\" gezet worden als u\n"
+"         alleen maar informatie bekijkt uit een vertrouwde bron.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups bepaalt of de `OPTION's in een `SELECT' blok dat geen\n"
+"`MULTIPLE' attribuut heeft getoond worden als een verticale lijst van\n"
+"druknoppen of via een popup-menu.  Merk op dat indien het `MULTIPLE'\n"
+"attribuut aanwezig is in de `SELECT' begin-tag, Lynx altijd een\n"
+"verticale lijst van aanvinkvelden voor de `OPTION's zal maken.  Een\n"
+"waarde \"on\" maakt popup-menu's de standaard, terwijl \"off\" voor\n"
+"drukknoppen zorgt.\n"
+"De standaard kan worden tenietgedaan d.m.v. de `-popup' commandoregel optie.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color specificeert hoe de kleuren modus bij het opstarten moet\n"
+"zijn.  Een waarde \"never\" forceert een kleur modus \"off\" (de terminal\n"
+"wordt als monochroom beschouwd) zelfs als de terminal kleur aan lijkt\n"
+"te kunnen.  Een waarde \"always\" zal kleuren modus \"on\" forceren, zelfs\n"
+"als de terminal monochroom lijkt te zijn, als dit maar ondersteund\n"
+"wordt door de bibliotheek die gebruikt is om lynx mee te maken.  Een\n"
+"waarde \"default\" zal uitgaan van een monochroom terminal, tenzij bij\n"
+"het opstarten blijkt dat de terminal kleur aan kan, of als de `-color'\n"
+"optie wordt opgegeven vanaf de commandoregel, of als de COLORTERM\n"
+"omgevingsvariabele gezet is.  Het standaard gedrag wordt gebruikt bij\n"
+"anonieme accounts of als de \"option_save\" restrictie gezet is.  Het\n"
+"effect van de opgeslagen waarde kan worden tenietgedaan d.m.v. de\n"
+"`-color' en `-nocolor' opties op de commandoregel.  De modus van het\n"
+"opstarten kan gewijzigd worden via de \"Toon kleur\" optie in het\n"
+"'o'pties menu.  Als de optie-instellingen worden opgeslagen, zullen de\n"
+"\"on\" en \"off\" instellingen worden gezien als \"default\".\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor bepaalt of de cursor 'verborgen' wordt rechts van (en,\n"
+"indien mogelijk, onder in) het scherm, of om het links van de huidige\n"
+"link in documenten te plaatsen, of op de huidige optie in popup\n"
+"vensters.  De cursor links van een link of optie plaatsen is handig\n"
+"voor spraak of braille interfaces, en voor gevallen waarin de terminal\n"
+"de geselecteerde link niet onderscheidt door fel oplichten of kleur.\n"
+"Een waarde \"on\" zal de positionering links van de links of opties\n"
+"zetten, en en waarde \"off\" probeert de cursor te 'verbergen'.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles specificeert of binnen een map 'verborgen' (punt)bestanden\n"
+"en mappen getoond worden.  Indien \"on\", zal dit alleen gebeuren indien\n"
+"aangezet in userdefs.h en/of lynx.cfg, en niet beperkt door een optie op\n"
+"de commandoregel.  Indien uitgeschakeld, wordt het ook onmogelijk gemaakt\n"
+"om verborgen bestanden aan te maken vanuit Lynx.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Als sub_bookmarks niet \"off\" is, en meervoudige boekenleggers zijn\n"
+"opgegeven (zie onder), dan zullen alle boekenlegger operaties eerst de\n"
+"gebruiker vragen om een actief sub-boekenlegger bestand te selecteren.\n"
+"Als de standaard Lynx bookmark_file gedefinieerd is (zie boven), dan\n"
+"zal dit gebruikt worden als de standaard selectie.  Als deze optie op\n"
+"\"advanced\" gezet is en de gebruikersmodus ook \"advanced\" is, dan zal\n"
+"het 'v'-inzien boekenlegger commando een statusregel-menu tonen in\n"
+"plaats van het menu dat in \"novice\" en \"intermediate\" modus wordt\n"
+"gebruikt.  Als deze optie op \"standaard\" gezet wordt, zal ongeacht de\n"
+"gebruikersmodus het volledige menu getoond worden.\n"
+"\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode specificeert het gebruikersniveau binnen Lynx.  De standaard\n"
+"is \"NOVICE\" waarbij twee extra regels met hulpteksten onder in het\n"
+"scherm getoond worden, om de gebruiker de basis commando's in Lynx te\n"
+"leren.  Zet user_mode op \"INTERMEDIATE\" om de extra informatie uit te\n"
+"schakelen.  Gebruik \"ADVANCED\" om onder in het scherm de URL van de\n"
+"geselecteerd link te zien.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Als verbose_images \"on\" is, zal lynx de naam van het brobestand van de\n"
+"afbeelding laten zien in plaats van [INLINE], [LINK] of [IMAGE].\n"
+"Zie ook VERBOSE_IMAGES in lynx.cfg\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Als 'vi_keys' \"on\" is, dan zijn de normale VI-toetsen in gebruik:\n"
+"  j = omlaag   k = omhoog\n"
+"  h = links    l = rechts      Dit zijn alleen de kleine letters.\n"
+"De hoofdletters 'H', 'J' en 'K' zullen nog steeds hulp activeren,\n"
+"springen naar snelkoppelingen of de toetsenindeling laten zien.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"De optie 'visited_links' bepaalt hoe Lynx de informatie weergeeft op de\n"
+"pagina met Bezochte links.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Als keypad_mode op \"NUMBERS_AS_ARROWS\" gezet wordt, zullen de nummers\n"
+"op uw numerieke eiland met Numlock aan als pijltjestoetsen functioneren:\n"
+"             8 = Pijltje omhoog\n"
+" 4 = Pijltje links      6 = Pijltje rechts\n"
+"             2 = Pijltje omlaag\n"
+"De corresponderende nummers op het linkerdeel van het toetsenbord zullen\n"
+"ook als pijltjestoetsen functioneren, ongeacht de Numlock stand.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Als keypad_mode op \"LINKS_ARE_NUMBERED\" staat, zullen nummers\n"
+"verschijnen naast elke link en nummers kunnen gebruikt worden om links\n"
+"te selecteren.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Als keypad_mode op \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" gezet wordt,\n"
+"zullen nummers verschijnen naast elke link en zichtbare\n"
+"formulier-invoervelden.  Nummers zullen gebruikt worden om links te\n"
+"selecteren, of om de \"huidige link\" te verplaatsen naar een\n"
+"formulier-invoerveld of -knop.  Daarbij komt dat opties in een popup\n"
+"menu geïndexeerd zijn, zodat de gebruiker een optienummer kan intypen\n"
+"om een optie in een popup menu te selecteren, zelfs als de optie niet\n"
+"op het scherm zichtbaar is.  Referentielijsten en uitvoer van het\n"
+"lijst commando nummeren ook formulier-invoervelden.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"MERK OP: Sommige documenten met een gefixeerde opmaak kunnen er\n"
+"verminkt uitzien als \"LINKS_ARE_NUMBERED\" of\n"
+"\"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" is aangezet.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"Lynxbestand met standaardinstellingen van gebruiker\n"
+"\n"
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"Dit bestand bevat opties bewaard uit het scherm met Lynx-opties (meestal\n"
+"met de 'o'-toets). Om opties met dit venster te bewaren vinkt u het\n"
+"aanvinkveld aan:\n"
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+"U bewaart vervolgens de instellingen via de link op de regel boven het\n"
+"aanvinkveld:\n"
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"U kunt via de opdrachtregel ook de optie \"-forms_options\" opgegeven, zodat\n"
+"een eenvoudiger optiemenu wordt getoond. Bewaar hiermee de opties met de\n"
+"'>'-toets.\n"
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"Dit bestand bevat opties bewaard uit het Lynx-optiesscherm (meestal\n"
+"via de '>'-toets).\n"
+"\n"
+
+#: src/LYrcFile.c:910
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Er is doorgaans geen reden om dit bestand handmatig te wijzigen, omdat\n"
+"de instellingen vanuit het Optiesscherm kunnen worden bewerkt, en de\n"
+"eerstvolgende keer dat de opties daar opgeslagen worden zal dit bestand\n"
+"volledig worden herschreven.\n"
+"U bent gewaarschuwd...\n"
+"Als u op zoek bent naar het algemene configuratiebestand: dat is\n"
+"meestal \"lynx.cfg\". Het heeft een andere inhoud en een andere opmaak.\n"
+"Het is niet dit bestand.\n"
+
+#~ msgid "Socket read failed for 180,000 tries."
+#~ msgstr "Lezen uit socket is mislukt na 180 duizend (!) pogingen."
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "Maximum lengte van Historielijst is bereikt!  Document is niet toegevoegd."
+
+#~ msgid "reason unknown."
+#~ msgstr "reden onbekend."
diff --git a/po/pt_BR.po b/po/pt_BR.po
new file mode 100644
index 00000000..c53f1e61
--- /dev/null
+++ b/po/pt_BR.po
@@ -0,0 +1,6310 @@
+# Brazilian Portuguese translation of the "lynx" messages
+# Copyright (C) 1999 Free Software Foundation, Inc.
+# Ricardo Soares Guimarães <ricardo@conectiva.com.br>, 1999.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 1999-07-30 09:47-03:00\n"
+"Last-Translator: Ricardo Soares Guimarães <ricardo@conectiva.com.br>\n"
+"Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8-bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Alerta!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Bem Vindo"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Você tem certeza?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Realmente sair do Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Conexão interrompida."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Transferência de dados interrompida."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Cancelado!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Cancelando!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Excelente!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Finalizado!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Requisição mal formada!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "anterior"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "próxima tela"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "AJUDA!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", ajuda em "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Comandos: Use as setas para mover,'?' ajuda, 'q' sair, '<-' voltar."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "espaço para continuar, use as setas para mover,'?' ajuda, 'q' sair."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- pressione a barra de espaço para ir para a próxima página --"
+
+#: LYMessages.c:55
+#, fuzzy
+msgid "URL too long"
+msgstr "URL para ir:"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, fuzzy, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Area de texto).Setas para cima/baixo, ou TAB para sair (^Ve para editor)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+#, fuzzy
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Campo de formulário). Use <enter> para enviar('x' para não salvar no cache)."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, fuzzy, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Campo de formulário). Use <enter> para enviar('x' para não salvar no cache)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+#, fuzzy
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Campo de formulário). Use <enter> para enviar, setas ou TAB para sair."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+#, fuzzy
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(Campo de e-mail) Digite o texto. Use <enter> para enviar, setas para sair."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+#, fuzzy
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Campo de entrada de senha). Use setas para cima/baixo ou TAB para sair."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Campo não modificável. Use setas para cima ou para baixo ou TAB para sair."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Caixa de texto). Use seta para cima, para baixo ou TAB para sair."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Caixa de texto) Digite o texto.Seta para cima, para baixo ou TAB para sair."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+#, fuzzy
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Area de texto).Setas para cima/baixo, ou TAB para sair (^Ve para editor)."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, fuzzy, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Area de texto).Setas para cima/baixo, ou TAB para sair (^Ve para editor)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Caixa de texto não modificável. S setas para cima/baixo, ou TAB para sair."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+#, fuzzy
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Campo de formulário). Use <enter> para enviar('x' para não salvar no cache)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, fuzzy, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Campo de formulário). Use <enter> para enviar('x' para não salvar no cache)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Campo de formulário). Use <enter> para enviar, setas ou TAB para sair."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "Campo de texto não modificável. Use setas para cima/baixo ou TAB para sair."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(Campo de e-mail) Digite o texto. Use <enter> para enviar, setas para sair."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(Campo de e-mail) E-mail está desabilitado, portanto você não pode enviar."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Campo de entrada de senha). Use setas para cima/baixo ou TAB para sair."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "Campo de senha não modificável. Use setas para cima/baixo ou TAB para sair."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Caixa de checagem) Use seta para a direita ou <enter> para marcar."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "Caixa de checagem não modificável. Setas para cima/baixo ou TAB para sair."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Botão de rádio) Use seta para a direita ou <enter> para marcar."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Botão de rádio não modificável.Setas para cima/baixo ou TAB para sair."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Enviar ('x' para não salvar) para"
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Enviar para"
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "Botão de envio.Seta para a direita ou <enter> para enviar('x' para não salvar)"
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Botão de envio) Use seta para a direita ou <enter> para enviar."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Botão de rádio desabilitado. Seta para cima ou para baixo ou TAB para sair."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Enviar formulário de e-mail para "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(Botão de envio de email) Use seta para a direita ou <enter> para enviar."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(Botão de envio de email) E-mail desabilitado. Você não pode enviar emails agora."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Botão de limpar).Seta para a direita ou<enter> para voltar aos valores padrão"
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Botão de limpar desabilitado. Seta para cima ou para baixo ou TAB para sair."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Lista de opções)Tecle enter, use as setas e enter novamente para selecionar."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Lista de opções) Tecle enter, use as setas e enter novamente para selecionar."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "Lista de opções não modificável. Use enter ou setas para rever ou sair."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "Lista de opções não modificável. Use enter ou setas para rever ou sair."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Enviando formulário..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Limpando formulário..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Recarregando formulário. Qualquer entrada será perdida!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Atencão: Impossível transformar dados do formulario em %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(Link Normal) Use seta para a direita ou <enter> para ativar."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "O recurso solicitado não está disponível neste momento."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Entre o comando para o Lynx:"
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Procurando "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Recebendo %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Omitindo %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Usando %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Link Ilegal: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Endereço %s mal formado"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Impossível acessar o arquivo WWW!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Este é um índice de busca, use %s para procurar."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Mais-- Este é um índice de busca. Use %s para procurar."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Você entrou um número inválido de link."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Vendo a fonte do documento.Pressione '\\' para voltar ao documento."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "Setas para cima/baixo move.A direita segue um link; A esquerda para voltar.\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "H)Ajuda O)Opções P)Imprimir G)Segue M)Principal Q)Sair /=procura [delete]=Histórico \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "O)Comandos H)Ajuda K)Teclas G)Segue P)Imprimir M)Principal o)opções Q)Sair\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "O)Outros comandos B)Volta E)Edita D)Copia ^R)Recarrega ^W)Tela procura doc:\n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+#, fuzzy
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O)Comandos|C)Comentário|<delete>Marcações|V)Visualizar|A) Adicionar|R)Remover\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Entre com o texto no campo digitando no teclado"
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "Ctrl-U apaga todo o texto do campo. [Backspace] apaga um caractere"
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+#, fuzzy
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "Ctrl-U apaga todo o texto do campo. [Backspace] apaga um caractere"
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, fuzzy, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "Ctrl-U apaga todo o texto do campo. [Backspace] apaga um caractere"
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, fuzzy, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "Ctrl-U apaga todo o texto do campo. [Backspace] apaga um caractere"
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Formulário de envio de email mal-formado! Cancelado!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Atenção! Codificação de endereço de email alterado por ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "E-mail desabilitado!! Impossível enviar."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Envio de formulário de email falhou!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Envio de formulário de e-mail cancelado!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Enviando dados do formulário..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "Endereço de e-mail não está presente no campo de E-mail!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Impossível abrir arquivo temporário para o campo de e-mail!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Você quer imcluir a mensagem original?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Você quer incluir o arquivo fonte?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Chamando o editor selecionado para editar o email."
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Erro chamando o editor, cheque as configurações de seu editor em opções"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Envia este comentário?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Envia esta mensagem?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Enviando sua mensagem..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Enviando seu comentário..."
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Fora da área de texto: impossível usar um editor externo."
+
+#: LYMessages.c:211
+#, fuzzy
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Fora da área de texto: impossível usar um editor externo."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "arquivo: ACTION está desabilitado!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "arquivo: URLs através de links estão desabilitadas!"
+
+#: LYMessages.c:216
+#, fuzzy
+msgid "Access to local files denied."
+msgstr "Acesso aos arquivos ocultos está desabilitado!"
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "arquivo: URLs através de 'favoritos' estão desabilitadas!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Esta URL em particular não permite entrada em documentos externos!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Pressione <enter> para voltar ao Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Chamando subprocessos DCL. Use 'logout' para voltar ao Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Digite EXIT para voltar ao Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Chamando seu shell padrão. Use 'exit' para voltar ao Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "Chamadas estão atualmente desabilitadas."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "O comando de 'd'ownload está atualmente desabilitado."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Você não pode copiar um campo de entrada."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "O formulário tem uma ação de envio de email. Impossível copiar."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Você não pode copiar uma ligação de e-mail."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Você não pode copiar cookies."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Você não pode copiar uma opção de impressão."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Você não pode copiar uma opção de envio de arquivos."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Você não pode copiar uma opção de permissão."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Esta URL em particular não pode ser copiada."
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Nada a fazer."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Traçador de rotas ligado!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Traçador de rotas desligado!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Os links serão incluídos em todas as imagens! Recarregando..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Imagem padrão de ponteiro restaurada! Recarregando..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Pseudo nomes serão incluídos sem os nomes alternativos. Recarregando..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Campos sem um nome alternativo serão ignorados! Recarregando..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Modo Raw 8-bit ou CJK estão desativados. Atualizando..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Modo Raw 8-bit ou CJK estão ativados. Atualizando..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Envia pedido de HEAD para D) Documento ou L) Link ou C) Cancela (d,l,c):"
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Envia pedido de HEAD para D) Documento ou C) Cancela (d,c):"
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Desculpe, o documento não é no formato de endereço http."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Desculpe, esta ligação não é um endereço http."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Desculpe, a ACTION para este formulário está desabilitada."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Desculpe, a ACTION para este formulário não é um endereço http."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "Não há um endereço http ou ação de formulário!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Esta URL não tem uma ação de formulário!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "Esta URL não tem um domínio inicial!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "Postagem de NEWS está desabilitada!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Suporte a gerenciamento de arquivos está desabilitado!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Nenhum arquivo de pulo está disponível."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Siga para (use '?' para ajuda):"
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Atalho URL de pulo está desabilitado!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "URL randômica está sesabilitada! Use um atalho."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Nenhuma URL randômica foi usada ultimamente."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Insersão de URL no Livro de Marcações está desabilitada neste momento."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "Execução via Livro de Marcações está desabilitada."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Livro de Marcações não está definido. Use %s para ver as opções."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Impossível abrir arquivo temporário para conversão X Mosaic"
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "ERRO - Impossível abrir arquivo de Livro de Marcações."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Impossível arir arquivo do Livro de Marcações para apagar a ligação."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Impossível abrir arquivo de marcação para apagar a ligação."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Erro renomeando arquivo de marcação."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Erro renomeando arquivo temporário."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Impossível copiar arquivo temporário para apagar a ligação."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Impossível reabrir arquivo temporário para deleção de ligação."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Ligação não é a única na linha do arquivo do Livro de Marcações."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Deleção do Livro de Marcações falhou!"
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Endereços do Livro de Marcações não pode ser transversal (somente http URLs)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Impossível abrir Livro de Marcações, use 'a' para salvar a ligação primeiro."
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Não existem ligações neste Livro de Marcações."
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "Envia pedido de HEAD para D) Documento ou C) Cancela (d,c):"
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "D)Salvar documento ou L)Marque no Livro de Marcações ou C)Cancela? (d,l,c):"
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "D) Salva documento no Livro de Marcações ou C) Cancela> (d,c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "L) Salva ligação no Livro de Marcações ou C) Cancela? (l,c):"
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Formulários com função de postar não podem ser marcados no Livro de Marcações."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Impossível salvar campos de formulário/ligações"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Histórico, informações, menu e lista de arquivos não podem ser salvos no Livro de Marcações."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Você realmente quer apagar esta ligação do seu Livro de Marcações?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Endereço mal formado."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Mensagens do histórico de tratamento estão ligadas (Ignorando mínimas)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Mensagens do histórico de tratamento estão desligadas (Não ignorando nenhuma)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Mensagens do histórico de tratamento estão ligadas (Ignorando as válidas)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Mensagens do histórico de tratamento estão desligadas (Incluindo as válidas)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Comentários mínimos de tratamento estão ativos e ligados!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Comentários mínimos de tratamento desligados. (Estão em efeitos os válidos)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Comentários mínimos de tratamento ativos. (mas histórico está ativado)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Comentários mínimos de tratamento desativados. (Histórico está ativado)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "Interpretação de aspas duplas ativada!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "Interpretação de aspas duplas desativada!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Agora usando formato TagSoup de tratamento de HTML. "
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Agora usando formato SortaSGML de tratamento de HTML!"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Você ja está no fim do documento."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Você ja está no início do documento."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Você está na página %d deste documento."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Ligação número %d já esta ativada."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Você está no primeiro documento."
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Não existem ligações acima desta linha do documento."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Não existem ligações abaixo desta linha do documento."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Tamanho máximo atingido! Apague uma parte do texto ou saia do campo."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Você não está num botão de envio de formulário ou ligação normal."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "Pelo menos um botão de rádio deve estar marcado sempre!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr ""
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Você quer voltar ao documento inicial?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Use setas ou TAB para sair do campo."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Digite o texto. Use setas ou TAB para sair do campo."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Tag HTML desconhecida!! Sem ação de formulário definida. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "** Tag HTML desconhecida ** Impossível criar janela de pop-up!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Impossível criar janela pop-up!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Ir para URL randômica está desabilitado!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Ir para não-http URL está desabilitado!"
+
+#: LYMessages.c:360
+#, fuzzy, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Você não pode ir para \"cso:\" URLs"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "URL para ir:"
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Edite a URL que será apresentada:"
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Edite a URL que foi escolhida anteriormente:"
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Edite a URL que foi apresentada anteriormente:"
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "O documento corrente tem uma ação de postagem"
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Edite este documento de URL:"
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Edite o link corrente:"
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "Você não pode editar Gerenciadores de arquivos de URLs"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Digite uma pesquisa de banco de dados:"
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Digite uma pesquisa de 'onde está':"
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Edite a pesquisa atual:"
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Edite a pesquisa anterior:"
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Edite uma pesquisa anterior:"
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Use Control-R para reenviar a pesquisa atual."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Edite o atalho atual:"
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Edite o atalho anterior:"
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Edite um atalho anterior:"
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Tecla '%c' não está mapeada para abrir um arquivo!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Não foi possível localizar um arquivo de salto!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Não foi possivel abrir um arquivo de salto!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Erro lendo arquivo de salto!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Estouro de memória, lendo arquivo de salto!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Estouro de memória, lento tabela de atalhos!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Sem arquivo indexador disponível."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Você quer realmente ir para o menu principal?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "Você ja esta na tela inicial!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Área não passivel de busca - pressione '/' para procurar no documento."
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Nenhum dono definido para este arquivo, você não pode enviar um comentário"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Nehum dono está definido. Uso %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Você quer que envio um comentário?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "Email está desabilitado, portanto você não pode enviar um comentário"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "Comando 'e' Edite está atualmente desabilitado."
+
+#: LYMessages.c:397
+#, fuzzy
+msgid "External editing is currently disabled."
+msgstr "Suporte externo está desabilitado."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Erro de sistema - Falha ao receber estado."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Nenhum editor foi definido"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "Comando 'p' Imprimir está atualmente desabilitado."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "O documento não tem uma barra de links ou Faixa."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Impossível abrir um arquivo transversal."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Impossível abrir o arquivo transversal encontrado."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Impossível de abrir um arquivo rejeitado."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Impossível de abrir o log de erros transversal"
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "TRANSMISSÃO TRANSVERSAL FOI INTERROMPIDA."
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Segue ligação (ou vai para a pagina de ligações) número:"
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Seleciona a opção (ou página) número:"
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Opção número %d ja está ativa."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Você ja está no fim desta opçao."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Você ja esta no começo desta lista de opções."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Você ja está na página %d desta lista de opções."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Você entrou com um número inválido de opção."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Tag errada no HTML!! Use -trace para diagnosticar. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Informe o nome do arquivo a salvar"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Impossível salvar dados no arquivo -- por favor, rode WWW localmente. "
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Impossível abrir arquivo temporário!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Impossível abrir arquivo de saída! Cancelando!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Executar está desabilitado!"
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Executar não disponível para este arquivo.Veja o menu de Optins (use %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Capacidade de execução não está compilada nesta versão."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Este arquivo não pode ser mostrado neste terminal."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Este arquivo não pode ser mostrado neste terminal: D) Copia ou C) Cancela"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D) Copia ou C) Cancela"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Cancelando arquivo."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Recebendo arquivo, AGUARDE!"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Entre com um nome para o arquivo:"
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Edite o nome anterior:"
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Edite um arquivo anterior:"
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Entre com um novo nome:"
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Nome do arquivo não pode começar com um ponto."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Arquivo existente. Criar nova versão?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Arquivo existente. Sobreescrever?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Impossível gravar no arquivo"
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "ERRO! - comando de cópia está mal configurado."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Impossível copiar arquivo."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Lendo diretório..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Criando lista de diretórios..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Salvando..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Impossível editar o arquivo '%s'."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Não foi possível acessar o documento!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Impossível acessar o arquivo."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Impossível acessar diretório."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Impossível ler dados."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx não pode atualmente editar um arquivo WWW remoto."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Este campo não pode ser editado por um editor externo."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Domínio inválido"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Operadores insuficientes:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Você não está autorizado a editar este arquivo."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Título: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Assunto: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Nome do Usuário: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Senha: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Nome do usuário e senha são requeridos!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: Senha requerida!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Limpar todas as informações de autorização desta seção?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Informações de autorização foram apagadas."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Falha na autorização. Repetir?"
+
+#: LYMessages.c:470
+#, fuzzy
+msgid "cgi support has been disabled."
+msgstr "Suporte a CGI foi desabilitado pelo administrador."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Capacidades do LynxCGI não foram compiladas com esta versão."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Desculpe, não há protocolos disponíveis para converter %s em %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Imposível preparar conecção."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Impossível criar conecção"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Ligação rejeitada por má formação da requisição."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Ligação rejeitada devido ao caracter '%c'."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Ligação rejeitada devido ao caminho relativo errado ('../')."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Ligação rejeitada devido a localização ou caminho."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "Acesso ao Mail está desabilitado!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Somente arquivos e servidores no host local podem ser acessados."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Acesso telnet está desabilitado!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Especificações de porta telnet estão desabilitadas."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "Acesso aos NEWS USENET está desabilitado!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Acesso Rlogin está desabilitado!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Acesso FTP está desabilitado!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Não existem referências a partir documento."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Existem somente ligações ocultas a partir deste documento."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Impossível abrir linha de comando."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Postagem de NEWS cancelada!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Chamando seu editor preferido para editar mensagens de NEWS."
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Postar esta mensagem?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Acrescentar '%s'?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Postando aos newsgroup(s)..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Você tem emails não lidos ainda. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** Você recebeu emails. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Você recebeu novos emails. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Inserção de arquivo cancelada!!!"
+
+#: LYMessages.c:511
+#, fuzzy
+msgid "Not enough memory for file!"
+msgstr "Estouro de memória, lendo arquivo de salto!"
+
+#: LYMessages.c:512
+#, fuzzy
+msgid "Can't open file for reading."
+msgstr "Impossóvel abrir arquivo para descompressão!"
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Arquivo inexistente."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Arquivo não existe - Repita ou cancele:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Arquivo não pode ser lido."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Arquivo não pode ser lido. Repita ou cancele:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Nada a acrescentar - arquivo tem tamanho 0"
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Salvamento de requisição cancelado!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Requisição de e-mail cancelada!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Visualizando aquivo quebrado. Você tem certeza de que quer enviar este email?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Por favor aguarde...."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Enviando email. Por favor aguarde..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "ERRO - Impossível enviar arquivo..."
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Arquivo contém %d páginas. Você quer mesmo imprimir?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Impressão da requisição foi cancelada!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Pressione <enter> para continuar:"
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Pressione <enter> para terminar:"
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "O arquivo tem %d páginas. Tem certeza de que quer imprimir?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Confira se sua impressora está on-line. Pressione <enter> para iniciar:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "ERRO - Impossível alocar espaço para o arquivo!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Impossível criar arquivo temporário."
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Impossível abrir arquivo de opções da inpressora."
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Imprimindo. Por favor aguarde..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Por favor, entre com um endereço válido de email:"
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "ERRO! - A impressora está mal configurada!!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Imagem mapeada através da esposta do comando POST não está disponível!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Requisição da imagem mapeada foi perdida!"
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "O mapeador de imagens não pôde ser acessado!!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Não há programa mapeador de imagem disponível!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "O mapeador de imagens não está disponível!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "O comprimento da tela deve ter pelo menos 24 linhas para o menu de opções."
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "O comprimento da tela deve ter pelo menos 23 linhas para o menu de opções."
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "O comprimento da tela deve ter pelo menos 22 linhas para o menu de opçoes."
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Esta opção requere o modo de usuário avançado."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Content-type: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Comando:"
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr ""
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Versão "
+
+#: LYMessages.c:558
+#, fuzzy
+msgid " first"
+msgstr " primeiro."
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", solicitando..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Permissão para "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Selecione "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "maiuscula"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr "da linha de opção."
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " para salvar,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " para "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " ou "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " index"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " para voltar ao Lynx"
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Aceitar mudanças"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Limpar alterações"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Setas a esquerda cancelam as mudanças"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Grava as opções no disco"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Tecle ENTER para aceitar os dados fornecidos"
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Tecle ENTER para aceitar os dados.Delete para chamar os valores padrão."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Valor aceito!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Valor aceito! - Atenção: O Lynx está configurado para XWINDOWS!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Valor aceito! - Atenção: O Lynx não está configurado para XWINDOWS!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Você não tem permissão para alterar o editor a ser usado!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Falha ao setar a variável DISPLAY!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Falha ao apagar a variável DISPLAY"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Você não tem permissão para alterar o Livro de Marcações!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "O terminal não suporta cores."
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Seu terminal '%s' não suporta cores."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "Acesso aos arquivos ocultos está desabilitado!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr ""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr ""
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr ""
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Você não tem permissão para alterar esta configuração."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Salvando opções..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Opções salvas."
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Impossível salvar opções!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' para voltar ao Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' para salvar, ou 'r' para voltar ao Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Qualquer tecla para alterar, ENTER para submeter."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Erro descomprimindo arquivo temporário!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Esquema de URL não suportado!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Dados não suportados. Use SHOWINFO por agora."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Limite de 10 redirecionamentos atingido."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Recebido um redirecionamento ilegal do servidor."
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "O servidor perguntou sobre redirecionar o formulário postado de %d para"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P) Procede, G) Copia, ou C) Cancela"
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P) Procede, C) Cancela"
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Redirecionamento de Postagem. P)Procede, U)Ver a URL, G)Copia ou C)Cancela"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Redirecinamento de comando de Postagem. P) Procede, U) Ver URL ou C) Cancela"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Documento com formulário de postagem. Reenviar?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Reenviar formulário postado para %s ?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Documento com lista de dados para postagem. Re-ler %s ? "
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Documento de uma ação de postagem. Cabeçalho não compreendido. Continua?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Ação de postagem de formulário. Cabeçalho não compreendido. Continua?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Continua sem um usuário e senha?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Proseguir (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Impossível postar neste servidor."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "Comando de postagem não suportado por esta URL - ignorando dados de postagem!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Apagando dados de postagem..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Documento não será atualizado!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Localização:"
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' não encontrado!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Arquivo padrão do Livro de Marcações"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Tela muito pequena, (8x35 mínimo)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Selecione destino ou ^G para cancelar:"
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Selecione submarca, '=' para menu, ou ^G para cancelar:"
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "L) Reproduzir ligação nesta marcação ou C) Cancela? (l,c):"
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Suporte a multiplos livros de marcação não está disponível."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr "Selecione Livro de Marcação (seleção %d de %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Selecione Livro de Marcação"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Editando Descrição e Localização do Livro de Marcações (%d de 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Editando Descrição e Localização"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Letra: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Use o diretório de seu login na sintaxe do interpretador de comando."
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Use o caminho de seu diretório padrão!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Limite de ligações atingido! Use uma página menor ou rolagem de tela dupla."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Não há ligações visitadas antes desta disponíveis!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Memória no limite. Programa abortado!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Memória no limite. Abortando..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr ""
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Gerenciador de Diretórios/Arquivos não disponível"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF na tag BASE não é uma URL absoluta."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "Ligação da URL não tem endereço absoluto."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "Não há um endereço absoluto de atualização definido."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Você está enviando uma mensagem para:\n"
+" "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Você está enviando um comentário para:\n"
+" "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" com cópia para:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" com cópias para:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Use Ctrl-G para Cancelar se você não quer enviar a mensagem.\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Por favor, entre com seu nome, ou deixe em branco para enviar anônimo\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Por favor, entre com o endereço de email ou outro qualquer.\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " quer contactar você, se você desejar responder.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+"Por favor, entre com uma linha de assunto.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Entre com o endereço de email para enviar uma cópia da mensagem.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Deixe em branco se não deseja enviar uma cópia deste email)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Por favor, examine o corpo da mensagem:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Pressione ENTER para continuar:"
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Pressione ENTER para limpar:"
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr "Use Control-U para apagar o valor padrão.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Por favor entre com sua mensagem abaixo."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Quando você terminar, pressione enter e aguarde alguns instantes."
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" numa linha em pressione enter novamente."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s cookie: %.*s=%.*s Permite? (Y Sim/N Não/A Sempre/V Nunca)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Aceita cookie inválido do domínio %s para '%s'?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Aceita cookie de caminho mal definido '%s' com prefixo de '%s'?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Aceitando este cookie."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Rejeitando este cookie."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "O arquivo Jar do cookie está vazio."
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "O arquivo Jar do cookie está vazio."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Ativa ligação para pegar os cookies de todo o domínio,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "ou para alterar a permissão de cookies do domínio"
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Cookies nunca serão aceitos.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Cookies estão sendo aceitos.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Pergunta antes de aceitar cookies.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Cookies permanentes.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Sem título.)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Sem nome.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Sem valor.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "Vazio"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Fim da seção.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Delete este cookie?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "O cookie foi destruido!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Apaga este domínio vazio?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "O domínio foi destruido!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)Deleta cookie, acerta para A)Sempre/P)Perguntar/V)Nunca ou C) Cancela?"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)Deleta dominio, acerta para A)Sempre/P)Perguntar/V)Nunca ou C) Cancela?"
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Todos os cookies deste domínio foram destruídos!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "'Sempre' aceitar do domínio '%s'."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "'Nunca' aceitar do domínio '%s'."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "'Perguntar' antes de aceitar de '%s'."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Deleta todos os cookies deste domínio?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Todos os cookies no arquivo Jar foram destruidos!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Porta 19 não permitida em URLs."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Porta 25 nao permitida em URLs."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Porta %lu nao permitida em URLs."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "URL tem uma porta inválida."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Origens dos elementos HTML excederam o limite."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Referência parcial inválida! Ignorando alguns pontos."
+
+#: LYMessages.c:739
+#, fuzzy
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Falha ao localizar arquivo de log. Localização desligada!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Registro de depuração de rotas do Lynx"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Não foi aberta uma seção de traçagem de log."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "A quantidade máxima de arquivos temporários foi atingida."
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "O tamanho do buffer excedeu o tramanho do campo do formulário. Cortando o fim."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Aba modificada combinada com o cabeçalho do campo de formulario."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Diretório"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Leitor de diretórios não disponível."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "Acesso seletivo está habilitado para este diretório"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Formatador multiplo: Leitura de diretório falhou."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Este diretório não pode ser lido."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Impossível acessar arquivo requisitado."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Não foi encontrado processo de representação para transmissão."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Impossóvel abrir arquivo para descompressão!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Arquivos:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Subdiretórios:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " diretório"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Segue para "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Diretório corrente é "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "Sem resposta do servidor!"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "CSO index"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Este é um campo de procura de um banco de dados CSO.\n"
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "Resultados da busca no CSO"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Busca falhou em %s\n"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Pressione 's' e entre com os dados para busca.\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Este é um indexador de busca Gopher.\n"
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "Indexador Gopher"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "Menu Gopher"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr "Resultados da Busca"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "Enviando requisição CSO/PH."
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "Enviando requisição Gopher."
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "requisição CSO/PH enviada; esperando pela resposta."
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "requisição Gopher enviada; esperando pela resposta."
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Por favor, entre com os dados para busca.\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Os dados que você escolheu para busca irão fazer uma busca em"
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr " nome personificado na base de dados.\n"
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "Conecção fechada???"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr "Impossível abrir arquivo temporário para postagem de NEWS"
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Este cliente não contém suporte para postar NEWS com SSL."
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Estilo %d '%s' SGML:%s.  Fonte %s %.1f pontos.\n"
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "Alinhamento=%d, %d tabs. (%.0f antes, %.0f depois)\n"
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "Aba tipo=%d a %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "Impossível continuar sem um usuário e senha."
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Impossível repetir sem autorização! Contate o WebMaster."
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Impossível repetir sem uma autorização de proxy. Contate o WebMaster."
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr "Repetindo com informações de autorização para o proxy."
+
+#: LYMessages.c:799
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr ""
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Mensagem de retorno muito grande."
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr "Entre com a requisição de WAIS: "
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "Repetindo com requisição HTTPO."
+
+#: LYMessages.c:807
+#, fuzzy, c-format
+msgid "Transferred %d bytes"
+msgstr "Transferidos %s bytes."
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "Transferência completada"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Erro processando linha %d de %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr "Pagina de endereços"
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "Arquivo do Livro de Marcações"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr "Definições de configuração"
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr "Cookie Jar"
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr "Mapa de teclado corrente"
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "Opções de gerenciamento de arquivos"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "Opções de cópia"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "Página de histórico"
+
+#: LYMessages.c:820
+#, fuzzy
+msgid "Cache Jar"
+msgstr "Cookie Jar"
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr "Listas"
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "Informações do Lynx.cfg"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr "Livro de amrcações convertido do Mosaic"
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "Menu de Opções"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "Opções de permissão de arquivos"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "Opções de imporessão"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "Informações sobre este documento"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "Sua linha de mensagens de estado atual"
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "Opções de Envio"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr "Página de ligações visitadas"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "Veja mais"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr "seu"
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr "para opções de execução"
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "Opções de tempo de compilação"
+
+#: LYMessages.c:837
+#, fuzzy
+msgid "color-style configuration"
+msgstr "Sua configuração inicial"
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "ultimo apresentado"
+
+#: LYMessages.c:839
+#, fuzzy
+msgid "pre-release version"
+msgstr "versão em desenvolvimento"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "versão em desenvolvimento"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Os dados apresentados são derivados dos processos de configuração/compilação\n"
+"automática desta cópia do Lynx. Quando reportar um BUG, por favor inclua uma\n"
+"cópia desta página."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Os dados apresentados usaram uma configuração automática de definição de\n"
+"compilação quando esta cópia do Lynx foi criada."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "C) Criar D) Copiar E) Editar F) Menu inteiro M) Alterar R) Remover T) Tag U) Enviar arquivo \n"
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr "Falha obtendo o estado atual desta ligação!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Acesso a URLs especiais só válidas pelo menu de permissões de arquivos."
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr "Suporte externo está desabilitado."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+#, fuzzy
+msgid "Changing working-directory is currently disabled."
+msgstr "Chamadas estão atualmente desabilitadas."
+
+#: LYMessages.c:864
+#, fuzzy
+msgid "Linewrap OFF!"
+msgstr "Traçador de rotas desligado!"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr ""
+
+#: LYMessages.c:866
+#, fuzzy
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Modo Raw 8-bit ou CJK estão desativados. Atualizando..."
+
+#: LYMessages.c:867
+#, fuzzy
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Modo Raw 8-bit ou CJK estão ativados. Atualizando..."
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr ""
+
+#: LYMessages.c:869
+#, fuzzy
+msgid "Trace not supported"
+msgstr "O terminal não suporta cores."
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "Recortes: primeiro:%.0f outros=%.0f, altura=%.1f Desc.=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Usuário de '%s' em %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Este programa não está preparado para compor autorização proxy neste esquema."
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Este programa não está preparado para compor autorizações neste esquema."
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Cabeçalho inválido '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "Autorização de proxy requerida -- repetindo"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "Acesso sem autorização não permitido -- repetindo"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "Acesso não permitido pelo regulamento."
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Documento com ação de postagem não encontrado no cache. Reenviar?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr "Leitura incompleta"
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: Socket ou numero de arquivos retornado pela rotina é obsoleto!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, fuzzy, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "HTAccess:Erro interno.Por favor envie email informando para lynx_dev@sig.net!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "HTAccess: Retorno de estado foi: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr "Não foi possível acessar"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "Impossível acessar documento."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Entre senha para usuário %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Impossível contactar servidor de FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "fechado o socket principal."
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "socket para socket principal"
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "Ligação simbólica"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "Recebendo lista de diretórios do FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, fuzzy, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Transferidos %s bytes."
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr "conectado para dados"
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "Recebendo arquivo de FTP."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "Não foi possível conecção pelo finger."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Não foi possível ler dados. (sem site definido na URL)"
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "Porta inválida. - Será usada somente a porta 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "Não foi possível acessar o servidor pelo finger."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "Sem resposta do comando finger pelo servidor."
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Usuário para o servidor NEWS '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "Troca o usuário?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "Usuário:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Senha para o servidor NEWS '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "Troca senha?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "Sem combinações para: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Sem objetos neste grupo.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Sem objetos nesta faixa.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s, Objetos %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "Primeiros objetos"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, fuzzy, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Existem cerca de %s atualmente disponíveis em %s, Como segue:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "Todos os objetos disponíveis em "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "Próximos objetos"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "Envoar pata "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Este programa não contém suporte para SNEWS URLs."
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr "Sem destino para texto primário!"
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "Conectando ao servidor NEWS..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "Não foi possível acessar %s."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Não foi possível ler notícias. Sservidor NEWS %.20s respondeu: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, fuzzy, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Não foi possível ler notícias. Sservidor NEWS %.20s respondeu: %.200s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "Lendo lista de grupos de NEWS disponíveis."
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "Lendo lista de objetos no grupo de NEWS."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "Lendo objetos de NEWS."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+#, fuzzy
+msgid "Address has invalid port"
+msgstr "Comprimento do endereço parece estar errado"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "Comprimento do endereço parece estar errado"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Imposs;ivel localizar servidor remoto %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Servidor inválido %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, fuzzy, c-format
+msgid "Making %s connection to %s"
+msgstr "Conectando com %s em %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "Falha na conecção do socket."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Não foi possível criar conecção."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+#, fuzzy
+msgid "Connection failed (too many retries)."
+msgstr "Conecção falhou apos 180,000 tentativas."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Impossível restaurar socket para blocagem."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+#, fuzzy
+msgid "Socket read failed (too many tries)."
+msgstr "Leitura do socket falhou após 180,000 tentativas."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Este programa não suporta URLs com HTTPS"
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr "Impossível conectar ao servidor remoto."
+
+#: WWW/Library/Implementation/HTTP.c:669
+#, fuzzy
+msgid "Retrying connection without TLS."
+msgstr "Conectando com %s em %s."
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+#, fuzzy
+msgid "the certificate has been revoked"
+msgstr "O cookie foi destruido!"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "Enviando requisição HTTP."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr "Erro inesperado de gravação na rede; conecção abortada."
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "Enviada requisição HTTP; aguardando resposta."
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr "Erro inesperado de leitura na rede; conecção abortada."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr "Recebido informação de estado não solicitada."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr "Estouro de requisição. Limpando pedido."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Recebida resposta de valor 304."
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr "Redirecionamento de postagem requer autorização do usuário."
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Há uma ação de postagem.Tratando redirecionamento permanente como temporário.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr "Repetindo com informações de autorização de acesso."
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr "Mostra o corpo da mensagem 401?"
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr "Mostra o corpo da mensagem 407?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr "Resposta desconhecida de estado do servidor!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "seção remota %s:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Não foi possível conectar ao servidor de WAIS."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Não foi possível conectar ao servidor de WAIS para leitura."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "O código de diagnóstido é "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Arquivo de indexação "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " contém os segintes %d ítens %s relativos a\""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "A primeira figura após qualquer entrada está em posição relativa, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "o(a) segundo(a) é i número de linhas no ítem."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (Nome incorreto de arquivo)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr " (mau id de documento)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "Campo de cabeçalho curto, não é possível mostrar)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Campo de cabeçalho longo, não é possível mostrar.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Registro de texto\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Registro de cabeçalho. Não é possível apresentar.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Registro de código, não é possível apresentar\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Erro de sintaxe na URL WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS Index)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "Index WAIS:"
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Esta é uma ligação para procurar o(a)"
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " Index do WAIS.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Entre com 's' para procura e especifique as palavras de busca.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (em "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "Procura WAIS de \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" em: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Requisição muito grande."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Procurando no banco de dados WAIS..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Procura interrompida."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Impossível converter formado do documento WAIS."
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Requisição muito grande."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Procurando documento WAIS..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Não foi retornado texto algum!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr "NÃO ENTREGAR no arquivo de fonte;"
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr "Arquivo de fonte do WAIS"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " descrição"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "Acesso de ligações"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "Acesso direto"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (ou via servidor de proxy, se definido)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "Mantenedor"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "Servidor"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "Memória exaurida, apresentação interrompida!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Memória exaurida, srá interrompida a transferência!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr "*** MEMÓRIA EXAURIDA ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "Campo ou ligacão desconhecidos."
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "Campo de entrada de texto"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "Campo de entrada de senha"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "Caixa de checagem"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "Botão de rádio"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "Botão de envio"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "Botão de limpar"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "Menu de pop-up"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "Campo de formulário escondido"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "Área de entrada de texto"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr "Faixa de entrada de texto"
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "Campo de entrada de arquivo"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr "Campo de envio de texto"
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "Botão de imagem de envio de formulário"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr "Campo de 'chave'"
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "Campo desconhecido"
+
+#: src/GridText.c:10279
+#, fuzzy
+msgid "Can't open file for uploading"
+msgstr "Impossível abrir arquivo de saída! Cancelando!"
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr "Enviando %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr ""
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr ""
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr ""
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "bytes"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, fuzzy, c-format
+msgid "Read %s of data"
+msgstr "Lido %ld %s dos dados"
+
+#: src/HTAlert.c:321
+#, fuzzy, c-format
+msgid "Read %s of %s of data"
+msgstr "Lido %ld de %ld %s dos dados."
+
+#: src/HTAlert.c:330
+#, fuzzy, c-format
+msgid ", %s/sec"
+msgstr ", %ld %s/sec."
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr ""
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ""
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Pressione 'z' para abortar)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "sim"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "não"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "Descrição:"
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr " (vazio)"
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr "Caminho:"
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(desconhecido)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Documento contém somente ligações ocultas. Use 'l' para listar."
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr ""
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr ""
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"      Este arquivo é uma representação HTML do Livro de marcações do\n"
+"      Mosaic. Ligações antigas ou inválidas podem ser removidas usando\n"
+"      o comando de remover marcação 'R'. Este comando pode ser sido \n"
+"      alterado pelo administrador do sistema."
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Ligações antigas ou inválidas podem ser removidas usando\n"
+"     o comando de remover marcação 'R'. Este comando pode ser sido \n"
+"     alterado pelo administrador do sistema."
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Este arquivo também pode ser editado por um editor normal de texto para\n"
+"     apagar as ligações antigas ou inválidas, ou para alterar sua ordem.<"
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Nota: Se você editar este arquivo manualmente, você não deve\n"
+"      mudar o formato das linhas ou inserir alguma TAG HTML.\n"
+"      Tenha certeza de que cada ligação está salva como uma linha simples."
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr ""
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Impossível acessar script CGI"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Conselho útil"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Um excelente servidor de HTTP para VMS está dispinível via"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "esta ligação"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Provê o estado do suporte a scripts CGI\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Saindo via interrupção:"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr "(De uma seção anterior)"
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr "Data máxima de aquisição:"
+
+#: src/LYCookie.c:2562
+#, fuzzy
+msgid "Internal"
+msgstr "(interno)"
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr ""
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Inicialização do terminal falhou - Terminal de tipo desconhecido?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Você deve usar um terminal vt100, 200, etc... com este programa."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "O tipo do seu terminal é desconhecido!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "Entre com o tipo do terminal:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TERMINAL ESTÁ CONFIGURADO PARA"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Um erro fatal ocorreu em %s Ver. %s\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Por favor, notifique o administrador do sistema para confirmar o nug, e se\n"
+"for confirmado, para notificar a lista lynx-dev. Reportes de bug devem ter\n"
+"uma descrição concisa do comando e/ou URL que causou o problema, o sistema\n"
+"operacional e sua versão, a implementação TCPIP, o 'TRACEBACK' se puder ser\n"
+"capturado, e qualquer outra informação relevante.\n"
+
+#: src/LYEdit.c:266
+#, fuzzy, c-format
+msgid "Error starting editor, %s"
+msgstr "Erro processando linha %d de %s\n"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr ""
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr ""
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "Ligaçao copiada:"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "Sugestão de nome do arquivo:"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "Opções padrão de cópia:"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "Opções de cópia"
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "Salva no disco"
+
+#: src/LYDownload.c:545
+#, fuzzy
+msgid "View temporary file"
+msgstr "Impossível abrir arquivo temporário!"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "Salvar para o disco está desabilitado."
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Adições locais:"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Não foi informado nome"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Você selecionou:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(sem endereço)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr "(interno)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (foi interno)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (Do histórico)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Você visitou (POSTs, Livro de marcações, menu e listas de arquivos excluidos):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr ""
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Ponto inválido detectado."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Ponteiro:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Arquivo:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Numero de Linha(s):"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Vazamento de memória detectado."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Contém:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Tamanho em bytes:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "realocado:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Total de memória gasta nesta execução:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+#, fuzzy
+msgid "Bytes allocated"
+msgstr "realocado:"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Referências em "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "este documento:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Ligações visíveis:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Ligações escondidas:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Referências"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Ligações visíveis"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Impossível pegar estado de '%s'."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "O ítem selecionado não é um diretório ou arquivo! Requisição ignorada."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Impossível executar %s em razão de falha do sistema!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Falha possível em %s devido a falha do sistema!"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "remove %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "move %s para %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Já existe um diretório com este nome! Requisição ignorada."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Já existe um arquivo com este nome! Requisição ignorada."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "O nome especificado já está em uso! Requisição ignorada."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "Destino tem um dono difwerente! Requisição impedida."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Destino não é um diretório válido! Requisição impedida."
+
+#: src/LYLocal.c:617
+#, fuzzy
+msgid "Remove all tagged files and directories?"
+msgstr "Remove todos os diretórios e arquivos marcados"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Entre com novo local para itens marcados:"
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Caminho muito grande"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Fonte e destino são o mesmo local - requisição impedida!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Entre com o novo nome para o diretório:"
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Entre com o novo nome do arquivo:"
+
+#: src/LYLocal.c:847
+#, fuzzy
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Caractere inválido \"/\" encontrado! requisição ignorada."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Entre com novo local para o diretório:"
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Entre com novo local para o arquivo:"
+
+#: src/LYLocal.c:930
+#, fuzzy
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Falha inexperada - Impossível encontrar caminho \"/\""
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Fonte e destino são o mesmo local! Requisição ignorada!"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Modifica nome, local, ou permissão (n,l,p):"
+
+#: src/LYLocal.c:999
+#, fuzzy
+msgid "Modify name or location (n or l): "
+msgstr "Modifica nome ou local (n,l):"
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Esta propriedade não foi implementada ainda!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Entre com o nome do arquivo a ser criado:"
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Redirecionamento ilegal \"//\" encontrado! Requisição ignorada."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Entre com o nome para o novo diretório:"
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Criar 'f' arquivo ou 'd' diretório (f ou d):"
+
+#: src/LYLocal.c:1166
+#, fuzzy, c-format
+msgid "Remove directory '%s'?"
+msgstr "Remove arquivo '%s':"
+
+#: src/LYLocal.c:1169
+#, fuzzy
+msgid "Remove directory?"
+msgstr " diretório"
+
+#: src/LYLocal.c:1174
+#, fuzzy, c-format
+msgid "Remove file '%s'?"
+msgstr "Remove arquivo '%s':"
+
+#: src/LYLocal.c:1176
+#, fuzzy
+msgid "Remove file?"
+msgstr "Remove arquivo:"
+
+#: src/LYLocal.c:1181
+#, fuzzy, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Remove uma ligação simbólcia '%s':"
+
+#: src/LYLocal.c:1183
+#, fuzzy
+msgid "Remove symbolic link?"
+msgstr "Remove ligação simbólica:"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Desculpe, não sei como permitir arquivos não-UNIX ainda."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Impossível abrir arquivo de opções de permissão"
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Especifique as permissões abaixo:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Dono:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Grupo"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Outros:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "forma como permitir"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Formato de modo inválido"
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Formato da sintaxe inválido."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Atenção! UUDecodificação ficará no diretório onde você chamou o Lynx."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "Ponteiro de URL vazio"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Executando %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Executando comando de sistema. Isto pode demorar um pouco."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Diretório corrente:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Seleção corrente:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Nada foi selecionado."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "item marcado:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "itens marcados:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Nome de arquivo inválido. Requisição ignorada."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Instalação no diretório selecionado não é possivel."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "O item selecionado não é um diretório. Requisição ignorada."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Só um momento..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr ""
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr ""
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, fuzzy, c-format
+msgid "Already in target directory: %s"
+msgstr "Lendo diretório..."
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Instalação completa."
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "URL temporário ou lista podem estar muito longas."
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Enviando"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "A ligação    %s :?: %s \n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "chamado(a) \"%s\"\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "no arquivo \"%s\" chamado \"%s\" \n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "foi requisitado mas não está disponível."
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "Embora você possa querer saber."
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "Esta mensagem foi gerada automaticamente por"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr "Não foi encontrado o Winsock, desculpe."
+
+#: src/LYMain.c:1226
+#, fuzzy
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Você deve definir uma área TMP ou TEMP válida!\n"
+
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+#, fuzzy
+msgid "No such directory"
+msgstr " diretório"
+
+#: src/LYMain.c:1464
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Arquivo %s de configuração não está disponível.\n"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Não foi declarada uma coleção de caracteres Lynx.\n"
+" \n"
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Editor de mapas Lynx não foi declarado.\n"
+" \n"
+
+#: src/LYMain.c:1579
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Arquivo Lynx %s não está disponível.\n"
+" \n"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr ""
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr "O estado dos cookies permanentes será alterado na próxima seção."
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr ""
+
+#: src/LYMain.c:3181
+#, fuzzy, c-format
+msgid "%s Version %s (%s)"
+msgstr ""
+"\n"
+"Versão %s (%.*s)\n"
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Criado em %s %s %s\n"
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+#, fuzzy
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "Copyrights mantidos pela University of Kansas, CERN, e outros colaboradores.\n"
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Distribuido pela GNU General Public License.\n"
+
+#: src/LYMain.c:3244
+#, fuzzy
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+"Veja http://lynx.browser.org/ e o help on-line para mais informações.\n"
+"\n"
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "USO: %s [opções] [arquivo]\n"
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr "Opções são:\n"
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Opção inválida: %s\n"
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr ""
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr "Uma URL especificada pelo usuário"
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "multipart/form-data não é suportado ainda! Impossível enviar."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr "Tela de Ajuda"
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr "Indexador de sistema"
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr "Entrada na tela principal"
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr ""
+
+#: src/LYMainLoop.c:4139
+#, fuzzy
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "O mapa de caracteres deve ser explicito no documento, desculpe..."
+
+#: src/LYMainLoop.c:5052
+#, fuzzy
+msgid "cd to:"
+msgstr " para "
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr ""
+
+#: src/LYMainLoop.c:5080
+#, fuzzy
+msgid "failed to change directory"
+msgstr "Impossível acessar diretório."
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr "Reinterpretando documento pelas opções atuais..."
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Erro fatal - não foi possível abrir arquivo %s\n"
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:6960
+#, fuzzy
+msgid "Current URL is empty."
+msgstr "Diretório corrente:"
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr ""
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+#, fuzzy
+msgid "-index-"
+msgstr " index"
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr "lynx: Não foi possível acessar o arquivo principal"
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: Arquivo inicial não pode ser encontrado ou não é texto/HTML"
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr "      Saindo..."
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr ""
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Você estará postando para:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Por favor forneça seu endereço de email para o cabeçalho\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+"Por favor forneça ou edite o Assunto:\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+"Por favor forneça ou edite a Empresa:\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+"Por favor, entre com sua mensagem abaixo."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Mensagem não tem texto original!"
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "rever/editar B) Livro de Marcações"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "B) Livro de Marcações:"
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2242
+#, fuzzy
+msgid "Novice"
+msgstr "Vazio"
+
+#: src/LYOptions.c:2243
+msgid "Intermediate"
+msgstr ""
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2279
+#, fuzzy
+msgid "as links"
+msgstr "esta ligação"
+
+#: src/LYOptions.c:2286
+#, fuzzy
+msgid "show filename"
+msgstr " (Nome incorreto de arquivo)"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2329
+#, fuzzy
+msgid "Directories first"
+msgstr "Subdiretórios:"
+
+#: src/LYOptions.c:2330
+#, fuzzy
+msgid "Files first"
+msgstr " primeiro."
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr ""
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+#, fuzzy
+msgid "By Name"
+msgstr "Nome:"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+#, fuzzy
+msgid "By Size"
+msgstr "Tamanho em bytes:"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+#, fuzzy
+msgid "By Date"
+msgstr "Data:"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2346
+#, fuzzy
+msgid "By Group"
+msgstr "Grupo"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, c-format
+msgid "Show %s/sec rate"
+msgstr ""
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2379
+msgid "Show progressbar"
+msgstr ""
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2395
+#, fuzzy
+msgid "Accept all types"
+msgstr "Aceitar mudanças"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr ""
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr ""
+
+#: src/LYOptions.c:3485
+#, fuzzy
+msgid "General Preferences"
+msgstr "Preferências pessoais"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "Modo usuário"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "Editor"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr ""
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "Cookies"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr ""
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "Modo Keypad"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "Teclas Emacs"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "Teclas VI"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr ""
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr ""
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+#, fuzzy
+msgid "Display and Character Set"
+msgstr "Mostra mapa de caracteres"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+#, fuzzy
+msgid "Use locale-based character set"
+msgstr "Mostra mapa de caracteres"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "Mostra mapa de caracteres"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "Assumindo mapa de caracteres do documento"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "Modo CJK"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "Raw 8-bit"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "Visual X"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr ""
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "Mostra cor"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "Mostra cursor"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+#, fuzzy
+msgid "Underline links"
+msgstr "Ligações escondidas:"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+#, fuzzy
+msgid "Show scrollbar"
+msgstr "Mostra cor"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr "Pop-ups para os campos selecionados"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "Erro recuperando HTML"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "Mostra imagens"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "Imagens explicitadas"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+#, fuzzy
+msgid "Headers Transferred to Remote Servers"
+msgstr "Cabeçalhos tranferidos ao servidor remoto"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "Endereço pessoal de email"
+
+#: src/LYOptions.c:3760
+#, fuzzy
+msgid "Password for anonymous ftp"
+msgstr "Senha para o servidor NEWS '%s':"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+#, fuzzy
+msgid "Preferred media type"
+msgstr "Transferidos %s bytes."
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+#, fuzzy
+msgid "Preferred encoding"
+msgstr "Preferência de linguagem do documento."
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "Preferências de mapa de caracteres do documento"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "Preferência de linguagem do documento."
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "Cabeçalho de Agente de Usuário"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "Critérios de organização do FTP"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "Critérios de organizações dos diretórios locais"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+#, fuzzy
+msgid "Local directory sort order"
+msgstr "Critérios de organizações dos diretórios locais"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "Monstre arquivos de pontos"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "Ligações de execução"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+#, fuzzy
+msgid "Show transfer rate"
+msgstr "Transferência completada"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr ""
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "Multiplos Livros de Marcações"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "Rever/editar arquivos de Livro de Marcações"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "Ir para menu de multiplos livros de marcações"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "Arquivo de Livro de marcações"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+#, fuzzy
+msgid "Visited Pages"
+msgstr "Página de ligações visitadas"
+
+#: src/LYOptions.c:3920
+#, fuzzy
+msgid "View the file "
+msgstr "Enviar arquivo por email"
+
+#: src/LYPrint.c:937
+#, fuzzy, c-format
+msgid " Print job complete.\n"
+msgstr "Leitura incompleta"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Documento:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Número de Linhas:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Número de páginas:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "páginas"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "página"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(aproximadamente)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Algumas funções de impressão foram desabilitadas!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Opções padrão de impressão:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Opções de impressão:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Salva para um arquivo local"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Salvar para disco desabilitado"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Enviar arquivo por email"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Mostra na tela"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Imprime numa impressora atachada num terminal vt100."
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Erro de sintaxe analizando cores no arquivo de configuração:\n"
+"A linha deve ser formada desta vorma:\n"
+"COR:INTEIRO:FRENTE:FUNDO\n"
+"\n"
+"Onde FRENTE e FUNDO devem ser um destes:\n"
+"O campo 'nocolor', ou 'default', ou\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Linha 'infratora': "
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:688
+#, fuzzy, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "Remapeamento de teclas "
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr ""
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: Impossível iniciar,CERN arquivo de regulamento %s não está disponível\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(sem nome)"
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Mais de %d aninhados nos arquivos incluídos do lynx.cfg -- talvez seja um loop???\n"
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Ultimo arquivo incluso chamado foi '%s',\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "incluído a partir de '%s'\n"
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr "O seguinte foi lido em seu arquivo lynx.cfg."
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr "Por favor veja a distribuição"
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr "para mais comentários."
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr "RELER AS ALTERAÇÕES"
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr "Sua configuração inicial"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "Diretório que você está vendo atualmente"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Nome:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "Diretório que você acabou de selecionar"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "Arquivo que você acabou de selecionar"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "Ligação simbólica que você acabou de selecionar"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "Item que você acabou de selecionar"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "Nome Completo:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "Impossível seguir link"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "Ponteiros para o arquivo:"
+
+#: src/LYShowInfo.c:220
+#, fuzzy
+msgid "Name of owner:"
+msgstr "Nome do dono:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Nome do grupo:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Tamanho do arquivo:"
+
+#: src/LYShowInfo.c:227
+#, fuzzy
+msgid "(bytes)"
+msgstr "bytes"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Data de criação:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Última modificação:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Último acesso:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Permissões de acesso"
+
+#: src/LYShowInfo.c:279
+#, fuzzy
+msgid "Group:"
+msgstr "Grupo"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Arquivo que você está vendo atualmente."
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Nome da Ligação:"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Mapa de caracteres:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Servidor:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Data:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Última modificação:"
+
+#: src/LYShowInfo.c:352
+#, fuzzy
+msgid "Expires:"
+msgstr "&nbsp;EXpira:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Controle de cache:"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:362
+#, fuzzy
+msgid "Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Lingua:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "Data de postagem:"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "Postar tipo de documento:"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Dono(s):"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "Tamanho:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "linhas"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "modo do formulário"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "fonte"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "normal"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", salvo"
+
+#: src/LYShowInfo.c:398
+#, fuzzy
+msgid ", via internal link"
+msgstr ", ligação interna"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", sem cache"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", script ISMAP"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", arquivo de Livro de marcações"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "modo:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Ligação que você acabou de selecionar"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Metodo:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "Enctype:"
+
+#: src/LYShowInfo.c:436
+#, fuzzy
+msgid "Action:"
+msgstr "Localização:"
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(Campo de formulário)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "Sem ligações na página atual"
+
+#: src/LYShowInfo.c:455
+#, fuzzy
+msgid "Server Headers:"
+msgstr "Servidor:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Erro de sintaxe durante interpretação do arquivo lss:\n"
+"[%s]\n"
+"A linha deve estar:\n"
+"OBJETO:MONO:COLOR (ex. em:bold:brightblue:white)\n"
+"onde OBJETO é um destes: EM,STRONG,B,I,U,BLINK etc...\n"
+"\n"
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "Aqui há uma lista da pilha de histórico que você pode recriar"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "ERRO - Comando de envio de arquivos está mal configurado"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Redirecionamento ilegal atingido \"../\" encontrado! Requisição ignorada."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Caractere inválido \"/\" encontrado! requisição ignorada."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Redirecionamento ilegal usando \"~\" encontrado! Requisição ignorada."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Impossível abrir arquivo"
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Enviar para:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Opções de envio de arquivos:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr ""
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr ""
+
+#: src/LYUtils.c:3719
+#, fuzzy
+msgid "unknown restriction"
+msgstr "Campo ou ligacão desconhecidos."
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr ""
+
+#: src/LYUtils.c:3753
+#, fuzzy, c-format
+msgid "Restrictions set:\n"
+msgstr "Descrição:"
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr ""
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr ""
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies permite receber qualquer tipo de  cookie. \n"
+"O padrão é \"FALSE\" que vai forçar o usuário a confirmar a cada novo\n"
+"cookie que for enviado. Ajuste para \"TRUE\" a fim de aceitar qualquer\n"
+"cookie.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file especifica o nome e local do livro de marcação padrão\n"
+"onde o usuário pode inserir para acessar facilmente os endereços \n"
+"preferidos.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Se case_sensitive_searching estiver \"on\" então quando o usuário\n"
+"chama uma busca usando 's' ou '/', a performance da procura será\n"
+"não sensitiva a letras maiusculas e minusculas. O padrão é \"off\".\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"O character_set controla a representação dos caracteres de 8 bits para seu\n"
+"terminal. Se os caracteres de 8 bits não aparecerem corretamente em sua \n"
+"tela, você pode tentar trocando para uma diferente configuração ou usando \n"
+"caracteres de 7 bits.\n"
+"Atualmente os caracteres válidos são:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains e cookie_reject_domains são listas de domínios\n"
+"delimitados por virgulas, de onde o Lynx pode aceitar ou rejeitar \n"
+"automaticamente os cookies enviados. Se um domínio estiver especificado\n"
+"em ambos, rejeitar tem preferência. O parametro accept_all_cookies irá\n"
+"sobreescrever qualquer outro parâmetro feito aqui.\n"
+
+#: src/LYrcFile.c:357
+#, fuzzy
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file especifica o arquivo em que irão ser gravados os cookies.\n"
+"O padrão é ~/.lynx_cookies.\n"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, e\n"
+"cookie_query_invalid_domains são listas de domínios, delimitados \n"
+"por vírgulas que podem ser sujeitados a vários tipos de autenticação\n"
+"Se um domínio estriver ajustado para checagem precisa, será checado\n"
+"de acordo com a norma RFC2109. Um domínio que perder a checagem será \n"
+"autorizado a configurar cookies com caminhos ou parâmetros inválidos.\n"
+"Todos os domínios tem como padrão perguntar ao usuário sobre um caminho\n"
+"ou parâmetro inválido no cookie.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles especifica o estilo da listagem de diretório pelo \n"
+"DIRED_SUPPORT (se implementado). O padrão é \"MIXED_STYLE\", que \n"
+"organiza os diretórios e os arquivos juntos.\"FILES_FIRST\" organiza\n"
+"primeiro os arquivos, depois os diretórios.\"DIRECTORIES_FIRST\" lista\n"
+"primeiro os diretórios.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Se emacs_keys estiver \"on\" então as teclas normais de movimento são:\n"
+"  ^N = para baixo  ^P = para cima\n"
+"  ^B = esquerda    ^F = para direita\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor especifica o editor que deve ser chamado quando você\n"
+"quer editar arquivos localmente ou enviar email. Se nenhum editor for\n"
+"especificado, então esta facilidade estará desabilitada, a não ser que\n"
+"seja ativado na linha de comando, então o editor será usado para enviar\n"
+"emails.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"O file_sorting_method especifica qual valor será usado para classificar\n"
+"quando você estiver listando diretórios e arquivos de FTP. As opções são:\n"
+"   BY_FILENAME -- classifica pelo Nome do arquivo\n"
+"   BY_TYPE     -- classifica pelo Tipo do arquivo\n"
+"   BY_SIZE     -- classifica pelo Tamanho do arquivo\n"
+"   BY_DATE     -- classifica pela Data do arquivo\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode especifica as teclas que serão usadas durante a edição \n"
+"de campos de formulários. Se lineedit_mode estiver como \"Default Binding\"\n"
+"então os caracteres abaixo serão usados para mover-se e deletar.\n"
+"\n"
+"            anterior  próximo     Enter = Aceita entrada\n"
+"   Move carac: <-       ->        ^G    = Cancela entrada\n"
+"   Move palav: ^P       ^N        ^U    = Apaga linha\n"
+" Delete carac: ^H       ^R        ^A    = Começo da linha  \n"
+" Delete palav: ^B       ^F        ^E    = Fim da linha\n"
+"\n"
+"Atualmente os modos de edição de linha são:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Este permite a você definir sub-livros de marcação. O formato é\n"
+"multi_bookmark(letra maiúscula)=(nome do arquivo),(descrição)\n"
+"Até 26 livros podem ser definidos (para letras maiúsculas do\n"
+"ingles). Nós começamos com \"multi_bookmarkB\" desde que 'A' é o \n"
+"padrão. (veja abaixo).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"persona_mail_address especifica seu email. O endereço será\n"
+"enviado durante transferências de arquivos para autenticação\n"
+"de usuário e dentro de emails que você enviar.\n"
+"Se você não quer que esta informação seja publicada, acerte \n"
+"NO_FROM_HEADER para TRUE no lynx.cfg, ou use -nofrom na linha \n"
+"de comando. Você também pode deixar este campo em branco, mas então você não poderá incluir em seus comentários de email.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset especifica o formato ISO que será usado nas notações\n"
+"MIME, e que será enviado ao servidor http usando cabeçalho 'Accept-Charset'\n"
+"O valor não deve conter ISO-8859-1 ou US-ASCII, desde que estes valores \n"
+"são assumidos como padrão. Deve ser uma lista separada por virgulas.\n"
+"Se um arquivo com este codigo estiver disponível, o servidor irá envia-lo\n"
+"a você. Se não houver cabeçalho 'Accept-Charset', o documento padrão\n"
+"será enviado. Se um cabeçalho 'Accept-Charset' estiver presente, e se o\n"
+"servidor não puder enviar uma resposta que seja aceitável de acordo com\n"
+"o cabeçalho solicitado, então você poderá receber uma mensagem de erro.\n"
+
+#: src/LYrcFile.c:473
+#, fuzzy
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language especifica a lingua que será informado o formato\n"
+"MIME(ex. en,fr, devem ser separados por vírgulas em ordem decrescente de\n"
+"preferência) ao servidor de http. Se o arquivo nesta linguagem estiver \n"
+"disponível, o servidor irá envia-lo a você. Do contrário, enviará o\n"
+"documento padrão.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Se run_all_execution_links estiver como \"on\" então todas as execuções de\n"
+"ligações locais serão executadas quando elas forem selecionadas.\n"
+"\n"
+"ATENÇÃO - Isto é muito perigoso. Desde que você permita que alguma informação\n"
+"          seja gravada em seu microcomputador de um local desconhecido\n"
+"          existe a possibilidade de um Trojan ou Cavalo de Tróia ser \n"
+"          executado. Trojans e Cavalos de Tróia podem desde alterar a segu-\n"
+"          rança de seu microcomputador até destruir arquivos. Somente deixe\n"
+"          como \"on\" se você tiver certeza das informações que estarão sendo \n"
+"          executadas ou gravadas em seu equipamento. \n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Se run_execution_links_on_local_files estiver como \"on\" então todas as\n"
+"execuções de ligações locais encontradas em arquivos LOCAIS serão execu-\n"
+"tadas quando forem selecionadas. Isto é diferente de run_all_execution_links\n"
+"onde somente arquivos que estiverem no sistema local serão executados.\n"
+"\n"
+"ATENÇÃO - Isto é muito perigoso. Desde que você permita que alguma informação\n"
+"          seja executada em seu microcomputador de um local desconhecido\n"
+"          existe a possibilidade de um Trojan ou Cavalo de Tróia ser \n"
+"          executado. Trojans e Cavalos de Tróia podem desde alterar a segu-\n"
+"          rança de seu microcomputador até destruir arquivos. Somente deixe\n"
+"          como \"on\" se você tiver certeza das informações que estarão sendo \n"
+"          executadas ou gravadas em sei equipament.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups especifica como srão apresentados os menus de pop-up. Se\n"
+"como botões de rádio ou via menu. Note que o Lynx sempre criará um menu \n"
+"vertical para OPÇÕES. Um valor de \"on\" irá deixar os menus como o padrão\n"
+"e \"off\" forçará o uso de caixas de rádio. O valor pode ser alterado na\n"
+"linha de comando com -popup.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color especifica como as cores irão ser apresentadas. Um valor de  \n"
+"\"never\" forçará o mono monocromático mesmo que o terminal tenha capaci-\n"
+"dade de apresentar cores. Um valor de \"always\" forçará o modo colorido\n"
+"mesmo que o terminal seja monocromático. Mas somente se a biblioteca   \n"
+"usada para compilar o lynx permitir. Um valor de \"default\" irá assumir\n"
+"monocromático a não ser que a opção de colorido tenha sido requisitada\n"
+"na linha de comando (ex.'lynx -color') ou a variável COLORTERM esteja\n"
+"presente. O padrão sempre é usado em contas anônimas ou se a restrição\n"
+"\"option_save\" esteja presente. O efeito dos valores salvos pode ser \n"
+"sobreescrito com o comando -color ou -nocolor. Para alterar o modo padrão\n"
+"use o menu de opções. Se estiver salvo \"on\" ou \"off\" estes serão tratados\n"
+"como \"default\".\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor especifica como 'esconder' o cursor no canto inferior direito\n"
+"da tela, ou para coloca-lo no lado esquerdo da ligação corrente do \n"
+"documento, ou opções correntes nas janelas de pop-up.\n"
+"Posicionando o cursor no lado esquerdo ajuda em interfaces braille, e \n"
+"quando o terminal não distingue as ligações baseadas em cores.\n"
+"Um valor de \"on\" ira posiciona-lo no lado esquerdo e \"off\" irá oculta-lo\n"
+"O valor padrão pode ser sobreescrito via linha de comando -show_cursor.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles especifica que o diretório listado irá apresentar os\n"
+"arquivos ocultos. Se estiver \"on\" este será distinto somente via \n"
+"userdefs.h e/ou lynx.cfg, e não restringido via linha de comando.\n"
+"Se a apresentação de arquivos ocultos estiver \"off\", a criação dos \n"
+"mesmos pelo lynx estará desabilitada.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Se sub_bookmarks não estiver \"off\", e foram definidos multiplis livros de\n"
+"marcação (veja abaixo), então todas as operações de livros de marcações \n"
+"irão solicitar que você escolha entre os arquivos de livro de marcação.\n"
+"Se o bookmark_file padrão estiver definido(veja acima), ele será usado\n"
+"como padrão de seleção. Quando esta opção estiver \"advanced\", e o modo\n"
+"de usuário estiver como avançado, o comando de 'v'isualizar irá invocar\n"
+"uma linha de prompt em vez de um menu de novato ou intermediário. Quando\n"
+"esta opção estiver como \"standart\", o menu será apresentado respeitando o\n"
+"modo do usuário.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode especifica o nível do usuário que está usando o Lynx. O\n"
+"padrão é \"NOVICE\" que equivale a novato. Mostra menus simples junto\n"
+"de uma barra de ajuda. Ajustando para \"INTERMEDIATE\" para desligar\n"
+"a ajuda e ter menus mais avançados.\n"
+"Use \"ADVANCED\" para ver a URL da ligação marcada atualmente na base\n"
+"da tela.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Se as imagens são \"on\", Lynx irá imprimir o nome da imagem\n"
+"no local como [INLINE], [LINK], ou [IMAGE]\n"
+"Veja mais sobre em lynx.cfg\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Se vi_keys estiver marcado como \"on\", então os movimentos normais de teclas são:\n"
+"  j = para baixo    k = para cima\n"
+"  h = esquerda      l = direita\n"
+"Estas teclas são somente em letras minúsculas.\n"
+"As letras 'H', 'J' e 'K continuam ativando a ajuda,pular atalhos e mostrar\n"
+"o mapa de caracteres.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Se keypad_mode estiver com \"NUMBERS_AS_ARROWS\", então oa números em\n"
+"seu keypad quando o numlock estiver ligado funcionarão como setas.\n"
+"            8 = para cima\n"
+"  4 = para esquerda 6 = para direita\n"
+"            2 = para baixo\n"
+"e os números do teclado responderão da mesma forma, desde que o \n"
+"numlock estiver ligado.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Se keypad_mode estiver com \"LINKS_ARE_NUMBERED\", então números\n"
+"irão aparecer ao lado das ligações e serão usados para ativá-las.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Se keypad_mode estiver com \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", então\n"
+"números irão aparecer ao lado das ligações e dos campos de formulário.\n"
+"Serão usados para ativar ligações ou para mover o \"link corrente\" para\n"
+"um campo de formulário ou botão. Em adição, as opções nos menus serão\n"
+"indexadas onde o usuário poderá escolher a opção por um número, mesmo\n"
+"que a opção não esteja visível. Listas de referências e saídas do comando\n"
+"de lista serão numeradas também.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"NOTA: Alguns formatos fixados de documento podem ser alterados quando\n"
+"\"LINKS_ARE_NUMBERED\" ou \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" estiverem\n"
+"habilitados.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+#, fuzzy
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Arquivo de configuração do usuário\n"
+"\n"
+"Este arquivo contém as opções salvas pela tela de Opções do Lynx.\n"
+"(normalmente com a tecla '>'). Normalmente você não precisa editar\n"
+"este arquivo manualmente, desde que os valores aqui são controlados\n"
+"pelo menu de opções, e a próxima vez que qualquer opção for salva\n"
+"este arquivo será totalmente reescrito. Você foi avisado...\n"
+"Se você está procurando pelo arquivo de configurações principal - \n"
+"ele é normalmente chamado de lynx.cfg, e tel forma e conteúdo dife-\n"
+"rente - não é este arquivo.\n"
+
+#~ msgid "Comment request cancelled!!!"
+#~ msgstr "Pedido de comentário cancelado!!!"
+
+#~ msgid "You are not allowed to goto \"file:\" URLs"
+#~ msgstr "Você não pode ir para \"file:\" URLs"
+
+#~ msgid "You are not allowed to goto \"finger:\" URLs"
+#~ msgstr "Você não pode ir para \"finger:\" URLs"
+
+#~ msgid "You are not allowed to goto \"ftp:\" URLs"
+#~ msgstr "Você não pode ir para \"ftp:\" URLs"
+
+#~ msgid "You are not allowed to goto \"gopher:\" URLs"
+#~ msgstr "Você não pode ir para \"gopher:\" URLs"
+
+#~ msgid "You are not allowed to goto \"http:\" URLs"
+#~ msgstr "Você não pode ir para \"http:\" URLs"
+
+#~ msgid "You are not allowed to goto \"https:\" URLs"
+#~ msgstr "Você não pode ir para \"https:\" URLs"
+
+#~ msgid "You are not allowed to goto \"lynxcgi:\" URLs"
+#~ msgstr "Você não pode ir para \"lynxcgi:\" URLs"
+
+#~ msgid "You are not allowed to goto \"lynxexec:\" URLs"
+#~ msgstr "Você não pode ir para \"lynxexec:\" URLs"
+
+#~ msgid "You are not allowed to goto \"lynxprog:\" URLs"
+#~ msgstr "Você não pode ir para \"lynxprog:\" URLs"
+
+#~ msgid "You are not allowed to goto \"mailto:\" URLs"
+#~ msgstr "Você não pode ir para \"mailto:\" URLs"
+
+#~ msgid "You are not allowed to goto \"news:\" URLs"
+#~ msgstr "Você não pode ir para \"news:\" URLs"
+
+#~ msgid "You are not allowed to goto \"nntp:\" URLs"
+#~ msgstr "Você não pode ir para \"nntp:\" URLs"
+
+#~ msgid "You are not allowed to goto \"rlogin:\" URLs"
+#~ msgstr "Você não pode ir para \"rlogin:\" URLs"
+
+#~ msgid "You are not allowed to goto \"snews:\" URLs"
+#~ msgstr "Você não pode ir para \"snews:\" URLs"
+
+#~ msgid "You are not allowed to goto \"telnet:\" URLs"
+#~ msgstr "Você não pode ir para \"telnet:\" URLs"
+
+#~ msgid "You are not allowed to goto \"tn3270:\" URLs"
+#~ msgstr "Você não pode ir para \"tn3270:\" URLs"
+
+#~ msgid "You are not allowed to goto \"wais:\" URLs"
+#~ msgstr "Você não pode ir para \"wais:\" URLs"
+
+#~ msgid "This special URL is not allowed as a goto!"
+#~ msgstr "Você não pode ir para esta URL em particular."
+
+#~ msgid "Option choice (or page) number: "
+#~ msgstr "Opção (ou página) número:"
+
+#~ msgid "Choice number %d already is current."
+#~ msgstr "Escolha número %d ja está ativa."
+
+#~ msgid "You are already at the end of this choice list."
+#~ msgstr "Você ja está no fim desta lista de opções."
+
+#~ msgid "You are already at the beginning of this choice list."
+#~ msgstr "Você já esta no início desta lista de escolhas."
+
+#~ msgid "You are already at page %d of this choice list."
+#~ msgstr "Você ja está na página %d desta lista de escolhas."
+
+#~ msgid "You have entered an invalid choice number."
+#~ msgstr "Você entrou com um número de escolha inválido."
+
+#~ msgid "WARNING: Misrepresentation of the User-Agent may be a copyright violation!"
+#~ msgstr "Má representação do 'User-Agent' pode ser uma violação de direitos autorais!"
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "Máximo do histórico atingido. O documento não foi acrescentado."
+
+#~ msgid "Looking up %s."
+#~ msgstr "Conectando em %s."
+
+#~ msgid "Got redirection with a bad Location header."
+#~ msgstr "Recebido redirecionamento com uma localização inválida."
+
+#~ msgid "Got redirection with no Location header."
+#~ msgstr "Redirecionado sem um cabeçalho de localização."
+
+#~ msgid "KB"
+#~ msgstr "KB"
+
+#~ msgid "(From Cookie Jar)"
+#~ msgstr "(do Cookie Jar)"
+
+#~ msgid "create %s"
+#~ msgstr "criar %s"
+
+#~ msgid "Remove '%s' and all of its contents: "
+#~ msgstr "Remove '%s' e todos que ele contém:"
+
+#~ msgid "Remove directory and all of its contents: "
+#~ msgstr "Remove diretório e sub-diretórios:"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "Impossível abrir arquivo de menu de gerenciamento de arquivos."
+
+#~ msgid "Lynx ver. %s"
+#~ msgstr "Lynx ver. %s"
+
+#~ msgid "Personal_name: "
+#~ msgstr "Nome_Completo:"
+
+#~ msgid "X_Personal_name: "
+#~ msgstr "X_Nome_Completo: "
+
+#~ msgid "Personal Name: "
+#~ msgstr "Nome Completo: "
+
+#~ msgid "Searching type"
+#~ msgstr "Procurando tipo"
+
+#~ msgid "Document Layout"
+#~ msgstr "Formatação do documento"
+
+#~ msgid "Bookmark Options"
+#~ msgstr "Opções do Livro de Marcações"
+
+#~ msgid " failed"
+#~ msgstr " falhou"
+
+#~ msgid "Ignoring invalid HOME"
+#~ msgstr "Ignorando $HOME inválido"
+
+#~ msgid ""
+#~ "partial_thres specifies the number of lines Lynx should download and render\n"
+#~ "before we redraw the screen in Partial Display logic\n"
+#~ "e.g., partial_thres=2\n"
+#~ "would have Lynx redraw every 2 lines that it renders\n"
+#~ "partial_thres=-1 would use the entire screensize\n"
+#~ msgstr ""
+#~ "partial_thres especifica o número de linhas que o Lynx irá copiar antes \n"
+#~ "de apresentar a tela parcial. \n"
+#~ "ex. partial_thres=2\n"
+#~ "\"would have Lynx redraw every 2 lines that it renders\\n\"\n"
+#~ "\"partial_thres=-1 would use the entire screensize\"\n"
diff --git a/po/readme b/po/readme
new file mode 100644
index 00000000..c5dae390
--- /dev/null
+++ b/po/readme
@@ -0,0 +1,21 @@
+ 
+> I want to translate to xxxxxx. 
+ 
+The full list of messages is in lynx.pot, which is generated from looking 
+at the calls to gettext, use it as template for translations. 
+ 
+syntax: 
+ 
+#: src/LYMainLoop.c:1512 src/LYMainLoop.c:1516 
+msgid "Fatal error - could not open output file %s\n" 
+msgstr "" 
+ 
+First line is a comment beginning with #, for your information. 
+Original english string is <msgid>, do not change it. 
+Translation in <msgstr>, empty string assume english default. 
+Do not forget to include %s properly in your contributed translation! 
+ 
+A good place to start is with the messages derived from LYMessages_en.h 
+ 
+The Translation Project is collecting message translation files at
+http://www.iro.umontreal.ca/contrib/po/HTML/domain-lynx.html
diff --git a/po/ru.po b/po/ru.po
new file mode 100644
index 00000000..b13d46e9
--- /dev/null
+++ b/po/ru.po
@@ -0,0 +1,6159 @@
+# ðÅÒÅ×ÏÄ ÓÏÏÂÝÅÎÉÊ lynx.
+# Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+# Dmitry S. Sivachenko <dima@Chg.RU>, 1999, 2000, 2001, 2002.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.5pre15\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 2003-06-03 17:40+0400\n"
+"Last-Translator: Dmitry S. Sivachenko <mitya@cavia.pp.ru>\n"
+"Language-Team: Russian <ru@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=koi8-r\n"
+"Content-Transfer-Encoding: 8-bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "÷ÎÉÍÁÎÉÅ!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "äÏÂÒÏ ÐÏÖÁÌÏ×ÁÔØ"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ×ÙÊÔÉ?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "äÅÊÓÔ×ÉÔÅÌØÎÏ ×ÙÊÔÉ ÉÚ Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "óÏÅÄÉÎÅÎÉÅ ÐÒÅÒ×ÁÎÏ."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "ðÅÒÅÄÁÞÁ ÄÁÎÎÙÈ ÐÒÅÒ×ÁÎÁ."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "ïÔÍÅÎÅÎÏ!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "ïÔÍÅÎÁ!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "ïÔÌÉÞÎÏ!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "çÏÔÏ×Ï!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "ðÌÏÈÏÊ ÚÁÐÒÏÓ!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "ÐÒÅÄÙÄÕÝÉÊ"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "ÓÌÅÄÕÀÝÉÊ ÜËÒÁÎ"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "ðïíïýø!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", ÐÏÍÏÝØ ÐÏ "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "ëÏÍÁÎÄÙ: ÓÔÒÅÌËÉ - ÐÅÒÅÍÅÝÅÎÉÅ, '?' - ÐÏÍÏÝØ, 'q' - ×ÙÈÏÄ, '<-' - ÎÁÚÁÄ."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- ÎÁÖÍÉÔÅ ÐÒÏÂÅÌ ÄÌÑ ÐÒÏÄÏÌÖÅÎÉÑ, ÓÔÒÅÌËÉ - ÐÅÒÅÍÅÝÅÎÉÅ, '?' ÐÏÍÏÝØ, 'q' ×ÙÈÏÄ."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- ÎÁÖÍÉÔÅ ÐÒÏÂÅÌ ÄÌÑ ÐÅÒÅÈÏÄÁ ÎÁ ÓÌÅÄÕÀÝÕÀ ÓÔÒÁÎÉÃÕ --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL ÓÌÉÛËÏÍ ÄÌÉÎÎÙÊ"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(ðÏÌÅ ××ÏÄÁ ÔÅËÓÔÁ) îÅÁËÔÉ×ÎÏ.  îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ÁËÔÉ×ÉÚÁÃÉÉ."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Textarea) îÅÁËÔÉ×ÎÁ.  îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ÁËÔÉ×ÉÚÁÃÉÉ."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Textarea) îÅÁËÔÉ×ÎÁ.  îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ÁËÔÉ×ÉÚÁÃÉÉ (%s - ÒÅÄÁËÔÏÒ)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(ðÏÌÅ ÆÏÒÍÙ) îÅÁËÔÉ×ÎÏ.  éÓÐÏÌØÚÕÊÔÅ <××ÏÄ> ÄÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(ðÏÌÅ ÆÏÒÍÙ) îÅÁËÔÉ×ÎÏ.  <××ÏÄ> ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ (%s - ÐÏÓÌÁÔØ ÂÅÚ ËÜÛÉÒÏ×ÁÎÉÑ)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr ""
+"(ðÏÌÅ ÆÏÒÍÙ) îÅÁËÔÉ×ÎÏ. îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ, <××ÏÄ> Ä×ÁÖÄÙ - \n"
+"ÐÏÓÌÁÔØ."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(ðÏÌÅ ÆÏÒÍÙ mailto) îÅÁËÔÉ×ÎÏ.  îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ÉÚÍÅÎÅÎÉÑ."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(ðÏÌÅ ××ÏÄÁ ÐÁÒÏÌÑ) îÅÁËÔÉ×ÎÏ.  îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ÁËÔÉ×ÉÚÁÃÉÉ."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåíïäéæéãéòõåíïå ÐÏÌÅ ××ÏÄÁ ÆÁÊÌÁ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(ðÏÌÅ ××ÏÄÁ ÆÁÊÌÁ) ÷×ÅÄÉÔÅ ÉÍÑ ÆÁÊÌÁ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(ðÏÌÅ ××ÏÄÁ ÔÅËÓÔÁ) ÷×ÅÄÉÔÅ ÔÅËÓÔ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Textarea) ÷×ÅÄÉÔÅ ÔÅËÓÔ. óÔÒÅÌËÉ ÷÷åòè/÷îéú ÉÌÉ TAB - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Textarea) ÷×ÅÄÉÔÅ ÔÅËÓÔ. óÔÒÅÌËÉ ÷÷åòè/÷îéú ÉÌÉ TAB - ×ÙÈÏÄ (%s - ÒÅÄÁËÔÏÒ)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåíïäéæéãéòõåíïå ÐÏÌÅ ××ÏÄÁ ÔÅËÓÔÁ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(ðÏÌÅ ÆÏÒÍÙ) ÷×ÅÄÉÔÅ ÔÅËÓÔ.  <××ÏÄ> - ÐÏÓÌÁÔØ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(ðÏÌÅ ÆÏÒÍÙ) ÷×ÅÄÉÔÅ ÔÅËÓÔ.  <××ÏÄ> - ÐÏÓÌÁÔØ (%s ÄÌÑ ÚÁÐÒÅÔÁ ËÜÛÉÒÏ×ÁÎÉÑ)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(ðÏÌÅ ÆÏÒÍÙ) ÷×ÅÄÉÔÅ ÔÅËÓÔ.  <××ÏÄ> - ÐÏÓÌÁÔØ, ÓÔÒÅÌËÉ ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåíïäéæéãéòõåíïå ÐÏÌÅ ÆÏÒÍÙ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(ðÏÌÅ ÆÏÒÍÙ mailto) ÷×ÅÄÉÔÅ ÔÅËÓÔ.  <××ÏÄ> - ÐÏÓÌÁÔØ, ÓÔÒÅÌËÉ ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(ðÏÌÅ ÆÏÒÍÙ mailto) ïÔÐÒÁ×ËÁ ÐÏÞÔÙ ÚÁÐÒÅÝÅÎÁ, ÔÁË ÞÔÏ ×Ù ÎÅ ÍÏÖÅÔÅ ÐÏÓÌÁÔØ."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(ðÏÌÅ ××ÏÄÁ ÐÁÒÏÌÑ) ÷×ÅÄÉÔÅ ÔÅËÓÔ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåíïäéæéãéòõåíùê ÐÁÒÏÌØ ÆÏÒÍÙ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(ðÏÌÅ ÎÅÚÁ×ÉÓÉÍÏÊ ËÎÏÐËÉ)  ðÒÁ×ÁÑ ÓÔÒÅÌËÁ ÉÌÉ <××ÏÄ> - ÐÅÒÅËÌÀÞÅÎÉÅ."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåíïäéæéãéòõåíáñ ÎÅÚÁ×ÉÓÉÍÁÑ ËÎÏÐËÁ ÆÏÒÍÙ. óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(úÁ×ÉÓÉÍÁÑ ËÎÏÐËÁ)  ðÒÁ×ÁÑ ÓÔÒÅÌËÁ ÉÌÉ <××ÏÄ> - ÐÅÒÅËÌÀÞÅÎÉÅ."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåíïäéæéãéòõåíáñ ÚÁ×ÉÓÉÍÁÑ ËÎÏÐËÁ ÆÏÒÍÙ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "ðÏÓÌÁÔØ ('x' ÄÌÑ ÚÁÐÒÅÔÁ ËÜÛÉÒÏ×ÁÎÉÑ) "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "ðÏÓÌÁÔØ "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(ëÎÏÐËÁ ÐÏÓÙÌËÉ ÆÏÒÍÙ) -> ÉÌÉ <××ÏÄ> - ÐÏÓÌÁÔØ ('x' - ÚÁÐÒÅÔ ËÜÛÉÒÏ×ÁÎÉÑ)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(ëÎÏÐËÁ ÐÏÓÙÌËÉ ÆÏÒÍÙ) ðÒÁ×ÁÑ ÓÔÒÅÌËÁ ÉÌÉ <××ÏÄ> - ÐÏÓÌÁÔØ."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "ïôëìàþåîîáñ ËÎÏÐËÁ ÐÏÓÙÌËÉ ÆÏÒÍÙ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "ðÏÓÌÁÔØ ÆÏÒÍÕ ÐÏ ÐÏÞÔÅ "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(ëÎÏÐËÁ ÐÏÓÙÌËÉ ÆÏÒÍÙ ÐÏ ÐÏÞÔÅ) ðÒÁ×ÁÑ ÓÔÒÅÌËÁ ÉÌÉ <××ÏÄ> - ÐÏÓÌÁÔØ."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(ëÎÏÐËÁ ÐÏÓÙÌËÉ ÆÏÒÍÙ ÐÏ ÐÏÞÔÅ) ðÏÞÔÁ ÚÁÐÒÅÝÅÎÁ, ÔÁË ÞÔÏ ×Ù ÎÅ ÍÏÖÅÔÅ ÐÏÓÌÁÔØ."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(ëÎÏÐËÁ ÏÞÉÓÔËÉ ÆÏÒÍÙ)   ðÒÁ×ÁÑ ÓÔÒÅÌËÁ ÉÌÉ <××ÏÄ> - ÏÞÉÓÔÉÔØ ÆÏÒÍÕ."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "ïôëìàþåîîáñ ËÎÏÐËÁ ÏÞÉÓÔËÉ ÆÏÒÍÙ.  óÔÒÅÌËÉ ÷÷åòè, ÷îéú ÉÌÉ tab - ×ÙÈÏÄ."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(óÐÉÓÏË ÏÐÃÉÊ) îÁÖÍÉÔÅ ××ÏÄ É ÉÓÐÏÌØÚÕÊÔÅ ÓÔÒÅÌËÉ É ××ÏÄ ÄÌÑ ×ÙÂÏÒÁ ÏÐÃÉÉ."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(óÐÉÓÏË ×ÁÒÉÁÎÔÏ×) îÁÖÍÉÔÅ ××ÏÄ É ÉÓÐÏÌØÚÕÊÔÅ ÓÔÒÅÌËÉ É ××ÏÄ ÄÌÑ ×ÙÂÏÒÁ ×ÁÒÉÁÎÔÁ."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "îåíïäéæéãéòõåíùê ÓÐÉÓÏË ÏÐÃÉÊ.  ÷×ÏÄ ÉÌÉ ÓÔÒÅÌËÉ - ÐÒÏÓÍÏÔÒ ÉÌÉ ×ÙÈÏÄ."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "îåíïäéæéãéòõåíùê ÓÐÉÓÏË ×ÁÒÉÁÎÔÏ×.  ÷×ÏÄ ÉÌÉ ÓÔÒÅÌËÉ - ÐÒÏÓÍÏÔÒ ÉÌÉ ×ÙÈÏÄ."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "ðÏÓÙÌËÁ ÆÏÒÍÙ..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "ïÞÉÓÔËÁ ÆÏÒÍÙ..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "ïÂÎÏ×ÌÅÎÉÅ ÄÏËÕÍÅÎÔÁ.  úÎÁÞÅÎÉÑ ×ÓÅÈ ÐÏÌÅÊ ÆÏÒÍÙ ÂÕÄÕÔ ÐÏÔÅÒÑÎÙ!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "ðÒÅÄÕÐÒÅÖÄÅÎÉÅ: ÎÅ ÕÄÁÅÔÓÑ ÐÅÒÅËÏÄÉÒÏ×ÁÔØ ÄÁÎÎÙÅ ÆÏÒÍÙ × ËÏÄÉÒÏ×ËÕ %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(ïâùþîáñ óóùìëá)   éÓÐÏÌØÚÕÊÔÅ ÐÒÁ×ÕÀ ÓÔÒÅÌËÕ ÉÌÉ <××ÏÄ> ÄÌÑ ÁËÔÉ×ÉÚÁÃÉÉ."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "úÁÐÒÁÛÉ×ÁÅÍÙÊ ÒÅÓÕÒÓ × ÎÁÓÔÏÑÝÅÅ ×ÒÅÍÑ ÎÅÄÏÓÔÕÐÅÎ."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "÷×ÅÄÉÔÅ ËÏÍÁÎÄÕ Lynx: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "éÄÅÔ ÐÏÉÓË "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "ðÏÌÕÞÅÎÉÅ %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "ðÒÏÐÕÓË %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "îÅ×ÅÒÎÙÊ URL: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "îÅÐÒÁ×ÉÌØÎÏ ÓÆÏÒÍÉÒÏ×ÁÎÎÙÊ ÁÄÒÅÓ %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "îÅÔ ÄÏÓÔÕÐÁ Ë WWW-ÆÁÊÌÕ!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "üÔÏ ÐÏÉÓËÏ×ÙÊ ÉÎÄÅËÓ.  äÌÑ ÐÏÉÓËÁ ÉÓÐÏÌØÚÕÊÔÅ %s."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--äÁÌÅÅ--  üÔÏ ÐÏÉÓËÏ×ÙÊ ÉÎÄÅËÓ.  äÌÑ ÐÏÉÓËÁ ÉÓÐÏÌØÚÕÊÔÅ %s."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "÷Ù ××ÅÌÉ ÎÅ×ÅÒÎÙÊ ÎÏÍÅÒ ÓÓÙÌËÉ."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "éÄÅÔ ÐÒÏÓÍÏÔÒ ÉÓÈÏÄÎÏÇÏ ÔÅËÓÔÁ ÄÏËÕÍÅÎÔÁ.  îÁÖÍÉÔÅ '\\' ÄÌÑ ×ÏÚ×ÒÁÔÁ Ë ÒÅÖÉÍÕ ×ÉÚÕÁÌÉÚÁÃÉÉ."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "óÔÒÅÌËÉ: ÷×ÅÒÈ, ÷ÎÉÚ - ÐÅÒÅÍÅÝÅÎÉÅ. ÷ÐÒÁ×Ï - ÐÅÒÅÈÏÄ ÐÏ ÓÓÙÌËÅ; ÷ÌÅ×Ï - ×ÏÚ×ÒÁÔ.\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " H)elp O)ptions P)rint G)o M)çÌÁ× ÜËÒÁÎ Q)uit /=ÐÏÉÓË [delete]=ÓÐÉÓÏË ÉÓÔÏÒÉÉ \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "  O)äÒ. ËÏÍ.  H)elp  K)eymap  G)oto  P)ðÅÞÁÔØ  M)çÌÁ× ÜËÒÁÎ  o)ðÁÒÁÍ  Q)÷ÙÈÏÄ\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "  O)äÒ. ËÏÍ.  B)ack  E)òÅÄ  D)ÚÁÇÒÕÚÉÔØ ^R)eload ^W)ipe screen  ÐÏÉÓË × ÄÏË: / \n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O)äÒ. ËÏÍ.  C)omment  éÓÔÏÒÉÑ: <backspace>  úÁËÌÁÄËÉ: V)iew, A)dd, R)emove \n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "                   ÷×ÅÄÉÔÅ × ÐÏÌÅ ÔÅËÓÔ Ó ËÌÁ×ÉÁÔÕÒÙ                         "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "  Ctrl-U - ÕÄÁÌÅÎÉÅ ×ÓÅÇÏ ÔÅËÓÔÁ × ÐÏÌÅ, [Backspace] - ÕÄÁÌÅÎÉÅ ÏÄÎÏÇÏ ÓÉÍ×ÏÌÁ"
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr " Ctrl-U - ÕÄÁÌÅÎÉÅ ×ÓÅÇÏ ÔÅËÓÔÁ × ÐÏÌÅ, [Backspace] - ÕÄÁÌÅÎÉÅ ÏÄÎÏÇÏ ÓÉÍ×ÏÌÁ "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "  %s - ÕÄÁÌÅÎÉÅ ×ÓÅÇÏ ÔÅËÓÔÁ × ÐÏÌÅ, [Backspace] - ÕÄÁÌÅÎÉÅ ÏÄÎÏÇÏ ÓÉÍ×ÏÌÁ "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "  %s - ÕÄÁÌÅÎÉÅ ×ÓÅÇÏ ÔÅËÓÔÁ × ÐÏÌÅ, [Backspace] - ÕÄÁÌÅÎÉÅ ÏÄÎÏÇÏ ÓÉÍ×ÏÌÁ "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "îÅÐÒÁ×ÉÌØÎÏ ÓÆÏÒÍÉÒÏ×ÁÎÎÁÑ ÐÏÓÙÌËÁ ÆÏÒÍÙ ÐÏ ÐÏÞÔÅ!  ïÔÍÅÎÅÎÏ!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "ðÒÅÄÕÐÒÅÖÄÅÎÉÅ!  õÐÒÁ×ÌÑÀÝÉÅ ËÏÄÙ × ÐÏÞÔÏ×ÏÍ ÁÄÒÅÓÅ ÚÁÍÅÎÅÎÙ ÎÁ ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "ðÏÞÔÁ ÚÁÐÒÅÝÅÎÁ!  îÅ ÕÄÁÅÔÓÑ ÐÏÓÌÁÔØ."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "ðÏÓÙÌËÁ ÆÏÒÍÙ ÐÏ ÐÏÞÔÅ ÎÅ ×ÙÐÏÌÎÅÎÁ!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "ðÏÓÙÌËÁ ÆÏÒÍÙ ÐÏ ÐÏÞÔÅ ÏÔÍÅÎÅÎÁ!!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "ðÏÓÙÌËÁ ÓÏÄÅÒÖÉÍÏÇÏ ÆÏÒÍÙ..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "ïÔÓÕÔÓÔ×ÕÅÔ ÐÏÞÔÏ×ÙÊ ÁÄÒÅÓ × mailto URL!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ×ÒÅÍÅÎÎÙÊ ÆÁÊÌ ÄÌÑ mailto URL!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "÷Ù ÈÏÔÉÔÅ ×ËÌÀÞÉÔØ ÉÓÈÏÄÎÏÅ ÓÏÏÂÝÅÎÉÅ?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "÷Ù ÈÏÔÉÔÅ ×ËÌÀÞÉÔØ ÒÁÚÏÂÒÁÎÎÙÊ ÉÓÈÏÄÎÙÊ ÔÅËÓÔ?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "úÁÐÕÓË ×ÁÛÅÇÏ ×ÙÂÒÁÎÎÏÇÏ ÒÅÄÁËÔÏÒÁ ÄÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÐÏÞÔÏ×ÏÇÏ ÓÏÏÂÝÅÎÉÑ"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "ïÛÉÂËÁ ÐÒÉ ÚÁÐÕÓËÅ ÒÅÄÁËÔÏÒÁ, ÐÒÏ×ÅÒØÔÅ ÏÐÒÅÄÅÌÅÎÉÅ ÒÅÄÁËÔÏÒÁ × ÍÅÎÀ ÐÁÒÁÍÅÔÒÏ×"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "ðÏÓÌÁÔØ ÜÔÏÔ ËÏÍÍÅÎÔÁÒÉÊ?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "ðÏÓÌÁÔØ ÜÔÏ ÓÏÏÂÝÅÎÉÅ?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "ðÏÓÙÌËÁ ×ÁÛÅÇÏ ÓÏÏÂÝÅÎÉÑ..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "ðÏÓÙÌËÁ ×ÁÛÅÇÏ ËÏÍÍÅÎÔÁÒÉÑ:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ ×ÎÅÛÎÅÇÏ ÒÅÄÁËÔÏÒÁ, ÎÁÈÏÄÑÓØ ×ÎÅ TEXTAREA, ÎÅ×ÏÚÍÏÖÎÏ."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ ËÏÍÁÎÄÙ, ÎÁÈÏÄÑÓØ ×ÎÅ TEXTAREA, ÎÅ×ÏÚÍÏÖÎÏ."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "ÆÁÊÌ: äåêóô÷éñ ÚÁÐÒÅÝÅÎÙ!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr ""
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "äÏÓÔÕÐ Ë ÌÏËÁÌØÎÙÍ ÆÁÊÌÁÍ ÚÁÐÒÅÝÅÎ."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "ÆÁÊÌ: URL ÞÅÒÅÚ ÚÁËÌÁÄËÉ ÚÁÐÒÅÝÅÎÙ!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "üÔÏÔ ÓÐÅÃÉÁÌØÎÙÊ URL ÎÅ ÄÏÐÕÓËÁÅÔÓÑ ×Ï ×ÎÅÛÎÅÍ ÄÏËÕÍÅÎÔÅ!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ×ÏÚ×ÒÁÔÁ × Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "úÁÐÕÓËÁÅÔÓÑ ÐÏÄÐÒÏÃÅÓÓ DCL. éÓÐÏÌØÚÕÊÔÅ 'logout' ÄÌÑ ×ÏÚ×ÒÁÔÁ × Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "÷×ÅÄÉÔÅ EXIT ÄÌÑ ×ÏÚ×ÒÁÔÁ × Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "úÁÐÕÓË ×ÁÛÅÊ ÏÂÏÌÏÞËÉ ÐÏ ÕÍÏÌÞÁÎÉÀ.  éÓÐÏÌØÚÕÊÔÅ 'exit' ÄÌÑ ×ÏÚ×ÒÁÔÁ × Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "úÁÐÕÓË ÐÒÏÃÅÓÓÏ× ÓÅÊÞÁÓ ÚÁÐÒÅÝÅÎ."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "ëÏÍÁÎÄÁ 'd' (ÓËÁÞÁÔØ) ÓÅÊÞÁÓ ÚÁÐÒÅÝÅÎÁ."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "÷Ù ÎÅ ÍÏÖÅÔÅ ÓËÁÞÁÔØ ÐÏÌÅ ××ÏÄÁ."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "äÅÊÓÔ×ÉÅÍ ÆÏÒÍÙ Ñ×ÌÑÅÔÓÑ ÐÏÓÙÌËÁ ÐÏ ÐÏÞÔÅ!  îÅ×ÏÚÍÏÖÎÏ ÓËÁÞÁÔØ."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "÷Ù ÎÅ ÍÏÖÅÔÅ ÓËÁÞÁÔØ ÓÓÙÌËÕ mailto:."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "÷Ù ÎÅ ÍÏÖÅÔÅ ÓËÁÞÁÔØ cookie."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "÷Ù ÎÅ ÍÏÖÅÔÅ ÓËÁÞÁÔØ ÐÁÒÁÍÅÔÒ ÐÅÞÁÔÉ."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "÷Ù ÎÅ ÍÏÖÅÔÅ ÓËÁÞÁÔØ ÉÌÉ ÚÁÇÒÕÚÉÔØ ÐÁÒÁÍÅÔÒ."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr ""
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "üÔÏÔ ÓÐÅÃÉÁÌØÎÙÊ URL ÎÅ ÍÏÖÅÔ ÂÙÔØ ÓËÁÞÁÎ!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "óËÁÞÉ×ÁÔØ ÎÅÞÅÇÏ."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "ôÒÁÓÓÉÒÏ×ËÁ ÷ëìàþåîá!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "ôÒÁÓÓÉÒÏ×ËÁ ÷ùëìàþåîá!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "óÓÙÌËÉ ÂÕÄÕÔ ×ËÌÀÞÅÎÙ ÄÌÑ ×ÓÅÈ ÉÚÏÂÒÁÖÅÎÉÊ!  ïÂÎÏ×ÌÅÎÉÅ..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "óÔÁÎÄÁÒÔÎÁÑ ÏÂÒÁÂÏÔËÁ ÉÚÏÂÒÁÖÅÎÉÊ ×ÏÓÓÔÁÎÏ×ÌÅÎÁ!  ïÂÎÏ×ÌÅÎÉÅ..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "ðÓÅ×ÄÏ-ALT ÂÕÄÕÔ ×ÓÔÁ×ÌÅÎÙ ÄÌÑ ×ÎÕÔÒÉÓÔÒÏÞÎÙÈ ÉÚÏÂÒÁÖÅÎÉÊ ÂÅÚ ALT. ïÂÎÏ×ÌÅÎÉÅ..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "÷ÎÕÔÒÉÓÔÒÏÞÎÙÅ ÉÚÏÂÒÁÖÅÎÉÑ ÂÅÚ ÁÔÒÉÂÕÔÁ ALT ÂÕÄÕÔ ÉÇÎÏÒÉÒÏ×ÁÔØÓÑ!  ïÂÎÏ×ÌÅÎÉÅ..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "îÅÏÂÒÁÂÏÔÁÎÎÙÊ 8-ÂÉÔÎÙÊ ÉÌÉ CJK-ÒÅÖÉÍ ÷ùëìàþåî!  ïÂÎÏ×ÌÅÎÉÅ..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "îÅÏÂÒÁÂÏÔÁÎÎÙÊ 8-ÂÉÔÎÙÊ ÉÌÉ CJK-ÒÅÖÉÍ ÷ëìàþåî!  ïÂÎÏ×ÌÅÎÉÅ..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "ðÏÓÌÁÔØ ÚÁÐÒÏÓ HEAD ÄÌÑ D)ÄÏËÕÍÅÎÔÁ ÉÌÉ L)ÓÓÙÌËÉ, ÉÌÉ C)ïÔÍÅÎÉÔØ? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "ðÏÓÌÁÔØ ÚÁÐÒÏÓ HEAD ÄÌÑ D)ÄÏËÕÍÅÎÔÁ, ÉÌÉ C)ÏÔÍÅÎÉÔØ? (d,c): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "éÚ×ÉÎÉÔÅ, ÄÏËÕÍÅÎÔ ÎÅ Ñ×ÌÑÅÔÓÑ http URL."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "éÚ×ÉÎÉÔÅ, ÓÓÙÌËÁ ÎÅ Ñ×ÌÑÅÔÓÑ http URL."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "éÚ×ÉÎÉÔÅ, äåêóô÷éå ÄÌÑ ÜÔÏÊ ÆÏÒÍÙ ÏÔËÌÀÞÅÎÏ."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "éÚ×ÉÎÉÔÅ, äåêóô÷éå ÄÌÑ ÜÔÏÊ ÆÏÒÍÙ ÎÅ Ñ×ÌÑÅÔÓÑ http URL."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "îÅ http URL ÉÌÉ äåêóô÷éå ÆÏÒÍÙ!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "üÔÏÔ ÓÐÅÃÉÁÌØÎÙÊ URL ÎÅ ÍÏÖÅÔ ÂÙÔØ äåêóô÷éåí ÆÏÒÍÙ!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "URL ÎÁÈÏÄÉÔÓÑ ×ÎÅ ÎÁÞÁÌØÎÏÊ ÏÂÌÁÓÔÉ!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "ðÏÓÙÌËÁ ÎÏ×ÏÓÔÅÊ ÚÁÐÒÅÝÅÎÁ!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "ðÏÄÄÅÒÖËÁ ÒÁÂÏÔÙ Ó ÆÁÊÌÁÍÉ ÏÔËÌÀÞÅÎÁ!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "÷ ÄÁÎÎÙÊ ÍÏÍÅÎÔ ÎÅÔ ÄÏÓÔÕÐÎÏÇÏ ÆÁÊÌÁ ÐÅÒÅÈÏÄÏ×."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "ðÅÒÅÊÔÉ Ë (ÉÓÐÏÌØÚÕÊÔÅ '?' ÄÌÑ ÓÐÉÓËÁ): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "ðÅÒÅÈÏÄ ÐÏ ÓÏËÒÁÝÅÎÎÏÍÕ URL ÚÁÐÒÅÝÅÎ!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "óÌÕÞÁÊÎÙÅ URL ÚÁÐÒÅÝÅÎÙ!  éÓÐÏÌØÚÕÊÔÅ ÓÏËÒÁÝÅÎÉÅ."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "óÌÕÞÁÊÎÙÅ URL ÄÏ ÓÉÈ ÐÏÒ ÎÅ ÉÓÐÏÌØÚÏ×ÁÌÉÓØ."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "úÁËÌÁÄËÉ ÓÅÊÞÁÓ ÏÔËÌÀÞÅÎÙ."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "÷ÙÐÏÌÎÅÎÉÅ ÞÅÒÅÚ ÚÁËÌÁÄËÉ ÏÔËÌÀÞÅÎÏ."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "æÁÊÌ ÚÁËÌÁÄÏË ÎÅ ÏÐÒÅÄÅÌÅÎ. éÓÐÏÌØÚÕÊÔÅ %s ÄÌÑ ÐÒÏÓÍÏÔÒÁ ÏÐÃÉÊ."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ×ÒÅÍÅÎÎÙÊ ÆÁÊÌ ÄÌÑ ÐÒÅÏÂÒÁÚÏ×ÁÎÉÑ ÚÁËÌÁÄÏË X Mosaic."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "ïûéâëá - ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ÆÁÊÌ ÚÁËÌÁÄÏË."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ÆÁÊÌ ÚÁËÌÁÄÏË ÄÌÑ ÕÄÁÌÅÎÉÑ ÓÓÙÌËÉ."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ÒÁÂÏÞÉÊ ÆÁÊÌ ÄÌÑ ÕÄÁÌÅÎÉÑ ÓÓÙÌËÉ."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "ïÛÉÂËÁ ÐÅÒÅÉÍÅÎÏ×ÁÎÉÑ ÒÁÂÏÞÅÇÏ ÆÁÊÌÁ."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "ïÛÉÂËÁ ÐÅÒÅÉÍÅÎÏ×ÁÎÉÑ ×ÒÅÍÅÎÎÏÇÏ ÆÁÊÌÁ."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÓËÏÐÉÒÏ×ÁÔØ ×ÒÅÍÅÎÎÙÊ ÆÁÊÌ ÄÌÑ ÕÄÁÌÅÎÉÑ ÓÓÙÌËÉ."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÚÁÎÏ×Ï ÏÔËÒÙÔØ ×ÒÅÍÅÎÎÙÊ ÆÁÊÌ ÄÌÑ ÕÄÁÌÅÎÉÑ ÓÓÙÌËÉ."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "óÓÙÌËÁ ÎÅ ÎÁÈÏÄÉÔÓÑ ÃÅÌÉËÏÍ ÎÁ ÏÄÎÏÊ ÓÔÒÏËÅ ÆÁÊÌÁ ÚÁËÌÁÄÏË."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "ïÛÉÂËÁ ÐÒÉ ÕÄÁÌÅÎÉÉ ÚÁËÌÁÄËÉ."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "ðÒÏÈÏÖÄÅÎÉÅ ÐÏ ÆÁÊÌÁÍ ÚÁËÌÁÄÏË ÎÅ×ÏÚÍÏÖÎÏ (ÔÏÌØËÏ ÐÏ http URL)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ÆÁÊÌ ÚÁËÌÁÄÏË, ÓÎÁÞÁÌÁ ÉÓÐÏÌØÚÕÊÔÅ 'a' ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ ÓÓÙÌËÉ"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "÷ ÜÔÏÍ ÆÁÊÌÅ ÚÁËÌÁÄÏË ÎÅÔ ÓÓÙÌÏË!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "ðÏÓÌÁÔØ ÚÁÐÒÏÓ HEAD ÄÌÑ D)ÄÏËÕÍÅÎÔÁ, ÉÌÉ C)ÏÔÍÅÎÉÔØ? (d,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "óÏÈÒÁÎÉÔØ D)ÄÏËÕÍÅÎÔ ÉÌÉ L)ÓÓÙÌËÕ × ÆÁÊÌ ÚÁËÌÁÄÏË ÉÌÉ C)ÏÔÍÅÎÉÔØ? (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "óÏÈÒÁÎÉÔØ D)ÄÏËÕÍÅÎÔ × ÆÁÊÌ ÚÁËÌÁÄÏË ÉÌÉ C)ÏÔÍÅÎÉÔØ? (d,c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "óÏÈÒÁÎÉÔØ L)ÓÓÙÌËÕ × ÆÁÊÌ ÚÁËÌÁÄÏË ÉÌÉ C)ÏÔÍÅÎÉÔØ? (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "äÏËÕÍÅÎÔÙ ÉÚ ÆÏÒÍ Ó ÓÏÄÅÒÖÉÍÙÍ POST ÎÅ ÍÏÇÕÔ ÂÙÔØ ÓÏÈÒÁÎÅÎÙ ËÁË ÚÁËÌÁÄËÉ."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÓÏÈÒÁÎÉÔØ ÐÏÌÑ/ÓÓÙÌËÉ ÆÏÒÍÙ"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "éÓÔÏÒÉÑ, ÉÎÆÏÒÍÁÃÉÑ, ÍÅÎÀ É ÆÁÊÌÙ ÓÐÉÓËÏ× ÎÅ ÍÏÇÕÔ ÂÙÔØ ÓÏÈÒÁÎÅÎÙ ËÁË ÚÁËÌÁÄËÉ."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "÷Ù ÄÅÊÓÔ×ÉÔÅÌØÎÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÜÔÕ ÓÓÙÌËÕ ÉÚ ÆÁÊÌÁ ÚÁËÌÁÄÏË?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "îÅÐÒÁ×ÉÌØÎÏ ÓÆÏÒÍÉÒÏ×ÁÎÎÙÊ ÁÄÒÅÓ."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "éÓÔÏÒÉÞÅÓËÉÊ ÓÐÏÓÏ ÒÁÚÂÏÒÁ ËÏÍÍÅÎÔÁÒÉÅ× ÷ëìàþåî (ÚÁÍÅÝÁÅÔ íÉÎÉÍÁÌØÎÙÊ)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "éÓÔÏÒÉÞÅÓËÉÊ ÓÐÏÓÏ ÒÁÚÂÏÒÁ ËÏÍÍÅÎÔÁÒÉÅ× ÷ùëìàþåî (íÉÎÉÍÁÌØÎÙÊ ÄÅÊÓÔ×ÕÅÔ)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "éÓÔÏÒÉÞÅÓËÉÊ ÓÐÏÓÏ ÒÁÚÂÏÒÁ ËÏÍÍÅÎÔÁÒÉÅ× ÷ëìàþåî (ÚÁÍÅÝÁÅÔ ðÒÁ×ÉÌØÎÙÊ)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "éÓÔÏÒÉÞÅÓËÉÊ ÓÐÏÓÏ ÒÁÚÂÏÒÁ ËÏÍÍÅÎÔÁÒÉÅ× ÷ùëìàþåî (ðÒÁ×ÉÌØÎÙÊ ÄÅÊÓÔ×ÕÅÔ)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "íÉÎÉÍÁÌØÎÙÊ ÓÐÏÓÏ ÒÁÚÂÏÒÁ ËÏÍÍÅÎÔÁÒÉÅ× ÷ëìàþåî (É ÄÅÊÓÔ×ÕÅÔ)!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "íÉÎÉÍÁÌØÎÙÊ ÓÐÏÓÏ ÒÁÚÂÏÒÁ ËÏÍÍÅÎÔÁÒÉÅ× ÷ùëìàþåî (ðÒÁ×ÉÌØÎÙÊ ÄÅÊÓÔ×ÕÅÔ)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "íÉÎÉÍÁÌØÎÙÊ ÓÐÏÓÏ ÒÁÚÂÏÒÁ ËÏÍÍÅÎÔÁÒÉÅ× ÷ëìàþåî (ÎÏ éÓÔÏÒÉÞÅÓËÉÊ ÄÅÊÓÔ×ÕÅÔ)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "íÉÎÉÍÁÌØÎÙÊ ÓÐÏÓÏ ÒÁÚÂÏÒÁ ËÏÍÍÅÎÔÁÒÉÅ× ÷ùëìàþåî (éÓÔÏÒÉÞÅÓËÉÊ ÄÅÊÓÔ×ÕÅÔ)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "íÑÇËÉÊ ÒÁÚÂÏÒ Ä×ÏÊÎÙÈ ËÁ×ÙÞÅË ÷ëìàþåî!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "íÑÇËÉÊ ÒÁÚÂÏÒ Ä×ÏÊÎÙÈ ËÁ×ÙÞÅË ÷ùëìàþåî!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "ôÅÐÅÒØ ÉÓÐÏÌØÚÕÅÔÓÑ ÍÅÔÏÄ TagSoup ÒÁÚÂÏÒÁ HTML."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "ôÅÐÅÒØ ÉÓÐÏÌØÚÕÅÔÓÑ ÍÅÔÏÄ SortaSGML ÒÁÚÂÏÒÁ HTML!"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "÷Ù ÕÖÅ ÎÁÈÏÄÉÔÅÓØ × ËÏÎÃÅ ÜÔÏÇÏ ÄÏËÕÍÅÎÔÁ."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "÷Ù ÕÖÅ ÎÁÈÏÄÉÔÅÓØ × ÎÁÞÁÌÅ ÜÔÏÇÏ ÄÏËÕÍÅÎÔÁ."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "÷Ù ÕÖÅ ÎÁÈÏÄÉÔÅÓØ ÎÁ ÓÔÒÁÎÉÃÅ %d ÜÔÏÇÏ ÄÏËÕÍÅÎÔÁ."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "óÓÙÌËÁ ÎÏÍÅÒ %d ÕÖÅ Ñ×ÌÑÅÔÓÑ ÔÅËÕÝÅÊ."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "÷Ù ÕÖÅ ÎÁÈÏÄÉÔÅÓØ ÎÁ ÐÅÒ×ÏÍ ÄÏËÕÍÅÎÔÅ"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "÷ÙÛÅ ÜÔÏÊ ÓÔÒÏËÉ ÄÏËÕÍÅÎÔÁ ÓÓÙÌÏË ÎÅÔ."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "îÉÖÅ ÜÔÏÊ ÓÔÒÏËÉ ÄÏËÕÍÅÎÔÁ ÓÓÙÌÏË ÎÅÔ."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "íÁËÓÉÍÁÌØÎÁÑ ÄÌÉÎÁ ÄÏÓÔÉÇÎÕÔÁ!  õÄÁÌÉÔÅ ÔÅËÓÔ ÉÌÉ ×ÙÊÄÅÔÅ Ó ÐÏÌÑ."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "÷Ù ÎÁÈÏÄÉÔÅÓØ ÎÅ ÎÁ ËÎÏÐËÅ ÐÏÓÙÌËÉ ÆÏÒÍÙ ÉÌÉ ÏÂÙÞÎÏÊ ÓÓÙÌËÅ."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "÷ÓÅ ×ÒÅÍÑ ÄÏÌÖÎÁ ÂÙÔØ ×ÙÂÒÁÎÁ ÏÄÎÁ ÚÁ×ÉÓÉÍÁÑ ËÎÏÐËÁ!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "÷ ÜÔÏÊ ÆÏÒÍÅ ÎÅÔ ËÎÏÐËÉ ÐÏÓÙÌËÉ, ÐÏÓÌÁÔØ ÏÄÎÏ ÔÅËÓÔÏ×ÏÅ ÐÏÌÅ?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "÷Ù ÈÏÔÉÔÅ ×ÅÒÎÕÔØÓÑ ÎÁÚÁÄ Ë ÐÒÅÄÙÄÕÝÅÍÕ ÄÏËÕÍÅÎÔÕ?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "éÓÐÏÌØÚÕÊÔÅ ÓÔÒÅÌËÉ ÉÌÉ tab ÄÌÑ ×ÙÈÏÄÁ ÉÚ ÐÏÌÑ."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "÷×ÅÄÉÔÅ ÔÅËÓÔ.  éÓÐÏÌØÚÕÊÔÅ ÓÔÒÅÌËÉ ÉÌÉ tab ÄÌÑ ×ÙÈÏÄÁ ÉÚ ÐÏÌÑ."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** ðÌÏÈÏÊ HTML!!  îÅ ÏÐÒÅÄÅÌÅÎÏ ÄÅÊÓÔ×ÉÅ ÆÏÒÍÙ. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "ðÌÏÈÏÊ HTML!!  îÅ×ÏÚÍÏÖÎÏ ÓÏÚÄÁÔØ ×ÓÐÌÙ×ÁÀÝÅÅ ÏËÎÏ!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÓÏÚÄÁÔØ ×ÓÐÌÙ×ÁÀÝÅÅ ÏËÎÏ!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "ðÅÒÅÈÏÄ Ë ÓÌÕÞÁÊÎÏÍÕ URL ÚÁÐÒÅÝÅÎ!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "ðÅÒÅÈÏÄ Ë ÎÅ-http URL ÚÁÐÒÅÝÅÎ!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "÷ÁÍ ÎÅ ÒÁÚÒÅÛÅÎÏ ÐÅÒÅÈÏÄÉÔØ Ë \"%s\" URLs"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "ïÔËÒÙÔØ URL: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "òÅÄÁËÔÉÒÏ×ÁÎÉÅ ÔÅËÕÝÅÇÏ URL ÄÌÑ ÐÅÒÅÈÏÄÁ: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "òÅÄÁËÔÉÒÏ×ÁÎÉÅ ÐÒÅÄÙÄÕÝÅÇÏ URL ÄÌÑ ÐÅÒÅÈÏÄÁ: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "òÅÄÁËÔÉÒÏ×ÁÎÉÅ ÐÒÅÄÙÄÕÝÅÇÏ URL ÄÌÑ ÐÅÒÅÈÏÄÁ: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "ôÅËÕÝÉÊ ÄÏËÕÍÅÎÔ ÉÍÅÅÔ POST-ÄÁÎÎÙÅ."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "òÅÄÁËÔÉÒÏ×ÁÎÉÅ URL ÜÔÏÇÏ ÄÏËÕÍÅÎÔÁ: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "òÅÄÁËÔÉÒÏ×ÁÎÉÅ URL ÔÅËÕÝÅÊ ÓÓÙÌËÉ: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "÷Ù ÎÅ ÍÏÖÅÔÅ ÒÅÄÁËÔÉÒÏ×ÁÔØ URL òÁÂÏÔÙ Ó æÁÊÌÁÍÉ"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "÷×ÅÄÉÔÅ ÚÁÐÒÏÓ Ë ÂÁÚÅ ÄÁÎÎÙÈ: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "÷×ÅÄÉÔÅ ÚÁÐÒÏÓ ÎÁ ÐÏÉÓË: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "ïÔÒÅÄÁËÔÉÒÕÊÔÅ ÔÅËÕÝÉÊ ÚÁÐÒÏÓ: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "ïÔÒÅÄÁËÔÉÒÕÊÔÅ ÐÒÅÄÙÄÕÝÉÊ ÚÁÐÒÏÓ: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "ïÔÒÅÄÁËÔÉÒÕÊÔÅ ÐÒÅÄÙÄÕÝÉÊ ÚÁÐÒÏÓ: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "éÓÐÏÌØÚÕÊÔÅ Control-R, ÞÔÏÂÙ ÐÏÓÌÁÔØ ÚÁÎÏ×Ï ÔÅËÕÝÉÊ ÚÁÐÒÏÓ."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "ïÔÒÅÄÁËÔÉÒÕÊÔÅ ÔÅËÕÝÅÅ ÓÏËÒÁÝÅÎÉÅ: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "ïÔÒÅÄÁËÔÉÒÕÊÔÅ ÐÒÅÄÙÄÕÝÅÅ ÓÏËÒÁÝÅÎÉÅ: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "ïÔÒÅÄÁËÔÉÒÕÊÔÅ ÐÒÅÄÙÄÕÝÅÅ ÓÏËÒÁÝÅÎÉÅ: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "ëÌÀÞ '%c' ÎÅ ÏÔÏÂÒÁÖÁÅÔÓÑ × ÆÁÊÌ ÐÅÒÅÈÏÄÏ×!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÂÎÁÒÕÖÉÔØ ÆÁÊÌ ÐÅÒÅÈÏÄÏ×!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ ÐÅÒÅÈÏÄÏ×!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "ïÛÉÂËÁ ÞÔÅÎÉÑ ÆÁÊÌÁ ÐÅÒÅÈÏÄÏ×!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "îÅ È×ÁÔÁÅÔ ÐÁÍÑÔÉ ÄÌÑ ÞÔÅÎÉÑ ÆÁÊÌÁ ÐÅÒÅÈÏÄÏ×!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "îÅ È×ÁÔÁÅÔ ÐÁÍÑÔÉ ÄÌÑ ÞÔÅÎÉÑ ÔÁÂÌÉÃÙ ÐÅÒÅÈÏÄÏ×!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "óÅÊÞÁÓ ÎÅÔ ÄÏÓÔÕÐÎÏÇÏ ÉÎÄÅËÓÁ."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "÷Ù ÄÅÊÓÔ×ÉÔÅÌØÎÏ ÈÏÔÉÔÅ ÐÅÒÅÊÔÉ Ë çÌÁ×ÎÏÍÕ ÜËÒÁÎÕ?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "÷Ù ÕÖÅ ÎÁÈÏÄÉÔÅÓØ ÎÁ ÇÌÁ×ÎÏÍ ÜËÒÁÎÅ!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "îÅ ÐÏÉÓËÏ×ÙÊ ÉÎÄÅËÓÉÒÏ×ÁÎÎÙÊ ÄÏËÕÍÅÎÔ - ÎÁÖÍÉÔÅ '/' ÄÌÑ ÐÏÉÓËÁ ÐÏ ÓÔÒÏËÅ ÔÅËÓÔÁ"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "äÌÑ ÜÔÏÇÏ ÆÁÊÌÁ ÎÅ ÏÐÒÅÄÅÌÅÎ ×ÌÁÄÅÌÅÃ, ÔÁË ÞÔÏ ×Ù ÎÅ ÍÏÖÅÔÅ ÐÏÓÌÁÔØ ËÏÍÍÅÎÔÁÒÉÊ"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "÷ÌÁÄÅÌÅà ÎÅ ÏÐÒÅÄÅÌÅÎ. éÓÐÏÌØÚÕÊÔÅ %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "÷Ù ÈÏÔÉÔÅ ÐÏÓÌÁÔØ ËÏÍÍÅÎÔÁÒÉÊ?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "ðÏÞÔÁ ÚÁÐÒÅÝÅÎÁ, ÔÁË ÞÔÏ ×Ù ÎÅ ÍÏÖÅÔÅ ÐÏÓÌÁÔØ ËÏÍÍÅÎÔÁÒÉÊ"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "ëÏÍÁÎÄÁ e)ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÓÅÊÞÁÓ ÏÔËÌÀÞÅÎÁ."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "÷ÎÅÛÎÅÅ ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ ÓÅÊÞÁÓ ÏÔËÌÀÞÅÎÏ."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "óÉÓÔÅÍÎÁÑ ÏÛÉÂËÁ - ÎÅ ÕÄÁÅÔÓÑ ÐÏÌÕÞÉÔØ ÓÔÁÔÕÓ."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "òÅÄÁËÔÏÒ ÎÅ ÏÐÒÅÄÅÌÅÎ!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "ëÏÍÁÎÄÁ p)ÐÅÞÁÔÉ ÓÅÊÞÁÓ ÏÔËÌÀÞÅÎÁ."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "äÏËÕÍÅÎÔ ÎÅ ÉÍÅÅÔ ÓÓÙÌÏË Toolbar ÉÌÉ Banner."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ ÐÒÏÈÏÖÄÅÎÉÑ."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr ""
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr ""
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr ""
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "ðïèïöäåîéå ðòåò÷áîï"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "ðÅÒÅÈÏÄ ÐÏ ÓÓÙÌËÅ (ÉÌÉ Ë ÓÓÙÌËÅ ÉÌÉ ÓÔÒÁÎÉÃÅ) Ó ÎÏÍÅÒÏÍ: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "÷ÙÂÅÒÉÔÅ ÎÏÍÅÒ ÏÐÃÉÉ (ÉÌÉ ÓÔÒÁÎÉÃÙ): "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "ïÐÃÉÑ ÎÏÍÅÒ %d ÕÖÅ Ñ×ÌÑÅÔÓÑ ÔÅËÕÝÅÊ."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "÷Ù ÕÖÅ ÎÁÈÏÄÉÔÅÓØ × ËÏÎÃÅ ÜÔÏÇÏ ÓÐÉÓËÁ ÏÐÃÉÊ."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "÷Ù ÕÖÅ ÎÁÈÏÄÉÔÅÓØ × ÎÁÞÁÌÅ ÜÔÏÇÏ ÓÐÉÓËÁ ÏÐÃÉÊ."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "÷Ù ÕÖÅ ÎÁÈÏÄÉÔÅÓØ ÎÁ ÓÔÒÁÎÉÃÅ %d ÜÔÏÇÏ ÓÐÉÓËÁ ÏÐÃÉÊ."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "÷Ù ××ÅÌÉ ÎÅ×ÅÒÎÙÊ ÎÏÍÅÒ ÏÐÃÉÉ."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** ðÌÏÈÏÊ HTML!! äÌÑ ÄÉÁÇÎÏÓÔÉËÉ ÉÓÐÏÌØÚÕÊÔÅ -trace. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "úÁÄÁÊÔÅ ÉÍÑ ÆÁÊÌÁ ÄÌÑ ÚÁÐÉÓÉ"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÚÁÐÉÓÁÔØ ÄÁÎÎÙÅ × ÆÁÊÌ -- ÐÏÖÁÌÕÊÓÔÁ, ÚÁÐÕÓÔÉÔÅ WWW ÌÏËÁÌØÎÏ"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ×ÒÅÍÅÎÎÙÊ ÆÁÊÌ!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ×ÙÈÏÄÎÏÊ ÆÁÊÌ!  ïÔÍÅÎÁ!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "÷ÙÐÏÌÎÅÎÉÅ ÏÔËÌÀÞÅÎÏ."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "÷ÙÐÏÌÎÅÎÉÅ ÄÌÑ ÜÔÏÇÏ ÆÁÊÌÁ ÏÔËÌÀÞÅÎÏ.  óÍ. ÍÅÎÀ ïÐÃÉÊ (ÉÓÐÏÌØÚÕÊÔÅ %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "÷ÏÚÍÏÖÎÏÓÔÉ ×ÙÐÏÌÎÅÎÉÑ ÎÅ ×ËÌÀÞÅÎÙ × ÜÔÕ ×ÅÒÓÉÀ."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "üÔÏÔ ÆÁÊÌ ÎÅ ÍÏÖÅÔ ÂÙÔØ ÏÔÏÂÒÁÖÅÎ ÎÁ ÄÁÎÎÏÍ ÔÅÒÍÉÎÁÌÅ."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "üÔÏÔ ÆÁÊÌ ÎÅ ÍÏÖÅÔ ÂÙÔØ ÏÔÏÂÒÁÖÅÎ ÎÁ ÄÁÎÎÏÍ ÔÅÒÍÉÎÁÌÅ: D)ÚÁÇÒÕÚÉÔØ ÉÌÉ C)ÏÔÍÅÎÉÔØ"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D)ÓËÁÞÁÔØ ÉÌÉ C)ÏÔÍÅÎÉÔØ"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "ïÔÍÅÎÁ ÆÁÊÌÁ."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "ðÏÌÕÞÅÎÉÅ ÆÁÊÌÁ.  - ðïöáìõêóôá, ðïäïöäéôå -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "÷×ÅÄÉÔÅ ÉÍÑ ÆÁÊÌÁ: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "òÅÄÁËÔÉÒÏ×ÁÎÉÅ ÐÒÅÄÙÄÕÝÅÇÏ ÉÍÅÎÉ ÆÁÊÌÁ: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "òÅÄÁËÔÉÒÏ×ÁÎÉÅ ÐÒÅÄÙÄÕÝÅÇÏ ÉÍÅÎÉ ÆÁÊÌÁ: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "÷×ÅÄÉÔÅ ÎÏ×ÏÅ ÉÍÑ ÆÁÊÌÁ: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "éÍÑ ÆÁÊÌÁ ÎÅ ÍÏÖÅÔ ÎÁÞÉÎÁÔØÓÑ Ó ÔÏÞËÉ."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "æÁÊÌ ÓÕÝÅÓÔ×ÕÅÔ.  óÏÚÄÁÔØ ÅÝÅ ÏÄÎÕ ×ÅÒÓÉÀ?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "æÁÊÌ ÓÕÝÅÓÔ×ÕÅÔ.  ðÅÒÅÚÁÐÉÓÁÔØ?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÚÁÐÉÓÁÔØ × ÆÁÊÌ."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "ïûéâëá! - ËÏÍÁÎÄÁ ÓËÁÞÉ×ÁÎÉÑ ÎÅÐÒÁ×ÉÌØÎÏ ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÎÁ."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÓËÁÞÁÔØ ÆÁÊÌ."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "þÔÅÎÉÅ ËÁÔÁÌÏÇÁ..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "ðÏÓÔÒÏÅÎÉÅ ÓÐÉÓËÁ ËÁÔÁÌÏÇÁ..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "óÏÈÒÁÎÅÎÉÅ..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔÒÅÄÁËÔÉÒÏ×ÁÔØ ÆÁÊÌ '%s'."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "ïÛÉÂËÁ ÄÏÓÔÕÐÁ Ë ÄÏËÕÍÅÎÔÕ!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "ïÛÉÂËÁ ÄÏÓÔÕÐÁ Ë ÆÁÊÌÕ."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "ïÛÉÂËÁ ÄÏÓÔÕÐÁ Ë ËÁÔÁÌÏÇÕ."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÚÁÇÒÕÚÉÔØ ÄÁÎÎÙÅ."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "÷ ÎÁÓÔÏÑÝÅÅ ×ÒÅÍÑ Lynx ÎÅ ÍÏÖÅÔ e)ÒÅÄÁËÔÉÒÏ×ÁÔØ ÕÄÁÌÅÎÎÙÅ WWW ÆÁÊÌÙ."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "üÔÏ ÐÏÌÅ ÎÅ ÍÏÖÅÔ ÂÙÔØ e)ÏÔÒÅÄÁËÔÉÒÏ×ÁÎÏ Ó ÐÏÍÏÝØÀ ×ÎÅÛÎÅÇÏ ÒÅÄÁËÔÏÒÁ."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "ðÌÏÈÏÅ ÐÒÁ×ÉÌÏ"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "îÅÄÏÓÔÁÔÏÞÎÏ ÏÐÅÒÁÎÄÏ×:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "õ ×ÁÓ ÎÅÔ ÐÏÌÎÏÍÏÞÉÊ ÄÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÜÔÏÇÏ ÆÁÊÌÁ."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "úÁÇÏÌÏ×ÏË: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "ôÅÍÁ: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "éÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "ðÁÒÏÌØ: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: ÔÒÅÂÕÀÔÓÑ éÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ É ðÁÒÏÌØ!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: ÔÒÅÂÕÅÔÓÑ ðÁÒÏÌØ!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "ïÞÉÓÔÉÔØ ×ÓÀ ÉÎÆÏÒÍÁÃÉÀ Ï ÐÏÌÎÏÍÏÞÉÑÈ ÄÌÑ ÜÔÏÇÏ ÓÅÁÎÓÁ?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "éÎÆÏÒÍÁÃÉÑ Ï ÐÏÌÎÏÍÏÞÉÑÈ ÏÞÉÝÅÎÁ."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "îÅÕÄÁÞÎÁÑ ÐÒÏ×ÅÒËÁ ÐÏÌÎÏÍÏÞÉÊ.  ðÏ×ÔÏÒÉÔØ?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "ÐÏÄÄÅÒÖËÁ cgi ÂÙÌÁ ÏÔËÌÀÞÅÎÁ."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "÷ÏÚÍÏÖÎÏÓÔÉ lynxcgi ÎÅ ÓËÏÍÐÉÌÉÒÏ×ÁÎÙ × ÜÔÏÊ ×ÅÒÓÉÉ."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "éÚ×ÉÎÉÔÅ, ÎÅÔ ÉÚ×ÅÓÔÎÏÇÏ ÓÐÏÓÏÂÁ ÐÒÅÏÂÒÁÚÏ×ÁÎÉÑ %s × %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÐÏÄÇÏÔÏ×ÉÔØ ÓÏÅÄÉÎÅÎÉÅ."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ ÓÏÅÄÉÎÅÎÉÅ"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "÷ÙÐÏÌÎÑÅÍÁÑ ÓÓÙÌËÁ ÏÔ×ÅÒÇÎÕÔÁ ÉÚ-ÚÁ ÎÅÐÒÁ×ÉÌØÎÏ ÓÆÏÒÍÉÒÏ×ÁÎÎÏÇÏ ÚÁÐÒÏÓÁ."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "÷ÙÐÏÌÎÑÅÍÁÑ ÓÓÙÌËÁ ÏÔ×ÅÒÇÎÕÔÁ ÉÚ-ÚÁ ÓÉÍ×ÏÌÁ `%c'."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "÷ÙÐÏÌÎÑÅÍÁÑ ÓÓÙÌËÁ ÏÔ×ÅÒÇÎÕÔÁ ÉÚ-ÚÁ ÓÔÒÏËÉ ÏÔÎÏÓÉÔÅÌØÎÏÇÏ ÐÕÔÉ ('../')."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "÷ÙÐÏÌÎÑÅÍÁÑ ÓÓÙÌËÁ ÏÔ×ÅÒÇÎÕÔÁ ÉÚ-ÚÁ ÁÄÒÅÓÁ ÉÌÉ ÐÕÔÉ."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "äÏÓÔÕÐ Ë ÐÏÞÔÅ ÏÔËÌÀÞÅÎ!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "äÏÓÔÕÐÎÙ ÔÏÌØËÏ ÆÁÊÌÙ É ÓÅÒ×ÅÒÙ ÎÁ ÌÏËÁÌØÎÏÍ ËÏÍÐØÀÔÅÒÅ."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "äÏÓÔÕÐ Ë telnet ÚÁÐÒÅÝÅÎ!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "óÐÅÃÉÆÉËÁÃÉÉ ÐÏÒÔÁ ÄÌÑ telnet ÚÁÐÒÅÝÅÎÙ."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "äÏÓÔÕÐ Ë ÎÏ×ÏÓÔÑÍ USENET ÚÁÐÒÅÝÅÎ!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "äÏÓÔÕÐ Ë rlogin ÚÁÐÒÅÝÅÎ!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "äÏÓÔÕÐ Ë ftp ÚÁÐÒÅÝÅÎ!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "éÚ ÜÔÏÇÏ ÄÏËÕÍÅÎÔÁ ÎÅÔ ÓÓÙÌÏË."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "÷ ÜÔÏÍ ÄÏËÕÍÅÎÔÅ ÅÓÔØ ÔÏÌØËÏ ÓËÒÙÔÙÅ ÓÓÙÌËÉ."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ËÏÍÁÎÄÎÙÊ ÆÁÊÌ."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "ðÏÓÙÌËÁ ÎÏ×ÏÓÔÅÊ ÐÒÅÒ×ÁÎÁ!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "úÁÐÕÓË ×ÙÂÒÁÎÎÏÇÏ ×ÁÍÉ ÒÅÄÁËÔÏÒÁ ÄÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÓÏÏÂÝÅÎÉÑ ÎÏ×ÏÓÔÅÊ"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "ðÏÓÌÁÔØ ÜÔÏ ÓÏÏÂÝÅÎÉÅ?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "äÏÂÁ×ÉÔØ '%s'?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "ðÏÓÙÌËÁ × ÇÒÕÐÐÙ ÎÏ×ÏÓÔÅÊ..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** õ ×ÁÓ ÅÓÔØ ÎÅÐÒÏÞÉÔÁÎÎÁÑ ÐÏÞÔÁ. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** õ ×ÁÓ ÅÓÔØ ÐÏÞÔÁ. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** õ ×ÁÓ ÅÓÔØ ÎÏ×ÁÑ ÐÏÞÔÁ. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "÷ÓÔÁ×ËÁ ÆÁÊÌÁ ÏÔÍÅÎÅÎÁ!!!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "îÅ È×ÁÔÁÅÔ ÐÁÍÑÔÉ ÄÌÑ ÆÁÊÌÁ!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ ÄÌÑ ÞÔÅÎÉÑ!"
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "æÁÊÌ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "æÁÊÌ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ - ××ÅÄÉÔÅ ÓÎÏ×Á ÉÌÉ ÏÔÍÅÎÉÔÅ:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "æÁÊÌ ÎÅ ÄÏÓÔÕÐÅÎ ÎÁ ÞÔÅÎÉÅ."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "æÁÊÌ ÎÅ ÄÏÓÔÕÐÅÎ ÎÁ ÞÔÅÎÉÅ - ××ÅÄÉÔÅ ÓÎÏ×Á ÉÌÉ ÏÔÍÅÎÉÔÅ:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "÷ÓÔÁ×ÌÑÔØ ÎÅÞÅÇÏ - ÆÁÊÌ ÎÕÌÅ×ÏÊ ÄÌÉÎÙ."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "úÁÐÒÏÓ ÎÁ ÓÏÈÒÁÎÅÎÉÅ ÏÔÍÅÎÅÎ!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "úÁÐÒÏÓ ÎÁ ÐÏÓÙÌËÕ ÐÏÞÔÙ ÏÔÍÅÎÅÎ!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "ðÒÏÓÍÏÔÒ ÒÁÚÏÂÒÁÎÎÏÇÏ ÉÓÈÏÄÎÏÇÏ ÔÅËÓÔÁ. ÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ÏÔÐÒÁ×ÉÔØ ÅÇÏ?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "ðÏÖÁÌÕÊÓÔÁ, ÐÏÄÏÖÄÉÔÅ..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "ðÏÓÙÌËÁ ÆÁÊÌÁ ÐÏ ÐÏÞÔÅ.  ðÏÖÁÌÕÊÓÔÁ, ÐÏÄÏÖÄÉÔÅ..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "ïûéâëá - ÎÅ ÕÄÁÅÔÓÑ ÐÏÓÌÁÔØ ÆÁÊÌ ÐÏ ÐÏÞÔÅ"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "æÁÊÌ ÚÁÎÉÍÁÅÔ %d ÜËÒÁÎÏ×.  ÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ÅÇÏ ÎÁÐÅÞÁÔÁÔØ?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "úÁÐÒÏÓ ÎÁ ÐÅÞÁÔØ ÏÔÍÅÎÅÎ!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ÎÁÞÁÌÁ: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ÚÁ×ÅÒÛÅÎÉÑ: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "æÁÊÌ ÚÁÎÉÍÁÅÔ %d ÓÔÒÁÎÉÃ.  ÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ÎÁÐÅÞÁÔÁÔØ?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "õÂÅÄÉÔÅÓØ, ÞÔÏ ÐÒÉÎÔÅÒ × ÒÅÖÉÍÅ on-line. îÁÖÍÉÔÅ <××ÏÄ> ÄÌÑ ÎÁÞÁÌÁ ÐÅÞÁÔÉ:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "ïûéâëá - ÎÅ ÕÄÁÅÔÓÑ ×ÙÄÅÌÉÔØ ÍÅÓÔÏ ÄÌÑ ÆÁÊÌÁ!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ×ÒÅÍÅÎÎÙÊ ÆÁÊÌ"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ Ó ÏÐÃÉÑÍÉ ÐÅÞÁÔÉ"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "ðÅÞÁÔØ ÆÁÊÌÁ.  ðÏÖÁÌÕÊÓÔÁ, ÐÏÄÏÖÄÉÔÅ..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "ðÏÖÁÌÕÊÓÔÁ, ××ÅÄÉÔÅ ÐÒÁ×ÉÌØÎÙÊ ÁÄÒÅÓ ÜÌÅËÔÒÏÎÎÏÊ ÐÏÞÔÙ: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "ïûéâëá! - ÐÒÉÎÔÅÒ ÎÅÐÒÁ×ÉÌØÎÏ ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÎ!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "ïÔÓÕÔÓÔ×ÕÅÔ ÎÁ×ÉÇÁÃÉÏÎÎÁÑ ËÁÒÔÁ ÏÔ ÏÔ×ÅÔÁ POST!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr ""
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "ëÌÉÅÎÔÓËÁÑ ÎÁ×ÉÇÁÃÉÏÎÎÁÑ ËÁÒÔÁ ÎÅÄÏÓÔÕÐÎÁ!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "ëÌÉÅÎÔÓËÉÅ ÎÁ×ÉÇÁÃÉÏÎÎÙÅ ËÁÒÔÙ ÏÔÓÕÔÓÔ×ÕÀÔ!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "ëÌÉÅÎÔÓËÁÑ ÎÁ×ÉÇÁÃÉÏÎÎÁÑ ËÁÒÔÁ ÏÔÓÕÔÓÔ×ÕÅÔ!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "äÌÑ ÏÔÏÂÒÁÖÅÎÉÑ ÍÅÎÀ ïÐÃÉÊ, ×ÙÓÏÔÁ ÜËÒÁÎÁ ÄÏÌÖÎÁ ÂÙÔØ ÎÅ ÍÅÎÅÅ 24 ÓÔÒÏË!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "äÌÑ ÏÔÏÂÒÁÖÅÎÉÑ ÍÅÎÀ ïÐÃÉÊ, ×ÙÓÏÔÁ ÜËÒÁÎÁ ÄÏÌÖÎÁ ÂÙÔØ ÎÅ ÍÅÎÅÅ 23 ÓÔÒÏË!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "äÌÑ ÏÔÏÂÒÁÖÅÎÉÑ ÍÅÎÀ ïÐÃÉÊ, ×ÙÓÏÔÁ ÜËÒÁÎÁ ÄÏÌÖÎÁ ÂÙÔØ ÎÅ ÍÅÎÅÅ 22 ÓÔÒÏË!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "üÔÏÔ ËÌÀÞ ÔÒÅÂÕÅÔ ÒÅÖÉÍÁ ÄÌÑ ðÒÏÄ×ÉÎÕÔÏÇÏ ðÏÌØÚÏ×ÁÔÅÌÑ."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "ôÉÐ ÓÏÄÅÒÖÉÍÏÇÏ: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "ëÏÍÁÎÄÁ: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "îÅÉÚ×ÅÓÔÎÁÑ ÉÌÉ ÎÅÏÄÎÏÚÎÁÞÎÁÑ ËÏÍÁÎÄÁ"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " ÷ÅÒÓÉÑ "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " ÓÎÁÞÁÌÁ"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", ÕÇÁÄÙ×ÁÎÉÅ..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "òÁÚÒÅÛÅÎÉÅ ÄÌÑ "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "÷ÙÂÅÒÉÔÅ "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "ÚÁÇÌÁ×ÎÁÑ ÂÕË×Á"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " ÓÔÒÏËÉ ÏÐÃÉÊ,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " ÄÌÑ ÚÁÐÉÓÉ,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " ÄÌÑ "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " ÉÌÉ "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " ÉÎÄÅËÓ"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " ÄÌÑ ×ÏÚ×ÒÁÔÁ Ë Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "ðÒÉÎÑÔØ ÉÚÍÅÎÅÎÉÑ"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "ïÔÍÅÎÉÔØ éÚÍÅÎÅÎÉÑ"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "ìÅ×ÁÑ óÔÒÅÌËÁ ÏÔÍÅÎÑÅÔ ÉÚÍÅÎÅÎÉÑ"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "óÏÈÒÁÎÉÔØ ÏÐÃÉÉ ÎÁ ÄÉÓË"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "îÁÖÍÉÔÅ ÷÷ïä ÄÌÑ ÐÒÉÎÑÔÉÑ ××ÅÄÅÎÎÙÈ ÄÁÎÎÙÈ."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "îÁÖÍÉÔÅ ÷÷ïä ÄÌÑ ÐÒÉÎÑÔÉÑ ××ÅÄÅÎÎÙÈ ÄÁÎÎÙÈ.  õÄÁÌÉÔÅ ÄÌÑ ×ÏÚ×ÒÁÔÁ Ë ÐÒÅÄÙÄÕÝÉÍ."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "úÎÁÞÅÎÉÅ ÐÒÉÎÑÔÏ!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "úÎÁÞÅÎÉÅ ÐÒÉÎÑÔÏ! -- ðòåäõðòåöäåîéå: Lynx ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÎ ÄÌÑ XWINDOWS!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "úÎÁÞÅÎÉÅ ÐÒÉÎÑÔÏ! -- ðòåäõðòåöäåîéå: Lynx îå ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÎ ÄÌÑ XWINDOWS!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "÷Ù ÎÅ ÍÏÖÅÔÅ ÉÚÍÅÎÉÔØ ÒÅÄÁËÔÏÒ, ËÏÔÏÒÙÊ ÉÓÐÏÌØÚÏ×ÁÔØ!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ ÐÅÒÅÍÅÎÎÕÀ DISPLAY!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÞÉÓÔÉÔØ ÐÅÒÅÍÅÎÎÕÀ DISPLAY!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "÷Ù ÎÅ ÍÏÖÅÔÅ ÉÚÍÅÎÉÔØ ÆÁÊÌ ÚÁËÌÁÄÏË!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "ôÅÒÍÉÎÁÌ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔ Ã×ÅÔ"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "÷ÁÛ ÔÅÒÍÉÎÁÌ '%s' ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔ Ã×ÅÔ."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "äÏÓÔÕÐ Ë dot-ÆÁÊÌÁÍ ÏÔËÌÀÞÅÎ!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "óÔÒÏËÁ User-Agent ÎÅ ÓÏÄÅÒÖÉÔ \"Lynx\" ÉÌÉ \"L_y_n_x\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "éÓÐÏÌØÚÕÊÔÅ \"L_y_n_x\" ÉÌÉ \"Lynx\" × User-Agent, ÉÎÁÞÅ ÜÔÏ ×ÙÇÌÑÄÉÔ ËÁË ÐÒÅÄÎÁÍÅÒÅÎÎÙÊ ÏÂÍÁÎ!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "÷ÏÚÍÏÖÎÏÓÔØ ÉÚÍÅÎÅÎÉÑ ÓÔÒÏËÉ User-Agent ÏÔËÌÀÞÅÎÁ!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "÷Ù ÎÅ ÍÏÖÅÔÅ ÉÚÍÅÎÉÔØ ÜÔÕ ÎÁÓÔÒÏÊËÕ."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "óÏÈÒÁÎÅÎÉÅ ÏÐÃÉÊ..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "ïÐÃÉÉ ÓÏÈÒÁÎÅÎÙ!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÓÏÈÒÁÎÉÔØ ïÐÃÉÉ!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' ÄÌÑ ×ÏÚ×ÒÁÔÁ Ë Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ, ÉÌÉ 'r' ÄÌÑ ×ÏÚ×ÒÁÔÁ Ë Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "îÁÖÍÉÔÅ ÌÀÂÕÀ ËÌÁ×ÉÛÕ ÄÌÑ ÉÚÍÅÎÅÎÉÑ ÚÎÁÞÅÎÉÑ; ÷÷ïä ÞÔÏÂÙ ÐÒÉÎÑÔØ."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "ïÛÉÂËÁ ÒÁÚÁÒÈÉ×ÁÃÉÉ ×ÒÅÍÅÎÎÏÇÏ ÆÁÊÌÁ!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "îÅÐÏÄÄÅÒÖÉ×ÁÅÍÁÑ ÓÈÅÍÁ URL!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "îÅÐÏÄÄÅÒÖÉ×ÁÅÍÙÅ ÄÁÎÎÙÅ: URL! éÓÐÏÌØÚÕÊÔÅ ðïëáú éîæïòíáãéé, ÐÏËÁ ÞÔÏ."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "äÏÓÔÉÇÎÕÔ ÐÒÅÄÅÌ ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÊ × 10 URL."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "ïÔ ÓÅÒ×ÅÒÁ ÐÏÌÕÞÅÎ ÎÅ×ÅÒÎÙÊ URL ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÑ!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "óÅÒ×ÅÒ ÚÁÐÒÏÓÉÌ %d ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÊ ÓÏÄÅÒÖÉÍÏÇÏ POST ÐÏ ÁÄÒÅÓÕ"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P)ðÒÉÓÔÕÐÉÔØ, ÉÓÐÏÌØÚÕÊÔÅ G)ET ÉÌÉ C)ïÔÍÅÎÁ "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P)ðÒÉÓÔÕÐÉÔØ, ÉÌÉ C)ïÔÍÅÎÉÔØ "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "ðÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ ÓÏÄÅÒÖÉÍÏÇÏ POST. P)ðÒÉÓÔÕÐÉÔØ, ÐÏËÁÚÁÔØ U)RL, G)ET ÉÌÉ C)ÏÔÍÅÎÁ"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "ðÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ ÓÏÄÅÒÖÉÍÏÇÏ POST. P)ðÒÏÄÏÌÖÉÔØ, ÐÒÏÓÍÏÔÒÅÔØ U)RL ÉÌÉ C)ÏÔÍÅÎÉÔØ"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "äÏËÕÍÅÎÔ ÉÚ æÏÒÍÙ Ó ÓÏÄÅÒÖÉÍÙÍ POST.  ðÏÓÌÁÔØ ÚÁÎÏ×Ï?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "ðÏÓÌÁÔØ ÚÁÎÏ×Ï ÓÏÄÅÒÖÉÍÏÅ POST ÎÁ %s ?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "óÐÉÓÏË ÉÚ ÄÏËÕÍÅÎÔÁ Ó ÄÁÎÎÙÍÉ POST.  ïÂÎÏ×ÉÔØ %s ?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "äÏËÕÍÅÎÔ ÉÚ ÄÅÊÓÔ×ÉÑ POST, HEAD ÍÏÖÅÔ ÂÙÔØ ÎÅ ÐÏÎÑÔ.  ðÒÏÄÏÌÖÉÔØ?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "äÅÊÓÔ×ÉÅ ÐÏÓÙÌËÉ ÆÏÒÍÙ - POST, HEAD ÍÏÖÅÔ ÂÙÔØ ÎÅ ÐÏÎÑÔ.  ðÒÏÄÏÌÖÉÔØ?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "ðÒÏÄÏÌÖÉÔØ ÂÅÚ ÉÍÅÎÉ ÐÏÌØÚÏ×ÁÔÅÌÑ É ÐÁÒÏÌÑ?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "ðÒÏÄÏÌÖÉÔØ (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "îÅ×ÏÚÍÏÖÎÏ ×ÙÐÏÌÎÉÔØ POST ÎÁ ÜÔÕ ÍÁÛÉÎÕ."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "POST ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ ÄÌÑ ÜÔÏÇÏ URL - ÄÁÎÎÙÅ POST ÉÇÎÏÒÉÒÕÀÔÓÑ!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "õÎÉÞÔÏÖÅÎÉÅ ÄÁÎÎÙÈ POST..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "äÏËÕÍÅÎÔ ÎÅ ÂÕÄÅÔ ÏÂÎÏ×ÌÅÎ!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "áÄÒÅÓ: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' ÎÅ ÎÁÊÄÅÎÏ!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "æÁÊÌ ÚÁËÌÁÄÏË ÐÏ ÕÍÏÌÞÁÎÉÀ"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "üËÒÁÎ ÓÌÉÛËÏÍ ÍÁÌÅÎØËÉÊ! (8x35 ÍÉÎÉÍÕÍ)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "÷ÙÂÅÒÉÔÅ ÍÅÓÔÏ ÎÁÚÎÁÞÅÎÉÑ ÉÌÉ ^G ÄÌÑ ÏÔÍÅÎÙ: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "÷ÙÂÅÒÉÔÅ ÐÏÄÚÁËÌÁÄËÕ, '=' ÄÌÑ ÍÅÎÀ ÉÌÉ ^G ÄÌÑ ÏÔÍÅÎÙ: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "÷ÏÓÐÒÏÉÚ×ÅÓÔÉ L)ÓÓÙÌËÕ × ÜÔÏÍ ÆÁÊÌÅ ÚÁËÌÁÄÏË ÉÌÉ C)ÏÔÍÅÎÉÔØ? (l,c): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "ðÏÄÄÅÒÖËÁ ÍÎÏÖÅÓÔ×ÅÎÎÙÈ ÚÁËÌÁÄÏË ÎÅ ÄÏÓÔÕÐÎÁ."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " ÷ÙÂÅÒÉÔÅ ÚÁËÌÁÄËÕ (ÜËÒÁÎ %d ÉÚ %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       ÷ÙÂÅÒÉÔÅ ÚÁËÌÁÄËÕ"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "òÅÄÁËÔÉÒÏ×ÁÎÉÅ ïðéóáîéñ É ðõôé ë æáêìõ ÚÁËÌÁÄÏË (%d ÉÚ 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         òÅÄÁËÔÉÒÏ×ÁÎÉÅ ïðéóáîéñ É ðõôé_æáêìá ÚÁËÌÁÄÏË"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "âÕË×Á: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr ""
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr ""
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr ""
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "òÁÎÅÅ ÐÏÓÅÝÅÎÎÙÈ ÓÓÙÌÏË ÎÅÔ!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "ðÁÍÑÔØ ÉÓÞÅÒÐÁÎÁ!  ðÒÏÇÒÁÍÍÁ ÐÒÅÒ×ÁÎÁ!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "ðÁÍÑÔØ ÉÓÞÅÒÐÁÎÁ!  ðÒÅÒÙ×ÁÎÉÅ..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "îÅ È×ÁÔÁÅÔ ÐÁÍÑÔÉ!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "ëÁÔÁÌÏÇ/ÆÁÊÌ-ÍÅÎÅÄÖÅÒ ÎÅÄÏÓÔÕÐÅÎ"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF × ÔÅÇÅ BASE ÎÅ Ñ×ÌÑÅÔÓÑ ÁÂÓÏÌÀÔÎÙÍ URL."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "áÄÒÅÓ URL ÎÅ ÁÂÓÏÌÀÔÎÙÊ."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "URL ÏÂÎÏ×ÌÅÎÉÑ ÎÅ ÁÂÓÏÌÀÔÎÙÊ."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"÷Ù ÐÏÓÙÌÁÅÔÅ ÓÏÏÂÝÅÎÉÅ Ó ÔÅÌÏÍ ÐÏ ÁÄÒÅÓÕ:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"÷Ù ÐÏÓÙÌÁÅÔÅ ËÏÍÍÅÎÔÁÒÉÊ ÐÏ ÁÄÒÅÓÕ:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" ó ËÏÐÉÅÊ ÐÏ ÁÄÒÅÓÕ:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" ó ËÏÐÉÑÍÉ ÐÏ ÁÄÒÅÓÕ:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"éÓÐÏÌØÚÕÊÔÅ Ctrl-G ÄÌÑ ÏÔÍÅÎÙ, ÅÓÌÉ ×Ù ÎÅ ÈÏÔÉÔÅ ÐÏÓÙÌÁÔØ ÓÏÏÂÝÅÎÉÅ\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" ðÏÖÁÌÕÊÓÔÁ, ××ÅÄÉÔÅ ×ÁÛÅ ÉÍÑ ÉÌÉ ÏÓÔÁ×ØÔÅ ÅÇÏ ÐÕÓÔÙÍ, ÞÔÏÂÙ ÏÓÔÁÔØÓÑ ÁÎÏÎÉÍÎÙÍ\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" ðÏÖÁÌÕÊÓÔÁ, ××ÅÄÉÔÅ ÐÏÞÔÏ×ÙÊ ÁÄÒÅÓ ÉÌÉ ËÁËÕÀ-ÎÉÂÕÄØ ÄÒÕÇÕÀ\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " ÉÎÆÏÒÍÁÃÉÀ ÄÌÑ ËÏÎÔÁËÔÁ Ó ×ÁÍÉ, ÅÓÌÉ ×Ù ÖÅÌÁÅÔÅ ÐÏÌÕÞÉÔØ ÏÔ×ÅÔ.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" ðÏÖÁÌÕÊÓÔÁ, ××ÅÄÉÔÅ ÓÔÒÏËÕ ÔÅÍÙ.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" ÷×ÅÄÉÔÅ ÐÏÞÔÏ×ÙÊ ÁÄÒÅÓ ÄÌÑ ËÏÐÉÉ (CC) ×ÁÛÅÇÏ ÓÏÏÂÝÅÎÉÑ.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (ïÓÔÁ×ØÔÅ ÐÕÓÔÙÍ, ÅÓÌÉ ×Ù ÎÅ ÈÏÔÉÔÅ ËÏÐÉÀ.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" ðÏÖÁÌÕÊÓÔÁ, ÐÒÏÓÍÏÔÒÉÔÅ ÔÅÌÏ ÓÏÏÂÝÅÎÉÑ:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"îÁÖÍÉÔÅ ÷÷ïä ÄÌÑ ÐÒÏÄÏÌÖÅÎÉÑ: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"îÁÖÍÉÔÅ ÷÷ïä ÄÌÑ ÏÞÉÓÔËÉ: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " éÓÐÏÌØÚÕÊÔÅ Control-U ÄÌÑ ÕÎÉÞÔÏÖÅÎÉÑ ÚÎÁÞÅÎÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" ðÏÖÁÌÕÊÓÔÁ, ××ÅÄÉÔÅ ÎÉÖÅ ×ÁÛÅ ÓÏÏÂÝÅÎÉÅ."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" ëÏÇÄÁ ×ÓÅ ÇÏÔÏ×Ï, ÎÁÖÍÉÔÅ <××ÏÄ> É ÐÏÓÔÁ×ØÔÅ ÅÄÉÎÓÔ×ÅÎÎÕÀ ÔÏÞËÕ (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" × ÓÔÒÏËÅ É ÓÎÏ×Á ÎÁÖÍÉÔÅ <××ÏÄ>."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s cookie: %.*s=%.*s ðÒÉÎÑÔØ? (Y/N/A)÷ÓÅÇÄÁ/V)îÉËÏÇÄÁ)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "ðÒÉÎÑÔØ ÎÅÐÒÁ×ÉÌØÎÙÊ ÄÏÍÅÎ=%s ÄÌÑ cookie '%s'?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "ðÒÉÎÑÔØ ÎÅÐÒÁ×ÉÌØÎÙÊ ÐÕÔØ=%s ËÁË ÐÒÅÆÉËÓ ÄÌÑ cookie '%s'?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "ðÒÉÎÑÔÉÅ ÜÔÏÇÏ cookie."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "ïÔËÌÏÎÅÎÉÅ ÜÔÏÇÏ cookie."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "óÐÉÓÏË cookie ÐÕÓÔ."
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "óÐÉÓÏË cookie ÐÕÓÔ."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "áËÔÉ×ÉÚÉÒÏ×ÁÔØ ÓÓÙÌËÉ ÄÌÑ ÕÎÉÞÔÏÖÅÎÉÑ cookie ÉÌÉ ÃÅÌÙÈ ÄÏÍÅÎÏ×,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "ÉÌÉ ÄÌÑ ÉÚÍÅÎÅÎÉÑ ÕÓÔÁÎÏ×ËÉ 'allow' ÄÏÍÅÎÁ."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Cookie ÎÉËÏÇÄÁ ÎÅ ÒÁÚÒÅÛÅÎÙ.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Cookie ×ÓÅÇÄÁ ÒÁÚÒÅÛÅÎÙ.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Cookie ÒÁÚÒÅÛÁÀÔÓÑ ÞÅÒÅÚ ÐÏÄÔ×ÅÒÖÄÅÎÉÅ.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(ðÏÓÔÏÑÎÎÙÅ cookie.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(îÅÔ ÚÁÇÏÌÏ×ËÁ.)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(îÅÔ ÉÍÅÎÉ.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(îÅÔ ÚÎÁÞÅÎÉÑ.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "îÅÔ"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(ëÏÎÅà ÓÅÁÎÓÁ.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "õÄÁÌÉÔØ ÜÔÏÔ cookie?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Cookie ÕÄÁÌÅÎ!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "õÄÁÌÉÔØ ÜÔÏÔ ÐÕÓÔÏÊ ÄÏÍÅÎ?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "äÏÍÅÎ ÕÄÁÌÅÎ!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)õÄÁÌÉÔØ cookie ÄÏÍÅÎÁ, ÕÓÔÁÎÏ×ÉÔØ ÒÁÚÒÅÛÅÎÉÅ × A)lways/P)rompt/neVer, C)ancel?"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)õÄÁÌÉÔØ ÄÏÍÅÎ, ÕÓÔÁÎÏ×ÉÔØ ÒÁÚÒÅÛÅÎÉÅ × A)lways/P)rompt/neV)er, ÉÌÉ C)ancel? "
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "÷ÓÅ cookie × ÄÏÍÅÎÅ ÂÙÌÉ ÕÎÉÞÔÏÖÅÎÙ!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "A)÷ÓÅÇÄÁ ÐÒÉÎÉÍÁÔØ ÉÚ ÄÏÍÅÎÁ '%s'."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "V)îÉËÏÇÄÁ ÎÅ ÐÒÉÎÉÍÁÔØ ÉÚ ÄÏÍÅÎÁ '%s'."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "P)óÐÒÁÛÉ×ÁÔØ Ï ÐÒÉÅÍÅ ÉÚ ÄÏÍÅÎÁ '%s'."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "õÄÁÌÉÔØ ×ÓÅ cookie × ÜÔÏÍ ÄÏÍÅÎÅ?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "÷ÓÅ cookie ÉÚ ÓÐÉÓËÁ ÂÙÌÉ ÕÎÉÞÔÏÖÅÎÙ!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "19 ÐÏÒÔ × URL ÎÅ ÄÏÐÕÓËÁÅÔÓÑ."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "25 ÐÏÒÔ × URL ÎÅ ÄÏÐÕÓËÁÅÔÓÑ."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "%lu ÐÏÒÔ × URL ÎÅ ÄÏÐÕÓËÁÅÔÓÑ."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "URL ÉÍÅÅÔ ÐÌÏÈÏÅ ÐÏÌÅ ÐÏÒÔÁ."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "ðÒÅ×ÙÛÅÎÏ ÍÁËÓÉÍÁÌØÎÏÅ ÞÉÓÌÏ ×ÌÏÖÅÎÎÙÈ ÜÌÅÍÅÎÔÏ× HTML."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "ðÌÏÈÁÑ ÞÁÓÔÉÞÎÁÑ ÓÓÙÌËÁ!  îÁÞÁÌØÎÙÅ ÔÏÞËÉ ÉÇÎÏÒÉÒÕÀÔÓÑ."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "ïÛÉÂËÁ ÐÒÉ ÏÔËÒÙÔÉÉ ÖÕÒÎÁÌÁ ÔÒÁÓÓÉÒÏ×ËÉ.  ôÒÁÓÓÉÒÏ×ËÁ ×ÙËÌÀÞÅÎÁ!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "öÕÒÎÁÌ ÔÒÁÓÓÉÒÏ×ËÉ Lynx"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "öÕÒÎÁÌ ÔÒÁÓÓÉÒÏ×ËÉ ÄÌÑ ÜÔÏÇÏ ÓÅÁÎÓÁ ÎÅ ×ÅÌÓÑ."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "äÏÓÔÉÇÎÕÔÏ ÍÁËÓÉÍÁÌØÎÏÅ ËÏÌÉÞÅÓÔ×Ï ×ÒÅÍÅÎÎÙÈ ÆÁÊÌÏ×!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "úÎÁÞÅÎÉÅ ÐÏÌÑ ÆÏÒÍÙ ÐÒÅ×ÙÛÁÅÔ ÄÌÉÎÕ ÂÕÆÅÒÁ.  ïÂÒÅÖØÔÅ ËÏÎÅÃ."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "íÏÄÉÆÉÃÉÒÏ×ÁÎÎÏÅ ÏËÏÎÞÁÎÉÅ ÓËÏÍÂÉÎÉÒÏ×ÁÎÏ Ó ÎÁÞÁÌÏÍ ÚÎÁÞÅÎÉÑ ÐÏÌÑ ÆÏÒÍÙ."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "ëÁÔÁÌÏÇ"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "ðÒÏÓÍÏÔÒ ËÁÔÁÌÏÇÏ× ÎÅ ÒÁÚÒÅÛÅÎ."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "éÚÂÉÒÁÔÅÌØÎÙÊ ÄÏÓÔÕÐ ÎÅ ×ËÌÀÞÅÎ ÄÌÑ ÜÔÏÇÏ ËÁÔÁÌÏÇÁ"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: ÏÛÉÂËÁ ÐÒÉ ÓËÁÎÉÒÏ×ÁÎÉÉ ËÁÔÁÌÏÇÁ."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "üÔÏÔ ËÁÔÁÌÏÇ ÎÅ ÄÏÓÔÕÐÅÎ ÎÁ ÞÔÅÎÉÅ."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "îÅÔ ÄÏÓÔÕÐÁ Ë ÚÁÐÒÏÛÅÎÎÏÍÕ ÆÁÊÌÕ."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÎÁÊÔÉ ÐÏÄÈÏÄÑÝÅÅ ÐÒÅÄÓÔÁ×ÌÅÎÉÅ ÄÌÑ ÐÅÒÅÄÁÞÉ."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ ÄÌÑ ÒÁÚÁÒÈÉ×ÁÃÉÉ!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "æÁÊÌÙ:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "ðÏÄËÁÔÁÌÏÇÉ:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " ËÁÔÁÌÏÇ"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "ðÅÒÅÊÔÉ Ë "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "ôÅËÕÝÉÊ ËÁÔÁÌÏÇ "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "îÅÔ ÏÔ×ÅÔÁ ÏÔ ÓÅÒ×ÅÒÁ!"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "éÎÄÅËÓ CSO"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"üÔÏ ÐÏÉÓËÏ×ÙÊ ÉÎÄÅËÓ ÂÁÚÙ ÄÁÎÎÙÈ CSO.\n"
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "òÅÚÕÌØÔÁÔÙ ÐÏÉÓËÁ CSO"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "ïÛÉÂËÁ ÐÏÚÉÃÉÏÎÉÒÏ×ÁÎÉÑ × %s\n"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"îÁÖÍÉÔÅ ËÌÁ×ÉÛÕ 's' É ××ÅÄÉÔÅ ËÌÀÞÅ×ÙÅ ÓÌÏ×Á ÄÌÑ ÐÏÉÓËÁ.\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"üÔÏ ÐÏÉÓËÏ×ÙÊ ÉÎÄÅËÓ Gopher.\n"
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "éÎÄÅËÓ Gopher"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "íÅÎÀ Gopher"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr " òÅÚÕÌØÔÁÔÙ ÐÏÉÓËÁ"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "ðÏÓÙÌËÁ ÚÁÐÒÏÓÁ CSO/PH"
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "ðÏÓÙÌËÁ ÚÁÐÒÏÓÁ Gopher."
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "úÁÐÒÏÓ CSO/PH ÐÏÓÌÁÎ; ÏÖÉÄÁÅÔÓÑ ÏÔ×ÅÔ."
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "úÁÐÒÏÓ Gopher ÐÏÓÌÁÎ; ÏÖÉÄÁÅÔÓÑ ÏÔ×ÅÔ."
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"ðÏÖÁÌÕÊÓÔÁ, ××ÅÄÉÔÅ ËÌÀÞÅ×ÙÅ ÓÌÏ×Á ÄÌÑ ÐÏÉÓËÁ.\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"÷×ÅÄÅÎÎÙÅ ×ÁÍÉ ËÌÀÞÅ×ÙÅ ÓÌÏ×Á ÐÏÚ×ÏÌÑÔ ×ÁÍ ÉÓËÁÔØ ÐÏ"
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr " ÉÍÅÎÉ ÞÅÌÏ×ÅËÁ × ÂÁÚÅ ÄÁÎÎÙÈ.\n"
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "óÏÅÄÉÎÅÎÉÅ ÚÁËÒÙÔÏ ???"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ×ÒÅÍÅÎÎÙÊ ÆÁÊÌ ÄÌÑ ÐÏÓÙÌËÉ ÎÏ×ÏÓÔÅÊ."
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "üÔÏÔ ËÌÉÅÎÔ ÎÅ ÉÍÅÅÔ ÐÏÄÄÅÒÖËÉ ÄÌÑ ÐÏÓÙÌËÉ ÎÏ×ÏÓÔÅÊ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ SSL."
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "óÔÉÌØ %d `%s' SGML:%s.  ûÒÉÆÔ %s %.1f ÔÏÞËÁ.\n"
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\t÷ÙÒÁ×ÎÉ×ÁÎÉÅ=%d, %d tabs. (%.0f ÄÏ, %.0f ÐÏÓÌÅ)\n"
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr ""
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÐÒÏÄÏÌÖÉÔØ ÂÅÚ ÉÍÅÎÉ ÐÏÌØÚÏ×ÁÔÅÌÑ É ÐÁÒÏÌÑ."
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÐÏ×ÔÏÒÉÔØ ÐÒÏ×ÅÒËÕ ÐÏÌÎÏÍÏÞÉÊ! ó×ÑÖÉÔÅÓØ Ó ×ÅÂÍÁÓÔÅÒÏÍ ÓÅÒ×ÅÒÁ."
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÐÏ×ÔÏÒÉÔØ ÐÒÏ×ÅÒËÕ ÐÏÌÎÏÍÏÞÉÊ ÞÅÒÅÚ ÐÒÏËÓÉ! ó×ÑÖÉÔÅÓØ Ó ×ÅÂÍÁÓÔÅÒÏÍ ÓÅÒ×ÅÒÁ."
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr "ðÏ×ÔÏÒ Ó ÉÎÆÏÒÍÁÃÉÅÊ ÐÒÏ×ÅÒËÉ ÐÏÌÎÏÍÏÞÉÊ ÄÌÑ ÐÒÏËÓÉ."
+
+#: LYMessages.c:799
+#, fuzzy, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "ïÛÉÂËÁ SSL:host(%s)!=cert(%s)-ðÒÏÄÏÌÖÉÔØ?"
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: ÷ÏÚ×ÒÁÝÅÎÎÏÅ ÓÏÏÂÝÅÎÉÅ ÓÌÉÛËÏÍ ×ÅÌÉËÏ."
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr "÷×ÅÄÉÔÅ ÚÁÐÒÏÓ WAIS: "
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "ðÏ×ÔÏÒ ËÁË ÚÁÐÒÏÓ HTTP0."
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "ðÅÒÅÄÁÎÏ %d ÂÁÊÔ"
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "ðÅÒÅÄÁÞÁ ÄÁÎÎÙÈ ÚÁ×ÅÒÛÅÎÁ"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "ïÛÉÂËÁ ÐÒÉ ÏÂÒÁÂÏÔËÅ ÓÔÒÏËÉ %d ÉÚ %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr "óÔÒÁÎÉÃÁ ÓÐÉÓËÁ ÁÄÒÅÓÏ×"
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "æÁÊÌ ÚÁËÌÁÄÏË"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr "ïÐÒÅÄÅÌÅÎÉÑ ËÏÎÆÉÇÕÒÁÃÉÉ"
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr "óÐÉÓÏË cookie"
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr "ôÅËÕÝÅÅ ÏÔÏÂÒÁÖÅÎÉÅ ËÌÁ×ÉÛ"
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "ïÐÃÉÉ ÒÁÂÏÔÙ Ó ÆÁÊÌÁÍÉ"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "ïÐÃÉÉ ÓËÁÞÉ×ÁÎÉÑ"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "óÔÒÁÎÉÃÁ ÉÓÔÏÒÉÉ"
+
+#: LYMessages.c:820
+#, fuzzy
+msgid "Cache Jar"
+msgstr "óÐÉÓÏË cookie"
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr "óÔÒÁÎÉÃÁ ÓÐÉÓËÁ"
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "éÎÆÏÒÍÁÃÉÑ lynx.cfg"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr "ðÒÅÏÂÒÁÚÏ×ÁÎÎÙÅ ÚÁËÌÁÄËÉ Mosaic"
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "íÅÎÀ ïÐÃÉÊ"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "ïÐÃÉÉ ÐÒÁ× ÄÏÓÔÕÐÁ Ë ÆÁÊÌÁÍ"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "ïÐÃÉÉ ÐÅÞÁÔÉ"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "éÎÆÏÒÍÁÃÉÑ Ï ÔÅËÕÝÅÍ ÄÏËÕÍÅÎÔÅ"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "÷ÁÛÉ ÐÏÓÌÅÄÎÉÅ ÓÏÏÂÝÅÎÉÑ ÓÔÒÏËÉ ÓÔÁÔÕÓÁ"
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "ïÐÃÉÉ ÚÁÇÒÕÚËÉ"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr "óÔÒÁÎÉÃÁ ÐÏÓÅÝÅÎÎÙÈ ÓÓÙÌÏË"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "óÍ. ÔÁËÖÅ"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr "×ÁÛ"
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr "ÄÌÑ ÏÐÃÉÊ ×ÒÅÍÅÎÉ ×ÙÐÏÌÎÅÎÉÑ"
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "ÏÐÃÉÉ ÓÔÁÄÉÉ ËÏÍÐÉÌÑÃÉÉ"
+
+#: LYMessages.c:837
+#, fuzzy
+msgid "color-style configuration"
+msgstr "÷ÁÛÁ ÏÓÎÏ×ÎÁÑ ËÏÎÆÉÇÕÒÁÃÉÑ"
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "ÐÏÓÌÅÄÎÑÑ ÓÔÁÂÉÌØÎÁÑ ×ÅÒÓÉÑ"
+
+#: LYMessages.c:839
+msgid "pre-release version"
+msgstr "ÐÏÞÔÉ ÓÔÁÂÉÌØÎÁÑ ×ÅÒÓÉÑ"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "ÎÅÓÔÁÂÉÌØÎÁÑ ×ÅÒÓÉÑ"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"óÌÅÄÕÀÝÉÅ ÄÁÎÎÙÅ ÂÙÌÉ ÐÏÌÕÞÅÎÙ × ÔÅÞÅÎÉÅ Á×ÔÏÍÁÔÉÞÅÓËÏÇÏ ÐÒÏÃÅÓÓÁ\n"
+"ËÏÎÆÉÇÕÒÁÃÉÉ/ËÏÍÐÉÌÑÃÉÉ ÜÔÏÊ ËÏÐÉÉ Lynx.  ðÒÉ ÓÏÏÂÝÅÎÉÉ ÏÂ ÏÛÉÂËÅ, ÐÏÖÁÌÕÊÓÔÁ,\n"
+"×ËÌÀÞÉÔÅ ËÏÐÉÀ ÜÔÏÊ ÓÔÒÁÎÉÃÙ."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"óÌÅÄÕÀÝÉÅ ÄÁÎÎÙÅ ÂÙÌÉ ÉÓÐÏÌØÚÏ×ÁÎÙ ËÁË Á×ÔÏÍÁÔÉÞÅÓËÉ ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÎÎÙÅ\n"
+"ÏÐÒÅÄÅÌÅÎÉÑ ÓÔÁÄÉÉ ËÏÍÐÉÌÑÃÉÉ ÐÒÉ ÓÂÏÒËÅ ÜÔÏÊ ËÏÐÉÉ Lynx."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "  C)ÏÚÄÁÔØ  D)úÁÇÒ  E)òÅÄÁËÔ  F)ðÏÌÎ ÍÅÎÀ  M)éÚÍÅÎ  R)õÄÁÌ  T)ïÔÍ  U)úÁÇÒ    \n"
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÐÏÌÕÞÉÔØ ÓÔÁÔÕÓ ÔÅËÕÝÅÊ ÓÓÙÌËÉ!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "óÐÅÃÉÁÌØÎÙÊ URL ÄÅÊÓÔ×ÉÔÅÌÅÎ ÔÏÌØËÏ ÉÚ ÔÅËÕÝÅÇÏ ÍÅÎÀ ðÒÁ× äÏÓÔÕÐÁ Ë æÁÊÌÁÍ!"
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr "÷ÎÅÛÎÑÑ ÐÏÄÄÅÒÖËÁ ÓÅÊÞÁÓ ÏÔËÌÀÞÅÎÁ."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+msgid "Changing working-directory is currently disabled."
+msgstr "éÚÍÅÎÅÎÉÅ ÒÁÂÏÞÅÇÏ ËÁÔÁÌÏÇÁ ÓÅÊÞÁÓ ÚÁÐÒÅÝÅÎÏ."
+
+#: LYMessages.c:864
+msgid "Linewrap OFF!"
+msgstr "ðÅÒÅÎÏÓ ÓÔÒÏË ïôëìàþåî!"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr "ðÅÒÅÎÏÓ ÓÔÒÏË ÷ëìàþåî!"
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "òÁÚÂÏÒ ×ÌÏÖÅÎÎÙÈ ÔÁÂÌÉà ïôëìàþåî!  ïÂÎÏ×ÌÅÎÉÅ..."
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "òÁÚÂÏÒ ×ÌÏÖÅÎÎÙÈ ÔÁÂÌÉà ÷ëìàþåî!  ïÂÎÏ×ÌÅÎÉÅ..."
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "óÄ×ÉÇ ÚÁÐÒÅÝÅÎ ÐÏËÁ ÄÅÊÓÔ×ÕÅÔ ÐÅÒÅÎÏÓ ÓÔÒÏË"
+
+#: LYMessages.c:869
+msgid "Trace not supported"
+msgstr "ôÒÁÓÓÉÒÏ×ËÁ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ"
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tïÔÓÔÕÐÙ: ÐÅÒ×ÙÊ=%.0f ÏÓÔÁÌØÎÙÅ=%.0f, ×ÙÓÏÔÁ=%.1f ÏÐÉÓÁÎÉÅ=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "éÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ ÄÌÑ '%s' ÎÁ %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "üÔÏÔ ËÌÉÅÎÔ ÎÅ ÚÎÁÅÔ, ËÁË ÓÏÓÔÁ×ÉÔØ ÉÎÆÏÒÍÁÃÉÀ ÐÒÏ×ÅÒËÉ ÐÒÁ× ÄÌÑ ÐÒÏËÓÉ ÄÌÑ ÓÈÅÍÙ"
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "üÔÏÔ ËÌÉÅÎÔ ÎÅ ÚÎÁÅÔ, ËÁË ÓÏÓÔÁ×ÉÔØ ÉÎÆÏÒÍÁÃÉÀ ÐÒÏ×ÅÒËÉ ÐÒÁ× ÄÌÑ ÓÈÅÍÙ"
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "îÅ×ÅÒÎÙÊ ÚÁÇÏÌÏ×ÏË '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "ôÒÅÂÕÅÔÓÑ ÐÒÏ×ÅÒËÁ ÐÒÁ× ÄÌÑ ÐÒÏËÓÉ -- ÐÏ×ÔÏÒ"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "äÏÓÔÕÐ ÂÅÚ ÐÒÏ×ÅÒËÉ ÐÒÁ× ÚÁÐÒÅÝÅÎ -- ÐÏ×ÔÏÒ"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "äÏÓÔÕÐ ÚÁÐÒÅÝÅÎ ÐÒÁ×ÉÌÏÍ"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "äÏËÕÍÅÎÔ Ó ÓÏÄÅÒÖÉÍÙÍ POST ÎÅ ÎÁÊÄÅÎ × ËÜÛÅ.  ðÏÓÌÁÔØ ÓÎÏ×Á?"
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr "úÁÇÒÕÚËÁ ÚÁ×ÅÒÛÅÎÁ ÎÅ ÐÏÌÎÏÓÔØÀ."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: ÎÏÍÅÒ ÓÏËÅÔÁ ÉÌÉ ÆÁÊÌÁ ×ÏÚ×ÒÁÝÅÎ ÕÓÔÁÒÅ×ÛÅÊ ÐÒÏÇÒÁÍÍÏÊ ÚÁÇÒÕÚËÉ!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, fuzzy, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: ÷ÎÕÔÒÅÎÎÑÑ ÐÒÏÇÒÁÍÍÎÁÑ ÏÛÉÂËÁ. ðÏÖÁÌÕÊÓÔÁ, ÎÁÐÉÛÉÔÅ × lynx-dev@sig.net!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: ÷ÏÚ×ÒÁÝÅÎÎÙÊ ÓÔÁÔÕÓ: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr "îÅÔ ÄÏÓÔÕÐÁ"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "ïÛÉÂËÁ ÄÏÓÔÕÐÁ Ë ÄÏËÕÍÅÎÔÕ."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "÷×ÅÄÉÔÅ ÐÁÒÏÌØ ÄÌÑ ÐÏÌØÚÏ×ÁÔÅÌÑ %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ ÓÏÅÄÉÎÅÎÉÅ Ó FTP-ÕÚÌÏÍ."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "ÚÁËÒÙÔØ ×ÅÄÕÝÉÊ ÓÏËÅÔ"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "ÓÏËÅÔ ÄÌÑ ×ÅÄÕÝÅÇÏ ÓÏËÅÔÁ"
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "óÉÍ×ÏÌØÎÁÑ ÓÓÙÌËÁ"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "ðÏÌÕÞÅÎÉÅ FTP-ËÁÔÁÌÏÇÁ."
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "ðÅÒÅÄÁÎÏ %d ÂÁÊÔ (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr "ÓÏÅÄÉÎÅÎÉÅ ÄÌÑ ÄÁÎÎÙÈ"
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "ðÏÌÕÞÅÎÉÅ FTP-ÆÁÊÌÁ."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ ÓÏÅÄÉÎÅÎÉÅ finger."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÚÁÇÒÕÚÉÔØ ÄÁÎÎÙÅ (ÎÅÔ ÉÍÅÎÉ ÓÁÊÔÁ × URL ÄÌÑ finger)"
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "îÅ×ÅÒÎÙÊ ÎÏÍÅÒ ÐÏÒÔÁ - ÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÎ ÔÏÌØËÏ ÐÏÒÔ 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "îÅÔ ÄÏÓÔÕÐÁ Ë ÕÚÌÕ finger."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "îÅÔ ÏÔ×ÅÔÁ ÏÔ ÓÅÒ×ÅÒÁ finger."
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "éÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ ÄÌÑ ÕÚÌÁ ÎÏ×ÏÓÔÅÊ '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "éÚÍÅÎÉÔØ ÉÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "éÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "ðÁÒÏÌØ ÄÌÑ ÕÚÌÁ ÎÏ×ÏÓÔÅÊ '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "éÚÍÅÎÉÔØ ÐÁÒÏÌØ?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "îÅÔ ÓÏ×ÐÁÄÅÎÉÊ ÄÌÑ: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"÷ ÜÔÏÊ ÇÒÕÐÐÅ ÎÅÔ ÓÔÁÔÅÊ.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"÷ ÜÔÏÍ ÄÉÁÐÁÚÏÎÅ ÎÅÔ ÓÔÁÔÅÊ.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  óÔÁÔØÉ %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "âÏÌÅÅ ÒÁÎÎÉÅ ÓÔÁÔØÉ"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"óÅÊÞÁÓ ÄÏÓÔÕÐÎÏ ÏËÏÌÏ %d ÓÔÁÔÅÊ × %s ÓÏ ÓÌÅÄÕÀÝÉÍÉ ÉÄÅÎÔÉÆÉËÁÔÏÒÁÍÉ:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "÷ÓÅ ÄÏÓÔÕÐÎÙÅ ÓÔÁÔØÉ × "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "âÏÌÅÅ ÐÏÚÄÎÉÅ ÓÔÁÔØÉ"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "ðÏÓÌÁÔØ × "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "üÔÏÔ ËÌÉÅÎÔ ÎÅ ÓÏÄÅÒÖÉÔ ÐÏÄÄÅÒÖËÉ ÄÌÑ URL SNEWS."
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr "îÅÔ ÃÅÌÉ ÄÌÑ ÏÂÙÞÎÏÇÏ ÔÅËÓÔÁ!"
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "õÓÔÁÎÏ×ÌÅÎÉÅ ÓÏÅÄÉÎÅÎÉÑ Ó õÚÌÏÍîÏ×ÏÓÔÅÊ ..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "îÅÔ ÄÏÓÔÕÐÁ Ë %s."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÐÏÌÕÞÉÔØ ÉÎÆÏÒÍÁÃÉÀ Ï ÎÏ×ÏÓÔÑÈ. õÚÅÌ ÎÏ×ÏÓÔÅÊ %.20s ÏÔ×ÅÔÉÌ: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "îÕ ÕÄÁÅÔÓÑ ÐÒÏÞÉÔÁÔØ ÉÎÆÏÒÍÁÃÉÀ Ï ÎÏ×ÏÓÔÑÈ, ÐÕÓÔÏÊ ÏÔ×ÅÔ ÏÔ ÕÚÌÁ %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "þÔÅÎÉÅ ÓÐÉÓËÁ ÄÏÓÔÕÐÎÙÈ ÇÒÕÐÐ ÎÏ×ÏÓÔÅÊ."
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "þÔÅÎÉÅ ÓÐÉÓËÁ ÓÔÁÔÅÊ × ÇÒÕÐÐÅ ÎÏ×ÏÓÔÅÊ."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "þÔÅÎÉÅ ÓÔÁÔØÉ ÎÏ×ÏÓÔÅÊ."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÚÁÇÒÕÚÉÔØ ÚÁÐÒÏÛÅÎÎÙÅ ÎÏ×ÏÓÔÉ, ÉÚ×ÉÎÉÔÅ."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "îÅ×ÅÒÎÙÊ ÐÏÒÔ Õ ÁÄÒÅÓÁ"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "äÌÉÎÁ ÁÄÒÅÓÁ ×ÙÇÌÑÄÉÔ ÎÅ×ÅÒÎÏÊ"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÂÎÁÒÕÖÉÔØ ÕÄÁÌÅÎÎÕÀ ÍÁÛÉÎÕ %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "îÅÐÒÁ×ÉÌØÎÏÅ ÉÍÑ ÍÁÛÉÎÙ %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ %s ÓÏÅÄÉÎÅÎÉÅ Ó %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "ÏÛÉÂËÁ ÓÏËÅÔÁ."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "ÏÛÉÂËÁ ÓÏËÅÔÁ: ÓÅÍÅÊÓÔ×Ï %d ÁÄÒÅÓ %s ÐÏÒÔ %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ ÓÏÅÄÉÎÅÎÉÅ (ÓÌÉÛËÏÍ ÍÎÏÇÏ ÐÏÐÙÔÏË)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+#, fuzzy
+msgid "Socket read failed (too many tries)."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ ÓÏÅÄÉÎÅÎÉÅ (ÓÌÉÛËÏÍ ÍÎÏÇÏ ÐÏÐÙÔÏË)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "áÄÒÅÓ ÓÏÄÅÒÖÉÔ ÉÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ: %s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "üÔÏÔ ËÌÉÅÎÔ ÎÅ ÓÏÄÅÒÖÉÔ ÐÏÄÄÅÒÖËÉ ÄÌÑ URL HTTPS."
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ ÓÏÅÄÉÎÅÎÉÅ Ó ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÏÊ."
+
+#: WWW/Library/Implementation/HTTP.c:669
+msgid "Retrying connection without TLS."
+msgstr "ðÏÐÙÔËÁ ÕÓÔÁÎÏ×ÉÔØ ÓÏÅÄÉÎÅÎÉÅ ÂÅÚ TLS."
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+#, fuzzy
+msgid "the certificate has been revoked"
+msgstr "Cookie ÕÄÁÌÅÎ!"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "ïÛÉÂËÁ SSL:host(%s)!=cert(%s)-ðÒÏÄÏÌÖÉÔØ?"
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "âÅÚÏÐÁÓÎÏÅ HTTP-ÓÏÅÄÉÎÅÎÉÅ: %d ÂÉÔ %s (%s)"
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "ðÏÓÙÌËÁ HTTP-ÚÁÐÒÏÓÁ."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr "îÅÏÖÉÄÁÎÎÁÑ ÏÛÉÂËÁ ÚÁÐÉÓÉ ÐÏ ÓÅÔÉ; ÓÏÅÄÉÎÅÎÉÅ ÐÒÅÒ×ÁÎÏ."
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP-ÚÁÐÒÏÓ ÐÏÓÌÁÎ; ÏÖÉÄÁÅÔÓÑ ÏÔ×ÅÔ."
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr "îÅÏÖÉÄÁÎÎÁÑ ÏÛÉÂËÁ ÞÔÅÎÉÑ ÐÏ ÓÅÔÉ; ÓÏÅÄÉÎÅÎÉÅ ÐÒÅÒ×ÁÎÏ."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr "ðÏÌÕÞÅÎ ÎÅÏÖÉÄÁÎÎÙÊ éÎÆÏÒÍÁÃÉÏÎÎÙÊ óÔÁÔÕÓ."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr "úÁÐÒÏÓ ×ÙÐÏÌÎÅÎ.  ïÂÎÏ×ÌÅÎÉÅ óÏÄÅÒÖÉÍÏÇÏ."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr "ðÏÌÕÞÅÎ ÎÅÏÖÉÄÁÎÎÙÊ ÓÔÁÔÕÓ 304 (îÅ íÏÄÉÆÉÃÉÒÏ×ÁÎÏ)."
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr "ðÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ ÓÏÄÅÒÖÉÍÏÇÏ POST ÔÒÅÂÕÅÔ ÐÏÄÔ×ÅÒÖÄÅÎÉÑ ÐÏÌØÚÏ×ÁÔÅÌÑ."
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "éÍÅÅÔÓÑ ÓÏÄÅÒÖÉÍÏÅ POST. ôÒÁËÔÏ×ËÁ ðÏÓÔÏÑÎÎÏÇÏ ðÅÒÅÎÁÐÒÁ×ÌÅÎÉÑ ËÁË ÷ÒÅÍÅÎÎÏÇÏ.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr "ðÏ×ÔÏÒÅÎÉÅ Ó ÉÎÆÏÒÍÁÃÉÅÊ Ï ÐÒÁ×ÁÈ ÄÏÓÔÕÐÁ."
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr "ðÏËÁÚÙ×ÁÔØ ÔÅÌÏ ÓÏÏÂÝÅÎÉÑ 401?"
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr "ðÏËÁÚÙ×ÁÔØ ÔÅÌÏ ÓÏÏÂÝÅÎÉÑ 407?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr "îÅÉÚ×ÅÓÔÎÙÊ ÓÔÁÔÕÓ ÏÔ×ÅÔÁ ÏÔ ÓÅÒ×ÅÒÁ!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "ÕÄÁÌÅÎÎÙÊ %s ÓÅÁÎÓ:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ ÓÏÅÄÉÎÅÎÉÅ Ó ÓÅÒ×ÅÒÏÍ WAIS."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ WAIS-ÓÏÅÄÉÎÅÎÉÅ ÄÌÑ ÞÔÅÎÉÑ."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "ëÏÄ ÄÉÁÇÎÏÓÔÉËÉ "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "éÎÄÅËÓ "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " ÓÏÄÅÒÖÉÔ ÓÌÅÄÕÀÝÉÅ %d ÜÌÅÍÅÎÔÏ×%s, ÏÔÎÏÓÑÝÉÈÓÑ Ë \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "ðÅÒ×ÁÑ ÆÉÇÕÒÁ ÐÏÓÌÅ ËÁÖÄÏÇÏ ÜÌÅÍÅÎÔÁ Ñ×ÌÑÅÔÓÑ ÅÅ ÏÔÎÏÓÉÔÅÌØÎÙÍ ÓÞÅÔÏÍ, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "×ÔÏÒÁÑ Ñ×ÌÑÅÔÓÑ ÞÉÓÌÏÍ ÓÔÒÏË × ÜÌÅÍÅÎÔÅ."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (ÎÅ×ÅÒÎÏÅ ÉÍÑ ÆÁÊÌÁ)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(ÎÅ×ÅÒÎÙÈ ÉÄÅÎÔÉÆÉËÁÔÏÒ ÄÏËÕÍÅÎÔÁ)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(úÁÐÉÓØ ëÏÒÏÔËÏÇÏ úÁÇÏÌÏ×ËÁ, ÎÅ ÕÄÁÅÔÓÑ ÏÔÏÂÒÁÚÉÔØ)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"úÁÐÉÓØ äÌÉÎÎÏÇÏ úÁÇÏÌÏ×ËÁ, ÎÅ ÕÄÁÅÔÓÑ ÏÔÏÂÒÁÚÉÔØ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"ôÅËÓÔÏ×ÁÑ ÚÁÐÉÓØ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"úÁÐÉÓØ úÁÇÏÌÏ×ËÁ, ÎÅ ÕÄÁÅÔÓÑ ÏÔÏÂÒÁÚÉÔØ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"úÁÐÉÓØ ëÏÄÁ, ÎÅ ÕÄÁÅÔÓÑ ÏÔÏÂÒÁÚÉÔØ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "óÉÎÔÁËÓÉÞÅÓËÁÑ ÏÛÉÂËÁ × WAIS URL"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (éÎÄÅËÓ WAIS)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "éÎÄÅËÓ WAIS: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "üÔÏ ÓÓÙÌËÁ ÄÌÑ ÐÏÉÓËÁ × "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " ÉÎÄÅËÓÅ WAIS.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"÷×ÅÄÉÔÅ ËÏÍÁÎÄÕ ÐÏÉÓËÁ (s), É ÚÁÔÅÍ ÚÁÄÁÊÔÅ ÐÏÉÓËÏ×ÙÅ ÓÌÏ×Á.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (× "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "ðÏÉÓË WAIS \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" ×: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: úÁÐÒÏÓ ÓÌÉÛËÏÍ ÂÏÌØÛÏÊ."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "ðÏÉÓË × ÂÁÚÅ ÄÁÎÎÙÈ WAIS..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "ðÏÉÓË ÐÒÅÒ×ÁÎ."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÐÒÅÏÂÒÁÚÏ×ÁÔØ ÆÏÒÍÁÔ ÄÏËÕÍÅÎÔÁ WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: úÁÐÒÏÓ ÓÌÉÛËÏÍ ÄÌÉÎÎÙÊ."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "ðÏÌÕÞÅÎÉÅ ÄÏËÕÍÅÎÔÁ WAIS..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "ôÅËÓÔ ÎÅ ÂÙÌ ×ÏÚ×ÒÁÝÅÎ!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr " îå úáäáî × ÉÓÈÏÄÎÏÍ ÆÁÊÌÅ; "
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr " ÉÓÈÏÄÎÙÊ ÆÁÊÌ WAIS"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " ÏÐÉÓÁÎÉÅ"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "óÓÙÌËÉ ÄÏÓÔÕÐÁ"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "ðÒÑÍÏÊ ÄÏÓÔÕÐ"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (ÉÌÉ ÞÅÒÅÚ ÐÒÏËÓÉ-ÓÅÒ×ÅÒ, ÅÓÌÉ ÏÎ ÏÐÒÅÄÅÌÅÎ)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "ïÔ×ÅÔÓÔ×ÅÎÎÙÊ"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "íÁÛÉÎÁ"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "ðÁÍÑÔØ ÉÓÞÅÒÐÁÎÁ, ÏÔÏÂÒÁÖÅÎÉÅ ÐÒÅÒ×ÁÎÏ!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "ðÁÍÑÔØ ÉÓÞÅÒÐÁÎÁ, ÐÅÒÅÄÁÞÁ ÄÁÎÎÙÈ ÂÕÄÅÔ ÐÒÅÒ×ÁÎÁ!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** ðáíñôø éóþåòðáîá ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "ÎÅÉÚ×ÅÓÔÎÏÅ ÐÏÌÅ ÉÌÉ ÓÓÙÌËÁ"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "ÐÏÌÅ ××ÏÄÁ ÔÅËÓÔÁ"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "ÐÏÌÅ ××ÏÄÁ ÐÁÒÏÌÑ"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "ÎÅÚÁ×ÉÓÉÍÁÑ ËÎÏÐËÁ"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "ÚÁ×ÉÓÉÍÁÑ ËÎÏÐËÁ"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "ËÎÏÐËÁ ÐÏÓÙÌËÉ"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "ËÎÏÐËÁ ÏÞÉÓÔËÉ"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "×ÓÐÌÙ×ÁÀÝÅÅ ÍÅÎÀ"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "ÓËÒÙÔÏÅ ÐÏÌÅ ÆÏÒÍÙ"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "ÏÂÌÁÓÔØ ××ÏÄÁ ÔÅËÓÔÁ"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr "ÐÏÌÅ ××ÏÄÁ ÄÉÁÐÁÚÏÎÁ"
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "ÐÏÌÅ ××ÏÄÁ ÆÁÊÌÁ"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr "ÔÅËÓÔÏ×ÏÅ ÐÏÌÅ ÐÏÓÙÌËÉ"
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "ÇÒÁÆÉÞÅÓËÁÑ ËÎÏÐËÁ ÐÏÓÙÌËÉ"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr "ÐÏÌÅ keygen"
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "ÎÅÉÚ×ÅÓÔÎÏÅ ÐÏÌÅ ÆÏÒÍÙ"
+
+#: src/GridText.c:10279
+msgid "Can't open file for uploading"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ ÄÌÑ ÚÁÇÒÕÚËÉ!"
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr "ðÏÓÙÌËÁ %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr "ðÅÒÅÎÅÓÔÉ ÓÔÒÏËÉ, ÞÔÏÂÙ ÐÏÐÁÓÔØ × ÏÂÌÁÓÔØ ÏÔÏÂÒÁÖÅÎÉÑ?"
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr "ïÞÅÎØ ÄÌÉÎÎÙÅ ÓÔÒÏËÉ ÂÙÌÉ ÐÅÒÅÎÅÓÅÎÙ!"
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr "ïÞÅÎØ ÄÌÉÎÎÙÅ ÓÔÒÏËÉ ÂÙÌÉ ÕÓÅÞÅÎÙ!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "ÂÁÊÔ"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "ðÒÏÞÉÔÁÎÏ %s ÄÁÎÎÙÈ"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "ðÒÏÞÉÔÁÎÏ %s ÉÚ %s ÄÁÎÎÙÈ"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/ÓÅË"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (ÚÁÄÅÒÖÁÎÏ ÎÁ %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", ETA %s"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (îÁÖÍÉÔÅ 'z' ÞÔÏÂÙ ÐÒÅÒ×ÁÔØ)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "yes"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "no"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "ïÐÉÓÁÎÉÅ:"
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr "(ÎÅÔ)"
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr "ðÕÔØ Ë ÆÁÊÌÕ:"
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(ÎÅÉÚ×ÅÓÔÎÙÊ)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "äÏËÕÍÅÎÔ ÉÍÅÅÔ ÔÏÌØËÏ ÓËÒÙÔÙÅ ÓÓÙÌËÉ.  éÓÐÏÌØÚÕÊÔÅ ËÏÍÁÎÄÕ 'l'ist."
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr "ïÛÉÂËÁ ËÜÛÉÒÏ×ÁÎÉÑ ÉÓÈÏÄÎÙÈ ÆÁÊÌÏ× - ÐÅÒÅÐÏÌÎÅÎÉÅ ÄÉÓËÁ?"
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr "ïÛÉÂËÁ ËÜÛÉÒÏ×ÁÎÉÑ ÉÓÈÏÄÎÙÈ ÆÁÊÌÏ× - ÎÅ È×ÁÔÁÅÔ ÐÁÍÑÔÉ!"
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     üÔÏÔ ÆÁÊÌ Ñ×ÌÑÅÔÓÑ HTML-ÐÒÅÄÓÔÁ×ÌÅÎÉÅÍ ÆÁÊÌÁ ÚÁËÌÁÄÏË X Mosaic.\n"
+"     õÓÔÁÒÅ×ÛÉÅ É ÎÅÐÒÁ×ÉÌØÎÙÅ ÓÓÙÌËÉ ÍÏÇÕÔ ÂÙÔØ ÕÄÁÌÅÎÙ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ\n"
+"     ËÏÍÁÎÄÙ ÕÄÁÌÅÎÉÑ ÚÁËÌÁÄËÉ, ÏÂÙÞÎÏ ËÌÁ×ÉÛÁ 'R', ÈÏÔÑ ÏÎÁ ÍÏÖÅÔ ÂÙÔØ\n"
+"     ÐÅÒÅÎÁÚÎÁÞÅÎÁ ×ÁÍÉ ÉÌÉ ÓÉÓÔÅÍÎÙÍ ÁÄÍÉÎÉÓÔÒÁÔÏÒÏÍ."
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     ÷Ù ÍÏÖÅÔÅ ÕÄÁÌÑÔØ ÓÓÙÌËÉ ËÌÁ×ÉÛÅÊ 'R'<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     ÷Ù ÍÏÖÅÔÅ ÕÄÁÌÑÔØ ÓÓÙÌËÉ ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ ÕÄÁÌÅÎÉÑ ÚÁËÌÁÄËÉ.  ïÂÙÞÎÏ ÜÔÏ\n"
+"     ÄÅÌÁÅÔÓÑ Ó ÐÏÍÏÝØÀ ËÌÁ×ÉÛÉ 'R', ÎÏ ÍÏÖÅÔ ÂÙÔØ ÐÅÒÅÎÁÚÎÁÞÅÎÏ ×ÁÍÉ ÉÌÉ\n"
+"     ×ÁÛÉÍ ÓÉÓÔÅÍÎÙÍ ÁÄÍÉÎÉÓÔÒÁÔÏÒÏÍ."
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     üÔÏÔ ÆÁÊÌ ÔÁËÖÅ ÍÏÖÅÔ ÂÙÔØ ÏÔÒÅÄÁËÔÉÒÏ×ÁÎ ÓÔÁÎÄÁÒÔÎÙÍ ÔÅËÓÔÏ×ÙÍ\n"
+"     ÒÅÄÁËÔÏÒÏÍ ÄÌÑ ÕÄÁÌÅÎÉÑ ÕÓÔÁÒÅ×ÛÉÈ ÉÌÉ ÎÅÐÒÁ×ÉÌØÎÙÈ ÓÓÙÌÏË, ÉÌÉ\n"
+"     ÄÌÑ ÉÚÍÅÎÅÎÉÑ ÉÈ ÐÏÒÑÄËÁ."
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"ðÒÉÍÅÞÁÎÉÅ: ÅÓÌÉ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ ÜÔÏÔ ÆÁÊÌ ×ÒÕÞÎÕÀ,\n"
+"            ×Ù ÎÅ ÄÏÌÖÎÙ ÉÚÍÅÎÑÔØ ÆÏÒÍÁÔ ÓÔÒÏË\n"
+"            ÉÌÉ ÄÏÂÁ×ÌÑÔØ ÄÒÕÇÉÅ ÔÅÇÉ HTML.\n"
+"            õÂÅÄÉÔÅÓØ, ÞÔÏ ËÁÖÄÁÑ ÚÁËÌÁÄËÁ ÓÏÈÒÁÎÅÎÁ ÎÁ ÅÄÉÎÓÔ×ÅÎÎÏÊ ÓÔÒÏËÅ."
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "æÁÊÌ ÍÏÖÅÔ ÂÙÔØ ×ÏÓÓÔÁÎÏ×ÌÅÎ ÉÚ %s × ÔÅÞÅÎÉÅ ÜÔÏÇÏ ÓÅÁÎÓÁ"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "ïÛÉÂËÁ ÄÏÓÔÕÐÁ Ë cgi-ÓËÒÉÐÔÕ"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "èÏÒÏÛÉÊ ÓÏ×ÅÔ"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "ïÔÌÉÞÎÙÊ http ÓÅÒ×ÅÒ ÄÌÑ VMS ÄÏÓÔÕÐÅÎ ÞÅÒÅÚ"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "ÜÔÕ ÓÓÙÌËÕ"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "ðÒÅÄÏÓÔÁ×ÌÑÅÍÁÑ ÉÍ ÐÏÄÄÅÒÖËÁ CGI-ÓËÒÉÐÔÏ× Ñ×ÌÑÅÔÓÑ ÐÏÓÌÅÄÎÉÍ ÓÌÏ×ÏÍ ÔÅÈÎÉËÉ.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "÷ÙÈÏÄ ÐÏ ÐÒÅÒÙ×ÁÎÉÀ:"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr "(ÉÚ ÐÒÅÄÙÄÕÝÅÇÏ ÓÅÁÎÓÁ)"
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr ""
+
+#: src/LYCookie.c:2562
+msgid "Internal"
+msgstr "÷ÎÕÔÒÅÎÎÉÊ"
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "ÏÛÉÂËÁ cookie_domain_flag_set error, ÐÒÅÇÒÁÍÍÁ ÐÒÅÒÙ×ÁÅÔÓÑ"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "ïÛÉÂËÁ ÐÒÉ ÉÎÉÃÉÁÌÉÚÁÃÉÉ ÔÅÒÍÉÎÁÌÁ - ÎÅÉÚ×ÅÓÔÎÙÊ ÔÉÐ ÔÅÒÍÉÎÁÌÁ?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "ôÅÒÍÉÎÁÌ ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "ó ÜÔÏÊ ÐÒÏÇÒÁÍÍÏÊ ×Ù ÄÏÌÖÎÙ ÉÓÐÏÌØÚÏ×ÁÔØ ÔÅÒÍÉÎÁÌ vt100, 200, É Ô.Ä."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "ôÉÐ ×ÁÛÅÇÏ ôÅÒÍÉÎÁÌÁ ÎÅÉÚ×ÅÓÔÅÎ!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "÷×ÅÄÉÔÅ ÔÉÐ ÔÅÒÍÉÎÁÌÁ:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "ôéð ôåòíéîáìá õóôáîï÷ìåî ÷"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+" ÷ %s ÷ÅÒ. %s ÐÒÏÉÚÏÛÌÁ ÆÁÔÁÌØÎÁÑ ÏÛÉÂËÁ.\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"ðÏÖÁÌÕÊÓÔÁ, ÐÏÐÒÏÓÉÔÅ ×ÁÛÅÇÏ ÓÉÓÔÅÍÎÏÇÏ ÁÄÍÉÎÉÓÔÒÁÔÏÒÁ ÐÏÄÔ×ÅÒÄÉÔØ\n"
+"ÏÛÉÂËÕ, É, ÅÓÌÉ ÏÎÁ ÐÏÄÔ×ÅÒÄÉÔÓÑ, ÓÏÏÂÝÉÔÅ × ÓÐÉÓÏË ÒÁÓÓÙÌËÉ lynx-dev.\n"
+"óÏÏÂÝÅÎÉÑ ÏÂ ÏÛÉÂËÁÈ ÄÏÌÖÎÙ ÓÏÄÅÒÖÁÔØ ÔÏÞÎÙÅ ÏÐÉÓÁÎÉÑ ËÏÍÁÎÄÙ É/ÉÌÉ URL,\n"
+"ËÏÔÏÒÙÅ ×ÙÚÙ×ÁÀÔ ÐÒÏÂÌÅÍÕ, ÎÁÚ×ÁÎÉÅ É ×ÅÒÓÉÀ ÏÐÅÒÁÃÉÏÎÎÏÊ ÓÉÓÔÅÍÙ,\n"
+"ÒÅÁÌÉÚÁÃÉÀ TCPIP, ÓÌÅÄ ×ÙÚÏ×Ï× TRACEBACK, ÅÓÌÉ ÅÇÏ ÍÏÖÎÏ ÐÏÌÕÞÉÔØ, É ÌÀÂÕÀ\n"
+"ÄÒÕÇÕÀ ÏÔÎÏÓÑÝÕÀÓÑ Ë ÄÅÌÕ ÉÎÆÏÒÍÁÃÉÀ.\n"
+
+#: src/LYEdit.c:266
+#, fuzzy, c-format
+msgid "Error starting editor, %s"
+msgstr "ïÛÉÂËÁ ÐÒÉ ÏÂÒÁÂÏÔËÅ ÓÔÒÏËÉ %d ÉÚ %s\n"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "òÅÄÁËÔÏÒ ÕÂÉÔ ÓÉÇÎÁÌÏÍ"
+
+#: src/LYEdit.c:274
+#, fuzzy, c-format
+msgid "Editor returned with error status %s"
+msgstr "òÅÄÁËÔÏÒ ÚÁ×ÅÒÛÉÌÓÑ ÓÏ ÓÔÁÔÕÓÏÍ ÏÛÉÂËÉ, %s"
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "óËÁÞÁÎÎÁÑ ÓÓÙÌËÁ:"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "ðÒÅÄÌÁÇÁÅÍÏÅ ÉÍÑ ÆÁÊÌÁ:"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "óÔÁÎÄÁÒÔÎÙÅ ÏÐÃÉÉ ÄÌÑ ÓËÁÞÉ×ÁÎÉÑ:"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "ïÐÃÉÉ ÓËÁÞÉ×ÁÎÉÑ:"
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "óÏÈÒÁÎÉÔØ ÎÁ ÄÉÓË"
+
+#: src/LYDownload.c:545
+#, fuzzy
+msgid "View temporary file"
+msgstr "ðÒÏÓÍÏÔÒÅÔØ ÆÁÊÌ"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "óÏÈÒÁÎÅÎÉÅ ÎÁ ÄÉÓË ÏÔËÌÀÞÅÎÏ."
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "ìÏËÁÌØÎÙÅ ÄÏÐÏÌÎÅÎÉÑ:"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "éÍÑ ÎÅ ÚÁÄÁÎÏ"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "÷Ù ×ÙÂÒÁÌÉ:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(ÎÅÔ ÁÄÒÅÓÁ)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (×ÎÕÔÒÅÎÎÉÊ)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (ÂÙÌ ×ÎÕÔÒÅÎÎÉÊ)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (éÚ éÓÔÏÒÉÉ)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "÷Ù ÐÏÓÅÔÉÌÉ (POST, ÚÁËÌÁÄËÉ, ÍÅÎÀ É ÓÐÉÓËÉ ÆÁÊÌÏ× ÉÓËÌÀÞÁÀÔÓÑ):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(ðÏËÁ ÓÏÏÂÝÅÎÉÊ ÎÅÔ)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "ïÂÎÁÒÕÖÅÎ ÎÅ×ÅÒÎÙÊ ÕËÁÚÁÔÅÌØ."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "ðÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ:"
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "õËÁÚÁÔÅÌØ:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "éÍÑæÁÊÌÁ:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "îÏÍÅÒóÔÒÏËÉ:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "ïÂÎÁÒÕÖÅÎÁ ÕÔÅÞËÁ ÐÁÍÑÔÉ."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "óÏÄÅÒÖÉÔ:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "òÁÚÍÅÒâÁÊÔÁ:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "×ÙÄÅÌÅÎÏ ÚÁÎÏ×Ï:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "ïÂÝÁÑ ÕÔÅÞËÁ ÐÁÍÑÔÉ ÚÁ ÜÔÏÔ ÚÁÐÕÓË:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "÷ÙÄÅÌÅÎÏ ÂÁÊÔ"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "óÓÙÌÏË × "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "ÜÔÏÍ ÄÏËÕÍÅÎÔÅ:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "÷ÉÄÉÍÙÈ ÓÓÙÌÏË:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "óËÒÙÔÙÈ ÓÓÙÌÏË:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "óÓÙÌËÉ"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "÷ÉÄÉÍÙÅ ÓÓÙÌËÉ"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÐÏÌÕÞÉÔØ ÓÔÁÔÕÓ '%s'."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "÷ÙÂÒÁÎÎÙÊ ÜÌÅÍÅÎÔ ÎÅ Ñ×ÌÑÅÔÓÑ ÆÁÊÌÏÍ ÉÌÉ ËÁÔÁÌÏÇÏÍ!  úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "îÅ ÕÄÁÅÔÓÑ %s ×ÓÌÅÄÓÔ×ÉÅ ÓÉÓÔÅÍÎÏÊ ÏÛÉÂËÉ!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "÷ÏÚÍÏÖÎÏ ÏÛÉÂËÁ %s ×ÓÌÅÄÓÔ×ÉÅ ÓÉÓÔÅÍÎÏÊ ÏÛÉÂËÉ!"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "ÕÄÁÌÉÔØ %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "ÐÅÒÅÍÅÓÔÉÔØ %s × %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "ëÁÔÁÌÏÇ Ó ÔÁËÉÍ ÉÍÅÎÅÍ ÕÖÅ ÓÕÝÅÓÔ×ÕÅÔ!  úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "æÁÊÌ Ó ÔÁËÉÍ ÉÍÅÎÅÍ ÕÖÅ ÓÕÝÅÓÔ×ÕÅÔ!  úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "õËÁÚÁÎÎÏÅ ÉÍÑ ÕÖÅ ÉÓÐÏÌØÚÕÅÔÓÑ!  úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "æÁÊÌ ÎÁÚÎÁÞÅÎÉÑ ÉÍÅÅÔ ÄÒÕÇÏÇÏ ×ÌÁÄÅÌØÃÁ!  úÁÐÒÏÓ ÚÁÐÒÅÝÅÎ."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "æÁÊÌ ÎÁÚÎÁÞÅÎÉÑ ÎÅ Ñ×ÌÑÅÔÓÑ ÐÒÁ×ÉÌØÎÙÍ ËÁÔÁÌÏÇÏÍ!  úÁÐÒÏÓ ÚÁÐÒÅÝÅÎ."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "õÄÁÌÉÔØ ×ÓÅ ÏÔÍÅÞÅÎÎÙÅ ÆÁÊÌÙ É ËÁÔÁÌÏÇÉ?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "÷×ÅÄÉÔÅ ÎÏ×ÏÅ ÒÁÓÐÏÌÏÖÅÎÉÅ ÄÌÑ ÏÔÍÅÞÅÎÎÙÈ ÜÌÅÍÅÎÔÏ×: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "ðÕÔØ ÓÌÉÛËÏÍ ÄÌÉÎÎÙÊ"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "éÓÔÏÞÎÉË É ÐÕÔØ ÎÁÚÎÁÞÅÎÉÑ ÓÏ×ÐÁÄÁÀÔ - ÚÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "÷×ÅÄÉÔÅ ÎÏ×ÏÅ ÉÍÑ ÄÌÑ ËÁÔÁÌÏÇÁ: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "÷×ÅÄÉÔÅ ÎÏ×ÏÅ ÉÍÑ ÄÌÑ ÆÁÊÌÁ: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "îÁÊÄÅÎ ÎÅÄÏÐÕÓÔÉÍÙÊ ÓÉÍ×ÏÌ (ÒÁÚÄÅÌÉÔÅÌØ ÐÕÔÉ)! úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "÷×ÅÄÉÔÅ ÎÏ×ÏÅ ÍÅÓÔÏ ÒÁÓÐÏÌÏÖÅÎÉÑ ÄÌÑ ËÁÔÁÌÏÇÁ: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "÷×ÅÄÉÔÅ ÎÏ×ÏÅ ÍÅÓÔÏ ÒÁÓÐÏÌÏÖÅÎÉÑ ÄÌÑ ÆÁÊÌÁ: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "îÅÏÖÉÄÁÎÎÁÑ ÏÛÉÂËÁ - ÎÅ ÕÄÁÅÔÓÑ ÎÁÊÔÉ ÚÁ×ÅÒÛÁÀÝÉÊ ÒÁÚÄÅÌÉÔÅÌØ ÐÕÔÉ"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "éÓÔÏÞÎÉË É ÐÕÔØ ÎÁÚÎÁÞÅÎÉÑ ÓÏ×ÐÁÄÁÀÔ!  úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ!"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "éÚÍÅÎÉÔÅ ÉÍÑ, ÍÅÓÔÏ ÒÁÓÐÏÌÏÖÅÎÉÑ, ÉÌÉ ÐÒÁ×Á ÄÏÓÔÕÐÁ (n, l, ÉÌÉ p): "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "éÚÍÅÎÉÔØ ÉÍÑ ÉÌÉ ÍÅÓÔÏ ÒÁÓÐÏÌÏÖÅÎÉÑ (n ÉÌÉ l): "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "üÔÁ ×ÏÚÍÏÖÎÏÓÔØ ÅÝÅ ÎÅ ÒÅÁÌÉÚÏ×ÁÎÁ!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "÷×ÅÄÉÔÅ ÉÍÑ ÓÏÚÄÁ×ÁÅÍÏÇÏ ÆÁÊÌÁ: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "îÁÊÄÅÎÏ ÎÅ×ÅÒÎÏÅ ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ! úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "÷×ÅÄÉÔÅ ÉÍÑ ÄÌÑ ÎÏ×ÏÇÏ ËÁÔÁÌÏÇÁ: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "óÏÚÄÁÔØ ÆÁÊÌ ÉÌÉ ËÁÔÁÌÏÇ (f ÉÌÉ d): "
+
+#: src/LYLocal.c:1166
+#, fuzzy, c-format
+msgid "Remove directory '%s'?"
+msgstr "õÄÁÌÉÔØ ÆÁÊÌ '%s'?"
+
+#: src/LYLocal.c:1169
+#, fuzzy
+msgid "Remove directory?"
+msgstr " ËÁÔÁÌÏÇ"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "õÄÁÌÉÔØ ÆÁÊÌ '%s'?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "õÄÁÌÉÔØ ÆÁÊÌ?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "õÄÁÌÉÔØ ÓÉÍ×ÏÌØÎÕÀ ÓÓÙÌËÕ '%s'?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "õÄÁÌÉÔØ ÓÉÍ×ÏÌØÎÕÀ ÓÓÙÌËÕ?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "éÚ×ÉÎÉÔÅ, ÐÏËÁ ÎÅ ÉÚ×ÅÓÔÎÏ, ËÁË ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ÐÒÁ×Á ÄÏÓÔÕÐÁ ÄÌÑ ÎÅ-UNIX ÆÁÊÌÏ×."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ Ó ÏÐÃÉÑÍÉ ÐÒÁ× ÄÏÓÔÕÐÁ"
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "õËÁÖÉÔÅ ÎÉÖÅ ÐÒÁ×Á ÄÏÓÔÕÐÁ:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "÷ÌÁÄÅÌÅÃ:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "çÒÕÐÐÁ"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "äÒÕÇÉÅ:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr ""
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "îÅ×ÅÒÎÙÊ ÆÏÒÍÁÔ ÒÅÖÉÍÁ."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "îÅ×ÅÒÎÙÊ ÆÏÒÍÁÔ ÓÉÎÔÁËÓÉÓÁ."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "÷ÎÉÍÁÎÉÅ! UU-ÄÅËÏÄÉÒÏ×ÁÎÎÙÊ ÆÁÊÌ ÂÕÄÅÔ × ËÁÔÁÌÏÇÅ, ÉÚ ËÏÔÏÒÏÇÏ ×Ù ÚÁÐÕÓÔÉÌÉ Lynx."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "NULL ÕËÁÚÁÔÅÌØ ÎÁ URL"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "÷ÙÐÏÌÎÅÎÉÅ %s"
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "÷ÙÐÏÌÎÅÎÉÅ ÓÉÓÔÅÍÎÏÊ ËÏÍÁÎÄÙ. üÔÏ ÍÏÖÅÔ ÚÁÎÑÔØ ×ÒÅÍÑ."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "ôÅËÕÝÉÊ ËÁÔÁÌÏÇ:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "ôÅËÕÝÉÊ ×ÙÂÏÒ:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "óÅÊÞÁÓ ÎÉÞÅÇÏ ÎÅ ×ÙÂÒÁÎÏ."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "ÏÔÍÅÞÅÎÎÙÊ ÜÌÅÍÅÎÔ:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "ÏÔÍÅÞÅÎÎÙÅ ÜÌÅÍÅÎÔÙ:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "îÅÐÒÁ×ÉÌØÎÏÅ ÉÍÑ ÆÁÊÌÁ; ÚÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "õÓÔÁÎÏ×ËÁ × ×ÙÂÒÁÎÎÙÊ ËÁÔÁÌÏÇ ÎÅ ÒÁÚÒÅÛÅÎÁ."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "÷ÙÂÒÁÎÎÙÊ ÜÌÅÍÅÎÔ ÎÅ Ñ×ÌÑÅÔÓÑ ËÁÔÁÌÏÇÏÍ!  úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "íÉÎÕÔËÕ ..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr ""
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "éÓÔÏÞÎÉË É ÃÅÌØ ÓÏ×ÐÁÄÁÀÔ: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "õÖÅ × ÃÅÌÅ×ÏÍ ËÁÔÁÌÏÇÅ: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "õÓÔÁÎÏ×ËÁ ÚÁ×ÅÒÛÅÎÁ"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "÷ÒÅÍÅÎÎÙÊ URL ÉÌÉ ÓÐÉÓÏË ÄÏÌÖÅÎ ÂÙÔØ ÓÌÉÛËÏÍ ÄÌÉÎÎÙÍ."
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "ðÏÓÙÌËÁ"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "óÓÙÌËÁ   %s :?: %s \n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "ÎÁÚ×ÁÎÎÁÑ \"%s\"\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "× ÆÁÊÌÅ \"%s\" ÎÁÚ×ÁÎÁ \"%s\"\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "ÂÙÌÁ ÚÁÐÒÏÛÅÎÁ, ÎÏ ÏËÁÚÁÌÁÓØ ÎÅÄÏÓÔÕÐÎÁ."
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr "èÏÔÑ ×Ù ÍÏÖÅÔÅ ÈÏÔÅÔØ ÚÎÁÔØ."
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "üÔÏ ÓÏÏÂÝÅÎÉÅ ÂÙÌÏ Á×ÔÏÍÁÔÉÞÅÓËÉ ÓÇÅÎÅÒÉÒÏ×ÁÎÏ"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr "ë ÓÏÖÁÌÅÎÉÀ Winsock ÎÅ ÎÁÊÄÅÎ."
+
+#: src/LYMain.c:1226
+#, fuzzy
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "÷Ù äïìöîù ÏÐÒÅÄÅÌÉÔØ ÐÒÁ×ÉÌØÎÕÀ ÏÂÌÁÓÔØ TMP ÉÌÉ TEMP!\n"
+
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+msgid "No such directory"
+msgstr "îÅÔ ËÁÔÁÌÏÇÁ"
+
+#: src/LYMain.c:1464
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"ëÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ %s ÎÅ ÄÏÓÔÕÐÅÎ.\n"
+"\n"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"ëÏÄÉÒÏ×ËÉ Lynx ÎÅ ÏÐÒÅÄÅÌÅÎÙ.\n"
+"\n"
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1579
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"æÁÊÌ Lynx %s ÎÅ ÄÏÓÔÕÐÅÎ.\n"
+"\n"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr "ðÒÅÄÕÐÒÅÖÄÅÎÉÅ:"
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr "ÓÏÓÔÏÑÎÉÅ ÐÏÓÔÏÑÎÎÙÈ cookie ÂÕÄÅÔ ÉÚÍÅÎÅÎÏ ÔÏÌØËÏ × ÓÌÅÄÕÀÝÅÍ ÓÅÁÎÓÅ."
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: ÎÅÒÁÓÐÏÚÎÁÎÎÁÑ ËÏÄÉÒÏ×ËÁ=%s ÉÇÎÏÒÉÒÕÅÔÓÑ\n"
+
+#: src/LYMain.c:3181
+#, fuzzy, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s ÷ÅÒÓÉÑ %s (%s)\n"
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "óÏÂÒÁÎÏ %s %s %s\n"
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+#, fuzzy
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "á×ÔÏÒÓËÉÅ ÐÒÁ×Á ÐÒÉÎÁÄÌÅÖÁÔ ÕÎÉ×ÅÒÓÉÔÅÔÕ ëÁÎÚÁÓÁ, CERN, É ÄÒÕÇÉÍ ÕÞÁÓÔÎÉËÁÍ.\n"
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "òÁÓÐÒÏÓÔÒÁÎÑÅÔÓÑ × ÒÁÍËÁÈ õÎÉ×ÅÒÓÁÌØÎÏÊ ïÂÝÅÓÔ×ÅÎÎÏÊ ìÉÃÅÎÚÉÉ GNU.\n"
+
+#: src/LYMain.c:3244
+#, fuzzy
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+"óÍ. http://lynx.browser.org/ É ÐÏÍÏÝØ ÄÌÑ ÄÏÐÏÌÎÉÔÅÌØÎÏÊ ÉÎÆÏÒÍÁÃÉÉ.\n"
+"\n"
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "éóðïìøúï÷áîéå: %s [ËÌÀÞÉ] [ÆÁÊÌ]\n"
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr "ëÌÀÞÉ:\n"
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: îÅ×ÅÒÎÁÑ ÏÐÃÉÑ: %s\n"
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "÷ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: îÅ×ÅÒÎÁÑ ÓÓÙÌËÁ ÍÙÛÉ %d!"
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr "URL, ÕËÁÚÁÎÎÙÊ ÐÏÌØÚÏ×ÁÔÅÌÅÍ"
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Enctype multipart/form-data ÅÝÅ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ!  îÅ ÕÄÁÅÔÓÑ ÐÏÓÌÁÔØ."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr "üËÒÁÎ ðÏÍÏÝÉ"
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr "óÉÓÔÅÍÎÙÊ éÎÄÅËÓ"
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr "÷ÈÏÄ ÎÁ ÇÌÁ×ÎÙÊ ÜËÒÁÎ"
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr "óÌÅÄÕÀÝÉÊ ÄÏËÕÍÅÎÔ ÏÔÓÕÔÓÔ×ÕÅÔ"
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "ÉÚ×ÉÎÉÔÅ, ËÏÄÉÒÏ×ËÁ ÄÌÑ ÜÔÏÇÏ ÄÏËÕÍÅÎÔÁ ÕËÁÚÁÎÁ Ñ×ÎÏ..."
+
+#: src/LYMainLoop.c:5052
+msgid "cd to:"
+msgstr "ÐÅÒÅÊÔÉ ×:"
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr "ëÏÍÐÏÎÅÎÔÁ ÐÕÔÉ ÎÅ Ñ×ÌÑÅÔÓÑ ËÁÔÁÌÏÇÏÍ"
+
+#: src/LYMainLoop.c:5080
+msgid "failed to change directory"
+msgstr "ÎÅ ÕÄÁÌÏÓØ ÉÚÍÅÎÉÔØ ËÁÔÁÌÏÇ"
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr "äÏËÕÍÅÎÔ ÒÁÚÂÉÒÁÅÔÓÑ ÚÁÎÏ×Ï Ó ÕÞÅÔÏÍ ÔÅËÕÝÉÈ ÕÓÔÁÎÏ×ÏË..."
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "æÁÔÁÌØÎÁÑ ÏÛÉÂËÁ - ÎÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ×ÙÈÏÄÎÏÊ ÆÁÊÌ %s\n"
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:6960
+msgid "Current URL is empty."
+msgstr "ôÅËÕÝÉÊ URL ÐÕÓÔ."
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "ïÝÉÂËÁ ÐÒÉ ËÏÐÉÒÏ×ÁÎÉÉ × ÂÕÆÅÒ ÏÂÍÅÎÁ."
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr "URL ÄÏËÕÍÅÎÔÁ ÐÏÍÅÝÅÎ × ÂÕÆÅÒ ÏÂÍÅÎÁ."
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr "URL ÓÓÙÌËÉ ÐÏÍÅÝÅÎ × ÂÕÆÅÒ ÏÂÍÅÎÁ."
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr "URL × ÂÕÆÅÒÅ ÏÂÍÅÎÁ ÏÔÓÕÔÓÔ×ÕÅÔ."
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+msgid "-index-"
+msgstr "-ÉÎÄÅËÓ-"
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr "lynx: îÅÔ ÄÏÓÔÕÐÁ Ë ÎÁÞÁÌØÎÏÍÕ ÆÁÊÌÕ"
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: îÁÞÁÌØÎÙÊ ÆÁÊÌ ÌÉÂÏ ÎÅ ÕÄÁÅÔÓÑ ÎÁÊÔÉ, ÌÉÂÏ ÏÎ ÎÅ text/html ÉÌÉ text/plain"
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr "      ÷ÙÈÏÄ..."
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr "-ÄÁÌÅÅ-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "÷Ù ÂÕÄÅÔÅ ÐÏÓÙÌÁÔØ ×:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" ðÏÖÁÌÕÊÓÔÁ, ÕËÁÖÉÔÅ ×ÁÛ ÐÏÞÔÏ×ÙÊ ÁÄÒÅÓ ÄÌÑ ÚÁÇÏÌÏ×ËÁ From:\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" ðÏÖÁÌÕÊÓÔÁ, ÕËÁÖÉÔÅ ÉÌÉ ÏÔÒÅÄÁËÔÉÒÕÊÔÅ ÚÁÇÏÌÏ×ÏË Subject:\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" ðÏÖÁÌÕÊÓÔÁ, ÕËÁÖÉÔÅ ÉÌÉ ÏÔÒÅÄÁËÔÉÒÕÊÔÅ ÚÁÇÏÌÏ×ÏË Organization:\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" ðÏÖÁÌÕÊÓÔÁ, ××ÅÄÉÔÅ ÎÉÖÅ ×ÁÛÅ ÓÏÏÂÝÅÎÉÅ."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "óÏÏÂÝÅÎÉÅ ÎÅ ÉÍÅÅÔ ÐÅÒ×ÏÎÁÞÁÌØÎÏÇÏ ÔÅËÓÔÁ!"
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "ÐÒÏÓÍÏÔÒÅÔØ/ÏÔÒÅÄÁËÔÉÒÏ×ÁÔØ ÆÁÊÌÙ B)ÚÁËÌÁÄÏË"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "æÁÊÌ B)ÚÁËÌÁÄÏË: "
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2242
+#, fuzzy
+msgid "Novice"
+msgstr "îÅÔ"
+
+#: src/LYOptions.c:2243
+#, fuzzy
+msgid "Intermediate"
+msgstr "÷ÎÕÔÒÅÎÎÉÊ"
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2279
+#, fuzzy
+msgid "as links"
+msgstr "ÜÔÕ ÓÓÙÌËÕ"
+
+#: src/LYOptions.c:2286
+#, fuzzy
+msgid "show filename"
+msgstr " (ÎÅ×ÅÒÎÏÅ ÉÍÑ ÆÁÊÌÁ)"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2329
+#, fuzzy
+msgid "Directories first"
+msgstr "ðÏÄËÁÔÁÌÏÇÉ:"
+
+#: src/LYOptions.c:2330
+#, fuzzy
+msgid "Files first"
+msgstr " ÓÎÁÞÁÌÁ"
+
+#: src/LYOptions.c:2331
+#, fuzzy
+msgid "Mixed style"
+msgstr "óÔÉÌØ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÓÔÒÏË"
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+#, fuzzy
+msgid "By Name"
+msgstr "éÍÑ:"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+#, fuzzy
+msgid "By Size"
+msgstr "òÁÚÍÅÒâÁÊÔÁ:"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+#, fuzzy
+msgid "By Date"
+msgstr "äÁÔÁ:"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2346
+#, fuzzy
+msgid "By Group"
+msgstr "çÒÕÐÐÁ"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, fuzzy, c-format
+msgid "Show %s/sec rate"
+msgstr "ðÏËÁÚÙ×ÁÔØ ÓËÏÒÏÓÔØ ÐÅÒÅÄÁÞÉ"
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2379
+#, fuzzy
+msgid "Show progressbar"
+msgstr "ðÏËÁÚÙ×ÁÔØ ÐÏÌÏÓÕ ÐÒÏËÒÕÔËÉ"
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2395
+#, fuzzy
+msgid "Accept all types"
+msgstr "ðÒÉÎÑÔØ ÉÚÍÅÎÅÎÉÑ"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "éÓÐÏÌØÚÕÊÔÅ %s ÄÌÑ ×ÙÚÏ×Á ÍÅÎÀ ðÁÒÁÍÅÔÒÏ×!"
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr "(ÐÁÒÁÍÅÔÒÙ, ÏÔÍÅÞÅÎÎÙÅ (!) ÓÏÈÒÁÎÅÎÙ ÎÅ ÂÕÄÕÔ)"
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "ïÂÝÉÅ ðÒÅÄÐÏÞÔÅÎÉÑ"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "òÅÖÉÍ ÐÏÌØÚÏ×ÁÔÅÌÑ"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "òÅÄÁËÔÏÒ"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "ôÉÐ ÐÏÉÓËÁ"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "Cookie"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "÷×ÏÄ Ó ËÌÁ×ÉÁÔÕÒÙ"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "òÅÖÉÍ ÄÏÐÏÌÎÉÔÅÌØÎÏÊ ËÌÁ×ÉÁÔÕÒÙ"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "ëÌÁ×ÉÛÉ Emacs"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "ëÌÁ×ÉÛÉ VI"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr "óÔÉÌØ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÓÔÒÏË"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr "òÁÓËÌÁÄËÁ ËÌÁ×ÉÁÔÕÒÙ"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "ïÔÏÂÒÁÖÅÎÉÅ É îÁÂÏÒ óÉÍ×ÏÌÏ×"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+#, fuzzy
+msgid "Use locale-based character set"
+msgstr "ëÏÄÉÒÏ×ËÁ ÏÔÏÂÒÁÖÅÎÉÑ"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "ëÏÄÉÒÏ×ËÁ ÏÔÏÂÒÁÖÅÎÉÑ"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "ðÏÄÒÁÚÕÍÅ×ÁÅÍÁÑ ËÏÄÉÒÏ×ËÁ ÄÏËÕÍÅÎÔÁ"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "òÅÖÉÍ CJK"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "îÅÏÂÒÁÂÏÔÁÎÎÙÊ 8-ÂÉÔÎÙÊ ÒÅÖÉÍ"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "üËÒÁÎ X"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "÷ÎÅÛÎÉÊ ×ÉÄ ÄÏËÕÍÅÎÔÁ"
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "ðÏËÁÚÙ×ÁÔØ Ã×ÅÔ"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "ðÏËÁÚÙ×ÁÔØ ËÕÒÓÏÒ"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+#, fuzzy
+msgid "Underline links"
+msgstr "óËÒÙÔÙÈ ÓÓÙÌÏË:"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr "ðÏËÁÚÙ×ÁÔØ ÐÏÌÏÓÕ ÐÒÏËÒÕÔËÉ"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr "÷ÓÐÌÙ×ÁÀÝÉÅ ÍÅÎÀ ÄÌÑ ×ÙÂÒÁÎÎÙÈ ÐÏÌÅÊ"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "÷ÏÓÓÔÁÎÏ×ÌÅÎÉÅ ÏÔ ÏÛÉÂÏË × HTML"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "ðÏËÁÚÁÔØ ÉÚÏÂÒÁÖÅÎÉÑ"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "úÁÍÅÎÑÔØ ÉÚÏÂÒÁÖÅÎÉÑ ÎÁ ÁÄÒÅÓÁ"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "úÁÇÏÌÏ×ËÉ, ÐÅÒÅÄÁÎÎÙÅ ÎÁ ÕÄÁÌÅÎÎÙÅ ÓÅÒ×ÅÒÙ"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "ðÅÒÓÏÎÁÌØÎÙÊ ÐÏÞÔÏ×ÙÊ ÁÄÒÅÓ"
+
+#: src/LYOptions.c:3760
+#, fuzzy
+msgid "Password for anonymous ftp"
+msgstr "ðÁÒÏÌØ ÄÌÑ ÕÚÌÁ ÎÏ×ÏÓÔÅÊ '%s':"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+#, fuzzy
+msgid "Preferred media type"
+msgstr "ðÅÒÅÄÁÎÏ %d ÂÁÊÔ"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+#, fuzzy
+msgid "Preferred encoding"
+msgstr "ðÒÅÄÐÏÞÉÔÁÅÍÙÊ ÑÚÙË ÄÏËÕÍÅÎÔÁ"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "ðÒÅÄÐÏÞÉÔÁÅÍÁÑ ËÏÄÉÒÏ×ËÁ ÄÏËÕÍÅÎÔÁ"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "ðÒÅÄÐÏÞÉÔÁÅÍÙÊ ÑÚÙË ÄÏËÕÍÅÎÔÁ"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "úÁÇÏÌÏ×ÏË User-Agent"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "÷Ù×ÏÄ ÓÐÉÓËÁ ÆÁÊÌÏ× É ÄÏÓÔÕÐ Ë ÎÉÍ"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "ëÒÉÔÅÒÉÊ ÓÏÒÔÉÒÏ×ËÉ FTP"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "ëÒÉÔÅÒÉÊ ÓÏÒÔÉÒÏ×ËÉ ÌÏËÁÌØÎÏÇÏ ËÁÔÁÌÏÇÁ"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+msgid "Local directory sort order"
+msgstr "ëÒÉÔÅÒÉÊ ÓÏÒÔÉÒÏ×ËÉ ÌÏËÁÌØÎÏÇÏ ËÁÔÁÌÏÇÁ"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "ðÏËÁÚÙ×ÁÔØ dot-ÆÁÊÌÙ"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "÷ÙÐÏÌÎÅÎÉÅ ÓÓÙÌÏË"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr "ðÏËÁÚÙ×ÁÔØ ÓËÏÒÏÓÔØ ÐÅÒÅÄÁÞÉ"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "óÐÅÃÉÁÌØÎÙÅ ÆÁÊÌÙ É ÜËÒÁÎÙ"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "íÎÏÖÅÓÔ×ÅÎÎÙÅ ÚÁËÌÁÄËÉ"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "ðÒÏÓÍÏÔÒÅÔØ/ÏÔÒÅÄÁËÔÉÒÏ×ÁÔØ ÆÁÊÌÁ ÚÁËÌÁÄÏË"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "ðÅÒÅÈÏÄ Ë ÍÅÎÀ ÍÎÏÖÅÓÔ×ÅÎÎÙÈ ÚÁËÌÁÄÏË"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "æÁÊÌ ÚÁËÌÁÄÏË"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "ðÏÓÅÝÅÎÎÙÅ ÓÔÒÁÎÉÃÙ"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr "ðÒÏÓÍÏÔÒÅÔØ ÆÁÊÌ"
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " úÁÄÁÞÁ ÐÅÞÁÔÉ ÚÁ×ÅÒÛÅÎÁ.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "äÏËÕÍÅÎÔ:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "þÉÓÌÏ ÓÔÒÏË:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "þÉÓÌÏ ÓÔÒÁÎÉÃ:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "ÓÔÒÁÎÉÃ"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "ÓÔÒÁÎÉÃÁ"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(ÐÒÉÂÌÉÚÉÔÅÌØÎÏ)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "îÅËÏÔÏÒÙÅ ÆÕÎËÃÉÉ ÐÅÞÁÔÉ ÂÙÌÉ ÏÔËÌÀÞÅÎÙ!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "óÔÁÎÄÁÒÔÎÙÅ ÏÐÃÉÉ ÐÅÞÁÔÉ:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "ïÐÃÉÉ ÐÅÞÁÔÉ:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "óÏÈÒÁÎÉÔØ × ÌÏËÁÌØÎÙÊ ÆÁÊÌ"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "óÏÈÒÁÎÅÎÉÅ ÎÁ ÄÉÓË ÏÔËÌÀÞÅÎÏ"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "ðÏÓÌÁÔØ ÐÏÞÔÏÊ ÆÁÊÌ"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "îÁÐÅÞÁÔÁÔØ ÎÁ ÜËÒÁÎ"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "îÁÐÅÞÁÔÁÔØ ÎÁ ÐÒÉÎÔÅÒ, ÐÏÄÓÏÅÄÉÎÅÎÎÙÊ Ë ×ÁÛÅÍÕ ÔÅÒÍÉÎÁÌÕ vt100"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"óÉÎÔÁËÓÉÞÅÓËÁÑ ÏÛÉÂËÁ ÐÒÉ ÒÁÚÂÏÒÅ COLOR × ËÏÎÆÉÇÕÒÁÃÉÏÎÎÏÍ ÆÁÊÌÅ:\n"
+"óÔÒÏËÁ ÄÏÌÖÎÁ ÉÍÅÔØ ÆÏÒÍÕ:\n"
+"COLOR:ãåìïå:ã÷åô:ã÷åô_æïîá\n"
+"\n"
+"úÄÅÓØ ã÷åô É ã÷åô_æïîá ÄÏÌÖÎÙ ÂÙÔØ ÓÐÅÃÉÁÌØÎÏÊ ÓÔÒÏËÏÊ:\n"
+"'nocolor' ÉÌÉ 'default', ÉÌÉ\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "ðÏ×ÒÅÖÄÅÎÎÁÑ ÓÔÒÏËÁ:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "ÏÛÉÂËÁ ÐÒÉ ÐÅÒÅÎÁÚÎÁÞÅÎÉÉ ËÌÁ×ÉÛÉ %s × %s ÄÌÑ %s\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "ÐÅÒÅÎÁÚÎÁÞÅÎÉÅ ËÌÁ×ÉÛÉ %s × %s ÚÁËÏÎÞÉÌÏÓØ ÎÅÕÄÁÞÅÊ\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "ÎÅ×ÅÒÎÙÊ ×ÙÂÏÒ × ÒÅÄÁËÔÏÒÅ ÓÔÒÏËÉ %s ÄÌÑ ËÌÁ×ÉÛÉ %s, ×ÙÂÒÁÎÏ ×ÓÅ\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "ÏÛÉÂËÁ ÐÒÉ ÕÓÔÁÎÏ×ËÅ ÐÒÉ×ÑÚËÉ ËÌÁ×ÉÛÉ ÒÅÄÁËÔÏÒÁ ÓÔÒÏËÉ %s (0x%x) × 0x%x ÄÌÑ %s\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "ÏÛÉÂËÁ ÐÒÉ ÕÓÔÁÎÏ×ËÅ ÐÒÉ×ÑÚËÉ ËÌÁ×ÉÛÉ ÒÅÄÁËÔÏÒÁ ÓÔÒÏËÉ %s (0x%x) ÄÌÑ %s\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: ÏÛÉÂËÁ ÓÔÁÒÔÁ, ÆÁÊÌ Ó ÐÒÁ×ÉÌÁÍÉ CERN %s ÎÅ ÄÏÓÔÕÐÅÎ\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(ÎÅÔ ÉÍÅÎÉ)"
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "âÏÌØÛÅ ÞÅÍ %d ×ÌÏÖÅÎÎÙÈ ×ËÌÀÞÅÎÉÊ lynx.cfg -- ×ÏÚÍÏÖÎÏ ÃÉËÌ?!?\n"
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "ðÏÓÌÅÄÎÑÑ ÐÏÐÙÔËÁ ×ËÌÀÞÅÎÉÑ ÂÙÌÁ '%s',\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "×ËÌÀÞÅÎÏ ÉÚ '%s'.\n"
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr "óÌÅÄÕÀÝÅÅ ÞÉÔÁÅÔÓÑ ÉÚ ×ÁÛÅÇÏ ÆÁÊÌÁ lynx.cfg."
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr "ðÏÖÁÌÕÊÓÔÁ, ÐÒÏÞÉÔÁÊÔÅ ÉÓÈÏÄÎÙÊ"
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr "ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ËÏÍÍÅÎÔÁÒÉÅ×."
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr "ïâîï÷éôø éúíåîåîéñ"
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr "÷ÁÛÁ ÏÓÎÏ×ÎÁÑ ËÏÎÆÉÇÕÒÁÃÉÑ"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "ëÁÔÁÌÏÇ, ËÏÔÏÒÙÊ ×Ù ÓÅÊÞÁÓ ÐÒÏÓÍÁÔÒÉ×ÁÅÔÅ"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "éÍÑ:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "ëÁÔÁÌÏÇ, ËÏÔÏÒÙÊ ×Ù ÓÅÊÞÁÓ ×ÙÂÒÁÌÉ"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "æÁÊÌ, ËÏÔÏÒÙÊ ×Ù ÓÅÊÞÁÓ ×ÙÂÒÁÌÉ"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "óÉÍ×ÏÌØÎÁÑ ÓÓÙÌËÁ, ËÏÔÏÒÕÀ ×Ù ÓÅÊÞÁÓ ×ÙÂÒÁÌÉ"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "üÌÅÍÅÎÔ, ËÏÔÏÒÙÊ ×Ù ÓÅÊÞÁÓ ×ÙÂÒÁÌÉ"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "ðÏÌÎÏÅ ÉÍÑ:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "îÅ×ÏÚÍÏÖÎÏ ÓÌÅÄÏ×ÁÔØ ÐÏ ÓÓÙÌËÅ"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "õËÁÚÙ×ÁÅÔ ÎÁ ÆÁÊÌ:"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "éÍÑ ×ÌÁÄÅÌØÃÁ:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "éÍÑ ÇÒÕÐÐÙ:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "òÁÚÍÅÒ ÆÁÊÌÁ:"
+
+#: src/LYShowInfo.c:227
+#, fuzzy
+msgid "(bytes)"
+msgstr "ÂÁÊÔ"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "äÁÔÁ ÓÏÚÄÁÎÉÑ:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "ðÏÓÌÅÄÎÑÑ ÍÏÄÉÆÉËÁÃÉÑ:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "ðÏÓÌÅÄÎÉÊ ÄÏÓÔÕÐ:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "ðÒÁ×Á ÄÏÓÔÕÐÁ"
+
+#: src/LYShowInfo.c:279
+#, fuzzy
+msgid "Group:"
+msgstr "çÒÕÐÐÁ"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "æÁÊÌ, ËÏÔÏÒÙÊ ×Ù ÓÅÊÞÁÓ ÐÒÏÓÍÁÔÒÉ×ÁÅÔÅ"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "éÍÑ ÓÓÙÌËÉ:"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "ëÏÄÉÒÏ×ËÁ:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "óÅÒ×ÅÒ:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "äÁÔÁ:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "ðÏÓÌ ÍÏÄ:"
+
+#: src/LYShowInfo.c:352
+#, fuzzy
+msgid "Expires:"
+msgstr "&nbsp;õÓÔÁÒÅ×ÁÅÔ:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Cache-Control:"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:362
+#, fuzzy
+msgid "Length:"
+msgstr "Content-Length:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "ñÚÙË:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "äÁÎÎÙÅ Post:"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "ôÉÐ ÓÏÄÅÒÖÉÍÏÇÏ Post:"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "÷ÌÁÄÅÌØÃÙ:"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "ÒÁÚÍÅÒ:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "ÓÔÒÏË"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "ÒÅÖÉÍ Ó ÆÏÒÍÁÍÉ"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "ÉÓÈÏÄÎÙÊ ÔÅËÓÔ"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "ÏÂÙÞÎÙÊ"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", ÂÅÚÏÐÁÓÎÙÊ"
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ", ÞÅÒÅÚ ×ÎÕÔÒÅÎÎÀÀ ÓÓÙÌËÕ"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", ÎÅ ËÜÛÉÒÏ×ÁÔØ"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", ISMAP-ÓËÒÉÐÔ"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", ÆÁÊÌ ÚÁËÌÁÄÏË"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "ÒÅÖÉÍ:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "óÓÙÌËÁ, ËÏÔÏÒÕÀ ×Ù ÓÅÊÞÁÓ ×ÙÂÒÁÌÉ"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "íÅÔÏÄ:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "ôÉÐ ÛÉÆÒÏ×ÁÎÉÑ:"
+
+#: src/LYShowInfo.c:436
+#, fuzzy
+msgid "Action:"
+msgstr "áÄÒÅÓ: "
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(ðÏÌÅ ÆÏÒÍÙ)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "îÁ ÜÔÏÊ ÓÔÒÁÎÉÃÅ ÎÅÔ ÓÓÙÌÏË"
+
+#: src/LYShowInfo.c:455
+#, fuzzy
+msgid "Server Headers:"
+msgstr "óÅÒ×ÅÒ:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"óÉÎÔÁËÓÉÞÅÓËÁÑ ÏÛÉÂËÁ ÐÒÉ ÒÁÚÂÏÒÅ ÓÔÉÌÑ × lss ÆÁÊÌÅ:\n"
+"[%s]\n"
+"óÔÒÏËÁ ÄÏÌÖÎÁ ÉÍÅÔØ ÆÏÒÍÕ:\n"
+"ïâÿåëô:MONO:ã÷åô (Ô.Å. em:bold:brightblue:white),\n"
+"ÇÄÅ ïâÿåëô - ÏÄÎÏ ÉÚ EM,STRONG,B,I,U,BLINK É Ô.Ä.\n"
+"\n"
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "ÜÔÏ ÓÐÉÓÏË ÉÓÔÏÒÉÉ, ÔÁË ÞÔÏ ×Ù ÍÏÖÅÔÅ ÐÅÒÅÓÔÒÏÉÔØ"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "ïûéâëá! - ËÏÍÁÎÄÁ ÚÁÇÒÕÚËÉ ÎÅÐÒÁ×ÉÌØÎÏ ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÎÁ"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "îÁÊÄÅÎÏ ÎÅ×ÅÒÎÏÅ ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ \"../\"! úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "îÁÊÄÅÎ ÎÅÄÏÐÕÓÔÉÍÙÊ ÓÉÍ×ÏÌ \"/\"! úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "îÁÊÄÅÎÏ ÎÅ×ÅÒÎÏÅ ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ, ÉÓÐÏÌØÚÕÀÝÅÅ \"~\"! úÁÐÒÏÓ ÉÇÎÏÒÉÒÏ×ÁÎ."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "îÅ ÕÄÁÅÔÓÑ ÚÁÇÒÕÚÉÔØ ÆÁÊÌ."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "úÁÇÒÕÚÉÔØ ×:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "ïÐÃÉÉ ÚÁÇÒÕÚËÉ:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "îÅÏÖÉÄÁÎÎÙÊ ÐÒÏÔÏËÏÌ ÄÏÓÔÕÐÁ ÄÌÑ ÜÔÏÊ ÓÈÅÍÙ URL."
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr "óÌÉÛËÏÍ ÍÎÏÇÏ ×ÒÅÍÅÎÎÙÈ ÆÁÊÌÏ×"
+
+#: src/LYUtils.c:3719
+msgid "unknown restriction"
+msgstr "ÎÅÉÚ×ÅÓÔÎÏÅ ÏÇÒÁÎÉÞÅÎÉÅ"
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "ïÇÒÁÎÉÞÅÎÉÊ ÎÅ ÕÓÔÁÎÏ×ÌÅÎÙ.\n"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "õÓÔÁÎÏ×ÌÅÎÎÙÅ ÏÇÒÁÎÉÞÅÎÉÑ:\n"
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr "äÏÍÁÛÎÉÊ ËÁÔÁÌÏÇ ÎÅ ÎÁÊÄÅÎ"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "ïÂÙÞÎÏ ÏÔËÌÀÞÅÎÏ.  óÍ. ENABLE_LYNXRC × lynx.cfg\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies ÐÏÚ×ÏÌÑÅÔ Lynx Á×ÔÏÍÁÔÉÞÅÓËÉ ÐÒÉÎÉÍÁÔØ ×ÓÅ cookie.\n"
+"ðÏ ÕÍÏÌÞÁÎÉÀ ÜÔÁ ÏÐÃÉÑ ÕÓÔÁÎÏ×ÌÅÎÁ × \"FALSE\", ÞÔÏ ÂÕÄÅÔ ÚÁÐÒÁÛÉ×ÁÔØ\n"
+"ÐÏÄÔ×ÅÒÖÄÅÎÉÅ ÄÌÑ ËÁÖÄÏÇÏ cookie.  õÓÔÁÎÏ×ÉÔÅ accept_all_cookies × \"TRUE\"\n"
+"ÞÔÏÂÙ ÐÒÉÎÉÍÁÔØ ×ÓÅ cookie.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file ÏÐÒÅÄÅÌÑÅÔ ÉÍÑ É ÍÅÓÔÏÐÏÌÏÖÅÎÉÅ ÆÁÊÌÁ ÚÁËÌÁÄÏË ÐÏ ÕÍÏÌÞÁÎÉÀ,\n"
+"× ËÏÔÏÒÙÊ ÐÏÌØÚÏ×ÁÔÅÌØ ÍÏÖÅÔ ÐÏÍÅÝÁÔØ ÓÓÙÌËÉ ÄÌÑ ÐÒÏÓÔÏÇÏ ÄÏÓÔÕÐÁ\n"
+"× ÂÕÄÕÝÅÍ.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"åÓÌÉ case_sensitive_searching ÎÁÈÏÄÉÔÓÑ × ÓÏÓÔÏÑÎÉÉ \"on\", ÔÏ ËÏÇÄÁ\n"
+"ÐÏÌØÚÏ×ÁÔÅÌØ ×ÙÚÙ×ÁÅÔ ÐÏÉÓË ÉÓÐÏÌØÚÕÑ ËÌÁ×ÉÛÉ 's' ÉÌÉ '/', ×ÙÐÏÌÎÑÅÍÙÊ ÐÏÉÓË\n"
+"ÂÕÄÅÔ ÐÒÏÉÚ×ÏÄÉÔØÓÑ Ó ÕÞÅÔÏÍ ÒÅÇÉÓÔÒÁ ÓÉÍ×ÏÌÏ×, ×ÍÅÓÔÏ ÐÏÉÓËÁ âåú ÕÞÅÔÁ\n"
+"ÒÅÇÉÓÔÒÁ.  úÎÁÞÅÎÉÅ ÐÏ ÕÍÏÌÞÁÎÉÀ ÏÂÙÞÎÏ \"off\".\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"ïÐÒÅÄÅÌÅÎÉÅ character_set ËÏÎÔÒÏÌÉÒÕÅÔ ÐÒÅÄÓÔÁ×ÌÅÎÉÅ 8-ÂÉÔÎÙÈ\n"
+"ÓÉÍ×ÏÌÏ× ÄÌÑ ×ÁÛÅÇÏ ÔÅÒÍÉÎÁÌÁ. åÓÌÉ 8-ÂÉÔÎÙÅ ÓÉÍ×ÏÌÙ ÎÅ ÏÔÏÂÒÁÖÁÀÔÓÑ\n"
+"ËÏÒÒÅËÔÎÏ ÎÁ ×ÁÛÅÍ ÜËÒÁÎÅ, ×Ù ÍÏÖÅÔÅ ÐÏÐÒÏÂÏ×ÁÔØ ÐÅÒÅÊÔÉ Ë ÄÒÕÇÏÍÕ 8-ÂÉÔÎÏÍÕ\n"
+"ÎÁÂÏÒÕ ÉÌÉ ÉÓÐÏÌØÚÏ×ÁÔØ 7-ÂÉÔÎÙÅ ÐÒÉÂÌÉÖÅÎÉÑ ÓÉÍ×ÏÌÏ×.\n"
+"ôÅËÕÝÉÍÉ ÐÒÁ×ÉÌØÎÙÍÉ ËÏÄÉÒÏ×ËÁÍÉ Ñ×ÌÑÀÔÓÑ:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains É cookie_reject_domains - ÓÐÉÓËÉ ÄÏÍÅÎÏ×, ÒÁÚÄÅÌÅÎÎÙÅ\n"
+"ÚÁÐÑÔÙÍÉ, ÏÔ ËÏÔÏÒÙÈ Lynx ÄÏÌÖÅÎ Á×ÔÏÍÁÔÉÞÅÓËÉ ÐÒÉÎÉÍÁÔØ ÉÌÉ\n"
+"ÏÔ×ÅÒÇÁÔØ ×ÓÅ cookie.  åÓÌÉ ÄÏÍÅÎ ÕËÁÚÁÎ × ÏÂÏÉÈ ÓÐÉÓËÁÈ, ×ÙÓÛÉÊ\n"
+"ÐÒÉÏÒÉÔÅÔ ÉÍÅÅÔ ×ÔÏÒÏÊ ÓÐÉÓÏË (ÏÔ×ÅÒÇÁÔØ).  ðÁÒÁÍÅÔÒ accept_all_cookies\n"
+"ÚÁÍÅÝÁÅÔ ×ÓÅ ÕÓÔÁÎÏ×ËÉ, ÓÄÅÌÁÎÎÙÅ Ó ÐÏÍÏÝØÀ ÜÔÉÈ ÓÐÉÓËÏ×.\n"
+
+#: src/LYrcFile.c:357
+#, fuzzy
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file ÏÐÒÅÄÅÌÑÅÔ ÆÁÊÌ, ÉÚ ËÏÔÏÒÏÇÏ ÂÕÄÕÔ ÓÞÉÔÙ×ÁÔØÓÑ ÐÏÓÔÏÑÎÎÙÅ cookie.\n"
+"ðÏ ÕÍÏÌÞÁÎÉÀ ÉÓÐÏÌØÚÕÅÔÓÑ ~/.lynx_cookies.\n"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, É\n"
+"cookie_query_invalid_domains - ÜÔÏ ÓÐÉÓËÉ ÄÏÍÅÎÏ×, ÒÁÚÄÅÌÅÎÎÙÈ ÚÁÐÑÔÙÍÉ,\n"
+"ËÏÔÏÒÙÅ ÐÒÏ×ÅÒÑÀÔÓÑ ÎÁ ÐÒÁ×ÉÌØÎÏÓÔØ Ó ÒÁÚÌÉÞÎÏÊ ÓÔÅÐÅÎØÀ.  åÓÌÉ ÄÏÍÅÎ\n"
+"ÎÁÈÏÄÉÔÓÑ × ÓÐÉÓËÅ ÖÅÓÔËÏÊ (strict) ÐÒÏ×ÅÒËÉ, ÔÏ ÂÕÄÅÔ ÔÒÅÂÏ×ÁÔØÓÑ ÔÏÞÎÏÅ\n"
+"ÓÏÏÔ×ÅÔÓÔ×ÉÅ RFC2109.  äÏÍÅÎÕ, ÎÁÈÏÄÑÝÅÍÕÓÑ × ÓÐÉÓËÅ ÍÑÇËÏÊ (loose) ÐÒÏ×ÅÒËÉ,\n"
+"ÂÕÄÅÔ ÒÁÚÒÅÛÅÎÏ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ cookie Ó ÎÅÐÒÁ×ÉÌØÎÙÍÉ ÁÔÒÉÂÕÔÁÍÉ\n"
+"ÐÕÔÉ ÉÌÉ ÄÏÍÅÎÁ.  ðÏ ÕÍÏÌÞÁÎÉÀ ×ÓÅ ÄÏÍÅÎÙ ÚÁÐÒÁÛÉ×ÁÀÔ ÐÏÄÔ×ÅÒÖÄÅÎÉÅ Õ\n"
+"ÐÏÌØÚÏ×ÁÔÅÌÑ × ÓÌÕÞÁÅ ÎÅÐÒÁ×ÉÌØÎÏÇÏ ÚÎÁÞÅÎÉÑ ÐÕÔÉ ÉÌÉ ÄÏÍÅÎÁ.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles ÏÐÒÅÄÅÌÑÅÔ ÓÔÉÌØ ÏÔÏÂÒÁÖÅÎÉÑ ÓÏÄÅÒÖÉÍÏÇÏ ËÁÔÁÌÏÇÁ\n"
+"ÐÒÉ DIRED_SUPPORT (ÅÓÌÉ ÒÅÁÌÉÚÏ×ÁÎÏ).  ðÏ ÕÍÏÌÞÁÎÉÀ ÕÓÔÁÎÏ×ÌÅÎÏ \"MIXED_STYLE\",\n"
+"ÞÔÏ ÓÏÒÔÉÒÕÅÔ ÆÁÊÌÙ É ËÁÔÁÌÏÇÉ ×ÍÅÓÔÅ.  \"FILES_FIRST\" ×Ù×ÏÄÉÔ ÓÎÁÞÁÌÁ ÆÁÊÌÙ,\n"
+"Á \"DIRECTORIES_FIRST\" ×Ù×ÏÄÉÔ ÓÎÁÞÁÌÁ ËÁÔÁÌÏÇÉ.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"åÓÌÉ emacs_keys ÕÓÔÁÎÏ×ÌÅÎÏ × \"on\", ÔÏ ÂÕÄÕÔ ×ËÌÀÞÅÎÙ ÏÂÙÞÎÙÅ\n"
+"ËÏÍÁÎÄÙ ÐÅÒÅÍÅÝÅÎÉÑ EMACS:\n"
+"  ^N = ×ÎÉÚ    ^P = ××ÅÒÈ\n"
+"  ^B = ×ÌÅ×Ï   ^F = ×ÐÒÁ×Ï\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor ÏÐÒÅÄÅÌÑÅÔ, ËÁËÏÊ ÒÅÄÁËÔÏÒ ÂÕÄÅÔ ÚÁÐÕÓËÁÔØÓÑ ÐÒÉ ÒÅÄÁËÔÉÒÏ×ÁÎÉÉ\n"
+"ÌÏËÁÌØÎÙÈ ÆÁÊÌÏ× ÉÌÉ ÐÒÉ ÐÏÓÙÌËÅ ÐÏÞÔÙ.  ÷ ÓÌÕÞÁÅ, ËÏÇÄÁ ÒÅÄÁËÔÏÒ ÎÅ ÕËÁÚÁÎ,\n"
+"ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ ÆÁÊÌÏ× ÂÕÄÅÔ ÚÁÐÒÅÝÅÎÏ, ÅÓÌÉ ÒÅÄÁËÔÏÒ ÎÅ ×ÙÚ×ÁÎ Ó ËÏÍÁÎÄÎÏÊ\n"
+"ÓÔÒÏËÉ, Á ÐÒÉ ÐÏÓÙÌËÅ ÐÏÞÔÙ ÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ×ÓÔÒÏÅÎÎÙÊ\n"
+"ÓÔÒÏËÏ×ÙÊ ÒÅÄÁËÔÏÒ.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method ÏÐÒÅÄÅÌÑÅÔ, ÐÏ ËÁËÏÍÕ ÐÁÒÁÍÅÔÒÕ ÐÒÏÉÚ×ÏÄÉÔØ ÓÏÒÔÉÒÏ×ËÕ\n"
+"ÐÒÉ ÐÒÏÓÍÏÔÒÅ ÓÐÉÓËÏ× ÆÁÊÌÏ×, ÔÁËÉÈ ËÁË FTP ËÁÔÁÌÏÇÉ.  ÷ÏÚÍÏÖÎÏÓÔÉ ×ÙÂÏÒÁ:\n"
+"   BY_FILENAME -- ÓÏÒÔÉÒÏ×ÁÔØ ÐÏ ÉÍÅÎÉ ÆÁÊÌÁ\n"
+"   BY_TYPE     -- ÓÏÒÔÉÒÏ×ÁÔØ ÐÏ ÔÉÐÕ ÆÁÊÌÁ\n"
+"   BY_SIZE     -- ÓÏÒÔÉÒÏ×ÁÔØ ÐÏ ÒÁÚÍÅÒÕ ÆÁÊÌÁ\n"
+"   BY_DATE     -- ÓÏÒÔÉÒÏ×ÁÔØ ÐÏ ÄÁÔÅ ÐÏÓÌÅÄÎÅÊ ÍÏÄÉÆÉËÁÃÉÉ ÆÁÊÌÁ\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode ÏÐÒÅÄÅÌÑÅÔ ÐÒÉ×ÑÚËÕ ËÌÁ×ÉÛ, ÉÓÐÏÌØÚÕÅÍÕÀ ÄÌÑ ××ÏÄÉÍÙÈ ÓÔÒÏË ×\n"
+"ÐÒÉÇÌÁÛÅÎÉÑÈ É ÆÏÒÍÁÈ.  åÓÌÉ lineedit_mode ÕÓÔÁÎÏ×ÌÅÎÏ ×\n"
+"\"ðÒÉ×ÑÚËÁ ÐÏ ÕÍÏÌÞÁÎÉÀ\", ÔÏÇÄÁ ÓÌÅÄÕÀÝÉÅ ÕÐÒÁ×ÌÑÀÝÉÅ ÓÉÍ×ÏÌÙ ÂÕÄÕÔ\n"
+"ÉÓÐÏÌØÚÏ×ÁÎÙ ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ É ÕÄÁÌÅÎÉÑ:\n"
+"\n"
+"                        ðÒÅÄ  óÌÅÄ      Enter = ðÒÉÎÑÔØ ××ÏÄ\n"
+"   óÄ×ÉÎÕÔØÓÑ ÎÁ ÓÉÍ×ÏÌ: <-    ->       ^G    = ïÔÍÅÎÉÔØ ××ÏÄ\n"
+"    óÄ×ÉÎÕÔØÓÑ ÎÁ ÓÌÏ×Ï: ^P    ^N       ^U    = õÄÁÌÉÔØ ÓÔÒÏËÕ\n"
+"         õÄÁÌÉÔØ ÓÉÍ×ÏÌ: ^H    ^R       ^A    = ÷ ÎÁÞÁÌÏ ÓÔÒÏËÉ\n"
+"          õÄÁÌÉÔØ ÓÌÏ×Ï: ^B    ^F       ^E    = ÷ ËÏÎÅà ÓÔÒÏËÉ\n"
+"ðÏÄÄÅÒÖÉ×ÁÅÍÙÅ ÒÅÖÉÍÙ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÓÔÒÏËÉ:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"óÌÅÄÕÀÝÅÅ ÐÏÚ×ÏÌÉÔ ×ÁÍ ÏÐÒÅÄÅÌÉÔØ ÆÁÊÌÙ ÐÏÄÚÁËÌÁÄÏË É ÉÈ ÏÐÉÓÁÎÉÑ.\n"
+"æÏÒÍÁÔ:   multi_bookmark<úÁÇÌÁ×ÎÁÑ_ÂÕË×Á>=<ÉÍÑ_ÆÁÊÌÁ>,<ÏÐÉÓÁÎÉÅ>\n"
+"òÁÚÒÅÛÁÅÔÓÑ ÉÍÅÔØ ÄÏ 26 ÆÁÊÌÏ× ÚÁËÌÁÄÏË (ÐÏ ËÏÌÉÞÅÓÔ×Õ ÁÎÇÌÉÊÓËÉÈ ÚÁÇÌÁ×ÎÙÈ\n"
+"ÂÕË×).  óÌÅÄÕÅÔ ÎÁÞÉÎÁÔØ Ó \"multi_bookmarkB\", Ô.Ë. 'A' Ñ×ÌÑÅÔÓÑ ÚÎÁÞÅÎÉÅÍ\n"
+"ÐÏ ÕÍÏÌÞÁÎÉÀ (ÓÍ. ×ÙÛÅ).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address ÏÐÒÅÄÅÌÑÅÔ ×ÁÛ ÌÉÞÎÙÊ ÐÏÞÔÏ×ÙÊ ÁÄÒÅÓ.  üÔÏÔ ÁÄÒÅÓ\n"
+"ÂÕÄÅÔ ÐÏÓÙÌÁÔØÓÑ ×Ï ×ÒÅÍÑ ÐÅÒÅÄÁÞÉ ÆÁÊÌÏ× ÐÏ HTTP ÄÌÑ ÁÕÔÅÎÔÉÆÉËÁÃÉÉ, Ó ÃÅÌØÀ\n"
+"×ÅÄÅÎÉÑ ÖÕÒÎÁÌØÎÙÈ ÚÁÐÉÓÅÊ, É ÄÌÑ ÐÏÓÙÌÁÅÍÙÈ ËÏÍÍÅÎÔÁÒÉÅ×.\n"
+"åÓÌÉ ×Ù ÎÅ ÈÏÔÉÔÅ ÏÂßÑ×ÌÑÔØ ÜÔÕ ÉÎÆÏÒÍÁÃÉÀ, ÕÓÔÁÎÏ×ÉÔÅ NO_FROM_HEADER\n"
+"× TRUE × lynx.cfg, ÉÌÉ ÉÓÐÏÌØÚÕÊÔÅ ËÌÀÞ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ -nofrom.  ÷Ù ÔÁËÖÅ\n"
+"ÍÏÖÅÔÅ ÏÓÔÁ×ÉÔØ ÜÔÏ ÐÏÌÅ ÐÕÓÔÙÍ, ÎÏ × ÜÔÏÍ ÓÌÕÞÁÅ ÏÎÏ ÎÅ ÂÕÄÅÔ ×ËÌÀÞÁÔØÓÑ ×\n"
+"ÐÏÓÙÌÁÅÍÙÅ ËÏÍÍÅÎÔÁÒÉÉ.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset ÏÐÒÅÄÅÌÑÅÔ ËÏÄÉÒÏ×ËÕ × ÎÏÔÁÃÉÉ MIME (ÎÁÐÒ.\n"
+"ISO-8859-2, ISO-8859-5), ËÏÔÏÒÕÀ Lynx ÂÕÄÅÔ ÕËÁÚÙ×ÁÔØ ËÁË ÐÒÅÄÐÏÞÔÉÔÅÌØÎÕÀ\n"
+"× ÚÁÐÒÏÓÁÈ Ë http ÓÅÒ×ÅÒÁÍ, ÉÓÐÏÌØÚÕÑ ÚÁÇÏÌÏ×ÏË Accept-Charset.  üÔÏ ÚÎÁÞÅÎÉÅ\n"
+"îå ÄÏÌÖÎÏ ×ËÌÀÞÁÔØ ISO-8859-1 ÉÌÉ US-ASCII, Ô.Ë. ÏÎÉ ×ÓÅÇÄÁ ÐÏÄÒÁÚÕÍÅ×ÁÀÔÓÑ ÐÏ\n"
+"ÕÍÏÌÞÁÎÉÀ.  íÏÖÅÔ ÂÙÔØ ÓÐÉÓËÏÍ, ÒÁÚÄÅÌÅÎÎÙÍ ÚÁÐÑÔÙÍÉ.\n"
+"åÓÌÉ ÆÁÊÌ × ÜÔÏÊ ËÏÄÉÒÏ×ËÅ ÄÏÓÔÕÐÅÎ, ÓÅÒ×ÅÒ ÐÏÛÌÅÔ ÅÇÏ.\n"
+"åÓÌÉ ÚÁÇÏÌÏ×ÏË Accept-Charset ÎÅ ÕËÁÚÁÎ, ÐÏ ÕÍÏÌÞÁÎÉÀ ÜÔÏ ÚÎÁÞÉÔ, ÞÔÏ ÌÀÂÁÑ\n"
+"ËÏÄÉÒÏ×ËÁ ÐÒÉÅÍÌÅÍÁ.  åÓÌÉ ÚÁÇÏÌÏ×ÏË Accept-Charset ÕËÁÚÁÎ, É ÅÓÌÉ ÓÅÒ×ÅÒ ÎÅ\n"
+"ÍÏÖÅÔ ÐÏÓÌÁÔØ ÏÔ×ÅÔ × ËÏÄÉÒÏ×ËÅ, ÐÒÉÅÍÌÅÍÏÊ × ÓÏÏÔ×ÅÔÓÔ×ÉÉ Ó ÜÔÉÍ ÚÁÇÏÌÏ×ËÏÍ,\n"
+"ÔÏ ÓÅÒ×ÅÒ äïìöåî (SHOULD) ÐÏÓÌÁÔØ ÏÔ×ÅÔ, ÕËÁÚÙ×ÁÀÝÉÊ\n"
+"ÎÁ ÏÛÉÂËÕ, ÈÏÔÑ ÐÏÓÙÌËÁ ÏÔ×ÅÔÁ × ÎÅÐÒÉÅÍÌÅÍÏÊ ËÏÄÉÒÏ×ËÅ ÔÏÖÅ ÄÏÐÕÓËÁÅÔÓÑ.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language ÏÐÒÅÄÅÌÑÅÔ ÑÚÙË × ÎÏÔÁÃÉÉ MIME (ÎÁÐÒ. en, fr,\n"
+"ÍÏÖÅÔ ÂÙÔØ ÓÐÉÓÏË, ÒÁÚÄÅÌÅÎÎÙÊ ÚÁÐÑÔÙÍÉ, ÐÏ ÕÂÙ×ÁÎÉÀ ÐÒÉÏÒÉÔÅÔÁ),\n"
+"ËÏÔÏÒÙÊ Lynx ÂÕÄÅÔ ÕËÁÚÙ×ÁÔØ ËÁË ÐÒÅÄÐÏÞÔÉÔÅÌØÎÙÊ × ÚÁÐÒÏÓÁÈ Ë http ÓÅÒ×ÅÒÁÍ.\n"
+"åÓÌÉ ÆÁÊÌ ÎÁ ÜÔÏÍ ÑÚÙËÅ ÄÏÓÔÕÐÅÎ, ÓÅÒ×ÅÒ ÂÕÄÅÔ ÐÏÓÙÌÁÔØ ÅÇÏ.\n"
+"÷ ÐÒÏÔÉ×ÎÏÍ ÓÌÕÞÁÅ, ÓÅÒ×ÅÒ ÂÕÄÅÔ ÐÏÓÙÌÁÔØ ÆÁÊÌ ÎÁ Ó×ÏÅÍ ÑÚÙËÅ ÐÏ ÕÍÏÌÞÁÎÉÀ.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"åÓÌÉ run_all_execution_links ÕÓÔÁÎÏ×ÌÅÎÏ × \"on\", ÔÏ ×ÓÅ ÌÏËÁÌØÎÙÅ\n"
+"×ÙÐÏÌÎÑÅÍÙÅ ÓÓÙÌËÉ ÂÕÄÕÔ ×ÙÐÏÌÎÑÔØÓÑ, ËÏÇÄÁ ÏÎÉ ×ÙÂÒÁÎÙ.\n"
+"\n"
+"ðòåäõðòåöäåîéå - ðÏÔÅÎÃÉÁÌØÎÏ ÜÔÏ ïþåîø ÏÐÁÓÎÏ. ô.Ë. ×Ù ÍÏÖÅÔÅ ÐÒÏÓÍÁÔÒÉ×ÁÔØ\n"
+"       ÎÅÉÚ×ÅÓÔÎÕÀ É ÎÅÐÒÏ×ÅÒÅÎÎÕÀ ÉÎÆÏÒÍÁÃÉÀ, ÓÕÝÅÓÔ×ÕÅÔ ×ÅÒÏÑÔÎÏÓÔØ\n"
+"       ÎÁÐÉÓÁÎÉÑ ÓÓÙÌÏË Ó ôÒÏÑÎÓËÉÍ ËÏÎÅÍ.  óÓÙÌËÉ Ó ôÒÏÑÎÓËÉÍ ËÏÎÅÍ\n"
+"       ÍÏÇÕÔ ÂÙÔØ ÎÁÐÉÓÁÎÙ Ó ÃÅÌØÀ ÕÎÉÞÔÏÖÅÎÉÑ ÆÁÊÌÏ× ÉÌÉ ÎÁÒÕÛÅÎÉÑ\n"
+"       ÂÅÚÏÐÁÓÎÏÓÔÉ.  üÔÁ ÏÐÃÉÑ ÄÏÌÖÎÁ ÂÙÔØ ÕÓÔÁÎÏ×ÌÅÎÁ × \"on\" ÔÏÌØËÏ\n"
+"       ÅÓÌÉ ×Ù ÐÒÏÓÍÁÔÒÉ×ÁÅÔÅ ÐÒÏ×ÅÒÅÎÎÙÊ ÉÓÔÏÞÎÉË ÉÎÆÏÒÍÁÃÉÉ.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"åÓÌÉ run_execution_links_on_local_files ÎÁÈÏÄÉÔÓÑ × ÓÏÓÔÏÑÎÉÉ \"on\", ÔÏ ×ÓÅ\n"
+"×ÙÐÏÌÎÑÅÍÙÅ ÓÓÙÌËÉ, ÎÁÊÄÅÎÎÙÅ × ìïëáìøîùè ÆÁÊÌÁÈ, ÂÕÄÕÔ ×ÙÐÏÌÎÑÔØÓÑ × ÓÌÕÞÁÅ\n"
+"ÉÈ ×ÙÂÏÒÁ.  üÔÏ ÏÔÌÉÞÁÅÔÓÑ ÏÔ run_all_execution_links ÔÅÍ, ÞÔÏ ÔÏÌØËÏ ÆÁÊÌÙ ÎÁ\n"
+"ÌÏËÁÌØÎÏÊ ÓÉÓÔÅÍÅ ÂÕÄÕÔ ÉÍÅÔØ ÒÁÚÒÅÛÅÎÉÅ ÎÁ ×ÙÐÏÌÎÑÅÍÙÅ ÓÓÙÌËÉ.\n"
+"\n"
+"ðòåäõðòåöäåîéå - üÔÏ ÐÏÔÅÎÃÉÁÌØÎÏ ÏÐÁÓÎÏ. ô.Ë. ×Ù ÍÏÖÅÔÅ ÐÒÏÓÍÁÔÒÉ×ÁÔØ\n"
+"       ÎÅÉÚ×ÅÓÔÎÕÀ É ÎÅÐÒÏ×ÅÒÅÎÎÕÀ ÉÎÆÏÒÍÁÃÉÀ, ÓÕÝÅÓÔ×ÕÅÔ ×ÅÒÏÑÔÎÏÓÔØ\n"
+"       ÎÁÐÉÓÁÎÉÑ ÓÓÙÌÏË Ó ôÒÏÑÎÓËÉÍ ËÏÎÅÍ.  óÓÙÌËÉ Ó ôÒÏÑÎÓËÉÍ ËÏÎÅÍ\n"
+"       ÍÏÇÕÔ ÂÙÔØ ÎÁÐÉÓÁÎÙ Ó ÃÅÌØÀ ÕÎÉÞÔÏÖÅÎÉÑ ÆÁÊÌÏ× ÉÌÉ ÎÁÒÕÛÅÎÉÑ\n"
+"       ÂÅÚÏÐÁÓÎÏÓÔÉ.  üÔÁ ÏÐÃÉÑ ÄÏÌÖÎÁ ÂÙÔØ ÕÓÔÁÎÏ×ÌÅÎÁ × \"on\" ÔÏÌØËÏ\n"
+"       ÅÓÌÉ ×Ù ÐÒÏÓÍÁÔÒÉ×ÁÅÔÅ ÐÒÏ×ÅÒÅÎÎÙÊ ÉÓÔÏÞÎÉË ÉÎÆÏÒÍÁÃÉÉ.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups ÏÐÒÅÄÅÌÑÅÔ, ÂÕÄÕÔ ÌÉ ïðãéé × ÂÌÏËÅ SELECT, × ËÏÔÏÒÏÍ ÏÔÓÕÔÓÔ×ÕÅÔ\n"
+"ÁÔÒÉÂÕÔ MULTIPLE, ÐÒÅÄÓÔÁ×ÌÅÎÙ ×ÅÒÔÉËÁÌØÎÙÍ ÓÐÉÓËÏÍ ÚÁ×ÉÓÉÍÙÈ ËÎÏÐÏË ÉÌÉ\n"
+"×ÓÐÌÙ×ÁÀÝÉÍ ÍÅÎÀ.  úÁÍÅÔØÔÅ, ÞÔÏ ÅÓÌÉ ÁÔÒÉÂÕÔ MULTIPLE ÐÒÉÓÕÔÓÔ×ÕÅÔ × ÔÅÇÅ\n"
+"SELECT, Lynx ÂÕÄÅÔ ×ÓÅÇÄÁ ÓÏÚÄÁ×ÁÔØ ÄÌÑ ÏÐÃÉÊ ×ÅÒÔÉËÁÌØÎÙÊ ÓÐÉÓÏË ÎÅÚÁ×ÉÓÉÍÙÈ\n"
+"ËÎÏÐÏË.  úÎÁÞÅÎÉÅ \"on\" ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ ÐÏ ÕÍÏÌÞÁÎÉÀ ×ÓÐÌÙ×ÁÀÝÉÅ ÍÅÎÀ, × ÔÏ\n"
+"×ÒÅÍÑ ËÁË ÚÎÁÞÅÎÉÅ \"off\" ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ ÚÁ×ÉÓÉÍÙÅ ËÎÏÐËÉ.  úÎÁÞÅÎÉÅ\n"
+"ÐÏ ÕÍÏÌÞÁÎÉÀ ÍÏÖÅÔ ÂÙÔØ ÉÚÍÅÎÅÎÏ ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ËÌÀÞÁ ËÏÍÁÎÄÎÏÊ\n"
+"ÓÔÒÏËÉ -popup.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color ÏÐÒÅÄÅÌÑÅÔ, ËÁË ÕÓÔÁÎÁ×ÌÉ×ÁÔØ Ã×ÅÔÏ×ÏÊ ÒÅÖÉÍ ÐÒÉ ÓÔÁÒÔÅ. úÎÁÞÅÎÉÅ\n"
+"\"never\" ÂÕÄÅÔ ÐÒÉÎÕÄÉÔÅÌØÎÏ ÏÔËÌÀÞÁÔØ Ã×ÅÔÏ×ÏÊ ÒÅÖÉÍ (É ÔÒÁËÔÏ×ÁÔØ\n"
+"ÔÅÒÍÉÎÁÌ ËÁË ÍÏÎÏÈÒÏÍÎÙÊ), ÄÁÖÅ ÅÓÌÉ ÎÁ ÐÅÒ×ÙÊ ×ÚÇÌÑÄ ÔÅÒÍÉÎÁÌ ÓÐÏÓÏÂÅÎ\n"
+"ÐÏÄÄÅÒÖÉ×ÁÔØ Ã×ÅÔÁ.  úÎÁÞÅÎÉÅ \"always\" ÐÒÉÎÕÄÉÔÅÌØÎÏ ×ËÌÀÞÁÅÔ Ã×ÅÔÏ×ÏÊ\n"
+"ÒÅÖÉÍ, ÄÁÖÅ ÅÓÌÉ ÔÅÒÍÉÎÁÌ ËÁÖÅÔÓÑ ÍÏÎÏÈÒÏÍÎÙÍ, ÅÓÌÉ ÜÔÏ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ\n"
+"ÂÉÂÌÉÏÔÅËÏÊ, ÉÓÐÏÌØÚÏ×Á×ÛÅÊÓÑ ÐÒÉ ÓÂÏÒËÅ lynx.  úÎÁÞÅÎÉÅ \"default\" ÐÒÉ×ÅÄÅÔ\n"
+"Ë ÐÏ×ÅÄÅÎÉÀ, ÐÒÉ ËÏÔÏÒÏÍ ÐÏÄÒÁÚÕÍÅ×ÁÅÔÓÑ ÍÏÎÏÈÒÏÍÎÙÊ ÔÅÒÍÉÎÁÌ, ÚÁ ÉÓËÌÀÞÅÎÉÅÍ\n"
+"ÓÌÕÞÁÅ×, ËÏÇÄÁ ÐÒÉ ÓÔÁÒÔÅ Ã×ÅÔÏ×ÙÅ ×ÏÚÍÏÖÎÏÓÔÉ ÓÌÅÄÕÀÔ ÉÚ ÔÉÐÁ ÔÅÒÍÉÎÁÌÁ,\n"
+"ÉÌÉ ÚÁÄÁÎ ËÌÀÞ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ -color, ÉÌÉ ÕÓÔÁÎÏ×ÌÅÎÁ ÐÅÒÅÍÅÎÎÁÑ ÓÒÅÄÙ\n"
+"COLORTERM.  ðÏ×ÅÄÅÎÉÅ ÐÏ ÕÍÏÌÞÁÎÉÀ ×ÓÅÇÄÁ ÉÓÐÏÌØÚÕÅÔÓÑ ÐÒÉ ÁÎÏÎÉÍÎÙÈ account\n"
+"ÉÌÉ ÅÓÌÉ ÕÓÔÁÎÏ×ÌÅÎÏ ÏÇÒÁÎÉÞÅÎÉÅ \"option_save\". üÆÆÅËÔ ÓÏÈÒÁÎÅÎÎÏÇÏ\n"
+"ÚÎÁÞÅÎÉÑ ÍÏÖÅÔ ÂÙÔØ ÐÅÒÅËÒÙÔ Ó ÐÏÍÏÝØÀ ËÌÀÞÅÊ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ\n"
+"-color É -nocolor.\n"
+"òÅÖÉÍ, ÕÓÔÁÎÏ×ÌÅÎÎÙÊ ÐÒÉ ÓÔÁÒÔÅ, ÍÏÖÅÔ ÂÙÔØ ÉÚÍÅÎÅÎ Ó ÐÏÍÏÝØÀ ÏÐÃÉÉ\n"
+"\"ÐÏËÁÚÙ×ÁÔØ Ã×ÅÔ\" × ÍÅÎÀ ÏÐÃÉÊ.  åÓÌÉ ÎÁÓÔÒÏÊËÉ ÏÐÃÉÊ ÓÏÈÒÁÎÅÎÙ, ÚÎÁÞÅÎÉÑ\n"
+"\"on\" É \"off\" ÐÁÒÁÍÅÔÒÁ \"ÐÏËÁÚÙ×ÁÔØ Ã×ÅÔ\" ÂÕÄÕÔ\n"
+"ÔÒÁËÔÏ×ÁÔØÓÑ ËÁË \"default\".\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor ÏÐÒÅÄÅÌÑÅÔ, 'ÓËÒÙ×ÁÔØ' ËÕÒÓÏÒ ÓÐÒÁ×Á (É ×ÎÉÚÕ, ÅÓÌÉ ×ÏÚÍÏÖÎÏ)\n"
+"ÜËÒÁÎÁ, ÉÌÉ ÐÏÍÅÝÁÔØ ÅÇÏ ÓÌÅ×Á ÏÔ ÔÅËÕÝÅÊ ÓÓÙÌËÉ × ÄÏËÕÍÅÎÔÁÈ ÉÌÉ ÔÅËÕÝÅÊ\n"
+"ÏÐÃÉÉ ×Ï ×ÓÐÌÙ×ÁÀÝÉÈ ÍÅÎÀ ×ÙÂÏÒÁ.  ðÏÚÉÃÉÏÎÉÒÏ×ÁÎÉÅ ËÕÒÓÏÒÁ ÓÌÅ×Á ÏÔ ÔÅËÕÝÅÊ\n"
+"ÓÓÙÌËÉ ÉÌÉ ÏÐÃÉÉ ÐÏÌÅÚÎÏ ÄÌÑ ÒÅÞÅ×ÙÈ ÉÎÔÅÒÆÅÊÓÏ× ÉÌÉ ÉÎÔÅÒÆÅÊÓÏ× ÄÌÑ ÓÌÅÐÙÈ,\n"
+"ÉÌÉ ËÏÇÄÁ ÔÅÒÍÉÎÁÌ ÏÄÉÎ ÉÚ ÔÅÈ, ËÏÔÏÒÙÅ ÎÅ ×ÙÄÅÌÑÀÔ ÔÅËÕÝÕÀ ÓÓÙÌËÉ ÑÒËÏÓÔØÀ\n"
+"ÉÌÉ Ã×ÅÔÏÍ.  úÎÁÞÅÎÉÅ \"on\" ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ ÒÁÓÐÏÌÏÖÅÎÉÅ ÓÌÅ×Á ËÁË ÏÐÃÉÀ ÐÏ\n"
+"ÕÍÏÌÞÁÎÉÀ, × ÔÏ ×ÒÅÍÑ ËÁË ÚÎÁÞÅÎÉÅ \"off\" ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ 'ÓÏËÒÙÔÉÅ' ËÕÒÓÏÒÁ.\n"
+"úÎÁÞÅÎÉÅ ÐÏ ÕÍÏÌÞÁÎÉÀ ÍÏÖÅÔ ÂÙÔØ ÐÅÒÅËÒÙÔÏ ÏÐÃÉÅÊ ËÏÍÁÎÄÎÏÊ\n"
+"ÓÔÒÏËÉ -show_cursor.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles ÏÐÒÅÄÅÌÑÅÔ, ÞÔÏ ÓÏÄÅÒÖÉÍÏÅ ËÁÔÁÌÏÇÁ ÄÏÌÖÎÏ ×ËÌÀÞÁÔØ\n"
+"\"ÓËÒÙÔÙÅ\" (ÎÁÞÉÎÁÀÝÉÅÓÑ Ó ÔÏÞËÉ) ÆÁÊÌÙ/ËÁÔÁÌÏÇÉ.  åÓÌÉ ÕÓÔÁÎÏ×ÌÅÎÏ × \"on\",\n"
+"ÜÔÏ ÂÕÄÅÔ ÕÞÉÔÙ×ÁÔØÓÑ ÔÏÌØËÏ ÅÓÌÉ ×ËÌÀÞÅÎÏ × userdefs.h É/ÉÌÉ × lynx.cfg,\n"
+"É ÎÅ ÚÁÐÒÅÝÅÎÏ Ó ÐÏÍÏÝØÀ ËÌÀÞÅÊ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ.  åÓÌÉ ÏÔÏÂÒÁÖÅÎÉÅ ÓËÒÙÔÙÈ\n"
+"ÆÁÊÌÏ× ÏÔËÌÀÞÅÎÏ, ÓÏÚÄÁÎÉÅ ÔÁËÉÈ ÆÁÊÌÏ× ÉÚ Lynx ÔÏÖÅ ÚÁÐÒÅÝÁÅÔÓÑ.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"åÓÌÉ sub_bookmarks ÎÅ ÎÁÈÏÄÉÔÓÑ × ÓÏÓÔÏÑÎÉÉ \"off\", É ÍÎÏÖÅÓÔ×ÅÎÎÙÅ ÚÁËÌÁÄËÉ\n"
+"ÂÙÌÉ ÏÐÒÅÄÅÌÅÎÙ (ÓÍ. ÎÉÖÅ), ÔÏ ×ÓÅ ÏÐÅÒÁÃÉÉ Ó ÚÁËÌÁÄËÁÍÉ ÂÕÄÕÔ ÎÁÞÉÎÁÔØÓÑ Ó\n"
+"ÚÁÐÒÏÓÁ ÐÏÌØÚÏ×ÁÔÅÌÑ ÄÌÑ ×ÙÂÏÒÁ ÁËÔÉ×ÎÏÇÏ ÆÁÊÌÁ ÐÏÄÚÁËÌÁÄÏË.  åÓÌÉ ÆÁÊÌ\n"
+"ÐÏ ÕÍÏÌÞÁÎÉÀ Lynx ÏÐÒÅÄÅÌÅÎ (ÓÍ. ×ÙÛÅ), ÏÎ ÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ËÁË ×ÙÂÏÒ ÐÏ\n"
+"ÕÍÏÌÞÁÎÉÀ.  ëÏÇÄÁ ÜÔÁ ÏÐÃÉÑ ÕÓÔÁÎÏ×ÌÅÎÁ × \"advanced\", É ×ÙÂÒÁÎ òÅÖÉÍ\n"
+"ðÏÌØÚÏ×ÁÔÅÌÑ advanced, ËÏÍÁÎÄÁ ÐÒÏÓÍÏÔÒÁ ÚÁËÌÁÄÏË ('v') ÂÕÄÅÔ ×ÙÚÙ×ÁÔØ ÚÁÐÒÏÓ\n"
+"× ÓÔÒÏËÅ ÓÔÁÔÕÓÁ, ×ÍÅÓÔÏ ÍÅÎÀ, ×Ù×ÏÄÉÍÏÇÏ × òÅÖÉÍÅ ðÏÌØÚÏ×ÁÔÅÌÑ novice É\n"
+"intermediate.  ëÏÇÄÁ ÜÔÁ ÏÐÃÉÑ ÕÓÔÁÎÏ×ÌÅÎÁ × \"standard\", ÍÅÎÀ ÂÕÄÅÔ\n"
+"×Ù×ÏÄÉÔØÓÑ ×ÎÅ ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ òÅÖÉÍÁ ðÏÌØÚÏ×ÁÔÅÌÑ.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode ÏÐÒÅÄÅÌÑÅÔ ÕÒÏ×ÅÎØ ÚÎÁÎÉÑ Lynx ÐÏÌØÚÏ×ÁÔÅÌÅÍ.  ðÏ ÕÍÏÌÞÁÎÉÀ\n"
+"ÕÓÔÁÎÏ×ÌÅÎÏ \"NOVICE\", ÞÔÏ ÏÔÏÂÒÁÖÁÅÔ Ä×Å ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÓÔÒÏËÉ ÐÏÄÓËÁÚÏË\n"
+"×ÎÉÚÕ ÜËÒÁÎÁ, ÞÔÏÂÙ ÐÏÍÏÞØ ÐÏÌØÚÏ×ÁÔÅÌÀ × ÉÚÕÞÅÎÉÉ ÏÓÎÏ×ÎÙÈ ËÏÍÁÎÄ Lynx.\n"
+"õÓÔÁÎÏ×ÉÔÅ user_mode × \"INTERMEDIATE\" ÞÔÏÂÙ ÕÂÒÁÔØ ÄÏÐÏÌÎÉÔÅÌØÎÕÀ\n"
+"ÉÎÆÏÒÍÁÃÉÀ.  éÓÐÏÌØÚÕÊÔÅ \"ADVANCED\" ÄÌÑ ÏÔÏÂÒÁÖÅÎÉÑ URL ÔÅËÕÝÅÊ ×ÙÂÒÁÎÎÏÊ\n"
+"ÓÓÙÌËÉ ×ÎÉÚÕ ÜËÒÁÎÁ.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"åÓÌÉ verbose_images ÎÁÈÏÄÉÔÓÑ × ÓÏÓÔÏÑÎÉÉ \"on\", lynx ÂÕÄÅÔ ÐÅÞÁÔÁÔØ ÉÍÑ\n"
+"ÉÓÈÏÄÎÏÇÏ ÆÁÊÌÁ Ó ËÁÒÔÉÎËÏÊ ÎÁ ÍÅÓÔÅ [INLINE], [LINK] ÉÌÉ [IMAGE]\n"
+"óÍ. ÔÁËÖÅ VERBOSE_IMAGES × lynx.cfg\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"åÓÌÉ vi_keys ÕÓÔÁÎÏ×ÌÅÎÏ × \"on\", ÔÏ ÂÕÄÕÔ ×ËÌÀÞÅÎÙ ÏÂÙÞÎÙÅ ËÏÍÁÎÄÙ\n"
+"ÐÅÒÅÍÅÝÅÎÉÑ VI:\n"
+"  j = ×ÎÉÚ    k = ××ÅÒÈ\n"
+"  h = ×ÌÅ×Ï   l = ×ÐÒÁ×Ï\n"
+"üÔÉ ËÌÁ×ÉÛÉ ÄÅÊÓÔ×ÕÀÔ ÔÁË ÔÏÌØËÏ × ÎÉÖÎÅÍ ÒÅÇÉÓÔÒÅ.\n"
+"úÁÇÌÁ×ÎÙÅ 'H', 'J' É 'K' ÂÕÄÕÔ ÐÏ-ÐÒÅÖÎÅÍÕ ÁËÔÉ×ÉÚÉÒÏ×ÁÔØ ÐÏÍÏÝØ, ÓÏËÒÁÝÅÎÉÑ\n"
+"ÐÅÒÅÈÏÄÁ É ×Ù×ÏÄ ÏÔÏÂÒÁÖÅÎÉÑ ËÌÁ×ÉÛ, ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÏ.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"õÓÔÁÎÏ×ËÁ visited_links ËÏÎÔÒÏÌÉÒÕÅÔ, ËÁË Lynx ÏÒÇÁÎÉÚÕÅÔ ÉÎÆÏÒÍÁÃÉÀ\n"
+"ÎÁ óÔÒÁÎÉÃÅ ðÏÓÅÝÅÎÎÙÈ óÓÙÌÏË.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"åÓÌÉ keypad_mode ÕÓÔÁÎÏ×ÌÅÎÏ × \"NUMBERS_AS_ARROWS\", ÔÏ ÃÉÆÒÙ ÎÁ ×ÁÛÅÊ\n"
+"ÄÏÐÏÌÎÉÔÅÌØÎÏÊ ËÌÁ×ÉÁÔÕÒÅ, ÅÓÌÉ ×ËÌÀÞÅÎ ÒÅÖÉÍ numlock, ÂÕÄÕÔ ÄÅÊÓÔ×Ï×ÁÔØ\n"
+"ËÁË ËÌÁ×ÉÛÉ ÓÔÒÅÌÏË:\n"
+"              8 = óÔÒÅÌËÁ ××ÅÒÈ\n"
+"  4 = óÔÒÅÌËÁ ×ÌÅ×Ï   6 = óÔÒÅÌËÁ ×ÐÒÁ×Ï\n"
+"              2 = óÔÒÅÌËÁ ×ÎÉÚ\n"
+"É ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÅ ÃÉÆÒÙ ÎÁ ÏÓÎÏ×ÎÏÊ ËÌÁ×ÉÁÔÕÒÅ ÂÕÄÕÔ ÄÅÊÓÔ×Ï×ÁÔØ ËÁË\n"
+"ËÌÁ×ÉÛÉ ÓÔÒÅÌÏË, ×ÎÅ ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÓÏÓÔÏÑÎÉÑ numlock.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"åÓÌÉ keypad_mode ÕÓÔÁÎÏ×ÌÅÎÏ × ÓÏÓÔÏÑÎÉÅ \"LINKS_ARE_NUMBERED\", ÔÏ ÞÉÓÌÁ\n"
+"ÂÕÄÕÔ ÐÏÑ×ÌÑÔØÓÑ ÓÌÅÄÏÍ ÚÁ ËÁÖÄÏÊ ÓÓÙÌËÏÊ É ÏÎÉ ÍÏÇÕÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÙ ÄÌÑ\n"
+"×ÙÂÏÒÁ ÓÓÙÌËÉ.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"åÓÌÉ keypad_mode ÕÓÔÁÎÏ×ÌÅÎÏ × \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", ÔÏ\n"
+"ÞÉÓÌÁ ÂÕÄÕÔ ÐÏÑ×ÌÑÔØÓÑ ÓÌÅÄÏÍ ÚÁ ËÁÖÄÏÊ ÓÓÙÌËÏÊ É ÏÔÏÂÒÁÖÁÅÍÙÍ ÐÏÌÅÍ ××ÏÄÁ\n"
+"ÆÏÒÍÙ.  þÉÓÌÁ ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ×ÙÂÏÒÁ ÓÓÙÌÏË, ÉÌÉ ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ÕËÁÚÁÔÅÌÑ\n"
+"\"ÔÅËÕÝÅÊ ÓÓÙÌËÉ\" ÎÁ ÐÏÌÅ ××ÏÄÁ ÉÌÉ ËÎÏÐËÕ ÆÏÒÍÙ.  ëÒÏÍÅ ÔÏÇÏ, ÏÐÃÉÉ ×Ï\n"
+"×ÓÐÌÙ×ÁÀÝÉÈ ÍÅÎÀ ÉÎÄÅËÓÉÒÏ×ÁÎÙ ÔÁË, ÞÔÏ ÐÏÌØÚÏ×ÁÔÅÌØ ÄÌÑ ×ÙÂÏÒÁ ÍÏÖÅÔ ××ÅÓÔÉ\n"
+"ÎÏÍÅÒ ÏÐÃÉÉ, ÄÁÖÅ ÅÓÌÉ ÏÐÃÉÑ ÎÅ ×ÉÄÎÁ ÎÁ ÜËÒÁÎÅ.  óÐÉÓËÉ ÓÓÙÌÏË É ÒÅÚÕÌØÔÁÔ\n"
+"ËÏÍÁÎÄÙ ×Ù×ÏÄÁ ÓÐÉÓËÁ ÔÁËÖÅ ÎÕÍÅÒÕÀÔ ÐÏÌÑ ××ÏÄÁ ÆÏÒÍÙ.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"ðòéíåþáîéå: ÎÅËÏÔÏÒÙÅ ÄÏËÕÍÅÎÔÙ ÆÉËÓÉÒÏ×ÁÎÎÏÇÏ ÆÏÒÍÁÔÁ ÍÏÇÕÔ\n"
+"ÏÔÏÂÒÁÖÁÔØÓÑ ÎÅÐÒÁ×ÉÌØÎÏ, ÅÓÌÉ ×ËÌÀÞÅÎÙ ÏÐÃÉÉ \"LINKS_ARE_NUMBERED\"\n"
+"ÉÌÉ \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\".\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+#, fuzzy
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"æÁÊÌ Lynx ÐÏÌØÚÏ×ÁÔÅÌØÓËÉÈ ÏÐÃÉÊ ÐÏ ÕÍÏÌÞÁÎÉÀ\n"
+"\n"
+"üÔÏÔ ÆÁÊÌ ÓÏÄÅÒÖÉÔ ÏÐÃÉÉ, ÓÏÈÒÁÎÅÎÎÙÅ ÉÚ üËÒÁÎÁ ïÐÃÉÊ Lynx (ÏÂÙÞÎÏ\n"
+"Ó ÐÏÍÏÝØÀ ËÌÁ×ÉÛÉ '>').  ëÁË ÐÒÁ×ÉÌÏ, ÎÅÔ ÓÍÙÓÌÁ ÒÅÄÁËÔÉÒÏ×ÁÔØ ÜÔÏÔ ÆÁÊÌ\n"
+"×ÒÕÞÎÕÀ, Ô.Ë. ÜÔÉ ÏÐÃÉÉ ÐÏ ÕÍÏÌÞÁÎÉÀ ÍÏÇÕÔ ÉÚÍÅÎÑÔØÓÑ ÉÚ üËÒÁÎÁ ïÐÃÉÊ, É ËÏÇÄÁ\n"
+"× ÓÌÅÄÕÀÝÉÊ ÒÁÚ ÏÐÃÉÉ ÂÕÄÕÔ ÓÏÈÒÁÎÅÎÙ ÉÚ üËÒÁÎÁ ïÐÃÉÊ, ÜÔÏÔ ÆÁÊÌ ÂÕÄÅÔ\n"
+"ÐÏÌÎÏÓÔØÀ ÐÅÒÅÚÁÐÉÓÁÎ.  ÷Ù ÂÙÌÉ ÐÒÅÄÕÐÒÅÖÄÅÎÙ...\n"
+"åÓÌÉ ×Ù ÉÝÅÔÅ ÏÂÝÉÊ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ, ÔÏ ÏÎ ÏÂÙÞÎÏ ÎÁÚÙ×ÁÅÔÓÑ lynx.cfg\n"
+"É ÉÍÅÅÔ ÄÒÕÇÏÅ ÓÏÄÅÒÖÁÎÉÅ É ÄÒÕÇÏÊ ÆÏÒÍÁÔ.\n"
+"üÔÏ ÎÅ ÔÏÔ ÆÁÊÌ.\n"
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "äÏÓÔÉÇÎÕÔ ÍÁËÓÉÍÕÍ óÐÉÓËÁ éÓÔÏÒÉÉ!  äÏËÕÍÅÎÔ ÎÅ ÐÏÍÅÝÅÎ."
+
+#~ msgid "Socket read failed for 180,000 tries."
+#~ msgstr "ïÛÉÂËÁ ÐÒÉ ÞÔÅÎÉÉ ÓÏËÅÔÁ × ÔÅÞÅÎÉÅ 180,000 ÐÏÐÙÔÏË."
+
+#~ msgid "KB"
+#~ msgstr "ëâ"
+
+#~ msgid "reason unknown."
+#~ msgstr "ÐÒÉÞÉÎÁ ÎÅÉÚ×ÅÓÔÎÁ."
+
+#~ msgid "Remove '%s' and all of its contents?"
+#~ msgstr "õÄÁÌÉÔØ '%s' É ×ÓÅ ÅÇÏ ÓÏÄÅÒÖÉÍÏÅ?"
+
+#~ msgid "Remove directory and all of its contents?"
+#~ msgstr "õÄÁÌÉÔØ ËÁÔÁÌÏÇ É ×ÓÅ ÅÇÏ ÓÏÄÅÒÖÉÍÏÅ?"
+
+#~ msgid "create %s"
+#~ msgstr " ÓÏÚÄÁÔØ %s"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ ÍÅÎÀ ÒÁÂÏÔÙ Ó ÆÁÊÌÁÍÉ."
+
+#~ msgid "Ignoring invalid HOME"
+#~ msgstr "îÅ×ÅÒÎÏÅ ÚÎÁÞÅÎÉÅ HOME ÉÇÎÏÒÉÒÏ×ÁÎÏ"
diff --git a/po/sl.po b/po/sl.po
new file mode 100644
index 00000000..a026e066
--- /dev/null
+++ b/po/sl.po
@@ -0,0 +1,5999 @@
+# Slovenian translation of Lynx WWW browser.
+# Copyright (C) 1999 Free Software Foundation, Inc.
+# Roman Maurer <roman.maurer@hermes.si>, 1999.
+# $LynxId: sl.po,v 1.41 2008/12/15 00:21:47 tom Exp $
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 1999-12-29 12:30 +0200\n"
+"Last-Translator: Roman Maurer <roman.maurer@hermes.si>\n"
+"Language-Team: Slovenian <sl@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-2\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Pozor!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Dobrodo¹li"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Ste preprièani, da ¾elite konèati?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Zares zapustim Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Povezava prekinjena."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Podatkovni prenos prekinjen."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Preklicano!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Preklicujem!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Izvrstno!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "V redu."
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Opravljeno!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Slaba zahteva!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "prej¹nji"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "naslednji zaslon"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "POMOÈ!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", pomoè za "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Ukazi: pu¹èice za premikanje ,?` za pomoè, ,q` za izhod, vraèalka za povratek."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- pritisnite presledek za veè, pu¹èice za premik, ,?` za pomoè, ,q` za izhod."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- pritisnite presledek za naslednjo stran --"
+
+#: LYMessages.c:55
+#, fuzzy
+msgid "URL too long"
+msgstr "URL za odpiranje: "
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, fuzzy, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Besedilo) Vnesite besedilo. Uporabljajte GOR/DOL ali TAB (^Ve za urejevalnik)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+#, fuzzy
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Vnosno polje) Vnesite besedilo.  Na koncu uporabite <return> ('x' brez predpomnenja)."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, fuzzy, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Vnosno polje) Vnesite besedilo.  Na koncu uporabite <return> ('x' brez predpomnenja)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+#, fuzzy
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Vnosno polje) Vnesite besedilo.  Na koncu uporabite <return>, pu¹èice ali tab za premik."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr ""
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr ""
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NESPREMENLJIVO datoteèno polje. Uporabljajte GOR/DOL ali tab."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Datoteèno polje) Vnesite ime datoteke. Uporabljajte GOR/DOL ali tab."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Tekstovno vnosno polje) Vnesite besedilo. Uporabljajte pu¹èici GOR/DOL ali tab."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+#, fuzzy
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Besedilo) Vnesite besedilo. Uporabljajte GOR/DOL ali TAB (^Ve za urejevalnik)."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, fuzzy, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Besedilo) Vnesite besedilo. Uporabljajte GOR/DOL ali TAB (^Ve za urejevalnik)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NESPREMENLJIVO vnosno polje.  Za premik uporabite pu¹èici gor ali dol ali Tab."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+#, fuzzy
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Vnosno polje) Vnesite besedilo.  Na koncu uporabite <return> ('x' brez predpomnenja)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, fuzzy, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Vnosno polje) Vnesite besedilo.  Na koncu uporabite <return> ('x' brez predpomnenja)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Vnosno polje) Vnesite besedilo.  Na koncu uporabite <return>, pu¹èice ali tab za premik."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "NESPREMENLJIVO polje obrazca.  Uporabite tipke gor, dol ali tab za premik drugam."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr ""
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr ""
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr ""
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr ""
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr ""
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr ""
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr ""
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr ""
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr ""
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr ""
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr ""
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Po¹iljamo obrazec..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Resetiramo obrazec..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Ponovno nalagamo dokument.  Vsi vnosi v obrazcu bodo izgubljeni!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Pozor: Prevedba podatkov v znakovni nabor %s ni mogoèa!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr ""
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr ""
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Vnesite tipkovni ukaz Lynxu: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "I¹èemo "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Prena¹amo %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Preskakujemo %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Uporabljamo %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Nepravilni URL: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Slabo oblikovan naslov %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Dostop do spletne datoteke ni mogoè!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "To je kazalo z mo¾nostjo iskanja.  Uporabite %s za iskanje."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Naprej--  To je kazalo z mo¾nostjo iskanja.  Uporabite %s za iskanje."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Vnesli ste neveljavno ¹tevilko povezave."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr ""
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr ""
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr ""
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr ""
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr ""
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr ""
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr ""
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr ""
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr ""
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr ""
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr ""
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr ""
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr ""
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr ""
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr ""
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr ""
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr ""
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr ""
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Po¹ljemo ta komentar?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Po¹ljemo to sporoèilo?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Po¹iljamo va¹e sporoèilo..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Po¹iljamo va¹ komentar:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr ""
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr ""
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr ""
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr ""
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr ""
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr ""
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr ""
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Pritisnite <return> za vrnitev v Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr ""
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Napi¹ite EXIT za vrnitev v Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr ""
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr ""
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr ""
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr ""
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr ""
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr ""
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Ne morete prenesti pi¹kotov."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Ne morete prenesti tiskalni¹ke izbire."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Ne morete prenesti izbire za po¹iljanje."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Ne morete prenesti izbire za dovoljenje."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr ""
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Nièesar ni za prenesti."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Sledenje VKLJUÈENO!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Sledenje IZKLJUÈENO!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr ""
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr ""
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr ""
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr ""
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr ""
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr ""
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Oprostite, sestavek ni URL vrste http."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Oprostite, povezava ni URL vrste http."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr ""
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr ""
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr ""
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr ""
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr ""
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr ""
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr ""
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr ""
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr ""
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr ""
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr ""
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr ""
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr ""
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr ""
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr ""
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr ""
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr ""
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr ""
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr ""
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr ""
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr ""
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr ""
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr ""
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr ""
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr ""
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr ""
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr ""
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr ""
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr ""
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr ""
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr ""
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr ""
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr ""
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Zmalièen naslov."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr ""
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr ""
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr ""
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr ""
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr ""
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr ""
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr ""
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr ""
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr ""
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr ""
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr ""
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr ""
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr ""
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr ""
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr ""
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr ""
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr ""
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr ""
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Uporabite pu¹èice ali tab za premik drugam."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Vnesite besedilo.  Uporabite pu¹èice ali tab za premik drugam."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Slab HTML!!  V obrazcu ni definirane akcije. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr ""
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr ""
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Premik na URL, ki ni http, ni dovoljen!"
+
+#: LYMessages.c:360
+#, fuzzy, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Ni vam dovoljeno odpreti URL-jev \"cso:\""
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "URL za odpiranje: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr ""
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr ""
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr ""
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr ""
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Uredimo URL tega sestavka: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Uredimo URL trenutne povezave: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr ""
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr ""
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr ""
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr ""
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr ""
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr ""
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr ""
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr ""
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr ""
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr ""
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr ""
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr ""
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr ""
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr ""
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr ""
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr ""
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Trenutno ni dostopno nobeno kazalo."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Ali res ¾elite skoèiti na Glavni zaslon?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "®e zdaj smo v glavnem zaslonu!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr ""
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Za to datoteko ni definiranega lastnika, torej ne morete poslati komentarja"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Lastnik ni definiran.  Uporabimo %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Ali ¾elite poslati komentar?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "Po¹ta je onemogoèena, zato ne moremo poslati komentarja"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "Ukaz ur,e`di je trenutno onemogoèen."
+
+#: LYMessages.c:397
+#, fuzzy
+msgid "External editing is currently disabled."
+msgstr "Zunanja podpora je trenutno onemogoèena."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Sistemska napaka - ne moremo dobiti statusa."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Ni definiranega urejevalnika!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "Ukaz natisni (p) je trenutno onemogoèen."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr ""
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr ""
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr ""
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Ne moremo odpreti datoteke z zavrnjenimi URL-ji."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr ""
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr ""
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr ""
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Izberite ¹tevilko mo¾nosti (ali strani): "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Mo¾nost ¹tevilka %d je ¾e zdaj trenutna."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "®e zdaj smo na vrhu tega seznama izbir."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "®e zdaj smo na zaèetku tega seznama mo¾nosti."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "®e zdaj smo na strani %d tega seznama mo¾nosti."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Vnesli ste neveljavno ¹tevilko mo¾nosti."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Slab HTML!!  Uporabite -trace za diagnozo. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Podajte ime datoteke za shranitev"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Ne moremo posneti podatkov v datoteko -- prosim, po¾enite WWW lokalno"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Ne moremo odpreti zaèasne datoteke!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Ne moremo odpreti izhodne datoteke!  Prekinitev!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Izvajanje je onemogoèeno."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Izvajanje za to datoteko ni omogoèeno.  Poglejte menu Izbire (uporabite %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Zmo¾nosti izvajanja niso prevedene v to razlièico."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Ta datoteka ne more biti prikazana na tem terminalu."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Ta datoteka ne more biti prikazana na tem terminalu: D) prenos ali C) prekinitev"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D) prenos, ali C) prekinitev"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Prekinjamo z datoteko."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Jemljemo datoteko.   - PROSIM, POÈAKAJTE -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Vnesite ime datoteke: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Uredite prej¹nje ime datoteke: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Uredite kak¹no prej¹nje ime datoteke: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Vnesite novo ime datoteke: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Ime datoteke se ne sme zaèeti s piko."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Datoteka obstaja.  Ustvarimo vi¹jo razlièico?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Datoteka obstaja.  Prepi¹emo?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Ne moremo pisati v datoteko."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "NAPAKA! - ukaz za jemanje je napaèno nastavljen."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Ne moremo prenesti datoteke."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Beremo imenik..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Gradimo seznam vsebine imenika ..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Shranjujemo ..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Ne moremo urediti datoteke ,%s`."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Ne moremo dostopati do sestavka!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Ne moremo dostopati do datoteke."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Ne moremo dostopati do imenika."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Ne moremo nalo¾iti podatkov."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx trenutno ne zmore ur(e)diti oddaljenih spletnih datotek."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "To polje ne more biti ur(e)jeno z zunanjim urejevalnikom."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Slabo pravilo"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Premalo operandov:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Niste poobla¹èeni za urejanje te datoteke."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Naslov: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Predmet: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Uporabni¹ko ime: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Geslo: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Uporabni¹ko ime in geslo sta zahtevani!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: Geslo je zahtevano!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Pobri¹emo vse avtorizacijske podatke za to sejo?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Avtorizacijski podatki pobrisani."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Avtorizaciji je spodletelo.  Poskusimo ¹e enkrat?"
+
+#: LYMessages.c:470
+#, fuzzy
+msgid "cgi support has been disabled."
+msgstr "Sistemski upravitelj je onemogoèil podporo CGI."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "V tej razlièici ni prevedene mo¾nosti Lynxcgi."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "®al, ni znanega naèina za pretvarjanje %s v %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Ne moremo nastaviti povezave."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Ne moremo vzpostaviti povezave."
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Izvedljiva povezava zavrnjena zaradi zmalièenega zahtevka."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Izvedljiva povezava zavrnjena zaradi znaka ,%c`."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Izvedljiva povezava zavrnjena zaradi niza za relativno pot (,../`)."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Izvedljiva povezava zavrnjena zaradi lokacije ali poti."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "Po¹tni dostop je onemogoèen!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Dostopne so le datoteke in stre¾niki na lokalnem raèunalniku."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Dostop prek telneta je onemogoèen!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr ""
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "Dostop novièarskih skupin USENET je onemogoèen!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Dostop s programom rlogin je onemogoèen!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Dostop prek FTP je onemogoèen!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Iz tega dokumenta ni sklicevanj."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Iz tega dokumenta vodijo le skrite povezave."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Ne moremo odpreti ukazne datoteke."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Po¹iljanje novièarskega èlanka preklicano!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr ""
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Po¹ljemo to sporoèilo?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Pripnemo na konec ,%s`?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Po¹iljamo v novièarske skupine ..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Imate neprebrano po¹to. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** Imate po¹to. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Imate novo po¹to. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:511
+#, fuzzy
+msgid "Not enough memory for file!"
+msgstr "Ne moremo odpreti zaèasne datoteke!"
+
+#: LYMessages.c:512
+#, fuzzy
+msgid "Can't open file for reading."
+msgstr "Ne moremo odpreti izhodne datoteke!  Prekinitev!"
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Datoteka ne obstaja."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Datoteka ne obstaja - ponovni vnos ali preklic:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Datoteka ni berlljiva."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Datoteka ni berljiva - ponovni vnos ali preklic:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Nièesar za vnesti - datoteka je dolga 0 zlogov."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Preklicana zahteva za shranjevanje!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Preklicana po¹tna zahteva!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr ""
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Prosim, poèakajte ..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Po¹iljamo datoteko.  Prosimo, poèakajte ..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "NAPAKA - Ne moremo poslati datoteke"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Datoteka je dolga %d zaslonov.  Ste preprièani, da jo ¾elite natisniti?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Tiskalni¹ka zahteva preklicana!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Pritisnite <return > za zaèetek: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Pritisnite <return> za konec: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Datoteka je dolga %d strani.  Ste preprièani, da jo ¾elite natisniti?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Preprièajte se, da je tiskalnik na zvezi.  Pritisnite <return> za zaèetek tiskanja:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "NAPAKA - Ne moremo doloèiti prostora za datoteko!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Ne moremo odpreti zaèasne datoteke"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Ne moremo odpreti datoteke s tiskalni¹kimi izbirami"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Tiskamo datoteko.  Prosim, poèakajte ..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Prosim, vnesite veljavni internetni po¹tni naslov: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "NAPAKA! - tiskalnik je nepravilno nastavljen!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr ""
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr ""
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr ""
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr ""
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Za menu Mo¾nosti mora biti zaslon visok vsaj 24 vrstic!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Za menu Mo¾nosti mora biti zaslon visok vsaj 23 vrstic!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Za menu Mo¾nosti mora biti zaslon visok vsaj 22 vrstic!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Ta tipka zahteva naèin dela Izku¹eni uporabnik."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Content-type: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Ukaz: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr ""
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Razlièica "
+
+#: LYMessages.c:558
+#, fuzzy
+msgid " first"
+msgstr " najprej."
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", ugibamo ..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Dovoljenja za "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Izberite "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "veliko èrko"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " v vrstici z mo¾nostmi,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " za shranjevanje,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " v "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " ali "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " stvarno kazalo"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " za vrnitev v Lynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Sprejmimo spremembe"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Iznièimo spremembe"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Z levo pu¹èico iznièimo spremembe"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Shranimo izbire v disk"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr ""
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr ""
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Vrednost sprejeta!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Vrednost sprejeta! -- POZOR: Lynx je nastavljen za XWINDOWS!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Vrednost sprejeta! -- POZOR: Lynx NI nastavljen za XWINDOWS!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr ""
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr ""
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr ""
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr ""
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "Terminal ne podpira barv"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr ""
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr ""
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr ""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr ""
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr ""
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr ""
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Shranjujemo mo¾nosti ..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Mo¾nosti shranjene!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr ""
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr ""
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr ""
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Pritisnite katerokoli tipko za spremembo vrednosti; RETURN za sprejem."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Napaka pri raz¹irjanju zaèasne datoteke!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Nepodprta shema URL!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Nepodprti podatki: URL!  Zaenkrat uporabite SHOWINFO."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Dose¾ena je bila omejitev 10 preumerjenih URL-jve."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Stre¾nik je poslal URL z neveljavno preusmeritvijo!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Server je prosil za preusmeritev %d vsebine POST na"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P)nadaljevanje, uporabite G)poberi ali C)preklièi"
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P)nadaljevanje ali C)preklic"
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Preusmeritev vsebine POST.  P)nadaljevanje, ogled U)RL, G)pobiranje ali C)preklic"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Preusmeritev vsebine POST.  P)nadaljevanje, ogled U)URL ali C)preklic"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Spis iz obrazca brez vsebine POST.  Ponovno po¹ljemo zahtevo?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Ponovno po¹ljemo vsebino POST na %s ?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Seznam iz dokumenta s podatki POST.  Ponovno nalo¾imo %s ?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Nadaljujemo brez uporabni¹kega imena in gesla?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Nadaljujemo (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Ne moremo poslati POST temu gostitelju."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "POST ni podprt za ta URL - zanemarjamo podatke POST!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Zanemarjamo podatke POST..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Dokument ne bo ponovno nalo¾en!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Lokacija: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr ",%s` ni bil najden!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Privzeta datoteka z zaznamki"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Premajhen zaslon! (najmanj 8×35)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Izberite cilj ali ^G za preklic: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Izberite podzaznamek, ,=` za menu ali ^G za preklic: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "Reproduciramo L)povezavo v tej datoteki z zaznamki ali C)preklièemo? (l,c): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Podpora za veè zaznamkov ni dostopna."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr ""
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Izberimo zaznamek"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Urejamo OPIS in POT DO DATOTEKE zaznamka (%d od 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Urejamo OPIS in POT DO DATOTEKE zaznamka"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Pismo: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Uporabite pot do datoteke od va¹ega prijavnega imenika v skladnji za lupino!"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Uporabite ime poti od va¹ega domaèega imenika!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Prese¾eno najveèje ¹tevilo povezav na stran!  Uporabite polovièno stran ali dvovrstièno pomikanje."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr ""
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Zmanjkalo pomnilnika!  Program je prekinjen!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Zmanjkalo pomnilnika!  Konèujemo..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr ""
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Urejevalnik imenikov/datotek ni dostopen"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF v oznaki BASE ni absolutni URL."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "URL lokacije ni absoluten."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "URL za osve¾itev strani ni absoluten."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Po¹iljate sporoèilo s telesom na:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Po¹iljate komentar prejemniku:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+"S kopijo prejemniku:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+"S kopijami prejemnikom:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Èe ne ¾elite poslati sporoèila, uporabite Ctrl-G za preklic\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Prosim, vnesite svoje ime ali pustite prazno polje za anonimnost\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Prosim, vnesite po¹tni naslov ali kaj drugega\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " naèini za kontaktiranje, èe ¾elite odziv.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Prosim, vnesite vrstico s predmetom.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Vnesite po¹tni naslov za kopijo (CC) va¹ega sporoèila.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Pustite prazno, èe ne ¾elite kopije.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Prosim, preglejte telo sporoèila:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Pritisnite RETURN za nadaljevanje: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Pritisnite RETURN za èi¹èenje: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Uporabite Control-U za izbris privzete vrednosti.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Prosim, spodaj vnesite svoje sporoèilo."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Ko opravite, pritisnite Enter in vstavite eno samo piko (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" v vrstici, nato spet pritisnite Enter."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "pi¹kot %s: %.*s=%.*s  Dovolimo? (Y-da/N-ne/A-vedno/V-nikoli)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Sprejmemo neveljavno domeno=%s za pi¹kote za ,%s`?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Sprejmemo neveljavno pot=%s za pi¹kote s predpono ,%s`?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Sprejmemo ta pi¹kot."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Zavraèamo ta pi¹kot."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Posoda s pi¹koti je prazna."
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "Posoda s pi¹koti je prazna."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr ""
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr ""
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Pi¹koti nikoli dovoljeni.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Pi¹koti vedno dobrodo¹li.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Pi¹koti dovoljeni po vpra¹anju.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Obstojni pi¹koti.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Brez naslova.)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Brez imena.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Brez vrednosti.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "Niè"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Konec seje.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Odstranimo ta pi¹kot?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Pi¹kot smo pojedli!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Pobri¹emo to prazno domeno?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Domeno smo pojedli!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr ""
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr ""
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Pojedli smo vse pi¹kote v domeni!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "A)Vedno dovolimo iz domene ,%s`."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "V)Nikoli ne dovolimo iz domene ,%s`."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "P)Vpra¹amo za dovoljenje za pi¹kote iz domene ,%s`."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Odstranimo vse pi¹kote v tej domeni?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Vse pi¹kote v posodi smo pojedli!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Vrata 19 niso dovoljena v URL-jih."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Vrata 25 niso dovoljena v URL-jih."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Vrata %lu niso dovoljena v URL-jih."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "URL ima slabo polje z vrati."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Dose¾eno najgloblje gnezdenje gradnikov HTML."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Slab delni sklic!  Odstranjujemo vodilne pike."
+
+#: LYMessages.c:739
+#, fuzzy
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Odpiranje dnevnika za sledenje spodletelo.  Sledenje izkljuèeno!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Dnevnik za sledenje Lynxu"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "V tej seji ni bilo zagnanega dnevnika za sledenje."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr ""
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr ""
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr ""
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Imenik"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Brskanje po imeniku ni dovoljeno."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr ""
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr ""
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Tega imenika ni mogoèe brati."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Ne moremo dostopati do zahtevane datoteke."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr ""
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr ""
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Datoteke:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Podimeniki:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " imenik"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Do "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Trenutni imenik je "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "Ni odgovora od stre¾nika!"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "Indeks CSO"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"To je iskalni indeks za zbirko podatkov CSO.\n"
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "Iskalni rezultati CSO"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Napaka pri iskanju pri %s\n"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Pritisnite tipko ,s` in vnesite iskane kljuène besede.\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"To je iskalno kazalo po Gopherju.\n"
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "Kazalo po Gopherju"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "Menu Gopherja"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr " Rezultati iskanja"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "Po¹iljamo zahtevek CSO/PH."
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "Po¹iljamo zahtevek Gopherju."
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "Zahtevek CSO/PH poslan; èakamo na odgovor."
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "Zahteva Gopherju poslana; èakamo na odgovor."
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Prosim, vnesite iskane kljuène besede.\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Kljuène besede, ki jih boste vnesli, bodo omogoèile iskanje po"
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr " imenu osebe v zbirki podatkov.\n"
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "Povezava zaprta???"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr "Ne moremo odpreti zaèasne datoteke za PO©ILJANJE novic."
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Ta odjemnik ne vsebuje podpore za po¹iljanje novic s SSL."
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Slog %d ,%s` SGML:%s.  Pisava %s %.1f pik.\n"
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tPoravnava=%d, %d predelènikov. (%.0f prej, %.0f pozneje)\n"
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tVrsta predelènika=%d na %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "Ne moremo nadaljevati brez uporabni¹kega imena in gesla."
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Ne moremo ponovno poskusiti brez avtorizacije!  Povpra¹ajte upravitelja spletnega stre¾nika."
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Ne moremo ponovno poskusiti brez avtorizacije za proxy!  Povpra¹ajte upravitelja spletnega stre¾nika."
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr "Posku¹amo ponovno z avtorizacijo za proxy."
+
+#: LYMessages.c:799
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr ""
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Sporoèilo z odgovorom je predolgo."
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr "Vnesite zahtevek za WAIS: "
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "Ponovno posku¹amo z zahtevkom HTTP0."
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Preneseno %d zlogov"
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "Prenos podatkov konèan"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Napaka pri obdelavi vrstice %d datoteke %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr "Stran z imenikom naslovov"
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "Datoteka z zaznamki"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr "Definicije nastavitev"
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr "Posoda s pi¹koti"
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr "Trenutna tipkovnica"
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "Izbire upravljanja datotek"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "Izbire za jemanje"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "Stran z zgodovino"
+
+#: LYMessages.c:820
+#, fuzzy
+msgid "Cache Jar"
+msgstr "Posoda s pi¹koti"
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr "Stran s seznamom"
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "Informacije o Lynx.cfg"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr ""
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "Menu izbir"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "Izbire za dovoljenja datotek"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "Izbire tiskanja"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "Informacije o trenutnem dokumentu"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "Novej¹a sporoèila v vrstici stanja"
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "Izbire po¹iljanja"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr "Stran z obiskanimi povezavami"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "Glejte tudi"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr "va¹"
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr "za izbire med tekom"
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "izbire ob prevajanju"
+
+#: LYMessages.c:837
+msgid "color-style configuration"
+msgstr ""
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "zadnjo razlièico"
+
+#: LYMessages.c:839
+#, fuzzy
+msgid "pre-release version"
+msgstr "razvojno razlièico"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "razvojno razlièico"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr ""
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr "Nismo mogli dobiti stanja trenutne povezave!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr ""
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr "Zunanja podpora je trenutno onemogoèena."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+#, fuzzy
+msgid "Changing working-directory is currently disabled."
+msgstr "Ukaz natisni (p) je trenutno onemogoèen."
+
+#: LYMessages.c:864
+#, fuzzy
+msgid "Linewrap OFF!"
+msgstr "Sledenje IZKLJUÈENO!"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr ""
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr ""
+
+#: LYMessages.c:869
+#, fuzzy
+msgid "Trace not supported"
+msgstr "Terminal ne podpira barv"
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tZamiki: prvi=%.0f ostali=%.0f, vi¹ina=%.1f globina=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Uporabni¹ko ime za ,%s` na %s ,%s%s`:"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Neveljavna glava ,%s%s%s%s%s`"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr "Nalaganje nepopolno."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr ""
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr "Ne moremo dostopati"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "Ne moremo dostopati do sestavka"
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Vnesite geslo za uporabnika %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Ne moremo se povezati z gostiteljem FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr ""
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "Simbolna povezava"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "Sprejemamo imenik za FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, fuzzy, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Preneseno %d zlogov"
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr "povezava za podatke"
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "Jemljemo datoteko s FTP."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "Ne moremo vzpostaviti povezave s finger."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "Ni odgovora od stre¾nika za finger."
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Uporabni¹ko ime za novièarski stre¾nik ,%s`:"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "Sprememba uporabni¹kega imena?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "Uporabni¹ko ime:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Geslo za novièarski stre¾nik ,%s`:"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "Sprememba gesla?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "Ni ujemanja za: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"V tem obsegu ni èlankov.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  Èlanki %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "Prej¹nji èlanki"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "Vsi dostopni èlanki v "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "Poznej¹i èlanki"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "Razpo¹ljemo v "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "Povezujemo se z novièarskim stre¾nikom ..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "Ne moremo dostopati do %s."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr ""
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr ""
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "Beremo novièarski èlanek."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr ""
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Neveljavno ime gostitelja %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "vtiènici je spodletelo."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+msgid "Socket read failed (too many tries)."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:669
+msgid "Retrying connection without TLS."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+#, fuzzy
+msgid "the certificate has been revoked"
+msgstr "Pi¹kot smo pojedli!"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "Po¹iljamo zahtevek HTTP."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr ""
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr ""
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr ""
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr ""
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "oddaljena seja %s:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Ne moremo se prikljuèiti na stre¾nik WAIS."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Ne moremo odpreti povezave WAIS za branje."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Koda za diagnozo je "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Stvarno kazalo "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " vsebuje naslednjih %d postavk(%s) za \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Prva ¹tevilka po vsakem vnosu je njegov relativni rezultat, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "druga je ¹tevilo vrstic v postavki."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (slabo ime datoteke)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(slaba id dokumenta)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Zapis s prekratko glavo, ne moremo prikazati)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Zapis s predolgo glavo, ne moremo prikazati\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Besedilni zapis\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (Indeks WAIS)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "Indeks WAIS: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " Indeks WAIS.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Vnesite ukaz za i,s`kanje in potem doloèite iskalne besede.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (v "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "Iskanje z WAIS za \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" v: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Prevelik zahtevek."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Iskanje po zbirki podatkov WAIS..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Iskanje prekinjeno."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Ne moremo pretvoriti formata dokumenta WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Predolg zahtevek."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Pobiramo dokument WAIS..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Besedilo ni bilo vrnjeno!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr " NI PODANO v izvorni datoteki; "
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr " Izvorna datoteka WAIS"
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " opis"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr "Povezave za dostop"
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "Neposredni dostop"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (ali prek stre¾nika proxy, èe je definiran)"
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "Vzdr¾evalec"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "Gostitelj"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "Pomnilnik izèrpan, prikaz prekinjen!"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Pomnilnik izèrpan, prekinili bomo prenos!"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr "*** POMNILNIK IZÈRPAN ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "neznano polje ali povezava"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "tekstovno vnosno polje"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "vnosno polje za geslo"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr ""
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "radijski gumb"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr ""
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr ""
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr ""
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr ""
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr ""
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr ""
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr ""
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr ""
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "gumb za po¹iljanje slike"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr "polje za generiranje kljuèa"
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr ""
+
+#: src/GridText.c:10279
+#, fuzzy
+msgid "Can't open file for uploading"
+msgstr "Ne moremo odpreti izhodne datoteke!  Prekinitev!"
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr ""
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr ""
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr ""
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr ""
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "zlogov"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, fuzzy, c-format
+msgid "Read %s of data"
+msgstr "Prebrano %ld %s podatkov"
+
+#: src/HTAlert.c:321
+#, fuzzy, c-format
+msgid "Read %s of %s of data"
+msgstr "Prebrano %ld od %ld %s podatkov"
+
+#: src/HTAlert.c:330
+#, fuzzy, c-format
+msgid ", %s/sec"
+msgstr ", %ld %s/sek."
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr ""
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ""
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Pritisnite ,z` za prenehanje)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "da"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "ne"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "Opis:"
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr "(brez)"
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr "Pot do datoteke:"
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(neznana)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Dokument ima le skrite povezave.  Uporabite ukaz ,l` za izpis."
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr ""
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr ""
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr ""
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr ""
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Dober nasvet"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Izvrsten stre¾nik HTTP za VMS je dostopen prek"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "te povezave"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Ponuja naravnost umetni¹ko podporo za skripte CGI.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Zapu¹èamo program prek prekinitve:"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr "(iz prej¹nje seje)"
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr ""
+
+#: src/LYCookie.c:2562
+#, fuzzy
+msgid "Internal"
+msgstr " (notranji)"
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr ""
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr ""
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "V tem programu morate uporabljati terminal vt100, 200, ipd."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "Vrsta va¹ega terminala je neznana!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "Vnesite vrsto terminala:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "VRSTA TERMINALA JE NASTAVLJENA NA"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Usodna napaka se je pojavila v %s Ver. %s\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Prosim, obvestite va¹ega sistemskega nadzornika, da potrdi ta hro¹è\n"
+"in, èe je potrjen, obvesti dopisni seznam lynx-dev.  Opisi hro¹èev bi\n"
+"morali imeti podrobne opise ukazov in/ali URL-jev, ki so povzroèili\n"
+"te¾ave, ime in ¹tevilko razlièice operacijskega sistema, izvedbe\n"
+"TCP/IP, podatke TRACEBACK, èe jih je mogoèe zajeti, in vse druge\n"
+"pomembne podatke.\n"
+
+#: src/LYEdit.c:266
+#, fuzzy, c-format
+msgid "Error starting editor, %s"
+msgstr "Napaka pri obdelavi vrstice %d datoteke %s\n"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr ""
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr ""
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "Prene¹ena povezava:"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "Predlagano ime datoteke:"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "Standardne izbire za jemanje:"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "Izbire za jemanje:"
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "Shranimo v disk"
+
+#: src/LYDownload.c:545
+#, fuzzy
+msgid "View temporary file"
+msgstr "Ne moremo odpreti zaèasne datoteke!"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "Shranjevanje v disk onemogoèeno."
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Lokalni dodatki:"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Ni podanega imena"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Izbrali ste:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(ni naslova)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (notranji)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (je bil notranji)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (iz Zgodovine)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr ""
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr ""
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr ""
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Kazalec:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Ime datoteke:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr ""
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr ""
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Vsebuje:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Velikost zlogov:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr ""
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr ""
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr ""
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr ""
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr ""
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr ""
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Skrite povezave:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Sklici"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Vidne povezave"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr ""
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr ""
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr ""
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr ""
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr ""
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Predolga pot"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr ""
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr ""
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr ""
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr ""
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr ""
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr ""
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr ""
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr ""
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr ""
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr ""
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr ""
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr ""
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr ""
+
+#: src/LYLocal.c:1166
+#, fuzzy, c-format
+msgid "Remove directory '%s'?"
+msgstr " imenik"
+
+#: src/LYLocal.c:1169
+#, fuzzy
+msgid "Remove directory?"
+msgstr " imenik"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr ""
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1183
+#, fuzzy
+msgid "Remove symbolic link?"
+msgstr "Simbolna povezava"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr ""
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr ""
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr ""
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Lastnik:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Skupina"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Drugi:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr ""
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr ""
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr ""
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr ""
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr ""
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Izvajamo %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr ""
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Trenutni imenik:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr ""
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr ""
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr ""
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr ""
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr ""
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr ""
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr ""
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr ""
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr ""
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, fuzzy, c-format
+msgid "Already in target directory: %s"
+msgstr "Beremo imenik..."
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr ""
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr ""
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "Po¹iljamo"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Povezava   %s :?: %s\n"
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "je klicala \"%s\"\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "v datoteki \"%s\" je klicana \"%s\"\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr "je bila zahtevana, a ni dostopna."
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr ""
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr ""
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr "Vtiènica Winsock ¾al ni bila najdena."
+
+#: src/LYMain.c:1226
+#, fuzzy
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "MORATE nastaviti veljavno podroèje TMP ali TEMP!\n"
+
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+#, fuzzy
+msgid "No such directory"
+msgstr " imenik"
+
+#: src/LYMain.c:1464
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Nastavitvena datoteka %s ni dostopna.\n"
+"\n"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Nabor znakov za Lynx ni bil doloèen.\n"
+"\n"
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Urejevalna preslikava za Lynx ni bila doloèena.\n"
+"\n"
+
+#: src/LYMain.c:1579
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Datoteka %s za Lynx< ni dostopna.\n"
+"\n"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr ""
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr "stanje obstojnih pi¹kotov bo spremenjeno le v naslednji seji."
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr ""
+
+#: src/LYMain.c:3181
+#, fuzzy, c-format
+msgid "%s Version %s (%s)"
+msgstr ""
+"\n"
+"%s Razlièica %s (%.*s)\n"
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Zgrajena na %s %s %s\n"
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+#, fuzzy
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "Pravice raz¹irjanja imajo Univerza v Kansasu, CERN in drugi sodelavci.\n"
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Raz¹irjano pod Splo¹no licenco GNU.\n"
+
+#: src/LYMain.c:3244
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr ""
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr ""
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr ""
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr ""
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr ""
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr ""
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr ""
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr ""
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr ""
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr ""
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr ""
+
+#: src/LYMainLoop.c:5052
+#, fuzzy
+msgid "cd to:"
+msgstr " v "
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr ""
+
+#: src/LYMainLoop.c:5080
+#, fuzzy
+msgid "failed to change directory"
+msgstr "Ne moremo dostopati do imenika."
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr ""
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr ""
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:6960
+#, fuzzy
+msgid "Current URL is empty."
+msgstr "Trenutni imenik:"
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr ""
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+#, fuzzy
+msgid "-index-"
+msgstr " stvarno kazalo"
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr ""
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr ""
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr ""
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr ""
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr ""
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr ""
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr ""
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr ""
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2242
+#, fuzzy
+msgid "Novice"
+msgstr "Niè"
+
+#: src/LYOptions.c:2243
+msgid "Intermediate"
+msgstr ""
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2279
+#, fuzzy
+msgid "as links"
+msgstr "te povezave"
+
+#: src/LYOptions.c:2286
+#, fuzzy
+msgid "show filename"
+msgstr " (slabo ime datoteke)"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2329
+#, fuzzy
+msgid "Directories first"
+msgstr "Podimeniki:"
+
+#: src/LYOptions.c:2330
+#, fuzzy
+msgid "Files first"
+msgstr " najprej."
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr ""
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+#, fuzzy
+msgid "By Name"
+msgstr "Ime:"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+#, fuzzy
+msgid "By Size"
+msgstr "Velikost zlogov:"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+msgid "By Date"
+msgstr ""
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2346
+#, fuzzy
+msgid "By Group"
+msgstr "Skupina"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, c-format
+msgid "Show %s/sec rate"
+msgstr ""
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2379
+msgid "Show progressbar"
+msgstr ""
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2395
+#, fuzzy
+msgid "Accept all types"
+msgstr "Sprejmimo spremembe"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr ""
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr ""
+
+#: src/LYOptions.c:3485
+#, fuzzy
+msgid "General Preferences"
+msgstr "Sklici"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr ""
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr ""
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr ""
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr ""
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr ""
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr ""
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr ""
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr ""
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr ""
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr ""
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr ""
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+msgid "Use locale-based character set"
+msgstr ""
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr ""
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr ""
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr ""
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr ""
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr ""
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr ""
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr ""
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr ""
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+#, fuzzy
+msgid "Underline links"
+msgstr "Skrite povezave:"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr ""
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr ""
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr ""
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr ""
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr ""
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr ""
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr ""
+
+#: src/LYOptions.c:3760
+#, fuzzy
+msgid "Password for anonymous ftp"
+msgstr "Geslo za novièarski stre¾nik ,%s`:"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+#, fuzzy
+msgid "Preferred media type"
+msgstr "Preneseno %d zlogov"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+msgid "Preferred encoding"
+msgstr ""
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr ""
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr ""
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr ""
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr ""
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr ""
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+#, fuzzy
+msgid "Local directory sort order"
+msgstr "Tega imenika ni mogoèe brati."
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr ""
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr ""
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+#, fuzzy
+msgid "Show transfer rate"
+msgstr "Prenos podatkov konèan"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr ""
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr ""
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr ""
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr ""
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr ""
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+#, fuzzy
+msgid "Visited Pages"
+msgstr "Stran z obiskanimi povezavami"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr ""
+
+#: src/LYPrint.c:937
+#, fuzzy, c-format
+msgid " Print job complete.\n"
+msgstr "Nalaganje nepopolno."
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr ""
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "©tevilo vrstic:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "©tevilo strani:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "strani"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "stran"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(pribli¾no)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr ""
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr ""
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr ""
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr ""
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr ""
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr ""
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr ""
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr ""
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr ""
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr ""
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr ""
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(brez imena)"
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr ""
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr ""
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr "Prosim, preberite dokumentacijo v distribuciji"
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr "za veè pripomb."
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr ""
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr ""
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr ""
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Ime:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr ""
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr ""
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr ""
+
+#: src/LYShowInfo.c:220
+#, fuzzy
+msgid "Name of owner:"
+msgstr "©tevilo vrstic:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr ""
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr ""
+
+#: src/LYShowInfo.c:227
+#, fuzzy
+msgid "(bytes)"
+msgstr "zlogov"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr ""
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr ""
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr ""
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr ""
+
+#: src/LYShowInfo.c:279
+#, fuzzy
+msgid "Group:"
+msgstr "Skupina"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr ""
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr ""
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr ""
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr ""
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr ""
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr ""
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr ""
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr ""
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr ""
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr ""
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr ""
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr ""
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr ""
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr ""
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr ""
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr ""
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr ""
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ""
+
+#: src/LYShowInfo.c:398
+#, fuzzy
+msgid ", via internal link"
+msgstr " (je bil notranji)"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ""
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ""
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ""
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr ""
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr ""
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr ""
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr ""
+
+#: src/LYShowInfo.c:436
+#, fuzzy
+msgid "Action:"
+msgstr "Lokacija: "
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr ""
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr ""
+
+#: src/LYShowInfo.c:455
+msgid "Server Headers:"
+msgstr ""
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr ""
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr ""
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr ""
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr ""
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr ""
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr ""
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr ""
+
+#: src/LYUtils.c:3719
+#, fuzzy
+msgid "unknown restriction"
+msgstr "neznano polje ali povezava"
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr ""
+
+#: src/LYUtils.c:3753
+#, fuzzy, c-format
+msgid "Restrictions set:\n"
+msgstr "Opis:"
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr ""
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr ""
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+
+#: src/LYrcFile.c:357
+#, fuzzy
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file doloèa datoteko, v kateri naj se hranijo obstojni pi¹koti.\n"
+"Privzeta je ~/.lynx_cookies.\n"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Èe je vrednost all_execution_links nastavljena na \"on\", se bodo\n"
+"izvedle vse lokalne povezave, èe bodo izbrane.\n"
+"\n"
+"POZOR - To je potencialno ZELO nevarno.  Ker lahko pregledujete\n"
+"        informacije iz neznanih in nezaupnih virov, je mogoèe, da so\n"
+"        napisane tudi povezave do trojanskih konjev.  Trojanski konji\n"
+"        vam lahko pobri¹ejo datoteke ali ogrozijo varnost.  To naj bi\n"
+"        bilo nastavljeno na \"on\" le, èe pregledujete zaupen vir\n"
+"        informacij.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Èe je vrednost run_execution_links_on_local_files nastavljena na \"on\",\n"
+"e bodo izvedle vse lokalne povezave, ki so na¹tete v datotekah LOCAL,\n"
+"èe bodo izbrane.  To se razlikuje od run_all_execution_links v tem, da\n"
+"bodo imele dovoljenje za izvajanje povezav le datoteke na lokalnem\n"
+"sistemu.\n"
+"\n"
+"POZOR - To je potencialno nevarno.  Ker lahko pregledujete informacije\n"
+"        iz neznanih in nezaupnih virov, je mogoèe, da so napisane tudi\n"
+"        povezave do trojanskih konjev.  Trojanski konji vam lahko\n"
+"        pobri¹ejo datoteke ali ogrozijo varnost.  To naj bi bilo\n"
+"        nastavljeno na \"on\" le, èe pregledujete zaupen vir informacij.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+
+#~ msgid "You are not allowed to goto \"file:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"file:\""
+
+#~ msgid "You are not allowed to goto \"finger:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"finger:\""
+
+#~ msgid "You are not allowed to goto \"ftp:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"ftp:\""
+
+#~ msgid "You are not allowed to goto \"gopher:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"gopher:\""
+
+#~ msgid "You are not allowed to goto \"http:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"http:\""
+
+#~ msgid "You are not allowed to goto \"https:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"https:\""
+
+#~ msgid "You are not allowed to goto \"lynxcgi:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"lynxcgi:\""
+
+#~ msgid "You are not allowed to goto \"lynxexec:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"lynxexec:\""
+
+#~ msgid "You are not allowed to goto \"lynxprog:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"lynxprog:\""
+
+#~ msgid "You are not allowed to goto \"mailto:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev  \"mailto:\""
+
+#~ msgid "You are not allowed to goto \"news:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"news:\""
+
+#~ msgid "You are not allowed to goto \"nntp:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"nntp:\""
+
+#~ msgid "You are not allowed to goto \"rlogin:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"rlogin:\""
+
+#~ msgid "You are not allowed to goto \"snews:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"snews:\""
+
+#~ msgid "You are not allowed to goto \"telnet:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"telnet:\""
+
+#~ msgid "You are not allowed to goto \"tn3270:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"tn3270:\""
+
+#~ msgid "You are not allowed to goto \"wais:\" URLs"
+#~ msgstr "Ni vam dovoljeno odpreti URL-jev \"wais:\""
+
+#~ msgid "This special URL is not allowed as a goto!"
+#~ msgstr "Ne smemo skoèiti na ta posebni URL!"
+
+#~ msgid "Option choice (or page) number: "
+#~ msgstr "©tevilka izbire mo¾nosti (ali strani): "
+
+#~ msgid "Choice number %d already is current."
+#~ msgstr "Izbira ¹tevilka %d je ¾e zdaj trenutna."
+
+#~ msgid "You are already at the end of this choice list."
+#~ msgstr "®e zdaj smo na koncu tega seznama izbir."
+
+#~ msgid "You are already at the beginning of this choice list."
+#~ msgstr "®e zdaj smo na zaèetku tega seznama izbir."
+
+#~ msgid "You are already at page %d of this choice list."
+#~ msgstr "®e zdaj smo na strani %d tega seznama izbir."
+
+#~ msgid "You have entered an invalid choice number."
+#~ msgstr "Vnesli ste neveljavno ¹tevilko izbire."
+
+#~ msgid "Looking up %s."
+#~ msgstr "Preverjamo %s."
+
+#~ msgid "KB"
+#~ msgstr "KB"
+
+#~ msgid "(From Cookie Jar)"
+#~ msgstr "(Iz posode s pi¹koti)"
+
+#~ msgid "Lynx ver. %s"
+#~ msgstr "Lynx razl. %s"
+
+#~ msgid "Personal Name: "
+#~ msgstr "Osebno ime: "
diff --git a/po/sv.po b/po/sv.po
new file mode 100644
index 00000000..3020039d
--- /dev/null
+++ b/po/sv.po
@@ -0,0 +1,6246 @@
+# Swedish translation for Lynx
+# Copyright © 2000, 2001, 2002, 2003, 2004, 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the lynx package.
+# Peter Krefting <peter@softwolves.pp.se>, 2000-2009.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.7-dev12\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-01-18 19:08-0500\n"
+"PO-Revision-Date: 2009-01-15 22:14+0100\n"
+"Last-Translator: Peter Krefting <peter@softwolves.pp.se>\n"
+"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Varning!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Välkommen"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Är du säker att du vill avsluta?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Verkligen avsluta Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Anslutningen avbröts."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Dataöverföringen avbröts."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Avbruten!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Avbryter!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Underbart!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Klar!"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Felaktig förfrågan!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "föregående"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "nästa skärm"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "HJÄLP!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", hjälp om "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Kommandon: Piltangenter flyttar, \"?\" ger hjälp, \"q\" avslutar, \"<-\" återgår."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- tryck blanksteg för mer, piltangenter flyttar, \"?\" ger hjälp, \"q\" avslutar."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- tryck blanksteg för nästa sida --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "Adressen för lång"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Textinmatningsfält) Inaktivt. Tryck <Enter> för att aktivera."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Textfält) Inaktivt. Tryck <Enter> för att aktivera."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Textfält) Inaktivt. Tryck <Enter> för att aktivera (%s för redigeringsprogram)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Formulärfält) Inaktivt. Tryck <Enter> för att redigera."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Formulärfält) Inaktivt. Tryck <Enter> för att redigera (%s skickar utan cache)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Formulärfält) Inaktivt. Redigera med <Enter>, två gånger för att skicka."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(e-postformulärfält) Inaktivt. Tryck <Enter> för att ändra."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Lösenordsinmatningsfält) Inaktivt. Tryck <Enter> för att aktivera."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVSKYDDAT filinmatningsfält. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Filinmatningsfält) Ange filnamn. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Textinmatningsfält) Ange text. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Textfält) Ange text. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Textfält) Ange text. UPP-/NED-pil eller tabb lämnar (%s redigerar med program)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVSKYDDAT formulärtextfält. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Formulärfält) Ange text. Tryck <Enter> för att skicka."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Formulärfält) Ange text. Tryck <Enter> för att skicka (%s förbigår cache)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Formulärfält) Ange text. <Enter> skickar, pilar eller tabb lämnar."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVSKYDDAT formulärfält. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(e-postformulärfält) Ange text. <Enter> skickar, pilar lämnar."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(e-postformulärfält) E-post tillåts ej, så du kan inte skicka."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Lösenordsfält) Ange text. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVSKYDDAT formulärlösenord. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Kryssruta)   Använd högerpil eller <Enter> för att ställa om."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVSKYDDAD kryssruta. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Radioknapp)   Använd högerpil eller <Enter> för att ställa om."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "SKRIVSKYDDAD radioknapp. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Skicka (\"x\" förbigår cache) till "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Skicka till "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Sändknapp) Använd högerpil eller <Enter> för att skicka (\"x\" förbigår cache)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Sändknapp) Använd högerpil eller <Enter> för att skicka."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "INAKTIV sändknapp. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Skicka e-postformulär till "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(sändknapp i e-postformulär) Använd högerpil eller <Enter> för att skicka."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(sändknapp i e-postformulär) E-post tillåts ej, så du kan inte skicka."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Nollställningsknapp) Använd högerpil eller <Enter> för att återställa förval."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "INAKTIV nollställningsknapp. Använd UPP-/NED-pil eller tabb för att lämna."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Alternativlista) Tryck Enter och använd pilar och Enter för att välja."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Vallista) Tryck Enter och använd piltangenter och Enter för att välja."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "SKRIVSKYDDAD alternativlista. Använd Enter och pilar för att visa eller lämna."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "SKRIVSKYDDAD vallista. Använd Enter och piltangenter för att visa eller lämna."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Skickar formulär..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Nollställer formulär..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Hämtar om dokument. Eventuellt formulärinnehåll förkastas!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Varning: Kan inte koda formulärdata i teckenuppsättningen %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(VANLIG LÄNK)   Använd högerpil eller <Enter> för att aktivera."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "Resursen du begärt är inte tillgänglig just nu."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Ange Lynxtangentkommando: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Slår upp "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Hämtar %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Hoppas över %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Använder %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Felaktig adress: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Trasig adress %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "Adress: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Kan inte komma åt webbfil!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Detta är ett sökbart index. Använd %s för att söka."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Mer--  Detta är ett sökbart index. Använd %s för att söka."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Du har angett ett felaktigt länknummer."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Visar dokumentkällkod. Tryck \"\\\" för att återgå till tolkad version."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  Piltangenter: Upp och ned flyttar. Höger följer länk; vänster återgår.  \n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " H=Hjälp O=Val P=Utskrift G=Gå M=Huvudskärm Q=Avsluta /=sök Del=Historik \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "  O=Fler H=Hjälp K=Tangenter G=Gå P=Utskrift M=Huvudskärm O=Val Q=Avsluta \n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "  O=Fler B=Bakåt E=Redigera D=Hämta ^R=Hämta om ^W=Rita om  sök dokument: / \n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O=Fler  C=Kommentera  Historik: backsteg  Bokmärken: V=Visa A=Nytt R=Ta bort \n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "           Ange text i fältet genom att skriva på tangentbordet              "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "        Ctrl-U tömmer inmatningsfältet, [Backsteg] tar bort en bokstav       "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "        Ctrl-U tömmer inmatningsfältet, [Backsteg] tar bort en bokstav     "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "       %s tömmer inmatningsfältet, [Backsteg] tar bort en bokstav        "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "       %s tömmer inmatningsfältet, [Backsteg] tar bort en bokstav      "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Trasig \"mailto\" i formulär! Avbryter!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Varning!  Kontrollkoder i e-postadress ersatta med frågetecken"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "E-post tillåts ej! Kan inte skicka."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Misslyckades att skicka e-postformulär!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Insändning av e-postformulär avbruten!!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Skickar formulärdata..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "Ingen e-postadress i \"mailto\"-fältet!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Kan inte öppna temporärfil för \"mailto\"-adress!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Vill du inkludera originalmeddelandet?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Vill du inkludera den färdigtolkade källkoden?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Startar ditt valda textredigeringsprogram för att skriva brevet"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Fel vid start av textredigeringsprogram, se inställningar i valmenyn"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Skicka denna kommentar?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Skicka detta meddelande?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Skickar ditt meddelande..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Skickar din kommentar:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Inte i en TEXTAREA; kan inte använda externt redigeringsprogram."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Inte i en TEXTAREA; kan inte använda kommando."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "file:-formulärmål tillåts inte!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "file:-adresser i givna adresser tillåts ej!"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "Ã…tkomst till lokala filer nekas."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "file:-adresser i bokmärken tillåts ej!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Denna specialadress tillåts ej i externa dokument!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Tryck <Enter> för att återgå till Lynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Startar DCL-underprocess. Använd \"logout\" för att återgå till Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Skriv EXIT för att återgå till Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Startar ditt valda skal. Skriv \"exit\" för att återgå till Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "Start av externa program tillåts ej just nu."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "Hämtningskommandot (\"d\") tillåts ej just nu."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Du kan inte hämta ett indatafält."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Detta är ett e-postformulär! Kan inte hämta."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Du kan inte hämta en mailto:-länk."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Du kan inte hämta kakor."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Du kan inte hämta ett utskriftsval."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Du kan inte hämta ett sändningsalternativ."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Du kan inte hämta en inställning."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Denna specialadress kan inte hämtas!"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Inget att hämta."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Spårning AKTIV!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Spårning INAKTIV!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Länkar skapas för alla bilder! Hämtar om..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Normal bildhantering återställd! Hämtar om..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "\"Pseudo-ALT\" sätts in för bilder som saknar ALT-strängar! Hämtar om..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Bilder utan ALT-strängar ignoreras! Hämtar om..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Rått 8-bitars- eller CJK-läge AV! Hämtar om..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Rått 8-bitars- eller CJK-läge PÅ! Hämtar om..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Sänd \"HEAD\" för D=dokument eller L=länk; C=Avbryt? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Sänd \"HEAD\" för D=dokument; C=Avbryt? (d,c): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Tyvärr, dokumentet har inte en http-adress."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Tyvärr, länken har inte en http-adress."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Tyvärr, formulärmålet detta formulär är avstängt."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Tyvärr, formulärmålet för detta formulär är inte en http-adress."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "Inte en http-adress eller formulärmål!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Denna speciella adress kan inte vara formulärmål!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "Adressen är inte i startmängden!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "Postning av artiklar deaktiverad!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Filhanteringsstödet är deaktiverat!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Ingen hoppfil finns just nu att tillgå."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Hoppa till (\"?\"=lista): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Hopp till genvägsadress ej tillåtet!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Slumpmässig adress ej tillåten! Använd en genväg."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Inga slumpmässiga adresser har ännu används."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Bomärkesfunktionerna är just nu deaktiverade."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "Programkörning via bokmärken är deaktiverat."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Bokmärkesfil ej definierad. Använd %s för att se alternativ."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Kan inte öppna temporärfil för konvertering av X Mosaics bokmärken."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "FEL - kan inte öppna bokmärkesfil."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Kan inte öppna bokmärkesfil för borttagning av länk."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Kan inte öppna skräpfil för borttagning av länk."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Fel vid namnändring av skräpfil."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Fel vid namnändring av temporärfil."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Kan inte kopiera temporärfil för borttagning av länk."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Kan inte återöppna temporärfil för borttagning av länk."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Länk är inte själv helt på en rad i bokmärkesfilen."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Borttagning av bokmärke misslyckades."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Bokmärkesfiler kan inte traverseras (endast http-adresser)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Kan inte öppna bokmärkesfil, använd 'a' för att spara en länk först"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Det finns inga länkar i denna bokmärkesfil!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "D=Ta bort cachat dokument; C=Avbryt? (d,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Spara D)okument eller L)änk till bokmärkesfil? C=Avbryt (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Spara D)okument till bokmärkesfil? C=Avbryt (d,c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Spara L)änk till bokmärkesfil? C=Avbryt (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Dokument från \"POST\"-formulär kan inte lagras som bokmärken."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Kan inte spara formulärfält/länkar"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Historik, \"showinfo\", menyer och listfiler kan inte lagras som bokmärken."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Vill du verkligen ta bort denna länk från din bokmärkesfil?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Trasig adress."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Historisk tolkning av kommentarer PÃ… (minimal undertryckt)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Historisk tolkning av kommentarer AV (minmal aktiv)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Historisk tolkning av kommentarer PÃ… (korrekt undertryckt)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Historisk tolkning av kommentarer AV (korrekt aktiv)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Minimal tolkning av kommentarer PÃ… (och aktiv)!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Minimal tolkning av kommentarer AV (korrekt aktiv)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Minimal tolkning av kommentarer PÃ… (men historisk aktiv)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Minimal tolkning av kommentarer AV (historisk aktiv)!"
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "Mjuk citationsteckenstolkning PÃ…!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "Mjuk citationsteckenstolkning AV!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Tolkar nu HTML enligt \"TagSoup\"-modellen."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Tolkar nu HTML enligt \"SortaSGML\"-modellen."
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Du är redan i slutet av dokumentet."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Du är redan i början av dokumentet."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Du är redan på sida %d av dokumentet."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Länk nummer %d är redan nuvarande."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Du är redan i det första dokumentet."
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Det finns inga länkar över denna rad i dokumentet."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Det finns inga länkar nedanför denna rad i dokumentet."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Maximal längd nådd! Ta bort text eller lämna fältet."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Du är inte på en formulärsändknapp eller normal länk."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "En radioknapp måste alltid vara markerad!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Ingen insändningsknapp i formuläret, skicka ensamt textfält?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Vill du gå tillbaka till föregående dokument?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Använd pilar eller tabb för att lämna."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Ange text. Använd pilar eller tabb för att lämna."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** Trasig HTML!! Inget formulärmål angivet. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Trasig HTML!! Kan inte skapa popupfönster!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Kan inte skapa popupfönster!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Slumpmässig adress ej tillåten!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Icke-http-adress ej tillåten!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Du tillåts inte gå till \"%s\"-adresser"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "Adress att öppna: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Redigera aktuell gåadress: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Redigera föregående gåadress: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Redigera en tidigare gåadress: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "Aktuellt dokument har \"POST\"-data."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Redigera dokumentets adress: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Redigera aktull länkadress: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "Du kan inte redigera filhanteringsadresser"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Ange en databasfråga: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Ange en \"whereis\"-fråga: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Redigera aktuell fråga: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Redigera föregående fråga: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Redigera en tidigare fråga: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Använd Control-R för att skicka frågan på nytt."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Redigera aktuell genväg: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Redigera föregående genväg: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Redigera en tidigare genväg:"
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Tangenten \"%c\" är inte kopplad till en hoppfil!"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Kan inte lokalisera hoppfil!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Kan inte öppna hoppfil!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Fel vid läsning av hoppfil!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Slut på minne vid läsning av hoppfil!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Slut på minne vid läsning av hopptabell!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Inget index är tillgängligt."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Vill du verkligen gå till huvudskärmen?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "Du är redan på huvudskärmen!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Inte ett sökbart index -- tryck \"/\" för att söka efter en textsträng"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Ingen ägare är angiven för denna fil, så du kan inte skicka en kommentar"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Ingen ägaren är angiven. Använda %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Vill du skicka en kommentar?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "E-post tillåts ej, så du kan inte skicka en kommentar"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "Redigeringskommandot är just nu deaktiverat."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "Extern redigering är just nu deaktiverad."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Systemfel - kunde inte hämta status."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Inget textredigeringsprogram har angivits!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "Utskriftskommandot är just nu deaktiverat."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "Dokumentet har varken verktygsradslänkar eller baner."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Kan inte öppna traverseringsfil."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Kan inte öppna traverseringens resultatfil."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Kan inte öppna avvisningsfilen."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Kan inte öppna traverseringens felfil."
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "TRAVERSERINGEN AVBRÖTS"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Följ länk (eller gå till länk eller sida) nummer: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Välj val- (eller sid-)nummer: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Alternativ %d är redan markerat."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Du är redan i slutet av alternativlistan."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Du är redan i början av alternativlistan."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Du är redan på sida %d i alternativlistan."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Du har angett ett felaktigt alternativnummer."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Trasig HTML!! Använd -trace för att diagnostisera. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "Ange filnamn att spara till"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Kan inte spara data till fil -- kör lokal webbläsare"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Kan inte öppna temporärfil!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Kan inte öppna utdatafil! Avbryter!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Programkörning deaktiverad."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "Programkörning inte aktiverad för denna fil. Se alternativmeny (använd %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Programkörningsmöjligheter inte inkompilerade i denna version."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Denna fil kan inte visas på terminalen."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Denna fil kan inte visas på terminalen. D=Hämta, C=Avbryt"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D=Hämta, C=Avbryt"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Avbryter fil."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Hämtar fil. - VÄNLIGEN VÄNTA -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Ange ett filnamn: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Redigera föregående filnamn: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Redigera ett tidigare filnamn: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Ange ett nytt filnamn: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Filnamnet får inte börja med en punkt."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Filen existerar. Skapa en högre version?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Filen existerar. Skriva över?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Kan inte skriva till fil."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "FEL! - hämtkommandot är felkonfigurerat."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Kan inte hämta fil."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Läser katalog..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Bygger kataloglista..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Sparar..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Kan inte redigera filen \"%s\"."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Kan inte komma åt dokument!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Kan inte komma åt fil."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Kan inte komma åt katalog."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Kan inte läsa in data."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx kan ännu inte redigera fjärrwebbfiler."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Detta fält kan inte redigeras med en extern redigerare."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Felaktig regel"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Otillräckliga operander:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Du har inte rättighet att redigera filen."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Titel: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Ärende: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Användar-id: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Lösenord: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Användar-id och lösenord krävs!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: Lösenord krävs!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Rensa all auktoriseringsinformation från denna session?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Auktoriseringsinformation rensad."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Auktorisering misslyckades. Försök igen?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "cgi-stöd har deaktiverats."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Lynxcgi-stöd är inte inkompilerade i denna version."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Tyvärr, kan inte konvertera %s till %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Kan inte ställa in anslutning."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Kan inte skapa anslutning"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Körbar länk förkastad på grund av trasig förfrågan."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Körbar länk förkastad på grund av tecknet \"%c\"."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Körbar länk förkastad på grund av relativ sökvägssträng (\"../\")."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Körbar länk förkastad på grund av placering eller sökväg."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "Ã…tkomst till e-post deaktiverad!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Endast filer och servrar på den lokala värden kan nås."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Telnetåtkomst är deaktiverad!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Specificering av telnetport är deaktiverad."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "Åtkomst till Usenet news är deaktiverad!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Rloginåtkomst är deaktiverad!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Ftpåtkomst är deaktiverad!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Det finns inga referenser i detta dokument."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Det finns inga dolda länkar i detta dokument."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Kan inte öppna kommandofil."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Postning av inlägg avbruten!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Startar ditt valda textredigeringsprogram för att redigera inlägg"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Posta inlägget?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Lägga till \"%s\"?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Postar till diskussionsgrupp(er)..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** Du har oläst e-post. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** Du har e-post. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** Du har ny e-post. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Filinläggning avbruten!!!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Minnet slut för fil!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Kan inte öppna fil för läsning."
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Filen existerar inte."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Filen existerar inte - ange igen eller avbryt:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Filen är inte läsbar."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Filen är inte läsbar - ange igen eller avbryt:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Inget att lägga in - filen har nollstorlek."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Sparning avbruten!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "E-post avbrutet!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Visar tolkad källkod. Är du säker på att du vill skicka den?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Var god vänta..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Skickar fil. Var god vänta..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "FEL - Kan inte skicka fil per e-post"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Filen är %d skärmar lång. Är du säker att du vill skriva ut?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Utskrift avbruten!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Tryck <Enter> för att börja: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Tryck <Enter> för att avsluta: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Filen är %d sidor lång. Är du säker att du vill skriva ut?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Försäkra dig om att skrivaren är inkopplad. Tryck <Enter> för att påbörja utskriften:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "FEL - kan inte reservera filutrymme!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Kan inte öppna temporärfil"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Kan inte öppna utskriftsalternativfil"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Skriver ut fil. Var god vänta..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Ange en giltig Internet-e-postadress: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "FEL! - skrivaren är felkonfigurerad!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Bildkarta från \"POST\"-svar ej tillgänglig!"
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Feldirigerad klientbildkarteförfrågan!"
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "Klientbildkarta ej åtkomlig!"
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Inga klientbildkartor är tillgängliga!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "Klientbildkarta ej tillgänglig!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Skärmhöjden måste vara minst 24 rader för alternativmenyn!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Skärmhöjden måste vara minst 23 rader för alternativmenyn!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Skärmhöjden måste vara minst 22 rader för alternativmenyn!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Den knappen kräver avancerat användarläge."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Datatyp: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Kommando: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Okänt eller tvetydigt kommando"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Version "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " först"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", gissar..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Behörighet för "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Välj "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "stora bokstaven"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " i alternativet,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " för att lagra,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " till "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " eller "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " index"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " för att återgå till Lynx"
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Bekräfta ändringar"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Nollställ ändringar"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Vänsterpil avbryter ändringar"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "Spara inställningar till disk"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Tryck ENTER för att bekräfta angiven data."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Tryck ENTER för att bekräfta angiven data. Ta bort för att återställa förval."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Värdet accepterat!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Värdet accepterat! -- VARNING: Lynx har ställts in för XWINDOWS!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Värdet accepterat! -- VARNING: Lynx har INTE ställts in för XWINDOWS!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Du har inte rättighet att ändra textredigeringsprogram!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Kunde inte ställa in DISPLAY-variabel!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Kunde inte ta bort DISPLAY-variabel!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Du har inte rättighet att ändra bokmärkesfil!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "Terminalen stöder inte färg"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Din \"%s\"-terminal stöder inte färg."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "Tillgång till punktfiler är deaktiverad!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "Identifieringssträngen innehåller inte \"Lynx\" eller \"L_y_n_x\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Använd \"L_y_n_x\" eller \"Lynx\" i identifieringen, annars ser det ut som medvetet bedrägeri"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "Ändring av identifieringssträngen är deaktiverad!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Du har inte behörighet att ändra denna inställning."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Sparar inställningar..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Inställningar sparade!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Kan inte spara inställningar!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' återgår till Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' sparar, 'r' återgår till Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Valfri tangent ändrar, förutom ENTER som accepterar."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Fel vid dekomprimering av temporärfil!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Adresstypen stöds ej!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Data stöds ej: URL! Använd SHOWINFO så länge."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Gräns på 10 adressomdirigeringar nådd."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Felaktig omdirigeringsadress mottagen från servern!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Servern bad om %d-omdirigering för POST-data till"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "P=Fortsätt, G=använd Get, C=Avbryt"
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P=Fortsätt, C=Avbryt "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Omdirigering av POST-data. P=Fortsätt, U=Se adress, G=använd GET, C=Avbryt"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Omdirigering av POST-data. P=Fortsätt, U=Se adress, C=Avbryt"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Dokument från formulär med POST-data. Skicka igen?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Skicka POST-data till %s igen?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Lista från dokument med POST-data. Hämta om %s?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Dokument från POST-formulär, HEAD kanske inte förstås. Fortsätta?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Formulärmetod är POST, HEAD kanske inte förstås. Fortsätta?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Fortsätta utan användar-id och lösenord?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Fortsätta (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Kan inte skicka POST-data till denna värd."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "POST stöds inte för denna adress - ignorerar POST-data!"
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Kastar POST-data..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Dokumentet hämtas inte om!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Plats: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' hittades ej!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Förinställd bokmärkesfil"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Skärm för liten! (min. 8x35)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Välj destination eller ^G för att avbryta: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Välj underbokmärke. '=' ger meny, ^G avbryter: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "L=Avbilda länk i bokmärkesfil, C=Avbryt? (l,c): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Stöd för multipla bokmärken ej tillgängligt."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Välj bokmärke (skärm %d av %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Välj bokmärke"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Redigerar bokmärkes-BESKRIVNING och SÖKVÄG (%d av 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Redigerar bokmärkes-BESKRIVNING och SÖKVÄG"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Bokstav: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Använd en sökväg från din inloggningskatalog enligt SKAL-syntax!"
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Använd en sökväg från din hemkatalog!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Max antal länkar per sida överskreds! Använd halvsides- eller tvåradsrullning."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Inga tidigare besökta länkar tillgängliga!"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Minnet slut! Programmet avbrutet!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Minnet slut! Avbryter..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Ej tillräckligt minne!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Katalog-/filhanterare ej tillgänglig"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF i BASE-märke är inte en absolut adress."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "\"Location\"-adress ej absolut."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "\"Refresh\"-adress ej absolut."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Du sänder ett meddelande med textkropp till:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Du sänder en kommentar till:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" Med kopia till:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Med kopior till:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Använd Ctrl-G för att avbryta om du inte vill skicka ett meddelande\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Ange ditt namn eller lämna blankt för att förbli anonym\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Skriv din e-postadress eller något annat\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " sätt du kan nås på, om du vill ha ett svar.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Ange en ärenderad.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Ange e-postadress som får kopia på ditt meddelande.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Lämna blankt om du inte vill ha en kopia).\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Se över meddelandekroppen:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Tryck ENTER för att fortsätta: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Tryck ENTER för att städa upp: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Använd Control-U för att rensa förvalet.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Skriv ditt meddelande nedan."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" När du är klar, tryck Enter och skriv en ensam punkt (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" på en rad och tryck Enter igen."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s kaka: %.*s=%.*s  Tillåta? (J/N/Alltid/aLdrig)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Tillåta ogiltig kakdomän=%s för \"%s\"?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Tillåta ogiltig kaksökväg=%s som prefix för \"%s\"?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Tillåter kakan."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Avvisar kakan."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Kakburken är tom."
+
+#: LYMessages.c:705
+msgid "The Cache Jar is empty."
+msgstr "Cacheburken är tom."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Aktivera länk för att äta upp kakor eller hela domäner,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "eller ändra ändra domänens \"tillåt\"-inställning."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Kakor tillåts aldrig)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Kakor tillåts alltid)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Kakor tillåts via fråga)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Persistenta kakor)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Titel saknas)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Inget namn)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Inget värde)"
+
+#: LYMessages.c:716 src/LYOptions.c:2406
+msgid "None"
+msgstr "Ingen"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Slut på session)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Radera denna kaka?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Kakan har ätits upp!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Radera denna tomma domän?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Domänen har ätits upp!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D=Radera domänens kakor, ställ in A=Alltid/P=Fråga/V=Aldrig, C=Avbryt? "
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D=Radera domän, ställ in A=Alltid/P=Fråga/V=Aldrig, C=Avbryt? "
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Alla kakor från domänen har ätits upp!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "Tillåter alla kakor från domänen \"%s\"."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "Avvisar alla kakor från domänen \"%s\"."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "Frågar om alla kakor från domänen \"%s\"."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Radera alla kakor i denna domän?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Alla kakor i kakburken har ätits upp!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Port 19 ej tillåten i adress."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Port 25 ej tillåten i adress."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Port %lu ej tillåten i adress."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "Adressen har ett felaktigt portfält."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Maximal stapling av HTML-element överskreds."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Felaktig partiell referens! Raderar inledande punkter."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Öppning av spårningslogg misslyckades. Spårning avslagen!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Lynx' spårningslogg"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "Ingen spårningslogg har startats för denna session."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Maximalt antal temporärfiler har nåtts!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Värdet för formulärfält är längre än bufferten! Klipp på slutet."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Modifierad avslutning kombinerad med huvudet i formulärfältsvärdet."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Katalog"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Katalogbläddring tillåts ej."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "Selektiv åtkomst är inte tillgänglig för denna katalog"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Multiformat: katalogavsökning misslyckades."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Denna katalog är inte läsbar."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Kan inte komma åt vald fil."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Kunde inte hitta en lämplig representation för överföring."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Kunde inte öppna filen för dekomprimering!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Filer:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Underkataloger:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " katalog"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Upp till "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Aktuell katalog är "
+
+#. HTFTP.c
+#: LYMessages.c:765
+msgid "Symbolic Link"
+msgstr "Symbolisk länk"
+
+#. HTGopher.c
+#: LYMessages.c:768
+msgid "No response from server!"
+msgstr "Inget svar från servern!"
+
+#: LYMessages.c:769
+msgid "CSO index"
+msgstr "CSO-index"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Detta är ett sökbart index i en CSO-databas.\n"
+
+#: LYMessages.c:771
+msgid "CSO Search Results"
+msgstr "CSO-sökresultat"
+
+#: LYMessages.c:772
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Sökning misslyckades på %s\n"
+
+#: LYMessages.c:773
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Tryck \"s\"-tangenten och ange söknyckelord.\n"
+
+#: LYMessages.c:774
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Detta är ett sökbart Gopherindex.\n"
+
+#: LYMessages.c:775
+msgid "Gopher index"
+msgstr "Gopherindex"
+
+#: LYMessages.c:776
+msgid "Gopher Menu"
+msgstr "Gophermeny"
+
+#: LYMessages.c:777
+msgid " Search Results"
+msgstr " Sökresultats"
+
+#: LYMessages.c:778
+msgid "Sending CSO/PH request."
+msgstr "Sänder CSO/PH-fråga."
+
+#: LYMessages.c:779
+msgid "Sending Gopher request."
+msgstr "Sänder Gopherfråga."
+
+#: LYMessages.c:780
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO/PH-fråga sänd; väntar på svar."
+
+#: LYMessages.c:781
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopherfråga sänd; väntar på svar."
+
+#: LYMessages.c:782
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Ange söknyckelord.\n"
+
+#: LYMessages.c:783
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Nyckelorden du anger gör det möjligt att söka på en"
+
+#: LYMessages.c:784
+msgid " person's name in the database.\n"
+msgstr " persons namn i databasen.\n"
+
+#. HTNews.c
+#: LYMessages.c:787
+msgid "Connection closed ???"
+msgstr "Anslutning stängd???"
+
+#: LYMessages.c:788
+msgid "Cannot open temporary file for news POST."
+msgstr "Kan inte öppna temporärfil för diskussionsinlägg."
+
+#: LYMessages.c:789
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Denna klient innehåller inte stöd för att posta inlägg över SSL."
+
+#. HTStyle.c
+#: LYMessages.c:792
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Stil %d \"%s\" SGML:%s. Teckensnitt %s %.1f punkter.\n"
+
+#: LYMessages.c:794
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tJustering=%d, %d tabbar. (%.0f före, %.0f efter)\n"
+
+#: LYMessages.c:795
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tTabbsort=%d på %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:798
+msgid "Can't proceed without a username and password."
+msgstr "Kan inte fortsätta utan användar-id och lösenord."
+
+#: LYMessages.c:799
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Kan inte försöka igen utan tillåtelse! Kontakta serverns ansvariga."
+
+#: LYMessages.c:800
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Kan ej försöka igen utan mellanserverauktorisering! Kontakta serverns ansvariga."
+
+#: LYMessages.c:801
+msgid "Retrying with proxy authorization information."
+msgstr "Försöker igen med mellanserverauktoriseringsinformation."
+
+#: LYMessages.c:802
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL-fel:%s-Fortsätta?"
+
+#. HTWAIS.c
+#: LYMessages.c:805
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Returmeddelande för stort."
+
+#: LYMessages.c:806
+msgid "Enter WAIS query: "
+msgstr "Ange WAIS-fråga: "
+
+#. Miscellaneous status
+#: LYMessages.c:809
+msgid "Retrying as HTTP0 request."
+msgstr "Försöker ingen som HTTP0-fråga."
+
+#: LYMessages.c:810
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Överförde %d byte"
+
+#: LYMessages.c:811
+msgid "Data transfer complete"
+msgstr "Dataöverföring färdig"
+
+#: LYMessages.c:812
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Fel vid tolkning av rad %d i %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:815
+msgid "Address List Page"
+msgstr "Adresslistesida"
+
+#: LYMessages.c:816
+msgid "Bookmark file"
+msgstr "Bokmärkesfil"
+
+#: LYMessages.c:817
+msgid "Configuration Definitions"
+msgstr "Konfigurationsdefinitioner"
+
+#: LYMessages.c:818
+msgid "Cookie Jar"
+msgstr "Kakburk"
+
+#: LYMessages.c:819
+msgid "Current Key Map"
+msgstr "Aktuella tangentbordsbindningar"
+
+#: LYMessages.c:820
+msgid "File Management Options"
+msgstr "Filhanteringsalternativ"
+
+#: LYMessages.c:821
+msgid "Download Options"
+msgstr "Hämtningalternativ"
+
+#: LYMessages.c:822
+msgid "History Page"
+msgstr "Historiksida"
+
+#: LYMessages.c:823
+msgid "Cache Jar"
+msgstr "Cacheburk"
+
+#: LYMessages.c:824
+msgid "List Page"
+msgstr "Listsida"
+
+#: LYMessages.c:825
+msgid "Lynx.cfg Information"
+msgstr "Lynx.cfg-information"
+
+#: LYMessages.c:826
+msgid "Converted Mosaic Hotlist"
+msgstr "Konverterade Mosaicbokmärken"
+
+#: LYMessages.c:827
+msgid "Options Menu"
+msgstr "Alternativmeny"
+
+#: LYMessages.c:828
+msgid "File Permission Options"
+msgstr "Filbehörighetsalternativ"
+
+#: LYMessages.c:829
+msgid "Printing Options"
+msgstr "Utskriftsalternativ"
+
+#: LYMessages.c:830
+msgid "Information about the current document"
+msgstr "Information om det aktuella dokumentet"
+
+#: LYMessages.c:831
+msgid "Your recent statusline messages"
+msgstr "Dina senaste statusradmeddelanden"
+
+#: LYMessages.c:832
+msgid "Upload Options"
+msgstr "Insändningsalternativ"
+
+#: LYMessages.c:833
+msgid "Visited Links Page"
+msgstr "Använda länkar"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:836
+msgid "See also"
+msgstr "Se även"
+
+#: LYMessages.c:837
+msgid "your"
+msgstr "din"
+
+#: LYMessages.c:838
+msgid "for runtime options"
+msgstr "för körningsalternativ"
+
+#: LYMessages.c:839
+msgid "compile time options"
+msgstr "kompileringsalternativ"
+
+#: LYMessages.c:840
+msgid "color-style configuration"
+msgstr "konfigurering av color-style"
+
+#: LYMessages.c:841
+msgid "latest release"
+msgstr "senaste utgåva"
+
+#: LYMessages.c:842
+msgid "pre-release version"
+msgstr "förhandsversion"
+
+#: LYMessages.c:843
+msgid "development version"
+msgstr "utvecklingsversion"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:845
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Följande data hämtades under den automatiska konfigurations-/kompilerings-\n"
+"processen för din kopia av Lynx. När du rapporterar ett fel ber vi dig\n"
+"inkludera en kopia av denna sida."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:849
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Följande data användes som automatiskt konfigurerade kompileringsdefinitioner\n"
+"när denna kopia av Lynx kompilerades."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:854
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "C=Skapa  D=Hämta  E=Redigera  F=Full meny  M=Ändra  R=Radera  T=Märk  U=Skicka\n"
+
+#: LYMessages.c:855
+msgid "Failed to obtain status of current link!"
+msgstr "Kunde inte hämta status för aktuell länk!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:858
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Speciell adress endast giltig i menyn för filbehörigheter!"
+
+#: LYMessages.c:862
+msgid "External support is currently disabled."
+msgstr "Externt stöd är just nu deaktiverat."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:866
+msgid "Changing working-directory is currently disabled."
+msgstr "Byte av arbetskatalog tillåts ej just nu."
+
+#: LYMessages.c:867
+msgid "Linewrap OFF!"
+msgstr "Radbrytning AV!"
+
+#: LYMessages.c:868
+msgid "Linewrap ON!"
+msgstr "Radbrytning PÃ…!"
+
+#: LYMessages.c:869
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Tolkning av nästlade tabeller AV! Hämtar om..."
+
+#: LYMessages.c:870
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Tolkning av nästlade tabeller PÅ! Hämtar om..."
+
+#: LYMessages.c:871
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Skiftning är deaktiverad när radbrytning är aktiv"
+
+#: LYMessages.c:872
+msgid "Trace not supported"
+msgstr "Spårning stöds ej"
+
+#: LYMessages.c:793
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tIndrag: första=%.0f övriga=%.0f, Höjd=%.1f Djup=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:629
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Användar-id för \"%s\" på %s \"%s%s\":"
+
+#: WWW/Library/Implementation/HTAABrow.c:897
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Denna klient kan inte skapa mellanserverauktoriseringsinformation för protokolltyp"
+
+#: WWW/Library/Implementation/HTAABrow.c:974
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Denna klient kan inte skapa auktoriseringsinformation för protokolltyp"
+
+#: WWW/Library/Implementation/HTAABrow.c:1082
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Felaktigt huvud \"%s%s%s%s%s\""
+
+#: WWW/Library/Implementation/HTAABrow.c:1184
+msgid "Proxy authorization required -- retrying"
+msgstr "Mellanserverauktorisering krävs -- försöker igen"
+
+#: WWW/Library/Implementation/HTAABrow.c:1242
+msgid "Access without authorization denied -- retrying"
+msgstr "Åtkomst utan auktorisering avvisad -- försöker igen"
+
+#: WWW/Library/Implementation/HTAccess.c:689
+msgid "Access forbidden by rule"
+msgstr "Åtkomst förbjuden av regel"
+
+#: WWW/Library/Implementation/HTAccess.c:784
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Dokument med POST-data hittades ej i cache. Skicka in igen?"
+
+#: WWW/Library/Implementation/HTAccess.c:939
+msgid "Loading failed, use a previous copy."
+msgstr "Hämtningen misslyckades, använder tidigare exemplar."
+
+#: WWW/Library/Implementation/HTAccess.c:1048 src/GridText.c:8513
+msgid "Loading incomplete."
+msgstr "Hämtning ej komplett."
+
+#: WWW/Library/Implementation/HTAccess.c:1079
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: uttag eller filnummer returnerad av föråldrad inläsningsrutin!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Internt programvarufel. Meddela lynx-dev@nongnu.org!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1082
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Returnerad status var: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1088 src/LYMainLoop.c:7757
+msgid "Can't Access"
+msgstr "Kan inte komma åt"
+
+#: WWW/Library/Implementation/HTAccess.c:1096
+msgid "Unable to access document."
+msgstr "Kan inte komma åt dokument."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Ange lösenord för användar-id %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Kan inte ansluta till ftp-värd."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "stängd huvuduttag (master socket)"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "uttag (socket) för huvuduttag"
+
+#: WWW/Library/Implementation/HTFTP.c:2976
+msgid "Receiving FTP directory."
+msgstr "Hämtar ftp-katalog."
+
+#: WWW/Library/Implementation/HTFTP.c:3112
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Överförde %d byte (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3467
+msgid "connect for data"
+msgstr "ansluter för data"
+
+#: WWW/Library/Implementation/HTFTP.c:4128
+msgid "Receiving FTP file."
+msgstr "Hämtar ftp-fil."
+
+#: WWW/Library/Implementation/HTFinger.c:276
+msgid "Could not set up finger connection."
+msgstr "Kunde inte skapa \"finger\"-anslutning."
+
+#: WWW/Library/Implementation/HTFinger.c:323
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Kunde inte hämta data (inget värdnamn i \"finger\"-adress)"
+
+#: WWW/Library/Implementation/HTFinger.c:329
+msgid "Invalid port number - will only use port 79!"
+msgstr "Felaktigt portnummer - använder endast port 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:395
+msgid "Could not access finger host."
+msgstr "Kunde inta komma åt \"finger\"-värd."
+
+#: WWW/Library/Implementation/HTFinger.c:403
+msgid "No response from finger server."
+msgstr "Inget svar från \"finger\"-server."
+
+#: WWW/Library/Implementation/HTNews.c:425
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Användar-id för diskussionsvärd \"%s\":"
+
+#: WWW/Library/Implementation/HTNews.c:478
+msgid "Change username?"
+msgstr "Ändra användar-id?"
+
+#: WWW/Library/Implementation/HTNews.c:482
+msgid "Username:"
+msgstr "Användar-id:"
+
+#: WWW/Library/Implementation/HTNews.c:507
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Lösenord för diskussionsvärd \"%s\":"
+
+#: WWW/Library/Implementation/HTNews.c:590
+msgid "Change password?"
+msgstr "Ändra lösenord?"
+
+#: WWW/Library/Implementation/HTNews.c:1710
+#, c-format
+msgid "No matches for: %s"
+msgstr "Inga träffar för: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1760
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Inga artiklar i denna grupp.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1772
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Inga artiklar i detta område.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1785
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s, artiklar %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1808
+msgid "Earlier articles"
+msgstr "Tidigare artiklar"
+
+#: WWW/Library/Implementation/HTNews.c:1821
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Det finns ca %d artiklar tillgängliga i %s nu med följande identifierare:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1883
+msgid "All available articles in "
+msgstr "Alla tillgängliga artiklar i "
+
+#: WWW/Library/Implementation/HTNews.c:2097
+msgid "Later articles"
+msgstr "Senare artiklar"
+
+#: WWW/Library/Implementation/HTNews.c:2120
+msgid "Post to "
+msgstr "Skicka till "
+
+#: WWW/Library/Implementation/HTNews.c:2341
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Denna klient innehåller inte stöd för SNEWS-adresser."
+
+#: WWW/Library/Implementation/HTNews.c:2548
+msgid "No target for raw text!"
+msgstr "Inget mål för rå text!"
+
+#: WWW/Library/Implementation/HTNews.c:2578
+msgid "Connecting to NewsHost ..."
+msgstr "Ansluter till diskussionsvärd..."
+
+#: WWW/Library/Implementation/HTNews.c:2630
+#, c-format
+msgid "Could not access %s."
+msgstr "Kunde inte komma åt %s."
+
+#: WWW/Library/Implementation/HTNews.c:2736
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Kan inte läsa dikussionsinformation. Värden %.20s svarade %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2740
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Kan inte läsa diskussionsinformation, tomt svar från värd %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2944
+msgid "Reading list of available newsgroups."
+msgstr "Läser lista över tillgängliga grupper."
+
+#: WWW/Library/Implementation/HTNews.c:2965
+msgid "Reading list of articles in newsgroup."
+msgstr "Läser lista över artiklar i grupp."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2971
+msgid "Reading news article."
+msgstr "Läser artikel."
+
+#: WWW/Library/Implementation/HTNews.c:3001
+msgid "Sorry, could not load requested news."
+msgstr "Kunde inte hämta begärda artiklar."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "Adressen har en ogiltig port"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "Adresslängden verkar ogiltig"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Kan inte hitta värd %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Ogiltigt värdnamn %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Kopplar upp %s-anslutning till %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "uttag misslyckades."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "uttag misslyckades: familj %d adress %s port %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Kunde inte koppla upp icke-blockerande anslutning."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "Uppkoppling misslyckades (för många försök)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Kunde inte återställa blockering i uttag."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+msgid "Socket read failed (too many tries)."
+msgstr "Fel vid läsning från uttag (för många försök)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "SSL-Ã¥teranrop:%s, preverify_ok=%d, ssl_okay=%d"
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "Adress innehåller användar-id: %s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Certifikatutfärdare: %s"
+
+#: WWW/Library/Implementation/HTTP.c:643
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Denna klient innehåller inte stöd för HTTPS-adresser."
+
+#: WWW/Library/Implementation/HTTP.c:668
+msgid "Unable to connect to remote host."
+msgstr "Kan inte ansluta till värd."
+
+#: WWW/Library/Implementation/HTTP.c:692
+msgid "Retrying connection without TLS."
+msgstr "Gör nytt försök; ansluter utan TLS."
+
+#: WWW/Library/Implementation/HTTP.c:737
+msgid "no issuer was found"
+msgstr "ingen utfärdare hittades"
+
+#: WWW/Library/Implementation/HTTP.c:739
+msgid "issuer is not a CA"
+msgstr "utfärdaren är inte ett certifieringsorgan"
+
+#: WWW/Library/Implementation/HTTP.c:741
+msgid "the certificate has no known issuer"
+msgstr "certifikatet har ingen känd utfärdare"
+
+#: WWW/Library/Implementation/HTTP.c:743
+msgid "the certificate has been revoked"
+msgstr "certifikatet har återkallats"
+
+#: WWW/Library/Implementation/HTTP.c:745
+msgid "the certificate is not trusted"
+msgstr "certifikatet är inte betrott"
+
+#: WWW/Library/Implementation/HTTP.c:821
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Verifierade anslutning mot %s (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:869 WWW/Library/Implementation/HTTP.c:911
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Verifierade anslutning mot %s (subj=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:941
+msgid "Can't find common name in certificate"
+msgstr "Hittar inte vanligt namn i certifikatet"
+
+#: WWW/Library/Implementation/HTTP.c:944
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL-fel:värd(%s)!=cert(%s)-Fortsätta?"
+
+#: WWW/Library/Implementation/HTTP.c:957
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "OVERIFIERAD anslutning mot %s (cert=%s)"
+
+# %d = SSL_get_cipher_bits(handle,NULL)
+# %s = SSL_get_cipher_version(handle)
+# %s = SSL_get_cipher(handle)
+#: WWW/Library/Implementation/HTTP.c:966
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Säker %d-bitars HTTP-anslutning med %s (%s)"
+
+#: WWW/Library/Implementation/HTTP.c:1433
+msgid "Sending HTTP request."
+msgstr "Sänder HTTP-fråga."
+
+#: WWW/Library/Implementation/HTTP.c:1472
+msgid "Unexpected network write error; connection aborted."
+msgstr "Oväntat skrivfel på nätverket; uppkopplingen avbröts."
+
+#: WWW/Library/Implementation/HTTP.c:1478
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP-fråga sänd; väntar på svar."
+
+#: WWW/Library/Implementation/HTTP.c:1549
+msgid "Unexpected network read error; connection aborted."
+msgstr "Oväntat läsfel på nätverket; uppkopplingen avbröts."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1744
+msgid "Got unexpected Informational Status."
+msgstr "Fick oväntad informationsstatus."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1778
+msgid "Request fulfilled.  Reset Content."
+msgstr "Frågan slutförd. Nollställ innehåll."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1894
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Fick oväntad \"ej modifierad\"-(304)-status."
+
+#: WWW/Library/Implementation/HTTP.c:1957
+msgid "Redirection of POST content requires user approval."
+msgstr "Omdirigering av POST-innehåll kräver användarens samtycke."
+
+#: WWW/Library/Implementation/HTTP.c:1972
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Har POST-innehåll. Behandlar permanent omdirigering som temporär.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2014
+msgid "Retrying with access authorization information."
+msgstr "Försöker igen med auktoriseringsinformation."
+
+#: WWW/Library/Implementation/HTTP.c:2026
+msgid "Show the 401 message body?"
+msgstr "Visa kroppen för 401-meddelandet?"
+
+#: WWW/Library/Implementation/HTTP.c:2069
+msgid "Show the 407 message body?"
+msgstr "Via kroppen för 407-meddelandet?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2169
+msgid "Unknown status reply from server!"
+msgstr "Okänt statussvar från server!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "fjärr-%s-session:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Kunde inte ansluta till WAIS-server."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Kunde inte öppna WAIS-anslutning för läsning."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Diagnostisk kod är "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Index "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " innehåller följande %d%s poster relevanta för \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Den första siffran efter varje post är dess relativa poäng, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "den andra är antalet rader i posten"
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (felaktigt filnamn)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(felaktig dokument-id)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Kort huvudpost, kan inte visa)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"LÃ¥ng huvudpost, kan inte visa\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Textfält\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Rubrikfält, kan inte visa\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Kodfält, kan inte visa\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Syntaxfel i WAIS-adress"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS-index)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS-index: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Detta är en länk för att söka i "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS-index.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Välj S=sök och ange sedan sökord.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (i "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS-sökning efter \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" i: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: Fråga för stor."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Söker WAIS-databas..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Sökning avbruten."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Kan inte konvertera WAIS-dokumentformat"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: Fråga för lång."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Hämtar WAIS-dokument..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Ingen text returnerades!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:299
+msgid " NOT GIVEN in source file; "
+msgstr " EJ ANGIVEN i källfilen; "
+
+#: WWW/Library/Implementation/HTWSRC.c:322
+msgid " WAIS source file"
+msgstr " WAIS-källfil"
+
+#: WWW/Library/Implementation/HTWSRC.c:329
+msgid " description"
+msgstr " beskrivning"
+
+#: WWW/Library/Implementation/HTWSRC.c:339
+msgid "Access links"
+msgstr "Åtkomstlänkar"
+
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid "Direct access"
+msgstr "Direktåtkomst"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:363
+msgid " (or via proxy server, if defined)"
+msgstr " (eller via mellanserver, om angiven)"
+
+#: WWW/Library/Implementation/HTWSRC.c:378
+msgid "Maintainer"
+msgstr "Ansvarig"
+
+#: WWW/Library/Implementation/HTWSRC.c:386
+msgid "Host"
+msgstr "Värd"
+
+#: src/GridText.c:704
+msgid "Memory exhausted, display interrupted!"
+msgstr "Minnet slut, visning avbruten!"
+
+#: src/GridText.c:709
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Minnet slut, avbryter överföring!"
+
+#: src/GridText.c:3663
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** MINNET SLUT ***"
+
+#: src/GridText.c:6057 src/GridText.c:6064 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "okänt fält eller länk"
+
+#: src/GridText.c:6073
+msgid "text entry field"
+msgstr "textinmatningsfält"
+
+#: src/GridText.c:6076
+msgid "password entry field"
+msgstr "lösenordsinmatningsfält"
+
+#: src/GridText.c:6079
+msgid "checkbox"
+msgstr "kryssruta"
+
+#: src/GridText.c:6082
+msgid "radio button"
+msgstr "radioknapp"
+
+#: src/GridText.c:6085
+msgid "submit button"
+msgstr "sändknapp"
+
+#: src/GridText.c:6088
+msgid "reset button"
+msgstr "nollställningsknapp"
+
+#: src/GridText.c:6091
+msgid "popup menu"
+msgstr "popup-meny"
+
+#: src/GridText.c:6094
+msgid "hidden form field"
+msgstr "dolt formulärfält"
+
+#: src/GridText.c:6097
+msgid "text entry area"
+msgstr "textinmatningsområde"
+
+#: src/GridText.c:6100
+msgid "range entry field"
+msgstr "områdesinmatningsfält"
+
+#: src/GridText.c:6103
+msgid "file entry field"
+msgstr "filinmatningsfält"
+
+#: src/GridText.c:6106
+msgid "text-submit field"
+msgstr "textsändfält"
+
+#: src/GridText.c:6109
+msgid "image-submit button"
+msgstr "bildsändfält"
+
+#: src/GridText.c:6112
+msgid "keygen field"
+msgstr "nyckelgenerering misslyckades"
+
+#: src/GridText.c:6115
+msgid "unknown form field"
+msgstr "okänt formulärfält"
+
+#: src/GridText.c:10245
+msgid "Can't open file for uploading"
+msgstr "Kan inte öppna fil för sändning"
+
+#: src/GridText.c:11404
+#, c-format
+msgid "Submitting %s"
+msgstr "Skickar %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12457
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Hängning upptäckt: TextAnchor-struktur förstörd - föreslår avbrott!"
+
+#. don't show previous state
+#: src/GridText.c:12594
+msgid "Wrap lines to fit displayed area?"
+msgstr "Ombryt rader så att de passar i visat fält?"
+
+#: src/GridText.c:12646
+msgid "Very long lines have been wrapped!"
+msgstr "Mycket långa rader har ombrutits!"
+
+#: src/GridText.c:13151
+msgid "Very long lines have been truncated!"
+msgstr "mycket långa rader har trunkerats!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "byte"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "Läste %s data"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Läste %s av %s data"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/s"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (avstannad i %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", %s kvar"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (\"z\" avbryter)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "ja"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "nej"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr "J/N/A/L"
+
+#: src/HTML.c:5912
+msgid "Description:"
+msgstr "Beskrivning:"
+
+#: src/HTML.c:5917
+msgid "(none)"
+msgstr "(ingen)"
+
+#: src/HTML.c:5921
+msgid "Filepath:"
+msgstr "Sökväg:"
+
+#: src/HTML.c:5927
+msgid "(unknown)"
+msgstr "(okänd)"
+
+#: src/HTML.c:7352
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Dokumentet innehåller endast dolda länkar. Använd \"l\"istkommandot."
+
+#: src/HTML.c:7851
+msgid "Source cache error - disk full?"
+msgstr "Källkodscachefel - disk full?"
+
+#: src/HTML.c:7864
+msgid "Source cache error - not enough memory!"
+msgstr "Källkodscachefel - minnet slut!"
+
+#: src/LYBookmark.c:167
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Denna fil är en HTML-representation av X Mosaics bokmärkesfil.\n"
+"     Föråldrade eller ogiltiga länkar kan tas bort genom att använda\n"
+"     kommandot radera bokmärke, vilket vanligtvis nås via tangenten \"R\",\n"
+"     men som kan ha ändrats av dig eller din systemadministratör."
+
+#: src/LYBookmark.c:374
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Du kan ta bort länkar med \"R\"-tangenten<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:377
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Du kan ta bort länkar med kommandot radera bokmärke, vilket vanligtvis\n"
+"     nås via tangenten \"R\", men som kan ha ändrats av dig eller din\n"
+"     systemadministratör."
+
+#: src/LYBookmark.c:381
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Denna fil kan även redigeras med ett vanligt textredigeringsprogram för\n"
+"     att ta bort föråldrade eller ogiltiga länkar, eller ändra den inbördes\n"
+"     ordningen."
+
+#: src/LYBookmark.c:384
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Obs:  om du redigerar denna fil manuellt\n"
+"      bör du inte ändra formatet på raderna,\n"
+"      eller lägga till annan HTML-kod.\n"
+"      Se till att alla bokmärkeslänkar lagras som enskilda rader."
+
+#: src/LYBookmark.c:680
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Filen kan kanske återskapas från %s under denna session"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Vill du starta \"%s\"?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Kan inte nå cgi-skript"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Gott råd"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "En utmärkt http-server för VMS är tillgänglig via"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "denna länk"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Den ger förstklassigt stöd för CGI-skript.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Avslutar via avbrott:"
+
+#: src/LYCookie.c:2477
+msgid "(from a previous session)"
+msgstr "(från en tidigare session)"
+
+#: src/LYCookie.c:2538
+msgid "Maximum Gobble Date:"
+msgstr "Maximalt ätdatum:"
+
+#: src/LYCookie.c:2577
+msgid "Internal"
+msgstr "Intern"
+
+#: src/LYCookie.c:2578
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "\"cookie_domain_flag_set\"-fel, avbryter programmet"
+
+#: src/LYCurses.c:1101
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Terminalinitiering misslyckades - okänd terminaltyp?"
+
+#: src/LYCurses.c:1559
+msgid "Terminal ="
+msgstr "Terminal ="
+
+#: src/LYCurses.c:1563
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Du måste använda en vt100-, -200-, etc. -terminal med detta program."
+
+#: src/LYCurses.c:1612
+msgid "Your Terminal type is unknown!"
+msgstr "Din terminaltyp är okänd!"
+
+#: src/LYCurses.c:1613
+msgid "Enter a terminal type:"
+msgstr "Ange en terminaltyp:"
+
+#: src/LYCurses.c:1627
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "TERMINALTYP SATT TILL"
+
+#: src/LYCurses.c:2139
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Ett fatalt fel har uppstått i %s ver. %s\n"
+
+#: src/LYCurses.c:2142
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Kontakta din systemadministratör för att bekräfta ett programfel, och om\n"
+"det bekräftas, att notifiera lynx-dev-listan. Felrapporter bör ha en\n"
+"koncis beskrivning av kommandon och/eller webbadresser (URLar) som gör att\n"
+"felet uppstår, namn och versionsnummer på operativsystemet, använd TCP/IP-\n"
+"implementation, TRACEBACK om den kan fås, och all annan relevant information.\n"
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Fel vid start av redigeringsprogram, %s"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Redigeringsprogram dödat av signal"
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "Redigeringsprogrammet gav felstatus %s"
+
+#: src/LYDownload.c:506
+msgid "Downloaded link:"
+msgstr "Hämtad länk:"
+
+#: src/LYDownload.c:511
+msgid "Suggested file name:"
+msgstr "Föreslaget filnamn:"
+
+#: src/LYDownload.c:516
+msgid "Standard download options:"
+msgstr "Fördefinierade hämtalternativ:"
+
+#: src/LYDownload.c:517
+msgid "Download options:"
+msgstr "Hämtalternativ:"
+
+#: src/LYDownload.c:533
+msgid "Save to disk"
+msgstr "Spara på disk"
+
+#: src/LYDownload.c:547
+msgid "View temporary file"
+msgstr "Visa temporär fil"
+
+#: src/LYDownload.c:554
+msgid "Save to disk disabled."
+msgstr "\"Spara på disk\" deaktiverad."
+
+#: src/LYDownload.c:558 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Lokala tillägg:"
+
+#: src/LYDownload.c:569 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Inget namn har angetts"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Du valde:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(ingen adress)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (intern)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (var intern)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (Från historik)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Du besökte (POST, bokmärkes-, meny- och listfiler ej medräknade):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Inga meddelanden ännu)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Ogiltig pekare upptäckt."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "Sekvens:"
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Pekare:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Filnamn:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Radnummer:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Minnesläcka upptäckt."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Innehåller:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Bytestorlek:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "omallokerad:"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Totalt minnesläckage denna körning:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr "Mesta allokering"
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "Byte allokerade"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr "Totalt antal malloc"
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr "Totalt antal free"
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Referenser i "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "detta dokument:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Besökta länkar:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Dolda länkar:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Referenser"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Synliga länkar"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Kan inte ta status på \"%s\"."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "Vald post är inte en fil eller en katalog! Begäran ignoreras."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Kan inte %s på grund av systemfel!"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Möjligt misslyckande i %s på grund av systemfel!"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "ta bort %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr "ändra datum på %s"
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "flytta %s till %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Det finns redan en katalog med det namnet! Begäran ignoreras."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Det finns redan en fil med det namnet! Begäran ignoreras."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Angivet filnamn används redan! Begäran ignoreras."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "Målet har annan ägare! Begäran avvisas."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Målet är inte en giltig katalog! Begäran avvisas."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Ta bort alla markerade filer och kataloger?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Ange ny plats för markerade poster: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "Sökväg för lång"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Källa och mål är samma - begäran ignoreras!"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Ange nytt namn för katalog: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Ange nytt namn för fil: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Felaktigt tecken (sökvägsavdelare) funnen! Begäran ignorerad."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Ange ny plats för katalog: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Ange ny plats för fil: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Oväntat misslyckande - kan inte hitta avslutande sökvägsavdelare"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Källa och mål är samma plats! Begäran ignorerad."
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Ända N=namn, L=plats eller P=behörighet? "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Ändra N=namn eller L=plats? "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Denna funktion är ännu ej implementerad!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Ange namn på fil att skapa: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Felaktig omdirigering \"//\" funnen! Begäran ignoreras."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Ange namn på ny katalog: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Skapa F=fil eller D=katalog? "
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Ta bort katalogen \"%s\"?"
+
+#: src/LYLocal.c:1169
+msgid "Remove directory?"
+msgstr "Ta bort katalogen?"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Ta bort fil \"%s\"?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Ta bort fil?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Ta bort symbolisk länk \"%s\"?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Ta bort symbolisk länk?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Tyvärr, kan inte ändra behörighet för icke-Unixfiler ännu."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Kan inte öppna behörighetsalternativfil"
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Ange behörighet nedan:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "Ägare:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Grupp"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Övriga:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "formulär för att ändra behörighet för"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Ogiltigt format på behörighet."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Ogiltig syntaxformat."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Varning! UU-avkodad fil lagras i katalogen du startade Lynx från."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "URL-pekare är NULL"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Kör %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Kör systemkommando. Detta kan ta en stund."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Aktuell katalog:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Aktuell markering:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "Ingenting har markerats."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "markerad post:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "markerade poster:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Ogiltigt filnamn; begäran ignorerad."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Installation i vald katalog ej tillåten."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "Vald post är inte en katalog! Begäran ignorerad."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "Ett ögonblick, ..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr "Fel vid uppbyggning av installationsflaggor"
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Källa och mål är samma: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Redan i målkatalog: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Installation färdig"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "Temporär adress eller lista skulle vara för lång."
+
+#: src/LYMail.c:523
+msgid "Sending"
+msgstr "Skickar"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Länken %s :?: %s \n"
+
+#: src/LYMail.c:1011
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "anropade \"%s\"\n"
+
+#: src/LYMail.c:1012
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "i filen \"%s\" anropade \"%s\"\n"
+
+#: src/LYMail.c:1013
+msgid "was requested but was not available."
+msgstr "efterfrågades men var inte tillgänglig."
+
+#: src/LYMail.c:1014
+msgid "Thought you might want to know."
+msgstr "Tänkte att du kanske ville veta."
+
+#: src/LYMail.c:1016
+msgid "This message was automatically generated by"
+msgstr "Detta meddelande automatgenererades av"
+
+#: src/LYMail.c:1731
+msgid "No system mailer configured"
+msgstr "E-postprogram inte konfigurerat i systemet"
+
+#: src/LYMain.c:1001
+msgid "No Winsock found, sorry."
+msgstr "Ingen Winsock hittades, ursäkta."
+
+#: src/LYMain.c:1198
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Du MÅSTE ange ett giltigt TMP- eller TEMP-område!"
+
+#: src/LYMain.c:1251 src/LYMainLoop.c:5051
+msgid "No such directory"
+msgstr "Katalogen finns ej"
+
+#: src/LYMain.c:1436
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Konfigurationsfilen \"%s\" ej tillgänglig.\n"
+"\n"
+
+#: src/LYMain.c:1446
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynxteckenuppsättningar ej deklarerade.\n"
+"\n"
+
+#: src/LYMain.c:1475
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynxredigeringskarta ej deklarerad.\n"
+"\n"
+
+#: src/LYMain.c:1551
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynxfilen \"%s\" ej tillgänglig.\n"
+"\n"
+
+#: src/LYMain.c:1626
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "Ignorerade %d tecken från standard in.\n"
+
+#: src/LYMain.c:1628
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Använd \"-stdin\" eller \"-\" för att beskriva hur indata från rör skall hanteras.\n"
+
+#: src/LYMain.c:1776
+msgid "Warning:"
+msgstr "Varning:"
+
+#: src/LYMain.c:2341
+msgid "persistent cookies state will be changed in next session only."
+msgstr "varaktiga kakinställningar ändras endast i nästa session."
+
+#: src/LYMain.c:2586 src/LYMain.c:2631
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: ignorerar okänd teckenuppsättning %s\n"
+
+#: src/LYMain.c:3150
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s version %s (%s)"
+
+#: src/LYMain.c:3188
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Byggd %s %s %s\n"
+
+#: src/LYMain.c:3210
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "Upphovsrätten ligger hos Lynx-utvecklargruppen,"
+
+#: src/LYMain.c:3211
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "Kansas Universitet, CERN, och andra bidragslämnare."
+
+#: src/LYMain.c:3212
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Distribuerad enligt GNU General Public License (version 2)."
+
+#: src/LYMain.c:3213
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Se http://lynx.isc.org/ och direkthjälpen för ytterligare information."
+
+#: src/LYMain.c:4032
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "ANVÄNDNING: %s [flaggor] [fil]\n"
+
+#: src/LYMain.c:4033
+#, c-format
+msgid "Options are:\n"
+msgstr "Flaggorna är:\n"
+
+#: src/LYMain.c:4332
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Okänd flagga: %s\n"
+
+#: src/LYMainLoop.c:571
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Internt fel: Ogiltig muslänk %d!"
+
+#: src/LYMainLoop.c:691 src/LYMainLoop.c:5073
+msgid "A URL specified by the user"
+msgstr "En adress angiven av användaren"
+
+#: src/LYMainLoop.c:1150
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Kodningen multiport/form-data stöds inte ännu! Kan inte skicka."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3082
+msgid "Help Screen"
+msgstr "Hjälpskärm"
+
+#: src/LYMainLoop.c:3203
+msgid "System Index"
+msgstr "Systemindex"
+
+#: src/LYMainLoop.c:3562 src/LYMainLoop.c:5297
+msgid "Entry into main screen"
+msgstr "Ingång till huvudskärm"
+
+#: src/LYMainLoop.c:3820
+msgid "No next document present"
+msgstr "Det finns inget nästa dokument"
+
+#: src/LYMainLoop.c:4116
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "teckenuppsättning för detta dokumentet explicit deklarerat, ursäkta..."
+
+#: src/LYMainLoop.c:5029
+msgid "cd to:"
+msgstr "byt katalog till:"
+
+#: src/LYMainLoop.c:5054
+msgid "A component of path is not a directory"
+msgstr "En del av sökvägen är inte en katalog"
+
+#: src/LYMainLoop.c:5057
+msgid "failed to change directory"
+msgstr "lyckades inte byta katalog"
+
+#: src/LYMainLoop.c:6229
+msgid "Reparsing document under current settings..."
+msgstr "Tolkar om dokumentet med aktuella inställningar..."
+
+#: src/LYMainLoop.c:6521
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Fatalt fel - kunde inte öppna utdatafil %s\n"
+
+# Kollas!
+#: src/LYMainLoop.c:6858
+msgid "TABLE center enable."
+msgstr "Tabellcentrering aktiverad."
+
+# Kollas!
+#: src/LYMainLoop.c:6861
+msgid "TABLE center disable."
+msgstr "Tabellcentrering inaktiverad."
+
+#: src/LYMainLoop.c:6938
+msgid "Current URL is empty."
+msgstr "Nuvarande adress är tom."
+
+#: src/LYMainLoop.c:6940 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "Misslyckades kopiera till urklipp."
+
+#: src/LYMainLoop.c:6942
+msgid "Document URL put to clipboard."
+msgstr "Dokumentadress lagd i urklipp."
+
+#: src/LYMainLoop.c:6944
+msgid "Link URL put to clipboard."
+msgstr "Länkadress lagd i urklipp."
+
+#: src/LYMainLoop.c:6971
+msgid "No URL in the clipboard."
+msgstr "Ingen adress i urklipp."
+
+#: src/LYMainLoop.c:7642 src/LYMainLoop.c:7812
+msgid "-index-"
+msgstr "-index-"
+
+#: src/LYMainLoop.c:7752
+msgid "lynx: Can't access startfile"
+msgstr "lynx: Kan inte komma åt startfil"
+
+#: src/LYMainLoop.c:7764
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: Startfilen hittades inte eller är varken text/html eller text/plain"
+
+#: src/LYMainLoop.c:7765
+msgid "      Exiting..."
+msgstr "      Avslutar..."
+
+#: src/LYMainLoop.c:7806
+msgid "-more-"
+msgstr "-mer-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Du kommer att skicka till:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Ange din e-postadress för avsändarfältet\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Ange eller redigera ärenderaden\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Ange eller redigera organisationsfältet\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Skriv ditt inlägg nedan."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Inlägget har ingen ursprunglig text!"
+
+#: src/LYOptions.c:768
+msgid "review/edit B)ookmarks files"
+msgstr "se/redigera B)okmärkesfiler"
+
+#: src/LYOptions.c:770
+msgid "B)ookmark file: "
+msgstr "B)okmärkesfil: "
+
+#: src/LYOptions.c:2131 src/LYOptions.c:2138
+msgid "ON"
+msgstr "PÃ…"
+
+#. verbose_img variable
+#: src/LYOptions.c:2132 src/LYOptions.c:2137 src/LYOptions.c:2289 src/LYOptions.c:2300
+msgid "OFF"
+msgstr "AV"
+
+#: src/LYOptions.c:2133
+msgid "NEVER"
+msgstr "ALDRIG"
+
+#: src/LYOptions.c:2134
+msgid "ALWAYS"
+msgstr "ALLTID"
+
+#: src/LYOptions.c:2150 src/LYOptions.c:2281
+msgid "ignore"
+msgstr "ignorera"
+
+#: src/LYOptions.c:2151
+msgid "ask user"
+msgstr "fråga användaren"
+
+#: src/LYOptions.c:2152
+msgid "accept all"
+msgstr "ta emot alla"
+
+#: src/LYOptions.c:2164
+msgid "ALWAYS OFF"
+msgstr "ALLTID AV"
+
+#: src/LYOptions.c:2165
+msgid "FOR LOCAL FILES ONLY"
+msgstr "ENDAST FÖR LOKALA FILER"
+
+#: src/LYOptions.c:2167
+msgid "ALWAYS ON"
+msgstr "ALLTID PÃ…"
+
+# Numeriskt tangentbord
+#: src/LYOptions.c:2179
+msgid "Numbers act as arrows"
+msgstr "Siffror som pilar"
+
+#: src/LYOptions.c:2181
+msgid "Links are numbered"
+msgstr "Numrerade länkar"
+
+#: src/LYOptions.c:2184
+msgid "Links and form fields are numbered"
+msgstr "Numrerade länkar och formulärfält"
+
+#: src/LYOptions.c:2187
+msgid "Form fields are numbered"
+msgstr "Numrerade formulärfält"
+
+#: src/LYOptions.c:2201
+msgid "Case insensitive"
+msgstr "Skilj inte VERSALER och gemener"
+
+#: src/LYOptions.c:2202
+msgid "Case sensitive"
+msgstr "Skilj VERSALER och gemener"
+
+#: src/LYOptions.c:2226
+msgid "prompt normally"
+msgstr "fråga som vanligt"
+
+#: src/LYOptions.c:2227
+msgid "force yes-response"
+msgstr "svara alltid ja"
+
+#: src/LYOptions.c:2228
+msgid "force no-response"
+msgstr "svara alltid nej"
+
+#: src/LYOptions.c:2246
+msgid "Novice"
+msgstr "Nybörjare"
+
+#: src/LYOptions.c:2247
+msgid "Intermediate"
+msgstr "Amatör"
+
+#: src/LYOptions.c:2248
+msgid "Advanced"
+msgstr "Avancerad"
+
+#: src/LYOptions.c:2257
+msgid "By First Visit"
+msgstr "Efter första besök"
+
+#: src/LYOptions.c:2259
+msgid "By First Visit Reversed"
+msgstr "Efter första användning, omvänt"
+
+#: src/LYOptions.c:2260
+msgid "As Visit Tree"
+msgstr "Som besöksträd"
+
+#: src/LYOptions.c:2261
+msgid "By Last Visit"
+msgstr "Efter senaste besök"
+
+#: src/LYOptions.c:2263
+msgid "By Last Visit Reversed"
+msgstr "Efter senaste besök, omvänt"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2274
+msgid "relaxed (TagSoup mode)"
+msgstr "avslappnad (TagSoup-läge)"
+
+#: src/LYOptions.c:2275
+msgid "strict (SortaSGML mode)"
+msgstr "strikt (SortaSGML-läge)"
+
+#: src/LYOptions.c:2282
+msgid "as labels"
+msgstr "som etiketter"
+
+#: src/LYOptions.c:2283
+msgid "as links"
+msgstr "som länkar"
+
+#: src/LYOptions.c:2290
+msgid "show filename"
+msgstr "visa filnamn"
+
+#: src/LYOptions.c:2301
+msgid "STANDARD"
+msgstr "NORMAL"
+
+#: src/LYOptions.c:2302
+msgid "ADVANCED"
+msgstr "AVANCERAD"
+
+#: src/LYOptions.c:2333
+msgid "Directories first"
+msgstr "Kataloger först"
+
+#: src/LYOptions.c:2334
+msgid "Files first"
+msgstr "Filer först"
+
+#: src/LYOptions.c:2335
+msgid "Mixed style"
+msgstr "Blandad visning"
+
+#: src/LYOptions.c:2343 src/LYOptions.c:2363
+msgid "By Name"
+msgstr "Efter namn"
+
+#: src/LYOptions.c:2344 src/LYOptions.c:2364
+msgid "By Type"
+msgstr "Efter typ"
+
+#: src/LYOptions.c:2345 src/LYOptions.c:2365
+msgid "By Size"
+msgstr "Efter storlek"
+
+#: src/LYOptions.c:2346 src/LYOptions.c:2366
+msgid "By Date"
+msgstr "Efter datum"
+
+#: src/LYOptions.c:2347
+msgid "By Mode"
+msgstr "Efter läge"
+
+#: src/LYOptions.c:2349
+msgid "By User"
+msgstr "Efter användare"
+
+#: src/LYOptions.c:2350
+msgid "By Group"
+msgstr "Efter grupp"
+
+#: src/LYOptions.c:2375
+msgid "Do not show rate"
+msgstr "Visa inte hastighe"
+
+#: src/LYOptions.c:2376 src/LYOptions.c:2377
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "Visa hastighet som %s/s"
+
+#: src/LYOptions.c:2379 src/LYOptions.c:2380
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "Visa %s/s, tid kvar"
+
+#: src/LYOptions.c:2383
+msgid "Show progressbar"
+msgstr "Visa förloppsindikator"
+
+#: src/LYOptions.c:2395
+msgid "Accept lynx's internal types"
+msgstr "Godta lynx interna typer"
+
+#: src/LYOptions.c:2396
+msgid "Also accept lynx.cfg's types"
+msgstr "Godta även typer från lynx.cfg"
+
+#: src/LYOptions.c:2397
+msgid "Also accept user's types"
+msgstr "Godta även användarens typer"
+
+#: src/LYOptions.c:2398
+msgid "Also accept system's types"
+msgstr "Godta även systemets typer"
+
+#: src/LYOptions.c:2399
+msgid "Accept all types"
+msgstr "Godta alla typer"
+
+#: src/LYOptions.c:2408
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2409
+msgid "deflate"
+msgstr "deflate"
+
+#: src/LYOptions.c:2412
+msgid "compress"
+msgstr "compress"
+
+#: src/LYOptions.c:2415
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2417
+msgid "All"
+msgstr "Alla"
+
+#: src/LYOptions.c:2685 src/LYOptions.c:2709
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Använd %s för att nå alternativmenyn!"
+
+#: src/LYOptions.c:3481
+msgid "(options marked with (!) will not be saved)"
+msgstr "(inställningar markerade med (!) kommer ej att sparas)"
+
+#: src/LYOptions.c:3489
+msgid "General Preferences"
+msgstr "Allmänna inställningar"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3493
+msgid "User mode"
+msgstr "Användarläge"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3499
+msgid "Editor"
+msgstr "Redigeringsprogram"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3504
+msgid "Type of Search"
+msgstr "Söktyp"
+
+#: src/LYOptions.c:3509
+msgid "Security and Privacy"
+msgstr "Säkerhet och personlig integritet"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3513
+msgid "Cookies"
+msgstr "Kakor"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3527
+msgid "Invalid-Cookie Prompting"
+msgstr "Fråga för ogiltiga kakor"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3534
+msgid "SSL Prompting"
+msgstr "Fråga för SSL"
+
+#: src/LYOptions.c:3540
+msgid "Keyboard Input"
+msgstr "Tangentbordsindata"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3544
+msgid "Keypad mode"
+msgstr "Numeriskt tangentbord"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3550
+msgid "Emacs keys"
+msgstr "Emacstangenter"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3556
+msgid "VI keys"
+msgstr "VI-tangenter"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3563
+msgid "Line edit style"
+msgstr "Radredigeringsstil"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3575
+msgid "Keyboard layout"
+msgstr "Tangentbordsmall"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3589
+msgid "Display and Character Set"
+msgstr "Visning och teckenuppsättning"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3594
+msgid "Use locale-based character set"
+msgstr "Lokalbaserad teckenuppsättning"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3603
+msgid "Display character set"
+msgstr "Teckenuppsättning för visning"
+
+#: src/LYOptions.c:3634
+msgid "Assumed document character set"
+msgstr "Förvald dokumentteckenuppsättning"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3654
+msgid "CJK mode"
+msgstr "CJK-läge"
+
+#: src/LYOptions.c:3656
+msgid "Raw 8-bit"
+msgstr "RÃ¥ 8-bitars"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3664
+msgid "X Display"
+msgstr "X-display"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3670
+msgid "Document Appearance"
+msgstr "Dokumentutseende"
+
+#: src/LYOptions.c:3676
+msgid "Show color"
+msgstr "Visa färg"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3700
+msgid "Show cursor"
+msgstr "Visa markör"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3706
+msgid "Underline links"
+msgstr "Stryk under länkar"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3713
+msgid "Show scrollbar"
+msgstr "Visa rullningslist"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3720
+msgid "Popups for select fields"
+msgstr "Popup för valfält"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3726
+msgid "HTML error recovery"
+msgstr "HTML-felåterhämtning"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3732
+msgid "Show images"
+msgstr "Visa bilder"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3746
+msgid "Verbose images"
+msgstr "Pratsamma bilder"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3754
+msgid "Headers Transferred to Remote Servers"
+msgstr "Frågehuvud överfört till fjärrservrar"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3758
+msgid "Personal mail address"
+msgstr "Egen e-postadress"
+
+#: src/LYOptions.c:3764
+msgid "Password for anonymous ftp"
+msgstr "Lösenord för anonym ftp"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3770
+msgid "Preferred media type"
+msgstr "Önskad mediatyp"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3776
+msgid "Preferred encoding"
+msgstr "Önskade kodningsform"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3782
+msgid "Preferred document character set"
+msgstr "Önskad dokumentteckenuppsättning"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3787
+msgid "Preferred document language"
+msgstr "Önskade dokumentspråk"
+
+#: src/LYOptions.c:3793
+msgid "User-Agent header"
+msgstr "Webbläsaridentifiering"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3801
+msgid "Listing and Accessing Files"
+msgstr "Visning av och åtkomst till filer"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3806
+msgid "Use Passive FTP"
+msgstr "Använd passiv ftp"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3812
+msgid "FTP sort criteria"
+msgstr "Sortering för ftp-kataloger"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3820
+msgid "Local directory sort criteria"
+msgstr "Sortering för lokala kataloger"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3826
+msgid "Local directory sort order"
+msgstr "Sortering för lokala kataloger"
+
+#: src/LYOptions.c:3835
+msgid "Show dot files"
+msgstr "Visa punktfiler"
+
+#: src/LYOptions.c:3843
+msgid "Execution links"
+msgstr "Exekveringslänkar"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3863
+msgid "Show transfer rate"
+msgstr "Visa överföringshastighet"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3883
+msgid "Special Files and Screens"
+msgstr "Speciella filer och skärmar"
+
+#: src/LYOptions.c:3888
+msgid "Multi-bookmarks"
+msgstr "Multibokmärken"
+
+#: src/LYOptions.c:3896
+msgid "Review/edit Bookmarks files"
+msgstr "Se/ändra bokmärkesfiler"
+
+#: src/LYOptions.c:3898
+msgid "Goto multi-bookmark menu"
+msgstr "Gå till multibokmärkesmenyn"
+
+#: src/LYOptions.c:3900
+msgid "Bookmarks file"
+msgstr "Bokmärkesfil"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3907
+msgid "Auto Session"
+msgstr "Automatiskt arbetspass"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3913
+msgid "Session file"
+msgstr "Arbetspassfil"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3919
+msgid "Visited Pages"
+msgstr "Besökta sidor"
+
+#: src/LYOptions.c:3924
+msgid "View the file "
+msgstr "Visa filen "
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Utskriftsjobb färdigt.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Dokument:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Antal länkar:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Antal sidor:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "sidor"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "sida"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(ungefär)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Vissa utskriftsfunktioner har deaktiverats!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Fördefinierade utskriftsalternativ:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Utskriftsalternativ"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Spara som lokal fil"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "\"Spara på disk\" deaktiverad"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Sänd filer per e-post"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "Skriv ut på skärmen"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "Skriv ut på en skrivare ansluten till din vt100-terminal"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Syntaxfel vid tolkning av färg (COLOR) i konfigurationsfil:\n"
+"Raden måste vara på formen:\n"
+"COLOR:HELTAL:FÖRGRUND:BAKGRUND\n"
+"\n"
+"FÖRGRUND och BAKGRUND måste vara en av:\n"
+"specialsträngarna \"nocolor\" eller \"default\", eller\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Felaktig rad:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "tangentomdefiniering av %s till %s för %s misslyckades\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "tangentomdefiniering av %s till %s misslyckades\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "ogiltig radredigeringsval %s för tangent %s, väljer alla\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "inställning av radredigeringsdefinition för tangent %s (0x%x) till 0x%x för %s misslyckades\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "inställning av radredigeringsdefinition för tangent %s (0x%x) för %s misslyckades\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: kan inte börja, CERN-regelfilen %s ej tillgänglig\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(inget namn)"
+
+#: src/LYReadCFG.c:1882
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Mer än %d staplade lynx.cfg-inkluderingar -- kanske en slinga?!?\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Sista försökta inkludering var \"%s\",\n"
+
+#: src/LYReadCFG.c:1885
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "inkluderad från \"%s\".\n"
+
+#: src/LYReadCFG.c:2289 src/LYReadCFG.c:2302 src/LYReadCFG.c:2360
+msgid "The following is read from your lynx.cfg file."
+msgstr "Följande läses från din lynx.cfg-fil."
+
+#: src/LYReadCFG.c:2290 src/LYReadCFG.c:2303
+msgid "Please read the distribution"
+msgstr "Se distributionens"
+
+#: src/LYReadCFG.c:2296 src/LYReadCFG.c:2306
+msgid "for more comments."
+msgstr "för ytterligare kommentarer."
+
+#: src/LYReadCFG.c:2342
+msgid "RELOAD THE CHANGES"
+msgstr "HÄMTA OM ÄNDRINGARNA"
+
+#: src/LYReadCFG.c:2350
+msgid "Your primary configuration"
+msgstr "Din primära konfiguration"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "Visad katalog"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "Namn:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "Adress:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "Markerade kataloger"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "Markerade filer"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "Markerade symboliska länkar"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "Markerade poster"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "Fullt namn:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr "Kan inte följa länk"
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr "Pekar på fil:"
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "Namn på ägare:"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "Gruppnamn:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Filstorlek:"
+
+#: src/LYShowInfo.c:227
+msgid "(bytes)"
+msgstr "(byte)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "Skapad den:"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "Senast ändrad:"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "Senast åtkommen:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "Åtkomstbehörighet"
+
+#: src/LYShowInfo.c:279
+msgid "Group:"
+msgstr "Grupp:"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr "Övriga:"
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "Visad fil"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Länknamn:"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "Teckenuppsättning:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr "(antogs)"
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "Server:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "Datum:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "Senaste ändring:"
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr "Utgår:"
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr "Cachekontroll:"
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "Datalängd:"
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr "Längd:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "Språk:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr "\"POST\"-data:"
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr "\"POST\"-datatyp:"
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "Ägare:"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "storlek:"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "rader"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr "formulärläge"
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "källkod"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "normal"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ", säker"
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ", via intern länk"
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ", ingen cache"
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ", ISMAP-skript"
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", bokmärkesfil"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "läge:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "Markerad länk"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "Metod:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "Kodningstyp:"
+
+#: src/LYShowInfo.c:436
+msgid "Action:"
+msgstr "Åtgärd:"
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(Formulärfält)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "Ingen länk på aktuell sida"
+
+#: src/LYShowInfo.c:455
+msgid "Server Headers:"
+msgstr "Serverhuvuden:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Syntaxfel vid tolkning av stil i lss-fil:\n"
+"[%s]\n"
+"Raden måste vara på formen:\n"
+"OBJEKT:MONO:FÄRG (t.ex em:bold:brightblue:white)\n"
+"där OBJEKT är en av EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+
+#: src/LYTraversal.c:111
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "här finns en lista över historikstacken så att du kan bygga om"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "FEL! - insändningskommandot är felkonfigurerat"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Felaktig omdirigering \"../\" hittad! Begäran ignorerad."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Felaktigt tecken \"/\" hittad! Begäran ignorerad."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Ogiltig omdirigering med \"~\" hittad! Begäran ignorerad."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Kan inte skicka fil."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Skicka till:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Insändningsalternativ:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr "Adress till hämtat dokument lagt i urklipp."
+
+#: src/LYUtils.c:2614
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Oväntat åtkomstprotokoll för denna adresstyp."
+
+#: src/LYUtils.c:3422
+msgid "Too many tempfiles"
+msgstr "För många temporärfiler"
+
+#: src/LYUtils.c:3722
+msgid "unknown restriction"
+msgstr "okänd begränsning"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Inga begränsningar satta.\n"
+
+#: src/LYUtils.c:3756
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Satta begränsningar:\n"
+
+#: src/LYUtils.c:5134
+msgid "Cannot find HOME directory"
+msgstr "Hittar inte hemkatalogen (HOME)"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Vanligtvis avstängd. Se ENABLE_LYNXRC i lynx.cfg\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies låter användaren tala om för Lynx att automatiskt\n"
+"acceptera alla kakor. Förvalet är \"FALSE\", och visar en fråga för\n"
+"varje kaka. Sätt accept_all_cookies till \"TRUE\" för att acceptera\n"
+"alla kakor.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"anonftp_password låter användaren ange den personliga e-postadress\n"
+"Lynx skall använda som lösenord för anonym ftp. Om inget värde anges\n"
+"kommer Lynx använda den personliga e-postadressen. Sätt anonftp_password\n"
+"till ett annat värde om du vill välja.\n"
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file anger namn och plats för standardbokmärkesfilen, i vilken\n"
+"användaren kan klistra in länkar för att lätt komma åt dem senare.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Om case_sensitive_searching är \"on\" när användaren startar en sökning\n"
+"med \"s\" eller \"/\" kommer sökningen som genomförs att göra skillnad på\n"
+"gemener och versaler. Förvalet är normalt sett av (\"off\").\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"Inställningen för character_set anger hur åttabitarstecken representeras\n"
+"på din terminal. Om åttabitarstecken inte visas korrekt på din skärm kan\n"
+"du försöka att ändra till en annan åttabitarsteckenuppsättning, eller\n"
+"använda sjubitarstolkningarna.\n"
+"Giltiga teckenuppsättningar är:\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains och cookie_reject_domains är kommaavdelade\n"
+"listor över domäner från vilka Lynx automatisk skall acceptera eller\n"
+"avvisa kakor. Om en domän anges i båda alternativet kommer avvisning\n"
+"att gå före. Flaggan accept_all_cookies går före alla inställningar\n"
+"som görs här.\n"
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file anger filen som varaktiga kakor skall läsas från.\n"
+"Förval är ~/"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains och\n"
+"cookie_query_invalid_domains är kommaavdelade listor över domäner som\n"
+"skall underkastas olika nivåer av giltighetskontroll. Om en domän sätts\n"
+"till strikt kontroll kommer strikt tolkning av RFC2109 att gälla.\n"
+"En domän med lös kontroll gör det möjligt att sätta kakor med felaktiga\n"
+"sökväg- eller domänattribut. Alla domäner får som förval frågor till\n"
+"användaren för felaktiga sökvägar eller domäner.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order anger kataloglistesortering i DIRED_SUPPORT (om det är\n"
+"implementerat). Förvalet är \"ORDER_BY_NAME\"\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles anger kataloglistestil i DIRED_SUPPORT (om det är\n"
+"implementerat). Förvalet är \"MIXED_STYLE\", vilket sorterar filer\n"
+"och kataloger tillsammanns. \"FILES_FIRST\" listar filer först, och\n"
+"\"DIRECTORIES_FIRST\" listar kataloger först.\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Om emacs_keys sätts till \"on\" kommer EMACS-förflyttningstangeter att\n"
+"aktiveras:\n"
+"  ^N = ned      ^P = upp\n"
+"  ^B = vänster  ^F = höger\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor anger vilket redigeringsprogram som skall aktiveras när lokala\n"
+"filer redigeras, eller e-post sänds. Om inget program anges deaktiveras\n"
+"filredigering, såvida det inte aktiveras från kommandoraden, och den inbyggda\n"
+"radredigeraren används för e-post.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method anger hur fillistor, såsom ftp-kataloger, skall\n"
+"sorteras. Alternativen är:\n"
+"   BY_FILENAME -- sorterar efter filnamn\n"
+"   BY_TYPE     -- sorterar efter filtyp\n"
+"   BY_SIZE     -- sorterar efter filstorlek\n"
+"   BY_DATE     -- sorterar efter fildatum\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode ange tangentbordsfunktioner som används för att skriva\n"
+"in strängar i frågor och formulär. Om lineedit_mode sätts till\n"
+"\"Default Binding\" kommer följande kontrolltecken användas för att\n"
+"flytta och ta bort:\n"
+"\n"
+"              Bakåt Framåt      Enter = Bekräfta indata\n"
+" Flytta tecken: <-    ->        ^G    = Avbryt inmatning\n"
+"    Flytta ord: ^P    ^N        ^U    = Radera rad\n"
+" Radera tecken: ^H    ^R        ^A    = Radbörjan\n"
+"    Radera ord: ^B    ^F        ^E    = Radslut\n"
+"\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Följande gör det möjligt för dig att definiera underbokmärkesfiler och\n"
+"tillhörande beskrivningar. Formatet är:\n"
+"multi_bookmark<stor bokstav>=<filnamn>,<beskrivning>\n"
+"Upp till 26 bokmärkesfiler (de stora bokstäverna A-Z) tillåts.\n"
+"Vi börjar med \"multi_bookmarkB\" eftersom \"A\" är förvalet (se ovan).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address anger din personliga e-postaderss. Adressen\n"
+"sänds under HTTP-filöverföringar för auktoriserings- och\n"
+"loggningsändamål, samt för att sända kommentarer per e-post\n"
+"Om du inte vill att denna information skall sändas, sätt NO_FROM_HEADER\n"
+"till TRUE i lynx.cfg, eller använd kommandoradsflaggan -nofrom. Du kan\n"
+"även lämna detta fält blankt, men då inkluderas det inte i kommentarer\n"
+"du sänder.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset anger de teckenuppsättningar Lynx kommer att ange att\n"
+"du önskar ta emot i frågor till http-serverar i MIME-notation (t.ex\n"
+"ISO-8859-2, ISO-8859-5). Detta sänds i Accept-Charset-huvudet. Värdet\n"
+"bör inte innehålla ISO-8859-1 eller US-ASCII eftersom de värdena alltid\n"
+"antas som förval. Kan vara en kommaseparerad lista.\n"
+"Om en fil i den teckenuppsättningen finns att tillgå kommer servern\n"
+"Om inget Accept-Charset sänds är förvalet att alla teckenuppsättningar\n"
+"är acceptabla. Om en Accept-Charset är tillgänglig, och om servern inte\n"
+"kan sända ett svar som är acceptabelt enligt Accept-Charset-huvudet BÖR\n"
+"servern sända ett felmeddelande, även om det är tillåtet att sända även\n"
+"ett icke-acceptabelt svar.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language anger de språk som Lynx kommer att ange att du önskar\n"
+"ta emot i frågor till webbservrar i MIME-notation (t.ex en,fr, kan vara\n"
+"en kommaseparerad lista i minskande prioriteringsordning).\n"
+"Om en fil i det språket finns att tillgå kommer servern sända den.\n"
+"Annars kommer servern sända filen i sitt standardspråk.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Om run_all_execution_links är satt till \"on\" kommer alla lokala\n"
+"programkörningslänkar att köras när de väljs.\n"
+"\n"
+"VARNING - Detta kan vara MYCKET farligt. Eftersom du kan visa information\n"
+"          som skrivits av okända och otillförlitliga källor är det möjligt\n"
+"          att trojanska hästlänkar kan skrivas. Trojanska hästlänkar kan\n"
+"          skrivas så att de raderar filer eller komprometterar säkerheten.\n"
+"          Detta bör endast aktiveras (\"on\") om du visar information från\n"
+"          tillförlitliga källor.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Om run_all_execution_links_on_local_files är satt till \"on\" kommer\n"
+"alla lokala programkörningslänkar i LOKALA filer att köras när de väljs.\n"
+"Detta skiljer sig från run_all_execution_links i det att endast filer\n"
+"som ligger på det lokala systemet har rättighet att innehålla\n"
+"programkörningslänkar.\n"
+"\n"
+"VARNING - Detta kan vara farligt. Eftersom du kan visa information som\n"
+"          skrivits av okända och otillförlitliga källor är det möjligt att\n"
+"          trojanska hästlänkar kan skrivas. Trojanska hästlänkar kan\n"
+"          skrivas å att de raderar filer eller komprometterar säkerheten.\n"
+"          Detta bör endast aktiveras (\"on\") om du visar information från\n"
+"          tillförlitliga källor.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups anger huruvida OPTION i ett SELECT-block som saknar\n"
+"MULTIPLE-attribut skall visas som en vertikal lista med radioknappar\n"
+"eller via en popupmuni. Observera att om MULTIPLE-attributet finns i\n"
+"SELECT-märket kommer Lynx alltid skapa en vertikal lista med kryssrutor\n"
+"för varje OPTION. Värdet \"on\" skapar som förval popupmenyer, medan\n"
+"värdet \"off\" väljer radioknappar. Förvalet kan gås förbi via\n"
+"kommandoradsflaggan -popup.\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color anger hur färger ställs in vid start. Värdet \"never\" tvingar\n"
+"färg att stängas av (terminalen behandlas som vore den monokrom) vid\n"
+"start, även om terminalen verkar vara kapabel till färg. Värdet \"always\"\n"
+"tvingar färg att slås på även om terminalen verkar vara monokrom, om det\n"
+"stöds av det bibliotek som användes för att bygga lynx. Värdet \"default\"\n"
+"gör att en monokrom terminal antas såvida inte färgstöd anges vid start\n"
+"baserat på terminaltyp, eller via kommandoradsflaggan -color, eller om\n"
+"miljövariabeln COLORTERM är satt. Detta beteende används alltid för anonyma\n"
+"konton, eller om \"option_save\"-begränsningen är satt.\n"
+"Det sparade värdet kan förbigås med kommandoradsflaggorna -color och\n"
+"-nocolor.\n"
+"Läget som sätts vid start kan ändras via inställningen \"visa färg\" i\n"
+"alternativmenyn. Om alternativen sparas kommer inställningarna \"on\" och\n"
+"\"off\" att tolkas som \"default\".\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor anger om markören skall \"gömmas\" till höger (och nederst,\n"
+"om möjligt) på skärmen, eller om den skall ställas till vänster om\n"
+"aktuell länk i dokument, eller aktuellt alternativ i popupfönster.\n"
+"Att ställa markören till vänster om den aktuella länken eller alternativet\n"
+"förenklar för tal- och braillegränssnitt, och om terminalen inte gör\n"
+"skillnad på den aktuella länken med ljus- eller färgmarkering. Värdet\n"
+"\"on\" placerar markören till vänster som förval, medan \"off\" \"gömmer\"\n"
+"markören. Förvalet kan gås förbi via kommandoradsflaggan -show_cursor.\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles anger att kataloglistan skall inkludera \"dolda\"\n"
+"(punkt-)filer/kataloger. Om satt till \"on\" kommer detta endast\n"
+"att läsas om det aktiverats via userdefs.h och/eller lynx.cfg, och\n"
+"inte begränsat via en kommandoradsflagga. Om visning av dolda\n"
+"filer är deaktiverat kommer skapandet av sådana filer via Lynx\n"
+"också att deaktiveras.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Om sub_bookmarks inte är avstängt (\"off\"), och multipla bokmärken\n"
+"har angetts (se nedan) kommer alla bokmärkesfunktioner först att be\n"
+"användaren ange en aktiv underbokmärkesfil. Om en standardbokmärkesfil\n"
+"har definierats (se bookmark_file ovan), kommer den att användas som\n"
+"förval. När detta alternativ är satt till \"advanced\", och användarläget\n"
+"är avancerat, kommer kommandot visa bokmärke att visa en statusradsfråga\n"
+"istället för den meny som visas i användarlägets nybörjar- och\n"
+"mellannivåer. Om detta alternativ sätts till \"standard\" visas menyn\n"
+"oavsett användarläge.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode anger användarens nivå av kunskap om Lynx. Förvalet\n"
+"\"NOVICE\" (nybörjare) visar två extra rader med hjälp nederst på\n"
+"skärmen för att hjälpa användaren lära de grundläggande kommandona\n"
+"i Lynx. Sätt user_mode till \"INTERMEDIATE\" (mellannivå) för att\n"
+"stänga av extrainformationen. Använd \"ADVANCED\" för att se adressen\n"
+"för den markerade länken nederst på skärmen.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Om verbose_images är \"on\" skriver lynx namnet på bildens källfil\n"
+"istället för [INLINE], [LINK] eller [IMAGE]\n"
+"Se även VERBOSE_IMAGES i lynx.cfg\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Om vi_keys sätts till \"on\" kommer VI-förflyttningstangeter att aktiveras:\n"
+"  j = ned      k = upp\n"
+"  h = vänster  l = höger\n"
+"Dessa tangenter gäller bara som gemener.\n"
+"Versala \"H\", \"J\" och \"K\" aktiverar hjälp, hoppgenvägar respektiva\n"
+"tangentbordsinställningarna.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"Inställningen visited_links anger hur Lynx organiserar informationen\n"
+"på sidan Använda länkar.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Om keypad_mode sätts till \"NUMBERS_AS_ARROWS\" fungerar siffrorna på\n"
+"ditt numeriska tangentbord som piltangeter när NumLock är aktivt:\n"
+"            8 = Upppil\n"
+"  4 = Vänsterpil   6 = Högerpil\n"
+"            2 = Nedpil\n"
+"och motsvarande siffertangenter på tangentbordet fungerar som\n"
+"piltangetner, oavsett om NumLock är aktivt eller inte.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Om keypad_mode sätts till \"LINKS_ARE_NUMBERED\" kommer siffror\n"
+"att visas vid varje länk, och siffror används för att välja länk.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Om keypad_mode sätts till \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" kommer\n"
+"siffror att visas vid varje länk och synligt formulärindatafält.\n"
+"Siffror används för att välja länkar, eller för att flytta \"aktuell\n"
+"länk\" till ett formulärindatafält eller -knapp. Dessutom kommer\n"
+"alternativ i popupmenyer att numreras så att användaren kan skriva in\n"
+"ett alternativnummer för att välja ett alternativ i popupmenyn, även om\n"
+"alternativet inte är synligt på skärmen. Referenslistor och utdata från\n"
+"listkommandot kommer även de att numrera formulärindatafält.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"OBS: Vissa dokument med fixerat format kan se trasiga ut när\n"
+"\"LINKS_ARE_NUMBERED\" eller \"LINKS_AND_FORM_FILES_ARE_NUMBERED\" är\n"
+"aktiva.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"Standardanvändarinställningsfil för Lynx\n"
+"\n"
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"Filen innehåller inställningar som lagrats från Lynx inställningsskärm\n"
+"(vanligtvis med knappen \"o\"). För att spara inställningar därifrån måste\n"
+"du markera kryssrutan:\n"
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+"Du måste sedan spara inställningarna med hjälp av länken på raden\n"
+"ovanför kryssrutan:\n"
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"Du kan även använda kommandoradsflaggan \"-forms_options\", vilken visar\n"
+"den förenklade inställningsmenyn. Därifrån sparar du inställningarna med\n"
+"knappen \">\".\n"
+"\n"
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"Denna fil innehåller inställningar lagrade från Lynx inställningsskärm\n"
+"(normalt med \">\"-knappen).\n"
+"\n"
+
+#: src/LYrcFile.c:910
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Vanligtvis behöver du inte redigera denna fil manuellt, eftersom\n"
+"inställningarna kan nås från alternativmenyn, och nästa gång alternativen\n"
+"lagras från alternativmenyn kommer denna fil helt att skrivas över.\n"
+"Du har varnats...\n"
+"\n"
+"Om du letar efter den generella konfigurationsfilen heter den normalt\n"
+"\"lynx.cfg\". Den har ett annat innehåll och ett annat format.\n"
+"Det är inte den här filen.\n"
+
+#~ msgid "Socket read failed for 180,000 tries."
+#~ msgstr "Läsning från uttag misslyckades 180.000 gånger."
+
+#~ msgid "History List maximum reached!  Document not pushed."
+#~ msgstr "Historiklistemaximum nått! Dokumentet lagrades inte."
+
+#~ msgid "reason unknown."
+#~ msgstr "okänd anledning."
+
+#~ msgid "KB"
+#~ msgstr "KB"
+
+#~ msgid "Remove '%s' and all of its contents?"
+#~ msgstr "Ta bort \"%s\" och allt dess innehåll?"
+
+#~ msgid "Remove directory and all of its contents?"
+#~ msgstr "Ta bort katalog och allt dess innehåll?"
+
+#~ msgid "Short read from file, problem?"
+#~ msgstr "Filen tog slut tidigt, problem?"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "Kan inte öppna filhanteringsmenyfil."
+
+#~ msgid "create %s"
+#~ msgstr "skapa %s"
+
+#~ msgid "Ignoring invalid HOME"
+#~ msgstr "Ignorerar ogiltig HOME"
+
+#~ msgid "(From Cookie Jar)"
+#~ msgstr "(Från kakburk)"
+
+#~ msgid ""
+#~ "partial_thres specifies the number of lines Lynx should download and render\n"
+#~ "before we redraw the screen in Partial Display logic\n"
+#~ "e.g., partial_thres=2\n"
+#~ "would have Lynx redraw every 2 lines that it renders\n"
+#~ "partial_thres=-1 would use the entire screensize\n"
+#~ msgstr ""
+#~ "partial_thres anger antalet rader Lynx skall hämta och tolka innan skärmen\n"
+#~ "ritas om. partial_thres=2 gör att Lynx ritar om skärmen för varannan rad\n"
+#~ "som tolkas. partial_thres=-1 använder skärmstorleken\n"
+
+#~ msgid "Comment request cancelled!!!"
+#~ msgstr "Kommentaren avbruten!!!"
+
+#~ msgid "You are not allowed to goto \"file:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"file:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"finger:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"finger:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"ftp:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"ftp:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"gopher:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"gopher:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"http:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"http:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"https:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"https:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"lynxcgi:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"lynxcgi:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"lynxexec:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"lynxexec:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"lynxprog:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"lynxprog:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"mailto:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"mailto:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"news:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"news:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"nntp:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"nntp:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"rlogin:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"rlogin:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"snews:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"snews:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"telnet:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"telnet:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"tn3270:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"tn3270:\"-adresser"
+
+#~ msgid "You are not allowed to goto \"wais:\" URLs"
+#~ msgstr "Du tillåts inte gå till \"wais:\"-adresser"
+
+#~ msgid "This special URL is not allowed as a goto!"
+#~ msgstr "Denna specialadress tillåts inte gås till!"
+
+#~ msgid "Option choice (or page) number: "
+#~ msgstr "Välj alternativ- (eller sid-)nummer: "
+
+#~ msgid "Choice number %d already is current."
+#~ msgstr "Val %d är redan markerat."
+
+#~ msgid "You are already at the end of this choice list."
+#~ msgstr "Du är redan i slutet av vallistan."
+
+#~ msgid "You are already at the beginning of this choice list."
+#~ msgstr "Du är redan i början av vallistan."
+
+#~ msgid "You are already at page %d of this choice list."
+#~ msgstr "Du är redan på sida %d i vallistan."
+
+#~ msgid "You have entered an invalid choice number."
+#~ msgstr "Du har angett ett felaktigt valnummer."
+
+#~ msgid "Read %ld of %ld %s of data"
+#~ msgstr "Läste %ld av %ld%s data"
+
+#~ msgid "Read %ld %s of data"
+#~ msgstr "Läste %ld%s data"
+
+#~ msgid ", %ld %s/sec."
+#~ msgstr ", %ld%s/s"
+
+#~ msgid "Lynx ver. %s"
+#~ msgstr "Lynx ver. %s"
+
+#~ msgid "Personal Name: "
+#~ msgstr "Namn: "
+
+#~ msgid "Inactive text input, activate to edit (e.g., press ENTER)"
+#~ msgstr "Inaktiv textindata, aktivera för att redigera (tryck Enter)"
+
+#~ msgid "Left mouse button or return to select, arrow keys to scroll."
+#~ msgstr "Vänster musknapp eller Enter väljer, piltangenter rullar."
diff --git a/po/tr.po b/po/tr.po
new file mode 100644
index 00000000..79feb448
--- /dev/null
+++ b/po/tr.po
@@ -0,0 +1,6186 @@
+# translation of lynx-2.8.8-dev9.po to Turkish
+# lynx-2.8.8-dev9.po'nun Türkçe çevirisi
+# Copyright (C) 2002, 2004, 2006, 2009, 2012 Free Software Foundation, Inc.
+# This file is distributed under the same license as the lynx package.
+# Eyüp Hakan Duran <hakan_duran@hotmail.com>, 2012.
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx-2.8.8-dev9\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-02-12 19:13-0500\n"
+"PO-Revision-Date: 2012-02-14 21:44-0600\n"
+"Last-Translator: Eyüp Hakan Duran <hakan_duran@hotmail.com>\n"
+"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
+"Language: tr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 1.2\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:27
+#, c-format
+msgid "Alert!: %s"
+msgstr "Alarm!: %s"
+
+#: LYMessages.c:28
+msgid "Welcome"
+msgstr "HoÅŸgeldiniz"
+
+#: LYMessages.c:29
+msgid "Are you sure you want to quit?"
+msgstr "Çıkmak istediğinizden emin misiniz?"
+
+#: LYMessages.c:31
+msgid "Really exit from Lynx?"
+msgstr "Lynx'ten cidden çıkılsın mı?"
+
+#: LYMessages.c:33
+msgid "Connection interrupted."
+msgstr "Bağlantı kesildi."
+
+#: LYMessages.c:34
+msgid "Data transfer interrupted."
+msgstr "Veri aktarımı kesildi."
+
+#: LYMessages.c:35
+msgid "Cancelled!!!"
+msgstr "Ä°ptal edildi!!!"
+
+#: LYMessages.c:36
+msgid "Cancelling!"
+msgstr "Ä°ptal ediliyor!"
+
+#: LYMessages.c:37
+msgid "Excellent!!!"
+msgstr "Mükemmel!!!"
+
+#: LYMessages.c:38
+msgid "OK"
+msgstr "Tamam"
+
+#: LYMessages.c:39
+msgid "Done!"
+msgstr "Bitti!"
+
+#: LYMessages.c:40
+msgid "Bad request!"
+msgstr "Kötü istem!"
+
+#: LYMessages.c:41
+msgid "previous"
+msgstr "önceki"
+
+#: LYMessages.c:42
+msgid "next screen"
+msgstr "sonraki ekran"
+
+#: LYMessages.c:43
+msgid "HELP!"
+msgstr "YARDIM!"
+
+#: LYMessages.c:44
+msgid ", help on "
+msgstr ", yardım konusu "
+
+#. #define HELP
+#: LYMessages.c:46
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Komutlar: Gezinmek için ok tuşlarını, yardım için '?'ni, çıkış için 'q'yu, geri dönmek için '<-'u kullanınız."
+
+#. #define MOREHELP
+#: LYMessages.c:48
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- devamı için boşluğa, gezinmek için ok tuşlarına, yardım için '?'ne, çıkmak için 'q'ya basınız."
+
+#: LYMessages.c:49
+msgid "-- press space for next page --"
+msgstr "-- sonraki sayfa için boşluğa basınız --"
+
+#: LYMessages.c:50
+msgid "URL too long"
+msgstr "çok uzun URL"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:56
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(Metin giriş alanı) Etkin değil.  Etkinleştirmek için <return>'e basınız."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:58
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Metin alanı) Etkin değil.  Etkinleştirmek için <return>'e basınız."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:60
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Metin alanı) Etkin değil.  Etkinleştirmek için <return>'e basınız (düzenleyici için %s)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:62
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(Form alanı) Etkin değil.  Düzenlemek için <return>'ü kullanınız."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:64
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(Form alanı) Etkin değil.  Düzenlemek için <return>'ü kullanınız (önbelleksiz göndermek için %s)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:66
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(Form alanı) Etkin değil. Düzenlemek için <return>'e bir kez, göndermek için iki kez basınız."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:68
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(e-posta form alanı) Etkin değil.  Değiştirmek için <return>'e basınız."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:70
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(Parola giriş alanı) Etkin değil.  Etkinleştirmek için <return>'e basınız."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:73
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "DEĞİŞTİRİLEMEZ dosya giriş alanı.  Dışına çıkmak için YUKARI / AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:75
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Dosya giriş alanı) Dosya adı giriniz.  Dışına çıkmak için YUKARI / AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:77
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Metin giriş alanı) Metin giriniz.  Dışına çıkmak için YUKARI / AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:79
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Metin alanı) Metin giriniz. Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:81
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Metin alanı) Metin giriniz. Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız (düzenleyici için %s)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:83
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "DEĞİŞTİRİLEMEZ form metin alanı. Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:85
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(Form alanı) Metin giriniz.  Göndermek için <return>'ü kullanınız."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:87
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(Form alanı) Metin giriniz. Göndermek için <return>'ü kullanınız (önbelleksiz gönderim %s)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:89
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(Form alanı) Metin giriniz. Göndermek için <return>, dışına çıkmak için oklar ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:91
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "DEĞİŞTİRİLEBİLİR form alanı. Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:93
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(e-posta form alanı) Metin giriniz. Göndermek için <return>, dışına çıkmak için okları kullanınız."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:95
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(e-posta form alanı) Mektuba izin verilmiyor, dolayısıyla gönderemezsiniz."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:97
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Parola giriş alanı) Metin giriniz.  Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:99
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "DEĞİŞTİRİLEMEZ form parolası.  Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:101
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Onay kutusu Alanı)   Seçmek için sağ ok ya da <return>'ü kullanınız."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:103
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "DEĞİŞTİRİLEMEZ form onay kutusu.  Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:105
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Radyo Düğmesi)   Seçmek için sağ ok ya da <return>'ü kullanınız."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:107
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "DEĞİŞTİRİLEMEZ form radyo düğmesi.  Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:109
+msgid "Submit ('x' for no cache) to "
+msgstr "Alıcı (önbelleksiz gönderim 'x') "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:111
+msgid "Submit to "
+msgstr "Alıcı "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:113
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Form gönderme düğmesi) Göndermek için sağ ok ya da <return>'ü kullanınız (önbelleksiz gönderim 'x')."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:115
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Form gönderme düğmesi) Göndermek için sağ ok ya da <return>'ü kullanınız."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:117
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "DEVRE DIŞI form gönderme tuşu.  Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:119
+msgid "Submit mailto form to "
+msgstr "E-posta formu alıcısı "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:121
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(e-posta formu gönderme düğmesi) Göndermek için sağ ok ya da <return>'ü kullanınız."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:123
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(e-posta formu gönderme düğmesi) Mektuba izin verilmiyor, dolayısıyla gönderemezsiniz."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:125
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Form temizleme düğmesi)  Formu öntanımlıya dönüştürmek için sağ ok ya da <return>'ü kullanınız."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:127
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "DEVRE DIŞI form temizleme düğmesi.  Dışına çıkmak için YUKARI/AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_BUTTON_MESSAGE
+#: LYMessages.c:129
+msgid "(Script button)   Use UP or DOWN arrows or tab to move off."
+msgstr "(Betik düğmesi) Dışına çıkmak için YUKARI ya da AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_BUTTON_DIS_MSG
+#: LYMessages.c:131
+msgid "DISABLED Script button.  Use UP or DOWN arrows or tab to move off."
+msgstr "DEVRE DIŞI Betik düğmesi.  Dışına çıkmak için YUKARI ya da AŞAĞI ok tuşlarını ya da sekmeyi kullanınız."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:133
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Seçenek listesi) Return'e basıp, seçmek için ok tuşları ve return'ü kullanınız."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:135
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Tercih listesi) Return'e basıp, seçmek için ok tuşları ve return'ü kullanınız."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:137
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "DEĞİŞTİRİLEMEZ seçenek listesi.  Göz gezdirmek ya da terketmek için ok tuşları ya da retun'ü kullanınız."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:139
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "DEĞİŞTİRİLEMEZ tercih listesi.  Göz gezdirmek ya da terketmek için ok tuşları ya da retun'ü kullanınız."
+
+#: LYMessages.c:140
+msgid "Submitting form..."
+msgstr "Form gönderiliyor..."
+
+#: LYMessages.c:141
+msgid "Resetting form..."
+msgstr "Form temizleniyor..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:143
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Belge yeniden yükleniyor.  Forma girdikleriniz yitirilecek!"
+
+#. #define LINK_NOT_IN_FORM
+#: LYMessages.c:145
+msgid "The current link is not in a FORM"
+msgstr "Mevcut link bir FORM içinde değil"
+
+#: LYMessages.c:146
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Uyarı: Form verisi %s karakter kümesine çevrilemiyor!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:149
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(NORMAL LİNK)   Etkinleştirmek için sağ ok ya da<return>'ü kullanınız."
+
+#: LYMessages.c:150
+msgid "The resource requested is not available at this time."
+msgstr "Ä°stenen kaynak, ÅŸu anda temin edilemiyor."
+
+#: LYMessages.c:151
+msgid "Enter Lynx keystroke command: "
+msgstr "Lynx tuşbasım komutunu giriniz: "
+
+#: LYMessages.c:152
+msgid "Looking up "
+msgstr "Aranıyor "
+
+#: LYMessages.c:153
+#, c-format
+msgid "Getting %s"
+msgstr "%s alınıyor"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Skipping %s"
+msgstr "%s atlanıyor"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Using %s"
+msgstr "%s kullanılıyor"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "Kuraldışı URL: %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Yanlış yazılmış adres: %s"
+
+#: LYMessages.c:158
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:159
+msgid "Unable to access WWW file!!!"
+msgstr "WWW dosyasına erişilemiyor!!!"
+
+#: LYMessages.c:160
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Bu, aranabilir bir indeks...  Aramak için %s kullanınız."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:162
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--Devam--  Bu, aranabilir bir indeks...Aramak için %s kullanınız."
+
+#: LYMessages.c:163
+msgid "You have entered an invalid link number."
+msgstr "Geçersiz bir link numarası girdiniz."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:165
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Halen belge kaynağı görüntüleniyor.  Yorumlanmış (rendered) sürüme dönmek için '\\'a basınız."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:167
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  Ok tuşları: Gezinmek için Yukarı ve Aşağı.  Linke gitmek için Sağ; geriye gitmek için Sol.  \n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:169
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " H)Yardım O)Seçenekler P)Yazdır G)Git M)Ana ekran Q)Çıkış /=ara [delete]=tarihçe listesi\n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:171
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "..O)Diğer komutlar  H)Yardım  K)Tuşeşlem  G)Git  P)Yazdır  M)Ana ekran  o)Seçenekler  Q)Çıkış  \n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:173
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "..O)Diğer komutlar  B)Geri  E)Düzenle  D)İndir ^R)Geri yükle ^W)Ekranı sil  belgeyi ara: / \n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:175
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O)Diğer komutlar  C)Yorum  Tarihçe: <backspace>  Yer imleri: V)Görüntüle, A)Ekle, R)Çıkart \n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:177
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Klavyeyi kullanarak alana metin giriniz                        "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:179
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Alandaki tüm metni silmek için Ctrl-U, tek karakter silmek için [Backspace]    "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:181
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "      Alandaki metni silmek için Ctrl-U,tek karakter silmek için [Backspace]    "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:183
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Alandaki tüm metni silmek için %s, tek karakter silmek için [Backspace]    "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:185
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "      Alandaki metni silmek için %s, tek karakter silmek için [Backspace]    "
+
+#. mailto
+#: LYMessages.c:188
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Bozuk e-posta formu gönderimi!  İptal edildi!"
+
+#: LYMessages.c:189
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Uyarı!  E-posta adresindeki kontrol kodları yerine ? konuldu."
+
+#: LYMessages.c:190
+msgid "Mail disallowed!  Cannot submit."
+msgstr "E-postaya izin verilmiyor!  Gönderilemedi."
+
+#: LYMessages.c:191
+msgid "Mailto form submission failed!"
+msgstr "E-posta formunun gönderimi başarısız!"
+
+#: LYMessages.c:192
+msgid "Mailto form submission Cancelled!!!"
+msgstr "E-posta formunun gönderimi iptal edildi!!!"
+
+#: LYMessages.c:193
+msgid "Sending form content..."
+msgstr "Form içeriği gönderiliyor..."
+
+#: LYMessages.c:194
+msgid "No email address is present in mailto URL!"
+msgstr "E-posta URL'sinde mektup adresi yok!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:196
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "E-posta URL'si için geçici dosya açılamadı!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:198
+msgid "Do you wish to include the original message?"
+msgstr "Orijinal iletinin içerilmesini ister misiniz?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:200
+msgid "Do you wish to include the preparsed source?"
+msgstr "Ayrıştırılmamış kaynağın içerilmesini ister misiniz?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:202
+msgid "Spawning your selected editor to edit mail message"
+msgstr "İletinin düzenlenmesi için seçilmiş düzenleyiciniz başlatılıyor"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:204
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Düzenleyici başlatmada hata, seçenekler menüsündeki düzenleyici tanımınızı kontrol ediniz"
+
+#: LYMessages.c:205
+msgid "Send this comment?"
+msgstr "Bu yorum gönderilsin mi?"
+
+#: LYMessages.c:206
+msgid "Send this message?"
+msgstr "Bu ileti gönderilsin mi?"
+
+#: LYMessages.c:207
+msgid "Sending your message..."
+msgstr "İletiniz gönderiliyor..."
+
+#: LYMessages.c:208
+msgid "Sending your comment:"
+msgstr "Yorumunuz gönderiliyor:"
+
+#. textarea
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Bir METİN ALANI'nda değil(siniz); harici düzenleyici kullanılamıyor."
+
+#: LYMessages.c:212
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Bir METİN ALANI'nda değil(siniz); komut kullanılamıyor."
+
+#: LYMessages.c:214
+msgid "file: ACTIONs are disallowed!"
+msgstr "dosya: EYLEMlere izin verilmiyor!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:216
+msgid "file: URLs via served links are disallowed!"
+msgstr "dosya: sunulan linkler aracılığıyla URL'lere izin verilmiyor!"
+
+#: LYMessages.c:217
+msgid "Access to local files denied."
+msgstr "Yerel dosyalara eriÅŸim reddedildi."
+
+#: LYMessages.c:218
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "dosya: Yer imleri aracılığıyla URL'lere izin verilmiyor!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:220
+msgid "This special URL is not allowed in external documents!"
+msgstr "Harici belgelerde bu özel URL'ye izin verilmiyor!"
+
+#: LYMessages.c:221
+msgid "Press <return> to return to Lynx."
+msgstr "Lynx'e dönmek için <return>'e basınız."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:224
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "DCL altsüreci başlatılıyor.  Lynx'e dönmek için 'logout'u kullanınız.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:228
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Lynx'e dönmek için EXIT tuşlayınız.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:231
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Öntanımlı kabuğunuz başlatılıyor.  Lynx'e dönmek için 'exit'i kullanınız.\n"
+
+#: LYMessages.c:234
+msgid "Spawning is currently disabled."
+msgstr "Başlatma (spawning) şu an devre dışı."
+
+#: LYMessages.c:235
+msgid "The 'd'ownload command is currently disabled."
+msgstr "İndir komutu(d) şu an devre dışı."
+
+#: LYMessages.c:236
+msgid "You cannot download an input field."
+msgstr "Bir giriş alanını indiremezsiniz."
+
+#: LYMessages.c:237
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Formda bir e-posta eylemi mevcut!  Ä°ndirilemiyor."
+
+#: LYMessages.c:238
+msgid "You cannot download a mailto: link."
+msgstr "Bir e-posta: linkini indiremezsiniz."
+
+#: LYMessages.c:239
+msgid "You cannot download cookies."
+msgstr "Çerez indiremezsiniz."
+
+#: LYMessages.c:240
+msgid "You cannot download a printing option."
+msgstr "Bir yazdırma seçeneğini indiremezsiniz."
+
+#: LYMessages.c:241
+msgid "You cannot download an upload option."
+msgstr "Bir yükleme seçeneğini indiremezsiniz."
+
+#: LYMessages.c:242
+msgid "You cannot download an permit option."
+msgstr "Bir izin seçeneğini indiremezsiniz."
+
+#: LYMessages.c:243
+msgid "This special URL cannot be downloaded!"
+msgstr "Bu özel URL indirilemez!"
+
+#: LYMessages.c:244
+msgid "Nothing to download."
+msgstr "İndirilecek hiçbir şey yok."
+
+#: LYMessages.c:245
+msgid "Trace ON!"
+msgstr "İz(leme) AÇIK!"
+
+#: LYMessages.c:246
+msgid "Trace OFF!"
+msgstr "Ä°z(leme) KAPALI!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:248
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Tüm resimler için link içerilecek!  Yeniden yükleniyor..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:250
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Standart resim becerimi geri kuruldu!  Yeniden yükleniyor..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:252
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "ALT dizgesi olmayan içeriğe(inline) yalancı_ALT'lar atanacak!  Yeniden yükleniyor..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:254
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Belirtilmiş ALT dizgesi olmayan içerik(inlines) yoksayılacak!  Yeniden yükleniyor..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Ham 8-bit ya da CJK modu KAPATILDI!  Yeniden yükleniyor..."
+
+#: LYMessages.c:256
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Ham 8-bit ya da CJK modu AÇILDI!  Yeniden yükleniyor..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:258
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Belge(D), link(L) için BAŞLIK istemi gönderilsin mi, iptal(C) mi edilsin? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:260
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Belge(D) için BAŞLIK istemi gönderilsin mi, iptal(C) mi edilsin? (d,c): "
+
+#: LYMessages.c:261
+msgid "Sorry, the document is not an http URL."
+msgstr "Üzgünüm, belge bir http URL değil..."
+
+#: LYMessages.c:262
+msgid "Sorry, the link is not an http URL."
+msgstr "Üzgünüm, link bir http URL değil..."
+
+#: LYMessages.c:263
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Üzgünüm, bu form için EYLEM devre dışı..."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:265
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Üzgünüm, bu form için EYLEM bir http URL değil..."
+
+#: LYMessages.c:266
+msgid "Not an http URL or form ACTION!"
+msgstr "http URL ya da form EYLEMi deÄŸil!.."
+
+#: LYMessages.c:267
+msgid "This special URL cannot be a form ACTION!"
+msgstr "Bu özel URL, bir form EYLEMi olamaz!"
+
+#: LYMessages.c:268
+msgid "URL is not in starting realm!"
+msgstr "URL, başlangıç bölgesinde değil!.."
+
+#: LYMessages.c:269
+msgid "News posting is disabled!"
+msgstr "Haber gönderme devre dışı!.."
+
+#: LYMessages.c:270
+msgid "File management support is disabled!"
+msgstr "Dosya yönetim desteği devre dışı!.."
+
+#: LYMessages.c:271
+msgid "No jump file is currently available."
+msgstr "Mevcut hiçbir sıçrama dosyası yok."
+
+#: LYMessages.c:272
+msgid "Jump to (use '?' for list): "
+msgstr "Sıçranacak yer (liste için '?' kullanınız): "
+
+#: LYMessages.c:273
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Bir kısayol URL'ye sıçramaya izin verilmiyor!"
+
+#: LYMessages.c:274
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Rastgele URL'ye izin verilmiyor!  Bir kısayol kullanınız."
+
+#: LYMessages.c:275
+msgid "No random URLs have been used thus far."
+msgstr "Şimdiye dek hiç rastgele URL kullanılmadı."
+
+#: LYMessages.c:276
+msgid "Bookmark features are currently disabled."
+msgstr "Yer imi özellikleri halen devre dışı..."
+
+#: LYMessages.c:277
+msgid "Execution via bookmarks is disabled."
+msgstr "Yer imleriyle icra devre dışı..."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:279
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "Yer imi dosyası tanımlanmamış. Seçenekleri görmek için %s kullanınız."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:281
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "X Mosaic sıcakliste dönüşümü için geçici dosya açılamadı."
+
+#: LYMessages.c:282
+msgid "ERROR - unable to open bookmark file."
+msgstr "HATA - yer imi dosyası açılamadı."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:284
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Linkin silinebilmesi için yer imi dosyası açılamadı."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:286
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Linkin silinebilmesi için müsvedde dosyası açılamadı."
+
+#: LYMessages.c:288
+msgid "Error renaming scratch file."
+msgstr "Müsvedde dosyasının yeniden adlandırılmasında hata..."
+
+#: LYMessages.c:290
+msgid "Error renaming temporary file."
+msgstr "Geçici dosyanın yeniden adlandırılmasında hata..."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:292
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Linkin silinebilmesi için geçici dosya kopyalanamıyor."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:294
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Linkin silinebilmesi için geçici dosya yeniden açılamıyor."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:297
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Yer imi dosyasındaki link kendi başına tek satırda değil."
+
+#: LYMessages.c:298
+msgid "Bookmark deletion failed."
+msgstr "Yer iminin silinmesi başarısız."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:300
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Yer imi dosyaları nakledilemez (yalnızca http URL'ler edilebilir)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:302
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Yer imi dosyası açılamadı, önce linki kaydetmek için 'a'yı kullanın"
+
+#: LYMessages.c:303
+msgid "There are no links in this bookmark file!"
+msgstr "Bu yer imi dosyasında hiç link yok!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:305
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "Önbellekteki belge silinsinD) mi, iptalC) mi edilsin? (d,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:307
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "Yer imi dosyasına belge(D), link(L) kaydedilsin mi, iptal(C) mi edilsin? (d,l,c): "
+
+#: LYMessages.c:308
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "Yer imi dosyasına belge(D) kaydedilsin mi, iptal(C) mi edilsin? (d,c): "
+
+#: LYMessages.c:309
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "Yer imi dosyasına link(L) kaydedilsin mi, iptal(C) mi edilsin? (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:311
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "POST içerikli formdan olan belgeler, yer imi olarak kaydedilemez."
+
+#: LYMessages.c:312
+msgid "Cannot save form fields/links"
+msgstr "Form alanları/linkleri kaydedilemiyor"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:314
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Tarihçe, bilgi-göster, menü ve liste dosyaları yer imi olarak kaydedilemez."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:316
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Yer imi dosyanızdan bu linki silmek istediğinize emin misiniz?"
+
+#: LYMessages.c:317
+msgid "Malformed address."
+msgstr "Bozuk adres "
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:319
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Tarihsel yorum ayrıştırma AÇIK (Minimal geçersiz kılınmış)!"
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:321
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Tarihsel yorum ayrıştırma KAPALI (Minimal yürürlükte)!"
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:323
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Tarihsel yorum ayrıştırma AÇIK (Valid geçersiz kılınmış)!"
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:325
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Tarihsel yorum ayrıştırma KAPALI (Valid yürürlükte)!"
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:327
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Minimal yorum ayrıştırma AÇIK (ve yürürlükte)!"
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:329
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Minimal yorum ayrıştırma KAPALI (Valid yürürlükte)!"
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:331
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Minimal yorum ayrıştırma AÇIK (ancak Tarihsel yürürlükte)!"
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:333
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Minimal yorum ayrıştırma KAPALI (Tarihsel yürürlükte)!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing ON!"
+msgstr "Salt çift-tırnak ayrıştırma AÇIK!"
+
+#: LYMessages.c:335
+msgid "Soft double-quote parsing OFF!"
+msgstr "Salt çift-tırnak ayrıştırma KAPALI!"
+
+#: LYMessages.c:336
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Şu an HTML'nin TagSoup ayrıştırması kullanılıyor."
+
+#: LYMessages.c:337
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Şu an HTML'nin SortaSGML ayrıştırması kullanılıyor!"
+
+#: LYMessages.c:338
+msgid "You are already at the end of this document."
+msgstr "Zaten bu belgenin sonundasınız."
+
+#: LYMessages.c:339
+msgid "You are already at the beginning of this document."
+msgstr "Zaten bu belgenin başındasınız."
+
+#: LYMessages.c:340
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Zaten bu belgenin %d. sayfasındasınız."
+
+#: LYMessages.c:341
+#, c-format
+msgid "Link number %d already is current."
+msgstr "%d no'lu link zaten güncel..."
+
+#: LYMessages.c:342
+msgid "You are already at the first document"
+msgstr "Zaten birinci belgedesiniz"
+
+#: LYMessages.c:343
+msgid "There are no links above this line of the document."
+msgstr "Belgenin bu satırından önce hiç link yok..."
+
+#: LYMessages.c:344
+msgid "There are no links below this line of the document."
+msgstr "Belgenin bu satırından sonra hiç link yok..."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:346
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Maksimum uzunluğa ulaşıldı!  Metin silin ya da alanın dışına çıkın."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:348
+msgid "You are not on a form submission button or normal link."
+msgstr "Form gönderme düğmesi ya da normal bağlantı üzerinde değilsiniz."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:350
+msgid "One radio button must be checked at all times!"
+msgstr "Radyo düğmelerinden biri mutlaka seçilmiş olmalıdır!"
+
+#: LYMessages.c:351
+msgid "No submit button for this form, submit single text field?"
+msgstr "Formda gönder düğmesi yok, tek metin alanı gönderilsin mi?"
+
+#: LYMessages.c:352
+msgid "Do you want to go back to the previous document?"
+msgstr "Önceki belgeye dönmek ister misiniz?"
+
+#: LYMessages.c:353
+msgid "Use arrows or tab to move off of field."
+msgstr "Alanın dışına çıkmak için okları ya da sekmeyi kullanınız."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:355
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Metin giriniz.  Alanın dışına çıkmak için okları ya da sekmeyi kullanınız."
+
+#: LYMessages.c:356
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "**Bozuk HTML!!  Hiçbir form eylemi tanımlanmamış. **"
+
+#: LYMessages.c:357
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "Bozuk HTML!!  Beliriveren pencere oluşturulamadı!"
+
+#: LYMessages.c:358
+msgid "Unable to create popup window!"
+msgstr "Beliriveren pencere oluşturulamadı!"
+
+#: LYMessages.c:359
+msgid "Goto a random URL is disallowed!"
+msgstr "Rastgele URL'ye gitmeye izin verilmiyor!"
+
+#: LYMessages.c:360
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Http olmayan URL'ye gitmeye izin verilmiyor!"
+
+#: LYMessages.c:361
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "\"%s\" URL'lere gitme izniniz yok"
+
+#: LYMessages.c:362
+msgid "URL to open: "
+msgstr "Açılacak URL: "
+
+#: LYMessages.c:363
+msgid "Edit the current Goto URL: "
+msgstr "Mevcut Gidilecek URL'yi düzenleyiniz: "
+
+#: LYMessages.c:364
+msgid "Edit the previous Goto URL: "
+msgstr "Önceki Gidilecek URL'yi düzenleyiniz: "
+
+#: LYMessages.c:365
+msgid "Edit a previous Goto URL: "
+msgstr "Önceki Gidilecek URL'lerden birini düzenleyiniz: "
+
+#: LYMessages.c:366
+msgid "Current document has POST data."
+msgstr "Mevcut belgede POST verisi var."
+
+#: LYMessages.c:367
+msgid "Edit this document's URL: "
+msgstr "Bu belgenin URL'sini düzenleyiniz: "
+
+#: LYMessages.c:368
+msgid "Edit the current link's URL: "
+msgstr "Mevcut linkin URL'sini düzenleyiniz: "
+
+#: LYMessages.c:369
+msgid "Edit the form's submit-URL: "
+msgstr "Bu formun sunma-URL'sini düzenleyiniz: "
+
+#: LYMessages.c:370
+msgid "You cannot edit File Management URLs"
+msgstr "Dosya Yönetim URL'lerini düzenleyemezsiniz"
+
+#: LYMessages.c:371
+msgid "Enter a database query: "
+msgstr "Bir veritabanı sorgusu giriniz: "
+
+#: LYMessages.c:372
+msgid "Enter a whereis query: "
+msgstr "Bir whereis sorgusu giriniz: "
+
+#: LYMessages.c:373
+msgid "Edit the current query: "
+msgstr "Mevcut sorguyu düzenleyiniz: "
+
+#: LYMessages.c:374
+msgid "Edit the previous query: "
+msgstr "Önceki sorguyu düzenleyiniz: "
+
+#: LYMessages.c:375
+msgid "Edit a previous query: "
+msgstr "Önceki sorgulardan birini düzenleyiniz: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:377
+msgid "Use Control-R to resubmit the current query."
+msgstr "Mevcut sorguyu yeniden göndermek için Control-R'yi kullanınız."
+
+#: LYMessages.c:378
+msgid "Edit the current shortcut: "
+msgstr "Mevcut kısayolu düzenleyiniz: "
+
+#: LYMessages.c:379
+msgid "Edit the previous shortcut: "
+msgstr "Önceki kısayolu düzenleyiniz: "
+
+#: LYMessages.c:380
+msgid "Edit a previous shortcut: "
+msgstr "Önceki kısayollardan birini düzenleyiniz: "
+
+#: LYMessages.c:381
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "'%c' tuşu, herhangi bir sıçrama dosyasına eşlemlenmemiş!"
+
+#: LYMessages.c:382
+msgid "Cannot locate jump file!"
+msgstr "Sıçrama dosyası konumlandırılamıyor!"
+
+#: LYMessages.c:383
+msgid "Cannot open jump file!"
+msgstr "Sıçrama dosyası açılamıyor!"
+
+#: LYMessages.c:384
+msgid "Error reading jump file!"
+msgstr "Sıçrama dosyasının okunmasında hata!"
+
+#: LYMessages.c:385
+msgid "Out of memory reading jump file!"
+msgstr "Sıçrama dosyasının okunmasında bellek yetersiz!"
+
+#: LYMessages.c:386
+msgid "Out of memory reading jump table!"
+msgstr "Sıçrama tablosunun okunmasında bellek yetersiz!"
+
+#: LYMessages.c:387
+msgid "No index is currently available."
+msgstr "Halen hiç indeks yok."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:389
+msgid "Do you really want to go to the Main screen?"
+msgstr "Ana ekrana gitmeyi gerçekten istiyor musunuz?"
+
+#: LYMessages.c:390
+msgid "You are already at main screen!"
+msgstr "Zaten ana ekrandasınız!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:392
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Aranabilir indekslenmiş bir belge değil -- metin dizgesi aramak için '/'ye basınız"
+
+#. #define NO_OWNER
+#: LYMessages.c:394
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Bu dosya için bir sahip tanımlanmadığından yorum gönderemezsiniz"
+
+#: LYMessages.c:395
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Sahip tanımlanmamış. %s kullanmak ister misiniz?"
+
+#: LYMessages.c:396
+msgid "Do you wish to send a comment?"
+msgstr "Yorum göndermek ister misiniz?"
+
+#: LYMessages.c:397
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "Mektuba izin verilmediğinden yorum gönderemezsiniz"
+
+#: LYMessages.c:398
+msgid "The 'e'dit command is currently disabled."
+msgstr "Düzenl'e' komutu halen devre dışı..."
+
+#: LYMessages.c:399
+msgid "External editing is currently disabled."
+msgstr "Harici düzenleme halen devre dışı..."
+
+#: LYMessages.c:400
+msgid "System error - failure to get status."
+msgstr "Sistem hatası - durum alımı başarısız."
+
+#: LYMessages.c:401
+msgid "No editor is defined!"
+msgstr "Hiçbir düzenleyici tanımlanmamış!"
+
+#: LYMessages.c:402
+msgid "The 'p'rint command is currently disabled."
+msgstr "Yazdır(p) komutu halen devre dışı..."
+
+#: LYMessages.c:403
+msgid "Document has no Toolbar links or Banner."
+msgstr "Belgede araç çubuğu linki ya da afiş yok..."
+
+#: LYMessages.c:404
+msgid "Unable to open traversal file."
+msgstr "Nakil dosyası açılamıyor."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal found file."
+msgstr "Nakil bulunmuş dosya açılamıyor."
+
+#: LYMessages.c:406
+msgid "Unable to open reject file."
+msgstr "Red dosyası açılamıyor."
+
+#: LYMessages.c:407
+msgid "Unable to open traversal errors output file"
+msgstr "Nakil hataları çıktı dosyası açılamıyor"
+
+#: LYMessages.c:408
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "NAKÄ°L YARIDA KESÄ°LDÄ°"
+
+#: LYMessages.c:409
+msgid "Follow link (or goto link or page) number: "
+msgstr "Ä°zlenecek link (ya da Gidilecek link/sayfa) no: "
+
+#: LYMessages.c:410
+msgid "Select option (or page) number: "
+msgstr "Seçenek (ya da sayfa) no seçiniz: "
+
+#: LYMessages.c:411
+#, c-format
+msgid "Option number %d already is current."
+msgstr "%d no'lu seçenek zaten güncel."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:413
+msgid "You are already at the end of this option list."
+msgstr "Zaten bu seçenek listesinin sonundasınız."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:415
+msgid "You are already at the beginning of this option list."
+msgstr "Zaten bu seçenek listesinin başındasınız."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:417
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "zaten bu seçenek listesinin %d. sayfasındasınız."
+
+#: LYMessages.c:418
+msgid "You have entered an invalid option number."
+msgstr "Geçersiz bir seçenek no'su girdiniz."
+
+#: LYMessages.c:419
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** Bozuk HTML!!  Tanı için -trace kullanınız. **"
+
+#: LYMessages.c:420
+msgid "Give name of file to save in"
+msgstr "İçine kaydedilecek dosya adı veriniz"
+
+#: LYMessages.c:421
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Veri, dosyaya kaydedilemiyor -- lütfen WWW'yu yerel çalıştırın"
+
+#: LYMessages.c:422
+msgid "Can't open temporary file!"
+msgstr "Geçici dosya açılamıyor!"
+
+#: LYMessages.c:423
+msgid "Can't open output file!  Cancelling!"
+msgstr "Çıktı dosyası açılamıyor!  İptal ediliyor!"
+
+#: LYMessages.c:424
+msgid "Execution is disabled."
+msgstr "İcra etme devre dışı..."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:426
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "İcra etme, bu dosya için etkinleştirilmemiş.  Seçenekler menüsüne bakınız (%s kullanın)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:428
+msgid "Execution capabilities are not compiled into this version."
+msgstr "İcra etme yetileri bu sürüm içine derlenmemiş."
+
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal."
+msgstr "Bu dosya, bu uçbirimde görüntülenemez."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:431
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Bu dosya, bu uçbirimde görüntülenemez:  İndir(D) ya da İptal et(C)"
+
+#: LYMessages.c:432
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  Ä°ndir(D) ya da Ä°ptal et(C)"
+
+#: LYMessages.c:433
+msgid "Cancelling file."
+msgstr "Dosya iptal ediliyor."
+
+#: LYMessages.c:434
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Dosya alınıyor.  - LÜTFEN BEKLEYİNİZ -"
+
+#: LYMessages.c:435
+msgid "Enter a filename: "
+msgstr "Bir dosya adı giriniz: "
+
+#: LYMessages.c:436
+msgid "Edit the previous filename: "
+msgstr "Önceki dosya adını düzenleyiniz: "
+
+#: LYMessages.c:437
+msgid "Edit a previous filename: "
+msgstr "Önceki dosya adlarından birini düzenleyiniz: "
+
+#: LYMessages.c:438
+msgid "Enter a new filename: "
+msgstr "Yeni bir dosya adı giriniz: "
+
+#: LYMessages.c:439
+msgid "File name may not begin with a dot."
+msgstr "Dosya adı noktayla başlayamaz."
+
+#: LYMessages.c:441
+msgid "File exists.  Create higher version?"
+msgstr "Dosya zaten var.  Daha yüksek sürüm oluşturulsun mu?"
+
+#: LYMessages.c:443
+msgid "File exists.  Overwrite?"
+msgstr "Dosya zaten var.  Üzerine yazılsın mı?"
+
+#: LYMessages.c:445
+msgid "Cannot write to file."
+msgstr "Dosyaya yazılamıyor."
+
+#: LYMessages.c:446
+msgid "ERROR! - download command is misconfigured."
+msgstr "HATA! - indir komutu yanlış ayarlanmış."
+
+#: LYMessages.c:447
+msgid "Unable to download file."
+msgstr "Dosya indirilemiyor."
+
+#: LYMessages.c:448
+msgid "Reading directory..."
+msgstr "Dizin okunuyor..."
+
+#: LYMessages.c:449
+msgid "Building directory listing..."
+msgstr "Dizin listesi yapılanıyor..."
+
+#: LYMessages.c:450
+msgid "Saving..."
+msgstr "Kaydediliyor..."
+
+#: LYMessages.c:451
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "'%s' dosyası düzenlenemedi."
+
+#: LYMessages.c:452
+msgid "Unable to access document!"
+msgstr "Belgeye eriÅŸilemedi!"
+
+#: LYMessages.c:453
+msgid "Could not access file."
+msgstr "Dosyaya eriÅŸilemedi."
+
+#: LYMessages.c:454
+msgid "Could not access directory."
+msgstr "Dizine eriÅŸilemedi."
+
+#: LYMessages.c:455
+msgid "Could not load data."
+msgstr "Veri yüklenemedi."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:457
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx, halen uzak WWW dosyalarını düz(e)nleyemiyor."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:459
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "Bu alan, harici bir düzenleyiciyle düz(e)nlenemez."
+
+#: LYMessages.c:460
+msgid "Bad rule"
+msgstr "Hatalı kural"
+
+#: LYMessages.c:461
+msgid "Insufficient operands:"
+msgstr "Ä°ÅŸlenenler yetersiz:"
+
+#: LYMessages.c:462
+msgid "You are not authorized to edit this file."
+msgstr "Bu dosyayı düzenleme yetkiniz yok."
+
+#: LYMessages.c:463
+msgid "Title: "
+msgstr "Başlık: "
+
+#: LYMessages.c:464
+msgid "Subject: "
+msgstr "Konu: "
+
+#: LYMessages.c:465
+msgid "Username: "
+msgstr "Kullanıcı adı: "
+
+#: LYMessages.c:466
+msgid "Password: "
+msgstr "Parola: "
+
+#: LYMessages.c:467
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: Kullanıcı adı ve Parola zorunludur!!!"
+
+#: LYMessages.c:468
+msgid "lynx: Password required!!!"
+msgstr "lynx: Parola zorunludur!!!"
+
+#: LYMessages.c:469
+msgid "Clear all authorization info for this session?"
+msgstr "Bu oturum için tüm yetkilendirme bilgisi silinsin mi?"
+
+#: LYMessages.c:470
+msgid "Authorization info cleared."
+msgstr "Yetkilendirme bilgisi silindi."
+
+#: LYMessages.c:471
+msgid "Authorization failed.  Retry?"
+msgstr "Yetkilendirme başarısız.  Yinele?"
+
+#: LYMessages.c:472
+msgid "cgi support has been disabled."
+msgstr "cgi desteği devre dışı..."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:474
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Lynxcgi yetileri bu sürüm içine derlenmemiş."
+
+#: LYMessages.c:475
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Üzgünüm, %s'i %s'e dönüştürmenin bilinen yöntemi yok."
+
+#: LYMessages.c:476
+msgid "Unable to set up connection."
+msgstr "Bağlantı sağlanamıyor."
+
+#: LYMessages.c:477
+msgid "Unable to make connection"
+msgstr "Bağlantı kurulamıyor"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:479
+msgid "Executable link rejected due to malformed request."
+msgstr "Bozuk istem nedeniyle icra edilebilir bağlantı geri çevrildi."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:481
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "`%c' karakteri nedeniyle icra edilebilir bağlantı geri çevrildi."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Göreli yol dizgesi ('../') nedeniyle icra edilebilir bağlantı reddedildi."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:485
+msgid "Executable link rejected due to location or path."
+msgstr "Konum ya da yol nedeniyle icra edilebilir bağlantı reddedildi."
+
+#: LYMessages.c:486
+msgid "Mail access is disabled!"
+msgstr "E-posta erişimi devre dışı!.."
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:488
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Yalnızca yerel makinadaki dosya ve sunuculara erişilebilir."
+
+#: LYMessages.c:489
+msgid "Telnet access is disabled!"
+msgstr "Telnet erişimi devre dışı!.."
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:491
+msgid "Telnet port specifications are disabled."
+msgstr "Telnet port belirleyicileri devre dışı..."
+
+#: LYMessages.c:492
+msgid "USENET news access is disabled!"
+msgstr "USENET haber erişimi devre dışı!.."
+
+#: LYMessages.c:493
+msgid "Rlogin access is disabled!"
+msgstr "Rlogin erişimi devre dışı!.."
+
+#: LYMessages.c:494
+msgid "Ftp access is disabled!"
+msgstr "Ftp erişimi devre dışı!.."
+
+#: LYMessages.c:495
+msgid "There are no references from this document."
+msgstr "Bu belgeden hiç referans yok..."
+
+#: LYMessages.c:496
+msgid "There are only hidden links from this document."
+msgstr "Bu belgeden yalnızca gizli linkler var..."
+
+#: LYMessages.c:498
+msgid "Unable to open command file."
+msgstr "Komut dosyası açılamıyor."
+
+#: LYMessages.c:500
+msgid "News Post Cancelled!!!"
+msgstr "Haber Gönderimi İptal Edildi!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:502
+msgid "Spawning your selected editor to edit news message"
+msgstr "Haber iletisini düzenlemek için seçilmiş düzenleyici başlatılıyor"
+
+#: LYMessages.c:503
+msgid "Post this message?"
+msgstr "İleti gönderilsin mi?"
+
+#: LYMessages.c:504
+#, c-format
+msgid "Append '%s'?"
+msgstr "'%s' sona eklensin mi?"
+
+#: LYMessages.c:505
+msgid "Posting to newsgroup(s)..."
+msgstr "Haber grubu (ya da gruplarına) gönderiliyor..."
+
+#: LYMessages.c:507
+msgid "*** You have unread mail. ***"
+msgstr "*** Okunmamış mektubunuz var. ***"
+
+#: LYMessages.c:509
+msgid "*** You have mail. ***"
+msgstr "*** Mektubunuz var. ***"
+
+#: LYMessages.c:511
+msgid "*** You have new mail. ***"
+msgstr "*** Yeni mektubunuz var. ***"
+
+#: LYMessages.c:512
+msgid "File insert cancelled!!!"
+msgstr "Dosya ekleme iptal edildi!!!"
+
+#: LYMessages.c:513
+msgid "Not enough memory for file!"
+msgstr "Dosya için yeterli bellek yok!"
+
+#: LYMessages.c:514
+msgid "Can't open file for reading."
+msgstr "Okumak için dosya açılamıyor."
+
+#: LYMessages.c:515
+msgid "File does not exist."
+msgstr "Dosya mevcut deÄŸil."
+
+#: LYMessages.c:516
+msgid "File does not exist - reenter or cancel:"
+msgstr "Dosya mevcut değil - yeniden girin ya da vazgeçin:"
+
+#: LYMessages.c:517
+msgid "File is not readable."
+msgstr "Dosya okunabilir durumda deÄŸil."
+
+#: LYMessages.c:518
+msgid "File is not readable - reenter or cancel:"
+msgstr "Dosya okunabilir durumda değil - yeniden girin ya da vazgeçin:"
+
+#: LYMessages.c:519
+msgid "Nothing to insert - file is 0-length."
+msgstr "Eklenecek hiçbir şey yok - dosya 0 uzunlukta..."
+
+#: LYMessages.c:520
+msgid "Save request cancelled!!!"
+msgstr "Kaydetme istemi iptal edildi!"
+
+#: LYMessages.c:521
+msgid "Mail request cancelled!!!"
+msgstr "Mektup istemi iptal edildi!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:523
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Ayrıştırma öncesi kaynak görüntüleniyor.  Mektupla göndermek istediğinizden emin misiniz?"
+
+#: LYMessages.c:524
+msgid "Please wait..."
+msgstr "Lütfen bekleyiniz..."
+
+#: LYMessages.c:525
+msgid "Mailing file.  Please wait..."
+msgstr "Dosya mektupla gönderiliyor.  Lütfen bekleyiniz..."
+
+#: LYMessages.c:526
+msgid "ERROR - Unable to mail file"
+msgstr "HATA - Dosya mektupla gönderilemedi"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:528
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Dosya %d ekran uzunluğunda.  Yazdırmak istediğinizden emin misiniz?"
+
+#: LYMessages.c:529
+msgid "Print request cancelled!!!"
+msgstr "Yazdırma istemi iptal edildi!!!"
+
+#: LYMessages.c:530
+msgid "Press <return> to begin: "
+msgstr "Başlamak için <return>'e basınız: "
+
+#: LYMessages.c:531
+msgid "Press <return> to finish: "
+msgstr "Bitirmek için <return>'e basınız: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:533
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Dosya %d sayfa uzunluğunda.  Yazdırmak istediğinizden emin misiniz?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:535
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Yazıcınızın çevrimiçi olduğundan emin olun.  Yazdırmaya başlamak için lütfen <return>'e basınız::"
+
+#: LYMessages.c:536
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "HATA - dosya boÅŸluÄŸu tahsis edilemedi!!!"
+
+#: LYMessages.c:537
+msgid "Unable to open tempfile"
+msgstr "Geçici dosya açılamadı"
+
+#: LYMessages.c:538
+msgid "Unable to open print options file"
+msgstr "Yazdırma seçenekleri dosyası açılamadı"
+
+#: LYMessages.c:539
+msgid "Printing file.  Please wait..."
+msgstr "Dosya yazdırılıyor.  Lütfen bekleyiniz..."
+
+#: LYMessages.c:540
+msgid "Please enter a valid internet mail address: "
+msgstr "Lütfen geçerli bir internet mektup adresi giriniz: "
+
+#: LYMessages.c:541
+msgid "ERROR! - printer is misconfigured!"
+msgstr "HATA! - Yazıcı yanlış ayarlanmış!"
+
+#: LYMessages.c:542
+msgid "Image map from POST response not available!"
+msgstr "POST yanıtından resim eşlemi temin edilemiyor!"
+
+#: LYMessages.c:543
+msgid "Misdirected client-side image MAP request!"
+msgstr "Yanlış yönlendirilmiş alıcı-tarafı resim EŞLEM istemi!"
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not accessible!"
+msgstr "Alıcı-tarafı resim EŞLEMine erişilemez!"
+
+#: LYMessages.c:545
+msgid "No client-side image MAPs are available!"
+msgstr "Hiçbir alıcı-tarafı resim EŞLEMi yok!.."
+
+#: LYMessages.c:546
+msgid "Client-side image MAP is not available!"
+msgstr "Alıcı-tarafı resim EŞLEMi yok!"
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:549
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Seçenekler menüsü için ekran boyu en az 24 satır olmalıdır!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:551
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Seçenekler menüsü için ekran boyu en az 23 satır olmalıdır!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:553
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Seçenekler menüsü için ekran boyu en az 22 satır olmalıdır!"
+
+#: LYMessages.c:555
+msgid "That key requires Advanced User mode."
+msgstr "O tuş, İleri Düzey Kullanıcı kipi gerektirir."
+
+#: LYMessages.c:556
+#, c-format
+msgid "Content-type: %s"
+msgstr "İçerik türü: %s"
+
+#: LYMessages.c:557
+msgid "Command: "
+msgstr "Komut: "
+
+#: LYMessages.c:558
+msgid "Unknown or ambiguous command"
+msgstr "Bilinmeyen ya da belirsiz komut"
+
+#: LYMessages.c:559
+msgid " Version "
+msgstr " Sürüm "
+
+#: LYMessages.c:560
+msgid " first"
+msgstr " ilk"
+
+#: LYMessages.c:561
+msgid ", guessing..."
+msgstr ", tahmin ediliyor..."
+
+#: LYMessages.c:562
+msgid "Permissions for "
+msgstr "Ä°zinlerin sahibi "
+
+#: LYMessages.c:563
+msgid "Select "
+msgstr "Seçiniz "
+
+#: LYMessages.c:564
+msgid "capital letter"
+msgstr "büyük harf"
+
+#: LYMessages.c:565
+msgid " of option line,"
+msgstr "seçenek satırının,"
+
+#: LYMessages.c:566
+msgid " to save,"
+msgstr " kaydetmek için,"
+
+#: LYMessages.c:567
+msgid " to "
+msgstr " hedef "
+
+#: LYMessages.c:568
+msgid " or "
+msgstr " ya da "
+
+#: LYMessages.c:569
+msgid " index"
+msgstr " indeks"
+
+#: LYMessages.c:570
+msgid " to return to Lynx."
+msgstr " Lynx'e dönmek için."
+
+#: LYMessages.c:571
+msgid "Accept Changes"
+msgstr "DeÄŸiÅŸiklikleri kabul et"
+
+#: LYMessages.c:572
+msgid "Reset Changes"
+msgstr "Değişiklikleri Sıfırla"
+
+#: LYMessages.c:573
+msgid "Left Arrow cancels changes"
+msgstr "Sol Ok deÄŸiÅŸiklikleri iptal eder"
+
+#: LYMessages.c:574
+msgid "Save options to disk"
+msgstr "Seçenekleri diske Kaydet"
+
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data."
+msgstr "Girilen veriyi kabul etmek için RETURN'e basınız."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:577
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Girilen veriyi kabul etmek için RETURN'e basınız.  Öntanımlıyı çağırmak için veriyi siliniz."
+
+#: LYMessages.c:578
+msgid "Value accepted!"
+msgstr "DeÄŸer kabul edildi!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Değer kabul edildi! -- UYARI: Lynx, XWINDOWS için ayarlanmıştır!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:582
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Değer kabul edildi! -- UYARI: Lynx, XWINDOWS için ayarlanmamıştır!"
+
+#: LYMessages.c:583
+msgid "You are not allowed to change which editor to use!"
+msgstr "Kullanılacak düzenleyiciyi değiştirmenize izin verilmiyor!"
+
+#: LYMessages.c:584
+msgid "Failed to set DISPLAY variable!"
+msgstr "DISPLAY değişkeninin atanması başarılamadı!"
+
+#: LYMessages.c:585
+msgid "Failed to clear DISPLAY variable!"
+msgstr "DISPLAY değişkeninin silinmesi başarılamadı!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:587
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Yer imi dosyasını değiştirmenize izin verilmiyor!"
+
+#: LYMessages.c:588
+msgid "Terminal does not support color"
+msgstr "Uçbirim renk(li çıktıyı) desteklemiyor"
+
+#: LYMessages.c:589
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "'%s' uçbiriminiz, renk(li çıktıyı) desteklemiyor."
+
+#: LYMessages.c:590
+msgid "Access to dot files is disabled!"
+msgstr "nokta dosyalara erişim devre dışı!.."
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:592
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "Kullanıcı Ajanı dizgesi \"Lynx\" ya da \"L_y_n_x\" içermiyor"
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:594
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Kullanıcı Ajanı'nda \"L_y_n_x\" ya da \"Lynx\" kullanın, değilse kasıtlı aldatmacaya benziyor!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:596
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "Kullanıcı Ajan dizgesinin değiştirilmesi devre dışı!.."
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:598
+msgid "You are not allowed to change this setting."
+msgstr "Bu ayarı değiştirmenize izin verilmiyor."
+
+#: LYMessages.c:599
+msgid "Saving Options..."
+msgstr "Seçenekler Kaydediliyor..."
+
+#: LYMessages.c:600
+msgid "Options saved!"
+msgstr "Seçenekler kaydedildi!"
+
+#: LYMessages.c:601
+msgid "Unable to save Options!"
+msgstr "Seçenekler kaydedilemedi!"
+
+#: LYMessages.c:602
+msgid " 'r' to return to Lynx "
+msgstr " Lynx'e dönmek için 'r' "
+
+#: LYMessages.c:603
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " kaydetmek için '>', ya da Lynx'e dönmek için 'r' "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:605
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Değeri değiştirmek için herhangi bir tuşa, kabul etmek için RETURNe basınız."
+
+#: LYMessages.c:606
+msgid "Error uncompressing temporary file!"
+msgstr "Geçici dosyanın genişletilmesinde hata!"
+
+#: LYMessages.c:607
+msgid "Unsupported URL scheme!"
+msgstr "Desteklenmeyen URL şeması!"
+
+#: LYMessages.c:608
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Desteklenmeyen veri: URL!  Şimdilik SHOWINFO (bilgi-göster) kullanınız."
+
+#: LYMessages.c:609
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Yeniden yönlendirme limiti olan 10 URL'ye erişildi."
+
+#: LYMessages.c:610
+msgid "Illegal redirection URL received from server!"
+msgstr "Sunucudan kuraldışı yeniden yönlendirme URL'si alındı!"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:612
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Sunucu, POST içeriğinin şuraya %d yeniden yönlendirilmesini istedi"
+
+#: LYMessages.c:615
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "Devam et(P), Al(G) ya da Vazgeç(C) "
+
+#: LYMessages.c:616
+msgid "P)roceed, or C)ancel "
+msgstr "Devam et(P) ya da Vazgeç(C) "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "POST içeriğinin yeniden yönlendirilmesi.  Devam et(P), (U)RL'ye bak, Al(G) ya da Vazgeç(C)"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:620
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "POST içeriğinin yeniden yönlendirilmesi.  Devam et(P), (U)RL'ye bak, ya da Vazgeç(C)"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:622
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "POST içerikli formdan belge.  Yeniden gönderilsin mi?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:624
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "POST içeriği %s'e yeniden gönderilsin mi?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:626
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "POST verili belgeden liste.  %s yeniden yüklensin mi?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:628
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "POST eyleminden belge, BAŞLIK anlaşılmamış olabilir.  Devam edilsin mi?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:630
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Form gönderme eylemi POST, KAFA anlaşılmamış olabilir.  Devam edilsin mi?"
+
+#: LYMessages.c:631
+msgid "Proceed without a username and password?"
+msgstr "Kullanıcı adı ve parola olmaksızın devam edecek misiniz?"
+
+#: LYMessages.c:632
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Devam edilsin mi (%s)?"
+
+#: LYMessages.c:633
+msgid "Cannot POST to this host."
+msgstr "Bu makinaya POST yapılamıyor."
+
+#: LYMessages.c:634
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "Bu URL için POST desteklenmiyor - POST verisi yok sayılıyor!"
+
+#: LYMessages.c:635
+msgid "Discarding POST data..."
+msgstr "POST verisi siliniyor..."
+
+#: LYMessages.c:636
+msgid "Document will not be reloaded!"
+msgstr "Belge geri yüklenmeyecek!"
+
+#: LYMessages.c:637
+msgid "Location: "
+msgstr "Konum: "
+
+#: LYMessages.c:638
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' bulunamadı!"
+
+#: LYMessages.c:639
+msgid "Default Bookmark File"
+msgstr "Öntanımlı Yer İmi Dosyası"
+
+#: LYMessages.c:640
+msgid "Screen too small! (8x35 min)"
+msgstr "Ekran çok küçük! (en az 8x35)"
+
+#: LYMessages.c:641
+msgid "Select destination or ^G to Cancel: "
+msgstr "Varış noktasını seçiniz ya da iptal etmek için ^G: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:643
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Alt yer imini seçiniz, menü için '=' ya da iptal etmek için ^G: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:645
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "Bu yer imi dosyasındaki bağ(L)antı çoğaltılsın mı, iptal(C) mi edilsin? (l,c): "
+
+#: LYMessages.c:646
+msgid "Multiple bookmark support is not available."
+msgstr "Çok sayıda yer imi desteği mevcut değil..."
+
+#: LYMessages.c:647
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Yer imini seçiniz (%2$d ekranın %1$d.'si)"
+
+#: LYMessages.c:648
+msgid "       Select Bookmark"
+msgstr "       Yer İmini Seçiniz"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:650
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Yer İmi AÇIKLAMASI ve DOSYAYOLU düzenleniyor (2'nin %d'i)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:652
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Yer İmi AÇIKLAMASI ve DOSYAYOLU düzenleniyor"
+
+#: LYMessages.c:653
+msgid "Letter: "
+msgstr "Mektup: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:656
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "KABUK sözdiziminde giriş dizininiz dışında bir dosyayolu kullanın!"
+
+#: LYMessages.c:658
+msgid "Use a filepath off your home directory!"
+msgstr "Ana dizininiz dışında bir dosyayolu kullanın!"
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:661
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Sayfa başına maksimum link aşıldı!  Yarım sayfa ya da iki satırlık kaydırma kullanın."
+
+#: LYMessages.c:662
+msgid "No previously visited links available!"
+msgstr "Önceden uğranmış link mevcut değil!.."
+
+#: LYMessages.c:663
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Bellek tükendi!  Program yarıda kesildi!"
+
+#: LYMessages.c:664
+msgid "Memory exhausted!  Aborting..."
+msgstr "Bellek tükendi!  Yarıda kesiliyor..."
+
+#: LYMessages.c:665
+msgid "Not enough memory!"
+msgstr "Bellek yetersiz!"
+
+#: LYMessages.c:666
+msgid "Directory/File Manager not available"
+msgstr "Dizin/Dosya Yöneticisi mevcut değil"
+
+#: LYMessages.c:667
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "BASE etiketindeki HREF mutlak bir URL deÄŸil."
+
+#: LYMessages.c:668
+msgid "Location URL is not absolute."
+msgstr "Konum URL'si mutlak deÄŸil..."
+
+#: LYMessages.c:669
+msgid "Refresh URL is not absolute."
+msgstr "Yenile URL'si mutlak deÄŸil..."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:671
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Şuraya gövdeli bir mesaj gönderiyorsunuz: \n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Şuraya bir yorum gönderiyorsunuz:\n"
+"  "
+
+#: LYMessages.c:673
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+"Åžuraya kopya ile:\n"
+"  "
+
+#: LYMessages.c:674
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Åžuraya kopyalar ile:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:676
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Eğer bir mesaj göndermek istemiyorsanız iptal etmek için Ctrl-G kullanın\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Lütfen ya adınızı girin, ya da anonim kalmak için boş bırakın\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:680
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Lütfen bir e-posta adresi ya da benzerini girin\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:682
+msgid " means to contact you, if you desire a response.\n"
+msgstr " eğer bir yanıt arzularsanız, size ulaşma yolları.\n"
+
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Lütfen bir konu satırı giriniz. \n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Mesajınızın KK'sı için lütfen bir e-posta adresi giriniz.\n"
+
+#: LYMessages.c:686
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (Bir kopya istemiyorsanız boş bırakınız.)\n"
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Lütfen mesaj gövdesini gözden geçiriniz:\n"
+"\n"
+
+#: LYMessages.c:688
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"Devam etmek için RETURN'e basınız: "
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Temizlemek için RETURN'e basınız: "
+
+#: LYMessages.c:690
+msgid " Use Control-U to erase the default.\n"
+msgstr " Öntanımlıyı silmek için Control-U kullanınız.\n"
+
+#: LYMessages.c:691
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Lütfen mesajınızı aşağıya giriniz."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:693 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Bitirdiğinizde enter'a basıp, yeni satıra tek bir nokta (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:695 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" koyup tekrar enter'a basınız."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s çerez: %.*s=%.*s  İzin verir misiniz? Evet(Y)/Hayır(N)/Her zaman(A)/Asla(V)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "'%2$s' için geçersiz çerez yöresi=%1$s kabul edilsin mi?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:703
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "'%2$s'in öneki olarak geçersiz çerez yolu=%1$s kabul edilsin mi?"
+
+#: LYMessages.c:704
+msgid "Allowing this cookie."
+msgstr "Bu çereze izin veriliyor."
+
+#: LYMessages.c:705
+msgid "Rejecting this cookie."
+msgstr "Bu çerez reddediliyor."
+
+#: LYMessages.c:706
+msgid "The Cookie Jar is empty."
+msgstr "Çerez kavanozu boş..."
+
+#: LYMessages.c:707
+msgid "The Cache Jar is empty."
+msgstr "Önbellek Kavanozu boş."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:709
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Çerezleri ya da tüm yöreleri silip süpürmek, bir yörenin 'izin' ayarlarını "
+
+#: LYMessages.c:710
+msgid "or to change a domain's 'allow' setting."
+msgstr "değiştirmek için linkleri etkinleştiriniz."
+
+#: LYMessages.c:711
+msgid "(Cookies never allowed.)"
+msgstr "(Çerezlere asla izin verilmiyor.)"
+
+#: LYMessages.c:712
+msgid "(Cookies always allowed.)"
+msgstr "(Çerezlere her zaman izin veriliyor.)"
+
+#: LYMessages.c:713
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Çerezlere bilgi istemi aracılığıyla izin veriliyor.)"
+
+#: LYMessages.c:714
+msgid "(Persistent Cookies.)"
+msgstr "(Kalıcı çerezler.)"
+
+#: LYMessages.c:715
+msgid "(No title.)"
+msgstr "(Başlık yok.)"
+
+#: LYMessages.c:716
+msgid "(No name.)"
+msgstr "(Ä°sim yok.)"
+
+#: LYMessages.c:717
+msgid "(No value.)"
+msgstr "(DeÄŸer yok.)"
+
+#: LYMessages.c:718 src/LYOptions.c:2409
+msgid "None"
+msgstr "Hiçbiri"
+
+#: LYMessages.c:719
+msgid "(End of session.)"
+msgstr "(Oturum sonu.)"
+
+#: LYMessages.c:720
+msgid "Delete this cookie?"
+msgstr "Bu çerez silinsin mi?"
+
+#: LYMessages.c:721
+msgid "The cookie has been eaten!"
+msgstr "Çerez yendi!"
+
+#: LYMessages.c:722
+msgid "Delete this empty domain?"
+msgstr "Bu boş yöre silinsin mi?"
+
+#: LYMessages.c:723
+msgid "The domain has been eaten!"
+msgstr "Yöre yendi!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "Yörenin çerezlerini silin(D), izin verin her zaman(A)/sor(P)/asla(V), ya da vazgeç(C)? "
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:727
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "Yöreyi silin(D), izin verin her zaman(A)/sor(P)/asla(V), ya da vazgeç(C)? "
+
+#: LYMessages.c:728
+msgid "All cookies in the domain have been eaten!"
+msgstr "Yöredeki tüm çerezler yendi!"
+
+#: LYMessages.c:729
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "'%s' yöresine her zaman(A) izin veriliyor."
+
+#: LYMessages.c:730
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "'%s' yöresine asla(V) izin verilmiyor."
+
+#: LYMessages.c:731
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "'%s' yöresine izin vermek için soruluyor(P)."
+
+#: LYMessages.c:732
+msgid "Delete all cookies in this domain?"
+msgstr "Bu yöredeki tüm çerezler silinsin mi?"
+
+#: LYMessages.c:733
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Kavanozdaki tüm çerezler yendi!"
+
+#: LYMessages.c:735
+msgid "Port 19 not permitted in URLs."
+msgstr "Port 19'a URL'lerde izin verilmiyor."
+
+#: LYMessages.c:736
+msgid "Port 25 not permitted in URLs."
+msgstr "Port 25'e URL'lerde izin verilmiyor."
+
+#: LYMessages.c:737
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Port %lu'e URL'lerde izin verilmiyor."
+
+#: LYMessages.c:738
+msgid "URL has a bad port field."
+msgstr "URL'de bozuk port alanı var."
+
+#: LYMessages.c:739
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "HTML bileşenlerinin maksimum içiçe geçme sınırı aşıldı."
+
+#: LYMessages.c:740
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Bozuk kısmi referans!  Yol gösterici noktalar soyuluyor."
+
+#: LYMessages.c:741
+msgid "Trace Log open failed.  Trace off!"
+msgstr "İzleme Kütüğünün açılması başarısız.  İzleme kapatıldı!"
+
+#: LYMessages.c:742
+msgid "Lynx Trace Log"
+msgstr "Lynx İzleme Kütüğü"
+
+#: LYMessages.c:743
+msgid "No trace log has been started for this session."
+msgstr "Bu oturum için hiç izleme kütüğü başlatılmadı."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:745
+msgid "The maximum temporary file count has been reached!"
+msgstr "Maksimum geçici dosya sayısına ulaşıldı!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:747
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Form alanı değeri tampon uzunluğunu aşmakta!  Kuyruğunu kırpın."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:749
+msgid "Modified tail combined with head of form field value."
+msgstr "Form alanı değeri başlığıyla birleşik değiştirilmiş kuyruk."
+
+#. HTFile.c
+#: LYMessages.c:752
+msgid "Directory"
+msgstr "Dizin"
+
+#: LYMessages.c:753
+msgid "Directory browsing is not allowed."
+msgstr "Dizine göz atmaya izin verilmiyor."
+
+#: LYMessages.c:754
+msgid "Selective access is not enabled for this directory"
+msgstr "Bu dizin için seçici erişim etkinleştirilmemiş"
+
+#: LYMessages.c:755
+msgid "Multiformat: directory scan failed."
+msgstr "Çokbiçim: dizin taraması başarısız."
+
+#: LYMessages.c:756
+msgid "This directory is not readable."
+msgstr "Bu dizin okunabilir (durumda) deÄŸil."
+
+#: LYMessages.c:757
+msgid "Can't access requested file."
+msgstr "Ä°stenen dosyaya eriÅŸilemiyor."
+
+#: LYMessages.c:758
+msgid "Could not find suitable representation for transmission."
+msgstr "İletim için uygun temsil (tarzı) bulunamadı."
+
+#: LYMessages.c:759
+msgid "Could not open file for decompression!"
+msgstr "Genişletmek üzere dosya açılamadı!"
+
+#: LYMessages.c:760
+msgid "Files:"
+msgstr "Dosyalar:"
+
+#: LYMessages.c:761
+msgid "Subdirectories:"
+msgstr "Altdizinler:"
+
+#: LYMessages.c:762
+msgid " directory"
+msgstr " dizin"
+
+#: LYMessages.c:763
+msgid "Up to "
+msgstr "Üst sınır "
+
+#: LYMessages.c:764
+msgid "Current directory is "
+msgstr "Mevcut dizin "
+
+#. HTFTP.c
+#: LYMessages.c:767
+msgid "Symbolic Link"
+msgstr "Simgesel Link"
+
+#. HTGopher.c
+#: LYMessages.c:770
+msgid "No response from server!"
+msgstr "Sunucudan yanıt yok!"
+
+#: LYMessages.c:771
+msgid "CSO index"
+msgstr "CSO indeksi"
+
+#: LYMessages.c:772
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Bu, CSO veritabanının aranabilir bir indeksidir.\n"
+
+#: LYMessages.c:773
+msgid "CSO Search Results"
+msgstr "CSO Arama Sonuçları"
+
+#: LYMessages.c:774
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Arama %s'de başarısız\n"
+
+#: LYMessages.c:775
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"'s' tuşuna basıp, anahtar sözcükleri giriniz.\n"
+
+#: LYMessages.c:776
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"Bu, arama yapılabilen bir Gopher indeksidir.\n"
+
+#: LYMessages.c:777
+msgid "Gopher index"
+msgstr "Gopher indeksi"
+
+#: LYMessages.c:778
+msgid "Gopher Menu"
+msgstr "Gopher Menüsü"
+
+#: LYMessages.c:779
+msgid " Search Results"
+msgstr " Arama Sonuçları"
+
+#: LYMessages.c:780
+msgid "Sending CSO/PH request."
+msgstr "CSO/PH istemi gönderiliyor."
+
+#: LYMessages.c:781
+msgid "Sending Gopher request."
+msgstr "Gopher istemi gönderiliyor."
+
+#: LYMessages.c:782
+msgid "CSO/PH request sent; waiting for response."
+msgstr "CSO/PH istemi gönderildi; yanıt bekleniyor."
+
+#: LYMessages.c:783
+msgid "Gopher request sent; waiting for response."
+msgstr "Gopher istemi gönderildi; yanıt bekleniyor."
+
+#: LYMessages.c:784
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Lütfen arama için anahtar sözcükleri giriniz.\n"
+
+#: LYMessages.c:785
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Girdiğiniz anahtar sözcükler, veri tabanında bir kişi adının"
+
+#: LYMessages.c:786
+msgid " person's name in the database.\n"
+msgstr " aranmasını sağlayacak.\n"
+
+#. HTNews.c
+#: LYMessages.c:789
+msgid "Connection closed ???"
+msgstr "Bağlantı kapatıldı mı ???"
+
+#: LYMessages.c:790
+msgid "Cannot open temporary file for news POST."
+msgstr "Haber POSTu için geçici dosya açılamıyor."
+
+#: LYMessages.c:791
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Bu istemci SSL'li habere postalamak için destek içermiyor."
+
+#. HTStyle.c
+#: LYMessages.c:794
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Stil %d `%s' SGML:%s.  Yazıtipi %s %.1f boyut.\n"
+
+#: LYMessages.c:796
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tYaslama=%d, %d sekme. (%.0f önce, %.0f sonra)\n"
+
+#: LYMessages.c:797
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tSekme türü=%d konum %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:800
+msgid "Can't proceed without a username and password."
+msgstr "Kullanıcı adı ve parola olmadan devam edilemez."
+
+#: LYMessages.c:801
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Yetkilendirme yeniden denenemez!  Sunucunun site yöneticisiyle temas kurun."
+
+#: LYMessages.c:802
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Vekil(proxy) yetkilendirmesi yeniden denenemez! Sunucunun site yöneticisiyle temas kurun."
+
+#: LYMessages.c:803
+msgid "Retrying with proxy authorization information."
+msgstr "Vekil(proxy) yetkilendirme bilgisiyle yeniden deneniyor."
+
+#: LYMessages.c:804
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL hatası:%s-Devam edilsin mi?"
+
+#. HTWAIS.c
+#: LYMessages.c:807
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Dönüş mesajı çok büyük."
+
+#: LYMessages.c:808
+msgid "Enter WAIS query: "
+msgstr "WAIS sorgusu giriniz: "
+
+#. Miscellaneous status
+#: LYMessages.c:811
+msgid "Retrying as HTTP0 request."
+msgstr "HTTP0 istemi olarak yeniden deneniyor."
+
+#: LYMessages.c:812
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "%d bayt aktarıldı"
+
+#: LYMessages.c:813
+msgid "Data transfer complete"
+msgstr "Veri aktarımı tamamlandı"
+
+#: LYMessages.c:814
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "%2$s satırdan %1$d.'sinin işlenmesinde hata\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:817
+msgid "Address List Page"
+msgstr "Adres Listesi Sayfası"
+
+#: LYMessages.c:818
+msgid "Bookmark file"
+msgstr "Yer imi dosyası"
+
+#: LYMessages.c:819
+msgid "Configuration Definitions"
+msgstr "Ayar Tanımları"
+
+#: LYMessages.c:820
+msgid "Cookie Jar"
+msgstr "Çerez kavanozu"
+
+#: LYMessages.c:821
+msgid "Current Key Map"
+msgstr "Mevcut TuÅŸ EÅŸlemi"
+
+#: LYMessages.c:822
+msgid "File Management Options"
+msgstr "Dosya Yönetim Seçenekleri"
+
+#: LYMessages.c:823
+msgid "Download Options"
+msgstr "İndirme Seçenekleri"
+
+#: LYMessages.c:824
+msgid "History Page"
+msgstr "Tarihçe Sayfası"
+
+#: LYMessages.c:825
+msgid "Cache Jar"
+msgstr "Önbellek Kavanozu"
+
+#: LYMessages.c:826
+msgid "List Page"
+msgstr "Liste Sayfası"
+
+#: LYMessages.c:827
+msgid "Lynx.cfg Information"
+msgstr "Lynx.cfg Bilgileri"
+
+#: LYMessages.c:828
+msgid "Converted Mosaic Hotlist"
+msgstr "Dönüştürülmüş Mosaic Sıcaklistesi"
+
+#: LYMessages.c:829
+msgid "Options Menu"
+msgstr "Seçenekler Menüsü"
+
+#: LYMessages.c:830
+msgid "File Permission Options"
+msgstr "Dosya İzin Seçenekleri"
+
+#: LYMessages.c:831
+msgid "Printing Options"
+msgstr "Yazdırma Seçenekleri"
+
+#: LYMessages.c:832
+msgid "Information about the current document"
+msgstr "Mevcut dosya bilgileri"
+
+#: LYMessages.c:833
+msgid "Your recent statusline messages"
+msgstr "Son durumsatırı mesajlarınız"
+
+#: LYMessages.c:834
+msgid "Upload Options"
+msgstr "Yükleme Seçenekleri"
+
+#: LYMessages.c:835
+msgid "Visited Links Page"
+msgstr "Uğranmış Linkler Sayfası"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:838
+msgid "See also"
+msgstr "Ayrıca bakınız"
+
+#: LYMessages.c:839
+msgid "your"
+msgstr "sizin"
+
+#: LYMessages.c:840
+msgid "for runtime options"
+msgstr "yürütüm süresi seçenekleri için"
+
+#: LYMessages.c:841
+msgid "compile time options"
+msgstr "derleme süresi seçenekleri"
+
+#: LYMessages.c:842
+msgid "color-style configuration"
+msgstr "renk stili ayarlama"
+
+#: LYMessages.c:843
+msgid "latest release"
+msgstr "son dağıtım"
+
+#: LYMessages.c:844
+msgid "pre-release version"
+msgstr "dağıtım öncesi sürüm"
+
+#: LYMessages.c:845
+msgid "development version"
+msgstr "geliştirme sürümü"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:847
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Aşağıdaki veri, Lynx'in bu kopyasının otomatik ayarlanma/yapılandırma süreci\n"
+"sırasında türetilmiştir.  Yazılım hatası bildirirken, lütfen bu sayfanın bir\n"
+"kopyasını da dahil ediniz."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:851
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+"Aşağıdaki veri, Lynx'in bu kopyası yapılandırılırken otomatik-ayarlanmış\n"
+"derleme süresi tanımları olarak kullanılmıştır."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:856
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "..Oluştur(C)  İndir(D)  Düzenle(E)  Tam menü(F)  Değiştir(M)  Çıkart(R)  İşaretle(T)  Yükle(U)     \n"
+
+#: LYMessages.c:857
+msgid "Failed to obtain status of current link!"
+msgstr "Mevcut linkin durumu elde edilemedi!"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:860
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Özel URL yalnızca güncel Dosya İzin menüsünden geçerlidir!"
+
+#: LYMessages.c:864
+msgid "External support is currently disabled."
+msgstr "Harici destek halen devre dışı..."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:868
+msgid "Changing working-directory is currently disabled."
+msgstr "Çalışma dizinini değiştirme şu an devre dışı."
+
+#: LYMessages.c:869
+msgid "Linewrap OFF!"
+msgstr "Satırsarma KAPALI!"
+
+#: LYMessages.c:870
+msgid "Linewrap ON!"
+msgstr "Satırsarma AÇIK!"
+
+#: LYMessages.c:871
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "İçice geçmiş-tablo ayrıştırma KAPATILDI!  Yeniden yükleniyor..."
+
+#: LYMessages.c:872
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "İçice geçmiş-tablo ayrıştırma AÇILDI!  Yeniden yükleniyor..."
+
+#: LYMessages.c:873
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Satır-sarma etkinken kaydırma (shifting) devre dışıdır"
+
+#: LYMessages.c:874
+msgid "Trace not supported"
+msgstr "Ä°z(leme) desteklenmiyor"
+
+#: LYMessages.c:795
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tGirinti: ilk satır=%.0f diğerleri=%.0f, Yükseklik=%.1f Alt çıkıntı=%.1f\n"
+
+#.
+#. * Set up the message for the username prompt, and then issue the
+#. * prompt.  The default username is included in the call to the
+#. * prompting function, but the password is NULL-ed and always replaced.
+#. * - FM
+#.
+#: WWW/Library/Implementation/HTAABrow.c:634
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "%2$s '%3$s%4$s'deki '%1$s' için kullanıcı adı:"
+
+#: WWW/Library/Implementation/HTAABrow.c:904
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Bu istemci şema için vekil(proxy) yetkilendirme bilgisi oluşturmayı bilmiyor"
+
+#: WWW/Library/Implementation/HTAABrow.c:983
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Bu istemci şema için yetkilendirme bilgisi oluşturmayı bilmiyor"
+
+#: WWW/Library/Implementation/HTAABrow.c:1093
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Geçersiz başlık '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1198
+msgid "Proxy authorization required -- retrying"
+msgstr "Vekil(proxy) yetkilendirmesi gerekli -- yeniden deneniyor"
+
+#: WWW/Library/Implementation/HTAABrow.c:1256
+msgid "Access without authorization denied -- retrying"
+msgstr "Yetkilendirilmeden eriÅŸim reddedildi -- yeniden deneniyor"
+
+#: WWW/Library/Implementation/HTAccess.c:698
+msgid "Access forbidden by rule"
+msgstr "Erişim kuralla yasaklanmış"
+
+#: WWW/Library/Implementation/HTAccess.c:793
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Önbellekte POST içerikli belge bulunmadı.  Yeniden gönderilsin mi?"
+
+#: WWW/Library/Implementation/HTAccess.c:949
+msgid "Loading failed, use a previous copy."
+msgstr "Yükleme başarısız, önceki bir kopyayı kullanın."
+
+#: WWW/Library/Implementation/HTAccess.c:1058 src/GridText.c:8867
+msgid "Loading incomplete."
+msgstr "Yükleme tamamlanmadı."
+
+#: WWW/Library/Implementation/HTAccess.c:1089
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAcess: Yürürlükten kalkmış yük rutini tarafından soket ya da dosya numarası döndü!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1091
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAcess: Dahili yazılım hatası.  Lütfen lynx-dev@nongnu.org adresine bildiriniz!\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1092
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Dönen durum: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1098 src/LYMainLoop.c:8050
+msgid "Can't Access"
+msgstr "EriÅŸilemiyor"
+
+#: WWW/Library/Implementation/HTAccess.c:1106
+msgid "Unable to access document."
+msgstr "Belgeye eriÅŸilemiyor."
+
+#: WWW/Library/Implementation/HTFTP.c:849
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "%s@%s kullanıcısı için parola giriniz:"
+
+#: WWW/Library/Implementation/HTFTP.c:877
+msgid "Unable to connect to FTP host."
+msgstr "FTP makinasına bağlanılamadı."
+
+#: WWW/Library/Implementation/HTFTP.c:1158
+msgid "close master socket"
+msgstr "ana soketi kapatınız"
+
+#: WWW/Library/Implementation/HTFTP.c:1220
+msgid "socket for master socket"
+msgstr "ana soket için soket"
+
+#: WWW/Library/Implementation/HTFTP.c:2986
+msgid "Receiving FTP directory."
+msgstr "FTP dizini alınıyor."
+
+#: WWW/Library/Implementation/HTFTP.c:3122
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "%d bayt aktarıldı (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3480
+msgid "connect for data"
+msgstr "veri için bağlan"
+
+#: WWW/Library/Implementation/HTFTP.c:4141
+msgid "Receiving FTP file."
+msgstr "FTP dosyası alınıyor"
+
+#: WWW/Library/Implementation/HTFinger.c:278
+msgid "Could not set up finger connection."
+msgstr "Finger bağlantısı sağlanamıyor."
+
+#: WWW/Library/Implementation/HTFinger.c:325
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Veri yüklenemiyor (finger URL'sinde site adı yok)"
+
+#: WWW/Library/Implementation/HTFinger.c:329
+msgid "Invalid port number - will only use port 79!"
+msgstr "Geçersiz port no - yalnızca port 79 kullanılacak!"
+
+#: WWW/Library/Implementation/HTFinger.c:395
+msgid "Could not access finger host."
+msgstr "Finger makinasına erişilemedi."
+
+#: WWW/Library/Implementation/HTFinger.c:403
+msgid "No response from finger server."
+msgstr "Finger sunucusundan yanıt yok."
+
+#: WWW/Library/Implementation/HTNews.c:421
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "'%s' adlı haber makinası için kullanıcı adı:"
+
+#: WWW/Library/Implementation/HTNews.c:474
+msgid "Change username?"
+msgstr "Kullanıcı adı değiştirilsin mi?"
+
+#: WWW/Library/Implementation/HTNews.c:478
+msgid "Username:"
+msgstr "Kullanıcı adı:"
+
+#: WWW/Library/Implementation/HTNews.c:503
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "'%s' adlı haber makinası için parola:"
+
+#: WWW/Library/Implementation/HTNews.c:586
+msgid "Change password?"
+msgstr "Parola deÄŸiÅŸtirilsin mi?"
+
+#: WWW/Library/Implementation/HTNews.c:1707
+#, c-format
+msgid "No matches for: %s"
+msgstr "%s için eşleşme yok..."
+
+#: WWW/Library/Implementation/HTNews.c:1757
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Bu grupta hiç mesaj yok.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1769
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Bu erimde hiç mesaj yok.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1782
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  %d-%d mesaj"
+
+#: WWW/Library/Implementation/HTNews.c:1805
+msgid "Earlier articles"
+msgstr "Önceki mesajlar"
+
+#: WWW/Library/Implementation/HTNews.c:1818
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Halen %2$s'de yaklaşık %1$d mesaj mevcut, kimlikler şu şekilde:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1880
+msgid "All available articles in "
+msgstr "Tüm mevcut mesajlar "
+
+#: WWW/Library/Implementation/HTNews.c:2094
+msgid "Later articles"
+msgstr "Sonraki mesajlar"
+
+#: WWW/Library/Implementation/HTNews.c:2117
+msgid "Post to "
+msgstr "Kime Gönderilecek "
+
+#: WWW/Library/Implementation/HTNews.c:2338
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Bu istemci SNEWS URL'ler için destek içermiyor."
+
+#: WWW/Library/Implementation/HTNews.c:2545
+msgid "No target for raw text!"
+msgstr "Ham metin için hiç hedef yok!"
+
+#: WWW/Library/Implementation/HTNews.c:2575
+msgid "Connecting to NewsHost ..."
+msgstr "Haber makinasına bağlanılıyor ..."
+
+#: WWW/Library/Implementation/HTNews.c:2627
+#, c-format
+msgid "Could not access %s."
+msgstr "%s'e eriÅŸilemiyor."
+
+#: WWW/Library/Implementation/HTNews.c:2733
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Haber bilgisi okunamıyor.  %.20s adlı haber makinasının yanıtı: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2737
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Haber bilgisi okunamıyor, %s makinasından boş yanıt"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2941
+msgid "Reading list of available newsgroups."
+msgstr "Mevcut haber gruplarının listesi okunuyor."
+
+#: WWW/Library/Implementation/HTNews.c:2962
+msgid "Reading list of articles in newsgroup."
+msgstr "Haber grubundaki mesaj listesi okunuyor."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading news article."
+msgstr "Haber mesajı okunuyor."
+
+#: WWW/Library/Implementation/HTNews.c:2998
+msgid "Sorry, could not load requested news."
+msgstr "Üzgünüm, istenen haber yüklenemedi."
+
+#: WWW/Library/Implementation/HTTCP.c:1286
+msgid "Address has invalid port"
+msgstr "Adres portu geçersiz"
+
+#: WWW/Library/Implementation/HTTCP.c:1362
+msgid "Address length looks invalid"
+msgstr "Adres uzunluğu geçersiz görünüyor"
+
+#: WWW/Library/Implementation/HTTCP.c:1622
+#: WWW/Library/Implementation/HTTCP.c:1640
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "%s adlı karşı makina konumlandırılamıyor."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1637
+#: WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Geçersiz makina adı %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1651
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "%2$s'e %1$s bağlantısı kuruluyor"
+
+#: WWW/Library/Implementation/HTTCP.c:1662
+msgid "socket failed."
+msgstr "soket başarısız."
+
+#: WWW/Library/Implementation/HTTCP.c:1676
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "soket başarısız: aile %d adres %s port %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1700
+msgid "Could not make connection non-blocking."
+msgstr "Bağlantı engelsizleştirilemedi (non-blocking)."
+
+#: WWW/Library/Implementation/HTTCP.c:1768
+msgid "Connection failed (too many retries)."
+msgstr "Bağlantı başarısız (çok sayıda yeniden deneme)."
+
+#: WWW/Library/Implementation/HTTCP.c:1955
+msgid "Could not restore socket to blocking."
+msgstr "Soket engellemeye (blocking) geri yüklenemedi."
+
+#: WWW/Library/Implementation/HTTCP.c:2021
+msgid "Socket read failed (too many tries)."
+msgstr "Soket okuma başarısız (çok sayıda deneme)."
+
+#: WWW/Library/Implementation/HTTP.c:81
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "SSL geriçağırımı:%s, öndoğrulama_tamam=%d, ssl_tamam=%d"
+
+#: WWW/Library/Implementation/HTTP.c:432
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "Adres bir kullanıcı adı içeriyor: %s"
+
+#: WWW/Library/Implementation/HTTP.c:486
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Sertifikayı veren:%s"
+
+#: WWW/Library/Implementation/HTTP.c:673
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Bu istemci HTTPS URL'ler için destek içermiyor."
+
+#: WWW/Library/Implementation/HTTP.c:698
+msgid "Unable to connect to remote host."
+msgstr "Karşı makinaya bağlanılamadı."
+
+#: WWW/Library/Implementation/HTTP.c:730
+msgid "Retrying connection without TLS."
+msgstr "Bağlantı, TLS'siz tekrar deneniyor."
+
+#: WWW/Library/Implementation/HTTP.c:773
+msgid "no issuer was found"
+msgstr "yayınlayıcı bulunamadı"
+
+#: WWW/Library/Implementation/HTTP.c:775
+msgid "issuer is not a CA"
+msgstr "yayınlayıcı bir CA değil"
+
+#: WWW/Library/Implementation/HTTP.c:777
+msgid "the certificate has no known issuer"
+msgstr "sertifikanın bilinen bir yayınlayıcısı yok"
+
+#: WWW/Library/Implementation/HTTP.c:779
+msgid "the certificate has been revoked"
+msgstr "sertifika hükümsüz kılınmış"
+
+#: WWW/Library/Implementation/HTTP.c:781
+msgid "the certificate is not trusted"
+msgstr "sertifikaya güvenilmiyor"
+
+#: WWW/Library/Implementation/HTTP.c:855
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "%1$s'e doğrulanmış bağlantı (cert=%2$s)"
+
+#: WWW/Library/Implementation/HTTP.c:903 WWW/Library/Implementation/HTTP.c:945
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "%s'e bağlantı doğrulandı (konu=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:975
+msgid "Can't find common name in certificate"
+msgstr "Sertifikada ortak ad bulunamadı"
+
+#: WWW/Library/Implementation/HTTP.c:978
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL hatası:makina(%s)!=sert(%s)-Devam edilsin mi?"
+
+#: WWW/Library/Implementation/HTTP.c:991
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "%s'e DOĞRULANMAMIŞ bağlantı (cert=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:1000
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Güvenli %d-bit %s (%s) HTTP bağlantısı"
+
+#: WWW/Library/Implementation/HTTP.c:1467
+msgid "Sending HTTP request."
+msgstr "HTTP istemi gönderiliyor."
+
+#: WWW/Library/Implementation/HTTP.c:1509
+msgid "Unexpected network write error; connection aborted."
+msgstr "Umulmadık ağa yazma hatası; bağlantı yarıda kesildi."
+
+#: WWW/Library/Implementation/HTTP.c:1515
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP istemi gönderildi; yanıt bekleniyor."
+
+#: WWW/Library/Implementation/HTTP.c:1588
+#: WWW/Library/Implementation/HTTP.c:1598
+msgid "Unexpected network read error; connection aborted."
+msgstr "Umulmadık ağa yazma hatası; bağlantı yarıda kesildi."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1800
+msgid "Got unexpected Informational Status."
+msgstr "Umulmadık Bilgisel Durum alındı."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1834
+msgid "Request fulfilled.  Reset Content."
+msgstr "İstem karşılandı.  İçeriği temizle."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1949
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Umulmadık 304 Değiştirilmedi durumu alındı."
+
+#: WWW/Library/Implementation/HTTP.c:2012
+msgid "Redirection of POST content requires user approval."
+msgstr "POST içeriğinin yeniden yönlendirilmesi kullanıcı onayı gerektirir."
+
+#: WWW/Library/Implementation/HTTP.c:2027
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "POST içeriği mevcut.  Kalıcı Yeniden Yönlendirmeye Geçici muamelesi yapılıyor.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2071
+msgid "Retrying with access authorization information."
+msgstr "EriÅŸim yetkilendirme bilgisiyle yeniden deneniyor."
+
+#: WWW/Library/Implementation/HTTP.c:2083
+msgid "Show the 401 message body?"
+msgstr "401 mesaj gövdesi gösterilsin mi?"
+
+#: WWW/Library/Implementation/HTTP.c:2127
+msgid "Show the 407 message body?"
+msgstr "407 mesaj gövdesi gösterilsin mi?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2227
+msgid "Unknown status reply from server!"
+msgstr "Sunucudan bilinmeyen durum yanıtı!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "uzak %s oturumu:"
+
+#: WWW/Library/Implementation/HTWAIS.c:163
+msgid "Could not connect to WAIS server."
+msgstr "WAIS sunucusuna bağlanılamadı."
+
+#: WWW/Library/Implementation/HTWAIS.c:171
+msgid "Could not open WAIS connection for reading."
+msgstr "Okuma için WAIS bağlantısı açılamadı."
+
+#: WWW/Library/Implementation/HTWAIS.c:193
+msgid "Diagnostic code is "
+msgstr "Tanısal kod: "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Ä°ndeks "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " aşağıdaki ilgili %d öğe%s(y)i içerir \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Herbir girdiden sonraki ilk sayı, onun göreceli skoru, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "ikincisiyse, öğedeki satır sayısıdır."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (bozuk dosya adı)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(bozuk belge no)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Kısa Başlık kaydı, görüntülenemiyor)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Uzun Başlık kaydı, görüntülenemiyor\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Metin kaydı\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Başlık kaydı, görüntülenemiyor\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Kod kaydı, görüntülenemiyor\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "WAIS URL'de sözdizimi hatası"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS Ä°ndeksi)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS Ä°ndeksi: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Bu, WAIS indeksini aramak için "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " bir linktir.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Ara(s) komutunu girip arama sözcüklerini belirleyiniz.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (ÅŸurada "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "WAIS Araması \""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" ÅŸurada: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: İstem çok büyük."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "WAIS veritabanı aranıyor..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Arama kesildi."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "WAIS belgesinin biçemi dönüştürülemiyor"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: İstem çok uzun."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "WAIS belgesi getiriliyor..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Hiç metin dönmedi!\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:301
+msgid " NOT GIVEN in source file; "
+msgstr " kaynak dosyada VERÄ°LMEDÄ°; "
+
+#: WWW/Library/Implementation/HTWSRC.c:324
+msgid " WAIS source file"
+msgstr " WAIS kaynak dosyası"
+
+#: WWW/Library/Implementation/HTWSRC.c:331
+msgid " description"
+msgstr " açıklama"
+
+#: WWW/Library/Implementation/HTWSRC.c:341
+msgid "Access links"
+msgstr "EriÅŸim linkleri"
+
+#: WWW/Library/Implementation/HTWSRC.c:362
+msgid "Direct access"
+msgstr "Dolaysız erişim"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:365
+msgid " (or via proxy server, if defined)"
+msgstr " (ya da tanımlıysa, vekil(proxy) sunucu aracılığıyla)"
+
+#: WWW/Library/Implementation/HTWSRC.c:380
+msgid "Maintainer"
+msgstr "Yönetici"
+
+#: WWW/Library/Implementation/HTWSRC.c:388
+msgid "Host"
+msgstr "Bilgisayar"
+
+#: src/GridText.c:699
+msgid "Memory exhausted, display interrupted!"
+msgstr "Bellek tükendi, görüntü kesildi!"
+
+#: src/GridText.c:704
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Bellek tükendi, aktarım kesilecek!"
+
+#: src/GridText.c:3685
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** BELLEK TÃœKENDÄ° ***"
+
+#: src/GridText.c:6146
+msgid "text entry field"
+msgstr "metin giriş alanı"
+
+#: src/GridText.c:6149
+msgid "password entry field"
+msgstr "parola giriş alanı"
+
+#: src/GridText.c:6152
+msgid "checkbox"
+msgstr "onay kutusu"
+
+#: src/GridText.c:6155
+msgid "radio button"
+msgstr "radyo düğmesi"
+
+#: src/GridText.c:6158
+msgid "submit button"
+msgstr "gönderme düğmesi"
+
+#: src/GridText.c:6161
+msgid "reset button"
+msgstr "temizleme düğmesi"
+
+#: src/GridText.c:6164
+msgid "script button"
+msgstr "betik düğmesi"
+
+#: src/GridText.c:6167
+msgid "popup menu"
+msgstr "açılır menü"
+
+#: src/GridText.c:6170
+msgid "hidden form field"
+msgstr "gizli form alanı"
+
+#: src/GridText.c:6173
+msgid "text entry area"
+msgstr "metin giriş alanı"
+
+#: src/GridText.c:6176
+msgid "range entry field"
+msgstr "erim giriş alanı"
+
+#: src/GridText.c:6179
+msgid "file entry field"
+msgstr "dosya giriş alanı"
+
+#: src/GridText.c:6182
+msgid "text-submit field"
+msgstr "metin-gönderme alanı"
+
+#: src/GridText.c:6185
+msgid "image-submit button"
+msgstr "resim-gönderme alanı"
+
+#: src/GridText.c:6188
+msgid "keygen field"
+msgstr "keygen alanı"
+
+#: src/GridText.c:6191
+msgid "unknown form field"
+msgstr "bilinmeyen form alanı"
+
+#: src/GridText.c:6211 src/GridText.c:6218 src/LYList.c:248
+msgid "unknown field or link"
+msgstr "bilinmeyen alan ya da link"
+
+#: src/GridText.c:10649
+msgid "Can't open file for uploading"
+msgstr "Yüklemek için dosya açılamıyor."
+
+#: src/GridText.c:11837
+#, c-format
+msgid "Submitting %s"
+msgstr "%s gönderiliyor"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12894
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Takılma Saptandı: TextAnchor struct bozuk - sonlandırmanız önerilir!"
+
+#. don't show previous state
+#: src/GridText.c:13056
+msgid "Wrap lines to fit displayed area?"
+msgstr "Görüntülenen alana sığmak üzere satırlar sarmalansın mı?"
+
+#: src/GridText.c:13696
+msgid "Very long lines have been truncated!"
+msgstr "Çok uzun satırların sonundan kırpıldı!"
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:364 src/LYShowInfo.c:368
+msgid "bytes"
+msgstr "bayt"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:303 src/HTAlert.c:329
+#, c-format
+msgid "Read %s of data"
+msgstr "Verinin %s'i okundu"
+
+#: src/HTAlert.c:326
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "%2$s verinin %1$s'i okundu"
+
+#: src/HTAlert.c:335
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/sn"
+
+#: src/HTAlert.c:347
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (%s süresince durakladı)"
+
+#: src/HTAlert.c:351
+#, c-format
+msgid ", ETA %s"
+msgstr ", ETA %s"
+
+#: src/HTAlert.c:373
+msgid " (Press 'z' to abort)"
+msgstr " (Yarıda kesmek için 'z'ye basınız)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:411 src/HTAlert.c:459
+msgid "yes"
+msgstr "evet"
+
+#: src/HTAlert.c:414 src/HTAlert.c:460
+msgid "no"
+msgstr "hayır"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:913
+msgid "Y/N/A/V"
+msgstr "(E/H/Daima/Asla)"
+
+#: src/HTML.c:5915
+msgid "Description:"
+msgstr "Açıklama:"
+
+#: src/HTML.c:5920
+msgid "(none)"
+msgstr "(hiçbiri)"
+
+#: src/HTML.c:5924
+msgid "Filepath:"
+msgstr "Dosya yolu:"
+
+#: src/HTML.c:5930
+msgid "(unknown)"
+msgstr "(bilinmiyor)"
+
+#: src/HTML.c:7370
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Belgede yalnızca gizli linkler var.  Listele(l) komutunu kullanınız."
+
+#: src/HTML.c:7869
+msgid "Source cache error - disk full?"
+msgstr "Kaynak önbellek hatası - disk tamamen dolu mu?"
+
+#: src/HTML.c:7882
+msgid "Source cache error - not enough memory!"
+msgstr "Kaynak önbellek hatası - bellek yetersiz!"
+
+#: src/LYBookmark.c:167
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Bu dosya, X Mosaic sıcak listesinin bir HTML temsilidir.\n"
+"     Kullanımdan kalkmış ya da geçersiz linkler, yer imi çıkartma\n"
+"     komutu kullanılarak çıkartılabilir, bu genellikle 'R' tuşudur, ancak\n"
+"     siz ya da sistem yöneticiniz tarafından yeniden eşlemlenmiş olabilir."
+
+#: src/LYBookmark.c:376
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Linkleri 'R' tuÅŸuyla silebilirsiniz<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:379
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     Linkleri yer imi çıkartma komutunu kullanarak silebilirsiniz.  Bu genellikle\n"
+"     'R' tuşudur, ancak siz ya da sistem yöneticiniz tarafından yeniden\n"
+"    .eÅŸlemlenmiÅŸ olabilir."
+
+#: src/LYBookmark.c:383
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Bu dosya, kullanımdan kalkmış, geçersiz linkleri silmek ya da sıralarını\n"
+"     değiştirmek üzere standart bir metin düzenleyiciyle de düzenlenebilir."
+
+#: src/LYBookmark.c:386
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Not: Eğer bu dosyayı elle düzenlerseniz\n"
+"      satır içlerindeki biçimi değiştirmemeli, ya da\n"
+"      baÅŸka HTML belirteci eklememelisiniz.\n"
+"      Herbir linkin tek satır olarak kaydedildiğine emin olun."
+
+#: src/LYBookmark.c:684
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Dosya, bu oturum boyunca %s'den kurtarılabilir"
+
+#: src/LYCgi.c:158
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "\"%s\"'i çalıştırmak ister misiniz?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:273
+msgid "Unable to access cgi script"
+msgstr "cgi betiÄŸine eriÅŸilemiyor"
+
+#: src/LYCgi.c:707 src/LYCgi.c:710
+msgid "Good Advice"
+msgstr "İyi Öneri"
+
+#: src/LYCgi.c:714
+msgid "An excellent http server for VMS is available via"
+msgstr "VMS için kusursuz bir http sunucusu, şu link aracılığıyla"
+
+#: src/LYCgi.c:721
+msgid "this link"
+msgstr "temin edilebilir"
+
+#: src/LYCgi.c:725
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Güncel CGI betik desteğini sağlar.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "İşkesmesi aracılığıyla kapanıyor:"
+
+#: src/LYCookie.c:2537
+msgid "(from a previous session)"
+msgstr "(önceki bir oturumdan)"
+
+#: src/LYCookie.c:2598
+msgid "Maximum Gobble Date:"
+msgstr "Maksimum Silip Süpürme Tarihi:"
+
+#: src/LYCookie.c:2637
+msgid "Internal"
+msgstr "Dahili"
+
+#: src/LYCookie.c:2638
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "cookie_domain_flag_set hatası, program yarıda kesiliyor"
+
+#: src/LYCurses.c:1297
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Uçbirim ön değer ataması başarısız - bilinmeyen uçbirim türü?"
+
+#: src/LYCurses.c:1780
+msgid "Terminal ="
+msgstr "Uçbirim ="
+
+#: src/LYCurses.c:1784
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Bu programla bir vt100, 200 vb. uçbirim kullanmalısınız."
+
+#: src/LYCurses.c:1833
+msgid "Your Terminal type is unknown!"
+msgstr "Uçbirim türünüz bilinmiyor!"
+
+#: src/LYCurses.c:1834
+msgid "Enter a terminal type:"
+msgstr "Bir uçbirim türü giriniz:"
+
+#: src/LYCurses.c:1848
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "UÇBİRİM TÜRÜ AYARI"
+
+#: src/LYCurses.c:2398
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"%2$s Sür. %1$s'de ölümcül bir hata oluştu\n"
+
+#: src/LYCurses.c:2401
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Lütfen sistem yöneticinize bir yazılım hatasını doğrulatmak için, ve\n"
+"eğer doğrulanırsa lynx-dev listesine bildirmesi için haber veriniz.\n"
+"Hata raporları, soruna yol açan komutun ve/veya URL'nin kısa açıklamasını,\n"
+"işletim sistemi adıyla sürüm numarasını, TCPIP uygulamasını,\n"
+"kapılabildiyse GERİİZSÜRÜMÜnü ve ilgili diğer bilgileri içermelidir.\n"
+
+#: src/LYEdit.c:272
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Düzenleyiciyi başlatmada hata, %s"
+
+#: src/LYEdit.c:275
+msgid "Editor killed by signal"
+msgstr "Düzenleyici sinyalle öldürüldü"
+
+#: src/LYEdit.c:280
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "Düzenleyici %s hata durumuyla döndü."
+
+#: src/LYDownload.c:509
+msgid "Downloaded link:"
+msgstr "Ä°ndirilmiÅŸ link:"
+
+#: src/LYDownload.c:514
+msgid "Suggested file name:"
+msgstr "Önerilen dosya adı:"
+
+#: src/LYDownload.c:519
+msgid "Standard download options:"
+msgstr "Standart indirme seçenekleri:"
+
+#: src/LYDownload.c:520
+msgid "Download options:"
+msgstr "İndirme seçenekleri:"
+
+#: src/LYDownload.c:536
+msgid "Save to disk"
+msgstr "Diske kaydet"
+
+#: src/LYDownload.c:550
+msgid "View temporary file"
+msgstr "Geçici dosyayı görüntüle"
+
+#: src/LYDownload.c:557
+msgid "Save to disk disabled."
+msgstr "Diske kaydetme devre dışı..."
+
+#: src/LYDownload.c:561 src/LYPrint.c:1322
+msgid "Local additions:"
+msgstr "Yerel eklentiler:"
+
+#: src/LYDownload.c:572 src/LYUpload.c:209
+msgid "No Name Given"
+msgstr "Ä°sim VerilmemiÅŸ"
+
+#: src/LYHistory.c:679
+msgid "You selected:"
+msgstr "Seçiminiz:"
+
+#: src/LYHistory.c:703 src/LYHistory.c:932
+msgid "(no address)"
+msgstr "(adres yok)"
+
+#: src/LYHistory.c:707
+msgid " (internal)"
+msgstr " (dahili)"
+
+#: src/LYHistory.c:709
+msgid " (was internal)"
+msgstr " (dahiliydi)"
+
+#: src/LYHistory.c:807
+msgid " (From History)"
+msgstr " (Tarihçe'den)"
+
+#: src/LYHistory.c:852
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Uğradıklarınız (POSTlar, yer imi, menü ve liste dosyaları hariç):"
+
+#: src/LYHistory.c:1154
+msgid "(No messages yet)"
+msgstr "(Henüz hiç mesaj yok)"
+
+#: src/LYLeaks.c:222
+msgid "Invalid pointer detected."
+msgstr "Geçersiz imleyici saptandı."
+
+#: src/LYLeaks.c:224 src/LYLeaks.c:262
+msgid "Sequence:"
+msgstr "Sıra:"
+
+#: src/LYLeaks.c:227 src/LYLeaks.c:265
+msgid "Pointer:"
+msgstr "Ä°mleyici:"
+
+#: src/LYLeaks.c:236 src/LYLeaks.c:243 src/LYLeaks.c:284
+msgid "FileName:"
+msgstr "DosyaAdı:"
+
+#: src/LYLeaks.c:239 src/LYLeaks.c:246 src/LYLeaks.c:287 src/LYLeaks.c:298
+msgid "LineCount:"
+msgstr "SatırSayısı:"
+
+#: src/LYLeaks.c:260
+msgid "Memory leak detected."
+msgstr "Bellek sızıntısı saptandı."
+
+#: src/LYLeaks.c:268
+msgid "Contains:"
+msgstr "İçindekiler:"
+
+#: src/LYLeaks.c:281
+msgid "ByteSize:"
+msgstr "BaytÖlçüsü:"
+
+#: src/LYLeaks.c:295
+msgid "realloced:"
+msgstr "Yeniden özgülenen:"
+
+#: src/LYLeaks.c:316
+msgid "Total memory leakage this run:"
+msgstr "Bu yürütmedeki toplam bellek sızıntısı:"
+
+#: src/LYLeaks.c:320
+msgid "Peak allocation"
+msgstr "Tepe ayırma"
+
+#: src/LYLeaks.c:322
+msgid "Bytes allocated"
+msgstr "Ayrılan bayt"
+
+#: src/LYLeaks.c:324
+msgid "Total mallocs"
+msgstr "Ayrılan toplam bellek"
+
+#: src/LYLeaks.c:326
+msgid "Total frees"
+msgstr "Toplam boÅŸ"
+
+#: src/LYList.c:88
+msgid "References in "
+msgstr "Bu belgedeki "
+
+#: src/LYList.c:91
+msgid "this document:"
+msgstr "referanslar:"
+
+#: src/LYList.c:97
+msgid "Visible links:"
+msgstr "Görünür linkler:"
+
+#: src/LYList.c:201 src/LYList.c:312
+msgid "Hidden links:"
+msgstr "Gizli Linkler:"
+
+#: src/LYList.c:349
+msgid "References"
+msgstr "Referanslar"
+
+#: src/LYList.c:353
+msgid "Visible links"
+msgstr "Görünür linkler"
+
+#: src/LYLocal.c:289
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "'%s'in durumu alınamıyor."
+
+#: src/LYLocal.c:354
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "Seçilen öğe bir dosya ya da dizin değil!  İstem yoksayıldı."
+
+#: src/LYLocal.c:455
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Sistem hatası nedeniyle %s yapılamıyor!"
+
+#: src/LYLocal.c:489
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "Sistem hatası nedeniyle olası %s başarısızlığı!"
+
+#: src/LYLocal.c:554 src/LYLocal.c:577
+#, c-format
+msgid "remove %s"
+msgstr "%s'i çıkart"
+
+#: src/LYLocal.c:597
+#, c-format
+msgid "touch %s"
+msgstr "%s'e dokun"
+
+#: src/LYLocal.c:627
+#, c-format
+msgid "move %s to %s"
+msgstr "%s'i %s'e taşı"
+
+#: src/LYLocal.c:675
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "O isimde bir dizin zaten var!  İstem yoksayıldı."
+
+#: src/LYLocal.c:677
+msgid "There is already a file with that name!  Request ignored."
+msgstr "O isimde bir dosya zaten var!  İstem yoksayıldı."
+
+#: src/LYLocal.c:679
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Belirtilmiş isim zaten kullanımda!  İstem yoksayıldı."
+
+#: src/LYLocal.c:691
+msgid "Destination has different owner!  Request denied."
+msgstr "Varış yerinin sahibi farklı!  İstem reddedildi."
+
+#: src/LYLocal.c:694
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Varış yeri geçerli bir dizin değil!  İstem reddedildi."
+
+#: src/LYLocal.c:710
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Çıkış ve varış konumları aynı!  İstem yoksayıldı!"
+
+#: src/LYLocal.c:734
+msgid "Remove all tagged files and directories?"
+msgstr "Bütün işaretlenmiş dosya ve dizinler çıkartılsın mı?"
+
+#: src/LYLocal.c:807
+msgid "Enter new location for tagged items: "
+msgstr "İşaretlenmiş öğeler için yeni konum giriniz: "
+
+#: src/LYLocal.c:905
+msgid "Enter new name for directory: "
+msgstr "Dizin için yeni isim giriniz: "
+
+#: src/LYLocal.c:907
+msgid "Enter new name for file: "
+msgstr "Dosya için yeni isim giriniz: "
+
+#: src/LYLocal.c:919
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Kuraldışı karakter (yol-ayracı) bulundu! İstem yoksayıldı."
+
+#: src/LYLocal.c:969
+msgid "Enter new location for directory: "
+msgstr "Dizin için yeni konum giriniz: "
+
+#: src/LYLocal.c:971
+msgid "Enter new location for file: "
+msgstr "Dosya için yeni konum giriniz: "
+
+#: src/LYLocal.c:998
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Umulmadık aksaklık - izleme yolu ayracı bulunamadı"
+
+#: src/LYLocal.c:1060
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Ä°sim(n), konum(l) ya da izin(p) deÄŸiÅŸtirme: "
+
+#: src/LYLocal.c:1062
+msgid "Modify name or location (n or l): "
+msgstr "Ä°sim(n) ya da konum(l) deÄŸiÅŸtirme: "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1091
+msgid "This feature not yet implemented!"
+msgstr "Bu nitelik daha tamamlanmadı!"
+
+#: src/LYLocal.c:1112
+msgid "Enter name of file to create: "
+msgstr "Oluşturulacak dosyanın adını giriniz: "
+
+#: src/LYLocal.c:1115 src/LYLocal.c:1152
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Kuraldışı yeniden yönlendirme \"//\" bulundu! İstem yoksayıldı."
+
+#: src/LYLocal.c:1149
+msgid "Enter name for new directory: "
+msgstr "Yeni dizin için isim giriniz: "
+
+#: src/LYLocal.c:1190
+msgid "Create file or directory (f or d): "
+msgstr "Dosya(f) ya da dizin(d) oluÅŸtur: "
+
+#: src/LYLocal.c:1232
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "'%s' dizini çıkartılsın mı?"
+
+#: src/LYLocal.c:1235
+msgid "Remove directory?"
+msgstr "Dizin çıkarılsın mı?"
+
+#: src/LYLocal.c:1240
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "'%s' dosyası çıkartılsın mı?"
+
+#: src/LYLocal.c:1242
+msgid "Remove file?"
+msgstr "Dosya çıkartılsın mı?"
+
+#: src/LYLocal.c:1247
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "'%s' simgesel linki çıkartılsın mı?"
+
+#: src/LYLocal.c:1249
+msgid "Remove symbolic link?"
+msgstr "Simgesel link çıkartılsın mı?"
+
+#: src/LYLocal.c:1347
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Üzgünüm, daha UNIX-dışı dosyalara nasıl izin verileceği bilinmiyor."
+
+#: src/LYLocal.c:1376
+msgid "Unable to open permit options file"
+msgstr "İzin seçenekleri dosyası açılamıyor"
+
+#: src/LYLocal.c:1404
+msgid "Specify permissions below:"
+msgstr "İzinleri aşağıda belirtin:"
+
+#: src/LYLocal.c:1405 src/LYShowInfo.c:265
+msgid "Owner:"
+msgstr "Sahip:"
+
+#: src/LYLocal.c:1421
+msgid "Group"
+msgstr "Grup"
+
+#: src/LYLocal.c:1437
+msgid "Others:"
+msgstr "DiÄŸerleri:"
+
+#: src/LYLocal.c:1455
+msgid "form to permit"
+msgstr "izin verilecek form"
+
+#: src/LYLocal.c:1551
+msgid "Invalid mode format."
+msgstr "Kip biçemi geçersiz."
+
+#: src/LYLocal.c:1555
+msgid "Invalid syntax format."
+msgstr "Betik biçemi geçersiz."
+
+#: src/LYLocal.c:1742
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Uyarı!  UUçözülmüş dosya, Lynx'i başlattığınız dizinde yer alacak."
+
+#: src/LYLocal.c:1932
+msgid "NULL URL pointer"
+msgstr "BOÅž URL imleyici"
+
+#: src/LYLocal.c:2014
+#, c-format
+msgid "Executing %s "
+msgstr "%s icra ediliyor "
+
+#: src/LYLocal.c:2017
+msgid "Executing system command. This might take a while."
+msgstr "Sistem komutu icra ediliyor. Bu, bir süre alabilir."
+
+#: src/LYLocal.c:2091
+msgid "Current directory:"
+msgstr "Mevcut dizin:"
+
+#: src/LYLocal.c:2094 src/LYLocal.c:2112
+msgid "Current selection:"
+msgstr "Mevcut seçim:"
+
+#: src/LYLocal.c:2098
+msgid "Nothing currently selected."
+msgstr "Halen hiçbir şey.seçili değil."
+
+#: src/LYLocal.c:2114
+msgid "tagged item:"
+msgstr "işaretlenmiş öğe:"
+
+#: src/LYLocal.c:2115
+msgid "tagged items:"
+msgstr "işaretlenmiş öğeler:"
+
+#: src/LYLocal.c:2215 src/LYLocal.c:2224
+msgid "Illegal filename; request ignored."
+msgstr "Kuraldışı dosya adı; istem yoksayıldı."
+
+#. directory not writable
+#: src/LYLocal.c:2322 src/LYLocal.c:2381
+msgid "Install in the selected directory not permitted."
+msgstr "Seçili dizine kurmaya izin verilmiyor."
+
+#: src/LYLocal.c:2377
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "Seçili öğe bir dizin değil! İstem yoksayıldı."
+
+#: src/LYLocal.c:2386
+msgid "Just a moment, ..."
+msgstr "Bir dakikacık, ..."
+
+#: src/LYLocal.c:2403
+msgid "Error building install args"
+msgstr "Kurma arg'larını yapılandırmada hata"
+
+#: src/LYLocal.c:2418 src/LYLocal.c:2449
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Kaynak ve hedef aynı: %s"
+
+#: src/LYLocal.c:2425 src/LYLocal.c:2456
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Zaten hedef dizinde: %s"
+
+#: src/LYLocal.c:2474
+msgid "Installation complete"
+msgstr "Kurma tamamlandı"
+
+#: src/LYLocal.c:2666
+msgid "Temporary URL or list would be too long."
+msgstr "Geçici URL ya da liste çok uzun olacaktı."
+
+#: src/LYMail.c:544
+msgid "Sending"
+msgstr "Gönderiliyor"
+
+#: src/LYMail.c:1030
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "%s :?: %s bağı\n"
+
+#: src/LYMail.c:1032
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "\"%s\" çağrıldı \n"
+
+#: src/LYMail.c:1033
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "\"%2$s\" adlı dosyanın içinde \"%1$s\" olup\n"
+
+#: src/LYMail.c:1034
+msgid "was requested but was not available."
+msgstr "istendi, fakat temin edilemedi."
+
+#: src/LYMail.c:1035
+msgid "Thought you might want to know."
+msgstr "Bilmek isteyeceğinizi sandım."
+
+#: src/LYMail.c:1037
+msgid "This message was automatically generated by"
+msgstr "Bu mesajı otomatik olarak oluşturan"
+
+#: src/LYMail.c:1751
+msgid "No system mailer configured"
+msgstr "Ayarlanmış sistem postacısı yok"
+
+#: src/LYMain.c:1049
+msgid "No Winsock found, sorry."
+msgstr "Winsock bulunamadı, üzgünüm."
+
+#: src/LYMain.c:1240
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "Geçerli bir TMP ya da TEMP alanı tanımlamalısınız!"
+
+#: src/LYMain.c:1293 src/LYMainLoop.c:5260
+msgid "No such directory"
+msgstr "Böyle bir dizin yok"
+
+#: src/LYMain.c:1487
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Ayarlama dosyası \"%s\" temin edilemiyor.\n"
+"\n"
+
+#: src/LYMain.c:1497
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx karakter kümeleri bildirilmemiş.\n"
+"\n"
+
+#: src/LYMain.c:1526
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx düzenleme eşlemi bildirilmemiş.\n"
+"\n"
+
+#: src/LYMain.c:1608
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx dosyası \"%s\" temin edilemiyor.\n"
+"\n"
+
+#: src/LYMain.c:1683
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "Standart girdiden %d karakter yok sayıldı.\n"
+
+#: src/LYMain.c:1685
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Veriyolu girdisinin nasıl halledileceğini belirtmek için \"-stdin\" ya da \"-\" kullanın.\n"
+
+#: src/LYMain.c:1843
+msgid "Warning:"
+msgstr "Uyarı:"
+
+#: src/LYMain.c:2408
+msgid "persistent cookies state will be changed in next session only."
+msgstr "kalıcı çerezler durumu, yalnızca gelecek oturumda değişecek."
+
+#: src/LYMain.c:2644 src/LYMain.c:2689
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: tanınmayan karakterkümesi=%s yoksayılıyor\n"
+
+#: src/LYMain.c:3208
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Sürüm %s (%s)"
+
+#: src/LYMain.c:3246
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "%s %s %s üzerine yapılandırıldı\n"
+
+#: src/LYMain.c:3268
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "Telif hakları Lynx Geliştirme Grubu,"
+
+#: src/LYMain.c:3269
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "Kansas Üniversitesi, CERN ve diğer katılımcılar tarafından (saklı) tutulmaktadır."
+
+#: src/LYMain.c:3270
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "GNU Genel Kamu Lisansı (Sürüm 2) altında dağıtılmaktadır."
+
+#: src/LYMain.c:3271
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Daha fazla bilgi için http://lynx.isc.org/ ve çevrim içi yardıma bakınız."
+
+#: src/LYMain.c:4104
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "KULLANIM: %s [seçenekler] [dosya]\n"
+
+#: src/LYMain.c:4105
+#, c-format
+msgid "Options are:\n"
+msgstr "Seçenekler:\n"
+
+#: src/LYMain.c:4406
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Geçersiz Seçenek: %s\n"
+
+#: src/LYMainLoop.c:575
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Dahili hata: Geçersiz fare linki %d!"
+
+#: src/LYMainLoop.c:696 src/LYMainLoop.c:5282
+msgid "A URL specified by the user"
+msgstr "Kullanıcı tarafından belirtilmiş bir URL"
+
+#: src/LYMainLoop.c:1148
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Enctip çok parçalı/form verisi henüz desteklenmiyor!  Gönderilemez."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3177
+msgid "Help Screen"
+msgstr "Yardım Ekranı"
+
+#: src/LYMainLoop.c:3308
+msgid "System Index"
+msgstr "Sistem Ä°ndeksi"
+
+#: src/LYMainLoop.c:3556
+#, c-format
+msgid "Query parameter %d: "
+msgstr "Sorgu parametresi %d: "
+
+#: src/LYMainLoop.c:3781 src/LYMainLoop.c:5558
+msgid "Entry into main screen"
+msgstr "Ana ekrana giriÅŸ"
+
+#: src/LYMainLoop.c:4039
+msgid "No next document present"
+msgstr "Sonrasında başka belge yok"
+
+#: src/LYMainLoop.c:4334
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "bu belge için karakterkümesi özgün şekilde belirtilmiştir, üzgünüm..."
+
+#: src/LYMainLoop.c:5240
+msgid "cd to:"
+msgstr "hangi dizine cd:"
+
+#: src/LYMainLoop.c:5263
+msgid "A component of path is not a directory"
+msgstr "Yolun bileÅŸenlerinden biri dizin deÄŸildir"
+
+#: src/LYMainLoop.c:5266
+msgid "failed to change directory"
+msgstr "dizin değiştirme başarısız"
+
+#: src/LYMainLoop.c:6496
+msgid "Reparsing document under current settings..."
+msgstr "Mevcut ayarlarla belge yeniden ayrıştırılıyor..."
+
+#: src/LYMainLoop.c:6790
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Ölümcül hata - çıktı dosyası %s açılamıyor\n"
+
+#: src/LYMainLoop.c:7128
+msgid "TABLE center enable."
+msgstr "TABLO ortala(mayı) etkinleştir."
+
+#: src/LYMainLoop.c:7131
+msgid "TABLE center disable."
+msgstr "TABLO ortala(mayı) devre dışı bırak."
+
+#: src/LYMainLoop.c:7211
+msgid "Current URL is empty."
+msgstr "Mevcut URL boÅŸ."
+
+#: src/LYMainLoop.c:7213 src/LYUtils.c:1881
+msgid "Copy to clipboard failed."
+msgstr "Panoya kopyalama başarısız."
+
+#: src/LYMainLoop.c:7215
+msgid "Document URL put to clipboard."
+msgstr "Belge URL'sini panoya koy."
+
+#: src/LYMainLoop.c:7217
+msgid "Link URL put to clipboard."
+msgstr "Link URL'sini panoya koy."
+
+#: src/LYMainLoop.c:7244
+msgid "No URL in the clipboard."
+msgstr "Panoda URL yok."
+
+#: src/LYMainLoop.c:7936 src/LYMainLoop.c:8105
+msgid "-index-"
+msgstr "-indeks-"
+
+#: src/LYMainLoop.c:8045
+msgid "lynx: Can't access startfile"
+msgstr "lynx: başlat dosyasına (startfile) erişilemiyor"
+
+#: src/LYMainLoop.c:8057
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: Başlat dosyası bulunamıyor ya da html-metin ya da salt-metin değil"
+
+#: src/LYMainLoop.c:8058
+msgid "      Exiting..."
+msgstr "      Kapanıyor..."
+
+#: src/LYMainLoop.c:8099
+msgid "-more-"
+msgstr "-devam-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Postalayacağınız yer/kişi:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" Lütfen Gönderen: hanesi için e-posta adresinizi giriniz\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Lütfen Konu: hanesini giriniz ya da düzenleyiniz\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Lütfen Kurum: hanesini giriniz ya da düzenleyiniz\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" Lütfen mesajınızı aşağıya giriniz."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Mesajda orijinal metin yok!"
+
+#: src/LYOptions.c:770
+msgid "review/edit B)ookmarks files"
+msgstr "Yer imi(B) dosyalarını gözden geçir/düzenle"
+
+#: src/LYOptions.c:772
+msgid "B)ookmark file: "
+msgstr "Yer imi(B) dosyası: "
+
+#: src/LYOptions.c:2120 src/LYOptions.c:2127
+msgid "ON"
+msgstr "AÇIK"
+
+#. verbose_img variable
+#: src/LYOptions.c:2121 src/LYOptions.c:2126 src/LYOptions.c:2289
+#: src/LYOptions.c:2300
+msgid "OFF"
+msgstr "KAPALI"
+
+#: src/LYOptions.c:2122
+msgid "NEVER"
+msgstr "ASLA"
+
+#: src/LYOptions.c:2123
+msgid "ALWAYS"
+msgstr "HER ZAMAN"
+
+#: src/LYOptions.c:2139 src/LYOptions.c:2281
+msgid "ignore"
+msgstr "yoksay"
+
+#: src/LYOptions.c:2140
+msgid "ask user"
+msgstr "kullanıcıya sor"
+
+#: src/LYOptions.c:2141
+msgid "accept all"
+msgstr "tümünü kabul et"
+
+#: src/LYOptions.c:2153
+msgid "ALWAYS OFF"
+msgstr "HER ZAMAN KAPALI"
+
+#: src/LYOptions.c:2154
+msgid "FOR LOCAL FILES ONLY"
+msgstr "YALNIZCA YEREL DOSYALAR İÇİN"
+
+#: src/LYOptions.c:2156
+msgid "ALWAYS ON"
+msgstr "HER ZAMAN AÇIK"
+
+#: src/LYOptions.c:2168
+msgid "Numbers act as arrows"
+msgstr "Rakamlar oklar gibi davranırlar"
+
+#: src/LYOptions.c:2170
+msgid "Links are numbered"
+msgstr "Linkler numaralandı"
+
+#: src/LYOptions.c:2173
+msgid "Links and form fields are numbered"
+msgstr "Linkler ve form alanları numaralandı"
+
+#: src/LYOptions.c:2176
+msgid "Form fields are numbered"
+msgstr "Form alanları numaralandı"
+
+#: src/LYOptions.c:2191
+msgid "Case insensitive"
+msgstr "Büyük/küçük harf duyarsız"
+
+#: src/LYOptions.c:2192
+msgid "Case sensitive"
+msgstr "Büyük/küçük harf duyarlı"
+
+#: src/LYOptions.c:2216
+msgid "prompt normally"
+msgstr "normal bilgi istemi"
+
+#: src/LYOptions.c:2217
+msgid "force yes-response"
+msgstr "evet-yanıtına zorla"
+
+#: src/LYOptions.c:2218
+msgid "force no-response"
+msgstr "hayır-yanıtına zorla"
+
+#: src/LYOptions.c:2236
+msgid "Novice"
+msgstr "Acemi"
+
+#: src/LYOptions.c:2237
+msgid "Intermediate"
+msgstr "Orta düzey"
+
+#: src/LYOptions.c:2238
+msgid "Advanced"
+msgstr "İleri düzey"
+
+#: src/LYOptions.c:2247
+msgid "By First Visit"
+msgstr "Ä°lk Ziyaretle"
+
+#: src/LYOptions.c:2249
+msgid "By First Visit Reversed"
+msgstr "Ä°lk Ziyaretle-Tersten"
+
+#: src/LYOptions.c:2250
+msgid "As Visit Tree"
+msgstr "Ziyaret Ağacı Gibi"
+
+#: src/LYOptions.c:2251
+msgid "By Last Visit"
+msgstr "Son Ziyaretle"
+
+#: src/LYOptions.c:2253
+msgid "By Last Visit Reversed"
+msgstr "Son Ziyaretle-Tersten"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2264
+msgid "relaxed (TagSoup mode)"
+msgstr "gevÅŸek (TagSoup kipi)"
+
+#: src/LYOptions.c:2265
+msgid "strict (SortaSGML mode)"
+msgstr "katı (SortaSGML kipi)"
+
+#: src/LYOptions.c:2272
+msgid "Ignore"
+msgstr "Yoksay"
+
+#: src/LYOptions.c:2273
+msgid "Add to trace-file"
+msgstr "İz dosyasına ekle"
+
+#: src/LYOptions.c:2274
+msgid "Add to LYNXMESSAGES"
+msgstr "LYNXMESSAGES'a ekle"
+
+#: src/LYOptions.c:2275
+msgid "Warn, point to trace-file"
+msgstr "Uyar, iz dosyasına yönlendir"
+
+#: src/LYOptions.c:2282
+msgid "as labels"
+msgstr "etiket gibi"
+
+#: src/LYOptions.c:2283
+msgid "as links"
+msgstr "link gibi"
+
+#: src/LYOptions.c:2290
+msgid "show filename"
+msgstr "dosya adını göster"
+
+#: src/LYOptions.c:2301
+msgid "STANDARD"
+msgstr "STANDART"
+
+#: src/LYOptions.c:2302
+msgid "ADVANCED"
+msgstr "Ä°LERÄ° DÃœZEY"
+
+#: src/LYOptions.c:2336
+msgid "Directories first"
+msgstr "Önce dizinler"
+
+#: src/LYOptions.c:2337
+msgid "Files first"
+msgstr "Önce dosyalar"
+
+#: src/LYOptions.c:2338
+msgid "Mixed style"
+msgstr "Karışık stil"
+
+#: src/LYOptions.c:2346 src/LYOptions.c:2366
+msgid "By Name"
+msgstr "Ä°simle"
+
+#: src/LYOptions.c:2347 src/LYOptions.c:2367
+msgid "By Type"
+msgstr "Türle"
+
+#: src/LYOptions.c:2348 src/LYOptions.c:2368
+msgid "By Size"
+msgstr "Boyutla"
+
+#: src/LYOptions.c:2349 src/LYOptions.c:2369
+msgid "By Date"
+msgstr "Tarihle"
+
+#: src/LYOptions.c:2350
+msgid "By Mode"
+msgstr "Kiple"
+
+#: src/LYOptions.c:2352
+msgid "By User"
+msgstr "Kullanıcıyla"
+
+#: src/LYOptions.c:2353
+msgid "By Group"
+msgstr "Grupla"
+
+#: src/LYOptions.c:2378
+msgid "Do not show rate"
+msgstr "Hızı gösterme"
+
+#: src/LYOptions.c:2379 src/LYOptions.c:2380
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "%s/sn hızını göster"
+
+#: src/LYOptions.c:2382 src/LYOptions.c:2383
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "%s/sn'yi göster, ETA"
+
+#: src/LYOptions.c:2386
+msgid "Show progressbar"
+msgstr "Gelişim çubuğunu göster"
+
+#: src/LYOptions.c:2398
+msgid "Accept lynx's internal types"
+msgstr "Lynx'in dahili türlerini kabul et"
+
+#: src/LYOptions.c:2399
+msgid "Also accept lynx.cfg's types"
+msgstr "Lynx cfg'nin türlerini de kabul et"
+
+#: src/LYOptions.c:2400
+msgid "Also accept user's types"
+msgstr "Kullanıcının türlerini de kabul et"
+
+#: src/LYOptions.c:2401
+msgid "Also accept system's types"
+msgstr "Sistemin türlerini de kabul et"
+
+#: src/LYOptions.c:2402
+msgid "Accept all types"
+msgstr "Tüm türleri kabul et"
+
+#: src/LYOptions.c:2411
+msgid "gzip"
+msgstr "gzip"
+
+#: src/LYOptions.c:2412
+msgid "deflate"
+msgstr "söndür"
+
+#: src/LYOptions.c:2415
+msgid "compress"
+msgstr "sıkıştır"
+
+#: src/LYOptions.c:2418
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2420
+msgid "All"
+msgstr "Tümü"
+
+#: src/LYOptions.c:2699 src/LYOptions.c:2728
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Seçenekler menüsünü çağırmak için %s kullanınız!"
+
+#: src/LYOptions.c:3541
+msgid "(options marked with (!) will not be saved)"
+msgstr "((!) ile işaretlenmiş seçenekler kaydedilmeyecek)"
+
+#: src/LYOptions.c:3549
+msgid "General Preferences"
+msgstr "Genel Tercihler"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3553
+msgid "User mode"
+msgstr "Kullanıcı kipi"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3559
+msgid "Editor"
+msgstr "Düzenleyici"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3564
+msgid "Type of Search"
+msgstr "Arama Tipi"
+
+#: src/LYOptions.c:3569
+msgid "Security and Privacy"
+msgstr "Güvenlik ve Mahremiyet"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3573
+msgid "Cookies"
+msgstr "Çerezler"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3587
+msgid "Invalid-Cookie Prompting"
+msgstr "Geçersiz Çerez Bilgi İstemi"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3594
+msgid "SSL Prompting"
+msgstr "SSL Bilgi Ä°stemi"
+
+#: src/LYOptions.c:3600
+msgid "Keyboard Input"
+msgstr "Klavye Girdisi"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3604
+msgid "Keypad mode"
+msgstr "Mini klavye(keypad) kipi"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3610
+msgid "Emacs keys"
+msgstr "Emacs tuşları"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3616
+msgid "VI keys"
+msgstr "VI tuşları"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3623
+msgid "Line edit style"
+msgstr "Satır düzenleme stili"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3635
+msgid "Keyboard layout"
+msgstr "Klavye yerleÅŸimi"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3649
+msgid "Display and Character Set"
+msgstr "Görüntüleme ve Karakter Kümesi"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3654
+msgid "Use locale-based character set"
+msgstr "Yerel tabanlı karakter kümesini kullan"
+
+#: src/LYOptions.c:3661
+msgid "Use HTML5 charset replacements"
+msgstr "HTML5 karakter setini kullan"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3667
+msgid "Display character set"
+msgstr "Karakter kümesini görüntüle"
+
+#: src/LYOptions.c:3698
+msgid "Assumed document character set"
+msgstr "Varsayılan belge karakter kümesi"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3718
+msgid "CJK mode"
+msgstr "CJK kipi"
+
+#: src/LYOptions.c:3720
+msgid "Raw 8-bit"
+msgstr "Ham 8-bit"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3728
+msgid "X Display"
+msgstr "X Görüntüleme"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3734
+msgid "Document Appearance"
+msgstr "Belge Görünümü"
+
+#: src/LYOptions.c:3740
+msgid "Show color"
+msgstr "Renkleri göster"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3764
+msgid "Show cursor"
+msgstr "İmleci göster"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3770
+msgid "Underline links"
+msgstr "Linklerin altı çizili"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3777
+msgid "Show scrollbar"
+msgstr "Kaydırma çubuğunu göster"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3784
+msgid "Popups for select fields"
+msgstr "Seçme alanlar için açılırlar(popups)"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3790
+msgid "HTML error recovery"
+msgstr "HTML hata kurtarma"
+
+#. Bad HTML messages: SELECT
+#: src/LYOptions.c:3796
+msgid "Bad HTML messages"
+msgstr "Kötü HTML mesajları"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3802
+msgid "Show images"
+msgstr "Resimleri göster"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3816
+msgid "Verbose images"
+msgstr "Resimleri dillendir"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3824
+msgid "Headers Transferred to Remote Servers"
+msgstr "Başlıklar Karşı Sunuculara Aktarıldı"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3828
+msgid "Personal mail address"
+msgstr "KiÅŸisel mektup adresi"
+
+#: src/LYOptions.c:3833
+msgid "Personal name for mail"
+msgstr "Posta için kişisel ad"
+
+#: src/LYOptions.c:3840
+msgid "Password for anonymous ftp"
+msgstr "Anonim ftp için parola"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3846
+msgid "Preferred media type"
+msgstr "Tercih edilen ortam türü"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3852
+msgid "Preferred encoding"
+msgstr "Tercih edilen kodlama"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3858
+msgid "Preferred document character set"
+msgstr "Tercih edilen belge karakter kümesi"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3863
+msgid "Preferred document language"
+msgstr "Tercih edilen belge dili"
+
+#: src/LYOptions.c:3869
+msgid "Send User-Agent header"
+msgstr "Kullanıcı-Ajanı başlığını gönder"
+
+#: src/LYOptions.c:3871
+msgid "User-Agent header"
+msgstr "Kullanıcı-Ajanı başlığı"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3879
+msgid "Listing and Accessing Files"
+msgstr "Dosya Listeleme ve EriÅŸim"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3884
+msgid "Use Passive FTP"
+msgstr "Edilgen FTP Kullan"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3890
+msgid "FTP sort criteria"
+msgstr "FTP sıralama ölçütleri"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3898
+msgid "Local directory sort criteria"
+msgstr "Yerel dizin sıralama ölçütleri"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3904
+msgid "Local directory sort order"
+msgstr "Yerel dizin sıralama ölçütleri"
+
+#: src/LYOptions.c:3913
+msgid "Show dot files"
+msgstr "Nokta dosyaları göster"
+
+#: src/LYOptions.c:3921
+msgid "Execution links"
+msgstr "Ä°cra linkleri"
+
+#: src/LYOptions.c:3939
+msgid "Pause when showing message"
+msgstr "Mesajı gösterirken durakla"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3946
+msgid "Show transfer rate"
+msgstr "Aktarım hızını göster"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3966
+msgid "Special Files and Screens"
+msgstr "Özel Dosyalar ve Ekranlar"
+
+#: src/LYOptions.c:3971
+msgid "Multi-bookmarks"
+msgstr "Çoklu-yer imleri"
+
+#: src/LYOptions.c:3979
+msgid "Review/edit Bookmarks files"
+msgstr "Yer İmi dosyalarını gözden geçir/düzenle"
+
+#: src/LYOptions.c:3982
+msgid "Goto multi-bookmark menu"
+msgstr "Çoklu-yer imi menüsüne git"
+
+#: src/LYOptions.c:3984
+msgid "Bookmarks file"
+msgstr "Yer İmleri dosyası"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3991
+msgid "Auto Session"
+msgstr "Otomatik Oturum"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3997
+msgid "Session file"
+msgstr "Oturum dosyası"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:4003
+msgid "Visited Pages"
+msgstr "UÄŸranan Sayfalar"
+
+#: src/LYOptions.c:4008
+msgid "View the file "
+msgstr "Dosyayı görüntüle"
+
+#: src/LYPrint.c:947
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Yazdırma işi tamamlandı.\n"
+
+#: src/LYPrint.c:1274
+msgid "Document:"
+msgstr "Belge:"
+
+#: src/LYPrint.c:1275
+msgid "Number of lines:"
+msgstr "Satır sayısı:"
+
+#: src/LYPrint.c:1276
+msgid "Number of pages:"
+msgstr "Sayfa sayısı:"
+
+#: src/LYPrint.c:1277
+msgid "pages"
+msgstr "sayfa"
+
+#: src/LYPrint.c:1277
+msgid "page"
+msgstr "sayfa"
+
+#: src/LYPrint.c:1278
+msgid "(approximately)"
+msgstr "(yaklaşık)"
+
+#: src/LYPrint.c:1285
+msgid "Some print functions have been disabled!"
+msgstr "Bazı yazdırma işlevleri devre dışı!.."
+
+#: src/LYPrint.c:1289
+msgid "Standard print options:"
+msgstr "Standart yazdırma seçenekleri:"
+
+#: src/LYPrint.c:1290
+msgid "Print options:"
+msgstr "Yazdırma seçenekleri:"
+
+#: src/LYPrint.c:1297
+msgid "Save to a local file"
+msgstr "Yerel bir dosyaya kaydet"
+
+#: src/LYPrint.c:1299
+msgid "Save to disk disabled"
+msgstr "Diske kaydetme devre dışı"
+
+#: src/LYPrint.c:1306
+msgid "Mail the file"
+msgstr "Dosyayı postala"
+
+#: src/LYPrint.c:1313
+msgid "Print to the screen"
+msgstr "Ekrana yazdır"
+
+#: src/LYPrint.c:1318
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "vt100 uçbiriminize bağlı bir yazıcıya yazdırın"
+
+#: src/LYReadCFG.c:441
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Ayarlama dosyasında RENK ayrıştırma Betik Hatası:\n"
+"Satır şu şekilde olmalıdır:\n"
+"RENK:TAMSAYI:ÖNPLAN:ARKAPLAN\n"
+"\n"
+"Burada ÖNPLAN ve ARKAPLAN özel dizgeler olan\n"
+"'nocolor' ya da 'default' (ya da) 'dan biri olmalıdır\n"
+
+#: src/LYReadCFG.c:454
+msgid "Offending line:"
+msgstr "İncitici satır:"
+
+#: src/LYReadCFG.c:757
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "%s'in %s'e tuş yeniden eşlemlemesi %s kez başarısız\n"
+
+#: src/LYReadCFG.c:764
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "%s'in %s'e tuş yeniden eşlemlemesi başarısız\n"
+
+#: src/LYReadCFG.c:785
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "%2$s tuşu için geçersiz satır-düzenleyici seçimi %1$s, tümü seçiliyor\n"
+
+#: src/LYReadCFG.c:810 src/LYReadCFG.c:822
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr "%s (0x%x) tuşu için 0x%x'e satır-düzenleyici bağlantısı kurulması %s kez başarısız\n"
+
+#: src/LYReadCFG.c:826
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "%s (0x%x) tuşu için satır-düzenleyici bağlantısı kurulması %s kez başarısız\n"
+
+#: src/LYReadCFG.c:922
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: başlayamıyor, CERN kuralları dosyası %s temin edilemiyor\n"
+
+#: src/LYReadCFG.c:923
+msgid "(no name)"
+msgstr "(isimsiz)"
+
+#: src/LYReadCFG.c:2044
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "lynx.cfg içermeleri, %d'den çok içiçe geçmiş -- belki bir döngü olmasın?\n"
+
+#: src/LYReadCFG.c:2046
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Son kalkışılan içerme '%s' idi,\n"
+
+#: src/LYReadCFG.c:2047
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "'%s'den içerilmişti.\n"
+
+#: src/LYReadCFG.c:2450 src/LYReadCFG.c:2463 src/LYReadCFG.c:2521
+msgid "The following is read from your lynx.cfg file."
+msgstr "Aşağıdaki, lynx.cfg dosyanızdan okunmuştur."
+
+#: src/LYReadCFG.c:2451 src/LYReadCFG.c:2464
+msgid "Please read the distribution"
+msgstr "Lütfen daha fazla yorum için"
+
+#: src/LYReadCFG.c:2457 src/LYReadCFG.c:2467
+msgid "for more comments."
+msgstr "dağıtımı okuyunuz."
+
+#: src/LYReadCFG.c:2503
+msgid "RELOAD THE CHANGES"
+msgstr "DEĞİŞİKLİKLERİ YENİDEN YÜKLE"
+
+#: src/LYReadCFG.c:2511
+msgid "Your primary configuration"
+msgstr "Birincil ayarlarınız"
+
+#: src/LYShowInfo.c:177
+msgid "Directory that you are currently viewing"
+msgstr "Halen görüntülediğiniz dizin"
+
+#: src/LYShowInfo.c:180
+msgid "Name:"
+msgstr "Ä°sim:"
+
+#: src/LYShowInfo.c:183
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:197
+msgid "Directory that you have currently selected"
+msgstr "Halen seçilmiş dizin"
+
+#: src/LYShowInfo.c:199
+msgid "File that you have currently selected"
+msgstr "Halen seçilmiş dosya"
+
+#: src/LYShowInfo.c:202
+msgid "Symbolic link that you have currently selected"
+msgstr "Halen seçilmiş simgesel link"
+
+#: src/LYShowInfo.c:205
+msgid "Item that you have currently selected"
+msgstr "Halen seçilmiş öğe"
+
+#: src/LYShowInfo.c:207
+msgid "Full name:"
+msgstr "Tam isim:"
+
+#: src/LYShowInfo.c:217
+msgid "Unable to follow link"
+msgstr "Link takip edilemiyor"
+
+#: src/LYShowInfo.c:219
+msgid "Points to file:"
+msgstr "Ä°mlediÄŸi dosya:"
+
+#: src/LYShowInfo.c:224
+msgid "Name of owner:"
+msgstr "Sahibinin adı:"
+
+#: src/LYShowInfo.c:227
+msgid "Group name:"
+msgstr "Grup adı:"
+
+#: src/LYShowInfo.c:229
+msgid "File size:"
+msgstr "Dosya boyutu:"
+
+#: src/LYShowInfo.c:231
+msgid "(bytes)"
+msgstr "(bayt)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:236
+msgid "Creation date:"
+msgstr "OluÅŸturulma tarihi:"
+
+#: src/LYShowInfo.c:239
+msgid "Last modified:"
+msgstr "Son deÄŸiÅŸiklik:"
+
+#: src/LYShowInfo.c:242
+msgid "Last accessed:"
+msgstr "Son eriÅŸim:"
+
+#: src/LYShowInfo.c:248
+msgid "Access Permissions"
+msgstr "EriÅŸim Ä°zinleri"
+
+#: src/LYShowInfo.c:283
+msgid "Group:"
+msgstr "Grup:"
+
+#: src/LYShowInfo.c:303
+msgid "World:"
+msgstr "Dünya:"
+
+#: src/LYShowInfo.c:310
+msgid "File that you are currently viewing"
+msgstr "Halen görüntülediğiniz dosya"
+
+#: src/LYShowInfo.c:318 src/LYShowInfo.c:422
+msgid "Linkname:"
+msgstr "Link adı:"
+
+#: src/LYShowInfo.c:324 src/LYShowInfo.c:339
+msgid "Charset:"
+msgstr "Karakter Kümesi:"
+
+#: src/LYShowInfo.c:338
+msgid "(assumed)"
+msgstr "(varsayıldı)"
+
+#: src/LYShowInfo.c:345
+msgid "Server:"
+msgstr "Sunucu:"
+
+#: src/LYShowInfo.c:348
+msgid "Date:"
+msgstr "Tarih:"
+
+#: src/LYShowInfo.c:351
+msgid "Last Mod:"
+msgstr "Son Kip:"
+
+#: src/LYShowInfo.c:356
+msgid "Expires:"
+msgstr "Zamanaşımı tarihi:"
+
+#: src/LYShowInfo.c:359
+msgid "Cache-Control:"
+msgstr "Önbellek-Konrolü:"
+
+#: src/LYShowInfo.c:362
+msgid "Content-Length:"
+msgstr "İçerik Uzunluğu:"
+
+#: src/LYShowInfo.c:366
+msgid "Length:"
+msgstr "Uzunluk:"
+
+#: src/LYShowInfo.c:371
+msgid "Language:"
+msgstr "Dil:"
+
+#: src/LYShowInfo.c:378
+msgid "Post Data:"
+msgstr "Post Verisi:"
+
+#: src/LYShowInfo.c:381
+msgid "Post Content Type:"
+msgstr "Post İçerik Tipi:"
+
+#: src/LYShowInfo.c:384
+msgid "Owner(s):"
+msgstr "Sahip(ler):"
+
+#: src/LYShowInfo.c:389
+msgid "size:"
+msgstr "boyut:"
+
+#: src/LYShowInfo.c:391
+msgid "lines"
+msgstr "satır"
+
+#: src/LYShowInfo.c:395
+msgid "forms mode"
+msgstr "form kipi"
+
+#: src/LYShowInfo.c:397
+msgid "source"
+msgstr "kaynak"
+
+#: src/LYShowInfo.c:398
+msgid "normal"
+msgstr "normal"
+
+#: src/LYShowInfo.c:400
+msgid ", safe"
+msgstr ", güvenli"
+
+#: src/LYShowInfo.c:402
+msgid ", via internal link"
+msgstr ", dahili link aracılığıyla"
+
+#: src/LYShowInfo.c:407
+msgid ", no-cache"
+msgstr ", ön belleksiz"
+
+#: src/LYShowInfo.c:409
+msgid ", ISMAP script"
+msgstr ", ISMAP betiÄŸi"
+
+#: src/LYShowInfo.c:411
+msgid ", bookmark file"
+msgstr ", yer imi dosyası"
+
+#: src/LYShowInfo.c:415
+msgid "mode:"
+msgstr "kip:"
+
+#: src/LYShowInfo.c:421
+msgid "Link that you currently have selected"
+msgstr "Halen seçmiş olduğunuz link"
+
+#: src/LYShowInfo.c:430
+msgid "Method:"
+msgstr "Yöntem:"
+
+#: src/LYShowInfo.c:434
+msgid "Enctype:"
+msgstr "Enctipi:"
+
+#: src/LYShowInfo.c:440
+msgid "Action:"
+msgstr "Eylem:"
+
+#: src/LYShowInfo.c:446
+msgid "(Form field)"
+msgstr "(Form alanı)"
+
+#: src/LYShowInfo.c:457
+msgid "No Links on the current page"
+msgstr "Mevcut sayfada link yok"
+
+#: src/LYShowInfo.c:463
+msgid "Server Headers:"
+msgstr "Sunucu Başlıkları:"
+
+#: src/LYStyle.c:331
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"lss dosyası tarz ayrıştırma Betik Hatası:\n"
+"[%s]\n"
+"Satır şu şekilde olmalıdır:\n"
+"NESNE:MONO:RENK (yani em:kalın:açıkmavi:beyaz)\n"
+"burada NESNE EM,STRONG,B,I,U,BLINK vs'den biri olmalıdır.\n"
+"\n"
+
+#: src/LYTraversal.c:111
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "yeniden yapılandırabilmeniz için işte bir tarihçe yığını listesi"
+
+#: src/LYUpload.c:77
+msgid "ERROR! - upload command is misconfigured"
+msgstr "HATA! - yükle komutu yanlış ayarlanmış..."
+
+#: src/LYUpload.c:98
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Kuraldışı yeniden yönlendirme \"  /\" bulundu! İstem yoksayıldı."
+
+#: src/LYUpload.c:101
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Kuraldışı karakter \"/\" bulundu! İstem yoksayıldı."
+
+#: src/LYUpload.c:104
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "\"~\" kullanan kuraldışı yeniden yönlendirme bulundu! İstem yoksayıldı."
+
+#: src/LYUpload.c:157
+msgid "Unable to upload file."
+msgstr "Dosya yüklenemiyor."
+
+#: src/LYUpload.c:199
+msgid "Upload To:"
+msgstr "Yüklenecek yer:"
+
+#: src/LYUpload.c:200
+msgid "Upload options:"
+msgstr "Yükleme seçenekleri:"
+
+#: src/LYUtils.c:1883
+msgid "Download document URL put to clipboard."
+msgstr "Belge indirme URL'sini panoya koy."
+
+#: src/LYUtils.c:2668
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Bu URL şeması için umulmadık erişim protokolü."
+
+#: src/LYUtils.c:3492
+msgid "Too many tempfiles"
+msgstr "Çok sayıda geçici dosya"
+
+#: src/LYUtils.c:3792
+msgid "unknown restriction"
+msgstr "bilinmeyen kısıtlama"
+
+#: src/LYUtils.c:3823
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Hiçbir kısıtlama kurulmamış.\n"
+
+#: src/LYUtils.c:3826
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Kurulmuş kısıtlamalar:\n"
+
+#: src/LYUtils.c:5212
+msgid "Cannot find HOME directory"
+msgstr "EV dizini bulunamıyor"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "Normalde devre dışıdır.  Bkz. lynx.cfg'de ENABLE_LYNXRC\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"accept_all_cookies, arzu edildiğinde kullanıcının Lynx'e tüm çerezleri\n"
+"otomatikman kabul etmesini söylemesini sağlar.  Öntanımlı \"FALSE\" (yanlış)\n"
+"olup, her çerez için sorulmasını sağlar.  Tüm çerezleri kabul etmek için\n"
+"accept_all_cookies'i \"TRUE\" (doğru)ya ayarlayın.\n"
+
+#: src/LYrcFile.c:333
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"anonftp_password ile kullanıcı Lynx'e kişisel e-posta adresini\n"
+"anonim ftp için parola olarak kullanmasını bildirir.  Eğer bir değer verilmezse,\n"
+"Lynx kişisel e-posta adresini kullanacaktır.  anonftp_password'ü başka bir değere kurmayı seçebilirsiniz.\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file, kullanıcının daha sonraki bir tarihte kolay erişim\n"
+"için linkleri içine yapıştırdığı öntanımlı yer imi dosyasının adı\n"
+"ve konumunu belirtir.\n"
+
+#: src/LYrcFile.c:347
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"case_sensitive_searching \"on\" (açık)a ayarlanmışsa, kullanıcı 's' ya da '/' tuşlarıyla\n"
+"bir arama başlattığında, arama büyük/küçük harfe duyarSIZ olmak yerine duyarlı\n"
+"olarak yapılacaktır.  Öntanımlısı genellikle \"off\" (kapalı)dır.\n"
+
+#: src/LYrcFile.c:352
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"character_set tanımı 8 bit karakterlerin uçbiriminizde gösterilmesini\n"
+"denetler.  Eğer ekranınızda 8 bit karakterler doğru şekilde\n"
+"gösterilmiyorsa başka bir 8 bit kümesi ya da 7 bit karakter\n"
+"yaklaşıklıklarını deneyebilirsiniz.\n"
+"Mevcut geçerli karakter kümeleri şunlardır:\n"
+
+#: src/LYrcFile.c:359
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"cookie_accept_domains ve cookie_reject_domains, Lynx'in sırasıyla, otomatikman\n"
+"tüm çerezleri kabul ya da reddedeceği yörelerin virgülle ayrılmış\n"
+"listeleridir.  Eğer bir yöre, her iki listede de belirtildiyse, reddetme\n"
+"öncelik taşır.  accept_all_cookies parametresi, burada yapılan tüm ayarları\n"
+"geçersiz kılar.\n"
+
+#: src/LYrcFile.c:367
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"cookie_file kalıcı çerezlerin okunacağı dosyayı belirler.\n"
+"Öntanımlısı ~/'dir"
+
+#: src/LYrcFile.c:372
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains ve\n"
+"cookie_query_invalid_domains, hangi yörenin hangi derecede geçerlilik\n"
+"kontrolüne uğrayacağını belirleyen virgülle ayrılmış yöre listeleridir.\n"
+"Eğer bir yöre katı(strict) kontrole tabi tutuluyorsa, RFC2109'a katı\n"
+"uyumluluk uygulanacaktır.  Gevşek(loose) kontrollü bir yöreye, geçersiz\n"
+"yol ya da yöre öznitelikli çerez kurma izni verilir.  Tüm yöreler, öntanımlı\n"
+"olarak, geçersiz bir yol ya da yöre (özniteliğini) kullanıcıya sorgulatır.\n"
+
+#: src/LYrcFile.c:386
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"dir_list_order (eğer mevcutsa) DIRED_SUPPORT altındaki dizin listesi\n"
+"sırasını belirler.  Öntanımlısı \"ORDER_BY_NAME\"'dir\n"
+
+#: src/LYrcFile.c:391
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"dir_list_styles, (eğer yerine getirilmişse) DIRED_SUPPORT altında\n"
+"dizin liste tarzını belirler.  Öntanımlı, \"MIXED_STYLE\" olup, dosya\n"
+"ve dizinleri birlikte sıralar.  \"FILES_FIRST\" önce dosyaları,\n"
+"\"DIRECTORIES_FIRST\" önce dizinleri sıralar.\n"
+
+#: src/LYrcFile.c:399
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Eğer emacs_keys \"on\" (açık)sa, o zaman normal EMACS gezinme tuşları olan\n"
+"  ^N = aşağı    ^P = yukarı\n"
+"  ^B = sol      ^F = saÄŸ\n"
+"etkinleÅŸtirilecektir.\n"
+
+#: src/LYrcFile.c:405
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor yerel dosyalar düzenlenirken ya da posta gönderilirken\n"
+"çağrılacak düzenleyiciyi belirtir.  Eğer bir düzenleyici belirtilmemişse, komut satırından\n"
+"etkinleştirilmedikçe dosya düzenleme devre dışı kalır ve posta göndermek için yerleşik satır\n"
+"düzenleyici kullanılır.\n"
+
+#: src/LYrcFile.c:412
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method, FTP dizinleri gibi dosya listeleri görüntülenirken\n"
+"hangi değere göre sıralama yapılacağını belirler.  Seçenekler:\n"
+"   BY_FILENAME -- dosya adına göre sıralar\n"
+"   BY_TYPE     -- dosya türüne göre sıralar\n"
+"   BY_SIZE     -- dosya boyutuna göre sıralar\n"
+"   BY_DATE     -- dosyanın tarihine göre sıralar\n"
+
+#: src/LYrcFile.c:435
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"lineedit_mode, bilgi istemi ve formlara dizge girişi için kullanılan\n"
+"tuş karşılıklarını belirler.  Eğer lineedit_mode \"Default Binding\"e\n"
+"ayarlanırsa, gezinme ve silme için aşağıdaki kontrol karakterleri kullanılır:\n"
+"\n"
+"             Önceki  Sonraki   Enter = Girdiyi kabul et\n"
+" Kark'i taşı: <-       ->      ^G    = Girdiyi iptal et\n"
+" Sözc'ü taşı: ^P       ^N      ^U    = Satır sil\n"
+"  Kark'i sil: ^H       ^R      ^A    = Satır başı\n"
+"  Sözc'ü sil: ^B       ^F      ^E    = Satır sonu\n"
+"\n"
+"Mevcut satır düzenleme kipleri şunlardır:\n"
+
+#: src/LYrcFile.c:453
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Aşağıdaki, sizin alt-yer imi dosya ve açıklamalarını tanımlamanızı sağlayacaktır.\n"
+"Biçem, multi_bookmark<büyük_harf>=<dosya_adı>,<açıklama> şeklindedir.\n"
+"26 yer imi dosyasına (İngilizce'deki büyük harfler) kadar izin verilir.\n"
+"\"multi_bookmarkB\" ile başlanır, zira 'A' öntanımlı olandır (yukarıya bkz).\n"
+
+#: src/LYrcFile.c:459
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address, sizin kiÅŸisel e-posta adresinizi belirler.  Bu adres,\n"
+"HTTP dosya aktarımları sırasında yetkilendirme ve oturum açma amaçlı olarak, ve\n"
+"yorum postalama sırasında gönderilecektir.\n"
+"Eğer bu bilginin verilmesini istemiyorsanız, lynx.cfg'de NO_FROM_HEADER'ı TRUE\n"
+"olarak ayarlayın, ya da -nofrom\n"
+" komut satır seçeneğini kullanın.  Bu alanı\n"
+"boş da bırakabilirsiniz, ama o zaman gönderilmiş yorumlarınızda da\n"
+"bu alan içerilmeyecektir.\n"
+
+#: src/LYrcFile.c:468
+msgid ""
+"personal_mail_name specifies your personal name, for mail.  The\n"
+"name is sent for mailed comments.  Lynx will prompt for this,\n"
+"showing the configured value as a default when sending mail.\n"
+"This is not necessarily the same as a name provided as part of the\n"
+"personal_mail_address.\n"
+"Lynx does not save your changes to that default value as a side-effect\n"
+"of sending email.  To update the default value, you must use the options\n"
+"menu, or modify this file directly.\n"
+msgstr ""
+"personal_mail_name postai için sizin kişisel adınızı belirler. Postalanmış\n"
+"yorumlarınız için ad gönderilir. Posta gönderirken Lynx, ayarlanmış değeri\n"
+"öntanımlı olarak göstererek bilgi isteminde bulunacaktır. Bu, personal_mail_address\n"
+"'in bir parçası olarak kullanılan adla aynı olmak zorunda değildir.\n"
+"Lynx, eposta göndermenin bir yan etkisi olarak, değişikliklerinizi öntanımlı\n"
+"değere kaydetmez. Öntanımlı değeri güncellemek için ya seçenekler menüsünü\n"
+"kullanmalı, ya da direkt olarak bu dosyayı değiştirmelisiniz.\n"
+
+#: src/LYrcFile.c:478
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"preferred_charset, MIME gösterimindeki karakter kümesini belirler\n"
+"(örn, ISO-8859-2, ISO-8859-5), Lynx bunu, http sunucularından yaptığınız\n"
+"istemlerde sizin tercihiniz olarak bir Accept-Charset başlığıyla belirtir.\n"
+"Değer, ISO-8859-1 ya da US-ASCII'yi, bunlar her zaman öntanımlı olarak\n"
+"varsayıldığından, içermemelidir.  Virgülle ayrılmış bir liste olabilir.\n"
+"Eğer o karakter kümesinde bir dosya mevcutsa, sunucu onu gönderecektir.\n"
+"Eğer Accept-Charset başlığı yoksa öntanımlı olan, tüm karakter kümelerinin\n"
+"kabul edilebilirliğidir.  Eğer bir Accept-Charset başlığı var ve sunucu bu\n"
+"başlık uyarınca kabul edilebilir bir yanıt gönderemiyorsa, sunucunun bir\n"
+"hata yanıtı göndermesi gerekmekle birlikte, bir kabul edilemez yanıtının\n"
+"gönderimine de izin verilir.\n"
+"\n"
+
+#: src/LYrcFile.c:494
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"preferred_language, MIME gösterimindeki dili belirler (örn, en,fr,\n"
+"tercih sırasına göre virgülle ayrılmış bir liste olabilir); Lynx bunu\n"
+"http sunucularından istemde bulunurken sizin tercihiniz olarak belirtir.\n"
+"O dilde bir dosya mevcutsa, sunucu onu gönderecektir.\n"
+"Aksi halde, sunucu öntanımlı dilindeki dosyayı gönderir.\n"
+
+#: src/LYrcFile.c:505
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Eğer run_all_execution_links \"on\" (açık)a ayarlanırsa, tüm yerel icraat linkleri\n"
+"seçildiklerinde icra edilecektir.\n"
+"\n"
+"UYARI - Bu, potansiyel olarak çok tehlikelidir.  Bilinmeyen ve güvenilmez\n"
+"        kaynaklar tarafından yazılmış bilgileri görüntüleyebileceğinizden dolayı\n"
+"        Truva atı linklerinin yazılma olasılığı mevcuttur.  Truva atı linkleri\n"
+"        dosyaları silmek ya da güvenliği zayıflatmak için yazılabilir.  Bu ayar\n"
+"        yalnızca güvenilir kaynak bilgisi görüntülediğiniz koşulda \"on\" (açık)a\n"
+"        ayarlanmalıdır.\n"
+
+#: src/LYrcFile.c:516
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Eğer run_execution_links_on_local_files \"on\" (açık)a ayarlanırsa YEREL\n"
+"dosyalarda bulunan tüm yerel icraat linkleri seçildiklerinde icra edilecektir.\n"
+"Bu, run_all_execution_links'ten farklı olup, yalnızca yerel sistemde yerleşik\n"
+"bulunan dosyaların icraat link izinleri vardır.\n"
+"\n"
+"UYARI - Bu, potansiyel olarak çok tehlikelidir.  Bilinmeyen ve güvenilmez\n"
+"        kaynaklar tarafından yazılmış bilgileri görüntüleyebileceğinizden dolayı\n"
+"        Truva atı linklerinin yazılma olasılığı mevcuttur.  Truva atı linkleri\n"
+"        dosyaları silmek ya da güvenliği zayıflatmak için yazılabilir.  Bu ayar\n"
+"        yalnızca güvenilir kaynak bilgisi görüntülediğiniz koşulda \"on\" (açık)a\n"
+"        ayarlanmalıdır.\n"
+
+#: src/LYrcFile.c:534
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"select_popups, MULTIPLE özniteliğinden yoksun olan SELECT bloğundaki\n"
+"OPTIONların dikey bir radyo düğmesi listesi olarak mı, yoksa açılır menü \n"
+"olarak mı gösterileceğini belirler.  MULTIPLE özniteliğinin SELECT başlangıç\n"
+"etiketinde yer almasının, Lynx'in OPTIONlar için her zaman dikey onay kutusu\n"
+"listesi oluşturmasına yol açacağını kaydediniz.  Bir \"on\" (açık) değeri, öntanımlı\n"
+"olarak açılır menüler kurarken, \"off\" (kapalı), radyo kutuları kullanımını kuracaktır.\n"
+"Öntanımlı, -popup komut satır anahtarıyla geçersiz kılınabilir.\n"
+
+#: src/LYrcFile.c:545
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"show_color, başlangıçta renk kipinin nasıl ayarlanacağını belirler.  Bir\n"
+"\"never\" (asla) değeri, uçbirim renk yetisine sahip olsa da, renk kipini kapanmaya\n"
+"zorlayacaktır (uçbirime siyah/beyaz muamelesi yapacaktır).  Bir \"always\"\n"
+"(her zaman) değeri, uçbirim siyah/beyaz görünse de, lynx yapılandırılırken kullanılan \n"
+"kitaplık desteklediği takdirde renkli kipe zorlayacaktır.  Bir \"default\"\n"
+"(öntanımlı) değeri, renk yetisi başlangıçta uçbirim türüne dayandırılarak çıkarsanmış,\n"
+"-color komut satırı seçeneği, ya da COLORTERM çevre değişkeniyle atanmış\n"
+"olmadıkça, siyah/beyaz bir uçbirim varsayma davranışı sergileyecektir.\n"
+"Öntanımlı davranış, anonim hesaplarda ya da \"option_save\" kısıtlaması\n"
+"kurulduğunda her zaman kullanılır.  Kaydedilmiş değerin etkisi, -color ve\n"
+"-nocolor komut satır seçenekleriyle geçersiz kılınabilir.\n"
+"Başlangıçtaki kip ayarı, seçenekler(o) menüsündeki \"renkleri göster\"\n"
+"seçeneği aracılığıyla değiştirilebilir.  Eğer seçenek ayarları kaydedilmişse,\n"
+"\"on\" (açık) \"off\" (kapalı) ve \"show color\" (renk göster) ayarları \"default\"\n"
+"(öntanımlı) olarak muamele görecektir.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"show_cursor, imlecin ekranın (mümkünse) sağına mı, yoksa belgelerdeki\n"
+"linkin ya da seçkin beliriveren pencerelerdeki mevcut seçeneğin\n"
+"soluna mı yerleştirileceğini belirler.  İmleci mevcut link ya da\n"
+"seçeneğin soluna yerleştirmek, konuşma ya da körler alfabesi arayüzleri\n"
+"için, ayrıca uçbirimin parlaklaştırarak ya da renkle mevcut linki\n"
+"ayırdetmediği durumlarda yararlıdır.  Bir \"on\" (açık) değeri,\n"
+"konumlandırmayı öntanımlı olarak sola yönlendirirken, \"off\" (kapalı) değeri,\n"
+"imlecin gizlenmesini saÄŸlar.\n"
+"Öntanımlı, -show_cursor komut satır anahtarıyla geçersiz kılınabilir.\n"
+
+#: src/LYrcFile.c:573
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"show_dotfiles dizin listelemenin \"hidden\" (nokta) dosyalar/dizinleri içerip\n"
+"içermeyeceğini belirler.  Eğer \"on\" (açık)a ayarlanırsa, yalnızca userdefs.h ve/veya\n"
+"lynx.cfg aracılığıyla etkinleştirildiğinde bu onurlandırma sağlanacak ve komut\n"
+"satır seçeneğiyle kısıtlanmayacaktır.  Eğer gizli dosyaların gösterimi devre dışı\n"
+"bırakılırsa, Lynx aracılığıyla bu tür dosyaların oluşturulması da devre dışı kalacaktır.\n"
+
+#: src/LYrcFile.c:584
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Eğer sub_bookmarks \"off\" (kapalı) değilse ve çok sayıda yer imi tanımlanmışsa\n"
+"(aşağıya bkz), tüm yer imi işlemleri ilk olarak kullanıcıdan etkin bir\n"
+"alt-yer imi dosyası seçmesini ister.  Eğer öntanımlı Lynx yer imi dosyası\n"
+"tanımlanmışsa (yukarıya bkz) bu, öntanımlı seçim olarak kullanılacaktır.\n"
+"Bu seçenek \"advanced\" (ileri düzey)e ayarlanmış ve kullanıcı kipi de ileri düzeyse,\n"
+"yer imini göster(v) komutu, acemi ve orta düzey kullanıcı kiplerinde görülen\n"
+"menü yerine bir durumsatırı bilgi istemi çağıracaktır.  Bu seçenek\n"
+"\"standard\"a ayarlandığında menü, kullanıcı kipinden bağımsız olarak\n"
+"görüntülenecektir.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"user_mode, kullanıcının Lynx bilgi düzeyini belirler.  Öntanımlı \"NOVICE\"\n"
+"(acemi) olup, kullanıcının temel Lynx komutlarını öğrenmesine yardımcı\n"
+"olmak için ekranın en altında iki satırlık yardım (mesajları) görüntüler.\n"
+"Bu fazladan bilgiyi kapatmak için user_mode'u \"INTERMEDIATE\" (orta düzey)e\n"
+"ayarlayınız.  Ekranın en altında mevcut seçilmiş linkin URL'sini görmek için\n"
+"\"ADVANCED\" (ileri düzey)i kullanın.\n"
+
+#: src/LYrcFile.c:607
+msgid ""
+"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"
+msgstr ""
+"Eğer verbose_images \"on\" (açık) ise lynx, [INLINE], [LINK] ya da\n"
+"[IMAGE] yerine resim kaynak dosyasının ismini yazacaktır.\n"
+"Ayrıca lynx.cfg'deki VERBOSE_IMAGES'a bkz\n"
+
+#: src/LYrcFile.c:612
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Eğer vi_keys \"on\" (açık)a ayarlandıysa, o zaman normal VI gezinme tuşları olan\n"
+"  j = aşağı    k = yukarı\n"
+"  h = sol      l = saÄŸ\n"
+"etkinleştirilecektir.  Bu tuşlar yalnızca küçük harf şeklinde kullanılır.\n"
+"Büyük 'H', 'J' ve 'K', hâlâ sırasıyla yardım, kısayollara\n"
+"sıçrama ve tuşeşlem görüntülemeyi etkinleştireceklerdir.\n"
+
+#: src/LYrcFile.c:620
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"visited_links ayarı, Lynx'in Uğranmış Linkler Sayfası'ndaki bilgiyi\n"
+"nasıl düzenleyeceğini denetler.\n"
+
+#: src/LYrcFile.c:845
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Eğer keypad_mode \"NUMBERS_AS_ARROWS\"a ayarlanırsa, mini klavyenizdeki\n"
+"rakamlar, numlock açık olduğunda ok tuşları gibi davranacaktır:\n"
+"            8 = Yukarı Ok\n"
+"  4 = Sol Ok    6 = SaÄŸ Ok\n"
+"            2 = Aşağı Ok\n"
+"ve karşılık gelen klavye rakamları, numlock'ın açık olup olmadığından\n"
+"bağımsız olarak ok tuşları gibi davranacaktır.\n"
+
+#: src/LYrcFile.c:854
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Eğer keypad_mode \"LINKS_ARE_NUMBERED\"e ayarlanırsa, her linkin yanında\n"
+"numaralar belirecek ve bu numaralar linkleri seçmekte kullanılacaktır.\n"
+
+#: src/LYrcFile.c:858
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Eğer keypad_mode \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\"e ayarlanırsa,\n"
+"her link ve görünür form girdi alanının yanında numaralar belirecektir.\n"
+"Bu numaralar, linkleri seçmede ya da \"current link\"(mevcut link)i bir form girdi\n"
+"alanı ya da düğmesine taşımakta kullanılır.  Ek olarak, açılır menülerdeki\n"
+"seçenekler indekslenmiş olup, kullanıcı, seçenek ekranda görünmese bile\n"
+"bir seçenek no'su tuşlayarak seçeneği seçebilir.  Referans listeleri ve\n"
+"list komutu çıktısı da form girdilerini numaralandırır.\n"
+
+#: src/LYrcFile.c:867
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"NOT: \"LINKS_ARE_NUMBERED\" ya da \"LINKS_AND_FORM_FIELDS_ARE NUMBERED\"\n"
+"etkinleştirildiğinde, bazı sabit biçemli belgeler bozuk şekilde\n"
+"görünebilir.\n"
+
+#: src/LYrcFile.c:899
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"Lynx Kullanıcı Öntanımlıları Dosyası\n"
+"\n"
+
+#: src/LYrcFile.c:908
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"Bu dosya Lynx Seçenekleri Ekranı'ndan kaydedilen seçenekleri içerir (normalde\n"
+"'o' tuşuyla birlikte).  O ekranla seçenekleri kaydetmek için onay\n"
+"kutusunu seçmelisiniz:\n"
+
+#: src/LYrcFile.c:915
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+"Daha sonra da onay kutusunun üstünde bulunan satırdaki linki kullanarak\n"
+"ayarları kaydetmelisiniz:\n"
+
+#: src/LYrcFile.c:922
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"\"-forms_options\" komut satırı seçeneğini de kullanabilirsiniz, bu, daha basit\n"
+"Seçenekler Menüsünü gösterecektir.  Seçenekleri buradan '>' tuşunu kullanarak kaydedebilirsiniz.\n"
+"\n"
+
+#: src/LYrcFile.c:929
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"Bu dosya Lynx Seçenekler Ekranı'ndan kaydedilmiş seçenekleri içerir (normalde\n"
+"'>' tuÅŸuyla).\n"
+"\n"
+
+#: src/LYrcFile.c:936
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Buradaki öntanımlılar Seçenekler Ekranı'ndan kontrol edilebildiği ve seçenekler,\n"
+" Seçenekler Ekranı'ndan bir sonraki sefer kaydedildiğinde bu dosya\n"
+" tümüyle yeniden yazılacağından, normalde bu dosyayı elle düzenlemek gerekmez.\n"
+"Uyarılmış oldunuz...\n"
+"\n"
+"Eğer genel ayarlama dosyasını arıyorsanız - normalde \"lynx.cfg\"\n"
+"olarak anılır.  Onun farklı bir içeriği ve biçemi vardır.\n"
+"O, bu dosya deÄŸildir.\n"
+
+#~ msgid "Very long lines have been wrapped!"
+#~ msgstr "Çok uzun satırlar sarmalandı!"
+
+#~ msgid "Path too long"
+#~ msgstr "Yol çok uzun"
+
+#~ msgid "Source and destination are the same location - request ignored!"
+#~ msgstr "Çıkış ve varış konumları aynı - istem yoksayıldı!"
diff --git a/po/uk.po b/po/uk.po
new file mode 100644
index 00000000..b70f0ef8
--- /dev/null
+++ b/po/uk.po
@@ -0,0 +1,6131 @@
+# ðÅÒÅËÌÁÄ Lynx ÎÁ ÕËÒÁ§ÎÓØËÕ
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Volodymyr M. Lisivka <lvm@mystery.lviv.net>, 2003
+# Dmytro O. Redchuk <dor@kiev-online.net>, 2001-2002
+# Olexander Kunytsa <kunia@snark.ukma.kiev.ua>, 2000-2001
+# $LynxId: uk.po,v 1.33 2008/12/15 00:21:55 tom Exp $
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.5pre9\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 2003-01-22 18:21EEST\n"
+"Last-Translator: Volodymyr M. Lisivka <lvm@mystery.lviv.net>\n"
+"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=koi8-u\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "ïÊ!: %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "ìÁÓËÁ×Ï ÐÒÏÓÉÍÏ"
+
+# @ glade- konsole lynx
+# * Yuriy Syrota <yuri@renome.rovno.ua>
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "÷É ×ÐÅ×ÎÅΦ, ÝÏ ÈÏÞÅÔÅ ×ÉÊÔÉ?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "óÐÒÁ×Ħ ×ÉÊÔÉ Ú Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "ú'¤ÄÎÁÎÎÑ ÒÏÚ¦Ò×ÁÎÏ."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "ïÂͦΠÄÁÎÉÍÉ ÐÅÒÅÒ×ÁÎÏ."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "óËÁÓÏ×ÁÎÏ!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "óËÁÓÏ×ÕÀ!"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "þÕÄÏ×Ï!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "çÁÒÁÚÄ"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "úÒÏÂÌÅÎÏ!"
+
+# :-) îÅ ÐÒÉÎÃÉÐÏ×Ï -- ÑË ÚÁÌÉÛÉÛ, ÔÁË ¦ ÂÕÄÅ.
+# :-) îÅ ÐÒÉÎÃÉÐÏ×Ï -- ÑË ÚÁÌÉÛÉÛ, ÔÁË ¦ ÂÕÄÅ.
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "îÅÚÒÏÚÕͦÌÉÊ ÚÁÐÉÔ!"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "ÐÏÐÅÒÅÄΦÊ"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "ÎÁÓÔÕÐÎÉÊ ÅËÒÁÎ"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "äï÷¶äëá!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", ÄÏצÄËÁ ÐÏ "
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "ëÏÍÁÎÄÉ: óÔÒ¦ÌËÉ - ÐÅÒÅͦÝÅÎÎÑ, '?' - ÄÏצÄËÁ, 'q' - ×ÉȦÄ, '<-' - ÎÁÚÁÄ."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "-- ÐÒÏÂ¦Ì - ÄÁ̦, ÓÔÒ¦ÌËÉ - ÐÅÒÅͦÝÅÎÎÑ, '?' - ÄÏצÄËÁ, 'q' - ×ÉȦÄ."
+
+# ÞÏÍÕ "ÄÌÑ ÎÁÓÔÕÐÎϧ ÓÔÏÒ¦ÎËÉ" ? ×ÏÎÏ §Ê ÔÒÅÂÁ?-)
+# ÞÏÍÕ "ÄÌÑ ÎÁÓÔÕÐÎϧ ÓÔÏÒ¦ÎËÉ" ? ×ÏÎÏ §Ê ÔÒÅÂÁ?-)
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "-- ÎÁÔÉÓΦÔØ ÐÒÏÂ¦Ì ÄÌÑ ÐÅÒÅÈÏÄÕ ÎÁ ÎÁÓÔÕÐÎÕ ÓÔÏÒ¦ÎËÕ --"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "úÁÄÏ×ÇÉÊ URL"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(ôÅËÓÔÏ×Á ÒÑÄÏË) îÅÁËÔÉ×ÎÁ. îÁÔÉÓΦÔØ <×צÄ> ÝÏ ÁËÔÉצÚÕ×ÁÔÉ."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(ôÅËÓÔÏ×Á ÏÂÌÁÓÔØ) îÅÁËÔÉ×ÎÅ. îÁÔÉÓΦÔØ <×צÄ> ÝÏ ÁËÔÉצÚÕ×ÁÔÉ."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(ôÅËÓÔÏ×Á ÏÂÌÁÓÔØ) îÅÁËÔÉ×ÎÅ. <÷צÄ> ÁËÔÉצÚÕ¤ (%s -ÒÅÄÁËÔÏÒ)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(ðÏÌÅ ÆÏÒÍÉ) îÅÁËÔÉ×ÎÅ. îÁÔÉÓΦÔØ <×צÄ> ÝÏ ÒÅÄÁÇÕ×ÁÔÉ."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(ðÏÌÅ ÆÏÒÍÉ) îÅÁËÔÉ×ÎÅ.  <÷צÄ> - ÒÅÄÁÇÕ×ÁÔÉ (%s - צĦÓÌÁÔÉ ÂÅÚ ËÅÛÁ)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(ðÏÌÅ ÆÏÒÍÉ) îÅÁËÔÉ×ÎÅ. <÷צÄ> - ÒÅÄÁÇÕ×ÁÔÉ, <×צÄ> Äצަ - צĦÓÌÁÔÉ."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(ðÏÌÅ mailto) îÅÁËÔÉ×ÎÅ. îÁÔÉÓΦÔØ <×צÄ> ÝÏ ÚͦÎÉÔÉ."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(ðÏÌÅ ÄÌÑ ÐÁÒÏÌÑ) îÅÁËÔÉ×ÎÅ. îÁÔÉÓΦÔØ <×צÄ> ÝÏ ÁËÔÉצÚÕ×ÁÔÉ."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåúí¶îîå ÐÏÌÅ ÄÌÑ ÆÁÊÌÕ.  óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(ðÏÌÅ ÄÌÑ ÆÁÊÌÕ) ÷×ÅĦÔØ ¦Í'Ñ ÆÁÊÌÕ. óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+# Ñ ÂÉ ÚÁÌÉÛÉ× "Ó×Ϥ", ÂÏ ÔÅËÓÔÏ×Å ÐÏÌÅ Õ ÍÅÎÅ textarea
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(ôÅËÓÔÏ×ÉÊ ÒÑÄÏË) ÷×ÅĦÔØ ÔÅËÓÔ. óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(ôÅËÓÔÏ×Á ÏÂÌÁÓÔØ) úÁÐÏ×ΦÔØ. óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(ôÅËÓÔÏ×Á ÏÂÌÁÓÔØ) úÁÐÏ×ΦÔØ. óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâ - Ú¦ÊÔÉ (%s - ÒÅÄÁËÔÏÒ)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåúí¶îîå ÔÅËÓÔÏ×Å ÐÏÌÅ.  óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(ðÏÌÅ ÆÏÒÍÉ) ÷×ÅĦÔØ ÔÅËÓÔ. <÷צÄ> ÝÏ צĦÓÌÁÔÉ ÆÏÒÍÕ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(ðÏÌÅ ÆÏÒÍÉ) ÷×ÅĦÔØ ÔÅËÓÔ. <÷צÄ> ÝÏ צĦÓÌÁÔÉ (%s - ÂÅÚ ËÅÛÁ)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(ðÏÌÅ ÆÏÒÍÉ) ÷×ÅĦÔØ ÔÅËÓÔ. <÷צÄ> - צÄÓÉÌÁ¤, ÓÔÒ¦ÌËÉ/ÔÁÂÕÌÑÃ¦Ñ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåúí¶îîå ÐÏÌÅ ÆÏÒÍÉ.  óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(ðÏÌÅ mailto) ÷×ÅĦÔØ ÔÅËÓÔ. <÷צÄ> - צĦÓÌÁÔÉ, ÓÔÒ¦ÌËÉ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(ðÏÌÅ mailto)  îÁÄÓÉÌÁÎÎÑ ÐÏÛÔÉ ÚÁÂÏÒÏÎÅÎÅ, צĦÓÌÁÔÉ ÎÅÍÏÖÌÉ×Ï."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(ðÏÌÅ ××ÏÄÕ ÐÁÒÏÌÑ) ÷×ÅĦÔØ ÔÅËÓÔ. óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåúí¶îîå ÐÏÌÅ ××ÏÄÕ ÐÁÒÏÌÑ.  óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(ðÏÌÅ \"ÐÅÒÅÍÉËÁÞ\")   ðÒÁ×Á ÓÔÒ¦ÌËÁ ÞÉ <×צÄ> ÐÅÒÅÍÉËÁ¤ ÓÔÁÎ."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåúí¶îîéê ÐÅÒÅÍÉËÁÞ.  óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(òÁĦÏËÎÏÐËÁ)    ðÒÁ×Á ÓÔÒ¦ÌËÁ ÞÉ <×צÄ> ÐÅÒÅÍÉËÁ¤."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "îåúí¶îîá ÒÁĦÏËÎÏÐËÁ.  óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâõìñã¶ñ - Ú¦ÊÔÉ."
+
+# ôåòí¶îïìïç¶ñ!!! ôÒÅÂÁ ÏÂÇÏ×ÏÒÀ×ÁÔÉ.
+# íÅΦ ǦÒÛÅ "÷¦Ä¦ÓÌÁÔÉ", ÂÏ ÔÏĦ ÎÅ×ÉÐÒÁ×ÄÁÎÁ ÔÁ×ÔÏÌÏÇ¦Ñ Õ LYMessages.c:127
+# ôåòí¶îïìïç¶ñ!!! ôÒÅÂÁ ÏÂÇÏ×ÏÒÀ×ÁÔÉ.
+# íÅΦ ǦÒÛÅ "÷¦Ä¦ÓÌÁÔÉ", ÂÏ ÔÏĦ ÎÅ×ÉÐÒÁ×ÄÁÎÁ ÔÁ×ÔÏÌÏÇ¦Ñ Õ LYMessages.c:127
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "úÁÔ×ÅÒÄÉÔÉ ('x' - ÂÅÚ ËÅÛÁ) ÎÁ "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "úÁÔ×ÅÒÄÉÔÉ ÎÁ "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(ëÎÏÐËÁ צÄÓÉÌÁÎÎÑ ÆÏÒÍÉ) ÷¦Ä¦ÓÌÁÔÉ - ÓÔÒ¦ÌËÁ ×ÐÒÁ×Ï ÞÉ <×צÄ> ('x' - ÂÅÚ ËÅÛÁ)"
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(ëÎÏÐËÁ צÄÓÉÌÁÎÎÑ ÆÏÒÍÉ) ÷¦Ä¦ÓÌÁÔÉ - ÓÔÒ¦ÌËÁ ×ÐÒÁ×Ï ÞÉ <×צÄ>."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "úáâìïëï÷áîá ËÎÏÐËÁ ÚÁÔ×ÅÒÄÖÅÎÎÑ. óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "úÁÔ×ÅÒÄÉÔÉ mailto ÎÁ "
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(ëÎÏÐËÁ צÄÓÉÌÁÎÎÑ ÞÅÒÅÚ mailto) ÷¦Ä¦ÓÌÁÔÉ - ÓÔÒ¦ÌËÁ ×ÐÒÁ×Ï ÞÉ <×צÄ>."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(ëÎÏÐËÁ צÄÓÉÌÁÎÎÑ ÞÅÒÅÚ mailto) îÁÄÓÉÌÁÔÉ ÐÏÛÔÕ ÚÁÂÏÒÏÎÅÎÏ, צĦÓÌÁÔÉ ÎÅÍÏÖÌÉ×Ï."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(ëÎÏÐËÁ צÄÎÏ×ÌÅÎÎÑ ÆÏÒÍÉ) óÔÒ¦ÌËÁ ×ÐÒÁ×Ï ÞÉ <×צÄ> - ÄÏ ÐÏÞÁÔËÏ×ÏÇÏ ÓÔÁÎÕ."
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "úáâìïëï÷áîá ËÎÏÐËÁ צÄÎÏ×ÌÅÎÎÑ. óÔÒ¦ÌËÉ ÷çïòõ/÷îéú, ÞÉ ôáâ - Ú¦ÊÔÉ."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(óÐÉÓÏË ×ÁÒ¦ÁÎÔ¦×) îÁÔÉÓΦÔØ ×צÄ, ×ÉÂÅÒ¦ÔØ ÓÔÒ¦ÌËÁÍÉ ÔÁ ÎÁÔÉÓΦÔØ ×צÄ."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(óÐÉÓÏË ×ÁÒ¦ÁÎÔ¦×) îÁÔÉÓΦÔØ ×צÄ, ×ÉÂÅÒ¦ÔØ ÓÔÒ¦ÌËÁÍÉ ÔÁ ÎÁÔÉÓΦÔØ ×צÄ."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "îåúí¶îîéê ÓÐÉÓÏË ×ÁÒ¦ÁÎÔ¦×. óÔÒ¦ÌËÉ ÞÉ ××¦Ä - ÐÒÏÄÉ×ÉÔÉÓÑ Ê Ú¦ÊÔÉ."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "úáâìïëï÷áîéê ÓÐÉÓÏË ×ÁÒ¦ÁÎÔ¦×. óÔÒ¦ÌËÉ ÞÉ ××¦Ä - ÐÒÏÄÉ×ÉÔÉÓÑ Ê Ú¦ÊÔÉ."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "úÁÔ×ÅÒÄÖÕ¤ÍÏ ÆÏÒÍÕ..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "÷¦ÄÎÏ×ÌÀ¤ÍÏ ÆÏÒÍÕ..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "ðÅÒÅÚÁ×ÁÎÔÁÖÕ¤ÍÏ ÄÏËÕÍÅÎÔ.  õÓ¦ ××ÅÄÅΦ ÚÎÁÞÅÎÎÑ ÂÕÄÕÔØ ×ÔÒÁÞÅΦ!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "õ×ÁÇÁ: îÅÍÏÖÌÉ×Ï ÐÅÒÅËÏÄÕ×ÁÔÉ ÄÁΦ Õ %s!"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(ðïóéìáîîñ) áËÔÉ×ÕÊÔÅ ÓÔÒ¦ÌËÏÀ ×ÐÒÁ×Ï ÞÉ <×צÄ>'ÏÍ"
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "ãÅÊ ÒÅÓÕÒÓ ÎÁÒÁÚ¦ ÎÅÄÏÓÔÕÐÎÉÊ."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "÷×ÅĦÔØ ËÏÍÁÎÄÕ Lynx: "
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "ûÕËÁ¤ÍÏ "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "ïÔÒÉÍÕ¤ÍÏ %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "ðÒÏÐÕÓËÁ¤ÍÏ %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "÷ÉËÏÒÉÓÔÏ×Õ¤ÍÏ %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "îÅצÒÎÉÊ URL: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "îÅÐÒÁ×ÉÌØÎÏ ÓÆÏÒÍÏ×ÁÎÁ ÁÄÒÅÓÁ %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "îÅÍÏÖÌÉ×Ï Ä¦ÓÔÁÔÉÓÑ ÄÏ WWW ÆÁÊÌÕ!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "ãÅ ¦ÎÄÅËÓ ¦Ú ÐÏÛÕËÏÍ.  ÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ ÄÌÑ ÐÏÛÕËÕ %s."
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "--äÁ̦-- ãÅ ¦ÎÄÅËÓ ¦Ú ÐÏÛÕËÏÍ.  ÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ ÄÌÑ ÐÏÛÕËÕ %s."
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "÷É ××ÅÌÉ ÎÅצÒÎÉÊ ÎÏÍÅÒ ÐÏÓÉÌÁÎÎÑ."
+
+# "ÚÇÅÎÅÒÏ×ÁÎϧ ×ÅÒÓ¦§" ??
+# "ÚÇÅÎÅÒÏ×ÁÎϧ ×ÅÒÓ¦§" ??
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "ãÅ ÄÖÅÒÅÌÏ ÄÏËÕÍÅÎÔÁ. îÁÔÉÓΦÔØ '\\' ÝÏ ÐÏ×ÅÒÎÕÔÉÓÑ ÄÏ ÏÐÒÁÃØÏ×ÁÎϧ ×ÅÒÓ¦§."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  óÔÒ¦ÌËÉ: ×ÇÏÒÕ/×ÎÉÚ - ÐÅÒÅͦÝÅÎÎÑ,  ×ÐÒÁ×Ï - ÚÁ ÐÏÓÉÌÁÎÎÑÍ, ×̦×Ï - ÎÁÚÁÄ.  \n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=ÐÏÛÕË  [delete]=history list \n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "O)¦ÎÛ¦ ËÍ C)ËÏÍÅÎÔÁÒ¦ ¶ÓÔÏÒ¦Ñ: <ÚÁ¦Ê> úÁËÌÁÄËÉ: V)ÐÅÒÅÇÌÑÄ A)ÄÏÄÁÔÉ R)×ÉÄÁÌÉÔÉ\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "                        ÷×ÅĦÔØ ÔÅËÓÔ Ú ËÌÁצÁÔÕÒÉ                           "
+
+# Õ ÓÔÒ¦Þæ, Õ ÒÑÄËÕ -- ÍÅΦ ÔÒÅÂÁ ×ÉÚÎÁÞÉÔÉÓÑ.
+# Ñ ×ÖÅ ÎÁÚÉ×Á× textfield ÔÅËÓÔÏ×ÏÀ ÓÔÒ¦ÞËÏÀ, ÔÒÅÂÁ ÒÏÚ¦ÂÒÁÔÉÓÑ
+# Õ ÓÔÒ¦Þæ, Õ ÒÑÄËÕ -- ÍÅΦ ÔÒÅÂÁ ×ÉÚÎÁÞÉÔÉÓÑ.
+# Ñ ×ÖÅ ÎÁÚÉ×Á× textfield ÔÅËÓÔÏ×ÏÀ ÓÔÒ¦ÞËÏÀ, ÔÒÅÂÁ ÒÏÚ¦ÂÒÁÔÉÓÑ
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U - ÓÔÅÒÔÉ ×ÅÓØ ÔÅËÓÔ Õ ÒÑÄËÕ, [úÁ¦Ê] - ÓÔÅÒÔÉ ÏÄÉÎ ÓÉÍ×ÏÌ   "
+
+# Õ ÓÔÒ¦Þæ, Õ ÒÑÄËÕ -- ÍÅΦ ÔÒÅÂÁ ×ÉÚÎÁÞÉÔÉÓÑ.
+# Ñ ×ÖÅ ÎÁÚÉ×Á× textfield ÔÅËÓÔÏ×ÏÀ ÓÔÒ¦ÞËÏÀ, ÔÒÅÂÁ ÒÏÚ¦ÂÒÁÔÉÓÑ
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "   Ctrl-U - ÓÔÅÒÔÉ ×ÅÓØ ÔÅËÓÔ Õ ÒÑÄËÕ, [úÁ¦Ê] - ÓÔÅÒÔÉ ÏÄÉÎ ÓÉÍ×ÏÌ  "
+
+# Õ ÓÔÒ¦Þæ, Õ ÒÑÄËÕ -- ÍÅΦ ÔÒÅÂÁ ×ÉÚÎÁÞÉÔÉÓÑ.
+# Ñ ×ÖÅ ÎÁÚÉ×Á× textfield ÔÅËÓÔÏ×ÏÀ ÓÔÒ¦ÞËÏÀ, ÔÒÅÂÁ ÒÏÚ¦ÂÒÁÔÉÓÑ
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s - ÓÔÅÒÔÉ ×ÅÓØ ÔÅËÓÔ Õ ÒÑÄËÕ, [úÁ¦Ê] - ÓÔÅÒÔÉ ÏÄÉÎ ÓÉÍ×ÏÌ   "
+
+# Õ ÓÔÒ¦Þæ, Õ ÒÑÄËÕ -- ÍÅΦ ÔÒÅÂÁ ×ÉÚÎÁÞÉÔÉÓÑ.
+# Ñ ×ÖÅ ÎÁÚÉ×Á× textfield ÔÅËÓÔÏ×ÏÀ ÓÔÒ¦ÞËÏÀ, ÔÒÅÂÁ ÒÏÚ¦ÂÒÁÔÉÓÑ
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "  %s - ÓÔÅÒÔÉ ×ÅÓØ ÔÅËÓÔ Õ ÒÑÄËÕ, [úÁ¦Ê] - ÓÔÅÒÔÉ ÏÄÉÎ ÓÉÍ×ÏÌ   "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "îÅÐÒÁ×ÉÌØÎÏ ÓÆÏÒÍÏ×ÁÎÅ ÚÁÔ×ÅÒÄÖÅÎÎÑ ÆÏÒÍÉ mailto! óËÁÓÏ×ÁÎÏ!"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "õ×ÁÇÁ! ëÏÄÉ ËÅÒÕ×ÁÎÎÑ Õ ÐÏÛÔÏ×¦Ê ÁÄÒÅÓ¦ ÚÁͦÎÅÎÏ ÎÁ ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "îÁÄÓÉÌÁÎÎÑ ÐÏÛÔÉ ÚÁÂÏÒÏÎÅÎÅ! úÁÔ×ÅÒÄÖÅÎÎÑ ÎÅÍÏÖÌÉ×Å."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "îÅ×ÄÁÞÁ ÚÁÔ×ÅÒÄÖÅÎÎÑ ÆÏÒÍÉ mailto!"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "úÁÔ×ÅÒÄÖÅÎÎÑ ÆÏÒÍÉ mailto ÓËÁÓÏ×ÁÎÏ!!!"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "÷¦ÄÐÒÁ×ÌѤÍÏ ÚÁÐÏ×ÎÅÎÕ ÆÏÒÍÕ..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "îÅÍÁ ÐÏÛÔÏ×ϧ ÁÄÒÅÓÉ Õ mailto URL!"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ ÄÌÑ mailto URL!"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "þÉ ÂÁÖÁ¤ÔÅ ÄÏÄÁÔÉ ÏÔÒÉÍÁÎÏÇÏ ÌÉÓÔÁ?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "þÉ ÂÁÖÁ¤ÔÅ ÄÏÄÁÔÉ ÏÂÒÏÂÌÅÎÅ ÄÖÅÒÅÌÏ ÌÉÓÔÁ?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "úÁÐÕÓËÁ¤ÍÏ ×ÉÂÒÁÎÏÇÏ ×ÁÍÉ ÒÅÄÁËÔÏÒÁ ÄÌÑ ÒÅÄÁÇÕ×ÁÎÎÑ ÌÉÓÔÁ"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "ðÏÍÉÌËÁ ÚÁÐÕÓËÕ ÒÅÄÁËÔÏÒÁ, ÐÅÒÅצÒÔÅ ÕÓÔÁÎÏ×ËÉ Õ ÍÅÎÀ ÎÁÌÁÛÔÕ×ÁÎØ"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "÷¦Ä¦ÓÌÁÔÉ ÃÅÊ ËÏÍÅÎÔÁÒ?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "÷¦Ä¦ÓÌÁÔÉ ÃÅ ÐÏצÄÏÍÌÅÎÎÑ?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "÷¦ÄÓÉÌÁÎÎÑ ×ÁÛÏÇÏ ÐÏצÄÏÍÌÅÎÎÑ..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "÷¦ÄÓÉÌÁÎÎÑ ×ÁÛÏÇÏ ËÏÍÅÎÔÁÒÑ:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "ãÅ ÎÅ ôåëóôï÷á ïâìáóôø; ×ÉËÏÒÉÓÔÁÎÎÑ ÚÏ×ΦÛÎØÏÇÏ ÒÅÄÁËÔÏÒÁ ÎÅÍÏÖÌÉ×Å."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "ãÅ ÎÅ ôåëóôï÷á ïâìáóôø; ×ÉËÏÒÉÓÔÁÎÎÑ ËÏÍÁÎÄÉ ÎÅÍÏÖÌÉ×Å."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "file: 䶷 (ACTIONs) ÚÁÂÏÒÏÎÅΦ!"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr ""
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "äÏÓÔÕÐ ÄÏ ÌÏËÁÌØÎÉÈ ÆÁÊÌ¦× ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "file: URL ÞÅÒÅÚ ÚÁËÌÁÄÉÎËÉ ÚÁÂÏÒÏÎÅÎÏ!"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "ãÅÊ ÓÐÅæÁÌØÎÉÊ URL ÎÅ ÄÏÚ×ÏÌÅÎÉÊ Õ ÚÏ×ΦÛÎ¦È ÄÏËÕÍÅÎÔÁÈ!"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "îÁÔÉÓΦÔØ <×צÄ> ÄÌÑ ÐÏ×ÅÒÎÅÎÎÑ ÄÏ Lynx'Á."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "úÁÐÕÓËÁ¤ÍÏ Ð¦ÄÐÒÏÃÅÓ DCL.  'logout' ÐÏ×ÅÒÎÅ ×ÁÓ ÄÏ Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "îÁÂÅÒ¦ÔØ exit ÄÌÑ ÐÏ×ÅÒÎÅÎÎÑ ÄÏ Lynx'Á.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "úÁÐÕÓËÁ¤ÍÏ ËÏÍÁÎÄÎÕ ÏÂÏÌÏÎËÕ. 'exit' ÐÏ×ÅÒÎÅ ×ÁÓ ÄÏ Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "úÁÐÕÓË Ð¦ÄÐÒÏÃÅÓ¦× ÎÁÒÁÚ¦ ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "ëÏÍÁÎÄÁ 'd'ownload ÎÁÒÁÚ¦ ÚÁÂÏÒÏÎÅÎÁ."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "÷É ÎÅ ÍÏÖÅÔÅ ÚÁ×ÁÎÔÁÖÉÔÉ ÐÏÌÅ input."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "æÏÒÍÁ ÍÁ¤ ĦÀ \"mailto\"! úÁ×ÁÎÔÁÖÅÎÎÑ ÎÅÍÏÖÌÉ×Å."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "÷É ÎÅ ÍÏÖÅÔÅ ÚÁ×ÁÎÔÁÖÉÔÉ ÐÏÓÉÌÁÎÎÑ \"mailto:\"."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "÷É ÎÅ ÍÏÖÅÔÅ ÚÁ×ÁÎÔÁÖÉÔÉ ëÕËÉ."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "÷É ÎÅ ÍÏÖÅÔÅ ÚÁ×ÁÎÔÁÖÉÔÉ ËÏÍÁÎÄÕ ÄÒÕËÕ."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "÷É ÎÅ ÍÏÖÅÔÅ ÚÁ×ÁÎÔÁÖÉÔÉ ËÏÍÁÎÄÕ ÐÅÒÅÓÉÌÁÎÎÑ."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "÷É ÎÅ ÍÏÖÅÔÅ \"ÚÁ×ÁÎÔÁÖÉÔÉ\" ÏÐæÀ \"permit\"."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "ãÅÊ ÎÅÔÉÐÏ×ÉÊ URL ÚÁ×ÁÎÔÁÖÉÔÉ ÎÅÍÏÖÌÉ×Ï!"
+
+# (Ñ ÎÅ ÚÎÁÀ, ΦÑËÉÈ ÕÐÏÄÏÂÁÎØ, ÄÁ×ÁÊ ÏÂÇÏ×ÏÒÀ×ÁÔÉ;)
+# (Ñ ÎÅ ÚÎÁÀ, ΦÑËÉÈ ÕÐÏÄÏÂÁÎØ, ÄÁ×ÁÊ ÏÂÇÏ×ÏÒÀ×ÁÔÉ;)
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "îÅÍÁ ÞÏÇÏ ÚÁ×ÁÎÔÁÖÕ×ÁÔÉ."
+
+# ÎÁÇÏÌÏÓ ÎÁ "õ÷¶íëîåîï!"
+# ÎÁÇÏÌÏÓ ÎÁ "õ÷¶íëîåîï!"
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "ôÒÁÓÕ×ÁÎÎÑ õ÷¶íëîåîï!"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "ôÒÁÓÕ×ÁÎÎÑ ÷éíëîåîï!"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "ðÏÓÉÌÁÎÎÑ ÂÕÄÕÔØ ÄÏÄÁΦ ÄÌÑ ÕÓ¦È ÚÏÂÒÁÖÅÎØ!  ðÅÒÅÚÁ×ÁÎÔÁÖÕ¤ÍÏ..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "óÔÁÎÄÁÒÔΦ ÍÁΦÐÕÌÑæ§ ¦Ú ÚÏÂÒÁÖÅÎÎÑÍÉ ÐÏÎÏ×ÌÅÎÏ! ðÅÒÅÚÁ×ÁÎÔÁÖÕ¤ÍÏ..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "ðÓÅ×ÄÏ-ALT ÂÕÄÅ ×ÓÔÁ×ÌÅÎÏ ÄÌÑ ÚÏÂÒÁÖÅÎØ ÂÅÚ ×ËÁÚÁÎÉÈ ALT! ðÅÒÅÚÁ×ÁÎÔÁÖÕ¤ÍÏ..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "úÏÂÒÁÖÅÎÎÑ ÂÅÚ ×ËÁÚÁÎÉÈ ALT ÂÕÄÅ ÐÒϦÇÎÏÒÏ×ÁÎÏ! ðÅÒÅÚÁ×ÁÎÔÁÖÕ¤ÍÏ..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "òÅÖÉÍ Raw 8-bit ÞÉ CJK ÷éíëîåîï! ðÅÒÅÚÁ×ÁÎÔÁÖÕ¤ÍÏ..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "òÅÖÉÍ Raw 8-bit ÞÉ CJK õ÷¶íëîåîï! ðÅÒÅÚÁ×ÁÎÔÁÖÕ¤ÍÏ..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "îÁĦÓÌÁÔÉ ÚÁÐÉÔ HEAD ÄÌÑ D)ÏËÕÍÅÎÔÁ ÞÉ L)ink, ÞÉ C)ËÁÓÕ×ÁÔÉ? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "îÁĦÓÌÁÔÉ ÚÁÐÉÔ HEAD ÄÌÑ D)ÏËÕÍÅÎÔÁ, ÞÉ C)ËÁÓÕ×ÁÔÉ? (d,c): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "÷ÉÂÁÞÔÅ, ÄÏËÕÍÅÎÔ ÎÅ ¤ http URL."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "÷ÉÂÁÞÔÅ, ÐÏÓÉÌÁÎÎÑ ÎÅ ¤ http URL."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "÷ÉÂÁÞÔÅ ä¶à (ACTION) ÄÌÑ Ã¦¤§ ÆÏÒÍÉ ÚÁÂÏÒÏÎÅÎÏ."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "÷ÉÂÁÞÔÅ, ä¶ñ (ACTION) ÄÌÑ Ã¦¤§ ÆÏÒÍÉ ÎÅ ¤ http URL."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "ãÅ ÎÅ http URL ÞÉ ä¶ñ (ACTION) ÆÏÒÍÉ!"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "ãÅÊ ÎÅÔÉÐÏ×ÉÊ URL ÎÅ ÍÏÖÅ ÂÕÔÉ ä¶´à (ACTION) ÆÏÒÍÉ!"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "URL ÚÁ ÍÅÖÁÍÉ ÐÏÞÁÔËÏ×ϧ ÏÂÌÁÓÔ¦ ÄÏÓÔÕÐÕ!"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "îÁÄÓÉÌÁÎÎÑ ÎÏ×ÉÎ ÚÁÂÏÒÏÎÅÎÏ!"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "ð¦ÄÔÒÉÍËÕ ÕÐÒÁ×̦ÎÎÑ ÆÁÊÌÁÍÉ ÚÁÂÏÒÏÎÅÎÏ!"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr ""
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "óÔÒÉÂÎÕÔÉ ÄÏ ('?' ÐÏËÁÖÅ ÓÐÉÓÏË): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "óÔÒÉÂÁÔÉ ÄÏ shortcut URL ÚÁÂÏÒÏÎÅÎÏ!"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr ""
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr ""
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "ïÐÅÒÁæ§ ¦Ú ÚÁËÌÁÄÉÎËÁÍÉ ÎÁÒÁÚ¦ ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "úÁÐÕÓËÁÔÉ ÐÒÏÇÒÁÍÉ ÞÅÒÅÚ ÚÁËÌÁÄÉÎËÉ ÚÁÂÏÒÏÎÅÎÏ."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "æÁÊÌÁ ÚÁËÌÁÄÉÎÏË ÎÅ ×ÉÚÎÁÞÅÎÏ. %s ÐÏËÁÖÅ ×ÁÒ¦ÁÎÔÉ."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ ÄÌÑ ËÏÎ×ÅÒÓ¦§ X Mosaic hotlist."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "ðïíéìëá - ÎÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ÆÁÊÌ ÚÁËÌÁÄÉÎÏË."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ÆÁÊÌ ÚÁËÌÁÄÉÎÏË ÄÌÑ ×ÉÄÁÌÅÎÎÑ ÐÏÓÉÌÁÎÎÑ."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ ÄÌÑ ×ÉÄÁÌÅÎÎÑ ÐÏÓÉÌÁÎÎÑ."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "ðÏÍÉÌËÁ ÐÅÒÅÊÍÅÎÕ×ÁÎÎÑ ÔÉÍÞÁÓÏ×ÏÇÏ ÆÁÊÌÕ."
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "ðÏÍÉÌËÁ ÐÅÒÅÊÍÅÎÕ×ÁÎÎÑ ÔÉÍÞÁÓÏ×ÏÇÏ ÆÁÊÌÕ."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "îÅÍÏÖÌÉ×Ï ÓËÏЦÀ×ÁÔÉ ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ ÄÌÑ ×ÉÄÁÌÅÎÎÑ ÐÏÓÉÌÁÎÎÑ."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "îÅÍÏÖÌÉ×Ï ÐÅÒÅצÄËÒÉÔÉ ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ ÄÌÑ ×ÉÄÁÌÅÎÎÑ ÐÏÓÉÌÁÎÎÑ."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "ðÏÓÉÌÁÎÎÑ ÚÁÊÍÁ¤ ¦ÌØÛÅ ÏÄÎÏÇÏ ÒÑÄËÁ Õ ÆÁÊ̦ ÚÁËÌÁÄÉÎÏË."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "÷ÉÄÁÌÉÔÉ ÚÁËÌÁÄÉÎËÕ ÎÅ ×ÄÁÌÏÓÑ."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ÆÁÊÌ ÚÁËÌÁÄÉÎÏË, ÓÐÅÒÛÕ ÚÂÅÒÅÖ¦ÔØ ÔÁÍ ÝÏÓØ ('a')"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "õ ÆÁÊ̦ ÚÁËÌÁÄÉÎÏË ÎÅÍÁ¤ ÐÏÓÉÌÁÎØ!"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "îÁĦÓÌÁÔÉ ÚÁÐÉÔ HEAD ÄÌÑ D)ÏËÕÍÅÎÔÁ, ÞÉ C)ËÁÓÕ×ÁÔÉ? (d,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "úÂÅÒÅÇÔÉ D)ÏËÕÍÅÎÔ, ÚÒÏÂÉÔÉ ÚÁËL)ÁÄÉÎËÕ ÞÉ C)ËÁÓÕ×ÁÔÉ? (d,l,c): "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "úÂÅÒÅÇÔÉ D)ÏËÕÍÅÎÔ Õ ÆÁÊ̦ ÚÁËÌÁÄÉÎÏË ÞÉ C)ËÁÓÕ×ÁÔÉ? (d,c): "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "úÂÅÒÅÇÔÉ ÐÏÓÉL)ÁÎÎÑ Õ ÆÁÊ̦ ÚÁËÌÁÄÉÎÏË ÞÉ C)ËÁÓÕ×ÁÔÉ? (l,c): "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "äÏËÕÍÅÎÔÉ, ÏÔÒÉÍÁΦ ÞÅÒÅÚ ÆÏÒÍÕ POST, ÎÅÍÏÖÌÉ×Ï ÚÂÅÒÅÇÔÉ ÑË ÚÁËÌÁÄÉÎËÉ."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "îÅÍÏÖÌÉ×Ï ÚÂÅÒÅÇÔÉ ÐÏÌÑ/ÐÏÓÉÌÁÎÎÑ ÆÏÒÍÉ"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "¶ÓÔÏÒ¦À, showinfo, ÍÅÎÀ ÔÁ ÆÁÊÌÉ ÓÐÉÓË¦× ÎÅÍÏÖÌÉ×Ï ÚÂÅÒ¦ÇÁÔÉ ÑË ÚÁËÌÁÄÉÎËÉ."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "þÉ ×É Ä¦ÊÓÎÏ ÂÁÖÁ¤ÔÅ ÚÎÉÝÉÔÉ ÃÅ ÐÏÓÉÌÁÎÎÑ ¦Ú ÆÁÊÌÕ ÚÁËÌÁÄÉÎÏË?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "îÅצÒÎÏ ÓÆÏÒÍÏ×ÁÎÁ ÁÄÒÅÓÁ."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr ""
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr ""
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "\"í'ÑËÉÊ\" ÒÅÖÉÍ ÏÂÒÏÂËÉ ÐÏÄצÊÎÉÈ ÌÁÐÏË õ÷¶íëîåîï!"
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "\"í'ÑËÉÊ\" ÒÅÖÉÍ ÏÂÒÏÂËÉ ÐÏÄצÊÎÉÈ ÌÁÐÏË ÷éíëîåîï!"
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "÷ÉËÏÒÉÓÔÏ×Õ¤ÍÏ TagSoup-ÏÂÒÏÂËÕ HTML."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "÷ÉËÏÒÉÓÔÏ×Õ¤ÍÏ SortaSGML-ÏÂÒÏÂËÕ HTML!"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "÷É ×ÖÅ × Ë¦Îæ ÃØÏÇÏ ÄÏËÕÍÅÎÔÁ."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "÷É ×ÖÅ ÎÁ ÐÏÞÁÔËÕ ÃØÏÇÏ ÄÏËÕÍÅÎÔÁ."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "÷É ×ÖÅ ÎÁ ÓÔÏÒ¦Îæ %d ÃØÏÇÏ ÄÏËÕÍÅÎÔÁ."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "ðÏÓÉÌÁÎÎÑ Ú ÎÏÍÅÒÏÍ %d ÑËÒÁÚ ¤ ÐÏÔÏÞÎÉÍ."
+
+#  ÍÅΦ ÎÅ ÐÏÄÏÂÁ¤ÔØÓÑ "ÎÁ ÄÏËÕÍÅÎÔ¦"
+#  ÍÅΦ ÎÅ ÐÏÄÏÂÁ¤ÔØÓÑ "ÎÁ ÄÏËÕÍÅÎÔ¦"
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "÷É ×ÖÅ ÂÁÞÉÔÅ ÐÅÒÛÉÊ ÄÏËÕÍÅÎÔ"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "îÁÄ ÃÉÍ ÒÑÄËÏÍ ÄÏËÕÍÅÎÔÁ ÐÏÓÉÌÁÎØ ÎÅÍÁ¤."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "ð¦Ä ÃÉÍ ÒÑÄËÏÍ ÄÏËÕÍÅÎÔÁ ÐÏÓÉÌÁÎØ ÎÅÍÁ¤."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "äÏÓÑÇÎÕÔÏ ÍÁËÓÉÍÁÌØÎϧ ÄÏ×ÖÉÎÉ! ú¦ÔÒ¦ÔØ ÔÅËÓÔ ÞÉ ÚÁÌÉÛÔÅ ÐÏÌÅ."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "÷É ÎÅ ÎÁ ËÎÏÐæ ÚÁÔ×ÅÒÄÖÅÎÎÑ ÆÏÒÍÉ ÞÉ Ú×ÉÞÁÊÎÏÍÕ ÐÏÓÉÌÁÎΦ."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "ïÄÎÁ ÒÁĦÏËÎÏÐËÁ ÚÁ×ÖÄÉ ÍÕÓÉÔØ ÂÕÔÉ ÁËÔÉ×Ï×ÁÎÁ!"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "îÅÍÁ ËÎÏÐËÉ ×¦ÄÓÉÌÁÎÎÑ Ã¦¤§ ÆÏÒÍÉ, צĦÓÌÁÔÉ ÌÉÛÅ ÔÅËÓÔÏ×Å ÐÏÌÅ?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "âÁÖÁ¤ÔÅ ÐÏ×ÅÒÎÕÔÉÓÑ ÄÏ ÐÏÐÅÒÅÄÎØÏÇÏ ÄÏËÕÍÅÎÔÁ?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ ÓÔÒ¦ÌËÉ ÞÉ ÔÁÂÕÌÑæÀ ÝÏ ڦÊÔÉ Ú ÐÏÌÑ ÆÏÒÍÉ."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "÷×ÅĦÔØ ÔÅËÓÔ. ÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ ÓÔÒ¦ÌËÉ ÞÉ ÔÁÂÕÌÑæÀ, ÝÏ ڦÊÔÉ."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** ðÏÇÁÎÉÊ HTML!!  îÅ ×ÉÚÎÁÞÅÎÏ ä¶à ÆÏÒÍÉ. **"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "** äÕÒÎÉÊ HTML!! îÅÍÏÖÌÉ×Ï ÓÔ×ÏÒÉÔÉ ÓÐÌÉ×ÁÀÞŠצËÎÏ!"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "îÅÍÏÖÌÉ×Ï ÓÔ×ÏÒÉÔÉ ÓÐÌÉ×ÁÀÞŠצËÎÏ!"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "ðÅÒÅÈÏÄÉ ÎÁ ×ÉÐÁÄËÏצ URL'¦ ÚÁÂÏÒÏÎÅΦ!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "ðÅÒÅÈÏÄÉ ÎÁ ÎÅ-http URL'¦ ÚÁÂÏÒÏÎÅΦ!"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "÷ÁÍ ÎÅ ÄÏÚ×ÏÌÅÎÏ ÐÅÒÅÈÏÄÉÔÉ ÄÏ \"%s:\" URL'¦×"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "÷×ÅĦÔØ ÁÄÒÅÓÕ: "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÃÀ ÁÄÒÅÓÕ: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÐÏÐÅÒÅÄÎÀ ÁÄÒÅÓÕ: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÐÏÐÅÒÅÄÎÀ ÁÄÒÅÓÕ: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "ãÅÊ ÄÏËÕÍÅÎÔ Í¦ÓÔÉÔØ ÄÁΦ ÄÌÑ POST"
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÁÄÒÅÓÕ ÃØÏÇÏ ÄÏËÕÍÅÎÔÁ: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÁÄÒÅÓÕ ÃØÏÇÏ ÐÏÓÉÌÁÎÎÑ: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "÷É ÎÅ ÍÏÖÅÔÅ ÒÅÄÁÇÕ×ÁÔÉ URL'¦ ËÅÒÕ×ÁÎÎÑ ÆÁÊÌÁÍÉ"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "÷×ÅĦÔØ ÚÁÐÉÔ ÄÏ ÂÁÚÉ ÄÁÎÉÈ: "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "÷×ÅĦÔØ ÚÁÐÉÔ whereis: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÃÅÊ ÚÁÐÉÔ: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÐÏÐÅÒÅÄÎ¦Ê ÚÁÐÉÔ: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÐÏÐÅÒÅÄÎ¦Ê ÚÁÐÉÔ: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "îÁÔÉÓΦÔØ Control-R ÄÌÑ ÐÅÒÅÚÁÔ×ÅÒÄÖÅÎÎÑ ÃØÏÇÏ ÚÁÐÉÔÕ."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÃÀ ÚÁËÌÁÄÉÎËÕ: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÐÏÐÅÒÅÄÎÀ ÚÁËÌÁÄÉÎËÕ: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÐÏÐÅÒÅÄÎÀ ÚÁËÌÁÄÉÎËÕ: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr ""
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "îÅ ÍÏÖÕ ÚÎÁÊÔÉ jump file!"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ jump file!"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "ðÏÍÉÌËÁ ÞÉÔÁÎÎÑ jump file!"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "îÅ ×ÉÓÔÁÞÉÌÏ ÐÁÍ'ÑÔ¦ ÐÒÉ ÞÉÔÁÎΦ jump file!"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "îÅ ×ÉÓÔÁÞÉÌÏ ÐÁÍ'ÑÔ¦ ÐÒÉ ÞÉÔÁÎΦ jump table!"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "öÏÄÅÎ ¦ÎÄÅËÓ ÎÁÒÁÚ¦ ÎÅÄÏÓÔÕÐÎÉÊ."
+
+# ÐÅÒÅÊÔÉ ÎÁ ÅËÒÁÎ - ÃÅ ÝÏÓØ Ë¦ÎÏÛÎÅ ;)
+# ÐÅÒÅÊÔÉ ÎÁ ÅËÒÁÎ - ÃÅ ÝÏÓØ Ë¦ÎÏÛÎÅ ;)
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "÷É ÓÐÒÁ×Ħ ÈÏÞÅÔÅ ÐÅÒÅÊÔÉ ÄÏ ÇÏÌÏ×ÎÏÇÏ ÅËÒÁÎÕ?"
+
+# ÎÁ ÅËÒÁΦ - ÃÅ ÝÏÓØ Ë¦ÎÏÛÎÅ ;)
+# ÎÁ ÅËÒÁΦ - ÃÅ ÝÏÓØ Ë¦ÎÏÛÎÅ ;)
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "÷É ÑËÒÁÚ ÂÁÞÉÔÅ ÇÏÌÏ×ÎÉÊ ÅËÒÁÎ!"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr ""
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "÷ÌÁÓÎÉËÁ ÃØÏÇÏ ÆÁÊÌÕ ÎÅ ×ÉÚÎÁÞÅÎÏ, ÏÔÖÅ ÎÅÍÏÖÌÉ×Ï ÎÁĦÓÌÁÔÉ ËÏÍÅÎÔÁÒ"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "÷ÌÁÓÎÉËÁ ÎÅ ×ÉÚÎÁÞÅÎÏ. ÷ÉËÏÒÉÓÔÁÔÉ %s?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "÷É ÂÁÖÁ¤ÔŠצĦÓÌÁÔÉ ËÏÍÅÎÔÁÒ?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "îÁÄÓÉÌÁÔÉ ÐÏÛÔÕ ÚÁÂÏÒÏÎÅÎÏ, ÔÏÖ ×É ÎÅ ÍÏÖÅÔŠצĦÓÌÁÔÉ ËÏÍÅÎÔÁÒ."
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "ëÏÍÁÎÄÕ Ò'Å'ÄÁÇÕ×ÁÔÉ ÎÁÒÁÚ¦ ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "úÏ×ΦÛΤ ÒÅÄÁÇÕ×ÁÎÎÑ ÎÁÒÁÚ¦ ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "óÉÓÔÅÍÎÁ ÐÏÍÉÌËÁ - ÎÅ ×ÄÁÌÏÓÑ ÏÔÒÉÍÁÔÉ ÓÔÁÔÕÓ."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "îÅ ×ÉÚÎÁÞÅÎÏ ÐÒÏÇÒÁÍÕ ÄÌÑ ÒÅÄÁÇÕ×ÁÎÎÑ!"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "ëÏÍÁÎÄÕ Ä'Ò'ÕËÕ×ÁÔÉ ÎÁÒÁÚ¦ ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "äÏËÕÍÅÎÔ ÎŠͦÓÔÉÔØ ÐÏÓÉÌÁÎØ ÐÁÎÅ̦ ¦ÎÓÔÒÕÍÅÎÔ¦× ÞÉ ÂÁÎÅÒ¦×."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ traversal file."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ traversal found file."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ reject file."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ traversal errors output file"
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr ""
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "êÔÉ ÚÁ ÐÏÓÉÌÁÎÎÑÍ (ÁÂÏ ÐÅÒÅÊÔÉ ÎÁ ÓÔÏÒ¦ÎËÕ) ¦Ú ÎÏÍÅÒÏÍ: "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "÷ËÁÖ¦ÔØ ÎÏÍÅÒ ×ÁÒ¦ÁÎÔÕ ÞÉ ÓÔÏÒ¦ÎËÉ: "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "÷ÁÒ¦ÁÎÔ ÎÏÍÅÒ %d ÑËÒÁÚ ¤ ÐÏÔÏÞÎÉÍ."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "÷É ×ÖÅ × Ë¦Îæ ÃØÏÇÏ ÓÐÉÓËÕ."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "÷É ×ÖÅ ÎÁ ÐÏÞÁÔËÕ ÃØÏÇÏ ÓÐÉÓËÕ."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "÷É ×ÖÅ ÑËÒÁÚ ÓÔÏÒ¦Îæ %d ÃØÏÇÏ ÓÐÉÓËÕ."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "÷É ××ÅÌÉ ÎÅצÒÎÉÊ ÎÏÍÅÒ ×ÁÒ¦ÁÎÔÕ."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** ðÏÇÁÎÉÊ HTML!! äÌÑ Ä¦ÁÇÎÏÓÔÉËÉ ×ÉËÏÒÉÓÔÁÊÔÅ ÐÁÒÁÍÅÔÒ -trace. **"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "÷ËÁÖ¦ÔØ ¦Í'Ñ ÆÁÊÌÕ, Õ ÑËÏÍÕ ÚÂÅÒÅÇÔÉ"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr ""
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ!"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ×ÉȦÄÎÉÊ ÆÁÊÌ!  ÷¦ÄͦÎÅÎÏ!"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "úÁÐÕÓËÁÔÉ ËÏÍÁÎÄÉ ÚÁÂÏÒÏÎÅÎÏ."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "÷ÉËÏÎÁÎÎÑ ÎÅ ÄÏÚ×ÏÌÅÎÅ ÄÌÑ ÃØÏÇÏ ÆÁÊÌÕ.  äÉ×ÉÓØ ÍÅÎÀ ÐÁÒÁÍÅÔÒ¦× (%s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "íÏÖÌÉצÓÔØ ÚÁÐÕÓËÁÎÎÑ ÐÒÏÇÒÁÍ ÎÅ ÓËÏÍЦÌØÏ×ÁÎÁ × Ã¦Ê ×ÅÒÓ¦§."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "ãÅÊ ÆÁÊÌ ÎÅÍÏÖÌÉ×Ï ÐÏËÁÚÁÔÉ ÎÁ ÔÁËÏÍÕ ÔÅÒͦÎÁ̦."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "ãÅÊ ÆÁÊÌ ÎÅÍÏÖÌÉ×Ï ÐÏËÁÚÁÔÉ ÎÁ ÔÅÒͦÎÁ̦: D) ÔÑÇÔÉ ÞÉ C)ËÁÓÕ×ÁÔÉ"
+
+# nothing to say
+# nothing to say
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D) ÔÑÇÔÉ ÞÉ C)ËÁÓÕ×ÁÔÉ"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "æÁÊÌ ÓËÁÓÏ×ÁÎÏ."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "ôÑÇÎÅÍÏ ÆÁÊÌ.  - úáþåëáêôå -"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "÷×ÅĦÔØ ¦Í'Ñ ÆÁÊÌÕ: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "÷×ÅĦÔØ ÐÏÐÅÒÅÄΤ ¦Í'Ñ ÆÁÊÌÕ: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "úËÏÒÉÇÕÊÔÅ ÐÏÐÅÒÅÄΤ ¦Í'Ñ ÆÁÊÌÁ: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "÷×ÅĦÔØ ÎÏ×Å ¦Í'Ñ ÆÁÊÌÕ: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "îÅ ÍÏÖÎÁ ÐÏÞÉÎÁÔÉ ¦Í'Ñ ÆÁÊÌÕ Ú ËÒÁÐËÉ."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "æÁÊÌ ¦ÓÎÕ¤.  óÔ×ÏÒÉÔÉ ÎÏ×Õ ×ÅÒÓ¦À?"
+
+# ÎÅÐÒÉÎÃÉÐÏ×Ï - ÑË ÚÁÌÉÛÉÛ. Õ ÏÒÉǦÎÁ̦ Ä×Á ÐÒϦÌÉ ;)
+# ÎÅÐÒÉÎÃÉÐÏ×Ï - ÑË ÚÁÌÉÛÉÛ. Õ ÏÒÉǦÎÁ̦ Ä×Á ÐÒϦÌÉ ;)
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "æÁÊÌ ¦ÓÎÕ¤.  ðÅÒÅÚÁÐÉÓÁÔÉ?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "îÅÍÏÖÌÉ×Ï ÚÁÐÉÓÁÔÉ Õ ÆÁÊÌ."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "ðïíéìëá! - ËÏÍÁÎÄÕ ÚÁÔÑÇÕ×ÁÎÎÑ ÎÅ ÓËÏÎƦÇÕÒÏ×ÁÎÏ."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "îÅÍÏÖÌÉ×Ï ÚÁÔÑÇÔÉ ÆÁÊÌ."
+
+# ôåòí¶îïìïç¶ñ (Á ÝÏ ËÁÖÅ ÐÒÏÅËÔ ÓÌÏ×ÎÉËÁ?)
+# ôåòí¶îïìïç¶ñ (Á ÝÏ ËÁÖÅ ÐÒÏÅËÔ ÓÌÏ×ÎÉËÁ?)
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "þÉÔÁ¤ÍÏ ËÁÔÁÌÏÇ..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "âÕÄÕÀ ÓÐÉÓÏË ÆÁÊÌ¦× Õ ËÁÔÁÌÏÚ¦..."
+
+# úÂÅÒÅÖÅÎÎÑ - ÐÒÏÃÅÓ, ÚÁÐÉÓ - ÏÂ'¤ËÔ (Õ ÂÌÏËÎÏÔ¦, ÎÁÐÒÉËÌÁÄ)
+# úÂÅÒÅÖÅÎÎÑ - ÐÒÏÃÅÓ, ÚÁÐÉÓ - ÏÂ'¤ËÔ (Õ ÂÌÏËÎÏÔ¦, ÎÁÐÒÉËÌÁÄ)
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "úÂÅÒÅÖÅÎÎÑ..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "îÅ ÍÏÖÕ ÒÅÄÁÇÕ×ÁÔÉ ÆÁÊÌ '%s'."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "îÅ ÍÏÖÕ Ä¦ÓÔÁÔÉÓÑ ÄÏ ÄÏËÕÍÅÎÔÁ!"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "îÅ ÍÏÖÕ Ä¦ÓÔÁÔÉÓÑ ÄÏ ÆÁÊÌÕ."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "îÅ ÍÏÖÕ Ä¦ÓÔÁÔÉÓÑ ÄÏ ËÁÔÁÌÏÇÕ."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "îÅ ÍÏÖÕ ÚÁ×ÁÎÔÁÖÉÔÉ ÄÁΦ."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Lynx ÝÅ ÎÅ ÚÄÁÔÎÉÊ Ò(e)ÄÁÇÕ×ÁÔÉ ×¦ÄÄÁÌÅΦ WWW ÆÁÊÌÉ."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "ãÅ ÐÏÌÅ ÎÅÍÏÖÌÉ×Ï ×¦ÄÒ(e)ÄÁÇÕ×ÁÔÉ ÚÏ×ΦÛÎ¦Í ÒÅÄÁËÔÏÒÏÍ."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "ðÏÇÁÎÅ ÐÒÁ×ÉÌÏ"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "îÅÄÏÓÔÁÔÎØÏ ÏÐÅÒÁÎĦ×:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "÷ÁÍ ÎÅ ÄÏÚ×ÏÌÅÎÏ ÒÅÄÁÇÕ×ÁÔÉ ÃÅÊ ÆÁÊÌ."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "úÁÇÏÌÏ×ÏË: "
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "ôÅÍÁ: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "¶Í'Ñ ËÏÒÉÓÔÕ×ÁÞÁ: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "ðÁÒÏÌØ: "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: îÅÏÂȦÄΦ ¦Í'Ñ ËÏÒÉÓÔÕ×ÁÞÁ ÔÁ ÐÁÒÏÌØ!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: ôÒÅÂÁ ÐÁÒÏÌØ!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "úÁÂÕÔÉ ÄÁΦ Á×ÔÏÒÉÚÁæ§ ÄÌÑ Ã¦¤§ ÓÅÓ¦§?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "äÁΦ Á×ÔÏÒÉÚÁæ§ ÚÁÂÕÔÏ."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "îÅ ×ÄÁÌÏÓÑ Á×ÔÏÒÉÚÕ×ÁÔÉÓÑ. ðÒÏÂÕ¤ÍÏ ÝÅ?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "ð¦ÄÔÒÉÍËÕ cgi ÂÕÌÏ ÚÁÂÏÒÏÎÅÎÏ."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "íÏÖÌÉ×ÏÓÔ¦ Lynxcgi ÎÅ ÓËÏÍЦÌØÏ×ÁΦ Õ Ã¦Ê ×ÅÒÓ¦§."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "÷ÉÂÁÞÔÅ, ÎÅ ÚÎÁÀ, ÑË ÓËÏÎ×ÅÒÔÕ×ÁÔÉ %s Õ %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "îÅ ÍÏÖÕ ×ÓÔÁÎÏ×ÉÔÉ Ú'¤ÄÎÁÎÎÑ."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "îÅ ÍÏÖÕ ×ÓÔÁÎÏ×ÉÔÉ Ú'¤ÄÎÁÎÎÑ"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "ðÏÓÉÌÁÎÎÑ ¦Ú ×ÉËÏÎÁÎÎÑÍ ×¦ÄËÉÎÕÔÏ ÞÅÒÅÚ ÐÏÇÁÎÏ ÓÆÏÒÍÏ×ÁÎÉÊ ÚÁÐÉÔ."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "ðÏÓÉÌÁÎÎÑ ¦Ú ×ÉËÏÎÁÎÎÑÍ ×¦ÄËÉÎÕÔÏ ÞÅÒÅÚ ÓÉÍ×ÏÌ \"%c\"."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "ðÏÓÉÌÁÎÎÑ ¦Ú ×ÉËÏÎÁÎÎÑÍ ×¦ÄËÉÎÕÔÏ ÞÅÒÅÚ ÒÑÄÏË ×¦ÄÎÏÓÎÏÇÏ ÛÌÑÈÕ ('../')."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "ðÏÓÉÌÁÎÎÑ ¦Ú ×ÉËÏÎÁÎÎÑÍ ×¦ÄËÉÎÕÔÏ Ú ÐÒÉÞÉÎ, ÝÏ ÓÔÏÓÕÀÔØÓÑ Í¦ÓÃÑ ÞÉ ÛÌÑÈÕ."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "ìÉÓÔÕ×ÁÎÎÑ ÚÁÂÏÒÏÎÅÎÅ!"
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "ìÉÛÅ ÆÁÊÌÉ ÔÁ ÓÅÒ×ÅÒÉ ÎÁ ÌÏËÁÌØÎ¦Ê ÍÁÛÉΦ ÍÏÖÕÔØ ÂÕÔÉ ÄÏÓÔÕÐÎÉÍÉ."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "ôÅÌÎÅÔÁ ÚÁÂÏÒÏÎÅÎÏ!"
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "÷ËÁÚÕ×ÁÔÉ ÐÏÒÔ ÔÅÌÎÅÔÁ ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "äÏÓÔÕÐ ÄÏ ÎÏ×ÉÎ USENET ÚÁÂÏÒÏÎÅÎÉÊ!"
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "äÏÓÔÕÐ rlogin ÚÁÂÏÒÏÎÅÎÉÊ!"
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "äÏÓÔÕÐ FTP ÚÁÂÏÒÏÎÅÎÉÊ!"
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "îÅÍÁ¤ ÐÏÓÉÌÁÎØ Ú ÃØÏÇÏ ÄÏËÕÍÅÎÔÁ."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "ìÉÛÅ ÓÈÏ×ÁΦ ÐÏÓÉÌÁÎÎÑ Ú ÃØÏÇÏ ÄÏËÕÍÅÎÔÁ."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ËÏÍÁÎÄÎÏÇÏ ÆÁÊÌÕ."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "îÁÄÓÉÌÁÎÎÑ ÌÉÓÔÁ îÏ×ÉÎ óËÁÓÏ×ÁÎÏ!!!"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "úÁÐÕÓËÁ¤ÍÏ ÏÂÒÁÎÏÇÏ ×ÁÍÉ ÒÅÄÁËÔÏÒÁ ÄÌÑ ÒÅÄÁÇÕ×ÁÎÎÑ ÌÉÓÔÁ"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "÷¦Ä¦ÓÌÁÔÉ ÃÅ ÐÏצÄÏÍÌÅÎÎÑ?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "äÏÄÁÔÉ '%s'?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "îÁÄÓÉÌÁ¤ÍÏ ÄÏ ÇÒÕÐ(É) ÎÏ×ÉÎ..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** õ ×ÁÓ ¤ ÎÅÐÒÏÞÉÔÁÎÁ ÐÏÛÔÁ. ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** õ ×ÁÓ ¤ ÐÏÛÔÁ. ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** õ ×ÁÓ ¤ ÎÏ×Á ÐÏÛÔÁ. ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "÷ÓÔÁ×ÌÑÎÎÑ ÆÁÊÌÕ ×¦ÄͦÎÅÎÅ!!!"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "îÅÄÏÓÔÁÔÎØÏ ÐÁÍ'ÑÔ¦ ÄÌÑ ÆÁÊÌÕ!"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ÆÁÊÌ ÄÌÑ ÞÉÔÁÎÎÑ."
+
+# "æÁÊÌ" - ÚÎÁÞÉÔØ, *ÆÁÊÌ*, ÑË ¦Ú the Õ ÁÎÇÌ. ÍÏצ. áÌÅ ÊÏÇÏ Ö ÎÅÍÁ!
+# äÕÍÁÀ, ËÒÁÝÅ "ôÁËÏÇÏ ÆÁÊÌÕ ÎÅ ¦ÓÎÕ¤."
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "ôÁËÏÇÏ ÆÁÊÌÕ ÎÅ ¦ÓÎÕ¤."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "ôÁËÏÇÏ ÆÁÊÌÕ ÎÅ ¦ÓÎÕ¤ - ××ÅÄÕÔØ ÚÎÏ×Õ ÞÉ ÓËÁÓÕÊÔÅ:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "æÁÊÌ ÎÅÍÏÖÌÉ×Ï ÐÒÏÞÉÔÁÔÉ."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "æÁÊÌ ÎÅÍÏÖÌÉ×Ï ÐÒÏÞÉÔÁÔÉ - ××ÅĦÔØ ÝÅ ÒÁÚ ÞÉ ÓËÁÓÕÊÔÅ:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "îÅÍÁ ÞÏÇÏ ×ÓÔÁ×ÌÑÔÉ - ÆÁÊÌ ÚÁ×ÄÏ×ÖËÉ 0 ÂÁÊÔ."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "úÁÐÉÔ ÎÁ ÚÂÅÒÅÖÅÎÎÑ ÓËÁÓÏ×ÁÎÏ!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "úÁÐÉÔ ÎÁ צÄÐÒÁ×ËÕ ÌÉÓÔÁ ÓËÁÓÏ×ÁÎÏ!!!"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "ðÏËÁÚÕÀ ÎÅÏÐÒÁÃØÏ×ÁΦ ÓÉÒæ.  ÷É Ä¦ÊÓÎÏ ÈÏÞÅÔÅ ÎÁĦÓÌÁÔÉ ÓÁÍÅ §È?"
+
+# @ ark drakconf evolution gimp lynx
+# * Yuri Syrota <rasta@renome.rovno.ua>
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "âÕÄØ ÌÁÓËÁ, ÚÁÞÅËÁÊÔÅ..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "îÁÄÓÉÌÁ¤ÍÏ ÆÁÊÌ. âÕÄØÔÅ ÌÁÓËÁצ, ÚÁÞÅËÁÊÔÅ..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "ðïíéìëá - ÎÅ ×ÄÁÌÏÓÑ ÎÁĦÓÌÁÔÉ ÆÁÊÌ"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "ãÅÊ ÆÁÊÌ ÚÁ×ÄÏ×ÖËÉ %d ÅËÒÁΦ×. ÷É ×ÐÅ×ÎÅΦ, ÝÏ ÂÁÖÁ¤ÔÅ ÊÏÇÏ ÄÒÕËÕ×ÁÔÉ?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "äÒÕËÕ×ÁÎÎÑ ÓËÁÓÏ×ÁÎÏ!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "îÁÔÉÓΦÔØ <×צÄ> ÝÏ ÐÏÞÁÔÉ: "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "îÁÔÉÓΦÔØ <×צÄ> ÝÏ ÚÁ˦ÎÞÉÔÉ: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "ãÅÊ ÆÁÊÌ ÚÁ×ÄÏ×ÖËÉ %d ÓÔÏÒ¦ÎÏË. ÷É ×ÐÅ×ÎÅΦ, ÝÏ ÂÁÖÁ¤ÔÅ ÊÏÇÏ ÄÒÕËÕ×ÁÔÉ?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "÷ÐÅ×ΦÔØÓÑ, ÝÏ ÄÒÕËÁÒËÁ ÇÏÔÏ×Á.  îÁÔÉÓΦÔØ <×צÄ> ÝÏ ÐÏÞÁÔÉ ÄÒÕË:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "ðïíéìëá - îÅÍÏÖÌÉ×Ï ×ÉĦÌÉÔÉ Í¦ÓÃÅ ÄÌÑ ÆÁÊÌÁ!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ ÆÁÊÌ ÎÁÌÁÛÔÕ×ÁÎØ ÄÒÕËÁÒËÉ"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "äÒÕËÕ¤ÍÏ ÆÁÊÌ. âÕÄØÔÅ ÌÁÓËÁצ, ÚÁÞÅËÁÊÔÅ..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "âÕÄØ ÌÁÓËÁ, ××ÅĦÔØ ×¦ÒÎÕ ÐÏÛÔÏ×Õ ÁÄÒÅÓÕ: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "ðïíéìëá - ÄÒÕËÁÒËÕ ÎÅ ÓËÏÎƦÇÕÒÏ×ÁÎÏ!"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr ""
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr ""
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr ""
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr ""
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "äÌÑ ÍÅÎÀ îÁÌÁÛÔÕ×ÁÎØ ÅËÒÁÎ ÍÕÓÉÔØ ÂÕÔÉ ÎÅ ÍÅÎÛ, Î¦Ö 24 ÒÑÄËÉ!"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "äÌÑ ÍÅÎÀ îÁÌÁÛÔÕ×ÁÎØ ÅËÒÁÎ ÍÕÓÉÔØ ÂÕÔÉ ÎÅ ÍÅÎÛ, Î¦Ö 23-É ÒÑÄËÉ!"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "äÌÑ ÍÅÎÀ îÁÌÁÛÔÕ×ÁÎØ ÅËÒÁÎ ÍÕÓÉÔØ ÂÕÔÉ ÎÅ ÍÅÎÛ, Î¦Ö 22-Á ÒÑÄËÁ!"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "ãÑ ËÏÍÁÎÄÁ ÐÒÁÃÀ¤ ÌÉÛÅ Õ ÒÅÖÉͦ ËÏÒÉÓÔÕ×ÁÎÎÑ Advanced."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "ôÉÐ ×ͦÓÔÕ: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "ëÏÍÁÎÄÁ: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "îÅצÄÏÍÁ ÞÉ ÎÅÏÄÎÏÚÎÁÞÎÁ ËÏÍÁÎÄÁ"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " ÷ÅÒÓ¦Ñ "
+
+# ôÑÇÎÅÍÏ http://enigma.x-telecom.net/ ×ÐÅÒÛÅ (ÍÉ ÔÁÍ ÝÅ ÎÅ ÂÕÌÉ)
+# ôÑÇÎÅÍÏ http://enigma.x-telecom.net/ ×ÐÅÒÛÅ (ÍÉ ÔÁÍ ÝÅ ÎÅ ÂÕÌÉ)
+#: LYMessages.c:558
+msgid " first"
+msgstr " ×ÐÅÒÛÅ"
+
+# # FIXME: of course, I'm not sure:
+# of course, I'm not sure:
+# msgstr ", ЦÄÓÔÁÎÏ×ËÁ..."
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", ÚÄÏÇÁÄÕ¤ÍÏÓÑ..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "ðÒÁ×Á ÄÏÓÔÕÐÕ ÄÏ "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "÷ÉÂÒÁÔÉ "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "×ÅÌÉËÁ ̦ÔÅÒÁ"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr ""
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " ÝÏÂ ÚÂÅÒÅÇÔÉ,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " ÄÏ "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " ÞÉ "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " ¦ÎÄÅËÓ"
+
+# # FIXME: of course, I'm not sure:
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " ÝÏ ÐÏ×ÅÒÎÕÔÉÓÑ ÄÏ Lynx."
+
+# msgstr "ðÒÉÊÎÑÔÉ"
+# ÍÍÍÍ... ÎÅ ÚÎÁÀ. (ËÏÎÔÒ)ÁÒÇÕÍÅÎÔÉ?
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "úÁÐÒÏ×ÁÄÉÔÉ ÚͦÎÉ"
+
+# msgstr "ðÒÉÊÎÑÔÉ úͦÎÉ"
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "óËÁÓÕ×ÁÔÉ"
+
+# msgstr "÷¦ÄͦÎÉÔÉ úͦÎÉ"
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "ÓÔÒ¦ÌËÁ ×̦×Ï ÓËÁÓÏ×Õ¤ ÚͦÎÉ"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "úÂÅÒÅÇÔÉ ÐÁÒÁÍÅÔÒÉ ÎÁ ÄÉÓËÕ"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "îÁÔÉÓΦÔØ RETURN ÝÏ ЦÄÔ×ÅÒÄÉÔÉ ××ÅÄÅΦ ÄÁΦ."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "<÷צÄ> ЦÄÔ×ÅÒÄÉÔØ ××ÅÄÅΦ ÄÁΦ. ÷ÉÄÁ̦ÔØ ÕÓÅ ÄÌÑ ÐÏ×ÅÒÎÅÎÎÑ ÄÏ ÐÏÞÁÔËÕ."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "úÎÁÞÅÎÎÑ ÓÐÒÉÊÎÑÔÏ!"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "úÎÁÞÅÎÎÑ ÓÐÒÉÊÎÑÔÏ! -- õ÷áçá: Lynx ÓËÏÎƦÇÕÒÏ×ÁÎÏ ÄÌÑ XWINDOWS!"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "úÎÁÞÅÎÎÑ ÓÐÒÉÊÎÑÔÏ! -- õ÷áçá: Lynx îå ÓËÏÎƦÇÕÒÏ×ÁÎÏ ÄÌÑ XWINDOWS!"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "÷ÁÍ ÎÅ ÍÏÖÎÁ ×ÉÂÉÒÁÔÉ ÒÅÄÁËÔÏÒÁ!"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "îÅ ×ÄÁÌÏÓÑ ×ÓÔÁÎÏ×ÉÔÉ ÚͦÎÎÕ DISPLAY!"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "îÅ ×ÄÁÌÏÓÑ ÏÞÉÓÔÉÔÉ ÚͦÎÎÕ DISPLAY!"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "÷ÁÍ ÎÅ ÄÏÚ×ÏÌÅÎÏ ÚͦÎÀ×ÁÔÉ ÆÁÊÌ ÚÁËÌÁÄÉÎÏË!"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "ôÅÒͦÎÁÌ ÎŠЦÄÔÒÉÍÕ¤ ËÏÌØÏÒÉ"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "÷ÁÛ ÔÅÒͦÎÁÌ '%s' ΊЦÄÔÒÉÍÕ¤ ËÏÌØÏÒÉ."
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "äÏÓÔÕÐ ÄÏ ÓÈÏ×ÁÎÉÈ ÆÁÊÌ¦× ÚÁÂÌÏËÏ×ÁÎÏ!"
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "óÔÒ¦ÞËÁ User-Agent ΊͦÓÔÉÔØ \"Lynx\" ÞÉ \"L_y_n_x\""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "÷ÐÉÛ¦ÔØ \"L_y_n_x\" ÞÉ \"Lynx\" ÄÏ ÒÑÄËÁ User-Agent, ¦ÎÁËÛÅ ×É ÍÁÔÉÍÅÔÅ ×ÉÇÌÑÄ ÐÒÏÊÄÉÓצÔÁ!"
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "í¦ÎÑÔÉ ÒÑÄÏË User-Agent ÚÁÂÏÒÏÎÅÎÏ!"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "÷ÁÍ ÎÅ ÄÏÚ×ÏÌÅÎÏ Í¦ÎÑÔÉ Ã¦ ÕÓÔÁÎÏ×ËÉ."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "úÂÅÒÅÖÅÎÎÑ ÐÁÒÁÍÅÔÒ¦×..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "ðÁÒÁÍÅÔÒÉ ÚÂÅÒÅÖÅÎÏ!"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "îÅ ÍÏÖÕ ÚÂÅÒÅÇÔÉ ðÁÒÁÍÅÔÒÉ!"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr " 'r' ÐÏ×ÅÒÔÁ¤ ÄÏ Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " '>' ÚÂÅÒ¦ÇÁ¤, 'r' ÐÏ×ÅÒÔÁ¤ ÄÏ Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "îÁÔÉÓΦÔØ ÂÕÄØ-ÝÏ, ÝÏ ÚͦÎÉÔÉ; RETURN, ÝÏ ÐÏÇÏÄÉÔÉÓÑ."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "ðÏÍÉÌËÁ ÒÏÚÔÉÓËÁÎÎÑ ÔÉÍÞÁÓÏ×ÏÇÏ ÆÁÊÌÕ!"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "ôÁËÉÊ URL ΊЦÄÔÒÉÍÕ¤ÔØÓÑ!"
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr ""
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr ""
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr ""
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr ""
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "ÐP)ÏÄÏ×ÖÉÔÉ, ÞÉ ×ÉÔÑG)ÔÉ ÞÉ C)ËÁÓÕ×ÁÔÉ "
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "ÐP)ÏÄÏ×ÖÉÔÉ ÞÉ C)ËÁÓÕ×ÁÔÉ "
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "ðÅÒÅÎÁÐÒÁ×ÌÅÎÎÑ POST.  ÐP)ÏÄÏ×ÖÉÔÉ, ÄÉ×. U)RL, ×ÉÔÑG)ÔÉ ÞÉ C)ËÁÓÕ×ÁÔÉ"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "ðÅÒÅÎÁÐÒÁ×ÌÅÎÎÑ ×ͦÓÔÕ POST. ÐP)ÏÄÏ×ÖÉÔÉ, ÄÉ×ÉÔÉÓÑ U)RL ÞÉ C)ËÁÓÕ×ÁÔÉ"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "äÏËÕÍÅÎÔ Ú æÏÒÍÉ ¦Ú ×ͦÓÔÏÍ POST. ÷¦Ä¦ÓÌÁÔÉ ÚÁÎÏ×Ï?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "ðÅÒÅÚÁÔ×ÅÒÄÉÔÉ ×ͦÓÔ POST ÄÏ %s?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr ""
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "ðÒÏÄÏ×ÖÉÔÉ ÂÅÚ ¦ÍÅΦ ËÏÒÉÓÔÕ×ÁÞÁ ÔÁ ÐÁÒÏÌÑ?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "ðÒÏÄÏ×ÖÉÔÉ (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄÐÒÁ×ÉÔÉ ÄÁΦ POST ÎÁ ÃÅÊ ÓÅÒ×ÅÒ."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr ""
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "÷¦ÄËÉÄÁ¤ÍÏ ÄÁΦ POST..."
+
+# msgstr "äÏËÕÍÅÎÔ ÎÅ ÂÕÄÅ ÐÅÒÅÚÁ×ÁÎÔÁÖÅÎÏ!"
+# ËÁÔÅÇÏÒÉÞΦÛÅ :)
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "äÏËÕÍÅÎÔ ÐÅÒÅÚÁ×ÁÎÔÁÖÅÎÏ ÎÅ ÂÕÄÅ!"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "òÏÚͦÝÅÎÎÑ: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "'%s' ÎÅ ÚÎÁÊÄÅÎÏ!"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "óÔÁÒÔÏ×ÉÊ ÆÁÊÌ ÚÁËÌÁÄÉÎÏË"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "úÁÍÁÌÉÊ ÅËÒÁÎ! (8x35 ͦΦÍÕÍ)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "÷ËÁÖ¦ÔØ, ËÕÄÉ, ÞÉ ^G ÝÏ ÓËÁÓÕ×ÁÔÉ: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "÷ÉÂÅÒ¦ÔØ Ð¦ÄÆÁÊÌ ÚÁËÌÁÄÉÎÏË, '=' - ÍÅÎÀ, ÞÉ ^G - ÓËÁÓÕ×ÁÔÉ: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr ""
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr ""
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " ÷ÉÂÅÒ¦ÔØ ÚÁËÌÁÄÉÎËÕ (ÅËÒÁÎ %d Ú %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "      ÷ÉÂÅÒ¦ÔØ ÚÁËÌÁÄÉÎËÕ"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "òÅÄÁÇÕ×ÁÎÎÑ ïðéóõ ÔÁ í¶óãñ æáêìá úÁËÌÁÄÉÎÏË (%d Ú 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "       òÅÄÁÇÕ×ÁÎÎÑ ïðéóõ ÔÁ ûìñèõ äï æáêìá ÚÁËÌÁÄÉÎÏË"
+
+# ?????
+# msgstr "ì¦ÔÅÒÁ: "
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "ìÉÓÔ: "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr ""
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr ""
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr ""
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "îÅÍÁ¤ ÐÏÓÉÌÁÎØ, Ñ˦ ×É ×¦ÄצÄÕ×ÁÌÉ ÒÁΦÛÅ."
+
+# ËÒÁÝÅ "ÐÅÒÅÒ×ÁÎÏ", ÁÌÅ ÎÅ ÐÒÉÎÃÉÐÏ×Ï ËÒÁÝÅ
+# msgstr "÷ÉÞÅÒÐÁÎÏ ÐÁÍ'ÑÔØ! ðÒÏÇÒÁÍÕ Ï¦Ò×ÁÎÏ!"
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "îÅ ÓÔÁÌÏ ÐÁÍ'ÑÔ¦!  ðÒÏÇÒÁÍÕ ÐÅÒÅÒ×ÁÎÏ!"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "îÅ ÓÔÁÌÏ ÐÁÍ'ÑÔ¦!  ïÂÒÉ×Á¤ÍÏÓÑ..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "îÅ ×ÉÓÔÁÞÁ¤ ÐÁÍ'ÑÔ¦!"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr ""
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr ""
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "URL ÐÅÒÅÎÁÐÒÁ×ÌÅÎÎÑ ÎÅ ÁÂÓÏÌÀÔÎÉÊ."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "\"Refresh\" URL ÎÅ ÁÂÓÏÌÀÔÎÉÊ."
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"÷É ×¦ÄÓÉÌÁ¤ÔÅ ÐÏצÄÏÍÌÅÎÎÑ Ú Ô¦ÌÏÍ ÄÏ:\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"÷É ×¦ÄÓÉÌÁ¤ÔÅ ËÏÍÅÎÔÁÒ ÄÏ:\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" ú ËÏЦ¤À ÄÏ:\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" ú ËÏЦÑÍÉ ÄÏ:\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"îÁÔÉÓΦÔØ Ctrl-G, ÑËÝÏ ×É ÎÅ ÈÏÞÅÔŠצÄÓÉÌÁÔÉ ÐÏצÄÏÍÌÅÎÎÑ\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" ÷×ÅĦÔØ ×ÁÛÅ ¦Í'Ñ, ÞÉ ÚÁÌÉÛÁÊÔÅÓØ ÁÎÏΦÍÏÍ\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" âÕÄØ ÌÁÓËÁ, ××ÅĦÔØ ÐÏÛÔÏ×Õ ÁÄÒÅÓÕ ÞÉ ÝÏÓØ ¦ÎÛÅ\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr ""
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" âÕÄØ ÌÁÓËÁ, ××ÅĦÔØ ÒÑÄÏË ÔÅÍÉ.\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" ÷×ÅĦÔØ ÐÏÛÔÏ×Õ ÁÄÒÅÓÕ ÄÌÑ ÎÁÄÓÉÌÁÎÎÑ ÔÏÞÎϧ ËÏЦ§ (CC) ÌÉÓÔÁ.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (úÁÌÉÛÔÅ ÐÏÒÏÖΦÍ, ÑËÝÏ ÎÅ ÂÁÖÁ¤ÔÅ ÒÏÂÉÔÉ ËÏЦÀ.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" âÕÄØ ÌÁÓËÁ, ÐÅÒÅÇÌÑÎØÔÅ ÌÉÓÔÁ:\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"îÁÔÉÓΦÔØ ÷÷¶ä, ÝÏ ÐÒÏÄÏ×ÖÉÔÉ: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"îÁÔÉÓΦÔØ ÷÷¶ä, ÝÏ ÏÞÉÓÔÉÔÉ: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " ÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ Control-U, ÝÏ ÓÔÅÒÔÉ ÐÏÞÁÔËÏצ ÚÎÁÞÅÎÎÑ.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" âÕÄØ ÌÁÓËÁ, ÎÁÂÅÒ¦ÔØ ×ÁÛÅ ÐÏצÄÏÍÌÅÎÎÑ ÎÉÖÞÅ."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" ëÏÌÉ ÚÁ˦ÎÞÉÔÅ, ÎÁÔÉÓΦÔØ ××¦Ä ÔÁ ××ÅĦÔØ ÏÄÎÕ ËÒÁÐËÕ (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" ÔÁ ÎÁÔÉÓΦÔØ ××¦Ä ÚÎÏ×Õ."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s ËÏÒÖÉË: %.*s=%.*s  äÏÚ×ÏÌÉÔÉ? (Y/N/ÚA×ÖÄÉ/neVer)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "ðÒÉÊÍÁÔÉ ÐÏÌÁÍÁÎÏÇÏ ËÏÒÖÉËÁ domain=%s ÄÌÑ '%s'?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "ðÒÉÊÍÁÔÉ ÐÏÌÁÍÁÎÏÇÏ ËÏÒÖÉËÁ path=%s ÑË ÐÒÅƦËÓ %s'?"
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "âÅÒÅÍÏ ÃØÏÇÏ ËÏÒÖÉËÁ."
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "÷¦ÄËÉÄÁ¤ÍÏ ÃØÏÇÏ ËÏÒÖÉËÁ."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Jar ÄÌÑ ëÏÒÖÉË¦× ÐÏÒÏÖΦÊ."
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "Jar ÄÌÑ ëÏÒÖÉË¦× ÐÏÒÏÖΦÊ."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr ""
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr ""
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(î¦ËÏÌÉ ÎÅ ÐÒÉÊÍÁÔÉ ËÏÒÖÉËÉ.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(úÁ×ÖÄÉ ÂÅÒÅÍÏ ËÏÒÖÉËÉ.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(âÅÒÅÍÏ ËÏÒÖÉËÉ Ð¦ÓÌÑ ÄÏÚ×ÏÌÕ.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr ""
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(âÅÚ ÚÁÇÏÌÏ×ËÁ.)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(âÅÚ ¦ÍÅΦ.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(âÅÚ ÚÎÁÞÅÎÎÑ.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr "î¦ÞÏÇÏ"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(ë¦ÎÅÃØ ÓÅÁÎÓÕ.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "÷ÉÄÁÌÉÔÉ ÃØÏÇÏ ËÏÒÖÉËÁ?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "ðÒÏËÏ×ÔÎÕÌÉ ËÏÒÖÉËÁ!"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "÷ÉÄÁÌÉÔÉ ÃÅÊ ÐÏÒÏÖÎ¦Ê ÄÏÍÅÎ?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "äÏÍÅÎÁ Ú'§ÌÉ!"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "÷ÉD)ÁÌÉÔÉ ËÏÒÖ¦ ÄÏÍÅÎÁ, ×ÓÔÁÎÏ×ÉÔÉ ÄÏÚ×¦Ì ÚA)×ÖÄÉ/P)rompt/neV)er ÞÉ C)ËÁÓ.?"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "÷ÉD)ÁÌÉÔÉ ÄÏÍÅÎ, ×ÓÔÁÎÏ×ÉÔÉ ÄÏÚ×¦Ì ÚA)×ÖÄÉ/P)rompt/neV)er ÞÉ C)ËÁÓÕ×.?"
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "õÓ¦ ËÏÒÖ¦ Õ ÄÏÍÅΦ ÚÖÅÒÔÏ!"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "ú'A'×ÖÄÉ ÂÅÒÅÍÏ Ú ÄÏÍÅÎÁ '%s'."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "î¦ËÏÌÉ ('V') ÎÅ ÂÅÒÅÍÏ Ú ÄÏÍÅÎÁ '%s'."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "ðÉÔÁ¤ÍÏ ('P'), ÞÉ ÂÒÁÔÉ Ú ÄÏÍÅÎÁ '%s'."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "÷ÉÄÁÌÉÔÉ ÕÓ¦ ËÏÒÖ¦ Õ ÃØÏÍÕ ÄÏÍÅΦ?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "õÓ¦ ËÏÒÖÉËÉ Ú jar Ú'§ÄÅÎÏ!"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "÷ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ÐÏÒÔ 19 Õ URL ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "÷ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ÐÏÒÔ 25 Õ URL ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "÷ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ÐÏÒÔ %lu Õ URL ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "URL ͦÓÔÉÔØ ÎÅצÒÎÉÊ ÐÏÒÔ."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr ""
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr ""
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "îÅ ×ÄÁÌÏÓÑ ×¦ÄËÒÉÔÉ ÖÕÒÎÁÌ ÔÒÁÓÕ×ÁÎÎÑ. ôÒÁÓÕ×ÁÎÎÑ ×ÉÍËÎÅÎÏ!"
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "öÕÒÎÁÌ ôÒÁÓÕ×ÁÎÎÑ Lynx"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "ôÒÁÓÕ×ÁÎÎÑ ÄÌÑ Ã¦¤§ ÓÅÓ¦§ ÎÅ ÂÕÌÏ ÐÏÞÁÔÏ."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "äÏÓÑÇÎÕÔÏ ÍÁËÓÉÍÁÌØÎϧ ˦ÌØËÏÓÔ¦ ÔÉÍÞÁÓÏ×ÉÈ ÆÁÊ̦×!"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "úÎÁÞÅÎÎÑ ÐÏÌÑ ÆÏÒÍÉ ÐÅÒÅ×ÉÝÕ¤ ÒÏÚÍ¦Ò ÂÕÆÅÒÁ! ÷¦ÄËÉÄÁ¤ÍÏ ÚÁÊ×Å."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr ""
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "ëÁÔÁÌÏÇ"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "ðÅÒÅÇÌÑÄ ËÁÔÁÌÏÇÕ ÚÁÂÏÒÏÎÅÎÏ."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "÷ɦÒËÏ×ÉÊ ÄÏÓÔÕÐ ÄÏ Ã¦ÌÏÇÏ ËÁÔÁÌÏÇÕ ÚÁÂÏÒÏÎÅÎÏ"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr ""
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "îÅ ÍÏÖÕ ÐÒÏÞÉÔÁÔÉ ÃÅÊ ËÁÔÁÌÏÇ."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "îÅ ÍÏÖÕ Ä¦ÓÔÁÔÉÓÑ ÚÁÐÉÔÕ×ÁÎÏÇÏ ÆÁÊÌÕ."
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr ""
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ ÆÁÊÌ ÄÌÑ ÒÏÚÔÉÓËÁÎÎÑ!"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "æÁÊÌÉ:"
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "ð¦ÄËÁÔÁÌÏÇÉ:"
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: LYMessages.c:760
+msgid " directory"
+msgstr " ËÁÔÁÌÏÇ"
+
+# 8-| ÎÅ ÚÎÁÀ...
+# msgstr "÷×ÅÒÈ ÄÏ "
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "áÖ ÄÏ "
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "ðÏÔÏÞÎÉÊ ËÁÔÁÌÏÇ "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "óÅÒ×ÅÒ ÎŠצÄÐÏצÄÁ¤!"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "CSO ¦ÎÄÅËÓ"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "òÅÚÕÌØÔÁÔÉ ÐÏÛÕËÕ CSO"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr ""
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"îÁÔÉÓΦÔØ 's' ÔÁ ××ÅĦÔØ ËÌÀÞÏצ ÓÌÏ×Á ÄÌÑ ÐÏÛÕËÕ.\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "Gopher ¦ÎÄÅËÓ"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "Gopher ÍÅÎÀ"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr " òÅÚÕÌØÔÁÔÉ ðÏÛÕËÕ"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "îÁÄÓÉÌÁÀ ÚÁÐÉÔ CSO/PH."
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "îÁÄÓÉÌÁ¤ÍÏ ÚÁÐÉÔ Gopher"
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "úÁÐÉÔ CSO/PH ÐÏÓÌÁÎÏ, ÞÅËÁÀ ÎÁ צÄÇÕË."
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "úÁÐÉÔ Gopher ÎÁĦÓÌÁÎÏ: ÞÅËÁ¤ÍÏ ×¦ÄÇÕËÕ."
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"âÕÄØ ÌÁÓËÁ, ××ÅĦÔØ ËÌÀÞÏצ ÓÌÏ×Á ÄÌÑ ÐÏÛÕËÕ.\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr ""
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "ú'¤ÄÎÁÎÎÑ ÚÁËÒÉÔÏ ???"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ ÄÌÑ ×¦ÄÐÒÁ×ËÉ ÌÉÓÔÁ ÄÏ ËÏÎÆÅÒÅÎæ§."
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "ãÅÊ Ë̦¤ÎÔ ÎÅ ÍÁ¤ ЦÄÔÒÉÍËÉ ÄÌÑ ÎÁÄÓÉÌÁÎÎÑ ÎÏ×ÉÎ ÞÅÒÅÚ SSL."
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "óÔÉÌØ %d \"%s\" SGML:%s.  ûÒÉÆÔ %s %.1f ÔÏÞÏË.\n"
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr ""
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr ""
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "îÅÍÏÖÌÉ×Ï ÐÒÏÄÏ×ÖÉÔÉ ÂÅÚ ¦ÍÅΦ ËÏÒÉÓÔÕ×ÁÞÁ ÔÁ ÐÁÒÏÌÑ."
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "îÅÍÏÖÌÉ×Ï ÐÏ×ÔÏÒÉÔÉ Á×ÔÏÒÉÚÁæÀ!  ú×ÅÒΦÔØÓÑ ÄÏ ×ÅÂÍÁÊÓÔÒÁ ÓÅÒ×ÅÒÁ."
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "îÅÍÏÖÌÉ×Ï ÐÏ×ÔÏÒÉÔÉ ÐÒÏËÓ¦-Á×ÔÏÒÉÚÁæÀ!  ú×ÅÒΦÔØÓÑ ÄÏ ×ÅÂÍÁÊÓÔÒÁ."
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr ""
+
+#: LYMessages.c:799
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr ""
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr ""
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr "÷×ÅĦÔØ ÚÁÐÉÔ WAIS: "
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "ðÏ×ÔÏÒÀ¤ÍÏ ÑË HTTP0 ÚÁÐÉÔ."
+
+# ÐÅÒÅËÁÞÁÎÏ - ÂÏ ÎÅ ÚÎÁÀ, ËÕÄÉ, Õ ÑËÉÊ Â¦Ë.
+# ÐÅÒÅËÁÞÁÎÏ - ÂÏ ÎÅ ÚÎÁÀ, ËÕÄÉ, Õ ÑËÉÊ Â¦Ë.
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "ðÅÒÅËÁÞÁÎÏ %d ÂÁÊÔ¦×"
+
+# ÐÅÒÅËÁÞÕ×ÁÎÎÑ - ÂÏ ÎÅ ÚÎÁÀ, ËÕÄÉ, Õ ÑËÉÊ Â¦Ë.
+# (×ÖÅ ËÒÁÝÅ "ÐÅÒÅÄÁ×ÁÎÎÑ", ÂÏ ÐÅÒÅÄÁÞÁ - ÎÅ ÚÏ×Ó¦Í ÐÒÏÃÅÓ, ÎÁÞÅ)
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "ðÅÒÅËÁÞÕ×ÁÎÎÑ ÄÁÎÉÈ ÚÁ×ÅÒÛÅÎÏ."
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "ðÏÍÉÌËÁ ÏÐÒÁÃØÏ×Õ×ÁÎÎÑ ÒÑÄËÁ %d Ú %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr "óÔÏÒ¦ÎËÁ ÓÐÉÓËÕ ÁÄÒÅÓ"
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "æÁÊÌ ÚÁËÌÁÄÉÎÏË"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr "ëÏÎƦÇÕÒÁæÊΦ ×ÉÚÎÁÞÅÎÎÑ"
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr "Jar ÄÌÑ ëÏÒÖÉ˦×"
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr ""
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "ïÐÅÒÁæ§ Ú ÆÁÊÌÁÍÉ"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "ðÁÒÁÍÅÔÒÉ óËÁÞÕ×ÁÎÎÑ"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "óÔÏÒ¦ÎËÁ ¶ÓÔÏÒ¦§"
+
+#: LYMessages.c:820
+#, fuzzy
+msgid "Cache Jar"
+msgstr "Jar ÄÌÑ ëÏÒÖÉ˦×"
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr "óÔÏÒ¦ÎËÁ ÓÐÉÓËÕ"
+
+# msgstr "IÎÆÏÒÍÁÃ¦Ñ lynx.cfg"
+# msgstr "IÎÆÏÒÍÁÃ¦Ñ lynx.cfg"
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "¶ÎÆÏÒÍÁÃ¦Ñ ÝÏÄÏ Lynx.cfg"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr "úËÏÎ×ÅÒÔÏ×ÁÎÉÊ Mosaic Hotlist"
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "íÅÎÀ ÐÁÒÁÍÅÔÒ¦×"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "ðÁÒÁÍÅÔÒÉ ÐÒÁ× ÄÏÓÔÕÐÕ ÄÏ ÆÁÊ̦×"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "ðÁÒÁÍÅÔÒÉ ÄÒÕËÕ"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "¶ÎÆÏÒÍÁÃ¦Ñ ÐÒÏ ÐÏÔÏÞÎÉÊ ÄÏËÕÍÅÎÔ"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "ïÓÔÁÎΦ ÐÏצÄÏÍÌÅÎÎÑ ÓÔÁÔÕÓÎÏÇÏ ÒÑÄËÕ"
+
+# * Yuri Syrota <rasta@renome.rovno.ua>
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "ðÁÒÁÍÅÔÒÉ ×É×ÁÎÔÁÖÅÎÎÑ"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr "óÔÏÒ¦ÎËÁ צÄצÄÁÎÉÈ ÐÏÓÉÌÁÎØ"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr "äÉ×. ÔÁËÏÖ"
+
+#: LYMessages.c:834
+msgid "your"
+msgstr "÷ÁÛ"
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr ""
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "ÐÁÒÁÍÅÔÒÉ ÞÁÓÕ ËÏÍЦÌÑæ§"
+
+#: LYMessages.c:837
+#, fuzzy
+msgid "color-style configuration"
+msgstr "÷ÁÛÁ ÏÓÎÏ×ÎÁ ËÏÎƦÇÕÒÁæÑ"
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "ÏÓÔÁÎÎ¦Ê ÒÅ̦Ú"
+
+#: LYMessages.c:839
+msgid "pre-release version"
+msgstr "ÐÏÐÅÒÅÄÎÑ ×ÅÒÓ¦Ñ"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "ÒÏÚÒÏÂÎÉÃØËÁ ×ÅÒÓ¦Ñ"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr ""
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr ""
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr ""
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr ""
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+msgid "Changing working-directory is currently disabled."
+msgstr "úÁÐÕÓË Ð¦ÄÐÒÏÃÅÓ¦× ÎÁÒÁÚ¦ ÚÁÂÏÒÏÎÅÎÏ."
+
+# "ÚÁ×ÅÒÔÁÎÎÑ" - ÃÅ *ÎÁÚÁÄ*, Á ÐÅÒÅÎÏÓ ÐÏÇÁÎÏ
+# (ÂÏ ËÒÁÝÅ ÐÅÒÅÎÅÓÅÎÎÑ, ÁÌÅ ÐÅÒÅÎÅÓÅÎÎÑ ÔÅÖ ÐÏÇÁÎÏ)
+#: LYMessages.c:864
+msgid "Linewrap OFF!"
+msgstr "ðÅÒÅÎÏÓ ÒÑÄË¦× ÷éíëîåîï!"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr "ðÅÒÅÎÏÓ ÒÑÄË¦× õ÷¶íëîåîï!"
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "òÅÖÉÍ Raw 8-bit ÞÉ CJK ÷éíëîåîï! ðÅÒÅÚÁ×ÁÎÔÁÖÕ¤ÍÏ..."
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "òÅÖÉÍ Raw 8-bit ÞÉ CJK õ÷¶íëîåîï! ðÅÒÅÚÁ×ÁÎÔÁÖÕ¤ÍÏ..."
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr ""
+
+#: LYMessages.c:869
+msgid "Trace not supported"
+msgstr "ôÅÒͦÎÁÌ ÎŠЦÄÔÒÉÍÕ¤ ËÏÌØÏÒÉ"
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "¶Í'Ñ ËÏÒÉÓÔÕ×ÁÞÁ ÄÌÑ '%s' ÎÁ %s '%s%s':"
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "îÅצÒÎÉÊ ÚÁÇÏÌÏ×ÏË '%s%s%s%s%s'"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "ðÏÔÒ¦ÂÎÁ Á×ÔÏÒÉÚÁÃ¦Ñ ÎÁ ÐÒÏËÓ¦ -- ÐÒÏÂÕ¤ÍÏ ÝÅ"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "äÏÓÔÕÐ ÂÅÚ Á×ÔÏÒÉÚÁæ§ ÚÁÂÏÒÏÎÅÎÉÊ -- ÐÒÏÂÕ¤ÍÏ ÝÅ"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr "äÏÓÔÕÐ ÚÁÂÏÒÏÎÅÎÉÊ ÐÒÁ×ÉÌÏÍ"
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr "úÁ×ÁÎÔÁÖÅÎÎÑ ÎÅ ÚÁ×ÅÒÛÅÎÏ."
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr ""
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr "îÅ ÍÏÖÕ Ä¦ÓÔÁÔÉÓÑ"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "îÅ ÍÏÖÕ Ä¦ÓÔÁÔÉÓÑ ÄÏ ÄÏËÕÍÅÎÔÁ."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "÷×ÅĦÔØ ÐÁÒÏÌØ ËÏÒÉÓÔÕ×ÁÞÁ %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "îÅ ÍÏÖÕ Ð¦Ä'¤ÄÎÁÔÉÓÑ ÄÏ FTP ÓÅÒ×ÅÒÕ."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr ""
+
+# 8-| ÎÅ ÚÎÁÀ...
+# 8-| ÎÅ ÚÎÁÀ...
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "óÉÍ×ÏÌØÎÅ ÐÏÓÉÌÁÎÎÑ"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "ïÔÒÉÍÕ¤ÍÏ ËÁÔÁÌÏÇ FTP."
+
+# ÐÅÒÅËÁÞÁÎÏ! - ÂÏ ÎÅ ÚÎÁÀ, Õ ÑËÉÊ Â¦Ë
+# ÐÅÒÅËÁÞÁÎÏ! - ÂÏ ÎÅ ÚÎÁÀ, Õ ÑËÉÊ Â¦Ë
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "ðÅÒÅËÁÞÁÎÏ %d ÂÁÊÔ¦× (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "ïÔÒÉÍÕ¤ÍÏ ÆÁÊÌ FTP."
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "îÅÍÏÖÌÉ×Ï ×ÓÔÁÎÏ×ÉÔÉ Ú'¤ÄÎÁÎÎÑ finger."
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "îÅÍÏÖÌÉ×Ï ÚÁ×ÁÎÔÁÖÉÔÉ ÄÁΦ (ÎÅÍÁ ¦ÍÅΦ ÓÅÒ×ÅÒÁ Õ finger URL)"
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "îÅצÒÎÉÊ ÎÏÍÅÒ ÐÏÒÔÕ - ×ÉËÏÒÉÓÔÏ×Õ¤ÍÏ ÌÉÛÅ ÐÏÒÔ 79!"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "îÅÍÏÖÌÉ×Ï Ä¦ÓÔÁÔÉÓÑ ÓÅÒ×ÅÒÁ finger."
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "Finger-ÓÅÒ×ÅÒ ÎŠצÄÐÏצÄÁ¤"
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "¶Í'Ñ ËÏÒÉÓÔÕ×ÁÞÁ ÎÁ ÓÅÒ×ÅÒ¦ ÎÏ×ÉÎ '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "úͦÎÉÔÉ ¦Í'Ñ ËÏÒÉÓÔÕ×ÁÞÁ?"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "¶Í'Ñ ËÏÒÉÓÔÕ×ÁÞÁ:"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "ðÁÒÏÌØ ËÏÒÉÓÔÕ×ÁÞÁ ÎÁ ÓÅÒ×ÅÒ¦ ÎÏ×ÉÎ '%s':"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "úͦÎÉÔÉ ÐÁÒÏÌØ?"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr "î¦ÞÏÇÏ ÓÈÏÖÏÇÏ ÎÁ %s"
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"îÅÍÁ¤ ÓÔÁÔÅÊ Õ Ã¦Ê ÇÒÕЦ.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"îÅÍÁ¤ ÓÔÁÔÅÊ Õ ÃØÏÍÕ Ä¦ÁÐÁÚÏΦ.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  óÔÁÔÔ¦ %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr "â¦ÌØÛ ÒÁÎΦ ÓÔÁÔÔ¦"
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"´ ÄÏÓÔÕÐÎÉÍÉ Â¦ÌÑ %d ÓÔÁÔÅÊ Õ %s, Ú ÔÁËÉÍÉ ID:\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr "õÓ¦ ÄÏÓÔÕÐΦ ÓÔÁÔÔ¦ Õ "
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr "â¦ÌØÛ Ð¦ÚΦ ÓÔÁÔÔ¦"
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr "îÁĦÓÌÁÔÉ ÓÔÁÔÔÀ ÄÏ "
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "ãÅÊ Ë̦¤ÎÔ ÎÅ ÍÁ¤ ЦÄÔÒÉÍËÉ SNEWS URL'¦×."
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "ð¦Ä'¤ÄÎÕ¤ÍÏÓÑ ÄÏ óÅÒ×ÅÒÁ îÏ×ÉÎ ..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "îÅÍÏÖÌÉ×Ï Ð¦Ä'¤ÄÎÁÔÉÓÑ ÄÏ %s."
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "îÅÍÏÖÌÉ×Ï ÏÔÒÉÍÁÔÉ ¦ÎÆÏÒÍÁæÀ. óÅÒ×ÅÒ ÎÏ×ÉÎ %.20s ËÁÖÅ: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "îÅÍÏÖÌÉ×Ï ÏÔÒÉÍÁÔÉ ¦ÎÆÏÒÍÁæÀ, ÐÏÒÏÖÎ¦Ê ×¦ÄÇÕË ×¦Ä ÓÅÒ×ÅÒÁ %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr "þÉÔÁ¤ÍÏ ÓÐÉÓÏË ÄÏÓÔÕÐÎÉÈ ÇÒÕÐ ÎÏ×ÉÎ."
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "þÉÔÁ¤ÍÏ ÓÐÉÓÏË ÓÔÁÔÅÊ Õ ËÏÎÆÅÒÅÎæ§."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr "ïÔÒÉÍÕ¤ÍÏ ÓÔÁÔÔÀ."
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr "÷ÉÂÁÞÔÅ, ÎÅ ×ÄÁÌÏÓÑ ×ÉÔÑÇÔÉ ÂÁÖÁΦ ÎÏ×ÉÎÉ."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "áÄÒÅÓÁ ÍÁ¤ ÎÅצÒÎÏÇÏ ÐÏÒÔÕ"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "äÏ×ÖÉÎÁ ÁÄÒÅÓÉ, ÓÈÏÖÅ, ÎÅצÒÎÁ"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "îÅ ÍÏÖÕ ÚÎÁÊÔÉ ×¦ÄÄÁÌÅÎÉÊ ÓÅÒ×ÅÒ %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "îÅÐÒÁ×ÉÌØÎÅ ¦Í'Ñ ÍÁÛÉÎÉ %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "÷ÓÔÁÎÏ×ÌÀ¤ÍÏ %s Ú'¤ÄÎÁÎÎÑ ÄÏ %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "ú'¤ÄÎÁÔÉÓÑ ÎÅ ×ÄÁÌÏÓÑ (ÚÁÂÁÇÁÔÏ ÓÐÒÏÂ)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+#, fuzzy
+msgid "Socket read failed (too many tries)."
+msgstr "ú'¤ÄÎÁÔÉÓÑ ÎÅ ×ÄÁÌÏÓÑ (ÚÁÂÁÇÁÔÏ ÓÐÒÏÂ)."
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "ãÅÊ Ë̦¤ÎÔ ÎÅ ÍÁ¤ ЦÄÔÒÉÍËÉ ÄÌÑ HTTPS URL'¦×."
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr "îÅÍÏÖÌÉ×Ï Ð¦Ä'¤ÄÎÁÔÉÓÑ ÄÏ ×¦ÄÄÁÌÅÎÏÇÏ ÓÅÒ×ÅÒÁ."
+
+#: WWW/Library/Implementation/HTTP.c:669
+msgid "Retrying connection without TLS."
+msgstr "÷ÓÔÁÎÏ×ÌÀ¤ÍÏ %s Ú'¤ÄÎÁÎÎÑ ÄÏ %s"
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+#, fuzzy
+msgid "the certificate has been revoked"
+msgstr "ðÒÏËÏ×ÔÎÕÌÉ ËÏÒÖÉËÁ!"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "îÁÄÓÉÌÁ¤ÍÏ ÚÁÐÉÔ HTTP."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr "îÅÓÐÏĦ×ÁÎÁ ÐÏÍÉÌËÁ ÚÁÐÉÓÕ ÄÏ ÍÅÒÅÖ¦; Ú'¤ÄÎÁÎÎÑ Ï¦Ò×ÁÎÅ."
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "HTTP ÚÁÐÉÔÁ ÎÁĦÓÌÁÎÏ; ÞÅËÁ¤ÍÏ ÎÁ צÄÐÏצÄØ."
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr "îÅÓÐÏĦ×ÁÎÁ ÐÏÍÉÌËÁ ÞÉÔÁÎÎÑ ¦Ú ÍÅÒÅÖ¦; Ú'¤ÄÎÁÎÎÑ Ï¦Ò×ÁÎÅ."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr ""
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr ""
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr "ïÔÒÉÍÁÎÏ ÎÅÓÐÏĦ×ÁÎÏÇÏ ÓÔÁÔÕÓÁ 304 Not Modified."
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr "ðÅÒÅÎÁÐÒÁ×ÌÅÎÎÑ ×ͦÓÔÕ POST ×ÉÍÁÇÁ¤ ÄÏÚ×ÏÌÕ ËÏÒÉÓÔÕ×ÁÞÁ."
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr "ðÏËÁÚÁÔÉ ÐÏצÄÏÍÌÅÎÎÑ ËÏÄÕ 401?"
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr "ðÏËÁÚÁÔÉ ÐÏצÄÏÍÌÅÎÎÑ ËÏÄÕ 407?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr "îÅצÄÏÍÉÊ ×¦ÄÇÕË ÓÔÁÔÕÓÕ ×¦Ä ÓÅÒ×ÅÒÁ!"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "צÄÁÌÅÎÁ %s ÓÅÓ¦Ñ:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "îÅÍÏÖÌÉ×Ï Ð¦Ä'¤ÄÎÁÔÉÓÑ ÄÏ ÓÅÒ×ÅÒÁ WAIS."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ Ú'¤ÄÎÁÎÎÑ ÄÏ WAIS ÄÌÑ ÞÉÔÁÎÎÑ."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "ëÏÄ Ä¦ÁÇÎÏÓÔÉËÉ ¤ "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "¶ÎÄÅËÓ "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " ͦÓÔÉÔØ ÎÁÓÔÕÐΦ %d ÐÕÎËÔ%s ÓÔÏÓÏ×ÎÏ \""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "ðÅÒÛÁ ƦÇÕÒÁ ЦÓÌÑ ËÏÖÎÏÇÏ ÐÕÎËÔÕ - ÊÏÇÏ ×¦ÄÎÏÓÎÉÊ ÂÁÌ, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "ÄÒÕÇÁ - ˦ÌØ˦ÓÔØ ÒÑÄË¦× Õ ÎØÏÍÕ."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (ÐÏÇÁÎÅ ¦Í'Ñ ÆÁÊÌÕ)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(ëÏÒÏÔËÅ ÐÏÌÅ ÚÁÇÏÌÏ×ËÁ, ÎÅÍÏÖÌÉ×Ï ×¦ÄÏÂÒÁÚÉÔÉ)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"úÁÄÏ×ÇÅ ÐÏÌÅ ÚÁÇÏÌÏ×ËÁ, ÎÅÍÏÖÌÉ×Ï ×¦ÄÏÂÒÁÚÉÔÉ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"ôÅËÓÔÏ×Å ÐÏÌÅ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"ðÏÌÅ \"Headline\", ÎÅÍÏÖÌÉ×Ï ×¦ÄÏÂÒÁÚÉÔÉ\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"ðÏÌÅ \"Code\", ÎÅÍÏÖÌÉ×Ï ×¦ÄÏÂÒÁÚÉÔÉ\n"
+"\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "óÉÎÔÁËÓÉÞÎÁ ÐÏÍÉÌËÁ Õ WAIS URL"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (¶ÎÄÅËÓ WAIS)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "¶ÎÄÅËÓ WAIS: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "ãÅ ÐÏÓÉÌÁÎÎÑ ÄÌÑ ÐÏÛÕËÕ Õ "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " ¶ÎÄÅËÓ¦ WAIS.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"÷×ÅĦÔØ 's' ÄÌÑ ÐÏÛÕËÕ ÔÁ ×ËÁÖ¦ÔØ ËÌÀÞÏצ ÓÌÏ×Á.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr "\" Õ: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: úÁÐÉÔ ÚÁ×ÅÌÉËÉÊ."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "ûÕËÁ¤ÍÏ Õ ÂÁÚ¦ ÄÁÎÉÈ WAIS..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "ðÏÛÕË ÐÅÒÅÒ×ÁÎÏ."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "îÅ ÍÏÖÕ ÓËÏÎ×ÅÒÔÕ×ÁÔÉ ÆÏÒÍÁÔ ÄÏËÕÍÅÎÔÁ WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: úÁÐÉÔ ÚÁÄÏ×ÇÉÊ."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "ôÑÇÎÅÍÏ ÄÏËÕÍÅÎÔ WAIS..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr " ÏÐÉÓ"
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr "ðÒÑÍÉÊ ÄÏÓÔÕÐ"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr " (ÞÉ ÞÅÒÅÚ ÐÒÏËÓ¦, ÑËÝÏ ÊÏÇÏ ×ÉÚÎÁÞÅÎÏ)"
+
+# * Andriy Rysin <arysin@yahoo.com>
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "óÕÐÒÏצÄ"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "èÏÓÔ"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr ""
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr ""
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " *** ðáí'ñôø ÷éþåòðáîï ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "ÎÅצÄÏÍÅ ÐÏÌÅ ÞÉ ÐÏÓÉÌÁÎÎÑ"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "ÔÅËÓÔÏ×Å ÐÏÌÅ"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "ÐÏÌÅ ××ÏÄÕ ÐÁÒÏÌÑ"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr "ÐÅÒÅÍÉËÁÞ"
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr "ÒÁĦÏËÎÏÐËÁ"
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr "ËÎÏÐËÁ ÚÁÔ×ÅÒÄÖÅÎÎÑ"
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr "ËÌÁצÛÁ צÄͦÎÉ ÚͦÎ"
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr "×ÓÐÌÉ×ÁÀÞÅ ÍÅÎÀ"
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr "ÐÒÉÈÏ×ÁÎÅ ÐÏÌÅ ÆÏÒÍÉ"
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "ÔÅËÓÔÏ×Á ÏÂÌÁÓÔØ"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr ""
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "ÐÏÌÅ ××ÏÄÕ ÆÁÊÌÕ"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr ""
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr "ÚÏÂÒÁÖÅÎÎÑ-ËÎÏÐËÁ ÄÌÑ ×¦ÄÓÉÌËÉ"
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr ""
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr "ÎÅצÄÏÍÅ ÐÏÌÅ ÆÏÒÍÉ"
+
+#: src/GridText.c:10279
+msgid "Can't open file for uploading"
+msgstr "îÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ÆÁÊÌ ÄÌÑ ÞÉÔÁÎÎÑ."
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr "úÁÔ×ÅÒÄÖÕ¤ÍÏ %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr ""
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr "äÕÖÅ ÄÏ×Ǧ ÒÑÄËÉ ÂÕÌÉ ÚÁ×ÅÒÎÕÔ¦!"
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr ""
+
+# @ Gnome-find KDat karchiver karchiver.po kwuftpd lynx red-carpet
+# * Yuri Syrota <rasta@renome.rovno.ua>
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "ÂÁÊÔÉ"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "ðÒÏÞÉÔÁÎÏ %s ÄÁÎÉÈ"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "ðÒÏÞÉÔÁÎÏ %s Ú %s ÄÁÎÉÈ"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/ÓÅË"
+
+#: src/HTAlert.c:342
+#, fuzzy, c-format
+msgid " (stalled for %s)"
+msgstr " (ÐÒÉÚÕÐÉÎÅÎÏ ÎÁ %ld ÓÅË)"
+
+#: src/HTAlert.c:346
+#, fuzzy, c-format
+msgid ", ETA %s"
+msgstr ", ETA %ld ÓÅË"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (îÁÔÉÓΦÔØ 'z' ÝÏ ÚÕÐÉÎÉÔÉ)"
+
+# @ CenterICQ Dia Gabber gnome-libs gphoto guppi kdelibs kview libgnomeui lynx mc mutt-1.4-4.src.rpm.dir_1_1_mutt-_po_uk.po
+# * Cawko Xakep <xakep@snark.ukma.kiev.ua>
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "ÔÁË"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "Φ"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "ïÐÉÓ:"
+
+# @ GIMP evolution gimp-perl guppi kcminfo kfind kfindpart kpm kppp lynx nautilus rpmdrake xmms
+# * Andriy Rysin <arysin@yahoo.com>
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr "(ΦÞÏÇÏ)"
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr ""
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(ÎÅצÄÏÍÉÊ)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "äÏËÕÍÅÎÔ Í¦ÓÔÉÔØ ÌÉÛÅ ÐÒÉÈÏ×ÁΦ ÐÏÓÉÌÁÎÎÑ. ÷ÉËÏÒÉÓÔÁÊÔÅ ËÏÍÁÎÄÕ 'l'ist."
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr "ðÏÍÉÌËÁ ËÅÛÕ×ÁÎÎÑ ÄÖÅÒÅÌÁ - ÚÁÐÏ×ÎÅÎÉÊ ÄÉÓË?"
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr "ðÏÍÉÌËÁ ËÅÛÕ×ÁÎÎÑ ÄÖÅÒÅÌÁ - ÎÅÄÏÓÔÁÔÎØÏ ÐÁÍ'ÑÔ¦!"
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     úÁËÌÁÄÉÎËÕ ÍÏÖÎÁ ×ÉÄÁÌÉÔÉ ÎÁÔÉÓÎÕ×ÛÉ ËÌÁצÛÕ 'R'<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     ÷É ÍÏÖÅÔÅ ×ÉÄÁÌÑÔÉ ÚÁËÌÁÄÉÎËÉ ÚÁ ÄÏÐÏÍÏÇÏÀ ËÏÍÁÎÄÉ ×ÉÄÁÌÅÎÎÑ. úÁÚ×ÉÞÁÊ\n"
+"     ÃÅ ËÌÁצÛÁ 'R', ÈÏÞÁ ÃÅ ÍÏÖÅ ÂÕÔÉ ÚͦÎÅÎÏ ×ÁÛÉÍ ÓÉÓÔÅÍÎÉÍ\n"
+"     ÁÄͦΦÓÔÒÁÔÏÒÏÍ."
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     ãÅÊ ÆÁÊÌ ÍÏÖÎÁ ÔÁËÏÖ ÒÅÄÁÇÕ×ÁÔÉ Ú×ÉÞÁÊÎÉÍ ÔÅËÓÔÏ×ÉÍ ÒÅÄÁËÔÏÒÏÍ, ÝÏÂ\n"
+"     ×ÉÄÁÌÑÔÉ ÓÔÁÒ¦ ÞÉ ÎÅצÒΦ ÐÏÓÉÌÁÎÎÑ, ÞÉ Í¦ÎÑÔÉ §È ÐÏÒÑÄÏË."
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"õ×ÁÇÁ: ÑËÝÏ ×É ÒÅÄÁÇÕ¤ÔÅ ÃÅÊ ÆÁÊÌ \"×ÒÕÞÎÕ\",\n"
+"       ÎÅ ÚͦÎÀÊÔÅ ÆÏÒÍÁÔ ÒÑÄ˦×\n"
+"       ÔÁ ÎÅ ÄÏÄÁ×ÁÊÔÅ ¦ÎÛ¦ ÔÅÇÉ HTML.\n"
+"       ÷ÐÅ×ÎÀÊÔÅÓÑ, ÝÏ ËÏÖÎÁ ÚÁËÌÁÄÉÎËÁ ÐÏÓ¦ÄÁ¤ ÏËÒÅÍÉÊ ÒÑÄÏË."
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr ""
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "îÅÍÏÖÌÉ×Ï Ä¦ÓÔÁÔÉÓÑ ÄÏ ÓËÒÉÐÔÁ cgi"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "çÁÒÎÁ ðÏÒÁÄÁ"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "þÕÄÏ×ÉÊ http ÓÅÒ×ÅÒ ÓÔÏÓÏ×ÎÏ VMS ÄÏÓÔÕÐÎÉÊ ÞÅÒÅÚ"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "ÃÅ ÐÏÓÉÌÁÎÎÑ"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr ""
+
+# msgstr "÷ÉÈ¦Ä ÞÅÒÅÚ ÐÅÒÅÒÉ×ÁÎÎÑ:"
+# msgstr "÷ÉÈ¦Ä ÞÅÒÅÚ ÐÅÒÅÒÉ×ÁÎÎÑ:"
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "úÁ×ÅÒÛÕ¤ÍÏ ÚÁ ÓÉÇÎÁÌÏÍ:"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr "(Ú ÐÏÐÅÒÅÄÎØϧ ÓÅÓ¦§)"
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr ""
+
+#: src/LYCookie.c:2562
+msgid "Internal"
+msgstr "÷ÎÕÔÒ¦ÛΦÊ"
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "ÐÏÍÉÌËÁ Õ cookie_domain_flag_set, ÕÒÉ×Á¤ÍÏ ÐÒÏÇÒÁÍÕ"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "îÅ ×ÄÁÌÏÓÑ ¦Î¦Ã¦Á̦ÚÕ×ÁÔÉ ÔÅÒͦÎÁÌ - ÎÅצÄÏÍÉÊ ÔÉÐ ÔÅÒͦÎÁÌÕ?"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "ôÅÒͦÎÁÌ ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "÷É ÍÁ¤ÔÅ ×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ Ú Ã¦¤À ÐÒÏÇÒÁÍÏÀ ÔÅÒͦÎÁÌÉ vt100, 200 ÔÏÝÏ."
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "ôÉÐ ×ÁÛÏÇÏ ÔÅÒͦÎÁÌÕ ÎÅצÄÏÍÉÊ!"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "÷×ÅĦÔØ ÔÉÐ ÔÅÒͦÎÁÌÕ:"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "ôéð ôåòí¶îáìõ ÷óôáîï÷ìåîï õ"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"æÁÔÁÌØÎÁ ÐÏÍÉÌËÁ × %s, ×ÅÒÓ¦Ñ %s\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+
+#: src/LYEdit.c:266
+#, fuzzy, c-format
+msgid "Error starting editor, %s"
+msgstr "ðÏÍÉÌËÁ ÏÐÒÁÃØÏ×Õ×ÁÎÎÑ ÒÑÄËÁ %d Ú %s\n"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "òÅÄÁËÔÏÒÁ ×ÂÉÔÏ ÓÉÇÎÁÌÏÍ"
+
+#: src/LYEdit.c:274
+#, fuzzy, c-format
+msgid "Editor returned with error status %s"
+msgstr "òÅÄÁËÔÏÒ ÐÏ×ÅÒÎÕ× ÐÏÍÉÌËÕ, %s"
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "úÁ×ÁÎÔÁÖÅÎÏ ÐÏÓÉÌÁÎÎÑ:"
+
+# msgstr "ðÒÏÐÏÎÕ¤ÔØÓÑ ¦Í'Ñ ÆÁÊÌÕ:"
+# msgstr "ðÒÏÐÏÎÕ¤ÔØÓÑ ¦Í'Ñ ÆÁÊÌÕ:"
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "úÁÐÒÏÐÏÎÏ×ÁÎÅ ¦Í'Ñ ÆÁÊÌÕ:"
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "óÔÁÎÄÁÒÔΦ ÐÁÒÁÍÅÔÒÉ ÚÁ×ÁÎÔÁÖÕ×ÁÎÎÑ:"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "ðÁÒÁÍÅÔÒÉ ÚÁ×ÁÎÔÁÖÕ×ÁÎÎÑ:"
+
+# @ Galeon- drkonqi kdelibs kmail konqueror lynx
+# * Andriy Rysin <arysin@yahoo.com>
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "úÂÅÒÅÇÔÉ ÎÁ ÄÉÓË"
+
+#: src/LYDownload.c:545
+#, fuzzy
+msgid "View temporary file"
+msgstr "ðÅÒÅÇÌÑÎÕÔÉ ÆÁÊÌ "
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "úÁÐÉÓÕ×ÁÔÉ ÎÁ ÄÉÓË ÚÁÂÏÒÏÎÅÎÏ."
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "ìÏËÁÌØΦ ÄÏÄÁÔËÉ:"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "¶Í'Ñ ÎÅ ÚÁÄÁÎÅ"
+
+# 8-| ÎÅ ÚÎÁÀ...
+# 8-| ÎÅ ÚÎÁÀ...
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "÷É ×ÉÂÒÁÌÉ:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(ÂÅÚ ÁÄÒÅÓÉ)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (×ÎÕÔÒ¦ÛΦÊ)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (ÂÕ× ×ÎÕÔÒ¦ÛΦÊ)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (ú ÖÕÒÎÁÌÕ)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "÷É ×¦ÄצÄÕ×ÁÌÉ (ÏËÒ¦Í POSTs, ÚÁËÌÁÄÉÎÏË, ÍÅÎÀ ÔÁ ÓÐÉÓË¦× ÆÁÊ̦×):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(ìÉÓÔ¦× ÝÅ ÎÅÍÁ)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr ""
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "÷ËÁÚ¦×ÎÉË:"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "¶Í'Ñ ÆÁÊÌÕ:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "ë¦ÌØË. ÒÑÄ˦×:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "ðÏͦÞÅÎÏ ×ÉÔ¦Ë ÐÁÍ'ÑÔ¦."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "í¦ÓÔÉÔØ:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "âÁÊÔ¦×:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr ""
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr ""
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr ""
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "ðÏÓÉÌÁÎØ Õ "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "ÃØÏÍÕ ÄÏËÕÍÅÎÔ¦:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "÷ÉÄÉͦ ÐÏÓÉÌÁÎÎÑ:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "ðÒÉÈÏ×ÁΦ ÐÏÓÉÌÁÎÎÑ:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "ðÏÓÉÌÁÎÎÑ"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "÷ÉÄÉͦ ÐÏÓÉÌÁÎÎÑ"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "îÅÍÏÖÌÉ×Ï ÏÔÒÉÍÁÔÉ ÓÔÁÔÕÓ '%s'."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "×ÉÄÁÌÉÔÉ %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr ""
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "ëÁÔÁÌÏÇ Ú ÔÁËÉÍ ¦ÍÅÎÅÍ ÕÖÅ ¦ÓÎÕ¤!  ÷ÉÍÏÇÕ ÐÒϦÇÎÏÒÏ×ÁÎÏ."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "æÁÊÌ ¦Ú ÔÁËÉÍ ¦ÍÅÎÅÍ ÕÖÅ ¦ÓÎÕ¤!  ÷ÉÍÏÇÕ ÐÒϦÇÎÏÒÏ×ÁÎÏ."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "÷ËÁÚÁÎÅ ¦Í'Ñ ×ÖÅ × ÒÏÂÏÔ¦!  ÷ÉÍÏÇÕ ÐÒϦÇÎÏÒÏ×ÁÎÏ."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "÷ÉÄÁÌÉÔÉ ÕÓ¦ ÐÏÚÎÁÞÅΦ ÆÁÊÌÉ ÔÁ ËÁÔÁÌÏÇÉ?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "÷×ÅĦÔØ ÎÏ׊ͦÓÃÅ ÄÌÑ ÐÏÚÎÁÞÅÎÉÈ ÐÕÎËÔ¦×: "
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "úÁÄÏ×ÇÉÊ ÛÌÑÈ"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr ""
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "÷×ÅĦÔØ ÎÏ×Å ¦Í'Ñ ÄÌÑ ËÁÔÁÌÏÇÕ: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "÷×ÅĦÔØ ÎÏ×Å ¦Í'Ñ ÄÌÑ ÆÁÊÌÕ: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "÷×ÅĦÔØ ÎÏ×ÉÊ ÛÌÑÈ ËÁÔÁÌÏÇÕ: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "÷×ÅĦÔØ ÎÏ×ÉÊ ÛÌÑÈ ÆÁÊÌÕ: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr ""
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr ""
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "úͦÎÉÔÉ ÎÁÚ×Õ(n), ÛÌÑÈ(l) ÞÉ ÐÒÁ×Á ÄÏÓÔÕÐÕ(p): "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "úͦÎÉÔÉ ÎÁÚ×Õ(n) ÞÉ ÛÌÑÈ(l): "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "ãÀ ÍÏÖÌÉצÓÔØ ÝÅ ÎÅ ÒÅÁ̦ÚÏ×ÁÎÏ!"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "÷×ÅĦÔØ ¦Í'Ñ ÆÁÊÌÕ: "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr ""
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "÷×ÅĦÔØ ÎÏ×Å ¦Í'Ñ ÄÌÑ ËÁÔÁÌÏÇÕ: "
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "óÔ×ÏÒÉÔÉ ÆÁÊÌ ÞÉ ËÁÔÁÌÏÇ (f ÞÉ d): "
+
+#: src/LYLocal.c:1166
+#, fuzzy, c-format
+msgid "Remove directory '%s'?"
+msgstr "÷ÉÄÁÌÉÔÉ ÆÁÊÌ '%s'?"
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: src/LYLocal.c:1169
+#, fuzzy
+msgid "Remove directory?"
+msgstr " ËÁÔÁÌÏÇ"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "÷ÉÄÁÌÉÔÉ ÆÁÊÌ '%s'?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "÷ÉÄÁÌÉÔÉ ÆÁÊÌ?"
+
+# 8-| ÎÅ ÚÎÁÀ...
+# 8-| ÎÅ ÚÎÁÀ...
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "÷ÉÄÁÌÉÔÉ ÓÉÍ×ÏÌØÎÅ ÐÏÓÉÌÁÎÎÑ '%s'?"
+
+# 8-| ÎÅ ÚÎÁÀ...
+# 8-| ÎÅ ÚÎÁÀ...
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "÷ÉÄÁÌÉÔÉ ÓÉÍ×ÏÌØÎÅ ÐÏÓÉÌÁÎÎÑ?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr ""
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr ""
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "÷ËÁÖ¦ÔØ ÐÒÁ×Á ÄÏÓÔÕÐÕ:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "÷ÌÁÓÎÉË:"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "çÒÕÐÁ"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "¶ÎÛ¦:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr ""
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "îÅצÒÎÉÊ ÆÏÒÍÁÔ ÒÅÖÉÍÕ."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "îÅצÒÎÉÊ ÆÏÒÍÁÔ ÓÉÎÔÁËÓÉÓÕ."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr ""
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr ""
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "÷ÉËÏÎÕÀ %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "÷ÉËÏÎÕÀ ÓÉÓÔÅÍÎÕ ËÏÍÁÎÄÕ. ãÅ ÍÏÖÅ ÚÁÊÎÑÔÉ ÔÒÏÈÉ ÞÁÓÕ."
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "ðÏÔÏÞÎÉÊ ËÁÔÁÌÏÇ:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "÷ÉĦÌÅÎÉÊ ÅÌÅÍÅÎÔ:"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "î¦ÞÏÇÏ ÎÅ ×ÉĦÌÅÎÏ"
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "צÄͦÞÅÎÉÊ ÅÌÅÍÅÎÔ:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "צÄͦÞÅΦ ÅÌÅÍÅÎÔÉ:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "îÅצÒÎÅ ¦Í'Ñ ÆÁÊÌÕ, ÚÁÐÉÔ ×¦ÄÈÉÌÅÎÏ."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr ""
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr ""
+
+# msgstr "è×ÉÌÉÎÏÞËÕ, ..."
+# msgstr "è×ÉÌÉÎÏÞËÕ, ..."
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "úÁÞÅËÁÊÔÅ È×ÉÌØËÕ, ..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr ""
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr ""
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr ""
+
+# msgstr "÷ÓÔÁÎÏ×ÌÅÎÎÑ ×ÉËÏÎÁÎÏ"
+# msgstr "÷ÓÔÁÎÏ×ÌÅÎÎÑ ×ÉËÏÎÁÎÏ"
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "¶ÎÓÔÁÌÑæÀ ÚÁ×ÅÒÛÅÎÏ"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr ""
+
+# * Yuriy Syrota <rasta@renome.rovno.ua>
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr "÷¦ÄÓÉÌÁÎÎÑ"
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr ""
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "×ÉËÌÉËÁÎÏ \"%s\"\n"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "Õ ÆÁÊ̦ \"%s\" ×ÉËÌÉËÁÎÏÍÕ \"%s\"\n"
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr ""
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr ""
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr "ãÅ ÐÏצÄÏÍÌÅÎÎÑ ÚÇÅÎÅÒÏ×ÁÎÏ Á×ÔÏÍÁÔÉÞÎÏ ÍÎÏÀ,"
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr "äÁÒÕÊÔÅ, Winsock ÎÅ ÚÎÁÊÄÅÎÏ."
+
+#: src/LYMain.c:1226
+#, fuzzy
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "÷É íõóéôå ×ËÁÚÁÔÉ TMP ÞÉ TEMP!\n"
+
+# ôåòí¶îïìïç¶ñ
+# msgstr "îÅÍÁ¤ ÔÁËÏÇÏ ËÁÔÁÌÏÇÕ"
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+msgid "No such directory"
+msgstr "ôÁËÏÇÏ ËÁÔÁÌÏÇÕ ÎÅÍÁ¤"
+
+#: src/LYMain.c:1464
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"æÁÊÌ ËÏÎƦÇÕÒÁÃ¦Ê %s ÎÅÄÏÓÔÕÐÎÉÊ.\n"
+"\n"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1579
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"æÁÊÌ Lynx %s ÎÅÄÏÓÔÕÐÎÉÊ.\n"
+"\n"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr "õ×ÁÇÁ:"
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr ""
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr ""
+
+#: src/LYMain.c:3181
+#, fuzzy, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s ÷ÅÒÓ¦Ñ %s (%s)\n"
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "ú¦ÂÒÁÎÏ ÎÁ %s %s %s\n"
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr ""
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "òÏÚÐÏ×ÓÀÄÖÕ¤ÔØÓÑ ÚǦÄÎÏ Ú GNU General Public License.\n"
+
+#: src/LYMain.c:3244
+#, fuzzy
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+"äÉ× http://lynx.browser.org/ ÔÁ ÏÎÌÁÊÎ-ÄÏÐÏÍÏÇÕ, ÝÏ ×ÚÎÁÔÉ Â¦ÌØÛÅ.\n"
+"\n"
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "÷éëïòéóôáîîñ: %s [ÐÁÒÁÍÅÔÒÉ] [ÆÁÊÌ]\n"
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr "ðÁÒÁÍÅÔÒÉ:\n"
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: îÅצÒÎÉÊ ÐÁÒÁÍÅÔÒ: %s\n"
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr ""
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr "URL ×ËÁÚÁÎÉÊ ËÏÒÉÓÔÕ×ÁÞÅÍ"
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr ""
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr "åËÒÁÎ äÏÐÏÍÏÇÉ"
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr ""
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr ""
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr ""
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr ""
+
+#: src/LYMainLoop.c:5052
+msgid "cd to:"
+msgstr "ÐÅÒÅÊÔÉ ÄÏ:"
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr ""
+
+#: src/LYMainLoop.c:5080
+msgid "failed to change directory"
+msgstr "îÅ ÍÏÖÕ Ä¦ÓÔÁÔÉÓÑ ÄÏ ËÁÔÁÌÏÇÕ."
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr "ïÐÒÁÃØÏ×Õ¤ÍÏ ÄÏËÕÍÅÎÔ ÚǦÄÎÏ Ú ÐÏÔÏÞÎÉÍÉ ÕÓÔÁÎÏ×ËÁÍÉ..."
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "æÁÔÁÌØÎÁ ÐÏÍÉÌËÁ - ÎÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ ×ÉȦÄÎÉÊ ÆÁÊÌ %s\n"
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr ""
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: src/LYMainLoop.c:6960
+#, fuzzy
+msgid "Current URL is empty."
+msgstr "ðÏÔÏÞÎÉÊ ËÁÔÁÌÏÇ:"
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr ""
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+msgid "-index-"
+msgstr "-¦ÎÄÅËÓ-"
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr "lynx: îÅÍÏÖÌÉ×Ï ÚÁ×ÁÎÔÁÖÉÔÉ ÓÔÁÒÔÏ×ÉÊ ÆÁÊÌ"
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: óÔÁÒÔÏ×ÏÇÏ ÆÁÊÌÕ ÎÅÍÁ, ÞÉ ×¦Î ÎÅ Õ ÆÏÒÍÁÔ¦ text/html (text/plain)"
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr "     ÷ÉÈÏÄÉÍÏ..."
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr "-ÄÁ̦-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "÷É ÎÁÄÓÉÌÁ¤ÔÅ ÌÉÓÔÁ ÄÏ:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" âÕÄØ ÌÁÓËÁ, ×ËÁÖ¦ÔØ ÐÏÛÔÏ×Õ ÁÄÒÅÓÕ ÄÌÑ ÚÁÇÏÌÏ×ËÁ \"÷¦Ä:\"\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" âÕÄØ ÌÁÓËÁ, ×ËÁÖ¦ÔØ ÞÉ ×¦ÄÒÅÄÁÇÕÊÔÅ ÚÁÇÏÌÏ×ÏË \"ôÅÍÁ:\"\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" âÕÄØ ÌÁÓËÁ, ×ËÁÖ¦ÔØ ÞÉ ×¦ÄÒÅÄÁÇÕÊÔÅ ÚÁÇÏÌÏ×ÏË \"ïÒÇÁΦÚÁæÑ:\"\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" âÕÄØ ÌÁÓËÁ, ××ÅĦÔØ ×ÁÛÅ ÐÏצÄÏÍÌÅÎÎÑ ÎÉÖÞÅ."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr ""
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr "ÐÒÏÇÌÑÎÕÔÉ/ÚͦÎÉÔÉ ÆÁÊÌ úÁËÌÁÄÉÎÏË (B)"
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "B) ÆÁÊÌ ÚÁËÌÁÄÉÎÏË: "
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2242
+#, fuzzy
+msgid "Novice"
+msgstr "î¦ÞÏÇÏ"
+
+#: src/LYOptions.c:2243
+#, fuzzy
+msgid "Intermediate"
+msgstr "÷ÎÕÔÒ¦ÛΦÊ"
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2279
+#, fuzzy
+msgid "as links"
+msgstr "ÃÅ ÐÏÓÉÌÁÎÎÑ"
+
+#: src/LYOptions.c:2286
+#, fuzzy
+msgid "show filename"
+msgstr " (ÐÏÇÁÎÅ ¦Í'Ñ ÆÁÊÌÕ)"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr ""
+
+# ôåòí¶îïìïç¶ñ
+# ôåòí¶îïìïç¶ñ
+#: src/LYOptions.c:2329
+#, fuzzy
+msgid "Directories first"
+msgstr "ð¦ÄËÁÔÁÌÏÇÉ:"
+
+# ôÑÇÎÅÍÏ http://enigma.x-telecom.net/ ×ÐÅÒÛÅ (ÍÉ ÔÁÍ ÝÅ ÎÅ ÂÕÌÉ)
+# ôÑÇÎÅÍÏ http://enigma.x-telecom.net/ ×ÐÅÒÛÅ (ÍÉ ÔÁÍ ÝÅ ÎÅ ÂÕÌÉ)
+#: src/LYOptions.c:2330
+#, fuzzy
+msgid "Files first"
+msgstr " ×ÐÅÒÛÅ"
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr ""
+
+# @ Dia GIMP Gabber Galeon- Ximian-setup-tools balsa control-center evolution gimp gimp-std-plugins- glade- gnome-core gnome-libs gnome-pim gnomeicu gphoto graphite guppi kandy kandy.po kateprojectmanager.po kcmemail kcmkio kde-i18n_4:2.2.2-2_kdeprintfax.po kdelibs kmail kmenuedit knode koffice korganizer ksysguard kword lynx pybliographer red-carpet rpmdrake screem userdrake xchat
+# * Yuriy Syrota <yuri@renome.rovno.ua>
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+#, fuzzy
+msgid "By Name"
+msgstr "îÁÚ×Á:"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+#, fuzzy
+msgid "By Size"
+msgstr "âÁÊÔ¦×:"
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+#, fuzzy
+msgid "By Date"
+msgstr "äÁÔÁ:"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2346
+#, fuzzy
+msgid "By Group"
+msgstr "çÒÕÐÁ"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr ""
+
+# ÐÅÒÅËÁÞÕ×ÁÎÎÑ - ÂÏ ÎÅ ÚÎÁÀ, ËÕÄÉ, Õ ÑËÉÊ Â¦Ë.
+# (×ÖÅ ËÒÁÝÅ "ÐÅÒÅÄÁ×ÁÎÎÑ", ÂÏ ÐÅÒÅÄÁÞÁ - ÎÅ ÚÏ×Ó¦Í ÐÒÏÃÅÓ, ÎÁÞÅ)
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, fuzzy, c-format
+msgid "Show %s/sec rate"
+msgstr "ðÅÒÅËÁÞÕ×ÁÎÎÑ ÄÁÎÉÈ ÚÁ×ÅÒÛÅÎÏ."
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2379
+#, fuzzy
+msgid "Show progressbar"
+msgstr "ðÏËÁÚÕ×ÁÔÉ ËÏÌØÏÒÉ"
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr ""
+
+# msgstr "ðÒÉÊÎÑÔÉ"
+# ÍÍÍÍ... ÎÅ ÚÎÁÀ. (ËÏÎÔÒ)ÁÒÇÕÍÅÎÔÉ?
+#: src/LYOptions.c:2395
+#, fuzzy
+msgid "Accept all types"
+msgstr "úÁÐÒÏ×ÁÄÉÔÉ ÚͦÎÉ"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "%s ×ÉËÌÉËÁ¤ íÅÎÀ îÁÌÁÛÔÕ×ÁÎØ!"
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr "(ÐÁÒÁÍÅÔÒÉ ×¦ÄͦÅΦ (!) ÎÅ ÂÕÄÕÔØ ÚÁÐÉÓÁΦ)"
+
+# @ GIMP lynx
+# * Yuri Syrota <rasta@renome.rovno.ua>
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "úÁÇÁÌØΦ ÎÁÌÁÛÔÕ×ÁÎÎÑ"
+
+# ¦ÌØÛÅ ÐÏÄÏÂÁ¤ÔØÓÑ "ËÏÒÉÓÔÕ×ÁÎÎÑ"
+# ¦ÌØÛÅ ÐÏÄÏÂÁ¤ÔØÓÑ "ËÏÒÉÓÔÕ×ÁÎÎÑ"
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "òÅÖÉÍ ËÏÒÉÓÔÕ×ÁÎÎÑ"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "òÅÄÁËÔÏÒ"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "ôÉÐ ÐÏÛÕËÕ"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "ëÏÒÖÉËÉ"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "÷×¦Ä Ú ËÌÁצÁÔÕÒÉ"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "ãÉÆÒÏ×Á ËÌÁצÁÔÕÒÁ"
+
+# msgstr "ëÌÁצۦ Emacs"
+# msgstr "ëÌÁצۦ Emacs"
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "ëÌÀÞ¦ Emacs"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "ëÌÀÞ¦ VI"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr ""
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr "òÏÚËÌÁÄËÁ ËÌÁצÁÔÕÒÉ"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "äÉÓÐÌÅÊ ÔÁ ÎÁÂ¦Ò ÓÉÍ×Ï̦×"
+
+# ???
+# msgstr "îÁÂ¦Ò ÓÉÍ×ÏÌ¦× ÄÉÓÐÌÅÀ"
+# ???
+# msgstr "îÁÂ¦Ò ÓÉÍ×ÏÌ¦× ÄÉÓÐÌÅÀ"
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+#, fuzzy
+msgid "Use locale-based character set"
+msgstr "îÁÂ¦Ò ÓÉÍ×ÏÌ¦× ÄÉÓÐÌÅÑ"
+
+# ???
+# msgstr "îÁÂ¦Ò ÓÉÍ×ÏÌ¦× ÄÉÓÐÌÅÀ"
+# ???
+# msgstr "îÁÂ¦Ò ÓÉÍ×ÏÌ¦× ÄÉÓÐÌÅÀ"
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "îÁÂ¦Ò ÓÉÍ×ÏÌ¦× ÄÉÓÐÌÅÑ"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "÷×ÁÖÁÔÉ ËÏÄÕ×ÁÎÎÑÍ ÄÏËÕÍÅÎÔÁ"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "òÅÖÉÍ CJK"
+
+# msgstr "óÐÒÁ×ÖΦ 8¦Ô"
+# ÍÏÖÅ "8-bit - ÑË ¤" ?-)
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "òÅÖÉÍ Raw 8-bit"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "X äÉÓÐÌÅÊ"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "÷ÉÇÌÑÄ ÄÏËÕÍÅÎÔÁ"
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "ðÏËÁÚÕ×ÁÔÉ ËÏÌØÏÒÉ"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "ðÏËÁÚÕ×ÁÔÉ ËÕÒÓÏÒ"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+#, fuzzy
+msgid "Underline links"
+msgstr "ðÒÉÈÏ×ÁΦ ÐÏÓÉÌÁÎÎÑ:"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr "ðÏËÁÚÕ×ÁÔÉ ËÏÌØÏÒÉ"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr "òÏÚËÒÉÔÔÑ ÐÏÌ¦× ×ÉÂÏÒÕ"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr "÷ÉÐÒÁ×ÌÑÎÎÑ ÐÏÍÉÌÏË HTML"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "ðÏËÁÚÕ×ÁÔÉ ÚÏÂÒÁÖÅÎÎÑ"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "äÏÄÁÔËÏ×Ï ÐÒÏ ÚÏÂÒÁÖÅÎÎÑ"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "úÁÇÏÌÏ×ËÉ ÄÌÑ îÁÄÓÉÌÁÎÎÑ ÎÁ óÅÒ×ÅÒÉ"
+
+# 8-|  ×ÓÅ ÏÄÎÏ....
+# msgstr "áÄÒÅÓÁ ÅÌÅËÔÒÏÎÎϧ ÐÏÛÔÉ"
+# 8-|  ×ÓÅ ÏÄÎÏ....
+# msgstr "áÄÒÅÓÁ ÅÌÅËÔÒÏÎÎϧ ÐÏÛÔÉ"
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "ðÅÒÓÏÎÁÌØÎÁ ÐÏÛÔÏ×Á ÁÄÒÅÓÁ"
+
+#: src/LYOptions.c:3760
+#, fuzzy
+msgid "Password for anonymous ftp"
+msgstr "ðÁÒÏÌØ ËÏÒÉÓÔÕ×ÁÞÁ ÎÁ ÓÅÒ×ÅÒ¦ ÎÏ×ÉÎ '%s':"
+
+# ÐÅÒÅËÁÞÁÎÏ - ÂÏ ÎÅ ÚÎÁÀ, ËÕÄÉ, Õ ÑËÉÊ Â¦Ë.
+# ÐÅÒÅËÁÞÁÎÏ - ÂÏ ÎÅ ÚÎÁÀ, ËÕÄÉ, Õ ÑËÉÊ Â¦Ë.
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+#, fuzzy
+msgid "Preferred media type"
+msgstr "ðÅÒÅËÁÞÁÎÏ %d ÂÁÊÔ¦×"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+#, fuzzy
+msgid "Preferred encoding"
+msgstr "õÌÀÂÌÅÎÁ ÍÏ×Á ÄÏËÕÍÅÎÔÁ"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "õÌÀÂÌÅÎÉÊ ÎÁÂ¦Ò ÓÉÍ×Ï̦×"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "õÌÀÂÌÅÎÁ ÍÏ×Á ÄÏËÕÍÅÎÔÁ"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "úÁÇÏÌÏ×ÏË User-Agent"
+
+# ÏÂÉÄ×Á ÎÅ×ÄÁ̦, ÑË ÎÁ ÍÅÎÅ 8-(
+# msgstr "äÏÓÔÕÐ ÔÁ ÐÏËÁÚ ÆÁÊ̦×"
+# ÏÂÉÄ×Á ÎÅ×ÄÁ̦, ÑË ÎÁ ÍÅÎÅ 8-(
+# msgstr "äÏÓÔÕÐ ÔÁ ÐÏËÁÚ ÆÁÊ̦×"
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "óÐÉÓËÉ ÔÁ äÏÓÔÕÐ ÄÏ æÁÊ̦×"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "ëÒÉÔÅÒ¦Ê ÓÏÒÔÕ×ÁÎÎÑ ËÁÔÁÌÏÇ¦× FTP"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "ëÒÉÔÅÒ¦Ê ÓÏÒÔÕ×ÁÎÎÑ ÌÏËÁÌØÎÉÈ ËÁÔÁÌÏǦ×"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+msgid "Local directory sort order"
+msgstr "ðÏÒÑÄÏË ÓÏÒÔÕ×ÁÎÎÑ ÌÏËÁÌØÎÉÈ ËÁÔÁÌÏǦ×"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "ðÏËÁÚÕ×ÁÔÉ ÐÒÉÈÏ×ÁΦ ÆÁÊÌÉ"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr "úÁÐÕÓËÁÎÎÑ ÐÒÏÇÒÁÍ ÚÁ ÐÏÓÉÌÁÎÎÑÍÉ"
+
+# ÐÅÒÅËÁÞÕ×ÁÎÎÑ - ÂÏ ÎÅ ÚÎÁÀ, ËÕÄÉ, Õ ÑËÉÊ Â¦Ë.
+# (×ÖÅ ËÒÁÝÅ "ÐÅÒÅÄÁ×ÁÎÎÑ", ÂÏ ÐÅÒÅÄÁÞÁ - ÎÅ ÚÏ×Ó¦Í ÐÒÏÃÅÓ, ÎÁÞÅ)
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr "ðÅÒÅËÁÞÕ×ÁÎÎÑ ÄÁÎÉÈ ÚÁ×ÅÒÛÅÎÏ."
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "óÐÅæÁÌØΦ æÁÊÌÉ ÔÁ åËÒÁÎÉ"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "þÉÓÅÌØΦ ÆÁÊÌÉ ÚÁËÌÁÄÉÎÏË"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "ðÒÏÄÉ×ÉÔÉÓÑ/òÅÄÁÇÕ×ÁÔÉ ÚÁËÌÁÄÉÎËÉ"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "ðÅÒÅÊÔÉ ÄÏ ÍÅÎÀ multi-bookmar"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "æÁÊÌ ÚÁËÌÁÄÉÎÏË"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "ðÒÏÇÌÑÎÕÔ¦ ÓÔÏÒ¦ÎËÉ"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr "ðÅÒÅÇÌÑÎÕÔÉ ÆÁÊÌ "
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " äÒÕË ÚÁ×ÅÒÛÅÎÏ.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "äÏËÕÍÅÎÔ:"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "ë¦ÌØ˦ÓÔØ ÒÑÄ˦×:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "ë¦ÌØ˦ÓÔØ ÓÔÏÒ¦ÎÏË:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "ÓÔÏÒ¦ÎÏË"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "ÓÔÏÒ¦ÎËÁ"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(ÐÒÉÂÌÉÚÎÏ)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "äÅÑ˦ ÆÕÎËæ§ ÄÒÕËÕ ÂÕÌÏ ÚÁÂÏÒÏÎÅÎÏ!"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "óÔÁÎÄÁÒÔΦ ÐÁÒÁÍÅÔÒÉ ÄÒÕËÕ:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "ðÁÒÁÍÅÔÒÉ ÄÒÕËÕ:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "úÁÐÉÓÁÔÉ × ÌÏËÁÌØÎÉÈ ÆÁÊÌ"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "úÁÐÉÓÕ×ÁÔÉ ÎÁ ÄÉÓË ÚÁÂÏÒÏÎÅÎÏ"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "ðÅÒÅÓÌÁÔÉ ÆÁÊÌ ÐÏÛÔÏÀ"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "òÏÚÄÒÕËÕ×ÁÔÉ ÎÁ ÅËÒÁΦ"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "òÏÚÄÒÕËÕ×ÁÔÉ ÎÁ ÐÒÉÎÔÅÒ¦, ЦÄ'¤ÄÎÁÎÏÍÕ ÄÏ ×ÁÛÏÇÏ vt100-ÔÅÒͦÎÁÌÕ"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr ""
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr ""
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr ""
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(ÎÅÍÁ ¦ÍÅΦ)"
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "×ËÌÀÞÅÎÏÍÕ Ú '%s'.\n"
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr "ïÓØ ÔÁËÅ ÂÕÌÏ ÚÎÁÊÄÅÎÏ Õ ×ÁÛÏÍÕ ÆÁÊ̦ lynx.cfg."
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr "ú×ÅÒΦÔØÓÑ ÄÏ ÄÉÓÔÒÉÂÕÔÉ×Á"
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr "ÐÏ ÄÏÄÁÔËÏ×Õ ¦ÎÆÏÒÍÁæÀ."
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr "ðåòåþéôáôé"
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr "÷ÁÛÁ ÏÓÎÏ×ÎÁ ËÏÎƦÇÕÒÁæÑ"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "ëÁÔÁÌÏÇ, ÑËÉÊ ×É ÚÁÒÁÚ ÐÅÒÅÇÌÑÄÁ¤ÔÅ"
+
+# @ Dia GIMP Gabber Galeon- Ximian-setup-tools balsa control-center evolution gimp gimp-std-plugins- glade- gnome-core gnome-libs gnome-pim gnomeicu gphoto graphite guppi kandy kandy.po kateprojectmanager.po kcmemail kcmkio kde-i18n_4:2.2.2-2_kdeprintfax.po kdelibs kmail kmenuedit knode koffice korganizer ksysguard kword lynx pybliographer red-carpet rpmdrake screem userdrake xchat
+# * Yuriy Syrota <yuri@renome.rovno.ua>
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "îÁÚ×Á:"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "ëÁÔÁÌÏÇ, ÑËÉÊ ÚÁÒÁÚ ×ÉĦÌÅÎÏ"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "æÁÊÌ, ÑËÉÊ ÚÁÒÁÚ ×ÉĦÌÅÎÏ"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr ""
+
+# 8-| ÎÅ ÚÎÁÀ...
+# msgstr " ðÏ×ÎÁ ÎÁÚ×Á:"
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "ðÏ×ÎÅ ¦Í'Ñ:"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr ""
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr ""
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "      ÷ÌÁÓÎÉË:"
+
+# @ evolution kuser lynx
+# * Andriy Rysin <arysin@yahoo.com>
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "îÁÚ×Á ÇÒÕÐÉ:"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "òÏÚÍ¦Ò ÆÁÊÌÕ:"
+
+# @ Gnome-find KDat karchiver karchiver.po kwuftpd lynx red-carpet
+# * Yuri Syrota <rasta@renome.rovno.ua>
+#: src/LYShowInfo.c:227
+#, fuzzy
+msgid "(bytes)"
+msgstr "ÂÁÊÔÉ"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "     óÔ×ÏÒÅÎÏ:"
+
+# @ KDat lynx
+# * Andriy Rysin <arysin@yahoo.com>
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "ïÓÔÁÎÎÑ ÍÏÄÉƦËÁæÑ:"
+
+# @ KDat lynx
+# * Andriy Rysin <arysin@yahoo.com>
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "ïÓÔÁÎΤ Ú×ÅÒÎÅÎÎÑ:"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "ðÒÁ×Á ÄÏÓÔÕÐÕ"
+
+#: src/LYShowInfo.c:279
+#, fuzzy
+msgid "Group:"
+msgstr "çÒÕÐÁ"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "æÁÊÌ, ÑËÉÊ ×É ÚÁÒÁÚ ÐÅÒÅÇÌÑÄÁ¤ÔÅ"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr ""
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "îÁÂ¦Ò ÓÉÍ×Ï̦×:"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "óÅÒ×ÅÒ:"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "äÁÔÁ:"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr ""
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr ""
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr ""
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr "äÏ×ÖÉÎÁ ×ͦÓÔÕ:"
+
+#: src/LYShowInfo.c:362
+#, fuzzy
+msgid "Length:"
+msgstr "äÏ×ÖÉÎÁ ×ͦÓÔÕ:"
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "íÏ×Á:"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr ""
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr ""
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "÷ÌÁÓÎÉË(É):"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "ÒÏÚͦÒ:"
+
+# @ Galeon- lynx xfce
+# * Andriy Rysin <arysin@yahoo.com>
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "ÒÑÄËÉ"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr ""
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr "ÄÖÅÒÅÌÏ"
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr "Ú×ÉÞÁÊÎÉÊ"
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ""
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ""
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ""
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ""
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ", ÆÁÊÌ ÚÁËÌÁÄÉÎÏË"
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "ÒÅÖÉÍ:"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "ðÏÓÉÌÁÎÎÑ, ÑËÉÊ ÚÁÒÁÚ ×ÉĦÌÅÎÏ"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr "íÅÔÏÄ:"
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr ""
+
+#: src/LYShowInfo.c:436
+#, fuzzy
+msgid "Action:"
+msgstr "òÏÚͦÝÅÎÎÑ: "
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr "(ðÏÌÅ ÆÏÒÍÉ)"
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "îÁ Ã¦Ê ÓÔÏÒ¦Îæ ÎÅÍÁ¤ ÐÏÓÉÌÁÎØ"
+
+#: src/LYShowInfo.c:455
+#, fuzzy
+msgid "Server Headers:"
+msgstr "óÅÒ×ÅÒ:"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr ""
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr ""
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "îÅÍÏÖÌÉ×Ï ÐÅÒÅÄÁÔÉ ÆÁÊÌ."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "÷¦Ä×ÁÎÔÁÖÉÔÉ ÄÏ:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "ðÁÒÁÍÅÔÒÉ ×¦Ä×ÁÎÔÁÖÅÎÎÑ:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr ""
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr ""
+
+#: src/LYUtils.c:3719
+msgid "unknown restriction"
+msgstr "ÎÅצÄÏÍÅ ÏÂÍÅÖÅÎÎÑ"
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "ïÂÍÅÖÅÎÎÑ ×¦ÄÓÕÔΦ.\n"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "îÁÂ¦Ò ÏÂÍÅÖÅÎØ:\n"
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr "îÅ ÍÏÖÕ ÚÎÁÊÔÉ ÄÏÍÁÛÎ¦Ê ËÁÔÁÌÏÇ"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr ""
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"bookmark_file ×ÉÚÎÁÞÁ¤ ¦Í'Ñ ÔÁ ÒÏÚÔÁÛÕ×ÁÎÎÑ ÐÏÞÁÔËÏ×ÏÇÏ ÆÁÊÌÕ ÚÁËÌÁÄÉÎÏË,\n"
+"ÄÏ ÑËÏÇÏ ËÏÒÉÓÔÕ×ÁÞ ÍÏÖÅ ÄÏÄÁ×ÁÔÉ ÐÏÓÉÌÁÎÎÑ ÄÌÑ Û×ÉÄËÏÇÏ ×¦ÄÎÁÊÄÅÎÎÑ\n"
+"ЦÚΦÛÅ.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"file_editor ×ÉÚÎÁÞÁ¤ ÒÅÄÁËÔÏÒÁ ÄÌÑ ÒÅÄÁÇÕ×ÁÎÎÑ ÌÏËÁÌØÎÉÈ ÆÁÊÌ¦× ÞÉ ÐÏÛÔÏ×ÉÈ\n"
+"ÐÏצÄÏÍÌÅÎØ.  ñËÝÏ ÒÅÄÁËÔÏÒÁ ÎÅ ×ÉÚÎÁÞÅÎÏ, ÒÅÄÁÇÕ×ÁÎÎÑ ÚÁÂÏÒÏÎÅÎÅ, ȦÂÁ ÝÏ\n"
+"ÞÅÒÅÚ ×ÉËÌÉË ÒÅÄÁËÔÏÒÁ Ú ËÏÍÁÎÄÎÏÇÏ ÒÑÄËÁ; ¦ ÄÌÑ ÎÁÐÉÓÁÎÎÑ ÌÉÓÔ¦× ÂÕÄÅÍÏ\n"
+"×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ×ÍÏÎÔÏ×ÁÎÏÇÏ ÏÄÎÏÒÑÄËÏ×ÏÇÏ ÒÅÄÁËÔÏÒÁ.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"file_sorting_method ×ÉÚÎÁÞÁ¤, ÑË ÐÒÉ ÐÅÒÅÇÌÑĦ ÓÏÒÔÕ×ÁÔÉ ÓÐÉÓËÉ ÆÁÊ̦×,\n"
+"ÎÁÐÒÉËÌÁÄ, ËÁÔÁÌÏÇÉ FTP.  íÏÖÌÉצ ×ÁÒ¦ÁÎÔÉ:\n"
+"   BY_FILENAME -- ÓÏÒÔÕ×ÁÔÉ ÚÁ ¦ÍÅÎÅÍ ÆÁÊÌÕ\n"
+"   BY_TYPE     -- ÓÏÒÔÕ×ÁÔÉ ÚÁ ÔÉÐÏÍ ÆÁÊÌÕ\n"
+"   BY_SIZE     -- ÓÏÒÔÕ×ÁÔÉ ÚÁ ÒÏÚͦÒÏÍ ÆÁÊÌÕ\n"
+"   BY_DATE     -- ÓÏÒÔÕ×ÁÔÉ ÚÁ ÄÁÔÏÀ ÆÁÊÌÕ\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"㦠ËÏÍÁÎÄÉ ÄÁÀÔØ ÚÍÏÇÕ ×ÉÚÎÁÞÉÔÉ sub-bookmark ÆÁÊÌÉ ÔÁ §ÈΦ ÏÐÉÓÉ.\n"
+"æÏÒÍÁÔ ÔÁËÉÊ: multi_bookmark<×ÅÌÉËÁ_̦ÔÅÒÁ>=<ÆÁÊÌ>,<ÏÐÉÓ>\n"
+"íÏÖÌÉ×Ï ×ÉÚÎÁÞÉÔÉ ÄÏ 26 ÆÁÊÌ¦× ÚÁËÌÁÄÉÎÏË (ÄÌÑ ÁÎÇ̦ÊÓØËÉÈ ×ÅÌÉËÉÈ Ì¦ÔÅÒ).\n"
+"íÉ ÐÏÞÉÎÁ¤ÍÏ Ú \"multi_bookmarkB\", ÂÏ 'A' ¤ ÓÔÁÒÔÏ×ÉÍ (ÄÉ×. ×ÉÝÅ).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"personal_mail_address ×ÉÚÎÁÞÁ¤ ×ÁÛÕ ×ÌÁÓÎÕ ÐÏÛÔÏ×Õ ÁÄÒÅÓÕ. áÄÒÅÓÁ ÂÕÄÅ\n"
+"ÎÁÄÓÉÌÁÔÉÓÑ Ð¦Ä ÞÁÓ ÐÅÒÅÄÁÞ¦ ÆÁÊÌ¦× ÐÏ HTTP ÄÌÑ Á×ÔÏÒÉÚÁæ§ ÔÁ ×ÈÏÄÕ\n"
+"× ÓÉÓÔÅÍÕ, ÔÁ ÄÌÑ ÎÁÄÓÉÌÁÎÎÑ ËÏÍÅÎÔÁÒ¦×.\n"
+"ñËÝÏ Ö ×É ÎÅ ÂÁÖÁ¤ÔÅ ÎÁÄÁ×ÁÔÉ ÃÀ ¦ÎÆÏÒÍÁæÀ, ×ÓÔÁÎÏצÔØ Õ ÆÁÊ̦ lynx.cfg\n"
+"\"NO_FROM_HEADER:TRUE\", ÞÉ ÚÁÐÕÓËÁÊÔÅ lynx Ú ËÌÀÞÅÍ -nofrom. ÷É ÔÁËÏÖ\n"
+"ÍÏÖÅÔÅ ÚÁÌÉÛÉÔÉ ÃÅ ÐÏÌÅ ÐÏÒÏÖΦÍ, ÁÌÅ ÔÏĦ ×ÏÎÏ ÎÅ ×ËÌÀÞÁÔÉÍÅÔØÓÑ Õ ×ÁÛ¦\n"
+"ËÏÍÅÎÔÁÒ¦ ÐÒÉ ÌÉÓÔÕ×ÁÎΦ.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"ñËÝÏ sub_bookmarks ÎÅ ×ÉÍËÎÅÎÏ (\"off\"), ÔÁ  multiple bookmarks ÂÕÌÏ\n"
+"×ÉÚÎÁÞÅÎÏ (ÄÉ×ÉÓØ ÎÉÖÞÅ), ÔÏĦ ×Ó¦ ÐÒÉ ÂÕÄØ-ÑË¦Ê Ä¦§ ¦Ú ÚÁËÌÁÄÉÎËÁÍÉ\n"
+"ËÏÒÉÓÔÕ×ÁÞÅצ ÂÕÄÅ ÚÁÐÒÏÐÏÎÏ×ÁÎÏ ×ÉÂÒÁÔÉ sub-bookmark ÆÁÊÌ. ñËÝÏ\n"
+"bookmark_file ×ÉÚÎÁÞÅÎÏ (ÄÉ×ÉÓØ ×ÉÝÅ), צΠÂÕÄÅ ÚÁÐÒÏÐÏÎÏ×ÁÎÉÍ ×ÉÂÏÒÏÍ.\n"
+"ëÏÌÉ ÃÀ ÏÐæÀ ×ÓÔÁÎÏ×ÌÅÎÏ Õ \"advanced\", ÔÁ ÒÅÖÉÍ ËÏÒÉÓÔÕ×ÁÎÎÑ ÔÁËÏÖ\n"
+"advanced, ÔÏĦ ËÏÍÁÎÄÁ ÐÅÒÅÇÌÑÄÕ ÚÁËÌÁÄÉÎÏË ('v'iew) ÎÁÄÁÓÔØ ÚÁÐÒÏÛÅÎÎÑ\n"
+"Õ ÒÑÄËÕ ÓÔÁÔÕÓÕ ÚÁͦÓÔØ ÍÅÎÀ, ÑË Õ ÒÅÖÉÍÁÈ \"ÎÏ×ÁÞÏË\" ÔÁ intermediate.\n"
+"ëÏÌÉ ÃÀ ÏÐæÀ ×ÓÔÁÎÏ×ÌÅÎÏ Õ \"standard\", ÂÕÄÅ ÎÁÄÁÎÏ ÍÅÎÀ, ÎÅÚÁÌÅÖÎÏ\n"
+"×¦Ä ÒÅÖÉÍÕ ËÏÒÉÓÔÕ×ÁÎÎÑ.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"õÓÔÁÎÏ×ËÁ visted_links ×ÉÚÎÁÞÁ¤, ÑË Lynx צÄÏÂÒÁÖÁ¤ ¦ÎÆÏÒÍÁæÀ\n"
+"ÎÁ óÔÏÒ¦Îæ ÷¦ÄצÄÁÎÉÈ ðÏÓÉÌÁÎØ.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+#, fuzzy
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"æÁÊÌ ðÏÞÁÔËÏ×ÉÈ îÁÌÁÛÔÕ×ÁÎØ ëÏÒÉÓÔÕ×ÁÞÁ Lynx\n"
+"\n"
+"ãÅÊ ÆÁÊÌ Í¦ÓÔÉÔØ ÎÁÌÁÛÔÕ×ÁÎÎÑ Ú åËÒÁÎÕ îÁÌÁÛÔÕ×ÁÎØ Lynx (ÚÁÚ×ÉÞÁÊ\n"
+"Ú ËÌÀÞÅÍ '>').  úÁÚ×ÉÞÁÊ ÎÅÍÁ ΦÑËϧ ÎÅÏÂȦÄÎÏÓÔ¦ ÒÅÄÁÇÕ×ÁÔÉ ÊÏÇÏ,\n"
+"ÏÓ˦ÌØËÉ ÓÔÁÒÔÏצ ÎÁÌÁÛÔÕ×ÁÎÎÑ ×ÓÔÁÎÏ×ÌÀÀÔØ ÞÅÒÅÚ åËÒÁÎ îÁÌÁÛÔÕ×ÁÎØ, ÏÔÖÅ,\n"
+"ËÏÌÉ ÎÁÓÔÕÐÎÏÇÏ ÒÁÚÕ ×É ÚÂÅÒÅÖÅÔÅ §È Ú åËÒÁÎÕ îÁÌÁÛÔÕ×ÁÎØ, ÃÅÊ ÆÁÊÌ\n"
+"ÂÕÄÅ ÐÅÒÅÚÁÐÉÓÁÎÏ.  ÷ÁÓ ÐÏÐÅÒÅÄÉÌÉ, ÍÁÊÔÅ ÎÁ Õ×ÁÚ¦...\n"
+"ñËÝÏ Ö ×É ÎÁÓÐÒÁ×Ħ ÛÕËÁ¤ÔÅ ÆÁÊÌ ÚÁÇÁÌØÎÉÈ ÎÁÌÁÛÔÕ×ÁÎØ - ÔÏ ÃÅ, ÑË ÐÒÁ×ÉÌÏ,\n"
+"ÆÁÊÌ lynx.cfg, Ê ×¦Î ÍÁ¤ ¦ÎÛÉÊ ÚͦÓÔ ÔÁ ¦ÎÛÉÊ ÆÏÒÍÁÔ.\n"
+"ôÏÖ ÃÅ ÎÅ ÔÏÊ ÆÁÊÌ ;-)\n"
+
+# @ EasyTag cupsdconf.po kfind kfindpart kppp lynx
+# * Olexander Kunytsa, <kunia@istc.kiev.ua>
+#~ msgid "KB"
+#~ msgstr "ëÂ"
+
+#~ msgid "reason unknown."
+#~ msgstr "ÐÒÉÞÉÎÁ ÎÅצÄÏÍÁ."
+
+#~ msgid "Remove '%s' and all of its contents?"
+#~ msgstr "÷ÉÄÁÌÉÔÉ '%s' ÒÁÚÏÍ ¦Ú ÕÓ¦Í ×ͦÓÔÏÍ?"
+
+#~ msgid "Remove directory and all of its contents?"
+#~ msgstr "÷ÉÄÁÌÉÔÉ ËÁÔÁÌÏÇ ÒÁÚÏÍ ¦Ú ÕÓ¦Í ×ͦÓÔÏÍ?"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "îÅ ÍÏÖÕ ×¦ÄËÒÉÔÉ ÆÁÊÌ ÍÅÎÀ ËÅÒÕ×ÁÎÎÑ ÆÁÊÌÁÍÉ."
diff --git a/po/vi.po b/po/vi.po
new file mode 100644
index 00000000..7421c4f9
--- /dev/null
+++ b/po/vi.po
@@ -0,0 +1,6140 @@
+# Vietnamese translation for Lynx.
+# This file is distributed under the same license as the lynx package.
+# Phan Vĩnh Thịnh <teppi@gmail.com>, 2005.
+# Clytie Siddall <clytie@riverland.net.au>, 2008, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.7-dev12\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-02-01 18:54-0500\n"
+"PO-Revision-Date: 2009-01-26 23:06+1030\n"
+"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
+"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: LocFactoryEditor 1.8\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "Cảnh giác ! %s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Chào mừng"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "Bạn có chắc muốn thoát không?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "Thá»±c sá»± thoát khá»i Lynx không?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "Kết nối bị ngắt."
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "Tiến trình truyá»n dữ liệu bị gián Ä‘oạn."
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "Bị thôi !"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "Äang thôi !"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "Tốt lắm !"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "Hoàn tất."
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "Yêu cầu sai."
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "lùi"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "màn hình tiếp"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "HÃY GIÚP!"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ", trợ giúp vỠ"
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "Lệnh: [mũi tên] di chuyển; [?] trợ giúp; [q] thoát; [<-] lùi lại."
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "— [phím dài] xem thêm; [mũi tên] di chuyển; [?] trợ giúp, [q] thoát."
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "— [phím dài] trang kế tiếp —"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL quá dài"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(TrÆ°á»ng nhập văn bản) Không hoạt Ä‘á»™ng.  Nhấn <return> để kích hoạt."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(Vùng văn bản) Không hoạt động.  Nhấn <return> để kích hoạt."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(Vùng văn bản) Không hoạt động.  Nhấn <return> để kích hoạt (%s để mở trình soán thảo)."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(TrÆ°á»ng biểu mẫu) Không hoạt Ä‘á»™ng.  Nhấn <return> để soạn thảo."
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(TrÆ°á»ng biểu mẫu) Không hoạt Ä‘á»™ng.  Nhấn <return> để soạn thảo (%s để gá»­i Ä‘i mà không nhá»› tạm)."
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(TrÆ°á»ng biểu mẫu) Không hoạt Ä‘á»™ng.  Hãy nhấn <return> để soạn thảo, nhấn <return> hai lần để gá»­i Ä‘i."
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(TrÆ°á»ng biểu mẫu gá»­i thÆ°) Không hoạt Ä‘á»™ng.  Hãy nhấn <return> để thay đổi."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(TrÆ°á»ng nhập mật khẩu) Không hoạt Ä‘á»™ng.  Hãy nhấn <return> để kích hoạt."
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "TrÆ°á»ng nhập tập tin KHÔNG THỂ SỬA Äá»”I. Dùng các phím mÅ©i tên LÊN hoặc XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(TrÆ°á»ng nhập tập tin) Hãy nhập tên tập tin.  Sá»­ dụng các phím mÅ©i tên LÊN hoặc XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(TrÆ°á»ng nhập văn bản) Hãy nhập.  Dùng các mÅ©i tên LÊN hoặc XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(Vùng văn bản) Hãy nhập.  Dùng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(Vùng văn bản) Hãy nhập.  Sá»­ dụng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp (%s để mở trình soạn thảo)."
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "TrÆ°á»ng văn bản biểu mẫu KHÔNG THỂ SỬA Äá»”I. Dùng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(TrÆ°á»ng biểu mẫu) Hãy nhập.  Dùng <return> để gá»­i Ä‘i."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(TrÆ°á»ng biểu mẫu) Hãy nhập.  Dùng <return> để gá»­i Ä‘i. (%s để không nhá»› tạm)."
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(TrÆ°á»ng biểu mẫu) Hãy nhập. Dùng <return> để gá»­i Ä‘i, phím mÅ©i tên hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "TrÆ°á»ng biểu mẫu KHÔNG THỂ SỬA Äá»”I. Dùng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(TrÆ°á»ng biểu mẫu gá»­i thÆ°) Hãy nhập.  Dùng <return> để gá»­i Ä‘i, phím mÅ©i tên hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(TrÆ°á»ng biểu mẫu gá»­i thÆ°) Không cho phép gá»­i thÆ° vì thế không thể gá»­i Ä‘i."
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(TrÆ°á»ng nhập mật khẩu) Hãy nhập.  Sá»­ dụng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "Mật khẩu biểu mẫu KHÔNG THỂ SỬA Äá»”I. Dùng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(TrÆ°á»ng há»™p chá»n)   Dùng mÅ©i tên phải hoặc <return> để bật tắt."
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "Há»™p lá»±a chá»n KHÔNG THỂ SỬA Äá»”I. Dùng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Nút chá»n má»™t)   Dùng mÅ©i tên phải hoặc <return> để bật tắt."
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Nút chá»n má»™t biểu mẫu KHÔNG THỂ SỬA Äá»”I. Dùng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "Gửi ('x' để không nhớ tạm) cho "
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "Gá»­i cho "
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(Nút gửi đi biểu mẫu) Dùng mũi tên phải hoặc <return> để gửi ('x' để không nhớ tạm)."
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(Nút gửi đi biểu mẫu) Dùng mũi tên phải hoặc <return> để gửi đi."
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Nút gá»­i Ä‘i BỊ TẮT. Dùng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "Gửi thư biểu mẫu cho"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(nút gửi thư biểu mẫu) Dùng mũi tên phải hoặc <return> để gửi đi."
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(nút gửi thư biểu mẫu) Không cho phép gửi thư vì thế không thể gửi đi."
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(Äặt lại biểu mẫu)  Dùng mÅ©i tên phải hoặc <return> để đặt lại biểu mẫu thành các giá trị mặc định"
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "Nút đặt lại BỊ TẮT. Hãy dùng mÅ©i tên LÊN/XUá»NG hoặc tab để Ä‘i tiếp."
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Danh sách tùy chá»n) Bấm Return và dùng các phím mÅ©i tên và Return để đặt tùy chá»n."
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Danh sách lá»±a chá»n) Bấm Return và dùng các phím mÅ©i tên và Return để đặt tùy chá»n."
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "Danh sách tùy chá»n KHÔNG THẾ SỬA Äá»”I.  Hãy dùng các mÅ©i tên hoặc Return để xem lại hoặc rá»i bá»."
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "Danh sách lá»±a chá»n KHÔNG THẾ SỬA Äá»”I.  Hãy dùng các mÅ©i tên hoặc Return để xem lại hoặc rá»i bá»."
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "Äang gá»­i biểu mẫu..."
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "Äang đặt lại biểu mẫu..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "Äang nạp tài liệu.  Bất kỳ mục nào trong Ä‘Æ¡n cÅ©ng sẽ mất!"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "Cảnh báo : không thể chuyển đổi từ dữ liệu sang bộ ký tự %s."
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(LIÊN KẾT THÔNG THƯỜNG)  Dùng mũi tên sang phải hoặc <return> để kích hoạt."
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "Äã yêu cầu má»™t tài nguyên hiện thá»i không sẵn sàng."
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "Gõ lệnh động tác gõ phím Lynx:"
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "Äang tra tìm"
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "Äang lấy %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "Äang bá» qua %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "Äang dùng %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "URI cấm: %s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "Äịa chỉ dạng sai %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL: %s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "Không thể truy cập vào tập tin WWW."
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "Äây là chỉ mục tìm kiếm được. Dùng %s để tìm kiếm:"
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "—Thêm— Äây là chỉ mục tìm kiếm được. Dùng %s để tìm kiếm:"
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "Bạn đã gõ một số liên kết không hợp lệ."
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "Hiện thá»i Ä‘ang xem mã nguồn của tài liệu.  Nhấn « \\ » để trở lại phiên bản được vẽ."
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr " Mũi tên: [Trên/Xuống] di chuyển; [Phải] theo liên kết; [Trái] lùi lại.\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr "[H] trợ giúp; [O] tùy chá»n; [P] in; [M] màn hình chính; [Q] thoát; [/] tìm; [del] lịch sá»­\n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "Lệnh khác: [H] trợ giúp; [K] sơ đồ phím; [G] đi tới; [P] in; [M] màn hình chính; [Q] thoát\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr "Lệnh khác: [B] lùi lại; [E] sá»­a; [D] tải vá»; [^R] nạp lại [^W] xoá màn hình; [/] tìm trong tài liệu\n"
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr "Lệnh khác: [C] lịch sá»­ bình luận; [xoá lùi] Äánh dấu ([V] xem; [A] thêm; [R] bá»)\n"
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "            Hãy nhập văn bản vào trÆ°á»ng này bằng cách gõ phím              "
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U để xóa tất cả văn bản trong trÆ°á»ng, [Xoá lùi] để xóa 1 ký tá»±    "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U để xóa văn bản trong trÆ°á»ng, [Xoá lùi] để xóa 1 ký tá»±    "
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "    %s để xóa tất cả văn bản trong trÆ°á»ng, [Xoá lùi] để xóa 1 ký tá»±    "
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "    %s để xóa văn bản trong trÆ°á»ng, [Xoá lùi] để xóa 1 ký tá»±    "
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "Sai dạng gửi thư biểu mẫu nên bị thôi."
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "Cảnh báo : mã Ä‘iá»u khiển trong địa chỉ thÆ° thay thế bởi ?"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "Không cho phép gửi thư !  Không thể gửi đi."
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Lỗi gửi thư biểu mẫu."
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "Việc gửi thư biểu mẫu bị thôi."
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "Äang gá»­i ná»™i dung của biểu mẫu..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "URI mailto (gửi thư cho) không chứa địa chỉ thư điện tử."
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "Không thể mở tập tin tạm thá»i cho URL mailto (gá»­i thÆ° cho)."
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "Bạn có muốn trích dẫn thư gốc không?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "Bạn có muốn trích dẫn mã nguồn đã phân tích sẵn không?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "Äang tạo và thá»±c hiện trình soạn thảo đã chá»n để soạn thảo thÆ°"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "Lá»—i tạo và thá»±c hiện trình soạn thảo, hãy kiểm tra định nghÄ©a trình soạn thảo trong trình Ä‘Æ¡n tùy chá»n"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "Gửi bình luận này không?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "Gửi thư này không?"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "Äang gá»­i thÆ° của bạn..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "Äang gá»­i bình luận của bạn:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "Ở ngoài VÙNG VĂN BẢN, không thể dùng trình soạn thảo ngoại trú."
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "Ở ngoài VÙNG VĂN BẢN, không thể dùng câu lệnh."
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "tập tin: HÀNH ÄỘNG không cho phép !"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "tập tin: URL qua liên kết đã đưa là không cho phép !"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "Truy cập vào tập tin cục bộ bị từ chối."
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "tập tin: không cho phép URL qua Äánh dấu !"
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "Không cho phép URL đặc biệt này trong tài liệu bên ngoài."
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "Bấm phím <return> để trở vỠLynx."
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "Äang tạo và thá»±c hiện tiến trình con DCL. Dùng « logout » để quay lại Lynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "Gõ « EXIT » (thoát) để trở vỠLynx.\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "Äang tạo và thá»±c hiện trình bao mặc định.  Hãy dùng « exit » để quay lại Lynx.\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "Chức năng tạo và thá»±c hiện hiện thá»i bị tắt."
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "Câu lệnh « 'd'ownload » (tải vá») hiện hiện thá»i bị tắt."
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "Bạn không thể tải xuống má»™t trÆ°á»ng nhập liệu."
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "Biểu mẫu có hành động mailto (gửi thư) thì không thể tải xuống."
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "Bạn không thể tải xuống một liên kết mailto: (gửi thư)."
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "Bạn không thể tải xuống cookie."
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "Bạn không thể tải xuống má»™t tùy chá»n in ẩn."
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "Bạn không thể tải xuống má»™t tùy chá»n tải lên."
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "Bạn không thể tải xuống má»™t tùy chá»n cho phép."
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "Không thể tải xuống địa chỉ URL đặc biệt này."
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "Không có gì cần tải xuống."
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr "Tìm Ä‘Æ°á»ng BẬT !"
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr "Tìm Ä‘Æ°á»ng TẮT !"
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "Sẽ thêm liên kết cho má»i hình ảnh!  Äang nạp lại..."
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "Äã phục hồi sá»± Ä‘iá»u khiển hình ảnh tiêu chuẩn! Äang nạp lại..."
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "Sẽ chèn Pseudo_ALT cho má»—i ảnh trá»±c tiếp không có chuá»—i xen kẽ ALT! Äang nạp lại..."
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "Ảnh trá»±c tiếp không có chuá»—i ALT sẽ bị bá» qua! Äang nạp lại..."
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "Chế Ä‘á»™ 8-bit thô sÆ¡ hoặc CJK TẮT! Äang nạp lại..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "Chế Ä‘á»™ 8-bit thô sÆ¡ hoặc CJK BẬT! Äang nạp lại..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "Gửi yêu cầu HEAD cho [D] tài liệu hoặc [L] liên kết, hoặc [C] thôi: "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "Gửi yêu cầu HEAD cho [D] tài liệu, hoặc [C] thôi: "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "Tiếc là tài liệu không phải địa chỉ URL Web (theo giao thức HTTP)."
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "Tiếc là liên kết không phải địa chỉ URL Web (theo giao thức HTTP)."
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "Tiếc là HÀNH VI cho biểu mẫu này đã bị tắt."
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "Rất tiếc, HÀNH VI cho biểu mẫu này không phải là một URL kiểu http."
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "Không phải là URL http hay biểu mẫu HÀNH VI."
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "URL đặc biệt này không thể là một HÀNH VI của biểu mẫu."
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "Äịa chỉ URL không nằm trong vùng bắt đầu."
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "Chức năng gửi bài tin đã bị tắt"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "Hỗ trợ quản lý tập tin đã bị tắt."
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "Hiện thá»i không có sẵn tập tin nhảy."
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "Nhảy tới (dùng « ? » để liệt kê): "
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "Không cho phép nhảy tới một địa chỉ URL viết tắt."
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "Không cho phép dùng địa chỉ URL ngẫu nhiên. Hãy dùng một lối tắt."
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "Chưa dùng địa chỉ URL ngẫu nhiên."
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "Các tính năng Äánh dấu đã bị tắt."
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "Chức năng thá»±c hiện thông qua Äánh dấu đã bị tắt."
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "ChÆ°a xác định tập tin Äánh dấu. Hãy dùng %s để xem tùy chá»n."
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "Không thể mở tập tin tạm thá»i để chuyển đổi danh sách nóng Mosaic X."
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "Lá»–I — không thể mở tập tin Äánh dấu."
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "Không thể mở tập tin Äánh dấu để xoá liên kết."
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "Không thể mở tập tin ghi tạm để xoá liên kết."
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "Gặp lỗi khi thay đổi tên của tập tin ghi tạm. "
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "Gặp lá»—i khi thay đổi tên của tập tin tạm thá»i."
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "Không thể sao chép tập tin tạm thá»i để xoá liên kết."
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "Không thể mở lại tập tin tạm thá»i để xoá liên kết."
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "Liên kết không nằm riêng trên má»™t dòng trong tập tin Äánh dấu."
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "Lá»—i xoá Äánh dấu."
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "Không Ä‘i qua được tập tin Äánh dấu (chỉ các URL http)."
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "Không thể mở tập tin Äánh dấu : trÆ°á»›c tiên hãy dùng « a » để lÆ°u liên kết."
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "Không có liên kết trong tập tin Äánh dấu này."
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "[D] Xoá tài liệu đã lưu tạm, hoặc [C] thôi: "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "LÆ°u [D] tài liệu hoặc [L] liên kết vào tập tin Äánh dấu, hoặc [C] thôi: "
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "LÆ°u [D] tài liệu vào tập tin Äánh dấu, hoặc [C] thôi: "
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr " LÆ°u [L] liên kết vào tập tin Äánh dấu, hoặc [C] thôi: "
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "Tài liệu từ biểu mẫu có ná»™i dung POST thì không thể được lÆ°u dạng Äánh dấu."
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "Không thể lÆ°u trÆ°á»ng/liên kết của biểu mẫu"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "Không thể lÆ°u dạng Äánh dấu tập tin kiểu lịch sá»­, hiển thị thông tin, trình Ä‘Æ¡n hoặc danh sách."
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "Bạn thá»±c sá»± muốn xoá liên kết này khá»i tập tin Äánh dấu không?"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "Äịa chỉ dạng sai."
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr "Phân tích bình luận lịch sử BẬT (Tối thiểu bị ghi đè)."
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr "Phân tích bình luận lịch sử TẮT (Tối thiểu được dùng)."
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr "Phân tích bình luận lịch sử BẬT (Hợp lệ bị ghi đè)."
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr "Phân tích bình luận lịch sử TẮT (Hợp lệ có tác động)."
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr "Phân tích bình luận tối thiểu BẬT (cũng có tác động)."
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr "Phân tích bình luận tối thiểu TẮT (Hợp lệ có tác động)."
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr "Phân tích bình luận tối thiểu BẬT (nhưng kiểu lịch sử có tác động)."
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr "Phân tích bình luận tối thiểu TẮT (kiểu lịch sử có tác động)."
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr "Phân tích dấu nháy kép má»m BẬT."
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr "Phân tích dấu nháy kép má»m TẮT."
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "Äang dùng phân tích TagSoup của HTML."
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "Äang dùng phân tích SortaSGML của HTML."
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "Bạn ở cuối của tài liệu này."
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "Bạn ở đầu của tài liệu này."
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "Bạn ở trang %d của tài liệu này."
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Liên kết số %d không cần cập nhật."
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "Bạn ở tài liệu đầu tiên."
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "Không có liên kết bên trên dòng này của tài liệu."
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "Không có liên kết bên dưới dòng này của tài liệu."
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "Tá»›i chiá»u dài tối Ä‘a. Hãy xoá văn bản hoặc Ä‘i tiếp."
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "Không nằm trên má»™t nút gá»­i biểu mẫu hay má»™t liên kết thông thÆ°á»ng."
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "Có nút chá»n má»™t thì lúc nào phải chá»n má»™t của những tùy chá»n được cung cấp."
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "Không có nút gá»­i Ä‘i cho biểu mẫu này, gá»­i Ä‘i má»™t trÆ°á»ng văn bản riêng?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "Bạn có muốn trở vỠtài liệu trước không?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "Sử dụng phím mũi tên hoặc tab để đi tiếp."
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "Hãy nhập văn bản.  Sử dụng phím mũi tên hoặc tab để đi tiếp."
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "•• HTML xấu !! Chưa xác định hành động biểu mẫu. ••"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "•• HTML xấu !! Không thể tạo cửa sổ tự mở. ••"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "Không thể tạo cửa sổ tự mở."
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "Không cho phép đi tới một địa chỉ URL ngẫu nhiên!"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "Không cho phép đi tới một địa chỉ URL không phải HTTP."
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "Bạn không có quyá»n Ä‘i tá»›i địa chỉ URL kiểu « %s »"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "URL cần mở : "
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "Sá»­a URL Äi Tá»›i hiện tại: "
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "Sá»­a URL Äi Tá»›i trÆ°á»›c: "
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "Sá»­a má»™t URL Äi Tá»›i trÆ°á»›c: "
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "Tài liệu hiện thá»i chứa dữ liệu POST."
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "Sửa URL của tài liệu này: "
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "Sửa URL của liên kết hiện tại: "
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "Không thể chỉnh sửa địa chỉ URL kiểu Quản lý Tập tin"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "Nhập truy vấn cơ sở dữ liệu : "
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "Nhập truy vấn whereis: "
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "Nhập truy vấn hiện thá»i: "
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "Nhập truy vấn trước: "
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "Nhập một truy vấn trước: "
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "Bấm tổ hợp phím Ctrl-R để gá»­i lại truy vấn hiện thá»i."
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "Sá»­a lối tắt hiện thá»i: "
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "Sửa lối tắt trước: "
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "Sửa một lối tắt trước: "
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "Phím « %c » không phải được ánh xạ tới một tập tin nhảy."
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "Không thể tìm tập tin nhảy."
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "Không thể mở tập tin nhảy."
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "Lá»—i Ä‘á»c tập tin nhảy."
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "Tràn bá»™ nhá»› khi Ä‘á»c tập tin nhảy."
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "Tràn bá»™ nhá»› khi Ä‘á»c bảng nhảy."
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "Hiện thá»i không có sẵn chỉ mục."
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "Bạn thực sự muốn chuyển đổi sang màn hình Chính không?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "Bạn ở màn hình chính."
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "Không phải một tài liệu có chỉ mục và khả năng tìm kiếm: bấm « / » để tìm kiếm một chuỗi văn bản"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "Chưa xác định chủ sơ hữu cho tập tin này thì bạn không thể gửi bình luận"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "Chưa xác định chủ sơ hữu. Dùng %s không?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "Bạn có muốn gửi bình luận không?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "Không cho phép dùng thư vì thế bạn không thể gửi bình luận"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "Câu lệnh chỉnh sá»­a (E) hiện thá»i bị tắt."
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "Chức năng chỉnh sá»­a bên ngoài hiện thá»i bị tắt."
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "Lỗi hệ thống — lỗi lấy trạng thái."
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "Chưa xác định trình soạn thảo."
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "Câu lệnh in ẩn (P) hiện thá»i bị tắt."
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "Tài liệu không có liên kết Thanh công cụ hoặc Băng cá»."
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "Không thể mở tập tin theo cây."
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "Không thể mở tập tin đã tìm theo cây."
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "Không thể mở tập tin từ chối."
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "Không thể mở tập tin kết xuất lỗi theo cây"
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "TIẾN TRÃŒNH THEO CÂY ÄÃ BỊ GIÃN ÄOẠN"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "Äi theo liên kết (hoặc Ä‘i tá»›i liên kết hay trang) số : "
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "Chá»n tùy chá»n (hoặc trang) số : "
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "Tùy chá»n số %d không cần cập nhật."
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "Bạn ở cuối của danh sách tùy chá»n này."
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "Bạn ở đầu của danh sách tùy chá»n này."
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "Bạn ở trang %d của danh sách tùy chá»n này."
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "Bạn đã nhập má»™t số thứ tá»± tùy chá»n không hợp lệ."
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "•• HTML xấu !!  Dùng « -trace » để chẩn đoán. ••"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "ÄÆ°a ra tên của tập tin cần lÆ°u vào"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "Không ghi được dữ liệu vào tập tin — hãy chạy WWW cục bộ"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "Không thể mở tập tin tạm thá»i."
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "Không thể mở tập tin kết xuất nên thôi."
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "Chức năng thực hiện bị tắt."
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "ChÆ°a hiệu lá»±c chức năng thá»±c hiện cho tập tin này.  Xem trình Ä‘Æ¡n Tùy chá»n (dùng %s)."
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "Khả năng thực hiện không phải được biên dịch vào phiên bản này."
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "Tập tin này không thể được hiển thị trên thiết bị cuối này."
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "Tập tin này không thể được hiển thị trên thiết bị cuối này: [D] Tải vỠ[C] Thôi"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  [D] Tải vỠ[C] Thôi"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "Äang hủy bá» tập tin."
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "Äang lấy tập tin — HÃY ÄỢI —"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "Nhập tên tập tin: "
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "Sửa tên tập tin trước: "
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "Sửa một tên tập tin trước: "
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "Nhập tên tập tin mới: "
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "Tên tập tin không được bắt đầu với một dấu chấm."
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "Tập tin đã có.  Tạo một phiên bản mới hơn ?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Tập tin đã có. Ghi đè ?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "Không thể ghi vào tập tin đó."
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "LỖI! - sai cấu hình câu lệnh tải xuống."
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "Không thể tải xuống tập tin."
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "Äang Ä‘á»c thÆ° mục..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "Äang xây dá»±ng danh sách thÆ° mục..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Äang lÆ°u..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "Không thể chỉnh sửa tập tin « %s »."
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "Không thể truy cập vào tài liệu."
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "Không thể truy cập vào tập tin."
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "Không thể truy cập vào thư mục."
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "Không thể nạp dữ liệu."
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "Hiện thá»i Lynx không thể chỉnh sá»­a (E) tập tin WWW từ xa."
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "TrÆ°á»ng này không được chỉnh sá»­a (E) bằng trình soạn thảo bên ngoài."
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "Quy tắc sai"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "Không đủ toán hạng:"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "Bạn không có quyá»n chỉnh sá»­a tập tin này."
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "Tá»±a Ä‘á»:"
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "Chủ Ä‘á»: "
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "Tên ngÆ°á»i dùng: "
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "Mật khẩu : "
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx: cần thiết Tên ngÆ°á»i dùng và Mật khẩu."
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx: cần thiết Mật khẩu."
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "Xoá tất cả thông tin xác thực cho phiên chạy này không?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "Thông tin xác thực đã bị xoá."
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "Lỗi xác thực. Thử lại ?"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "Hỗ trợ CGI đã bị tắt."
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "Khả năng Lynxcgi không phải được biên dịch vào phiên bản này."
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "Tiếc là không có cách đã biết để chuyển đổi %s sang %s."
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "Không thể thiết lập kết nối."
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "Không thể tạo kết nối"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr "Liên kết có khả năng thực hiện đã bị từ chối do yêu cầu dạng sai."
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr "Liên kết có khả năng thực hiện đã bị từ chối do ký tự « %c »."
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr "Liên kết có khả năng thá»±c hiện đã bị từ chối do chuá»—i Ä‘Æ°á»ng dẫn tÆ°Æ¡ng đối ('../')."
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr "Liên kết có khả năng thá»±c hiện đã bị từ chối do vị trí hay Ä‘Æ°á»ng dẫn."
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr "Truy cập thư bị tắt."
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr "Chỉ truy cập được tới những tập tin và máy phục vụ trên máy cục bộ."
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr "Truy cập Telnet bị tắt."
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr "Äặc tả cổng Telnet bị tắt."
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr "Truy cập mạng bài tin USENET bị tắt."
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr "Truy cập Rlogin bị tắt."
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr "Truy cập FTP bị tắt."
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr "Không có tham chiếu từ tài liệu này."
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr "Chỉ có liên kết bị ẩn từ tài liệu này."
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr "Không thể mở tập tin lệnh."
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr "Äã dừng gá»­i bài tin !"
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr "Äang tạo và thá»±c hiện trình soạn thảo đã chá»n để chỉnh sá»­a bài tin"
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr "Gửi bài này ?"
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr "Phụ thêm « %s » ?"
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr "Äang gá»­i cho nhóm tin..."
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "••• Bạn có thÆ° chÆ°a Ä‘á»c. •••"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "••• Bạn có thư. •••"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "••• Bạn có thư mới. •••"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr "Äã dừng chèn tập tin !"
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "Không đủ bộ nhớ cho tập tin."
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "Không thể mở tập tin để Ä‘á»c."
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Tập tin không tồn tại."
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Tập tin không tồn tại — nhập lại hoặc thôi:"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr "Tập tin không có khả năng Ä‘á»c."
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr "Tập tin không có khả năng Ä‘á»c — nhập lại hoặc thôi:"
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr "Không có gì để chèn - tập tin có chiá»u dài 0."
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "Äã dừng yêu cầu lÆ°u !"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr "Äã dừng yêu cầu thÆ° tín !"
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr "Äang xem mã nguồn đã phân tích sẵn. Bạn có chắc muốn gá»­i nó đính kèm thÆ° không?"
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "Hãy đợi..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "Äang gá»­i tập tin đính kèm thÆ°. Hãy đợi..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "LỖI — Không thể gửi tập tin đính kèm thư"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Tập tin có chiá»u dài %d màn hình. Bạn có chắc muốn in không?"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "Äã dừng yêu cầu in !"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "Bấm <return> để bắt đầu : "
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "Bấm <return> để kết thúc: "
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Tập tin có chiá»u dài %d trang. Bạn có chắc muốn in không?"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr "Kiểm tra xem máy in đã kết nối và đang chạy. Bấm <return> để bắt đầu in:"
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "LỖI — Không thể cấp phát sức chứa tập tin !"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "Không thể mở tập tin tạm thá»i"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr "Không thể mở tập tin tùy chá»n in"
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "Äang in tập tin. Hãy Ä‘á»i..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "Hãy nhập một địa chỉ thư điện tử Internet hợp lệ: "
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "LỖI — máy in bị cấu hình sai."
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr "Không có sẵn sơ đồ ảnh từ đáp ứng POST."
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr "Yêu cầu MAP (sơ đồ) ảnh bên khách bị hướng sai."
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr "MAP (sơ đồ) ảnh bên khách không thể truy cập được."
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr "Không có sẵn MAP (sơ đồ) ảnh nào bên khách."
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr "MAP (sơ đồ) ảnh bên khách không sẵn sàng."
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "Chiá»u cao màn hình phải ít nhất là 24 dòng cho trình Ä‘Æ¡n Tùy chá»n."
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "Chiá»u cao màn hình phải ít nhất là 23 dòng cho trình Ä‘Æ¡n Tùy chá»n."
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "Chiá»u cao màn hình phải ít nhất là 22 dòng cho trình Ä‘Æ¡n Tùy chá»n."
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr "Phím đó yêu cầu chế Ä‘á»™ NgÆ°á»i dùng Cắp cao."
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Kiểu nội dung: %s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "Câu lệnh: "
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "Lệnh không rõ hoặc mơ hồ"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " Phiên bản "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " đầu tiên"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ", đoán là..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr "Quyá»n hạn cho "
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr "Chá»n "
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr "chữ hoa"
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr " của dòng tùy chá»n,"
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " để lưu,"
+
+#: LYMessages.c:565
+msgid " to "
+msgstr " tá»›i "
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " hoặc "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr " chỉ mục"
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " để trở vỠLynx."
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "Äồng ý vá»›i thay đổi"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "Äặt lại thay đổi"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "Phím mũi tên bên trái thì hủy thay đổi"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "LÆ°u tùy chá»n vào Ä‘Ä©a"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "Gõ RETURN để chấp nhận dữ liệu đã nhập."
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr "Gõ RETURN để chấp nhận dữ liệu đã nhập.  Xóa dữ liệu để gá»i giá trị mặc định."
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "Giá trị được chấp nhận."
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "Äã chấp nhận giá trị! -- CẢNH BÃO : Lynx được cấu hình cho XWINDOWS."
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "Äã chấp nhận giá trị! -- CẢNH BÃO : Lynx không được cấu hình cho XWINDOWS."
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "Bạn không có quyá»n thay đổi trình soạn thảo cần dùng."
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "Lỗi đặt biến DISPLAY (trình bày)."
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "Lá»—i dá»n biến DISPLAY (trình bày)."
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "Bạn không có quyá»n thay đổi tập tin Äánh dấu."
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "Thiết bị cuối không hỗ trợ màu sắc"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "Thiết bị cuối « %s » của bạn không hỗ trợ màu sắc"
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr "Truy cập vào tập tin « chấm » đã bị tắt."
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "Chuỗi User-Agent không chứa « Lynx » hay « L_y_n_x »"
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr "Hãy dùng « Lynx » hay « L_y_n_x » trong User-Agent; không thì hình như bạn lừa dối."
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "Chức năng thay đổi chuỗi User-Agent đã bị tắt."
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "Bạn không có quyá»n thay đổi thiết lập này."
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "Äang lÆ°u Tùy chá»n..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "Các tùy chá»n đã được lÆ°u."
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "Không thể lÆ°u Tùy chá»n."
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr "Bấm « R » để trở vỠLynx"
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr " [>] lưu ; [r] trở vỠLynx"
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr "Gõ phím bất kỳ để thay đổi giá trị, RETURN để chấp nhận."
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "Gặp lá»—i khi giải nén tập tin tạm thá»i."
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr "Lược đồ URL không được hỗ trợ."
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr "Dữ liệu không há»— trợ : URL !  Tạm thá»i hãy dùng SHOWINFO."
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "Tới giới hạn chuyển hướng (10 địa chỉ URL)."
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr "Äịa chỉ URL chuyển hÆ°á»›ng cấm được nhận từ máy phục vụ"
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr "Máy phục vụ yêu cầu chuyển hướng %d của nội dung POST tới"
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr "[P] tiếp tục; [G] lấy; [C] thôi"
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "[P] tiếp tục; [C] thôi"
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr "Chuyển hướng nội dung POST. [P] tiếp tục; [U] xem URL; [G] lấy; [C] thôi"
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr "Chuyển hướng nội dung POST. [P] tiếp tục; [U] xem URL; [C] thôi"
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr "Tài liệu từ Biểu mẫu với nội dung POST.  Gửi lại ?"
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr "Gửi lại nội dung POST tới %s ?"
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr "Danh sách từ tài liệu có dữ liệu POST.  Nạp lại %s ?"
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr "Tài liệu từ hành động POST, có thể không hiểu HEAD. Tiếp tục ?"
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr "Hành động gửi đi biểu mẫu là POST, có thể không hiểu HEAD. Tiếp tục ?"
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr "Tiếp tục mà không có tên ngÆ°á»i dùng và mật khẩu ?"
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "Tiếp tục (%s) ?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "Không thể POST (gửi) cho máy chủ này."
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr "Không hỗ trợ POST cho địa chỉ URL này thì bỠqua dữ liệu POST."
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "Äang hủy dữ liệu POST..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "Tài liệu sẽ không được nạp lại."
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "Vị trí: "
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "Không tìm thấy « %s » !"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "Tập tin Äánh dấu mặc định"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "Màn hình quá nhỠ(tối thiểu 8×35)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "Chá»n đích đến hoặc ^G để thôi: "
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr "Chá»n Äánh dấu con, « = » cho trình Ä‘Æ¡n, hoặc ^G để thôi: "
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr "Tạo lại liên kết trong tập tin Äánh dấu này (L) hoặc thôi (C): "
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "Chức năng há»— trợ Ä‘a Äánh dấu không sẵn sàng."
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr " Chá»n Äánh dấu (màn hình %d trên %d)"
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       Chá»n Äánh dấu"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr "Äang sá»­a MÔ TẢ và ÄƯỜNG DẪN của Äánh dấu (%d trên 2)"
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         Äang sá»­a MÔ TẢ và ÄƯỜNG DẪN của Äánh dấu"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "Chữ : "
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr "Sá»­ dụng má»™t Ä‘Æ°á»ng dẫn bắt nguồn từ thÆ° mục đăng nhập trong ngữ pháp SHELL (trình bao)."
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr "Sá»­ dụng má»™t Ä‘Æ°á»ng dẫn bắt nguồn từ thÆ° mục nhà."
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr "Vượt quá số liên kết cho phép mỗi trang!  Hãy sử dụng chức năng cuộn theo nửa trang hay hai dòng."
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "Không có sẵn liên kết đã thăm trước."
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "Cạn bá»™ nhá»›. ChÆ°Æ¡ng trình bị hủy bá»."
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "Cạn bá»™ nhá»›. Äang hủy bá»..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "Không đủ bộ nhớ."
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "Bộ Quản lý Thư mục/Tập tin không sẵn sàng"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "HREF trong thẻ BASE không phải là một địa chỉ URL tuyệt đối."
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr "Äịa chỉ URL định vị không phải là tuyệt đối."
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "Äịa chỉ URL cập nhật không phải là tuyệt đối"
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+"Bạn đang gửi một thư có thân cho :\n"
+"  "
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+"Bạn đang gửi một bình luận cho :\n"
+"  "
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+"\n"
+" Cũng sao chép cho :\n"
+"  "
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+"\n"
+" Cũng sao chép cho :\n"
+"  "
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"Dùng Ctrl-G để thôi nếu bạn không muốn gửi thư\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" Hãy nhập tên của bạn, hoặc để trống (nặc danh)\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" Hãy nhập địa chỉ thư điện tử hoặc một phương pháp\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " khác để liên hệ vá»›i bạn, nếu mong muốn thÆ° trả lá»i.\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" Hãy nhập dòng chủ Ä‘á».\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+"\n"
+" Hãy nhập địa chỉ thư điện tử cho đó cần sao chép (CC) thư này.\n"
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (BỠrỗng nếu bạn không muốn sao chép.)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" Hãy xem lại thân của thư :\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+" Bấm phím Return để tiếp tục: "
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+"\n"
+"Bấm RETURN để làm sạch: "
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " Bấm Ctrl-U để xóa giá trị mặc định.\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" Hãy nhập thông điệp bên dưới."
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" Khi hoàn thành, bấm Enter và gõ một dấu chấm (.)"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" trên một dòng, rồi bấm lại phím Enter."
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr ""
+"%s cookie: %.*s=%.*s  Cho phép ?\n"
+" • Y\t\tcó\n"
+" • N\t\tkhông\n"
+" • A\t\tluôn luôn\n"
+" • V\t\tkhông bao giá»"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "Chấp nhận miá»n cookie không hợp lệ = %s cho %s không?"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr "Chấp nhận Ä‘Æ°á»ng dẫn cookie không hợp lệ = %s làm tiá»n tố của « %s » không?"
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "Cho phép cookie này."
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "Từ chối cookie này."
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "Hộp cookie là rỗng."
+
+#: LYMessages.c:705
+msgid "The Cache Jar is empty."
+msgstr "Hộp lưu tạm là rỗng."
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr "Kích hoạt liên kết để lấy cookie hoặc cả miá»n,"
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr "hoặc thay đổi thiết lập « cho phép » của má»™t miá»n."
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(Không bao giỠcho phép cookie.)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(Luôn luôn cho phép Cookie.)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(Cho phép Cookie sau khi xác nhận.)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr "(Cookie bá»n bỉ.)"
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr "(Không tên.)"
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr "(Không tên.)"
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr "(Không có giá trị.)"
+
+#: LYMessages.c:716 src/LYOptions.c:2407
+msgid "None"
+msgstr "Không có"
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr "(Kết thúc phiên chạy.)"
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "Xoá cookie này không?"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "Cookie (bánh quy) đã bị ăn."
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "Xoá miá»n rá»—ng này không?"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "Miá»n các cokie (bánh quy) đã bị ăn."
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "[D] xoá các cookie của miá»n; đặt cho phép [A] luôn luôn [P] nếu xác nhận [V] không bao giá» ; [C] thôi"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "[D] xoá miá»n; đặt cho phép [A] luôn luôn [P] nếu xác nhận [V] không bao giá» ; [C] thô"
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "Má»i cookie của miá»n này đã bị ăn."
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr " [A] luôn luôn cho phép từ miá»n « %s »."
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "[V] không bao giá» cho phép từ miá»n « %s »."
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "[P] xác nhận thì cho phép từ miá»n « %s »."
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "Xoá má»i cookie của miá»n này không?"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "Má»i cookie (bánh quy) trong há»™p đã bị ăn."
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "Không cho phép địa chỉ URL chứa cổng 19."
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "Không cho phép địa chỉ URL chứa cổng 25."
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "Không cho phép địa chỉ URL chứa cổng %lu."
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr "Äịa chỉ URL có trÆ°á»ng cổng sai."
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr "Vượt quá số tối đa các phần tử HTML có thể lồng nhau."
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr "Tham chiếu bộ phận sai nên loại bỠnhững dấu chấm đứng trước."
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr "Lá»—i mở bản ghi tìm Ä‘Æ°á»ng (trace) thì tắt chức năng tìm Ä‘Æ°á»ng."
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr "Bản ghi Tìm Ä‘Æ°á»ng Lynx"
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr "ChÆ°a khởi chạy bản ghi tìm Ä‘Æ°á»ng cho phiên chạy này."
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "Äã đặt tá»›i số tối Ä‘a các tập tin tạm thá»i."
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr "Giá trị của trÆ°á»ng biểu mẫu vượt quá chiá»u dài vùng đệm. Hãy xén phần Ä‘uôi."
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr "Phần Ä‘uôi đã sá»­a kết hợp vá»›i phần đầu của giá trị trÆ°á»ng biểu mẫu."
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "Thư mục"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "Không cho phép duyệt qua thư mục."
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr "Truy cập lá»±a chá»n không phải được hiệu lá»±c cho thÆ° mục này"
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr "Äã định dạng: lá»—i quét thÆ° mục."
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "Thư mục này không cho phép ghi."
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "Không thể truy cập đến tập tin đã yêu cầu"
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr "Không tìm thấy sá»± đại diện thích hợp để truyá»n."
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "Không thể mở tập tin để giải nén."
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "Tập tin:"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "Thư mục con:"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " thư mục"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr "Äến "
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "Thư mục hiện tại là "
+
+#. HTFTP.c
+#: LYMessages.c:765
+msgid "Symbolic Link"
+msgstr "Liên kết tượng trưng"
+
+#. HTGopher.c
+#: LYMessages.c:768
+msgid "No response from server!"
+msgstr "Máy phục vụ không đáp ứng."
+
+#: LYMessages.c:769
+msgid "CSO index"
+msgstr "Chỉ mục CSO"
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+"\n"
+"Äây là má»™t chỉ mục tìm kiếm được của má»™t cÆ¡ sở dữ liệu CSO.\n"
+
+#: LYMessages.c:771
+msgid "CSO Search Results"
+msgstr "Kết quả tìm kiếm CSO"
+
+#: LYMessages.c:772
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr "Lỗi tìm nơi trên %s\n"
+
+#: LYMessages.c:773
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"Bấm phím « S » và nhập các từ khoá tìm kiếm.\n"
+
+#: LYMessages.c:774
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+" Äây là má»™t chỉ mục Gopher tìm kiếm được.\n"
+
+#: LYMessages.c:775
+msgid "Gopher index"
+msgstr "Chỉ mục Gopher"
+
+#: LYMessages.c:776
+msgid "Gopher Menu"
+msgstr "Trình đơn Gopher"
+
+#: LYMessages.c:777
+msgid " Search Results"
+msgstr " Kết quả tìm kiếm"
+
+#: LYMessages.c:778
+msgid "Sending CSO/PH request."
+msgstr "Äang gá»­i yêu CSO/PH."
+
+#: LYMessages.c:779
+msgid "Sending Gopher request."
+msgstr "Äang gá»­i yêu cầu Gopher."
+
+#: LYMessages.c:780
+msgid "CSO/PH request sent; waiting for response."
+msgstr "Yêu cầu CSO/PH đã được gửi; đang đợi đáp ứng."
+
+#: LYMessages.c:781
+msgid "Gopher request sent; waiting for response."
+msgstr "Yêu cầu Gopher đã được gửi; đang đợi đáp ứng."
+
+#: LYMessages.c:782
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"Hãy nhập các từ khoá tìm kiếm.\n"
+
+#: LYMessages.c:783
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+"\n"
+"Từ khóa đã nhập sẽ cho phép tìm kiếm theo một"
+
+#: LYMessages.c:784
+msgid " person's name in the database.\n"
+msgstr " tên của ngÆ°á»i trong cÆ¡ sở dữ liệu.\n"
+
+#. HTNews.c
+#: LYMessages.c:787
+msgid "Connection closed ???"
+msgstr "Kết nối bị đóng ???"
+
+#: LYMessages.c:788
+msgid "Cannot open temporary file for news POST."
+msgstr "Không thể mở tập tin tạm thá»i để POST (gá»­i) bài tin."
+
+#: LYMessages.c:789
+msgid "This client does not contain support for posting to news with SSL."
+msgstr "Trình khách này không hỗ trợ chức năng gửi bài tin qua SSL."
+
+#. HTStyle.c
+#: LYMessages.c:792
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr "Kiểu %d « %s » SGML:%s.  Phông %s %.1f điểm.\n"
+
+#: LYMessages.c:794
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr "\tSắp=%d, %d tab. (%.0f trước, %.0f sau)\n"
+
+#: LYMessages.c:795
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr "\t\tKiểu Tab=%d tại %.0f\n"
+
+#. HTTP.c
+#: LYMessages.c:798
+msgid "Can't proceed without a username and password."
+msgstr "Không thể tiếp tục khi không có tên ngÆ°á»i dùng và mật khẩu."
+
+#: LYMessages.c:799
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr "Không thể thử lại với thông tin tin xác thực. Liên hệ với Chủ Web của máy phục vụ."
+
+#: LYMessages.c:800
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr "Không thể thử lại với thông tin tin xác thực ủy nhiệm. Liên hệ với Chủ Web của máy phục vụ."
+
+#: LYMessages.c:801
+msgid "Retrying with proxy authorization information."
+msgstr "Äang thá»­ lại vá»›i thông tin tin xác thá»±c ủy nhiệm."
+
+#: LYMessages.c:802
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "Lỗi SSL: %s-Tiếp tục ?"
+
+#. HTWAIS.c
+#: LYMessages.c:805
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS: Thông điệp trả lại quá lớn."
+
+#: LYMessages.c:806
+msgid "Enter WAIS query: "
+msgstr "Nhập truy vấn WAIS: "
+
+#. Miscellaneous status
+#: LYMessages.c:809
+msgid "Retrying as HTTP0 request."
+msgstr "Äang thá»­ lại dạng yêu cầu HTTP0."
+
+#: LYMessages.c:810
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "Äã truyá»n %d byte"
+
+#: LYMessages.c:811
+msgid "Data transfer complete"
+msgstr "Äã truyá»n xong dữ liệu"
+
+#: LYMessages.c:812
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr "Gặp lỗi khi xử lý dòng %d trên %s\n"
+
+#. Lynx internal page titles
+#: LYMessages.c:815
+msgid "Address List Page"
+msgstr "Trang Danh sách Äịa chỉ"
+
+#: LYMessages.c:816
+msgid "Bookmark file"
+msgstr "Tập tin Äánh dấu"
+
+#: LYMessages.c:817
+msgid "Configuration Definitions"
+msgstr "Xác định Cấu hình"
+
+#: LYMessages.c:818
+msgid "Cookie Jar"
+msgstr "Há»™p Cookie"
+
+#: LYMessages.c:819
+msgid "Current Key Map"
+msgstr "SÆ¡ đồ phím hiện thá»i"
+
+#: LYMessages.c:820
+msgid "File Management Options"
+msgstr "Tùy chá»n Quản lý Tập tin"
+
+#: LYMessages.c:821
+msgid "Download Options"
+msgstr "Tùy chá»n Tải xuống"
+
+#: LYMessages.c:822
+msgid "History Page"
+msgstr "Trang Lịch sử"
+
+#: LYMessages.c:823
+msgid "Cache Jar"
+msgstr "Hộp lưu tạm"
+
+#: LYMessages.c:824
+msgid "List Page"
+msgstr "Trang Danh sách"
+
+#: LYMessages.c:825
+msgid "Lynx.cfg Information"
+msgstr "Thông tin Lynx.cfg"
+
+#: LYMessages.c:826
+msgid "Converted Mosaic Hotlist"
+msgstr "Danh sách nóng Mosaic đã chuyển đổi"
+
+#: LYMessages.c:827
+msgid "Options Menu"
+msgstr "Trình Ä‘Æ¡n Tùy chá»n"
+
+#: LYMessages.c:828
+msgid "File Permission Options"
+msgstr "Tùy chá»n Quyá»n hạn Tập tin"
+
+#: LYMessages.c:829
+msgid "Printing Options"
+msgstr "Tùy chá»n In"
+
+#: LYMessages.c:830
+msgid "Information about the current document"
+msgstr "Thông tin vá» tài liệu hiện thá»i"
+
+#: LYMessages.c:831
+msgid "Your recent statusline messages"
+msgstr "Các thông điệp trạng thái vừa xem"
+
+#: LYMessages.c:832
+msgid "Upload Options"
+msgstr "Tùy chá»n Tải lên"
+
+#: LYMessages.c:833
+msgid "Visited Links Page"
+msgstr "Trang Liên kết đã Thăm"
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:836
+msgid "See also"
+msgstr "Xem thêm "
+
+#: LYMessages.c:837
+msgid "your"
+msgstr "của bạn"
+
+#: LYMessages.c:838
+msgid "for runtime options"
+msgstr "cho tùy chá»n lúc chạy"
+
+#: LYMessages.c:839
+msgid "compile time options"
+msgstr "tùy chá»n lúc biên dịch"
+
+#: LYMessages.c:840
+msgid "color-style configuration"
+msgstr "cấu hình kiểu dáng màu"
+
+#: LYMessages.c:841
+msgid "latest release"
+msgstr "bản phát hành mới nhất"
+
+#: LYMessages.c:842
+msgid "pre-release version"
+msgstr "phiên bản phát hành sẵn"
+
+#: LYMessages.c:843
+msgid "development version"
+msgstr "phiên bản phát triển"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:845
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+"Dữ liệu theo đây đã được lấy trong tiến trình tự động cấu hình/xây dựng của bản sao Lynx này. Khi báo cáo lỗi, vui lòng thêm một "
+"bản sao của trang này."
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:849
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr "Dữ liệu theo đây đã được dùng làm lá»i xác định lúc biên dịch đã tá»± Ä‘á»™ng cấu hình trong khi xây dá»±ng bản sao Lynx này."
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:854
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr " [C] tạo; [D] tải vá»; [E] soạn; [F] trình Ä‘Æ¡n đầy; [M] sá»­a; [R] bá» ; [T] thẻ; [U] tải lên\n"
+
+#: LYMessages.c:855
+msgid "Failed to obtain status of current link!"
+msgstr "Lỗi lấy trạng thái vỠliên kết hiện tại."
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:858
+msgid "Special URL only valid from current File Permission menu!"
+msgstr "Äịa chỉ URL đặc biệt chỉ dùng được từ trình Ä‘Æ¡n Quyá»n hạn Tập tin hiện thá»i."
+
+#: LYMessages.c:862
+msgid "External support is currently disabled."
+msgstr "Há»— trợ bên ngoài hiện thá»i bị tắt."
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:866
+msgid "Changing working-directory is currently disabled."
+msgstr "Chức năng thay đổi thÆ° mục hoạt Ä‘á»™ng hiện thá»i bị tắt."
+
+#: LYMessages.c:867
+msgid "Linewrap OFF!"
+msgstr "Ngắt dòng TẮT."
+
+#: LYMessages.c:868
+msgid "Linewrap ON!"
+msgstr "Ngắt dòng BẬT."
+
+#: LYMessages.c:869
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr "Phân tích bảng lồng vào nhau TẮT!  Äang nạp lại..."
+
+#: LYMessages.c:870
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr "Phân tích bảng lồng vào nhau BẬT!  Äang nạp lại..."
+
+#: LYMessages.c:871
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr "Dịch chuyển tắt trong khi ngắt dòng làm việc"
+
+#: LYMessages.c:872
+msgid "Trace not supported"
+msgstr "Chức năng tìm Ä‘Æ°á»ng không được há»— trợ"
+
+#: LYMessages.c:793
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr "\tThụt: đầu tiên=%.0f khác=%.0f, Cao=%.1f Môtả=%.1f\n"
+
+#: WWW/Library/Implementation/HTAABrow.c:629
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr "Tên ngÆ°á»i dùng cho « %s » tại %s « %s%s »:"
+
+#: WWW/Library/Implementation/HTAABrow.c:897
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr "Trình khách này không biết cách cấu táo thông tin xác thực ủy nhiệm cho scheme"
+
+#: WWW/Library/Implementation/HTAABrow.c:974
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr "Trình khách này không biết cách cấu táo thông tin xác thực cho scheme"
+
+#: WWW/Library/Implementation/HTAABrow.c:1082
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "Dòng đầu không hợp lệ « %s%s%s%s%s »"
+
+#: WWW/Library/Implementation/HTAABrow.c:1184
+msgid "Proxy authorization required -- retrying"
+msgstr "Cần thiết xác thực ủy nhiệm — đang thử lại"
+
+#: WWW/Library/Implementation/HTAABrow.c:1242
+msgid "Access without authorization denied -- retrying"
+msgstr "Truy cập mà không xác thực thì bị từ chối — đang thử lại"
+
+#: WWW/Library/Implementation/HTAccess.c:689
+msgid "Access forbidden by rule"
+msgstr "Truy cập bị quy tắc cấm"
+
+#: WWW/Library/Implementation/HTAccess.c:784
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr "Không tìm thấy tài liệu với nội dung POST trong bộ nhớ tạm. Gửi lại ?"
+
+#: WWW/Library/Implementation/HTAccess.c:939
+msgid "Loading failed, use a previous copy."
+msgstr "Nạp không thành công, hãy sử dụng bản sao trước đây."
+
+#: WWW/Library/Implementation/HTAccess.c:1048 src/GridText.c:8513
+msgid "Loading incomplete."
+msgstr "Chưa nạp xong."
+
+#: WWW/Library/Implementation/HTAccess.c:1079
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr "**** HTAccess: ổ cắm hoặc số thứ tự tập tin trả lại bởi hàm nạp quá cũ.\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess: Lá»—i phần má»m ná»™i bá»™.  Xin hãy gá»­i thÆ° « lynx-dev@nongnu.org ».\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1082
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess: Trạng thái trả lại là: %d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1088 src/LYMainLoop.c:7757
+msgid "Can't Access"
+msgstr "Không thể truy cập"
+
+#: WWW/Library/Implementation/HTAccess.c:1096
+msgid "Unable to access document."
+msgstr "Không thể truy cập đến tài liệu."
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "Hãy gõ mật khẩu cho ngÆ°á»i dùng %s@%s:"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "Không thể kết nối tới máy chủ FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr "đóng ổ cắm chính"
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr "ổ cắm cho ổ cắm chính"
+
+#: WWW/Library/Implementation/HTFTP.c:2976
+msgid "Receiving FTP directory."
+msgstr "Äang nhận thÆ° mục FTP."
+
+#: WWW/Library/Implementation/HTFTP.c:3112
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "Äã truyá»n %d byte (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3467
+msgid "connect for data"
+msgstr "kết nối đến dữ liệu"
+
+#: WWW/Library/Implementation/HTFTP.c:4128
+msgid "Receiving FTP file."
+msgstr "Äang nhận tập tin FTP."
+
+#: WWW/Library/Implementation/HTFinger.c:276
+msgid "Could not set up finger connection."
+msgstr "Không thể thiết lập kết nối finger."
+
+#: WWW/Library/Implementation/HTFinger.c:323
+msgid "Could not load data (no sitename in finger URL)"
+msgstr "Không thể nạp dữ liệu (URL finger không chứa tên nơi Web)"
+
+#: WWW/Library/Implementation/HTFinger.c:329
+msgid "Invalid port number - will only use port 79!"
+msgstr "Số thứ tự cổng không hợp lệ: chỉ sẽ dùng cổng 79."
+
+#: WWW/Library/Implementation/HTFinger.c:395
+msgid "Could not access finger host."
+msgstr "Không thể truy cập đến máy chủ finger."
+
+#: WWW/Library/Implementation/HTFinger.c:403
+msgid "No response from finger server."
+msgstr "Máy phục vụ finger không đáp ứng."
+
+#: WWW/Library/Implementation/HTNews.c:425
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "Tên ngÆ°á»i dùng cho máy chủ tin tức « %s »:"
+
+#: WWW/Library/Implementation/HTNews.c:478
+msgid "Change username?"
+msgstr "Thay đổi tên ngÆ°á»i dùng ?"
+
+#: WWW/Library/Implementation/HTNews.c:482
+msgid "Username:"
+msgstr "Tên ngÆ°á»i dùng:"
+
+#: WWW/Library/Implementation/HTNews.c:507
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "Mật khẩu cho máy chủ tin tức « %s »:"
+
+#: WWW/Library/Implementation/HTNews.c:590
+msgid "Change password?"
+msgstr "Thay đổi mật khẩu ?"
+
+#: WWW/Library/Implementation/HTNews.c:1710
+#, c-format
+msgid "No matches for: %s"
+msgstr "Không tìm thấy: %s"
+
+#: WWW/Library/Implementation/HTNews.c:1760
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"Không có bài trong nhóm này.\n"
+
+#: WWW/Library/Implementation/HTNews.c:1772
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+"\n"
+"Không có bài trong phạm vi này.\n"
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1785
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr "%s,  Bài %d-%d"
+
+#: WWW/Library/Implementation/HTNews.c:1808
+msgid "Earlier articles"
+msgstr "Bài cũ"
+
+#: WWW/Library/Implementation/HTNews.c:1821
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+"\n"
+"Có khoảng %d bài báo trong %s, với mã số :\n"
+"\n"
+
+#: WWW/Library/Implementation/HTNews.c:1883
+msgid "All available articles in "
+msgstr "Má»i bài sẵn sàng trong "
+
+#: WWW/Library/Implementation/HTNews.c:2097
+msgid "Later articles"
+msgstr "Bài mới"
+
+#: WWW/Library/Implementation/HTNews.c:2120
+msgid "Post to "
+msgstr "Gá»­i cho "
+
+#: WWW/Library/Implementation/HTNews.c:2341
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "Trình khách này không hỗ trợ địa chỉ URL kiểu SNEWS."
+
+#: WWW/Library/Implementation/HTNews.c:2548
+msgid "No target for raw text!"
+msgstr "Không có đích cho văn bản thô."
+
+#: WWW/Library/Implementation/HTNews.c:2578
+msgid "Connecting to NewsHost ..."
+msgstr "Äang kết nối tá»›i máy tin tức NewsHost ..."
+
+#: WWW/Library/Implementation/HTNews.c:2630
+#, c-format
+msgid "Could not access %s."
+msgstr "Không thể truy cập đến %s."
+
+#: WWW/Library/Implementation/HTNews.c:2736
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "Không Ä‘á»c được thông tin tin tức. Máy tin tức %.20s đã trả lá»i: %.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2740
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr "Không Ä‘á»c được thông tin tin tức; đáp ứng rá»—ng từ máy %s"
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2944
+msgid "Reading list of available newsgroups."
+msgstr "Äang Ä‘á»c danh sách các nhóm tin sẵn sàng."
+
+#: WWW/Library/Implementation/HTNews.c:2965
+msgid "Reading list of articles in newsgroup."
+msgstr "Äang Ä‘á»c danh sách các bài trong nhóm tin."
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2971
+msgid "Reading news article."
+msgstr "Äang Ä‘á»c bài tin."
+
+#: WWW/Library/Implementation/HTNews.c:3001
+msgid "Sorry, could not load requested news."
+msgstr "Tiếc là không thể nạp tin tức đã yêu cầu."
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "Äịa chỉ có cổng không hợp lệ"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "Chiá»u dài địa chỉ hình nhÆ° không hợp lệ"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "Không thể định vị máy từ xa %s."
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "Tên máy không hợp lệ %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "Äang tạo kết nối %s tá»›i %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr "lỗi ổ cắm."
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr "lỗi ổ cắm: nhóm %d địa chỉ %s cổng %s."
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr "Không thể làm cho kết nối không chặn."
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "Lá»—i kết nối (quá nhiá»u lần thá»­ lại)."
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr "Không thể phục hồi ổ cắm để chặn."
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+msgid "Socket read failed (too many tries)."
+msgstr "Lá»—i Ä‘á»c ổ cắm (quá nhiá»u lần thá»­ lại)."
+
+#: WWW/Library/Implementation/HTTP.c:85
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr "SSL gá»i_ngược:%s, thẩm_tra_sẵn_ok=%d, ssl_okay=%d"
+
+#: WWW/Library/Implementation/HTTP.c:393
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "Äịa chỉ chứa má»™t tên ngÆ°á»i dùng: %s"
+
+#: WWW/Library/Implementation/HTTP.c:447
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr "Chứng nhận được cấp bởi: %s"
+
+#: WWW/Library/Implementation/HTTP.c:630
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "Trình khách này không hỗ trợ địa chỉ URL kiểu HTTPS (Web bảo mật)"
+
+#: WWW/Library/Implementation/HTTP.c:655
+msgid "Unable to connect to remote host."
+msgstr "Không thể kết nối tới mấy từ xa."
+
+#: WWW/Library/Implementation/HTTP.c:679
+msgid "Retrying connection without TLS."
+msgstr "Äang thá»­ lại kết nối mà không có TLS."
+
+#: WWW/Library/Implementation/HTTP.c:724
+msgid "no issuer was found"
+msgstr "không tìm thấy nhà cấp"
+
+#: WWW/Library/Implementation/HTTP.c:726
+msgid "issuer is not a CA"
+msgstr "nhà cấp không phải là CA (nhà cầm quyá»n chứng nhận)"
+
+#: WWW/Library/Implementation/HTTP.c:728
+msgid "the certificate has no known issuer"
+msgstr "chứng nhận này không có nhà cấp đã biết"
+
+#: WWW/Library/Implementation/HTTP.c:730
+msgid "the certificate has been revoked"
+msgstr "chứng nhận này đã bị thu hồi"
+
+#: WWW/Library/Implementation/HTTP.c:732
+msgid "the certificate is not trusted"
+msgstr "chứng nhận này không đáng tin"
+
+#: WWW/Library/Implementation/HTTP.c:808
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr "Äã thẩm tra kết nối tá»›i %s (chứng nhận=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:856 WWW/Library/Implementation/HTTP.c:898
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr "Äã thẩm tra kết nối tá»›i %s (chủ Ä‘á»=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:928
+msgid "Can't find common name in certificate"
+msgstr "Không thể tìm tên chung trong chứng nhận"
+
+#: WWW/Library/Implementation/HTTP.c:931
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "Lỗi SSL:máy(%s)!=chứng nhận(%s)-Tiếp tục ?"
+
+#: WWW/Library/Implementation/HTTP.c:944
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr "CHƯA thẩm tra kết nối tới %s (chứng nhận=%s)"
+
+#: WWW/Library/Implementation/HTTP.c:953
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "Kết nối %d-bit bảo mật HTTP %s (%s)"
+
+#: WWW/Library/Implementation/HTTP.c:1420
+msgid "Sending HTTP request."
+msgstr "Äang gá»­i yêu cầu HTTP."
+
+#: WWW/Library/Implementation/HTTP.c:1459
+msgid "Unexpected network write error; connection aborted."
+msgstr "Lá»—i ghi mạng bất thÆ°á»ng; kết nối bị hủy bá»."
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "HTTP request sent; waiting for response."
+msgstr "Äã gá»­i yêu cầu HTTP; Ä‘ang đợi đáp ứng."
+
+#: WWW/Library/Implementation/HTTP.c:1536
+msgid "Unexpected network read error; connection aborted."
+msgstr "Lá»—i Ä‘á»c mạng bất thÆ°á»ng; kết nối bị hủy bá»."
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1731
+msgid "Got unexpected Informational Status."
+msgstr "Nhận được Trạng thái Thông tin không mong đợi."
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1765
+msgid "Request fulfilled.  Reset Content."
+msgstr "Yêu cầu đã hoàn thành.  Äặt lại Ná»™i dung."
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1881
+msgid "Got unexpected 304 Not Modified status."
+msgstr "Nhận được trạng thái 304 ChÆ°a Sá»­a Äổi không mong đợi."
+
+#: WWW/Library/Implementation/HTTP.c:1944
+msgid "Redirection of POST content requires user approval."
+msgstr "Chuyển hÆ°á»›ng ná»™i dung POST cần sá»± tán thành của ngÆ°á»i dùng."
+
+#: WWW/Library/Implementation/HTTP.c:1959
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr "Có ná»™i dung POST. Äang coi sá»± Chuyển hÆ°á»›ng Lâu dài chỉ là Tạm thá»i.\n"
+
+#: WWW/Library/Implementation/HTTP.c:2001
+msgid "Retrying with access authorization information."
+msgstr "Äang thá»­ lại vá»›i thông tin xác thá»±c truy cập."
+
+#: WWW/Library/Implementation/HTTP.c:2013
+msgid "Show the 401 message body?"
+msgstr "Hiển thị thân thư 401 không?"
+
+#: WWW/Library/Implementation/HTTP.c:2056
+msgid "Show the 407 message body?"
+msgstr "Hiển thị thân thư 407 không?"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2156
+msgid "Unknown status reply from server!"
+msgstr "Không rõ đáp ứng trạng thái từ máy phục vụ."
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr "phiên chạy %s từ xa:"
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "Không thể kết nối tới máy phục vụ WAIS."
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "Không thể mở kết nối WAIS để Ä‘á»c."
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr "Mã chẩn đoán là "
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr "Chỉ mục "
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr " chứa %d mục%s thích hợp với « "
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr "Số đầu tiên sau mỗi mục là điểm tương đối của nó, "
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr "số thứ hai là số dòng trong mục đó."
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr " (tên tập tin sai)"
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr "(mã số tài liệu sai)"
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr "(Mục ghi phần đầu ngắn, không hiển thị được)"
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+"\n"
+"Mục ghi phần đầu dài, không hiển thị được\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+"\n"
+"Mục ghi văn bản\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+"\n"
+"Bản ghi Hàng đầu, không hiển thị được\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+"\n"
+"Mục ghi Mã, không hiển thị được\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "Lỗi cú pháp trong địa chỉ URL kiểu WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (Chỉ mục WAIS)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "Chỉ mục WAIS: "
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr "Äây là má»™t liên để tìm kiếm "
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " chỉ mục WAIS.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+"\n"
+"Hãy nhập câu lệnh tìm kiếm (s), rồi ghi rõ chuỗi tìm kiếm.\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr " (trong "
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr "Tìm kiếm WAIS « "
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr " » trong: "
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr "HTWAIS: yêu cầu quá lớn."
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "Äang tìm kiếm qua cÆ¡ sở dữ liệu WAIS..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr "Tiến trình tìm kiếm bị gián đoạn."
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr "Không thể chuyển đổi định dạng của tài liệu WAIS"
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr "HTWAIS: yêu cầu quá dài."
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr "Äang lấy tài liệu WAIS..."
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr "Chưa trả lại văn bản.\n"
+
+#: WWW/Library/Implementation/HTWSRC.c:299
+msgid " NOT GIVEN in source file; "
+msgstr " CHƯA ÄƯA RA trong tập tin mã nguồn; "
+
+#: WWW/Library/Implementation/HTWSRC.c:322
+msgid " WAIS source file"
+msgstr " Tập tin mã nguồn WAIS"
+
+#: WWW/Library/Implementation/HTWSRC.c:329
+msgid " description"
+msgstr " mô tả"
+
+#: WWW/Library/Implementation/HTWSRC.c:339
+msgid "Access links"
+msgstr "Truy cập liên kết"
+
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid "Direct access"
+msgstr "Truy cập trực tiếp"
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:363
+msgid " (or via proxy server, if defined)"
+msgstr " (xác định máy phục vụ ủy nhiệm thì cũng có thể dùng nó)"
+
+#: WWW/Library/Implementation/HTWSRC.c:378
+msgid "Maintainer"
+msgstr "Nhà duy trì"
+
+#: WWW/Library/Implementation/HTWSRC.c:386
+msgid "Host"
+msgstr "Máy"
+
+#: src/GridText.c:704
+msgid "Memory exhausted, display interrupted!"
+msgstr "Cạn bộ nhớ, đã gián đoạn hiển thị."
+
+#: src/GridText.c:709
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "Cạn bá»™ nhá»›, sẽ gián Ä‘oạn truyá»n tải."
+
+#: src/GridText.c:3663
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr " ••• CẠN BỘ NHỚ •••"
+
+#: src/GridText.c:6057 src/GridText.c:6064 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "Không rõ trÆ°á»ng hoặc liên kết"
+
+#: src/GridText.c:6073
+msgid "text entry field"
+msgstr "trÆ°á»ng nhập văn bản"
+
+#: src/GridText.c:6076
+msgid "password entry field"
+msgstr "trÆ°á»ng nhập mật khẩu"
+
+#: src/GridText.c:6079
+msgid "checkbox"
+msgstr "hộp kiểm tra"
+
+#: src/GridText.c:6082
+msgid "radio button"
+msgstr "nút chá»n má»™t"
+
+#: src/GridText.c:6085
+msgid "submit button"
+msgstr "nút gửi đi"
+
+#: src/GridText.c:6088
+msgid "reset button"
+msgstr "nút đặt lại"
+
+#: src/GridText.c:6091
+msgid "popup menu"
+msgstr "trình đơn tự mở"
+
+#: src/GridText.c:6094
+msgid "hidden form field"
+msgstr "trÆ°á»ng biểu mẫu bị ẩn"
+
+#: src/GridText.c:6097
+msgid "text entry area"
+msgstr "vùng nhập văn bản"
+
+#: src/GridText.c:6100
+msgid "range entry field"
+msgstr "trÆ°á»ng nhập phạm vi"
+
+#: src/GridText.c:6103
+msgid "file entry field"
+msgstr "trÆ°á»ng nhập tập tin"
+
+#: src/GridText.c:6106
+msgid "text-submit field"
+msgstr "trÆ°á»ng gá»­i văn bản Ä‘i"
+
+#: src/GridText.c:6109
+msgid "image-submit button"
+msgstr "nút gửi ảnh đi"
+
+#: src/GridText.c:6112
+msgid "keygen field"
+msgstr "trÆ°á»ng keygen"
+
+#: src/GridText.c:6115
+msgid "unknown form field"
+msgstr "trÆ°á»ng biểu mẫu không rõ"
+
+#: src/GridText.c:10245
+msgid "Can't open file for uploading"
+msgstr "không thể mở tập tin để tải lên"
+
+#: src/GridText.c:11404
+#, c-format
+msgid "Submitting %s"
+msgstr "Äang gá»­i %s"
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12457
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr "Tìm ra Treo: cấu trúc TextAnchor bị lỗi - đỠnghị thoát."
+
+#. don't show previous state
+#: src/GridText.c:12594
+msgid "Wrap lines to fit displayed area?"
+msgstr "Ngắt dòng để vừa khít vùng hiển thị ?"
+
+#: src/GridText.c:12646
+msgid "Very long lines have been wrapped!"
+msgstr "Các dòng rất dài đã bị ngắt."
+
+#: src/GridText.c:13151
+msgid "Very long lines have been truncated!"
+msgstr "Các dòng rất dài đã bị cắt ngắn."
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:364 src/LYShowInfo.c:368
+msgid "bytes"
+msgstr "byte"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "Äã Ä‘á»c %s dữ liệu"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "Äã Ä‘á»c %s trên %s dữ liệu"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ", %s/giây"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (bị ngừng chạy trong %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ", GiỠtới xấp xỉ %s"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (Bấm « z » để hủy bá»)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "có"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "không"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr "[Y] có; [N] không; [A] luôn luôn; [V] không bao giá»"
+
+#: src/HTML.c:5912
+msgid "Description:"
+msgstr "Mô tả:"
+
+#: src/HTML.c:5917
+msgid "(none)"
+msgstr "(không có)"
+
+#: src/HTML.c:5921
+msgid "Filepath:"
+msgstr "ÄÆ°á»ng dẫn tập tin:"
+
+#: src/HTML.c:5927
+msgid "(unknown)"
+msgstr "(không rõ)"
+
+#: src/HTML.c:7352
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr "Tài liệu chỉ có các liên kết ẩn.  Hãy dùng câu lệnh liệt kê [L]."
+
+#: src/HTML.c:7851
+msgid "Source cache error - disk full?"
+msgstr "Lỗi bộ nhớ tạm nguồn - đĩa đầy ?"
+
+#: src/HTML.c:7864
+msgid "Source cache error - not enough memory!"
+msgstr "Lỗi bộ nhớ tạm nguồn - không đủ bộ nhớ."
+
+#: src/LYBookmark.c:167
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+"     Tập tin này là một bản đại diện HTML của danh sách nóng của Mosaic X.\n"
+"     Có thể xóa các liên kết đã lá»—i thá»i hoặc không đúng bằng câu lệnh\n"
+"     gỡ bá» Äánh dấu [R]."
+
+#: src/LYBookmark.c:374
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     Có thể xóa liên kết bằng phím « R »<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:377
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr "     Có thể xóa liên kết bằng câu lệnh gỡ bá» Äánh dấu [R]."
+
+#: src/LYBookmark.c:381
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     Cũng có thể chỉnh sửa tập tin này bằng một trình soạn thảo văn bản\n"
+"     thông thÆ°á»ng để xóa Ä‘i những liên kết đã lá»—i thá»i hoặc sai, hoặc\n"
+"     thay đổi thứ tự của chúng."
+
+#: src/LYBookmark.c:384
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+"Chú ý: nếu sửa tập tin này thủ công\n"
+"      thì đừng thay đổi định dạng trong các dòng\n"
+"      hoặc thêm những thẻ HTML khác.\n"
+"      Cần ghi duy nhất má»™t liên kết Äánh dấu trên má»—i dòng."
+
+#: src/LYBookmark.c:680
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr "Có thể phục hồi tập tin từ %s trong phiên chạy này"
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr "Bạn có muốn thực hiện « %s » không?"
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "Không thể truy cập đến văn lệnh CGI"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "Gợi ý"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr "Một máy phục vụ HTTP tuyệt với cho VMS có tại"
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr "liên kết này"
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr "Nó cung cấp hỗ trợ tiên tiến nhất của văn lệnh CGI.\n"
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "Äang thoát do bị gián Ä‘oạn:"
+
+#: src/LYCookie.c:2477
+msgid "(from a previous session)"
+msgstr "(từ một phiên chạy trước)"
+
+#: src/LYCookie.c:2538
+msgid "Maximum Gobble Date:"
+msgstr "Ngày Gobble tối đa:"
+
+#: src/LYCookie.c:2577
+msgid "Internal"
+msgstr "Ná»™i bá»™"
+
+#: src/LYCookie.c:2578
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "lỗi cookie_domain_flag_set, đang hủy bỠchương trình"
+
+#: src/LYCurses.c:1101
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "Lỗi sơ khởi thiết bị cuối — không rõ kiểu thiết bị cuối ?"
+
+#: src/LYCurses.c:1559
+msgid "Terminal ="
+msgstr "Thiết bị cuối ="
+
+#: src/LYCurses.c:1563
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "Phải dùng một thiết bị cuối kiểu VT100, VT200 v.v. với chương trình này."
+
+#: src/LYCurses.c:1612
+msgid "Your Terminal type is unknown!"
+msgstr "Không rõ kiểu thiết bị cuối của bạn."
+
+#: src/LYCurses.c:1613
+msgid "Enter a terminal type:"
+msgstr "Nhập một kiểu thiết bị cuối:"
+
+#: src/LYCurses.c:1627
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "KIỂU THIẾT BỊ CUá»I ÄẶT THÀNH"
+
+#: src/LYCurses.c:2148
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"Gặp lá»—i nghiêm trá»ng trong %s phiên bản %s\n"
+
+#: src/LYCurses.c:2151
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"Hãy xin nhà quản trị hệ thống cho phép gửi báo cáo lỗi, và nếu\n"
+"đồng ý thì gửi thư lên danh sách lynx-dev.  Báo cáo lỗi cần có mô tả ngắn\n"
+"gá»i câu lệnh và/hoặc URL gây ra vấn Ä‘á», tên hệ Ä‘iá»u hành có kèm số phiên\n"
+"bản, phiên bản TCPIP, TRACEBACK nếu có thể lấy, và những thông tin\n"
+"thích hợp khác.\n"
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr "Gặp lỗi khi khởi chạy trình soạn thảo, %s"
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "Trình soạn thảo do tín diệt"
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr "Trình soạn thảo đã trả vỠvới trạng thái lỗi %s"
+
+#: src/LYDownload.c:506
+msgid "Downloaded link:"
+msgstr "Liên kết đã tải vá»:"
+
+#: src/LYDownload.c:511
+msgid "Suggested file name:"
+msgstr "Tên tập tin đã đỠnghị:"
+
+#: src/LYDownload.c:516
+msgid "Standard download options:"
+msgstr "Tùy chá»n tải vá» tiêu chuẩn:"
+
+#: src/LYDownload.c:517
+msgid "Download options:"
+msgstr "Tùy chá»n tải vá»:"
+
+#: src/LYDownload.c:533
+msgid "Save to disk"
+msgstr "Lưu vào đĩa"
+
+#: src/LYDownload.c:547
+msgid "View temporary file"
+msgstr "Xem tập tin tạm thá»i"
+
+#: src/LYDownload.c:554
+msgid "Save to disk disabled."
+msgstr "Chức năng lưu vào đĩa đã bị tắt."
+
+#: src/LYDownload.c:558 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "Äồ thêm cục bá»™ :"
+
+#: src/LYDownload.c:569 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "Chưa đưa ra tên"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "Bạn đã chá»n:"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr "(không có địa chỉ)"
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr " (ná»™i bá»™)"
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr " (đã nội bộ)"
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr " (Từ Lịch sử)"
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr "Äã thăm (loại trừ POST, Äánh dấu, trình Ä‘Æ¡n và danh sách tập tin):"
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr "(Chưa có thư.)"
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr "Phát hiện con trỠkhông hợp lệ."
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr "Dãy:"
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Con trá» :"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "Tên_tập_tin:"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "Äếm_dòng:"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr "Phát hiện bộ nhớ rò rỉ."
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr "Chứa:"
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr "Cỡ_Byte:"
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr "cấp phát lại bộ nhớ :"
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr "Tổng số bộ nhớ rò rỉ lần chạy này:"
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr "Cấp phát cao điểm"
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr "Byte cấp phát"
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr "Tổng lần cấp phát bộ nhớ"
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr "Tổng lần giải phóng"
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "Tham chiếu trong "
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "tài liệu này:"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "Liên kết hiển thị:"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "Liên kết ẩn:"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr "Tham chiếu"
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "Liên kết hiển thị"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "Không thể lấy trạng thái vỠ« %s »."
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "Bạn đã chá»n má»™t mục không phải là tập tin hoặc thÆ° mục. Yêu cầu bị bá» qua."
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "Không thể %s do lỗi hệ thống."
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "%s rất có thể thất bại do lỗi hệ thống."
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "bá» %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr "sá» %s"
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "chuyển %s vào %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "Äã có má»™t thÆ° mục tên đó. Yêu cầu bị bá» qua."
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "Äã có má»™t tập tin tên đó. Yêu cầu bị bá» qua."
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "Bạn đã ghi rõ một tên đang được dùng. Yêu cầu bị bỠqua."
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "Äích đến có chủ sở hữu khác!  Yêu cầu bị bá» qua."
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "Äích đến không phải là thÆ° mục hợp lệ. Yêu cầu bị bá» qua."
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "Gỡ bỠtất cả các tập tin và thư mục có thẻ ?"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "Nhập vị trí mới cho các mục có thẻ:"
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "ÄÆ°á»ng dẫn quá dài"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "Nguồn và đích là cùng một vị trí — yêu cầu bị bỠqua."
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "Nhập tên mới cho thư mục: "
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "Nhập tên mới cho tập tin: "
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "Gặp ký tá»± (dấu tách Ä‘Æ°á»ng dẫn) không cho phép! Yêu cầu bị bá» qua."
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "Nhập vị trí mới cho thư mục: "
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "Nhập vị trí mới cho tập tin: "
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr "Lá»—i không mong đợi - không tìm thấy dấu tách Ä‘Æ°á»ng dẫn theo sau"
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "Nguồn và đích là cùng một vị trí. Yêu cầu bị bỠqua."
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "Sá»­a [N] tên, [L] vị trí, hoặc [P] quyá»n hạn: "
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "Sửa [N] tên hoặc [L] vị trí: "
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "Tính năng này vẫn không được thực thi hoàn toàn."
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "Hãy nhập tên của tập tin cần tạo : "
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "Sự chuyển hướng « // » không cho phép. Yêu cầu bị bỠqua."
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "Nhập tên cho thư mục mới: "
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "Tạo [F] tập tin hoặc [D] thư mục: "
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr "Gỡ bỠthư mục « %s » không?"
+
+#: src/LYLocal.c:1169
+msgid "Remove directory?"
+msgstr "Gỡ bỠthư mục không?"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "Gỡ bỠtập tin « %s » không?"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "Gỡ bỠtập tin không?"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "Gỡ bỠliên kết tượng trưng « %s » không?"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "Gỡ bỠliên kết tượng trưng không?"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr "Tiếc là chưa biết cho phép tập tin khác UNIX như thể nào."
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr "Không thể mở tập tin tùy chá»n cho phép"
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "Hãy đặt quyá»n hạn bên dÆ°á»›i:"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:265
+msgid "Owner:"
+msgstr "Chủ :"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "Nhóm"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "Khác:"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr "biểu mẫu để cho phép"
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr "Äịnh dạng chế Ä‘á»™ không hợp lệ."
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "Äịnh dạng cú pháp không hợp lệ."
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "Cảnh báo !  Tập tin đã giải nén UUDecode sẽ nằm trong thư mục đã chạy Lynx."
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr "Cái chỉ URL RỖNG"
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "Äang thá»±c hiện %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "Äang thá»±c hiện câu lệnh hệ thống. Có thể hÆ¡i lâu."
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "Thư mục hiện tại:"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "Vùng chá»n hiện có :"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "ChÆ°a chá»n gì."
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "mục có thẻ:"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "mục có thẻ:"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "Tên tập tin cấm: yêu cầu bị bỠqua."
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr "Không cho phép cài đặt vào thÆ° mục đã chá»n."
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "Bạn đã chá»n má»™t mục không phải là thÆ° mục. Yêu cầu bị bá» qua."
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "ChỠmột giây, ..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr "Gặp lỗi khi xây dựng các đối số cài đặt"
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "Nguồn và đích là trùng: %s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr "Äã có trong thÆ° mục đích: %s"
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "Cài đặt hoàn tất"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr "URL tạm thá»i hoặc danh sách quá dài."
+
+#: src/LYMail.c:523
+msgid "Sending"
+msgstr "Äang gá»­i"
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr "Liên kết   %s :?: %s \n"
+
+#: src/LYMail.c:1011
+#, c-format
+msgid "called \"%s\"\n"
+msgstr "tên « %s »\n"
+
+#: src/LYMail.c:1012
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr "trong tập tin « %s » tên « %s »\n"
+
+#: src/LYMail.c:1013
+msgid "was requested but was not available."
+msgstr "đã được yêu cầu còn hiện thá»i không sẵn sàng."
+
+#: src/LYMail.c:1014
+msgid "Thought you might want to know."
+msgstr "Thông tin cho bạn biết."
+
+#: src/LYMail.c:1016
+msgid "This message was automatically generated by"
+msgstr "Thông điệp này đã tự động được tạo bởi"
+
+#: src/LYMail.c:1731
+msgid "No system mailer configured"
+msgstr "Chưa cấu hình trình thư cho hệ thống"
+
+#: src/LYMain.c:1001
+msgid "No Winsock found, sorry."
+msgstr "Tiếc là không tìm thấy Winsock."
+
+#: src/LYMain.c:1198
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "PHẢI chỉ ra má»™t vùng TMP hoặc TEMP (tạm thá»i)."
+
+#: src/LYMain.c:1251 src/LYMainLoop.c:5051
+msgid "No such directory"
+msgstr "Không có thư mục nào như vậy"
+
+#: src/LYMain.c:1436
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Tập tin cấu hình « %s » không sẵn sàng.\n"
+"\n"
+
+#: src/LYMain.c:1446
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Chưa khai báo bộ ký tự Lynx.\n"
+
+#: src/LYMain.c:1475
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"Chưa khai báo sơ đồ soạn thảo Lynx.\n"
+"\n"
+
+#: src/LYMain.c:1551
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Tập tin Lynx « %s » không sẵn sàng.\n"
+"\n"
+
+#: src/LYMain.c:1626
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr "Äã bá» qua %d ký tá»± từ đầu vào tiêu chuẩn.\n"
+
+#: src/LYMain.c:1628
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr "Dùng cỠ« -stdin » hay « - » để báo nên xử lý dữ liệu nhập qua ống dẫn như thế nào.\n"
+
+#: src/LYMain.c:1776
+msgid "Warning:"
+msgstr "Cảnh báo :"
+
+#: src/LYMain.c:2341
+msgid "persistent cookies state will be changed in next session only."
+msgstr "trạng thái bá»n bỉ của cookie sẽ chỉ thay đổi trong phiên chạy tiếp theo."
+
+#: src/LYMain.c:2586 src/LYMain.c:2631
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx: đang bỠqua « charset=%s » (bộ ký tự) không nhận ra\n"
+
+#: src/LYMain.c:3150
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s Phiên bản %s (%s)"
+
+#: src/LYMain.c:3188
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "Xây dựng trên %s %s %s\n"
+
+#: src/LYMain.c:3210
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr "Äăng ký bản quyá»n bởi Nhóm Nhà Phát Triển Lynx,"
+
+#: src/LYMain.c:3211
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "Äại há»c Kansas, CERN, và những nhà đóng góp khác."
+
+#: src/LYMain.c:3212
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "Äược phát hành vá»›i Ä‘iá»u kiện của Giấy Phép Công Cá»™ng GNU (GPL) phiên bản 2."
+
+#: src/LYMain.c:3213
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "Xin hãy ghé thăm « http://lynx.isc.org/ » và trợ giúp trực tuyến để xem thêm thông tin chi tiết."
+
+#: src/LYMain.c:4032
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "Sá»­ dụng: %s [tùy_chá»n] [tập_tin]\n"
+
+#: src/LYMain.c:4033
+#, c-format
+msgid "Options are:\n"
+msgstr "Tùy chá»n:\n"
+
+#: src/LYMain.c:4332
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s: Tùy chá»n không hợp lệ: %s\n"
+
+#: src/LYMainLoop.c:571
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr "Lỗi nội bộ : liên kết con chuột không hợp lệ %d."
+
+#: src/LYMainLoop.c:691 src/LYMainLoop.c:5073
+msgid "A URL specified by the user"
+msgstr "Má»™t địa chỉ URL được ngÆ°á»i dùng xác định"
+
+#: src/LYMainLoop.c:1150
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr "Chưa hỗ trợ dạng bảng mã multipart/form-data (đa phần, dữ liệu biểu mẫu) nên không thể gửi đi."
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3082
+msgid "Help Screen"
+msgstr "Màn hình Trợ giúp"
+
+#: src/LYMainLoop.c:3203
+msgid "System Index"
+msgstr "Chỉ mục Hệ thống"
+
+#: src/LYMainLoop.c:3562 src/LYMainLoop.c:5297
+msgid "Entry into main screen"
+msgstr "Vào màn hình chính"
+
+#: src/LYMainLoop.c:3820
+msgid "No next document present"
+msgstr "Không có tài liệu kế tiếp"
+
+#: src/LYMainLoop.c:4116
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "tiếc là bộ ký tự của tài liệu này được chỉ ra rõ ràng..."
+
+#: src/LYMainLoop.c:5029
+msgid "cd to:"
+msgstr "cd (chuyển đổi thư mục) sang:"
+
+#: src/LYMainLoop.c:5054
+msgid "A component of path is not a directory"
+msgstr "Má»™t thành phần của Ä‘Æ°á»ng dẫn không phải là thÆ° mục"
+
+#: src/LYMainLoop.c:5057
+msgid "failed to change directory"
+msgstr "lỗi chuyển đổi thư mục"
+
+#: src/LYMainLoop.c:6229
+msgid "Reparsing document under current settings..."
+msgstr "Äang phân tích lại tài liệu vá»›i thiết lập hiện thá»i..."
+
+#: src/LYMainLoop.c:6521
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "Lỗi nghiêm trong — không thể mở tập tin kết xuất %s\n"
+
+#: src/LYMainLoop.c:6858
+msgid "TABLE center enable."
+msgstr "BẢNG ở giữa bật."
+
+#: src/LYMainLoop.c:6861
+msgid "TABLE center disable."
+msgstr "BẢNG ở giữa tắt."
+
+#: src/LYMainLoop.c:6938
+msgid "Current URL is empty."
+msgstr "Äịa chỉ URI hiện thá»i còn rá»—ng."
+
+#: src/LYMainLoop.c:6940 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr "Lỗi sao chép vào bảng nháp."
+
+#: src/LYMainLoop.c:6942
+msgid "Document URL put to clipboard."
+msgstr "Äịa chỉ URL của tài liệu được chuyển vào bảng nháp."
+
+#: src/LYMainLoop.c:6944
+msgid "Link URL put to clipboard."
+msgstr "Äịa chỉ URL của liên kết được chuyển vào bảng nháp."
+
+#: src/LYMainLoop.c:6971
+msgid "No URL in the clipboard."
+msgstr "Không có địa chỉ URL trên bảng nháp."
+
+#: src/LYMainLoop.c:7642 src/LYMainLoop.c:7812
+msgid "-index-"
+msgstr "-chỉ mục-"
+
+#: src/LYMainLoop.c:7752
+msgid "lynx: Can't access startfile"
+msgstr "lynx: không thể truy cập đến tập tin bắt đầu (startfile)"
+
+#: src/LYMainLoop.c:7764
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr "lynx: Không tìm thấy tập tin bắt đầu hoặc không phải là text/html (văn bản/HTML) hay text/plain (văn bản thô)"
+
+#: src/LYMainLoop.c:7765
+msgid "      Exiting..."
+msgstr "      Äang thoát..."
+
+#: src/LYMainLoop.c:7806
+msgid "-more-"
+msgstr "-thêm-"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr "Bạn sẽ gửi tới:"
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+"Xin hãy thêm địa chỉ thư điện tử của bạn cho dòng đầu Từ : (From)\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" Xin hãy thêm hoặc sá»­a dòng đầu Chủ Ä‘á»: (Subject)\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" Xin hãy thêm hoặc sửa dòng đầu Tổ chức (Organization):\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+"Hãy gõ thư bên dưới."
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr "Thư không có văn bản gốc."
+
+#: src/LYOptions.c:769
+msgid "review/edit B)ookmarks files"
+msgstr "[B] xem lại/sá»­a tập tin Äánh dấu"
+
+#: src/LYOptions.c:771
+msgid "B)ookmark file: "
+msgstr "[B] Tập tin Äánh dấu : "
+
+#: src/LYOptions.c:2132 src/LYOptions.c:2139
+msgid "ON"
+msgstr "BẬT"
+
+#. verbose_img variable
+#: src/LYOptions.c:2133 src/LYOptions.c:2138 src/LYOptions.c:2290 src/LYOptions.c:2301
+msgid "OFF"
+msgstr "TẮT"
+
+#: src/LYOptions.c:2134
+msgid "NEVER"
+msgstr "KHÔNG BAO GIỜ"
+
+#: src/LYOptions.c:2135
+msgid "ALWAYS"
+msgstr "LUÔN LUÔN"
+
+#: src/LYOptions.c:2151 src/LYOptions.c:2282
+msgid "ignore"
+msgstr "bá» qua"
+
+#: src/LYOptions.c:2152
+msgid "ask user"
+msgstr "há»i ngÆ°á»i dùng"
+
+#: src/LYOptions.c:2153
+msgid "accept all"
+msgstr "chấp nhận tất cả"
+
+#: src/LYOptions.c:2165
+msgid "ALWAYS OFF"
+msgstr "LUÔN LUÔN TẮT"
+
+#: src/LYOptions.c:2166
+msgid "FOR LOCAL FILES ONLY"
+msgstr "CHỈ CHO TẬP TIN CỤC BỘ"
+
+#: src/LYOptions.c:2168
+msgid "ALWAYS ON"
+msgstr "LUÔN LUÔN BẬT"
+
+#: src/LYOptions.c:2180
+msgid "Numbers act as arrows"
+msgstr "Số hoạt động như mũi tên"
+
+#: src/LYOptions.c:2182
+msgid "Links are numbered"
+msgstr "Liên kết có số thứ tự"
+
+#: src/LYOptions.c:2185
+msgid "Links and form fields are numbered"
+msgstr "Các liên kết và trÆ°á»ng biểu mẫu Ä‘á»u có số thứ tá»±"
+
+#: src/LYOptions.c:2188
+msgid "Form fields are numbered"
+msgstr "TrÆ°á»ng biểu mẫu có số thứ tá»±"
+
+#: src/LYOptions.c:2202
+msgid "Case insensitive"
+msgstr "Chữ hoa/thÆ°á»ng cÅ©ng được"
+
+#: src/LYOptions.c:2203
+msgid "Case sensitive"
+msgstr "Phân biệt chữ hoa/thÆ°á»ng"
+
+#: src/LYOptions.c:2227
+msgid "prompt normally"
+msgstr "nhắc bình thÆ°á»ng"
+
+#: src/LYOptions.c:2228
+msgid "force yes-response"
+msgstr "buộc đáp ứng Có"
+
+#: src/LYOptions.c:2229
+msgid "force no-response"
+msgstr "buộc đáp ứng Không"
+
+#: src/LYOptions.c:2247
+msgid "Novice"
+msgstr "Má»›i"
+
+#: src/LYOptions.c:2248
+msgid "Intermediate"
+msgstr "Trung gian"
+
+#: src/LYOptions.c:2249
+msgid "Advanced"
+msgstr "Cấp cao"
+
+#: src/LYOptions.c:2258
+msgid "By First Visit"
+msgstr "Theo lần thăm đầu tiên"
+
+#: src/LYOptions.c:2260
+msgid "By First Visit Reversed"
+msgstr "Äảo ngược theo lần thăm đầu tiên"
+
+#: src/LYOptions.c:2261
+msgid "As Visit Tree"
+msgstr "Dạng cây thăm"
+
+#: src/LYOptions.c:2262
+msgid "By Last Visit"
+msgstr "Theo lần thăm cuối cùng"
+
+#: src/LYOptions.c:2264
+msgid "By Last Visit Reversed"
+msgstr "Äảo ngược theo lần thăm cuối cùng"
+
+#. Old_DTD variable
+#: src/LYOptions.c:2275
+msgid "relaxed (TagSoup mode)"
+msgstr "buông lá»ng (chế Ä‘á»™ TagSoup)"
+
+#: src/LYOptions.c:2276
+msgid "strict (SortaSGML mode)"
+msgstr "chặt chẽ (chế độ SortaSGML)"
+
+#: src/LYOptions.c:2283
+msgid "as labels"
+msgstr "dạng nhãn"
+
+#: src/LYOptions.c:2284
+msgid "as links"
+msgstr "dạng liên kết"
+
+#: src/LYOptions.c:2291
+msgid "show filename"
+msgstr "hiện tên tập tin"
+
+#: src/LYOptions.c:2302
+msgid "STANDARD"
+msgstr "TIÊU CHUẨN"
+
+#: src/LYOptions.c:2303
+msgid "ADVANCED"
+msgstr "CẤP CAO"
+
+#: src/LYOptions.c:2334
+msgid "Directories first"
+msgstr "Thư mục trước"
+
+#: src/LYOptions.c:2335
+msgid "Files first"
+msgstr "Tập tin trước"
+
+#: src/LYOptions.c:2336
+msgid "Mixed style"
+msgstr "Kiểu hỗn hợp"
+
+#: src/LYOptions.c:2344 src/LYOptions.c:2364
+msgid "By Name"
+msgstr "Theo tên"
+
+#: src/LYOptions.c:2345 src/LYOptions.c:2365
+msgid "By Type"
+msgstr "Theo kiểu"
+
+#: src/LYOptions.c:2346 src/LYOptions.c:2366
+msgid "By Size"
+msgstr "Theo kích cỡ"
+
+#: src/LYOptions.c:2347 src/LYOptions.c:2367
+msgid "By Date"
+msgstr "Theo ngày"
+
+#: src/LYOptions.c:2348
+msgid "By Mode"
+msgstr "Theo chế độ"
+
+#: src/LYOptions.c:2350
+msgid "By User"
+msgstr "Theo ngÆ°á»i dùng"
+
+#: src/LYOptions.c:2351
+msgid "By Group"
+msgstr "Theo nhóm"
+
+#: src/LYOptions.c:2376
+msgid "Do not show rate"
+msgstr "Không hiện tốc độ"
+
+#: src/LYOptions.c:2377 src/LYOptions.c:2378
+#, c-format
+msgid "Show %s/sec rate"
+msgstr "Hiện tốc độ %s/giây"
+
+#: src/LYOptions.c:2380 src/LYOptions.c:2381
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr "Hiện %s/giây, GiỠtới xấp xỉ"
+
+#: src/LYOptions.c:2384
+msgid "Show progressbar"
+msgstr "Hiện thanh tiến hành"
+
+#: src/LYOptions.c:2396
+msgid "Accept lynx's internal types"
+msgstr "Chấp nhận dạng nội bộ của lynx"
+
+#: src/LYOptions.c:2397
+msgid "Also accept lynx.cfg's types"
+msgstr "Cũng chấp dạng của lynx.cfg"
+
+#: src/LYOptions.c:2398
+msgid "Also accept user's types"
+msgstr "CÅ©ng chấp nhận dạng của ngÆ°á»i dùng"
+
+#: src/LYOptions.c:2399
+msgid "Also accept system's types"
+msgstr "Cũng chấp nhận dạng của hệ thống"
+
+#: src/LYOptions.c:2400
+msgid "Accept all types"
+msgstr "Chấp nhận má»i kiểu"
+
+#: src/LYOptions.c:2409
+msgid "gzip"
+msgstr "gzip"
+
+# Name: don't translate/Tên: đừng dịch
+#: src/LYOptions.c:2410
+msgid "deflate"
+msgstr "deflate"
+
+#: src/LYOptions.c:2413
+msgid "compress"
+msgstr "nén"
+
+#: src/LYOptions.c:2416
+msgid "bzip2"
+msgstr "bzip2"
+
+#: src/LYOptions.c:2418
+msgid "All"
+msgstr "Tất cả"
+
+#: src/LYOptions.c:2686 src/LYOptions.c:2710
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr "Hãy sá»­ dụng %s để gá»i trình Ä‘Æ¡n Tùy chá»n."
+
+#: src/LYOptions.c:3493
+msgid "(options marked with (!) will not be saved)"
+msgstr "(sẽ không ghi nhá»› tùy chá»n có dấu (!))"
+
+#: src/LYOptions.c:3501
+msgid "General Preferences"
+msgstr "Tùy thích chung"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3505
+msgid "User mode"
+msgstr "Chế Ä‘á»™ ngÆ°á»i dùng"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3511
+msgid "Editor"
+msgstr "Bộ soạn thảo"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3516
+msgid "Type of Search"
+msgstr "Kiểu tìm kiếm"
+
+#: src/LYOptions.c:3521
+msgid "Security and Privacy"
+msgstr "Bảo mật và Sự riêng tư"
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3525
+msgid "Cookies"
+msgstr "Cookie"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3539
+msgid "Invalid-Cookie Prompting"
+msgstr "Sai nhắc vỠcookie"
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3546
+msgid "SSL Prompting"
+msgstr "Nhắc vỠSSL"
+
+#: src/LYOptions.c:3552
+msgid "Keyboard Input"
+msgstr "Nhập bàn phím"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3556
+msgid "Keypad mode"
+msgstr "Chế độ vùng phím"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3562
+msgid "Emacs keys"
+msgstr "Phím Emacs"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3568
+msgid "VI keys"
+msgstr "Phím Vi"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3575
+msgid "Line edit style"
+msgstr "Kiểu sửa dòng"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3587
+msgid "Keyboard layout"
+msgstr "Bố trí bàn phím"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3601
+msgid "Display and Character Set"
+msgstr "Trình bày và Bộ ký tự"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3606
+msgid "Use locale-based character set"
+msgstr "Dùng bá»™ ký tá»± dá»±a vào miá»n địa phÆ°Æ¡ng"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3615
+msgid "Display character set"
+msgstr "Bộ ký tự của trình bày"
+
+#: src/LYOptions.c:3646
+msgid "Assumed document character set"
+msgstr "Bộ ký tự tài liệu đã giả sử"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3666
+msgid "CJK mode"
+msgstr "Chế độ Hoa/Nhật/Hàn"
+
+#: src/LYOptions.c:3668
+msgid "Raw 8-bit"
+msgstr "8-bit thô"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3676
+msgid "X Display"
+msgstr "Trình bày X"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3682
+msgid "Document Appearance"
+msgstr "Diện mạo Tài liệu"
+
+#: src/LYOptions.c:3688
+msgid "Show color"
+msgstr "Hiện màu"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3712
+msgid "Show cursor"
+msgstr "Hiện con chạy"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3718
+msgid "Underline links"
+msgstr "Gạch chân liên kết"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3725
+msgid "Show scrollbar"
+msgstr "Hiện thanh cuộn"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3732
+msgid "Popups for select fields"
+msgstr "Tá»± mở trong trÆ°á»ng đã chá»n"
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3738
+msgid "HTML error recovery"
+msgstr "Phục hồi sau lỗi HTML"
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3744
+msgid "Show images"
+msgstr "Hiện ảnh"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3758
+msgid "Verbose images"
+msgstr "Ảnh chi tiết"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3766
+msgid "Headers Transferred to Remote Servers"
+msgstr "Phần đầu đã truyá»n tải tá»›i máy phục vụ ở xa"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3770
+msgid "Personal mail address"
+msgstr "Äịa chỉ thÆ° Ä‘iện tá»­ cá nhân"
+
+#: src/LYOptions.c:3776
+msgid "Password for anonymous ftp"
+msgstr "Mật khẩu cho FTP nặc danh"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3782
+msgid "Preferred media type"
+msgstr "Kiểu vật chứa ưa thích"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3788
+msgid "Preferred encoding"
+msgstr "Bảng mã ưa thích"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3794
+msgid "Preferred document character set"
+msgstr "Bộ ký tự tài liệu ưa thích"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3799
+msgid "Preferred document language"
+msgstr "Ngôn ngữ tài liệu ưa thích"
+
+#: src/LYOptions.c:3805
+msgid "User-Agent header"
+msgstr "Dòng đầu User-Agent (Tác nhân NgÆ°á»i dùng)"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3813
+msgid "Listing and Accessing Files"
+msgstr "Liệt kê và Truy cập Tập tin"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3818
+msgid "Use Passive FTP"
+msgstr "Dùng FTP bị động"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3824
+msgid "FTP sort criteria"
+msgstr "Tiêu chuẩn sắp xếp FTP"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3832
+msgid "Local directory sort criteria"
+msgstr "Tiêu chuẩn sắp xếp thư mục cục bộ"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3838
+msgid "Local directory sort order"
+msgstr "Thứ tự sắp xếp thư mục cục bộ"
+
+#: src/LYOptions.c:3847
+msgid "Show dot files"
+msgstr "Hiện tập tin chấm"
+
+#: src/LYOptions.c:3855
+msgid "Execution links"
+msgstr "Liên kết thực hiện"
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3875
+msgid "Show transfer rate"
+msgstr "Hiện tá»· lệ truyá»n"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3895
+msgid "Special Files and Screens"
+msgstr "Tập tin Äặc biệt và Màn hình"
+
+#: src/LYOptions.c:3900
+msgid "Multi-bookmarks"
+msgstr "Äánh dấu Ä‘a phần"
+
+#: src/LYOptions.c:3908
+msgid "Review/edit Bookmarks files"
+msgstr "Xem lại/Sá»­a tập tin Äánh dấu"
+
+#: src/LYOptions.c:3911
+msgid "Goto multi-bookmark menu"
+msgstr "Äi tá»›i trình Ä‘Æ¡n Äánh dấu Ä‘a phần"
+
+#: src/LYOptions.c:3913
+msgid "Bookmarks file"
+msgstr "Tập tin Äánh dấu"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3920
+msgid "Auto Session"
+msgstr "Buổi hợp tự động"
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3926
+msgid "Session file"
+msgstr "Tập tin buổi hợp"
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3932
+msgid "Visited Pages"
+msgstr "Trang đã thăm"
+
+#: src/LYOptions.c:3937
+msgid "View the file "
+msgstr "Xem tập tin"
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " Công việc in hoàn tất.\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "Tài liệu :"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "Số dòng:"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "Số trang:"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "trang"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "trang"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(xấp xỉ)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "Một số chức năng in đã bị tắt."
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "Tùy chá»n in tiêu chuẩn:"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "Tùy chá»n in:"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Lưu vào tập tin cục bộ"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "Chức năng lưu vào đĩa đã bị tắt"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "Gửi thư đính kèm tập tin"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "In vào màn hình"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "In ra máy in gắn với thiết bị cuối vt100"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+"Gặp lỗi cú pháp khi phân tách COLOR (màu) trong tập tin cấu hình:\n"
+"Dòng phải có dạng:\n"
+"COLOR:Sá»_NGUYÊN:CẢNH_GẦN:NỀN\n"
+"\n"
+"Ở đây thì CẢNH_GẦN và NỀN phải là một của những chuỗi đặc biệt:\n"
+" • nocolor\tkhông có màu\n"
+" • default\t\tmặc định\n"
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr "Dòng sai:"
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr "lỗi ánh xạ lại phím %s tới %s cho %s\n"
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr "lỗi ánh xạ lại phím %s tới %s\n"
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr "sai lá»±a chá»n trình soạn thảo theo dòng %s cho phím %s nên chá»n tất cả\n"
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr ""
+"lỗi đặt sự đóng kết trình soạn thảo theo dòng cho phím %s (0x%x)\n"
+"thành 0x%x cho %s\n"
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr "lỗi đặt sự đóng kết trình soạn thảo theo dòng cho phím %s (0x%x) cho %s\n"
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr "Lynx: không khởi chạy được, không có sẵn tập tin quy tắc CERN %s\n"
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr "(không tên)"
+
+#: src/LYReadCFG.c:1882
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr "Có nhiá»u hÆ¡n %d phần bao gồm lynx.cfg lồng vào nhau — có thể là vòng lặp ?!?\n"
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr "Lần thử thêm bao gồm cuối cùng là « %s »,\n"
+
+#: src/LYReadCFG.c:1885
+#, c-format
+msgid "included from '%s'.\n"
+msgstr "bao gồm từ « %s ».\n"
+
+#: src/LYReadCFG.c:2289 src/LYReadCFG.c:2302 src/LYReadCFG.c:2360
+msgid "The following is read from your lynx.cfg file."
+msgstr "Những cái sau Ä‘á»c từ tập tin lynx.cfg."
+
+#: src/LYReadCFG.c:2290 src/LYReadCFG.c:2303
+msgid "Please read the distribution"
+msgstr "Hãy Ä‘á»c bản phân phối"
+
+#: src/LYReadCFG.c:2296 src/LYReadCFG.c:2306
+msgid "for more comments."
+msgstr "để tìm thêm bình luận."
+
+#: src/LYReadCFG.c:2342
+msgid "RELOAD THE CHANGES"
+msgstr "NẠP LẠI THAY Äá»”I"
+
+#: src/LYReadCFG.c:2350
+msgid "Your primary configuration"
+msgstr "Cấu hình chính"
+
+#: src/LYShowInfo.c:177
+msgid "Directory that you are currently viewing"
+msgstr "Thư mục đang xem"
+
+#: src/LYShowInfo.c:180
+msgid "Name:"
+msgstr "Tên:"
+
+#: src/LYShowInfo.c:183
+msgid "URL:"
+msgstr "URL:"
+
+#: src/LYShowInfo.c:197
+msgid "Directory that you have currently selected"
+msgstr "ThÆ° mục được chá»n hiện thá»i"
+
+#: src/LYShowInfo.c:199
+msgid "File that you have currently selected"
+msgstr "Tập tin được chá»n hiện thá»i"
+
+#: src/LYShowInfo.c:202
+msgid "Symbolic link that you have currently selected"
+msgstr "Liên kết tượng trÆ°ng được chá»n hiện thá»i"
+
+#: src/LYShowInfo.c:205
+msgid "Item that you have currently selected"
+msgstr "Mục được chá»n hiện thá»i"
+
+#: src/LYShowInfo.c:207
+msgid "Full name:"
+msgstr "Tên đầy đủ :"
+
+#: src/LYShowInfo.c:217
+msgid "Unable to follow link"
+msgstr "Không thể theo liên kết"
+
+#: src/LYShowInfo.c:219
+msgid "Points to file:"
+msgstr "Chỉ tới tập tin:"
+
+#: src/LYShowInfo.c:224
+msgid "Name of owner:"
+msgstr "Tên của chủ :"
+
+#: src/LYShowInfo.c:227
+msgid "Group name:"
+msgstr "Tên nhóm:"
+
+#: src/LYShowInfo.c:229
+msgid "File size:"
+msgstr "Kích cỡ tập tin:"
+
+#: src/LYShowInfo.c:231
+msgid "(bytes)"
+msgstr "(byte)"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:236
+msgid "Creation date:"
+msgstr "Ngày tạo :"
+
+#: src/LYShowInfo.c:239
+msgid "Last modified:"
+msgstr "Sửa cuối:"
+
+#: src/LYShowInfo.c:242
+msgid "Last accessed:"
+msgstr "Truy cập cuối:"
+
+#: src/LYShowInfo.c:248
+msgid "Access Permissions"
+msgstr "Quyá»n truy cập"
+
+#: src/LYShowInfo.c:283
+msgid "Group:"
+msgstr "Nhóm:"
+
+# File access context — Ngữ cảnh truy cập đến tập tin
+#: src/LYShowInfo.c:303
+msgid "World:"
+msgstr "Má»i ngÆ°á»i:"
+
+#: src/LYShowInfo.c:310
+msgid "File that you are currently viewing"
+msgstr "Tập tin đang xem"
+
+#: src/LYShowInfo.c:318 src/LYShowInfo.c:422
+msgid "Linkname:"
+msgstr "Tên liên kết:"
+
+#: src/LYShowInfo.c:324 src/LYShowInfo.c:339
+msgid "Charset:"
+msgstr "Bộ ký tự :"
+
+#: src/LYShowInfo.c:338
+msgid "(assumed)"
+msgstr "(giả sử)"
+
+#: src/LYShowInfo.c:345
+msgid "Server:"
+msgstr "Máy phục vụ :"
+
+#: src/LYShowInfo.c:348
+msgid "Date:"
+msgstr "Ngày:"
+
+#: src/LYShowInfo.c:351
+msgid "Last Mod:"
+msgstr "Sửa cuối:"
+
+#: src/LYShowInfo.c:356
+msgid "Expires:"
+msgstr "Hết hạn:"
+
+#: src/LYShowInfo.c:359
+msgid "Cache-Control:"
+msgstr "Äiá»u khiển bá»™ nhá»› tạm:"
+
+#: src/LYShowInfo.c:362
+msgid "Content-Length:"
+msgstr "BỠdài nội dung:"
+
+#: src/LYShowInfo.c:366
+msgid "Length:"
+msgstr "BỠdài:"
+
+#: src/LYShowInfo.c:371
+msgid "Language:"
+msgstr "Ngôn ngữ :"
+
+#: src/LYShowInfo.c:378
+msgid "Post Data:"
+msgstr "Gửi dữ liệu :"
+
+#: src/LYShowInfo.c:381
+msgid "Post Content Type:"
+msgstr "Gửi kiểu nội dung:"
+
+#: src/LYShowInfo.c:384
+msgid "Owner(s):"
+msgstr "Chủ :"
+
+#: src/LYShowInfo.c:389
+msgid "size:"
+msgstr "kích cỡ :"
+
+#: src/LYShowInfo.c:391
+msgid "lines"
+msgstr "dòng"
+
+#: src/LYShowInfo.c:395
+msgid "forms mode"
+msgstr "chế độ biểu mẫu"
+
+#: src/LYShowInfo.c:397
+msgid "source"
+msgstr "nguồn"
+
+#: src/LYShowInfo.c:398
+msgid "normal"
+msgstr "chuẩn"
+
+#: src/LYShowInfo.c:400
+msgid ", safe"
+msgstr ", an toàn"
+
+#: src/LYShowInfo.c:402
+msgid ", via internal link"
+msgstr ", qua liên kết nội bộ"
+
+#: src/LYShowInfo.c:407
+msgid ", no-cache"
+msgstr ", không nhớ tạm"
+
+#: src/LYShowInfo.c:409
+msgid ", ISMAP script"
+msgstr ", văn lệnh ISMAP"
+
+#: src/LYShowInfo.c:411
+msgid ", bookmark file"
+msgstr ", tập tin Äánh dấu"
+
+#: src/LYShowInfo.c:415
+msgid "mode:"
+msgstr "chế độ :"
+
+#: src/LYShowInfo.c:421
+msgid "Link that you currently have selected"
+msgstr "Liên kết được chá»n hiện thá»i"
+
+#: src/LYShowInfo.c:430
+msgid "Method:"
+msgstr "Phương pháp:"
+
+#: src/LYShowInfo.c:434
+msgid "Enctype:"
+msgstr "Kiểu bảng mã:"
+
+#: src/LYShowInfo.c:440
+msgid "Action:"
+msgstr "Hành vi:"
+
+#: src/LYShowInfo.c:446
+msgid "(Form field)"
+msgstr "(TrÆ°á»ng biểu mẫu)"
+
+#: src/LYShowInfo.c:457
+msgid "No Links on the current page"
+msgstr "Không có liên kết trên trang hiện thá»i"
+
+#: src/LYShowInfo.c:463
+msgid "Server Headers:"
+msgstr "Dòng đầu máy phục vụ :"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+"Gặp lỗi cú pháp khi phân tích kiểu dáng trong tập tin lss:\n"
+"[%s]\n"
+"Dòng phải có dạng:\n"
+"Äá»I_TƯỢNG:MONO:COLOR\n"
+" • MONO\t\tđen trắng\n"
+" • COLOR\t\tmàu sắc\n"
+"\tem\t\t\tnhấn mạnh\n"
+"\tbold\t\t\tin đậm\n"
+"\tbrightblue\tmàu xanh sáng\n"
+"\twhite\t\tmàu trắng\n"
+"mà Äá»I_TƯỢNG là má»™t của:\n"
+" • EM\t\tnhấn mạnh\n"
+" • STRONG\tmạnh\n"
+" • B\t\t\tin đậm\n"
+" • I\t\t\tin nghiêng\n"
+" • U\t\t\tgạch dưới\n"
+" • BLINK\t\tnháyv.v.\n"
+"\n"
+
+#: src/LYTraversal.c:111
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr "đây là danh sách đống lịch sử để xây dựng lại"
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "LỖI! - câu lệnh tải lên có cấu hình sai"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "Sai chuyển hướng « ../ ». Yêu cầu bị bỠqua."
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "Gặp ký tự cấm « / ». Yêu cầu bị bỠqua."
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "Sai chuyển hướng sử dụng « ~ ». Yêu cầu bị bỠqua."
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "Không thể tải tập tin lên."
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "Tải lên:"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "Tùy chá»n tải lên:"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr "Tải vỠđịa chỉ URL của tài liệu nằm trên bảng nháp."
+
+#: src/LYUtils.c:2614
+msgid "Unexpected access protocol for this URL scheme."
+msgstr "Giao thức truy cập không mong đợi cho lược đồ địa chỉ URL này."
+
+#: src/LYUtils.c:3422
+msgid "Too many tempfiles"
+msgstr "Quá nhiá»u tập tin tạm thá»i"
+
+#: src/LYUtils.c:3722
+msgid "unknown restriction"
+msgstr "không rõ sự hạn chế"
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "No restrictions set.\n"
+msgstr "Chưa đặt sự hạn chế.\n"
+
+#: src/LYUtils.c:3756
+#, c-format
+msgid "Restrictions set:\n"
+msgstr "Äã đắt sá»± hạn chế:\n"
+
+#: src/LYUtils.c:5134
+msgid "Cannot find HOME directory"
+msgstr "Không tìm thấy thư mục HOME"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "ThÆ°á»ng bị tắt. Xem ENABLE_LYNXRC trong lynx.cfg\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+"« accept_all_cookies » cho phép ngÆ°á»i dùng cấu hình để Lynx tá»± Ä‘á»™ng\n"
+"chấp nhận má»i cookies muốn.  Mặc định là « FALSE » tức là sẽ há»i\n"
+"cho má»—i cookie.  Äặt accept_all_cookies thành « TRUE » để chấp nhận\n"
+"má»i cookie.\n"
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+"« anonftp_password » cho phép ngÆ°á»i dùng cấu hình để Lynx dùng\n"
+"địa chỉ thư điện tử cá nhân làm mật khẩu cho kết nối FTP nặc danh.\n"
+"Không đưa ra giá trị thì Lynx sẽ dùng địa chỉ thư điện tử cá nhân.\n"
+"Hãy đặt « anonftp_password » thành một giá trị khác nếu thích hợp.\n"
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+"« bookmark_file » chỉ ra tên và vị trí của tập tin Äánh dấu mặc định\n"
+"cho ngÆ°á»i dùng ghi liên kết vào để có thể truy cập nhanh và dá»… dàng\n"
+"hơn sau này.\n"
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+"Nếu « case_sensitive_searching » là « on » (bật), thì má»—i khi ngÆ°á»i dùng\n"
+"tìm kiếm bằng các phím « s » hay « / », những tìm kiếm này sẽ phụ thuộc\n"
+"vào kiểu chữ thay cho bá» qua chữ hoa/thÆ°á»ng.  Mặc định là « off » (tắt).\n"
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+"« character_set » Ä‘iá»u khiển việc hiển thị các ký tá»± 8 bit\n"
+"trên thiết bị cuối. Nếu ký tự 8 bit không hiển thị đúng\n"
+"trên màn hình, thì có thể thử thay đổi thành bộ 8 bit khác\n"
+"hoặc sá»­ dụng bá»™ 7 bit. Hiện thá»i, có các bá»™ ký tá»± sau :\n"
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+"« cookie_accept_domains » và « cookie_reject_domains » là danh sách\n"
+"các miá»n phân cách nhau bởi dấu phẩy Lynx sẽ tá»± Ä‘á»™ng chấp nhận\n"
+"hoặc bá» Ä‘i má»i cookie. Nếu chỉ ra má»™t miá»n trong cả hai tùy chá»n,\n"
+"thì sự bỠđi sẽ chiếm ưu thế. Tham số « accept_all_cookies »\n"
+"sẽ ghi chèn má»i thiết lập này.\n"
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+"« cookie_file » chỉ ra tập tin để Ä‘á»c các cookie bá»n bỉ.\n"
+"Mặc định là « ~/ »"
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+"cookie_loose_invalid_domains\tkhông chặt chẽ vá» miá»n cookie sai\n"
+"cookie_strict_invalid_domains\tchặt chẽ vá» miá»n cookie sai\n"
+"cookie_query_invalid_domains\thá»i vá» miá»n cookie sai\n"
+"\n"
+"là danh sách phân cách nhau bởi dấu phẩy của những miá»n\n"
+"cần kiểm tra sá»± đúng đắn. Äặt miá»n thành:\n"
+" • kiểm tra chặt chẽ thì tùy theo chặt chẽ RFC2109.\n"
+" • kiểm tra không chặt chẽ thì cho phép đặt ngay cả cookie\n"
+"\tcó thuá»™c tính sai kiểu Ä‘Æ°á»ng dẫn hay miá»n.\n"
+"Giá trị mặc định là má»i miá»n Ä‘á»u sẽ nhắc ngÆ°á»i dùng\n"
+"vá» Ä‘Æ°á»ng dẫn hoặc miá»n là sai.\n"
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+"« dir_list_order » chỉ ra thứ tự danh sách thư mục dưới DIRED_SUPPORT\n"
+"(nếu có). Mặc định là « ORDER_BY_NAME » (sắp xếp theo tên)\n"
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+"« dir_list_styles » chỉ ra kiểu dáng danh sách thư mục dưới DIRED_SUPPORT\n"
+"(nếu hỗ trợ):\n"
+" • MIXED_STYLE\t(mặc định) sắp xếp cả hai tập tin và thư mục với nhau\n"
+" • FILES_FIRST\t\t\tliệt kê các tập tin trước\n"
+" • DIRECTORIES_FIRST\tliệt kê các thư mục trước\n"
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"Nếu « emacs_keys » là « on » (bật) thì có thể dùng những phím di chuyển\n"
+"nhÆ° trong EMACS:\n"
+"  ^N\t\txuống\n"
+"  ^P\t\tlên\n"
+"  ^B\t\tsang trái\n"
+"  ^F\t\tsang phải\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+"« file_editor » chỉ ra trình soạn thảo sẽ gá»i khi soạn thảo tập tin\n"
+"hoặc gá»­i thÆ°. Nếu không chỉ ra trình soạn thảo nào, thì sẽ tắt bá»\n"
+"việc soạn thảo trừ khi kích hoạt từ dòng lệnh, khi đó sử dụng\n"
+"trình soạn thảo theo dòng tích hợp để gửi thư.\n"
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+"« file_sorting_method » chỉ ra giá trị để sắp xếp khi xem danh sách\n"
+"nhÆ° các thÆ° mục FTP.  Có các tùy chá»n:\n"
+"   BY_FILENAME\tsắp xếp theo tên tập tin\n"
+"   BY_TYPE\t\tsắp xếp theo kiểu của tập tin\n"
+"   BY_SIZE\t\t\tsắp xếp theo kích cỡ của tập tin\n"
+"   BY_DATE\t\tsắp xếp theo ngày của tập tin\n"
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+"« lineedit_mode » chỉ ra các tổ hợp phím dùng để nhập chuỗi vào\n"
+"trong dấu nhắc và biểu mẫu. Nếu « lineedit_mode » đặt thành\n"
+"« Default Binding » (tổ hợp mặc định) thì những ký tá»± Ä‘iá»u khiển sau\n"
+"dùng để di chuyển và xóa\n"
+"\n"
+"    Hành vi           \tLùi  Kế        Di chuyển ký tự \t<- \t->\n"
+" Di chuyển từ\t \t^P    ^N\n"
+" Xóa ký tự \t\t^H    ^R\n"
+" Xóa từ \t\t\t^B    ^F\n"
+"\n"
+"Phím\t  Hành vi  Enter\tchấp nhận dữ liệu nhập vào\n"
+"  ^G\t\thủy bỠnhập gì\n"
+"  ^U\t\txoá dòng\n"
+"  ^A\t\tđầu dòng\n"
+"  ^E\t\tcuối dòng\n"
+"\n"
+"Các chế Ä‘á»™ sá»­a dòng hiện thá»i:\n"
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+"Những cái sau cho phép xác định tập tin Äánh dấu con và các mô tả.\n"
+"Äịnh dạng là:\n"
+"multi_bookmark<chữ_hoa>=<tên_tập_tin>,<mô_tả>\n"
+"Cho phép đến 26 tập tin Äánh dấu (đại diện 26 chữ cái hoa tiếng Anh).\n"
+"Chúng ta bắt đầu với « multi_bookmarkB » vì « A » là mặc định\n"
+"(xem ở trên).\n"
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+"« personal_mail_address » chỉ ra địa chỉ thư điện tử cá nhân\n"
+"của ngÆ°á»i dùng. Äịa chỉ này dùng để xác thá»±c trong khi truyá»n tải\n"
+"tập tin qua HTTP và dùng với mục mục đích ghi sự kiện, và cho\n"
+"các bình luận được gửi qua thư.\n"
+"Nếu không muốn đưa ra thông tin này thì đặt « NO_FROM_HEADER »\n"
+"thành TRUE (đúng) trong lynx.cfg, hoặc dùng tùy chá»n dòng lệnh\n"
+"« -nofrom ». Cũng có thể để trống, nhưng khi đó thì sẽ không\n"
+"có địa chỉ này trong bình luận thư.\n"
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+"« preferred_charset » chỉ ra bộ ký tự ở dạng MIME (ví dụ,\n"
+"ISO-8859-2, UTF-8) Lynx sẽ chỉ ra trong yêu cầu gửi tới máy\n"
+"phục vụ HTTP bằng dòng đầu « Accept-Charset » (chấp nhận bộ ký tự).\n"
+"Giá trị KHÔNG được là ISO-8859-1 hay US-ASCII, vì những giá trị này\n"
+"luôn luôn là mặc định. Cũng có thể dùng một danh sách phân cách nhau\n"
+"bởi dấu phẩy. Nếu có một tập tin với bộ ký tự đó thì máy phục vụ sẽ gửi nó.\n"
+"Nếu không có dòng đầu « Accept-Charset », thì mặc định là chấp nhận\n"
+"má»i bá»™ ký tá»±. Nếu có dòng đầu « Accept-Charset » và máy phục vụ\n"
+"không gá»­i được câu trả lá»i tÆ°Æ¡ng ứng vá»›i dòng đầu, thì máy phục vụ\n"
+"PHẢI gá»­i má»™t câu trả lá»i vá» lá»—i, mặc dù có cho phép gá»­i má»™t câu trả lá»i\n"
+"không tương ứng.\n"
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+"« preferred_language » chỉ ra ngôn ngữ ở dạng MIME (ví dụ,\n"
+"vi, ru, ja, en, có thể là danh sách các ngôn ngữ phân cách nhau\n"
+"bởi dấu phẩy, theo thứ tự ưu tiên giảm dần) Lynx sẽ chỉ ra trong\n"
+"yêu cầu tới máy phục vụ HTTP. Nếu có tập tin với ngôn ngữ đó,\n"
+"thì máy phục vụ sẽ gửi nó. Nếu không máy phục vụ sẽ gửi tập tin\n"
+"với ngôn ngữ mặc định.\n"
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Nếu « run_all_execution_links » đặt thành « on » (bật) thì\n"
+"má»i liên kết thá»±c hiện ná»™i bá»™ sẽ thá»±c hiện khi chúng được chá»n.\n"
+"\n"
+"CẢNH BÃO - Có thể RẤT nguy hiểm. Vì có thể sẽ xem thông tin\n"
+"\ttừ những nguồn không rõ hoặc không tin tưởng có chứa\n"
+"\tnhững liên kết ngựa Troa. Liên kết ngựa Troa có thể thực hiện\n"
+"\tviệc xóa tập tin hay ảnh hưởng việc bảo mật. Chỉ nên đặt thành\n"
+"        « on » (bật) nếu đang xem nguồn thông tin tin tưởng.\n"
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+"Nếu « run_execution_links_on_locale_files » đặt thành « on » (bật)\n"
+"thì má»i liên thá»±c hiện ná»™i bá»™ tìm thấy trong các tập tin CỤC BỘ\n"
+"sẽ thá»±c hiện khi chúng được chá»n. Khác vá»›i « run_all_execution_links »\n"
+"vì chỉ những tập tin nằm trên hệ thống cục bá»™ má»›i có quyá»n\n"
+"thực hiện liên kết.\n"
+"\n"
+"CẢNH BÃO - Có thể RẤT nguy hiểm. Vì có thể sẽ xem thông tin\n"
+"\ttừ những nguồn không rõ hoặc không tin tưởng có chứa\n"
+"\tnhững liên kết ngựa Troa. Liên kết ngựa Troa có thể thực hiện\n"
+"\tviệc xóa tập tin hay ảnh hưởng việc bảo mật. Chỉ nên đặt thành\n"
+"        « on » (bật) nếu đang xem nguồn thông tin tin tưởng.\n"
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+"« select_popups » cho biết các OPTION (tùy chá»n) trong má»™t khối\n"
+"SELECT (lá»±a chá»n) không có thuá»™c tính MULTIPLE (Ä‘a) được hiển thị\n"
+"nhÆ° má»™t danh sách thẳng đứng của các nút chá»n má»™t hay qua\n"
+"một trình đơn tự mở. Chú ý nếu có thuộc tính MULTIPLE trong\n"
+"thẻ bắt đầu của SELECT, Lynx sẽ luôn luôn tạo danh sách thẳng đứng\n"
+"các hộp kiểm tra cho OPTION. Giá trị « on » (bật) sẽ đặt trình đơn tự mở\n"
+"làm mặc định còn « off » (tắt) sẽ sá»­ dụng các há»™p chá»n má»™t.\n"
+"Có thể ghi chèn mặc định bằng tùy chá»n dòng lệnh « -popup ».\n"
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+"« show_color » chỉ ra cách đặt chế độ màu vào lúc khởi chạy.\n"
+"Giá trị « never » (không bao giá») sẽ bắt buá»™c tắt dùng màu\n"
+"(coi như thiết bị cuối đen trằng) vào lúc khởi chạy thậm chỉ cả\n"
+"khi thiết bị cuối có khả năng dùng màu. Giá trị « always » (luôn luôn)\n"
+"sẽ bắt buộc chế độ màu thậm chi thiết bị cuối là đen trắng,\n"
+"nếu được hỗ trợ bởi thư viện dùng để biên dịch lynx. Giá trị « default »\n"
+"(mặc định) sẽ coi như thiết bị cuối là đen trắng trừ khi suy ra\n"
+"khả năng có màu khi khởi động dựa trên dạng thiết bị cuối,\n"
+"hoặc có tùy chá»n dòng lệnh « -color » (màu), hoặc đặt biến môi trÆ°á»ng\n"
+"COLORTERM. Mặc định luôn luôn được dùng cho tài khoản giấu tên\n"
+"hoặc nếu đặt giới hạn « option_save ». Ảnh hưởng của giá trị đã ghi\n"
+"có thể ghi chèn qua các tùy chá»n dòng lệnh « -color » (màu)\n"
+"và « -nocolor » (không màu). Có thể thay đổi chế độ lúc khởi động\n"
+"qua tùy chá»n « show color » (hiện màu) trong trình Ä‘Æ¡n Tùy chá»n [O].\n"
+"Nếu đã ghi thiết lập tùy chá»n, thì thiết lập « on » (bật), « off » (tắt),\n"
+"« show color » (hiện màu) sẽ được coi như « default » (mặc định).\n"
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+"« show_cursor » xác định « ẩn » con trỠvào bên phải (và đáy,\n"
+"nếu có thể) của màn hình, hay đặt nó vào bên trái của liên kết hiện thá»i\n"
+"trong tài liệu, hoặc tùy chá»n hiện thá»i trong cá»­a sổ tá»± mở để lá»±a chá»n.\n"
+"Việc đặt con trá» vào bên trái liên kết hiện thá»i hay tùy chá»n có ích\n"
+"cho các giao diện nói tiếng và chữ nổi Bray cho những ngÆ°á»i có khuyết tật,\n"
+"và khi thiết bị cuối không nhận ra liên kết hiện thá»i dá»±a trên tô sáng\n"
+"hay màu sắc. Giá trị « on » (bật) sẽ đặt vị trí tới bên trái làm mặc định\n"
+"còn giá trị « off » (tắt) sẽ đặt « ẩn » con trá». Có thể ghi chèn mặc định này\n"
+"bằng tùy chá»n dòng lệnh « -show_cursor » (hiện con trá»).\n"
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+"« show_dotfiles » cho biết danh sách thư mục có gồm\n"
+"các tập tin/thư mục « ẩn » (tên bắt đầu với dấu chấm) không.\n"
+"Nếu đặt « on », thì sẽ hiển thị những tập tin đó chỉ nếu cho phép\n"
+"qua userdefs.h và/hoặc lynx.cfg, và không hạn chế qua tùy chá»n\n"
+"dòng lệnh. Nếu tắt bỠviệc hiển thị các tập tin ẩn, thì việc tạo\n"
+"những tập tin như vậy bằng Lynx cũng bị tắt.\n"
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+"Nếu « sub_bookmarks » không đặt thành « off » (tắt), và có xác định\n"
+"dùng nhiá»u Äánh dấu (xem dÆ°á»›i), thì má»i thao tác vá»›i Äánh dấu\n"
+"sẽ bắt đầu bằng việc nhắc ngÆ°á»i dùng chá»n tập tin Äánh dấu con để dùng.\n"
+"Nếu xác định tập tin « bookmark_file » mặc định của Lynx (xem trên),\n"
+"nó sẽ được dùng làm lá»±a chá»n mặc định. Khi tùy chá»n này đặt thành\n"
+"« advanced » (cấp cao), và chế Ä‘á»™ ngÆ°á»i dùng cÅ©ng là cấp cao, thì\n"
+"câu lệnh Xêm Äánh dấu [V] sẽ gá»i má»™t dấu nhắc dòng trạng thái\n"
+"thay cho trình Ä‘Æ¡n trong chế Ä‘á»™ ngÆ°á»i má»›i và trung gian.\n"
+"Khi tùy chá»n này đặt thành « standard » (tiêu chuẩn) thì trình Ä‘Æ¡n\n"
+"sẽ hiển thị không phụ thuá»™c vào chế Ä‘á»™ ngÆ°á»i dùng.\n"
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+"« user_mode » chỉ ra mức Ä‘á»™ thành thạo của ngÆ°á»i dùng Lynx.\n"
+"Mặc định là « NOVICE » (ngÆ°á»i má»›i), khi đó sẽ hiển thị hai dòng\n"
+"trợ giúp mở rá»™ng tại đáy màn hình để giúp ngÆ°á»i dùng há»c\n"
+"các câu lệnh cÆ¡ bản của Lynx. Äặt « user_mode » thành\n"
+"« INTERMEDIATE » (trung gian) để bỠnhững thông tin bổ sung này.\n"
+"Dùng « ADVANCED » (cấp cao) để xem địa chỉ URL của liên kết\n"
+"đã chá»n tại đáy màn hình.\n"
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+"Nếu « verbose_images » là « on » (bật), lynx sẽ in ra tên\n"
+"của tập tin hình ảnh ở vị trí của [INLINE], [LINK] hoặc [IMAGE]\n"
+"Hãy xem thêm « VERBOSE_IMAGES » trong lynx.cfg\n"
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+"Nếu « vi_keys » đặt thành « on » (bật), thì có thể dụng\n"
+"các phím di chuyển như trong trình soạn thảo VI:\n"
+" j\txuống\n"
+" k\tlên\n"
+" h\tsang trái\n"
+" l\tsang phải\n"
+"Những phím này cần viết thÆ°á»ng.\n"
+" H\ttrợ giúp\n"
+" J\tlốt tắt nhảy\n"
+" K\tsÆ¡ đồ phímnhÆ° bình thÆ°á»ng.\n"
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+"Thiết lập « visited_links » Ä‘iá»u khiển cách Lynx tổ chức thông tin\n"
+"trên Trang Liên kết đã Thăm.\n"
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+"Nếu « keypad_mode » là « NUMBERS_AS_ARROWS » (các số dạng mũi tên),\n"
+"thì các phím số trên vùng phím số khi đèn numlock (khoá số) bật\n"
+"sẽ làm việc như các mũi tên:\n"
+"            8 = Mũi tên lên\n"
+"  4 = Mũi tên trái    6 = Mũi tên phải\n"
+"            2 = Mũi tên xuống\n"
+"và các phím số tÆ°Æ¡ng ứng của bàn phím thông thÆ°á»ng cÅ©ng làm việc,\n"
+"như các phím mũi tên dù đèn numlock có bật hay không.\n"
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+"Nếu « keypad_mode » đặt thành « LINKS_ARE_NUMBERED », thì các số\n"
+"sẽ xuất hiện bên cạnh má»—i liên kết và có thể dùng để chá»n liên kết.\n"
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+"Nếu « keypad_mode » đặt thành « LINKS_AND_FORM_FIELDS_ARE_NUMBERED »,\n"
+"thì số sẽ nằm bên cạnh má»—i liên kết và trÆ°á»ng nhập vào biểu mẫu mà hiện rõ.\n"
+"Số dùng để chá»n liên kết, hoặc di chuyển « liên kết hiện thá»i » tá»›i má»™t\n"
+"trÆ°á»ng nhập vào hay nút. Thêm vào đó tùy chá»n trong trình Ä‘Æ¡n tá»± mở\n"
+"cÅ©ng được đặt chỉ mục và ngÆ°á»i dùng có thể gõ số của tùy chá»n để chá»n\n"
+"tùy chá»n đó trong trình Ä‘Æ¡n tá»± mở, thậm chí nếu không thấy tùy chá»n\n"
+"trên màn hình. Danh sách tham chiếu và kết xuất từ câu lệnh liệt kê\n"
+"đồng thá»i đánh số biểu mẫu nhập vào.\n"
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+"CHÚ Ã: má»™t vài tài liệu có định dạng cố định có vẻ há»— loạn khi\n"
+"« LINKS_ARE_NUMBERED » hoặc « LINKS_AND_FORM_FIELDS_ARE_NUMBERED »\n"
+"là bật.\n"
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+"Tập tin Giá trị Mặc định NgÆ°á»i dùng Lynx\n"
+"\n"
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+"Tập tin này chứa những tùy chá»n được lÆ°u từ Màn hình Tùy chá»n Lynx\n"
+"(bình thÆ°á»ng dùng phím « o »). Äể lÆ°u tùy chá»n trên màn hình đó,\n"
+"bạn cần phải để dấu vào há»™p chá»n:\n"
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+"Sau đó bạn cần phải lưu thiết lập dùng liên kết\n"
+"trên dòng nằm bên trên há»™p chá»n:\n"
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+"Bạn cÅ©ng có thể sá»­ dụng tùy chá»n dòng lệnh « -forms_options »\n"
+"mà hiển thị Trình Ä‘Æ¡n Tùy chá»n Ä‘Æ¡n giản thay vào đó.\n"
+"Dùng nó thì lÆ°u tùy chá»n bằng phím « > ».\n"
+"\n"
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+"Tập tin này chứa những tùy chá»n được lÆ°u từ Màn hình Tùy chá»n Lynx\n"
+"(bình thÆ°á»ng dùng phím « > »).\n"
+"\n"
+
+#: src/LYrcFile.c:910
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+"Bình thÆ°á»ng không cần chỉnh sá»­a tập tin này bằng tay,\n"
+"vì những giá trị mặc định ở đây có thể được Ä‘iá»u khiển\n"
+"từ Màn hình Tùy chá»n, và lần kế tiếp tùy chá»n được lÆ°u\n"
+"từ Màn hình Tùy chá»n tập tin này sẽ được ghi lại hoàn toàn.\n"
+"NgÆ°á»i dùng đã được cảnh báo trÆ°á»›c.\n"
+"\n"
+"Tập tin cấu hình chung bình thÆ°á»ng có tên « lynx.cfg »,\n"
+"chứa nội dung khác và theo định dạng khác.\n"
+"Nó không phải là tập tin này.\n"
diff --git a/po/zh_CN.po b/po/zh_CN.po
new file mode 100644
index 00000000..d64beb81
--- /dev/null
+++ b/po/zh_CN.po
@@ -0,0 +1,5764 @@
+# Lynx 2.8.5pre9 Simplified Chinese translation
+# Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+# Wu XiaoGuang <xgwu@linux.net.cn>, 2002
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx-2.8.5pre9\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 2002-10-15 15:13+0800\n"
+"Last-Translator: Wang Jian <lark@linux.net.cn>\n"
+"Language-Team: Chinese (simplified) <i18n-translation@lists.linux.net.cn>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "警告ï¼ï¼š%s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "欢迎"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "您确信è¦é€€å‡ºå—?"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "真的è¦ç¦»å¼€ Lynx ?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "连接被中断。"
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "æ•°æ®ä¼ è¾“被中断。"
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "å·²å–消ï¼"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "正在å–消ï¼"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "éžå¸¸å¥½ï¼"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr ""
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "完æˆï¼"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr "请求错误ï¼"
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "å‰ä¸€ä¸ª"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "下一å±"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "求助ï¼"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ",在这方é¢çš„帮助"
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "命令:移动用方å‘键,求助用‘?’,退出用‘q’,返回用‘<-’。"
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "――更多请按空格,移动用方å‘键,求助用‘?’,退出用‘q’。"
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "―― 看下一页请按回车 ――"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "是ä¸æ˜¯ URL 太长了 "
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(文本æ¡ç›®åŒºåŸŸï¼‰æœªè¢«æ¿€æ´»ï¼Œè¯·æŒ‰å›žè½¦æ¿€æ´»ã€‚"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(文本域)未激活,请按回车激活。"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(文本域)未激活,请按回车激活(编辑器用 %s )。"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr "(表å•åŒºåŸŸï¼‰æœªæ¿€æ´»ï¼Œç¼–辑按回车。"
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr "(表å•åŒºåŸŸï¼‰æœªæ¿€æ´»ï¼Œç¼–辑按回车( ä¸ä½œä¿®æ”¹é€’交请按 %s )。"
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr "(表å•åŒºåŸŸï¼‰æœªæ¿€æ´»ï¼Œç¼–辑按回车,递交按两次回车。"
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "( mailto 表å•åŸŸï¼‰æœªæ¿€æ´»ï¼Œä¿®æ­£æŒ‰å›žè½¦ã€‚"
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "( Password æ¡ç›®åŸŸï¼‰æœªè¢«æ¿€æ´»ï¼ŒæŒ‰å›žè½¦æ¿€æ´»ã€‚"
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "ä¸å‡†æ”¹åŠ¨çš„文件æ¡ç›®åŸŸï¼Œç¦»å¼€æŒ‰å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(文件æ¡ç›®åŸŸï¼‰è¾“入文件å,离开按å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(文本æ¡ç›®åŸŸï¼‰è¾“入文字,离开按å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(文本区域)输入文字,离开按å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(文本区域)输入文字,离开按å‘上键ã€å‘上键或 Tab 键(编辑器用 %s)。"
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "ä¸å‡†æ”¹åŠ¨çš„表å•æ–‡æœ¬åŒºåŸŸï¼Œç¦»å¼€æŒ‰å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr "(表å•åŒºåŸŸï¼‰è¾“入文字,递交按回车。"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr "(表å•åŒºåŸŸï¼‰è¾“入文字,递交按回车(å–消缓存用 %s)"
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr "(表å•åŒºåŸŸï¼‰è¾“入文字,递交按回车,离开用方å‘键或 Tab 。"
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "ä¸å‡†æ”¹åŠ¨çš„表å•åŸŸï¼Œç¦»å¼€ç”¨å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr "(mailto 表å•åŸŸï¼‰è¾“入文字,递交按回车,离开按方å‘键。"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr "(mailto 表å•åŸŸï¼‰ç¦æ­¢å‘信,所以您无法递交。"
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Password æ¡ç›®åŸŸï¼‰è¾“入文字,离开用å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "ä¸å‡†æ”¹åŠ¨çš„ password 表å•ï¼Œç¦»å¼€æŒ‰å‘上ã€å‘上方å‘键或 Tab 键。"
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr "(Checkbox 域)翻å·æŒ‰å‘å³é”®æˆ–回车。"
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr "ä¸å‡†æ”¹åŠ¨çš„ chenkbox 表å•ï¼Œç¦»å¼€ç”¨å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr "(Radio 按钮) ç¿»å·ç”¨å‘å³é”®æˆ–回车。"
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr "ä¸å‡†æ”¹åŠ¨çš„ radio 按钮表å•ï¼Œç¦»å¼€æŒ‰å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr "递交(å–消缓存用‘x’)至"
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr "递交至"
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr "(表å•çš„ submit 按钮)递交按å‘å³æˆ–回车键(å–消缓存用‘x’)。"
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr "(表å•çš„ submit 按钮) 递交按å‘å³é”®æˆ–回车键。"
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr "ç¦ç”¨è¡¨å•çš„ submit 按钮,离开按å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr "å°† mailto 表å•é€’交至"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr "(mailto 表å•çš„ submit 按钮)递交按å‘å³é”®æˆ–回车键。"
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr "(mailto 表å•çš„ submit 按钮)Mail å·²ç¦ç”¨ ,所以您无法递交。 "
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(表å•çš„ reset 按钮) 回å¤è‡³é»˜è®¤è¡¨å•ï¼Œè¯·æŒ‰å‘å³é”®æˆ–回车键。"
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "表å•çš„ reset 按钮已ç¦ç”¨ï¼Œç¦»å¼€è¯·æŒ‰å‘上键ã€å‘上键或 Tab 键。"
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(Option list)选择请按方å‘键,选中请按回车。"
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(Choice list)选择请按方å‘键,选中请按回车。"
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr "ä¸å‡†æ”¹åŠ¨çš„ option list ,预览或离开请按回车åŠæ–¹å‘键。"
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr "ä¸å‡†æ”¹åŠ¨çš„ choice list ,预览或离开请按回车åŠæ–¹å‘键。"
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr "表å•æ­£åœ¨é€’交中……"
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "表å•æ­£è¢«é‡ç½®â€¦â€¦"
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "正在é‡æ–°å†å…¥æ–‡æ¡£ï¼Œå°†é—失表å•æ¡ç›®ï¼"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr "警告:无法将表å•çš„æ•°æ®è½¬æˆ %s 字符集ï¼"
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(NORMAL LINK) 激活用å‘å³é”®æˆ–回车。"
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr "此时无法获å–被请求的资æºã€‚"
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr "输入 Lynx keystroke 命令:"
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "寻找"
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr "获得 %s"
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "忽略 %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "使用 %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "éžæ³•çš„ URL :%s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "错误的地å€æ ¼å¼ %s"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr ""
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "无法访问 WWW 文件ï¼ï¼ï¼"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr "这是个å¯æœç´¢çš„ index ,请用 %s 进行æœç´¢ã€‚"
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr "――More――  这是个å¯æœç´¢çš„ index ,请用 %s 进行æœç´¢ã€‚"
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr "您输入了一个éžæ³•çš„链接å·ã€‚"
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr "当å‰æ­£åœ¨æµè§ˆæºæ–‡ä»¶ã€‚查看效果,请按“\\â€ã€‚"
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "æ–¹å‘键:移动用上下键;选中链接用å‘å³é”®ï¼›è¿”回用å‘左键。\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr ""
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "用键盘敲入文字。"
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "删除域中的所有文字,用 Ctrl-U ï¼›åªåˆ é™¤ä¸€ä¸ªå­—符,用 [Backspace] "
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "删除域中的所有文字,用 Ctrl-U ï¼›åªåˆ é™¤ä¸€ä¸ªå­—符,用 [Backspace]"
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "删除域中的所有文字,用 %s ï¼›åªåˆ é™¤ä¸€ä¸ªå­—符,用 [Backspace]"
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "删除域中的所有文字,用 %s ï¼›åªåˆ é™¤ä¸€ä¸ªå­—符,用 [Backspace]"
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr "错误的 mailto 表å•ï¼å·²ç»å–消ï¼"
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "警告ï¼é‚®ä»¶åœ°å€ä¸­çš„控制代ç å·²ç»è¢« ?å–代"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr "ç¦ç”¨é‚®ä»¶ï¼æ— æ³•é€’交。"
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr "Mailto 表å•é€’交出错ï¼"
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr "å–消了 Mailto 递交表å•"
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "正在å‘é€è¡¨å•å†…容..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "mailto URL 中没有邮件地å€ï¼"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "无法为 mailto URL 打开临时文件ï¼"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr "您想è¦åŒ…å«åŽŸå§‹æ¶ˆæ¯å—?"
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr "您想è¦åŒ…å«é¢„先解æžçš„æºæ–‡ä»¶å—?"
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "正在调用您的编辑器æ¥å†™é‚®ä»¶"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "调用编辑器出错,请核查 option menu 中的编辑器定义"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr "å‘é€è¯„语?"
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "å‘é€æ¶ˆæ¯ï¼Ÿ"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "正在å‘é€æ‚¨çš„消æ¯â€¦â€¦"
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr "正在å‘é€æ‚¨çš„评语:"
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "ä¸åœ¨æ–‡æœ¬åŸŸä¸­ï¼Œæ— æ³•ä½¿ç”¨å¤–挂的编辑器。"
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "ä¸åœ¨æ–‡æœ¬åŸŸä¸­ï¼Œæ— æ³•ä½¿ç”¨å‘½ä»¤ã€‚"
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr "file:ACTIONs å·²ç¦ç”¨ï¼"
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr "file:链接的 URLs å·²ç¦ç”¨"
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "本地文件拒ç»è®¿é—®ã€‚"
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr "file:无法访问书签中的 URLs "
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr "无法通过外部文档访问指定 URL ï¼"
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "返回 Lynx ,请按回车。"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr "正在调用 DCL å­è¿›ç¨‹ï¼Œè¿”回 Lynx ,请用 ‘logout’。\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "返回 Lynx ,请输入 EXIT 。\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr "正在调用默认的 shell ,返回 Lynx ,请用 ‘exit’。\n"
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr "当å‰æ— æ³•è°ƒç”¨ã€‚"
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "当å‰æ— æ³•ç”¨ ‘d’ownload 命令。"
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "您无法下载输入域。"
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr "表å•å« mailto 动作ï¼æ— æ³•ä¸‹è½½ã€‚"
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "您无法下载一个 mailto: 链接。"
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "您无法下载 cookies 。"
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "您无法下载一个 printing option 。"
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "您无法下载一个 upload option 。"
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr "您无法下载一个 permit option 。"
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "无法下载指定的 URL"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "没东西下载。"
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr ""
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr ""
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr "被包å«æ‰€æœ‰å›¾åƒçš„链接ï¼æ­£åœ¨é‡æ–°è½½å…¥â€¦â€¦"
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr "回å¤æ ‡å‡†å›¾åƒå¤„ç†ï¼æ­£åœ¨é‡æ–°è½½å…¥â€¦â€¦"
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr "伪 ALT é”®ä¸æ˜¯ä»¥ ALT 字符串,而是以内è”æ–¹å¼æ’å…¥ï¼æ­£åœ¨é‡æ–°è½½å…¥â€¦â€¦"
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr "将忽略没有 ALT 字符串指定的内è”æ–¹å¼ï¼æ­£åœ¨é‡æ–°è½½å…¥â€¦â€¦"
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "关闭原始的 8-bit 或 CJK 模å¼ï¼æ­£åœ¨é‡æ–°è½½å…¥â€¦â€¦"
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "å¼€å¯åŽŸå§‹çš„ 8-bit 或 CJK 模å¼ï¼æ­£åœ¨é‡æ–°è½½å…¥â€¦â€¦"
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr "å‘ D)ocument 还是 L)ink å‘é€ HEAD 请求,亦或 C)ancel ? (d,l,c): "
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr "å‘ D)ocument å‘é€ HEAD 请求,亦或 C)ancel ? (d,l,c): "
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "æŠ±æ­‰ï¼Œè¯¥æ–‡æ¡£å¹¶éž http URL 。"
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "æŠ±æ­‰ï¼Œè¯¥é“¾æŽ¥å¹¶éž http URL 。"
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr "抱歉,该表å•çš„ ACTION å·²ç¦ç”¨ã€‚"
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr "抱歉,该表å•çš„ ACTION å¹¶éž http URL 。"
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr "并éžä¸º http URL 或 表å•çš„ ACTION ï¼"
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr "指定的 URL ä¸æ˜¯è¡¨å•çš„ ACTION ï¼"
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr "URL ä¸åœ¨å¼€å§‹çš„域中ï¼"
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "å·²ç¦æ­¢æ–°é—»å‘布ï¼"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "å·²å–消对文件管ç†çš„支æŒï¼"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr "当å‰æ²¡æœ‰è·³è½¬æ–‡ä»¶ã€‚"
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr "跳转到(‘?’将给出列表):"
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr "ä¸å…许跳转到 URL å¿«æ·é”®ï¼"
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr "ä¸å…许éšæœºçš„ URL ï¼è¯·ç”¨å¿«æ·é”®ã€‚"
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr "ç›®å‰ä¸ºæ­¢ï¼Œè¿˜æ²¡æœ‰ä½¿ç”¨éšæœºçš„ URLs 。"
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "当å‰ä¹¦ç­¾åŠŸèƒ½å·²ç¦ç”¨ã€‚"
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr "通过书签执行已ç¦ç”¨"
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr "没有指定书签文件。请用 %s 查看 options 。"
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "无法打开 tempfile å®Œæˆ X Mosaic hotlist 的转æ¢ã€‚"
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "错误――无法打开书签文件。"
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "无法打开书签文件以删去链接。"
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr "无法打开è‰ç¨¿æ–‡ä»¶ä»¥åˆ åŽ»é“¾æŽ¥ã€‚"
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr "é‡å‘½åè‰ç¨¿æ–‡ä»¶æ—¶å‡ºé”™ã€‚"
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "é‡å‘½å临时文件时出错。"
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "无法打开临时文件以删去链接。"
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "无法å†æ‰“开临时文件以删去链接。"
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr "书签文件中的链接并éžå•ç‹¬åœ¨ä¸€è¡Œä¸­ã€‚"
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "删去书签时出错。"
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr "无法é历书签文件 (åªæœ‰ http URLs)。"
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "无法打开书签文件,用 'a' å…ˆä¿å­˜é“¾æŽ¥"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "该书签文件中没有链接ï¼"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "å‘ D)ocument å‘é€ HEAD 请求,亦或 C)ancel ? (d,l,c): "
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr ""
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr ""
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr ""
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr "文档中å«æœ‰ POST 内容的表å•ï¼Œæ•…无法ä¿å­˜ä¸ºä¹¦ç­¾ã€‚"
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "无法ä¿å­˜è¡¨å•çš„域ï¼é“¾æŽ¥"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr "无法将历å²è®°å½•ã€showinfoã€menu åŠ list files ä¿å­˜ä¸ºä¹¦ç­¾ã€‚"
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "您真的è¦å°†æ­¤é“¾æŽ¥ä»Žä¹¦ç­¾ä¸­åˆ é™¤ï¼Ÿ"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "地å€æœ‰è¯¯ã€‚"
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr ""
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr ""
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr ""
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr ""
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr ""
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr ""
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "å·²ç»ä½äºŽæ–‡æ¡£åº•éƒ¨ã€‚"
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "å·²ç»ä½äºŽæ–‡æ¡£å¼€å¤´ã€‚"
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "å·²ç»ä½äºŽæ–‡æ¡£çš„第 %d 页。"
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "当å‰å°±æ˜¯é“¾æŽ¥å· %d 。"
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "å·²ç»ä½äºŽç¬¬ä¸€ä¸ªæ–‡æ¡£"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "此行å‰é¢çš„文档中没有链接。"
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "此行åŽé¢çš„文档中没有链接。"
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "å·²ç»åˆ°è¾¾æœ€å¤§é•¿åº¦ï¼åˆ é™¤æ–‡å­—,或离开该区域。"
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr "ä¸åœ¨è¡¨æ ¼æ交按钮或普通链接上。"
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr "无论如何,得在å•é€‰æ¡†ä¸­é€‰ä¸€ä¸ªï¼"
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr "没有该表å•çš„æ交按钮,è¦æ交å•ç‹¬çš„文本域å—?"
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "想è¦å›žåˆ°å‰ä¸€ä¸ªæ–‡æ¡£å—?"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr "离开该区域,请用方å‘键或 Tab 。"
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "请输入文字。离开该区域,请用方å‘键或 Tab 。"
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr "** HTML 有问题ï¼ï¼æ²¡æœ‰å®šä¹‰è¡¨å•åŠ¨ä½œã€‚**"
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr "HTML 有问题ï¼ï¼æ— æ³•æ–°å»ºå¼¹å‡ºåˆ›å£ï¼"
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr "无法新建弹出创å£ï¼"
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "访问éšæœº URL 功能已ç¦ç”¨ï¼"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "ä¸å…许访问 non-http URLï¼"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "ä¸å…许访问 \\'%s\\\" URLs"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "打开 URL:"
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "编辑当å‰çš„ URL:"
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "编辑上一个所在的 URL:"
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "编辑上一个所在的 URL:"
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "当å‰æ–‡æ¡£å«æœ‰ POST æ•°æ®ã€‚"
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "编辑此文档的 URL:"
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "编辑此链接的 URL:"
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "您无法编辑文件管ç†çš„ URLs"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr "输入资料库的查询:"
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "输入 whereis 查询:"
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "编辑当å‰çš„查询:"
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "编辑å‰ä¸€æ¡æŸ¥è¯¢ï¼š"
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "编辑å‰ä¸€æ¡æŸ¥è¯¢ï¼š"
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr "é‡æ–°é€’交当å‰æŸ¥è¯¢ï¼Œè¯·ç”¨ Ctrl-R 。"
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr "编辑当å‰å¿«æ·é”®ï¼š"
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr "编辑å‰ä¸€ä¸ªå¿«æ·é”®ï¼š"
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr "编辑å‰ä¸€ä¸ªå¿«æ·é”®ï¼š"
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr "'%c' 键无法映射到一个跳转的文件ï¼"
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr "无法定ä½è·³è½¬çš„文件ï¼"
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr "无法打开跳转的文件ï¼"
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr "读å–跳转文件时出错ï¼"
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr "读å–跳转文件时内存ä¸å¤Ÿï¼"
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr "读å–跳转表格时内存ä¸å¤Ÿï¼"
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr "当å‰æ²¡æœ‰å¯ç”¨çš„索引。"
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "您真的è¦åˆ°ä¸»çª—å£å—?"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "å·²ç»ä½äºŽä¸»çª—å£ï¼"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "ä¸æ˜¯å¯æœç´¢æ–‡æ¡£ ―― æœç´¢æ–‡æœ¬å­—符串,请按 '/'"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr "这个文件没有定义所有者,所以您无法å‘é€è¯„语"
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr "未定义所有者。用 %s ?"
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr "您想è¦å‘é€è¯„语å—?"
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr "ä¸å…许使用邮件,所以您无法å‘é€è¯„语"
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "å½“å‰ 'e'dit 命令已ç¦ç”¨ã€‚"
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "当å‰å¤–部编辑已ç¦ç”¨ã€‚"
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "系统错误 ―― 无法获å–状æ€ã€‚"
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "没有定义编辑器ï¼"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "å½“å‰ 'p'rint 命令已ç¦ç”¨ã€‚"
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr "文档没有工具æ é“¾æŽ¥æˆ– Banner 。"
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr "无法打开é历的文件。"
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr "无法打开é历的 found 文件。"
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr "无法打开 reject 文件。"
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr "无法打开é历的错误输出文件"
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr "é历被中断"
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr "è·Ÿéšé“¾æŽ¥ï¼ˆæˆ– goto 链接åŠé¡µé¢ï¼‰å·ç ï¼š"
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "选择å¯é€‰é¡¹ï¼ˆæˆ–页é¢ï¼‰å·ç ï¼š"
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "当å‰å°±æ˜¯å¯é€‰é¡¹å·ç  %d 。"
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "å·²ç»ä½äºŽå¯é€‰é¡¹åˆ—表底部。"
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "å·²ç»ä½äºŽå¯é€‰é¡¹åˆ—表顶部。"
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "å·²ç»ä½äºŽè¯¥å¯é€‰é¡¹åˆ—表的 %d 页。"
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "您输入了一个éžæ³•çš„å¯é€‰é¡¹å·ç ã€‚"
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr "** HTML 有问题ï¼ï¼ 请用 -trace 进行诊断。**"
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr "请给出è¦ä¿å­˜çš„文件å"
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr "无法将数æ®ä¿å­˜åˆ°æ–‡ä»¶ ―― 请在本地è¿è¡Œ WWW"
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "无法打开临时文件ï¼"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "无法打开输出文件ï¼æ­£åœ¨å–消ï¼"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr "ç¦æ­¢æ‰§è¡Œã€‚"
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr "该文件没有å¯ç”¨æ‰§è¡Œï¼Œè¯·å‚看å¯é€‰é¡¹èœå•ï¼ˆç”¨ %s )。"
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr "此版本在编译时没有加入执行功能。"
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "该文件无法在当å‰ç»ˆç«¯ä¸­è¿è¡Œã€‚"
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "该文件无法在当å‰ç»ˆç«¯ä¸­è¿è¡Œï¼šD)ownload,或 C)ancel"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr ""
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "正在å–消文件。"
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "é‡æ–°èŽ·å–文件,―― 请ç¨å€™ ――"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "请输入一个文件å:"
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "编辑å‰ä¸€ä¸ªæ–‡ä»¶å:"
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "编辑å‰ä¸€ä¸ªæ–‡ä»¶å:"
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "输入一个新的文件å:"
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr "文件åä¸èƒ½ä»¥ç‚¹å·å¼€å¤´ã€‚"
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr "文件已存在,è¦åˆ›å»ºæ–°ç‰ˆæœ¬å—?"
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "文件已存在,è¦è¦†ç›–å—?"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "无法写入文件。"
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "出错ï¼â€•â€• 下载命令é…置错误。"
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "无法下载文件。"
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "正在读å–目录……"
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "正在建立目录列表……"
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "正在ä¿å­˜â€¦â€¦"
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "无法编辑文件 '%s' 。"
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "无法存å–文档ï¼"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "无法存å–文件。"
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "无法存å–目录。"
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "无法载入数æ®ã€‚"
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "å½“å‰ Lynx 无法 (e)dit 远程的 WWW 文件。"
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "该文件无法由外部的编辑器进行 (e)dit 。"
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr "规则有问题"
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr "æ“作数ä¸å¤Ÿï¼š"
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "您没有获得修改此文件的授æƒã€‚"
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "标题:"
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "主题:"
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "用户å:"
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "密ç ï¼š"
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx:è¦æ±‚用户å和密ç ï¼ï¼ï¼"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx:è¦æ±‚密ç ï¼ï¼ï¼"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr "è¦æ¸…除该对è¯ä¸­çš„所有验è¯ä¿¡æ¯å—?"
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "验è¯ä¿¡æ¯å·²è¢«æ¸…除。"
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "验è¯å¤±è´¥ï¼Œå†è¯•ä¸€æ¬¡ï¼Ÿ"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "å·²ç¦ç”¨ cgi 功能。"
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "此版本在编译时没有加入 Lynxcgi 功能。"
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "抱歉,没办法将 %s 转æ¢ä¸º %s 。"
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "无法建立转æ¢"
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "无法完æˆè½¬æ¢"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr ""
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr ""
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr ""
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr ""
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr ""
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr ""
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr ""
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr ""
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr ""
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr ""
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr ""
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr ""
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr ""
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr ""
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr ""
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr ""
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr ""
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr ""
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr ""
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr ""
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr ""
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr ""
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr ""
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr ""
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr ""
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr ""
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr ""
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr ""
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr ""
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr ""
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr ""
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr ""
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr ""
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr ""
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr ""
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr ""
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr ""
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr ""
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr ""
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr ""
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr ""
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr ""
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr ""
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr ""
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr ""
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr ""
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr ""
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr ""
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr ""
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr ""
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr ""
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr ""
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr ""
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr ""
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr ""
+
+#: LYMessages.c:558
+msgid " first"
+msgstr ""
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr ""
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr ""
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr ""
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr ""
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr ""
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr ""
+
+#: LYMessages.c:565
+msgid " to "
+msgstr ""
+
+#: LYMessages.c:566
+msgid " or "
+msgstr ""
+
+#: LYMessages.c:567
+msgid " index"
+msgstr ""
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr ""
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr ""
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr ""
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr ""
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr ""
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr ""
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr ""
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr ""
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr ""
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr ""
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr ""
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr ""
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr ""
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr ""
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr ""
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr ""
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr ""
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr ""
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr ""
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr ""
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr ""
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr ""
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr ""
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr ""
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr ""
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr ""
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr ""
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr ""
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr ""
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr ""
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr ""
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr ""
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr ""
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr ""
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr ""
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr ""
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr ""
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr ""
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr ""
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr ""
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr ""
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr ""
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr ""
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr ""
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr ""
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr ""
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr ""
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr ""
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr ""
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr ""
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr ""
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr ""
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr ""
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr ""
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr ""
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr ""
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr ""
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr ""
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr ""
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr ""
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr ""
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr ""
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr ""
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr ""
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr ""
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr ""
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr ""
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr ""
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr ""
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr ""
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr ""
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr ""
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr ""
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr ""
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr ""
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr ""
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr ""
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr ""
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr ""
+
+#: LYMessages.c:705
+msgid "The Cache Jar is empty."
+msgstr ""
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr ""
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr ""
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr ""
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr ""
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr ""
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr ""
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr ""
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr ""
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr ""
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr ""
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr ""
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr ""
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr ""
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr ""
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr ""
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr ""
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr ""
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr ""
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr ""
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr ""
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr ""
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr ""
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr ""
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr ""
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr ""
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr ""
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr ""
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr ""
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr ""
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr ""
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr ""
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr ""
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr ""
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr ""
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr ""
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr ""
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr ""
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr ""
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr ""
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr ""
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr ""
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr ""
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr ""
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr ""
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr ""
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr ""
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr ""
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr ""
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr ""
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr ""
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr ""
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr ""
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr ""
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr ""
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr ""
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr ""
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr ""
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr ""
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr ""
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr ""
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr ""
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr ""
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr ""
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr ""
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr ""
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr ""
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr ""
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr ""
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr ""
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr ""
+
+#: LYMessages.c:799
+#, c-format
+msgid "SSL error:%s-Continue?"
+msgstr ""
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr ""
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr ""
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr ""
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr ""
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr ""
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr ""
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr ""
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr ""
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr ""
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr ""
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr ""
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr ""
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr ""
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr ""
+
+#: LYMessages.c:820
+msgid "Cache Jar"
+msgstr ""
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr ""
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr ""
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr ""
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr ""
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr ""
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr ""
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr ""
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr ""
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr ""
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr ""
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr ""
+
+#: LYMessages.c:834
+msgid "your"
+msgstr ""
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr ""
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr ""
+
+#: LYMessages.c:837
+msgid "color-style configuration"
+msgstr ""
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr ""
+
+#: LYMessages.c:839
+msgid "pre-release version"
+msgstr ""
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr ""
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr ""
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr ""
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr ""
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr ""
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+msgid "Changing working-directory is currently disabled."
+msgstr ""
+
+#: LYMessages.c:864
+msgid "Linewrap OFF!"
+msgstr ""
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr ""
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr ""
+
+#: LYMessages.c:869
+msgid "Trace not supported"
+msgstr ""
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr ""
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr ""
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr ""
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr ""
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr ""
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+msgid "Socket read failed (too many tries)."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:669
+msgid "Retrying connection without TLS."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+msgid "the certificate has been revoked"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr ""
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr ""
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr ""
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr ""
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr ""
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr ""
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr ""
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr ""
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr ""
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr ""
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr ""
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr ""
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr ""
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr ""
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr ""
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr ""
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr ""
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr ""
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr ""
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr ""
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr ""
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr ""
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr ""
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr ""
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr ""
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr ""
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr ""
+
+#: src/GridText.c:10279
+msgid "Can't open file for uploading"
+msgstr ""
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr ""
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr ""
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr ""
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr ""
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr ""
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr ""
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr ""
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr ""
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr ""
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr ""
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr ""
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr ""
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr ""
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr ""
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr ""
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr ""
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr ""
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr ""
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr ""
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr ""
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr ""
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr ""
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr ""
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr ""
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr ""
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr ""
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr ""
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr ""
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr ""
+
+#: src/LYCookie.c:2562
+msgid "Internal"
+msgstr ""
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr ""
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr ""
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr ""
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr ""
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr ""
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr ""
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr ""
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr ""
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr ""
+
+#: src/LYEdit.c:274
+#, c-format
+msgid "Editor returned with error status %s"
+msgstr ""
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr ""
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr ""
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr ""
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr ""
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr ""
+
+#: src/LYDownload.c:545
+#, fuzzy
+msgid "View temporary file"
+msgstr "无法打开临时文件ï¼"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr ""
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr ""
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr ""
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr ""
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr ""
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr ""
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr ""
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr ""
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr ""
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr ""
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr ""
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr ""
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr ""
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr ""
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr ""
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr ""
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr ""
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr ""
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr ""
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr ""
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr ""
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr ""
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr ""
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr ""
+
+#: src/LYList.c:332
+msgid "References"
+msgstr ""
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr ""
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr ""
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr ""
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr ""
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr ""
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr ""
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr ""
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr ""
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr ""
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr ""
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr ""
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr ""
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr ""
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr ""
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr ""
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr ""
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr ""
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr ""
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr ""
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr ""
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr ""
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr ""
+
+#: src/LYLocal.c:1166
+#, c-format
+msgid "Remove directory '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1169
+#, fuzzy
+msgid "Remove directory?"
+msgstr "正在读å–目录……"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr ""
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr ""
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr ""
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr ""
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr ""
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr ""
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr ""
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr ""
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr ""
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr ""
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr ""
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr ""
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr ""
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr ""
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr ""
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr ""
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr ""
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr ""
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr ""
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr ""
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr ""
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr ""
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr ""
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr ""
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr ""
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr ""
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr ""
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr ""
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr ""
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr ""
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr ""
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr ""
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr ""
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr ""
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr ""
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr ""
+
+#: src/LYMain.c:1226
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr ""
+
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+msgid "No such directory"
+msgstr ""
+
+#: src/LYMain.c:1464
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr "当å‰æ²¡æœ‰è·³è½¬æ–‡ä»¶ã€‚"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1579
+#, fuzzy, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr "当å‰æ²¡æœ‰è·³è½¬æ–‡ä»¶ã€‚"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr ""
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr ""
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr ""
+
+#: src/LYMain.c:3181
+#, c-format
+msgid "%s Version %s (%s)"
+msgstr ""
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr ""
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr ""
+
+#: src/LYMain.c:3243
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr ""
+
+#: src/LYMain.c:3244
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr ""
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr ""
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr ""
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr ""
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr ""
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr ""
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr ""
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr ""
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr ""
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr ""
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr ""
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr ""
+
+#: src/LYMainLoop.c:5052
+msgid "cd to:"
+msgstr ""
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr ""
+
+#: src/LYMainLoop.c:5080
+msgid "failed to change directory"
+msgstr ""
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr ""
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr ""
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:6960
+msgid "Current URL is empty."
+msgstr ""
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr ""
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+msgid "-index-"
+msgstr ""
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr ""
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr ""
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr ""
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr ""
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr ""
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr ""
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr ""
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr ""
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2242
+msgid "Novice"
+msgstr ""
+
+#: src/LYOptions.c:2243
+msgid "Intermediate"
+msgstr ""
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2279
+msgid "as links"
+msgstr ""
+
+#: src/LYOptions.c:2286
+msgid "show filename"
+msgstr ""
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2329
+msgid "Directories first"
+msgstr ""
+
+#: src/LYOptions.c:2330
+msgid "Files first"
+msgstr ""
+
+#: src/LYOptions.c:2331
+msgid "Mixed style"
+msgstr ""
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+msgid "By Name"
+msgstr ""
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+msgid "By Size"
+msgstr ""
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+msgid "By Date"
+msgstr ""
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2346
+msgid "By Group"
+msgstr ""
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, c-format
+msgid "Show %s/sec rate"
+msgstr ""
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2379
+msgid "Show progressbar"
+msgstr ""
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2395
+msgid "Accept all types"
+msgstr ""
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr ""
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr ""
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr ""
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr ""
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr ""
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr ""
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr ""
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr ""
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr ""
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr ""
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr ""
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr ""
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr ""
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr ""
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+msgid "Use locale-based character set"
+msgstr ""
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr ""
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr ""
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr ""
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr ""
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr ""
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr ""
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr ""
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr ""
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+msgid "Underline links"
+msgstr ""
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr ""
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr ""
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr ""
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr ""
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr ""
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr ""
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr ""
+
+#: src/LYOptions.c:3760
+msgid "Password for anonymous ftp"
+msgstr ""
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+msgid "Preferred media type"
+msgstr ""
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+msgid "Preferred encoding"
+msgstr ""
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr ""
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr ""
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr ""
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr ""
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr ""
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+msgid "Local directory sort order"
+msgstr ""
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr ""
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr ""
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr ""
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr ""
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr ""
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr ""
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr ""
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr ""
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr ""
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr ""
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr ""
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr ""
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr ""
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr ""
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr ""
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr ""
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr ""
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr ""
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr ""
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr ""
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr ""
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr ""
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr ""
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr ""
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr ""
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr ""
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr ""
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr ""
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr ""
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr ""
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr ""
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr ""
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr ""
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr ""
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr ""
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr ""
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr ""
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr ""
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr ""
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr ""
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr ""
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr ""
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr ""
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr ""
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr ""
+
+#: src/LYShowInfo.c:227
+msgid "(bytes)"
+msgstr ""
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr ""
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr ""
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr ""
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr ""
+
+#: src/LYShowInfo.c:279
+msgid "Group:"
+msgstr ""
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr ""
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr ""
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr ""
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr ""
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr ""
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr ""
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr ""
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr ""
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr ""
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr ""
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr ""
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr ""
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr ""
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr ""
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr ""
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr ""
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr ""
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ""
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ""
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ""
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ""
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ""
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr ""
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr ""
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr ""
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr ""
+
+#: src/LYShowInfo.c:436
+msgid "Action:"
+msgstr ""
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr ""
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr ""
+
+#: src/LYShowInfo.c:455
+msgid "Server Headers:"
+msgstr ""
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr ""
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr ""
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr ""
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr ""
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr ""
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr ""
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr ""
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr ""
+
+#: src/LYUtils.c:3719
+msgid "unknown restriction"
+msgstr ""
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr ""
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "Restrictions set:\n"
+msgstr ""
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr ""
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr ""
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
diff --git a/po/zh_TW.po b/po/zh_TW.po
new file mode 100644
index 00000000..fd16db3a
--- /dev/null
+++ b/po/zh_TW.po
@@ -0,0 +1,5869 @@
+# Traditional Chinese translation of lynx.
+#
+# Abel Cheung <maddog@linux.org.hk>, 2002, 2003.
+msgid ""
+msgstr ""
+"Project-Id-Version: lynx 2.8.5pre9\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-12-07 20:02-0500\n"
+"PO-Revision-Date: 2003-02-11 19:44+0800\n"
+"Last-Translator: Abel Cheung <maddog@linux.org.hk>\n"
+"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=Big5\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. ******************************************************************
+#. * 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 your site.  We recommend that
+#. * you extend these definitions to other languages using the gettext
+#. * library.  There are also scattered uses of 'gettext()' throughout the
+#. * Lynx source, covering all but those messages which (a) are used for
+#. * debugging (CTRACE) or (b) are constants used in interaction with
+#. * other programs.
+#. *
+#. * Links to collections of alternate definitions, developed by the Lynx
+#. * User Community, are maintained in Lynx links:
+#. *
+#. *    http://www.subir.com/lynx.html
+#. *
+#. * See ABOUT-NLS and po/readme for details and location of contributed
+#. * translations.  When no translation is available, the English default is
+#. * used.
+#.
+#: LYMessages.c:32
+#, c-format
+msgid "Alert!: %s"
+msgstr "ĵ§i¡I¡G%s"
+
+#: LYMessages.c:33
+msgid "Welcome"
+msgstr "Åwªï"
+
+#: LYMessages.c:34
+msgid "Are you sure you want to quit?"
+msgstr "¬O§_½T©w­nÂ÷¶}¡H"
+
+#: LYMessages.c:36
+msgid "Really exit from Lynx?"
+msgstr "¬O§_½T©w­nÂ÷¶} Lynx?"
+
+#: LYMessages.c:38
+msgid "Connection interrupted."
+msgstr "³s½u¤¤Â_¡C"
+
+#: LYMessages.c:39
+msgid "Data transfer interrupted."
+msgstr "¸ê®Æ¶Ç¿é¤¤Â_¡C"
+
+#: LYMessages.c:40
+msgid "Cancelled!!!"
+msgstr "¨ú®ø!!!"
+
+#: LYMessages.c:41
+msgid "Cancelling!"
+msgstr "¨ú®ø¡I"
+
+#: LYMessages.c:42
+msgid "Excellent!!!"
+msgstr "¦n·¥!!!"
+
+#: LYMessages.c:43
+msgid "OK"
+msgstr "OK"
+
+#: LYMessages.c:44
+msgid "Done!"
+msgstr "§¹¦¨¡I"
+
+#: LYMessages.c:45
+msgid "Bad request!"
+msgstr ""
+
+#: LYMessages.c:46
+msgid "previous"
+msgstr "¤W¤@­¶"
+
+#: LYMessages.c:47
+msgid "next screen"
+msgstr "¤U¤@­¶"
+
+#: LYMessages.c:48
+msgid "HELP!"
+msgstr "¨D§U¡I"
+
+#: LYMessages.c:49
+msgid ", help on "
+msgstr ""
+
+#. #define HELP
+#: LYMessages.c:51
+msgid "Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back."
+msgstr "«ü¥O¡G¨Ï¥Î¤è¦VÁä²¾°Ê¡A'?' ¨D§U¡A'q' µ²§ô¡A'¡ö' ¦^«e¤@­¶¡C"
+
+#. #define MOREHELP
+#: LYMessages.c:53
+msgid "-- press space for more, use arrow keys to move, '?' for help, 'q' to quit."
+msgstr "¢w «öªÅ¥ÕÁä¬Ý¤U¤@­¶¡A¨Ï¥Î¤è¦VÁä²¾°Ê¡A'?' ¨D§U¡A'q' µ²§ô¡C"
+
+#: LYMessages.c:54
+msgid "-- press space for next page --"
+msgstr "¢w ½Ð«öªÅ¥ÕÁä¬Ý¤U¤@­¶ ¢w"
+
+#: LYMessages.c:55
+msgid "URL too long"
+msgstr "URL ¹Lªø"
+
+#. Inactive input fields, messages used with -tna option - kw
+#. #define FORM_LINK_TEXT_MESSAGE_INA
+#: LYMessages.c:61
+msgid "(Text entry field) Inactive.  Press <return> to activate."
+msgstr "(¤å¦r¿é¤JÄæ¦ì) ¼È°±¨Ï¥Î¡C½Ð«ö <return> ¶}©l¿é¤J¡C"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA
+#: LYMessages.c:63
+msgid "(Textarea) Inactive.  Press <return> to activate."
+msgstr "(¤å¦r°Ï°ì) ¼È°±¨Ï¥Î¡C½Ð«ö <return> ¶}©l¿é¤J¡C"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_INA_E
+#: LYMessages.c:65
+#, c-format
+msgid "(Textarea) Inactive.  Press <return> to activate (%s for editor)."
+msgstr "(¤å¦r°Ï°ì) ¼È°±¨Ï¥Î¡C½Ð«ö <return> ¶}©l¿é¤J («ö %s ±Ò°Ê½s¿è¾¹)¡C"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_INA
+#: LYMessages.c:67
+msgid "(Form field) Inactive.  Use <return> to edit."
+msgstr ""
+
+#. #define FORM_TEXT_SUBMIT_MESSAGE_INA_X
+#: LYMessages.c:69
+#, c-format
+msgid "(Form field) Inactive.  Use <return> to edit (%s to submit with no cache)."
+msgstr ""
+
+#. #define FORM_TEXT_RESUBMIT_MESSAGE_INA
+#: LYMessages.c:71
+msgid "(Form field) Inactive. Press <return> to edit, press <return> twice to submit."
+msgstr ""
+
+#. #define FORM_TEXT_SUBMIT_MAILTO_MSG_INA
+#: LYMessages.c:73
+msgid "(mailto form field) Inactive.  Press <return> to change."
+msgstr "(mailto ªí®æÄæ¦ì) ¼È°±¨Ï¥Î¡C½Ð«ö <return> ¶}©l¿é¤J¡C"
+
+#. #define FORM_LINK_PASSWORD_MESSAGE_INA
+#: LYMessages.c:75
+msgid "(Password entry field) Inactive.  Press <return> to activate."
+msgstr "(±K½X¿é¤JÄæ¦ì) ¼È°±¨Ï¥Î¡C½Ð«ö <return> ¶}©l¿é¤J¡C"
+
+#. #define FORM_LINK_FILE_UNM_MSG
+#: LYMessages.c:78
+msgid "UNMODIFIABLE file entry field.  Use UP or DOWN arrows or tab to move off."
+msgstr "*¤£¥i­×§ïªº* Àɮ׿é¤JÄæ¦ì¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}Äæ¦ì¡C"
+
+#. #define FORM_LINK_FILE_MESSAGE
+#: LYMessages.c:80
+msgid "(File entry field) Enter filename.  Use UP or DOWN arrows or tab to move off."
+msgstr "(Àɮ׿é¤JÄæ¦ì) ½Ð¿é¤JÀɮצWºÙ¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}Äæ¦ì¡C"
+
+#. #define FORM_LINK_TEXT_MESSAGE
+#: LYMessages.c:82
+msgid "(Text entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(¤å¦r¿é¤JÄæ¦ì) ½Ð¿é¤J¤å¦r¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}Äæ¦ì¡C"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE
+#: LYMessages.c:84
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off."
+msgstr "(¤å¦r¿é¤J°Ï°ì) ½Ð¿é¤J¤å¦r¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}°Ï°ì¡C"
+
+#. #define FORM_LINK_TEXTAREA_MESSAGE_E
+#: LYMessages.c:86
+#, c-format
+msgid "(Textarea) Enter text. Use UP/DOWN arrows or TAB to move off (%s for editor)."
+msgstr "(¤å¦r¿é¤J°Ï°ì) ½Ð¿é¤J¤å¦r¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}°Ï°ì (%s ±Ò°Ê½s¿è¾¹)¡C"
+
+#. #define FORM_LINK_TEXT_UNM_MSG
+#: LYMessages.c:88
+msgid "UNMODIFIABLE form text field.  Use UP or DOWN arrows or tab to move off."
+msgstr "*¤£¥i­×§ïªº* ¤å¦r¿é¤JÄæ¦ì¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}Äæ¦ì¡C"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE
+#: LYMessages.c:90
+msgid "(Form field) Enter text.  Use <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_MESSAGE_X
+#: LYMessages.c:92
+#, c-format
+msgid "(Form field) Enter text.  Use <return> to submit (%s for no cache)."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_RESUBMIT_MESSAGE
+#: LYMessages.c:94
+msgid "(Form field) Enter text.  Use <return> to submit, arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_UNM_MSG
+#: LYMessages.c:96
+msgid "UNMODIFIABLE form field.  Use UP or DOWN arrows or tab to move off."
+msgstr "*¤£¥i­×§ïªº* ªí®æ¿é¤JÄæ¦ì¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}Äæ¦ì¡C"
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_MSG
+#: LYMessages.c:98
+msgid "(mailto form field) Enter text.  Use <return> to submit, arrows to move off."
+msgstr ""
+
+#. #define FORM_LINK_TEXT_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:100
+msgid "(mailto form field) Mail is disallowed so you cannot submit."
+msgstr ""
+
+#. #define FORM_LINK_PASSWORD_MESSAGE
+#: LYMessages.c:102
+msgid "(Password entry field) Enter text.  Use UP or DOWN arrows or tab to move off."
+msgstr "(±K½X¿é¤JÄæ¦ì) ½Ð¿é¤J¤å¦r¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}Äæ¦ì¡C"
+
+#. #define FORM_LINK_PASSWORD_UNM_MSG
+#: LYMessages.c:104
+msgid "UNMODIFIABLE form password.  Use UP or DOWN arrows or tab to move off."
+msgstr "*¤£¥i­×§ïªº* ±K½X¿é¤JÄæ¦ì¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}Äæ¦ì¡C"
+
+#. #define FORM_LINK_CHECKBOX_MESSAGE
+#: LYMessages.c:106
+msgid "(Checkbox Field)   Use right-arrow or <return> to toggle."
+msgstr ""
+
+#. #define FORM_LINK_CHECKBOX_UNM_MSG
+#: LYMessages.c:108
+msgid "UNMODIFIABLE form checkbox.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_RADIO_MESSAGE
+#: LYMessages.c:110
+msgid "(Radio Button)   Use right-arrow or <return> to toggle."
+msgstr ""
+
+#. #define FORM_LINK_RADIO_UNM_MSG
+#: LYMessages.c:112
+msgid "UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_PREFIX
+#: LYMessages.c:114
+msgid "Submit ('x' for no cache) to "
+msgstr ""
+
+#. #define FORM_LINK_RESUBMIT_PREFIX
+#: LYMessages.c:116
+msgid "Submit to "
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MESSAGE
+#: LYMessages.c:118
+msgid "(Form submit button) Use right-arrow or <return> to submit ('x' for no cache)."
+msgstr ""
+
+#. #define FORM_LINK_RESUBMIT_MESSAGE
+#: LYMessages.c:120
+msgid "(Form submit button) Use right-arrow or <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_DIS_MSG
+#: LYMessages.c:122
+msgid "DISABLED form submit button.  Use UP or DOWN arrows or tab to move off."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_PREFIX
+#: LYMessages.c:124
+msgid "Submit mailto form to "
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_MSG
+#: LYMessages.c:126
+msgid "(mailto form submit button) Use right-arrow or <return> to submit."
+msgstr ""
+
+#. #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG
+#: LYMessages.c:128
+msgid "(mailto form submit button) Mail is disallowed so you cannot submit."
+msgstr ""
+
+#. #define FORM_LINK_RESET_MESSAGE
+#: LYMessages.c:130
+msgid "(Form reset button)   Use right-arrow or <return> to reset form to defaults."
+msgstr "(­«³]ªí®æ«ö¶s) ½Ð«ö ¡÷ ©Î <return> ±Nªí®æÄæ¦ì­«³]¬°¹w³]­È¡C"
+
+#. #define FORM_LINK_RESET_DIS_MSG
+#: LYMessages.c:132
+msgid "DISABLED form reset button.  Use UP or DOWN arrows or tab to move off."
+msgstr "*¼È°±¨Ï¥Îªº* ­«³]ªí®æ«ö¶s¡C¨Ï¥Î ¡ô¡B¡õ ©Î tab ÁäÂ÷¶}Äæ¦ì¡C"
+
+#. #define FORM_LINK_OPTION_LIST_MESSAGE
+#: LYMessages.c:134
+msgid "(Option list) Hit return and use arrow keys and return to select option."
+msgstr "(¿ï¶µ²M³æ) «ö return¡AµM«á¨Ï¥Î¤è¦VÁä©M return ¿ï¾Ü©Ò»Ýªº¿ï¶µ¡C"
+
+#. #define CHOICE_LIST_MESSAGE
+#: LYMessages.c:136
+msgid "(Choice list) Hit return and use arrow keys and return to select option."
+msgstr "(¿ï¾Ü²M³æ) «ö return¡AµM«á¨Ï¥Î¤è¦VÁä©M return ¿ï¾Ü©Ò»Ýªº¿ï¶µ¡C"
+
+#. #define FORM_LINK_OPTION_LIST_UNM_MSG
+#: LYMessages.c:138
+msgid "UNMODIFIABLE option list.  Use return or arrow keys to review or leave."
+msgstr ""
+
+#. #define CHOICE_LIST_UNM_MSG
+#: LYMessages.c:140
+msgid "UNMODIFIABLE choice list.  Use return or arrow keys to review or leave."
+msgstr ""
+
+#: LYMessages.c:141
+msgid "Submitting form..."
+msgstr ""
+
+#: LYMessages.c:142
+msgid "Resetting form..."
+msgstr "­«³]ªí®æ..."
+
+#. #define RELOADING_FORM
+#: LYMessages.c:144
+msgid "Reloading document.  Any form entries will be lost!"
+msgstr "­«·s¸ü¤Jºô­¶¡C±N·|¥¢¥h©Ò¦³­×§ï¹Lªºªí®æÄæ¦ì¤º®e¡I"
+
+#: LYMessages.c:145
+#, c-format
+msgid "Warning: Cannot transcode form data to charset %s!"
+msgstr ""
+
+#. #define NORMAL_LINK_MESSAGE
+#: LYMessages.c:148
+msgid "(NORMAL LINK)   Use right-arrow or <return> to activate."
+msgstr "(´¶³qÃìµ²) ½Ð«ö ¡÷ ©Î <return> ÂsÄý¡C"
+
+#: LYMessages.c:149
+msgid "The resource requested is not available at this time."
+msgstr ""
+
+#: LYMessages.c:150
+msgid "Enter Lynx keystroke command: "
+msgstr ""
+
+#: LYMessages.c:151
+msgid "Looking up "
+msgstr "·Ç³ÆÀ˯Á "
+
+#: LYMessages.c:152
+#, c-format
+msgid "Getting %s"
+msgstr ""
+
+#: LYMessages.c:153
+#, c-format
+msgid "Skipping %s"
+msgstr "²¤¹L %s"
+
+#: LYMessages.c:154
+#, c-format
+msgid "Using %s"
+msgstr "¨Ï¥Î %s"
+
+#: LYMessages.c:155
+#, c-format
+msgid "Illegal URL: %s"
+msgstr "¤£¦Xªkªº URL¡G%s"
+
+#: LYMessages.c:156
+#, c-format
+msgid "Badly formed address %s"
+msgstr "¦a§} %s ®æ¦¡¿ù»~"
+
+#: LYMessages.c:157
+#, c-format
+msgid "URL: %s"
+msgstr "URL¡G%s"
+
+#: LYMessages.c:158
+msgid "Unable to access WWW file!!!"
+msgstr "µLªk¦s¨ú WWW ÀÉ®×!!!"
+
+#: LYMessages.c:159
+#, c-format
+msgid "This is a searchable index.  Use %s to search."
+msgstr ""
+
+#. #define WWW_INDEX_MORE_MESSAGE
+#: LYMessages.c:161
+#, c-format
+msgid "--More--  This is a searchable index.  Use %s to search."
+msgstr ""
+
+#: LYMessages.c:162
+msgid "You have entered an invalid link number."
+msgstr ""
+
+#. #define SOURCE_HELP
+#: LYMessages.c:164
+msgid "Currently viewing document source.  Press '\\' to return to rendered version."
+msgstr ""
+
+#. #define NOVICE_LINE_ONE
+#: LYMessages.c:166
+msgid "  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.  \n"
+msgstr "  ¤è¦VÁä¡G ¡ô/¡õ ²¾°Ê   ¡÷ ¶i¤JÃìµ²   ¡ö ¦^«e¤@­¶\n"
+
+#. #define NOVICE_LINE_TWO
+#: LYMessages.c:168
+msgid " H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list \n"
+msgstr " H)¨D§U  O)¿ï¶µ  P)¦C¦L  G)²¾¦Ü  M)¥Dµe­±  Q)Â÷¶}  /)·j´M  [delete])ÂsÄý¬ö¿ý\n"
+
+#. #define NOVICE_LINE_TWO_A
+#: LYMessages.c:170
+msgid "  O)ther cmds  H)elp  K)eymap  G)oto  P)rint  M)ain screen  o)ptions  Q)uit  \n"
+msgstr "  O)¨ä¥¦«ü¥O  H)¨D§U  K)«öÁä³]©w  G)²¾¦Ü  P)¦C¦L  M)¥Dµe­±  o)¿ï¶µ  Q)Â÷¶}\n"
+
+#. #define NOVICE_LINE_TWO_B
+#: LYMessages.c:172
+msgid "  O)ther cmds  B)ack  E)dit  D)ownload ^R)eload ^W)ipe screen  search doc: / \n"
+msgstr ""
+
+#. #define NOVICE_LINE_TWO_C
+#: LYMessages.c:174
+msgid "O)ther cmds  C)omment  History: <backspace>  Bookmarks: V)iew, A)dd, R)emove \n"
+msgstr ""
+
+#. #define FORM_NOVICELINE_ONE
+#: LYMessages.c:176
+msgid "            Enter text into the field by typing on the keyboard              "
+msgstr "                        ½Ð¨Ï¥ÎÁä½L¦bÄæ¦ì¤¤¿é¤J¤å¦r"
+
+#. #define FORM_NOVICELINE_TWO
+#: LYMessages.c:178
+msgid "    Ctrl-U to delete all text in field, [Backspace] to delete a character    "
+msgstr "    Ctrl-U ·|§R°£Äæ¦ì¤¤ªº©Ò¦³¤å¦r¡A[Backspace] ·|¦V«á§R°£¤@­Ó¦r¤¸"
+
+#. #define FORM_NOVICELINE_TWO_DELBL
+#: LYMessages.c:180
+msgid "      Ctrl-U to delete text in field, [Backspace] to delete a character    "
+msgstr "      Ctrl-U ·|§R°£Äæ¦ì¤¤ªº¤å¦r¡A[Backspace] ·|¦V«á§R°£¤@­Ó¦r¤¸"
+
+#. #define FORM_NOVICELINE_TWO_VAR
+#: LYMessages.c:182
+#, c-format
+msgid "    %s to delete all text in field, [Backspace] to delete a character    "
+msgstr "        %s ·|§R°£Äæ¦ì¤¤ªº©Ò¦³¤å¦r¡A[Backspace] ·|¦V«á§R°£¤@­Ó¦r¤¸"
+
+#. #define FORM_NOVICELINE_TWO_DELBL_VAR
+#: LYMessages.c:184
+#, c-format
+msgid "      %s to delete text in field, [Backspace] to delete a character    "
+msgstr "        %s ·|§R°£Äæ¦ì¤¤ªº¤å¦r¡A[Backspace] ·|¦V«á§R°£¤@­Ó¦r¤¸"
+
+#. mailto
+#: LYMessages.c:187
+msgid "Malformed mailto form submission!  Cancelled!"
+msgstr ""
+
+#: LYMessages.c:188
+msgid "Warning!  Control codes in mail address replaced by ?"
+msgstr "ĵ§i¡I ¹q¶l¦a§}¤¤ªº±±¨î¦r¤¸¤w¥Î '?' ¦r¤¸¨ú¥N"
+
+#: LYMessages.c:189
+msgid "Mail disallowed!  Cannot submit."
+msgstr ""
+
+#: LYMessages.c:190
+msgid "Mailto form submission failed!"
+msgstr ""
+
+#: LYMessages.c:191
+msgid "Mailto form submission Cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:192
+msgid "Sending form content..."
+msgstr "¥¿¦b°e¥Xªí®æ¤º®e..."
+
+#: LYMessages.c:193
+msgid "No email address is present in mailto URL!"
+msgstr "mailto URL ¤¤¨S¦³¹q¶l¦a§}¡I"
+
+#. #define MAILTO_URL_TEMPOPEN_FAILED
+#: LYMessages.c:195
+msgid "Unable to open temporary file for mailto URL!"
+msgstr "µLªk¶}±Ò mailto URL ©Ò»Ýªº¼È¦sÀÉ¡I"
+
+#. #define INC_ORIG_MSG_PROMPT
+#: LYMessages.c:197
+msgid "Do you wish to include the original message?"
+msgstr ""
+
+#. #define INC_PREPARSED_MSG_PROMPT
+#: LYMessages.c:199
+msgid "Do you wish to include the preparsed source?"
+msgstr ""
+
+#. #define SPAWNING_EDITOR_FOR_MAIL
+#: LYMessages.c:201
+msgid "Spawning your selected editor to edit mail message"
+msgstr "·Ç³Æ±Ò°Ê«ü©wªº½s¿è¾¹¨Ó­×§ï¶l¥ó¤º®e"
+
+#. #define ERROR_SPAWNING_EDITOR
+#: LYMessages.c:203
+msgid "Error spawning editor, check your editor definition in the options menu"
+msgstr "±Ò°Ê½s¿è¾¹®É¥X²{¿ù»~¡A½ÐÀˬd¿ï¶µ³]©w¤¤¦³Ãö½s¿è¾¹ªº³¡¥÷"
+
+#: LYMessages.c:204
+msgid "Send this comment?"
+msgstr ""
+
+#: LYMessages.c:205
+msgid "Send this message?"
+msgstr "¬O§_¶Ç°e¦¹°T®§¡H"
+
+#: LYMessages.c:206
+msgid "Sending your message..."
+msgstr "·Ç³Æ¶Ç°e»Õ¤Uªº°T®§..."
+
+#: LYMessages.c:207
+msgid "Sending your comment:"
+msgstr ""
+
+#. textarea
+#: LYMessages.c:210
+msgid "Not in a TEXTAREA; cannot use external editor."
+msgstr "¥Ø«e¤£¬O¦b¤å¦r½s¿è°Ï°ì¤¤¡FµLªk¨Ï¥Î¥~³¡ªº½s¿è¾¹¡C"
+
+#: LYMessages.c:211
+msgid "Not in a TEXTAREA; cannot use command."
+msgstr "¥Ø«e¤£¬O¦b¤å¦r½s¿è°Ï°ì¤¤¡FµLªk¨Ï¥Î«ü¥O¡C"
+
+#: LYMessages.c:213
+msgid "file: ACTIONs are disallowed!"
+msgstr ""
+
+#. #define FILE_SERVED_LINKS_DISALLOWED
+#: LYMessages.c:215
+msgid "file: URLs via served links are disallowed!"
+msgstr ""
+
+#: LYMessages.c:216
+msgid "Access to local files denied."
+msgstr "©Úµ´¦s¨ú¥»¾÷ÀɮסC"
+
+#: LYMessages.c:217
+msgid "file: URLs via bookmarks are disallowed!"
+msgstr ""
+
+#. #define SPECIAL_VIA_EXTERNAL_DISALLOWED
+#: LYMessages.c:219
+msgid "This special URL is not allowed in external documents!"
+msgstr ""
+
+#: LYMessages.c:220
+msgid "Press <return> to return to Lynx."
+msgstr "½Ð«ö <return> ªð¦^ Lynx¡C"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:223
+msgid "Spawning DCL subprocess.  Use 'logout' to return to Lynx.\n"
+msgstr ""
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:227
+msgid "Type EXIT to return to Lynx.\n"
+msgstr "½Ð¿é¤J EXIT ªð¦^ Lynx¡C\n"
+
+#. #define SPAWNING_MSG
+#: LYMessages.c:230
+msgid "Spawning your default shell.  Use 'exit' to return to Lynx.\n"
+msgstr ""
+
+#: LYMessages.c:233
+msgid "Spawning is currently disabled."
+msgstr ""
+
+#: LYMessages.c:234
+msgid "The 'd'ownload command is currently disabled."
+msgstr "¥Ø«eµLªk´£¨Ñ¡u¤U¸ü¡v('d') «ü¥O¡C"
+
+#: LYMessages.c:235
+msgid "You cannot download an input field."
+msgstr "¤£¥i¤U¸ü¿é¤JÄæ¦ì¡C"
+
+#: LYMessages.c:236
+msgid "Form has a mailto action!  Cannot download."
+msgstr ""
+
+#: LYMessages.c:237
+msgid "You cannot download a mailto: link."
+msgstr "¤£¥i¤U¸ü mailto: Ãìµ²¡C"
+
+#: LYMessages.c:238
+msgid "You cannot download cookies."
+msgstr "¤£¥i¤U¸ü cookie¡C"
+
+#: LYMessages.c:239
+msgid "You cannot download a printing option."
+msgstr "¤£¥i¤U¸ü¦³Ãö¦C¦Lªº¿ï¶µ"
+
+#: LYMessages.c:240
+msgid "You cannot download an upload option."
+msgstr "¤£¥i¤U¸ü¦³Ãö¤W¶Çªº¿ï¶µ"
+
+#: LYMessages.c:241
+msgid "You cannot download an permit option."
+msgstr ""
+
+#: LYMessages.c:242
+msgid "This special URL cannot be downloaded!"
+msgstr "¤£¥i¤U¸ü¦¹¯S®í URL¡I"
+
+#: LYMessages.c:243
+msgid "Nothing to download."
+msgstr "¨S¦³¥i¤U¸üªº¸ê®Æ¡C"
+
+#: LYMessages.c:244
+msgid "Trace ON!"
+msgstr ""
+
+#: LYMessages.c:245
+msgid "Trace OFF!"
+msgstr ""
+
+#. #define CLICKABLE_IMAGES_ON
+#: LYMessages.c:247
+msgid "Links will be included for all images!  Reloading..."
+msgstr ""
+
+#. #define CLICKABLE_IMAGES_OFF
+#: LYMessages.c:249
+msgid "Standard image handling restored!  Reloading..."
+msgstr ""
+
+#. #define PSEUDO_INLINE_ALTS_ON
+#: LYMessages.c:251
+msgid "Pseudo_ALTs will be inserted for inlines without ALT strings!  Reloading..."
+msgstr ""
+
+#. #define PSEUDO_INLINE_ALTS_OFF
+#: LYMessages.c:253
+msgid "Inlines without an ALT string specified will be ignored!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:254
+msgid "Raw 8-bit or CJK mode toggled OFF!  Reloading..."
+msgstr "¤wÃö³¬ 8-bit ­ì©l¼Ò¦¡©Î¬O CJK ¼Ò¦¡¡I·Ç³Æ­«·s¸ü¤J..."
+
+#: LYMessages.c:255
+msgid "Raw 8-bit or CJK mode toggled ON!  Reloading..."
+msgstr "¤w±Ò¥Î 8-bit ­ì©l¼Ò¦¡©Î¬O CJK ¼Ò¦¡¡I·Ç³Æ­«·s¸ü¤J..."
+
+#. #define HEAD_D_L_OR_CANCEL
+#: LYMessages.c:257
+msgid "Send HEAD request for D)ocument or L)ink, or C)ancel? (d,l,c): "
+msgstr ""
+
+#. #define HEAD_D_OR_CANCEL
+#: LYMessages.c:259
+msgid "Send HEAD request for D)ocument, or C)ancel? (d,c): "
+msgstr ""
+
+#: LYMessages.c:260
+msgid "Sorry, the document is not an http URL."
+msgstr "©êºp¡A¸Ó¤å¥ó¤£¬O http URL¡C"
+
+#: LYMessages.c:261
+msgid "Sorry, the link is not an http URL."
+msgstr "©êºp¡A¸ÓÃìµ²¤£¬O http URL¡C"
+
+#: LYMessages.c:262
+msgid "Sorry, the ACTION for this form is disabled."
+msgstr ""
+
+#. #define FORM_ACTION_NOT_HTTP_URL
+#: LYMessages.c:264
+msgid "Sorry, the ACTION for this form is not an http URL."
+msgstr ""
+
+#: LYMessages.c:265
+msgid "Not an http URL or form ACTION!"
+msgstr ""
+
+#: LYMessages.c:266
+msgid "This special URL cannot be a form ACTION!"
+msgstr ""
+
+#: LYMessages.c:267
+msgid "URL is not in starting realm!"
+msgstr ""
+
+#: LYMessages.c:268
+msgid "News posting is disabled!"
+msgstr "¼È°±¨Ï¥Î±N°T®§¶K¤W·s»D²Õªº¥\¯à¡I"
+
+#: LYMessages.c:269
+msgid "File management support is disabled!"
+msgstr "¼È°±¨Ï¥ÎÀɮ׺޲zªº¥\¯à¡I"
+
+#: LYMessages.c:270
+msgid "No jump file is currently available."
+msgstr ""
+
+#: LYMessages.c:271
+msgid "Jump to (use '?' for list): "
+msgstr ""
+
+#: LYMessages.c:272
+msgid "Jumping to a shortcut URL is disallowed!"
+msgstr ""
+
+#: LYMessages.c:273
+msgid "Random URL is disallowed!  Use a shortcut."
+msgstr ""
+
+#: LYMessages.c:274
+msgid "No random URLs have been used thus far."
+msgstr ""
+
+#: LYMessages.c:275
+msgid "Bookmark features are currently disabled."
+msgstr "¥Ø«eµLªk´£¨Ñ®ÑÅÒ¥\¯à¡C"
+
+#: LYMessages.c:276
+msgid "Execution via bookmarks is disabled."
+msgstr ""
+
+#. #define BOOKMARK_FILE_NOT_DEFINED
+#: LYMessages.c:278
+#, c-format
+msgid "Bookmark file is not defined. Use %s to see options."
+msgstr ""
+
+#. #define NO_TEMP_FOR_HOTLIST
+#: LYMessages.c:280
+msgid "Unable to open tempfile for X Mosaic hotlist conversion."
+msgstr "·íÂà´« X Mosaic hotlist ®ÉµLªk¶}±Ò¼È¦sÀÉ¡C"
+
+#: LYMessages.c:281
+msgid "ERROR - unable to open bookmark file."
+msgstr "¿ù»~ ¢w µLªk¶}±Ò®ÑÅÒÀÉ¡C"
+
+#. #define BOOKMARK_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:283
+msgid "Unable to open bookmark file for deletion of link."
+msgstr "µLªk¶}±Ò®ÑÅÒÀɨӧR°£Ãìµ²¡C"
+
+#. #define BOOKSCRA_OPEN_FAILED_FOR_DEL
+#: LYMessages.c:285
+msgid "Unable to open scratch file for deletion of link."
+msgstr ""
+
+#: LYMessages.c:287
+msgid "Error renaming scratch file."
+msgstr ""
+
+#: LYMessages.c:289
+msgid "Error renaming temporary file."
+msgstr "§ó§ï¼È¦sÀɦWºÙ®É¥X²{¿ù»~¡C"
+
+#. #define BOOKTEMP_COPY_FAIL
+#: LYMessages.c:291
+msgid "Unable to copy temporary file for deletion of link."
+msgstr "·í§R°£Ãìµ²®ÉµLªk½Æ»s¼È¦sÀÉ¡C"
+
+#. #define BOOKTEMP_REOPEN_FAIL_FOR_DEL
+#: LYMessages.c:293
+msgid "Unable to reopen temporary file for deletion of link."
+msgstr "·í§R°£Ãìµ²®ÉµLªk­«·s¶}±Ò¼È¦sÀÉ¡C"
+
+#. #define BOOKMARK_LINK_NOT_ONE_LINE
+#: LYMessages.c:296
+msgid "Link is not by itself all on one line in bookmark file."
+msgstr ""
+
+#: LYMessages.c:297
+msgid "Bookmark deletion failed."
+msgstr "§R°£®ÑÅÒ¥¢±Ñ¡C"
+
+#. #define BOOKMARKS_NOT_TRAVERSED
+#: LYMessages.c:299
+msgid "Bookmark files cannot be traversed (only http URLs)."
+msgstr ""
+
+#. #define BOOKMARKS_NOT_OPEN
+#: LYMessages.c:301
+msgid "Unable to open bookmark file, use 'a' to save a link first"
+msgstr "µLªk¶}±Ò®ÑÅÒÀÉ¡A½Ð¥ý«ö¡¥a¡¦Àx¦sÃìµ²"
+
+#: LYMessages.c:302
+msgid "There are no links in this bookmark file!"
+msgstr "¥»®ÑÅÒÀɤ¤¨Ã¨S¦³Ãìµ²¡I"
+
+#. #define CACHE_D_OR_CANCEL
+#: LYMessages.c:304
+#, fuzzy
+msgid "D)elete cached document or C)ancel? (d,c): "
+msgstr "¦b®ÑÅÒÀɤ¤Àx¦s D)¤å¥ó¡AÁÙ¬O C)¨ú®ø¡H (d,c)¡G"
+
+#. #define BOOK_D_L_OR_CANCEL
+#: LYMessages.c:306
+msgid "Save D)ocument or L)ink to bookmark file or C)ancel? (d,l,c): "
+msgstr "¦b®ÑÅÒÀɤ¤Àx¦s D)¤å¥ó ©Î¬O L)Ãìµ²¡AÁÙ¬O C)¨ú®ø¡H (d,l,c)¡G"
+
+#: LYMessages.c:307
+msgid "Save D)ocument to bookmark file or C)ancel? (d,c): "
+msgstr "¦b®ÑÅÒÀɤ¤Àx¦s D)¤å¥ó¡AÁÙ¬O C)¨ú®ø¡H (d,c)¡G"
+
+#: LYMessages.c:308
+msgid "Save L)ink to bookmark file or C)ancel? (l,c): "
+msgstr "¦b®ÑÅÒÀɤ¤Àx¦s L)Ãìµ²¡AÁÙ¬O C)¨ú®ø¡H (l,c)¡G"
+
+#. #define NOBOOK_POST_FORM
+#: LYMessages.c:310
+msgid "Documents from forms with POST content cannot be saved as bookmarks."
+msgstr ""
+
+#: LYMessages.c:311
+msgid "Cannot save form fields/links"
+msgstr "¤£¥i¯àÀx¦sªí®æÄæ¦ì/Ãìµ²"
+
+#. #define NOBOOK_HSML
+#: LYMessages.c:313
+msgid "History, showinfo, menu and list files cannot be saved as bookmarks."
+msgstr ""
+
+#. #define CONFIRM_BOOKMARK_DELETE
+#: LYMessages.c:315
+msgid "Do you really want to delete this link from your bookmark file?"
+msgstr "¬O§_½T©w­n±q®ÑÅÒÀɤ¤§R°£¥»Ãìµ²¡H"
+
+#: LYMessages.c:316
+msgid "Malformed address."
+msgstr "¦a§}®æ¦¡¤£¥¿½T¡C"
+
+#. #define HISTORICAL_ON_MINIMAL_OFF
+#: LYMessages.c:318
+msgid "Historical comment parsing ON (Minimal is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_MINIMAL_ON
+#: LYMessages.c:320
+msgid "Historical comment parsing OFF (Minimal is in effect)!"
+msgstr ""
+
+#. #define HISTORICAL_ON_VALID_OFF
+#: LYMessages.c:322
+msgid "Historical comment parsing ON (Valid is overridden)!"
+msgstr ""
+
+#. #define HISTORICAL_OFF_VALID_ON
+#: LYMessages.c:324
+msgid "Historical comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_IN_EFFECT
+#: LYMessages.c:326
+msgid "Minimal comment parsing ON (and in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_VALID_ON
+#: LYMessages.c:328
+msgid "Minimal comment parsing OFF (Valid is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_ON_BUT_HISTORICAL
+#: LYMessages.c:330
+msgid "Minimal comment parsing ON (but Historical is in effect)!"
+msgstr ""
+
+#. #define MINIMAL_OFF_HISTORICAL_ON
+#: LYMessages.c:332
+msgid "Minimal comment parsing OFF (Historical is in effect)!"
+msgstr ""
+
+#: LYMessages.c:333
+msgid "Soft double-quote parsing ON!"
+msgstr ""
+
+#: LYMessages.c:334
+msgid "Soft double-quote parsing OFF!"
+msgstr ""
+
+#: LYMessages.c:335
+msgid "Now using TagSoup parsing of HTML."
+msgstr "²{¦b¨Ï¥Î TagSoup ¤è¦¡¤ÀªR HTML ¤å¥ó¡C"
+
+#: LYMessages.c:336
+msgid "Now using SortaSGML parsing of HTML!"
+msgstr "²{¦b¨Ï¥Î SortaSGML ¤è¦¡¤ÀªR HTML ¤å¥ó¡C"
+
+#: LYMessages.c:337
+msgid "You are already at the end of this document."
+msgstr "¤w¸g¦b¤å¥óªº¥½ºÝ¤F¡C"
+
+#: LYMessages.c:338
+msgid "You are already at the beginning of this document."
+msgstr "¤w¸g¦b¤å¥óªº¶}©l¦ì¸m¤F¡C"
+
+#: LYMessages.c:339
+#, c-format
+msgid "You are already at page %d of this document."
+msgstr "¤w¸g¦b¤å¥óªº²Ä %d ­¶¤F¡C"
+
+#: LYMessages.c:340
+#, c-format
+msgid "Link number %d already is current."
+msgstr "Ãìµ²½s¸¹ %d ¤w¸g¬O¥Ø«e¿ï¨úªºÃìµ²¡C"
+
+#: LYMessages.c:341
+msgid "You are already at the first document"
+msgstr "¥»¤å¥ó¤w¸g¬O²Ä¤@¥÷¤å¥ó"
+
+#: LYMessages.c:342
+msgid "There are no links above this line of the document."
+msgstr "¥»¦æ¥H¤W¤w¸g¨S¦³Ãìµ²¡C"
+
+#: LYMessages.c:343
+msgid "There are no links below this line of the document."
+msgstr "¥»¦æ¥H¤U¤w¸g¨S¦³Ãìµ²¡C"
+
+#. #define MAXLEN_REACHED_DEL_OR_MOV
+#: LYMessages.c:345
+msgid "Maximum length reached!  Delete text or move off field."
+msgstr "¤w¨ì¹F¤å¦rªø«×ªº¤W­­¡I½Ð§R°£¤å¦r©Î¬OÂ÷¶}¥»Äæ¦ì¡C"
+
+#. #define NOT_ON_SUBMIT_OR_LINK
+#: LYMessages.c:347
+msgid "You are not on a form submission button or normal link."
+msgstr ""
+
+#. #define NEED_CHECKED_RADIO_BUTTON
+#: LYMessages.c:349
+msgid "One radio button must be checked at all times!"
+msgstr ""
+
+#: LYMessages.c:350
+msgid "No submit button for this form, submit single text field?"
+msgstr ""
+
+#: LYMessages.c:351
+msgid "Do you want to go back to the previous document?"
+msgstr "¬O§_ªð¦^¤w¸gÂsÄý¹Lªº¤å¥ó¡H"
+
+#: LYMessages.c:352
+msgid "Use arrows or tab to move off of field."
+msgstr ""
+
+#. #define ENTER_TEXT_ARROWS_OR_TAB
+#: LYMessages.c:354
+msgid "Enter text.  Use arrows or tab to move off of field."
+msgstr "½Ð¿é¤J¤å¦r¡C¨Ï¥Î¤è¦VÁä©Î tab ÁäÂ÷¶}Äæ¦ì¡C"
+
+#: LYMessages.c:355
+msgid "** Bad HTML!!  No form action defined. **"
+msgstr ""
+
+#: LYMessages.c:356
+msgid "Bad HTML!!  Unable to create popup window!"
+msgstr ""
+
+#: LYMessages.c:357
+msgid "Unable to create popup window!"
+msgstr ""
+
+#: LYMessages.c:358
+msgid "Goto a random URL is disallowed!"
+msgstr "¤£¤¹³\¶i¤JÀH¾÷ªº URL¡I"
+
+#: LYMessages.c:359
+msgid "Goto a non-http URL is disallowed!"
+msgstr "¤£¤¹³\ÂsÄý«D http ªº URL¡I"
+
+#: LYMessages.c:360
+#, c-format
+msgid "You are not allowed to goto \"%s\" URLs"
+msgstr "»Õ¤U¤£¤¹³\¶i¤J¡§%s¡¨Ãþ«¬ªº URL"
+
+#: LYMessages.c:361
+msgid "URL to open: "
+msgstr "·Ç³Æ¶}±Òªº URL¡G"
+
+#: LYMessages.c:362
+msgid "Edit the current Goto URL: "
+msgstr "­×§ï¥Ø«eªº URL¡G"
+
+#: LYMessages.c:363
+msgid "Edit the previous Goto URL: "
+msgstr "­×§ï´¿¸gÂsÄýªº URL¡G"
+
+#: LYMessages.c:364
+msgid "Edit a previous Goto URL: "
+msgstr "­×§ï´¿¸gÂsÄýªº URL¡G"
+
+#: LYMessages.c:365
+msgid "Current document has POST data."
+msgstr "¥Ø«eªº¤å¥ó¸ü¦³ POST ¸ê®Æ¡C"
+
+#: LYMessages.c:366
+msgid "Edit this document's URL: "
+msgstr "­×§ï¥»¤å¥óªº URL¡G"
+
+#: LYMessages.c:367
+msgid "Edit the current link's URL: "
+msgstr "­×§ï¥Ø«e¿ï¨úªºÃìµ²ªº URL¡G"
+
+#: LYMessages.c:368
+msgid "You cannot edit File Management URLs"
+msgstr "¤£¥i­×§ï¦³ÃöÀɮ׺޲zªº URL"
+
+#: LYMessages.c:369
+msgid "Enter a database query: "
+msgstr ""
+
+#: LYMessages.c:370
+msgid "Enter a whereis query: "
+msgstr "¿é¤J·Ç³Æ·j´Mªº¦r¦ê¡G"
+
+#: LYMessages.c:371
+msgid "Edit the current query: "
+msgstr "­×§ï¥Ø«e·Ç³Æ·j´Mªº¦r¦ê¡G"
+
+#: LYMessages.c:372
+msgid "Edit the previous query: "
+msgstr "­×§ï¤§«e·Ç³Æ·j´Mªº¦r¦ê¡G"
+
+#: LYMessages.c:373
+msgid "Edit a previous query: "
+msgstr "­×§ï¤§«e·Ç³Æ·j´Mªº¦r¦ê¡G"
+
+#. #define USE_C_R_TO_RESUB_CUR_QUERY
+#: LYMessages.c:375
+msgid "Use Control-R to resubmit the current query."
+msgstr ""
+
+#: LYMessages.c:376
+msgid "Edit the current shortcut: "
+msgstr ""
+
+#: LYMessages.c:377
+msgid "Edit the previous shortcut: "
+msgstr ""
+
+#: LYMessages.c:378
+msgid "Edit a previous shortcut: "
+msgstr ""
+
+#: LYMessages.c:379
+#, c-format
+msgid "Key '%c' is not mapped to a jump file!"
+msgstr ""
+
+#: LYMessages.c:380
+msgid "Cannot locate jump file!"
+msgstr ""
+
+#: LYMessages.c:381
+msgid "Cannot open jump file!"
+msgstr ""
+
+#: LYMessages.c:382
+msgid "Error reading jump file!"
+msgstr ""
+
+#: LYMessages.c:383
+msgid "Out of memory reading jump file!"
+msgstr ""
+
+#: LYMessages.c:384
+msgid "Out of memory reading jump table!"
+msgstr ""
+
+#: LYMessages.c:385
+msgid "No index is currently available."
+msgstr ""
+
+#. #define CONFIRM_MAIN_SCREEN
+#: LYMessages.c:387
+msgid "Do you really want to go to the Main screen?"
+msgstr "¬O§_½T©w­nÂsÄý¥Dµe­±¡H"
+
+#: LYMessages.c:388
+msgid "You are already at main screen!"
+msgstr "¤w¸g¦b¥Dµe­±¤F¡I"
+
+#. #define NOT_ISINDEX
+#: LYMessages.c:390
+msgid "Not a searchable indexed document -- press '/' to search for a text string"
+msgstr "¤£¬O¥i¶i¦æ·j´Mªº¯Á¤Þ¤å¥ó ¢w ½Ð«ö¡¥/¡¦·j´M¦r¦ê"
+
+#. #define NO_OWNER
+#: LYMessages.c:392
+msgid "No owner is defined for this file so you cannot send a comment"
+msgstr ""
+
+#: LYMessages.c:393
+#, c-format
+msgid "No owner is defined. Use %s?"
+msgstr ""
+
+#: LYMessages.c:394
+msgid "Do you wish to send a comment?"
+msgstr ""
+
+#: LYMessages.c:395
+msgid "Mail is disallowed so you cannot send a comment"
+msgstr ""
+
+#: LYMessages.c:396
+msgid "The 'e'dit command is currently disabled."
+msgstr "¼È°±¨Ï¥Î¡u½s¿è¡v('e') «ü¥O¡C"
+
+#: LYMessages.c:397
+msgid "External editing is currently disabled."
+msgstr "¼È°±¨Ï¥Î¥~³¡ªº½s¿è¾¹¡C"
+
+#: LYMessages.c:398
+msgid "System error - failure to get status."
+msgstr "¨t²Î¿ù»~ ¢w µLªk±oª¾ª¬ºA¡C"
+
+#: LYMessages.c:399
+msgid "No editor is defined!"
+msgstr "¥¼«ü©w½s¿è¾¹¡I"
+
+#: LYMessages.c:400
+msgid "The 'p'rint command is currently disabled."
+msgstr "¼È°±¨Ï¥Î¡u¦C¦L¡v('p') «ü¥O¡C"
+
+#: LYMessages.c:401
+msgid "Document has no Toolbar links or Banner."
+msgstr ""
+
+#: LYMessages.c:402
+msgid "Unable to open traversal file."
+msgstr ""
+
+#: LYMessages.c:403
+msgid "Unable to open traversal found file."
+msgstr ""
+
+#: LYMessages.c:404
+msgid "Unable to open reject file."
+msgstr ""
+
+#: LYMessages.c:405
+msgid "Unable to open traversal errors output file"
+msgstr ""
+
+#: LYMessages.c:406
+msgid "TRAVERSAL WAS INTERRUPTED"
+msgstr ""
+
+#: LYMessages.c:407
+msgid "Follow link (or goto link or page) number: "
+msgstr ""
+
+#: LYMessages.c:408
+msgid "Select option (or page) number: "
+msgstr "½Ð¿ï¨ú¿ï¶µ½s¸¹(©Î­¶¼Æ)¡G"
+
+#: LYMessages.c:409
+#, c-format
+msgid "Option number %d already is current."
+msgstr "¿ï¶µ½s¸¹ %d ¤w¸g¬O¥Ø«eªº¿ï¶µ¡C"
+
+#. #define ALREADY_AT_OPTION_END
+#: LYMessages.c:411
+msgid "You are already at the end of this option list."
+msgstr "¤w¸g¦b¿ï¶µ²M³æªºµ²§ô³¡¥÷¤F¡C"
+
+#. #define ALREADY_AT_OPTION_BEGIN
+#: LYMessages.c:413
+msgid "You are already at the beginning of this option list."
+msgstr "¤w¸g¦b¿ï¶µ²M³æªº¶}©l³¡¥÷¤F¡C"
+
+#. #define ALREADY_AT_OPTION_PAGE
+#: LYMessages.c:415
+#, c-format
+msgid "You are already at page %d of this option list."
+msgstr "¤w¸g¦b¿ï¶µ²M³æªº²Ä %d ­¶¤F¡C"
+
+#: LYMessages.c:416
+msgid "You have entered an invalid option number."
+msgstr "»Õ¤U¿é¤J¤FµL®Äªº¿ï¶µ½s¸¹¡C"
+
+#: LYMessages.c:417
+msgid "** Bad HTML!!  Use -trace to diagnose. **"
+msgstr ""
+
+#: LYMessages.c:418
+msgid "Give name of file to save in"
+msgstr ""
+
+#: LYMessages.c:419
+msgid "Can't save data to file -- please run WWW locally"
+msgstr ""
+
+#: LYMessages.c:420
+msgid "Can't open temporary file!"
+msgstr "µLªk¶}±Ò¼È¦sÀÉ¡I"
+
+#: LYMessages.c:421
+msgid "Can't open output file!  Cancelling!"
+msgstr "µLªk¶}±Ò¿é¥XÀÉ¡I¨ú®ø¿é¥X¡I"
+
+#: LYMessages.c:422
+msgid "Execution is disabled."
+msgstr ""
+
+#. #define EXECUTION_DISABLED_FOR_FILE
+#: LYMessages.c:424
+#, c-format
+msgid "Execution is not enabled for this file.  See the Options menu (use %s)."
+msgstr ""
+
+#. #define EXECUTION_NOT_COMPILED
+#: LYMessages.c:426
+msgid "Execution capabilities are not compiled into this version."
+msgstr ""
+
+#: LYMessages.c:427
+msgid "This file cannot be displayed on this terminal."
+msgstr "µLªk¦b¥»²×ºÝ¾÷Åã¥Ü¸ÓÀɮסC"
+
+#. #define CANNOT_DISPLAY_FILE_D_OR_C
+#: LYMessages.c:429
+msgid "This file cannot be displayed on this terminal:  D)ownload, or C)ancel"
+msgstr "µLªk¦b¥»²×ºÝ¾÷Åã¥Ü¸ÓÀɮסG D)¤U¸ü  C)¨ú®ø"
+
+#: LYMessages.c:430
+#, c-format
+msgid "%s  D)ownload, or C)ancel"
+msgstr "%s  D)¤U¸ü  C)¨ú®ø"
+
+#: LYMessages.c:431
+msgid "Cancelling file."
+msgstr "¨ú®ø±µ¦¬ÀɮסC"
+
+#: LYMessages.c:432
+msgid "Retrieving file.  - PLEASE WAIT -"
+msgstr "¥¿¦b±µ¦¬ÀɮסC¢w ½Ðµyµ¥ ¢w"
+
+#: LYMessages.c:433
+msgid "Enter a filename: "
+msgstr "½Ð¿é¤JÀɮצWºÙ¡G"
+
+#: LYMessages.c:434
+msgid "Edit the previous filename: "
+msgstr "­×§ï¥H©¹¨Ï¥ÎªºÀɮצWºÙ¡G"
+
+#: LYMessages.c:435
+msgid "Edit a previous filename: "
+msgstr "­×§ï¥H©¹¨Ï¥ÎªºÀɮצWºÙ¡G"
+
+#: LYMessages.c:436
+msgid "Enter a new filename: "
+msgstr "½Ð¿é¤J·sªºÀɮצWºÙ¡G"
+
+#: LYMessages.c:437
+msgid "File name may not begin with a dot."
+msgstr ""
+
+#: LYMessages.c:439
+msgid "File exists.  Create higher version?"
+msgstr ""
+
+#: LYMessages.c:441
+msgid "File exists.  Overwrite?"
+msgstr "Àɮפw¦s¦b¡C¬O§_Âмg¡H"
+
+#: LYMessages.c:443
+msgid "Cannot write to file."
+msgstr "µLªk¼g¤JÀɮסC"
+
+#: LYMessages.c:444
+msgid "ERROR! - download command is misconfigured."
+msgstr "¿ù»~¡I¢w ¦³Ãö¤U¸üªº«ü¥O¤´¥¼³]©w¦n¡C"
+
+#: LYMessages.c:445
+msgid "Unable to download file."
+msgstr "µLªk¤U¸üÀɮסC"
+
+#: LYMessages.c:446
+msgid "Reading directory..."
+msgstr "¥¿¦bŪ¨ú¥Ø¿ý..."
+
+#: LYMessages.c:447
+msgid "Building directory listing..."
+msgstr "¥¿¦b»s§@¥Ø¿ý²M³æ..."
+
+#: LYMessages.c:448
+msgid "Saving..."
+msgstr "Àx¦s¤¤..."
+
+#: LYMessages.c:449
+#, c-format
+msgid "Could not edit file '%s'."
+msgstr "µLªk½s¿èÀɮס¥%s¡¦¡C"
+
+#: LYMessages.c:450
+msgid "Unable to access document!"
+msgstr "µLªk¦s¨ú¤å¥ó¡I"
+
+#: LYMessages.c:451
+msgid "Could not access file."
+msgstr "µLªk¦s¨úÀɮסC"
+
+#: LYMessages.c:452
+msgid "Could not access directory."
+msgstr "µLªk¦s¨ú¥Ø¿ý¡C"
+
+#: LYMessages.c:453
+msgid "Could not load data."
+msgstr "µLªk¸ü¤J¸ê®Æ¡C"
+
+#. #define CANNOT_EDIT_REMOTE_FILES
+#: LYMessages.c:455
+msgid "Lynx cannot currently (e)dit remote WWW files."
+msgstr "¥Ø«e Lynx µLªk½s¿è»·ºÝªº WWW ÀɮסC"
+
+#. #define CANNOT_EDIT_FIELD
+#: LYMessages.c:457
+msgid "This field cannot be (e)dited with an external editor."
+msgstr "¥»Äæ¦ìµLªk¨Ï¥Î¥~³¡ªº½s¿è¾¹¨Ó½s¿è¡C"
+
+#: LYMessages.c:458
+msgid "Bad rule"
+msgstr ""
+
+#: LYMessages.c:459
+msgid "Insufficient operands:"
+msgstr ""
+
+#: LYMessages.c:460
+msgid "You are not authorized to edit this file."
+msgstr "»Õ¤U¥¼Àò±ÂÅv­×§ï¥»ÀɮסC"
+
+#: LYMessages.c:461
+msgid "Title: "
+msgstr "¼ÐÃD¡G"
+
+#: LYMessages.c:462
+msgid "Subject: "
+msgstr "¥DÃD¡G"
+
+#: LYMessages.c:463
+msgid "Username: "
+msgstr "±b¤á¦WºÙ¡G"
+
+#: LYMessages.c:464
+msgid "Password: "
+msgstr "±K½X¡G"
+
+#: LYMessages.c:465
+msgid "lynx: Username and Password required!!!"
+msgstr "lynx¡G»Ý­n±b¤á¦WºÙ¤Î±K½X!!!"
+
+#: LYMessages.c:466
+msgid "lynx: Password required!!!"
+msgstr "lynx¡G»Ý­n±K½X!!!"
+
+#: LYMessages.c:467
+msgid "Clear all authorization info for this session?"
+msgstr ""
+
+#: LYMessages.c:468
+msgid "Authorization info cleared."
+msgstr "¤w²M°£»{ÃÒ¸ê°T¡C"
+
+#: LYMessages.c:469
+msgid "Authorization failed.  Retry?"
+msgstr "»{ÃÒ¥¢±Ñ¡C¬O§_­«¸Õ¡H"
+
+#: LYMessages.c:470
+msgid "cgi support has been disabled."
+msgstr "¼È°±¤ä´© cgi ¥\¯à¡C"
+
+#. #define CGI_NOT_COMPILED
+#: LYMessages.c:472
+msgid "Lynxcgi capabilities are not compiled into this version."
+msgstr "½sĶ®É¨Ã¨S¦³¥[¤J lynxcgi ¥\¯à¡C"
+
+#: LYMessages.c:473
+#, c-format
+msgid "Sorry, no known way of converting %s to %s."
+msgstr "©êºp¡A¨S¦³¤wª¾ªº¤èªk¥i¥H±N %s Âà´«¦Ü %s¡C"
+
+#: LYMessages.c:474
+msgid "Unable to set up connection."
+msgstr "µLªk«Ø¥ß³s½u¡C"
+
+#: LYMessages.c:475
+msgid "Unable to make connection"
+msgstr "µLªk«Ø¥ß³s½u¡C"
+
+#. #define MALFORMED_EXEC_REQUEST
+#: LYMessages.c:477
+msgid "Executable link rejected due to malformed request."
+msgstr ""
+
+#. #define BADCHAR_IN_EXEC_LINK
+#: LYMessages.c:479
+#, c-format
+msgid "Executable link rejected due to `%c' character."
+msgstr ""
+
+#. #define RELPATH_IN_EXEC_LINK
+#: LYMessages.c:481
+msgid "Executable link rejected due to relative path string ('../')."
+msgstr ""
+
+#. #define BADLOCPATH_IN_EXEC_LINK
+#: LYMessages.c:483
+msgid "Executable link rejected due to location or path."
+msgstr ""
+
+#: LYMessages.c:484
+msgid "Mail access is disabled!"
+msgstr ""
+
+#. #define ACCESS_ONLY_LOCALHOST
+#: LYMessages.c:486
+msgid "Only files and servers on the local host can be accessed."
+msgstr ""
+
+#: LYMessages.c:487
+msgid "Telnet access is disabled!"
+msgstr ""
+
+#. #define TELNET_PORT_SPECS_DISABLED
+#: LYMessages.c:489
+msgid "Telnet port specifications are disabled."
+msgstr ""
+
+#: LYMessages.c:490
+msgid "USENET news access is disabled!"
+msgstr ""
+
+#: LYMessages.c:491
+msgid "Rlogin access is disabled!"
+msgstr ""
+
+#: LYMessages.c:492
+msgid "Ftp access is disabled!"
+msgstr ""
+
+#: LYMessages.c:493
+msgid "There are no references from this document."
+msgstr ""
+
+#: LYMessages.c:494
+msgid "There are only hidden links from this document."
+msgstr ""
+
+#: LYMessages.c:496
+msgid "Unable to open command file."
+msgstr ""
+
+#: LYMessages.c:498
+msgid "News Post Cancelled!!!"
+msgstr ""
+
+#. #define SPAWNING_EDITOR_FOR_NEWS
+#: LYMessages.c:500
+msgid "Spawning your selected editor to edit news message"
+msgstr ""
+
+#: LYMessages.c:501
+msgid "Post this message?"
+msgstr ""
+
+#: LYMessages.c:502
+#, c-format
+msgid "Append '%s'?"
+msgstr ""
+
+#: LYMessages.c:503
+msgid "Posting to newsgroup(s)..."
+msgstr ""
+
+#: LYMessages.c:505
+msgid "*** You have unread mail. ***"
+msgstr "*** ¦³¥¼Åªªº¶l¥ó¡C ***"
+
+#: LYMessages.c:507
+msgid "*** You have mail. ***"
+msgstr "*** ¦³¶l¥ó¡C ***"
+
+#: LYMessages.c:509
+msgid "*** You have new mail. ***"
+msgstr "*** ¦³·s¶l¥ó¡C ***"
+
+#: LYMessages.c:510
+msgid "File insert cancelled!!!"
+msgstr ""
+
+#: LYMessages.c:511
+msgid "Not enough memory for file!"
+msgstr "°O¾ÐÅ餣¨¬¥H¸ü¤JÀɮסI"
+
+#: LYMessages.c:512
+msgid "Can't open file for reading."
+msgstr "µLªk¶}±Ò·Ç³ÆŪ¤JªºÀɮסC"
+
+#: LYMessages.c:513
+msgid "File does not exist."
+msgstr "Àɮפ£¦s¦b¡C"
+
+#: LYMessages.c:514
+msgid "File does not exist - reenter or cancel:"
+msgstr "Àɮפ£¦s¦b ¢w ½Ð­«·s¿é¤J©Î¨ú®ø¡G"
+
+#: LYMessages.c:515
+msgid "File is not readable."
+msgstr ""
+
+#: LYMessages.c:516
+msgid "File is not readable - reenter or cancel:"
+msgstr ""
+
+#: LYMessages.c:517
+msgid "Nothing to insert - file is 0-length."
+msgstr ""
+
+#: LYMessages.c:518
+msgid "Save request cancelled!!!"
+msgstr "¤w¨ú®øÀx¦sªº­n¨D!!!"
+
+#: LYMessages.c:519
+msgid "Mail request cancelled!!!"
+msgstr ""
+
+#. #define CONFIRM_MAIL_SOURCE_PREPARSED
+#: LYMessages.c:521
+msgid "Viewing preparsed source.  Are you sure you want to mail it?"
+msgstr ""
+
+#: LYMessages.c:522
+msgid "Please wait..."
+msgstr "½Ðµyµ¥..."
+
+#: LYMessages.c:523
+msgid "Mailing file.  Please wait..."
+msgstr "¥¿¦b±H¥XÀɮסC½Ðµyµ¥..."
+
+#: LYMessages.c:524
+msgid "ERROR - Unable to mail file"
+msgstr "¿ù»~ ¢w µLªk±H¥XÀÉ®×"
+
+#. #define CONFIRM_LONG_SCREEN_PRINT
+#: LYMessages.c:526
+#, c-format
+msgid "File is %d screens long.  Are you sure you want to print?"
+msgstr "Àɮתø«×¬° %d ­Óµe­±¡C¬O§_½T©w­n¦C¦L¡H"
+
+#: LYMessages.c:527
+msgid "Print request cancelled!!!"
+msgstr "¤w¨ú®ø¦C¦Lªº­n¨D!!!"
+
+#: LYMessages.c:528
+msgid "Press <return> to begin: "
+msgstr "½Ð«ö <return> ¶}©l¡G"
+
+#: LYMessages.c:529
+msgid "Press <return> to finish: "
+msgstr "½Ð«ö <return> µ²§ô¡G"
+
+#. #define CONFIRM_LONG_PAGE_PRINT
+#: LYMessages.c:531
+#, c-format
+msgid "File is %d pages long.  Are you sure you want to print?"
+msgstr "Àɮתø«×¬° %d ­¶¡C¬O§_½T©w­n¦C¦L¡H"
+
+#. #define CHECK_PRINTER
+#: LYMessages.c:533
+msgid "Be sure your printer is on-line.  Press <return> to start printing:"
+msgstr ""
+
+#: LYMessages.c:534
+msgid "ERROR - Unable to allocate file space!!!"
+msgstr "¿ù»~ ¢w µLªk¤À°tÀɮתŶ¡!!!"
+
+#: LYMessages.c:535
+msgid "Unable to open tempfile"
+msgstr "µLªk¶}±Ò¼È¦sÀÉ"
+
+#: LYMessages.c:536
+msgid "Unable to open print options file"
+msgstr ""
+
+#: LYMessages.c:537
+msgid "Printing file.  Please wait..."
+msgstr "¥¿¦b¦C¦LÀɮסC½Ðµyµ¥..."
+
+#: LYMessages.c:538
+msgid "Please enter a valid internet mail address: "
+msgstr "½Ð¿é¤J¦³®Äªº¹q¶l¦a§}¡G"
+
+#: LYMessages.c:539
+msgid "ERROR! - printer is misconfigured!"
+msgstr "¿ù»~¡I - ¦Lªí¾÷³]©w¿ù»~¡I"
+
+#: LYMessages.c:540
+msgid "Image map from POST response not available!"
+msgstr ""
+
+#: LYMessages.c:541
+msgid "Misdirected client-side image MAP request!"
+msgstr ""
+
+#: LYMessages.c:542
+msgid "Client-side image MAP is not accessible!"
+msgstr ""
+
+#: LYMessages.c:543
+msgid "No client-side image MAPs are available!"
+msgstr ""
+
+#: LYMessages.c:544
+msgid "Client-side image MAP is not available!"
+msgstr ""
+
+#. #define OPTION_SCREEN_NEEDS_24
+#: LYMessages.c:547
+msgid "Screen height must be at least 24 lines for the Options menu!"
+msgstr "¦b¿ï¶µ³]©w¤¤¡Aµe­±°ª«×¥²¶·³Ì¤Ö¦³ 24 ¦æ¡I"
+
+#. #define OPTION_SCREEN_NEEDS_23
+#: LYMessages.c:549
+msgid "Screen height must be at least 23 lines for the Options menu!"
+msgstr "¦b¿ï¶µ³]©w¤¤¡Aµe­±°ª«×¥²¶·³Ì¤Ö¦³ 23 ¦æ¡I"
+
+#. #define OPTION_SCREEN_NEEDS_22
+#: LYMessages.c:551
+msgid "Screen height must be at least 22 lines for the Options menu!"
+msgstr "¦b¿ï¶µ³]©w¤¤¡Aµe­±°ª«×¥²¶·³Ì¤Ö¦³ 22 ¦æ¡I"
+
+#: LYMessages.c:553
+msgid "That key requires Advanced User mode."
+msgstr ""
+
+#: LYMessages.c:554
+#, c-format
+msgid "Content-type: %s"
+msgstr "Content-type¡G%s"
+
+#: LYMessages.c:555
+msgid "Command: "
+msgstr "«ü¥O¡G"
+
+#: LYMessages.c:556
+msgid "Unknown or ambiguous command"
+msgstr "¤£©ú©Î·N¸q§t½kªº«ü¥O"
+
+#: LYMessages.c:557
+msgid " Version "
+msgstr " ª©¥» "
+
+#: LYMessages.c:558
+msgid " first"
+msgstr " (­º¥ý´ú¸Õ)"
+
+#: LYMessages.c:559
+msgid ", guessing..."
+msgstr "¡A¥¿¦b¦ô­p..."
+
+#: LYMessages.c:560
+msgid "Permissions for "
+msgstr ""
+
+#: LYMessages.c:561
+msgid "Select "
+msgstr ""
+
+#: LYMessages.c:562
+msgid "capital letter"
+msgstr ""
+
+#: LYMessages.c:563
+msgid " of option line,"
+msgstr ""
+
+#: LYMessages.c:564
+msgid " to save,"
+msgstr " Àx¦s  "
+
+#: LYMessages.c:565
+msgid " to "
+msgstr ""
+
+#: LYMessages.c:566
+msgid " or "
+msgstr " ©Î¬O "
+
+#: LYMessages.c:567
+msgid " index"
+msgstr ""
+
+#: LYMessages.c:568
+msgid " to return to Lynx."
+msgstr " ªð¦^ Lynx¡C"
+
+#: LYMessages.c:569
+msgid "Accept Changes"
+msgstr "±µ¨ü§ó§ï"
+
+#: LYMessages.c:570
+msgid "Reset Changes"
+msgstr "­«³]¿ï¶µ"
+
+#: LYMessages.c:571
+msgid "Left Arrow cancels changes"
+msgstr "¥ª½b©CÁä¨ú®ø§ó§ï¿ï¶µ"
+
+#: LYMessages.c:572
+msgid "Save options to disk"
+msgstr "±N¿ï¶µÀx¦s©óºÏºÐ¤¤"
+
+#: LYMessages.c:573
+msgid "Hit RETURN to accept entered data."
+msgstr "«ö RETURN ±µ¨ü¿é¤Jªº¸ê®Æ¡C"
+
+#. #define ACCEPT_DATA_OR_DEFAULT
+#: LYMessages.c:575
+msgid "Hit RETURN to accept entered data.  Delete data to invoke the default."
+msgstr ""
+
+#: LYMessages.c:576
+msgid "Value accepted!"
+msgstr "¤w±µ¨ü³]©w­È¡I"
+
+#. #define VALUE_ACCEPTED_WARNING_X
+#: LYMessages.c:578
+msgid "Value accepted! -- WARNING: Lynx is configured for XWINDOWS!"
+msgstr "¤w±µ¨ü³]©w­È¡I¢w ĵ§i¡GLynx ³]©w¤F¥u¦b XWINDOW ¾A¥Î¡I"
+
+#. #define VALUE_ACCEPTED_WARNING_NONX
+#: LYMessages.c:580
+msgid "Value accepted! -- WARNING: Lynx is NOT configured for XWINDOWS!"
+msgstr "¤w±µ¨ü³]©w­È¡I¢w ĵ§i¡GLynx ³]©w¤F¤£¾A¥Î©ó XWINDOW¡I"
+
+#: LYMessages.c:581
+msgid "You are not allowed to change which editor to use!"
+msgstr "¤£¤¹³\¦Û¦æ«ü©w¨Ï¥Îªº½s¿è¾¹¡I"
+
+#: LYMessages.c:582
+msgid "Failed to set DISPLAY variable!"
+msgstr "µLªk³]©w DISPLAY Àô¹ÒÅܼơI"
+
+#: LYMessages.c:583
+msgid "Failed to clear DISPLAY variable!"
+msgstr "µLªk²M°£ DISPLAY Àô¹ÒÅܼơI"
+
+#. #define BOOKMARK_CHANGE_DISALLOWED
+#: LYMessages.c:585
+msgid "You are not allowed to change the bookmark file!"
+msgstr "¤£¤¹³\§ó§ï®ÑÅÒÀÉ¡I"
+
+#: LYMessages.c:586
+msgid "Terminal does not support color"
+msgstr "²×ºÝ¾÷¤£¤ä´©¦â±m"
+
+#: LYMessages.c:587
+#, c-format
+msgid "Your '%s' terminal does not support color."
+msgstr "¡¥%s¡¦²×ºÝ¾÷¤£¤ä´©¦â±m"
+
+#: LYMessages.c:588
+msgid "Access to dot files is disabled!"
+msgstr ""
+
+#. #define UA_NO_LYNX_WARNING
+#: LYMessages.c:590
+msgid "User-Agent string does not contain \"Lynx\" or \"L_y_n_x\""
+msgstr "User-Agent ¦r¦ê¤£¥]¬A¡§Lynx¡¨©Î¡§L_y_n_x¡¨"
+
+#. #define UA_PLEASE_USE_LYNX
+#: LYMessages.c:592
+msgid "Use \"L_y_n_x\" or \"Lynx\" in User-Agent, or it looks like intentional deception!"
+msgstr ""
+
+#. #define UA_CHANGE_DISABLED
+#: LYMessages.c:594
+msgid "Changing of the User-Agent string is disabled!"
+msgstr "¤£¤¹³\§ó§ï User-Agent ¦r¦ê¡I"
+
+#. #define CHANGE_OF_SETTING_DISALLOWED
+#: LYMessages.c:596
+msgid "You are not allowed to change this setting."
+msgstr "¤£¤¹³\§ó§ï¦¹¶µ³]©w¡C"
+
+#: LYMessages.c:597
+msgid "Saving Options..."
+msgstr "¥¿¦bÀx¦s¿ï¶µ..."
+
+#: LYMessages.c:598
+msgid "Options saved!"
+msgstr "¤wÀx¦s¿ï¶µ¡I"
+
+#: LYMessages.c:599
+msgid "Unable to save Options!"
+msgstr "µLªkÀx¦s¿ï¶µ¡I"
+
+#: LYMessages.c:600
+msgid " 'r' to return to Lynx "
+msgstr "½Ð«ö¡¥r¡¦ªð¦^ Lynx "
+
+#: LYMessages.c:601
+msgid " '>' to save, or 'r' to return to Lynx "
+msgstr "«ö¡¥>¡¦Àx¦s¡A©Î¬O«ö¡¥r¡¦ªð¦^ Lynx "
+
+#. #define ANY_KEY_CHANGE_RET_ACCEPT
+#: LYMessages.c:603
+msgid "Hit any key to change value; RETURN to accept."
+msgstr ""
+
+#: LYMessages.c:604
+msgid "Error uncompressing temporary file!"
+msgstr "±N¼È¦sÀɸÑÀ£®Éµo¥Í¿ù»~¡I"
+
+#: LYMessages.c:605
+msgid "Unsupported URL scheme!"
+msgstr ""
+
+#: LYMessages.c:606
+msgid "Unsupported data: URL!  Use SHOWINFO, for now."
+msgstr ""
+
+#: LYMessages.c:607
+msgid "Redirection limit of 10 URL's reached."
+msgstr "¤w¹F¨ì URL ­«·s¾É¦V¦¸¼Æªº­­¨î (10 ¦¸)¡C"
+
+#: LYMessages.c:608
+msgid "Illegal redirection URL received from server!"
+msgstr ""
+
+#. #define SERVER_ASKED_FOR_REDIRECTION
+#: LYMessages.c:610
+#, c-format
+msgid "Server asked for %d redirection of POST content to"
+msgstr ""
+
+#: LYMessages.c:613
+msgid "P)roceed, use G)ET or C)ancel "
+msgstr ""
+
+#: LYMessages.c:614
+msgid "P)roceed, or C)ancel "
+msgstr "P)Ä~Äò  C)¨ú®ø"
+
+#. #define ADVANCED_POST_GET_REDIRECT
+#: LYMessages.c:616
+msgid "Redirection of POST content.  P)roceed, see U)RL, use G)ET or C)ancel"
+msgstr ""
+
+#. #define ADVANCED_POST_REDIRECT
+#: LYMessages.c:618
+msgid "Redirection of POST content.  P)roceed, see U)RL, or C)ancel"
+msgstr ""
+
+#. #define CONFIRM_POST_RESUBMISSION
+#: LYMessages.c:620
+msgid "Document from Form with POST content.  Resubmit?"
+msgstr ""
+
+#. #define CONFIRM_POST_RESUBMISSION_TO
+#: LYMessages.c:622
+#, c-format
+msgid "Resubmit POST content to %s ?"
+msgstr ""
+
+#. #define CONFIRM_POST_LIST_RELOAD
+#: LYMessages.c:624
+#, c-format
+msgid "List from document with POST data.  Reload %s ?"
+msgstr ""
+
+#. #define CONFIRM_POST_DOC_HEAD
+#: LYMessages.c:626
+msgid "Document from POST action, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#. #define CONFIRM_POST_LINK_HEAD
+#: LYMessages.c:628
+msgid "Form submit action is POST, HEAD may not be understood.  Proceed?"
+msgstr ""
+
+#: LYMessages.c:629
+msgid "Proceed without a username and password?"
+msgstr ""
+
+#: LYMessages.c:630
+#, c-format
+msgid "Proceed (%s)?"
+msgstr "¬O§_Ä~Äò (%s)?"
+
+#: LYMessages.c:631
+msgid "Cannot POST to this host."
+msgstr "µLªk¶Ç°e POST ¸ê®Æ¦Ü¸Ó¥D¾÷¡C"
+
+#: LYMessages.c:632
+msgid "POST not supported for this URL - ignoring POST data!"
+msgstr ""
+
+#: LYMessages.c:633
+msgid "Discarding POST data..."
+msgstr "±Ë±ó POST ¸ê®Æ..."
+
+#: LYMessages.c:634
+msgid "Document will not be reloaded!"
+msgstr "¤£·|­«·s¸ü¤J¤å¥ó¡I"
+
+#: LYMessages.c:635
+msgid "Location: "
+msgstr "¦ì¸m¡G"
+
+#: LYMessages.c:636
+#, c-format
+msgid "'%s' not found!"
+msgstr "§ä¤£¨ì¡¥%s¡¦¡I"
+
+#: LYMessages.c:637
+msgid "Default Bookmark File"
+msgstr "¹w³]®ÑÅÒÀÉ"
+
+#: LYMessages.c:638
+msgid "Screen too small! (8x35 min)"
+msgstr "µe­±¤Ó¤p¡I(³Ì¤p 8x35)"
+
+#: LYMessages.c:639
+msgid "Select destination or ^G to Cancel: "
+msgstr "½Ð¿ï¾Ü¥Øªº¦a©Î«ö ^G ¨ú®ø¡G"
+
+#. #define MULTIBOOKMARKS_SELECT
+#: LYMessages.c:641
+msgid "Select subbookmark, '=' for menu, or ^G to cancel: "
+msgstr ""
+
+#. #define MULTIBOOKMARKS_SELF
+#: LYMessages.c:643
+msgid "Reproduce L)ink in this bookmark file or C)ancel? (l,c): "
+msgstr ""
+
+#: LYMessages.c:644
+msgid "Multiple bookmark support is not available."
+msgstr "µLªk´£¨Ñ¦h®ÑÅÒÀɪº¤ä´©¡C"
+
+#: LYMessages.c:645
+#, c-format
+msgid " Select Bookmark (screen %d of %d)"
+msgstr ""
+
+#: LYMessages.c:646
+msgid "       Select Bookmark"
+msgstr "       ¿ï¾Ü®ÑÅÒ"
+
+#. #define MULTIBOOKMARKS_EHEAD_MASK
+#: LYMessages.c:648
+#, c-format
+msgid "Editing Bookmark DESCRIPTION and FILEPATH (%d of 2)"
+msgstr ""
+
+#. #define MULTIBOOKMARKS_EHEAD
+#: LYMessages.c:650
+msgid "         Editing Bookmark DESCRIPTION and FILEPATH"
+msgstr "         ­×§ï¦³Ãö®ÑÅÒªº»¡©ú¤ÎÀɮ׸ô®|"
+
+#: LYMessages.c:651
+msgid "Letter: "
+msgstr "¦r¥À¡G"
+
+#. #define USE_PATH_OFF_HOME
+#: LYMessages.c:654
+msgid "Use a filepath off your login directory in SHELL syntax!"
+msgstr ""
+
+#: LYMessages.c:656
+msgid "Use a filepath off your home directory!"
+msgstr ""
+
+#. #define MAXLINKS_REACHED
+#: LYMessages.c:659
+msgid "Maximum links per page exceeded!  Use half-page or two-line scrolling."
+msgstr ""
+
+#: LYMessages.c:660
+msgid "No previously visited links available!"
+msgstr "µLªk´£¨Ñ¤§«eÂsÄý¹LªºÃìµ²¡I"
+
+#: LYMessages.c:661
+msgid "Memory exhausted!  Program aborted!"
+msgstr "°O¾ÐÅé¯ÓºÉ¡Iµ{¦¡¥²¶·¤¤¤î¡I"
+
+#: LYMessages.c:662
+msgid "Memory exhausted!  Aborting..."
+msgstr "°O¾ÐÅé¯ÓºÉ¡Iµ{¦¡¤¤¤î..."
+
+#: LYMessages.c:663
+msgid "Not enough memory!"
+msgstr "°O¾ÐÅ餣¨¬¡I"
+
+#: LYMessages.c:664
+msgid "Directory/File Manager not available"
+msgstr "µLªk´£¨Ñ¥Ø¿ý/Àɮ׺޲z¥\¯à"
+
+#: LYMessages.c:665
+msgid "HREF in BASE tag is not an absolute URL."
+msgstr "BASE ¼ÐÅÒªº HREF ¤£¬O¦³µ´¹ï¸ô®|ªº URL¡C"
+
+#: LYMessages.c:666
+msgid "Location URL is not absolute."
+msgstr ""
+
+#: LYMessages.c:667
+msgid "Refresh URL is not absolute."
+msgstr "·Ç³Æ§ó·sªº URL ¤¤¨S¦³µ´¹ï¸ô®|¡C"
+
+#. #define SENDING_MESSAGE_WITH_BODY_TO
+#: LYMessages.c:669
+msgid ""
+"You are sending a message with body to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:670
+msgid ""
+"You are sending a comment to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:671
+msgid ""
+"\n"
+" With copy to:\n"
+"  "
+msgstr ""
+
+#: LYMessages.c:672
+msgid ""
+"\n"
+" With copies to:\n"
+"  "
+msgstr ""
+
+#. #define CTRL_G_TO_CANCEL_SEND
+#: LYMessages.c:674
+msgid ""
+"\n"
+"\n"
+"Use Ctrl-G to cancel if you do not want to send a message\n"
+msgstr ""
+"\n"
+"\n"
+"¦pªG¤£·Q°e¥X°T®§¡A½Ð«ö Ctrl-G ¨ú®ø\n"
+
+#. #define ENTER_NAME_OR_BLANK
+#: LYMessages.c:676
+msgid ""
+"\n"
+" Please enter your name, or leave it blank to remain anonymous\n"
+msgstr ""
+"\n"
+" ½Ð¿é¤J»Õ¤Uªº©m¦W¡A©Î¬O±N¦WºÙ¯dªÅ¥NªíµL¦W¤ó\n"
+
+#. #define ENTER_MAIL_ADDRESS_OR_OTHER
+#: LYMessages.c:678
+msgid ""
+"\n"
+" Please enter a mail address or some other\n"
+msgstr ""
+"\n"
+" ¦pªG»Ý­n¹ï¤è¦^ÂСA½Ð¶ñ¤W¹q¶l\n"
+
+#. #define MEANS_TO_CONTACT_FOR_RESPONSE
+#: LYMessages.c:680
+msgid " means to contact you, if you desire a response.\n"
+msgstr " ¦a§}©Î¨ä¥¦Ápµ¸¤èªk¡C\n"
+
+#: LYMessages.c:681
+msgid ""
+"\n"
+" Please enter a subject line.\n"
+msgstr ""
+"\n"
+" ½Ð¿é¤J¼ÐÃD¡C\n"
+
+#. #define ENTER_ADDRESS_FOR_CC
+#: LYMessages.c:683
+msgid ""
+"\n"
+" Enter a mail address for a CC of your message.\n"
+msgstr ""
+
+#: LYMessages.c:684
+msgid " (Leave blank if you don't want a copy.)\n"
+msgstr " (¦pªG¤£·Q¦¬¨ì°Æ¥»½Ð±N¦¹Äæ¯dªÅ¡C)\n"
+
+#: LYMessages.c:685
+msgid ""
+"\n"
+" Please review the message body:\n"
+"\n"
+msgstr ""
+"\n"
+" ½ÐÀˬd°T®§¤º®e¡G\n"
+"\n"
+
+#: LYMessages.c:686
+msgid ""
+"\n"
+"Press RETURN to continue: "
+msgstr ""
+"\n"
+"½Ð«ö RETURN Ä~Äò¡G"
+
+#: LYMessages.c:687
+msgid ""
+"\n"
+"Press RETURN to clean up: "
+msgstr ""
+
+#: LYMessages.c:688
+msgid " Use Control-U to erase the default.\n"
+msgstr " ½Ð«ö Control-U ²M°£¹w³]­È¡C\n"
+
+#: LYMessages.c:689
+msgid ""
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+" ½Ð¦b¥H¤Uªº¦a¤è¿é¤J°T®§¡C"
+
+#. #define ENTER_PERIOD_WHEN_DONE_A
+#: LYMessages.c:691 src/LYNews.c:360
+msgid ""
+"\n"
+" When you are done, press enter and put a single period (.)"
+msgstr ""
+"\n"
+" §¹¦¨«á½Ð«ö enter¡AµM«á¦b¤U¤@¦æ"
+
+#. #define ENTER_PERIOD_WHEN_DONE_B
+#: LYMessages.c:693 src/LYNews.c:361
+msgid ""
+"\n"
+" on a line and press enter again."
+msgstr ""
+"\n"
+" ¥u¿é¤J¤@ÂI (.) ¨Ã¥B¦A«ö enter¡C"
+
+#. Cookies messages
+#. #define ADVANCED_COOKIE_CONFIRMATION
+#: LYMessages.c:697
+#, c-format
+msgid "%s cookie: %.*s=%.*s  Allow? (Y/N/Always/neVer)"
+msgstr "%s cookie¡G%.*s=%.*s  ¬O§_±µ¨ü¡H (Y/N/Always/neVer)"
+
+#. #define INVALID_COOKIE_DOMAIN_CONFIRMATION
+#: LYMessages.c:699
+#, c-format
+msgid "Accept invalid cookie domain=%s for '%s'?"
+msgstr "¬O§_±µ¨ü domain=%s¡A¤@­Ó¥Ñ¡¥%s¡¦µo¥XªºµL®Ä cookie¡H"
+
+#. #define INVALID_COOKIE_PATH_CONFIRMATION
+#: LYMessages.c:701
+#, c-format
+msgid "Accept invalid cookie path=%s as a prefix of '%s'?"
+msgstr ""
+
+#: LYMessages.c:702
+msgid "Allowing this cookie."
+msgstr "±µ¨ü¦¹ cookie¡C"
+
+#: LYMessages.c:703
+msgid "Rejecting this cookie."
+msgstr "©Úµ´¦¹ cookie¡C"
+
+#: LYMessages.c:704
+msgid "The Cookie Jar is empty."
+msgstr "¨S¦³Àx¦s¥ô¦ó cookie¡C"
+
+#: LYMessages.c:705
+#, fuzzy
+msgid "The Cache Jar is empty."
+msgstr "¨S¦³Àx¦s¥ô¦ó cookie¡C"
+
+#. #define ACTIVATE_TO_GOBBLE
+#: LYMessages.c:707
+msgid "Activate links to gobble up cookies or entire domains,"
+msgstr ""
+
+#: LYMessages.c:708
+msgid "or to change a domain's 'allow' setting."
+msgstr ""
+
+#: LYMessages.c:709
+msgid "(Cookies never allowed.)"
+msgstr "(¥Ã¤£±µ¨ü cookie¡C)"
+
+#: LYMessages.c:710
+msgid "(Cookies always allowed.)"
+msgstr "(¤@©w±µ¨ü cookie¡C)"
+
+#: LYMessages.c:711
+msgid "(Cookies allowed via prompt.)"
+msgstr "(¨C¦¸³£¸ß°Ý¨Ï¥ÎªÌ¬O§_±µ¨ü cookie¡C)"
+
+#: LYMessages.c:712
+msgid "(Persistent Cookies.)"
+msgstr ""
+
+#: LYMessages.c:713
+msgid "(No title.)"
+msgstr ""
+
+#: LYMessages.c:714
+msgid "(No name.)"
+msgstr ""
+
+#: LYMessages.c:715
+msgid "(No value.)"
+msgstr ""
+
+#: LYMessages.c:716 src/LYOptions.c:2402
+msgid "None"
+msgstr ""
+
+#: LYMessages.c:717
+msgid "(End of session.)"
+msgstr ""
+
+#: LYMessages.c:718
+msgid "Delete this cookie?"
+msgstr "¬O§_§R°£¸Ó cookie¡H"
+
+#: LYMessages.c:719
+msgid "The cookie has been eaten!"
+msgstr "¸Ó cookie ¤w¸g³Q§R°£¤F¡I"
+
+#: LYMessages.c:720
+msgid "Delete this empty domain?"
+msgstr "¬O§_§R°£¸ÓªÅ¥Õªººô°ì¡H"
+
+#: LYMessages.c:721
+msgid "The domain has been eaten!"
+msgstr "¤w¸g§R°£¸Óºô°ì¡I"
+
+#. #define DELETE_COOKIES_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:723
+msgid "D)elete domain's cookies, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)§R°£ºô°ìªº cookie  A)¤@©w±µ¨ü cookie  P)¸ß°Ý¬O§_±µ¨ü  V)¥Ã¤£±µ¨ü  C)¨ú®ø"
+
+#. #define DELETE_DOMAIN_SET_ALLOW_OR_CANCEL
+#: LYMessages.c:725
+msgid "D)elete domain, set allow A)lways/P)rompt/neV)er, or C)ancel? "
+msgstr "D)§R°£ºô°ì  A)¤@©w±µ¨ü cookie  P)¸ß°Ý¬O§_±µ¨ü  V)¥Ã¤£±µ¨ü  C)¨ú®ø"
+
+#: LYMessages.c:726
+msgid "All cookies in the domain have been eaten!"
+msgstr "¤w¸g§R°£©Ò¦³¨Ó¦Û¸Óºô°ìªº cookie¡I"
+
+#: LYMessages.c:727
+#, c-format
+msgid "'A'lways allowing from domain '%s'."
+msgstr "¤@©w±µ¨ü¨Ó¦Ûºô°ì¡¥%s¡¦ªº cookie¡C"
+
+#: LYMessages.c:728
+#, c-format
+msgid "ne'V'er allowing from domain '%s'."
+msgstr "¥Ã»·¤£±µ¨ü¨Ó¦Ûºô°ì¡¥%s¡¦ªº cookie¡C"
+
+#: LYMessages.c:729
+#, c-format
+msgid "'P'rompting to allow from domain '%s'."
+msgstr "(¨C¦¸³£¸ß°Ý¬O§_±µ¨ü¨Ó¦Ûºô°ì¡¥%s¡¦ªº cookie¡C)"
+
+#: LYMessages.c:730
+msgid "Delete all cookies in this domain?"
+msgstr "¬O§_§R°£©Ò¦³¨Ó¦Û¸Óºô°ìªº cookie¡H"
+
+#: LYMessages.c:731
+msgid "All of the cookies in the jar have been eaten!"
+msgstr "¤w¸g§R°£©Ò¦³ cookie¡I"
+
+#: LYMessages.c:733
+msgid "Port 19 not permitted in URLs."
+msgstr "URL ¸Ì¤£¤¹³\¨Ï¥Î³s±µ°ð¸¹½X 19¡C"
+
+#: LYMessages.c:734
+msgid "Port 25 not permitted in URLs."
+msgstr "URL ¸Ì¤£¤¹³\¨Ï¥Î³s±µ°ð¸¹½X 25¡C"
+
+#: LYMessages.c:735
+#, c-format
+msgid "Port %lu not permitted in URLs."
+msgstr "URL ¸Ì¤£¤¹³\¨Ï¥Î³s±µ°ð¸¹½X %lu¡C"
+
+#: LYMessages.c:736
+msgid "URL has a bad port field."
+msgstr ""
+
+#: LYMessages.c:737
+msgid "Maximum nesting of HTML elements exceeded."
+msgstr ""
+
+#: LYMessages.c:738
+msgid "Bad partial reference!  Stripping lead dots."
+msgstr ""
+
+#: LYMessages.c:739
+msgid "Trace Log open failed.  Trace off!"
+msgstr ""
+
+#: LYMessages.c:740
+msgid "Lynx Trace Log"
+msgstr ""
+
+#: LYMessages.c:741
+msgid "No trace log has been started for this session."
+msgstr ""
+
+#. #define MAX_TEMPCOUNT_REACHED
+#: LYMessages.c:743
+msgid "The maximum temporary file count has been reached!"
+msgstr "¤v¹F¨ì¥i±µ¨üªº¼È¦sÀɼƥؤW­­¡I"
+
+#. #define FORM_VALUE_TOO_LONG
+#: LYMessages.c:745
+msgid "Form field value exceeds buffer length!  Trim the tail."
+msgstr ""
+
+#. #define FORM_TAIL_COMBINED_WITH_HEAD
+#: LYMessages.c:747
+msgid "Modified tail combined with head of form field value."
+msgstr ""
+
+#. HTFile.c
+#: LYMessages.c:750
+msgid "Directory"
+msgstr "¥Ø¿ý"
+
+#: LYMessages.c:751
+msgid "Directory browsing is not allowed."
+msgstr "¤£¤¹³\ÂsÄý¥Ø¿ý¡C"
+
+#: LYMessages.c:752
+msgid "Selective access is not enabled for this directory"
+msgstr ""
+
+#: LYMessages.c:753
+msgid "Multiformat: directory scan failed."
+msgstr ""
+
+#: LYMessages.c:754
+msgid "This directory is not readable."
+msgstr "¨S¦³Åª¨ú¸Ó¥Ø¿ýªºÅv­­¡C"
+
+#: LYMessages.c:755
+msgid "Can't access requested file."
+msgstr "µLªk¦s¨ú©Ò­n¨DªºÀɮסC"
+
+#: LYMessages.c:756
+msgid "Could not find suitable representation for transmission."
+msgstr ""
+
+#: LYMessages.c:757
+msgid "Could not open file for decompression!"
+msgstr "µLªk¶}±Ò·Ç³Æ¸ÑÀ£ªºÀɮסI"
+
+#: LYMessages.c:758
+msgid "Files:"
+msgstr "ÀɮסG"
+
+#: LYMessages.c:759
+msgid "Subdirectories:"
+msgstr "°Æ¥Ø¿ý¡G"
+
+#: LYMessages.c:760
+msgid " directory"
+msgstr " ¥Ø¿ý"
+
+#: LYMessages.c:761
+msgid "Up to "
+msgstr ""
+
+#: LYMessages.c:762
+msgid "Current directory is "
+msgstr "¥Ø«eªº¥Ø¿ý¬O "
+
+#. HTGopher.c
+#: LYMessages.c:765
+msgid "No response from server!"
+msgstr "¦øªA¾¹¨S¦³¦^À³¡I"
+
+#: LYMessages.c:766
+msgid "CSO index"
+msgstr "CSO ¯Á¤Þ"
+
+#: LYMessages.c:767
+msgid ""
+"\n"
+"This is a searchable index of a CSO database.\n"
+msgstr ""
+
+#: LYMessages.c:768
+msgid "CSO Search Results"
+msgstr "CSO ·j´Mµ²ªG"
+
+#: LYMessages.c:769
+#, c-format
+msgid "Seek fail on %s\n"
+msgstr ""
+
+#: LYMessages.c:770
+msgid ""
+"\n"
+"Press the 's' key and enter search keywords.\n"
+msgstr ""
+"\n"
+"½Ð«ö¡¥s¡¦¨Ã¿é¤J·Ç³Æ·j´MªºÃöÁä¦r¡C\n"
+
+#: LYMessages.c:771
+msgid ""
+"\n"
+"This is a searchable Gopher index.\n"
+msgstr ""
+"\n"
+"³o¬O¤@­Ó¥i¥H¶i¦æ·j´Mªº Gopher ¯Á¤Þ¡C\n"
+
+#: LYMessages.c:772
+msgid "Gopher index"
+msgstr "Gopher ¯Á¤Þ"
+
+#: LYMessages.c:773
+msgid "Gopher Menu"
+msgstr "Gopher ¿ï³æ"
+
+#: LYMessages.c:774
+msgid " Search Results"
+msgstr " ·j´Mµ²ªG"
+
+#: LYMessages.c:775
+msgid "Sending CSO/PH request."
+msgstr "¥¿¦b°e¥X CSO/PH ­n¨D¡C"
+
+#: LYMessages.c:776
+msgid "Sending Gopher request."
+msgstr "¥¿¦b°e¥X Gopher ­n¨D¡C"
+
+#: LYMessages.c:777
+msgid "CSO/PH request sent; waiting for response."
+msgstr "¤w¶i¥X CSO/PH ­n¨D¡F¥¿¦bµ¥«Ý¦^À³¡C"
+
+#: LYMessages.c:778
+msgid "Gopher request sent; waiting for response."
+msgstr "¤w¶i¥X Gopher ­n¨D¡F¥¿¦bµ¥«Ý¦^À³¡C"
+
+#: LYMessages.c:779
+msgid ""
+"\n"
+"Please enter search keywords.\n"
+msgstr ""
+"\n"
+"½Ð¿é¤J·Ç³Æ·j´MªºÃöÁä¦r¡C\n"
+
+#: LYMessages.c:780
+msgid ""
+"\n"
+"The keywords that you enter will allow you to search on a"
+msgstr ""
+
+#: LYMessages.c:781
+msgid " person's name in the database.\n"
+msgstr ""
+
+#. HTNews.c
+#: LYMessages.c:784
+msgid "Connection closed ???"
+msgstr "³s½uÃö³¬¤F???"
+
+#: LYMessages.c:785
+msgid "Cannot open temporary file for news POST."
+msgstr ""
+
+#: LYMessages.c:786
+msgid "This client does not contain support for posting to news with SSL."
+msgstr ""
+
+#. HTStyle.c
+#: LYMessages.c:789
+#, c-format
+msgid "Style %d `%s' SGML:%s.  Font %s %.1f point.\n"
+msgstr ""
+
+#: LYMessages.c:791
+#, c-format
+msgid "\tAlign=%d, %d tabs. (%.0f before, %.0f after)\n"
+msgstr ""
+
+#: LYMessages.c:792
+#, c-format
+msgid "\t\tTab kind=%d at %.0f\n"
+msgstr ""
+
+#. HTTP.c
+#: LYMessages.c:795
+msgid "Can't proceed without a username and password."
+msgstr "µLªkÄ~Äò¡A¦]¬°¨S¦³±b¤á¦WºÙ¤Î±K½X¡C"
+
+#: LYMessages.c:796
+msgid "Can't retry with authorization!  Contact the server's WebMaster."
+msgstr ""
+
+#: LYMessages.c:797
+msgid "Can't retry with proxy authorization!  Contact the server's WebMaster."
+msgstr ""
+
+#: LYMessages.c:798
+msgid "Retrying with proxy authorization information."
+msgstr "¥H¥N²z¦øªAµ{¦¡ªº»{ÃÒ¸ê°T­«·s¹Á¸Õ¡C"
+
+#: LYMessages.c:799
+#, fuzzy, c-format
+msgid "SSL error:%s-Continue?"
+msgstr "SSL ¿ù»~¡G¥D¾÷(%s)¤£²Å¦XÃÒ®Ñ(%s)¡C¬O§_Ä~Äò¡H"
+
+#. HTWAIS.c
+#: LYMessages.c:802
+msgid "HTWAIS: Return message too large."
+msgstr "HTWAIS¡G¦^¶Çªº°T®§¹Lªø¡C"
+
+#: LYMessages.c:803
+msgid "Enter WAIS query: "
+msgstr ""
+
+#. Miscellaneous status
+#: LYMessages.c:806
+msgid "Retrying as HTTP0 request."
+msgstr "¥H HTTP0 ®æ¦¡­«¸Õ¡C"
+
+#: LYMessages.c:807
+#, c-format
+msgid "Transferred %d bytes"
+msgstr "¤w¶Ç¿é %d ¦ì¤¸²Õ"
+
+#: LYMessages.c:808
+msgid "Data transfer complete"
+msgstr "¸ê®Æ¶Ç¿é¤w§¹¦¨"
+
+#: LYMessages.c:809
+#, c-format
+msgid "Error processing line %d of %s\n"
+msgstr ""
+
+#. Lynx internal page titles
+#: LYMessages.c:812
+msgid "Address List Page"
+msgstr ""
+
+#: LYMessages.c:813
+msgid "Bookmark file"
+msgstr "®ÑÅÒÀÉ"
+
+#: LYMessages.c:814
+msgid "Configuration Definitions"
+msgstr ""
+
+#: LYMessages.c:815
+msgid "Cookie Jar"
+msgstr ""
+
+#: LYMessages.c:816
+msgid "Current Key Map"
+msgstr "¥Ø«eªº«öÁä³]©w"
+
+#: LYMessages.c:817
+msgid "File Management Options"
+msgstr "Àɮ׺޲z¿ï¶µ"
+
+#: LYMessages.c:818
+msgid "Download Options"
+msgstr "¤U¸ü¿ï¶µ"
+
+#: LYMessages.c:819
+msgid "History Page"
+msgstr "ÂsÄý¬ö¿ý"
+
+#: LYMessages.c:820
+msgid "Cache Jar"
+msgstr ""
+
+#: LYMessages.c:821
+msgid "List Page"
+msgstr "Ãìµ²²M³æ"
+
+#: LYMessages.c:822
+msgid "Lynx.cfg Information"
+msgstr "Lynx.cfg ¸ê°T"
+
+#: LYMessages.c:823
+msgid "Converted Mosaic Hotlist"
+msgstr ""
+
+#: LYMessages.c:824
+msgid "Options Menu"
+msgstr "¿ï¶µ³]©w"
+
+#: LYMessages.c:825
+msgid "File Permission Options"
+msgstr "ÀÉ®×Åv­­¿ï¶µ"
+
+#: LYMessages.c:826
+msgid "Printing Options"
+msgstr "¦C¦L¿ï¶µ"
+
+#: LYMessages.c:827
+msgid "Information about the current document"
+msgstr "¦³Ãö¥Ø«eªº¤å¥óªº¸ê®Æ"
+
+#: LYMessages.c:828
+msgid "Your recent statusline messages"
+msgstr "ª¬ºA¦C³Ìªñ¥X²{ªº°T®§"
+
+#: LYMessages.c:829
+msgid "Upload Options"
+msgstr "¤W¶Ç¿ï¶µ"
+
+#: LYMessages.c:830
+msgid "Visited Links Page"
+msgstr ""
+
+#. CONFIG_DEF_TITLE subtitles
+#: LYMessages.c:833
+msgid "See also"
+msgstr ""
+
+#: LYMessages.c:834
+msgid "your"
+msgstr ""
+
+#: LYMessages.c:835
+msgid "for runtime options"
+msgstr ""
+
+#: LYMessages.c:836
+msgid "compile time options"
+msgstr "½sĶ¿ï¶µ"
+
+#: LYMessages.c:837
+#, fuzzy
+msgid "color-style configuration"
+msgstr "¥D­n²ÕºA"
+
+#: LYMessages.c:838
+msgid "latest release"
+msgstr "³Ì·sª©¥»"
+
+#: LYMessages.c:839
+msgid "pre-release version"
+msgstr "¹wÄýª©¥»"
+
+#: LYMessages.c:840
+msgid "development version"
+msgstr "¶}µo¤¤ª©¥»"
+
+#. #define AUTOCONF_CONFIG_CACHE
+#: LYMessages.c:842
+msgid ""
+"The following data were derived during the automatic configuration/build\n"
+"process of this copy of Lynx.  When reporting a bug, please include a copy\n"
+"of this page."
+msgstr ""
+
+#. #define AUTOCONF_LYNXCFG_H
+#: LYMessages.c:846
+msgid ""
+"The following data were used as automatically-configured compile-time\n"
+"definitions when this copy of Lynx was built."
+msgstr ""
+
+#. #define DIRED_NOVICELINE
+#: LYMessages.c:851
+msgid "  C)reate  D)ownload  E)dit  F)ull menu  M)odify  R)emove  T)ag  U)pload     \n"
+msgstr "  C)«Ø¥ß  D)¤U¸ü  E)½s¿è  F)§¹¾ã¿ï³æ  M)­×§ï  R)²¾°£  T)¼Ð°O  U)¤W¶Ç\n"
+
+#: LYMessages.c:852
+msgid "Failed to obtain status of current link!"
+msgstr "µLªkÀò¨ú¥Ø«eªºÃìµ²ªºª¬ºA¡I"
+
+#. #define INVALID_PERMIT_URL
+#: LYMessages.c:855
+msgid "Special URL only valid from current File Permission menu!"
+msgstr ""
+
+#: LYMessages.c:859
+msgid "External support is currently disabled."
+msgstr ""
+
+#. new with 2.8.4dev.21
+#: LYMessages.c:863
+msgid "Changing working-directory is currently disabled."
+msgstr ""
+
+#: LYMessages.c:864
+msgid "Linewrap OFF!"
+msgstr "¤wÃö³¬¦Û°Ê´«¦æ¥\¯à¡I"
+
+#: LYMessages.c:865
+msgid "Linewrap ON!"
+msgstr "¤w¶}±Ò¦Û°Ê´«¦æ¥\¯à¡I"
+
+#: LYMessages.c:866
+msgid "Parsing nested-tables toggled OFF!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:867
+msgid "Parsing nested-tables toggled ON!  Reloading..."
+msgstr ""
+
+#: LYMessages.c:868
+msgid "Shifting is disabled while line-wrap is in effect"
+msgstr ""
+
+#: LYMessages.c:869
+msgid "Trace not supported"
+msgstr ""
+
+#: LYMessages.c:790
+#, c-format
+msgid "\tIndents: first=%.0f others=%.0f, Height=%.1f Desc=%.1f\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:626
+#, c-format
+msgid "Username for '%s' at %s '%s%s':"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:894
+msgid "This client doesn't know how to compose proxy authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:971
+msgid "This client doesn't know how to compose authorization information for scheme"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAABrow.c:1079
+#, c-format
+msgid "Invalid header '%s%s%s%s%s'"
+msgstr "µL®Äªº¼ÐÀY¤º®e¡¥%s%s%s%s%s¡¦"
+
+#: WWW/Library/Implementation/HTAABrow.c:1181
+msgid "Proxy authorization required -- retrying"
+msgstr "¨Ï¥Î¥N²z¦øªA¾¹«e»Ý­n»{ÃÒ ¢w ­«·s¹Á¸Õ"
+
+#: WWW/Library/Implementation/HTAABrow.c:1239
+msgid "Access without authorization denied -- retrying"
+msgstr "¤´¥¼»{ÃÒ¡AµLªk¦s¨ú¤º®e ¢w ­«·s¹Á¸Õ"
+
+#: WWW/Library/Implementation/HTAccess.c:688
+msgid "Access forbidden by rule"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:783
+msgid "Document with POST content not found in cache.  Resubmit?"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:938
+msgid "Loading failed, use a previous copy."
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1047 src/GridText.c:8546
+msgid "Loading incomplete."
+msgstr "¥¼§¹¦¨¸ü¤J¤º®e¡C"
+
+#: WWW/Library/Implementation/HTAccess.c:1078
+#, c-format
+msgid "**** HTAccess: socket or file number returned by obsolete load routine!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTAccess.c:1080
+#, c-format
+msgid "**** HTAccess: Internal software error.  Please mail lynx-dev@nongnu.org!\n"
+msgstr "**** HTAccess¡G¤º³¡µ{¦¡¿ù»~¡C½Ð±H¹q¶l¦Ü lynx-dev@nongnu.org¡I\n"
+
+#: WWW/Library/Implementation/HTAccess.c:1081
+#, c-format
+msgid "**** HTAccess: Status returned was: %d\n"
+msgstr "**** HTAccess¡G¦^¶Çªºª¬ºA¬°¡G%d\n"
+
+#.
+#. * hack: if we fail in HTAccess.c
+#. * avoid duplicating URL, oh.
+#.
+#: WWW/Library/Implementation/HTAccess.c:1087 src/LYMainLoop.c:7779
+msgid "Can't Access"
+msgstr "µLªk¦s¨ú"
+
+#: WWW/Library/Implementation/HTAccess.c:1095
+msgid "Unable to access document."
+msgstr "µLªk¦s¨ú¤å¥ó¡C"
+
+#: WWW/Library/Implementation/HTFTP.c:843
+#, c-format
+msgid "Enter password for user %s@%s:"
+msgstr "½Ð¿é¤J¨Ï¥ÎªÌ %s@%s ªº±K½X¡G"
+
+#: WWW/Library/Implementation/HTFTP.c:871
+msgid "Unable to connect to FTP host."
+msgstr "µLªkÁpµ¸ FTP ¥D¾÷¡C"
+
+#: WWW/Library/Implementation/HTFTP.c:1152
+msgid "close master socket"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:1214
+msgid "socket for master socket"
+msgstr ""
+
+#.
+#. * It's a symbolic link, does the user care about knowing if it is
+#. * symbolic?  I think so since it might be a directory.
+#.
+#: WWW/Library/Implementation/HTFTP.c:1733 WWW/Library/Implementation/HTFTP.c:2350
+msgid "Symbolic Link"
+msgstr "²Å¸¹³sµ²"
+
+#: WWW/Library/Implementation/HTFTP.c:2707
+msgid "Receiving FTP directory."
+msgstr "¥¿¦b±µ¦¬ FTP ¥Ø¿ý¤º®e¡C"
+
+#: WWW/Library/Implementation/HTFTP.c:2843
+#, c-format
+msgid "Transferred %d bytes (%5d)"
+msgstr "¤w¶Ç°e %d ¦ì¤¸²Õ (%5d)"
+
+#: WWW/Library/Implementation/HTFTP.c:3194
+msgid "connect for data"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFTP.c:3855
+msgid "Receiving FTP file."
+msgstr "¥¿¦b±µ¦¬ FTP ¥Ø¿ý¡C"
+
+#: WWW/Library/Implementation/HTFinger.c:273
+msgid "Could not set up finger connection."
+msgstr "µLªk«Ø¥ß finger ³s½u¡C"
+
+#: WWW/Library/Implementation/HTFinger.c:320
+msgid "Could not load data (no sitename in finger URL)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTFinger.c:326
+msgid "Invalid port number - will only use port 79!"
+msgstr "µL®Äªº³s±µ°ð¸¹½X ¢w ¥u·|¨Ï¥Î³s±µ°ð¸¹ 79¡I"
+
+#: WWW/Library/Implementation/HTFinger.c:392
+msgid "Could not access finger host."
+msgstr "µLªk¦s¨ú finger ¥D¾÷¤Wªº¸ê®Æ¡C"
+
+#: WWW/Library/Implementation/HTFinger.c:400
+msgid "No response from finger server."
+msgstr "finger ¦øªA¾¹¨S¦³¦^À³¡C"
+
+#: WWW/Library/Implementation/HTNews.c:426
+#, c-format
+msgid "Username for news host '%s':"
+msgstr "·s»D²Õ¥D¾÷¡¥%s¡¦ªº±b¤á¦WºÙ¡G"
+
+#: WWW/Library/Implementation/HTNews.c:479
+msgid "Change username?"
+msgstr "¬O§_§ó§ï±b¤á¦WºÙ¡H"
+
+#: WWW/Library/Implementation/HTNews.c:483
+msgid "Username:"
+msgstr "±b¤á¦WºÙ¡G"
+
+#: WWW/Library/Implementation/HTNews.c:508
+#, c-format
+msgid "Password for news host '%s':"
+msgstr "·s»D²Õ¥D¾÷¡¥%s¡¦ªº±K½X¡G"
+
+#: WWW/Library/Implementation/HTNews.c:591
+msgid "Change password?"
+msgstr "¬O§_§ó§ï±K½X¡H"
+
+#: WWW/Library/Implementation/HTNews.c:1711
+#, c-format
+msgid "No matches for: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1761
+msgid ""
+"\n"
+"No articles in this group.\n"
+msgstr ""
+"\n"
+"¦¹·s»D²Õ¨S¦³¥ô¦ó¤å³¹¡C\n"
+
+#: WWW/Library/Implementation/HTNews.c:1773
+msgid ""
+"\n"
+"No articles in this range.\n"
+msgstr ""
+
+#.
+#. * Set window title.
+#.
+#: WWW/Library/Implementation/HTNews.c:1786
+#, c-format
+msgid "%s,  Articles %d-%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1809
+msgid "Earlier articles"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1822
+#, c-format
+msgid ""
+"\n"
+"There are about %d articles currently available in %s, IDs as follows:\n"
+"\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:1884
+msgid "All available articles in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2098
+msgid "Later articles"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2121
+msgid "Post to "
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2342
+msgid "This client does not contain support for SNEWS URLs."
+msgstr "¦¹ª©¥»ªºµ{¦¡¤£¤ä´© SNEWS URL¡C"
+
+#: WWW/Library/Implementation/HTNews.c:2550
+msgid "No target for raw text!"
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2581
+msgid "Connecting to NewsHost ..."
+msgstr "¥¿¦bÁpµ¸·s»D²Õ¥D¾÷ ..."
+
+#: WWW/Library/Implementation/HTNews.c:2633
+#, c-format
+msgid "Could not access %s."
+msgstr "µLªk¦s¨ú %s¡C"
+
+#: WWW/Library/Implementation/HTNews.c:2739
+#, c-format
+msgid "Can't read news info.  News host %.20s responded: %.200s"
+msgstr "µLªkŪ¨ú·s»D²Õ¸ê°T¡C·s»D²Õ¦øªA¾¹ %.20s ¦^À³¡G%.200s"
+
+#: WWW/Library/Implementation/HTNews.c:2743
+#, c-format
+msgid "Can't read news info, empty response from host %s"
+msgstr ""
+
+#.
+#. * List available newsgroups.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2947
+msgid "Reading list of available newsgroups."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:2968
+msgid "Reading list of articles in newsgroup."
+msgstr "¥¿¦bŪ¨ú·s»D²Õ¤¤ªº¤å³¹²M³æ¡C"
+
+#.
+#. * Get an article from a news group.  - FM
+#.
+#: WWW/Library/Implementation/HTNews.c:2974
+msgid "Reading news article."
+msgstr ""
+
+#: WWW/Library/Implementation/HTNews.c:3004
+msgid "Sorry, could not load requested news."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1282
+msgid "Address has invalid port"
+msgstr "¦a§}¤¤ªº³s±µ°ðµL®Ä"
+
+#: WWW/Library/Implementation/HTTCP.c:1358
+msgid "Address length looks invalid"
+msgstr "¦a§}ªø«×¦ü¥GµL®Ä"
+
+#: WWW/Library/Implementation/HTTCP.c:1618 WWW/Library/Implementation/HTTCP.c:1636
+#, c-format
+msgid "Unable to locate remote host %s."
+msgstr "§ä¤£¨ì»·ºÝ¥D¾÷ %s¡C"
+
+#. Not HTProgress, so warning won't be overwritten immediately;
+#. * but not HTAlert, because typically there will be other
+#. * alerts from the callers.  - kw
+#.
+#: WWW/Library/Implementation/HTTCP.c:1633 WWW/Library/Implementation/HTTelnet.c:115
+#, c-format
+msgid "Invalid hostname %s"
+msgstr "µL®Äªº¥D¾÷¦WºÙ %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1647
+#, c-format
+msgid "Making %s connection to %s"
+msgstr "¥¿¦b«Ø¥ß %s ³s½u¡A³s¦Ü %s"
+
+#: WWW/Library/Implementation/HTTCP.c:1658
+msgid "socket failed."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1671
+#, c-format
+msgid "socket failed: family %d addr %s port %s."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1695
+msgid "Could not make connection non-blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:1763
+msgid "Connection failed (too many retries)."
+msgstr "³s½u¥¢±Ñ (­«¸Õ¦¸¼Æ¤Ó¦h)¡C"
+
+#: WWW/Library/Implementation/HTTCP.c:1950
+msgid "Could not restore socket to blocking."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTCP.c:2016
+#, fuzzy
+msgid "Socket read failed (too many tries)."
+msgstr "³s½u¥¢±Ñ (­«¸Õ¦¸¼Æ¤Ó¦h)¡C"
+
+#: WWW/Library/Implementation/HTTP.c:84
+#, c-format
+msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:406
+#, c-format
+msgid "Address contains a username: %s"
+msgstr "¦a¤î¤¤§t¦³±b¤á¦WºÙ¡G%s"
+
+#: WWW/Library/Implementation/HTTP.c:460
+#, c-format
+msgid "Certificate issued by: %s"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:620
+msgid "This client does not contain support for HTTPS URLs."
+msgstr "¦¹ÂsÄý¾¹¤£¤ä´© HTTPS URL¡C"
+
+#: WWW/Library/Implementation/HTTP.c:645
+msgid "Unable to connect to remote host."
+msgstr "µLªkÁpµ¸»·ºÝ¥D¾÷¡C"
+
+#: WWW/Library/Implementation/HTTP.c:669
+msgid "Retrying connection without TLS."
+msgstr "¹Á¸Õ¥H¤£¥Î TLS ªº¤è¦¡³s½u¡C"
+
+#: WWW/Library/Implementation/HTTP.c:714
+msgid "no issuer was found"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:716
+msgid "issuer is not a CA"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:718
+msgid "the certificate has no known issuer"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:720
+#, fuzzy
+msgid "the certificate has been revoked"
+msgstr "¸Ó cookie ¤w¸g³Q§R°£¤F¡I"
+
+#: WWW/Library/Implementation/HTTP.c:722
+msgid "the certificate is not trusted"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:807
+#, c-format
+msgid "Verified connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:855 WWW/Library/Implementation/HTTP.c:901
+#, c-format
+msgid "Verified connection to %s (subj=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:931
+msgid "Can't find common name in certificate"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:934
+#, c-format
+msgid "SSL error:host(%s)!=cert(%s)-Continue?"
+msgstr "SSL ¿ù»~¡G¥D¾÷(%s)¤£²Å¦XÃÒ®Ñ(%s)¡C¬O§_Ä~Äò¡H"
+
+#: WWW/Library/Implementation/HTTP.c:947
+#, c-format
+msgid "UNVERIFIED connection to %s (cert=%s)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:956
+#, c-format
+msgid "Secure %d-bit %s (%s) HTTP connection"
+msgstr "%d ¦ì¤¸ %s (%s) ¦w¥þ HTTP ³s½u"
+
+#: WWW/Library/Implementation/HTTP.c:1426
+msgid "Sending HTTP request."
+msgstr "¥¿¦b°e¥X HTTP ­n¨D¡C"
+
+#: WWW/Library/Implementation/HTTP.c:1465
+msgid "Unexpected network write error; connection aborted."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1471
+msgid "HTTP request sent; waiting for response."
+msgstr "¤w¶i¥X HTTP ­n¨D¡F¥¿¦bµ¥«Ý¦^À³¡C"
+
+#: WWW/Library/Implementation/HTTP.c:1539
+msgid "Unexpected network read error; connection aborted."
+msgstr ""
+
+#.
+#. * HTTP/1.1 Informational statuses.
+#. * 100 Continue.
+#. * 101 Switching Protocols.
+#. * > 101 is unknown.
+#. * We should never get these, and they have only the status
+#. * line and possibly other headers, so we'll deal with them by
+#. * showing the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1733
+msgid "Got unexpected Informational Status."
+msgstr ""
+
+#.
+#. * Reset Content.  The server has fulfilled the request but
+#. * nothing is returned and we should reset any form
+#. * content.  We'll instruct the user to do that, and
+#. * restore the current document.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1767
+msgid "Request fulfilled.  Reset Content."
+msgstr ""
+
+#. Not Modified
+#.
+#. * We didn't send an "If-Modified-Since" header, so this
+#. * status is inappropriate.  We'll deal with it by showing
+#. * the full header to the user as text/plain.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:1884
+msgid "Got unexpected 304 Not Modified status."
+msgstr "¥X²{¹w®Æ¤§¥~ªº 304 Not Modified ª¬ºA¡C"
+
+#: WWW/Library/Implementation/HTTP.c:1947
+msgid "Redirection of POST content requires user approval."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:1962
+msgid "Have POST content.  Treating Permanent Redirection as Temporary.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2004
+msgid "Retrying with access authorization information."
+msgstr ""
+
+#: WWW/Library/Implementation/HTTP.c:2016
+msgid "Show the 401 message body?"
+msgstr "¬O§_Åã¥Ü 401 ¿ù»~°T®§ªººô­¶¤º®e¡H"
+
+#: WWW/Library/Implementation/HTTP.c:2059
+msgid "Show the 407 message body?"
+msgstr "¬O§_Åã¥Ü 407 ¿ù»~°T®§ªººô­¶¤º®e¡H"
+
+#.
+#. * Bad or unknown server_status number.  Take a chance and hope
+#. * there is something to display.  - FM
+#.
+#: WWW/Library/Implementation/HTTP.c:2159
+msgid "Unknown status reply from server!"
+msgstr "¦øªA¾¹µo¥X¤£©úªºª¬ºA¦^À³°T®§¡I"
+
+#: WWW/Library/Implementation/HTTelnet.c:113
+#, c-format
+msgid "remote %s session:"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:162
+msgid "Could not connect to WAIS server."
+msgstr "µLªkÁpµ¸ WAIS ¦øªA¾¹¡C"
+
+#: WWW/Library/Implementation/HTWAIS.c:170
+msgid "Could not open WAIS connection for reading."
+msgstr "µLªk¶}±Ò WAIS ³s½u¨ÓŪ¨ú¸ê®Æ¡C"
+
+#: WWW/Library/Implementation/HTWAIS.c:192
+msgid "Diagnostic code is "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:464
+msgid "Index "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:468
+#, c-format
+msgid " contains the following %d item%s relevant to \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:476
+msgid "The first figure after each entry is its relative score, "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:477
+msgid "the second is the number of lines in the item."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:519
+msgid " (bad file name)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:545
+msgid "(bad doc id)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:561
+msgid "(Short Header record, can't display)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:568
+msgid ""
+"\n"
+"Long Header record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:575
+msgid ""
+"\n"
+"Text record\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:584
+msgid ""
+"\n"
+"Headline record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:592
+msgid ""
+"\n"
+"Code record, can't display\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:696
+msgid "Syntax error in WAIS URL"
+msgstr "WAIS URL ¤¤¥X²{»yªk¿ù»~"
+
+#: WWW/Library/Implementation/HTWAIS.c:768
+msgid " (WAIS Index)"
+msgstr " (WAIS ¯Á¤Þ)"
+
+#: WWW/Library/Implementation/HTWAIS.c:775
+msgid "WAIS Index: "
+msgstr "WAIS ¯Á¤Þ¡G"
+
+#: WWW/Library/Implementation/HTWAIS.c:781
+msgid "This is a link for searching the "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:785
+msgid " WAIS Index.\n"
+msgstr " WAIS ¯Á¤Þ¡C\n"
+
+#: WWW/Library/Implementation/HTWAIS.c:814
+msgid ""
+"\n"
+"Enter the 's'earch command and then specify search words.\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:836
+msgid " (in "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:845
+msgid "WAIS Search of \""
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:849
+msgid "\" in: "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:864
+msgid "HTWAIS: Request too large."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:873
+msgid "Searching WAIS database..."
+msgstr "¥¿¦b·j´M WAIS ¸ê®Æ®w..."
+
+#: WWW/Library/Implementation/HTWAIS.c:883
+msgid "Search interrupted."
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:934
+msgid "Can't convert format of WAIS document"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWAIS.c:978
+msgid "HTWAIS: Request too long."
+msgstr ""
+
+#.
+#. * Actually do the transaction given by request_message.
+#.
+#: WWW/Library/Implementation/HTWAIS.c:992
+msgid "Fetching WAIS document..."
+msgstr ""
+
+#. display_search_response(target, retrieval_response,
+#. wais_database, keywords);
+#: WWW/Library/Implementation/HTWAIS.c:1031
+msgid "No text was returned!\n"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:296
+msgid " NOT GIVEN in source file; "
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:319
+msgid " WAIS source file"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:326
+msgid " description"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:336
+msgid "Access links"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:357
+msgid "Direct access"
+msgstr ""
+
+#. * Proxy will be used if defined, so let user know that - FM *
+#: WWW/Library/Implementation/HTWSRC.c:360
+msgid " (or via proxy server, if defined)"
+msgstr ""
+
+#: WWW/Library/Implementation/HTWSRC.c:375
+msgid "Maintainer"
+msgstr "ºûÅ@ªÌ"
+
+#: WWW/Library/Implementation/HTWSRC.c:383
+msgid "Host"
+msgstr "¥D¾÷"
+
+#: src/GridText.c:705
+msgid "Memory exhausted, display interrupted!"
+msgstr "°O¾ÐÅé¯ÓºÉ¡A¥²¶·¤¤Â_Åã¥Ü¡I"
+
+#: src/GridText.c:710
+msgid "Memory exhausted, will interrupt transfer!"
+msgstr "°O¾ÐÅé¯ÓºÉ¡A¥²¶·¤¤Â_¶Ç¿é¡I"
+
+#: src/GridText.c:3654
+msgid " *** MEMORY EXHAUSTED ***"
+msgstr "*** °O¾ÐÅé¯ÓºÉ ***"
+
+#: src/GridText.c:6089 src/GridText.c:6096 src/LYList.c:239
+msgid "unknown field or link"
+msgstr "¤£©úªºÄæ¦ì©ÎÃìµ²"
+
+#: src/GridText.c:6105
+msgid "text entry field"
+msgstr "¤å¦r¿é¤JÄæ¦ì"
+
+#: src/GridText.c:6108
+msgid "password entry field"
+msgstr "±K½X¿é¤JÄæ¦ì"
+
+#: src/GridText.c:6111
+msgid "checkbox"
+msgstr ""
+
+#: src/GridText.c:6114
+msgid "radio button"
+msgstr ""
+
+#: src/GridText.c:6117
+msgid "submit button"
+msgstr ""
+
+#: src/GridText.c:6120
+msgid "reset button"
+msgstr ""
+
+#: src/GridText.c:6123
+msgid "popup menu"
+msgstr ""
+
+#: src/GridText.c:6126
+msgid "hidden form field"
+msgstr ""
+
+#: src/GridText.c:6129
+msgid "text entry area"
+msgstr "¤å¦r¿é¤J°Ï°ì"
+
+#: src/GridText.c:6132
+msgid "range entry field"
+msgstr ""
+
+#: src/GridText.c:6135
+msgid "file entry field"
+msgstr "ÀɮצWºÙ¿é¤JÄæ¦ì"
+
+#: src/GridText.c:6138
+msgid "text-submit field"
+msgstr ""
+
+#: src/GridText.c:6141
+msgid "image-submit button"
+msgstr ""
+
+#: src/GridText.c:6144
+msgid "keygen field"
+msgstr ""
+
+#: src/GridText.c:6147
+msgid "unknown form field"
+msgstr ""
+
+#: src/GridText.c:10279
+msgid "Can't open file for uploading"
+msgstr "µLªk¶}±Ò·Ç³Æ¤W¶ÇªºÀÉ®×"
+
+#: src/GridText.c:11438
+#, c-format
+msgid "Submitting %s"
+msgstr ""
+
+#. ugliness has happened; inform user and do the best we can
+#: src/GridText.c:12491
+msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!"
+msgstr ""
+
+#. don't show previous state
+#: src/GridText.c:12628
+msgid "Wrap lines to fit displayed area?"
+msgstr "¬O§_¶i¦æ¦Û°Ê´«¦æ¨Ó²Å¦Xµe­±¤Ø¤o¡H"
+
+#: src/GridText.c:12680
+msgid "Very long lines have been wrapped!"
+msgstr ""
+
+#: src/GridText.c:13185
+msgid "Very long lines have been truncated!"
+msgstr ""
+
+#: src/HTAlert.c:164 src/LYShowInfo.c:360 src/LYShowInfo.c:364
+msgid "bytes"
+msgstr "¦ì¤¸²Õ"
+
+#.
+#. * If we know the total size of the file, we can compute
+#. * a percentage, and show a corresponding progress bar.
+#.
+#: src/HTAlert.c:300 src/HTAlert.c:324
+#, c-format
+msgid "Read %s of data"
+msgstr "¤wŪ¨ú %s ¸ê®Æ"
+
+#: src/HTAlert.c:321
+#, c-format
+msgid "Read %s of %s of data"
+msgstr "¤wŪ¨ú %s (Á`¼Æ %s) ¸ê®Æ"
+
+#: src/HTAlert.c:330
+#, c-format
+msgid ", %s/sec"
+msgstr "¡A¨C¬í %s"
+
+#: src/HTAlert.c:342
+#, c-format
+msgid " (stalled for %s)"
+msgstr " (°±¤î¤F %s)"
+
+#: src/HTAlert.c:346
+#, c-format
+msgid ", ETA %s"
+msgstr "¡A¦ô­p %s «á§¹¦¨"
+
+#: src/HTAlert.c:368
+msgid " (Press 'z' to abort)"
+msgstr " (½Ð«ö¡¥z¡¦¤¤¤î)"
+
+#. Meta-note: don't move the following note from its place right
+#. in front of the first gettext().  As it is now, it should
+#. automatically appear in generated lynx.pot files. - kw
+#.
+#. NOTE TO TRANSLATORS:  If you provide a translation for "yes", lynx
+#. * will take the first byte of the translation as a positive response
+#. * to Yes/No questions.  If you provide a translation for "no", lynx
+#. * will take the first byte of the translation as a negative response
+#. * to Yes/No questions.  For both, lynx will also try to show the
+#. * first byte in the prompt as a character, instead of (y) or (n),
+#. * respectively.  This will not work right for multibyte charsets!
+#. * Don't translate "yes" and "no" for CJK character sets (or translate
+#. * them to "yes" and "no").  For a translation using UTF-8, don't
+#. * translate if the translation would begin with anything but a 7-bit
+#. * (US_ASCII) character.  That also means do not translate if the
+#. * translation would begin with anything but a 7-bit character, if
+#. * you use a single-byte character encoding (a charset like ISO-8859-n)
+#. * but anticipate that the message catalog may be used re-encoded in
+#. * UTF-8 form.
+#. * For translations using other character sets, you may also wish to
+#. * leave "yes" and "no" untranslated, if using (y) and (n) is the
+#. * preferred behavior.
+#. * Lynx will also accept y Y n N as responses unless there is a conflict
+#. * with the first letter of the "yes" or "no" translation.
+#.
+#: src/HTAlert.c:406 src/HTAlert.c:454
+msgid "yes"
+msgstr "yes"
+
+#: src/HTAlert.c:409 src/HTAlert.c:455
+msgid "no"
+msgstr "no"
+
+#.
+#. * Special-purpose workaround for gettext support (we should do
+#. * this in a more general way) -TD
+#. *
+#. * NOTE TO TRANSLATORS:  If the prompt has been rendered into
+#. * another language, and if yes/no are distinct, assume the
+#. * translator can make an ordered list in parentheses with one
+#. * capital letter for each as we assumed in HTConfirmDefault().
+#. * The list has to be in the same order as in the original message,
+#. * and the four capital letters chosen to not match those in the
+#. * original unless they have the same position.
+#. *
+#. * Example:
+#. * (Y/N/Always/neVer)              - English (original)
+#. * (O/N/Toujours/Jamais)           - French
+#.
+#: src/HTAlert.c:911
+msgid "Y/N/A/V"
+msgstr ""
+
+#: src/HTML.c:5911
+msgid "Description:"
+msgstr "´y­z¡G"
+
+#: src/HTML.c:5916
+msgid "(none)"
+msgstr "(µL)"
+
+#: src/HTML.c:5920
+msgid "Filepath:"
+msgstr "Àɮ׸ô®|¡G"
+
+#: src/HTML.c:5926
+msgid "(unknown)"
+msgstr "(¤£©ú)"
+
+#: src/HTML.c:7353
+msgid "Document has only hidden links.  Use the 'l'ist command."
+msgstr ""
+
+#: src/HTML.c:7852
+msgid "Source cache error - disk full?"
+msgstr ""
+
+#: src/HTML.c:7865
+msgid "Source cache error - not enough memory!"
+msgstr ""
+
+#: src/LYBookmark.c:164
+msgid ""
+"     This file is an HTML representation of the X Mosaic hotlist file.\n"
+"     Outdated or invalid links may be removed by using the\n"
+"     remove bookmark command, it is usually the 'R' key but may have\n"
+"     been remapped by you or your system administrator."
+msgstr ""
+
+#: src/LYBookmark.c:371
+#, c-format
+msgid ""
+"     You can delete links by the 'R' key<br>\n"
+"<ol>\n"
+msgstr ""
+"     ¥i¥H¥Î¡¥R¡¦Áä§R°£Ãìµ²<br>\n"
+"<ol>\n"
+
+#: src/LYBookmark.c:374
+msgid ""
+"     You can delete links using the remove bookmark command.  It is usually\n"
+"     the 'R' key but may have been remapped by you or your system\n"
+"     administrator."
+msgstr ""
+"     »Õ¤U¥i¥H¨Ï¥Î²¾°£®ÑÅÒªº«ü¥O¨Ó§R°£Ãìµ²¡C³q±`¬O¥Î¡¥R¡¦Áä¡A¦ý»Õ¤U©ÎºÞ²z­û¤]\n"
+"     ¦³¥i¯à·|±N¤§­«·s©w¸q¬°¨ä¥¦«öÁä¡C"
+
+#: src/LYBookmark.c:378
+msgid ""
+"     This file also may be edited with a standard text editor to delete\n"
+"     outdated or invalid links, or to change their order."
+msgstr ""
+"     ¦¹Àɮפ]¥i¥H¨Ï¥Î¤@¯ëªº¤å¦r½s¿è¾¹½s¿è¡A§R°£¹L®É©ÎµL®ÄªºÃìµ²¡A©Î§ó§ï\n"
+"     ¥¦­Ìªº¦¸§Ç¡C"
+
+#: src/LYBookmark.c:381
+msgid ""
+"Note: if you edit this file manually\n"
+"      you should not change the format within the lines\n"
+"      or add other HTML markup.\n"
+"      Make sure any bookmark link is saved as a single line."
+msgstr ""
+
+#: src/LYBookmark.c:677
+#, c-format
+msgid "File may be recoverable from %s during this session"
+msgstr ""
+
+#: src/LYCgi.c:161
+#, c-format
+msgid "Do you want to execute \"%s\"?"
+msgstr ""
+
+#.
+#. * Neither the path as given nor any components examined by backing up
+#. * were stat()able.  - kw
+#.
+#: src/LYCgi.c:276
+msgid "Unable to access cgi script"
+msgstr "µLªk¦s¨ú cgi script¡C"
+
+#: src/LYCgi.c:701 src/LYCgi.c:704
+msgid "Good Advice"
+msgstr "«Øij"
+
+#: src/LYCgi.c:708
+msgid "An excellent http server for VMS is available via"
+msgstr ""
+
+#: src/LYCgi.c:715
+msgid "this link"
+msgstr ""
+
+#: src/LYCgi.c:719
+msgid "It provides state of the art CGI script support.\n"
+msgstr ""
+
+#: src/LYClean.c:122
+msgid "Exiting via interrupt:"
+msgstr "¦]¥H¤Uªº¤¤Â_°T¸¹¦ÓÂ÷¶}µ{¦¡¡G"
+
+#: src/LYCookie.c:2461
+msgid "(from a previous session)"
+msgstr ""
+
+#: src/LYCookie.c:2522
+msgid "Maximum Gobble Date:"
+msgstr ""
+
+#: src/LYCookie.c:2562
+msgid "Internal"
+msgstr "¤º³¡"
+
+#: src/LYCookie.c:2563
+msgid "cookie_domain_flag_set error, aborting program"
+msgstr "cookie_domain_flag_set ¿ù»~¡A¤¤¤îµ{¦¡"
+
+#: src/LYCurses.c:1088
+msgid "Terminal initialisation failed - unknown terminal type?"
+msgstr "µLªkªì©l¤Æ²×ºÝ¾÷ ¢w ²×ºÝ¾÷Ãþ«¬¤£¸Ô¡H"
+
+#: src/LYCurses.c:1546
+msgid "Terminal ="
+msgstr "²×ºÝ¾÷Ãþ«¬ ="
+
+#: src/LYCurses.c:1550
+msgid "You must use a vt100, 200, etc. terminal with this program."
+msgstr "¨Ï¥Î¥»µ{¦¡®É²×ºÝ¾÷ªºÃþ«¬¥²¶·¬O vt100¡B200 µ¥µ¥¡C"
+
+#: src/LYCurses.c:1599
+msgid "Your Terminal type is unknown!"
+msgstr "²×ºÝ¾÷Ãþ«¬¤£©ú¡I"
+
+#: src/LYCurses.c:1600
+msgid "Enter a terminal type:"
+msgstr "½Ð¿é¤J²×ºÝ¾÷Ãþ«¬¡G"
+
+#: src/LYCurses.c:1614
+msgid "TERMINAL TYPE IS SET TO"
+msgstr "²×ºÝ¾÷Ãþ«¬¤w³]©w¬°"
+
+#: src/LYCurses.c:2127
+#, c-format
+msgid ""
+"\n"
+"A Fatal error has occurred in %s Ver. %s\n"
+msgstr ""
+"\n"
+"¦b %s ª©¥» %s ¥X²{ÄY­«¿ù»~\n"
+
+#: src/LYCurses.c:2130
+#, c-format
+msgid ""
+"\n"
+"Please notify your system administrator to confirm a bug, and if\n"
+"confirmed, to notify the lynx-dev list.  Bug reports should have concise\n"
+"descriptions of the command and/or URL which causes the problem, the\n"
+"operating system name with version number, the TCPIP implementation, the\n"
+"TRACEBACK if it can be captured, and any other relevant information.\n"
+msgstr ""
+"\n"
+"½Ð³qª¾¨t²ÎºÞ²z­û½T»{µ{¦¡¬O§_¥X²{¿ù»~¡A¦pªGµª®×¬OªÖ©wªº¡A½Ð±N³ø§i\n"
+"±Hµ¹ lynx-dev ¹q¶l½×¾Â¡C¿ù»~³ø§i¤¤À³¸Óªþ¤W¤Þ­P°ÝÃD¥X²{ªº«ü¥O¤Î/©Î\n"
+"URL ªº·Ç½T´y­z¡B§@·~¨t²Î¤Î¨äª©¥»¡BTCPIP ª©¥»¡B¿ù»~ªº°lÂܬö¿ý (¦pªG\n"
+"¥i¥HÀò¨úªº¸Ü)¡A¤Î¨ä¥¦¬ÛÃö¸ê°T¡C\n"
+
+#: src/LYEdit.c:266
+#, c-format
+msgid "Error starting editor, %s"
+msgstr ""
+
+#: src/LYEdit.c:269
+msgid "Editor killed by signal"
+msgstr "½s¿è¾¹¦]°T¸¹¦Ó¤¤¤î"
+
+#: src/LYEdit.c:274
+#, fuzzy, c-format
+msgid "Editor returned with error status %s"
+msgstr "½s¿è¾¹ªº¦^¶Ç¿ù»~ª¬ºA¡A%s"
+
+#: src/LYDownload.c:504
+msgid "Downloaded link:"
+msgstr "¤w¤U¸üªºÃìµ²¡G"
+
+#: src/LYDownload.c:509
+msgid "Suggested file name:"
+msgstr "«ØijªºÀɮצWºÙ¡G"
+
+#: src/LYDownload.c:514
+msgid "Standard download options:"
+msgstr "¼Ð·Çªº¤U¸ü³B²z¤è¦¡¡G"
+
+#: src/LYDownload.c:515
+msgid "Download options:"
+msgstr "¤U¸ü¿ï¶µ¡G"
+
+#: src/LYDownload.c:531
+msgid "Save to disk"
+msgstr "Àx¦s¦ÜºÏºÐ"
+
+#: src/LYDownload.c:545
+#, fuzzy
+msgid "View temporary file"
+msgstr "µLªk¶}±Ò¼È¦sÀÉ¡I"
+
+#: src/LYDownload.c:552
+msgid "Save to disk disabled."
+msgstr "¸T¤î±N¤º®eÀx¦s¦ÜºÏºÐ¡C"
+
+#: src/LYDownload.c:556 src/LYPrint.c:1310
+msgid "Local additions:"
+msgstr "ÃB¥~ªº³B²z¤è¦¡¡G"
+
+#: src/LYDownload.c:567 src/LYUpload.c:211
+msgid "No Name Given"
+msgstr "¥¼«ü©w¦WºÙ"
+
+#: src/LYHistory.c:672
+msgid "You selected:"
+msgstr "½Ð¿ï¾Ü¡G"
+
+#: src/LYHistory.c:696 src/LYHistory.c:925
+msgid "(no address)"
+msgstr ""
+
+#: src/LYHistory.c:700
+msgid " (internal)"
+msgstr ""
+
+#: src/LYHistory.c:702
+msgid " (was internal)"
+msgstr ""
+
+#: src/LYHistory.c:800
+msgid " (From History)"
+msgstr ""
+
+#: src/LYHistory.c:845
+msgid "You visited (POSTs, bookmark, menu and list files excluded):"
+msgstr ""
+
+#: src/LYHistory.c:1138
+msgid "(No messages yet)"
+msgstr ""
+
+#: src/LYLeaks.c:220
+msgid "Invalid pointer detected."
+msgstr ""
+
+#: src/LYLeaks.c:222 src/LYLeaks.c:260
+msgid "Sequence:"
+msgstr ""
+
+#: src/LYLeaks.c:225 src/LYLeaks.c:263
+msgid "Pointer:"
+msgstr "Pointer¡G"
+
+#: src/LYLeaks.c:234 src/LYLeaks.c:241 src/LYLeaks.c:282
+msgid "FileName:"
+msgstr "ÀɮצWºÙ¡G"
+
+#: src/LYLeaks.c:237 src/LYLeaks.c:244 src/LYLeaks.c:285 src/LYLeaks.c:296
+msgid "LineCount:"
+msgstr "¦æ¼Æ¡G"
+
+#: src/LYLeaks.c:258
+msgid "Memory leak detected."
+msgstr ""
+
+#: src/LYLeaks.c:266
+msgid "Contains:"
+msgstr ""
+
+#: src/LYLeaks.c:279
+msgid "ByteSize:"
+msgstr ""
+
+#: src/LYLeaks.c:293
+msgid "realloced:"
+msgstr ""
+
+#: src/LYLeaks.c:314
+msgid "Total memory leakage this run:"
+msgstr ""
+
+#: src/LYLeaks.c:317
+msgid "Peak allocation"
+msgstr ""
+
+#: src/LYLeaks.c:318
+msgid "Bytes allocated"
+msgstr ""
+
+#: src/LYLeaks.c:319
+msgid "Total mallocs"
+msgstr ""
+
+#: src/LYLeaks.c:320
+msgid "Total frees"
+msgstr ""
+
+#: src/LYList.c:84
+msgid "References in "
+msgstr "¥H¤UªºÃìµ²ÄÝ©óºô­¶¡G"
+
+#: src/LYList.c:87
+msgid "this document:"
+msgstr "(¦a§}¤£©ú)"
+
+#: src/LYList.c:93
+msgid "Visible links:"
+msgstr "¤£ÁôÂêºÃìµ²¡G"
+
+#: src/LYList.c:194 src/LYList.c:295
+msgid "Hidden links:"
+msgstr "ÁôÂêºÃìµ²¡G"
+
+#: src/LYList.c:332
+msgid "References"
+msgstr ""
+
+#: src/LYList.c:336
+msgid "Visible links"
+msgstr "¤£ÁôÂêºÃìµ²"
+
+#: src/LYLocal.c:271
+#, c-format
+msgid "Unable to get status of '%s'."
+msgstr "µLªkÀò¨ú¡¥%s¡¦ªºª¬ºA¡C"
+
+#: src/LYLocal.c:305
+msgid "The selected item is not a file or a directory!  Request ignored."
+msgstr "¿ï¨úªº¶µ¥Ø¤£¬OÀɮשΥؿý¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYLocal.c:373
+#, c-format
+msgid "Unable to %s due to system error!"
+msgstr "¦]¬°¨t²Î¿ù»~¦ÓµLªk%s¡I"
+
+#: src/LYLocal.c:407
+#, c-format
+msgid "Probable failure to %s due to system error!"
+msgstr "¥i¯à¦]¬°¨t²Î¿ù»~¦ÓµLªk%s¡I"
+
+#: src/LYLocal.c:469 src/LYLocal.c:490
+#, c-format
+msgid "remove %s"
+msgstr "²¾°£ %s"
+
+#: src/LYLocal.c:508
+#, c-format
+msgid "touch %s"
+msgstr ""
+
+#: src/LYLocal.c:536
+#, c-format
+msgid "move %s to %s"
+msgstr "±N %s ²¾°Ê¦Ü %s"
+
+#: src/LYLocal.c:577
+msgid "There is already a directory with that name!  Request ignored."
+msgstr "¦P¤@¦WºÙªº¥Ø¿ý¤w¸g¦s¦b¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYLocal.c:579
+msgid "There is already a file with that name!  Request ignored."
+msgstr "¦P¤@¦WºÙªºÀɮפw¸g¦s¦b¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYLocal.c:581
+msgid "The specified name is already in use!  Request ignored."
+msgstr "«ü©wªºÀɮפw¦b¨Ï¥Î¤¤¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYLocal.c:592
+msgid "Destination has different owner!  Request denied."
+msgstr "¥Øªº¦aªº¾Ö¦³ªÌ¤£¦P¡I©Úµ´¸Ó­n¨D¡C"
+
+#: src/LYLocal.c:595
+msgid "Destination is not a valid directory!  Request denied."
+msgstr "¥Øªº¦a¤£¬O¦³®Äªº¥Ø¿ý¡I©Úµ´¸Ó­n¨D¡C"
+
+#: src/LYLocal.c:617
+msgid "Remove all tagged files and directories?"
+msgstr "½T©w²¾°£©Ò¦³¥[¤W¼Ð°OªºÀɮפΥؿý¡H"
+
+#: src/LYLocal.c:675
+msgid "Enter new location for tagged items: "
+msgstr "¿é¤J¥[¤W¼Ð°Oªº¶µ¥Øªº·s¦ì¸m¡G"
+
+#: src/LYLocal.c:745
+msgid "Path too long"
+msgstr "¸ô®|¹Lªø"
+
+#: src/LYLocal.c:776
+msgid "Source and destination are the same location - request ignored!"
+msgstr "¨Ó·½¤Î¥Øªº¦a¦ì¸m¬Û¦P ¢w ©¿²¤¸Ó­n¨D¡I"
+
+#: src/LYLocal.c:833
+msgid "Enter new name for directory: "
+msgstr "¿é¤J¥Ø¿ýªº·s¦WºÙ¡G"
+
+#: src/LYLocal.c:835
+msgid "Enter new name for file: "
+msgstr "¿é¤JÀɮתº·s¦WºÙ¡G"
+
+#: src/LYLocal.c:847
+msgid "Illegal character (path-separator) found! Request ignored."
+msgstr "¥X²{¤£¦Xªkªº¦r¤¸ (¸ô®|¤À¹j¦r¤¸)¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYLocal.c:897
+msgid "Enter new location for directory: "
+msgstr "¿é¤J¥Ø¿ýªº·s¦ì¸m¡G"
+
+#: src/LYLocal.c:903
+msgid "Enter new location for file: "
+msgstr "¿é¤JÀɮתº·s¦ì¸m¡G"
+
+#: src/LYLocal.c:930
+msgid "Unexpected failure - unable to find trailing path separator"
+msgstr ""
+
+#: src/LYLocal.c:950
+msgid "Source and destination are the same location!  Request ignored!"
+msgstr "¨Ó·½¤Î¥Øªº¦a¦ì¸m¬Û¦P¡I©¿²¤¸Ó­n¨D¡I"
+
+#: src/LYLocal.c:997
+msgid "Modify name, location, or permission (n, l, or p): "
+msgstr "­×§ï¦WºÙ¡B¦ì¸m©ÎÅv­­ (n¡Bl ©Î p)¡G"
+
+#: src/LYLocal.c:999
+msgid "Modify name or location (n or l): "
+msgstr "­×§ï¦WºÙ©Î¦ì¸m (n ©Î l)¡G"
+
+#.
+#. * Code for changing ownership needed here.
+#.
+#: src/LYLocal.c:1028
+msgid "This feature not yet implemented!"
+msgstr "¦¹¥\¯à¤´¥¼§¹¦¨¡I"
+
+#: src/LYLocal.c:1048
+msgid "Enter name of file to create: "
+msgstr "¿é¤J·Ç³Æ«Ø¥ßªºÀɮצWºÙ¡G"
+
+#: src/LYLocal.c:1052 src/LYLocal.c:1088
+msgid "Illegal redirection \"//\" found! Request ignored."
+msgstr "¥X²{¤£¦Xªkªº­«·s¾É¦V \"//\"¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYLocal.c:1084
+msgid "Enter name for new directory: "
+msgstr "¿é¤J·s¥Ø¿ýªº¦WºÙ¡G"
+
+#: src/LYLocal.c:1124
+msgid "Create file or directory (f or d): "
+msgstr "«Ø¥ßÀɮשΥؿý (f ©Î d)¡G"
+
+#: src/LYLocal.c:1166
+#, fuzzy, c-format
+msgid "Remove directory '%s'?"
+msgstr "¬O§_²¾°£Àɮס¥%s¡¦¡H"
+
+#: src/LYLocal.c:1169
+#, fuzzy
+msgid "Remove directory?"
+msgstr " ¥Ø¿ý"
+
+#: src/LYLocal.c:1174
+#, c-format
+msgid "Remove file '%s'?"
+msgstr "¬O§_²¾°£Àɮס¥%s¡¦¡H"
+
+#: src/LYLocal.c:1176
+msgid "Remove file?"
+msgstr "¬O§_²¾°£ÀɮסH"
+
+#: src/LYLocal.c:1181
+#, c-format
+msgid "Remove symbolic link '%s'?"
+msgstr "¬O§_²¾°£²Å¸¹³sµ²¡¥%s¡¦¡H"
+
+#: src/LYLocal.c:1183
+msgid "Remove symbolic link?"
+msgstr "¬O§_²¾°£²Å¸¹³sµ²¡H"
+
+#: src/LYLocal.c:1278
+msgid "Sorry, don't know how to permit non-UNIX files yet."
+msgstr ""
+
+#: src/LYLocal.c:1308
+msgid "Unable to open permit options file"
+msgstr ""
+
+#: src/LYLocal.c:1338
+msgid "Specify permissions below:"
+msgstr "½Ð«ü©w¥H¤UªºÅv­­¡G"
+
+#: src/LYLocal.c:1339 src/LYShowInfo.c:261
+msgid "Owner:"
+msgstr "¾Ö¦³ªÌ¡G"
+
+#: src/LYLocal.c:1355
+msgid "Group"
+msgstr "©ÒÄݸs²Õ"
+
+#: src/LYLocal.c:1371
+msgid "Others:"
+msgstr "¨ä¥¦¡G"
+
+#: src/LYLocal.c:1389
+msgid "form to permit"
+msgstr ""
+
+#: src/LYLocal.c:1484
+msgid "Invalid mode format."
+msgstr ""
+
+#: src/LYLocal.c:1488
+msgid "Invalid syntax format."
+msgstr "µL®Äªº»yªk®æ¦¡¡C"
+
+#: src/LYLocal.c:1670
+msgid "Warning!  UUDecoded file will exist in the directory you started Lynx."
+msgstr "ĵ§i¡I¤w¸g UUDecode ªºÀÉ®×·|©ñ¦b°õ¦æ Lynx ®Éªº¥Ø¿ý¡C"
+
+#: src/LYLocal.c:1860
+msgid "NULL URL pointer"
+msgstr ""
+
+#: src/LYLocal.c:1942
+#, c-format
+msgid "Executing %s "
+msgstr "¥¿¦b°õ¦æ %s "
+
+#: src/LYLocal.c:1945
+msgid "Executing system command. This might take a while."
+msgstr "¥¿¦b°õ¦æ¨t²Î«ü¥O¡C¥i¯à»Ý­nµyµ¥¤@¬q®É¶¡¡C"
+
+#: src/LYLocal.c:2017
+msgid "Current directory:"
+msgstr "¥Ø«eªº¥Ø¿ý¡G"
+
+#: src/LYLocal.c:2020 src/LYLocal.c:2038
+msgid "Current selection:"
+msgstr "¥Ø«e¿ï¾Üªº¶µ¥Ø¡G"
+
+#: src/LYLocal.c:2024
+msgid "Nothing currently selected."
+msgstr "¥¼¿ï¨ú¥ô¦ó¶µ¥Ø¡C"
+
+#: src/LYLocal.c:2040
+msgid "tagged item:"
+msgstr "­Ó¥[¤W¼Ð°Oªº¶µ¥Ø¡G"
+
+#: src/LYLocal.c:2041
+msgid "tagged items:"
+msgstr "­Ó¥[¤W¼Ð°Oªº¶µ¥Ø¡G"
+
+#: src/LYLocal.c:2138 src/LYLocal.c:2149
+msgid "Illegal filename; request ignored."
+msgstr "¤£¦XªkªºÀɮצWºÙ¡F©¿²¤¸Ó­n¨D¡C"
+
+#. directory not writable
+#: src/LYLocal.c:2247 src/LYLocal.c:2306
+msgid "Install in the selected directory not permitted."
+msgstr ""
+
+#: src/LYLocal.c:2302
+msgid "The selected item is not a directory!  Request ignored."
+msgstr "¿ï¨úªº¶µ¥Ø¤£¬O¥Ø¿ý¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYLocal.c:2311
+msgid "Just a moment, ..."
+msgstr "½Ðµyµ¥¡A..."
+
+#: src/LYLocal.c:2328
+msgid "Error building install args"
+msgstr ""
+
+#: src/LYLocal.c:2343 src/LYLocal.c:2374
+#, c-format
+msgid "Source and target are the same: %s"
+msgstr "¨Ó·½¤Î¥Øªº¦a¬Û¦P¡G%s"
+
+#: src/LYLocal.c:2350 src/LYLocal.c:2381
+#, c-format
+msgid "Already in target directory: %s"
+msgstr ""
+
+#: src/LYLocal.c:2399
+msgid "Installation complete"
+msgstr "¦w¸Ë§¹¦¨"
+
+#: src/LYLocal.c:2586
+msgid "Temporary URL or list would be too long."
+msgstr ""
+
+#: src/LYMail.c:520
+msgid "Sending"
+msgstr ""
+
+#: src/LYMail.c:1006
+#, c-format
+msgid "The link   %s :?: %s \n"
+msgstr ""
+
+#: src/LYMail.c:1008
+#, c-format
+msgid "called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1009
+#, c-format
+msgid "in the file \"%s\" called \"%s\"\n"
+msgstr ""
+
+#: src/LYMail.c:1010
+msgid "was requested but was not available."
+msgstr ""
+
+#: src/LYMail.c:1011
+msgid "Thought you might want to know."
+msgstr ""
+
+#: src/LYMail.c:1013
+msgid "This message was automatically generated by"
+msgstr ""
+
+#: src/LYMail.c:1728
+msgid "No system mailer configured"
+msgstr ""
+
+#: src/LYMain.c:1023
+msgid "No Winsock found, sorry."
+msgstr "§ä¤£¨ì Winsock¡A©êºp¡C"
+
+#: src/LYMain.c:1226
+msgid "You MUST define a valid TMP or TEMP area!"
+msgstr "»Õ¤U *¥²¶·* «ü©w¦³®Äªº TMP ©Î TEMP ¦ì¸m¡I"
+
+#: src/LYMain.c:1279 src/LYMainLoop.c:5074
+msgid "No such directory"
+msgstr "¸Ó¥Ø¿ý¤£¦s¦b"
+
+#: src/LYMain.c:1464
+#, c-format
+msgid ""
+"\n"
+"Configuration file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"³]©wÀÉ %s ¤£¦s¦b¡C\n"
+"\n"
+
+#: src/LYMain.c:1474
+#, c-format
+msgid ""
+"\n"
+"Lynx character sets not declared.\n"
+"\n"
+msgstr ""
+"\n"
+"¥¼«Å§i Lynx ©Ò¥Îªº¦r¤¸¶°¡C\n"
+"\n"
+
+#: src/LYMain.c:1503
+#, c-format
+msgid ""
+"\n"
+"Lynx edit map not declared.\n"
+"\n"
+msgstr ""
+
+#: src/LYMain.c:1579
+#, c-format
+msgid ""
+"\n"
+"Lynx file \"%s\" is not available.\n"
+"\n"
+msgstr ""
+"\n"
+"Lynx ÀÉ®× %s ¤£¦s¦b¡C\n"
+"\n"
+
+#: src/LYMain.c:1654
+#, c-format
+msgid "Ignored %d characters from standard input.\n"
+msgstr ""
+
+#: src/LYMain.c:1656
+#, c-format
+msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n"
+msgstr ""
+
+#: src/LYMain.c:1804
+msgid "Warning:"
+msgstr "ĵ§i¡G"
+
+#: src/LYMain.c:2372
+msgid "persistent cookies state will be changed in next session only."
+msgstr ""
+
+#: src/LYMain.c:2617 src/LYMain.c:2662
+#, c-format
+msgid "Lynx: ignoring unrecognized charset=%s\n"
+msgstr "Lynx¡G©¿²¤µLªkÃѧOªº¦r¤¸¶° %s\n"
+
+#: src/LYMain.c:3181
+#, fuzzy, c-format
+msgid "%s Version %s (%s)"
+msgstr "%s ª©¥» %s (%s)\n"
+
+#: src/LYMain.c:3219
+#, c-format
+msgid "Built on %s %s %s\n"
+msgstr "½sĶ©ó %s %s %s\n"
+
+#: src/LYMain.c:3241
+msgid "Copyrights held by the Lynx Developers Group,"
+msgstr ""
+
+#: src/LYMain.c:3242
+#, fuzzy
+msgid "the University of Kansas, CERN, and other contributors."
+msgstr "ª©Åv©Ò¦³¡GUniversity of Kansas¡BCERN ¤Î¨ä¥¦¦³°^ÄmªÌ¡C"
+
+#: src/LYMain.c:3243
+#, fuzzy
+msgid "Distributed under the GNU General Public License (Version 2)."
+msgstr "¨Ï¥Î GNU General Public License µo§G¡C"
+
+#: src/LYMain.c:3244
+msgid "See http://lynx.isc.org/ and the online help for more information."
+msgstr "­Y»Ý­n§ó¦h¸ê®Æ¡A½ÐÂsÄý http://lynx.isc.org/ ¤Îºô¤Wªº»¡©ú¤å¥ó¡C"
+
+#: src/LYMain.c:4065
+#, c-format
+msgid "USAGE: %s [options] [file]\n"
+msgstr "¥Îªk¡G%s [¿ï¶µ] [ÀÉ®×]\n"
+
+#: src/LYMain.c:4066
+#, c-format
+msgid "Options are:\n"
+msgstr "¿ï¶µ¥]¬A¡G\n"
+
+#: src/LYMain.c:4365
+#, c-format
+msgid "%s: Invalid Option: %s\n"
+msgstr "%s¡GµL®Äªº¿ï¶µ¡G%s\n"
+
+#: src/LYMainLoop.c:594
+#, c-format
+msgid "Internal error: Invalid mouse link %d!"
+msgstr ""
+
+#: src/LYMainLoop.c:714 src/LYMainLoop.c:5096
+msgid "A URL specified by the user"
+msgstr "¥Ñ¨Ï¥ÎªÌ«ü©wªº URL"
+
+#: src/LYMainLoop.c:1173
+msgid "Enctype multipart/form-data not yet supported!  Cannot submit."
+msgstr ""
+
+#.
+#. * Make a name for this help file.
+#.
+#: src/LYMainLoop.c:3105
+msgid "Help Screen"
+msgstr "¨D§U»¡©úµe­±"
+
+#: src/LYMainLoop.c:3226
+msgid "System Index"
+msgstr ""
+
+#: src/LYMainLoop.c:3585 src/LYMainLoop.c:5320
+msgid "Entry into main screen"
+msgstr ""
+
+#: src/LYMainLoop.c:3843
+msgid "No next document present"
+msgstr ""
+
+#: src/LYMainLoop.c:4139
+msgid "charset for this document specified explicitly, sorry..."
+msgstr "©êºp¡A¸Ó¤å¥ó¤w¸g¯S¦a«ü©w¤F¦r¤¸¶°..."
+
+#: src/LYMainLoop.c:5052
+msgid "cd to:"
+msgstr "·Ç³Æ¶i¤Jªº¥Ø¿ý¡G"
+
+#: src/LYMainLoop.c:5077
+msgid "A component of path is not a directory"
+msgstr "¸ô®|¤¤ªº¤@³¡¥÷¤£¬O¥Ø¿ý"
+
+#: src/LYMainLoop.c:5080
+msgid "failed to change directory"
+msgstr "µLªk¶i¤J¥Ø¿ý"
+
+#: src/LYMainLoop.c:6252
+msgid "Reparsing document under current settings..."
+msgstr "®Ú¾Ú¥Ø«eªº³]©w­«·s¤ÀªR¤å¥ó..."
+
+#: src/LYMainLoop.c:6543
+#, c-format
+msgid "Fatal error - could not open output file %s\n"
+msgstr "ÄY­«¿ù»~ ¢w µLªk¶}±Ò¿é¥XÀÉ %s\n"
+
+#: src/LYMainLoop.c:6880
+msgid "TABLE center enable."
+msgstr ""
+
+#: src/LYMainLoop.c:6883
+msgid "TABLE center disable."
+msgstr ""
+
+#: src/LYMainLoop.c:6960
+#, fuzzy
+msgid "Current URL is empty."
+msgstr "¥Ø«eªº¥Ø¿ý¡G"
+
+#: src/LYMainLoop.c:6962 src/LYUtils.c:1828
+msgid "Copy to clipboard failed."
+msgstr ""
+
+#: src/LYMainLoop.c:6964
+msgid "Document URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6966
+msgid "Link URL put to clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:6993
+msgid "No URL in the clipboard."
+msgstr ""
+
+#: src/LYMainLoop.c:7664 src/LYMainLoop.c:7834
+msgid "-index-"
+msgstr "¢w¯Á¤Þ¢w"
+
+#: src/LYMainLoop.c:7774
+msgid "lynx: Can't access startfile"
+msgstr "lynx¡GµLªk¦s¨ú¶}©lªººô­¶"
+
+#: src/LYMainLoop.c:7786
+msgid "lynx: Start file could not be found or is not text/html or text/plain"
+msgstr ""
+
+#: src/LYMainLoop.c:7787
+msgid "      Exiting..."
+msgstr "      ·Ç³ÆÂ÷¶}..."
+
+#: src/LYMainLoop.c:7828
+msgid "-more-"
+msgstr "¢wÁÙ¦³¤º®e¢w"
+
+#. Enable scrolling.
+#: src/LYNews.c:186
+msgid "You will be posting to:"
+msgstr ""
+
+#.
+#. * Get the mail address for the From header, offering personal_mail_address
+#. * as default.
+#.
+#: src/LYNews.c:195
+msgid ""
+"\n"
+"\n"
+" Please provide your mail address for the From: header\n"
+msgstr ""
+"\n"
+"\n"
+" ½Ð¦b From: ¼ÐÀY¤¤´£¨Ñ»Õ¤Uªº¹q¶l¦a§}\n"
+
+#.
+#. * Get the Subject header, offering the current document's title as the
+#. * default if this is a followup rather than a new post.  - FM
+#.
+#: src/LYNews.c:212
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Subject: header\n"
+msgstr ""
+"\n"
+"\n"
+" ½Ð´£¨Ñ©Î­×§ï Subject: ¼ÐÀY\n"
+
+#: src/LYNews.c:302
+msgid ""
+"\n"
+"\n"
+" Please provide or edit the Organization: header\n"
+msgstr ""
+"\n"
+"\n"
+" ½Ð´£¨Ñ©Î­×§ï Organization: ¼ÐÀY\n"
+
+#.
+#. * Use the built in line editior.
+#.
+#: src/LYNews.c:359
+msgid ""
+"\n"
+"\n"
+" Please enter your message below."
+msgstr ""
+"\n"
+"\n"
+" ½Ð¦b¥H¤Uªº¦ì¸m¿é¤J°T®§¡C"
+
+#: src/LYNews.c:405
+msgid "Message has no original text!"
+msgstr ""
+
+#: src/LYOptions.c:765
+msgid "review/edit B)ookmarks files"
+msgstr ""
+
+#: src/LYOptions.c:767
+msgid "B)ookmark file: "
+msgstr "B)®ÑÅÒÀÉ¡G"
+
+#: src/LYOptions.c:2127 src/LYOptions.c:2134
+msgid "ON"
+msgstr ""
+
+#. verbose_img variable
+#: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2285 src/LYOptions.c:2296
+msgid "OFF"
+msgstr ""
+
+#: src/LYOptions.c:2129
+msgid "NEVER"
+msgstr ""
+
+#: src/LYOptions.c:2130
+msgid "ALWAYS"
+msgstr ""
+
+#: src/LYOptions.c:2146 src/LYOptions.c:2277
+msgid "ignore"
+msgstr ""
+
+#: src/LYOptions.c:2147
+msgid "ask user"
+msgstr ""
+
+#: src/LYOptions.c:2148
+msgid "accept all"
+msgstr ""
+
+#: src/LYOptions.c:2160
+msgid "ALWAYS OFF"
+msgstr ""
+
+#: src/LYOptions.c:2161
+msgid "FOR LOCAL FILES ONLY"
+msgstr ""
+
+#: src/LYOptions.c:2163
+msgid "ALWAYS ON"
+msgstr ""
+
+#: src/LYOptions.c:2175
+msgid "Numbers act as arrows"
+msgstr ""
+
+#: src/LYOptions.c:2177
+msgid "Links are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2180
+msgid "Links and form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2183
+msgid "Form fields are numbered"
+msgstr ""
+
+#: src/LYOptions.c:2197
+msgid "Case insensitive"
+msgstr ""
+
+#: src/LYOptions.c:2198
+msgid "Case sensitive"
+msgstr ""
+
+#: src/LYOptions.c:2222
+msgid "prompt normally"
+msgstr ""
+
+#: src/LYOptions.c:2223
+msgid "force yes-response"
+msgstr ""
+
+#: src/LYOptions.c:2224
+msgid "force no-response"
+msgstr ""
+
+#: src/LYOptions.c:2242
+msgid "Novice"
+msgstr ""
+
+#: src/LYOptions.c:2243
+#, fuzzy
+msgid "Intermediate"
+msgstr "¤º³¡"
+
+#: src/LYOptions.c:2244
+msgid "Advanced"
+msgstr ""
+
+#: src/LYOptions.c:2253
+msgid "By First Visit"
+msgstr ""
+
+#: src/LYOptions.c:2255
+msgid "By First Visit Reversed"
+msgstr ""
+
+#: src/LYOptions.c:2256
+msgid "As Visit Tree"
+msgstr ""
+
+#: src/LYOptions.c:2257
+msgid "By Last Visit"
+msgstr ""
+
+#: src/LYOptions.c:2259
+msgid "By Last Visit Reversed"
+msgstr ""
+
+#. Old_DTD variable
+#: src/LYOptions.c:2270
+msgid "relaxed (TagSoup mode)"
+msgstr ""
+
+#: src/LYOptions.c:2271
+msgid "strict (SortaSGML mode)"
+msgstr ""
+
+#: src/LYOptions.c:2278
+msgid "as labels"
+msgstr ""
+
+#: src/LYOptions.c:2279
+#, fuzzy
+msgid "as links"
+msgstr "¤£ÁôÂêºÃìµ²"
+
+#: src/LYOptions.c:2286
+#, fuzzy
+msgid "show filename"
+msgstr "«ØijªºÀɮצWºÙ¡G"
+
+#: src/LYOptions.c:2297
+msgid "STANDARD"
+msgstr ""
+
+#: src/LYOptions.c:2298
+msgid "ADVANCED"
+msgstr ""
+
+#: src/LYOptions.c:2329
+#, fuzzy
+msgid "Directories first"
+msgstr "°Æ¥Ø¿ý¡G"
+
+#: src/LYOptions.c:2330
+#, fuzzy
+msgid "Files first"
+msgstr " (­º¥ý´ú¸Õ)"
+
+#: src/LYOptions.c:2331
+#, fuzzy
+msgid "Mixed style"
+msgstr "¤å¦r½s¿è¼Ò¦¡"
+
+#: src/LYOptions.c:2339 src/LYOptions.c:2359
+#, fuzzy
+msgid "By Name"
+msgstr "¦WºÙ¡G"
+
+#: src/LYOptions.c:2340 src/LYOptions.c:2360
+msgid "By Type"
+msgstr ""
+
+#: src/LYOptions.c:2341 src/LYOptions.c:2361
+msgid "By Size"
+msgstr ""
+
+#: src/LYOptions.c:2342 src/LYOptions.c:2362
+#, fuzzy
+msgid "By Date"
+msgstr "¤é´Á¡G"
+
+#: src/LYOptions.c:2343
+msgid "By Mode"
+msgstr ""
+
+#: src/LYOptions.c:2345
+msgid "By User"
+msgstr ""
+
+#: src/LYOptions.c:2346
+#, fuzzy
+msgid "By Group"
+msgstr "©ÒÄݸs²Õ"
+
+#: src/LYOptions.c:2371
+msgid "Do not show rate"
+msgstr ""
+
+#: src/LYOptions.c:2372 src/LYOptions.c:2373
+#, fuzzy, c-format
+msgid "Show %s/sec rate"
+msgstr "Åã¥Ü¶Ç¿é³t²v"
+
+#: src/LYOptions.c:2375 src/LYOptions.c:2376
+#, c-format
+msgid "Show %s/sec, ETA"
+msgstr ""
+
+#: src/LYOptions.c:2379
+#, fuzzy
+msgid "Show progressbar"
+msgstr "Åã¥Ü±²°Ê¦C"
+
+#: src/LYOptions.c:2391
+msgid "Accept lynx's internal types"
+msgstr ""
+
+#: src/LYOptions.c:2392
+msgid "Also accept lynx.cfg's types"
+msgstr ""
+
+#: src/LYOptions.c:2393
+msgid "Also accept user's types"
+msgstr ""
+
+#: src/LYOptions.c:2394
+msgid "Also accept system's types"
+msgstr ""
+
+#: src/LYOptions.c:2395
+#, fuzzy
+msgid "Accept all types"
+msgstr "±µ¨ü§ó§ï"
+
+#: src/LYOptions.c:2404
+msgid "gzip"
+msgstr ""
+
+#: src/LYOptions.c:2405
+msgid "deflate"
+msgstr ""
+
+#: src/LYOptions.c:2408
+msgid "compress"
+msgstr ""
+
+#: src/LYOptions.c:2411
+msgid "bzip2"
+msgstr ""
+
+#: src/LYOptions.c:2413
+msgid "All"
+msgstr ""
+
+#: src/LYOptions.c:2681 src/LYOptions.c:2705
+#, c-format
+msgid "Use %s to invoke the Options menu!"
+msgstr ""
+
+#: src/LYOptions.c:3477
+msgid "(options marked with (!) will not be saved)"
+msgstr ""
+
+#: src/LYOptions.c:3485
+msgid "General Preferences"
+msgstr "¤@¯ë°¾¦n³]©w"
+
+#. ***************************************************************
+#. User Mode: SELECT
+#: src/LYOptions.c:3489
+msgid "User mode"
+msgstr "¨Ï¥ÎªÌ¼Ò¦¡"
+
+#. Editor: INPUT
+#: src/LYOptions.c:3495
+msgid "Editor"
+msgstr "½s¿è¾¹"
+
+#. Search Type: SELECT
+#: src/LYOptions.c:3500
+msgid "Type of Search"
+msgstr "·j´M¤è¦¡"
+
+#: src/LYOptions.c:3505
+msgid "Security and Privacy"
+msgstr ""
+
+#. ***************************************************************
+#. Cookies: SELECT
+#: src/LYOptions.c:3509
+msgid "Cookies"
+msgstr "Cookie"
+
+#. Cookie Prompting: SELECT
+#: src/LYOptions.c:3523
+msgid "Invalid-Cookie Prompting"
+msgstr ""
+
+#. SSL Prompting: SELECT
+#: src/LYOptions.c:3530
+msgid "SSL Prompting"
+msgstr ""
+
+#: src/LYOptions.c:3536
+msgid "Keyboard Input"
+msgstr "Áä½L¿é¤J"
+
+#. ***************************************************************
+#. Keypad Mode: SELECT
+#: src/LYOptions.c:3540
+msgid "Keypad mode"
+msgstr "¼Æ¦rÁä½L¼Ò¦¡"
+
+#. Emacs keys: ON/OFF
+#: src/LYOptions.c:3546
+msgid "Emacs keys"
+msgstr "Emacs ²Õ¦XÁä"
+
+#. VI Keys: ON/OFF
+#: src/LYOptions.c:3552
+msgid "VI keys"
+msgstr "VI ²Õ¦XÁä"
+
+#. Line edit style: SELECT
+#. well, at least 2 line edit styles available
+#: src/LYOptions.c:3559
+msgid "Line edit style"
+msgstr "¤å¦r½s¿è¼Ò¦¡"
+
+#. Keyboard layout: SELECT
+#: src/LYOptions.c:3571
+msgid "Keyboard layout"
+msgstr "Áä½L°t¸m"
+
+#.
+#. * Display and Character Set
+#.
+#: src/LYOptions.c:3585
+msgid "Display and Character Set"
+msgstr "Åã¥Ü¤Î¦r¤¸¶°"
+
+#. Use locale-based character set: ON/OFF
+#: src/LYOptions.c:3590
+#, fuzzy
+msgid "Use locale-based character set"
+msgstr "«á³Æªº¦r¤¸¶°"
+
+#. Display Character Set: SELECT
+#: src/LYOptions.c:3599
+msgid "Display character set"
+msgstr "¹w³]Åã¥Üªº¦r¤¸¶°"
+
+#: src/LYOptions.c:3630
+msgid "Assumed document character set"
+msgstr "«á³Æªº¦r¤¸¶°"
+
+#.
+#. * 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.
+#.
+#: src/LYOptions.c:3650
+msgid "CJK mode"
+msgstr "CJK ¼Ò¦¡"
+
+#: src/LYOptions.c:3652
+msgid "Raw 8-bit"
+msgstr "8-bit ­ì©l¼Ò¦¡"
+
+#. X Display: INPUT
+#: src/LYOptions.c:3660
+msgid "X Display"
+msgstr "X µe­±"
+
+#.
+#. * Document Appearance
+#.
+#: src/LYOptions.c:3666
+msgid "Document Appearance"
+msgstr "¤å¥ó¥~Æ["
+
+#: src/LYOptions.c:3672
+msgid "Show color"
+msgstr "Åã¥Ü¦â±m"
+
+#. Show cursor: ON/OFF
+#: src/LYOptions.c:3696
+msgid "Show cursor"
+msgstr "Åã¥Ü´å¼Ð"
+
+#. Underline links: ON/OFF
+#: src/LYOptions.c:3702
+#, fuzzy
+msgid "Underline links"
+msgstr "ÁôÂêºÃìµ²¡G"
+
+#. Show scrollbar: ON/OFF
+#: src/LYOptions.c:3709
+msgid "Show scrollbar"
+msgstr "Åã¥Ü±²°Ê¦C"
+
+#. Select Popups: ON/OFF
+#: src/LYOptions.c:3716
+msgid "Popups for select fields"
+msgstr ""
+
+#. HTML error recovery: SELECT
+#: src/LYOptions.c:3722
+msgid "HTML error recovery"
+msgstr ""
+
+#. Show Images: SELECT
+#: src/LYOptions.c:3728
+msgid "Show images"
+msgstr "Åã¥Ü¹Ï¹³"
+
+#. Verbose Images: ON/OFF
+#: src/LYOptions.c:3742
+msgid "Verbose images"
+msgstr "¹Ï¹³¸Ô²Ó¸ê®Æ"
+
+#.
+#. * Headers Transferred to Remote Servers
+#.
+#: src/LYOptions.c:3750
+msgid "Headers Transferred to Remote Servers"
+msgstr "¶Ç°e¦Ü»·ºÝ¦øªA¾¹ªº¼ÐÀY¸ê®Æ"
+
+#. ***************************************************************
+#. Mail Address: INPUT
+#: src/LYOptions.c:3754
+msgid "Personal mail address"
+msgstr "­Ó¤H¹q¶l¦a§}"
+
+#: src/LYOptions.c:3760
+#, fuzzy
+msgid "Password for anonymous ftp"
+msgstr "·s»D²Õ¥D¾÷¡¥%s¡¦ªº±K½X¡G"
+
+#. Preferred media type: SELECT
+#: src/LYOptions.c:3766
+#, fuzzy
+msgid "Preferred media type"
+msgstr "¤w¶Ç¿é %d ¦ì¤¸²Õ"
+
+#. Preferred encoding: SELECT
+#: src/LYOptions.c:3772
+#, fuzzy
+msgid "Preferred encoding"
+msgstr "Àu¥ý¨Ï¥Îªº»y¨¥"
+
+#. Preferred Document Character Set: INPUT
+#: src/LYOptions.c:3778
+msgid "Preferred document character set"
+msgstr "Àu¥ý¨Ï¥Îªº¦r¤¸¶°"
+
+#. Preferred Document Language: INPUT
+#: src/LYOptions.c:3783
+msgid "Preferred document language"
+msgstr "Àu¥ý¨Ï¥Îªº»y¨¥"
+
+#: src/LYOptions.c:3789
+msgid "User-Agent header"
+msgstr "User-Agent ¼ÐÀY"
+
+#.
+#. * Listing and Accessing Files
+#.
+#: src/LYOptions.c:3797
+msgid "Listing and Accessing Files"
+msgstr "¦C¥X¤Î¦s¨úÀÉ®×"
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3802
+msgid "Use Passive FTP"
+msgstr ""
+
+#. FTP sort: SELECT
+#: src/LYOptions.c:3808
+msgid "FTP sort criteria"
+msgstr "FTP ¶µ¥Ø±Æ§Ç±ø¥ó"
+
+#. Local Directory Sort: SELECT
+#: src/LYOptions.c:3816
+msgid "Local directory sort criteria"
+msgstr "¥»¦aºÝ¥Ø¿ý±Æ§Ç±ø¥ó"
+
+#. Local Directory Order: SELECT
+#: src/LYOptions.c:3822
+msgid "Local directory sort order"
+msgstr "¥»¦aºÝ¥Ø¿ý±Æ¦C¦¸§Ç"
+
+#: src/LYOptions.c:3831
+msgid "Show dot files"
+msgstr "Åã¥ÜÁôÂÃÀÉ"
+
+#: src/LYOptions.c:3839
+msgid "Execution links"
+msgstr ""
+
+#. Show transfer rate: SELECT
+#: src/LYOptions.c:3859
+msgid "Show transfer rate"
+msgstr "Åã¥Ü¶Ç¿é³t²v"
+
+#.
+#. * Special Files and Screens
+#.
+#: src/LYOptions.c:3879
+msgid "Special Files and Screens"
+msgstr "¯S®íÀɮפεe­±"
+
+#: src/LYOptions.c:3884
+msgid "Multi-bookmarks"
+msgstr "¦h®ÑÅÒÀɼҦ¡"
+
+#: src/LYOptions.c:3892
+msgid "Review/edit Bookmarks files"
+msgstr "¥iÂsÄý©Î½s¿è®ÑÅÒÀÉ"
+
+#: src/LYOptions.c:3894
+msgid "Goto multi-bookmark menu"
+msgstr "¶i¤J¦h®ÑÅÒÀɼҦ¡¿ï³æ"
+
+#: src/LYOptions.c:3896
+msgid "Bookmarks file"
+msgstr "®ÑÅÒÀÉ"
+
+#. Auto Session: ON/OFF
+#: src/LYOptions.c:3903
+msgid "Auto Session"
+msgstr ""
+
+#. Session File Menu: INPUT
+#: src/LYOptions.c:3909
+msgid "Session file"
+msgstr ""
+
+#. Visited Pages: SELECT
+#: src/LYOptions.c:3915
+msgid "Visited Pages"
+msgstr "´¿¸gÂsÄýªººô­¶"
+
+#: src/LYOptions.c:3920
+msgid "View the file "
+msgstr ""
+
+#: src/LYPrint.c:937
+#, c-format
+msgid " Print job complete.\n"
+msgstr " §¹¦¨¦C¦Lµ{§Ç¡C\n"
+
+#: src/LYPrint.c:1262
+msgid "Document:"
+msgstr "¤å¥ó¡G"
+
+#: src/LYPrint.c:1263
+msgid "Number of lines:"
+msgstr "¦æ¼Æ¡G"
+
+#: src/LYPrint.c:1264
+msgid "Number of pages:"
+msgstr "­¶¼Æ¡G"
+
+#: src/LYPrint.c:1265
+msgid "pages"
+msgstr "­¶"
+
+#: src/LYPrint.c:1265
+msgid "page"
+msgstr "­¶"
+
+#: src/LYPrint.c:1266
+msgid "(approximately)"
+msgstr "(²Ê²¤¦ô­p)"
+
+#: src/LYPrint.c:1273
+msgid "Some print functions have been disabled!"
+msgstr "¤w¸T¤î¨Ï¥Î¬Y³¡¥÷ªº¦C¦L¥\¯à¡I"
+
+#: src/LYPrint.c:1277
+msgid "Standard print options:"
+msgstr "¼Ð·Çªº¦C¦L³B²z¤è¦¡¡G"
+
+#: src/LYPrint.c:1278
+msgid "Print options:"
+msgstr "¦C¦L¿ï¶µ¡G"
+
+#: src/LYPrint.c:1285
+msgid "Save to a local file"
+msgstr "Àx¦s¦Ü¥»¾÷ªºÀÉ®×"
+
+#: src/LYPrint.c:1287
+msgid "Save to disk disabled"
+msgstr "¸T¤î±N¤º®eÀx¦s¦ÜºÏºÐ"
+
+#: src/LYPrint.c:1294
+msgid "Mail the file"
+msgstr "¶l±HÀÉ®×"
+
+#: src/LYPrint.c:1301
+msgid "Print to the screen"
+msgstr "¦bµe­±¦L¥X¸ê®Æ"
+
+#: src/LYPrint.c:1306
+msgid "Print out on a printer attached to your vt100 terminal"
+msgstr "¦b³s±µ vt100 ²×ºÝ¾÷ªº¦Lªí¾÷¦C¦L¸ê®Æ"
+
+#: src/LYReadCFG.c:371
+#, c-format
+msgid ""
+"Syntax Error parsing COLOR in configuration file:\n"
+"The line must be of the form:\n"
+"COLOR:INTEGER:FOREGROUND:BACKGROUND\n"
+"\n"
+"Here FOREGROUND and BACKGROUND must be one of:\n"
+"The special strings 'nocolor' or 'default', or\n"
+msgstr ""
+
+#: src/LYReadCFG.c:384
+msgid "Offending line:"
+msgstr ""
+
+#: src/LYReadCFG.c:681
+#, c-format
+msgid "key remapping of %s to %s for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:688
+#, c-format
+msgid "key remapping of %s to %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:709
+#, c-format
+msgid "invalid line-editor selection %s for key %s, selecting all\n"
+msgstr ""
+
+#: src/LYReadCFG.c:734 src/LYReadCFG.c:746
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:750
+#, c-format
+msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n"
+msgstr ""
+
+#: src/LYReadCFG.c:846
+#, c-format
+msgid "Lynx: cannot start, CERN rules file %s is not available\n"
+msgstr ""
+
+#: src/LYReadCFG.c:847
+msgid "(no name)"
+msgstr ""
+
+#: src/LYReadCFG.c:1881
+#, c-format
+msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1883
+#, c-format
+msgid "Last attempted include was '%s',\n"
+msgstr ""
+
+#: src/LYReadCFG.c:1884
+#, c-format
+msgid "included from '%s'.\n"
+msgstr ""
+
+#: src/LYReadCFG.c:2292 src/LYReadCFG.c:2305 src/LYReadCFG.c:2363
+msgid "The following is read from your lynx.cfg file."
+msgstr "¥H¤U¬O±q»Õ¤Uªº lynx.cfg ÀÉ®×Ū¨úªº³]©w¡C"
+
+#: src/LYReadCFG.c:2293 src/LYReadCFG.c:2306
+msgid "Please read the distribution"
+msgstr ""
+
+#: src/LYReadCFG.c:2299 src/LYReadCFG.c:2309
+msgid "for more comments."
+msgstr ""
+
+#: src/LYReadCFG.c:2345
+msgid "RELOAD THE CHANGES"
+msgstr "­«·s¸ü¤J§ó§ï«áªº³]©w"
+
+#: src/LYReadCFG.c:2353
+msgid "Your primary configuration"
+msgstr "¥D­n²ÕºA"
+
+#: src/LYShowInfo.c:173
+msgid "Directory that you are currently viewing"
+msgstr "¥Ø«eÂsÄýªº¥Ø¿ý"
+
+#: src/LYShowInfo.c:176
+msgid "Name:"
+msgstr "¦WºÙ¡G"
+
+#: src/LYShowInfo.c:179
+msgid "URL:"
+msgstr "URL¡G"
+
+#: src/LYShowInfo.c:193
+msgid "Directory that you have currently selected"
+msgstr "¥Ø«e¿ï¨úªº¥Ø¿ý"
+
+#: src/LYShowInfo.c:195
+msgid "File that you have currently selected"
+msgstr "¥Ø«e¿ï¨úªºÀÉ®×"
+
+#: src/LYShowInfo.c:198
+msgid "Symbolic link that you have currently selected"
+msgstr "¥Ø«e¿ï¨úªº²Å¸¹³sµ²"
+
+#: src/LYShowInfo.c:201
+msgid "Item that you have currently selected"
+msgstr "¥Ø«e¿ï¨úªº¶µ¥Ø"
+
+#: src/LYShowInfo.c:203
+msgid "Full name:"
+msgstr "§¹¾ã¦WºÙ¡G"
+
+#: src/LYShowInfo.c:213
+msgid "Unable to follow link"
+msgstr ""
+
+#: src/LYShowInfo.c:215
+msgid "Points to file:"
+msgstr ""
+
+#: src/LYShowInfo.c:220
+msgid "Name of owner:"
+msgstr "¾Ö¦³ªÌ¦WºÙ¡G"
+
+#: src/LYShowInfo.c:223
+msgid "Group name:"
+msgstr "¸s²Õ¦WºÙ¡G"
+
+#: src/LYShowInfo.c:225
+msgid "File size:"
+msgstr "Àɮפj¤p¡G"
+
+#: src/LYShowInfo.c:227
+#, fuzzy
+msgid "(bytes)"
+msgstr "¦ì¤¸²Õ"
+
+#.
+#. * Include date and time information.
+#.
+#: src/LYShowInfo.c:232
+msgid "Creation date:"
+msgstr "»s§@¤é´Á¡G"
+
+#: src/LYShowInfo.c:235
+msgid "Last modified:"
+msgstr "³Ì«á­×§ï®É¶¡¡G"
+
+#: src/LYShowInfo.c:238
+msgid "Last accessed:"
+msgstr "³Ì«á¦s¨ú®É¶¡¡G"
+
+#: src/LYShowInfo.c:244
+msgid "Access Permissions"
+msgstr "¦s¨úªºÅv­­"
+
+#: src/LYShowInfo.c:279
+#, fuzzy
+msgid "Group:"
+msgstr "©ÒÄݸs²Õ"
+
+#: src/LYShowInfo.c:299
+msgid "World:"
+msgstr ""
+
+#: src/LYShowInfo.c:306
+msgid "File that you are currently viewing"
+msgstr "¥Ø«e¥¿¦bÂsÄýªºÀÉ®×"
+
+#: src/LYShowInfo.c:314 src/LYShowInfo.c:418
+msgid "Linkname:"
+msgstr "Ãìµ²¦WºÙ¡G"
+
+#: src/LYShowInfo.c:320 src/LYShowInfo.c:335
+msgid "Charset:"
+msgstr "¦r¤¸¶°¡G"
+
+#: src/LYShowInfo.c:334
+msgid "(assumed)"
+msgstr ""
+
+#: src/LYShowInfo.c:341
+msgid "Server:"
+msgstr "¦øªA¾¹¡G"
+
+#: src/LYShowInfo.c:344
+msgid "Date:"
+msgstr "¤é´Á¡G"
+
+#: src/LYShowInfo.c:347
+msgid "Last Mod:"
+msgstr "³Ì«á­×§ï¡G"
+
+#: src/LYShowInfo.c:352
+msgid "Expires:"
+msgstr ""
+
+#: src/LYShowInfo.c:355
+msgid "Cache-Control:"
+msgstr ""
+
+#: src/LYShowInfo.c:358
+msgid "Content-Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:362
+msgid "Length:"
+msgstr ""
+
+#: src/LYShowInfo.c:367
+msgid "Language:"
+msgstr "»y¨¥¡G"
+
+#: src/LYShowInfo.c:374
+msgid "Post Data:"
+msgstr ""
+
+#: src/LYShowInfo.c:377
+msgid "Post Content Type:"
+msgstr ""
+
+#: src/LYShowInfo.c:380
+msgid "Owner(s):"
+msgstr "¾Ö¦³ªÌ¡G"
+
+#: src/LYShowInfo.c:385
+msgid "size:"
+msgstr "¤j¤p¡G"
+
+#: src/LYShowInfo.c:387
+msgid "lines"
+msgstr "¦æ"
+
+#: src/LYShowInfo.c:391
+msgid "forms mode"
+msgstr ""
+
+#: src/LYShowInfo.c:393
+msgid "source"
+msgstr ""
+
+#: src/LYShowInfo.c:394
+msgid "normal"
+msgstr ""
+
+#: src/LYShowInfo.c:396
+msgid ", safe"
+msgstr ""
+
+#: src/LYShowInfo.c:398
+msgid ", via internal link"
+msgstr ""
+
+#: src/LYShowInfo.c:403
+msgid ", no-cache"
+msgstr ""
+
+#: src/LYShowInfo.c:405
+msgid ", ISMAP script"
+msgstr ""
+
+#: src/LYShowInfo.c:407
+msgid ", bookmark file"
+msgstr ""
+
+#: src/LYShowInfo.c:411
+msgid "mode:"
+msgstr "¼Ò¦¡¡G"
+
+#: src/LYShowInfo.c:417
+msgid "Link that you currently have selected"
+msgstr "¥Ø«e¤w¿ï¨úªºÃìµ²"
+
+#: src/LYShowInfo.c:426
+msgid "Method:"
+msgstr ""
+
+#: src/LYShowInfo.c:430
+msgid "Enctype:"
+msgstr "½s½X¤è¦¡¡G"
+
+#: src/LYShowInfo.c:436
+#, fuzzy
+msgid "Action:"
+msgstr "¦ì¸m¡G"
+
+#: src/LYShowInfo.c:441
+msgid "(Form field)"
+msgstr ""
+
+#: src/LYShowInfo.c:450
+msgid "No Links on the current page"
+msgstr "¸Ó­¶­±¨S¦³¥ô¦óÃìµ²"
+
+#: src/LYShowInfo.c:455
+#, fuzzy
+msgid "Server Headers:"
+msgstr "¦øªA¾¹¡G"
+
+#: src/LYStyle.c:312
+#, c-format
+msgid ""
+"Syntax Error parsing style in lss file:\n"
+"[%s]\n"
+"The line must be of the form:\n"
+"OBJECT:MONO:COLOR (ie em:bold:brightblue:white)\n"
+"where OBJECT is one of EM,STRONG,B,I,U,BLINK etc.\n"
+"\n"
+msgstr ""
+
+#: src/LYTraversal.c:108
+msgid "here is a list of the history stack so that you may rebuild"
+msgstr ""
+
+#: src/LYUpload.c:75
+msgid "ERROR! - upload command is misconfigured"
+msgstr "¿ù»~¡I¢w ¥¼¦³¥¿½T¦a³]©w¥Î¨Ó¤W¶ÇÀɮתº«ü¥O"
+
+#: src/LYUpload.c:96
+msgid "Illegal redirection \"../\" found! Request ignored."
+msgstr "¥X²{¤£¦Xªkªº­«·s¾É¦V¡§../¡¨¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYUpload.c:99
+msgid "Illegal character \"/\" found! Request ignored."
+msgstr "¥X²{¤£¦Xªkªº¦r¤¸¡§/¡¨¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYUpload.c:102
+msgid "Illegal redirection using \"~\" found! Request ignored."
+msgstr "¥X²{¤£¦Xªk¦Ó¥B¨Ï¥Î¡§~¡¨ªº­«·s¾É¦V­n¨D¡I©¿²¤¸Ó­n¨D¡C"
+
+#: src/LYUpload.c:159
+msgid "Unable to upload file."
+msgstr "µLªk¤W¶ÇÀɮסC"
+
+#: src/LYUpload.c:201
+msgid "Upload To:"
+msgstr "¤W¶Ç¦Ü¡G"
+
+#: src/LYUpload.c:202
+msgid "Upload options:"
+msgstr "¤W¶Ç¿ï¶µ¡G"
+
+#: src/LYUtils.c:1830
+msgid "Download document URL put to clipboard."
+msgstr ""
+
+#: src/LYUtils.c:2615
+msgid "Unexpected access protocol for this URL scheme."
+msgstr ""
+
+#: src/LYUtils.c:3419
+msgid "Too many tempfiles"
+msgstr "¤Ó¦h¼È¦sÀÉ"
+
+#: src/LYUtils.c:3719
+msgid "unknown restriction"
+msgstr ""
+
+#: src/LYUtils.c:3750
+#, c-format
+msgid "No restrictions set.\n"
+msgstr ""
+
+#: src/LYUtils.c:3753
+#, c-format
+msgid "Restrictions set:\n"
+msgstr ""
+
+#: src/LYUtils.c:5131
+msgid "Cannot find HOME directory"
+msgstr "§ä¤£¨ì­Ó¤H¥Ø¿ý"
+
+#: src/LYrcFile.c:16
+msgid "Normally disabled.  See ENABLE_LYNXRC in lynx.cfg\n"
+msgstr "¤@¯ë¤£·|±Ò¥Î¡C½Ð°Ñ¦Ò lynx.cfg ¤¤ªº ENABLE_LYNXRC\n"
+
+#: src/LYrcFile.c:317
+msgid ""
+"accept_all_cookies allows the user to tell Lynx to automatically\n"
+"accept all cookies if desired.  The default is \"FALSE\" which will\n"
+"prompt for each cookie.  Set accept_all_cookies to \"TRUE\" to accept\n"
+"all cookies.\n"
+msgstr ""
+
+#: src/LYrcFile.c:325
+msgid ""
+"anonftp_password allows the user to tell Lynx to use the personal\n"
+"email address as the password for anonymous ftp.  If no value is given,\n"
+"Lynx will use the personal email address.  Set anonftp_password\n"
+"to a different value if you choose.\n"
+msgstr ""
+
+#: src/LYrcFile.c:332
+msgid ""
+"bookmark_file specifies the name and location of the default bookmark\n"
+"file into which the user can paste links for easy access at a later\n"
+"date.\n"
+msgstr ""
+
+#: src/LYrcFile.c:337
+msgid ""
+"If case_sensitive_searching is \"on\" then when the user invokes a search\n"
+"using the 's' or '/' keys, the search performed will be case sensitive\n"
+"instead of case INsensitive.  The default is usually \"off\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:342
+msgid ""
+"The character_set definition controls the representation of 8 bit\n"
+"characters for your terminal.  If 8 bit characters do not show up\n"
+"correctly on your screen you may try changing to a different 8 bit\n"
+"set or using the 7 bit character approximations.\n"
+"Current valid characters sets are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:349
+msgid ""
+"cookie_accept_domains and cookie_reject_domains are comma-delimited\n"
+"lists of domains from which Lynx should automatically accept or reject\n"
+"all cookies.  If a domain is specified in both options, rejection will\n"
+"take precedence.  The accept_all_cookies parameter will override any\n"
+"settings made here.\n"
+msgstr ""
+
+#: src/LYrcFile.c:357
+msgid ""
+"cookie_file specifies the file from which to read persistent cookies.\n"
+"The default is ~/"
+msgstr ""
+
+#: src/LYrcFile.c:362
+msgid ""
+"cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n"
+"cookie_query_invalid_domains are comma-delimited lists of which domains\n"
+"should be subjected to varying degrees of validity checking.  If a\n"
+"domain is set to strict checking, strict conformance to RFC2109 will\n"
+"be applied.  A domain with loose checking will be allowed to set cookies\n"
+"with an invalid path or domain attribute.  All domains will default to\n"
+"querying the user for an invalid path or domain.\n"
+msgstr ""
+
+#: src/LYrcFile.c:376
+msgid ""
+"dir_list_order specifies the directory list order under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"ORDER_BY_NAME\"\n"
+msgstr ""
+
+#: src/LYrcFile.c:381
+msgid ""
+"dir_list_styles specifies the directory list style under DIRED_SUPPORT\n"
+"(if implemented).  The default is \"MIXED_STYLE\", which sorts both\n"
+"files and directories together.  \"FILES_FIRST\" lists files first and\n"
+"\"DIRECTORIES_FIRST\" lists directories first.\n"
+msgstr ""
+
+#: src/LYrcFile.c:389
+msgid ""
+"If emacs_keys is to \"on\" then the normal EMACS movement keys:\n"
+"  ^N = down    ^P = up\n"
+"  ^B = left    ^F = right\n"
+"will be enabled.\n"
+msgstr ""
+"¦pªG±N emacs_keys ³]©w¬°¡§on¡¨¡A«h·|±Ò¥Î¤@¯ëªº EMACS ¤è¦V«öÁä¡G\n"
+"  ^N = ¤U²¾    ^P = ¤W²¾\n"
+"  ^B = ¥ª²¾    ^F = ¥k²¾\n"
+
+#: src/LYrcFile.c:395
+msgid ""
+"file_editor specifies the editor to be invoked when editing local files\n"
+"or sending mail.  If no editor is specified, then file editing is disabled\n"
+"unless it is activated from the command line, and the built-in line editor\n"
+"will be used for sending mail.\n"
+msgstr ""
+
+#: src/LYrcFile.c:402
+msgid ""
+"The file_sorting_method specifies which value to sort on when viewing\n"
+"file lists such as FTP directories.  The options are:\n"
+"   BY_FILENAME -- sorts on the name of the file\n"
+"   BY_TYPE     -- sorts on the type of the file\n"
+"   BY_SIZE     -- sorts on the size of the file\n"
+"   BY_DATE     -- sorts on the date of the file\n"
+msgstr ""
+
+#: src/LYrcFile.c:424
+msgid ""
+"lineedit_mode specifies the key binding used for inputting strings in\n"
+"prompts and forms.  If lineedit_mode is set to \"Default Binding\" then\n"
+"the following control characters are used for moving and deleting:\n"
+"\n"
+"             Prev  Next       Enter = Accept input\n"
+"   Move char: <-    ->        ^G    = Cancel input\n"
+"   Move word: ^P    ^N        ^U    = Erase line\n"
+" Delete char: ^H    ^R        ^A    = Beginning of line\n"
+" Delete word: ^B    ^F        ^E    = End of line\n"
+"\n"
+"Current lineedit modes are:\n"
+msgstr ""
+
+#: src/LYrcFile.c:442
+msgid ""
+"The following allow you to define sub-bookmark files and descriptions.\n"
+"The format is multi_bookmark<capital_letter>=<filename>,<description>\n"
+"Up to 26 bookmark files (for the English capital letters) are allowed.\n"
+"We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n"
+msgstr ""
+
+#: src/LYrcFile.c:448
+msgid ""
+"personal_mail_address specifies your personal mail address.  The\n"
+"address will be sent during HTTP file transfers for authorization and\n"
+"logging purposes, and for mailed comments.\n"
+"If you do not want this information given out, set the NO_FROM_HEADER\n"
+"to TRUE in lynx.cfg, or use the -nofrom command line switch.  You also\n"
+"could leave this field blank, but then you won't have it included in\n"
+"your mailed comments.\n"
+msgstr ""
+
+#: src/LYrcFile.c:457
+msgid ""
+"preferred_charset specifies the character set in MIME notation (e.g.,\n"
+"ISO-8859-2, ISO-8859-5) which Lynx will indicate you prefer in requests\n"
+"to http servers using an Accept-Charset header.  The value should NOT\n"
+"include ISO-8859-1 or US-ASCII, since those values are always assumed\n"
+"by default.  May be a comma-separated list.\n"
+"If a file in that character set is available, the server will send it.\n"
+"If no Accept-Charset header is present, the default is that any\n"
+"character set is acceptable.  If an Accept-Charset header is present,\n"
+"and if the server cannot send a response which is acceptable\n"
+"according to the Accept-Charset header, then the server SHOULD send\n"
+"an error response, though the sending of an unacceptable response\n"
+"is also allowed.\n"
+msgstr ""
+
+#: src/LYrcFile.c:473
+msgid ""
+"preferred_language specifies the language in MIME notation (e.g., en,\n"
+"fr, may be a comma-separated list in decreasing preference)\n"
+"which Lynx will indicate you prefer in requests to http servers.\n"
+"If a file in that language is available, the server will send it.\n"
+"Otherwise, the server will send the file in its default language.\n"
+msgstr ""
+
+#: src/LYrcFile.c:484
+msgid ""
+"If run_all_execution_links is set \"on\" then all local execution links\n"
+"will be executed when they are selected.\n"
+"\n"
+"WARNING - This is potentially VERY dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:495
+msgid ""
+"If run_execution_links_on_local_files is set \"on\" then all local\n"
+"execution links that are found in LOCAL files will be executed when they\n"
+"are selected.  This is different from run_all_execution_links in that\n"
+"only files that reside on the local system will have execution link\n"
+"permissions.\n"
+"\n"
+"WARNING - This is potentially dangerous.  Since you may view\n"
+"          information that is written by unknown and untrusted sources\n"
+"          there exists the possibility that Trojan horse links could be\n"
+"          written.  Trojan horse links could be written to erase files\n"
+"          or compromise security.  This should only be set to \"on\" if\n"
+"          you are viewing trusted source information.\n"
+msgstr ""
+
+#: src/LYrcFile.c:513
+msgid ""
+"select_popups specifies whether the OPTIONs in a SELECT block which\n"
+"lacks a MULTIPLE attribute are presented as a vertical list of radio\n"
+"buttons or via a popup menu.  Note that if the MULTIPLE attribute is\n"
+"present in the SELECT start tag, Lynx always will create a vertical list\n"
+"of checkboxes for the OPTIONs.  A value of \"on\" will set popup menus\n"
+"as the default while a value of \"off\" will set use of radio boxes.\n"
+"The default can be overridden via the -popup command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:523
+msgid ""
+"show_color specifies how to set the color mode at startup.  A value of\n"
+"\"never\" will force color mode off (treat the terminal as monochrome)\n"
+"at startup even if the terminal appears to be color capable.  A value of\n"
+"\"always\" will force color mode on even if the terminal appears to be\n"
+"monochrome, if this is supported by the library used to build lynx.\n"
+"A value of \"default\" will yield the behavior of assuming\n"
+"a monochrome terminal unless color capability is inferred at startup\n"
+"based on the terminal type, or the -color command line switch is used, or\n"
+"the COLORTERM environment variable is set.  The default behavior always is\n"
+"used in anonymous accounts or if the \"option_save\" restriction is set.\n"
+"The effect of the saved value can be overridden via\n"
+"the -color and -nocolor command line switches.\n"
+"The mode set at startup can be changed via the \"show color\" option in\n"
+"the 'o'ptions menu.  If the option settings are saved, the \"on\" and\n"
+"\"off\" \"show color\" settings will be treated as \"default\".\n"
+msgstr ""
+
+#: src/LYrcFile.c:540
+msgid ""
+"show_cursor specifies whether to 'hide' the cursor to the right (and\n"
+"bottom, if possible) of the screen, or to place it to the left of the\n"
+"current link in documents, or current option in select popup windows.\n"
+"Positioning the cursor to the left of the current link or option is\n"
+"helpful for speech or braille interfaces, and when the terminal is\n"
+"one which does not distinguish the current link based on highlighting\n"
+"or color.  A value of \"on\" will set positioning to the left as the\n"
+"default while a value of \"off\" will set 'hiding' of the cursor.\n"
+"The default can be overridden via the -show_cursor command line toggle.\n"
+msgstr ""
+
+#: src/LYrcFile.c:551
+msgid ""
+"show_dotfiles specifies that the directory listing should include\n"
+"\"hidden\" (dot) files/directories.  If set \"on\", this will be\n"
+"honored only if enabled via userdefs.h and/or lynx.cfg, and not\n"
+"restricted via a command line switch.  If display of hidden files\n"
+"is disabled, creation of such files via Lynx also is disabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:562
+msgid ""
+"If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n"
+"been defined (see below), then all bookmark operations will first\n"
+"prompt the user to select an active sub-bookmark file.  If the default\n"
+"Lynx bookmark_file is defined (see above), it will be used as the\n"
+"default selection.  When this option is set to \"advanced\", and the\n"
+"user mode is advanced, the 'v'iew bookmark command will invoke a\n"
+"statusline prompt instead of the menu seen in novice and intermediate\n"
+"user modes.  When this option is set to \"standard\", the menu will be\n"
+"presented regardless of user mode.\n"
+msgstr ""
+
+#: src/LYrcFile.c:576
+msgid ""
+"user_mode specifies the users level of knowledge with Lynx.  The\n"
+"default is \"NOVICE\" which displays two extra lines of help at the\n"
+"bottom of the screen to aid the user in learning the basic Lynx\n"
+"commands.  Set user_mode to \"INTERMEDIATE\" to turn off the extra info.\n"
+"Use \"ADVANCED\" to see the URL of the currently selected link at the\n"
+"bottom of the screen.\n"
+msgstr ""
+
+#: src/LYrcFile.c:585
+msgid ""
+"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"
+msgstr ""
+
+#: src/LYrcFile.c:590
+msgid ""
+"If vi_keys is set to \"on\", then the normal VI movement keys:\n"
+"  j = down    k = up\n"
+"  h = left    l = right\n"
+"will be enabled.  These keys are only lower case.\n"
+"Capital 'H', 'J' and 'K will still activate help, jump shortcuts,\n"
+"and the keymap display, respectively.\n"
+msgstr ""
+
+#: src/LYrcFile.c:598
+msgid ""
+"The visited_links setting controls how Lynx organizes the information\n"
+"in the Visited Links Page.\n"
+msgstr ""
+
+#: src/LYrcFile.c:819
+msgid ""
+"If keypad_mode is set to \"NUMBERS_AS_ARROWS\", then the numbers on\n"
+"your keypad when the numlock is on will act as arrow keys:\n"
+"            8 = Up Arrow\n"
+"  4 = Left Arrow    6 = Right Arrow\n"
+"            2 = Down Arrow\n"
+"and the corresponding keyboard numbers will act as arrow keys,\n"
+"regardless of whether numlock is on.\n"
+msgstr ""
+
+#: src/LYrcFile.c:828
+msgid ""
+"If keypad_mode is set to \"LINKS_ARE_NUMBERED\", then numbers will\n"
+"appear next to each link and numbers are used to select links.\n"
+msgstr ""
+
+#: src/LYrcFile.c:832
+msgid ""
+"If keypad_mode is set to \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\", then\n"
+"numbers will appear next to each link and visible form input field.\n"
+"Numbers are used to select links, or to move the \"current link\" to a\n"
+"form input field or button.  In addition, options in popup menus are\n"
+"indexed so that the user may type an option number to select an option in\n"
+"a popup menu, even if the option isn't visible on the screen.  Reference\n"
+"lists and output from the list command also enumerate form inputs.\n"
+msgstr ""
+
+#: src/LYrcFile.c:841
+msgid ""
+"NOTE: Some fixed format documents may look disfigured when\n"
+"\"LINKS_ARE_NUMBERED\" or \"LINKS_AND_FORM_FIELDS_ARE_NUMBERED\" are\n"
+"enabled.\n"
+msgstr ""
+
+#: src/LYrcFile.c:873
+msgid ""
+"Lynx User Defaults File\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:882
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the 'o' key).  To save options with that screen, you must select the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:889
+msgid ""
+"You must then save the settings using the link on the line above the\n"
+"checkbox:\n"
+msgstr ""
+
+#: src/LYrcFile.c:896
+msgid ""
+"You may also use the command-line option \"-forms_options\", which displays\n"
+"the simpler Options Menu instead.  Save options with that using the '>' key.\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:903
+msgid ""
+"This file contains options saved from the Lynx Options Screen (normally\n"
+"with the '>' key).\n"
+"\n"
+msgstr ""
+
+#: src/LYrcFile.c:910
+msgid ""
+"There is normally no need to edit this file manually, since the defaults\n"
+"here can be controlled from the Options Screen, and the next time options\n"
+"are saved from the Options Screen this file will be completely rewritten.\n"
+"You have been warned...\n"
+"\n"
+"If you are looking for the general configuration file - it is normally\n"
+"called \"lynx.cfg\".  It has different content and a different format.\n"
+"It is not this file.\n"
+msgstr ""
+
+#~ msgid "reason unknown."
+#~ msgstr "­ì¦]¤£¸Ô¡C"
+
+#~ msgid "KB"
+#~ msgstr "KB"
+
+#~ msgid "Remove '%s' and all of its contents?"
+#~ msgstr "²¾°£¡¥%s¡¦¤Î¨ä¤¤©Ò¦³ªº¤º®e¡H"
+
+#~ msgid "Remove directory and all of its contents?"
+#~ msgstr "²¾°£¸Ó¥Ø¿ý¤Î¨ä¤¤©Ò¦³ªº¤º®e¡H"
+
+#~ msgid "Unable to open file management menu file."
+#~ msgstr "µLªk¶}±ÒÀɮ׺޲z¿ï³æÀɮסC"
diff --git a/samples/blue-background.lss b/samples/blue-background.lss
new file mode 100644
index 00000000..9c5d4925
--- /dev/null
+++ b/samples/blue-background.lss
@@ -0,0 +1,95 @@
+# From: Sergey Svishchev <svs@ropnet.ru> 
+# Notes:
+# I use this in OS/2 VIO window, and occasionally on Linux console. 
+ 
+# Setting the normal and default types lets us keep (almost) the same colors
+# whether the terminal's default colors are white-on-black or black-on-white.
+# It is not exact since the default "white" is not necessarily the same color
+# as the ANSI lightgray, but is as close as we can get in a standard way.
+#
+# If you really want the terminal's default colors, and if lynx is built using
+# ncurses' default-color support, remove these two lines:
+normal:		normal:			lightgray:	blue
+default:	normal:			white:		blue
+
+# Normal type styles correspond to HTML tags.
+#
+# The next line (beginning with "em") means:  use bold if mono, otherwise
+# brightblue on <defaultbackground>
+em:		bold:			brightgreen:	blue 
+strong:		bold:			brightred:	blue 
+b:		bold:			white:		blue 
+i:		bold:			yellow:		blue 
+alink:		reverse:		white:		cyan 
+a:		bold:			cyan:		blue 
+img:		dim:			gray:		blue 
+status:		reverse:		white:		green 
+fig:		normal:			gray:		blue 
+caption:	reverse:		brown:		blue 
+hr:		normal:			yellow:		blue 
+blockquote:	normal:			brightblue:	blue 
+#ul:normal:	brown:blue 
+address:	normal:			magenta:	blue 
+#title:	normal:magenta:blue 
+tt:		dim:			gray:		blue 
+h1:		bold:			yellow:		blue 
+label:		normal:			magenta:	blue 
+value:		normal:			green:		blue 
+q:		normal:			yellow:		magenta 
+small:		dim:			gray:		blue 
+big:		bold:			yellow:		blue 
+sup:		bold:			yellow:		blue 
+sub:		dim:			gray:		blue 
+ 
+# glitch fixes 
+area:		normal:			lightgray:	blue 
+body:		normal:			lightgray:	blue 
+br:		normal:			lightgray:	blue 
+center:		normal:			lightgray:	blue 
+center.header:	normal:			lightgray:	blue 
+div:		normal:			lightgray:	blue 
+font:		normal:			lightgray:	blue 
+font.letter:	normal:			lightgray:	blue 
+h2:		normal:			lightgray:	blue 
+h3:		normal:			lightgray:	blue 
+h4:		normal:			lightgray:	blue 
+h5:		normal:			lightgray:	blue 
+h6:		normal:			lightgray:	blue 
+head:		normal:			lightgray:	blue 
+link:		normal:			lightgray:	blue 
+map:		normal:			lightgray:	blue 
+meta:		normal:			lightgray:	blue 
+p:		normal:			lightgray:	blue 
+table:		normal:			lightgray:	blue 
+td:		normal:			lightgray:	blue 
+tr:		normal:			lightgray:	blue 
+title:		normal:			lightgray:	blue 
+ 
+form:		normal:			lightgray:	blue 
+input:		normal:			lightgray:	blue 
+input.submit:	normal:			cyan:		blue 
+select:		normal:			lightgray:	blue 
+option:		normal:			lightgray:	blue 
+ 
+pre:		normal:			lightgray:	blue 
+dd:		normal:			lightgray:	blue 
+dt:		normal:			lightgray:	blue 
+ul:		normal:			lightgray:	blue 
+li:		normal:			lightgray:	blue 
+ 
+base:		normal:			lightgray:	blue 
+iframe:		normal:			lightgray:	blue 
+cite:		normal:			yellow:		blue 
+
+span.htmlsrc_comment:normal:		green:		blue 
+span.htmlsrc_tag:normal:		brightgreen:	blue 
+span.htmlsrc_attrib:normal:		brightcyan:	blue 
+span.htmlsrc_attrval:normal:		white:		blue 
+span.htmlsrc_abracket:normal:		brightgreen:	blue 
+span.htmlsrc_entity:normal:		white:		blue 
+##span.htmlsrc_href:
+##span.htmlsrc_entire:
+span.htmlsrc_badseq:normal:		red:		blue 
+span.htmlsrc_badtag:normal:		red:		blue 
+span.htmlsrc_badattr:normal:		red:		blue 
+span.htmlsrc_sgmlspecial:normal:	yellow:		blue 
diff --git a/samples/bright-blue.lss b/samples/bright-blue.lss
new file mode 100644
index 00000000..534e9c19
--- /dev/null
+++ b/samples/bright-blue.lss
@@ -0,0 +1,77 @@
+# From: Ilya Zakharevich <ilya@math.ohio-state.edu>
+#
+# Colors: black, red, green, brown, blue, magenta, cyan,
+# lightgray, gray, brightred, brightgreen, yellow, brightblue,
+# brightmagenta, brightcyan, white.
+#
+# On some terminals combination of background and foreground of different
+# brightness is not supported.
+#
+# Normal type styles correspond to HTML tags.
+#
+# default should be the *last* line
+normal:  	normal:  		brightcyan:	blue
+default:	normal:			brightcyan:	blue
+
+# match "link":
+input:		normal:			green
+textarea:	normal:			white:		cyan
+
+input.type.submit:normal:		blue:		black
+# type-less input is the same as type=text (similar to textarea)
+input.type.:	normal:			white:		cyan
+input.type.text:normal:			white:		cyan
+input.type.password:normal:		white:		cyan
+input.type.file:normal:			brightred:	cyan
+
+# Shows gray on black?!
+edit.current:normal:			yellow:		lightgray
+#edit.current:normal:yellow:white
+edit.active:normal:			black:		white
+edit.active.marked:normal:		white:		black
+edit.prompt:normal:			white:		gray
+edit.prompt.marked:normal:		black:		white
+edit.active.arrow:normal:		red:		white
+edit.prompt.arrow:normal:		red:		gray
+edit.active.pad:normal:			red:		lightgray
+edit.prompt.pad:normal:			white:		black
+
+option:normal:				red:		black
+#alink:normal:red:green
+
+scroll.arrow:	bold:			white:		default
+scroll.noarrow:	normal:			black:		default
+scroll.bar:	bold:			white
+#scroll.back:reverse:green:red
+
+status:		reverse:		yellow:		black
+h1:		bold:			yellow:		black
+em:		bold:			white
+title:		normal:			magenta:	black
+i:		bold:			white
+table:		normal:			white
+blockquote:	normal:			white
+
+menu.bg:	normal:			black:		lightgray
+menu.frame:	normal:			black:		lightgray
+menu.entry:	normal:			white:		gray
+menu.n:		normal:			white:		gray
+menu.active:	normal:			white:		black
+menu.sb:	normal:			brightred:	lightgray
+
+forwbackw.arrow:bold:			red:		default
+hot.paste:	normal:			brightred:	gray
+
+# FIXME: what are these?
+em.a:		reverse:		black:		blue
+em.b:		reverse:		white:		black
+font.letter:	normal:			default:	black
+link.blue:	bold:			white:		brightblue
+link.blue.prev:	bold:			yellow:		brightblue
+li.blue:	bold:			blue:		black
+link.blue.next:	bold:			blue:		black
+
+INCLUDE:lynx.lss
+
+# default should be the *last* line
+#?default:	normal:			brightcyan:	blue
diff --git a/samples/cernrules.txt b/samples/cernrules.txt
new file mode 100644
index 00000000..90ca2f3f
--- /dev/null
+++ b/samples/cernrules.txt
@@ -0,0 +1,640 @@
+# This files contains examples and an explanation for the RULESFILE / RULE
+# feature.
+#
+# Rules for Lynx are experimental.  They provide a rudimentary capability
+# for URL rejection and substitution based on string matching.
+# Most users and most installations will not need this feature, it is here
+# in case you find it useful.  Note that this may change or go away in
+# future releases of Lynx; if you find it useful, consider describing your
+# use of it in a message to <lynx-dev@nongnu.org>.
+#
+# Syntax:
+# =======
+# Summary of common forms:
+#
+#   Fail           URL1
+#   Map            URL1  URL2      [CONDITION]
+#   Pass           URL1  [URL2]    [CONDITION]
+#   Redirect       URL1  URL2      [CONDITION]
+#   RedirectPerm   URL1  URL2      [CONDITION]
+#   UseProxy       URL1  PROXYURL  [CONDITION]
+#   UseProxy       URL1  "none"    [CONDITION]
+#
+#   Alert          URL1  MESSAGE   [CONDITION]
+#   AlwaysAlert    URL1  MESSAGE   [CONDITION]
+#   UserMsg        URL1  MESSAGE   [CONDITION]
+#   InfoMsg        URL1  MESSAGE   [CONDITION]
+#   Progress       URL1  MESSAGE   [CONDITION]
+#
+# As you may have guessed, comments are introduced by a '#' character.
+# Rules have the general form
+#   Operator  Operand1  [Operand2]  [CONDITION]
+# with words separated by whitespace.  Words containing space can be quoted
+# with "double quotes".  Although normally this should not be necessary
+# necessary for URLs, it has to be used for MESSAGE Operands in Alert etc.
+# See below for an explanation of the optional CONDITION.
+#
+# Recognized operators are
+#
+#   Fail  URL1
+# Reject access to this URL, stop processing further rules.
+#
+#   Map   URL1  URL2
+# Change the current URL to URL2, then continue processing.
+#
+#   Pass  URL1  [URL2]
+# Accept this URL and stop processing further rules; if URL2
+# is given, apply this as the last mapping.
+# See the next item for reasons why you generally don't want to "pass"
+# a changed URL.
+#
+#   RedirectTemp       URL1  URL2
+#   RedirectPerm       URL1  URL2
+#   Redirect [STATUS]  URL1  URL2
+# Stop processing further rules and redirect to URL2, just as if lynx had
+# received a HTTP redirection with URL2 as the new location.  This means that
+# URL2 is subject to any applicable permission checking, if it passes a new
+# request will be issued (which may result in a new round of rules checking,
+# with a new "current URL") or the new URL might be taken from the cache, and,
+# after successful loading, lynx's idea of what the loaded document's URL is
+# will be fully updated.  All this does not happen if you just "pass" a changed
+# URL (or let it fall through), so this is generally the preferred way for
+# substituting URLs. 
+# If the RedirectPerm variant is used, or if the optional word is supplied and
+# is either "permanent" or "301", act as if lynx had received a permanent
+# redirection (with HTTP status 301).  In most cases this will not make a
+# noticeable difference.  Lynx may cache the location in a special way for 301
+# redirections, so that the redirection is followed immediately the next time
+# the same original URL is accessed, without re-checking of rules.  Therefore
+# the permanent variant should never be used if the desired outcome of rules
+# processing depends on variable conditions (see CONDITIONS below) or on
+# setting a special flag (see next item).
+#
+#   PermitRedirection  URL1
+# Mark following redirection as permitted, and continue processing.  Some
+# redirection locations are normally not allowed, because permitting them in a
+# response from an arbitrary remote server would open a security hole, and
+# others are not allowed if certain restrictions options are in effect.  Among
+# redirection locations normally always forbidden are lynxprog:  and lynxexec: 
+# schemes.  With "default" anonymous restrictions in effect, many URL schemes
+# are disallowed if the user would not be allowed to use them with 'g'oto. 
+# This rule allows to override the permission checking if rules processing ends
+# with a Redirect (including the RedirectPerm or RedirectTemp forms).  It is
+# ignored otherwise, in particular, it does not influence acceptance if rules
+# processing ends with a "Pass" and a real redirection is received in the
+# subsequent HTTP request.  If redirections are chained, it only applies to the
+# redirection that ends the same rules cycle.  Note that the new URL is still
+# subject to other permission checks that are not specific to redirections; but
+# using this rule may still weaken the expected effect of -anonymous,
+# -validate, -realm, and other restriction options, including TRUSTED_EXEC and
+# similar in lynx.cfg, so be careful where you redirect to if restrictions are
+# important!
+#
+#   UseProxy  URL1  PROXYURL
+# Stop processing further rules, and force access through the proxy given by
+# PROXYURL.  PROXYURL should have the same form as required for foo_proxy
+# environment variables and lynx.cfg options, i.e., (unless you are trying to
+# do something unusual) "http://some.proxy-server.dom:port/".  This rule
+# overrides any use of a proxy (or external gateway) that might otherwise apply
+# because of environment variables or lynx.cfg options, it also overrides any
+# "no_proxy" settings.
+#
+#   UseProxy  URL1  none
+# Mark request as NOT using any proxy (or external gateway), and continue
+# processing(!).  For a request marked this way, any subsequent UseProxy
+# rule with a PROXYURL will be ignored, and any use of a proxy (or external
+# gateway) that might otherwise apply because of environment variables or
+# lynx.cfg options will be overridden.  Note that the marking will not
+# survive a Redirect rule (since that will result, if successful, in a
+# new request).
+#
+#   Alert         URL1  MESSAGE
+#   AlwaysAlert   URL1  MESSAGE
+#   UserMsg       URL1  MESSAGE
+#   InfoMsg       URL1  MESSAGE
+#   Progress      URL1  MESSAGE
+# These produce various kinds of statusline messages, differing in whether
+# a pause is enforced and in its duration, immediately when the rule is
+# applied.  AlwaysAlert shows the message text even in non-interactive mode
+# (-dump, -source, etc.).  Rule processing continues after the message is
+# shown.  As usual, these rules only apply if URL1 matches.  MESSAGE is
+# the text to be displayed, it can contain one occurrence of "%s" which
+# will be replaced by the current URL, literal '%' characters should be
+# doubled as "%%".
+#
+# Rules are processed sequentially first to last for each request, a rule
+# applies if the current URL matches URL1.  The current URL is initally the
+# URL for the resource the user is trying to access, but may change as the
+# result of applied Map rules.  case-sensitive (!) string comparison is used,
+# in addition URL1 can contain one '*' which is interpreted as a wildcard
+# matching 0 or more characters.  So if for example
+# "http://example.com/dir/doc.html" is requested, it would match any of
+# the following:
+#   Pass  http:*
+#   Pass  http://example.com/*.html
+#   Pass  http://example.com/*
+#   Pass  http://example*
+#   Pass  http://*/doc.html
+# but not:
+#   Pass  http://example/*
+#   Pass  http://Example.COM/dir/doc.html
+#   Pass  http://Example.COM/*
+#
+# If a URL2 is given and also contains a '*', that character will be
+# replaced by whatever matched in URL1.  Processing stops with the
+# first matching "Fail" or "Pass" or when the end of the rules is reached.
+# If the end is reached without a "Fail" or "Pass", the URL is allowed
+# (equivalent to a final "Pass *").
+#
+# The requested URL will have been transformed to Lynx's normal
+# representation.  This means that local file resources should be
+# expected in the form "file://localhost/<path using slash separators>",
+# not in the machine's native representation for filenames.
+#
+# Anyone with experience configuring the venerable CERN httpd server will
+# recognize some of the syntax - in fact, the code implementing rules goes
+# back to a common ancestor.  But note the differences: all URLs and URL-
+# patterns here have to be given as absolute URLs, even for local files.
+# (Absolute URLs don't imply proxying.)
+#
+# CONDITIONS
+# ----------
+# All rules mentioned can be followed by an optional CONDITION, which can
+# be used to further restrict when the rule should be applied (in addition
+# to the match on URL1).  A CONDITION takes one of the forms
+#   "if"     CONDITIONFLAG
+#   "unless" CONDITIONFLAG
+# and currently two condition flags are recognized:
+#   "userspecified"   (or abbreviated "userspec")
+#   "redirected"
+# To explain these, first some terms need to be defined.  A "request"
+# is...
+# 
+# A user action (like following a link, or entering a 'g'oto URL) can either be
+# rejected immediately (for example, because of restrictions in effect, or
+# because of invalid input), or can generate a "request".  For the purpose of
+# this discussion, a "request" is the sequence of processing done by lynx,
+# which might ultimately lead to an actual network request and loading and
+# display of data; a request can also result in rejection (for example, some
+# restrictions are checked at this stage), or in a redirection.  A redirection
+# in turn can be rejected (which makes the request fail), or can automatically
+# generate a new request.  A "request chain" is the sequence of one or more
+# requests triggered by the same user event that are chained together by
+# redirections.
+# For each request, some URL schemes are handled (or rejected) specially, see
+# Limitation 1 below, the others are passed to the generic access code.  Rules
+# processing occurs at the beginning of the generic access code, before a
+# request is dispatched to the scheme-specific protocol module (but after
+# checking whether the request can be satisfied by re-displaying an already
+# cached document).
+# With these definitions, the meaning of the possible CONDITIONFLAGS:
+# 
+#   if redirected
+# The rule applies if the current request results from a redirection;
+# whether that was a real HTTP redirection or one generated by a rule
+# in the previous request makes no difference.  In other words, the
+# condition is true if the current request is not the first one in the
+# request chain.
+#
+#   if userspecified
+# The rule applies if the initial URL of the request chain was specified
+# by the user.  Lynx marks a request as "user specified" for URLs that
+# come from 'g'oto prompts, as well as for following links in a bookmark
+# or Jump file and some other special (lynx-generated) pages that may
+# contain URLs that were typed in by the user.
+# Note that this is not a property of the request, but of the whole request
+# chain (based on where the first request's URL came from).  The current
+# URL may differ from what the user typed
+# - because of initial fixups, including conversion of Guess-URLs and file
+#   paths to full URLs,
+# - because of Map rules applied, and/or
+# - because of a previous redirection.
+# So to make reasonably sure a suspicious or potentially dangerous URL has
+# been entered by the user, i.e. is not a link or external redirection
+# location that cannot be trusted, a combination of "userspecified" and
+# "redirected" flags should be used, for example
+#   Fail URL1 unless userspecified
+#   Fail URL1 if redirected
+#   ...
+#
+# CAVEAT
+# ======
+# First, to squash any false expectations, an example for what NOT TO DO.
+# It might be expected that a rule like
+#   Fail  file://localhost/etc/passwd		# <- DON'T RELY ON THIS
+# could be used to prevent access to the file "/etc/passwd".  This might
+# fool a naive user, but the more sophisticated user could still gain
+# access, by experimenting with other forms like (@@@ untested)
+# "file://<machine's domain name>/etc/passwd" or "/etc//passwd"
+# or "/etc/p%61asswd" or "/etc/passwd?" or "/etc/passwd#X" and so on.
+# There are many URL forms for accessing the same resource, and Lynx
+# just doesn't guarantee that URLs for the same resource will look the
+# same way.
+#
+# The same reservation applies to any attempts to block access to unwanted
+# sites and so on.  This isn't the right place for implementing it.
+# (Lynx has a number of mechanisms documented elsewhere to restrict access,
+# see the INSTALLATION file, lynx.cfg, lynx -help, lynx -restrictions.)
+#
+# Some more useful applications:
+#
+# 1. Disabling URLs by access scheme
+# ----------------------------------
+#   Fail  gopher:*
+#   Fail  finger:*
+#   Fail  lynxcgi:*
+#   Fail  LYNXIMGMAP:*
+# This should work (but no guarantees) because Lynx canonicalizes
+# the case of recognized access schemes and does not interpret
+# %-escaping in the scheme part (@@@ always?)
+#
+# Note that for many access schemes Lynx already has mechanisms to
+# restrict access (see lynx.cfg, -help, -restrictions, etc.), others
+# have to be specifically enabled.  Those mechanisms should be used
+# in preference.
+# Note especially Limitation 1 below.
+# This can be used for the remaining cases, or in addition by the
+# more paranoid.  Note that disabling "file:*" will also make many
+# of the special pages generated by lynx as temporary files (INFO,
+# history, ...) inaccessible, on the other hand it doesn't prevent
+# _writing_ of various temp files - probably not what you want.
+#
+# You could also direct access for a scheme to a brief text explaining
+# why it's not available:
+#   Redirect news:*   http://localhost/texts/newsserver-is-broken.html
+#
+# 2. Preventing accidental access
+# -------------------------------
+# If there is a page or site you don't want to access for whatever
+# reason (say there's a link to it that crashes Lynx [don't forget to
+# report a bug], or if that starts sending you a 5 Mb file you don't
+# want, or you just don't like the people...), you can prevent yourself
+# from accidentally accessing it:
+#    Fail  http://bad.site.com/*
+#
+# 3. Compressed files
+# -------------------
+# You have downloaded a bunch of HTML documents, and compressed them
+# to save space.  Then you discover that links between the files don't
+# work, because they all use the names of the uncompressed files.  The
+# following kind of rule will alow you to navigate, invisibly accessing
+# the compressed files:
+#   Map file://localhost/somedir/*.html file://localhost/somedir/*.html.gz
+# or, perhaps better:
+#   Redirect file://localhost/somedir/*.html file://localhost/somedir/*.html.gz
+#
+# 4. Use local copies
+# -------------------
+# You have downloaded a tree of HTML documents, but there are many links
+# between them that still point to the remote location.  You want to access
+# the local copies instead, after all that's why you downloaded them.  You
+# could start editing the HTML, but the following might be simpler:
+#  Map http://remote.com/docs/*.html file://localhost/home/me/docs/*.html
+# Or even combine this with compressing the files:
+#  Map http://remote.com/docs/*.html file://localhost/home/me/docs/*.html.gz
+#
+# Again, replacing the "Map" with "Redirect" is probably better - it will
+# allow you to see the _real_ location on the lynx INFO screen or in the
+# HISTORY list, will avoid duplicates in the cache if the same document is
+# loaded with two different URLs, and may allow you to 'e'dit the local
+# from within lynx if you feel like it.
+#
+# 5. Broken links etc.
+# --------------------
+# A user has moved from http://www.siteA.com/~jdoe to http://siteB.org/john,
+# or http://www.provider.com/company/ has moved to their own server
+# http://www.company.com, but there are still links to the old location
+# all over the place; they now are broken or lead to a stupid "this page
+# has moved, please update your bookmarks. Refresh in 5 seconds" page
+# which you're tired of seeing.  This will not fix your bookmarks, and
+# it will let you see the outdated URLs for longer (Limitation 3 below),
+# but for a quick fix:
+#   Redirect   http://www.siteA.com/~jdoe/*      http://siteB.org/john/*
+#   Redirect   http://www.provider.com/company/* http://www.company.com/*
+#
+# You could use "Map" instead of "Redirect", but this would let you see the
+# outdated URLs for longer and even bookmark them, and you are likely to
+# create invalid links if not all documents from a site are mapped
+# (Limitation 3).
+#
+# 6. DNS troubles
+# ---------------
+# A special case of broken links.  If a site is inaccessible because the
+# name cannot be resolved (your or their name server is broken, or the
+# name registry once again made a mistake, or they really didn't pay in
+# time...) but you still somehow know the address; or if name lookups are
+# just too slow:
+#   Map   http://www.somesite.com/*  http://10.1.2.3/*
+# (You could do the equivalent more cleanly by adding an entry to the hosts
+# file, if you have access to it.)
+#
+# Or, if a name resolves to several addresses of which one is down, and the
+# DNS hasn't caught up:
+#   Map   http://www.w3.org/*    http://www12.w3.org/*
+#
+# Note that this can break access to some name-based virtually hosted sites.
+#
+# In this case use of "Map" is probably preferred over "Redirect", as long
+# as the URL on the left side contains the real and preferred hostname or
+# the problem is only temporary.
+#
+# 7. Avoid redirections
+# ---------------------
+# Some sites have a habit to provide links that don't go to the destination
+# directly but always force redirection via some intermediate URL.  The
+# delay imposed by this, especially for users with slower connections and
+# for overloaded servers, can be avoided if the intermediate URLs always
+# follow some simple pattern: we can then anticipate the redirect that will
+# inevitably follow and generate it internally.  For example,
+#   Redirect http://lwn.net/cgi-bin/vr/*    http://*
+#
+# Warning: The page authors may not like this circumvention.  Often the
+# redirection is wanted by them to track access, sometimes in connection
+# with cookies.  Some sites may employ mechanisms that defeat the shortcut.
+# It is your responsibility to decide whether use of this feature is
+# acceptable.  (But note that the same effect can be achieved anyway for
+# any link by editing the URL, e.g. with the ELGOTO ('E') key in Lynx, so
+# a shortcut like this does not create some new kind of intrusion.)
+#
+# 8. Detailed proxy selection
+# ---------------------------
+# Basic use for this one should be obvious, if you have a need for it.
+# It simply allows selecting use (or non-use) of proxies on a more detailed
+# level than the traditional <scheme>_proxy and no_proxy variables, as well
+# as using different proxies for different sites.
+# For example, to request access through an anonymizing proxy for all pages
+# on a "suspicious" site:
+#   UseProxy  http://suspicious.site/*  http://anonymyzing.proxy.dom/
+# (as long as all URLs really have a matching form, not some alternative
+# like <http://suspicious.site:80/> or <http://SuSpIcIoUs.site/>!)
+#
+# To access some site through a local squid proxy, running on the same host
+# as lynx, except for some image types (say because you rarely access images
+# with lynx anyway, and if you do, you don't want them cached by the proxy):
+#   UseProxy  http://some.site/*.gif  none
+#   UseProxy  http://some.site/*.jpg  none
+#   UseProxy  http://some.site/*      http://localhost:3128/
+# Note that order is important here.
+#
+# To exempt a local address from all proxying:
+#   UseProxy  http://local.site/*  none
+#
+# Note however that for some purposes the "no_proxy" setting may be better
+# suited than "UseProxy ... none", because of its different matching logic
+# (see comments in lynx.cfg).
+#
+# 9. Invent your own scheme
+# -------------------------
+# Suppose you want to teach lynx to handle a completely new URL scheme.
+# If what's required for the new scheme is already available in lynx in
+# _some_ way, this may be possible with some inventive use of rules.
+# As an example, let's assume you want to introduce a simple "man:" scheme
+# for showing manual pages, so (for a Unix-like system, at least) "man:lynx"
+# would display the same help information as the "man lynx" command and so
+# on (we ignore section numbers etc. for simplicity here).
+# First, since lynx doesn't know anything about a "man:" scheme, it will
+# normally reject any such URLs at an early stage.  However, a trick exists
+# to bypass that hurdle: define a man_proxy environment variable *outside of
+# lynx, before starting lynx* (it won't work in lynx.cfg), the actual value
+# is unimportant and won't actually be used.  For example, in your shell:
+#   export man_proxy=X
+#
+# If you already have some kind of HTTP-accessible man gateway available,
+# the task then probably just amounts to transforming the URL into the right
+# form.  For one such gateway (in this case, a CGI script running on the
+# local machine), the rule
+#   Redirect man:* http://localhost/cgi-bin/dwww?type=runman&location=*/
+# or, alternatively,
+#   UseProxy man:* none
+#   Map      man:* http://localhost/cgi-bin/dwww?type=runman&location=*/
+# does it, for other setups the right-hand side just has to be modified
+# appropriately.  The "UseProxy" is to make sure the bogus man_proxy gets
+# ignored.
+#
+# If no CGI-like access is available, you might want to invoke your system's
+# man command directly for a man: URL.  Here is some discussion of how this
+# could be done, and why ultimately you may not want to do it; this is also
+# an opportunity to show examples for how some of the rules and conditions
+# can be used that haven't been discussed in detail elsewhere.
+# Lynx provides the lynxexec: (and the similar lynxprog:) scheme for running
+# (nearly) arbitrary commands locally.  At the heart of employing it for
+# man: would be a rule like this:
+#   Redirect          man:*  "lynxexec:/usr/bin/man *"
+# (It is a peculiarity of this scheme that the literal space and quoting
+# are necessary here.  Also note that Map cannot be used here instead of
+# Redirect, since lynxexec, as a special kind of URL, needs to be handled
+# "early" in a request.)
+# Of course, execution of arbitrary commands is a potentially dangerous
+# thing.  lynxexec has to be specifically enabled at compile time and in
+# lynx.cfg (or with command line options), and there are various levels
+# of control, too much to go into here.  It is assumed in the following that
+# lynxexec has been enabled to the degree necessary (allow /usr/bin/man
+# execution) but hopefully not too much.
+# What needs to be prevented is that allowing local execution of the man
+# command might unintentionally open up unwanted execution of other commands,
+# possibly by some trick that could be exploited.  For example, redirecting
+# man:* as above, the URL "man:lynx;rm -r *" could result in the command
+# "man lynx;rm -r *" executed by the system, with obvious disastrous results.
+# (This particular example won't actually work, for several reasons; but
+# for the purpose of discussion let's assume it did, there may be similar
+# ones that do.)
+# Because of such dangers, redirection to a lynxexec: is normally never
+# accepted by lynx.  We need at least a PermitRedirection rule to override
+# this protective limitation:
+#   PermitRedirection man:*
+#   Redirect          man:*  "lynxexec:/usr/bin/man *"
+# But now we have potentially opened up local execution more than is
+# acceptable via the man: scheme, so this needs to be examined.
+# There are two aspects to security here: (1) restricting the user, and (2)
+# protecting the user.  The first could also be phrased as protecting the
+# system from the user; the second as preventing lynx (and the system) from
+# doing things the user doesn't really want.  Aspect (1) is very important
+# for setups providing anonymous guest accounts and similarly restricted
+# environments.  (Otherwise shell access is normally allowed, and trying to
+# protect the system in lynx would be rather pointless.)  As far as access
+# to some URLs is concerned, the difference can be characterized in terms of
+# which sources  of URLs are trusted enough to allow access: for (1), only
+# links occurring in a limited number of documents are trusted enough for
+# some (or all) URLs, user input at 'g'oto prompts and the like is not (if
+# not completely disabled).  For (2) and assuming a user with normal shell
+# privileges, the user may be trusted enough to accept any URL explicitly
+# entered, but URLs from arbitrary external sources are not - someone might
+# try to use them to trick the user (by following an innocent-looking link)
+# or lynx (by following a redirection) into doing something undesirable.
+#
+# In the following we are concerned with (2); it is assumed that providers
+# of anonymous accounts would not want to follow this path, and would have
+# no need for additional schemes that imply local execution anyway.  (For
+# one thing, with the man example they would have to carefully check that
+# users cannot break out of the man command to a local shell prompt.)
+#
+# Getting back to the example, it was already mentioned that lynx does not
+# allow redirections to lynxexec.  In fact this continues to be disallowed
+# for real redirection received from HTTP servers.  But we have introduced
+# a new man: scheme, and the lynx code that does the redirection checking
+# doesn't know anything about special considerations for man: URLs, so
+# an external HTTP server might send a redirection message with "Location:
+# man:<something>", which lynx would allow, and which would in turn be
+# redirected by our rule to "lynxexec:/usr/bin/man <something>".  Unless
+# we are 100% sure that either this can never happen or that the lynxexec
+# URL resulting from this can have no harmful effect, this needs to be
+# prevented.  It can be done by checking for the "redirected" condition,
+# either by putting something like (the first line is of course optional)
+#   Alert  man:*  "Redirection to man: not allowed" if redirected
+#   Fail   man:*                                    if redirected
+# somewhere before the Redirect rule, or, reversing the logic, by adding
+# a condition to the redirection rules, i.e. they become
+#   PermitRedirection man:*                             unless redirected
+#   Redirect          man:*  "lynxexec:/usr/bin/man *"  unless redirected
+# (actually, putting the condition on either one of the rules would be
+# sufficient).  The second variant assumes that the attempted access to
+# man: via redirection will ultimately fail because there is no other way
+# to handle such URLs.
+#
+# The above should take care of rejecting man: URLs from redirections, but
+# what about regular links in HTML (like <A HREF="man:...">)?  As long as
+# it can be assumed that the user will always inspect each and every link
+# before following it, and never follow a link that can have harmful effect,
+# no further restrictions are necessary.  But this is a very big assumption,
+# unrealistic except perhaps in some single-user setups where the user is
+# is identical with the rule writer.  So normally most links have to be
+# regarded as suspect, and only URLs entered by the user can be accepted:
+#   Alert  man:*  "Redirection to man: not allowed" if redirected
+#   Fail   man:*                                    if redirected
+#   Alert  man:*  "Link to man: not allowed"        unless userspecified
+#   Fail   man:*                                    unless userspecified
+#
+# With these restrictions we have limited the ways our new man: scheme can
+# be used rather severely, to the point where its usefulness is questionable.
+# In addition to 'g'oto prompts, it may work in Jump files; also, should
+# links to man:<something> appear in HTML text, the user could retype them
+# manually or use the ELGOTO ('E') command with some trivial editing (like
+# adding a space) to "confirm" the URL.  Even if the precautions outlined
+# above are followed: THIS TEXT DOES NOT IMPLY ANY PROMISE THAT, BY FOLLOWING
+# THE EXAMPLES, LYNX WILL BE SAFE.  On the other hand, some of the precautions
+# *may* not be necessary: it is possible that careful use of TRUSTED_EXEC
+# options in lynx.cfg could offer enough protection while making the new
+# scheme more useful.
+#
+# If all this seems a bit too scary, that's intentional; it should be noted
+# that these considerations are not in general necessary for "harmless" URL
+# schemes, but appropriate for this "extreme" example.  One last remark
+# regarding the hypothetical man scheme: instead of implementing it through
+# "lynxexec:" or "lynxprog:", it would be somewhat safer to use "lynxcgi:"
+# instead if it is supported.  A simple lynxcgi script would have to write
+# the man page to stdout (either converted to text/html or as plain text,
+# preceded by an appropriate Content-Type header line), and all necessary
+# checking for special shell characters would be done within the script -
+# lynx does not use the system() function to run the script.
+#
+# Other Limitations
+# =================
+# First, see CAVEAT above.  There are other limitations:
+#
+# 1. Applicable URL schemes
+# -------------------------
+# Rules processing does not apply to all URL schemes.  Some are
+# handled differently from the generic access code, therefore rules
+# for such URLs will never be "seen".  This limitation applies at
+# least to lynxexec:, lynxprog:, mailto:, LYNXHIST:, LYNXMESSAGES:,
+# LYNXCFG:, and LYNXCOMPILEOPTS: URLs.  You shouldn't be tempted
+# to try to redirect most of these schemes anyway, but this also
+# makes it impossible to disable them with "Fail" rules.
+#
+# Also, a scheme has to be known to Lynx in order to get as far as
+# applying rules - you cannot just define your own new foobar: scheme
+# and then map it to something here, but see Application 9, above,
+# for a workaround.
+#
+# 2. No re-checking
+# -----------------
+# When a URL is mapped to a different one, the new URL is not checked
+# again for compliance with most restrictions established by -anonymous,
+# -restrictions, lynx.cfg and so on.  This can be regarded as a feature:
+# it allows specific exceptions.  Of course it means that users for
+# whom any restrictions must be enforced cannot have write access to a
+# personal rules file, but that should be obvious anyway!
+# This limitation does not applies if "Redirect" is used, in that case
+# the new URL will always be re-examined.
+#
+# 3. Mappings are invisible
+# -------------------------
+# Changing the URL with "Map" or "Pass" rules will in general not be
+# visible to the user, because it happens at a late stage of processing
+# a request (similar to directing a request through a proxy).  One
+# can think of two kinds of URL for every resource: a "Document URL" as
+# the user sees it (on INFO page, history list, status line, etc.), and
+# a "physical URL" used for the actual access.  Rules change only the
+# physical URL.  This is different from the effect of HTTP redirection.
+# Often this is bad, sometimes it may be desirable.
+#
+# Changing the URL can create broken links if a document has relative URLs,
+# since they are taken to be relative to the "Document URL" (if no BASE tag
+# is present) when the HTML is parsed.
+#
+# This limitation does not apply if "Redirect" is used - the new location
+# will be visible to the user, and will be used by lynx for resolving
+# relative URLs within the document.
+#
+# 4. Interaction with proxying
+# ----------------------------
+# Rules processing is done after most other access checks, but before
+# proxy (and gateway) settings are examined.  A "Fail" rule works
+# as expected, but when the URL has been mapped to a different one,
+# the subsequent proxy checking can get confused.  If it decides that
+# access is through a proxy or gateway, it will generally use the
+# original URL to construct the "physical" URL, effectively overriding
+# the mapping rules.  If the mapping is to a different access scheme
+# or hostname, proxy checking could also be fooled to use a proxy when
+# it shouldn't, to not use one when it should, or (if different proxies
+# are used for different schemes) to use the wrong proxy.  So "just
+# don't do that"; in some cases setting the no_proxy variable will help.
+# Example 3 happens to work nicely if there is a http_proxy but no
+# ftp_proxy.
+#
+# This limitation does not come into play if a "UseProxy" rule is applied,
+# in either of its two forms: with a PROXYURL, proxying is fully under
+# the control of the rules author, and with "none", subsequent proxy
+# and gateway checking is completely disabled.  It is therefore a good
+# idea to combine any "Map" and "Pass" rules that might result in passing
+# the changed URL with explicit "UseProxy" rules, if the rules file is
+# expected to be used together with proxying; or else always use "Redirect"
+# instead of simple passing.
+#
+# 5. Case-sensitive matching
+# --------------------------
+# The matching logic is generic string-based.  It doesn't know anything
+# about URL syntax, and so it cannot know in which parts of a URL case
+# matters and where it doesn't.  As a result, all comparisons are case-
+# sensitive.  If (a limited number of) case variations of a URL need
+# to be dealt with, several rules can be used instead of one.
+# In particular, this makes "UseProxy ... none" in some ways more limited
+# than a no_proxy setting.
+#
+# 6. Redirection differences
+# --------------------------
+# For some URLs lynx does never check after a request whether a redirection
+# occurs; that makes the "Redirect" rule useless for such URLs (in addition
+# to those mentioned under limitation 1.).  Some of them are some gopher
+# types, telnet: and similar in most situations, newspost: and similar,
+# lynxcgi:, and some other private types.  Trying to redirect these will
+# make access fail.  You probable don't want to change such URLs anyway,
+# but if you feel you must, try using "Map" and "Pass" instead.
+#
+# The -noredir command line option only applies for real HTTP redirection
+# responses, Redirect rules are still applied.  Also for certain other
+# command line options (-mime_header, -head) and command keys (HEAD) lynx
+# shows the redirection message (or part of it) in case of a real HTTP
+# redirection, instead of following the redirection.  Here, too, a Redirect
+# rule remains effective (there is no redirection message to show, after all).
+#
+# 7. URLs required
+# ----------------
+# Full absolute URLs (modulo possible "*" matching wildcards) are required
+# in rules.  Strings like "www.somewhere.com" or "/some/dir/some.file" or
+# "www.somewhere.com/some/dir/some.file" are not URLs.  Lynx may accept
+# them as user input, as abbreviated forms for URLs; but by the time the
+# rules get checked, those have been converted to full URLs, if they can
+# be recognized.  This also means that rules cannot influence which strings
+# typed at a 'g'oto prompt are recognized for URLs - rules processing kicks
+# in later.
diff --git a/samples/home.htm b/samples/home.htm
new file mode 100644
index 00000000..b2628215
--- /dev/null
+++ b/samples/home.htm
@@ -0,0 +1,31 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

+<!--

+ $LynxId: home.htm,v 1.4 2008/01/06 20:53:04 tom Exp $

+ vile:dos

+ -->

+<html>

+  <head>

+    <title>

+      :: hello ::

+    </title>

+    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">

+  </head>

+  <body>

+    <table width="100%" summary="Lynx home page" align="right">

+      <tr>

+        <td width="100%" align="right">

+          <b>Lynx browser...</b>

+          <p>

+            &nbsp;

+          </p>

+          <p>

+            ...for quicker &amp; saver browsing...

+          </p>

+          <p>

+            Light-height, fast and secure text browser.

+          </p>

+        </td>

+      </tr>

+    </table>

+  </body>

+</html>

diff --git a/samples/installdirs.html b/samples/installdirs.html
new file mode 100644
index 00000000..c3f63c48
--- /dev/null
+++ b/samples/installdirs.html
@@ -0,0 +1,18 @@
+<HTML>
+<TITLE>File Management Install Targets</TITLE>
+<!-- This is an example file for the Lynx dired "install" functionality.
+     Lynx needs to be compiled with dired support and OK_INSTALL defined.
+     For the dired "install" function to work, this file has to exist
+     in the HOME directory under the name ".installdirs.html" or (for
+     8+3, i.e. DOS-like, filesystems) "instdirs.htm".
+  -->
+<BODY>
+<H1>Install Target directories</H1>
+<UL>
+<LH>Choose destination:</LH>
+<LI><A HREF="LYNXDIRED://INSTALL_DEST/~/">install in Home directory</A>
+<LI><A HREF="LYNXDIRED://INSTALL_DEST/~/bin">install in ~/bin</A>
+<LI><A HREF="LYNXDIRED://INSTALL_DEST/tmp">install in /tmp</A>
+</UL>
+</BODY>
+</HTML>
diff --git a/samples/jumps.htm b/samples/jumps.htm
new file mode 100644
index 00000000..917f032b
--- /dev/null
+++ b/samples/jumps.htm
@@ -0,0 +1,9 @@
+<head>

+<META http-equiv="content-type" content="text/html;charset=windows-1252">

+<title>Jumps file</title>

+</head>

+

+<dt>?<dd><a href="file://localhost/Programme/lynx/jumps.htm">This Shortcut List</a>

+<dt>g<dd><a href="http://www.google.com/">Google</a>

+<dt>nf<dd><a href="http://newsforge.com/">newsforge</a>

+<dt>sf<dd><a href="http://sourceforge.net/">sourceforge</a>

diff --git a/samples/jumpsUnix.html b/samples/jumpsUnix.html
new file mode 100644
index 00000000..4c5359e4
--- /dev/null
+++ b/samples/jumpsUnix.html
@@ -0,0 +1,56 @@
+<html>
+<head>
+<title>Shortcut List</title>
+<link rev="made" href="mailto:WebMaster@foo.blah.dom">
+</head>
+<body>
+    <h1>Shortcut List</h1>
+  This is a sample jumps file created in the early days of Lynx:
+  you should use it as a template, replacing with your own choices.
+  See Users Guide for details of how the `j' command works.
+<p>
+  *** IMPORTANT *** If you want to use `?' with `j' to recall
+  your own list of abbreviations, you must make sure
+  you always have the correct URL corresponding to `?' below:
+  otherwise, Lynx may display an incorrect list with misleading results.
+<p>
+  *** ALSO *** The entries must be in alphabetic order, with `?' first:
+  otherwise, Lynx may not be able to find them all.
+<p>
+  <b>Name</b>&nbsp;&nbsp;&nbsp;<b>Link</b>
+<!-- The list *MUST* be kept SORTED, one entry per line -->
+<dl compact>
+<dt>?<dd><a href="file://localhost/CFN/info/jumps.html">This Shortcut List</a>
+<dt>agreement<dd><a href="file://localhost/CFN/UserAgree.html">Chebucto FreeNet User Agreement</a>
+<dt>board<dd><a href="file://localhost/CFN/BOD.html">MetroCAN Board of Directors</a>
+<dt>browser<dd><a href="file://localhost/~/">Personal File Browser</a>
+<dt>docteam<dd><a href="file://localhost/CFN/SAT/WorkArea.html">Documentation Team Work Area</a>
+<dt>events<dd><a href="file://localhost/CFN/Utilities/search-events.html">Search all event schedules by time and keyword</a>
+<dt>files<dd><a href="file://localhost/~/">Personal File Browser</a>
+<dt>forward<dd><a href="lynxexec:/cfn/bin/mail-forward">Forward your mail</a>
+<dt>freenets<dd><a href="http://duke.usask.ca/~scottp/free.html">FreeNets around the World</a>
+<dt>help<dd><a href="file://localhost/CFN/Help/UserHelpDesk.html">Help Desk</a>
+<dt>home<dd><a href="file://localhost/CFN/Home.html">Chebucto FreeNet Home Page</a>
+<dt>info<dd><a href="file://localhost/CFN/Utilities/FindingInfo.html">Finding Information</a>
+<dt>ip<dd><a href="file://localhost/CFN/IP/InformationProvider.html">Information Providers Commitee</a>
+<dt>lists<dd><a href="file://localhost/CFN/Services/MailListHome.html">Mailing Lists and Archives</a>
+<dt>mail<dd><a href="lynxprog:/cfn/bin/mail">Read and/or send mail</a>
+<dt>metrocan<dd><a href="file://localhost/CFN/MetroCAN.html">Metro*CAN Society</a>
+<dt>new<dd><a href="file://localhost/CFN/Current/WhatsNew.html">What's New</a>
+<dt>news<dd><a href="lynxprog:/cfn/bin/news">Read and Send News</a>
+<dt>newsgroups<dd><a href="file://localhost/CFN/Current/newsgroups.html">List Global Newsgroups</a>
+<dt>password<dd><a href="lynxexec:/cfn/bin/passwd">Change your password</a>
+<dt>people<dd><a href="file://localhost/CFN/Utilities/search-user.html">Find other people</a>
+<dt>profile<dd><a href="lynxprog:/cfn/bin/editor public_html/Profile.html">Update your personal profile</a>
+<dt>quota<dd><a href="lynxexec:/cfn/bin/quota">View your disk usage and quota</a>
+<dt>recent<dd><a href="http://www.cfn.cs.dal.ca/cgi-bin/recent">Recently Changed Documents on CFN</a>
+<dt>register<dd><a href="file://localhost/CFN/AccountRegister.html">New User Registration</a>
+<dt>search<dd><a href="file://localhost/CFN/Utilities/search-all.html">Search every document on CFN by keyword.</a>
+<dt>technical<dd><a href="file://localhost/CFN/Technical/Technical.html">Metro*CAN Technical Committee</a>
+<dt>terminal<dd><a href="lynxexec:/cfn/bin/set-term">Set your terminal type</a>
+<dt>volunteer<dd><a href="file://localhost/CFN/Membership/NewVolunteer.html">Volunteer with CFN</a>
+<dt>who<dd><a href="http://www.cfn.cs.dal.ca/cgi-bin/cfn-who">Find out who is online now</a>
+<dt>xsearch<dd><a href="file://localhost/CFN/Utilities/xsearch.html">Search every document on CFN by keyword.</a>
+</dl>
+</body>
+</html>
diff --git a/samples/jumpsVMS.html b/samples/jumpsVMS.html
new file mode 100644
index 00000000..b68412fe
--- /dev/null
+++ b/samples/jumpsVMS.html
@@ -0,0 +1,28 @@
+<html>
+<head>
+<title>Shortcut List</title>
+<link rev="made" href="mailto:WebMaster@foo.blah.dom">
+</head>
+<body>
+    <h1>Shortcut List</h1>
+  Following is a list of shortcut names and the target links associated
+  with them.  In Lynx, pressing J followed by one of these shortcut names
+  will jump you directly to the link.  This list will expand over time.<p>
+  <b>Name</b>&nbsp;&nbsp;&nbsp;<b>Link</b>
+<!-- The list *MUST* be kept SORTED, one entry per line -->
+<dl compact>
+<dt>?<dd><a href="file://localhost/Lynx_Dir/jumps.html">This Shortcut List</a>
+<dt>freenets<dd><a href="http://duke.usask.ca/~scottp/free.html">FreeNets around the World</a>
+<dt>genhelp<dd><a href="http://www.wfeb.edu/HELP/@GCGHELP:GENHELP">GCG GenHelp</a>
+<dt>genman<dd><a href="http://www.wfeb.edu/HELP/@GCGHELP:GENMANUAL">GCG GenManual</a>
+<dt>home<dd><a href="http://www.wfeb.edu/">WFEB Home Page</a>
+<dt>mail<dd><a href="lynxprog:mail">Read and/or send mail</a>
+<dt>multinet<dd><a href="http://www.wfeb.edu/HELP/@MULTINET:MULTINET">MultiNet Help</a>
+<dt>news<dd><a href="lynxprog:news">Read and Send News</a>
+<dt>swing<dd><a href="lynxprog:swing sys$login">SWING File/Directory Manager</a>
+<dt>swinghelp<dd><a href="http://www.wfeb.edu/HELP/@CSWING:CSWING/SWING">SWING Help</a>
+<dt>vmshelp<dd><a href="http://www.wfeb.edu/HELP">VMS Help</a>
+<dt>who<dd><a href="lynxexec:show users">Find out who is online now</a>
+</dl>
+</body>
+</html>
diff --git a/samples/keepviewer b/samples/keepviewer
new file mode 100755
index 00000000..f5c0b2c1
--- /dev/null
+++ b/samples/keepviewer
@@ -0,0 +1,20 @@
+#!/bin/sh
+# This script can be invoked as a wrapper for an external viewer by lynx, e.g., 
+# given this line in lynx.cfg
+#	XLOADIMAGE_COMMAND:keepviewer xli %s &
+# it will invoke xli on a hardlink to the file (which is assumed to be in the
+# temporary directory created by lynx), and clean up when the viewer exits.
+#
+# Parameters:
+#	$1 is viewer
+#	$2 is filename
+if test $# = 2 ; then
+	chmod 600 $2
+	myfile=`echo $2 | sed -e 's@\(.*/tmp/\)\([^/]*/\)\?\(.*\)@\1my\3@'`
+	ln $2 $myfile || exit 1
+	trap "rm -f $myfile" 0 1 2 5 15
+	eval $1 $myfile
+else
+	echo "Usage: keepviewer <viewer> <filename>"
+	exit 1
+fi
diff --git a/samples/lynx-demo.cfg b/samples/lynx-demo.cfg
new file mode 100644
index 00000000..d07db763
--- /dev/null
+++ b/samples/lynx-demo.cfg
@@ -0,0 +1,35 @@
+# From: claudio santambrogio <claudio.santambrogio@tiscali.it>

+

+STARTFILE:file://localhost/~/home.htm

+HELPFILE:file://localhost/~/help/lynx_help_main.html.gz

+DEFAULT_INDEX_FILE:http://lynx.isc.org/

+CHARACTER_SET:cp850

+ASSUME_CHARSET:utf-8

+FORCE_SSL_COOKIES_SECURE:TRUE

+COOKIE_REJECT_DOMAINS:ad.doubleclick.net

+PERSISTENT_COOKIES:TRUE

+COOKIE_FILE:~/.lynx_cookies

+COOKIE_SAVE_FILE:~/.lynx_cookies

+DEFAULT_USER_MODE:INTERMEDIATE

+VERBOSE_IMAGES:FALSE

+MAKE_PSEUDO_ALTS_FOR_INLINES:FALSE

+MINIMAL_COMMENTS:TRUE

+COLOR:0:lightgray:black

+COLOR:1:red:black

+COLOR:2:yellow:blue

+COLOR:4:green:black

+COLOR:5:brown:black

+COLOR:6:brightred:black

+COLOR:7:white:brightgreen

+PRETTYSRC:TRUE

+HTMLSRC_TAGNAME_XFORM:0

+HTMLSRC_ATTRNAME_XFORM:0

+

+# set these to empty strings to eliminate dependency on external programs

+CHMOD_PATH:

+COPY_PATH:

+MKDIR_PATH:

+MV_PATH:

+RMDIR_PATH:

+RM_PATH:

+TOUCH_PATH:

diff --git a/samples/lynx-keymaps b/samples/lynx-keymaps
new file mode 100644
index 00000000..0a1c3214
--- /dev/null
+++ b/samples/lynx-keymaps
@@ -0,0 +1,148 @@
+# This is a sample key sequence definition file.  It is used by Lynx when
+# built with ncurses or slang, to augment the definitions from your terminal's
+# termcap or terminfo description.
+
+# (Lynx implements this mechanism only if USE_KEYMAPS is defined during
+# compilation, which has nothing to do with the KEYMAP directives in lynx.cfg,
+# see source file LYCurses.h.)
+
+# Lines that start with a '#' are comment lines.  Blank lines are ignored.
+
+# The 'setkey' function may be used in two ways:
+#
+#   1.  setkey ESC-SEQUENCE  KEYSYM
+#   2.  setkey ESC-SEQUENCE  KEYSYM_NAME
+#
+# where KEYSYM is an integer.  A keysym is essentially with the lynx.cfg
+# file calls a 'keystroke', but I think that keysym is a more appropriate
+# name.  The keysym is an integer and may be expressed in various ways:
+#
+#       as a decimal integer:  97
+#       hexadecimal:           0x61
+#       Octal:                 0141
+#       as an ASCII character: 'a'
+#
+# Some keysyms may be expressed symbolically as a keysym name using the
+# second form.  The currently recognized symbolic names are:
+#
+#       UPARROW
+#       DNARROW
+#       RTARROW
+#       LTARROW
+#       PGDOWN
+#       PGUP
+#       HOME
+#       END
+#       F1
+#       DO_KEY
+#       FIND_KEY
+#       SELECT_KEY
+#       INSERT_KEY
+#       REMOVE_KEY
+#       DO_NOTHING
+#
+# It does not matter if your keyboard does not have some of the keys
+# implied by the above names.  The fact is that lynx uses these keys as an
+# an intermediate representation.
+#
+# The ESC-SEQUENCE should be enclosed in double quotes.  The '^' character
+# is special and indicates a control character, e.g., ^K is Ctrl-K.  An ESC
+# character (ascii 27) may be represented as ^[.  As an example, many
+# terminals have arrow keys that emit 'ESC [ A' for the UP arrow.  This may
+# be represented as the escape sequence "^[[A".  The default keymapping is
+# given below:
+#
+setkey "\033[A"		UPARROW
+setkey "\033OA"		UPARROW
+setkey "\033[B"		DNARROW
+setkey "\033OB"		DNARROW
+setkey "\033[C"		RTARROW
+setkey "\033OC"		RTARROW
+setkey "\033[D"		LTARROW
+setkey "\033OD"		LTARROW
+setkey "\033[1~"	FIND_KEY
+setkey "\033[2~"	INSERT_KEY
+setkey "\033[3~"	REMOVE_KEY
+setkey "\033[4~"	SELECT_KEY
+setkey "\033[5~"	PGUP
+setkey "\033[6~"	PGDOWN
+setkey "\033[8~"	END
+setkey "\033[7~"	HOME
+setkey "\033[28~"	F1
+setkey "\033[29~"	DO_KEY
+#
+# All other keys map to themselves, e.g,
+#
+setkey "a"		'a'
+#
+# Now suppose that your terminal produces different escape sequences for
+# HOME and END.  In particular, suppose that the home key produces 'ESC [
+# H' and that the end key produces 'ESC [ K'.  Then these may be defined to
+# map to lynx HOME and END keys via
+#
+setkey "^[[H"		HOME
+setkey "^[[K"		END
+#
+# Similarly, we may map emacs-like sequences to these functions:
+#
+setkey "^[<"		HOME
+setkey "^[>"		END
+#
+# Note that it may be impossible to map several sequences to the same
+# keysym (NCURSES only?), in that case the mapping occurring last wins.
+#
+# The following maps a sequence commonly used for Shift+Tab to the
+# corresponding code.  It should not be needed if the terminfo file
+# has the correct info for kcbt.
+#
+setkey "^[[Z"		0x10F
+#
+# Other special escapes:
+#	\a		bell
+#	\b		backspace
+#	\f		form-feed
+#	\n		newline (line-feed)
+#	\r		carriage-return
+#	\t		tab
+#	\v		vertical tab
+#	\<number>	octal number, up to 3 digits, e.g., "\033".
+#	\d<number>	decimal number, up to 3 digits, e.g., "\d99"
+#	\x<number>	hexadecimal number, up to 2 digits, e.g., "\xFF"
+#
+# For Unix-systems (which have termcap or terminfo) you may also use symbols
+# that refer to the termcap/terminfo, by referencing the name bracketed by
+# "^(" and ")", e.g.,
+setkey "^(cuu1)"	UPARROW
+setkey "^(up)"		UPARROW
+#
+# The following extension, introduced after lynx2.8.2, allows to force
+# recognition of meta (ESC) prefixes - especially useful with the
+# "Bash-like" lineeditor binding.  Its use is unnecessary in most
+# cases if Lynx was built with ncurses, but is probably necessary for
+# all keys that should recognize ESC as a prefix if Lynx was built with
+# slang.
+#
+#       setkey ESC-SEQUENCE  Meta-LETTER
+#       setkey ESC-SEQUENCE  Meta-KEYSYM
+#       setkey ESC-SEQUENCE  Meta-KEYSYM_NAME
+#
+# for example
+#setkey "\033b"          Meta-b
+#setkey "\033e"          Meta-'e'
+#setkey "\033\033[28~"   Meta-F1
+#
+# The following extensions, introduced after lynx2.8.2, allow mapping
+# escape sequences directly to key commands (lynxactioncodes).
+#
+#       setkey ESC-SEQUENCE  LAC:LYNX_ACTION
+#       setkey ESC-SEQUENCE  LAC:LYNX_ACTION:LYNX_EDITACTION
+#
+# where LYNX_ACTION is a key command specified as for lynx.cfg KEYMAP
+# options and as listed on the KEYMAP ('K') screen, and LYNX_EDITACTION
+# is a line-editor action specified as for KEYMAP and as listed in Line
+# Editor help pages.  Using this form makes remapping according to user
+# preference with KEYMAP impossible, and should thus be used sparingly
+# (in general, use KEYMAP with PASS instead, if the goal is to force
+# recognition of a key in form text fields).  For example:
+#
+#setkey "\033e"          LAC:EDITTEXTAREA:PASS
diff --git a/samples/lynx.bat b/samples/lynx.bat
new file mode 100644
index 00000000..a017cdfc
--- /dev/null
+++ b/samples/lynx.bat
@@ -0,0 +1,10 @@
+@rem $LynxId: lynx.bat,v 1.1 2007/08/01 23:54:17 tom Exp $

+@rem Claudio Santambrogio

+@ECHO OFF

+command /C

+set term=vt100

+set home=%CD%

+set temp=%HOME%\tmp

+set lynx_cfg=%HOME%\lynx-demo.cfg

+set lynx_lss=%HOME%\opaque.lss

+%HOME%\lynx.exe %1 %2 %3 %4 %5

diff --git a/samples/lynx.com b/samples/lynx.com
new file mode 100644
index 00000000..568d3e22
--- /dev/null
+++ b/samples/lynx.com
@@ -0,0 +1,59 @@
+$ ! LYNX.COM
+$ ! sets up lynx as a command so that it will accept command line arguments
+$ ! It is assumed that this file is located in the same place as the LYNX
+$ ! Image.  If it is not then you must change the lynx symbol.
+$ ! Written by Danny Mayer, Digital Equipment Corporation
+$ !
+$ !
+$ THIS_PATH = F$PARSE(F$ENV("PROCEDURE"),,,"DEVICE") + -
+	      F$PARSE(F$ENV("PROCEDURE"),,,"DIRECTORY")
+$ alpha = F$GETSYI("HW_MODEL") .GT. 1023
+$ !
+$ CPU := VAX
+$ IF alpha THEN CPU  :== AXP
+$ lynx:==$'THIS_PATH'lynx_'CPU'.exe
+$!
+$! fill in another gateway if you wish
+$!
+$define "WWW_wais_GATEWAY" "http://www.w3.org:8001"
+$!
+$! fill in your NNTP news server here
+$!
+$ !define "NNTPSERVER" "news"
+$ !
+$ !  Set up the Proxy Information Here
+$ !
+$ !  no_proxy environmental variable
+$ !  The no_proxy environmental variable is checked to get the list of
+$ !  of hosts for which the proxy server is not consulted.
+$ !  NOTE:  THE no_proxy VARIABLE MUST BE IN LOWER CASE.  On VMS systems
+$ !  this is accomplished by defining a logical name in double-quotes.
+$ !
+$ !  The no_proxy environmental variable is a comma-separated or
+$ !  space-separated list of machine or domain names, with optional
+$ !  :port part.  If no :port part is present, it applies to all ports
+$ !  on that domain.
+$ !
+$ !  Example:
+$ !          define "no_proxy"  "cern.ch,some.domain:8001"
+$ !
+$ !
+$ define "no_proxy" "yourorg.com"	! Use only for outside of yourorg
+$ !
+$ !  proxy server environmental variables
+$ !  In Lynx, each protocol needs an environmental variable defined for
+$ !  it in order for it to use a proxy server set up for that protocol.
+$ !  The proxy environmental variable is of the form:
+$ !  protocol_proxy where protocol is the protocol name part of the URL,
+$ !  for example: http or ftp.  NOTE: the protocol server proxy variable
+$ !  MUST BE IN LOWER CASE.
+$ !  Example:
+$ !           define "http_proxy" "http://your_proxy.yourorg:8080/"
+$ !
+$ Proxy_Server = "http://your_proxy.yourorg:8080/"
+$ define "http_proxy" "''Proxy_Server'"
+$ define "ftp_proxy" "''Proxy_Server'"
+$ define "gopher_proxy" "''Proxy_Server'"
+$ define "news_proxy" "''Proxy_Server'"
+$ define "wais_proxy" "''Proxy_Server'"
+$ !
diff --git a/samples/lynx.ico b/samples/lynx.ico
new file mode 100644
index 00000000..2bde5f8e
--- /dev/null
+++ b/samples/lynx.ico
Binary files differdiff --git a/samples/lynx.lss b/samples/lynx.lss
new file mode 100644
index 00000000..2d02eb18
--- /dev/null
+++ b/samples/lynx.lss
@@ -0,0 +1,115 @@
+# Setting the normal and default types lets us keep (almost) the same colors
+# whether the terminal's default colors are white-on-black or black-on-white.
+# It is not exact since the default "white" is not necessarily the same color
+# as the ANSI lightgray, but is as close as we can get in a standard way.
+#
+# If you really want the terminal's default colors, and if lynx is built using
+# ncurses' default-color support, remove these two lines:
+normal:		normal:			lightgray:black
+default:	normal:			white:black
+
+# Normal type styles correspond to HTML tags.
+#
+# The next line (beginning with "em") means:  use bold if mono, otherwise
+# brightblue on <defaultbackground>
+em:		bold:			brightblue
+strong:		bold:			brightred
+b:		bold:			red
+i:		bold:			brightblue
+a:		bold:			green
+img:		dim:			brown
+fig:		normal:			gray
+caption:	reverse:		brown
+hr:		normal:			yellow
+blockquote:	normal:			brightblue
+ul:		normal:			brown
+address:	normal:			magenta
+title:		normal:			magenta
+tt:		dim:			brightmagenta:	black
+h1:		bold:			yellow:		blue
+label:		normal:			magenta
+q:		normal:			yellow:		magenta
+small:		dim:			default
+big:		bold:			yellow
+sup:		bold:			yellow
+sub:		dim:			gray
+li:		normal:			magenta
+code:		normal:			cyan
+cite:		normal:			cyan
+
+table:		normal:			brightcyan
+tr:		bold:			brown
+td:		normal:			default
+br:		normal:			default
+
+# Special styles - not corresponding directly to HTML tags
+#	alert	- status bar, when message begins "Alert".
+#	alink	- active link
+#	normal	- default attributes
+#	status	- status bar
+#	whereis	- whereis search target
+#
+#normal:normal:default:blue
+alink:		reverse:		yellow:		black
+status:		reverse:		yellow:		blue
+alert:		bold:			yellow:		red
+whereis:	reverse+underline:	magenta:	cyan
+# currently not used
+#value:normal:green
+
+menu.bg:	normal:			black:		lightgray
+menu.frame:	normal:			black:		lightgray
+menu.entry:	normal:			lightgray:	black
+menu.n:		normal:			red:		gray
+menu.active:	normal:			yellow:		black
+menu.sb:	normal:			brightred:	lightgray
+
+forwbackw.arrow:reverse
+hot.paste:	normal:			brightred:	gray
+
+# Styles with classes - <ul class=red> etc.
+ul.red:		underline:		brightred
+ul.blue:	bold:			brightblue
+li.red:		reverse:		red:		yellow
+li.blue:	bold:			blue
+strong.a:	bold:			black:		red
+em.a:		reverse:		black:		blue
+strong.b:	bold:			white:		red
+em.b:		reverse:		white:		blue
+strong.debug:	reverse:		green
+font.letter:	normal:			white:		blue
+input.submit:	normal:			cyan
+tr.baone:	bold:			yellow
+tr.batwo:	bold:			green
+tr.bathree:	bold:			red
+#
+# Special handling for link.
+link:		normal:			white
+link.green:	bold:			brightgreen
+link.red:	bold:			black:		red
+link.blue:	bold:			white:		blue
+link.toc:	bold:			black:		white
+# Special cases for link - the rel or title is appended after the class.
+# <link rel=next class=red href="1">
+link.red.next:	bold:			red
+link.red.prev:	bold:			yellow:		red
+link.blue.prev:	bold:			yellow:		blue
+link.blue.next:	bold:			blue
+link.green.toc:	bold:			white:		green
+#
+# Define styles that will be used when syntax highlighting is requested
+# (commandline option -prettysrc). 
+span.htmlsrc_comment:normal:		white
+span.htmlsrc_tag:normal:		white
+#If you don't like that the tag name and attribute name are displayed 
+#in different colors, comment the following line. 
+span.htmlsrc_attrib:normal:		cyan
+span.htmlsrc_attrval:normal:		magenta
+span.htmlsrc_abracket:normal:		white
+span.htmlsrc_entity:normal:		white
+##span.htmlsrc_href:
+##span.htmlsrc_entire:
+span.htmlsrc_badseq:normal:		red
+span.htmlsrc_badtag:normal:		red
+span.htmlsrc_badattr:normal:		red
+span.htmlsrc_sgmlspecial:normal:	yellow
diff --git a/samples/lynx_bookmarks.htm b/samples/lynx_bookmarks.htm
new file mode 100644
index 00000000..acfa3c7a
--- /dev/null
+++ b/samples/lynx_bookmarks.htm
@@ -0,0 +1,13 @@
+<head>

+<meta http-equiv="content-type" content="text/html;charset=windows-1252">

+<title>Bookmark file</title>

+</head>

+     You can delete links by the 'R' key<br>

+<ol>

+<li><a href="http://lynx.isc.org/release/">Lynx homepage</a>

+<li><a href="http://home.pacific.net.sg/~kennethkwok/lynx/">Lynx Browser for Windows 9x/NT/2000/XP</a>

+<li><a href="http://www.fdisk.com/doslynx/lynxport.htm">Lynx for DOS 386 and Win32</a>

+<li><a href="http://www.chass.utoronto.ca/~purslow/lhfb.html">Lynx Help for Beginners</a>

+<li><a href="http://www.hicom.net/~oedipus/weave.html">HTML Authoring and Accessibility Resources for Lynx</a>

+<li><a href="http://perso.club-internet.fr/dominique.guebey/tekno/lynx.htm">La page navigateur LYNX</a>

+<li><a href="http://lynx.isc.org/release/">Current Lynx Release</a>

diff --git a/samples/lynxdump b/samples/lynxdump
new file mode 100755
index 00000000..f79be2fa
--- /dev/null
+++ b/samples/lynxdump
@@ -0,0 +1,15 @@
+#!/bin/sh
+# lynx -dump w/o numbers
+: ${TMPDIR-/tmp}
+: ${HOME-`pwd`}
+oldmask=`umask`
+umask 077
+MYTMP=$TMPDIR/mytmp$$
+mkdir $MYTMP || exit 1
+trap 'cd /; rm -rf $MYTMP' 0 1 2 5 15
+if test $HOME/.lynxrc ; then
+  cp $HOME/.lynxrc $MYTMP/.lynxrc
+fi
+echo 'keypad_mode=NUMBERS_AS_ARROWS' >> $MYTMP/.lynxrc
+HOME=$MYTMP; export HOME
+lynx -justify -dump -force_html -with_backspaces -nolist $*
diff --git a/samples/mailcap b/samples/mailcap
new file mode 100644
index 00000000..8f473381
--- /dev/null
+++ b/samples/mailcap
@@ -0,0 +1,99 @@
+# Copyright (c) 1991 Bell Communications Research, Inc. (Bellcore)
+# 
+# Permission to use, copy, modify, and distribute this material 
+# for any purpose and without fee is hereby granted, provided 
+# that the above copyright notice and this permission notice 
+# appear in all copies, and that the name of Bellcore not be 
+# used in advertising or publicity pertaining to this 
+# material without the specific, prior written permission 
+# of an authorized representative of Bellcore.  BELLCORE 
+# MAKES NO REPRESENTATIONS ABOUT THE ACCURACY OR SUITABILITY 
+# OF THIS MATERIAL FOR ANY PURPOSE.  IT IS PROVIDED "AS IS", 
+# WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES.
+#
+# Prototype Mailcap file
+# Note that support for text & multipart are "built in" to metamail,
+# as are rudimentary support for message, and application.
+# However, any of these may be overridden in mailcap.
+#
+# Note that users may override or extend this with a .mailcap
+# file in their own directory.  However, there is NO NEED
+# for them to copy entries from this file, as metamail will
+# pick up entries from both the system and personal mailcap files.
+#
+
+# NOTE:  This file has been heavily modified for use as an example
+#        configuration file for Lynx
+
+# In the samples given   test=test -n "$DISPLAY"   is used to
+# determine if the current session is X capable by checking
+# for the existence of a DISPLAY environment variable.
+# Lynx actually uses a getenv() call for DISPLAY (DECW$DISPLAY
+# on VMS) when it encounters   test=test -n "$DISPLAY"  or
+# test=test -z "$DISPLAY"  in a viewer assignment, instead of
+# spawning to execute "test" via a system() call, i.e., those
+# two strings, respectively, are handled equivalently to the
+# :XWINDOWS and :NON_XWINDOWS flags for VIEWER: assignments
+# in lynx.cfg.  Any system without the DISPLAY (or DECW$DISPLAY)
+# environment variable will be assumed to be Non-X.
+
+# You can append a ';' followed by "q=#.#", e.g.,  ; q=0.002
+# to set the quality parameter for the Content-Type, which can be
+# included in the Accept: header Lynx sends to http servers (the
+# default quality value is 1.0, and Lynx appends the parameter
+# to the Content-Type only if the value is less than 1.0).
+
+# You can append a ';' followed by "mxb=#", e.g.,  ; mxb=1000000
+# to set the maxbytes parameter for the Content-Type, which can be
+# included in the Accept: header Lynx sends to http servers (the
+# default maxbytes value is 0, meaning no maximum, and Lynx appends
+# the parameter to the Content-Type only if the value exceeds 0).
+
+# The following line is for sites where xv understands jpeg but xloadimage 
+# is preferred.
+#
+# the test line specifies that this viewer should only be used if
+# the display variable is set.
+image/jpeg; xv %s;  test=test -n "$DISPLAY"
+
+# The following sends all other image subtypes to xloadimage
+#image/*; xloadimage %s; ;  test=test -n "$DISPLAY"
+
+# The following sends all other image subtypes to xv
+image/*; xv %s; ;  test=test -n "$DISPLAY"
+
+
+# If you have an interactive Postscript interpreter, you should think carefully 
+# before replacing lpr with it in the following line, because PostScript
+# can be an enormous security hole.  It is RELATIVELY harmless
+# when sent to the printer...
+
+# This one is for NON-X
+#application/postscript; lpr %s \; echo SENT FILE TO PRINTER; ;test=test -z "$DISPLAY"
+
+# This one is for X.  It's already the default via src/HTInit.c.
+#application/postscript; ghostview %s; ;  test=test -n "$DISPLAY"
+
+# The following should be commented out if you do NOT have safe-tcl
+# and should be uncommented if you DO have safe-tcl
+#application/safe-tcl; swish -safe -messaging -f %s
+
+# A common problem with the mailcap mechanism is getting differential 
+# behavior from different programs.  This problem is compounded by the fact 
+# that some programs, notably Mosaic, do not implement the "test" clause in 
+# mailcap files.  If you are using Lynx and X Mosaic together you should
+# place all X-centric entries before non-X entries.  X Mosaic will use
+# whichever entry is defined first so further entries will be ignored.
+#
+# Lynx exports the environment variable LYNX_VERSION, so it can be tested
+# by scripts to determine if Lynx is running or not.  However, the string
+#   test=test -n "$LYNX_VERSION"
+# is handled simply as a flag which yields success when Lynx encounters it
+# in the mailcap file (i.e., Lynx does not bother to execute "test" via a
+# system() call to find out if it's running, because it obviously is).
+# Inclusion of the string for that test can be used to prevent other
+# software which reads the mailcap file from acting on assignments intended
+# only for Lynx.  The string
+#   test=test -z "$LYNX_VERSION"
+# similarly is treated by Lynx simply as a flag which yields failure.
+
diff --git a/samples/mailto-form.pl b/samples/mailto-form.pl
new file mode 100755
index 00000000..5afffc86
--- /dev/null
+++ b/samples/mailto-form.pl
@@ -0,0 +1,280 @@
+#! /usr/bin/perl -w
+# Some scripts for handling mailto URLs within lynx via an interactive form
+# 
+# Warning: this is a quick demo, to show what kinds of things are possible
+# by hooking some external commands into lynx.  Use at your own risk.
+# 
+# Requirements:
+# 
+# - Perl and CGI.pm.
+# - A "sendmail" command for actually sending mail (if you need some
+#   other interface, change the code below in sub sendit appropriately).
+# - Lynx compiled with support for lynxcgi, that means EXEC_CGI must have
+#   been defined at compilation, usually done with
+#     ./configure --enable-cgi-links
+# - Lynx must have support for CERN-style rules as of 2.8.3, which must
+#   not have been disabled at compilation (it is enabled by default).
+# 
+# Instructions:
+# (This is for people without lynxcgi experience; if you are already
+# use lynxcgi, you don't have to follow everything literally, use
+# common sense for picking appropriate file locations in your situation.)
+# 
+# - Make a subdirectory 'lynxcgi' under you home directory, i.e.
+#      mkdir ~/lynxcgi
+# - Put this three script file mailto-form.pl there and make it
+#   executable.  For example,
+#      cp mailto-form.pl ~/lynxcgi
+#      chmod a+x ~/lynxcgi/mailto-form.pl
+# - Edit mailto-form.pl (THIS FILE), there are some strings that
+#   that need to be changed, see ### Configurable variables ###
+#   below.
+# - Allow lynx to execute lynxcgi files in that directory, for example,
+#   put in your lynx.cfg file:
+#      TRUSTED_LYNXCGI:<tab>/home/myhomedir/lynxcgi/mailto-form.pl
+#   where <tab> is a real TAB character and you have to put the real
+#   location of your directory in place of "myhomedir", of course.
+#   The '~' abbreviation cannot be used.
+#   You could also just enable execution of all lynxcgi scripts, by
+#   not having any TRUSTED_LYNXCGI options in lynx.cfg at all, but
+#   that can't be recommended.
+# - Tell lynx to actually use the lynxcgi scripts for mailto URLs.
+#   There are two variants:
+#   a) Redirect "mailto"
+#   Requires patched lynx, currently not yet in the developent code.
+#   Use the following two lines in the file that is configured as
+#   RULESFILE in lynxcfg:
+#      PermitRedirection mailto:*
+#      Redirect mailto:* lynxcgi:/home/myhomedir/lynxcgi/mailto-form.pl?from=myname@myhost&to=*
+#   You can also put them directly in lynx.cfg, prefixing each with
+#   "RULE:".  Replace ""myhomedir", "myname", and "myhost" with your
+#   correct values, of course.
+#   b) Redirect "xmailto"
+#   Requires defining a fake proxy before starting lynx, like
+#      export xmailto_proxy=dummy  # or for csh: setenv xmailto_proxy dummy
+#   Requires that you change "mailto" to "xmailto" each time you want
+#   to activate a mailto link.  This can be done conveniently with
+#   a few keys: 'E', ^A, 'x', Enter.
+#   Use the following two lines in the file that is configured as
+#   RULESFILE in lynxcfg:
+#      PermitRedirection xmailto:*
+#      Redirect xmailto:* lynxcgi:/home/myhomedir/lynxcgi/mailto-form.pl?from=myname@myhost&to=*
+#   You can also put them directly in lynx.cfg, prefixing each with
+#   "RULE:".  Replace ""myhomedir", "myname", and "myhost" with your
+#   correct values, of course.
+# 
+# Limitations:
+# 
+# - Only applies to mailto URLs that appear as links or are entered at
+#   a 'g'oto prompt.  Does not apply to other ways of sending mail, like
+#   the 'c' (COMMENT) key, mailto as a FORM action, or mailing a file
+#   from the 'P'rinting Options screen.
+# - Nothing is done for charset labelling, content-transfer-encoding
+#   of non-ASCII characters, and other MIME niceties.
+#
+# Klaus Weide 20000712
+
+########################################################################
+########## Configurable variables ######################################
+
+$SENDMAIL = '/usr/sbin/sendmail';
+#                                   The location of your sendmail binary
+$SELFURL = 'lynxcgi:/home/lynxdev/lynxcgi/mailto-form.pl';
+#                                   Where this script lives in URL space
+$SEND_TOKEN = '/vJhOp6eQ';
+#                           When found in the PATH_INFO part of the URL,
+#                           this causes the script to actually send mail
+#                           by calling $SENDMAIL instead of just throwing
+#                           up a form.  CHANGE IT!  And don't tell anyone!
+#                           Treat it like a password.
+#                           Must start with '/', probably should have only
+#                           alphanumeric ASCII characters.
+
+## Also, make sure the first line of this script points
+## to your PERL binary
+
+########## Nothing else to change - I hope #############################
+########################################################################
+
+use CGI;
+
+$|=1;
+
+### Upcase first character
+##sub ucfirst {
+##    s/^./\U$1/;
+##}
+
+# If there are multiple occurrences of the same thing, how to join them
+# into one string
+%joiner = (from => ', ',
+	   to => ', ',
+	   cc => ', ',
+	   subject => '; ',
+	   body => "\n\n"
+	   );
+sub joiner {
+    my ($key) = @_;
+    if ($joiner{$key}) {
+	$joiner{$key};
+    } else {
+	" ";
+    }
+}
+
+# Here we check whether this script is called for actual sending, rather
+# than form generation.  If so, all the rest is handled by sub sendit, below.
+$pathinfo = $ENV{'PATH_INFO'}; 
+if (defined($pathinfo) && $pathinfo eq $SEND_TOKEN) {
+    $q = new CGI;
+    print $q->header('text/plain');
+    sendit();
+    exit;
+}
+
+$method = $ENV{'REQUEST_METHOD'};
+$querystring = $ENV{'QUERY_STRING'};
+if ($querystring) {
+    if ($method && $method eq "POST" && $ENV{'CONTENT_LENGTH'}) {
+	$querystring =~ s/((^|\&)to=[^?&]*)\?/$1&/;
+	$q0 = new CGI;
+	$q = new CGI($querystring);
+	@fields = $q0->param();
+	foreach $key (@fields) {
+	    @vals = $q0->param($key);
+#	    print "Content-type: text/html\n\n";
+#	    print "Appending $key to \$q...\n";
+	    $q->append($key, @vals);
+#	    print "<H2>Current Values in \$q0</H2>\n";
+#	    print $q0->dump;
+#	    print "<H2>Current Values in \$q</H2>\n";
+#	    print $q->dump;
+
+	}
+
+    } else {
+	$querystring =~ s/((^|\&)to=[^?&]*)\?/$1&/;
+	$q = new CGI($querystring);
+    }
+} else {
+    $q = new CGI;
+}
+
+print $q->header;
+
+$long_title = $ENV{'QUERY_STRING'};
+$long_title =~ s/^from=([^&]*)\&to=//;
+$long_title = "someone" unless $long_title;
+$long_title = "Compose mail for $long_title";
+if (length($long_title) > 72) {
+    $title = substr($long_title,0,72) . "...";
+} else {
+    $title = $long_title;
+}
+$long_title =~ s/&/&amp;/g;
+$long_title =~ s/</&lt;/g;
+print
+    $q->start_html($title), "\n",
+    $q->h1($long_title), "\n",
+    $q->start_form(-method=>'POST', -action => $SELFURL . $SEND_TOKEN), "\n";
+
+print "<TABLE>\n";
+@fields = $q->param();
+foreach $key (@fields) {
+    @vals = $q->param($key);
+    if (scalar(@vals) != 1) {
+	print "multiple values " . scalar(@vals) ." for $key!\n";
+	$q->param($key, join (joiner($key), @vals));
+    }
+}
+foreach $key (@fields) {
+    $_ = lc($key);
+    if ($_ ne $key) {
+	print "noncanonical case for $key!\n";
+	$val=$q->param($key);
+	$q->delete($key);
+	if (!$q->param($_)) {
+	    $q->param($_, $val);
+	} else {
+	    $q->param($_, $q->param($_) . joiner($_) . "$val");
+	}
+    }
+}
+foreach $key ('from', 'to', 'cc', 'subject') {
+    print $q->Tr,
+    $q->td(ucfirst($key) . ":"),
+    $q->td($q->textfield(-name=>$key,
+			 -size=>60,
+			 -default=>$q->param($key))), "\n";
+    $q->delete($key);
+}
+
+# Also pass on any unrecognized header fields that were specified.
+# This may not be a good idea for general use!
+# At least some dangerous header fields may have to be suppressed.
+@keys = $q->param();
+if (scalar(@keys) > (($q->param('body')) ? 1 : 0)) {
+    print "<TR><TD colspan=2><EM>Additional headers:</EM>\n";
+    foreach $key ($q->param()) {
+	if ($key ne 'body') {
+	    print $q->Tr,
+	    $q->td(ucfirst($key) . ":"),
+	    $q->td($q->textfield(-name=>$key,
+				 -size=>60,
+				 -default=>$q->param($key))), "\n";
+	}
+    }
+}
+print "</TABLE>\n";
+print $q->textarea(-name=>'body',
+		   -default=>$q->param('body')), "\n";
+print "<PRE>\n\n</PRE>", "\n",
+    $q->submit(-value=>"Send the message"), "\n",
+    $q->endform, "\n";
+
+print "\n";
+exit;
+
+# This is for header field values.
+sub sanitize_field_value {
+    my($val) = @_;
+    $val =~ s/\0/./g;
+    $val =~ s/\r\n/\n/g;
+    $val =~ s/\r/\n/g;
+    $val =~ s/\n*$//g;
+    $val =~ s/\n+/\n/g;
+    $val =~ s/\n(\S)/\n\t$1/g;
+    $val;
+}
+
+sub sendit {
+    open (MAIL, "| $SENDMAIL -t -oi -v") || die ("$0: Can't run sendmail: $!\n");
+    @fields = $q->param();
+    foreach $key (@fields) {
+	@vals = $q->param($key);
+	if (scalar(@vals) != 1) {
+	    print "multiple values " . scalar(@vals) ." for $key!\n";
+	    $q->param($key, join (joiner($key), @vals));
+	}
+    }
+    foreach $key (@fields) {
+	if ($key ne 'body') {
+	    if ($key =~ /[^A-Za-z0-9_-]/) {
+		print "$0: Ignoring malformed header field named '$key'!\n";
+		next;
+	    }
+	    print MAIL ucfirst($key) . ": " .
+		sanitize_field_value($q->param($key)) . "\n"
+		or die ("$0: Feeding header to sendmail failed: $!\n");
+	}
+    }
+    print MAIL "\n"
+	or die ("$0: Ending header for sendmail failed: $!\n");
+    print MAIL $q->param('body'), "\n"
+	or die ("$0: Feeding body to sendmail failed: $!\n");
+    close(MAIL)
+	or warn $! ? "Error closing pipe to sendmail: $!"
+	    : ($? & 127) ? ("Sendmail killed by signal " . ($? & 127) .
+			    ($? & 127) ? ", core dumped" : "")
+		: "Return value " . ($? >> 8) . " from sendmail";
+}
diff --git a/samples/midnight.lss b/samples/midnight.lss
new file mode 100644
index 00000000..8ecb772d
--- /dev/null
+++ b/samples/midnight.lss
@@ -0,0 +1,84 @@
+# From: claudio santambrogio <claudio.santambrogio@tiscali.it>
+
+em:bold:green:blue
+strong:bold:red:blue
+b:bold:white:blue
+i:bold:yellow:blue
+alink:reverse:brightgreen:blue

+a:bold:cyan:blue
+img:dim:gray:blue
+status:reverse:brightblue:blue

+forwbackw.arrow:bold:brightblue:blue

+alert:bold:red:blue
+fig:normal:gray:blue
+caption:reverse:brown:blue
+hr:normal:yellow:blue
+blockquote:normal:brightblue:blue
+#ul:normal:brown:blue
+address:normal:magenta:blue
+title:normal:grey:blue
+tt:dim:gray:blue
+h1:bold:brightblue:blue
+label:normal:magenta:blue
+value:normal:green:blue
+high:bold:brightmagenta:blue
+q:normal:yellow:magenta
+small:dim:gray:blue
+big:bold:yellow:blue
+sup:bold:yellow:blue
+sub:dim:gray:blue
+lh:bold:yellow:magenta
+
+area:normal:default:blue
+body:normal:default:blue
+br:normal:default:blue
+center:normal:default:blue
+center.header:normal:default:blue
+div:normal:default:blue
+font:normal:default:blue
+font.letter:normal:default:blue
+h2:normal:default:blue
+h3:normal:default:blue
+h4:normal:default:blue
+h5:normal:default:blue
+h6:normal:default:blue
+head:normal:default:blue
+link:normal:default:blue
+map:normal:default:blue
+meta:normal:default:blue
+p:normal:default:blue
+table:normal:default:blue
+td:normal:default:blue
+tr:normal:default:blue
+title:normal:default:blue
+
+form:normal:default:blue
+input:normal:default:blue
+input.submit:normal:cyan:blue
+select:normal:default:blue
+option:normal:default:blue
+
+pre:normal:default:blue
+dd:normal:default:blue
+dt:normal:default:blue
+ul:normal:default:blue
+li:normal:default:blue
+
+base:normal:default:blue
+iframe:normal:red:blue
+cite:normal:yellow:blue
+
+span.htmlsrc_comment:normal:green:blue
+span.htmlsrc_tag:normal:brightgreen:blue
+span.htmlsrc_attrib:normal:cyan:blue
+span.htmlsrc_attrval:normal:white:blue
+span.htmlsrc_abracket:normal:brightgreen:blue
+span.htmlsrc_entity:normal:white:blue
+##span.htmlsrc_href:
+##span.htmlsrc_entire:
+span.htmlsrc_badseq:normal:red:blue
+span.htmlsrc_badtag:normal:red:blue
+span.htmlsrc_badattr:normal:red:blue
+span.htmlsrc_sgmlspecial:normal:yellow:blue

+

+normal:normal:default:blue
\ No newline at end of file
diff --git a/samples/mild-colors.lss b/samples/mild-colors.lss
new file mode 100644
index 00000000..2807e501
--- /dev/null
+++ b/samples/mild-colors.lss
@@ -0,0 +1,59 @@
+# From: Vlad Harchev <hvv@hippo.ru> 
+# Setting the normal and default types lets us keep (almost) the same colors
+# whether the terminal's default colors are white-on-black or black-on-white.
+# It is not exact since the default "white" is not necessarily the same color
+# as the ANSI lightgray, but is as close as we can get in a standard way.
+#
+# If you really want the terminal's default colors, and if lynx is built using
+# ncurses' default-color support, remove these two lines:
+normal:		normal:			lightgray:black
+default:	normal:			white:black
+
+# Notes:
+# better for eyes - it sets black background with mild colors that
+# have approximately the same intensity.
+#
+# grey normal text on black background with green links and brightgreen  
+# highlighted links. 
+em:		bold:			cyan
+strong:		bold:			cyan
+dt:		bold:			cyan
+var:		bold:			cyan
+samp:		bold:			cyan
+b:		bold:			cyan
+i:		bold:			cyan
+alink:		reverse:		brightgreen:	black
+a:		bold:			green
+img:		dim:			cyan:		black
+status:		reverse:		cyan:		black
+fig:		normal:			gray
+caption:	reverse:		cyan
+hr:		normal:			gray
+blockquote:	normal:			cyan:		black
+address:	normal:			cyan
+title:		normal:			cyan:		black
+tt:		normal:			white:		black
+h1:		bold:			cyan:		black
+label:		normal:			cyan
+value:		normal:			cyan
+q:		normal:			cyan
+small:		dim:			cyan
+big:		bold:			cyan
+sup:		bold:			cyan
+sub:		dim:			cyan
+code:		normal:			cyan
+
+span.htmlsrc_comment:normal:white
+span.htmlsrc_tag:normal:cyan
+##the following makes no difference (except increasing the speed) since tag
+##is already in cyan.
+#span.htmlsrc_attrib:normal:cyan
+#span.htmlsrc_attrval:normal:magenta
+span.htmlsrc_abracket:normal:cyan
+span.htmlsrc_entity:normal:white
+##span.htmlsrc_href:
+##span.htmlsrc_entire:
+span.htmlsrc_badseq:normal:red
+span.htmlsrc_badtag:normal:red
+span.htmlsrc_badattr:normal:red
+span.htmlsrc_sgmlspecial:normal:yellow
diff --git a/samples/mime.types b/samples/mime.types
new file mode 100644
index 00000000..6393c307
--- /dev/null
+++ b/samples/mime.types
@@ -0,0 +1,26 @@
+# example mime.types file.
+# see the NCSA X Mosaic documentation at
+# http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/extension-map.html
+# for more details
+# [Lynx uses mime.types mapping for ftp and local files only,
+# http server does specify MIME type in the Content-Type header].
+
+application/postscript         ai eps ps
+application/rtf                rtf
+application/x-tex              tex
+application/x-texinfo          texinfo texi
+application/x-troff            t tr roff
+audio/basic                    au snd
+audio/x-aiff                   aif aiff aifc
+audio/x-wav                    wav
+image/gif                      gif
+image/ief                      ief
+image/jpeg                     jpeg jpg jpe
+image/tiff                     tiff tif
+image/x-xwindowdump            xwd
+text/html                      html
+text/plain                     txt c cc h
+video/mpeg                     mpeg mpg mpe
+video/quicktime                qt mov
+video/x-msvideo                avi
+video/x-sgi-movie              movie
diff --git a/samples/oldlynx b/samples/oldlynx
new file mode 100755
index 00000000..11fde3b0
--- /dev/null
+++ b/samples/oldlynx
@@ -0,0 +1,20 @@
+#!/bin/sh
+# invoke lynx built with color-style, overriding the color options to use the
+# non-color-style scheme -TD
+
+my_cfg=${TMPDIR:-/tmp}/lynxcfg$$
+trap "rm -f $my_cfg" 0 1 2 5 15
+
+rm -f "$my_cfg"
+echo "DEFAULT_COLORS:off" >>$my_cfg
+if test -n "$LYNX_CFG" ; then
+	echo "include:$LYNX_CFG" >>$my_cfg
+fi
+echo "COLOR_STYLE:" >>$my_cfg
+echo "NESTED_TABLES:off" >>$my_cfg
+
+LYNX_CFG=$my_cfg
+export LYNX_CFG
+unset LYNX_LSS
+
+${LYNX_PROG-lynx} "$@"
diff --git a/samples/opaque.lss b/samples/opaque.lss
new file mode 100644
index 00000000..80e39693
--- /dev/null
+++ b/samples/opaque.lss
@@ -0,0 +1,48 @@
+# From: claudio santambrogio <claudio.santambrogio@tiscali.it>
+
+em:bold:cyan
+strong:bold:cyan
+dt:bold:cyan
+var:bold:cyan
+samp:bold:cyan
+b:bold:cyan
+i:bold:cyan
+alink:reverse:brightgreen:red
+a:bold:green
+img:dim:cyan:default
+status:reverse:cyan:default
+fig:normal:gray
+caption:reverse:cyan
+hr:normal:gray
+blockquote:normal:cyan:default
+address:normal:cyan
+title:normal:cyan:default
+tt:normal:white:default
+h1:bold:cyan:default
+label:normal:cyan
+value:normal:cyan
+high:bold:cyan
+q:normal:cyan
+small:dim:cyan
+big:bold:cyan
+sup:bold:cyan
+sub:dim:cyan
+lh:bold:cyan
+code:normal:cyan
+alert:bold:red
+normal:normal:brown:black
+
+span.htmlsrc_comment:normal:white
+span.htmlsrc_tag:normal:cyan
+##the following makes no difference (except increasing the speed) since tag
+##is already in cyan.
+#span.htmlsrc_attrib:normal:cyan
+#span.htmlsrc_attrval:normal:magenta
+span.htmlsrc_abracket:normal:cyan
+span.htmlsrc_entity:normal:green
+##span.htmlsrc_href:
+##span.htmlsrc_entire:
+span.htmlsrc_badseq:normal:red
+span.htmlsrc_badtag:normal:red
+span.htmlsrc_badattr:normal:red
+span.htmlsrc_sgmlspecial:normal:yellow
diff --git a/scripts/cfg2html.pl b/scripts/cfg2html.pl
new file mode 100755
index 00000000..78d6e421
--- /dev/null
+++ b/scripts/cfg2html.pl
@@ -0,0 +1,550 @@
+#!/usr/bin/perl -w
+# $LynxId: cfg2html.pl,v 1.16 2012/02/04 00:54:50 tom Exp $
+#
+# This script uses embedded formatting directives in the lynx.cfg file to
+# guide it in extracting comments and related information to construct a
+# set of HTML files.  Comments begin with '#', and directives with '.'.
+# Directives implemented:
+#
+#	h1 {Text}
+#		major heading.  You may specify the same major heading in
+#		more than one place.
+#	h2 {Text}
+#		minor heading, i.e. a keyword.
+#	ex [number]
+#		the following line(s) are an example.  The [number] defaults
+#		to 1.
+#	nf [number]
+#		turn justification off for the given number of lines, defaulting
+#		to the remainder of the file.
+#	fi
+#		turn justification back on
+#	url text
+#		embed an HREF to external site.
+#
+use strict;
+
+use Getopt::Std;
+
+use vars qw($opt_a $opt_m $opt_s);
+
+use vars qw(@cats);
+use vars qw(%cats);
+
+use vars qw(@settings_avail);
+use vars qw(%settings_avail);
+
+# Options:
+#	-a	show all options, not only those that are available.
+#	-m	mark unavailable options with an '*'.  Data for this is read
+#		from standard input.
+#	-s	sort entries in body.html
+&getopts('ams');
+
+if ( defined $opt_m ) {
+	my $l;
+	my @settings_ = <STDIN>;
+	%settings_avail = ();
+	foreach $l (@settings_) {
+		chop $l;
+		if ($l =~ /^[[:alpha:]_][[:alnum:]_]*$/) {
+			$settings_avail{uc $l} = 1;
+		}
+	}
+} else {
+	$opt_a = 1;
+}
+
+# This sub tells whether the support for the given setting was enabled at
+# compile time.
+sub ok {
+	my ($name) = @_;
+	my $ret = defined($settings_avail{uc $name})+0;
+	$ret;
+}
+
+
+if ( $#ARGV < 0 ) {
+	&doit("lynx.cfg");
+} else {
+	while ( $#ARGV >= 0 ) {
+		&doit ( shift @ARGV );
+	}
+}
+exit (0);
+
+
+# process a Lynx configuration-file
+sub doit {
+	my ($name) = @_;
+	my $n;
+
+	# Ignore our own backup files
+	if ( $name =~ ".*~" ) {
+		return;
+	}
+
+	# Read the file into an array in memory.
+	open(FP,$name) || do {
+		print STDERR "Can't open $name: $!\n";
+		return;
+	};
+	my (@input) = <FP>;
+	close(FP);
+
+	for $n (0..$#input) {
+		chop $input[$n]; # trim newlines
+		$input[$n] =~ s/\s*$//; # trim trailing blanks
+		$input[$n] =~ s/^\s*//; # trim leading blanks
+	}
+
+	&gen_alphatoc(@input);
+	@cats = &gen_cattoc(@input);
+	&gen_body(@input);
+}
+
+sub gen_alphatoc {
+	my (@input) = @_;
+	my @minor;
+	my ($n, $m, $c, $d);
+	my $output = "alphatoc.html";
+	open(FP,">$output") || do {
+		print STDERR "Can't open $output: $!\n";
+		return;
+	};
+	print FP <<'EOF';
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<link rev="made" href="mailto:lynx-dev@nongnu.org">
+<title>Settings by name</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+</head>
+<body>
+<h1>Alphabetical table of settings</h1>
+EOF
+	$m=0;
+	for $n (0..$#input) {
+		if ( $input[$n] =~ /^\.h2\s*[[:upper:]][[:upper:][:digit:]_]*$/ ) {
+			$minor[$m] = $input[$n];
+			$minor[$m] =~ s/^.h2\s*//;
+			$m++ if (ok($minor[$m]) || defined $opt_a);
+		}
+	}
+	@minor = sort @minor;
+	# index by the first character of each keyword
+	$c=' ';
+	for $n (0..$#minor) {
+		$d = substr($minor[$n],0,1);
+		if ($d ne $c) {
+			printf FP "<a href=\"#%s\">%s</a> \n", $d, $d;
+			$c=$d;
+		}
+	}
+	# index by the first character of each keyword
+	$c=' ';
+	for $n (0..$#minor) {
+		$d = substr($minor[$n],0,1);
+		if ($d ne $c) {
+			printf FP "<h2><a name=%s>%s</a></h2>\n", $d, $d;
+			$c=$d;
+		}
+		my $avail = ok($minor[$n]);
+		my $mark = (!$avail && defined $opt_m) ? "*" : "";
+		if (defined $opt_a || $avail) {
+		    printf FP "<a href=\"body.html#%s\">%s</a>&nbsp;&nbsp;\n", $minor[$n], $minor[$n] . $mark;
+		};
+	}
+	my $str = <<'EOF'
+<p>
+<a href=cattoc.html>To list of settings by category</a>
+EOF
+. (defined $opt_a && defined $opt_m ?
+"<p>Support for all settings suffixed with '*' was disabled at compile time.\n" :
+ "") . <<'EOF'
+</body>
+</html>
+EOF
+	;print FP $str;
+	close(FP);
+}
+
+# This uses the associative array $cats{} to store HREF values pointing into
+# the cattoc file.
+#
+# We could generate this file in alphabetic order as well, but choose to use
+# the order of entries in lynx.cfg, since some people expect that arrangement.
+sub gen_body {
+	my @input = @_;
+	my ($n, $c);
+	my @h2;
+	my $output = "body.html";
+	open(FP,">$output") || do {
+		print STDERR "Can't open $output: $!\n";
+		return;
+	};
+	print FP <<'EOF';
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<link rev="made" href="mailto:lynx-dev@nongnu.org">
+<title>Description of settings in lynx configuration file</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+</head>
+<body>
+EOF
+	my $l;
+	my $t;
+	my $d = -1;
+	my $p = 0;
+	my $m = 0;
+	my $h1 = "";
+	my $sp = ' ';
+	my $ex = 0;
+	my $nf = 0;
+	my $any = 0;
+	my $first = 0;
+	my $next = 0;
+	my $left = 0;
+	my %keys;
+	undef %keys;
+
+	my @optnames;
+	my %optname_to_fname;	#this maps optname to fname - will be used
+	    			#for alphabetical output of the content
+	my $curfilename = "tmp000";	#will be incremented each time
+	my $tmpdir = "./";	#temp files will be created there
+	close(FP);
+
+	for $n (0..$#input) {
+		if ( $next ) {
+			$next--;
+			next;
+		}
+		$c = $input[$n];
+		my $count = $#input;
+		my $once = 1;
+		if ( $c =~ /^\.h1\s/ ) {
+			$h1 = 1;
+			$h1 = $c;
+			$h1 =~ s/^.h1\s*//;
+			$m = 0;
+			$first = 1;
+			undef %keys;
+			next;
+		} elsif ( $c =~ /^\.h2\s/ ) {
+			$c =~ s/^.h2\s*//;
+			$h2[$m] = $c;
+			$keys{$c} = 1;
+			$m++;
+			next;
+		} elsif ( $c =~ /^\./ ) {
+			my $s = $c;
+			$s =~ s/^\.[[:lower:]]+\s//;
+			if ( $s =~ /^[[:digit:]]+$/ ) {
+				$count = $s;
+				$once = $s;
+			}
+		}
+		if ( $c =~ /^\.ex/ ) {
+			$ex = $once;
+			printf FP "<h3><em>Example%s:</em></h3>\n", $ex > 1 ? "s" : "";
+		} elsif ( $c =~ /^\.url/ ) {
+			my $url = $c;
+			$url =~ s/^\.url\s+//;
+			printf FP "<blockquote><a href=\"%s\">%s</a></blockquote>\n", $url, $url;
+		} elsif ( $c =~ /^\.nf/ ) {
+			printf FP "<pre>\n";
+			$nf = $count;
+		} elsif ( $c =~ /^\.fi/ ) {
+			printf FP "</pre>\n";
+			$nf = 0;
+		} elsif ( $c =~ /^$/ ) {
+			if ( $m > 1 ) {
+				my $j;
+				for $j (1..$#h2) {
+					close(FP);++$curfilename;
+					push @optnames,$h2[$j];
+					open(FP,">$tmpdir/$curfilename") || do {
+						print STDERR "Can't open tmpfile: $!\n";
+						return;
+					};
+					$optname_to_fname{$h2[$j]} = $curfilename;
+
+					printf FP "<hr>\n";
+					printf FP "<h2><kbd><a name=\"%s\">%s</a></kbd>\n", $h2[$j], $h2[$j];
+					if ( $h1 ne "" ) {
+						printf FP " &ndash; <a href=\"cattoc.html#%s\">%s</a>", $cats{$h1}, $h1;
+					}
+					printf FP "</h2>\n";
+					printf FP "<h3><em>Description</em></h3>\n";
+					printf FP "Please see the description of <a href=\"#%s\">%s</a>\n", $h2[0], $h2[0];
+				}
+				@h2 = "";
+			}
+			$m = 0;
+			$first = 1;
+		} elsif ( $c =~ /^[#[:alpha:]]/ && $m != 0 ) {
+			if ( $first ) {
+				close(FP);++$curfilename;
+				push @optnames,$h2[0];
+				open(FP,">$tmpdir/$curfilename") || do {
+				    print STDERR "Can't open tmpfile: $!\n";
+				    return;
+				};
+				$optname_to_fname{$h2[0]} = $curfilename;
+
+				if ( $any ) {
+					printf FP "<hr>\n";
+				}
+				printf FP "<h2><kbd><a name=\"%s\">%s</a></kbd>\n", $h2[0], $h2[0];
+				if ( $h1 ne "" ) {
+					printf FP " &ndash; <a href=\"cattoc.html#%s\">%s</a>", $cats{$h1}, $h1;
+				}
+				printf FP "</h2>\n";
+				printf FP "<h3><em>Description</em></h3>\n";
+				$any++;
+				$first = 0;
+			}
+
+			# Convert tabs first, to retain relative alignment
+			$c =~ s#^\t#' 'x8#e;
+			while ( $c =~ /\t/ ) {
+				$c =~ s#(^[^\t]+)\t#$1 . $sp x (9 - (length($1) % 8 ))#e;
+			}
+
+			# Strip off the comment marker
+			$c =~ s/^#//;
+
+			# and convert simple expressions:
+			$c =~ s/&/&amp;/g;
+			$c =~ s/>/&gt;/g;
+			$c =~ s/</&lt;/g;
+			#hvv - something wrong was with next statement
+			$c =~ s/'([^ ])'/"<strong>$1<\/strong>"/g;
+
+			my $k = 0;
+			if ( $c =~ /^[[:alpha:]_][[:alnum:]_]+:/ ) {
+				$t = $c;
+				$t =~ s/:.*//;
+				$k = $keys{$t};
+			}
+
+			if ( $c =~ /^$/ ) {
+				if ( $nf ) {
+					printf FP "\n";
+				} else {
+					$p = 1;
+				}
+			} elsif ( $ex != 0 ) {
+				printf FP "<br><code>%s</code><br>\n", $c;
+				$ex--;
+			} elsif ( $k ) {
+				if ( $d != $n && ! $nf ) {
+					printf FP "<h3><em>Default value</em></h3>\n";
+				}
+				$c =~ s/:$/:<em>none<\/em>/;
+				$c =~ s/:/<\/code>:<code>/;
+				$c = "<code>" . $c . "</code>";
+				if ( ! $nf ) {
+					$c .= "<br>";
+				}
+				printf FP "%s\n", $c;
+				$d = $n + 1;
+			} else {
+				if ( $p && ! $nf ) {
+					printf FP "<p>\n";
+				}
+				$p = 0;
+				if ( $input[$n+1] =~ /^#\s*==/ ) {
+					$c = "<br><em>$c</em>";
+					if ( ! $nf ) {
+						$c .= "<br>";
+					}
+					$next++;
+				}
+				printf FP "%s\n", $c;
+			}
+			if ( $nf != 0 && $nf-- == 0 ) {
+				printf FP "</pre>\n";
+			}
+		}
+	}
+	close(FP);
+	# Here we collect files with description of needed lynx.cfg
+	# options in the proper (natural or sorted) order.
+	open(FP,">>$output") || do {
+		print STDERR "Can't open $output: $!\n";
+		return;
+	};
+	{
+	    my @ordered = (defined $opt_s ? (sort keys(%optname_to_fname)) : @optnames);
+	    if (defined $opt_s) {
+		print FP "Options are sorted by name.\n";
+	    } else {
+		print FP "Options are in the same order as lynx.cfg.\n";
+	    }
+	    foreach $l (@ordered) {
+		my $fnm = $tmpdir . $optname_to_fname{$l};
+		open(FP1,"<$fnm") || do {
+		    print STDERR "Can't open $fnm: $!\n";
+		    return;
+		};
+		my $avail = ok($l);
+		if (defined $opt_a || $avail) {
+		    my @lines = <FP1>;
+		    print FP @lines;
+		    if (!$avail && defined $opt_m) {
+			print FP <<'EOF';
+<p>Support for this setting was disabled at compile-time.
+EOF
+		    }
+		}
+		close(FP1);
+	    }
+	    foreach $l (values(%optname_to_fname)) {
+		unlink $l;
+	    }
+	}
+
+	print FP <<'EOF';
+</body>
+</html>
+EOF
+	close(FP);
+}
+
+sub gen_cattoc {
+	my @input = @_;
+	my @major;
+	my %descs;
+	my %index;
+	my ($n, $m, $c, $d, $found, $h1, $nf, $ex, $count, $once);
+	my $output = "cattoc.html";
+
+	open(FP,">$output") || do {
+		print STDERR "Can't open $output: $!\n";
+		return;
+	};
+	print FP <<'EOF';
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<link rev="made" href="mailto:lynx-dev@nongnu.org">
+<title>Settings by category</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+</head>
+<body>
+<h1>Settings by category</h1>
+These are the major categories of configuration settings in Lynx:
+<ul>
+EOF
+	$m = -1;
+	$h1 = 0;
+	$nf = 0;
+	for $n (0..$#input) {
+		my $count = $#input;
+		my $once = 1;
+		$c = $input[$n];
+		if ( $input[$n] =~ /^\.h1\s/ ) {
+			$h1 = 1;
+			$c =~ s/^.h1\s*//;
+			$m = $#major + 1;
+			$d = 0;
+			$found = 0;
+			while ( $d <= $#major && ! $found ) {
+				if ( $major[$d] eq $c ) {
+					$m = $d;
+					$found = 1;
+				}
+				$d++;
+			}
+			if ( ! $found ) {
+				$major[$m] = $c;
+				$descs{$major[$m]} = "";
+				$index{$major[$m]} = "";
+			}
+			next;
+		} elsif ( $h1 != 0 ) {
+			if ( $c =~ /^\.(nf|ex)/ ) {
+				my $s = $c;
+				$s =~ s/^\.[[:lower:]]+\s//;
+				if ( $s =~ /^[[:digit:]]+$/ ) {
+					$count = $s;
+					$once = $s;
+				}
+			}
+			if ( $input[$n] =~ /^$/ ) {
+				$h1 = 0;
+			} elsif ( $input[$n] =~ /^\.nf/ ) {
+				$descs{$major[$m]} .= "<pre>" . "\n";
+				$nf = $count;
+			} elsif ( $input[$n] =~ /^\.fi/ ) {
+				$descs{$major[$m]} .= "</pre>" . "\n";
+				$nf = 0;
+			} elsif ( $input[$n] =~ /^\.ex/ ) {
+				$ex = $once;
+				$descs{$major[$m]} .=
+					"<h3><em>Example"
+					.
+					($ex > 1 ? "s" : "")
+					.
+					":</em></h3>\n"
+					. "\n";
+			} elsif ( $input[$n] =~ /^\s*#/ ) {
+				$c = $input[$n];
+				$c =~ s/^\s*#\s*//;
+				$descs{$major[$m]} .= $c . "\n";
+			}
+		}
+		if ( $m >= 0 && $input[$n] =~ /^\.h2\s/ ) {
+			$c = $input[$n];
+			$c =~ s/^.h2\s*//;
+			$index{$major[$m]} .= $c . "\n"
+			    if (defined $opt_a || ok($c));
+			$h1 = 0;
+		}
+		if ( $nf != 0 && $nf-- == 0 ) {
+			$descs{$major[$m]} .= "</pre>\n";
+		}
+	}
+	@major = sort @major;
+	for $n (0..$#major) {
+		$cats{$major[$n]} = sprintf("header%03d", $n);
+		printf FP "<li><a href=\"#%s\">%s</a>\n", $cats{$major[$n]}, $major[$n];
+	}
+	printf FP "</ul>\n";
+	for $n (0..$#major) {
+		printf FP "\n";
+		printf FP "<h2><a name=\"%s\">%s</a></h2>\n", $cats{$major[$n]}, $major[$n];
+		if ($descs{$major[$n]} !~ /^$/) {
+			printf FP "<h3>Description</h3>\n%s\n", $descs{$major[$n]};
+		}
+		$c = $index{$major[$n]};
+		if ( $c ne "" ) {
+			my @c = split(/\n/, $c);
+			@c = sort @c;
+			printf FP "<p>Here is a list of settings that belong to this category\n";
+			printf FP "<ul>\n";
+			for $m (0..$#c) {
+				my $avail = ok($c[$m]);
+				my $mark = (!$avail && defined $opt_m) ? "*" : "";
+				printf FP "<li><a href=\"body.html#%s\">%s</a>\n", $c[$m], $c[$m] . $mark;
+			}
+			printf FP "</ul>\n";
+		}
+	}
+	my $str = <<'EOF'
+<p>
+<a href=alphatoc.html>To list of settings by name</a>
+EOF
+. (defined $opt_a && defined $opt_m ?
+"<p>Support for all settings suffixed with '*' was disabled at compile time." :
+ "") . <<'EOF'
+</body>
+</html>
+EOF
+	;print FP $str;
+	close(FP);
+	return @cats;
+}
diff --git a/scripts/cfg_defs.sh b/scripts/cfg_defs.sh
new file mode 100755
index 00000000..5f37e962
--- /dev/null
+++ b/scripts/cfg_defs.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+# Translate the lynx_cfg.h and config.cache data into a table, useful for
+# display at runtime.
+
+TOP="${1-.}"
+OUT=cfg_defs.h
+
+# just in case we want to run this outside the makefile
+: ${SHELL:=/bin/sh}
+
+cat >$OUT <<EOF
+#ifndef CFG_DEFS_H
+#define CFG_DEFS_H 1
+
+static const struct {
+	const char *name;
+	const char *value;
+} config_cache[] = {
+EOF
+
+sed \
+	-e '/^#/d'     \
+	-e 's/^.[^=]*_cv_//' \
+	-e 's/=\${.*=/=/'  \
+	-e 's/}$//'          \
+	config.cache | $SHELL $TOP/scripts/cfg_edit.sh >>$OUT
+
+cat >>$OUT <<EOF
+};
+
+static const struct {
+	const char *name;
+	const char *value;
+} config_defines[] = {
+EOF
+fgrep	'#define' lynx_cfg.h |
+sed	-e 's@	@ @g' \
+	-e 's@  @ @g' \
+	-e 's@^[ 	]*#define[ 	]*@@' \
+	-e 's@[ ]*/\*.*\*/@@' \
+	-e 's@[ 	][ 	]*@=@' \
+    | $SHELL $TOP/scripts/cfg_edit.sh >>$OUT
+
+cat >>$OUT <<EOF
+};
+
+#endif /* CFG_DEFS_H */
+EOF
diff --git a/scripts/cfg_edit.sh b/scripts/cfg_edit.sh
new file mode 100755
index 00000000..6206c6c4
--- /dev/null
+++ b/scripts/cfg_edit.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+# Invoked from cfg_defs.sh as a filter
+# Strip leading and trailing whitespace
+# Escape any iternal '\'
+# Escape any iternal '"'
+# Entify any iternal '&', '<' or '>'
+# Append a '=' if none present'
+# Break into two strings at '='
+# Prefix ' { "' and suffix '" },'
+sort |
+sed	-e 's!^[ 	]*!!' -e 's![ 	]*$!!' \
+	-e 's!\\!\\\\!g'        \
+	-e 's!"!\\"!g'          \
+	-e 's!&!\&amp;!g' -e 's!<!\&lt;!g' -e 's!>!\&gt;!g' \
+	-e 's!^[^=]*$!&=!' \
+	-e 's!=!",	"!'     \
+	-e 's!^!	{ "!' -e 's!$!" },!'
diff --git a/scripts/cfg_path.sh b/scripts/cfg_path.sh
new file mode 100755
index 00000000..321f5b93
--- /dev/null
+++ b/scripts/cfg_path.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+# Use this script for substituting the configured path into lynx.cfg -
+# not all paths begin with a slash.
+SECOND=`echo "$2" | sed -e 's,^/,,'`
+sed -e "/^[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_]*:file:/s,/PATH_TO/$1,/$SECOND,"
diff --git a/scripts/conf.mingw.sh b/scripts/conf.mingw.sh
new file mode 100755
index 00000000..59b398d1
--- /dev/null
+++ b/scripts/conf.mingw.sh
@@ -0,0 +1,32 @@
+#!/bin/bash.exe
+LDFLAGS="-mno-cygwin -static -L/mingw/lib" \
+LIBS="-lwsock32 -lgdi32 -lmsvcrt -liconv" \
+CFLAGS="-mno-cygwin -I/mingw/include -I/mingw/include/openssl -W -Wall -O3 -D_WINDOWS -DSH_EX -DWIN_EX -DNOUSERS -DNOSIGHUP -DDOSPATH -DUSE_ALT_BLAT_MAILER -DBOXHORI=0 -DBOXVERT=0" \
+CPPFLAGS="-mno-cygwin -I/mingw/include -I/mingw/include/openssl" \
+./configure --prefix=/d/cygwin/mingw/lynx2.8.7dev.13/lynx-conf \
+--host=mingw32 \
+--disable-dired-override \
+--disable-full-paths \
+--enable-addrlist-page \
+--enable-change-exec \
+--enable-charset-choice \
+--enable-default-colors \
+--enable-exec-links \
+--enable-externs \
+--enable-file-upload \
+--enable-gzip-help \
+--enable-nested-tables \
+--enable-nls \
+--enable-vertrace \
+--includedir=/mingw/include \
+--sysconfdir=/d/cygwin/mingw/lynx2.8.7dev.13/lynx-conf \
+--datadir=/d/cygwin/mingw/lynx2.8.7dev.13/lynx-conf \
+--with-bzlib \
+--with-cfg-file=d:/cygwin/mingw/lynx2.8.7dev.13/lynx-conf/lynx.cfg \
+--with-lss-file=d:/cygwin/mingw/lynx2.8.7dev.13/lynx-conf/lynx.lss \
+--with-mime-libdir=c:/ \
+--with-nls-datadir=d:/cygwin/mingw/share \
+--with-pkg-config=no \
+--with-screen=curses \
+--with-ssl=/mingw/lib \
+--with-zlib
diff --git a/scripts/config.djgpp.sh b/scripts/config.djgpp.sh
new file mode 100755
index 00000000..fa4dcfee
--- /dev/null
+++ b/scripts/config.djgpp.sh
@@ -0,0 +1,24 @@
+#!/bin/sh
+CFLAGS="-g -gcoff -O2 -W -Wall -I/dev/env/DJDIR/pdcur_cvs/PDCurses -I/dev/env/DJDIR/watt32/inc" \
+CPPFLAGS="-DBOXHORI=0 -DBOXVERT=0 -I/dev/env/DJDIR/pdcur_cvs/PDCurses -I/dev/env/DJDIR/watt32/inc" \
+LIBS="-L/dev/env/DJDIR/pdcur_cvs/PDCurses/lib -L/dev/env/DJDIR/watt32/lib -lwmemu" \
+/dev/env/DJDIR/bin/bash.exe ./configure  \
+--datadir=/dev/env/DJDIR/lib \
+--sysconfdir=/dev/env/DJDIR/lib \
+--disable-dired-override \
+--disable-full-paths \
+--enable-addrlist-page \
+--enable-change-exec \
+--enable-cgi-links \
+--enable-charset-choice \
+--enable-exec-links \
+--enable-externs \
+--enable-nested-tables \
+--enable-nls \
+--enable-scrollbar \
+--enable-vertrace \
+--with-bzlib \
+--with-mime-libdir=/dev/env/DJDIR/lib \
+--with-screen=curses \
+--with-ssl \
+--with-zlib
diff --git a/scripts/fixtext.sh b/scripts/fixtext.sh
new file mode 100755
index 00000000..1f5c1abd
--- /dev/null
+++ b/scripts/fixtext.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+# xgettext only processes literal strings.  Someone with a poor sense of humor
+# decided to ignore strings in preprocessor lines.  So we construct a fake
+# ".c" file with the definitions turned into literals.
+
+sed	-e 's/")/");/' \
+	-e 's/^#define[ 	]*\([^ 	]*\)[ 	]*gettext/char *\1 = gettext/' \
+	-e 's,^#define[ 	]*\([^ 	]*\)[ 	]*\\,/* #define \1 */char *\1 = \\,' \
+	$*
diff --git a/scripts/indent.sh b/scripts/indent.sh
new file mode 100755
index 00000000..899870de
--- /dev/null
+++ b/scripts/indent.sh
@@ -0,0 +1,152 @@
+#!/bin/sh
+# $LynxId: indent.sh,v 1.3 2007/05/13 16:26:51 tom Exp $
+# Indent LYNX files.
+NOOP=no
+OPTS='
+--blank-lines-after-declarations
+--blank-lines-after-procedures
+--braces-on-if-line
+--continue-at-parentheses
+--cuddle-else
+--dont-break-procedure-type
+--indent-level4
+--leave-preprocessor-space
+--line-length80
+--no-space-after-function-call-names
+--parameter-indentation4
+--space-after-cast
+--space-special-semicolon
+--swallow-optional-blank-lines
+-T AddressDefList 
+-T BOOL
+-T BOOLEAN
+-T CSOfield_info 
+-T DIR
+-T DocAddress 
+-T DocInfo 
+-T DocObj
+-T EntryInfo 
+-T EditFieldData 
+-T FILE
+-T GCC_NORETURN 
+-T GCC_UNUSED 
+-T GLOBALREF 
+-T GroupDef 
+-T GroupDefList 
+-T HTAAFailReasonType 
+-T HTAAProt 
+-T HTAARealm 
+-T HTAAServer 
+-T HTAssoc 
+-T HTAssocList 
+-T HTAtom 
+-T HTBTElement 
+-T HTBTree 
+-T HTChildAnchor 
+-T HTChunk 
+-T HTConverter 
+-T HTFormat 
+-T HTLine 
+-T HTLinkType 
+-T HTList 
+-T HTParentAnchor 
+-T HTParentAnchor0 
+-T HTPresentation 
+-T HTStream
+-T HTStyle 
+-T HTStyleChange 
+-T HTStyleSheet 
+-T HText 
+-T HyperDoc 
+-T InitResponseAPDU 
+-T Item 
+-T ItemList 
+-T LYNX_ADDRINFO
+-T LYNX_HOSTENT
+-T LYUCcharset 
+-T LexItem 
+-T ProgramPaths 
+-T STable_cellinfo 
+-T STable_info 
+-T STable_rowinfo 
+-T STable_states 
+-T SearchAPDU 
+-T SearchResponseAPDU 
+-T TextAnchor 
+-T UCode_t 
+-T UserDefList 
+-T WAISDocumentCodes 
+-T WAISDocumentHeader 
+-T WAISDocumentHeadlines 
+-T WAISDocumentLongHeader 
+-T WAISDocumentShortHeader 
+-T WAISDocumentText 
+-T WAISInitResponse 
+-T WAISSearch 
+-T _cdecl
+-T any 
+-T bit_map 
+-T boolean 
+-T bstring 
+-T data_tag
+-T eServerType 
+-T lynx_list_item_type 
+-T pdu_type
+-T query_term 
+-nbacc
+'
+for name in $*
+do
+	case $name in
+	-n)	NOOP=yes
+		OPTS="$OPTS -v"
+		;;
+	-*)
+		OPTS="$OPTS $name"
+		;;
+	*.[ch])
+		save="${name}".a$$
+		test="${name}".b$$
+		rm -f "$save" "$test"
+		mv "$name" "$save"
+		sed \
+			-e '/MODULE_ID(/s/)$/);/' \
+			-e 's,)[ 	]*\<GCC_PRINTFLIKE,);//GCC_PRINTFLIKE,' \
+			-e 's,[ 	]*\<GCC_NORETURN;,;//GCC_NORETURN;,' \
+			-e 's,[ 	]*\<GCC_UNUSED;,;//GCC_UNUSED;,' \
+			"$save" >"$test"
+		cp "$test" "$name"
+		chmod u+w "$name"
+		${INDENT_PROG-indent} -npro $OPTS "$name"
+		sed \
+			-e '/MODULE_ID(/s/);$/)/' \
+			-e 's,;[ 	]*//GCC_UNUSED;, GCC_UNUSED;,' \
+			-e 's,;[ 	]*//GCC_NORETURN;, GCC_NORETURN;,' \
+			-e 's,);[ 	]*//GCC_PRINTFLIKE,) GCC_PRINTFLIKE,' \
+			"$name" >"$test"
+		mv "$test" "$name"
+		rm -f "${name}~"
+		if test $NOOP = yes ; then
+			if ! ( cmp -s "$name" $save )
+			then
+				diff -u $save "$name"
+			fi
+			mv "$save" "$name"
+			rm -f "${name}~"
+		else
+			if ( cmp -s "$name" "$save" )
+			then
+				echo "** unchanged $name"
+				rm -f "${name}" "${name}~"
+				mv "$save" "$name"
+			else
+				echo "** updated $name"
+				rm -f "$save"
+			fi
+		fi
+		;;
+	*)
+		echo "** ignored:   $name"
+		;;
+	esac
+done
diff --git a/scripts/install-cfg.sh b/scripts/install-cfg.sh
new file mode 100755
index 00000000..bd8129f6
--- /dev/null
+++ b/scripts/install-cfg.sh
@@ -0,0 +1,86 @@
+#!/bin/sh
+# $LynxId: install-cfg.sh,v 1.3 2008/09/10 13:15:35 tom Exp $
+# install lynx.cfg, ensuring the old config-file is saved to a unique file,
+# and prepending customizations to the newly-installed file.
+#
+# $1 = install program
+# $2 = file to install
+# $3 = where to install it
+PRG="$1"
+SRC=$2
+DST=$3
+
+LANG=C;		export LANG
+LC_ALL=C;	export LC_ALL
+LC_CTYPE=C;	export LC_CTYPE
+LANGUAGE=C;	export LANGUAGE
+
+if test -f "$DST" ; then
+	echo "** checking if you have customized $DST"
+	OLD=lynx-cfg.old
+	NEW=lynx-cfg.new
+	TST=lynx-cfg.tst
+	TMP=lynx-cfg.tmp
+	trap "rm -f $OLD $NEW $TST $TMP; exit 9" 1 2 5 15
+	rm -f $OLD $NEW $TST $TMP
+
+	# avoid propagating obsolete URLs into new installs
+	echo lynx.browser.org >$TMP
+	echo www.trill-home.com >>$TMP
+	echo www.cc.ukans.edu >>$TMP
+	echo www.ukans.edu >>$TMP
+	echo www.slcc.edu >>$TMP
+	echo sol.slcc.edu >>$TMP
+
+	# Make a list of the settings which are in the original lynx.cfg
+	# Do not keep the user's HELPFILE setting since we modify that in
+	# a different makefile rule.
+	egrep '^[ 	]*[A-Za-z]' $SRC |sed -e 's/^[ 	]*HELPFILE:.*/HELPFILE:/' >>$TMP
+	egrep '^[ 	]*[A-Za-z]' $SRC |fgrep -v -f $TMP >$OLD
+	egrep '^[ 	]*[A-Za-z]' $DST |fgrep -v -f $TMP >$TST
+
+	if test -s $TST ; then
+		cat >$TMP <<EOF
+## The following lines were saved from your previous configuration.
+
+EOF
+		cat $TST >>$TMP
+		cat $SRC >$NEW
+		cat $TMP >>$NEW
+
+		# See if we have saved this information before (ignoring the
+		# HELPFILE line).
+		if cmp -s $NEW $OLD
+		then
+			echo "... installed $DST would not be changed"
+		else
+			NUM=1
+			while test -f ${DST}-${NUM}
+			do
+				if cmp -s $NEW ${DST}-${NUM}
+				then
+					break
+				fi
+				NUM=`expr $NUM + 1`
+			done
+			if test ! -f ${DST}-${NUM}
+			then
+				echo "... saving old config as ${DST}-${NUM}"
+				mv $DST ${DST}-${NUM} || exit 1
+			fi
+			echo "** installing $NEW as $DST"
+			eval $PRG $NEW $DST || exit 1
+		fi
+	else
+		echo "... no customizations found"
+		echo "** installing $SRC as $DST"
+		eval $PRG $SRC $DST || exit 1
+	fi
+	rm -f $SKIP $OLD $NEW $TST $TMP
+elif cmp -s $SRC $DST
+then
+	echo "... installed $DST would not be changed"
+else
+	echo "** installing $SRC as $DST"
+	eval $PRG $SRC $DST || exit 1
+fi
diff --git a/scripts/install-lss.sh b/scripts/install-lss.sh
new file mode 100755
index 00000000..6573a35e
--- /dev/null
+++ b/scripts/install-lss.sh
@@ -0,0 +1,38 @@
+#!/bin/sh
+# $LynxId: install-lss.sh,v 1.1 2007/05/13 22:15:29 tom Exp $
+# install lynx.lss, ensuring the old config-file is saved to a backup file.
+#
+# $1 = install program
+# $2 = file to install
+# $3 = where to install it
+PRG="$1"
+SRC=$2
+DST=$3
+
+if test -f "$DST" ; then
+	# See if we have saved this information before
+	if cmp -s $SRC $DST
+	then
+		echo "... installed $DST would not be changed"
+	else
+		NUM=1
+		while test -f ${DST}-${NUM}
+		do
+			if cmp -s $SRC ${DST}-${NUM}
+			then
+				break
+			fi
+			NUM=`expr $NUM + 1`
+		done
+		if test ! -f ${DST}-${NUM}
+		then
+			echo "... saving old config as ${DST}-${NUM}"
+			mv $DST ${DST}-${NUM} || exit 1
+		fi
+		echo "** installing $SRC as $DST"
+		eval $PRG $SRC $DST || exit 1
+	fi
+else
+	echo "** installing $SRC as $DST"
+	eval $PRG $SRC $DST || exit 1
+fi
diff --git a/scripts/man2hlp.sh b/scripts/man2hlp.sh
new file mode 100755
index 00000000..fed9b428
--- /dev/null
+++ b/scripts/man2hlp.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+# $LynxId: man2hlp.sh,v 1.3 2008/09/10 13:25:45 tom Exp $
+# This script uses rman (Rosetta Man), which complements TkMan, to strip
+# nroff headers from a manpage file, and format the result into a VMS help
+# file.
+
+LANG=C;		export LANG
+LC_ALL=C;	export LC_ALL
+LC_CTYPE=C;	export LC_CTYPE
+LANGUAGE=C;	export LANGUAGE
+
+for name in $*
+do
+	NAME=`echo $name |sed -e 's/\.man$/.1/'`
+	(echo 1 `echo $NAME | sed -e 's/^.*\///' -e 's/\..*$//' | tr '[a-z]' '[A-Z]'` ; \
+	(echo '.hy 0'; cat $name) |\
+	nroff -Tascii -man |\
+	rman -n$NAME |\
+	sed	-e 's/^[1-9].*$//' \
+		-e 's/^\([A-Z]\)/2 \1/' |\
+	uniq)
+done
diff --git a/scripts/tbl2html.pl b/scripts/tbl2html.pl
new file mode 100755
index 00000000..ba8ae092
--- /dev/null
+++ b/scripts/tbl2html.pl
@@ -0,0 +1,364 @@
+#!/usr/bin/perl -w
+# $LynxId: tbl2html.pl,v 1.5 2011/05/21 15:18:16 tom Exp $
+#
+# Translate one or more ".tbl" files into ".html" files which can be used to
+# test the charset support in lynx.  Each of the ".html" files will use the
+# charset that corresponds to the input ".tbl" file.
+
+use strict;
+
+use Getopt::Std;
+use File::Basename;
+use POSIX qw(strtod);
+
+sub field($$) {
+	my $value = $_[0];
+	my $count = $_[1];
+
+	while ( $count > 0 ) {
+		$count -= 1;
+		$value =~ s/^\S*\s*//;
+	}
+	$value =~ s/\s.*//;
+	return $value;
+}
+
+sub notes($) {
+	my $value = $_[0];
+
+	$value =~ s/^[^#]*//;
+	$value =~ s/^#//;
+	$value =~ s/^\s+//;
+
+	return $value;
+}
+
+sub make_header($$$) {
+	my $source   = $_[0];
+	my $charset  = $_[1];
+	my $official = $_[2];
+
+	printf FP "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";
+	printf FP "<HTML>\n";
+	printf FP "<HEAD>\n";
+	printf FP "<!-- $source -->\n";
+	printf FP "<TITLE>%s table</TITLE>\n", &escaped($official);
+	printf FP "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=%s\">\n", &escaped($charset);
+	printf FP "</HEAD>\n";
+	printf FP "\n";
+	printf FP "<BODY> \n";
+	printf FP "\n";
+	printf FP "<H1 ALIGN=center>%s table</H1> \n", &escaped($charset);
+	printf FP "\n";
+	printf FP "<PRE>\n";
+	printf FP "Code  Char  Entity   Render          Description\n";
+}
+
+sub make_mark() {
+	printf FP "----  ----  ------   ------          -----------------------------------\n";
+}
+
+sub escaped($) {
+	my $result = $_[0];
+	$result =~ s/&/&amp;/g;
+	$result =~ s/</&lt;/g;
+	$result =~ s/>/&gt;/g;
+	return $result;
+}
+
+sub make_row($$$) {
+	my $old_code = $_[0];
+	my $new_code = $_[1];
+	my $comments = $_[2];
+
+	# printf "# make_row %d %d %s\n", $old_code, $new_code, $comments;
+	my $visible = sprintf("&amp;#%d;      ", $new_code);
+	if ($old_code < 256) {
+		printf FP "%4x    %c   %.13s  &#%d;             %s\n",
+			$old_code, $old_code,
+			$visible, $new_code,
+			&escaped($comments);
+	} else {
+		printf FP "%4x    .   %.13s  &#%d;             %s\n",
+			$old_code,
+			$visible, $new_code,
+			&escaped($comments);
+	}
+}
+
+sub null_row($$) {
+	my $old_code = $_[0];
+	my $comments = $_[1];
+
+	if ($old_code < 256) {
+		printf FP "%4x    %c                     %s\n",
+			$old_code, $old_code,
+			&escaped($comments);
+	} else {
+		printf FP "%4x    .                     %s\n",
+			$old_code,
+			&escaped($comments);
+	}
+}
+
+sub make_footer() {
+	printf FP "</PRE>\n";
+	printf FP "</BODY>\n";
+	printf FP "</HTML>\n";
+}
+
+# return true if the string describes a range
+sub is_range($) {
+	return ($_[0] =~ /.*-.*/);
+}
+
+# convert the U+'s to 0x's so strtod() can convert them.
+sub zeroxes($) {
+	my $result = $_[0];
+	$result =~ s/^U\+/0x/;
+	$result =~ s/-U\+/-0x/;
+	return $result;
+}
+
+# convert a string to a number (-1's are outside the range of Unicode).
+sub value_of($) {
+	my ($result, $oops) = strtod($_[0]);
+	$result = -1 if ($oops ne 0);
+	return $result;
+}
+
+# return the first number in a range
+sub first_of($) {
+	my $range = &zeroxes($_[0]);
+	$range =~ s/-.*//;
+	return &value_of($range);
+}
+
+# return the last number in a range
+sub last_of($) {
+	my $range = &zeroxes($_[0]);
+	$range =~ s/^.*-//;
+	return &value_of($range);
+}
+
+sub one_many($$$) {
+	my $oldcode = $_[0];
+	my $newcode = &zeroxes($_[1]);
+	my $comment = $_[2];
+
+	my $old_code = &value_of($oldcode);
+	if ( $old_code lt 0 ) {
+		printf "? Problem with number \"%s\"\n", $oldcode;
+	} else {
+		&make_mark if (( $old_code % 8 ) == 0 );
+
+		if ( $newcode =~ /^#.*/ ) {
+			&null_row($old_code, $comment);
+		} elsif ( &is_range($newcode) ) {
+			my $first_item = &first_of($newcode);
+			my $last_item  = &last_of($newcode);
+			my $item;
+
+			if ( $first_item lt 0 or $last_item lt 0 ) {
+				printf "? Problem with one:many numbers \"%s\"\n", $newcode;
+			} else {
+				if ( $comment =~ /^$/ ) {
+					$comment = sprintf("mapped: %#x to %#x..%#x", $old_code, $first_item, $last_item);
+				} else {
+					$comment = $comment . " (range)";
+				}
+				for $item ( $first_item..$last_item) {
+					&make_row($old_code, $item, $comment);
+				}
+			}
+		} else {
+			my $new_code = &value_of($newcode);
+			if ( $new_code lt 0 ) {
+				printf "? Problem with number \"%s\"\n", $newcode;
+			} else {
+				if ( $comment =~ /^$/ ) {
+					$comment = sprintf("mapped: %#x to %#x", $old_code, $new_code);
+				}
+				&make_row($old_code, $new_code, $comment);
+			}
+		}
+	}
+}
+
+sub many_many($$$) {
+	my $oldcode = $_[0];
+	my $newcode = $_[1];
+	my $comment = $_[2];
+
+	my $first_old = &first_of($oldcode);
+	my $last_old  = &last_of($oldcode);
+	my $item;
+
+	if (&is_range($newcode)) {
+		my $first_new = &first_of($newcode);
+		my $last_new  = &last_of($newcode);
+		for $item ( $first_old..$last_old) {
+			&one_many($item, $first_new, $comment);
+			$first_new += 1;
+		}
+	} else {
+		for $item ( $first_old..$last_old) {
+			&one_many($item, $newcode, $comment);
+		}
+	}
+}
+
+sub approximate($$$) {
+	my $values = $_[0];
+	my $expect = sprintf("%-8s", $_[1]);
+	my $comment = $_[2];
+	my $escaped = &escaped($expect);
+	my $left;
+	my $this;
+	my $next;
+
+	$escaped =~ s/\\134/\\/g;
+	$escaped =~ s/\\015/\&#13\;/g;
+	$escaped =~ s/\\012/\&#10\;/g;
+
+	while ( $escaped =~ /^.*\\[0-7]{3}.*$/ ) {
+		$left = $escaped;
+		$left =~ s/\\[0-7]{3}.*//;
+		$this = substr $escaped,length($left)+1,3;
+		$next = substr $escaped,length($left)+4;
+		$escaped = sprintf("%s&#%d;%s", $left, oct $this, $next);
+	}
+
+	my $visible = sprintf("&amp;#%d;      ", $values);
+	if ($values < 256) {
+		printf FP "%4x    %c   %.13s  &#%d;             approx: %s\n",
+			$values, $values,
+			$visible,
+			$values,
+			$escaped;
+	} else {
+		printf FP "%4x    .   %.13s  &#%d;             approx: %s\n",
+			$values,
+			$visible,
+			$values,
+			$escaped;
+	}
+}
+
+sub doit($) {
+	my $source = $_[0];
+
+	printf "** %s\n", $source;
+
+	my $target = basename($source, ".tbl");
+
+	# Read the file into an array in memory.
+	open(FP,$source) || do {
+		print STDERR "Can't open input $source: $!\n";
+		return;
+	};
+	my (@input) = <FP>;
+	chomp @input;
+	close(FP);
+
+	my $n;
+	my $charset = "";
+	my $official = "";
+	my $empty = 1;
+
+	for $n (0..$#input) {
+		$input[$n] =~ s/\s*$//; # trim trailing blanks
+		$input[$n] =~ s/^\s*//; # trim leading blanks
+		$input[$n] =~ s/^#0x/0x/; # uncomment redundant stuff
+
+		next if $input[$n] =~ /^$/;
+		next if $input[$n] =~ /^#.*$/;
+
+		if ( $empty 
+		  and ( $input[$n] =~ /^\d/
+		     or $input[$n] =~ /^U\+/ ) ) {
+			$target = $charset . ".html";
+			printf "=> %s\n", $target;
+			open(FP,">$target") || do {
+				print STDERR "Can't open output $target: $!\n";
+				return;
+			};
+			&make_header($source, $charset, $official);
+			$empty = 0;
+		}
+
+		if ( $input[$n] =~ /^M.*/ ) {
+			$charset = $input[$n];
+			$charset =~ s/^.//;
+		} elsif ( $input[$n] =~ /^O.*/ ) {
+			$official = $input[$n];
+			$official =~ s/^.//;
+		} elsif ( $input[$n] =~ /^\d/ ) {
+
+			my $newcode = &field($input[$n], 1);
+
+			next if ( $newcode eq "idem" );
+			next if ( $newcode eq "" );
+
+			my $oldcode = &field($input[$n], 0);
+			if ( &is_range($oldcode) ) {
+				&many_many($oldcode, $newcode, &notes($input[$n]));
+			} else {
+				&one_many($oldcode, $newcode, &notes($input[$n]));
+			}
+		} elsif ( $input[$n] =~ /^U\+/ ) {
+			if ( $input[$n] =~ /^U\+\w+:/ ) {
+				my $values = $input[$n];
+				my $expect = $input[$n];
+
+				$values =~ s/:.*//;
+				$values = &zeroxes($values);
+				$expect =~ s/^[^:]+://;
+
+				if ( &is_range($values) ) {
+					printf "fixme:%s(%s)(%s)\n", $input[$n], $values, $expect;
+				} else {
+					&approximate(&value_of($values), $expect, &notes($input[$n]));
+				}
+			} else {
+				my $value = $input[$n];
+				$value =~ s/\s*".*//;
+				$value = &value_of(&zeroxes($value));
+				if ($value gt 0) {
+					my $quote = $input[$n];
+					my $comment = &notes($input[$n]);
+					$quote =~ s/^[^"]*"//;
+					$quote =~ s/".*//;
+					&approximate($value, $quote, $comment);
+				} else {
+					printf "fixme:%d(%s)\n", $n, $input[$n];
+				}
+			}
+		} else {
+			# printf "skipping line %d:%s\n", $n + 1, $input[$n];
+		}
+	}
+	if ( ! $empty ) {
+		&make_footer();
+	}
+	close FP;
+}
+
+sub usage() {
+	print <<USAGE;
+Usage: $0 [tbl-files]
+
+The script writes a new ".html" file for each input, using
+the same name as the input, stripping the ".tbl" suffix.
+USAGE
+	exit(1);
+}
+
+if ( $#ARGV < 0 ) {
+	usage();
+} else {
+	while ( $#ARGV >= 0 ) {
+		&doit ( shift @ARGV );
+	}
+}
+exit (0);
diff --git a/test/ALT88592.html b/test/ALT88592.html
new file mode 100644
index 00000000..1924f281
--- /dev/null
+++ b/test/ALT88592.html
@@ -0,0 +1,171 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Character table modified and enhanced for iso8859-2 - ALT test</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
+<LINK REV="made" HREF="mailto:lynx-dev@nongnu.org">
+<LINK REV="owner" HREF="http://mail.gnu.org/mailman/listinfo/lynx-dev/">
+<!-- A BASE tag for the SRC attributes of dummy images.
+     They should be inaccessible so that the ALT text will be shown in graphical browsers.
+     Use file: to save network resources. -->
+<BASE HREF="file://localhost/this.path.intentionally.invalid/">
+</HEAD>
+
+<BODY> 
+
+<H1 ALIGN=center>iso8859-2 plus table - ALT test</H1> 
+
+<PRE>
+Description                               Code            Entity name   
+===================================       ============    ==============
+quotation mark                           <IMG SRC=X ALT=" &amp;#34;  --> &#34;     &amp;quot;   --> &quot;">
+ampersand                                <IMG SRC=X ALT=" &amp;#38;  --> &#38;     &amp;amp;    --> &amp;">
+less-than sign                           <IMG SRC=X ALT=" &amp;#60;  --> &#60;     &amp;lt;     --> &lt;">
+greater-than sign                        <IMG SRC=X ALT=" &amp;#62;  --> &#62;     &amp;gt;     --> &gt;">
+
+Description                          Char Code            Entity name   
+===================================  ==== ============    ==============
+non-breaking space                  <IMG SRC=X ALT="      &amp;#160; --> &#160;    &amp;nbsp;   --> &nbsp;">
+capital A, ogonek                   <IMG SRC=X ALT=" ¡    &amp;#260; --> &#260;    &amp;Aogon;  --> &Aogon;">
+breve                              <IMG SRC=X ALT=" {¢}  {&amp;#728;}-->{&#728;}  {&amp;breve;} -->{&breve;}">
+capital L, stroke                   <IMG SRC=X ALT=" £    &amp;#321; --> &#321;    &amp;Lstrok; --> &Lstrok;">
+general currency sign               <IMG SRC=X ALT=" ¤    &amp;#164; --> &#164;    &amp;curren; --> &curren;">
+capital L, caron                    <IMG SRC=X ALT=" ¥    &amp;#317; --> &#317;    &amp;Lcaron; --> &Lcaron;">
+capital S, acute accent             <IMG SRC=X ALT=" ¦    &amp;#346; --> &#346;    &amp;Sacute; --> &Sacute;">
+section sign                        <IMG SRC=X ALT=" §    &amp;#167; --> &#167;    &amp;sect;   --> &sect;">
+umlaut (dieresis)                   <IMG SRC=X ALT=" ¨    &amp;#168; --> &#168;    &amp;uml;    --> &uml;">
+                                                         <IMG SRC=X ALT=" &amp;die;    --> &die;">
+capital S, caron                    <IMG SRC=X ALT=" ©    &amp;#352; --> &#352;    &amp;Scaron; --> &Scaron;">
+capital S, cedilla                  <IMG SRC=X ALT=" ª    &amp;#350; --> &#350;    &amp;Scedil; --> &Scedil;">
+capital T, caron                    <IMG SRC=X ALT=" «    &amp;#356; --> &#356;    &amp;Tcaron; --> &Tcaron;">
+capital Z, acute accent             <IMG SRC=X ALT=" ¬    &amp;#377; --> &#377;    &amp;Zacute; --> &Zacute;">
+soft hyphen                        <IMG SRC=X ALT=" [­]  [&amp;#173;]-->[&#173;]  [&amp;shy;]   -->[&shy;]">
+capital Z, caron                    <IMG SRC=X ALT=" ®    &amp;#381; --> &#381;    &amp;Zcaron; --> &Zcaron;">
+capital Z, dot above                <IMG SRC=X ALT=" ¯    &amp;#379; --> &#379;    &amp;Zdot;   --> &Zdot;">
+degree sign                         <IMG SRC=X ALT=" °    &amp;#176; --> &#176;    &amp;deg;    --> &deg;">
+small a, ogonek                     <IMG SRC=X ALT=" ±    &amp;#261; --> &#261;    &amp;aogon;  --> &aogon;">
+ogonek                             <IMG SRC=X ALT=" {²}  {&amp;#731;}-->{&#731;}  {&amp;ogon;}  -->{&ogon;}">
+small l, stroke                     <IMG SRC=X ALT=" ³    &amp;#322; --> &#322;    &amp;lstrok; --> &lstrok;">
+acute accent                        <IMG SRC=X ALT=" ´    &amp;#180; --> &#180;    &amp;acute;  --> &acute;">
+small l, caron                      <IMG SRC=X ALT=" µ    &amp;#318; --> &#318;    &amp;lcaron; --> &lcaron;">
+small s, acute accent               <IMG SRC=X ALT=" ¶    &amp;#347; --> &#347;    &amp;sacute; --> &sacute;">
+caron                              <IMG SRC=X ALT=" {·}  {&amp;#711;}-->{&#711;}  {&amp;caron;} -->{&caron;}">
+cedilla                             <IMG SRC=X ALT=" ¸    &amp;#184; --> &#184;    &amp;cedil;  --> &cedil;">
+small s, caron                      <IMG SRC=X ALT=" ¹    &amp;#353; --> &#353;    &amp;scaron; --> &scaron;">
+small s, cedilla                    <IMG SRC=X ALT=" º    &amp;#351; --> &#351;    &amp;scedil; --> &scedil;">
+small t, caron                      <IMG SRC=X ALT=" »    &amp;#357; --> &#357;    &amp;tcaron; --> &tcaron;">
+small z, acute accent               <IMG SRC=X ALT=" ¼    &amp;#378; --> &#378;    &amp;zacute; --> &zacute;">
+double acute accent                <IMG SRC=X ALT=" {½}  {&amp;#733;}-->{&#733;}  {&amp;dblac;} -->{&dblac;}">
+small z, caron                      <IMG SRC=X ALT=" ¾    &amp;#382; --> &#382;    &amp;zcaron; --> &zcaron;">
+small z, dot above                  <IMG SRC=X ALT=" ¿    &amp;#380; --> &#380;    &amp;zdot;   --> &zdot;  ">
+capital R, acute accent             <IMG SRC=X ALT=" À    &amp;#340; --> &#340;    &amp;Racute; --> &Racute;">
+capital A, acute accent             <IMG SRC=X ALT=" Á    &amp;#193; --> &#193;    &amp;Aacute; --> &Aacute;">
+capital A, circumflex accent        <IMG SRC=X ALT=" Â    &amp;#194; --> &#194;    &amp;Acirc;  --> &Acirc;">
+capital A, breve                    <IMG SRC=X ALT=" Ã    &amp;#258; --> &#258;    &amp;Abreve; --> &Abreve;">
+capital A, dieresis or umlaut mark  <IMG SRC=X ALT=" Ä    &amp;#196; --> &#196;    &amp;Auml;   --> &Auml;">
+capital L, acute accent             <IMG SRC=X ALT=" Å    &amp;#313; --> &#313;    &amp;Lacute; --> &Lacute;">
+capital C, acute accent             <IMG SRC=X ALT=" Æ    &amp;#262; --> &#262;    &amp;Cacute; --> &Cacute;">
+capital C, cedilla                  <IMG SRC=X ALT=" Ç    &amp;#199; --> &#199;    &amp;Ccedil; --> &Ccedil;">
+capital C, caron                    <IMG SRC=X ALT=" È    &amp;#268; --> &#268;    &amp;Ccaron; --> &Ccaron;">
+capital E, acute accent             <IMG SRC=X ALT=" É    &amp;#201; --> &#201;    &amp;Eacute; --> &Eacute;">
+capital E, ogonek                   <IMG SRC=X ALT=" Ê    &amp;#280; --> &#280;    &amp;Eogon;  --> &Eogon;">
+capital E, dieresis or umlaut mark  <IMG SRC=X ALT=" Ë    &amp;#203; --> &#203;    &amp;Euml;   --> &Euml;">
+capital E, caron                    <IMG SRC=X ALT=" Ì    &amp;#282; --> &#282;    &amp;Ecaron; --> &Ecaron;">
+capital I, acute accent             <IMG SRC=X ALT=" Í    &amp;#205; --> &#205;    &amp;Iacute; --> &Iacute;">
+capital I, circumflex accent        <IMG SRC=X ALT=" Î    &amp;#206; --> &#206;    &amp;Icirc;  --> &Icirc;">
+capital D, caron                    <IMG SRC=X ALT=" Ï    &amp;#270; --> &#270;    &amp;Dcaron; --> &Dcaron;">
+capital D, stroke                   <IMG SRC=X ALT=" Ð    &amp;#272; --> &#272;    &amp;Dstrok; --> &Dstrok;">
+capital Eth, Icelandic              <IMG SRC=X ALT=" N/A  &amp;#208; --> &#208;    &amp;ETH;    --> &ETH;">
+capital N, acute accent             <IMG SRC=X ALT=" Ñ    &amp;#323; --> &#323;    &amp;Nacute; --> &Nacute;">
+capital N, caron                    <IMG SRC=X ALT=" Ò    &amp;#327; --> &#327;    &amp;Ncaron; --> &Ncaron;">
+capital O, acute accent             <IMG SRC=X ALT=" Ó    &amp;#211; --> &#211;    &amp;Oacute; --> &Oacute;">
+capital O, circumflex accent        <IMG SRC=X ALT=" Ô    &amp;#212; --> &#212;    &amp;Ocirc;  --> &Ocirc;">
+capital O, double acute accent      <IMG SRC=X ALT=" Õ    &amp;#368; --> &#368;    &amp;Odblac; --> &Odblac;">
+capital O, dieresis or umlaut mark  <IMG SRC=X ALT=" Ö    &amp;#214; --> &#214;    &amp;Ouml;   --> &Ouml;">
+multiply sign                       <IMG SRC=X ALT=" ×    &amp;#215; --> &#215;    &amp;times;  --> &times;">
+capital R, caron                    <IMG SRC=X ALT=" Ø    &amp;#344; --> &#344;    &amp;Rcaron; --> &Rcaron;">
+capital U, ring                     <IMG SRC=X ALT=" Ù    &amp;#366; --> &#366;    &amp;Uring;  --> &Uring;">
+capital U, acute accent             <IMG SRC=X ALT=" Ú    &amp;#218; --> &#218;    &amp;Uacute; --> &Uacute;">
+capital U, double acute accent      <IMG SRC=X ALT=" Û    &amp;#368; --> &#368;    &amp;Udblac; --> &Udblac;">
+capital U, dieresis or umlaut mark  <IMG SRC=X ALT=" Ü    &amp;#220; --> &#220;    &amp;Uuml;   --> &Uuml;">
+capital Y, acute accent             <IMG SRC=X ALT=" Ý    &amp;#221; --> &#221;    &amp;Yacute; --> &Yacute;">
+capital T, cedilla                  <IMG SRC=X ALT=" Þ    &amp;#354; --> &#354;    &amp;Tcedil; --> &Tcedil;">
+small sharp s, German (sz ligature) <IMG SRC=X ALT=" ß    &amp;#223; --> &#223;    &amp;szlig;  --> &szlig;">
+small r, acute accent               <IMG SRC=X ALT=" à    &amp;#341; --> &#341;    &amp;racute; --> &racute;">
+small a, acute accent               <IMG SRC=X ALT=" á    &amp;#225; --> &#225;    &amp;aacute; --> &aacute;">
+small a, circumflex accent          <IMG SRC=X ALT=" â    &amp;#226; --> &#226;    &amp;acirc;  --> &acirc;">
+small a, breve                      <IMG SRC=X ALT=" ã    &amp;#259; --> &#259;    &amp;abreve; --> &abreve;">
+small a, dieresis or umlaut mark    <IMG SRC=X ALT=" ä    &amp;#228; --> &#228;    &amp;auml;   --> &auml;">
+small l, acute accent               <IMG SRC=X ALT=" å    &amp;#314; --> &#314;    &amp;lacute; --> &lacute;">
+small c, acute accent               <IMG SRC=X ALT=" æ    &amp;#263; --> &#263;    &amp;cacute; --> &cacute;">
+small c, cedilla                    <IMG SRC=X ALT=" ç    &amp;#231; --> &#231;    &amp;ccedil; --> &ccedil;">
+small c, caron                      <IMG SRC=X ALT=" è    &amp;#269; --> &#269;    &amp;ccaron; --> &ccaron;">
+small e, acute accent               <IMG SRC=X ALT=" é    &amp;#233; --> &#233;    &amp;eacute; --> &eacute;">
+small e, ogonek                     <IMG SRC=X ALT=" ê    &amp;#281; --> &#281;    &amp;eogon;  --> &eogon;">
+small e, dieresis or umlaut mark    <IMG SRC=X ALT=" ë    &amp;#235; --> &#235;    &amp;euml;   --> &euml;">
+small e, caron                      <IMG SRC=X ALT=" ì    &amp;#283; --> &#283;    &amp;ecaron; --> &ecaron;">
+small i, acute accent               <IMG SRC=X ALT=" í    &amp;#237; --> &#237;    &amp;iacute; --> &iacute;">
+small i, circumflex accent          <IMG SRC=X ALT=" î    &amp;#238; --> &#238;    &amp;icirc;  --> &icirc;">
+small d, caron                      <IMG SRC=X ALT=" ï    &amp;#271; --> &#271;    &amp;dcaron; --> &dcaron;">
+small d, stroke                     <IMG SRC=X ALT=" ð    &amp;#273; --> &#273;    &amp;dstrok; --> &dstrok;">
+small eth, Icelandic                <IMG SRC=X ALT=" N/A  &amp;#240; --> &#240;    &amp;eth;    --> &eth;">
+small n, acute accent               <IMG SRC=X ALT=" ñ    &amp;#324; --> &#324;    &amp;nacute; --> &nacute;">
+small n, caron                      <IMG SRC=X ALT=" ò    &amp;#328; --> &#328;    &amp;ncaron; --> &ncaron;">
+small o, acute accent               <IMG SRC=X ALT=" ó    &amp;#243; --> &#243;    &amp;oacute; --> &oacute;">
+small o, circumflex accent          <IMG SRC=X ALT=" ô    &amp;#244; --> &#244;    &amp;ocirc;  --> &ocirc;">
+small o, double acute accent        <IMG SRC=X ALT=" õ    &amp;#369; --> &#369;    &amp;odblac; --> &odblac;">
+small o, dieresis or umlaut mark    <IMG SRC=X ALT=" ö    &amp;#246; --> &#246;    &amp;ouml;   --> &ouml;">
+division sign                       <IMG SRC=X ALT=" ÷    &amp;#247; --> &#247;    &amp;divide; --> &divide;">
+small r, caron                      <IMG SRC=X ALT=" ø    &amp;#345; --> &#345;    &amp;rcaron; --> &rcaron;">
+small u, ring                       <IMG SRC=X ALT=" ù    &amp;#367; --> &#367;    &amp;uring;  --> &uring;">
+small u, acute accent               <IMG SRC=X ALT=" ú    &amp;#250; --> &#250;    &amp;uacute; --> &uacute;">
+small u, double acute accent        <IMG SRC=X ALT=" û    &amp;#369; --> &#369;    &amp;udblac; --> &udblac;">
+small u, dieresis or umlaut mark    <IMG SRC=X ALT=" ü    &amp;#252; --> &#252;    &amp;uuml;   --> &uuml;">
+small y, acute accent               <IMG SRC=X ALT=" ý    &amp;#253; --> &#253;    &amp;yacute; --> &yacute;">
+small t, cedilla                    <IMG SRC=X ALT=" þ    &amp;#355; --> &#355;    &amp;tcedil; --> &tcedil;">
+dot above                          <IMG SRC=X ALT=" {ÿ}  {&amp;#729;}-->{&#729;}  {&amp;dot;}   -->{&dot;}">
+
+Some other characters of interest    Char Code            Entity name   
+===================================  ==== ============    ==============
+capital AE diphthong (ligature)     <IMG SRC=X ALT=" N/A  &amp;#198; --> &#198;    &amp;AElig;  --> &AElig;">
+small ae diphthong (ligature)       <IMG SRC=X ALT=" N/A  &amp;#230; --> &#230;    &amp;aelig;  --> &aelig;">
+capital OE ligature                 <IMG SRC=X ALT=" N/A {&amp;#338;}-->{&#338;}  {&amp;OElig;} -->{&OElig;}">
+small oe ligature                   <IMG SRC=X ALT=" N/A {&amp;#339;}-->{&#339;}  {&amp;oelig;} -->{&oelig;}">
+copyright                           <IMG SRC=X ALT=" N/A  &amp;#169; --> &#169;    &amp;copy;   --> &copy;">
+registered trademark                <IMG SRC=X ALT=" N/A  &amp;#174; --> &#174;    &amp;reg;    --> &reg;">
+trademark sign                      <IMG SRC=X ALT=" N/A  &amp;#8482;--> &#8482;   &amp;trade;  --> &trade;">
+em space                            <IMG SRC=X ALT=" N/A [&amp;#8195;]->[&#8195;] [&amp;emsp;]  -->[&emsp;]">
+en space                            <IMG SRC=X ALT=" N/A [&amp;#8194;]->[&#8194;] [&amp;ensp;]  -->[&ensp;]">
+1/3-em space                        <IMG SRC=X ALT=" N/A [&amp;#8196;]->[&#8196;] [&amp;emsp13;] -->[&emsp13;]">
+1/4-em space                        <IMG SRC=X ALT=" N/A [&amp;#8197;]->[&#8197;] [&amp;emsp14;] -->[&emsp14;]">
+thin space                          <IMG SRC=X ALT=" N/A [&amp;#8201;]->[&#8201;] [&amp;thinsp;]-->[&thinsp;]">
+hair space                          <IMG SRC=X ALT=" N/A [&amp;#8202;]->[&#8202;] [&amp;hairsp;]-->[&hairsp;]">
+em dash                             <IMG SRC=X ALT=" N/A [&amp;#8212;]->[&#8212;] [&amp;mdash;] -->[&mdash;]">
+en dash                             <IMG SRC=X ALT=" N/A [&amp;#8211;]->[&#8211;] [&amp;ndash;] -->[&ndash;]">
+
+</PRE><!-- </PRE> no HotJava preBeta hackx - kw -->
+<!-- second /PRE is a hack for HotJava 1.0 preBeta 1 -->
+<HR>
+<P>
+Characters not found in ISO-8859-2 have "N/A" in the <TT>Char</TT> column.
+Some characters for which I could not find entity names in either 
+<A HREF="http://www.internic.net/rfc/rfc2070.txt">RFC 2070</A>
+or the 
+<A HREF="ftp://www.ucc.ie/pub/sgml/">ISOlat1, ISOlat2, ISOnum, ISOpub and ISOtech</A> 
+sets (the ones included by Peter Flynn's
+<A HREF="http://www.ucc.ie/doc/www/html/dtds/htmlpro.html">HTML Pro DTD</A>)
+are shown enclosed in <TT>{</TT>braces<TT>}</TT>.
+</P>
+<P>
+See Martin Ramsch's original
+<A CHARSET="iso-8859-1" HREF="http://www.uni-passau.de/~ramsch/iso8859-1.html">ISO-8859-1 Table</A>
+for related info and links, and for some notes on entity names.  
+This file is mostly just an adaptation of his table 
+to the ISO-8859-2 character set.
+
+<HR>
+
+<ADDRESS>kweide@tezcat.com 1997-03-09</ADDRESS>
+
+</BODY>
+</HTML>
diff --git a/test/ISO_LATIN1_test.html b/test/ISO_LATIN1_test.html
new file mode 100644
index 00000000..d767978e
--- /dev/null
+++ b/test/ISO_LATIN1_test.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html public "-//IETF//DTD HTML 3.0//EN">
+<html>
+<head>
+<title>Test of minimal ISO LATIN1 character set</title>
+<link rev="made" href="mailto:lynx-dev@nongnu.org">
+</head>
+
+<body>
+<h1>minimal ISO LATIN1 text entities</h1>
+<ul>
+  <li>"&AElig;",	/* capital AE diphthong (ligature) */ 
+  <li>"&Aacute;",	/* capital A, acute accent */ 
+  <li>"&Acirc;",	/* capital A, circumflex accent */ 
+  <li>"&Agrave;",	/* capital A, grave accent */ 
+  <li>"&Aring;",	/* capital A, ring */ 
+  <li>"&Atilde;",	/* capital A, tilde */ 
+  <li>"&Auml;", 	/* capital A, dieresis or umlaut mark */ 
+  <li>"&Ccedil;",	/* capital C, cedilla */ 
+  <li>"&ETH;", 		/* capital Eth, Icelandic */ 
+  <li>"&Eacute;",	/* capital E, acute accent */ 
+  <li>"&Ecirc;",	/* capital E, circumflex accent */ 
+  <li>"&Egrave;",	/* capital E, grave accent */ 
+  <li>"&Euml;",		/* capital E, dieresis or umlaut mark */ 
+  <li>"&Iacute;",	/* capital I, acute accent */ 
+  <li>"&Icirc;",	/* capital I, circumflex accent */ 
+  <li>"&Igrave;",	/* capital I, grave accent */ 
+  <li>"&Iuml;",		/* capital I, dieresis or umlaut mark */ 
+  <li>"&Ntilde;",	/* capital N, tilde */ 
+  <li>"&Oacute;",	/* capital O, acute accent */ 
+  <li>"&Ocirc;",	/* capital O, circumflex accent */ 
+  <li>"&Ograve;",	/* capital O, grave accent */ 
+  <li>"&Oslash;",	/* capital O, slash */ 
+  <li>"&Otilde;",	/* capital O, tilde */ 
+  <li>"&Ouml;",		/* capital O, dieresis or umlaut mark */ 
+  <li>"&THORN;",	/* capital THORN, Icelandic */ 
+  <li>"&Uacute;",	/* capital U, acute accent */ 
+  <li>"&Ucirc;",	/* capital U, circumflex accent */ 
+  <li>"&Ugrave;",	/* capital U, grave accent */ 
+  <li>"&Uuml;",		/* capital U, dieresis or umlaut mark */ 
+  <li>"&Yacute;",	/* capital Y, acute accent */ 
+  <li>"&aacute;",	/* small a, acute accent */ 
+  <li>"&acirc;",	/* small a, circumflex accent */ 
+  <li>"&aelig;",	/* small ae diphthong (ligature) */ 
+  <li>"&agrave;",	/* small a, grave accent */ 
+  <li>"&amp;",		/* ampersand */ 
+  <li>"&aring;",	/* small a, ring */ 
+  <li>"&atilde;",	/* small a, tilde */ 
+  <li>"&auml;",		/* small a, dieresis or umlaut mark */ 
+  <li>"&ccedil;",	/* small c, cedilla */ 
+  <li>"&eacute;",	/* small e, acute accent */ 
+  <li>"&ecirc;",	/* small e, circumflex accent */ 
+  <li>"&egrave;",	/* small e, grave accent */ 
+  <li>"&emsp;",		/* emsp, em space - not collapsed */
+  <li>"&ensp;",		/* ensp, en space - not collapsed */
+  <li>"&eth;",		/* small eth, Icelandic */ 
+  <li>"&euml;",		/* small e, dieresis or umlaut mark */ 
+  <li>"&gt;",		/* greater than */ 
+  <li>"&iacute;",	/* small i, acute accent */ 
+  <li>"&icirc;",	/* small i, circumflex accent */ 
+  <li>"&igrave;",	/* small i, grave accent */ 
+  <li>"&iuml;",		/* small i, dieresis or umlaut mark */ 
+  <li>"&lt;",		/* less than */ 
+  <li>"&nbsp;",		/* nbsp, non breaking space */
+  <li>"&ntilde;",	/* small n, tilde */ 
+  <li>"&oacute;",	/* small o, acute accent */ 
+  <li>"&ocirc;",	/* small o, circumflex accent */ 
+  <li>"&ograve;",	/* small o, grave accent */ 
+  <li>"&oslash;",	/* small o, slash */ 
+  <li>"&otilde;",	/* small o, tilde */ 
+  <li>"&ouml;",		/* small o, dieresis or umlaut mark */ 
+  <li>"&quot;",		/* quote, '"' */
+  <li>"&szlig;",	/* small sharp s, German (sz ligature) */ 
+  <li>"&thorn;",	/* small thorn, Icelandic */ 
+  <li>"&uacute;",	/* small u, acute accent */ 
+  <li>"&ucirc;",	/* small u, circumflex accent */ 
+  <li>"&ugrave;",	/* small u, grave accent */ 
+  <li>"&uuml;",		/* small u, dieresis or umlaut mark */ 
+  <li>"&yacute;",	/* small y, acute accent */ 
+  <li>"&yuml;",		/* small y, dieresis or umlaut mark */ 
+</ul>
+
+</body>
+</html>
diff --git a/test/README.txt b/test/README.txt
new file mode 100644
index 00000000..b681e3f3
--- /dev/null
+++ b/test/README.txt
@@ -0,0 +1,8 @@
+ISO_LATIN1_test.html and iso8859-1.html are for testing the translation of
+HTML entities with the character sets that are selectable via the 'o'ptions
+menu.
+
+TestComment.html and tabtest.html are for testing comment and TAB handling.
+
+Any other files in this directory do not represent a test suite.  They
+are used during program testing to track down odd and mysterious bugs.
diff --git a/test/TestComment.html b/test/TestComment.html
new file mode 100644
index 00000000..873169f2
--- /dev/null
+++ b/test/TestComment.html
@@ -0,0 +1,50 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0 Level 2//EN">
+<html>
+<head>
+<title>HTML Comment Parser Test</title>
+<link rev="made" href="mailto:pg@sweng.stortek.com">
+<base href="http://nyx10.cs.du.edu:8001/~pgilmart/TestComment.html">
+</head>
+
+<body>
+<P> Test of the HTML/SGML comment syntax, as given in the W3 HTML Spec:
+<a
+href="http://www.w3.org/hypertext/WWW/MarkUp/html-spec/html-spec_3.html#SEC15">
+Comments</a>
+
+<P>See especially, the footnote:
+<a
+href="http://www.w3.org/hypertext/WWW/MarkUp/html-spec/html-spec_foot.html#FOOT10"
+>(10)</a>
+
+<P>
+Co-vary the LYK_MINIMAL and LYK_HISTORICAL command key toggles (use the
+'k'eymap command to see their key bindings) to establish Valid, Minimal
+or Historical comment parsing, and toggle trace mode on (Ctrl-T), to see
+how comment parsing is affected.
+
+<P>Case 01 through Case 14 should appear
+as short separate paragraphs with the case numbers aligned vertically.
+Some noise characters may appear to the right as a byproduct of code present
+for error recovery, but there should be no noise before each case number.
+
+<P> Case <!-- trivial --> | 01 | Trivial
+<P> Case <!-- extra hyphens and spaces -- -- --  > | 02 | Hyphens and Spaces
+<P> Case <!-- extra < < < --> | 03 | Extra LT --> --> -->
+<P> Case <!-- balanced < < < > > > --> | 04 | Balanced
+<P> Case <!-- extra > -- --> > still in comment --> | 05 | Extra GT
+<P> Case <!-- stuff between -- and > -- still in comment --> | 06 | Stuff Inside
+<P> Case <!-- Extra <!-- -- Second Comment --> | 07 | Extra Open --> -->
+<P> Case <!-- New Line between -- 
+           -- Second Comment   --
+                           > | 08 | New line
+<P> Case <!---> degenerate --> | 09 | Degenerate <P> Case <!----> | 10 | Empty
+<P> Case <!-- perverse <!--> | 11 | Perverse --> --> -->
+<P> Case <!-- Comment -- -- and a half > this is still in comment -- > | 12 |  Multiple Comments --> --> -->
+<P> Case <!> | 13 | Zero Comments
+<P> Case <!-- < >
+< > Still in comment --> | 14 | Last
+
+<P>&lt;<STRONG>Tests completed!</STRONG>&gt;
+</body>
+</html>
diff --git a/test/bad-html.html b/test/bad-html.html
new file mode 100644
index 00000000..8c0b9dc1
--- /dev/null
+++ b/test/bad-html.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
+<HTML>
+<HEAD>
+<TITLE>Examples of "Bad HTML" per Lynx</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+<LINK REV="made" HREF="mailto:lynx-dev@nongnu.org">
+<LINK REV="owner" HREF="http://mail.gnu.org/mailman/listinfo/lynx-dev/">
+</HEAD>
+
+<BODY> 
+<h2>Unterminated TEXTAREA</h2>
+<form action="http://localhost/cgi-bin/bogus-parms" method="get">
+<textarea name="50cols" cols="50" rows=3>
+This is not empty.
+</textarea>
+<br>
+<textarea name="50percent" cols="50%" rows=3>
+This seems to have a button.
+<button>Button 1</button>
+</textarea>
+<hr>
+<input type="submit" value="Submit this form">
+<br>
+<input type="reset" value="Reset this form">
+</form>
+
+<h2>Unterminated SELECT</h2>
+<select>
+<option>first option</option>
+<option>second option</option>
+<option>third option</option>
+</notselect>
+<br>
+<select>
+<option>first option</option>
+<option>second option</option>
+<option>third option</option>
+</select>
+
+<h2>OPTION not within SELECT</h2>
+<option>third option</option>
+
+<h2>TEXTAREA ending without starting</h2>
+</textarea>
+
+</BODY> 
diff --git a/test/c1.html b/test/c1.html
new file mode 100644
index 00000000..6ec70aa5
--- /dev/null
+++ b/test/c1.html
@@ -0,0 +1,63 @@
+<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
+<HTML> 
+<HEAD> 
+<TITLE>Test of invalid NCRs 128-159</TITLE> 
+</HEAD> 
+<BODY><H2>Test of invalid NCRs 128-159</H2> 
+<P> 
+Authoring tools on MS Windows, in particular MS FrontPage ("WYSIWYG" HTML editor), 
+generate invalid <DFN>Numerical Character References</DFN> for characters 
+commonly found in positions 128...159 (0x80...0x9f) in Windows fonts.  Although 
+these are valid codepoints for <em>windows-1252</em> (and other 
+windows-xxxx) charsets, valid NCRs always refer to the document character set 
+in the SGML sense, not to the character encoding scheme (or charset).  For HTML, 
+the SGML document character set is fixed, it is always a subset of Unicode 
+(or ISO 10646).  In Unicode and its iso-8859-1 subset, values 128...159 are 
+C1 control characters, they must not appear in HTML.  Valid NCRs for the 
+intended characters use Unicode values greater than 256. 
+<p> 
+Lynx tries to interpret some of the invalid codes, by assuming that they are 
+windows-1252 codepoints. 
+<PRE> 
+ 
+You may want to press '\' to view the source of this test. 
+ 
+<em>Code      invalid NCR    <!--    --> <tab id=c>valid NCR, description</em> 
+<em>        normal   in ALT  <a id=table></a>				</em> 
+                             
+0x80    &#x80;	<IMG SRC=X ALT="&#x80;"> <tab to=c>&#x20AC;	#EURO SIGN 
+0x81    &#x81;	<IMG SRC=X ALT="&#x81;"> <!--&#x0081;-->	#NOT USED 
+0x82    &#x82;	<IMG SRC=X ALT="&#x82;"> <tab to=c>&#x201a;	#SINGLE LOW-9 QUOTATION MARK 
+0x83    &#x83;	<IMG SRC=X ALT="&#x83;"> <tab to=c>&#x0192;	#LATIN SMALL LETTER F WITH HOOK 
+0x84    &#x84;	<IMG SRC=X ALT="&#x84;"> <tab to=c>&#x201e;	#DOUBLE LOW-9 QUOTATION MARK 
+0x85    &#x85;	<IMG SRC=X ALT="&#x85;"> <tab to=c>&#x2026;	#HORIZONTAL ELLIPSIS 
+0x86    &#x86;	<IMG SRC=X ALT="&#x86;"> <tab to=c>&#x2020;	#DAGGER 
+0x87    &#x87;	<IMG SRC=X ALT="&#x87;"> <tab to=c>&#x2021;	#DOUBLE DAGGER 
+0x88    &#x88;	<IMG SRC=X ALT="&#x88;"> <tab to=c>&#x02c6;	#MODIFIER LETTER CIRCUMFLEX ACCENT 
+0x89    &#x89;	<IMG SRC=X ALT="&#x89;"> <tab to=c>&#x2030;	#PER MILLE SIGN 
+0x8a    &#x8a;	<IMG SRC=X ALT="&#x8a;"> <tab to=c>&#x0160;	#LATIN CAPITAL LETTER S WITH CARON 
+0x8b    &#x8b;	<IMG SRC=X ALT="&#x8b;"> <tab to=c>&#x2039;	#SINGLE LEFT-POINTING ANGLE QUOTATION MARK 
+0x8c    &#x8c;	<IMG SRC=X ALT="&#x8c;"> <tab to=c>&#x0152;	#LATIN CAPITAL LIGATURE OE 
+0x8d    &#x8d;	<IMG SRC=X ALT="&#x8d;"> <!--&#x008d;-->	#NOT USED 
+0x8e    &#x8e;	<IMG SRC=X ALT="&#x8e;"> <!--&#x008e;-->	#NOT USED 
+0x8f    &#x8f;	<IMG SRC=X ALT="&#x8f;"> <!--&#x008f;-->	#NOT USED 
+0x90    &#x90;	<IMG SRC=X ALT="&#x90;"> <!--&#x0090;-->	#NOT USED 
+0x91    &#x91;	<IMG SRC=X ALT="&#x91;"> <tab to=c>&#x2018;	#LEFT SINGLE QUOTATION MARK 
+0x92    &#x92;	<IMG SRC=X ALT="&#x92;"> <tab to=c>&#x2019;	#RIGHT SINGLE QUOTATION MARK 
+0x93    &#x93;	<IMG SRC=X ALT="&#x93;"> <tab to=c>&#x201c;	#LEFT DOUBLE QUOTATION MARK 
+0x94    &#x94;	<IMG SRC=X ALT="&#x94;"> <tab to=c>&#x201d;	#RIGHT DOUBLE QUOTATION MARK 
+0x95    &#x95;	<IMG SRC=X ALT="&#x95;"> <tab to=c>&#x2022;	#BULLET 
+0x96    &#x96;	<IMG SRC=X ALT="&#x96;"> <tab to=c>&#x2013;	#EN DASH 
+0x97    &#x97;	<IMG SRC=X ALT="&#x97;"> <tab to=c>&#x2014;	#EM DASH 
+0x98    &#x98;	<IMG SRC=X ALT="&#x98;"> <tab to=c>&#x02dc;	#SMALL TILDE 
+0x99    &#x99;	<IMG SRC=X ALT="&#x99;"> <tab to=c>&#x2122;	#TRADE MARK SIGN 
+0x9a    &#x9a;	<IMG SRC=X ALT="&#x9a;"> <tab to=c>&#x0161;	#LATIN SMALL LETTER S WITH CARON 
+0x9b    &#x9b;	<IMG SRC=X ALT="&#x9b;"> <tab to=c>&#x203a;	#SINGLE RIGHT-POINTING ANGLE QUOTATION MARK 
+0x9c    &#x9c;	<IMG SRC=X ALT="&#x9c;"> <tab to=c>&#x0153;	#LATIN SMALL LIGATURE OE 
+0x9d    &#x9d;	<IMG SRC=X ALT="&#x9d;"> <!--&#x009d;-->	#NOT USED 
+0x9e    &#x9e;	<IMG SRC=X ALT="&#x9e;"> <!--&#x009e;-->	#NOT USED 
+0x9f    &#x9f;	<IMG SRC=X ALT="&#x9f;"> <tab to=c>&#x0178;	#LATIN CAPITAL LETTER Y WITH DIAERESIS 
+ 
+</PRE> 
+</BODY> 
+</HTML> 
diff --git a/test/cp-1252.html b/test/cp-1252.html
new file mode 100644
index 00000000..d46f341a
--- /dev/null
+++ b/test/cp-1252.html
@@ -0,0 +1,178 @@
+<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
+<HTML>
+<HEAD>
+<TITLE>Character table for cp-1252</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=cp-1252">
+<LINK REV="made" HREF="mailto:lynx-dev@nongnu.org">
+<LINK REV="owner" HREF="http://mail.gnu.org/mailman/listinfo/lynx-dev/">
+<LINK REL="sibling" HREF="iso8859-1.html" TITLE="iso-8859-1 test">
+<LINK REL="sibling" HREF="ALT88592.html"  TITLE="iso-8859-2 ALT test">
+</HEAD>
+
+<BODY> 
+
+<H1 ALIGN=center>cp-1252 table</H1> 
+
+<PRE>
+Description                                 Code            Entity name   
+===================================         ============    ==============
+quotation mark                              &amp;#34;  --> &#34;     &amp;quot;   --> &quot;
+ampersand                                   &amp;#38;  --> &#38;     &amp;amp;    --> &amp;
+less-than sign                              &amp;#60;  --> &#60;     &amp;lt;     --> &lt;
+greater-than sign                           &amp;#62;  --> &#62;     &amp;gt;     --> &gt;
+
+Description                            Char Code            Entity name   
+===================================    ==== ============    ==============
+euro sign                              €    &amp;128; --> &#128;
+single low-9 quotation mark            ‚    &amp;130; --> &#130;
+latin small letter f with hook         ƒ    &amp;131; --> &#131;
+double low-9 quotation mark            „    &amp;132; --> &#132;
+horizontal ellipsis                    …    &amp;133; --> &#133;
+dagger                                 †    &amp;134; --> &#134;
+double dagger                          ‡    &amp;135; --> &#135;
+modifier letter circumflex accent      ˆ    &amp;136; --> &#136;
+per mille sign                         ‰    &amp;137; --> &#137;
+latin capital letter s with caron      Š    &amp;138; --> &#138;
+single left-pointing angle quote mark  ‹    &amp;139; --> &#139;
+latin capital ligature oe              Œ    &amp;140; --> &#140;
+latin capital letter z with caron      Ž    &amp;142; --> &#142;
+
+left single quotation mark             ‘    &amp;145; --> &#145;
+right single quotation mark            ’    &amp;146; --> &#146;
+left double quotation mark             “    &amp;147; --> &#147;
+right double quotation mark            ”    &amp;148; --> &#148;
+bullet                                 •    &amp;149; --> &#149;
+en dash                                –    &amp;150; --> &#150;
+em dash                                —    &amp;151; --> &#151;
+small tilde                            ˜    &amp;152; --> &#152;
+trade mark sign                        ™    &amp;153; --> &#153;
+latin small letter s with caron        š    &amp;154; --> &#154;
+single right-pointing angle quote mark ›    &amp;155; --> &#155;
+latin small ligature oe                œ    &amp;156; --> &#156;
+latin small letter z with caron        ž    &amp;158; --> &#158;
+latin capital letter y with diaeresis  Ÿ    &amp;159; --> &#159;
+
+non-breaking space                          &amp;#160; --> &#160;    &amp;nbsp;   --> &nbsp;
+inverted exclamation                   ¡    &amp;#161; --> &#161;    &amp;iexcl;  --> &iexcl;
+cent sign                              ¢    &amp;#162; --> &#162;    &amp;cent;   --> &cent;
+pound sterling                         £    &amp;#163; --> &#163;    &amp;pound;  --> &pound;
+general currency sign                  ¤    &amp;#164; --> &#164;    &amp;curren; --> &curren;
+yen sign                               ¥    &amp;#165; --> &#165;    &amp;yen;    --> &yen;
+broken vertical bar                    ¦    &amp;#166; --> &#166;    &amp;brvbar; --> &brvbar;
+section sign                           §    &amp;#167; --> &#167;    &amp;sect;   --> &sect;
+umlaut (dieresis)                      ¨    &amp;#168; --> &#168;    &amp;uml;    --> &uml;
+copyright                              ©    &amp;#169; --> &#169;    &amp;copy;   --> &copy;
+feminine ordinal                       ª    &amp;#170; --> &#170;    &amp;ordf;   --> &ordf;
+left angle quote, guillemotleft        «    &amp;#171; --> &#171;    &amp;laquo;  --> &laquo;
+not sign                               ¬    &amp;#172; --> &#172;    &amp;not;    --> &not;
+soft hyphen                            ­    &amp;#173; --> &#173;    &amp;shy;    --> &shy;
+registered trademark                   ®    &amp;#174; --> &#174;    &amp;reg;    --> &reg;
+macron accent                          ¯    &amp;#175; --> &#175;    &amp;macr;   --> &macr;
+
+degree sign                            °    &amp;#176; --> &#176;    &amp;deg;    --> &deg;
+plus or minus                          ±    &amp;#177; --> &#177;    &amp;plusmn; --> &plusmn;
+superscript two                        ²    &amp;#178; --> &#178;    &amp;sup2;   --> &sup2;
+superscript three                      ³    &amp;#179; --> &#179;    &amp;sup3;   --> &sup3;
+acute accent                           ´    &amp;#180; --> &#180;    &amp;acute;  --> &acute;
+micro sign                             µ    &amp;#181; --> &#181;    &amp;micro;  --> &micro;
+paragraph sign                         ¶    &amp;#182; --> &#182;    &amp;para;   --> &para;
+middle dot                             ·    &amp;#183; --> &#183;    &amp;middot; --> &middot;
+cedilla                                ¸    &amp;#184; --> &#184;    &amp;cedil;  --> &cedil;
+superscript one                        ¹    &amp;#185; --> &#185;    &amp;sup1;   --> &sup1;
+masculine ordinal                      º    &amp;#186; --> &#186;    &amp;ordm;   --> &ordm;
+right angle quote, guillemotright      »    &amp;#187; --> &#187;    &amp;raquo;  --> &raquo;
+vulgar fraction one-quarter            ¼    &amp;#188; --> &#188;    &amp;frac14; --> &frac14;
+vulgar fraction one-half               ½    &amp;#189; --> &#189;    &amp;frac12; --> &frac12;
+vulgar fraction three-fourths          ¾    &amp;#190; --> &#190;    &amp;frac34; --> &frac34;
+inverted question mark                 ¿    &amp;#191; --> &#191;    &amp;iquest; --> &iquest;
+
+latin capital letter a with grave      À    &amp;#192; --> &#192;    &amp;Agrave; --> &Agrave;
+latin capital letter a with acute      Á    &amp;#193; --> &#193;    &amp;Aacute; --> &Aacute;
+latin capital letter a with circumflex     &amp;#194; --> &#194;    &amp;Acirc;  --> &Acirc;
+latin capital letter a with tilde      Ã    &amp;#195; --> &#195;    &amp;Atilde; --> &Atilde;
+latin capital letter a with diaeresis  Ä    &amp;#196; --> &#196;    &amp;Auml;   --> &Auml;
+latin capital letter a with ring above Å    &amp;#197; --> &#197;    &amp;Aring;  --> &Aring;
+latin capital letter ae                Æ    &amp;#198; --> &#198;    &amp;AElig;  --> &AElig;
+latin capital letter c with cedilla    Ç    &amp;#199; --> &#199;    &amp;Ccedil; --> &Ccedil;
+latin capital letter e with grave      È    &amp;#200; --> &#200;    &amp;Egrave; --> &Egrave;
+latin capital letter e with acute      É    &amp;#201; --> &#201;    &amp;Eacute; --> &Eacute;
+latin capital letter e with circumflex Ê    &amp;#202; --> &#202;    &amp;Ecirc;  --> &Ecirc;
+latin capital letter e with diaeresis  Ë    &amp;#203; --> &#203;    &amp;Euml;   --> &Euml;
+latin capital letter i with grave      Ì    &amp;#204; --> &#204;    &amp;Igrave; --> &Igrave;
+latin capital letter i with acute      Í    &amp;#205; --> &#205;    &amp;Iacute; --> &Iacute;
+latin capital letter i with circumflex Î    &amp;#206; --> &#206;    &amp;Icirc;  --> &Icirc;
+latin capital letter i with diaeresis  Ï    &amp;#207; --> &#207;    &amp;Iuml;   --> &Iuml;
+
+latin capital letter eth               Ð    &amp;#208; --> &#208;    &amp;ETH;    --> &ETH;
+latin capital letter n with tilde      Ñ    &amp;#209; --> &#209;    &amp;Ntilde; --> &Ntilde;
+latin capital letter o with grave      Ò    &amp;#210; --> &#210;    &amp;Ograve; --> &Ograve;
+latin capital letter o with acute      Ó    &amp;#211; --> &#211;    &amp;Oacute; --> &Oacute;
+latin capital letter o with circumflex Ô    &amp;#212; --> &#212;    &amp;Ocirc;  --> &Ocirc;
+latin capital letter o with tilde      Õ    &amp;#213; --> &#213;    &amp;Otilde; --> &Otilde;
+latin capital letter o with diaeresis  Ö    &amp;#214; --> &#214;    &amp;Ouml;   --> &Ouml;
+multiplication sign                    ×    &amp;#215; --> &#215;    &amp;times;  --> &times;
+latin capital letter o with stroke     Ø    &amp;#216; --> &#216;    &amp;Oslash; --> &Oslash;
+latin capital letter u with grave      Ù    &amp;#217; --> &#217;    &amp;Ugrave; --> &Ugrave;
+latin capital letter u with acute      Ú    &amp;#218; --> &#218;    &amp;Uacute; --> &Uacute;
+latin capital letter u with circumflex Û    &amp;#219; --> &#219;    &amp;Ucirc;  --> &Ucirc;
+latin capital letter u with diaeresis  Ü    &amp;#220; --> &#220;    &amp;Uuml;   --> &Uuml;
+latin capital letter y with acute      Ý    &amp;#221; --> &#221;    &amp;Yacute; --> &Yacute;
+latin capital letter thorn             Þ    &amp;#222; --> &#222;    &amp;THORN;  --> &THORN;
+latin small letter sharp s             ß    &amp;#223; --> &#223;    &amp;szlig;  --> &szlig;
+
+latin small letter a with grave        à    &amp;#224; --> &#224;    &amp;agrave; --> &agrave;
+latin small letter a with acute        á    &amp;#225; --> &#225;    &amp;aacute; --> &aacute;
+latin small letter a with circumflex   â    &amp;#226; --> &#226;    &amp;acirc;  --> &acirc;
+latin small letter a with tilde        ã    &amp;#227; --> &#227;    &amp;atilde; --> &atilde;
+latin small letter a with diaeresis    ä    &amp;#228; --> &#228;    &amp;auml;   --> &auml;
+latin small letter a with ring above   å    &amp;#229; --> &#229;    &amp;aring;  --> &aring;
+latin small letter ae                  æ    &amp;#230; --> &#230;    &amp;aelig;  --> &aelig;
+latin small letter c with cedilla      ç    &amp;#231; --> &#231;    &amp;ccedil; --> &ccedil;
+latin small letter e with grave        è    &amp;#232; --> &#232;    &amp;egrave; --> &egrave;
+latin small letter e with acute        é    &amp;#233; --> &#233;    &amp;eacute; --> &eacute;
+latin small letter e with circumflex   ê    &amp;#234; --> &#234;    &amp;ecirc;  --> &ecirc;
+latin small letter e with diaeresis    ë    &amp;#235; --> &#235;    &amp;euml;   --> &euml;
+latin small letter i with grave        ì    &amp;#236; --> &#236;    &amp;igrave; --> &igrave;
+latin small letter i with acute        í    &amp;#237; --> &#237;    &amp;iacute; --> &iacute;
+latin small letter i with circumflex   î    &amp;#238; --> &#238;    &amp;icirc;  --> &icirc;
+latin small letter i with diaeresis    ï    &amp;#239; --> &#239;    &amp;iuml;   --> &iuml;
+
+latin small letter eth                 ð    &amp;#240; --> &#240;    &amp;eth;    --> &eth;
+latin small letter n with tilde        ñ    &amp;#241; --> &#241;    &amp;ntilde; --> &ntilde;
+latin small letter o with grave        ò    &amp;#242; --> &#242;    &amp;ograve; --> &ograve;
+latin small letter o with acute        ó    &amp;#243; --> &#243;    &amp;oacute; --> &oacute;
+latin small letter o with circumflex   ô    &amp;#244; --> &#244;    &amp;ocirc;  --> &ocirc;
+latin small letter o with tilde        õ    &amp;#245; --> &#245;    &amp;otilde; --> &otilde;
+latin small letter o with diaeresis    ö    &amp;#246; --> &#246;    &amp;ouml;   --> &ouml;
+division sign                          ÷    &amp;#247; --> &#247;    &amp;divide; --> &divide;
+latin small letter o with stroke       ø    &amp;#248; --> &#248;    &amp;oslash; --> &oslash;
+latin small letter u with grave        ù    &amp;#249; --> &#249;    &amp;ugrave; --> &ugrave;
+latin small letter u with acute        ú    &amp;#250; --> &#250;    &amp;uacute; --> &uacute;
+latin small letter u with circumflex   û    &amp;#251; --> &#251;    &amp;ucirc;  --> &ucirc;
+latin small letter u with diaeresis    ü    &amp;#252; --> &#252;    &amp;uuml;   --> &uuml;
+latin small letter y with acute        ý    &amp;#253; --> &#253;    &amp;yacute; --> &yacute;
+latin small letter thorn               þ    &amp;#254; --> &#254;    &amp;thorn;  --> &thorn;
+latin small letter y with diaeresis   {ÿ}  {&amp;#255;}-->{&#255;}  {&amp;yuml;}  -->{&yuml;}
+
+Some other characters of interest      Char Code            Entity name   
+===================================    ==== ============    ==============
+capital AE diphthong (ligature)        N/A  &amp;#198; --> &#198;    &amp;AElig;  --> &AElig;
+small ae diphthong (ligature)          N/A  &amp;#230; --> &#230;    &amp;aelig;  --> &aelig;
+capital OE ligature                    N/A {&amp;#338;}-->{&#338;}  {&amp;OElig;} -->{&OElig;}
+small oe ligature                      N/A {&amp;#339;}-->{&#339;}  {&amp;oelig;} -->{&oelig;}
+copyright                              N/A  &amp;#169; --> &#169;    &amp;copy;   --> &copy;
+registered trademark                   N/A  &amp;#174; --> &#174;    &amp;reg;    --> &reg;
+trademark sign                         N/A  &amp;#8482;--> &#8482;   &amp;trade;  --> &trade;
+em space                               N/A [&amp;#8195;]->[&#8195;] [&amp;emsp;]  -->[&emsp;]
+en space                               N/A [&amp;#8194;]->[&#8194;] [&amp;ensp;]  -->[&ensp;]
+1/3-em space                           N/A [&amp;#8196;]->[&#8196;] [&amp;emsp13;] -->[&emsp13;]
+1/4-em space                           N/A [&amp;#8197;]->[&#8197;] [&amp;emsp14;] -->[&emsp14;]
+thin space                             N/A [&amp;#8201;]->[&#8201;] [&amp;thinsp;]-->[&thinsp;]
+hair space                             N/A [&amp;#8202;]->[&#8202;] [&amp;hairsp;]-->[&hairsp;]
+em dash                                N/A [&amp;#8212;]->[&#8212;] [&amp;mdash;] -->[&mdash;]
+en dash                                N/A [&amp;#8211;]->[&#8211;] [&amp;ndash;] -->[&ndash;]
+
+</PRE>
+
+</BODY>
+</HTML>
diff --git a/test/cp-1252a.html b/test/cp-1252a.html
new file mode 100644
index 00000000..3a532218
--- /dev/null
+++ b/test/cp-1252a.html
@@ -0,0 +1,183 @@
+<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
+<HTML>
+<HEAD>
+<TITLE>Character table for cp-1252</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=cp-1252">
+<LINK REV="made" HREF="mailto:lynx-dev@nongnu.org">
+<LINK REV="owner" HREF="http://mail.gnu.org/mailman/listinfo/lynx-dev/">
+<LINK REL="sibling" HREF="iso8859-1.html" TITLE="iso-8859-1 test">
+<LINK REL="sibling" HREF="ALT88592.html"  TITLE="iso-8859-2 ALT test">
+</HEAD>
+
+<BODY> 
+
+<H1 ALIGN=center>cp-1252 table</H1> 
+
+<PRE>
+Description                                 Code            Entity name   
+===================================         ============    ==============
+quotation mark                              &amp;#34;  --> &#34;     &amp;quot;   --> &quot;
+ampersand                                   &amp;#38;  --> &#38;     &amp;amp;    --> &amp;
+less-than sign                              &amp;#60;  --> &#60;     &amp;lt;     --> &lt;
+greater-than sign                           &amp;#62;  --> &#62;     &amp;gt;     --> &gt;
+
+Description                            Char Code            Entity name   
+===================================    ==== ============    ==============
+euro sign                              €    &amp;128; --> &#128;
+undefined                                  &amp;129; --> &#129;
+single low-9 quotation mark            ‚    &amp;130; --> &#130;
+latin small letter f with hook         ƒ    &amp;131; --> &#131;
+double low-9 quotation mark            „    &amp;132; --> &#132;
+horizontal ellipsis                    …    &amp;133; --> &#133;
+dagger                                 †    &amp;134; --> &#134;
+double dagger                          ‡    &amp;135; --> &#135;
+modifier letter circumflex accent      ˆ    &amp;136; --> &#136;
+per mille sign                         ‰    &amp;137; --> &#137;
+latin capital letter s with caron      Š    &amp;138; --> &#138;
+single left-pointing angle quote mark  ‹    &amp;139; --> &#139;
+latin capital ligature oe              Œ    &amp;140; --> &#140;
+undefined                                  &amp;141; --> &#141;
+latin capital letter z with caron      Ž    &amp;142; --> &#142;
+undefined                                  &amp;143; --> &#143;
+
+undefined                                  &amp;144; --> &#144;
+left single quotation mark             ‘    &amp;145; --> &#145;
+right single quotation mark            ’    &amp;146; --> &#146;
+left double quotation mark             “    &amp;147; --> &#147;
+right double quotation mark            ”    &amp;148; --> &#148;
+bullet                                 •    &amp;149; --> &#149;
+en dash                                –    &amp;150; --> &#150;
+em dash                                —    &amp;151; --> &#151;
+small tilde                            ˜    &amp;152; --> &#152;
+trade mark sign                        ™    &amp;153; --> &#153;
+latin small letter s with caron        š    &amp;154; --> &#154;
+single right-pointing angle quote mark ›    &amp;155; --> &#155;
+latin small ligature oe                œ    &amp;156; --> &#156;
+undefined                                  &amp;157; --> &#157;
+latin small letter z with caron        ž    &amp;158; --> &#158;
+latin capital letter y with diaeresis  Ÿ    &amp;159; --> &#159;
+
+non-breaking space                          &amp;#160; --> &#160;    &amp;nbsp;   --> &nbsp;
+inverted exclamation                   ¡    &amp;#161; --> &#161;    &amp;iexcl;  --> &iexcl;
+cent sign                              ¢    &amp;#162; --> &#162;    &amp;cent;   --> &cent;
+pound sterling                         £    &amp;#163; --> &#163;    &amp;pound;  --> &pound;
+general currency sign                  ¤    &amp;#164; --> &#164;    &amp;curren; --> &curren;
+yen sign                               ¥    &amp;#165; --> &#165;    &amp;yen;    --> &yen;
+broken vertical bar                    ¦    &amp;#166; --> &#166;    &amp;brvbar; --> &brvbar;
+section sign                           §    &amp;#167; --> &#167;    &amp;sect;   --> &sect;
+umlaut (dieresis)                      ¨    &amp;#168; --> &#168;    &amp;uml;    --> &uml;
+copyright                              ©    &amp;#169; --> &#169;    &amp;copy;   --> &copy;
+feminine ordinal                       ª    &amp;#170; --> &#170;    &amp;ordf;   --> &ordf;
+left angle quote, guillemotleft        «    &amp;#171; --> &#171;    &amp;laquo;  --> &laquo;
+not sign                               ¬    &amp;#172; --> &#172;    &amp;not;    --> &not;
+soft hyphen                            ­    &amp;#173; --> &#173;    &amp;shy;    --> &shy;
+registered trademark                   ®    &amp;#174; --> &#174;    &amp;reg;    --> &reg;
+macron accent                          ¯    &amp;#175; --> &#175;    &amp;macr;   --> &macr;
+
+degree sign                            °    &amp;#176; --> &#176;    &amp;deg;    --> &deg;
+plus or minus                          ±    &amp;#177; --> &#177;    &amp;plusmn; --> &plusmn;
+superscript two                        ²    &amp;#178; --> &#178;    &amp;sup2;   --> &sup2;
+superscript three                      ³    &amp;#179; --> &#179;    &amp;sup3;   --> &sup3;
+acute accent                           ´    &amp;#180; --> &#180;    &amp;acute;  --> &acute;
+micro sign                             µ    &amp;#181; --> &#181;    &amp;micro;  --> &micro;
+paragraph sign                         ¶    &amp;#182; --> &#182;    &amp;para;   --> &para;
+middle dot                             ·    &amp;#183; --> &#183;    &amp;middot; --> &middot;
+cedilla                                ¸    &amp;#184; --> &#184;    &amp;cedil;  --> &cedil;
+superscript one                        ¹    &amp;#185; --> &#185;    &amp;sup1;   --> &sup1;
+masculine ordinal                      º    &amp;#186; --> &#186;    &amp;ordm;   --> &ordm;
+right angle quote, guillemotright      »    &amp;#187; --> &#187;    &amp;raquo;  --> &raquo;
+vulgar fraction one-quarter            ¼    &amp;#188; --> &#188;    &amp;frac14; --> &frac14;
+vulgar fraction one-half               ½    &amp;#189; --> &#189;    &amp;frac12; --> &frac12;
+vulgar fraction three-fourths          ¾    &amp;#190; --> &#190;    &amp;frac34; --> &frac34;
+inverted question mark                 ¿    &amp;#191; --> &#191;    &amp;iquest; --> &iquest;
+
+latin capital letter a with grave      À    &amp;#192; --> &#192;    &amp;Agrave; --> &Agrave;
+latin capital letter a with acute      Á    &amp;#193; --> &#193;    &amp;Aacute; --> &Aacute;
+latin capital letter a with circumflex     &amp;#194; --> &#194;    &amp;Acirc;  --> &Acirc;
+latin capital letter a with tilde      Ã    &amp;#195; --> &#195;    &amp;Atilde; --> &Atilde;
+latin capital letter a with diaeresis  Ä    &amp;#196; --> &#196;    &amp;Auml;   --> &Auml;
+latin capital letter a with ring above Å    &amp;#197; --> &#197;    &amp;Aring;  --> &Aring;
+latin capital letter ae                Æ    &amp;#198; --> &#198;    &amp;AElig;  --> &AElig;
+latin capital letter c with cedilla    Ç    &amp;#199; --> &#199;    &amp;Ccedil; --> &Ccedil;
+latin capital letter e with grave      È    &amp;#200; --> &#200;    &amp;Egrave; --> &Egrave;
+latin capital letter e with acute      É    &amp;#201; --> &#201;    &amp;Eacute; --> &Eacute;
+latin capital letter e with circumflex Ê    &amp;#202; --> &#202;    &amp;Ecirc;  --> &Ecirc;
+latin capital letter e with diaeresis  Ë    &amp;#203; --> &#203;    &amp;Euml;   --> &Euml;
+latin capital letter i with grave      Ì    &amp;#204; --> &#204;    &amp;Igrave; --> &Igrave;
+latin capital letter i with acute      Í    &amp;#205; --> &#205;    &amp;Iacute; --> &Iacute;
+latin capital letter i with circumflex Î    &amp;#206; --> &#206;    &amp;Icirc;  --> &Icirc;
+latin capital letter i with diaeresis  Ï    &amp;#207; --> &#207;    &amp;Iuml;   --> &Iuml;
+
+latin capital letter eth               Ð    &amp;#208; --> &#208;    &amp;ETH;    --> &ETH;
+latin capital letter n with tilde      Ñ    &amp;#209; --> &#209;    &amp;Ntilde; --> &Ntilde;
+latin capital letter o with grave      Ò    &amp;#210; --> &#210;    &amp;Ograve; --> &Ograve;
+latin capital letter o with acute      Ó    &amp;#211; --> &#211;    &amp;Oacute; --> &Oacute;
+latin capital letter o with circumflex Ô    &amp;#212; --> &#212;    &amp;Ocirc;  --> &Ocirc;
+latin capital letter o with tilde      Õ    &amp;#213; --> &#213;    &amp;Otilde; --> &Otilde;
+latin capital letter o with diaeresis  Ö    &amp;#214; --> &#214;    &amp;Ouml;   --> &Ouml;
+multiplication sign                    ×    &amp;#215; --> &#215;    &amp;times;  --> &times;
+latin capital letter o with stroke     Ø    &amp;#216; --> &#216;    &amp;Oslash; --> &Oslash;
+latin capital letter u with grave      Ù    &amp;#217; --> &#217;    &amp;Ugrave; --> &Ugrave;
+latin capital letter u with acute      Ú    &amp;#218; --> &#218;    &amp;Uacute; --> &Uacute;
+latin capital letter u with circumflex Û    &amp;#219; --> &#219;    &amp;Ucirc;  --> &Ucirc;
+latin capital letter u with diaeresis  Ü    &amp;#220; --> &#220;    &amp;Uuml;   --> &Uuml;
+latin capital letter y with acute      Ý    &amp;#221; --> &#221;    &amp;Yacute; --> &Yacute;
+latin capital letter thorn             Þ    &amp;#222; --> &#222;    &amp;THORN;  --> &THORN;
+latin small letter sharp s             ß    &amp;#223; --> &#223;    &amp;szlig;  --> &szlig;
+
+latin small letter a with grave        à    &amp;#224; --> &#224;    &amp;agrave; --> &agrave;
+latin small letter a with acute        á    &amp;#225; --> &#225;    &amp;aacute; --> &aacute;
+latin small letter a with circumflex   â    &amp;#226; --> &#226;    &amp;acirc;  --> &acirc;
+latin small letter a with tilde        ã    &amp;#227; --> &#227;    &amp;atilde; --> &atilde;
+latin small letter a with diaeresis    ä    &amp;#228; --> &#228;    &amp;auml;   --> &auml;
+latin small letter a with ring above   å    &amp;#229; --> &#229;    &amp;aring;  --> &aring;
+latin small letter ae                  æ    &amp;#230; --> &#230;    &amp;aelig;  --> &aelig;
+latin small letter c with cedilla      ç    &amp;#231; --> &#231;    &amp;ccedil; --> &ccedil;
+latin small letter e with grave        è    &amp;#232; --> &#232;    &amp;egrave; --> &egrave;
+latin small letter e with acute        é    &amp;#233; --> &#233;    &amp;eacute; --> &eacute;
+latin small letter e with circumflex   ê    &amp;#234; --> &#234;    &amp;ecirc;  --> &ecirc;
+latin small letter e with diaeresis    ë    &amp;#235; --> &#235;    &amp;euml;   --> &euml;
+latin small letter i with grave        ì    &amp;#236; --> &#236;    &amp;igrave; --> &igrave;
+latin small letter i with acute        í    &amp;#237; --> &#237;    &amp;iacute; --> &iacute;
+latin small letter i with circumflex   î    &amp;#238; --> &#238;    &amp;icirc;  --> &icirc;
+latin small letter i with diaeresis    ï    &amp;#239; --> &#239;    &amp;iuml;   --> &iuml;
+
+latin small letter eth                 ð    &amp;#240; --> &#240;    &amp;eth;    --> &eth;
+latin small letter n with tilde        ñ    &amp;#241; --> &#241;    &amp;ntilde; --> &ntilde;
+latin small letter o with grave        ò    &amp;#242; --> &#242;    &amp;ograve; --> &ograve;
+latin small letter o with acute        ó    &amp;#243; --> &#243;    &amp;oacute; --> &oacute;
+latin small letter o with circumflex   ô    &amp;#244; --> &#244;    &amp;ocirc;  --> &ocirc;
+latin small letter o with tilde        õ    &amp;#245; --> &#245;    &amp;otilde; --> &otilde;
+latin small letter o with diaeresis    ö    &amp;#246; --> &#246;    &amp;ouml;   --> &ouml;
+division sign                          ÷    &amp;#247; --> &#247;    &amp;divide; --> &divide;
+latin small letter o with stroke       ø    &amp;#248; --> &#248;    &amp;oslash; --> &oslash;
+latin small letter u with grave        ù    &amp;#249; --> &#249;    &amp;ugrave; --> &ugrave;
+latin small letter u with acute        ú    &amp;#250; --> &#250;    &amp;uacute; --> &uacute;
+latin small letter u with circumflex   û    &amp;#251; --> &#251;    &amp;ucirc;  --> &ucirc;
+latin small letter u with diaeresis    ü    &amp;#252; --> &#252;    &amp;uuml;   --> &uuml;
+latin small letter y with acute        ý    &amp;#253; --> &#253;    &amp;yacute; --> &yacute;
+latin small letter thorn               þ    &amp;#254; --> &#254;    &amp;thorn;  --> &thorn;
+latin small letter y with diaeresis   {ÿ}  {&amp;#255;}-->{&#255;}  {&amp;yuml;}  -->{&yuml;}
+
+Some other characters of interest      Char Code            Entity name   
+===================================    ==== ============    ==============
+capital AE diphthong (ligature)        N/A  &amp;#198; --> &#198;    &amp;AElig;  --> &AElig;
+small ae diphthong (ligature)          N/A  &amp;#230; --> &#230;    &amp;aelig;  --> &aelig;
+capital OE ligature                    N/A {&amp;#338;}-->{&#338;}  {&amp;OElig;} -->{&OElig;}
+small oe ligature                      N/A {&amp;#339;}-->{&#339;}  {&amp;oelig;} -->{&oelig;}
+copyright                              N/A  &amp;#169; --> &#169;    &amp;copy;   --> &copy;
+registered trademark                   N/A  &amp;#174; --> &#174;    &amp;reg;    --> &reg;
+trademark sign                         N/A  &amp;#8482;--> &#8482;   &amp;trade;  --> &trade;
+em space                               N/A [&amp;#8195;]->[&#8195;] [&amp;emsp;]  -->[&emsp;]
+en space                               N/A [&amp;#8194;]->[&#8194;] [&amp;ensp;]  -->[&ensp;]
+1/3-em space                           N/A [&amp;#8196;]->[&#8196;] [&amp;emsp13;] -->[&emsp13;]
+1/4-em space                           N/A [&amp;#8197;]->[&#8197;] [&amp;emsp14;] -->[&emsp14;]
+thin space                             N/A [&amp;#8201;]->[&#8201;] [&amp;thinsp;]-->[&thinsp;]
+hair space                             N/A [&amp;#8202;]->[&#8202;] [&amp;hairsp;]-->[&hairsp;]
+em dash                                N/A [&amp;#8212;]->[&#8212;] [&amp;mdash;] -->[&mdash;]
+en dash                                N/A [&amp;#8211;]->[&#8211;] [&amp;ndash;] -->[&ndash;]
+
+</PRE>
+
+</BODY>
+</HTML>
diff --git a/test/iso-8859-1.html b/test/iso-8859-1.html
new file mode 100644
index 00000000..b9349fa2
--- /dev/null
+++ b/test/iso-8859-1.html
@@ -0,0 +1,241 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<!-- X-URL: http://www.ramsch.org/martin/uni/fmi-hp/iso8859-1.html -->
+<!-- Date: Tue, 28 Dec 2004 20:24:09 GMT -->
+<!-- Last-Modified: Mon, 15 May 2000 09:37:37 GMT -->
+<HTML>
+<HEAD>
+<TITLE>Martin Ramsch - iso8859-1 table</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+<BASE HREF="http://www.ramsch.org/martin/uni/fmi-hp/iso8859-1.html">
+</HEAD>
+
+<BODY> 
+
+<H1 ALIGN=center>iso8859-1 table</H1> 
+
+<PRE>
+Description                               Code            Entity name   
+===================================       ============    ==============
+quotation mark                            &amp;#34;  --> &#34;    &amp;quot;   --> &quot;
+ampersand                                 &amp;#38;  --> &#38;    &amp;amp;    --> &amp;
+less-than sign                            &amp;#60;  --> &#60;    &amp;lt;     --> &lt;
+greater-than sign                         &amp;#62;  --> &#62;    &amp;gt;     --> &gt;
+
+Description                          Char Code            Entity name   
+===================================  ==== ============    ==============
+non-breaking space                        &amp;#160; --> &#160;    &amp;nbsp;   --> &nbsp;
+inverted exclamation                 ¡    &amp;#161; --> &#161;    &amp;iexcl;  --> &iexcl;
+cent sign                            ¢    &amp;#162; --> &#162;    &amp;cent;   --> &cent;
+pound sterling                       £    &amp;#163; --> &#163;    &amp;pound;  --> &pound;
+general currency sign                ¤    &amp;#164; --> &#164;    &amp;curren; --> &curren;
+yen sign                             ¥    &amp;#165; --> &#165;    &amp;yen;    --> &yen;
+broken vertical bar                  ¦    &amp;#166; --> &#166;    &amp;brvbar; --> &brvbar;
+                                             Non-standard &amp;brkbar; --> &brkbar;
+section sign                         §    &amp;#167; --> &#167;    &amp;sect;   --> &sect;
+umlaut (dieresis)                    ¨    &amp;#168; --> &#168;    &amp;uml;    --> &uml;
+                                             Non-standard &amp;die;    --> &die;
+copyright                            ©    &amp;#169; --> &#169;    &amp;copy;   --> &copy;
+feminine ordinal                     ª    &amp;#170; --> &#170;    &amp;ordf;   --> &ordf;
+left angle quote, guillemotleft      «    &amp;#171; --> &#171;    &amp;laquo;  --> &laquo;
+not sign                             ¬    &amp;#172; --> &#172;    &amp;not;    --> &not;
+soft hyphen                          ­    &amp;#173; --> &#173;    &amp;shy;    --> &shy;
+registered trademark                 ®    &amp;#174; --> &#174;    &amp;reg;    --> &reg;
+macron accent                        ¯    &amp;#175; --> &#175;    &amp;macr;   --> &macr;
+                                             Non-standard &amp;hibar;  --> &hibar;
+degree sign                          °    &amp;#176; --> &#176;    &amp;deg;    --> &deg;
+plus or minus                        ±    &amp;#177; --> &#177;    &amp;plusmn; --> &plusmn;
+superscript two                      ²    &amp;#178; --> &#178;    &amp;sup2;   --> &sup2;
+superscript three                    ³    &amp;#179; --> &#179;    &amp;sup3;   --> &sup3;
+acute accent                         ´    &amp;#180; --> &#180;    &amp;acute;  --> &acute;
+micro sign                           µ    &amp;#181; --> &#181;    &amp;micro;  --> &micro;
+paragraph sign                       ¶    &amp;#182; --> &#182;    &amp;para;   --> &para;
+middle dot                           ·    &amp;#183; --> &#183;    &amp;middot; --> &middot;
+cedilla                              ¸    &amp;#184; --> &#184;    &amp;cedil;  --> &cedil;
+superscript one                      ¹    &amp;#185; --> &#185;    &amp;sup1;   --> &sup1;
+masculine ordinal                    º    &amp;#186; --> &#186;    &amp;ordm;   --> &ordm;
+right angle quote, guillemotright    »    &amp;#187; --> &#187;    &amp;raquo;  --> &raquo;
+fraction one-fourth                  ¼    &amp;#188; --> &#188;    &amp;frac14; --> &frac14;
+fraction one-half                    ½    &amp;#189; --> &#189;    &amp;frac12; --> &frac12;
+fraction three-fourths               ¾    &amp;#190; --> &#190;    &amp;frac34; --> &frac34;
+inverted question mark               ¿    &amp;#191; --> &#191;    &amp;iquest; --> &iquest;
+capital A, grave accent              À    &amp;#192; --> &#192;    &amp;Agrave; --> &Agrave;
+capital A, acute accent              Á    &amp;#193; --> &#193;    &amp;Aacute; --> &Aacute;
+capital A, circumflex accent         Â    &amp;#194; --> &#194;    &amp;Acirc;  --> &Acirc;
+capital A, tilde                     Ã    &amp;#195; --> &#195;    &amp;Atilde; --> &Atilde;
+capital A, dieresis or umlaut mark   Ä    &amp;#196; --> &#196;    &amp;Auml;   --> &Auml;
+capital A, ring                      Å    &amp;#197; --> &#197;    &amp;Aring;  --> &Aring;
+capital AE diphthong (ligature)      Æ    &amp;#198; --> &#198;    &amp;AElig;  --> &AElig;
+capital C, cedilla                   Ç    &amp;#199; --> &#199;    &amp;Ccedil; --> &Ccedil;
+capital E, grave accent              È    &amp;#200; --> &#200;    &amp;Egrave; --> &Egrave;
+capital E, acute accent              É    &amp;#201; --> &#201;    &amp;Eacute; --> &Eacute;
+capital E, circumflex accent         Ê    &amp;#202; --> &#202;    &amp;Ecirc;  --> &Ecirc;
+capital E, dieresis or umlaut mark   Ë    &amp;#203; --> &#203;    &amp;Euml;   --> &Euml;
+capital I, grave accent              Ì    &amp;#204; --> &#204;    &amp;Igrave; --> &Igrave;
+capital I, acute accent              Í    &amp;#205; --> &#205;    &amp;Iacute; --> &Iacute;
+capital I, circumflex accent         Î    &amp;#206; --> &#206;    &amp;Icirc;  --> &Icirc;
+capital I, dieresis or umlaut mark   Ï    &amp;#207; --> &#207;    &amp;Iuml;   --> &Iuml;
+capital Eth, Icelandic               Ð    &amp;#208; --> &#208;    &amp;ETH;    --> &ETH;
+                                             Non-standard &amp;Dstrok; --> &Dstrok;
+capital N, tilde                     Ñ    &amp;#209; --> &#209;    &amp;Ntilde; --> &Ntilde;
+capital O, grave accent              Ò    &amp;#210; --> &#210;    &amp;Ograve; --> &Ograve;
+capital O, acute accent              Ó    &amp;#211; --> &#211;    &amp;Oacute; --> &Oacute;
+capital O, circumflex accent         Ô    &amp;#212; --> &#212;    &amp;Ocirc;  --> &Ocirc;
+capital O, tilde                     Õ    &amp;#213; --> &#213;    &amp;Otilde; --> &Otilde;
+capital O, dieresis or umlaut mark   Ö    &amp;#214; --> &#214;    &amp;Ouml;   --> &Ouml;
+multiply sign                        ×    &amp;#215; --> &#215;    &amp;times;  --> &times;
+capital O, slash                     Ø    &amp;#216; --> &#216;    &amp;Oslash; --> &Oslash;
+capital U, grave accent              Ù    &amp;#217; --> &#217;    &amp;Ugrave; --> &Ugrave;
+capital U, acute accent              Ú    &amp;#218; --> &#218;    &amp;Uacute; --> &Uacute;
+capital U, circumflex accent         Û    &amp;#219; --> &#219;    &amp;Ucirc;  --> &Ucirc;
+capital U, dieresis or umlaut mark   Ü    &amp;#220; --> &#220;    &amp;Uuml;   --> &Uuml;
+capital Y, acute accent              Ý    &amp;#221; --> &#221;    &amp;Yacute; --> &Yacute;
+capital THORN, Icelandic             Þ    &amp;#222; --> &#222;    &amp;THORN;  --> &THORN;
+small sharp s, German (sz ligature)  ß    &amp;#223; --> &#223;    &amp;szlig;  --> &szlig;
+small a, grave accent                à    &amp;#224; --> &#224;    &amp;agrave; --> &agrave;
+small a, acute accent                á    &amp;#225; --> &#225;    &amp;aacute; --> &aacute;
+small a, circumflex accent           â    &amp;#226; --> &#226;    &amp;acirc;  --> &acirc;
+small a, tilde                       ã    &amp;#227; --> &#227;    &amp;atilde; --> &atilde;
+small a, dieresis or umlaut mark     ä    &amp;#228; --> &#228;    &amp;auml;   --> &auml;
+small a, ring                        å    &amp;#229; --> &#229;    &amp;aring;  --> &aring;
+small ae diphthong (ligature)        æ    &amp;#230; --> &#230;    &amp;aelig;  --> &aelig;
+small c, cedilla                     ç    &amp;#231; --> &#231;    &amp;ccedil; --> &ccedil;
+small e, grave accent                è    &amp;#232; --> &#232;    &amp;egrave; --> &egrave;
+small e, acute accent                é    &amp;#233; --> &#233;    &amp;eacute; --> &eacute;
+small e, circumflex accent           ê    &amp;#234; --> &#234;    &amp;ecirc;  --> &ecirc;
+small e, dieresis or umlaut mark     ë    &amp;#235; --> &#235;    &amp;euml;   --> &euml;
+small i, grave accent                ì    &amp;#236; --> &#236;    &amp;igrave; --> &igrave;
+small i, acute accent                í    &amp;#237; --> &#237;    &amp;iacute; --> &iacute;
+small i, circumflex accent           î    &amp;#238; --> &#238;    &amp;icirc;  --> &icirc;
+small i, dieresis or umlaut mark     ï    &amp;#239; --> &#239;    &amp;iuml;   --> &iuml;
+small eth, Icelandic                 ð    &amp;#240; --> &#240;    &amp;eth;    --> &eth;
+small n, tilde                       ñ    &amp;#241; --> &#241;    &amp;ntilde; --> &ntilde;
+small o, grave accent                ò    &amp;#242; --> &#242;    &amp;ograve; --> &ograve;
+small o, acute accent                ó    &amp;#243; --> &#243;    &amp;oacute; --> &oacute;
+small o, circumflex accent           ô    &amp;#244; --> &#244;    &amp;ocirc;  --> &ocirc;
+small o, tilde                       õ    &amp;#245; --> &#245;    &amp;otilde; --> &otilde;
+small o, dieresis or umlaut mark     ö    &amp;#246; --> &#246;    &amp;ouml;   --> &ouml;
+division sign                        ÷    &amp;#247; --> &#247;    &amp;divide; --> &divide;
+small o, slash                       ø    &amp;#248; --> &#248;    &amp;oslash; --> &oslash;
+small u, grave accent                ù    &amp;#249; --> &#249;    &amp;ugrave; --> &ugrave;
+small u, acute accent                ú    &amp;#250; --> &#250;    &amp;uacute; --> &uacute;
+small u, circumflex accent           û    &amp;#251; --> &#251;    &amp;ucirc;  --> &ucirc;
+small u, dieresis or umlaut mark     ü    &amp;#252; --> &#252;    &amp;uuml;   --> &uuml;
+small y, acute accent                ý    &amp;#253; --> &#253;    &amp;yacute; --> &yacute;
+small thorn, Icelandic               þ    &amp;#254; --> &#254;    &amp;thorn;  --> &thorn;
+small y, dieresis or umlaut mark     ÿ    &amp;#255; --> &#255;    &amp;yuml;   --> &yuml;
+</PRE>
+<!-- removed: second /PRE, a hack for HotJava 1.0 preBeta 1 -->
+<HR>
+
+<STRONG>How to read</STRONG> this table.  The columns are
+<DL COMPACT>
+<DT>1st:<DD>textual <EM>description</EM> of the character
+<DT>2nd:<DD>character inserted directly into the HTML page as <EM>one
+            byte</EM>
+<DT>3rd:<DD>character written as <EM>numeric HTML entity</EM>, in the
+            format:<BR>"how it looks literally" <CODE>--&gt;</CODE>
+            "what your browser does with it"
+<DT>4th:<DD>character written as <EM>symbolic HTML entity</EM>, in the
+            format:<BR>"how it looks literally" <CODE>--&gt;</CODE>
+            "what your browser does with it"
+</DL>
+
+So for example, if you see something like "<CODE>&amp;divide; -->
+&amp;divide;</CODE>" in the 4th column, this means your browser
+doesn't know about the entity name "divide" and just puts it
+literally.
+
+<P>
+<STRONG>This table</STRONG> grew out of an overview of the "ISO
+Latin-1 Character Set" overview related to the Hyper-G Text Format
+(<A HREF="http://www.hyperwave.de/HTFdoc">HTF</A>).
+
+The entity names <CODE>&amp;brkbar;</CODE> and <CODE>&amp;Dstrok;</CODE>
+seem to be unique to HTF.
+
+The entity name <CODE>&amp;hibar;</CODE> has been supported by X Mosaic
+but seems to be replaced with <CODE>&amp;macr;</CODE>.
+
+The entity names <CODE>&amp;uml;</CODE> and <CODE>&amp;die;</CODE> should
+be equivalent.
+
+<P><STRONG>The standards stuff:</STRONG>
+The 
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html-spec/">HTML 2.0 Standard</A>
+includes a section on
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html-spec/html-spec_9.html#SEC99">Character Entity Sets</A>
+and an overview on the
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html-spec/html-spec_13.html#SEC106">HTML Coded Character Set</A>
+(The entity names are derived from <A HREF="http://www.ucc.ie/info/net/isolat1.html">ISO 8879</A>).
+<BR>
+
+Or have a look at the
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html3/latin1.html">Latin-1 Character Entities</A>
+as listed in an draft for the
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html3/CoverPage.html">HTML 3.0 specification</A>.
+<BR>
+
+The
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/HTMLPlus/htmlplus_59.html">Appendix II</A>
+of CERN's
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/HTMLPlus/htmlplus_1.html">HTML+ Discussion Document</A>
+contains a
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/HTMLPlus/htmlplus_table.ps">table</A>
+(in PostScript format) of the proposed character entities for HTML+ and their
+corresponding character codes for Unicode and the Adobe Latin-1 &amp; Symbol
+character sets.
+<P>
+
+<STRONG>Please note</STRONG> that there is nothing wrong with using
+characters of ISO Latin-1 above 127: the normal transmission protocol
+for the WWW,
+<A HREF="http://www.w3.org/pub/WWW/Protocols/rfc1945/rfc1945">HTTP/1.0</A>,
+uses the 8bit ISO latin-1 as default encoding.
+(Thanks to Roman 
+Czyborra for pointing this out!)
+<P>
+
+<STRONG>Other information:</STRONG>
+<UL>
+
+<LI><STRONG>Kevin J. Brewer</STRONG> has done two very good pages on the subject:
+  <UL>
+   <LI><A HREF="http://www.bbsinc.com/iso8859.html">ASCII - ISO 8859-1 (Latin-1) with HTML 3.0 Entities Table</A> and
+   <LI><A HREF="http://www.bbsinc.com/iso8879.html">ISO 8879 Entities Gopher Menu</A>
+  </UL>
+
+<LI>The excellent overview on the series of
+    <A HREF="http://czyborra.com/charsets/iso8859.html">ISO 8859
+    character sets</A> compiled by Roman Czyborra.
+
+<LI>Also have a look on Alan Flavell's page of
+    <A HREF="http://ppewww.ph.gla.ac.uk/%7Eflavell/iso8859/iso8859-pointers.html">pointers
+    to information about ISO8859</A>. It's written very well!
+
+<LI>Maybe also of interest to you is the
+    <A HREF="ftp://ftp.vlsivie.tuwien.ac.at/pub/8bit/FAQ-ISO-8859-1">ISO 
+     8859-1 FAQ</A> by Michael Gschwind
+    (<A HREF="mailto:mike@vlsivie.tuwien.ac.at">mike@vlsivie.tuwien.ac.at</A>),
+    part of his page on
+    <A HREF="http://www.vlsivie.tuwien.ac.at/mike/i18n.html">Internationalization</A>.
+
+<LI>For users of X11R5 on SunOS systems: the
+    <A HREF="Compose.txt">table over the compose combinations</A>
+    (also coded <A HREF="Compose.html">with entities</A> where possible).
+     It's taken from the MIT X sources in
+     <CODE>server/ddx/sun/Compose.list</CODE>.
+
+<LI>Finally you could have a look at
+    <A HREF="ftp://ds.internic.net/rfc/rfc1345.txt">RFC 1345: 
+     Character Mnemonics &amp; Character Sets</A>
+     by K. Simonsen (06/11/92, 103 pages, approx. 240 kbyte).
+
+</UL>
+
+
+<HR>
+
+<ADDRESS><A HREF="http://ramsch.home.pages.de/">Martin Ramsch</A>, 16.02.1994, 07.01.1996, 01.07.1996, 1998-10-09, 2000-05-15</ADDRESS>
+
+</BODY>
+</HTML>
diff --git a/test/iso-8859-1a.html b/test/iso-8859-1a.html
new file mode 100644
index 00000000..972329d3
--- /dev/null
+++ b/test/iso-8859-1a.html
@@ -0,0 +1,275 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<!-- X-URL: http://www.ramsch.org/martin/uni/fmi-hp/iso8859-1.html -->
+<!-- Date: Tue, 28 Dec 2004 20:24:09 GMT -->
+<!-- Last-Modified: Mon, 15 May 2000 09:37:37 GMT -->
+<HTML>
+<HEAD>
+<TITLE>Martin Ramsch - iso8859-1 table</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+<BASE HREF="http://www.ramsch.org/martin/uni/fmi-hp/iso8859-1.html">
+</HEAD>
+
+<BODY> 
+
+<H1 ALIGN=center>iso8859-1 table, with cp-1252</H1> 
+
+<PRE>
+Description                               Code            Entity name   
+===================================       ============    ==============
+quotation mark                            &amp;#34;  --> &#34;    &amp;quot;   --> &quot;
+ampersand                                 &amp;#38;  --> &#38;    &amp;amp;    --> &amp;
+less-than sign                            &amp;#60;  --> &#60;    &amp;lt;     --> &lt;
+greater-than sign                         &amp;#62;  --> &#62;    &amp;gt;     --> &gt;
+
+Description                          Char Code            Entity name   
+===================================  ==== ============    ==============
+euro sign                              €    &amp;128; --> &#128;
+undefined                                  &amp;129; --> &#129;
+single low-9 quotation mark            ‚    &amp;130; --> &#130;
+latin small letter f with hook         ƒ    &amp;131; --> &#131;
+double low-9 quotation mark            „    &amp;132; --> &#132;
+horizontal ellipsis                    …    &amp;133; --> &#133;
+dagger                                 †    &amp;134; --> &#134;
+double dagger                          ‡    &amp;135; --> &#135;
+modifier letter circumflex accent      ˆ    &amp;136; --> &#136;
+per mille sign                         ‰    &amp;137; --> &#137;
+latin capital letter s with caron      Š    &amp;138; --> &#138;
+single left-pointing angle quote mark  ‹    &amp;139; --> &#139;
+latin capital ligature oe              Œ    &amp;140; --> &#140;
+undefined                                  &amp;141; --> &#141;
+latin capital letter z with caron      Ž    &amp;142; --> &#142;
+undefined                                  &amp;143; --> &#143;
+
+undefined                                  &amp;144; --> &#144;
+left single quotation mark             ‘    &amp;145; --> &#145;
+right single quotation mark            ’    &amp;146; --> &#146;
+left double quotation mark             “    &amp;147; --> &#147;
+right double quotation mark            ”    &amp;148; --> &#148;
+bullet                                 •    &amp;149; --> &#149;
+en dash                                –    &amp;150; --> &#150;
+em dash                                —    &amp;151; --> &#151;
+small tilde                            ˜    &amp;152; --> &#152;
+trade mark sign                        ™    &amp;153; --> &#153;
+latin small letter s with caron        š    &amp;154; --> &#154;
+single right-pointing angle quote mark ›    &amp;155; --> &#155;
+latin small ligature oe                œ    &amp;156; --> &#156;
+undefined                                  &amp;157; --> &#157;
+latin small letter z with caron        ž    &amp;158; --> &#158;
+latin capital letter y with diaeresis  Ÿ    &amp;159; --> &#159;
+
+non-breaking space                        &amp;#160; --> &#160;    &amp;nbsp;   --> &nbsp;
+inverted exclamation                 ¡    &amp;#161; --> &#161;    &amp;iexcl;  --> &iexcl;
+cent sign                            ¢    &amp;#162; --> &#162;    &amp;cent;   --> &cent;
+pound sterling                       £    &amp;#163; --> &#163;    &amp;pound;  --> &pound;
+general currency sign                ¤    &amp;#164; --> &#164;    &amp;curren; --> &curren;
+yen sign                             ¥    &amp;#165; --> &#165;    &amp;yen;    --> &yen;
+broken vertical bar                  ¦    &amp;#166; --> &#166;    &amp;brvbar; --> &brvbar;
+                                             Non-standard &amp;brkbar; --> &brkbar;
+section sign                         §    &amp;#167; --> &#167;    &amp;sect;   --> &sect;
+umlaut (dieresis)                    ¨    &amp;#168; --> &#168;    &amp;uml;    --> &uml;
+                                             Non-standard &amp;die;    --> &die;
+copyright                            ©    &amp;#169; --> &#169;    &amp;copy;   --> &copy;
+feminine ordinal                     ª    &amp;#170; --> &#170;    &amp;ordf;   --> &ordf;
+left angle quote, guillemotleft      «    &amp;#171; --> &#171;    &amp;laquo;  --> &laquo;
+not sign                             ¬    &amp;#172; --> &#172;    &amp;not;    --> &not;
+soft hyphen                          ­    &amp;#173; --> &#173;    &amp;shy;    --> &shy;
+registered trademark                 ®    &amp;#174; --> &#174;    &amp;reg;    --> &reg;
+macron accent                        ¯    &amp;#175; --> &#175;    &amp;macr;   --> &macr;
+                                             Non-standard &amp;hibar;  --> &hibar;
+degree sign                          °    &amp;#176; --> &#176;    &amp;deg;    --> &deg;
+plus or minus                        ±    &amp;#177; --> &#177;    &amp;plusmn; --> &plusmn;
+superscript two                      ²    &amp;#178; --> &#178;    &amp;sup2;   --> &sup2;
+superscript three                    ³    &amp;#179; --> &#179;    &amp;sup3;   --> &sup3;
+acute accent                         ´    &amp;#180; --> &#180;    &amp;acute;  --> &acute;
+micro sign                           µ    &amp;#181; --> &#181;    &amp;micro;  --> &micro;
+paragraph sign                       ¶    &amp;#182; --> &#182;    &amp;para;   --> &para;
+middle dot                           ·    &amp;#183; --> &#183;    &amp;middot; --> &middot;
+cedilla                              ¸    &amp;#184; --> &#184;    &amp;cedil;  --> &cedil;
+superscript one                      ¹    &amp;#185; --> &#185;    &amp;sup1;   --> &sup1;
+masculine ordinal                    º    &amp;#186; --> &#186;    &amp;ordm;   --> &ordm;
+right angle quote, guillemotright    »    &amp;#187; --> &#187;    &amp;raquo;  --> &raquo;
+fraction one-fourth                  ¼    &amp;#188; --> &#188;    &amp;frac14; --> &frac14;
+fraction one-half                    ½    &amp;#189; --> &#189;    &amp;frac12; --> &frac12;
+fraction three-fourths               ¾    &amp;#190; --> &#190;    &amp;frac34; --> &frac34;
+inverted question mark               ¿    &amp;#191; --> &#191;    &amp;iquest; --> &iquest;
+capital A, grave accent              À    &amp;#192; --> &#192;    &amp;Agrave; --> &Agrave;
+capital A, acute accent              Á    &amp;#193; --> &#193;    &amp;Aacute; --> &Aacute;
+capital A, circumflex accent         Â    &amp;#194; --> &#194;    &amp;Acirc;  --> &Acirc;
+capital A, tilde                     Ã    &amp;#195; --> &#195;    &amp;Atilde; --> &Atilde;
+capital A, dieresis or umlaut mark   Ä    &amp;#196; --> &#196;    &amp;Auml;   --> &Auml;
+capital A, ring                      Å    &amp;#197; --> &#197;    &amp;Aring;  --> &Aring;
+capital AE diphthong (ligature)      Æ    &amp;#198; --> &#198;    &amp;AElig;  --> &AElig;
+capital C, cedilla                   Ç    &amp;#199; --> &#199;    &amp;Ccedil; --> &Ccedil;
+capital E, grave accent              È    &amp;#200; --> &#200;    &amp;Egrave; --> &Egrave;
+capital E, acute accent              É    &amp;#201; --> &#201;    &amp;Eacute; --> &Eacute;
+capital E, circumflex accent         Ê    &amp;#202; --> &#202;    &amp;Ecirc;  --> &Ecirc;
+capital E, dieresis or umlaut mark   Ë    &amp;#203; --> &#203;    &amp;Euml;   --> &Euml;
+capital I, grave accent              Ì    &amp;#204; --> &#204;    &amp;Igrave; --> &Igrave;
+capital I, acute accent              Í    &amp;#205; --> &#205;    &amp;Iacute; --> &Iacute;
+capital I, circumflex accent         Î    &amp;#206; --> &#206;    &amp;Icirc;  --> &Icirc;
+capital I, dieresis or umlaut mark   Ï    &amp;#207; --> &#207;    &amp;Iuml;   --> &Iuml;
+capital Eth, Icelandic               Ð    &amp;#208; --> &#208;    &amp;ETH;    --> &ETH;
+                                             Non-standard &amp;Dstrok; --> &Dstrok;
+capital N, tilde                     Ñ    &amp;#209; --> &#209;    &amp;Ntilde; --> &Ntilde;
+capital O, grave accent              Ò    &amp;#210; --> &#210;    &amp;Ograve; --> &Ograve;
+capital O, acute accent              Ó    &amp;#211; --> &#211;    &amp;Oacute; --> &Oacute;
+capital O, circumflex accent         Ô    &amp;#212; --> &#212;    &amp;Ocirc;  --> &Ocirc;
+capital O, tilde                     Õ    &amp;#213; --> &#213;    &amp;Otilde; --> &Otilde;
+capital O, dieresis or umlaut mark   Ö    &amp;#214; --> &#214;    &amp;Ouml;   --> &Ouml;
+multiply sign                        ×    &amp;#215; --> &#215;    &amp;times;  --> &times;
+capital O, slash                     Ø    &amp;#216; --> &#216;    &amp;Oslash; --> &Oslash;
+capital U, grave accent              Ù    &amp;#217; --> &#217;    &amp;Ugrave; --> &Ugrave;
+capital U, acute accent              Ú    &amp;#218; --> &#218;    &amp;Uacute; --> &Uacute;
+capital U, circumflex accent         Û    &amp;#219; --> &#219;    &amp;Ucirc;  --> &Ucirc;
+capital U, dieresis or umlaut mark   Ü    &amp;#220; --> &#220;    &amp;Uuml;   --> &Uuml;
+capital Y, acute accent              Ý    &amp;#221; --> &#221;    &amp;Yacute; --> &Yacute;
+capital THORN, Icelandic             Þ    &amp;#222; --> &#222;    &amp;THORN;  --> &THORN;
+small sharp s, German (sz ligature)  ß    &amp;#223; --> &#223;    &amp;szlig;  --> &szlig;
+small a, grave accent                à    &amp;#224; --> &#224;    &amp;agrave; --> &agrave;
+small a, acute accent                á    &amp;#225; --> &#225;    &amp;aacute; --> &aacute;
+small a, circumflex accent           â    &amp;#226; --> &#226;    &amp;acirc;  --> &acirc;
+small a, tilde                       ã    &amp;#227; --> &#227;    &amp;atilde; --> &atilde;
+small a, dieresis or umlaut mark     ä    &amp;#228; --> &#228;    &amp;auml;   --> &auml;
+small a, ring                        å    &amp;#229; --> &#229;    &amp;aring;  --> &aring;
+small ae diphthong (ligature)        æ    &amp;#230; --> &#230;    &amp;aelig;  --> &aelig;
+small c, cedilla                     ç    &amp;#231; --> &#231;    &amp;ccedil; --> &ccedil;
+small e, grave accent                è    &amp;#232; --> &#232;    &amp;egrave; --> &egrave;
+small e, acute accent                é    &amp;#233; --> &#233;    &amp;eacute; --> &eacute;
+small e, circumflex accent           ê    &amp;#234; --> &#234;    &amp;ecirc;  --> &ecirc;
+small e, dieresis or umlaut mark     ë    &amp;#235; --> &#235;    &amp;euml;   --> &euml;
+small i, grave accent                ì    &amp;#236; --> &#236;    &amp;igrave; --> &igrave;
+small i, acute accent                í    &amp;#237; --> &#237;    &amp;iacute; --> &iacute;
+small i, circumflex accent           î    &amp;#238; --> &#238;    &amp;icirc;  --> &icirc;
+small i, dieresis or umlaut mark     ï    &amp;#239; --> &#239;    &amp;iuml;   --> &iuml;
+small eth, Icelandic                 ð    &amp;#240; --> &#240;    &amp;eth;    --> &eth;
+small n, tilde                       ñ    &amp;#241; --> &#241;    &amp;ntilde; --> &ntilde;
+small o, grave accent                ò    &amp;#242; --> &#242;    &amp;ograve; --> &ograve;
+small o, acute accent                ó    &amp;#243; --> &#243;    &amp;oacute; --> &oacute;
+small o, circumflex accent           ô    &amp;#244; --> &#244;    &amp;ocirc;  --> &ocirc;
+small o, tilde                       õ    &amp;#245; --> &#245;    &amp;otilde; --> &otilde;
+small o, dieresis or umlaut mark     ö    &amp;#246; --> &#246;    &amp;ouml;   --> &ouml;
+division sign                        ÷    &amp;#247; --> &#247;    &amp;divide; --> &divide;
+small o, slash                       ø    &amp;#248; --> &#248;    &amp;oslash; --> &oslash;
+small u, grave accent                ù    &amp;#249; --> &#249;    &amp;ugrave; --> &ugrave;
+small u, acute accent                ú    &amp;#250; --> &#250;    &amp;uacute; --> &uacute;
+small u, circumflex accent           û    &amp;#251; --> &#251;    &amp;ucirc;  --> &ucirc;
+small u, dieresis or umlaut mark     ü    &amp;#252; --> &#252;    &amp;uuml;   --> &uuml;
+small y, acute accent                ý    &amp;#253; --> &#253;    &amp;yacute; --> &yacute;
+small thorn, Icelandic               þ    &amp;#254; --> &#254;    &amp;thorn;  --> &thorn;
+small y, dieresis or umlaut mark     ÿ    &amp;#255; --> &#255;    &amp;yuml;   --> &yuml;
+</PRE>
+<!-- removed: second /PRE, a hack for HotJava 1.0 preBeta 1 -->
+<HR>
+
+<STRONG>How to read</STRONG> this table.  The columns are
+<DL COMPACT>
+<DT>1st:<DD>textual <EM>description</EM> of the character
+<DT>2nd:<DD>character inserted directly into the HTML page as <EM>one
+            byte</EM>
+<DT>3rd:<DD>character written as <EM>numeric HTML entity</EM>, in the
+            format:<BR>"how it looks literally" <CODE>--&gt;</CODE>
+            "what your browser does with it"
+<DT>4th:<DD>character written as <EM>symbolic HTML entity</EM>, in the
+            format:<BR>"how it looks literally" <CODE>--&gt;</CODE>
+            "what your browser does with it"
+</DL>
+
+So for example, if you see something like "<CODE>&amp;divide; -->
+&amp;divide;</CODE>" in the 4th column, this means your browser
+doesn't know about the entity name "divide" and just puts it
+literally.
+
+<P>
+<STRONG>This table</STRONG> grew out of an overview of the "ISO
+Latin-1 Character Set" overview related to the Hyper-G Text Format
+(<A HREF="http://www.hyperwave.de/HTFdoc">HTF</A>).
+
+The entity names <CODE>&amp;brkbar;</CODE> and <CODE>&amp;Dstrok;</CODE>
+seem to be unique to HTF.
+
+The entity name <CODE>&amp;hibar;</CODE> has been supported by X Mosaic
+but seems to be replaced with <CODE>&amp;macr;</CODE>.
+
+The entity names <CODE>&amp;uml;</CODE> and <CODE>&amp;die;</CODE> should
+be equivalent.
+
+<P><STRONG>The standards stuff:</STRONG>
+The 
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html-spec/">HTML 2.0 Standard</A>
+includes a section on
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html-spec/html-spec_9.html#SEC99">Character Entity Sets</A>
+and an overview on the
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html-spec/html-spec_13.html#SEC106">HTML Coded Character Set</A>
+(The entity names are derived from <A HREF="http://www.ucc.ie/info/net/isolat1.html">ISO 8879</A>).
+<BR>
+
+Or have a look at the
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html3/latin1.html">Latin-1 Character Entities</A>
+as listed in an draft for the
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/html3/CoverPage.html">HTML 3.0 specification</A>.
+<BR>
+
+The
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/HTMLPlus/htmlplus_59.html">Appendix II</A>
+of CERN's
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/HTMLPlus/htmlplus_1.html">HTML+ Discussion Document</A>
+contains a
+<A HREF="http://www.w3.org/hypertext/WWW/MarkUp/HTMLPlus/htmlplus_table.ps">table</A>
+(in PostScript format) of the proposed character entities for HTML+ and their
+corresponding character codes for Unicode and the Adobe Latin-1 &amp; Symbol
+character sets.
+<P>
+
+<STRONG>Please note</STRONG> that there is nothing wrong with using
+characters of ISO Latin-1 above 127: the normal transmission protocol
+for the WWW,
+<A HREF="http://www.w3.org/pub/WWW/Protocols/rfc1945/rfc1945">HTTP/1.0</A>,
+uses the 8bit ISO latin-1 as default encoding.
+(Thanks to Roman 
+Czyborra for pointing this out!)
+<P>
+
+<STRONG>Other information:</STRONG>
+<UL>
+
+<LI><STRONG>Kevin J. Brewer</STRONG> has done two very good pages on the subject:
+  <UL>
+   <LI><A HREF="http://www.bbsinc.com/iso8859.html">ASCII - ISO 8859-1 (Latin-1) with HTML 3.0 Entities Table</A> and
+   <LI><A HREF="http://www.bbsinc.com/iso8879.html">ISO 8879 Entities Gopher Menu</A>
+  </UL>
+
+<LI>The excellent overview on the series of
+    <A HREF="http://czyborra.com/charsets/iso8859.html">ISO 8859
+    character sets</A> compiled by Roman Czyborra.
+
+<LI>Also have a look on Alan Flavell's page of
+    <A HREF="http://ppewww.ph.gla.ac.uk/%7Eflavell/iso8859/iso8859-pointers.html">pointers
+    to information about ISO8859</A>. It's written very well!
+
+<LI>Maybe also of interest to you is the
+    <A HREF="ftp://ftp.vlsivie.tuwien.ac.at/pub/8bit/FAQ-ISO-8859-1">ISO 
+     8859-1 FAQ</A> by Michael Gschwind
+    (<A HREF="mailto:mike@vlsivie.tuwien.ac.at">mike@vlsivie.tuwien.ac.at</A>),
+    part of his page on
+    <A HREF="http://www.vlsivie.tuwien.ac.at/mike/i18n.html">Internationalization</A>.
+
+<LI>For users of X11R5 on SunOS systems: the
+    <A HREF="Compose.txt">table over the compose combinations</A>
+    (also coded <A HREF="Compose.html">with entities</A> where possible).
+     It's taken from the MIT X sources in
+     <CODE>server/ddx/sun/Compose.list</CODE>.
+
+<LI>Finally you could have a look at
+    <A HREF="ftp://ds.internic.net/rfc/rfc1345.txt">RFC 1345: 
+     Character Mnemonics &amp; Character Sets</A>
+     by K. Simonsen (06/11/92, 103 pages, approx. 240 kbyte).
+
+</UL>
+
+
+<HR>
+
+<ADDRESS><A HREF="http://ramsch.home.pages.de/">Martin Ramsch</A>, 16.02.1994, 07.01.1996, 01.07.1996, 1998-10-09, 2000-05-15</ADDRESS>
+
+</BODY>
+</HTML>
diff --git a/test/iso-8859-2.html b/test/iso-8859-2.html
new file mode 100644
index 00000000..3a203b5e
--- /dev/null
+++ b/test/iso-8859-2.html
@@ -0,0 +1,174 @@
+<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
+<!-- X-URL: http://www.uni-passau.de/~ramsch/iso8859-1.html -->
+<HTML>
+<HEAD>
+<TITLE>Martin Ramsch's character table modified and enhanced for iso8859-2</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
+<LINK REV="made" HREF="mailto:lynx-dev@nongnu.org">
+<LINK REV="owner" HREF="http://mail.gnu.org/mailman/listinfo/lynx-dev/">
+<LINK REL="sibling" HREF="iso8859-1.html" TITLE="iso-8859-1 test">
+<LINK REL="sibling" HREF="ALT88592.html"  TITLE="iso-8859-2 ALT test">
+</HEAD>
+
+<BODY> 
+
+<H1 ALIGN=center>iso8859-2 plus table</H1> 
+
+<PRE>
+Description                               Code            Entity name   
+===================================       ============    ==============
+quotation mark                            &amp;#34;  --> &#34;     &amp;quot;   --> &quot;
+ampersand                                 &amp;#38;  --> &#38;     &amp;amp;    --> &amp;
+less-than sign                            &amp;#60;  --> &#60;     &amp;lt;     --> &lt;
+greater-than sign                         &amp;#62;  --> &#62;     &amp;gt;     --> &gt;
+
+Description                          Char Code            Entity name   
+===================================  ==== ============    ==============
+non-breaking space                        &amp;#160; --> &#160;    &amp;nbsp;   --> &nbsp;
+capital A, ogonek                    ¡    &amp;#260; --> &#260;    &amp;Aogon;  --> &Aogon;
+breve                               {¢}  {&amp;#728;}-->{&#728;}  {&amp;breve;} -->{&breve;}
+capital L, stroke                    £    &amp;#321; --> &#321;    &amp;Lstrok; --> &Lstrok;
+general currency sign                ¤    &amp;#164; --> &#164;    &amp;curren; --> &curren;
+capital L, caron                     ¥    &amp;#317; --> &#317;    &amp;Lcaron; --> &Lcaron;
+capital S, acute accent              ¦    &amp;#346; --> &#346;    &amp;Sacute; --> &Sacute;
+section sign                         §    &amp;#167; --> &#167;    &amp;sect;   --> &sect;
+umlaut (dieresis)                    ¨    &amp;#168; --> &#168;    &amp;uml;    --> &uml;
+                                                          &amp;die;    --> &die;
+capital S, caron                     ©    &amp;#352; --> &#352;    &amp;Scaron; --> &Scaron;
+capital S, cedilla                   ª    &amp;#350; --> &#350;    &amp;Scedil; --> &Scedil;
+capital T, caron                     «    &amp;#356; --> &#356;    &amp;Tcaron; --> &Tcaron;
+capital Z, acute accent              ¬    &amp;#377; --> &#377;    &amp;Zacute; --> &Zacute;
+soft hyphen                         [­]  [&amp;#173;]-->[&#173;]  [&amp;shy;]   -->[&shy;]
+capital Z, caron                     ®    &amp;#381; --> &#381;    &amp;Zcaron; --> &Zcaron;
+capital Z, dot above                 ¯    &amp;#379; --> &#379;    &amp;Zdot;   --> &Zdot;
+degree sign                          °    &amp;#176; --> &#176;    &amp;deg;    --> &deg;
+small a, ogonek                      ±    &amp;#261; --> &#261;    &amp;aogon;  --> &aogon;
+ogonek                              {²}  {&amp;#731;}-->{&#731;}  {&amp;ogon;}  -->{&ogon;}
+small l, stroke                      ³    &amp;#322; --> &#322;    &amp;lstrok; --> &lstrok;
+acute accent                         ´    &amp;#180; --> &#180;    &amp;acute;  --> &acute;
+small l, caron                       µ    &amp;#318; --> &#318;    &amp;lcaron; --> &lcaron;
+small s, acute accent                ¶    &amp;#347; --> &#347;    &amp;sacute; --> &sacute;
+caron                               {·}  {&amp;#711;}-->{&#711;}  {&amp;caron;} -->{&caron;}
+cedilla                              ¸    &amp;#184; --> &#184;    &amp;cedil;  --> &cedil;
+small s, caron                       ¹    &amp;#353; --> &#353;    &amp;scaron; --> &scaron;
+small s, cedilla                     º    &amp;#351; --> &#351;    &amp;scedil; --> &scedil;
+small t, caron                       »    &amp;#357; --> &#357;    &amp;tcaron; --> &tcaron;
+small z, acute accent                ¼    &amp;#378; --> &#378;    &amp;zacute; --> &zacute;
+double acute accent                 {½}  {&amp;#733;}-->{&#733;}  {&amp;dblac;} -->{&dblac;}
+small z, caron                       ¾    &amp;#382; --> &#382;    &amp;zcaron; --> &zcaron;
+small z, dot above                   ¿    &amp;#380; --> &#380;    &amp;zdot;   --> &zdot;  
+capital R, acute accent              À    &amp;#340; --> &#340;    &amp;Racute; --> &Racute;
+capital A, acute accent              Á    &amp;#193; --> &#193;    &amp;Aacute; --> &Aacute;
+capital A, circumflex accent         Â    &amp;#194; --> &#194;    &amp;Acirc;  --> &Acirc;
+capital A, breve                     Ã    &amp;#258; --> &#258;    &amp;Abreve; --> &Abreve;
+capital A, dieresis or umlaut mark   Ä    &amp;#196; --> &#196;    &amp;Auml;   --> &Auml;
+capital L, acute accent              Å    &amp;#313; --> &#313;    &amp;Lacute; --> &Lacute;
+capital C, acute accent              Æ    &amp;#262; --> &#262;    &amp;Cacute; --> &Cacute;
+capital C, cedilla                   Ç    &amp;#199; --> &#199;    &amp;Ccedil; --> &Ccedil;
+capital C, caron                     È    &amp;#268; --> &#268;    &amp;Ccaron; --> &Ccaron;
+capital E, acute accent              É    &amp;#201; --> &#201;    &amp;Eacute; --> &Eacute;
+capital E, ogonek                    Ê    &amp;#280; --> &#280;    &amp;Eogon;  --> &Eogon;
+capital E, dieresis or umlaut mark   Ë    &amp;#203; --> &#203;    &amp;Euml;   --> &Euml;
+capital E, caron                     Ì    &amp;#282; --> &#282;    &amp;Ecaron; --> &Ecaron;
+capital I, acute accent              Í    &amp;#205; --> &#205;    &amp;Iacute; --> &Iacute;
+capital I, circumflex accent         Î    &amp;#206; --> &#206;    &amp;Icirc;  --> &Icirc;
+capital D, caron                     Ï    &amp;#270; --> &#270;    &amp;Dcaron; --> &Dcaron;
+capital D, stroke                    Ð    &amp;#272; --> &#272;    &amp;Dstrok; --> &Dstrok;
+capital Eth, Icelandic               N/A  &amp;#208; --> &#208;    &amp;ETH;    --> &ETH;
+capital N, acute accent              Ñ    &amp;#323; --> &#323;    &amp;Nacute; --> &Nacute;
+capital N, caron                     Ò    &amp;#327; --> &#327;    &amp;Ncaron; --> &Ncaron;
+capital O, acute accent              Ó    &amp;#211; --> &#211;    &amp;Oacute; --> &Oacute;
+capital O, circumflex accent         Ô    &amp;#212; --> &#212;    &amp;Ocirc;  --> &Ocirc;
+capital O, double acute accent       Õ    &amp;#368; --> &#368;    &amp;Odblac; --> &Odblac;
+capital O, dieresis or umlaut mark   Ö    &amp;#214; --> &#214;    &amp;Ouml;   --> &Ouml;
+multiply sign                        ×    &amp;#215; --> &#215;    &amp;times;  --> &times;
+capital R, caron                     Ø    &amp;#344; --> &#344;    &amp;Rcaron; --> &Rcaron;
+capital U, ring                      Ù    &amp;#366; --> &#366;    &amp;Uring;  --> &Uring;
+capital U, acute accent              Ú    &amp;#218; --> &#218;    &amp;Uacute; --> &Uacute;
+capital U, double acute accent       Û    &amp;#368; --> &#368;    &amp;Udblac; --> &Udblac;
+capital U, dieresis or umlaut mark   Ü    &amp;#220; --> &#220;    &amp;Uuml;   --> &Uuml;
+capital Y, acute accent              Ý    &amp;#221; --> &#221;    &amp;Yacute; --> &Yacute;
+capital T, cedilla                   Þ    &amp;#354; --> &#354;    &amp;Tcedil; --> &Tcedil;
+small sharp s, German (sz ligature)  ß    &amp;#223; --> &#223;    &amp;szlig;  --> &szlig;
+small r, acute accent                à    &amp;#341; --> &#341;    &amp;racute; --> &racute;
+small a, acute accent                á    &amp;#225; --> &#225;    &amp;aacute; --> &aacute;
+small a, circumflex accent           â    &amp;#226; --> &#226;    &amp;acirc;  --> &acirc;
+small a, breve                       ã    &amp;#259; --> &#259;    &amp;abreve; --> &abreve;
+small a, dieresis or umlaut mark     ä    &amp;#228; --> &#228;    &amp;auml;   --> &auml;
+small l, acute accent                å    &amp;#314; --> &#314;    &amp;lacute; --> &lacute;
+small c, acute accent                æ    &amp;#263; --> &#263;    &amp;cacute; --> &cacute;
+small c, cedilla                     ç    &amp;#231; --> &#231;    &amp;ccedil; --> &ccedil;
+small c, caron                       è    &amp;#269; --> &#269;    &amp;ccaron; --> &ccaron;
+small e, acute accent                é    &amp;#233; --> &#233;    &amp;eacute; --> &eacute;
+small e, ogonek                      ê    &amp;#281; --> &#281;    &amp;eogon;  --> &eogon;
+small e, dieresis or umlaut mark     ë    &amp;#235; --> &#235;    &amp;euml;   --> &euml;
+small e, caron                       ì    &amp;#283; --> &#283;    &amp;ecaron; --> &ecaron;
+small i, acute accent                í    &amp;#237; --> &#237;    &amp;iacute; --> &iacute;
+small i, circumflex accent           î    &amp;#238; --> &#238;    &amp;icirc;  --> &icirc;
+small d, caron                       ï    &amp;#271; --> &#271;    &amp;dcaron; --> &dcaron;
+small d, stroke                      ð    &amp;#273; --> &#273;    &amp;dstrok; --> &dstrok;
+small eth, Icelandic                 N/A  &amp;#240; --> &#240;    &amp;eth;    --> &eth;
+small n, acute accent                ñ    &amp;#324; --> &#324;    &amp;nacute; --> &nacute;
+small n, caron                       ò    &amp;#328; --> &#328;    &amp;ncaron; --> &ncaron;
+small o, acute accent                ó    &amp;#243; --> &#243;    &amp;oacute; --> &oacute;
+small o, circumflex accent           ô    &amp;#244; --> &#244;    &amp;ocirc;  --> &ocirc;
+small o, double acute accent         õ    &amp;#369; --> &#369;    &amp;odblac; --> &odblac;
+small o, dieresis or umlaut mark     ö    &amp;#246; --> &#246;    &amp;ouml;   --> &ouml;
+division sign                        ÷    &amp;#247; --> &#247;    &amp;divide; --> &divide;
+small r, caron                       ø    &amp;#345; --> &#345;    &amp;rcaron; --> &rcaron;
+small u, ring                        ù    &amp;#367; --> &#367;    &amp;uring;  --> &uring;
+small u, acute accent                ú    &amp;#250; --> &#250;    &amp;uacute; --> &uacute;
+small u, double acute accent         û    &amp;#369; --> &#369;    &amp;udblac; --> &udblac;
+small u, dieresis or umlaut mark     ü    &amp;#252; --> &#252;    &amp;uuml;   --> &uuml;
+small y, acute accent                ý    &amp;#253; --> &#253;    &amp;yacute; --> &yacute;
+small t, cedilla                     þ    &amp;#355; --> &#355;    &amp;tcedil; --> &tcedil;
+dot above                           {ÿ}  {&amp;#729;}-->{&#729;}  {&amp;dot;}   -->{&dot;}
+
+Some other characters of interest    Char Code            Entity name   
+===================================  ==== ============    ==============
+capital AE diphthong (ligature)      N/A  &amp;#198; --> &#198;    &amp;AElig;  --> &AElig;
+small ae diphthong (ligature)        N/A  &amp;#230; --> &#230;    &amp;aelig;  --> &aelig;
+capital OE ligature                  N/A {&amp;#338;}-->{&#338;}  {&amp;OElig;} -->{&OElig;}
+small oe ligature                    N/A {&amp;#339;}-->{&#339;}  {&amp;oelig;} -->{&oelig;}
+copyright                            N/A  &amp;#169; --> &#169;    &amp;copy;   --> &copy;
+registered trademark                 N/A  &amp;#174; --> &#174;    &amp;reg;    --> &reg;
+trademark sign                       N/A  &amp;#8482;--> &#8482;   &amp;trade;  --> &trade;
+em space                             N/A [&amp;#8195;]->[&#8195;] [&amp;emsp;]  -->[&emsp;]
+en space                             N/A [&amp;#8194;]->[&#8194;] [&amp;ensp;]  -->[&ensp;]
+1/3-em space                         N/A [&amp;#8196;]->[&#8196;] [&amp;emsp13;] -->[&emsp13;]
+1/4-em space                         N/A [&amp;#8197;]->[&#8197;] [&amp;emsp14;] -->[&emsp14;]
+thin space                           N/A [&amp;#8201;]->[&#8201;] [&amp;thinsp;]-->[&thinsp;]
+hair space                           N/A [&amp;#8202;]->[&#8202;] [&amp;hairsp;]-->[&hairsp;]
+em dash                              N/A [&amp;#8212;]->[&#8212;] [&amp;mdash;] -->[&mdash;]
+en dash                              N/A [&amp;#8211;]->[&#8211;] [&amp;ndash;] -->[&ndash;]
+
+</PRE><!-- </PRE> no HotJava preBeta hackx - kw -->
+<!-- second /PRE is a hack for HotJava 1.0 preBeta 1 -->
+<HR>
+<P>
+Characters not found in ISO-8859-2 have "N/A" in the <TT>Char</TT> column.
+Some characters for which I could not find entity names in either 
+<A HREF="http://www.internic.net/rfc/rfc2070.txt">RFC 2070</A>
+or the 
+<A HREF="ftp://www.ucc.ie/pub/sgml/">ISOlat1, ISOlat2, ISOnum, ISOpub and ISOtech</A> 
+sets (the ones included by Peter Flynn's
+<A HREF="http://www.ucc.ie/doc/www/html/dtds/htmlpro.html">HTML Pro DTD</A>)
+are shown enclosed in <TT>{</TT>braces<TT>}</TT>.
+</P>
+<P>
+There also is a variation of this table which tests
+<A HREF="ALT88592.html">ISO-8859-2 characters and entities in ALT attributes</A>.
+</P>
+<P>
+See Martin Ramsch's original
+<A CHARSET="iso-8859-1" HREF="http://www.uni-passau.de/~ramsch/iso8859-1.html">ISO-8859-1 Table</A>
+for related info and links, and for some notes on entity names.  
+This file is mostly just an adaptation of his table 
+to the ISO-8859-2 character set.
+</P>
+<HR>
+
+<ADDRESS>kweide@tezcat.com 1997-03-09</ADDRESS>
+
+</BODY>
+</HTML>
diff --git a/test/iso-8859-2a.html b/test/iso-8859-2a.html
new file mode 100644
index 00000000..ffaa1cbd
--- /dev/null
+++ b/test/iso-8859-2a.html
@@ -0,0 +1,208 @@
+<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
+<!-- X-URL: http://www.uni-passau.de/~ramsch/iso8859-1.html -->
+<HTML>
+<HEAD>
+<TITLE>Martin Ramsch's character table modified and enhanced for iso8859-2</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
+<LINK REV="made" HREF="mailto:lynx-dev@nongnu.org">
+<LINK REV="owner" HREF="http://mail.gnu.org/mailman/listinfo/lynx-dev/">
+<LINK REL="sibling" HREF="iso8859-1.html" TITLE="iso-8859-1 test">
+<LINK REL="sibling" HREF="ALT88592.html"  TITLE="iso-8859-2 ALT test">
+</HEAD>
+
+<BODY> 
+
+<H1 ALIGN=center>iso8859-2 plus table, and cp-1252</H1> 
+
+<PRE>
+Description                               Code            Entity name   
+===================================       ============    ==============
+quotation mark                            &amp;#34;  --> &#34;     &amp;quot;   --> &quot;
+ampersand                                 &amp;#38;  --> &#38;     &amp;amp;    --> &amp;
+less-than sign                            &amp;#60;  --> &#60;     &amp;lt;     --> &lt;
+greater-than sign                         &amp;#62;  --> &#62;     &amp;gt;     --> &gt;
+
+Description                          Char Code            Entity name   
+===================================  ==== ============    ==============
+euro sign                              €    &amp;128; --> &#128;
+undefined                                  &amp;129; --> &#129;
+single low-9 quotation mark            ‚    &amp;130; --> &#130;
+latin small letter f with hook         ƒ    &amp;131; --> &#131;
+double low-9 quotation mark            „    &amp;132; --> &#132;
+horizontal ellipsis                    …    &amp;133; --> &#133;
+dagger                                 †    &amp;134; --> &#134;
+double dagger                          ‡    &amp;135; --> &#135;
+modifier letter circumflex accent      ˆ    &amp;136; --> &#136;
+per mille sign                         ‰    &amp;137; --> &#137;
+latin capital letter s with caron      Š    &amp;138; --> &#138;
+single left-pointing angle quote mark  ‹    &amp;139; --> &#139;
+latin capital ligature oe              Œ    &amp;140; --> &#140;
+undefined                                  &amp;141; --> &#141;
+latin capital letter z with caron      Ž    &amp;142; --> &#142;
+undefined                                  &amp;143; --> &#143;
+
+undefined                                  &amp;144; --> &#144;
+left single quotation mark             ‘    &amp;145; --> &#145;
+right single quotation mark            ’    &amp;146; --> &#146;
+left double quotation mark             “    &amp;147; --> &#147;
+right double quotation mark            ”    &amp;148; --> &#148;
+bullet                                 •    &amp;149; --> &#149;
+en dash                                –    &amp;150; --> &#150;
+em dash                                —    &amp;151; --> &#151;
+small tilde                            ˜    &amp;152; --> &#152;
+trade mark sign                        ™    &amp;153; --> &#153;
+latin small letter s with caron        š    &amp;154; --> &#154;
+single right-pointing angle quote mark ›    &amp;155; --> &#155;
+latin small ligature oe                œ    &amp;156; --> &#156;
+undefined                                  &amp;157; --> &#157;
+latin small letter z with caron        ž    &amp;158; --> &#158;
+latin capital letter y with diaeresis  Ÿ    &amp;159; --> &#159;
+
+non-breaking space                        &amp;#160; --> &#160;    &amp;nbsp;   --> &nbsp;
+capital A, ogonek                    ¡    &amp;#260; --> &#260;    &amp;Aogon;  --> &Aogon;
+breve                               {¢}  {&amp;#728;}-->{&#728;}  {&amp;breve;} -->{&breve;}
+capital L, stroke                    £    &amp;#321; --> &#321;    &amp;Lstrok; --> &Lstrok;
+general currency sign                ¤    &amp;#164; --> &#164;    &amp;curren; --> &curren;
+capital L, caron                     ¥    &amp;#317; --> &#317;    &amp;Lcaron; --> &Lcaron;
+capital S, acute accent              ¦    &amp;#346; --> &#346;    &amp;Sacute; --> &Sacute;
+section sign                         §    &amp;#167; --> &#167;    &amp;sect;   --> &sect;
+umlaut (dieresis)                    ¨    &amp;#168; --> &#168;    &amp;uml;    --> &uml;
+                                                          &amp;die;    --> &die;
+capital S, caron                     ©    &amp;#352; --> &#352;    &amp;Scaron; --> &Scaron;
+capital S, cedilla                   ª    &amp;#350; --> &#350;    &amp;Scedil; --> &Scedil;
+capital T, caron                     «    &amp;#356; --> &#356;    &amp;Tcaron; --> &Tcaron;
+capital Z, acute accent              ¬    &amp;#377; --> &#377;    &amp;Zacute; --> &Zacute;
+soft hyphen                         [­]  [&amp;#173;]-->[&#173;]  [&amp;shy;]   -->[&shy;]
+capital Z, caron                     ®    &amp;#381; --> &#381;    &amp;Zcaron; --> &Zcaron;
+capital Z, dot above                 ¯    &amp;#379; --> &#379;    &amp;Zdot;   --> &Zdot;
+degree sign                          °    &amp;#176; --> &#176;    &amp;deg;    --> &deg;
+small a, ogonek                      ±    &amp;#261; --> &#261;    &amp;aogon;  --> &aogon;
+ogonek                              {²}  {&amp;#731;}-->{&#731;}  {&amp;ogon;}  -->{&ogon;}
+small l, stroke                      ³    &amp;#322; --> &#322;    &amp;lstrok; --> &lstrok;
+acute accent                         ´    &amp;#180; --> &#180;    &amp;acute;  --> &acute;
+small l, caron                       µ    &amp;#318; --> &#318;    &amp;lcaron; --> &lcaron;
+small s, acute accent                ¶    &amp;#347; --> &#347;    &amp;sacute; --> &sacute;
+caron                               {·}  {&amp;#711;}-->{&#711;}  {&amp;caron;} -->{&caron;}
+cedilla                              ¸    &amp;#184; --> &#184;    &amp;cedil;  --> &cedil;
+small s, caron                       ¹    &amp;#353; --> &#353;    &amp;scaron; --> &scaron;
+small s, cedilla                     º    &amp;#351; --> &#351;    &amp;scedil; --> &scedil;
+small t, caron                       »    &amp;#357; --> &#357;    &amp;tcaron; --> &tcaron;
+small z, acute accent                ¼    &amp;#378; --> &#378;    &amp;zacute; --> &zacute;
+double acute accent                 {½}  {&amp;#733;}-->{&#733;}  {&amp;dblac;} -->{&dblac;}
+small z, caron                       ¾    &amp;#382; --> &#382;    &amp;zcaron; --> &zcaron;
+small z, dot above                   ¿    &amp;#380; --> &#380;    &amp;zdot;   --> &zdot;  
+capital R, acute accent              À    &amp;#340; --> &#340;    &amp;Racute; --> &Racute;
+capital A, acute accent              Á    &amp;#193; --> &#193;    &amp;Aacute; --> &Aacute;
+capital A, circumflex accent         Â    &amp;#194; --> &#194;    &amp;Acirc;  --> &Acirc;
+capital A, breve                     Ã    &amp;#258; --> &#258;    &amp;Abreve; --> &Abreve;
+capital A, dieresis or umlaut mark   Ä    &amp;#196; --> &#196;    &amp;Auml;   --> &Auml;
+capital L, acute accent              Å    &amp;#313; --> &#313;    &amp;Lacute; --> &Lacute;
+capital C, acute accent              Æ    &amp;#262; --> &#262;    &amp;Cacute; --> &Cacute;
+capital C, cedilla                   Ç    &amp;#199; --> &#199;    &amp;Ccedil; --> &Ccedil;
+capital C, caron                     È    &amp;#268; --> &#268;    &amp;Ccaron; --> &Ccaron;
+capital E, acute accent              É    &amp;#201; --> &#201;    &amp;Eacute; --> &Eacute;
+capital E, ogonek                    Ê    &amp;#280; --> &#280;    &amp;Eogon;  --> &Eogon;
+capital E, dieresis or umlaut mark   Ë    &amp;#203; --> &#203;    &amp;Euml;   --> &Euml;
+capital E, caron                     Ì    &amp;#282; --> &#282;    &amp;Ecaron; --> &Ecaron;
+capital I, acute accent              Í    &amp;#205; --> &#205;    &amp;Iacute; --> &Iacute;
+capital I, circumflex accent         Î    &amp;#206; --> &#206;    &amp;Icirc;  --> &Icirc;
+capital D, caron                     Ï    &amp;#270; --> &#270;    &amp;Dcaron; --> &Dcaron;
+capital D, stroke                    Ð    &amp;#272; --> &#272;    &amp;Dstrok; --> &Dstrok;
+capital Eth, Icelandic               N/A  &amp;#208; --> &#208;    &amp;ETH;    --> &ETH;
+capital N, acute accent              Ñ    &amp;#323; --> &#323;    &amp;Nacute; --> &Nacute;
+capital N, caron                     Ò    &amp;#327; --> &#327;    &amp;Ncaron; --> &Ncaron;
+capital O, acute accent              Ó    &amp;#211; --> &#211;    &amp;Oacute; --> &Oacute;
+capital O, circumflex accent         Ô    &amp;#212; --> &#212;    &amp;Ocirc;  --> &Ocirc;
+capital O, double acute accent       Õ    &amp;#368; --> &#368;    &amp;Odblac; --> &Odblac;
+capital O, dieresis or umlaut mark   Ö    &amp;#214; --> &#214;    &amp;Ouml;   --> &Ouml;
+multiply sign                        ×    &amp;#215; --> &#215;    &amp;times;  --> &times;
+capital R, caron                     Ø    &amp;#344; --> &#344;    &amp;Rcaron; --> &Rcaron;
+capital U, ring                      Ù    &amp;#366; --> &#366;    &amp;Uring;  --> &Uring;
+capital U, acute accent              Ú    &amp;#218; --> &#218;    &amp;Uacute; --> &Uacute;
+capital U, double acute accent       Û    &amp;#368; --> &#368;    &amp;Udblac; --> &Udblac;
+capital U, dieresis or umlaut mark   Ü    &amp;#220; --> &#220;    &amp;Uuml;   --> &Uuml;
+capital Y, acute accent              Ý    &amp;#221; --> &#221;    &amp;Yacute; --> &Yacute;
+capital T, cedilla                   Þ    &amp;#354; --> &#354;    &amp;Tcedil; --> &Tcedil;
+small sharp s, German (sz ligature)  ß    &amp;#223; --> &#223;    &amp;szlig;  --> &szlig;
+small r, acute accent                à    &amp;#341; --> &#341;    &amp;racute; --> &racute;
+small a, acute accent                á    &amp;#225; --> &#225;    &amp;aacute; --> &aacute;
+small a, circumflex accent           â    &amp;#226; --> &#226;    &amp;acirc;  --> &acirc;
+small a, breve                       ã    &amp;#259; --> &#259;    &amp;abreve; --> &abreve;
+small a, dieresis or umlaut mark     ä    &amp;#228; --> &#228;    &amp;auml;   --> &auml;
+small l, acute accent                å    &amp;#314; --> &#314;    &amp;lacute; --> &lacute;
+small c, acute accent                æ    &amp;#263; --> &#263;    &amp;cacute; --> &cacute;
+small c, cedilla                     ç    &amp;#231; --> &#231;    &amp;ccedil; --> &ccedil;
+small c, caron                       è    &amp;#269; --> &#269;    &amp;ccaron; --> &ccaron;
+small e, acute accent                é    &amp;#233; --> &#233;    &amp;eacute; --> &eacute;
+small e, ogonek                      ê    &amp;#281; --> &#281;    &amp;eogon;  --> &eogon;
+small e, dieresis or umlaut mark     ë    &amp;#235; --> &#235;    &amp;euml;   --> &euml;
+small e, caron                       ì    &amp;#283; --> &#283;    &amp;ecaron; --> &ecaron;
+small i, acute accent                í    &amp;#237; --> &#237;    &amp;iacute; --> &iacute;
+small i, circumflex accent           î    &amp;#238; --> &#238;    &amp;icirc;  --> &icirc;
+small d, caron                       ï    &amp;#271; --> &#271;    &amp;dcaron; --> &dcaron;
+small d, stroke                      ð    &amp;#273; --> &#273;    &amp;dstrok; --> &dstrok;
+small eth, Icelandic                 N/A  &amp;#240; --> &#240;    &amp;eth;    --> &eth;
+small n, acute accent                ñ    &amp;#324; --> &#324;    &amp;nacute; --> &nacute;
+small n, caron                       ò    &amp;#328; --> &#328;    &amp;ncaron; --> &ncaron;
+small o, acute accent                ó    &amp;#243; --> &#243;    &amp;oacute; --> &oacute;
+small o, circumflex accent           ô    &amp;#244; --> &#244;    &amp;ocirc;  --> &ocirc;
+small o, double acute accent         õ    &amp;#369; --> &#369;    &amp;odblac; --> &odblac;
+small o, dieresis or umlaut mark     ö    &amp;#246; --> &#246;    &amp;ouml;   --> &ouml;
+division sign                        ÷    &amp;#247; --> &#247;    &amp;divide; --> &divide;
+small r, caron                       ø    &amp;#345; --> &#345;    &amp;rcaron; --> &rcaron;
+small u, ring                        ù    &amp;#367; --> &#367;    &amp;uring;  --> &uring;
+small u, acute accent                ú    &amp;#250; --> &#250;    &amp;uacute; --> &uacute;
+small u, double acute accent         û    &amp;#369; --> &#369;    &amp;udblac; --> &udblac;
+small u, dieresis or umlaut mark     ü    &amp;#252; --> &#252;    &amp;uuml;   --> &uuml;
+small y, acute accent                ý    &amp;#253; --> &#253;    &amp;yacute; --> &yacute;
+small t, cedilla                     þ    &amp;#355; --> &#355;    &amp;tcedil; --> &tcedil;
+dot above                           {ÿ}  {&amp;#729;}-->{&#729;}  {&amp;dot;}   -->{&dot;}
+
+Some other characters of interest    Char Code            Entity name   
+===================================  ==== ============    ==============
+capital AE diphthong (ligature)      N/A  &amp;#198; --> &#198;    &amp;AElig;  --> &AElig;
+small ae diphthong (ligature)        N/A  &amp;#230; --> &#230;    &amp;aelig;  --> &aelig;
+capital OE ligature                  N/A {&amp;#338;}-->{&#338;}  {&amp;OElig;} -->{&OElig;}
+small oe ligature                    N/A {&amp;#339;}-->{&#339;}  {&amp;oelig;} -->{&oelig;}
+copyright                            N/A  &amp;#169; --> &#169;    &amp;copy;   --> &copy;
+registered trademark                 N/A  &amp;#174; --> &#174;    &amp;reg;    --> &reg;
+trademark sign                       N/A  &amp;#8482;--> &#8482;   &amp;trade;  --> &trade;
+em space                             N/A [&amp;#8195;]->[&#8195;] [&amp;emsp;]  -->[&emsp;]
+en space                             N/A [&amp;#8194;]->[&#8194;] [&amp;ensp;]  -->[&ensp;]
+1/3-em space                         N/A [&amp;#8196;]->[&#8196;] [&amp;emsp13;] -->[&emsp13;]
+1/4-em space                         N/A [&amp;#8197;]->[&#8197;] [&amp;emsp14;] -->[&emsp14;]
+thin space                           N/A [&amp;#8201;]->[&#8201;] [&amp;thinsp;]-->[&thinsp;]
+hair space                           N/A [&amp;#8202;]->[&#8202;] [&amp;hairsp;]-->[&hairsp;]
+em dash                              N/A [&amp;#8212;]->[&#8212;] [&amp;mdash;] -->[&mdash;]
+en dash                              N/A [&amp;#8211;]->[&#8211;] [&amp;ndash;] -->[&ndash;]
+
+</PRE><!-- </PRE> no HotJava preBeta hackx - kw -->
+<!-- second /PRE is a hack for HotJava 1.0 preBeta 1 -->
+<HR>
+<P>
+Characters not found in ISO-8859-2 have "N/A" in the <TT>Char</TT> column.
+Some characters for which I could not find entity names in either 
+<A HREF="http://www.internic.net/rfc/rfc2070.txt">RFC 2070</A>
+or the 
+<A HREF="ftp://www.ucc.ie/pub/sgml/">ISOlat1, ISOlat2, ISOnum, ISOpub and ISOtech</A> 
+sets (the ones included by Peter Flynn's
+<A HREF="http://www.ucc.ie/doc/www/html/dtds/htmlpro.html">HTML Pro DTD</A>)
+are shown enclosed in <TT>{</TT>braces<TT>}</TT>.
+</P>
+<P>
+There also is a variation of this table which tests
+<A HREF="ALT88592.html">ISO-8859-2 characters and entities in ALT attributes</A>.
+</P>
+<P>
+See Martin Ramsch's original
+<A CHARSET="iso-8859-1" HREF="http://www.uni-passau.de/~ramsch/iso8859-1.html">ISO-8859-1 Table</A>
+for related info and links, and for some notes on entity names.  
+This file is mostly just an adaptation of his table 
+to the ISO-8859-2 character set.
+</P>
+<HR>
+
+<ADDRESS>kweide@tezcat.com 1997-03-09</ADDRESS>
+
+</BODY>
+</HTML>
diff --git a/test/koi8-r.html b/test/koi8-r.html
new file mode 100644
index 00000000..d6792195
--- /dev/null
+++ b/test/koi8-r.html
@@ -0,0 +1,321 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Test of the KOI8-R symbols</TITLE>
+</HEAD>
+<BODY>
+<PRE>
+
+    This table prepared from KOI8-R.TXT available at ftp.unicode.org
+
+         ftp://ftp.unicode.org/MAPPINGS/VENDORS/MISC/KOI8-R.TXT
+         (if doing ftp, try cd Public/MAPPINGS/VENDORS/MISC)
+
+
+original comment:
+
+#
+#       Name:             KOI8-R (RFC1489) to Unicode
+#       Unicode version:  3.0
+#       Table version:    1.0
+#       Table format:     Format A
+#       Date:             18 August 1999
+#       Authors:          Helmut Richter &lt;richter@lrz.de&gt;
+#
+#       Copyright (c) 1991-1999 Unicode, Inc.  All Rights reserved.
+#
+#       This file is provided as-is by Unicode, Inc. (The Unicode Consortium).
+#       No claims are made as to fitness for any particular purpose.  No
+#       warranties of any kind are expressed or implied.  The recipient
+#       agrees to determine applicability of information provided.  If this
+#       file has been provided on optical media by Unicode, Inc., the sole
+#       remedy for any claim will be exchange of defective media within 90
+#       days of receipt.
+#
+#       Unicode, Inc. hereby grants the right to freely use the information
+#       supplied in this file in the creation of products supporting the
+#       Unicode Standard, and to make copies of this file in any form for
+#       internal or external distribution as long as this notice remains
+#       attached.
+#
+#       General notes:
+#
+#       This table contains the data the Unicode Consortium has on how
+#       KOI8-R characters map into Unicode. The underlying document is the
+#       mapping described in RFC 1489. No statements are made as to whether
+#       this mapping is the same as the mapping defined as "Code Page 878"
+#       with some vendors.
+#
+#       Format:  Three tab-separated columns
+#                Column #1 is the KOI8-R code (in hex as 0xXX)
+#                Column #2 is the Unicode (in hex as 0xXXXX)
+#                Column #3 the Unicode name (follows a comment sign, '#')
+#
+#       The entries are in KOI8-R order.
+#
+#       Version history
+#       1.0 version: created.
+#
+#       Any comments or problems, contact &lt;errata@unicode.org&gt;
+#       Please note that &lt;errata@unicode.org&gt; is an archival address;
+#       notices will be checked, but do not expect an immediate response.
+#
+0x00    0x0000 "&#x0000"	  # NULL
+0x01    0x0001 "&#x0001"	  # START OF HEADING
+0x02    0x0002 "&#x0002"	  # START OF TEXT
+0x03    0x0003 "&#x0003"	  # END OF TEXT
+0x04    0x0004 "&#x0004"	  # END OF TRANSMISSION
+0x05    0x0005 "&#x0005"	  # ENQUIRY
+0x06    0x0006 "&#x0006"	  # ACKNOWLEDGE
+0x07    0x0007 "&#x0007"	  # BELL
+0x08    0x0008 "&#x0008"	  # BACKSPACE
+0x09    0x0009 "&#x0009"	  # HORIZONTAL TABULATION
+0x0A    0x000A "&#x000A"	  # LINE FEED
+0x0B    0x000B "&#x000B"	  # VERTICAL TABULATION
+0x0C    0x000C "&#x000C"	  # FORM FEED
+0x0D    0x000D "&#x000D"	  # CARRIAGE RETURN
+0x0E    0x000E "&#x000E"	  # SHIFT OUT
+0x0F    0x000F "&#x000F"	  # SHIFT IN
+0x10    0x0010 "&#x0010"	  # DATA LINK ESCAPE
+0x11    0x0011 "&#x0011"	  # DEVICE CONTROL ONE
+0x12    0x0012 "&#x0012"	  # DEVICE CONTROL TWO
+0x13    0x0013 "&#x0013"	  # DEVICE CONTROL THREE
+0x14    0x0014 "&#x0014"	  # DEVICE CONTROL FOUR
+0x15    0x0015 "&#x0015"	  # NEGATIVE ACKNOWLEDGE
+0x16    0x0016 "&#x0016"	  # SYNCHRONOUS IDLE
+0x17    0x0017 "&#x0017"	  # END OF TRANSMISSION BLOCK
+0x18    0x0018 "&#x0018"	  # CANCEL
+0x19    0x0019 "&#x0019"	  # END OF MEDIUM
+0x1A    0x001A "&#x001A"	  # SUBSTITUTE
+0x1B    0x001B "&#x001B"	  # ESCAPE
+0x1C    0x001C "&#x001C"	  # FILE SEPARATOR
+0x1D    0x001D "&#x001D"	  # GROUP SEPARATOR
+0x1E    0x001E "&#x001E"	  # RECORD SEPARATOR
+0x1F    0x001F "&#x001F"	  # UNIT SEPARATOR
+0x20    0x0020 "&#x0020"	  # SPACE
+0x21    0x0021 "&#x0021"	  # EXCLAMATION MARK
+0x22    0x0022 "&#x0022"	  # QUOTATION MARK
+0x23    0x0023 "&#x0023"	  # NUMBER SIGN
+0x24    0x0024 "&#x0024"	  # DOLLAR SIGN
+0x25    0x0025 "&#x0025"	  # PERCENT SIGN
+0x26    0x0026 "&#x0026"	  # AMPERSAND
+0x27    0x0027 "&#x0027"	  # APOSTROPHE
+0x28    0x0028 "&#x0028"	  # LEFT PARENTHESIS
+0x29    0x0029 "&#x0029"	  # RIGHT PARENTHESIS
+0x2A    0x002A "&#x002A"	  # ASTERISK
+0x2B    0x002B "&#x002B"	  # PLUS SIGN
+0x2C    0x002C "&#x002C"	  # COMMA
+0x2D    0x002D "&#x002D"	  # HYPHEN-MINUS
+0x2E    0x002E "&#x002E"	  # FULL STOP
+0x2F    0x002F "&#x002F"	  # SOLIDUS
+0x30    0x0030 "&#x0030"	  # DIGIT ZERO
+0x31    0x0031 "&#x0031"	  # DIGIT ONE
+0x32    0x0032 "&#x0032"	  # DIGIT TWO
+0x33    0x0033 "&#x0033"	  # DIGIT THREE
+0x34    0x0034 "&#x0034"	  # DIGIT FOUR
+0x35    0x0035 "&#x0035"	  # DIGIT FIVE
+0x36    0x0036 "&#x0036"	  # DIGIT SIX
+0x37    0x0037 "&#x0037"	  # DIGIT SEVEN
+0x38    0x0038 "&#x0038"	  # DIGIT EIGHT
+0x39    0x0039 "&#x0039"	  # DIGIT NINE
+0x3A    0x003A "&#x003A"	  # COLON
+0x3B    0x003B "&#x003B"	  # SEMICOLON
+0x3C    0x003C "&#x003C"	  # LESS-THAN SIGN
+0x3D    0x003D "&#x003D"	  # EQUALS SIGN
+0x3E    0x003E "&#x003E"	  # GREATER-THAN SIGN
+0x3F    0x003F "&#x003F"	  # QUESTION MARK
+0x40    0x0040 "&#x0040"	  # COMMERCIAL AT
+0x41    0x0041 "&#x0041"	  # LATIN CAPITAL LETTER A
+0x42    0x0042 "&#x0042"	  # LATIN CAPITAL LETTER B
+0x43    0x0043 "&#x0043"	  # LATIN CAPITAL LETTER C
+0x44    0x0044 "&#x0044"	  # LATIN CAPITAL LETTER D
+0x45    0x0045 "&#x0045"	  # LATIN CAPITAL LETTER E
+0x46    0x0046 "&#x0046"	  # LATIN CAPITAL LETTER F
+0x47    0x0047 "&#x0047"	  # LATIN CAPITAL LETTER G
+0x48    0x0048 "&#x0048"	  # LATIN CAPITAL LETTER H
+0x49    0x0049 "&#x0049"	  # LATIN CAPITAL LETTER I
+0x4A    0x004A "&#x004A"	  # LATIN CAPITAL LETTER J
+0x4B    0x004B "&#x004B"	  # LATIN CAPITAL LETTER K
+0x4C    0x004C "&#x004C"	  # LATIN CAPITAL LETTER L
+0x4D    0x004D "&#x004D"	  # LATIN CAPITAL LETTER M
+0x4E    0x004E "&#x004E"	  # LATIN CAPITAL LETTER N
+0x4F    0x004F "&#x004F"	  # LATIN CAPITAL LETTER O
+0x50    0x0050 "&#x0050"	  # LATIN CAPITAL LETTER P
+0x51    0x0051 "&#x0051"	  # LATIN CAPITAL LETTER Q
+0x52    0x0052 "&#x0052"	  # LATIN CAPITAL LETTER R
+0x53    0x0053 "&#x0053"	  # LATIN CAPITAL LETTER S
+0x54    0x0054 "&#x0054"	  # LATIN CAPITAL LETTER T
+0x55    0x0055 "&#x0055"	  # LATIN CAPITAL LETTER U
+0x56    0x0056 "&#x0056"	  # LATIN CAPITAL LETTER V
+0x57    0x0057 "&#x0057"	  # LATIN CAPITAL LETTER W
+0x58    0x0058 "&#x0058"	  # LATIN CAPITAL LETTER X
+0x59    0x0059 "&#x0059"	  # LATIN CAPITAL LETTER Y
+0x5A    0x005A "&#x005A"	  # LATIN CAPITAL LETTER Z
+0x5B    0x005B "&#x005B"	  # LEFT SQUARE BRACKET
+0x5C    0x005C "&#x005C"	  # REVERSE SOLIDUS
+0x5D    0x005D "&#x005D"	  # RIGHT SQUARE BRACKET
+0x5E    0x005E "&#x005E"	  # CIRCUMFLEX ACCENT
+0x5F    0x005F "&#x005F"	  # LOW LINE
+0x60    0x0060 "&#x0060"	  # GRAVE ACCENT
+0x61    0x0061 "&#x0061"	  # LATIN SMALL LETTER A
+0x62    0x0062 "&#x0062"	  # LATIN SMALL LETTER B
+0x63    0x0063 "&#x0063"	  # LATIN SMALL LETTER C
+0x64    0x0064 "&#x0064"	  # LATIN SMALL LETTER D
+0x65    0x0065 "&#x0065"	  # LATIN SMALL LETTER E
+0x66    0x0066 "&#x0066"	  # LATIN SMALL LETTER F
+0x67    0x0067 "&#x0067"	  # LATIN SMALL LETTER G
+0x68    0x0068 "&#x0068"	  # LATIN SMALL LETTER H
+0x69    0x0069 "&#x0069"	  # LATIN SMALL LETTER I
+0x6A    0x006A "&#x006A"	  # LATIN SMALL LETTER J
+0x6B    0x006B "&#x006B"	  # LATIN SMALL LETTER K
+0x6C    0x006C "&#x006C"	  # LATIN SMALL LETTER L
+0x6D    0x006D "&#x006D"	  # LATIN SMALL LETTER M
+0x6E    0x006E "&#x006E"	  # LATIN SMALL LETTER N
+0x6F    0x006F "&#x006F"	  # LATIN SMALL LETTER O
+0x70    0x0070 "&#x0070"	  # LATIN SMALL LETTER P
+0x71    0x0071 "&#x0071"	  # LATIN SMALL LETTER Q
+0x72    0x0072 "&#x0072"	  # LATIN SMALL LETTER R
+0x73    0x0073 "&#x0073"	  # LATIN SMALL LETTER S
+0x74    0x0074 "&#x0074"	  # LATIN SMALL LETTER T
+0x75    0x0075 "&#x0075"	  # LATIN SMALL LETTER U
+0x76    0x0076 "&#x0076"	  # LATIN SMALL LETTER V
+0x77    0x0077 "&#x0077"	  # LATIN SMALL LETTER W
+0x78    0x0078 "&#x0078"	  # LATIN SMALL LETTER X
+0x79    0x0079 "&#x0079"	  # LATIN SMALL LETTER Y
+0x7A    0x007A "&#x007A"	  # LATIN SMALL LETTER Z
+0x7B    0x007B "&#x007B"	  # LEFT CURLY BRACKET
+0x7C    0x007C "&#x007C"	  # VERTICAL LINE
+0x7D    0x007D "&#x007D"	  # RIGHT CURLY BRACKET
+0x7E    0x007E "&#x007E"	  # TILDE
+0x7F    0x007F "&#x007F"	  # DELETE
+0x80    0x2500 "&#x2500"	  # BOX DRAWINGS LIGHT HORIZONTAL
+0x81    0x2502 "&#x2502"	  # BOX DRAWINGS LIGHT VERTICAL
+0x82    0x250C "&#x250C"	  # BOX DRAWINGS LIGHT DOWN AND RIGHT
+0x83    0x2510 "&#x2510"	  # BOX DRAWINGS LIGHT DOWN AND LEFT
+0x84    0x2514 "&#x2514"	  # BOX DRAWINGS LIGHT UP AND RIGHT
+0x85    0x2518 "&#x2518"	  # BOX DRAWINGS LIGHT UP AND LEFT
+0x86    0x251C "&#x251C"	  # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+0x87    0x2524 "&#x2524"	  # BOX DRAWINGS LIGHT VERTICAL AND LEFT
+0x88    0x252C "&#x252C"	  # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+0x89    0x2534 "&#x2534"	  # BOX DRAWINGS LIGHT UP AND HORIZONTAL
+0x8A    0x253C "&#x253C"	  # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+0x8B    0x2580 "&#x2580"	  # UPPER HALF BLOCK
+0x8C    0x2584 "&#x2584"	  # LOWER HALF BLOCK
+0x8D    0x2588 "&#x2588"	  # FULL BLOCK
+0x8E    0x258C "&#x258C"	  # LEFT HALF BLOCK
+0x8F    0x2590 "&#x2590"	  # RIGHT HALF BLOCK
+0x90    0x2591 "&#x2591"	  # LIGHT SHADE
+0x91    0x2592 "&#x2592"	  # MEDIUM SHADE
+0x92    0x2593 "&#x2593"	  # DARK SHADE
+0x93    0x2320 "&#x2320"	  # TOP HALF INTEGRAL
+0x94    0x25A0 "&#x25A0"	  # BLACK SQUARE
+0x95    0x2219 "&#x2219"	  # BULLET OPERATOR
+0x96    0x221A "&#x221A"	  # SQUARE ROOT
+0x97    0x2248 "&#x2248"	  # ALMOST EQUAL TO
+0x98    0x2264 "&#x2264"	  # LESS-THAN OR EQUAL TO
+0x99    0x2265 "&#x2265"	  # GREATER-THAN OR EQUAL TO
+0x9A    0x00A0 "&#x00A0"	  # NO-BREAK SPACE
+0x9B    0x2321 "&#x2321"	  # BOTTOM HALF INTEGRAL
+0x9C    0x00B0 "&#x00B0"	  # DEGREE SIGN
+0x9D    0x00B2 "&#x00B2"	  # SUPERSCRIPT TWO
+0x9E    0x00B7 "&#x00B7"	  # MIDDLE DOT
+0x9F    0x00F7 "&#x00F7"	  # DIVISION SIGN
+0xA0    0x2550 "&#x2550"	  # BOX DRAWINGS DOUBLE HORIZONTAL
+0xA1    0x2551 "&#x2551"	  # BOX DRAWINGS DOUBLE VERTICAL
+0xA2    0x2552 "&#x2552"	  # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
+0xA3    0x0451 "&#x0451"	  # CYRILLIC SMALL LETTER IO
+0xA4    0x2553 "&#x2553"	  # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
+0xA5    0x2554 "&#x2554"	  # BOX DRAWINGS DOUBLE DOWN AND RIGHT
+0xA6    0x2555 "&#x2555"	  # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
+0xA7    0x2556 "&#x2556"	  # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
+0xA8    0x2557 "&#x2557"	  # BOX DRAWINGS DOUBLE DOWN AND LEFT
+0xA9    0x2558 "&#x2558"	  # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
+0xAA    0x2559 "&#x2559"	  # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
+0xAB    0x255A "&#x255A"	  # BOX DRAWINGS DOUBLE UP AND RIGHT
+0xAC    0x255B "&#x255B"	  # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
+0xAD    0x255C "&#x255C"	  # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
+0xAE    0x255D "&#x255D"	  # BOX DRAWINGS DOUBLE UP AND LEFT
+0xAF    0x255E "&#x255E"	  # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+0xB0    0x255F "&#x255F"	  # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
+0xB1    0x2560 "&#x2560"	  # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
+0xB2    0x2561 "&#x2561"	  # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
+0xB3    0x0401 "&#x0401"	  # CYRILLIC CAPITAL LETTER IO
+0xB4    0x2562 "&#x2562"	  # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
+0xB5    0x2563 "&#x2563"	  # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
+0xB6    0x2564 "&#x2564"	  # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
+0xB7    0x2565 "&#x2565"	  # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
+0xB8    0x2566 "&#x2566"	  # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
+0xB9    0x2567 "&#x2567"	  # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
+0xBA    0x2568 "&#x2568"	  # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
+0xBB    0x2569 "&#x2569"	  # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
+0xBC    0x256A "&#x256A"	  # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+0xBD    0x256B "&#x256B"	  # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
+0xBE    0x256C "&#x256C"	  # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
+0xBF    0x00A9 "&#x00A9"	  # COPYRIGHT SIGN
+0xC0    0x044E "&#x044E"	  # CYRILLIC SMALL LETTER YU
+0xC1    0x0430 "&#x0430"	  # CYRILLIC SMALL LETTER A
+0xC2    0x0431 "&#x0431"	  # CYRILLIC SMALL LETTER BE
+0xC3    0x0446 "&#x0446"	  # CYRILLIC SMALL LETTER TSE
+0xC4    0x0434 "&#x0434"	  # CYRILLIC SMALL LETTER DE
+0xC5    0x0435 "&#x0435"	  # CYRILLIC SMALL LETTER IE
+0xC6    0x0444 "&#x0444"	  # CYRILLIC SMALL LETTER EF
+0xC7    0x0433 "&#x0433"	  # CYRILLIC SMALL LETTER GHE
+0xC8    0x0445 "&#x0445"	  # CYRILLIC SMALL LETTER HA
+0xC9    0x0438 "&#x0438"	  # CYRILLIC SMALL LETTER I
+0xCA    0x0439 "&#x0439"	  # CYRILLIC SMALL LETTER SHORT I
+0xCB    0x043A "&#x043A"	  # CYRILLIC SMALL LETTER KA
+0xCC    0x043B "&#x043B"	  # CYRILLIC SMALL LETTER EL
+0xCD    0x043C "&#x043C"	  # CYRILLIC SMALL LETTER EM
+0xCE    0x043D "&#x043D"	  # CYRILLIC SMALL LETTER EN
+0xCF    0x043E "&#x043E"	  # CYRILLIC SMALL LETTER O
+0xD0    0x043F "&#x043F"	  # CYRILLIC SMALL LETTER PE
+0xD1    0x044F "&#x044F"	  # CYRILLIC SMALL LETTER YA
+0xD2    0x0440 "&#x0440"	  # CYRILLIC SMALL LETTER ER
+0xD3    0x0441 "&#x0441"	  # CYRILLIC SMALL LETTER ES
+0xD4    0x0442 "&#x0442"	  # CYRILLIC SMALL LETTER TE
+0xD5    0x0443 "&#x0443"	  # CYRILLIC SMALL LETTER U
+0xD6    0x0436 "&#x0436"	  # CYRILLIC SMALL LETTER ZHE
+0xD7    0x0432 "&#x0432"	  # CYRILLIC SMALL LETTER VE
+0xD8    0x044C "&#x044C"	  # CYRILLIC SMALL LETTER SOFT SIGN
+0xD9    0x044B "&#x044B"	  # CYRILLIC SMALL LETTER YERU
+0xDA    0x0437 "&#x0437"	  # CYRILLIC SMALL LETTER ZE
+0xDB    0x0448 "&#x0448"	  # CYRILLIC SMALL LETTER SHA
+0xDC    0x044D "&#x044D"	  # CYRILLIC SMALL LETTER E
+0xDD    0x0449 "&#x0449"	  # CYRILLIC SMALL LETTER SHCHA
+0xDE    0x0447 "&#x0447"	  # CYRILLIC SMALL LETTER CHE
+0xDF    0x044A "&#x044A"	  # CYRILLIC SMALL LETTER HARD SIGN
+0xE0    0x042E "&#x042E"	  # CYRILLIC CAPITAL LETTER YU
+0xE1    0x0410 "&#x0410"	  # CYRILLIC CAPITAL LETTER A
+0xE2    0x0411 "&#x0411"	  # CYRILLIC CAPITAL LETTER BE
+0xE3    0x0426 "&#x0426"	  # CYRILLIC CAPITAL LETTER TSE
+0xE4    0x0414 "&#x0414"	  # CYRILLIC CAPITAL LETTER DE
+0xE5    0x0415 "&#x0415"	  # CYRILLIC CAPITAL LETTER IE
+0xE6    0x0424 "&#x0424"	  # CYRILLIC CAPITAL LETTER EF
+0xE7    0x0413 "&#x0413"	  # CYRILLIC CAPITAL LETTER GHE
+0xE8    0x0425 "&#x0425"	  # CYRILLIC CAPITAL LETTER HA
+0xE9    0x0418 "&#x0418"	  # CYRILLIC CAPITAL LETTER I
+0xEA    0x0419 "&#x0419"	  # CYRILLIC CAPITAL LETTER SHORT I
+0xEB    0x041A "&#x041A"	  # CYRILLIC CAPITAL LETTER KA
+0xEC    0x041B "&#x041B"	  # CYRILLIC CAPITAL LETTER EL
+0xED    0x041C "&#x041C"	  # CYRILLIC CAPITAL LETTER EM
+0xEE    0x041D "&#x041D"	  # CYRILLIC CAPITAL LETTER EN
+0xEF    0x041E "&#x041E"	  # CYRILLIC CAPITAL LETTER O
+0xF0    0x041F "&#x041F"	  # CYRILLIC CAPITAL LETTER PE
+0xF1    0x042F "&#x042F"	  # CYRILLIC CAPITAL LETTER YA
+0xF2    0x0420 "&#x0420"	  # CYRILLIC CAPITAL LETTER ER
+0xF3    0x0421 "&#x0421"	  # CYRILLIC CAPITAL LETTER ES
+0xF4    0x0422 "&#x0422"	  # CYRILLIC CAPITAL LETTER TE
+0xF5    0x0423 "&#x0423"	  # CYRILLIC CAPITAL LETTER U
+0xF6    0x0416 "&#x0416"	  # CYRILLIC CAPITAL LETTER ZHE
+0xF7    0x0412 "&#x0412"	  # CYRILLIC CAPITAL LETTER VE
+0xF8    0x042C "&#x042C"	  # CYRILLIC CAPITAL LETTER SOFT SIGN
+0xF9    0x042B "&#x042B"	  # CYRILLIC CAPITAL LETTER YERU
+0xFA    0x0417 "&#x0417"	  # CYRILLIC CAPITAL LETTER ZE
+0xFB    0x0428 "&#x0428"	  # CYRILLIC CAPITAL LETTER SHA
+0xFC    0x042D "&#x042D"	  # CYRILLIC CAPITAL LETTER E
+0xFD    0x0429 "&#x0429"	  # CYRILLIC CAPITAL LETTER SHCHA
+0xFE    0x0427 "&#x0427"	  # CYRILLIC CAPITAL LETTER CHE
+0xFF    0x042A "&#x042A"	  # CYRILLIC CAPITAL LETTER HARD SIGN
+</PRE>
+</BODY>
+</HTML>
diff --git a/test/quickbrown.html b/test/quickbrown.html
new file mode 100644
index 00000000..e3207222
--- /dev/null
+++ b/test/quickbrown.html
@@ -0,0 +1,103 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Markus Kuhn's quick-brown-fox UTF-8 demo</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+<LINK REV="made" HREF="mailto:dickey@invisible-island.net">
+</HEAD>
+
+<BODY> 
+<pre>
+Sentences that contain all letters commonly used in a language
+--------------------------------------------------------------
+
+Markus Kuhn &lt;mkuhn@acm.org&gt; -- 1998-11-30
+
+This file was UTF-8 encoded.
+
+
+German (de)
+-----------
+
+  Falsches &#xdc;ben von Xylophonmusik qu&#xe4;lt jeden gr&#xf6;&#xdf;eren Zwerg
+  (= Wrongful practicing of xylophone music tortures every larger dwarf)
+
+  Zw&#xf6;lf Boxk&#xe4;mpfer jagten Eva quer &#xfc;ber den Sylter Deich
+  (= Twelve boxing fighters hunted Eva across the dike of Sylt)
+
+  Heiz&#xf6;lr&#xfc;cksto&#xdf;abd&#xe4;mpfung
+  (= fuel oil recoil absorber) (jqvwxy missing, but all non-ASCII letters in one word)
+
+English (en)
+------------
+
+  The quick brown fox jumps over the lazy dog
+
+French (fr)
+-----------
+
+  Portez ce vieux whisky au juge blond qui fume sur son &#xee;le int&#xe9;rieure, &#xe0;
+  c&#xf4;t&#xe9; de l'alc&#xf4;ve ovo&#xef;de, o&#xf9; les b&#xfb;ches se consument dans l'&#xe2;tre, ce qui lui
+  permet de penser &#xe0; la c&#xe6;nogen&#xe8;se de l'&#xea;tre dont il est question dans la
+  cause ambigu&#xeb; entendue &#xe0; Mo&#xff;, dans un capharna&#xfc;m qui, pense-t-il, diminue
+  &#xe7;&#xe0; et l&#xe0; la qualit&#xe9; de son &#x153;uvre. 
+
+  l'&#xee;le exigu&#xeb;
+  O&#xf9; l'ob&#xe8;se jury m&#xfb;r
+  F&#xea;te l'ha&#xef; volap&#xfc;k,
+  &#xc2;ne ex a&#xe9;quo au whist,
+  &#xd4;tez ce v&#x153;u d&#xe9;&#xe7;u.
+
+  Le c&#x153;ur d&#xe9;&#xe7;u mais l'&#xe2;me plut&#xf4;t na&#xef;ve, Lou&#xff;s r&#xea;va de crapa&#xfc;ter en
+  cano&#xeb; au del&#xe0; des &#xee;les, pr&#xe8;s du m&#xe4;lstr&#xf6;m o&#xf9; br&#xfb;lent les nov&#xe6;.
+
+Irish Gaelic (ga)
+-----------------
+
+  D'fhuascail &#xcd;osa, &#xda;rmhac na h&#xd3;ighe Beannaithe, p&#xf3;r &#xc9;ava agus &#xc1;dhaimh
+
+Icelandic (is)
+--------------
+
+  K&#xe6;mi n&#xfd; &#xf6;xi h&#xe9;r ykist &#xfe;j&#xf3;fum n&#xfa; b&#xe6;&#xf0;i v&#xed;l og &#xe1;drepa
+
+  S&#xe6;v&#xf6;r gr&#xe9;t &#xe1;&#xf0;an &#xfe;v&#xed; &#xfa;lpan var &#xf3;n&#xfd;t
+  (some ASCII letters missing)
+
+Hebrew (iw)
+-----------
+
+  &#x5d3;&#x5d2; &#x5e1;&#x5e7;&#x5e8;&#x5df; &#x5e9;&#x5d8; &#x5d1;&#x5d9;&#x5dd; &#x5de;&#x5d0;&#x5d5;&#x5db;&#x5d6;&#x5d1; &#x5d5;&#x5dc;&#x5e4;&#x5ea;&#x5e2; &#x5de;&#x5e6;&#x5d0; &#x5dc;&#x5d5; &#x5d7;&#x5d1;&#x5e8;&#x5d4; &#x5d0;&#x5d9;&#x5da; &#x5d4;&#x5e7;&#x5dc;&#x5d9;&#x5d8;&#x5d4;?
+
+Polish (pl)
+-----------
+
+  Pchn&#x105;&#x107; w t&#x119; &#x142;&#xf3;d&#x17a; je&#x17c;a lub o&#x15b;m skrzy&#x144; fig
+
+Russian (ru)
+------------
+
+  &#x412; &#x447;&#x430;&#x449;&#x430;&#x445; &#x44e;&#x433;&#x430; &#x436;&#x438;&#x43b; &#x431;&#x44b; &#x446;&#x438;&#x442;&#x440;&#x443;&#x441;? &#x414;&#x430;, &#x43d;&#x43e; &#x444;&#x430;&#x43b;&#x44c;&#x448;&#x438;&#x432;&#x44b;&#x439; &#x44d;&#x43a;&#x437;&#x435;&#x43c;&#x43f;&#x43b;&#x44f;&#x440;!
+  (= Would a citrus live in the bushes of south? Yes, but a only a fake!)
+
+
+Please let me know if you find others! Special thanks to the people
+from all over the world who contributed these sentences.
+
+</pre>
+See also:
+<ul>
+<li><a href="http://www.columbia.edu/kermit/utf8.html"
+            >http://www.columbia.edu/kermit/utf8.html</a>
+<li><a href="http://www.kernel.org/"
+            >http://www.kernel.org/</a>
+<li><a href="http://www.unicode.org/"
+            >http://www.unicode.org/</a>
+<br>and
+<li><a href="http://www.cl.cam.ac.uk/~mgk25/ucs/examples/TeX.txt"
+            >http://www.cl.cam.ac.uk/~mgk25/ucs/examples/TeX.txt</a>
+<li><a href="http://www.cl.cam.ac.uk/~mgk25/ucs/wgl4.txt"
+            >http://www.cl.cam.ac.uk/~mgk25/ucs/wgl4.txt</a>
+</ul>
+</BODY>
+</HTML>
diff --git a/test/raw8bit.html b/test/raw8bit.html
new file mode 100644
index 00000000..f0d0eeb0
--- /dev/null
+++ b/test/raw8bit.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
+<HTML>
+<HEAD>
+<TITLE> Test of raw 8-bit symbols </TITLE>
+<!-- you may uncomment the next line
+and set the document's charset directly via META tag -->
+<!--META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"-->
+</HEAD>
+<BODY>
+<PRE>
+This is a test of translation 8-bit letters for different pairs of
+document's charset (assumed charset) and display charset,
+both can be reached from 'O'ptions menu.
+
+This page (obviously) corresponds to text/html mode
+but you may test text/plain just by pressing '\'
+Try also: '@' for ``raw mode'' and '=' for Information Page.
+
+
+    0 1 2 3 4 5 6 7 8 9 A B C D E F
+20    ! " # $ % & ' ( ) * + , - . /
+30  0 1 2 3 4 5 6 7 8 9 : ; < = > ?
+40  @ A B C D E F G H I J K L M N O
+50  P Q R S T U V W X Y Z [ \ ] ^ _
+60  ` a b c d e f g h i j k l m n o
+70  p q r s t u v w x y z { | } ~ 
+80  €  ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ  Ž 
+90   ‘ ’ “ ” • – — ˜ ™ š › œ  ž Ÿ
+A0    ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯
+B0  ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿
+C0  À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï
+D0  Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß
+E0  à á â ã ä å æ ç è é ê ë ì í î ï
+F0  ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ
+
+</PRE>
+</BODY>
+</HTML>
diff --git a/test/sgml.html b/test/sgml.html
new file mode 100644
index 00000000..94425345
--- /dev/null
+++ b/test/sgml.html
@@ -0,0 +1,1081 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Test of some Unicode symbols enclosed as SGML entity names</TITLE>
+</HEAD>
+<BODY>
+<PRE>
+
+    This table prepared from SGML.TXT available at ftp.unicode.org
+
+         ftp://ftp.unicode.org/MAPPINGS/VENDORS/MISC/SGML.TXT
+         (if doing ftp, try cd Public/MAPPINGS/VENDORS/MISC)
+
+
+original comment:
+
+# Author: John Cowan &lt;cowan@ccil.org&gt;
+# Date: 25 July 1997
+#
+# The following table maps SGML character entities from various
+# public sets (namely, ISOamsa, ISOamsb, ISOamsc, ISOamsn, ISOamso,
+# ISOamsr, ISObox, ISOcyr1, ISOcyr2, ISOdia, ISOgrk1, ISOgrk2,
+# ISOgrk3, ISOgrk4, ISOlat1, ISOlat2, ISOnum, ISOpub, ISOtech,
+# HTMLspecial, HTMLsymbol) to corresponding Unicode characters.
+#
+# The table has four tab-separated columns:
+#	Column 1: SGML character entity name
+#	Column 2: SGML public entity set
+#	Column 3: Unicode 2.0 character code
+#	Column 4: Unicode 2.0 character name (UPPER CASE)
+# Entries which don't have Unicode equivalents have "0x????"
+# in Column 3 and a lower case description (from the public entity
+# set DTD) in Column 4.  The mapping is not reversible, because many
+# distinctions are unified away in Unicode, particularly between
+# mathematical symbols.
+#
+# The table is sorted case-blind by SGML character entity name.
+#
+# The contents of this table are drawn from various sources, and
+# are in the public domain.
+#
+<!-- Changes:
++   {"euro",    0x20AC},  /* EURO SIGN                                     */
+    {"loz",     0x25CA},  /* LOZENGE                                       */
+! /*  {"loz",   0x2727},  WHITE FOUR POINTED STAR                          */
+!  /* Warning: Duplicated &loz; entry.  HTML 4,0 defines it as U+25CA. */
+-   {"b.delta", 0x03B3},  /* GREEK SMALL LETTER GAMMA                      */
++   {"b.delta", 0x03B4},  /* GREEK SMALL LETTER DELTA                      */
+
+-->
+
+This test illuminates SGML character entities implementation in your browser.
+We sort the entities according to unicode numbers.
+You should see visible character if your display character set supports it
+or some substitution string picked up from  src/chrtrans/def7_uni.tbl.
+If you see &amp;somename; - this name is not implemented yet,
+you may search for &amp;. (Sorry, ISOgrk4 which holds a dot in its name
+seems to be nonvisible for most browsers.  Keep in mind that
+this table is much wider than in the HTML 4.0 draft).
+							Leonid Pauzner.
+
+
+0x0021    &excl;	      ISOnum	# EXCLAMATION MARK
+0x0022    &quot;	      ISOnum	# QUOTATION MARK
+0x0023    &num;	      ISOnum	# NUMBER SIGN
+0x0024    &dollar;	      ISOnum	# DOLLAR SIGN
+0x0025    &percnt;	      ISOnum	# PERCENT SIGN
+0x0026    &amp;	      ISOnum	# AMPERSAND
+0x0028    &lpar;	      ISOnum	# LEFT PARENTHESIS
+0x0029    &rpar;	      ISOnum	# RIGHT PARENTHESIS
+0x002A    &ast;	      ISOnum	# ASTERISK
+0x002B    &plus;	      ISOnum	# PLUS SIGN
+0x002C    &comma;	      ISOnum	# COMMA
+0x002D    &hyphen;	      ISOnum	# HYPHEN-MINUS
+0x002E    &period;	      ISOnum	# FULL STOP
+0x002F    &sol;	      ISOnum	# SOLIDUS
+0x003A    &colon;	      ISOnum	# COLON
+0x003B    &semi;	      ISOnum	# SEMICOLON
+0x003C    &lt;	      ISOnum	# LESS-THAN SIGN
+0x003D    &equals;	      ISOnum	# EQUALS SIGN
+0x003E    &gt;	      ISOnum	# GREATER-THAN SIGN
+0x003F    &quest;	      ISOnum	# QUESTION MARK
+0x0040    &commat;	      ISOnum	# COMMERCIAL AT
+0x005B    &lsqb;	      ISOnum	# LEFT SQUARE BRACKET
+0x005C    &bsol;	      ISOnum	# REVERSE SOLIDUS
+0x005C    &sbsol;	      ISOamso	# REVERSE SOLIDUS
+0x005D    &rsqb;	      ISOnum	# RIGHT SQUARE BRACKET
+0x005F    &lowbar;	      ISOnum	# LOW LINE
+0x0060    &grave;	      ISOdia	# GRAVE ACCENT
+0x007B    &lcub;	      ISOnum	# LEFT CURLY BRACKET
+0x007C    &verbar;	      ISOnum	# VERTICAL LINE
+0x007D    &rcub;	      ISOnum	# RIGHT CURLY BRACKET
+0x00A0    &nbsp;	      ISOnum	# NO-BREAK SPACE
+0x00A1    &iexcl;	      ISOnum	# INVERTED EXCLAMATION MARK
+0x00A2    &cent;	      ISOnum	# CENT SIGN
+0x00A3    &pound;	      ISOnum	# POUND SIGN
+0x00A4    &curren;	      ISOnum	# CURRENCY SIGN
+0x00A5    &yen;	      ISOnum	# YEN SIGN
+0x00A6    &brvbar;	      ISOnum	# BROKEN BAR
+0x00A7    &sect;	      ISOnum	# SECTION SIGN
+0x00A8    &Dot;	      ISOtech	# DIAERESIS
+0x00A8    &die;	      ISOdia	# DIAERESIS
+0x00A8    &uml;	      ISOdia	# DIAERESIS
+0x00A9    &copy;	      ISOnum	# COPYRIGHT SIGN
+0x00AA    &ordf;	      ISOnum	# FEMININE ORDINAL INDICATOR
+0x00AB    &laquo;	      ISOnum	# LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+0x00AC    &not;	      ISOnum	# NOT SIGN
+0x00AD    &shy;	      ISOnum	# SOFT HYPHEN
+0x00AE    &reg;	      ISOnum	# REGISTERED SIGN
+0x00AF    &macr;	      ISOdia	# MACRON
+0x00B0    &deg;	      ISOnum	# DEGREE SIGN
+0x00B1    &plusmn;	      ISOnum	# PLUS-MINUS SIGN
+0x00B2    &sup2;	      ISOnum	# SUPERSCRIPT TWO
+0x00B3    &sup3;	      ISOnum	# SUPERSCRIPT THREE
+0x00B4    &acute;	      ISOdia	# ACUTE ACCENT
+0x00B5    &micro;	      ISOnum	# MICRO SIGN
+0x00B6    &para;	      ISOnum	# PILCROW SIGN
+0x00B7    &middot;	      ISOnum	# MIDDLE DOT
+0x00B8    &cedil;	      ISOdia	# CEDILLA
+0x00B9    &sup1;	      ISOnum	# SUPERSCRIPT ONE
+0x00BA    &ordm;	      ISOnum	# MASCULINE ORDINAL INDICATOR
+0x00BB    &raquo;	      ISOnum	# RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+0x00BC    &frac14;	      ISOnum	# VULGAR FRACTION ONE QUARTER
+0x00BD    &frac12;	      ISOnum	# VULGAR FRACTION ONE HALF
+0x00BD    &half;	      ISOnum	# VULGAR FRACTION ONE HALF
+0x00BE    &frac34;	      ISOnum	# VULGAR FRACTION THREE QUARTERS
+0x00BF    &iquest;	      ISOnum	# INVERTED QUESTION MARK
+0x00C0    &Agrave;	      ISOlat1	# LATIN CAPITAL LETTER A WITH GRAVE
+0x00C1    &Aacute;	      ISOlat1	# LATIN CAPITAL LETTER A WITH ACUTE
+0x00C2    &Acirc;	      ISOlat1	# LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+0x00C3    &Atilde;	      ISOlat1	# LATIN CAPITAL LETTER A WITH TILDE
+0x00C4    &Auml;	      ISOlat1	# LATIN CAPITAL LETTER A WITH DIAERESIS
+0x00C5    &Aring;	      ISOlat1	# LATIN CAPITAL LETTER A WITH RING ABOVE
+0x00C6    &AElig;	      ISOlat1	# LATIN CAPITAL LETTER AE
+0x00C7    &Ccedil;	      ISOlat1	# LATIN CAPITAL LETTER C WITH CEDILLA
+0x00C8    &Egrave;	      ISOlat1	# LATIN CAPITAL LETTER E WITH GRAVE
+0x00C9    &Eacute;	      ISOlat1	# LATIN CAPITAL LETTER E WITH ACUTE
+0x00CA    &Ecirc;	      ISOlat1	# LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+0x00CB    &Euml;	      ISOlat1	# LATIN CAPITAL LETTER E WITH DIAERESIS
+0x00CC    &Igrave;	      ISOlat1	# LATIN CAPITAL LETTER I WITH GRAVE
+0x00CD    &Iacute;	      ISOlat1	# LATIN CAPITAL LETTER I WITH ACUTE
+0x00CE    &Icirc;	      ISOlat1	# LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+0x00CF    &Iuml;	      ISOlat1	# LATIN CAPITAL LETTER I WITH DIAERESIS
+0x00D0    &ETH;	      ISOlat1	# LATIN CAPITAL LETTER ETH
+0x00D1    &Ntilde;	      ISOlat1	# LATIN CAPITAL LETTER N WITH TILDE
+0x00D2    &Ograve;	      ISOlat1	# LATIN CAPITAL LETTER O WITH GRAVE
+0x00D3    &Oacute;	      ISOlat1	# LATIN CAPITAL LETTER O WITH ACUTE
+0x00D4    &Ocirc;	      ISOlat1	# LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+0x00D5    &Otilde;	      ISOlat1	# LATIN CAPITAL LETTER O WITH TILDE
+0x00D6    &Ouml;	      ISOlat1	# LATIN CAPITAL LETTER O WITH DIAERESIS
+0x00D7    &times;	      ISOnum	# MULTIPLICATION SIGN
+0x00D8    &Oslash;	      ISOlat1	# LATIN CAPITAL LETTER O WITH STROKE
+0x00D9    &Ugrave;	      ISOlat1	# LATIN CAPITAL LETTER U WITH GRAVE
+0x00DA    &Uacute;	      ISOlat1	# LATIN CAPITAL LETTER U WITH ACUTE
+0x00DB    &Ucirc;	      ISOlat1	# LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+0x00DC    &Uuml;	      ISOlat1	# LATIN CAPITAL LETTER U WITH DIAERESIS
+0x00DD    &Yacute;	      ISOlat1	# LATIN CAPITAL LETTER Y WITH ACUTE
+0x00DE    &THORN;	      ISOlat1	# LATIN CAPITAL LETTER THORN
+0x00DF    &szlig;	      ISOlat1	# LATIN SMALL LETTER SHARP S
+0x00E0    &agrave;	      ISOlat1	# LATIN SMALL LETTER A WITH GRAVE
+0x00E1    &aacute;	      ISOlat1	# LATIN SMALL LETTER A WITH ACUTE
+0x00E2    &acirc;	      ISOlat1	# LATIN SMALL LETTER A WITH CIRCUMFLEX
+0x00E3    &atilde;	      ISOlat1	# LATIN SMALL LETTER A WITH TILDE
+0x00E4    &auml;	      ISOlat1	# LATIN SMALL LETTER A WITH DIAERESIS
+0x00E5    &aring;	      ISOlat1	# LATIN SMALL LETTER A WITH RING ABOVE
+0x00E6    &aelig;	      ISOlat1	# LATIN SMALL LETTER AE
+0x00E7    &ccedil;	      ISOlat1	# LATIN SMALL LETTER C WITH CEDILLA
+0x00E8    &egrave;	      ISOlat1	# LATIN SMALL LETTER E WITH GRAVE
+0x00E9    &eacute;	      ISOlat1	# LATIN SMALL LETTER E WITH ACUTE
+0x00EA    &ecirc;	      ISOlat1	# LATIN SMALL LETTER E WITH CIRCUMFLEX
+0x00EB    &euml;	      ISOlat1	# LATIN SMALL LETTER E WITH DIAERESIS
+0x00EC    &igrave;	      ISOlat1	# LATIN SMALL LETTER I WITH GRAVE
+0x00ED    &iacute;	      ISOlat1	# LATIN SMALL LETTER I WITH ACUTE
+0x00EE    &icirc;	      ISOlat1	# LATIN SMALL LETTER I WITH CIRCUMFLEX
+0x00EF    &iuml;	      ISOlat1	# LATIN SMALL LETTER I WITH DIAERESIS
+0x00F0    &eth;	      ISOlat1	# LATIN SMALL LETTER ETH
+0x00F1    &ntilde;	      ISOlat1	# LATIN SMALL LETTER N WITH TILDE
+0x00F2    &ograve;	      ISOlat1	# LATIN SMALL LETTER O WITH GRAVE
+0x00F3    &oacute;	      ISOlat1	# LATIN SMALL LETTER O WITH ACUTE
+0x00F4    &ocirc;	      ISOlat1	# LATIN SMALL LETTER O WITH CIRCUMFLEX
+0x00F5    &otilde;	      ISOlat1	# LATIN SMALL LETTER O WITH TILDE
+0x00F6    &ouml;	      ISOlat1	# LATIN SMALL LETTER O WITH DIAERESIS
+0x00F7    &divide;	      ISOnum	# DIVISION SIGN
+0x00F8    &oslash;	      ISOlat1	# LATIN SMALL LETTER O WITH STROKE
+0x00F9    &ugrave;	      ISOlat1	# LATIN SMALL LETTER U WITH GRAVE
+0x00FA    &uacute;	      ISOlat1	# LATIN SMALL LETTER U WITH ACUTE
+0x00FB    &ucirc;	      ISOlat1	# LATIN SMALL LETTER U WITH CIRCUMFLEX
+0x00FC    &uuml;	      ISOlat1	# LATIN SMALL LETTER U WITH DIAERESIS
+0x00FD    &yacute;	      ISOlat1	# LATIN SMALL LETTER Y WITH ACUTE
+0x00FE    &thorn;	      ISOlat1	# LATIN SMALL LETTER THORN
+0x00FF    &yuml;	      ISOlat1	# LATIN SMALL LETTER Y WITH DIAERESIS
+0x0100    &Amacr;	      ISOlat2	# LATIN CAPITAL LETTER A WITH MACRON
+0x0101    &amacr;	      ISOlat2	# LATIN SMALL LETTER A WITH MACRON
+0x0102    &Abreve;	      ISOlat2	# LATIN CAPITAL LETTER A WITH BREVE
+0x0103    &abreve;	      ISOlat2	# LATIN SMALL LETTER A WITH BREVE
+0x0104    &Aogon;	      ISOlat2	# LATIN CAPITAL LETTER A WITH OGONEK
+0x0105    &aogon;	      ISOlat2	# LATIN SMALL LETTER A WITH OGONEK
+0x0106    &Cacute;	      ISOlat2	# LATIN CAPITAL LETTER C WITH ACUTE
+0x0107    &cacute;	      ISOlat2	# LATIN SMALL LETTER C WITH ACUTE
+0x0108    &Ccirc;	      ISOlat2	# LATIN CAPITAL LETTER C WITH CIRCUMFLEX
+0x0109    &ccirc;	      ISOlat2	# LATIN SMALL LETTER C WITH CIRCUMFLEX
+0x010A    &Cdot;	      ISOlat2	# LATIN CAPITAL LETTER C WITH DOT ABOVE
+0x010B    &cdot;	      ISOlat2	# LATIN SMALL LETTER C WITH DOT ABOVE
+0x010C    &Ccaron;	      ISOlat2	# LATIN CAPITAL LETTER C WITH CARON
+0x010D    &ccaron;	      ISOlat2	# LATIN SMALL LETTER C WITH CARON
+0x010E    &Dcaron;	      ISOlat2	# LATIN CAPITAL LETTER D WITH CARON
+0x010F    &dcaron;	      ISOlat2	# LATIN SMALL LETTER D WITH CARON
+0x0110    &Dstrok;	      ISOlat2	# LATIN CAPITAL LETTER D WITH STROKE
+0x0111    &dstrok;	      ISOlat2	# LATIN SMALL LETTER D WITH STROKE
+0x0112    &Emacr;	      ISOlat2	# LATIN CAPITAL LETTER E WITH MACRON
+0x0113    &emacr;	      ISOlat2	# LATIN SMALL LETTER E WITH MACRON
+0x0116    &Edot;	      ISOlat2	# LATIN CAPITAL LETTER E WITH DOT ABOVE
+0x0117    &edot;	      ISOlat2	# LATIN SMALL LETTER E WITH DOT ABOVE
+0x0118    &Eogon;	      ISOlat2	# LATIN CAPITAL LETTER E WITH OGONEK
+0x0119    &eogon;	      ISOlat2	# LATIN SMALL LETTER E WITH OGONEK
+0x011A    &Ecaron;	      ISOlat2	# LATIN CAPITAL LETTER E WITH CARON
+0x011B    &ecaron;	      ISOlat2	# LATIN SMALL LETTER E WITH CARON
+0x011C    &Gcirc;	      ISOlat2	# LATIN CAPITAL LETTER G WITH CIRCUMFLEX
+0x011D    &gcirc;	      ISOlat2	# LATIN SMALL LETTER G WITH CIRCUMFLEX
+0x011E    &Gbreve;	      ISOlat2	# LATIN CAPITAL LETTER G WITH BREVE
+0x011F    &gbreve;	      ISOlat2	# LATIN SMALL LETTER G WITH BREVE
+0x0120    &Gdot;	      ISOlat2	# LATIN CAPITAL LETTER G WITH DOT ABOVE
+0x0121    &gdot;	      ISOlat2	# LATIN SMALL LETTER G WITH DOT ABOVE
+0x0122    &Gcedil;	      ISOlat2	# LATIN CAPITAL LETTER G WITH CEDILLA
+0x0123    &gcedil;	      ISOlat2	# LATIN SMALL LETTER G WITH CEDILLA
+0x0124    &Hcirc;	      ISOlat2	# LATIN CAPITAL LETTER H WITH CIRCUMFLEX
+0x0125    &hcirc;	      ISOlat2	# LATIN SMALL LETTER H WITH CIRCUMFLEX
+0x0126    &Hstrok;	      ISOlat2	# LATIN CAPITAL LETTER H WITH STROKE
+0x0127    &hstrok;	      ISOlat2	# LATIN SMALL LETTER H WITH STROKE
+0x0128    &Itilde;	      ISOlat2	# LATIN CAPITAL LETTER I WITH TILDE
+0x0129    &itilde;	      ISOlat2	# LATIN SMALL LETTER I WITH TILDE
+0x012A    &Imacr;	      ISOlat2	# LATIN CAPITAL LETTER I WITH MACRON
+0x012B    &imacr;	      ISOlat2	# LATIN SMALL LETTER I WITH MACRON
+0x012E    &Iogon;	      ISOlat2	# LATIN CAPITAL LETTER I WITH OGONEK
+0x012F    &iogon;	      ISOlat2	# LATIN SMALL LETTER I WITH OGONEK
+0x0130    &Idot;	      ISOlat2	# LATIN CAPITAL LETTER I WITH DOT ABOVE
+0x0131    &inodot;	      ISOamso	# LATIN SMALL LETTER DOTLESS I
+0x0131    &inodot;	      ISOlat2	# LATIN SMALL LETTER DOTLESS I
+0x0132    &IJlig;	      ISOlat2	# LATIN CAPITAL LIGATURE IJ
+0x0133    &ijlig;	      ISOlat2	# LATIN SMALL LIGATURE IJ
+0x0134    &Jcirc;	      ISOlat2	# LATIN CAPITAL LETTER J WITH CIRCUMFLEX
+0x0135    &jcirc;	      ISOlat2	# LATIN SMALL LETTER J WITH CIRCUMFLEX
+0x0136    &Kcedil;	      ISOlat2	# LATIN CAPITAL LETTER K WITH CEDILLA
+0x0137    &kcedil;	      ISOlat2	# LATIN SMALL LETTER K WITH CEDILLA
+0x0138    &kgreen;	      ISOlat2	# LATIN SMALL LETTER KRA
+0x0139    &Lacute;	      ISOlat2	# LATIN CAPITAL LETTER L WITH ACUTE
+0x013A    &lacute;	      ISOlat2	# LATIN SMALL LETTER L WITH ACUTE
+0x013B    &Lcedil;	      ISOlat2	# LATIN CAPITAL LETTER L WITH CEDILLA
+0x013C    &lcedil;	      ISOlat2	# LATIN SMALL LETTER L WITH CEDILLA
+0x013D    &Lcaron;	      ISOlat2	# LATIN CAPITAL LETTER L WITH CARON
+0x013E    &lcaron;	      ISOlat2	# LATIN SMALL LETTER L WITH CARON
+0x013F    &Lmidot;	      ISOlat2	# LATIN CAPITAL LETTER L WITH MIDDLE DOT
+0x0140    &lmidot;	      ISOlat2	# LATIN SMALL LETTER L WITH MIDDLE DOT
+0x0141    &Lstrok;	      ISOlat2	# LATIN CAPITAL LETTER L WITH STROKE
+0x0142    &lstrok;	      ISOlat2	# LATIN SMALL LETTER L WITH STROKE
+0x0143    &Nacute;	      ISOlat2	# LATIN CAPITAL LETTER N WITH ACUTE
+0x0144    &nacute;	      ISOlat2	# LATIN SMALL LETTER N WITH ACUTE
+0x0145    &Ncedil;	      ISOlat2	# LATIN CAPITAL LETTER N WITH CEDILLA
+0x0146    &ncedil;	      ISOlat2	# LATIN SMALL LETTER N WITH CEDILLA
+0x0147    &Ncaron;	      ISOlat2	# LATIN CAPITAL LETTER N WITH CARON
+0x0148    &ncaron;	      ISOlat2	# LATIN SMALL LETTER N WITH CARON
+0x0149    &napos;	      ISOlat2	# LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
+0x014A    &ENG;	      ISOlat2	# LATIN CAPITAL LETTER ENG
+0x014B    &eng;	      ISOlat2	# LATIN SMALL LETTER ENG
+0x014C    &Omacr;	      ISOlat2	# LATIN CAPITAL LETTER O WITH MACRON
+0x014D    &omacr;	      ISOlat2	# LATIN SMALL LETTER O WITH MACRON
+0x0150    &Odblac;	      ISOlat2	# LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
+0x0151    &odblac;	      ISOlat2	# LATIN SMALL LETTER O WITH DOUBLE ACUTE
+0x0152    &OElig;	      ISOlat2	# LATIN CAPITAL LIGATURE OE
+0x0153    &oelig;	      ISOlat2	# LATIN SMALL LIGATURE OE
+0x0154    &Racute;	      ISOlat2	# LATIN CAPITAL LETTER R WITH ACUTE
+0x0155    &racute;	      ISOlat2	# LATIN SMALL LETTER R WITH ACUTE
+0x0156    &Rcedil;	      ISOlat2	# LATIN CAPITAL LETTER R WITH CEDILLA
+0x0157    &rcedil;	      ISOlat2	# LATIN SMALL LETTER R WITH CEDILLA
+0x0158    &Rcaron;	      ISOlat2	# LATIN CAPITAL LETTER R WITH CARON
+0x0159    &rcaron;	      ISOlat2	# LATIN SMALL LETTER R WITH CARON
+0x015A    &Sacute;	      ISOlat2	# LATIN CAPITAL LETTER S WITH ACUTE
+0x015B    &sacute;	      ISOlat2	# LATIN SMALL LETTER S WITH ACUTE
+0x015C    &Scirc;	      ISOlat2	# LATIN CAPITAL LETTER S WITH CIRCUMFLEX
+0x015D    &scirc;	      ISOlat2	# LATIN SMALL LETTER S WITH CIRCUMFLEX
+0x015E    &Scedil;	      ISOlat2	# LATIN CAPITAL LETTER S WITH CEDILLA
+0x015F    &scedil;	      ISOlat2	# LATIN SMALL LETTER S WITH CEDILLA
+0x0160    &Scaron;	      ISOlat2	# LATIN CAPITAL LETTER S WITH CARON
+0x0161    &scaron;	      ISOlat2	# LATIN SMALL LETTER S WITH CARON
+0x0162    &Tcedil;	      ISOlat2	# LATIN CAPITAL LETTER T WITH CEDILLA
+0x0163    &tcedil;	      ISOlat2	# LATIN SMALL LETTER T WITH CEDILLA
+0x0164    &Tcaron;	      ISOlat2	# LATIN CAPITAL LETTER T WITH CARON
+0x0165    &tcaron;	      ISOlat2	# LATIN SMALL LETTER T WITH CARON
+0x0166    &Tstrok;	      ISOlat2	# LATIN CAPITAL LETTER T WITH STROKE
+0x0167    &tstrok;	      ISOlat2	# LATIN SMALL LETTER T WITH STROKE
+0x0168    &Utilde;	      ISOlat2	# LATIN CAPITAL LETTER U WITH TILDE
+0x0169    &utilde;	      ISOlat2	# LATIN SMALL LETTER U WITH TILDE
+0x016A    &Umacr;	      ISOlat2	# LATIN CAPITAL LETTER U WITH MACRON
+0x016B    &umacr;	      ISOlat2	# LATIN SMALL LETTER U WITH MACRON
+0x016C    &Ubreve;	      ISOlat2	# LATIN CAPITAL LETTER U WITH BREVE
+0x016D    &ubreve;	      ISOlat2	# LATIN SMALL LETTER U WITH BREVE
+0x016E    &Uring;	      ISOlat2	# LATIN CAPITAL LETTER U WITH RING ABOVE
+0x016F    &uring;	      ISOlat2	# LATIN SMALL LETTER U WITH RING ABOVE
+0x0170    &Udblac;	      ISOlat2	# LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
+0x0171    &udblac;	      ISOlat2	# LATIN SMALL LETTER U WITH DOUBLE ACUTE
+0x0172    &Uogon;	      ISOlat2	# LATIN CAPITAL LETTER U WITH OGONEK
+0x0173    &uogon;	      ISOlat2	# LATIN SMALL LETTER U WITH OGONEK
+0x0174    &Wcirc;	      ISOlat2	# LATIN CAPITAL LETTER W WITH CIRCUMFLEX
+0x0175    &wcirc;	      ISOlat2	# LATIN SMALL LETTER W WITH CIRCUMFLEX
+0x0176    &Ycirc;	      ISOlat2	# LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
+0x0177    &ycirc;	      ISOlat2	# LATIN SMALL LETTER Y WITH CIRCUMFLEX
+0x0178    &Yuml;	      ISOlat2	# LATIN CAPITAL LETTER Y WITH DIAERESIS
+0x0179    &Zacute;	      ISOlat2	# LATIN CAPITAL LETTER Z WITH ACUTE
+0x017A    &zacute;	      ISOlat2	# LATIN SMALL LETTER Z WITH ACUTE
+0x017B    &Zdot;	      ISOlat2	# LATIN CAPITAL LETTER Z WITH DOT ABOVE
+0x017C    &zdot;	      ISOlat2	# LATIN SMALL LETTER Z WITH DOT ABOVE
+0x017D    &Zcaron;	      ISOlat2	# LATIN CAPITAL LETTER Z WITH CARON
+0x017E    &zcaron;	      ISOlat2	# LATIN SMALL LETTER Z WITH CARON
+0x0192    &fnof;	      ISOtech	# LATIN SMALL LETTER F WITH HOOK
+0x01F5    &gacute;	      ISOlat2	# LATIN SMALL LETTER G WITH ACUTE
+0x02BC    &apos;	      ISOnum	# MODIFIER LETTER APOSTROPHE
+0x02C6    &circ;	      ISOdia	# MODIFIER LETTER CIRCUMFLEX ACCENT
+0x02C7    &caron;	      ISOdia	# CARON
+0x02D8    &breve;	      ISOdia	# BREVE
+0x02D9    &dot;	      ISOdia	# DOT ABOVE
+0x02DA    &ring;	      ISOdia	# RING ABOVE
+0x02DB    &ogon;	      ISOdia	# OGONEK
+0x02DC    &tilde;	      ISOdia	# SMALL TILDE
+0x02DD    &dblac;	      ISOdia	# DOUBLE ACUTE ACCENT
+0x0386    &Aacgr;	      ISOgrk2	# GREEK CAPITAL LETTER ALPHA WITH TONOS
+0x0388    &Eacgr;	      ISOgrk2	# GREEK CAPITAL LETTER EPSILON WITH TONOS
+0x0389    &EEacgr;	      ISOgrk2	# GREEK CAPITAL LETTER ETA WITH TONOS
+0x038A    &Iacgr;	      ISOgrk2	# GREEK CAPITAL LETTER IOTA WITH TONOS
+0x038C    &Oacgr;	      ISOgrk2	# GREEK CAPITAL LETTER OMICRON WITH TONOS
+0x038E    &Uacgr;	      ISOgrk2	# GREEK CAPITAL LETTER UPSILON WITH TONOS
+0x038F    &OHacgr;	      ISOgrk2	# GREEK CAPITAL LETTER OMEGA WITH TONOS
+0x0390    &idiagr;	      ISOgrk2	# GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+0x0391    &Agr;	      ISOgrk1	# GREEK CAPITAL LETTER ALPHA
+0x0391    &Alpha;	      HTMLsymbol	# GREEK CAPITAL LETTER ALPHA
+0x0392    &Beta;	      HTMLsymbol	# GREEK CAPITAL LETTER BETA
+0x0392    &Bgr;	      ISOgrk1	# GREEK CAPITAL LETTER BETA
+0x0393    &Gamma;	      ISOgrk3	# GREEK CAPITAL LETTER GAMMA
+0x0393    &Ggr;	      ISOgrk1	# GREEK CAPITAL LETTER GAMMA
+0x0393    &b.Gamma;	      ISOgrk4	# GREEK CAPITAL LETTER GAMMA
+0x0394    &Delta;	      ISOgrk3	# GREEK CAPITAL LETTER DELTA
+0x0394    &Dgr;	      ISOgrk1	# GREEK CAPITAL LETTER DELTA
+0x0394    &b.Delta;	      ISOgrk4	# GREEK CAPITAL LETTER DELTA
+0x0395    &Egr;	      ISOgrk1	# GREEK CAPITAL LETTER EPSILON
+0x0395    &Epsilon;	      HTMLsymbol	# GREEK CAPITAL LETTER EPSILON
+0x0396    &Zeta;	      HTMLsymbol	# GREEK CAPITAL LETTER ZETA
+0x0396    &Zgr;	      ISOgrk1	# GREEK CAPITAL LETTER ZETA
+0x0397    &EEgr;	      ISOgrk1	# GREEK CAPITAL LETTER ETA
+0x0397    &Eta;	      HTMLsymbol	# GREEK CAPITAL LETTER ETA
+0x0398    &THgr;	      ISOgrk1	# GREEK CAPITAL LETTER THETA
+0x0398    &Theta;	      ISOgrk3	# GREEK CAPITAL LETTER THETA
+0x0398    &b.Theta;	      ISOgrk4	# GREEK CAPITAL LETTER THETA
+0x0399    &Igr;	      ISOgrk1	# GREEK CAPITAL LETTER IOTA
+0x0399    &Iota;	      HTMLsymbol	# GREEK CAPITAL LETTER IOTA
+0x039A    &Kappa;	      HTMLsymbol	# GREEK CAPITAL LETTER KAPPA
+0x039A    &Kgr;	      ISOgrk1	# GREEK CAPITAL LETTER KAPPA
+0x039B    &Lambda;	      ISOgrk3	# GREEK CAPITAL LETTER LAMDA
+0x039B    &Lgr;	      ISOgrk1	# GREEK CAPITAL LETTER LAMDA
+0x039B    &b.Lambda;	      ISOgrk4	# GREEK CAPITAL LETTER LAMDA
+0x039C    &Mgr;	      ISOgrk1	# GREEK CAPITAL LETTER MU
+0x039C    &Mu;	      HTMLsymbol	# GREEK CAPITAL LETTER MU
+0x039D    &Ngr;	      ISOgrk1	# GREEK CAPITAL LETTER NU
+0x039D    &Nu;	      HTMLsymbol	# GREEK CAPITAL LETTER NU
+0x039E    &Xgr;	      ISOgrk1	# GREEK CAPITAL LETTER XI
+0x039E    &Xi;	      ISOgrk3	# GREEK CAPITAL LETTER XI
+0x039E    &b.Xi;	      ISOgrk4	# GREEK CAPITAL LETTER XI
+0x039F    &Ogr;	      ISOgrk1	# GREEK CAPITAL LETTER OMICRON
+0x039F    &Omicron;	      HTMLsymbol	# GREEK CAPITAL LETTER OMICRON
+0x03A0    &Pgr;	      ISOgrk1	# GREEK CAPITAL LETTER PI
+0x03A0    &Pi;	      ISOgrk3	# GREEK CAPITAL LETTER PI
+0x03A0    &b.Pi;	      ISOgrk4	# GREEK CAPITAL LETTER PI
+0x03A1    &Rgr;	      ISOgrk1	# GREEK CAPITAL LETTER RHO
+0x03A1    &Rho;	      HTMLsymbol	# GREEK CAPITAL LETTER RHO
+0x03A3    &Sgr;	      ISOgrk1	# GREEK CAPITAL LETTER SIGMA
+0x03A3    &Sigma;	      ISOgrk3	# GREEK CAPITAL LETTER SIGMA
+0x03A3    &b.Sigma;	      ISOgrk4	# GREEK CAPITAL LETTER SIGMA
+0x03A4    &Tau;	      HTMLsymbol	# GREEK CAPITAL LETTER TAU
+0x03A4    &Tgr;	      ISOgrk1	# GREEK CAPITAL LETTER TAU
+0x03A5    &Ugr;	      ISOgrk1	# GREEK CAPITAL LETTER UPSILON
+0x03A5    &Upsi;	      ISOgrk3	# GREEK CAPITAL LETTER UPSILON
+0x03A5    &Upsilon;	      HTMLsymbol	# GREEK CAPITAL LETTER UPSILON
+0x03A5    &b.Upsi;	      ISOgrk4	# GREEK CAPITAL LETTER UPSILON
+0x03A6    &PHgr;	      ISOgrk1	# GREEK CAPITAL LETTER PHI
+0x03A6    &Phi;	      ISOgrk3	# GREEK CAPITAL LETTER PHI
+0x03A6    &b.Phi;	      ISOgrk4	# GREEK CAPITAL LETTER PHI
+0x03A7    &Chi;	      HTMLsymbol	# GREEK CAPITAL LETTER CHI
+0x03A7    &KHgr;	      ISOgrk1	# GREEK CAPITAL LETTER CHI
+0x03A8    &PSgr;	      ISOgrk1	# GREEK CAPITAL LETTER PSI
+0x03A8    &Psi;	      ISOgrk3	# GREEK CAPITAL LETTER PSI
+0x03A8    &b.Psi;	      ISOgrk4	# GREEK CAPITAL LETTER PSI
+0x03A9    &OHgr;	      ISOgrk1	# GREEK CAPITAL LETTER OMEGA
+0x03A9    &Omega;	      ISOgrk3	# GREEK CAPITAL LETTER OMEGA
+0x03A9    &b.Omega;	      ISOgrk4	# GREEK CAPITAL LETTER OMEGA
+0x03AA    &Idigr;	      ISOgrk2	# GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
+0x03AB    &Udigr;	      ISOgrk2	# GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
+0x03AC    &aacgr;	      ISOgrk2	# GREEK SMALL LETTER ALPHA WITH TONOS
+0x03AD    &eacgr;	      ISOgrk2	# GREEK SMALL LETTER EPSILON WITH TONOS
+0x03AE    &eeacgr;	      ISOgrk2	# GREEK SMALL LETTER ETA WITH TONOS
+0x03AF    &iacgr;	      ISOgrk2	# GREEK SMALL LETTER IOTA WITH TONOS
+0x03B0    &udiagr;	      ISOgrk2	# GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND
+0x03B1    &agr;	      ISOgrk1	# GREEK SMALL LETTER ALPHA
+0x03B1    &alpha;	      ISOgrk3	# GREEK SMALL LETTER ALPHA
+0x03B1    &b.alpha;	      ISOgrk4	# GREEK SMALL LETTER ALPHA
+0x03B2    &b.beta;	      ISOgrk4	# GREEK SMALL LETTER BETA
+0x03B2    &beta;	      ISOgrk3	# GREEK SMALL LETTER BETA
+0x03B2    &bgr;	      ISOgrk1	# GREEK SMALL LETTER BETA
+0x03B3    &b.gamma;	      ISOgrk4	# GREEK SMALL LETTER GAMMA
+0x03B3    &gamma;	      ISOgrk3	# GREEK SMALL LETTER GAMMA
+0x03B3    &ggr;	      ISOgrk1	# GREEK SMALL LETTER GAMMA
+0x03B4    &b.delta;	      ISOgrk4   # GREEK SMALL LETTER DELTA
+0x03B4    &delta;	      ISOgrk3	# GREEK SMALL LETTER DELTA
+0x03B4    &dgr;	      ISOgrk1	# GREEK SMALL LETTER DELTA
+0x03B5    &b.epsi;	      ISOgrk4	# GREEK SMALL LETTER EPSILON
+0x03B5    &b.epsis;	      ISOgrk4	# GREEK SMALL LETTER EPSILON
+0x03B5    &b.epsiv;	      ISOgrk4	# GREEK SMALL LETTER EPSILON
+0x03B5    &egr;	      ISOgrk1	# GREEK SMALL LETTER EPSILON
+0x03B5    &epsi;	      ISOgrk3	# GREEK SMALL LETTER EPSILON
+0x03B5    &epsilon;	      HTMLsymbol	# GREEK SMALL LETTER EPSILON
+0x03B6    &b.zeta;	      ISOgrk4	# GREEK SMALL LETTER ZETA
+0x03B6    &zeta;	      ISOgrk3	# GREEK SMALL LETTER ZETA
+0x03B6    &zgr;	      ISOgrk1	# GREEK SMALL LETTER ZETA
+0x03B7    &b.eta;	      ISOgrk4	# GREEK SMALL LETTER ETA
+0x03B7    &eegr;	      ISOgrk1	# GREEK SMALL LETTER ETA
+0x03B7    &eta;	      ISOgrk3	# GREEK SMALL LETTER ETA
+0x03B8    &b.thetas;	      ISOgrk4	# GREEK SMALL LETTER THETA
+0x03B8    &theta;	      HTMLsymbol	# GREEK SMALL LETTER THETA
+0x03B8    &thetas;	      ISOgrk3	# GREEK SMALL LETTER THETA
+0x03B8    &thgr;	      ISOgrk1	# GREEK SMALL LETTER THETA
+0x03B9    &b.iota;	      ISOgrk4	# GREEK SMALL LETTER IOTA
+0x03B9    &igr;	      ISOgrk1	# GREEK SMALL LETTER IOTA
+0x03B9    &iota;	      ISOgrk3	# GREEK SMALL LETTER IOTA
+0x03BA    &b.kappa;	      ISOgrk4	# GREEK SMALL LETTER KAPPA
+0x03BA    &kappa;	      ISOgrk3	# GREEK SMALL LETTER KAPPA
+0x03BA    &kgr;	      ISOgrk1	# GREEK SMALL LETTER KAPPA
+0x03BB    &b.lambda;	      ISOgrk4	# GREEK SMALL LETTER LAMDA
+0x03BB    &lambda;	      ISOgrk3	# GREEK SMALL LETTER LAMDA
+0x03BB    &lgr;	      ISOgrk1	# GREEK SMALL LETTER LAMDA
+0x03BC    &b.mu;	      ISOgrk4	# GREEK SMALL LETTER MU
+0x03BC    &mgr;	      ISOgrk1	# GREEK SMALL LETTER MU
+0x03BC    &mu;	      ISOgrk3	# GREEK SMALL LETTER MU
+0x03BD    &b.nu;	      ISOgrk4	# GREEK SMALL LETTER NU
+0x03BD    &ngr;	      ISOgrk1	# GREEK SMALL LETTER NU
+0x03BD    &nu;	      ISOgrk3	# GREEK SMALL LETTER NU
+0x03BE    &b.xi;	      ISOgrk4	# GREEK SMALL LETTER XI
+0x03BE    &xgr;	      ISOgrk1	# GREEK SMALL LETTER XI
+0x03BE    &xi;	      ISOgrk3	# GREEK SMALL LETTER XI
+0x03BF    &ogr;	      ISOgrk1	# GREEK SMALL LETTER OMICRON
+0x03BF    &omicron;	      HTMLsymbol	# GREEK SMALL LETTER OMICRON
+0x03C0    &b.pi;	      ISOgrk4	# GREEK SMALL LETTER PI
+0x03C0    &pgr;	      ISOgrk1	# GREEK SMALL LETTER PI
+0x03C0    &pi;	      ISOgrk3	# GREEK SMALL LETTER PI
+0x03C1    &b.rho;	      ISOgrk4	# GREEK SMALL LETTER RHO
+0x03C1    &rgr;	      ISOgrk1	# GREEK SMALL LETTER RHO
+0x03C1    &rho;	      ISOgrk3	# GREEK SMALL LETTER RHO
+0x03C2    &b.sigmav;	      ISOgrk4	# GREEK SMALL LETTER FINAL SIGMA
+0x03C2    &sfgr;	      ISOgrk1	# GREEK SMALL LETTER FINAL SIGMA
+0x03C2    &sigmaf;	      HTMLsymbol	# GREEK SMALL LETTER FINAL SIGMA
+0x03C2    &sigmav;	      ISOgrk3	# GREEK SMALL LETTER FINAL SIGMA
+0x03C3    &b.sigma;	      ISOgrk4	# GREEK SMALL LETTER SIGMA
+0x03C3    &sgr;	      ISOgrk1	# GREEK SMALL LETTER SIGMA
+0x03C3    &sigma;	      ISOgrk3	# GREEK SMALL LETTER SIGMA
+0x03C4    &b.tau;	      ISOgrk4	# GREEK SMALL LETTER TAU
+0x03C4    &tau;	      ISOgrk3	# GREEK SMALL LETTER TAU
+0x03C4    &tgr;	      ISOgrk1	# GREEK SMALL LETTER TAU
+0x03C5    &b.upsi;	      ISOgrk4	# GREEK SMALL LETTER UPSILON
+0x03C5    &ugr;	      ISOgrk1	# GREEK SMALL LETTER UPSILON
+0x03C5    &upsi;	      ISOgrk3	# GREEK SMALL LETTER UPSILON
+0x03C5    &upsilon;	      HTMLsymbol	# GREEK SMALL LETTER UPSILON
+0x03C6    &b.phis;	      ISOgrk4	# GREEK SMALL LETTER PHI
+0x03C6    &phgr;	      ISOgrk1	# GREEK SMALL LETTER PHI
+0x03C6    &phi;	      HTMLsymbol	# GREEK SMALL LETTER PHI
+0x03C6    &phis;	      ISOgrk3	# GREEK SMALL LETTER PHI
+0x03C7    &b.chi;	      ISOgrk4	# GREEK SMALL LETTER CHI
+0x03C7    &chi;	      ISOgrk3	# GREEK SMALL LETTER CHI
+0x03C7    &khgr;	      ISOgrk1	# GREEK SMALL LETTER CHI
+0x03C8    &b.psi;	      ISOgrk4	# GREEK SMALL LETTER PSI
+0x03C8    &psgr;	      ISOgrk1	# GREEK SMALL LETTER PSI
+0x03C8    &psi;	      ISOgrk3	# GREEK SMALL LETTER PSI
+0x03C9    &ohgr;	      ISOgrk1	# GREEK SMALL LETTER OMEGA
+0x03C9    &omega;	      ISOgrk3	# GREEK SMALL LETTER OMEGA
+0x03CA    &idigr;	      ISOgrk2	# GREEK SMALL LETTER IOTA WITH DIALYTIKA
+0x03CB    &udigr;	      ISOgrk2	# GREEK SMALL LETTER UPSILON WITH DIALYTIKA
+0x03CC    &oacgr;	      ISOgrk2	# GREEK SMALL LETTER OMICRON WITH TONOS
+0x03CD    &uacgr;	      ISOgrk2	# GREEK SMALL LETTER UPSILON WITH TONOS
+0x03CE    &b.omega;	      ISOgrk4	# GREEK SMALL LETTER OMEGA WITH TONOS
+0x03CE    &ohacgr;	      ISOgrk2	# GREEK SMALL LETTER OMEGA WITH TONOS
+0x03D1    &b.thetav;	      ISOgrk4	# GREEK THETA SYMBOL
+0x03D1    &thetasym;	      HTMLsymbol	# GREEK THETA SYMBOL
+0x03D1    &thetav;	      ISOgrk3	# GREEK THETA SYMBOL
+0x03D2    &upsih;	      HTMLsymbol	# GREEK UPSILON WITH HOOK SYMBOL
+0x03D5    &b.phiv;	      ISOgrk4	# GREEK PHI SYMBOL
+0x03D5    &phiv;	      ISOgrk3	# GREEK PHI SYMBOL
+0x03D6    &b.piv;	      ISOgrk4	# GREEK PI SYMBOL
+0x03D6    &piv;	      ISOgrk3	# GREEK PI SYMBOL
+0x03DC    &b.gammad;	      ISOgrk4	# GREEK LETTER DIGAMMA
+0x03DC    &gammad;	      ISOgrk3	# GREEK LETTER DIGAMMA
+0x03F0    &b.kappav;	      ISOgrk4	# GREEK KAPPA SYMBOL
+0x03F0    &kappav;	      ISOgrk3	# GREEK KAPPA SYMBOL
+0x03F1    &b.rhov;	      ISOgrk4	# GREEK RHO SYMBOL
+0x03F1    &rhov;	      ISOgrk3	# GREEK RHO SYMBOL
+0x0401    &IOcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER IO
+0x0402    &DJcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER DJE
+0x0403    &GJcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER GJE
+0x0404    &Jukcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER UKRAINIAN IE
+0x0405    &DScy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER DZE
+0x0406    &Iukcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+0x0407    &YIcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER YI
+0x0408    &Jsercy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER JE
+0x0409    &LJcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER LJE
+0x040A    &NJcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER NJE
+0x040B    &TSHcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER TSHE
+0x040C    &KJcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER KJE
+0x040E    &Ubrcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER SHORT U
+0x040F    &DZcy;	      ISOcyr2	# CYRILLIC CAPITAL LETTER DZHE
+0x0410    &Acy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER A
+0x0411    &Bcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER BE
+0x0412    &Vcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER VE
+0x0413    &Gcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER GHE
+0x0414    &Dcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER DE
+0x0415    &IEcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER IE
+0x0416    &ZHcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER ZHE
+0x0417    &Zcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER ZE
+0x0418    &Icy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER I
+0x0419    &Jcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER SHORT I
+0x041A    &Kcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER KA
+0x041B    &Lcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER EL
+0x041C    &Mcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER EM
+0x041D    &Ncy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER EN
+0x041E    &Ocy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER O
+0x041F    &Pcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER PE
+0x0420    &Rcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER ER
+0x0421    &Scy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER ES
+0x0422    &Tcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER TE
+0x0423    &Ucy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER U
+0x0424    &Fcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER EF
+0x0425    &KHcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER HA
+0x0426    &TScy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER TSE
+0x0427    &CHcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER CHE
+0x0428    &SHcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER SHA
+0x0429    &SHCHcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER SHCHA
+0x042A    &HARDcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER HARD SIGN
+0x042B    &Ycy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER YERU
+0x042C    &SOFTcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER SOFT SIGN
+0x042D    &Ecy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER E
+0x042E    &YUcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER YU
+0x042F    &YAcy;	      ISOcyr1	# CYRILLIC CAPITAL LETTER YA
+0x0430    &acy;	      ISOcyr1	# CYRILLIC SMALL LETTER A
+0x0431    &bcy;	      ISOcyr1	# CYRILLIC SMALL LETTER BE
+0x0432    &vcy;	      ISOcyr1	# CYRILLIC SMALL LETTER VE
+0x0433    &gcy;	      ISOcyr1	# CYRILLIC SMALL LETTER GHE
+0x0434    &dcy;	      ISOcyr1	# CYRILLIC SMALL LETTER DE
+0x0435    &iecy;	      ISOcyr1	# CYRILLIC SMALL LETTER IE
+0x0436    &zhcy;	      ISOcyr1	# CYRILLIC SMALL LETTER ZHE
+0x0437    &zcy;	      ISOcyr1	# CYRILLIC SMALL LETTER ZE
+0x0438    &icy;	      ISOcyr1	# CYRILLIC SMALL LETTER I
+0x0439    &jcy;	      ISOcyr1	# CYRILLIC SMALL LETTER SHORT I
+0x043A    &kcy;	      ISOcyr1	# CYRILLIC SMALL LETTER KA
+0x043B    &lcy;	      ISOcyr1	# CYRILLIC SMALL LETTER EL
+0x043C    &mcy;	      ISOcyr1	# CYRILLIC SMALL LETTER EM
+0x043D    &ncy;	      ISOcyr1	# CYRILLIC SMALL LETTER EN
+0x043E    &ocy;	      ISOcyr1	# CYRILLIC SMALL LETTER O
+0x043F    &pcy;	      ISOcyr1	# CYRILLIC SMALL LETTER PE
+0x0440    &rcy;	      ISOcyr1	# CYRILLIC SMALL LETTER ER
+0x0441    &scy;	      ISOcyr1	# CYRILLIC SMALL LETTER ES
+0x0442    &tcy;	      ISOcyr1	# CYRILLIC SMALL LETTER TE
+0x0443    &ucy;	      ISOcyr1	# CYRILLIC SMALL LETTER U
+0x0444    &fcy;	      ISOcyr1	# CYRILLIC SMALL LETTER EF
+0x0445    &khcy;	      ISOcyr1	# CYRILLIC SMALL LETTER HA
+0x0446    &tscy;	      ISOcyr1	# CYRILLIC SMALL LETTER TSE
+0x0447    &chcy;	      ISOcyr1	# CYRILLIC SMALL LETTER CHE
+0x0448    &shcy;	      ISOcyr1	# CYRILLIC SMALL LETTER SHA
+0x0449    &shchcy;	      ISOcyr1	# CYRILLIC SMALL LETTER SHCHA
+0x044A    &hardcy;	      ISOcyr1	# CYRILLIC SMALL LETTER HARD SIGN
+0x044B    &ycy;	      ISOcyr1	# CYRILLIC SMALL LETTER YERU
+0x044C    &softcy;	      ISOcyr1	# CYRILLIC SMALL LETTER SOFT SIGN
+0x044D    &ecy;	      ISOcyr1	# CYRILLIC SMALL LETTER E
+0x044E    &yucy;	      ISOcyr1	# CYRILLIC SMALL LETTER YU
+0x044F    &yacy;	      ISOcyr1	# CYRILLIC SMALL LETTER YA
+0x0451    &iocy;	      ISOcyr1	# CYRILLIC SMALL LETTER IO
+0x0452    &djcy;	      ISOcyr2	# CYRILLIC SMALL LETTER DJE
+0x0453    &gjcy;	      ISOcyr2	# CYRILLIC SMALL LETTER GJE
+0x0454    &jukcy;	      ISOcyr2	# CYRILLIC SMALL LETTER UKRAINIAN IE
+0x0455    &dscy;	      ISOcyr2	# CYRILLIC SMALL LETTER DZE
+0x0456    &iukcy;	      ISOcyr2	# CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+0x0457    &yicy;	      ISOcyr2	# CYRILLIC SMALL LETTER YI
+0x0458    &jsercy;	      ISOcyr2	# CYRILLIC SMALL LETTER JE
+0x0459    &ljcy;	      ISOcyr2	# CYRILLIC SMALL LETTER LJE
+0x045A    &njcy;	      ISOcyr2	# CYRILLIC SMALL LETTER NJE
+0x045B    &tshcy;	      ISOcyr2	# CYRILLIC SMALL LETTER TSHE
+0x045C    &kjcy;	      ISOcyr2	# CYRILLIC SMALL LETTER KJE
+0x045E    &ubrcy;	      ISOcyr2	# CYRILLIC SMALL LETTER SHORT U
+0x045F    &dzcy;	      ISOcyr2	# CYRILLIC SMALL LETTER DZHE
+0x2002    &ensp;	      ISOpub	# EN SPACE
+0x2003    &emsp;	      ISOpub	# EM SPACE
+0x2004    &emsp13;	      ISOpub	# THREE-PER-EM SPACE
+0x2005    &emsp14;	      ISOpub	# FOUR-PER-EM SPACE
+0x2007    &numsp;	      ISOpub	# FIGURE SPACE
+0x2008    &puncsp;	      ISOpub	# PUNCTUATION SPACE
+0x2009    &thinsp;	      ISOpub	# THIN SPACE
+0x200A    &hairsp;	      ISOpub	# HAIR SPACE
+0x200C    &zwnj;	      HTMLspecial	# ZERO WIDTH NON-JOINER
+0x200D    &zwj;	      HTMLspecial	# ZERO WIDTH JOINER
+0x200E    &lrm;	      HTMLspecial	# LEFT-TO-RIGHT MARK
+0x200F    &rlm;	      HTMLspecial	# RIGHT-TO-LEFT MARK
+0x2010    &dash;	      ISOpub	# HYPHEN
+0x2013    &ndash;	      ISOpub	# EN DASH
+0x2014    &mdash;	      ISOpub	# EM DASH
+0x2015    &horbar;	      ISOnum	# HORIZONTAL BAR
+0x2016    &Verbar;	      ISOtech	# DOUBLE VERTICAL LINE
+0x2018    &lsquo;	      ISOnum	# LEFT SINGLE QUOTATION MARK
+0x2018    &rsquor;	      ISOpub	# LEFT SINGLE QUOTATION MARK
+0x2019    &rsquo;	      ISOnum	# RIGHT SINGLE QUOTATION MARK
+0x201A    &lsquor;	      ISOpub	# SINGLE LOW-9 QUOTATION MARK
+0x201A    &sbquo;	      HTMLspecial	# SINGLE LOW-9 QUOTATION MARK
+0x201C    &ldquo;	      ISOnum	# LEFT DOUBLE QUOTATION MARK
+0x201C    &rdquor;	      ISOpub	# LEFT DOUBLE QUOTATION MARK
+0x201D    &rdquo;	      ISOnum	# RIGHT DOUBLE QUOTATION MARK
+0x201E    &bdquo;	      HTMLspecial	# DOUBLE LOW-9 QUOTATION MARK
+0x201E    &ldquor;	      ISOpub	# DOUBLE LOW-9 QUOTATION MARK
+0x2020    &dagger;	      ISOpub	# DAGGER
+0x2021    &Dagger;	      ISOpub	# DOUBLE DAGGER
+0x2022    &bull;	      ISOpub	# BULLET
+0x2025    &nldr;	      ISOpub	# TWO DOT LEADER
+0x2026    &hellip;	      ISOpub	# HORIZONTAL ELLIPSIS
+0x2026    &mldr;	      ISOpub	# HORIZONTAL ELLIPSIS
+0x2030    &permil;	      ISOtech	# PER MILLE SIGN
+0x2032    &prime;	      ISOtech	# PRIME
+0x2032    &vprime;	      ISOamso	# PRIME
+0x2033    &Prime;	      ISOtech	# DOUBLE PRIME
+0x2034    &tprime;	      ISOtech	# TRIPLE PRIME
+0x2035    &bprime;	      ISOamso	# REVERSED PRIME
+0x2039    &lsaquo;	      HTMLspecial	# SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+0x203A    &rsaquo;	      HTMLspecial	# SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+0x203E    &oline;	      HTMLsymbol	# OVERLINE
+0x2041    &caret;	      ISOpub	# CARET INSERTION POINT
+0x2043    &hybull;	      ISOpub	# HYPHEN BULLET
+0x2044    &frasl;	      HTMLsymbol	# FRACTION SLASH
+0x20AC    &euro;	      new       # EURO SIGN
+0x20DB    &tdot;	      ISOtech	# COMBINING THREE DOTS ABOVE
+0x20DC    &DotDot;	      ISOtech	# COMBINING FOUR DOTS ABOVE
+0x2105    &incare;	      ISOpub	# CARE OF
+0x210B    &hamilt;	      ISOtech	# SCRIPT CAPITAL H
+0x210F    &planck;	      ISOamso	# PLANCK CONSTANT OVER TWO PI
+0x2111    &image;	      ISOamso	# BLACK-LETTER CAPITAL I
+0x2112    &lagran;	      ISOtech	# SCRIPT CAPITAL L
+0x2113    &ell;	      ISOamso	# SCRIPT SMALL L
+0x2116    &numero;	      ISOcyr1	# NUMERO SIGN
+0x2117    &copysr;	      ISOpub	# SOUND RECORDING COPYRIGHT
+0x2118    &weierp;	      ISOamso	# SCRIPT CAPITAL P
+0x211C    &real;	      ISOamso	# BLACK-LETTER CAPITAL R
+0x211E    &rx;	      ISOpub	# PRESCRIPTION TAKE
+0x2122    &trade;	      ISOnum	# TRADE MARK SIGN
+0x2126    &ohm;	      ISOnum	# OHM SIGN
+0x212B    &angst;	      ISOtech	# ANGSTROM SIGN
+0x212C    &bernou;	      ISOtech	# SCRIPT CAPITAL B
+0x2133    &phmmat;	      ISOtech	# SCRIPT CAPITAL M
+0x2134    &order;	      ISOtech	# SCRIPT SMALL O
+0x2135    &alefsym;	      HTMLsymbol	# ALEF SYMBOL
+0x2135    &aleph;	      ISOtech	# ALEF SYMBOL
+0x2136    &beth;	      ISOamso	# BET SYMBOL
+0x2137    &gimel;	      ISOamso	# GIMEL SYMBOL
+0x2138    &daleth;	      ISOamso	# DALET SYMBOL
+0x2153    &frac13;	      ISOpub	# VULGAR FRACTION ONE THIRD
+0x2154    &frac23;	      ISOpub	# VULGAR FRACTION TWO THIRDS
+0x2155    &frac15;	      ISOpub	# VULGAR FRACTION ONE FIFTH
+0x2156    &frac25;	      ISOpub	# VULGAR FRACTION TWO FIFTHS
+0x2157    &frac35;	      ISOpub	# VULGAR FRACTION THREE FIFTHS
+0x2158    &frac45;	      ISOpub	# VULGAR FRACTION FOUR FIFTHS
+0x2159    &frac16;	      ISOpub	# VULGAR FRACTION ONE SIXTH
+0x215A    &frac56;	      ISOpub	# VULGAR FRACTION FIVE SIXTHS
+0x215B    &frac18;	      ISOnum	# VULGAR FRACTION ONE EIGHTH
+0x215C    &frac38;	      ISOnum	# VULGAR FRACTION THREE EIGHTHS
+0x215D    &frac58;	      ISOnum	# VULGAR FRACTION FIVE EIGHTHS
+0x215E    &frac78;	      ISOnum	# VULGAR FRACTION SEVEN EIGHTHS
+0x2190    &larr;	      ISOnum	# LEFTWARDS ARROW
+0x2191    &uarr;	      ISOnum	# UPWARDS ARROW
+0x2192    &rarr;	      ISOnum	# RIGHTWARDS ARROW
+0x2193    &darr;	      ISOnum	# DOWNWARDS ARROW
+0x2194    &harr;	      ISOamsa	# LEFT RIGHT ARROW
+0x2194    &xhArr;	      ISOamsa	# LEFT RIGHT ARROW
+0x2194    &xharr;	      ISOamsa	# LEFT RIGHT ARROW
+0x2195    &varr;	      ISOamsa	# UP DOWN ARROW
+0x2196    &nwarr;	      ISOamsa	# NORTH WEST ARROW
+0x2197    &nearr;	      ISOamsa	# NORTH EAST ARROW
+0x2198    &drarr;	      ISOamsa	# SOUTH EAST ARROW
+0x2199    &dlarr;	      ISOamsa	# SOUTH WEST ARROW
+0x219A    &nlarr;	      ISOamsa	# LEFTWARDS ARROW WITH STROKE
+0x219B    &nrarr;	      ISOamsa	# RIGHTWARDS ARROW WITH STROKE
+0x219D    &rarrw;	      ISOamsa	# RIGHTWARDS WAVE ARROW
+0x219E    &Larr;	      ISOamsa	# LEFTWARDS TWO HEADED ARROW
+0x21A0    &Rarr;	      ISOamsa	# RIGHTWARDS TWO HEADED ARROW
+0x21A2    &larrtl;	      ISOamsa	# LEFTWARDS ARROW WITH TAIL
+0x21A3    &rarrtl;	      ISOamsa	# RIGHTWARDS ARROW WITH TAIL
+0x21A6    &map;	      ISOamsa	# RIGHTWARDS ARROW FROM BAR
+0x21A9    &larrhk;	      ISOamsa	# LEFTWARDS ARROW WITH HOOK
+0x21AA    &rarrhk;	      ISOamsa	# RIGHTWARDS ARROW WITH HOOK
+0x21AB    &larrlp;	      ISOamsa	# LEFTWARDS ARROW WITH LOOP
+0x21AC    &rarrlp;	      ISOamsa	# RIGHTWARDS ARROW WITH LOOP
+0x21AD    &harrw;	      ISOamsa	# LEFT RIGHT WAVE ARROW
+0x21AE    &nharr;	      ISOamsa	# LEFT RIGHT ARROW WITH STROKE
+0x21B0    &lsh;	      ISOamsa	# UPWARDS ARROW WITH TIP LEFTWARDS
+0x21B1    &rsh;	      ISOamsa	# UPWARDS ARROW WITH TIP RIGHTWARDS
+0x21B5    &crarr;	      HTMLsymbol	# DOWNWARDS ARROW WITH CORNER LEFTWARDS
+0x21B6    &cularr;	      ISOamsa	# ANTICLOCKWISE TOP SEMICIRCLE ARROW
+0x21B7    &curarr;	      ISOamsa	# CLOCKWISE TOP SEMICIRCLE ARROW
+0x21BA    &olarr;	      ISOamsa	# ANTICLOCKWISE OPEN CIRCLE ARROW
+0x21BB    &orarr;	      ISOamsa	# CLOCKWISE OPEN CIRCLE ARROW
+0x21BC    &lharu;	      ISOamsa	# LEFTWARDS HARPOON WITH BARB UPWARDS
+0x21BD    &lhard;	      ISOamsa	# LEFTWARDS HARPOON WITH BARB DOWNWARDS
+0x21BE    &uharr;	      ISOamsa	# UPWARDS HARPOON WITH BARB RIGHTWARDS
+0x21BF    &uharl;	      ISOamsa	# UPWARDS HARPOON WITH BARB LEFTWARDS
+0x21C0    &rharu;	      ISOamsa	# RIGHTWARDS HARPOON WITH BARB UPWARDS
+0x21C1    &rhard;	      ISOamsa	# RIGHTWARDS HARPOON WITH BARB DOWNWARDS
+0x21C2    &dharr;	      ISOamsa	# DOWNWARDS HARPOON WITH BARB RIGHTWARDS
+0x21C3    &dharl;	      ISOamsa	# DOWNWARDS HARPOON WITH BARB LEFTWARDS
+0x21C4    &rlarr2;	      ISOamsa	# RIGHTWARDS ARROW OVER LEFTWARDS ARROW
+0x21C6    &lrarr2;	      ISOamsa	# LEFTWARDS ARROW OVER RIGHTWARDS ARROW
+0x21C7    &larr2;	      ISOamsa	# LEFTWARDS PAIRED ARROWS
+0x21C8    &uarr2;	      ISOamsa	# UPWARDS PAIRED ARROWS
+0x21C9    &rarr2;	      ISOamsa	# RIGHTWARDS PAIRED ARROWS
+0x21CA    &darr2;	      ISOamsa	# DOWNWARDS PAIRED ARROWS
+0x21CB    &lrhar2;	      ISOamsa	# LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
+0x21CC    &rlhar2;	      ISOamsa	# RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
+0x21CD    &nlArr;	      ISOamsa	# LEFTWARDS DOUBLE ARROW WITH STROKE
+0x21CE    &nhArr;	      ISOamsa	# LEFT RIGHT DOUBLE ARROW WITH STROKE
+0x21CF    &nrArr;	      ISOamsa	# RIGHTWARDS DOUBLE ARROW WITH STROKE
+0x21D0    &lArr;	      ISOtech	# LEFTWARDS DOUBLE ARROW
+0x21D0    &xlArr;	      ISOamsa	# LEFTWARDS DOUBLE ARROW
+0x21D1    &uArr;	      ISOamsa	# UPWARDS DOUBLE ARROW
+0x21D2    &rArr;	      ISOtech	# RIGHTWARDS DOUBLE ARROW
+0x21D2    &xrArr;	      ISOamsa	# RIGHTWARDS DOUBLE ARROW
+0x21D3    &dArr;	      ISOamsa	# DOWNWARDS DOUBLE ARROW
+0x21D4    &hArr;	      ISOamsa	# LEFT RIGHT DOUBLE ARROW
+0x21D4    &iff;	      ISOtech	# LEFT RIGHT DOUBLE ARROW
+0x21D5    &vArr;	      ISOamsa	# UP DOWN DOUBLE ARROW
+0x21DA    &lAarr;	      ISOamsa	# LEFTWARDS TRIPLE ARROW
+0x21DB    &rAarr;	      ISOamsa	# RIGHTWARDS TRIPLE ARROW
+0x2200    &forall;	      ISOtech	# FOR ALL
+0x2201    &comp;	      ISOamso	# COMPLEMENT
+0x2202    &part;	      ISOtech	# PARTIAL DIFFERENTIAL
+0x2203    &exist;	      ISOtech	# THERE EXISTS
+0x2204    &nexist;	      ISOamso	# THERE DOES NOT EXIST
+0x2205    &empty;	      ISOamso	# EMPTY SET
+0x2207    &nabla;	      ISOtech	# NABLA
+0x2208    &isin;	      ISOtech	# ELEMENT OF
+0x2209    &notin;	      ISOtech	# NOT AN ELEMENT OF
+0x220A    &epsis;	      ISOgrk3	# SMALL ELEMENT OF
+0x220B    &ni;	      ISOtech	# CONTAINS AS MEMBER
+0x220D    &bepsi;	      ISOamsr	# SMALL CONTAINS AS MEMBER
+0x220F    &prod;	      ISOamsb	# N-ARY PRODUCT
+0x2210    &amalg;	      ISOamsb	# N-ARY COPRODUCT
+0x2210    &coprod;	      ISOamsb	# N-ARY COPRODUCT
+0x2210    &samalg;	      ISOamsr	# N-ARY COPRODUCT
+0x2211    &sum;	      ISOamsb	# N-ARY SUMMATION
+0x2212    &minus;	      ISOtech	# MINUS SIGN
+0x2213    &mnplus;	      ISOtech	# MINUS-OR-PLUS SIGN
+0x2214    &plusdo;	      ISOamsb	# DOT PLUS
+0x2216    &setmn;	      ISOamsb	# SET MINUS
+0x2216    &ssetmn;	      ISOamsb	# SET MINUS
+0x2217    &lowast;	      ISOtech	# ASTERISK OPERATOR
+0x2218    &compfn;	      ISOtech	# RING OPERATOR
+0x221A    &radic;	      ISOtech	# SQUARE ROOT
+0x221D    &prop;	      ISOtech	# PROPORTIONAL TO
+0x221D    &vprop;	      ISOamsr	# PROPORTIONAL TO
+0x221E    &infin;	      ISOtech	# INFINITY
+0x221F    &ang90;	      ISOtech	# RIGHT ANGLE
+0x2220    &ang;	      ISOamso	# ANGLE
+0x2221    &angmsd;	      ISOamso	# MEASURED ANGLE
+0x2222    &angsph;	      ISOtech	# SPHERICAL ANGLE
+0x2223    &mid;	      ISOamsr	# DIVIDES
+0x2224    &nmid;	      ISOamsn	# DOES NOT DIVIDE
+0x2225    &par;	      ISOtech	# PARALLEL TO
+0x2225    &spar;	      ISOamsr	# PARALLEL TO
+0x2226    &npar;	      ISOamsn	# NOT PARALLEL TO
+0x2226    &nspar;	      ISOamsn	# NOT PARALLEL TO
+0x2227    &and;	      ISOtech	# LOGICAL AND
+0x2228    &or;	      ISOtech	# LOGICAL OR
+0x2229    &cap;	      ISOtech	# INTERSECTION
+0x222A    &cup;	      ISOtech	# UNION
+0x222B    &int;	      ISOtech	# INTEGRAL
+0x222E    &conint;	      ISOtech	# CONTOUR INTEGRAL
+0x2234    &there4;	      ISOtech	# THEREFORE
+0x2235    &becaus;	      ISOtech	# BECAUSE
+0x223C    &sim;	      ISOtech	# TILDE OPERATOR
+0x223C    &thksim;	      ISOamsr	# TILDE OPERATOR
+0x223D    &bsim;	      ISOamsr	# REVERSED TILDE
+0x2240    &wreath;	      ISOamsb	# WREATH PRODUCT
+0x2241    &nsim;	      ISOamsn	# NOT TILDE
+0x2243    &sime;	      ISOtech	# ASYMPTOTICALLY EQUAL TO
+0x2244    &nsime;	      ISOamsn	# NOT ASYMPTOTICALLY EQUAL TO
+0x2245    &cong;	      ISOtech	# APPROXIMATELY EQUAL TO
+0x2247    &ncong;	      ISOamsn	# NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
+0x2248    &ap;	      ISOtech	# ALMOST EQUAL TO
+0x2248    &asymp;	      ISOamsr	# ALMOST EQUAL TO
+0x2248    &thkap;	      ISOamsr	# ALMOST EQUAL TO
+0x2249    &nap;	      ISOamsn	# NOT ALMOST EQUAL TO
+0x224A    &ape;	      ISOamsr	# ALMOST EQUAL OR EQUAL TO
+0x224C    &bcong;	      ISOamsr	# ALL EQUAL TO
+0x224E    &bump;	      ISOamsr	# GEOMETRICALLY EQUIVALENT TO
+0x224F    &bumpe;	      ISOamsr	# DIFFERENCE BETWEEN
+0x2250    &esdot;	      ISOamsr	# APPROACHES THE LIMIT
+0x2251    &eDot;	      ISOamsr	# GEOMETRICALLY EQUAL TO
+0x2252    &efDot;	      ISOamsr	# APPROXIMATELY EQUAL TO OR THE IMAGE OF
+0x2253    &erDot;	      ISOamsr	# IMAGE OF OR APPROXIMATELY EQUAL TO
+0x2254    &colone;	      ISOamsr	# COLON EQUALS
+0x2255    &ecolon;	      ISOamsr	# EQUALS COLON
+0x2256    &ecir;	      ISOamsr	# RING IN EQUAL TO
+0x2257    &cire;	      ISOamsr	# RING EQUAL TO
+0x2259    &wedgeq;	      ISOtech	# ESTIMATES
+0x225C    &trie;	      ISOamsr	# DELTA EQUAL TO
+0x2260    &ne;	      ISOtech	# NOT EQUAL TO
+0x2261    &equiv;	      ISOtech	# IDENTICAL TO
+0x2262    &nequiv;	      ISOamsn	# NOT IDENTICAL TO
+0x2264    &le;	      ISOtech	# LESS-THAN OR EQUAL TO
+0x2264    &les;	      ISOamsr	# LESS-THAN OR EQUAL TO
+0x2265    &ge;	      ISOtech	# GREATER-THAN OR EQUAL TO
+0x2265    &ges;	      ISOamsr	# GREATER-THAN OR EQUAL TO
+0x2266    &lE;	      ISOamsr	# LESS-THAN OVER EQUAL TO
+0x2267    &gE;	      ISOamsr	# GREATER-THAN OVER EQUAL TO
+0x2268    &lnE;	      ISOamsn	# LESS-THAN BUT NOT EQUAL TO
+0x2268    &lne;	      ISOamsn	# LESS-THAN BUT NOT EQUAL TO
+0x2268    &lvnE;	      ISOamsn	# LESS-THAN BUT NOT EQUAL TO
+0x2269    &gnE;	      ISOamsn	# GREATER-THAN BUT NOT EQUAL TO
+0x2269    &gne;	      ISOamsn	# GREATER-THAN BUT NOT EQUAL TO
+0x2269    &gvnE;	      ISOamsn	# GREATER-THAN BUT NOT EQUAL TO
+0x226A    &Lt;	      ISOamsr	# MUCH LESS-THAN
+0x226B    &Gt;	      ISOamsr	# MUCH GREATER-THAN
+0x226C    &twixt;	      ISOamsr	# BETWEEN
+0x226E    &nlt;	      ISOamsn	# NOT LESS-THAN
+0x226F    &ngt;	      ISOamsn	# NOT GREATER-THAN
+0x2270    &nle;	      ISOamsn	# NEITHER LESS-THAN NOR EQUAL TO
+0x2270    &nles;	      ISOamsn	# NEITHER LESS-THAN NOR EQUAL TO
+0x2271    &nge;	      ISOamsn	# NEITHER GREATER-THAN NOR EQUAL TO
+0x2271    &nges;	      ISOamsn	# NEITHER GREATER-THAN NOR EQUAL TO
+0x2272    &lsim;	      ISOamsr	# LESS-THAN OR EQUIVALENT TO
+0x2273    &gsim;	      ISOamsr	# GREATER-THAN OR EQUIVALENT TO
+0x2276    &lg;	      ISOamsr	# LESS-THAN OR GREATER-THAN
+0x2277    &gl;	      ISOamsr	# GREATER-THAN OR LESS-THAN
+0x227A    &pr;	      ISOamsr	# PRECEDES
+0x227B    &sc;	      ISOamsr	# SUCCEEDS
+0x227C    &cupre;	      ISOamsr	# PRECEDES OR EQUAL TO
+0x227C    &pre;	      ISOamsr	# PRECEDES OR EQUAL TO
+0x227D    &sccue;	      ISOamsr	# SUCCEEDS OR EQUAL TO
+0x227D    &sce;	      ISOamsr	# SUCCEEDS OR EQUAL TO
+0x227E    &prsim;	      ISOamsr	# PRECEDES OR EQUIVALENT TO
+0x227F    &scsim;	      ISOamsr	# SUCCEEDS OR EQUIVALENT TO
+0x2280    &npr;	      ISOamsn	# DOES NOT PRECEDE
+0x2281    &nsc;	      ISOamsn	# DOES NOT SUCCEED
+0x2282    &sub;	      ISOtech	# SUBSET OF
+0x2283    &sup;	      ISOtech	# SUPERSET OF
+0x2284    &nsub;	      ISOamsn	# NOT A SUBSET OF
+0x2285    &nsup;	      ISOamsn	# NOT A SUPERSET OF
+0x2286    &subE;	      ISOamsr	# SUBSET OF OR EQUAL TO
+0x2286    &sube;	      ISOtech	# SUBSET OF OR EQUAL TO
+0x2287    &supE;	      ISOamsr	# SUPERSET OF OR EQUAL TO
+0x2287    &supe;	      ISOtech	# SUPERSET OF OR EQUAL TO
+0x2288    &nsubE;	      ISOamsn	# NEITHER A SUBSET OF NOR EQUAL TO
+0x2288    &nsube;	      ISOamsn	# NEITHER A SUBSET OF NOR EQUAL TO
+0x2289    &nsupE;	      ISOamsn	# NEITHER A SUPERSET OF NOR EQUAL TO
+0x2289    &nsupe;	      ISOamsn	# NEITHER A SUPERSET OF NOR EQUAL TO
+0x228A    &subnE;	      ISOamsn	# SUBSET OF WITH NOT EQUAL TO
+0x228A    &subne;	      ISOamsn	# SUBSET OF WITH NOT EQUAL TO
+0x228A    &vsubnE;	      ISOamsn	# SUBSET OF WITH NOT EQUAL TO
+0x228A    &vsubne;	      ISOamsn	# SUBSET OF WITH NOT EQUAL TO
+0x228B    &supnE;	      ISOamsn	# SUPERSET OF WITH NOT EQUAL TO
+0x228B    &supne;	      ISOamsn	# SUPERSET OF WITH NOT EQUAL TO
+0x228B    &vsupnE;	      ISOamsn	# SUPERSET OF WITH NOT EQUAL TO
+0x228B    &vsupne;	      ISOamsn	# SUPERSET OF WITH NOT EQUAL TO
+0x228E    &uplus;	      ISOamsb	# MULTISET UNION
+0x228F    &sqsub;	      ISOamsr	# SQUARE IMAGE OF
+0x2290    &sqsup;	      ISOamsr	# SQUARE ORIGINAL OF
+0x2291    &sqsube;	      ISOamsr	# SQUARE IMAGE OF OR EQUAL TO
+0x2292    &sqsupe;	      ISOamsr	# SQUARE ORIGINAL OF OR EQUAL TO
+0x2293    &sqcap;	      ISOamsb	# SQUARE CAP
+0x2294    &sqcup;	      ISOamsb	# SQUARE CUP
+0x2295    &oplus;	      ISOamsb	# CIRCLED PLUS
+0x2296    &ominus;	      ISOamsb	# CIRCLED MINUS
+0x2297    &otimes;	      ISOamsb	# CIRCLED TIMES
+0x2298    &osol;	      ISOamsb	# CIRCLED DIVISION SLASH
+0x2299    &odot;	      ISOamsb	# CIRCLED DOT OPERATOR
+0x229A    &ocir;	      ISOamsb	# CIRCLED RING OPERATOR
+0x229B    &oast;	      ISOamsb	# CIRCLED ASTERISK OPERATOR
+0x229D    &odash;	      ISOamsb	# CIRCLED DASH
+0x229E    &plusb;	      ISOamsb	# SQUARED PLUS
+0x229F    &minusb;	      ISOamsb	# SQUARED MINUS
+0x22A0    &timesb;	      ISOamsb	# SQUARED TIMES
+0x22A1    &sdotb;	      ISOamsb	# SQUARED DOT OPERATOR
+0x22A2    &vdash;	      ISOamsr	# RIGHT TACK
+0x22A3    &dashv;	      ISOamsr	# LEFT TACK
+0x22A4    &top;	      ISOamsb	# DOWN TACK
+0x22A5    &bottom;	      ISOtech	# UP TACK
+0x22A5    &perp;	      ISOtech	# UP TACK
+0x22A7    &models;	      ISOamsr	# MODELS
+0x22A8    &vDash;	      ISOamsr	# TRUE
+0x22A9    &Vdash;	      ISOamsr	# FORCES
+0x22AA    &Vvdash;	      ISOamsr	# TRIPLE VERTICAL BAR RIGHT TURNSTILE
+0x22AC    &nvdash;	      ISOamsn	# DOES NOT PROVE
+0x22AD    &nvDash;	      ISOamsn	# NOT TRUE
+0x22AE    &nVdash;	      ISOamsn	# DOES NOT FORCE
+0x22AF    &nVDash;	      ISOamsn	# NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT
+0x22B2    &vltri;	      ISOamsr	# NORMAL SUBGROUP OF
+0x22B3    &vrtri;	      ISOamsr	# CONTAINS AS NORMAL SUBGROUP
+0x22B4    &ltrie;	      ISOamsr	# NORMAL SUBGROUP OF OR EQUAL TO
+0x22B5    &rtrie;	      ISOamsr	# CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
+0x22B8    &mumap;	      ISOamsa	# MULTIMAP
+0x22BA    &intcal;	      ISOamsb	# INTERCALATE
+0x22BB    &veebar;	      ISOamsr	# XOR
+0x22BC    &barwed;	      ISOamsb	# NAND
+0x22C4    &diam;	      ISOamsb	# DIAMOND OPERATOR
+0x22C5    &sdot;	      ISOamsb	# DOT OPERATOR
+0x22C6    &sstarf;	      ISOamsb	# STAR OPERATOR
+0x22C7    &divonx;	      ISOamsb	# DIVISION TIMES
+0x22C8    &bowtie;	      ISOamsr	# BOWTIE
+0x22C9    &ltimes;	      ISOamsb	# LEFT NORMAL FACTOR SEMIDIRECT PRODUCT
+0x22CA    &rtimes;	      ISOamsb	# RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT
+0x22CB    &lthree;	      ISOamsb	# LEFT SEMIDIRECT PRODUCT
+0x22CC    &rthree;	      ISOamsb	# RIGHT SEMIDIRECT PRODUCT
+0x22CD    &bsime;	      ISOamsr	# REVERSED TILDE EQUALS
+0x22CE    &cuvee;	      ISOamsb	# CURLY LOGICAL OR
+0x22CF    &cuwed;	      ISOamsb	# CURLY LOGICAL AND
+0x22D0    &Sub;	      ISOamsr	# DOUBLE SUBSET
+0x22D1    &Sup;	      ISOamsr	# DOUBLE SUPERSET
+0x22D2    &Cap;	      ISOamsb	# DOUBLE INTERSECTION
+0x22D3    &Cup;	      ISOamsb	# DOUBLE UNION
+0x22D4    &fork;	      ISOamsr	# PITCHFORK
+0x22D6    &ldot;	      ISOamsr	# LESS-THAN WITH DOT
+0x22D7    &gsdot;	      ISOamsr	# GREATER-THAN WITH DOT
+0x22D8    &Ll;	      ISOamsr	# VERY MUCH LESS-THAN
+0x22D9    &Gg;	      ISOamsr	# VERY MUCH GREATER-THAN
+0x22DA    &leg;	      ISOamsr	# LESS-THAN EQUAL TO OR GREATER-THAN
+0x22DB    &gel;	      ISOamsr	# GREATER-THAN EQUAL TO OR LESS-THAN
+0x22DC    &els;	      ISOamsr	# EQUAL TO OR LESS-THAN
+0x22DD    &egs;	      ISOamsr	# EQUAL TO OR GREATER-THAN
+0x22DE    &cuepr;	      ISOamsr	# EQUAL TO OR PRECEDES
+0x22DF    &cuesc;	      ISOamsr	# EQUAL TO OR SUCCEEDS
+0x22E0    &npre;	      ISOamsn	# DOES NOT PRECEDE OR EQUAL
+0x22E1    &nsce;	      ISOamsn	# DOES NOT SUCCEED OR EQUAL
+0x22E6    &lnsim;	      ISOamsn	# LESS-THAN BUT NOT EQUIVALENT TO
+0x22E7    &gnsim;	      ISOamsn	# GREATER-THAN BUT NOT EQUIVALENT TO
+0x22E8    &prnsim;	      ISOamsn	# PRECEDES BUT NOT EQUIVALENT TO
+0x22E9    &scnsim;	      ISOamsn	# SUCCEEDS BUT NOT EQUIVALENT TO
+0x22EA    &nltri;	      ISOamsn	# NOT NORMAL SUBGROUP OF
+0x22EB    &nrtri;	      ISOamsn	# DOES NOT CONTAIN AS NORMAL SUBGROUP
+0x22EC    &nltrie;	      ISOamsn	# NOT NORMAL SUBGROUP OF OR EQUAL TO
+0x22ED    &nrtrie;	      ISOamsn	# DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
+0x22EE    &vellip;	      ISOpub	# VERTICAL ELLIPSIS
+0x2306    &Barwed;	      ISOamsb	# PERSPECTIVE
+0x2308    &lceil;	      ISOamsc	# LEFT CEILING
+0x2309    &rceil;	      ISOamsc	# RIGHT CEILING
+0x230A    &lfloor;	      ISOamsc	# LEFT FLOOR
+0x230B    &rfloor;	      ISOamsc	# RIGHT FLOOR
+0x230C    &drcrop;	      ISOpub	# BOTTOM RIGHT CROP
+0x230D    &dlcrop;	      ISOpub	# BOTTOM LEFT CROP
+0x230E    &urcrop;	      ISOpub	# TOP RIGHT CROP
+0x230F    &ulcrop;	      ISOpub	# TOP LEFT CROP
+0x2315    &telrec;	      ISOpub	# TELEPHONE RECORDER
+0x2316    &target;	      ISOpub	# POSITION INDICATOR
+0x231C    &ulcorn;	      ISOamsc	# TOP LEFT CORNER
+0x231D    &urcorn;	      ISOamsc	# TOP RIGHT CORNER
+0x231E    &dlcorn;	      ISOamsc	# BOTTOM LEFT CORNER
+0x231F    &drcorn;	      ISOamsc	# BOTTOM RIGHT CORNER
+0x2322    &frown;	      ISOamsr	# FROWN
+0x2322    &sfrown;	      ISOamsr	# FROWN
+0x2323    &smile;	      ISOamsr	# SMILE
+0x2323    &ssmile;	      ISOamsr	# SMILE
+0x2329    &lang;	      ISOtech	# LEFT-POINTING ANGLE BRACKET
+0x232A    &rang;	      ISOtech	# RIGHT-POINTING ANGLE BRACKET
+0x2423    &blank;	      ISOpub	# OPEN BOX
+0x24C8    &oS;	      ISOamso	# CIRCLED LATIN CAPITAL LETTER S
+0x2500    &boxh;	      ISObox	# BOX DRAWINGS LIGHT HORIZONTAL
+0x2502    &boxv;	      ISObox	# BOX DRAWINGS LIGHT VERTICAL
+0x250C    &boxdr;	      ISObox	# BOX DRAWINGS LIGHT DOWN AND RIGHT
+0x2510    &boxdl;	      ISObox	# BOX DRAWINGS LIGHT DOWN AND LEFT
+0x2514    &boxur;	      ISObox	# BOX DRAWINGS LIGHT UP AND RIGHT
+0x2518    &boxul;	      ISObox	# BOX DRAWINGS LIGHT UP AND LEFT
+0x251C    &boxvr;	      ISObox	# BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+0x2524    &boxvl;	      ISObox	# BOX DRAWINGS LIGHT VERTICAL AND LEFT
+0x252C    &boxhd;	      ISObox	# BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+0x2534    &boxhu;	      ISObox	# BOX DRAWINGS LIGHT UP AND HORIZONTAL
+0x253C    &boxvh;	      ISObox	# BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+0x2550    &boxH;	      ISObox	# BOX DRAWINGS DOUBLE HORIZONTAL
+0x2551    &boxV;	      ISObox	# BOX DRAWINGS DOUBLE VERTICAL
+0x2552    &boxdR;	      ISObox	# BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
+0x2553    &boxDr;	      ISObox	# BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
+0x2554    &boxDR;	      ISObox	# BOX DRAWINGS DOUBLE DOWN AND RIGHT
+0x2555    &boxdL;	      ISObox	# BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
+0x2556    &boxDl;	      ISObox	# BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
+0x2557    &boxDL;	      ISObox	# BOX DRAWINGS DOUBLE DOWN AND LEFT
+0x2558    &boxuR;	      ISObox	# BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
+0x2559    &boxUr;	      ISObox	# BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
+0x255A    &boxUR;	      ISObox	# BOX DRAWINGS DOUBLE UP AND RIGHT
+0x255B    &boxuL;	      ISObox	# BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
+0x255C    &boxUl;	      ISObox	# BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
+0x255D    &boxUL;	      ISObox	# BOX DRAWINGS DOUBLE UP AND LEFT
+0x255E    &boxvR;	      ISObox	# BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+0x255F    &boxVr;	      ISObox	# BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
+0x2560    &boxVR;	      ISObox	# BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
+0x2561    &boxvL;	      ISObox	# BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
+0x2562    &boxVl;	      ISObox	# BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
+0x2563    &boxVL;	      ISObox	# BOX DRAWINGS DOUBLE VERTICAL AND LEFT
+0x2564    &boxHd;	      ISObox	# BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
+0x2565    &boxhD;	      ISObox	# BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
+0x2566    &boxHD;	      ISObox	# BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
+0x2567    &boxHu;	      ISObox	# BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
+0x2568    &boxhU;	      ISObox	# BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
+0x2569    &boxHU;	      ISObox	# BOX DRAWINGS DOUBLE UP AND HORIZONTAL
+0x256A    &boxvH;	      ISObox	# BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+0x256B    &boxVh;	      ISObox	# BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
+0x256C    &boxVH;	      ISObox	# BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
+0x2580    &uhblk;	      ISOpub	# UPPER HALF BLOCK
+0x2584    &lhblk;	      ISOpub	# LOWER HALF BLOCK
+0x2588    &block;	      ISOpub	# FULL BLOCK
+0x2591    &blk14;	      ISOpub	# LIGHT SHADE
+0x2592    &blk12;	      ISOpub	# MEDIUM SHADE
+0x2593    &blk34;	      ISOpub	# DARK SHADE
+0x25A1    &squ;	      ISOpub	# WHITE SQUARE
+0x25A1    &square;	      ISOtech	# WHITE SQUARE
+0x25AA    &squf;	      ISOpub	# BLACK SMALL SQUARE
+0x25AD    &rect;	      ISOpub	# WHITE RECTANGLE
+0x25AE    &marker;	      ISOpub	# BLACK VERTICAL RECTANGLE
+0x25B3    &xutri;	      ISOamsb	# WHITE UP-POINTING TRIANGLE
+0x25B4    &utrif;	      ISOpub	# BLACK UP-POINTING SMALL TRIANGLE
+0x25B5    &utri;	      ISOpub	# WHITE UP-POINTING SMALL TRIANGLE
+0x25B8    &rtrif;	      ISOpub	# BLACK RIGHT-POINTING SMALL TRIANGLE
+0x25B9    &rtri;	      ISOpub	# WHITE RIGHT-POINTING SMALL TRIANGLE
+0x25BD    &xdtri;	      ISOamsb	# WHITE DOWN-POINTING TRIANGLE
+0x25BE    &dtrif;	      ISOpub	# BLACK DOWN-POINTING SMALL TRIANGLE
+0x25BF    &dtri;	      ISOpub	# WHITE DOWN-POINTING SMALL TRIANGLE
+0x25C2    &ltrif;	      ISOpub	# BLACK LEFT-POINTING SMALL TRIANGLE
+0x25C3    &ltri;	      ISOpub	# WHITE LEFT-POINTING SMALL TRIANGLE
+0x25CA    &loz;	      ISOpub	# LOZENGE
+0x25CB    &cir;	      ISOpub	# WHITE CIRCLE
+0x25CB    &xcirc;	      ISOamsb	# WHITE CIRCLE
+0x2605    &starf;	      ISOpub	# BLACK STAR
+0x2606    &star;	      ISOpub	# WHITE STAR
+0x260E    &phone;	      ISOpub	# BLACK TELEPHONE
+0x2640    &female;	      ISOpub	# FEMALE SIGN
+0x2642    &male;	      ISOpub	# MALE SIGN
+0x2660    &spades;	      ISOpub	# BLACK SPADE SUIT
+0x2663    &clubs;	      ISOpub	# BLACK CLUB SUIT
+0x2665    &hearts;	      ISOpub	# BLACK HEART SUIT
+0x2666    &diams;	      ISOpub	# BLACK DIAMOND SUIT
+0x266A    &sung;	      ISOnum	# EIGHTH NOTE
+0x266D    &flat;	      ISOpub	# MUSIC FLAT SIGN
+0x266E    &natur;	      ISOpub	# MUSIC NATURAL SIGN
+0x266F    &sharp;	      ISOpub	# MUSIC SHARP SIGN
+0x2713    &check;	      ISOpub	# CHECK MARK
+0x2717    &cross;	      ISOpub	# BALLOT X
+0x2720    &malt;	      ISOpub	# MALTESE CROSS
+0x2726    &lozf;	      ISOpub	# BLACK FOUR POINTED STAR
+<!-- 0x2727    &loz;         ISOpub    # WHITE FOUR POINTED STAR -->
+0x2736    &sext;	      ISOpub	# SIX POINTED BLACK STAR
+0x????    &epsiv;	      ISOgrk3	# variant epsilon
+0x????    &fjlig;	      ISOpub	# fj ligature
+0x????    &gEl;	      ISOamsr	# greater-than, double equals, less-than
+0x????    &gap;	      ISOamsr	# greater-than, approximately equal to
+0x????    &gnap;	      ISOamsn	# greater-than, not approximately equal to
+0x????    &jnodot;	      ISOamso	# latin small letter dotless j
+0x????    &lEg;	      ISOamsr	# less-than, double equals, greater-than
+0x????    &lap;	      ISOamsr	# less-than, approximately equal to
+0x????    &lnap;	      ISOamsn	# less-than, not approximately equal to
+0x????    &lpargt;	      ISOamsc	# left parenthesis, greater-than
+0x????    &ngE;	      ISOamsn	# not greater-than, double equals
+0x????    &nlE;	      ISOamsn	# not less-than, double equals
+0x????    &nsmid;	      ISOamsn	# nshortmid
+0x????    &prap;	      ISOamsr	# precedes, approximately equal to
+0x????    &prnE;	      ISOamsn	# precedes, not double equal
+0x????    &prnap;	      ISOamsn	# precedes, not approximately equal to
+0x????    &rpargt;	      ISOamsc	# right parenthesis, greater-than
+0x????    &scap;	      ISOamsr	# succeeds, approximately equal to
+0x????    &scnE;	      ISOamsn	# succeeds, not double equals
+0x????    &scnap;	      ISOamsn	# succeeds, not approximately equal to
+0x????    &smid;	      ISOamsr	# shortmid
+0xFB00    &fflig;	      ISOpub	# LATIN SMALL LIGATURE FF
+0xFB01    &filig;	      ISOpub	# LATIN SMALL LIGATURE FI
+0xFB02    &fllig;	      ISOpub	# LATIN SMALL LIGATURE FL
+0xFB03    &ffilig;	      ISOpub	# LATIN SMALL LIGATURE FFI
+0xFB04    &ffllig;	      ISOpub	# LATIN SMALL LIGATURE FFL
+
+</PRE>
+</BODY>
+</HTML>
diff --git a/test/spaces.html b/test/spaces.html
new file mode 100644
index 00000000..d527a193
--- /dev/null
+++ b/test/spaces.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
+<HTML>
+<HEAD>
+<TITLE> Test of some symbols </TITLE>
+</HEAD>
+<BODY>
+<!-- Multiple spaces are normally collapsed unless we are in a <PRE> mode
+or use "special" spaces like &nbsp; or &emsp; - try playing around this page
+by adding more spaces inside brackets or using <PRE>.
+-->
+<!-- PRE -->
+
+You may press '\' to view the source of this test<br>
+<em>UNICODE   NCR  alt-NCR  named  alt-named</em><br>
+<p>
+0x2000    [&#x2000;]   <IMG SRC=X ALT="[&#x2000;]">                            # EN QUAD<br>
+0x2001    [&#x2001;]   <IMG SRC=X ALT="[&#x2001;]">                            # EM QUAD<br>
+0x2002    [&#x2002;]   <IMG SRC=X ALT="[&#x2002;]">    [&ensp;]        <IMG SRC=X ALT="[&ensp;]">              # EN SPACE<br>
+0x2003    [&#x2003;]   <IMG SRC=X ALT="[&#x2003;]">    [&emsp;]        <IMG SRC=X ALT="[&emsp;]">              # EM SPACE<br>
+0x2004    [&#x2004;]   <IMG SRC=X ALT="[&#x2004;]">    [&emsp13;]      <IMG SRC=X ALT="[&emsp13;]">            # THREE-PER-EM SPACE<br>
+0x2005    [&#x2005;]   <IMG SRC=X ALT="[&#x2005;]">    [&emsp14;]      <IMG SRC=X ALT="[&emsp14;]">            # FOUR-PER-EM SPACE<br>
+0x2007    [&#x2007;]   <IMG SRC=X ALT="[&#x2007;]">    [&numsp;]       <IMG SRC=X ALT="[&numsp;]">             # FIGURE SPACE<br>
+0x2008    [&#x2008;]   <IMG SRC=X ALT="[&#x2008;]">    [&puncsp;]      <IMG SRC=X ALT="[&puncsp;]">            # PUNCTUATION SPACE<br>
+0x2009    [&#x2009;]   <IMG SRC=X ALT="[&#x2009;]">    [&thinsp;]      <IMG SRC=X ALT="[&thinsp;]">            # THIN SPACE<br>
+0x200A    [&#x200A;]   <IMG SRC=X ALT="[&#x200A;]">    [&hairsp;]      <IMG SRC=X ALT="[&hairsp;]">            # HAIR SPACE<br>
+0x200C    [&#x200C;]   <IMG SRC=X ALT="[&#x200C;]">    [&zwnj;]        <IMG SRC=X ALT="[&zwnj;]">              # ZERO WIDTH NON-JOINER<br>
+0x200D    [&#x200D;]   <IMG SRC=X ALT="[&#x200D;]">    [&zwj;] <IMG SRC=X ALT="[&zwj;]">               # ZERO WIDTH JOINER<br>
+0x200E    [&#x200E;]   <IMG SRC=X ALT="[&#x200E;]">    [&lrm;] <IMG SRC=X ALT="[&lrm;]">               # LEFT-TO-RIGHT MARK<br>
+0x200F    [&#x200F;]   <IMG SRC=X ALT="[&#x200F;]">    [&rlm;] <IMG SRC=X ALT="[&rlm;]">               # RIGHT-TO-LEFT MARK<br>
+0x2010    [&#x2010;]   <IMG SRC=X ALT="[&#x2010;]">    [&dash;]        <IMG SRC=X ALT="[&dash;]">              # HYPHEN<br>
+0x2013    [&#x2013;]   <IMG SRC=X ALT="[&#x2013;]">    [&ndash;]       <IMG SRC=X ALT="[&ndash;]">             # EN DASH<br>
+0x2014    [&#x2014;]   <IMG SRC=X ALT="[&#x2014;]">    [&mdash;]       <IMG SRC=X ALT="[&mdash;]">             # EM DASH<br>
+
+
+</PRE>
+</BODY>
+</HTML>
diff --git a/test/special_urls.html b/test/special_urls.html
new file mode 100644
index 00000000..c9d35066
--- /dev/null
+++ b/test/special_urls.html
@@ -0,0 +1,22 @@
+<html>
+<head>
+<title>Lynx Special URLs</title>
+<link rev="made" href="mailto:WebMaster@foo.blah.dom">
+</head>
+<body>
+<h1>Lynx Special URLs</h1>
+<dl compact>
+<dd>LYNXCFG:<a href="LYNXCFG:">LYNXCFG (ok)</a>
+<dd>LYNXCOMPILEOPTS:<a href="LYNXCOMPILEOPTS:">LYNXCOMPILEOPTS (ok)</a>
+<dd>LYNXCOOKIE:<a href="LYNXCOOKIE:">LYNXCOOKIE is not allowed</a>
+<dd>LYNXDIRED:<a href="LYNXDIRED:">LYNXDIRED is not allowed</a>
+<dd>LYNXDOWNLOAD:<a href="LYNXDOWNLOAD:">LYNXDOWNLOAD is not allowed</a>
+<dd>LYNXHIST:<a href="LYNXHIST:">LYNXHIST is not allowed</a>
+<dd>LYNXIMGMAP:<a href="LYNXIMGMAP:">LYNXIMGMAP is not allowed</a>
+<dd>LYNXKEYMAP:<a href="LYNXKEYMAP:">LYNXKEYMAP (ok)</a>
+<dd>LYNXMESSAGES:<a href="LYNXMESSAGES:">LYNXMESSAGES (ok)</a>
+<dd>LYNXOPTIONS:<a href="LYNXOPTIONS:">LYNXOPTIONS (ok)</a>
+<dd>LYNXPRINT:<a href="LYNXPRINT:">LYNXPRINT is not allowed</a>
+</dl>
+</body>
+</html>
diff --git a/test/tabtest.html b/test/tabtest.html
new file mode 100644
index 00000000..45184a88
--- /dev/null
+++ b/test/tabtest.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3O//DTD W3 HTML 3.0//EN">
+<html>
+<head>
+<title>Tests of TAB element.</title>
+<link rev="made" href="mailto:lynx-dev@nongnu.org">
+</head>
+
+<body>
+<h1>Tests of TAB element.</h1>
+
+<TAB INDENT="16" ID="t0"><em>Normal Style:</em><br>
+One<TAB INDENT="26" ID="t1">Two<TAB INDENT="44" ID="t2">Three
+<TAB INDENT="62" ID="t3">Four<TAB INDENT="80" ID="t4">Five
+<TAB INDENT="98" ID="t5">Six<TAB INDENT="116" ID="t6">Seven
+<TAB INDENT="132" ID="t7">Eight<br>
+1.<TAB TO="t1">2.<TAB TO="t2">3.<TAB TO="t3">4.<TAB TO="t4">5.
+<TAB TO="t5">6.<TAB TO="t6">7.<TAB TO="t7">8.<br>
+i.<TAB TO="t1">ii.<TAB TO="t2">iii.<TAB TO="t3">iv.<TAB TO="t4">v.
+<TAB TO="t5">vi.<TAB TO="t6">vii.<TAB TO="t7">viii.
+
+<p><pre><TAB TO="t0"><em>In PRE block:</em>
+One<TAB TO="t1">Two<TAB TO="t3">Three<TAB TO="t5">Four<TAB TO="t7">Five
+1.<TAB TO="t1">2.<TAB TO="t3">3.<TAB TO="t5">4.<TAB TO="t7">5.
+i.<TAB TO="t1">ii.<TAB TO="t3">iii.<TAB TO="t5">iv.<TAB TO="t7">v.
+</pre>
+
+<bq>
+<TAB TO="t0"><em>In BQ block:</em><br>
+One<TAB TO="t2">Two<TAB TO="t4">Three<TAB TO="t6">Four<br>
+1.<TAB TO="t2">2.<TAB TO="t4">3.<TAB TO="t6">4.<br>
+i.<TAB TO="t2">ii.<TAB TO="t4">iii.<TAB TO="t6">iv.
+</bq>
+
+<p><b>noct<TAB ID="tn">ambulant</b> - walking at night<br>
+<TAB TO="tn">(from Latin: <i>nox noctis</i> night + <i>ambulare</i> walk)
+<pre>|<TAB INDENT="78">|<TAB INDENT="156">|
+0<TAB INDENT="76">80<TAB INDENT="152">158</pre>
+</body>
+</html>
diff --git a/test/tags.html b/test/tags.html
new file mode 100644
index 00000000..b64b0f98
--- /dev/null
+++ b/test/tags.html
@@ -0,0 +1,219 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Tags to Test Color-Style</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+<link href="nobody" rev="made">
+</HEAD>
+
+<BODY alink="green" bgcolor="yellow">
+<!-- ====================================================================== -->
+<br>
+<h1>Content of an H1 Tag</h1>
+Text after an H1 Tag.
+<p>Paragraph after an H1 Tag.
+<br>
+<h2>Content of an H2 Tag</h2>
+Text after an H2 Tag.
+<p>Paragraph after an H2 Tag.
+<br>
+<h3>Content of an H3 Tag</h3>
+Text after an H3 Tag.
+<p>Paragraph after an H3 Tag.
+<br>
+<h4>Content of an H4 Tag</h4>
+Text after an H4 Tag.
+<p>Paragraph after an H4 Tag.
+<br>
+<h5>Content of an H5 Tag</h5>
+Text after an H5 Tag.
+<p>Paragraph after an H5 Tag.
+<br>
+<h6>Content of an H6 Tag</h6>
+Text after an H6 Tag.
+<p>Paragraph after an H6 Tag.
+<!-- ====================================================================== -->
+This is an <a href="next">"a"</a> tag.
+<br>
+This is an <address>"address"</address> tag.
+<br>
+This is a <b>"b"</b> tag.
+<br>
+This is a <big>"big"</big> tag.
+<br>
+Before quote, <blockquote>this is a "blockquote"</blockquote>, after quote.
+<br>
+This is a <center>"center"</center> tag.
+<br>
+This is a <cite>"cite"</cite> tag.
+<br>
+This is a <code>"code"</code> tag.
+<br>
+This is a <div>div</div> tag.
+<br>
+This is an <em>"em"</em> tag.
+<br>
+This is a <font>"font"</font> tag.
+<!-- ====================================================================== -->
+<br>
+This is an <hr>"hr"<hr> tag.
+<br>
+This is an <i>"i"</i> tag.
+<br>
+This is an <iframe>"iframe"</iframe> tag.
+<br>
+This is an <img alt="img" src="image.jpg"> tag.
+<br>
+This is an <label>"label"</label> tag.
+<br>
+map:		normal:			lightgray:	blue
+<br>
+<pre>
+This is
+pre-formatted
+text (three lines, with pre's on preceding/following lines).
+</pre>
+<br>
+This is a <q>"q"</q>tag.
+<br>
+This is a <samp>"samp"</samp> tag.
+<br>
+This is a <small>"small"</small> tag.
+<br>
+This is a <strong>"strong"</strong> tag.
+<br>
+This is a <sub>"sub"</sub> tag.
+<br>
+This is a <sup>"sup"</sup> tag.
+<br>
+This is a <tt>"tt"</tt> tag.
+<br>
+This is a <var>"var"</var> tag.
+<!-- ====================================================================== -->
+<h1>Forms</h1>
+<hr>
+<form action="http://localhost/cgi-bin/bogus-parms" method="get">
+First: <input type="text" name="First" size=20>
+Last: <input type="text" name="Last" size=20>
+Description: <textarea rows=3 cols=40>
+contents of textarea
+</textarea>
+<hr>
+<input type="submit" value="Submit this form">
+<br>
+<input type="reset" value="Reset this form">
+</form>
+
+<h1 align="left">Another form</h1>
+<hr>
+<form action="http://localhost/cgi-bin/bogus-parms" method="get">
+<hr>
+<input type="checkbox" value="first">first
+<br><input type="checkbox" value="second">second
+<br><input type="checkbox" value="third">third
+<br><input type="checkbox" value="">empty
+<hr>
+<input type="submit" value="done">done
+</form>
+
+<h1 align="right">Another form</h1>
+<hr>
+<form action="http://localhost/cgi-bin/bogus-parms" method="get">
+<select>
+<option>first option</option>
+<option>second option</option>
+<option>third option</option>
+</select>
+<hr>
+<input type="submit" value="Submit this form">
+<br>
+<input type="reset" value="Reset this form">
+</form>
+<!-- ====================================================================== -->
+<table border=2 summary="unquoted table">
+<caption>Unquoted Table</caption>
+<tr>
+<td>First:</td>
+<td>the first row</td>
+<td>short</td>
+<td>last</td></tr>
+<tr>
+<td>Second:</td>
+<td>the second row</td>
+<td>very long string</td>
+<td>lower-right</td></tr>
+</table>
+<!-- ====================================================================== -->
+<blockquote><table border=2 summary="quoted table">
+<caption>Quoted Table</caption>
+<tr>
+<td>First:</td>
+<td>the first row</td>
+<td>very long string</td>
+<td>last</td></tr>
+<tr>
+<td>Second:</td>
+<td>the second row</td>
+<td>short</td>
+<td>lower-right</td></tr>
+</table></blockquote>
+<!-- ====================================================================== -->
+<br>
+<h1>An image map</h1>
+<map name="IMAGEMAP">
+<area alt="Square" shape="rect" coords="18,18,82,80" href="square.html">
+<area alt="Circle" shape="circle" coords="127,48,31" href="circle.html">
+<area alt="Triangle" shape="polygon" coords="232,78,303,78,263,14,232,76"
+   href="triangle.html">
+   </map>
+<!-- ====================================================================== -->
+<br>
+<h1>Definition List</h1>
+This is an definition list:
+<dl>
+<dt>the first dt
+<dd>the first dd
+<dt>the second dt
+<dd>the second dd
+<dl>
+<dt>the first dt
+<dd>the first dd
+<dt>the second dt
+<dd>the second dd
+<dt>the third dt
+<dd>the third dd
+</dl>
+<dt>the third dt
+<dd>the third dd
+</dl>
+<!-- ====================================================================== -->
+<br>
+<h1>Unordered List</h1>
+This is an unordered list:
+<ul>
+<li>first item
+<li>second item
+<ul>
+<li>first item
+<li>second item
+<li>third item
+</ul>
+<li>third item
+</ul>
+<!-- ====================================================================== -->
+<br>
+<h1>Ordered List</h1>
+This is an ordered list:
+<ol>
+<li>first item
+<li>second item
+<ol>
+<li>first item
+<li>second item
+<li>third item
+</ol>
+<li>third item
+</ol>
+
+</BODY>
+</HTML>
diff --git a/test/test-styles.html b/test/test-styles.html
new file mode 100644
index 00000000..39dfb9fa
--- /dev/null
+++ b/test/test-styles.html
@@ -0,0 +1,106 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Test Color-Styles</TITLE>
+</HEAD>
+<BODY>
+<h1>Heading 1</h1>
+<h2>Heading 2</h2>
+<h3>Heading 3</h3>
+<h4>Heading 4</h4>
+<h5>Heading 5</h5>
+<h6>Heading 6</h6>
+
+<h1>Heading 1 - Ordinary Text</h1>
+<h2><a name="#fontlike_text">Heading 2 - <b>Fontlike</b> Text</a></h2>
+<!-- STYLE,BR,TAB -->
+This is <b>b (bold)</b>.
+<br>
+This is <big>big</big>.
+<br>
+This is <blink>blink</blink>.
+<br>
+This is <i>i (italicized)</i>.
+<br>
+This is <small>small</small>.
+<br>
+This is <strike>strike</strike>.
+<br>
+This is <tt>tt (typewriter)</tt>.
+<br>
+This is <u>u (underlined)</u>.
+
+<h2><a name="#emphasized_text">Heading 2 - <em>Emphasized</em> Text</a></h2>
+This is <cite>cite (citation)</cite>.
+<br>
+This is <code>code</code>.
+<br>
+This is <del>del</del>.
+<br>
+This is <dfn>dfn (definition)</dfn>.
+<br>
+This is <em>emphasized</em>.
+<br>
+This is <ins>ins</ins>.
+<br>
+This is <kbd>kbd (keyboard)</kbd>.
+<br>
+This is <q>q (quoted)</q>.
+<br>
+This is <samp>samp (sample)</samp>.
+<br>
+This is <span>span</span>.
+<br>
+This is <strong>strong</strong>.
+<br>
+This is <var>var</var>.
+
+<h1>Heading 1 - Ordinary Links</h1>
+<a href="#fontlike_text">This is a link</a> to fontlike text.
+<br>
+<a href="#emphasized_text">This is a link</a> to emphasized text.
+
+<h1>Heading 1 - Emphasized Links</h1>
+<h2><a name="#fontlike_links">Heading 2 - <b>Fontlike</b> Links</a></h2>
+<br>
+This is <a href="#fontlike_text"><b>b (bold)</b> link</a>.
+<br>
+This is <a href="#fontlike_text"><big>big</big> link</a>.
+<br>
+This is <a href="#fontlike_text"><blink>blink</blink> link</a>.
+<br>
+This is <a href="#fontlike_text"><i>i (italicized)</i> link</a>.
+<br>
+This is <a href="#fontlike_text"><small>small</small> link</a>.
+<br>
+This is <a href="#fontlike_text"><strike>strike</strike> link</a>.
+<br>
+This is <a href="#fontlike_text"><tt>tt (typewriter)</tt> link</a>.
+<br>
+This is <a href="#fontlike_text"><u>u (underlined)</u> link</a>.
+
+<h2><a name="#emphasized_links">Heading 2 - <b>Emphasized</b> Links</a></h2>
+This is <a href="#emphasized_text"><cite>cite (citation)</cite> link</a>.
+<br>
+This is <a href="#emphasized_text"><code>code</code> link</a>.
+<br>
+This is <a href="#emphasized_text"><del>del</del> link</a>.
+<br>
+This is <a href="#emphasized_text"><dfn>dfn (definition)</dfn> link</a>.
+<br>
+This is <a href="#emphasized_text"><em>emphasized</em> link</a>.
+<br>
+This is <a href="#emphasized_text"><ins>ins</ins> link</a>.
+<br>
+This is <a href="#emphasized_text"><kbd>kbd (keyboard)</kbd> link</a>.
+<br>
+This is <a href="#emphasized_text"><q>q (quoted)</q> link</a>.
+<br>
+This is <a href="#emphasized_text"><samp>samp (sample)</samp> link</a>.
+<br>
+This is <a href="#emphasized_text"><span>span</span> link</a>.
+<br>
+This is <a href="#emphasized_text"><strong>strong</strong> link</a>.
+<br>
+This is <a href="#emphasized_text"><var>var</var> link</a>.
+</BODY>
diff --git a/test/unicode.html b/test/unicode.html
new file mode 100644
index 00000000..7abcd1a2
--- /dev/null
+++ b/test/unicode.html
@@ -0,0 +1,915 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Test of some Unicode symbols in numeric character reference form</TITLE>
+</HEAD>
+<BODY>
+<PRE>
+
+    This table prepared from SGML.TXT available at ftp.unicode.org
+
+         ftp://ftp.unicode.org/MAPPINGS/VENDORS/MISC/SGML.TXT
+         (if doing ftp, try cd Public/MAPPINGS/VENDORS/MISC)
+
+
+original comment:
+
+# Author: John Cowan &lt;cowan@ccil.org&gt;
+# Date: 25 July 1997
+#
+# The following table maps SGML character entities from various
+# public sets (namely, ISOamsa, ISOamsb, ISOamsc, ISOamsn, ISOamso,
+# ISOamsr, ISObox, ISOcyr1, ISOcyr2, ISOdia, ISOgrk1, ISOgrk2,
+# ISOgrk3, ISOgrk4, ISOlat1, ISOlat2, ISOnum, ISOpub, ISOtech,
+# HTMLspecial, HTMLsymbol) to corresponding Unicode characters.
+#
+# The table has four tab-separated columns:
+#	Column 1: SGML character entity name
+#	Column 2: SGML public entity set
+#	Column 3: Unicode 2.0 character code
+#	Column 4: Unicode 2.0 character name (UPPER CASE)
+# Entries which don't have Unicode equivalents have "0x????"
+# in Column 3 and a lower case description (from the public entity
+# set DTD) in Column 4.  The mapping is not reversible, because many
+# distinctions are unified away in Unicode, particularly between
+# mathematical symbols.
+#
+# The table is sorted case-blind by SGML character entity name.
+#
+# The contents of this table are drawn from various sources, and
+# are in the public domain.
+#
+<!-- Changes:
++   {"euro",    0x20AC},  /* EURO SIGN                                     */
+
+-->
+
+This test is illuminated Unicode numeric entities like &amp;#x22AB;
+We sort the entities according to unicode numbers.
+You should see visible characters if your display character set support them
+or some substitution string picked up from  src/chrtrans/def7_uni.tbl
+
+If you see something like &amp;#x34D2; - this number unknown to def7_uni.tbl
+or the internal browser's implementation is broken.
+							Leonid Pauzner.
+
+
+
+
+0x0021    &#x0021;  		# EXCLAMATION MARK
+0x0022    &#x0022;  		# QUOTATION MARK
+0x0023    &#x0023;  		# NUMBER SIGN
+0x0024    &#x0024;  		# DOLLAR SIGN
+0x0025    &#x0025;  		# PERCENT SIGN
+0x0026    &#x0026;  		# AMPERSAND
+0x0028    &#x0028;  		# LEFT PARENTHESIS
+0x0029    &#x0029;  		# RIGHT PARENTHESIS
+0x002A    &#x002A;  		# ASTERISK
+0x002B    &#x002B;  		# PLUS SIGN
+0x002C    &#x002C;  		# COMMA
+0x002D    &#x002D;  		# HYPHEN-MINUS
+0x002E    &#x002E;  		# FULL STOP
+0x002F    &#x002F;  		# SOLIDUS
+0x003A    &#x003A;  		# COLON
+0x003B    &#x003B;  		# SEMICOLON
+0x003C    &#x003C;  		# LESS-THAN SIGN
+0x003D    &#x003D;  		# EQUALS SIGN
+0x003E    &#x003E;  		# GREATER-THAN SIGN
+0x003F    &#x003F;  		# QUESTION MARK
+0x0040    &#x0040;  		# COMMERCIAL AT
+0x005B    &#x005B;  		# LEFT SQUARE BRACKET
+0x005C    &#x005C;  		# REVERSE SOLIDUS
+0x005C    &#x005C;  		# REVERSE SOLIDUS
+0x005D    &#x005D;  		# RIGHT SQUARE BRACKET
+0x005F    &#x005F;  		# LOW LINE
+0x0060    &#x0060;  		# GRAVE ACCENT
+0x007B    &#x007B;  		# LEFT CURLY BRACKET
+0x007C    &#x007C;  		# VERTICAL LINE
+0x007D    &#x007D;  		# RIGHT CURLY BRACKET
+0x00A0    &#x00A0;  		# NO-BREAK SPACE
+0x00A1    &#x00A1;  		# INVERTED EXCLAMATION MARK
+0x00A2    &#x00A2;  		# CENT SIGN
+0x00A3    &#x00A3;  		# POUND SIGN
+0x00A4    &#x00A4;  		# CURRENCY SIGN
+0x00A5    &#x00A5;  		# YEN SIGN
+0x00A6    &#x00A6;  		# BROKEN BAR
+0x00A7    &#x00A7;  		# SECTION SIGN
+0x00A8    &#x00A8;  		# DIAERESIS
+0x00A9    &#x00A9;  		# COPYRIGHT SIGN
+0x00AA    &#x00AA;  		# FEMININE ORDINAL INDICATOR
+0x00AB    &#x00AB;  		# LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+0x00AC    &#x00AC;  		# NOT SIGN
+0x00AD    &#x00AD;  		# SOFT HYPHEN
+0x00AE    &#x00AE;  		# REGISTERED SIGN
+0x00AF    &#x00AF;  		# MACRON
+0x00B0    &#x00B0;  		# DEGREE SIGN
+0x00B1    &#x00B1;  		# PLUS-MINUS SIGN
+0x00B2    &#x00B2;  		# SUPERSCRIPT TWO
+0x00B3    &#x00B3;  		# SUPERSCRIPT THREE
+0x00B4    &#x00B4;  		# ACUTE ACCENT
+0x00B5    &#x00B5;  		# MICRO SIGN
+0x00B6    &#x00B6;  		# PILCROW SIGN
+0x00B7    &#x00B7;  		# MIDDLE DOT
+0x00B8    &#x00B8;  		# CEDILLA
+0x00B9    &#x00B9;  		# SUPERSCRIPT ONE
+0x00BA    &#x00BA;  		# MASCULINE ORDINAL INDICATOR
+0x00BB    &#x00BB;  		# RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+0x00BC    &#x00BC;  		# VULGAR FRACTION ONE QUARTER
+0x00BD    &#x00BD;  		# VULGAR FRACTION ONE HALF
+0x00BE    &#x00BE;  		# VULGAR FRACTION THREE QUARTERS
+0x00BF    &#x00BF;  		# INVERTED QUESTION MARK
+0x00C0    &#x00C0;  		# LATIN CAPITAL LETTER A WITH GRAVE
+0x00C1    &#x00C1;  		# LATIN CAPITAL LETTER A WITH ACUTE
+0x00C2    &#x00C2;  		# LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+0x00C3    &#x00C3;  		# LATIN CAPITAL LETTER A WITH TILDE
+0x00C4    &#x00C4;  		# LATIN CAPITAL LETTER A WITH DIAERESIS
+0x00C5    &#x00C5;  		# LATIN CAPITAL LETTER A WITH RING ABOVE
+0x00C6    &#x00C6;  		# LATIN CAPITAL LETTER AE
+0x00C7    &#x00C7;  		# LATIN CAPITAL LETTER C WITH CEDILLA
+0x00C8    &#x00C8;  		# LATIN CAPITAL LETTER E WITH GRAVE
+0x00C9    &#x00C9;  		# LATIN CAPITAL LETTER E WITH ACUTE
+0x00CA    &#x00CA;  		# LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+0x00CB    &#x00CB;  		# LATIN CAPITAL LETTER E WITH DIAERESIS
+0x00CC    &#x00CC;  		# LATIN CAPITAL LETTER I WITH GRAVE
+0x00CD    &#x00CD;  		# LATIN CAPITAL LETTER I WITH ACUTE
+0x00CE    &#x00CE;  		# LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+0x00CF    &#x00CF;  		# LATIN CAPITAL LETTER I WITH DIAERESIS
+0x00D0    &#x00D0;  		# LATIN CAPITAL LETTER ETH
+0x00D1    &#x00D1;  		# LATIN CAPITAL LETTER N WITH TILDE
+0x00D2    &#x00D2;  		# LATIN CAPITAL LETTER O WITH GRAVE
+0x00D3    &#x00D3;  		# LATIN CAPITAL LETTER O WITH ACUTE
+0x00D4    &#x00D4;  		# LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+0x00D5    &#x00D5;  		# LATIN CAPITAL LETTER O WITH TILDE
+0x00D6    &#x00D6;  		# LATIN CAPITAL LETTER O WITH DIAERESIS
+0x00D7    &#x00D7;  		# MULTIPLICATION SIGN
+0x00D8    &#x00D8;  		# LATIN CAPITAL LETTER O WITH STROKE
+0x00D9    &#x00D9;  		# LATIN CAPITAL LETTER U WITH GRAVE
+0x00DA    &#x00DA;  		# LATIN CAPITAL LETTER U WITH ACUTE
+0x00DB    &#x00DB;  		# LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+0x00DC    &#x00DC;  		# LATIN CAPITAL LETTER U WITH DIAERESIS
+0x00DD    &#x00DD;  		# LATIN CAPITAL LETTER Y WITH ACUTE
+0x00DE    &#x00DE;  		# LATIN CAPITAL LETTER THORN
+0x00DF    &#x00DF;  		# LATIN SMALL LETTER SHARP S
+0x00E0    &#x00E0;  		# LATIN SMALL LETTER A WITH GRAVE
+0x00E1    &#x00E1;  		# LATIN SMALL LETTER A WITH ACUTE
+0x00E2    &#x00E2;  		# LATIN SMALL LETTER A WITH CIRCUMFLEX
+0x00E3    &#x00E3;  		# LATIN SMALL LETTER A WITH TILDE
+0x00E4    &#x00E4;  		# LATIN SMALL LETTER A WITH DIAERESIS
+0x00E5    &#x00E5;  		# LATIN SMALL LETTER A WITH RING ABOVE
+0x00E6    &#x00E6;  		# LATIN SMALL LETTER AE
+0x00E7    &#x00E7;  		# LATIN SMALL LETTER C WITH CEDILLA
+0x00E8    &#x00E8;  		# LATIN SMALL LETTER E WITH GRAVE
+0x00E9    &#x00E9;  		# LATIN SMALL LETTER E WITH ACUTE
+0x00EA    &#x00EA;  		# LATIN SMALL LETTER E WITH CIRCUMFLEX
+0x00EB    &#x00EB;  		# LATIN SMALL LETTER E WITH DIAERESIS
+0x00EC    &#x00EC;  		# LATIN SMALL LETTER I WITH GRAVE
+0x00ED    &#x00ED;  		# LATIN SMALL LETTER I WITH ACUTE
+0x00EE    &#x00EE;  		# LATIN SMALL LETTER I WITH CIRCUMFLEX
+0x00EF    &#x00EF;  		# LATIN SMALL LETTER I WITH DIAERESIS
+0x00F0    &#x00F0;  		# LATIN SMALL LETTER ETH
+0x00F1    &#x00F1;  		# LATIN SMALL LETTER N WITH TILDE
+0x00F2    &#x00F2;  		# LATIN SMALL LETTER O WITH GRAVE
+0x00F3    &#x00F3;  		# LATIN SMALL LETTER O WITH ACUTE
+0x00F4    &#x00F4;  		# LATIN SMALL LETTER O WITH CIRCUMFLEX
+0x00F5    &#x00F5;  		# LATIN SMALL LETTER O WITH TILDE
+0x00F6    &#x00F6;  		# LATIN SMALL LETTER O WITH DIAERESIS
+0x00F7    &#x00F7;  		# DIVISION SIGN
+0x00F8    &#x00F8;  		# LATIN SMALL LETTER O WITH STROKE
+0x00F9    &#x00F9;  		# LATIN SMALL LETTER U WITH GRAVE
+0x00FA    &#x00FA;  		# LATIN SMALL LETTER U WITH ACUTE
+0x00FB    &#x00FB;  		# LATIN SMALL LETTER U WITH CIRCUMFLEX
+0x00FC    &#x00FC;  		# LATIN SMALL LETTER U WITH DIAERESIS
+0x00FD    &#x00FD;  		# LATIN SMALL LETTER Y WITH ACUTE
+0x00FE    &#x00FE;  		# LATIN SMALL LETTER THORN
+0x00FF    &#x00FF;  		# LATIN SMALL LETTER Y WITH DIAERESIS
+0x0100    &#x0100;  		# LATIN CAPITAL LETTER A WITH MACRON
+0x0101    &#x0101;  		# LATIN SMALL LETTER A WITH MACRON
+0x0102    &#x0102;  		# LATIN CAPITAL LETTER A WITH BREVE
+0x0103    &#x0103;  		# LATIN SMALL LETTER A WITH BREVE
+0x0104    &#x0104;  		# LATIN CAPITAL LETTER A WITH OGONEK
+0x0105    &#x0105;  		# LATIN SMALL LETTER A WITH OGONEK
+0x0106    &#x0106;  		# LATIN CAPITAL LETTER C WITH ACUTE
+0x0107    &#x0107;  		# LATIN SMALL LETTER C WITH ACUTE
+0x0108    &#x0108;  		# LATIN CAPITAL LETTER C WITH CIRCUMFLEX
+0x0109    &#x0109;  		# LATIN SMALL LETTER C WITH CIRCUMFLEX
+0x010A    &#x010A;  		# LATIN CAPITAL LETTER C WITH DOT ABOVE
+0x010B    &#x010B;  		# LATIN SMALL LETTER C WITH DOT ABOVE
+0x010C    &#x010C;  		# LATIN CAPITAL LETTER C WITH CARON
+0x010D    &#x010D;  		# LATIN SMALL LETTER C WITH CARON
+0x010E    &#x010E;  		# LATIN CAPITAL LETTER D WITH CARON
+0x010F    &#x010F;  		# LATIN SMALL LETTER D WITH CARON
+0x0110    &#x0110;  		# LATIN CAPITAL LETTER D WITH STROKE
+0x0111    &#x0111;  		# LATIN SMALL LETTER D WITH STROKE
+0x0112    &#x0112;  		# LATIN CAPITAL LETTER E WITH MACRON
+0x0113    &#x0113;  		# LATIN SMALL LETTER E WITH MACRON
+0x0116    &#x0116;  		# LATIN CAPITAL LETTER E WITH DOT ABOVE
+0x0117    &#x0117;  		# LATIN SMALL LETTER E WITH DOT ABOVE
+0x0118    &#x0118;  		# LATIN CAPITAL LETTER E WITH OGONEK
+0x0119    &#x0119;  		# LATIN SMALL LETTER E WITH OGONEK
+0x011A    &#x011A;  		# LATIN CAPITAL LETTER E WITH CARON
+0x011B    &#x011B;  		# LATIN SMALL LETTER E WITH CARON
+0x011C    &#x011C;  		# LATIN CAPITAL LETTER G WITH CIRCUMFLEX
+0x011D    &#x011D;  		# LATIN SMALL LETTER G WITH CIRCUMFLEX
+0x011E    &#x011E;  		# LATIN CAPITAL LETTER G WITH BREVE
+0x011F    &#x011F;  		# LATIN SMALL LETTER G WITH BREVE
+0x0120    &#x0120;  		# LATIN CAPITAL LETTER G WITH DOT ABOVE
+0x0121    &#x0121;  		# LATIN SMALL LETTER G WITH DOT ABOVE
+0x0122    &#x0122;  		# LATIN CAPITAL LETTER G WITH CEDILLA
+0x0123    &#x0123;  		# LATIN SMALL LETTER G WITH CEDILLA
+0x0124    &#x0124;  		# LATIN CAPITAL LETTER H WITH CIRCUMFLEX
+0x0125    &#x0125;  		# LATIN SMALL LETTER H WITH CIRCUMFLEX
+0x0126    &#x0126;  		# LATIN CAPITAL LETTER H WITH STROKE
+0x0127    &#x0127;  		# LATIN SMALL LETTER H WITH STROKE
+0x0128    &#x0128;  		# LATIN CAPITAL LETTER I WITH TILDE
+0x0129    &#x0129;  		# LATIN SMALL LETTER I WITH TILDE
+0x012A    &#x012A;  		# LATIN CAPITAL LETTER I WITH MACRON
+0x012B    &#x012B;  		# LATIN SMALL LETTER I WITH MACRON
+0x012E    &#x012E;  		# LATIN CAPITAL LETTER I WITH OGONEK
+0x012F    &#x012F;  		# LATIN SMALL LETTER I WITH OGONEK
+0x0130    &#x0130;  		# LATIN CAPITAL LETTER I WITH DOT ABOVE
+0x0131    &#x0131;  		# LATIN SMALL LETTER DOTLESS I
+0x0131    &#x0131;  		# LATIN SMALL LETTER DOTLESS I
+0x0132    &#x0132;  		# LATIN CAPITAL LIGATURE IJ
+0x0133    &#x0133;  		# LATIN SMALL LIGATURE IJ
+0x0134    &#x0134;  		# LATIN CAPITAL LETTER J WITH CIRCUMFLEX
+0x0135    &#x0135;  		# LATIN SMALL LETTER J WITH CIRCUMFLEX
+0x0136    &#x0136;  		# LATIN CAPITAL LETTER K WITH CEDILLA
+0x0137    &#x0137;  		# LATIN SMALL LETTER K WITH CEDILLA
+0x0138    &#x0138;  		# LATIN SMALL LETTER KRA
+0x0139    &#x0139;  		# LATIN CAPITAL LETTER L WITH ACUTE
+0x013A    &#x013A;  		# LATIN SMALL LETTER L WITH ACUTE
+0x013B    &#x013B;  		# LATIN CAPITAL LETTER L WITH CEDILLA
+0x013C    &#x013C;  		# LATIN SMALL LETTER L WITH CEDILLA
+0x013D    &#x013D;  		# LATIN CAPITAL LETTER L WITH CARON
+0x013E    &#x013E;  		# LATIN SMALL LETTER L WITH CARON
+0x013F    &#x013F;  		# LATIN CAPITAL LETTER L WITH MIDDLE DOT
+0x0140    &#x0140;  		# LATIN SMALL LETTER L WITH MIDDLE DOT
+0x0141    &#x0141;  		# LATIN CAPITAL LETTER L WITH STROKE
+0x0142    &#x0142;  		# LATIN SMALL LETTER L WITH STROKE
+0x0143    &#x0143;  		# LATIN CAPITAL LETTER N WITH ACUTE
+0x0144    &#x0144;  		# LATIN SMALL LETTER N WITH ACUTE
+0x0145    &#x0145;  		# LATIN CAPITAL LETTER N WITH CEDILLA
+0x0146    &#x0146;  		# LATIN SMALL LETTER N WITH CEDILLA
+0x0147    &#x0147;  		# LATIN CAPITAL LETTER N WITH CARON
+0x0148    &#x0148;  		# LATIN SMALL LETTER N WITH CARON
+0x0149    &#x0149;  		# LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
+0x014A    &#x014A;  		# LATIN CAPITAL LETTER ENG
+0x014B    &#x014B;  		# LATIN SMALL LETTER ENG
+0x014C    &#x014C;  		# LATIN CAPITAL LETTER O WITH MACRON
+0x014D    &#x014D;  		# LATIN SMALL LETTER O WITH MACRON
+0x0150    &#x0150;  		# LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
+0x0151    &#x0151;  		# LATIN SMALL LETTER O WITH DOUBLE ACUTE
+0x0152    &#x0152;  		# LATIN CAPITAL LIGATURE OE
+0x0153    &#x0153;  		# LATIN SMALL LIGATURE OE
+0x0154    &#x0154;  		# LATIN CAPITAL LETTER R WITH ACUTE
+0x0155    &#x0155;  		# LATIN SMALL LETTER R WITH ACUTE
+0x0156    &#x0156;  		# LATIN CAPITAL LETTER R WITH CEDILLA
+0x0157    &#x0157;  		# LATIN SMALL LETTER R WITH CEDILLA
+0x0158    &#x0158;  		# LATIN CAPITAL LETTER R WITH CARON
+0x0159    &#x0159;  		# LATIN SMALL LETTER R WITH CARON
+0x015A    &#x015A;  		# LATIN CAPITAL LETTER S WITH ACUTE
+0x015B    &#x015B;  		# LATIN SMALL LETTER S WITH ACUTE
+0x015C    &#x015C;  		# LATIN CAPITAL LETTER S WITH CIRCUMFLEX
+0x015D    &#x015D;  		# LATIN SMALL LETTER S WITH CIRCUMFLEX
+0x015E    &#x015E;  		# LATIN CAPITAL LETTER S WITH CEDILLA
+0x015F    &#x015F;  		# LATIN SMALL LETTER S WITH CEDILLA
+0x0160    &#x0160;  		# LATIN CAPITAL LETTER S WITH CARON
+0x0161    &#x0161;  		# LATIN SMALL LETTER S WITH CARON
+0x0162    &#x0162;  		# LATIN CAPITAL LETTER T WITH CEDILLA
+0x0163    &#x0163;  		# LATIN SMALL LETTER T WITH CEDILLA
+0x0164    &#x0164;  		# LATIN CAPITAL LETTER T WITH CARON
+0x0165    &#x0165;  		# LATIN SMALL LETTER T WITH CARON
+0x0166    &#x0166;  		# LATIN CAPITAL LETTER T WITH STROKE
+0x0167    &#x0167;  		# LATIN SMALL LETTER T WITH STROKE
+0x0168    &#x0168;  		# LATIN CAPITAL LETTER U WITH TILDE
+0x0169    &#x0169;  		# LATIN SMALL LETTER U WITH TILDE
+0x016A    &#x016A;  		# LATIN CAPITAL LETTER U WITH MACRON
+0x016B    &#x016B;  		# LATIN SMALL LETTER U WITH MACRON
+0x016C    &#x016C;  		# LATIN CAPITAL LETTER U WITH BREVE
+0x016D    &#x016D;  		# LATIN SMALL LETTER U WITH BREVE
+0x016E    &#x016E;  		# LATIN CAPITAL LETTER U WITH RING ABOVE
+0x016F    &#x016F;  		# LATIN SMALL LETTER U WITH RING ABOVE
+0x0170    &#x0170;  		# LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
+0x0171    &#x0171;  		# LATIN SMALL LETTER U WITH DOUBLE ACUTE
+0x0172    &#x0172;  		# LATIN CAPITAL LETTER U WITH OGONEK
+0x0173    &#x0173;  		# LATIN SMALL LETTER U WITH OGONEK
+0x0174    &#x0174;  		# LATIN CAPITAL LETTER W WITH CIRCUMFLEX
+0x0175    &#x0175;  		# LATIN SMALL LETTER W WITH CIRCUMFLEX
+0x0176    &#x0176;  		# LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
+0x0177    &#x0177;  		# LATIN SMALL LETTER Y WITH CIRCUMFLEX
+0x0178    &#x0178;  		# LATIN CAPITAL LETTER Y WITH DIAERESIS
+0x0179    &#x0179;  		# LATIN CAPITAL LETTER Z WITH ACUTE
+0x017A    &#x017A;  		# LATIN SMALL LETTER Z WITH ACUTE
+0x017B    &#x017B;  		# LATIN CAPITAL LETTER Z WITH DOT ABOVE
+0x017C    &#x017C;  		# LATIN SMALL LETTER Z WITH DOT ABOVE
+0x017D    &#x017D;  		# LATIN CAPITAL LETTER Z WITH CARON
+0x017E    &#x017E;  		# LATIN SMALL LETTER Z WITH CARON
+0x0192    &#x0192;  		# LATIN SMALL LETTER F WITH HOOK
+0x01F5    &#x01F5;  		# LATIN SMALL LETTER G WITH ACUTE
+0x02BC    &#x02BC;  		# MODIFIER LETTER APOSTROPHE
+0x02C6    &#x02C6;  		# MODIFIER LETTER CIRCUMFLEX ACCENT
+0x02C7    &#x02C7;  		# CARON
+0x02D8    &#x02D8;  		# BREVE
+0x02D9    &#x02D9;  		# DOT ABOVE
+0x02DA    &#x02DA;  		# RING ABOVE
+0x02DB    &#x02DB;  		# OGONEK
+0x02DC    &#x02DC;  		# SMALL TILDE
+0x02DD    &#x02DD;  		# DOUBLE ACUTE ACCENT
+0x0386    &#x0386;  		# GREEK CAPITAL LETTER ALPHA WITH TONOS
+0x0388    &#x0388;  		# GREEK CAPITAL LETTER EPSILON WITH TONOS
+0x0389    &#x0389;  		# GREEK CAPITAL LETTER ETA WITH TONOS
+0x038A    &#x038A;  		# GREEK CAPITAL LETTER IOTA WITH TONOS
+0x038C    &#x038C;  		# GREEK CAPITAL LETTER OMICRON WITH TONOS
+0x038E    &#x038E;  		# GREEK CAPITAL LETTER UPSILON WITH TONOS
+0x038F    &#x038F;  		# GREEK CAPITAL LETTER OMEGA WITH TONOS
+0x0390    &#x0390;  		# GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+0x0391    &#x0391;  		# GREEK CAPITAL LETTER ALPHA
+0x0392    &#x0392;  		# GREEK CAPITAL LETTER BETA
+0x0393    &#x0393;  		# GREEK CAPITAL LETTER GAMMA
+0x0394    &#x0394;  		# GREEK CAPITAL LETTER DELTA
+0x0395    &#x0395;  		# GREEK CAPITAL LETTER EPSILON
+0x0396    &#x0396;  		# GREEK CAPITAL LETTER ZETA
+0x0397    &#x0397;  		# GREEK CAPITAL LETTER ETA
+0x0398    &#x0398;  		# GREEK CAPITAL LETTER THETA
+0x0399    &#x0399;  		# GREEK CAPITAL LETTER IOTA
+0x039A    &#x039A;  		# GREEK CAPITAL LETTER KAPPA
+0x039B    &#x039B;  		# GREEK CAPITAL LETTER LAMDA
+0x039C    &#x039C;  		# GREEK CAPITAL LETTER MU
+0x039D    &#x039D;  		# GREEK CAPITAL LETTER NU
+0x039E    &#x039E;  		# GREEK CAPITAL LETTER XI
+0x039F    &#x039F;  		# GREEK CAPITAL LETTER OMICRON
+0x03A0    &#x03A0;  		# GREEK CAPITAL LETTER PI
+0x03A1    &#x03A1;  		# GREEK CAPITAL LETTER RHO
+0x03A3    &#x03A3;  		# GREEK CAPITAL LETTER SIGMA
+0x03A4    &#x03A4;  		# GREEK CAPITAL LETTER TAU
+0x03A5    &#x03A5;  		# GREEK CAPITAL LETTER UPSILON
+0x03A6    &#x03A6;  		# GREEK CAPITAL LETTER PHI
+0x03A7    &#x03A7;  		# GREEK CAPITAL LETTER CHI
+0x03A8    &#x03A8;  		# GREEK CAPITAL LETTER PSI
+0x03A9    &#x03A9;  		# GREEK CAPITAL LETTER OMEGA
+0x03AA    &#x03AA;  		# GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
+0x03AB    &#x03AB;  		# GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
+0x03AC    &#x03AC;  		# GREEK SMALL LETTER ALPHA WITH TONOS
+0x03AD    &#x03AD;  		# GREEK SMALL LETTER EPSILON WITH TONOS
+0x03AE    &#x03AE;  		# GREEK SMALL LETTER ETA WITH TONOS
+0x03AF    &#x03AF;  		# GREEK SMALL LETTER IOTA WITH TONOS
+0x03B0    &#x03B0;  		# GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
+0x03B1    &#x03B1;  		# GREEK SMALL LETTER ALPHA
+0x03B2    &#x03B2;  		# GREEK SMALL LETTER BETA
+0x03B3    &#x03B3;  		# GREEK SMALL LETTER GAMMA
+0x03B4    &#x03B4;  		# GREEK SMALL LETTER DELTA
+0x03B5    &#x03B5;  		# GREEK SMALL LETTER EPSILON
+0x03B6    &#x03B6;  		# GREEK SMALL LETTER ZETA
+0x03B7    &#x03B7;  		# GREEK SMALL LETTER ETA
+0x03B8    &#x03B8;  		# GREEK SMALL LETTER THETA
+0x03B9    &#x03B9;  		# GREEK SMALL LETTER IOTA
+0x03BA    &#x03BA;  		# GREEK SMALL LETTER KAPPA
+0x03BB    &#x03BB;  		# GREEK SMALL LETTER LAMDA
+0x03BC    &#x03BC;  		# GREEK SMALL LETTER MU
+0x03BD    &#x03BD;  		# GREEK SMALL LETTER NU
+0x03BE    &#x03BE;  		# GREEK SMALL LETTER XI
+0x03BF    &#x03BF;  		# GREEK SMALL LETTER OMICRON
+0x03C0    &#x03C0;  		# GREEK SMALL LETTER PI
+0x03C1    &#x03C1;  		# GREEK SMALL LETTER RHO
+0x03C2    &#x03C2;  		# GREEK SMALL LETTER FINAL SIGMA
+0x03C3    &#x03C3;  		# GREEK SMALL LETTER SIGMA
+0x03C4    &#x03C4;  		# GREEK SMALL LETTER TAU
+0x03C5    &#x03C5;  		# GREEK SMALL LETTER UPSILON
+0x03C6    &#x03C6;  		# GREEK SMALL LETTER PHI
+0x03C7    &#x03C7;  		# GREEK SMALL LETTER CHI
+0x03C8    &#x03C8;  		# GREEK SMALL LETTER PSI
+0x03C9    &#x03C9;  		# GREEK SMALL LETTER OMEGA
+0x03CA    &#x03CA;  		# GREEK SMALL LETTER IOTA WITH DIALYTIKA
+0x03CB    &#x03CB;  		# GREEK SMALL LETTER UPSILON WITH DIALYTIKA
+0x03CC    &#x03CC;  		# GREEK SMALL LETTER OMICRON WITH TONOS
+0x03CE    &#x03CE;  		# GREEK SMALL LETTER OMEGA WITH TONOS
+0x03D1    &#x03D1;  		# GREEK THETA SYMBOL
+0x03D2    &#x03D2;  		# GREEK UPSILON WITH HOOK SYMBOL
+0x03D5    &#x03D5;  		# GREEK PHI SYMBOL
+0x03D6    &#x03D6;  		# GREEK PI SYMBOL
+0x03DC    &#x03DC;  		# GREEK LETTER DIGAMMA
+0x03F0    &#x03F0;  		# GREEK KAPPA SYMBOL
+0x03F1    &#x03F1;  		# GREEK RHO SYMBOL
+0x0401    &#x0401;  		# CYRILLIC CAPITAL LETTER IO
+0x0402    &#x0402;  		# CYRILLIC CAPITAL LETTER DJE
+0x0403    &#x0403;  		# CYRILLIC CAPITAL LETTER GJE
+0x0404    &#x0404;  		# CYRILLIC CAPITAL LETTER UKRAINIAN IE
+0x0405    &#x0405;  		# CYRILLIC CAPITAL LETTER DZE
+0x0406    &#x0406;  		# CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+0x0407    &#x0407;  		# CYRILLIC CAPITAL LETTER YI
+0x0408    &#x0408;  		# CYRILLIC CAPITAL LETTER JE
+0x0409    &#x0409;  		# CYRILLIC CAPITAL LETTER LJE
+0x040A    &#x040A;  		# CYRILLIC CAPITAL LETTER NJE
+0x040B    &#x040B;  		# CYRILLIC CAPITAL LETTER TSHE
+0x040C    &#x040C;  		# CYRILLIC CAPITAL LETTER KJE
+0x040E    &#x040E;  		# CYRILLIC CAPITAL LETTER SHORT U
+0x040F    &#x040F;  		# CYRILLIC CAPITAL LETTER DZHE
+0x0410    &#x0410;  		# CYRILLIC CAPITAL LETTER A
+0x0411    &#x0411;  		# CYRILLIC CAPITAL LETTER BE
+0x0412    &#x0412;  		# CYRILLIC CAPITAL LETTER VE
+0x0413    &#x0413;  		# CYRILLIC CAPITAL LETTER GHE
+0x0414    &#x0414;  		# CYRILLIC CAPITAL LETTER DE
+0x0415    &#x0415;  		# CYRILLIC CAPITAL LETTER IE
+0x0416    &#x0416;  		# CYRILLIC CAPITAL LETTER ZHE
+0x0417    &#x0417;  		# CYRILLIC CAPITAL LETTER ZE
+0x0418    &#x0418;  		# CYRILLIC CAPITAL LETTER I
+0x0419    &#x0419;  		# CYRILLIC CAPITAL LETTER SHORT I
+0x041A    &#x041A;  		# CYRILLIC CAPITAL LETTER KA
+0x041B    &#x041B;  		# CYRILLIC CAPITAL LETTER EL
+0x041C    &#x041C;  		# CYRILLIC CAPITAL LETTER EM
+0x041D    &#x041D;  		# CYRILLIC CAPITAL LETTER EN
+0x041E    &#x041E;  		# CYRILLIC CAPITAL LETTER O
+0x041F    &#x041F;  		# CYRILLIC CAPITAL LETTER PE
+0x0420    &#x0420;  		# CYRILLIC CAPITAL LETTER ER
+0x0421    &#x0421;  		# CYRILLIC CAPITAL LETTER ES
+0x0422    &#x0422;  		# CYRILLIC CAPITAL LETTER TE
+0x0423    &#x0423;  		# CYRILLIC CAPITAL LETTER U
+0x0424    &#x0424;  		# CYRILLIC CAPITAL LETTER EF
+0x0425    &#x0425;  		# CYRILLIC CAPITAL LETTER HA
+0x0426    &#x0426;  		# CYRILLIC CAPITAL LETTER TSE
+0x0427    &#x0427;  		# CYRILLIC CAPITAL LETTER CHE
+0x0428    &#x0428;  		# CYRILLIC CAPITAL LETTER SHA
+0x0429    &#x0429;  		# CYRILLIC CAPITAL LETTER SHCHA
+0x042A    &#x042A;  		# CYRILLIC CAPITAL LETTER HARD SIGN
+0x042B    &#x042B;  		# CYRILLIC CAPITAL LETTER YERU
+0x042C    &#x042C;  		# CYRILLIC CAPITAL LETTER SOFT SIGN
+0x042D    &#x042D;  		# CYRILLIC CAPITAL LETTER E
+0x042E    &#x042E;  		# CYRILLIC CAPITAL LETTER YU
+0x042F    &#x042F;  		# CYRILLIC CAPITAL LETTER YA
+0x0430    &#x0430;  		# CYRILLIC SMALL LETTER A
+0x0431    &#x0431;  		# CYRILLIC SMALL LETTER BE
+0x0432    &#x0432;  		# CYRILLIC SMALL LETTER VE
+0x0433    &#x0433;  		# CYRILLIC SMALL LETTER GHE
+0x0434    &#x0434;  		# CYRILLIC SMALL LETTER DE
+0x0435    &#x0435;  		# CYRILLIC SMALL LETTER IE
+0x0436    &#x0436;  		# CYRILLIC SMALL LETTER ZHE
+0x0437    &#x0437;  		# CYRILLIC SMALL LETTER ZE
+0x0438    &#x0438;  		# CYRILLIC SMALL LETTER I
+0x0439    &#x0439;  		# CYRILLIC SMALL LETTER SHORT I
+0x043A    &#x043A;  		# CYRILLIC SMALL LETTER KA
+0x043B    &#x043B;  		# CYRILLIC SMALL LETTER EL
+0x043C    &#x043C;  		# CYRILLIC SMALL LETTER EM
+0x043D    &#x043D;  		# CYRILLIC SMALL LETTER EN
+0x043E    &#x043E;  		# CYRILLIC SMALL LETTER O
+0x043F    &#x043F;  		# CYRILLIC SMALL LETTER PE
+0x0440    &#x0440;  		# CYRILLIC SMALL LETTER ER
+0x0441    &#x0441;  		# CYRILLIC SMALL LETTER ES
+0x0442    &#x0442;  		# CYRILLIC SMALL LETTER TE
+0x0443    &#x0443;  		# CYRILLIC SMALL LETTER U
+0x0444    &#x0444;  		# CYRILLIC SMALL LETTER EF
+0x0445    &#x0445;  		# CYRILLIC SMALL LETTER HA
+0x0446    &#x0446;  		# CYRILLIC SMALL LETTER TSE
+0x0447    &#x0447;  		# CYRILLIC SMALL LETTER CHE
+0x0448    &#x0448;  		# CYRILLIC SMALL LETTER SHA
+0x0449    &#x0449;  		# CYRILLIC SMALL LETTER SHCHA
+0x044A    &#x044A;  		# CYRILLIC SMALL LETTER HARD SIGN
+0x044B    &#x044B;  		# CYRILLIC SMALL LETTER YERU
+0x044C    &#x044C;  		# CYRILLIC SMALL LETTER SOFT SIGN
+0x044D    &#x044D;  		# CYRILLIC SMALL LETTER E
+0x044E    &#x044E;  		# CYRILLIC SMALL LETTER YU
+0x044F    &#x044F;  		# CYRILLIC SMALL LETTER YA
+0x0451    &#x0451;  		# CYRILLIC SMALL LETTER IO
+0x0452    &#x0452;  		# CYRILLIC SMALL LETTER DJE
+0x0453    &#x0453;  		# CYRILLIC SMALL LETTER GJE
+0x0454    &#x0454;  		# CYRILLIC SMALL LETTER UKRAINIAN IE
+0x0455    &#x0455;  		# CYRILLIC SMALL LETTER DZE
+0x0456    &#x0456;  		# CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+0x0457    &#x0457;  		# CYRILLIC SMALL LETTER YI
+0x0458    &#x0458;  		# CYRILLIC SMALL LETTER JE
+0x0459    &#x0459;  		# CYRILLIC SMALL LETTER LJE
+0x045A    &#x045A;  		# CYRILLIC SMALL LETTER NJE
+0x045B    &#x045B;  		# CYRILLIC SMALL LETTER TSHE
+0x045C    &#x045C;  		# CYRILLIC SMALL LETTER KJE
+0x045E    &#x045E;  		# CYRILLIC SMALL LETTER SHORT U
+0x045F    &#x045F;  		# CYRILLIC SMALL LETTER DZHE
+0x2002    &#x2002;  		# EN SPACE
+0x2003    &#x2003;  		# EM SPACE
+0x2004    &#x2004;  		# THREE-PER-EM SPACE
+0x2005    &#x2005;  		# FOUR-PER-EM SPACE
+0x2007    &#x2007;  		# FIGURE SPACE
+0x2008    &#x2008;  		# PUNCTUATION SPACE
+0x2009    &#x2009;  		# THIN SPACE
+0x200A    &#x200A;  		# HAIR SPACE
+0x200C    &#x200C;  		# ZERO WIDTH NON-JOINER
+0x200D    &#x200D;  		# ZERO WIDTH JOINER
+0x200E    &#x200E;  		# LEFT-TO-RIGHT MARK
+0x200F    &#x200F;  		# RIGHT-TO-LEFT MARK
+0x2010    &#x2010;  		# HYPHEN
+0x2013    &#x2013;  		# EN DASH
+0x2014    &#x2014;  		# EM DASH
+0x2015    &#x2015;  		# HORIZONTAL BAR
+0x2016    &#x2016;  		# DOUBLE VERTICAL LINE
+0x2018    &#x2018;  		# LEFT SINGLE QUOTATION MARK
+0x2018    &#x2018;  		# LEFT SINGLE QUOTATION MARK
+0x2019    &#x2019;  		# RIGHT SINGLE QUOTATION MARK
+0x201A    &#x201A;  		# SINGLE LOW-9 QUOTATION MARK
+0x201A    &#x201A;  		# SINGLE LOW-9 QUOTATION MARK
+0x201C    &#x201C;  		# LEFT DOUBLE QUOTATION MARK
+0x201C    &#x201C;  		# LEFT DOUBLE QUOTATION MARK
+0x201D    &#x201D;  		# RIGHT DOUBLE QUOTATION MARK
+0x201E    &#x201E;  		# DOUBLE LOW-9 QUOTATION MARK
+0x201E    &#x201E;  		# DOUBLE LOW-9 QUOTATION MARK
+0x2020    &#x2020;  		# DAGGER
+0x2021    &#x2021;  		# DOUBLE DAGGER
+0x2022    &#x2022;  		# BULLET
+0x2025    &#x2025;  		# TWO DOT LEADER
+0x2026    &#x2026;  		# HORIZONTAL ELLIPSIS
+0x2026    &#x2026;  		# HORIZONTAL ELLIPSIS
+0x2030    &#x2030;  		# PER MILLE SIGN
+0x2032    &#x2032;  		# PRIME
+0x2032    &#x2032;  		# PRIME
+0x2033    &#x2033;  		# DOUBLE PRIME
+0x2034    &#x2034;  		# TRIPLE PRIME
+0x2035    &#x2035;  		# REVERSED PRIME
+0x2039    &#x2039;  		# SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+0x203A    &#x203A;  		# SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+0x203E    &#x203E;  		# OVERLINE
+0x2041    &#x2041;  		# CARET INSERTION POINT
+0x2043    &#x2043;  		# HYPHEN BULLET
+0x2044    &#x2044;  		# FRACTION SLASH
+0x20AC    &#x20AC;  		# EURO SIGN
+0x20DB    &#x20DB;  		# COMBINING THREE DOTS ABOVE
+0x20DC    &#x20DC;  		# COMBINING FOUR DOTS ABOVE
+0x2105    &#x2105;  		# CARE OF
+0x210B    &#x210B;  		# SCRIPT CAPITAL H
+0x210F    &#x210F;  		# PLANCK CONSTANT OVER TWO PI
+0x2111    &#x2111;  		# BLACK-LETTER CAPITAL I
+0x2112    &#x2112;  		# SCRIPT CAPITAL L
+0x2113    &#x2113;  		# SCRIPT SMALL L
+0x2116    &#x2116;  		# NUMERO SIGN
+0x2117    &#x2117;  		# SOUND RECORDING COPYRIGHT
+0x2118    &#x2118;  		# SCRIPT CAPITAL P
+0x211C    &#x211C;  		# BLACK-LETTER CAPITAL R
+0x211E    &#x211E;  		# PRESCRIPTION TAKE
+0x2122    &#x2122;  		# TRADE MARK SIGN
+0x2126    &#x2126;  		# OHM SIGN
+0x212B    &#x212B;  		# ANGSTROM SIGN
+0x212C    &#x212C;  		# SCRIPT CAPITAL B
+0x2133    &#x2133;  		# SCRIPT CAPITAL M
+0x2134    &#x2134;  		# SCRIPT SMALL O
+0x2135    &#x2135;  		# ALEF SYMBOL
+0x2135    &#x2135;  		# ALEF SYMBOL
+0x2136    &#x2136;  		# BET SYMBOL
+0x2137    &#x2137;  		# GIMEL SYMBOL
+0x2138    &#x2138;  		# DALET SYMBOL
+0x2153    &#x2153;  		# VULGAR FRACTION ONE THIRD
+0x2154    &#x2154;  		# VULGAR FRACTION TWO THIRDS
+0x2155    &#x2155;  		# VULGAR FRACTION ONE FIFTH
+0x2156    &#x2156;  		# VULGAR FRACTION TWO FIFTHS
+0x2157    &#x2157;  		# VULGAR FRACTION THREE FIFTHS
+0x2158    &#x2158;  		# VULGAR FRACTION FOUR FIFTHS
+0x2159    &#x2159;  		# VULGAR FRACTION ONE SIXTH
+0x215A    &#x215A;  		# VULGAR FRACTION FIVE SIXTHS
+0x215B    &#x215B;  		# VULGAR FRACTION ONE EIGHTH
+0x215C    &#x215C;  		# VULGAR FRACTION THREE EIGHTHS
+0x215D    &#x215D;  		# VULGAR FRACTION FIVE EIGHTHS
+0x215E    &#x215E;  		# VULGAR FRACTION SEVEN EIGHTHS
+0x2190    &#x2190;  		# LEFTWARDS ARROW
+0x2191    &#x2191;  		# UPWARDS ARROW
+0x2192    &#x2192;  		# RIGHTWARDS ARROW
+0x2193    &#x2193;  		# DOWNWARDS ARROW
+0x2194    &#x2194;  		# LEFT RIGHT ARROW
+0x2195    &#x2195;  		# UP DOWN ARROW
+0x2196    &#x2196;  		# NORTH WEST ARROW
+0x2197    &#x2197;  		# NORTH EAST ARROW
+0x2198    &#x2198;  		# SOUTH EAST ARROW
+0x2199    &#x2199;  		# SOUTH WEST ARROW
+0x219A    &#x219A;  		# LEFTWARDS ARROW WITH STROKE
+0x219B    &#x219B;  		# RIGHTWARDS ARROW WITH STROKE
+0x219D    &#x219D;  		# RIGHTWARDS WAVE ARROW
+0x219E    &#x219E;  		# LEFTWARDS TWO HEADED ARROW
+0x21A0    &#x21A0;  		# RIGHTWARDS TWO HEADED ARROW
+0x21A2    &#x21A2;  		# LEFTWARDS ARROW WITH TAIL
+0x21A3    &#x21A3;  		# RIGHTWARDS ARROW WITH TAIL
+0x21A6    &#x21A6;  		# RIGHTWARDS ARROW FROM BAR
+0x21A9    &#x21A9;  		# LEFTWARDS ARROW WITH HOOK
+0x21AA    &#x21AA;  		# RIGHTWARDS ARROW WITH HOOK
+0x21AB    &#x21AB;  		# LEFTWARDS ARROW WITH LOOP
+0x21AC    &#x21AC;  		# RIGHTWARDS ARROW WITH LOOP
+0x21AD    &#x21AD;  		# LEFT RIGHT WAVE ARROW
+0x21AE    &#x21AE;  		# LEFT RIGHT ARROW WITH STROKE
+0x21B0    &#x21B0;  		# UPWARDS ARROW WITH TIP LEFTWARDS
+0x21B1    &#x21B1;  		# UPWARDS ARROW WITH TIP RIGHTWARDS
+0x21B5    &#x21B5;  		# DOWNWARDS ARROW WITH CORNER LEFTWARDS
+0x21B6    &#x21B6;  		# ANTICLOCKWISE TOP SEMICIRCLE ARROW
+0x21B7    &#x21B7;  		# CLOCKWISE TOP SEMICIRCLE ARROW
+0x21BA    &#x21BA;  		# ANTICLOCKWISE OPEN CIRCLE ARROW
+0x21BB    &#x21BB;  		# CLOCKWISE OPEN CIRCLE ARROW
+0x21BC    &#x21BC;  		# LEFTWARDS HARPOON WITH BARB UPWARDS
+0x21BD    &#x21BD;  		# LEFTWARDS HARPOON WITH BARB DOWNWARDS
+0x21BE    &#x21BE;  		# UPWARDS HARPOON WITH BARB RIGHTWARDS
+0x21BF    &#x21BF;  		# UPWARDS HARPOON WITH BARB LEFTWARDS
+0x21C0    &#x21C0;  		# RIGHTWARDS HARPOON WITH BARB UPWARDS
+0x21C1    &#x21C1;  		# RIGHTWARDS HARPOON WITH BARB DOWNWARDS
+0x21C2    &#x21C2;  		# DOWNWARDS HARPOON WITH BARB RIGHTWARDS
+0x21C3    &#x21C3;  		# DOWNWARDS HARPOON WITH BARB LEFTWARDS
+0x21C4    &#x21C4;  		# RIGHTWARDS ARROW OVER LEFTWARDS ARROW
+0x21C6    &#x21C6;  		# LEFTWARDS ARROW OVER RIGHTWARDS ARROW
+0x21C7    &#x21C7;  		# LEFTWARDS PAIRED ARROWS
+0x21C8    &#x21C8;  		# UPWARDS PAIRED ARROWS
+0x21C9    &#x21C9;  		# RIGHTWARDS PAIRED ARROWS
+0x21CA    &#x21CA;  		# DOWNWARDS PAIRED ARROWS
+0x21CB    &#x21CB;  		# LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
+0x21CC    &#x21CC;  		# RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
+0x21CD    &#x21CD;  		# LEFTWARDS DOUBLE ARROW WITH STROKE
+0x21CE    &#x21CE;  		# LEFT RIGHT DOUBLE ARROW WITH STROKE
+0x21CF    &#x21CF;  		# RIGHTWARDS DOUBLE ARROW WITH STROKE
+0x21D0    &#x21D0;  		# LEFTWARDS DOUBLE ARROW
+0x21D1    &#x21D1;  		# UPWARDS DOUBLE ARROW
+0x21D2    &#x21D2;  		# RIGHTWARDS DOUBLE ARROW
+0x21D3    &#x21D3;  		# DOWNWARDS DOUBLE ARROW
+0x21D4    &#x21D4;  		# LEFT RIGHT DOUBLE ARROW
+0x21D5    &#x21D5;  		# UP DOWN DOUBLE ARROW
+0x21DA    &#x21DA;  		# LEFTWARDS TRIPLE ARROW
+0x21DB    &#x21DB;  		# RIGHTWARDS TRIPLE ARROW
+0x2200    &#x2200;  		# FOR ALL
+0x2201    &#x2201;  		# COMPLEMENT
+0x2202    &#x2202;  		# PARTIAL DIFFERENTIAL
+0x2203    &#x2203;  		# THERE EXISTS
+0x2204    &#x2204;  		# THERE DOES NOT EXIST
+0x2205    &#x2205;  		# EMPTY SET
+0x2207    &#x2207;  		# NABLA
+0x2208    &#x2208;  		# ELEMENT OF
+0x2209    &#x2209;  		# NOT AN ELEMENT OF
+0x220A    &#x220A;  		# SMALL ELEMENT OF
+0x220B    &#x220B;  		# CONTAINS AS MEMBER
+0x220D    &#x220D;  		# SMALL CONTAINS AS MEMBER
+0x220F    &#x220F;  		# N-ARY PRODUCT
+0x2210    &#x2210;  		# N-ARY COPRODUCT
+0x2211    &#x2211;  		# N-ARY SUMMATION
+0x2212    &#x2212;  		# MINUS SIGN
+0x2213    &#x2213;  		# MINUS-OR-PLUS SIGN
+0x2214    &#x2214;  		# DOT PLUS
+0x2216    &#x2216;  		# SET MINUS
+0x2217    &#x2217;  		# ASTERISK OPERATOR
+0x2218    &#x2218;  		# RING OPERATOR
+0x221A    &#x221A;  		# SQUARE ROOT
+0x221D    &#x221D;  		# PROPORTIONAL TO
+0x221E    &#x221E;  		# INFINITY
+0x221F    &#x221F;  		# RIGHT ANGLE
+0x2220    &#x2220;  		# ANGLE
+0x2221    &#x2221;  		# MEASURED ANGLE
+0x2222    &#x2222;  		# SPHERICAL ANGLE
+0x2223    &#x2223;  		# DIVIDES
+0x2224    &#x2224;  		# DOES NOT DIVIDE
+0x2225    &#x2225;  		# PARALLEL TO
+0x2226    &#x2226;  		# NOT PARALLEL TO
+0x2227    &#x2227;  		# LOGICAL AND
+0x2228    &#x2228;  		# LOGICAL OR
+0x2229    &#x2229;  		# INTERSECTION
+0x222A    &#x222A;  		# UNION
+0x222B    &#x222B;  		# INTEGRAL
+0x222E    &#x222E;  		# CONTOUR INTEGRAL
+0x2234    &#x2234;  		# THEREFORE
+0x2235    &#x2235;  		# BECAUSE
+0x223C    &#x223C;  		# TILDE OPERATOR
+0x223D    &#x223D;  		# REVERSED TILDE
+0x2240    &#x2240;  		# WREATH PRODUCT
+0x2241    &#x2241;  		# NOT TILDE
+0x2243    &#x2243;  		# ASYMPTOTICALLY EQUAL TO
+0x2244    &#x2244;  		# NOT ASYMPTOTICALLY EQUAL TO
+0x2245    &#x2245;  		# APPROXIMATELY EQUAL TO
+0x2247    &#x2247;  		# NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
+0x2248    &#x2248;  		# ALMOST EQUAL TO
+0x2249    &#x2249;  		# NOT ALMOST EQUAL TO
+0x224A    &#x224A;  		# ALMOST EQUAL OR EQUAL TO
+0x224C    &#x224C;  		# ALL EQUAL TO
+0x224E    &#x224E;  		# GEOMETRICALLY EQUIVALENT TO
+0x224F    &#x224F;  		# DIFFERENCE BETWEEN
+0x2250    &#x2250;  		# APPROACHES THE LIMIT
+0x2251    &#x2251;  		# GEOMETRICALLY EQUAL TO
+0x2252    &#x2252;  		# APPROXIMATELY EQUAL TO OR THE IMAGE OF
+0x2253    &#x2253;  		# IMAGE OF OR APPROXIMATELY EQUAL TO
+0x2254    &#x2254;  		# COLON EQUALS
+0x2255    &#x2255;  		# EQUALS COLON
+0x2256    &#x2256;  		# RING IN EQUAL TO
+0x2257    &#x2257;  		# RING EQUAL TO
+0x2259    &#x2259;  		# ESTIMATES
+0x225C    &#x225C;  		# DELTA EQUAL TO
+0x2260    &#x2260;  		# NOT EQUAL TO
+0x2261    &#x2261;  		# IDENTICAL TO
+0x2262    &#x2262;  		# NOT IDENTICAL TO
+0x2264    &#x2264;  		# LESS-THAN OR EQUAL TO
+0x2265    &#x2265;  		# GREATER-THAN OR EQUAL TO
+0x2266    &#x2266;  		# LESS-THAN OVER EQUAL TO
+0x2267    &#x2267;  		# GREATER-THAN OVER EQUAL TO
+0x2268    &#x2268;  		# LESS-THAN BUT NOT EQUAL TO
+0x2269    &#x2269;  		# GREATER-THAN BUT NOT EQUAL TO
+0x226A    &#x226A;  		# MUCH LESS-THAN
+0x226B    &#x226B;  		# MUCH GREATER-THAN
+0x226C    &#x226C;  		# BETWEEN
+0x226E    &#x226E;  		# NOT LESS-THAN
+0x226F    &#x226F;  		# NOT GREATER-THAN
+0x2270    &#x2270;  		# NEITHER LESS-THAN NOR EQUAL TO
+0x2271    &#x2271;  		# NEITHER GREATER-THAN NOR EQUAL TO
+0x2272    &#x2272;  		# LESS-THAN OR EQUIVALENT TO
+0x2273    &#x2273;  		# GREATER-THAN OR EQUIVALENT TO
+0x2276    &#x2276;  		# LESS-THAN OR GREATER-THAN
+0x2277    &#x2277;  		# GREATER-THAN OR LESS-THAN
+0x227A    &#x227A;  		# PRECEDES
+0x227B    &#x227B;  		# SUCCEEDS
+0x227C    &#x227C;  		# PRECEDES OR EQUAL TO
+0x227D    &#x227D;  		# SUCCEEDS OR EQUAL TO
+0x227E    &#x227E;  		# PRECEDES OR EQUIVALENT TO
+0x227F    &#x227F;  		# SUCCEEDS OR EQUIVALENT TO
+0x2280    &#x2280;  		# DOES NOT PRECEDE
+0x2281    &#x2281;  		# DOES NOT SUCCEED
+0x2282    &#x2282;  		# SUBSET OF
+0x2283    &#x2283;  		# SUPERSET OF
+0x2284    &#x2284;  		# NOT A SUBSET OF
+0x2285    &#x2285;  		# NOT A SUPERSET OF
+0x2286    &#x2286;  		# SUBSET OF OR EQUAL TO
+0x2287    &#x2287;  		# SUPERSET OF OR EQUAL TO
+0x2288    &#x2288;  		# NEITHER A SUBSET OF NOR EQUAL TO
+0x2289    &#x2289;  		# NEITHER A SUPERSET OF NOR EQUAL TO
+0x228A    &#x228A;  		# SUBSET OF WITH NOT EQUAL TO
+0x228B    &#x228B;  		# SUPERSET OF WITH NOT EQUAL TO
+0x228E    &#x228E;  		# MULTISET UNION
+0x228F    &#x228F;  		# SQUARE IMAGE OF
+0x2290    &#x2290;  		# SQUARE ORIGINAL OF
+0x2291    &#x2291;  		# SQUARE IMAGE OF OR EQUAL TO
+0x2292    &#x2292;  		# SQUARE ORIGINAL OF OR EQUAL TO
+0x2293    &#x2293;  		# SQUARE CAP
+0x2294    &#x2294;  		# SQUARE CUP
+0x2295    &#x2295;  		# CIRCLED PLUS
+0x2296    &#x2296;  		# CIRCLED MINUS
+0x2297    &#x2297;  		# CIRCLED TIMES
+0x2298    &#x2298;  		# CIRCLED DIVISION SLASH
+0x2299    &#x2299;  		# CIRCLED DOT OPERATOR
+0x229A    &#x229A;  		# CIRCLED RING OPERATOR
+0x229B    &#x229B;  		# CIRCLED ASTERISK OPERATOR
+0x229D    &#x229D;  		# CIRCLED DASH
+0x229E    &#x229E;  		# SQUARED PLUS
+0x229F    &#x229F;  		# SQUARED MINUS
+0x22A0    &#x22A0;  		# SQUARED TIMES
+0x22A1    &#x22A1;  		# SQUARED DOT OPERATOR
+0x22A2    &#x22A2;  		# RIGHT TACK
+0x22A3    &#x22A3;  		# LEFT TACK
+0x22A4    &#x22A4;  		# DOWN TACK
+0x22A5    &#x22A5;  		# UP TACK
+0x22A7    &#x22A7;  		# MODELS
+0x22A8    &#x22A8;  		# TRUE
+0x22A9    &#x22A9;  		# FORCES
+0x22AA    &#x22AA;  		# TRIPLE VERTICAL BAR RIGHT TURNSTILE
+0x22AC    &#x22AC;  		# DOES NOT PROVE
+0x22AD    &#x22AD;  		# NOT TRUE
+0x22AE    &#x22AE;  		# DOES NOT FORCE
+0x22AF    &#x22AF;  		# NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
+0x22B2    &#x22B2;  		# NORMAL SUBGROUP OF
+0x22B3    &#x22B3;  		# CONTAINS AS NORMAL SUBGROUP
+0x22B4    &#x22B4;  		# NORMAL SUBGROUP OF OR EQUAL TO
+0x22B5    &#x22B5;  		# CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
+0x22B8    &#x22B8;  		# MULTIMAP
+0x22BA    &#x22BA;  		# INTERCALATE
+0x22BB    &#x22BB;  		# XOR
+0x22BC    &#x22BC;  		# NAND
+0x22C4    &#x22C4;  		# DIAMOND OPERATOR
+0x22C5    &#x22C5;  		# DOT OPERATOR
+0x22C6    &#x22C6;  		# STAR OPERATOR
+0x22C7    &#x22C7;  		# DIVISION TIMES
+0x22C8    &#x22C8;  		# BOWTIE
+0x22C9    &#x22C9;  		# LEFT NORMAL FACTOR SEMIDIRECT PRODUCT
+0x22CA    &#x22CA;  		# RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT
+0x22CB    &#x22CB;  		# LEFT SEMIDIRECT PRODUCT
+0x22CC    &#x22CC;  		# RIGHT SEMIDIRECT PRODUCT
+0x22CD    &#x22CD;  		# REVERSED TILDE EQUALS
+0x22CE    &#x22CE;  		# CURLY LOGICAL OR
+0x22CF    &#x22CF;  		# CURLY LOGICAL AND
+0x22D0    &#x22D0;  		# DOUBLE SUBSET
+0x22D1    &#x22D1;  		# DOUBLE SUPERSET
+0x22D2    &#x22D2;  		# DOUBLE INTERSECTION
+0x22D3    &#x22D3;  		# DOUBLE UNION
+0x22D4    &#x22D4;  		# PITCHFORK
+0x22D6    &#x22D6;  		# LESS-THAN WITH DOT
+0x22D7    &#x22D7;  		# GREATER-THAN WITH DOT
+0x22D8    &#x22D8;  		# VERY MUCH LESS-THAN
+0x22D9    &#x22D9;  		# VERY MUCH GREATER-THAN
+0x22DA    &#x22DA;  		# LESS-THAN EQUAL TO OR GREATER-THAN
+0x22DB    &#x22DB;  		# GREATER-THAN EQUAL TO OR LESS-THAN
+0x22DC    &#x22DC;  		# EQUAL TO OR LESS-THAN
+0x22DD    &#x22DD;  		# EQUAL TO OR GREATER-THAN
+0x22DE    &#x22DE;  		# EQUAL TO OR PRECEDES
+0x22DF    &#x22DF;  		# EQUAL TO OR SUCCEEDS
+0x22E0    &#x22E0;  		# DOES NOT PRECEDE OR EQUAL
+0x22E1    &#x22E1;  		# DOES NOT SUCCEED OR EQUAL
+0x22E6    &#x22E6;  		# LESS-THAN BUT NOT EQUIVALENT TO
+0x22E7    &#x22E7;  		# GREATER-THAN BUT NOT EQUIVALENT TO
+0x22E8    &#x22E8;  		# PRECEDES BUT NOT EQUIVALENT TO
+0x22E9    &#x22E9;  		# SUCCEEDS BUT NOT EQUIVALENT TO
+0x22EA    &#x22EA;  		# NOT NORMAL SUBGROUP OF
+0x22EB    &#x22EB;  		# DOES NOT CONTAIN AS NORMAL SUBGROUP
+0x22EC    &#x22EC;  		# NOT NORMAL SUBGROUP OF OR EQUAL TO
+0x22ED    &#x22ED;  		# DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
+0x22EE    &#x22EE;  		# VERTICAL ELLIPSIS
+0x2306    &#x2306;  		# PERSPECTIVE
+0x2308    &#x2308;  		# LEFT CEILING
+0x2309    &#x2309;  		# RIGHT CEILING
+0x230A    &#x230A;  		# LEFT FLOOR
+0x230B    &#x230B;  		# RIGHT FLOOR
+0x230C    &#x230C;  		# BOTTOM RIGHT CROP
+0x230D    &#x230D;  		# BOTTOM LEFT CROP
+0x230E    &#x230E;  		# TOP RIGHT CROP
+0x230F    &#x230F;  		# TOP LEFT CROP
+0x2315    &#x2315;  		# TELEPHONE RECORDER
+0x2316    &#x2316;  		# POSITION INDICATOR
+0x231C    &#x231C;  		# TOP LEFT CORNER
+0x231D    &#x231D;  		# TOP RIGHT CORNER
+0x231E    &#x231E;  		# BOTTOM LEFT CORNER
+0x231F    &#x231F;  		# BOTTOM RIGHT CORNER
+0x2322    &#x2322;  		# FROWN
+0x2323    &#x2323;  		# SMILE
+0x2329    &#x2329;  		# LEFT-POINTING ANGLE BRACKET
+0x232A    &#x232A;  		# RIGHT-POINTING ANGLE BRACKET
+0x2423    &#x2423;  		# OPEN BOX
+0x24C8    &#x24C8;  		# CIRCLED LATIN CAPITAL LETTER S
+0x2500    &#x2500;  		# BOX DRAWINGS LIGHT HORIZONTAL
+0x2502    &#x2502;  		# BOX DRAWINGS LIGHT VERTICAL
+0x250C    &#x250C;  		# BOX DRAWINGS LIGHT DOWN AND RIGHT
+0x2510    &#x2510;  		# BOX DRAWINGS LIGHT DOWN AND LEFT
+0x2514    &#x2514;  		# BOX DRAWINGS LIGHT UP AND RIGHT
+0x2518    &#x2518;  		# BOX DRAWINGS LIGHT UP AND LEFT
+0x251C    &#x251C;  		# BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+0x2524    &#x2524;  		# BOX DRAWINGS LIGHT VERTICAL AND LEFT
+0x252C    &#x252C;  		# BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+0x2534    &#x2534;  		# BOX DRAWINGS LIGHT UP AND HORIZONTAL
+0x253C    &#x253C;  		# BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+0x2550    &#x2550;  		# BOX DRAWINGS DOUBLE HORIZONTAL
+0x2551    &#x2551;  		# BOX DRAWINGS DOUBLE VERTICAL
+0x2552    &#x2552;  		# BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
+0x2553    &#x2553;  		# BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
+0x2554    &#x2554;  		# BOX DRAWINGS DOUBLE DOWN AND RIGHT
+0x2555    &#x2555;  		# BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
+0x2556    &#x2556;  		# BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
+0x2557    &#x2557;  		# BOX DRAWINGS DOUBLE DOWN AND LEFT
+0x2558    &#x2558;  		# BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
+0x2559    &#x2559;  		# BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
+0x255A    &#x255A;  		# BOX DRAWINGS DOUBLE UP AND RIGHT
+0x255B    &#x255B;  		# BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
+0x255C    &#x255C;  		# BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
+0x255D    &#x255D;  		# BOX DRAWINGS DOUBLE UP AND LEFT
+0x255E    &#x255E;  		# BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+0x255F    &#x255F;  		# BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
+0x2560    &#x2560;  		# BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
+0x2561    &#x2561;  		# BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
+0x2562    &#x2562;  		# BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
+0x2563    &#x2563;  		# BOX DRAWINGS DOUBLE VERTICAL AND LEFT
+0x2564    &#x2564;  		# BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
+0x2565    &#x2565;  		# BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
+0x2566    &#x2566;  		# BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
+0x2567    &#x2567;  		# BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
+0x2568    &#x2568;  		# BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
+0x2569    &#x2569;  		# BOX DRAWINGS DOUBLE UP AND HORIZONTAL
+0x256A    &#x256A;  		# BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+0x256B    &#x256B;  		# BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
+0x256C    &#x256C;  		# BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
+0x2580    &#x2580;  		# UPPER HALF BLOCK
+0x2584    &#x2584;  		# LOWER HALF BLOCK
+0x2588    &#x2588;  		# FULL BLOCK
+0x2591    &#x2591;  		# LIGHT SHADE
+0x2592    &#x2592;  		# MEDIUM SHADE
+0x2593    &#x2593;  		# DARK SHADE
+0x25A1    &#x25A1;  		# WHITE SQUARE
+0x25AA    &#x25AA;  		# BLACK SMALL SQUARE
+0x25AD    &#x25AD;  		# WHITE RECTANGLE
+0x25AE    &#x25AE;  		# BLACK VERTICAL RECTANGLE
+0x25B3    &#x25B3;  		# WHITE UP-POINTING TRIANGLE
+0x25B4    &#x25B4;  		# BLACK UP-POINTING SMALL TRIANGLE
+0x25B5    &#x25B5;  		# WHITE UP-POINTING SMALL TRIANGLE
+0x25B8    &#x25B8;  		# BLACK RIGHT-POINTING SMALL TRIANGLE
+0x25B9    &#x25B9;  		# WHITE RIGHT-POINTING SMALL TRIANGLE
+0x25BD    &#x25BD;  		# WHITE DOWN-POINTING TRIANGLE
+0x25BE    &#x25BE;  		# BLACK DOWN-POINTING SMALL TRIANGLE
+0x25BF    &#x25BF;  		# WHITE DOWN-POINTING SMALL TRIANGLE
+0x25C2    &#x25C2;  		# BLACK LEFT-POINTING SMALL TRIANGLE
+0x25C3    &#x25C3;  		# WHITE LEFT-POINTING SMALL TRIANGLE
+0x25CA    &#x25CA;  		# LOZENGE
+0x25CB    &#x25CB;  		# WHITE CIRCLE
+0x2605    &#x2605;  		# BLACK STAR
+0x2606    &#x2606;  		# WHITE STAR
+0x260E    &#x260E;  		# BLACK TELEPHONE
+0x2640    &#x2640;  		# FEMALE SIGN
+0x2642    &#x2642;  		# MALE SIGN
+0x2660    &#x2660;  		# BLACK SPADE SUIT
+0x2663    &#x2663;  		# BLACK CLUB SUIT
+0x2665    &#x2665;  		# BLACK HEART SUIT
+0x2666    &#x2666;  		# BLACK DIAMOND SUIT
+0x266A    &#x266A;  		# EIGHTH NOTE
+0x266D    &#x266D;  		# MUSIC FLAT SIGN
+0x266E    &#x266E;  		# MUSIC NATURAL SIGN
+0x266F    &#x266F;  		# MUSIC SHARP SIGN
+0x2713    &#x2713;  		# CHECK MARK
+0x2717    &#x2717;  		# BALLOT X
+0x2720    &#x2720;  		# MALTESE CROSS
+0x2726    &#x2726;  		# BLACK FOUR POINTED STAR
+0x2727    &#x2727;  		# WHITE FOUR POINTED STAR
+0x2736    &#x2736;  		# SIX POINTED BLACK STAR
+0xFB00    &#xFB00;  		# LATIN SMALL LIGATURE FF
+0xFB01    &#xFB01;  		# LATIN SMALL LIGATURE FI
+0xFB02    &#xFB02;  		# LATIN SMALL LIGATURE FL
+0xFB03    &#xFB03;  		# LATIN SMALL LIGATURE FFI
+0xFB04    &#xFB04;  		# LATIN SMALL LIGATURE FFL
+
+
+</PRE>
+</BODY>
+</HTML>
diff --git a/test/utf-8-demo.html b/test/utf-8-demo.html
new file mode 100644
index 00000000..d792903f
--- /dev/null
+++ b/test/utf-8-demo.html
@@ -0,0 +1,216 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Markus Kuhn's UTF-8 demo</TITLE>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+<LINK REV="made" HREF="mailto:dickey@invisible-island.net">
+</HEAD>
+
+<BODY> 
+<pre>
+UTF-8 encoded sample plain-text file
+&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;&#x203e;
+
+Markus Kuhn [&#x2c8;ma&#x2b3;k&#x28a;s ku&#x2d0;n] &lt;mkuhn@acm.org&gt; &#x2014; 1999-08-20
+
+
+The ASCII compatible UTF-8 encoding of ISO 10646 and Unicode
+plain-text files is defined in RFC 2279 and in ISO 10646-1 Annex R.
+
+
+Using Unicode/UTF-8, you can write in emails and source code things such as
+
+Mathematics and Sciences:
+
+  &#x222e; E&#x22c5;da = Q,  n &#x2192; &#x221e;, &#x2211; f(i) = &#x220f; g(i), &#x2200;x&#x2208;&#x211d;: &#x2308;x&#x2309; = &#x2212;&#x230a;&#x2212;x&#x230b;, &#x3b1; &#x2227; &#xac;&#x3b2; = &#xac;(&#xac;&#x3b1; &#x2228; &#x3b2;),
+
+  &#x2115; &#x2286; &#x2115;&#x2080; &#x2282; &#x2124; &#x2282; &#x211a; &#x2282; &#x211d; &#x2282; &#x2102;, &#x22a5; &lt; a &#x2260; b &#x2261; c &#x2264; d &#x226a; &#x22a4; &#x21d2; (A &#x21d4; B),
+
+  2H&#x2082; + O&#x2082; &#x21cc; 2H&#x2082;O, R = 4.7 k&#x3a9;, &#x2300; 200 mm
+
+Linguistics and dictionaries:
+
+  &#xf0;i &#x131;nt&#x259;&#x2c8;n&#xe6;&#x283;&#x259;n&#x259;l f&#x259;&#x2c8;n&#x25b;t&#x131;k &#x259;so&#x28a;si&#x2c8;e&#x131;&#x283;n
+  Y [&#x2c8;&#x28f;psil&#x254;n], Yen [j&#x25b;n], Yoga [&#x2c8;jo&#x2d0;g&#x251;]
+
+APL:
+
+  ((V&#x2373;V)=&#x2373;&#x2374;V)/V&#x2190;,V    &#x2337;&#x2190;&#x2373;&#x2192;&#x2374;&#x2206;&#x2207;&#x2283;&#x203e;&#x234e;&#x2355;&#x2308;
+
+Nicer typography in plain text files:
+
+  &#x2554;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2557;
+  &#x2551;                                          &#x2551;
+  &#x2551;   &#x2022; &#x2018;single&#x2019; and &#x201c;double&#x201d; quotes         &#x2551;
+  &#x2551;                                          &#x2551;
+  &#x2551;   &#x2022; Curly apostrophes: &#x201c;We&#x2019;ve been here&#x201d; &#x2551;
+  &#x2551;                                          &#x2551;
+  &#x2551;   &#x2022; Latin-1 apostrophe and accents: '&#xb4;`  &#x2551;
+  &#x2551;                                          &#x2551;
+  &#x2551;   &#x2022; &#x201a;deutsche&#x2018; &#x201e;Anf&#xfc;hrungszeichen&#x201c;       &#x2551;
+  &#x2551;                                          &#x2551;
+  &#x2551;   &#x2022; &#x2020;, &#x2021;, &#x2030;, &#x2022;, 3&#x2013;4, &#x2014;, &#x2212;5/+5, &#x2122;, &#x2026;      &#x2551;
+  &#x2551;                                          &#x2551;
+  &#x2551;   &#x2022; ASCII safety test: 1lI|, 0OD, 8B     &#x2551;
+  &#x2551;                      &#x256d;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x256e;         &#x2551;
+  &#x2551;   &#x2022; the euro symbol: &#x2502; &#x20ac; 14.95 &#x2502;         &#x2551;
+  &#x2551;                      &#x2570;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x256f;         &#x2551;
+  &#x255a;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x2550;&#x255d;
+
+Greek (in Polytonic):
+
+  The Greek anthem:
+
+  &#x3a3;&#x1f72; &#x3b3;&#x3bd;&#x3c9;&#x3c1;&#x1f77;&#x3b6;&#x3c9; &#x1f00;&#x3c0;&#x1f78; &#x3c4;&#x1f74;&#x3bd; &#x3ba;&#x1f79;&#x3c8;&#x3b7;
+  &#x3c4;&#x3bf;&#x1fe6; &#x3c3;&#x3c0;&#x3b1;&#x3b8;&#x3b9;&#x3bf;&#x1fe6; &#x3c4;&#x1f74;&#x3bd; &#x3c4;&#x3c1;&#x3bf;&#x3bc;&#x3b5;&#x3c1;&#x1f75;,
+  &#x3c3;&#x1f72; &#x3b3;&#x3bd;&#x3c9;&#x3c1;&#x1f77;&#x3b6;&#x3c9; &#x1f00;&#x3c0;&#x1f78; &#x3c4;&#x1f74;&#x3bd; &#x1f44;&#x3c8;&#x3b7;
+  &#x3c0;&#x3bf;&#x1f7a; &#x3bc;&#x1f72; &#x3b2;&#x1f77;&#x3b1; &#x3bc;&#x3b5;&#x3c4;&#x3c1;&#x1f71;&#x3b5;&#x3b9; &#x3c4;&#x1f74; &#x3b3;&#x1fc6;.
+
+  &#x1fbf;&#x391;&#x3c0;&#x1fbf; &#x3c4;&#x1f70; &#x3ba;&#x1f79;&#x3ba;&#x3ba;&#x3b1;&#x3bb;&#x3b1; &#x3b2;&#x3b3;&#x3b1;&#x3bb;&#x3bc;&#x1f73;&#x3bd;&#x3b7;
+  &#x3c4;&#x1ff6;&#x3bd; &#x1ffe;&#x395;&#x3bb;&#x3bb;&#x1f75;&#x3bd;&#x3c9;&#x3bd; &#x3c4;&#x1f70; &#x1f31;&#x3b5;&#x3c1;&#x1f71;
+  &#x3ba;&#x3b1;&#x1f76; &#x3c3;&#x1f70;&#x3bd; &#x3c0;&#x3c1;&#x1ff6;&#x3c4;&#x3b1; &#x1f00;&#x3bd;&#x3b4;&#x3c1;&#x3b5;&#x3b9;&#x3c9;&#x3bc;&#x1f73;&#x3bd;&#x3b7;
+  &#x3c7;&#x3b1;&#x1fd6;&#x3c1;&#x3b5;, &#x1f66; &#x3c7;&#x3b1;&#x1fd6;&#x3c1;&#x3b5;, &#x1fbf;&#x395;&#x3bb;&#x3b5;&#x3c5;&#x3b8;&#x3b5;&#x3c1;&#x3b9;&#x1f71;!
+
+  From a speech of Demosthenes in the 4th century BC:
+
+  &#x39f;&#x1f50;&#x3c7;&#x1f76; &#x3c4;&#x3b1;&#x1f50;&#x3c4;&#x1f70; &#x3c0;&#x3b1;&#x3c1;&#x1f77;&#x3c3;&#x3c4;&#x3b1;&#x3c4;&#x3b1;&#x1f77; &#x3bc;&#x3bf;&#x3b9; &#x3b3;&#x3b9;&#x3b3;&#x3bd;&#x1f7d;&#x3c3;&#x3ba;&#x3b5;&#x3b9;&#x3bd;, &#x1f66; &#x1f04;&#x3bd;&#x3b4;&#x3c1;&#x3b5;&#x3c2; &#x1fbf;&#x391;&#x3b8;&#x3b7;&#x3bd;&#x3b1;&#x1fd6;&#x3bf;&#x3b9;,
+  &#x1f45;&#x3c4;&#x3b1;&#x3bd; &#x3c4;&#x1fbf; &#x3b5;&#x1f30;&#x3c2; &#x3c4;&#x1f70; &#x3c0;&#x3c1;&#x1f71;&#x3b3;&#x3bc;&#x3b1;&#x3c4;&#x3b1; &#x1f00;&#x3c0;&#x3bf;&#x3b2;&#x3bb;&#x1f73;&#x3c8;&#x3c9; &#x3ba;&#x3b1;&#x1f76; &#x1f45;&#x3c4;&#x3b1;&#x3bd; &#x3c0;&#x3c1;&#x1f78;&#x3c2; &#x3c4;&#x3bf;&#x1f7a;&#x3c2;
+  &#x3bb;&#x1f79;&#x3b3;&#x3bf;&#x3c5;&#x3c2; &#x3bf;&#x1f53;&#x3c2; &#x1f00;&#x3ba;&#x3bf;&#x1f7b;&#x3c9;&#x387; &#x3c4;&#x3bf;&#x1f7a;&#x3c2; &#x3bc;&#x1f72;&#x3bd; &#x3b3;&#x1f70;&#x3c1; &#x3bb;&#x1f79;&#x3b3;&#x3bf;&#x3c5;&#x3c2; &#x3c0;&#x3b5;&#x3c1;&#x1f76; &#x3c4;&#x3bf;&#x1fe6;
+  &#x3c4;&#x3b9;&#x3bc;&#x3c9;&#x3c1;&#x1f75;&#x3c3;&#x3b1;&#x3c3;&#x3b8;&#x3b1;&#x3b9; &#x3a6;&#x1f77;&#x3bb;&#x3b9;&#x3c0;&#x3c0;&#x3bf;&#x3bd; &#x1f41;&#x3c1;&#x1ff6; &#x3b3;&#x3b9;&#x3b3;&#x3bd;&#x3bf;&#x3bc;&#x1f73;&#x3bd;&#x3bf;&#x3c5;&#x3c2;, &#x3c4;&#x1f70; &#x3b4;&#x1f72; &#x3c0;&#x3c1;&#x1f71;&#x3b3;&#x3bc;&#x3b1;&#x3c4;&#x1fbf; 
+  &#x3b5;&#x1f30;&#x3c2; &#x3c4;&#x3bf;&#x1fe6;&#x3c4;&#x3bf; &#x3c0;&#x3c1;&#x3bf;&#x1f75;&#x3ba;&#x3bf;&#x3bd;&#x3c4;&#x3b1;,  &#x1f65;&#x3c3;&#x3b8;&#x1fbf; &#x1f45;&#x3c0;&#x3c9;&#x3c2; &#x3bc;&#x1f74; &#x3c0;&#x3b5;&#x3b9;&#x3c3;&#x1f79;&#x3bc;&#x3b5;&#x3b8;&#x1fbf; &#x3b1;&#x1f50;&#x3c4;&#x3bf;&#x1f76;
+  &#x3c0;&#x3c1;&#x1f79;&#x3c4;&#x3b5;&#x3c1;&#x3bf;&#x3bd; &#x3ba;&#x3b1;&#x3ba;&#x1ff6;&#x3c2; &#x3c3;&#x3ba;&#x1f73;&#x3c8;&#x3b1;&#x3c3;&#x3b8;&#x3b1;&#x3b9; &#x3b4;&#x1f73;&#x3bf;&#x3bd;. &#x3bf;&#x1f50;&#x3b4;&#x1f73;&#x3bd; &#x3bf;&#x1f56;&#x3bd; &#x1f04;&#x3bb;&#x3bb;&#x3bf; &#x3bc;&#x3bf;&#x3b9; &#x3b4;&#x3bf;&#x3ba;&#x3bf;&#x1fe6;&#x3c3;&#x3b9;&#x3bd;
+  &#x3bf;&#x1f31; &#x3c4;&#x1f70; &#x3c4;&#x3bf;&#x3b9;&#x3b1;&#x1fe6;&#x3c4;&#x3b1; &#x3bb;&#x1f73;&#x3b3;&#x3bf;&#x3bd;&#x3c4;&#x3b5;&#x3c2; &#x1f22; &#x3c4;&#x1f74;&#x3bd; &#x1f51;&#x3c0;&#x1f79;&#x3b8;&#x3b5;&#x3c3;&#x3b9;&#x3bd;, &#x3c0;&#x3b5;&#x3c1;&#x1f76; &#x1f27;&#x3c2; &#x3b2;&#x3bf;&#x3c5;&#x3bb;&#x3b5;&#x1f7b;&#x3b5;&#x3c3;&#x3b8;&#x3b1;&#x3b9;,
+  &#x3bf;&#x1f50;&#x3c7;&#x1f76; &#x3c4;&#x1f74;&#x3bd; &#x3bf;&#x1f56;&#x3c3;&#x3b1;&#x3bd; &#x3c0;&#x3b1;&#x3c1;&#x3b9;&#x3c3;&#x3c4;&#x1f71;&#x3bd;&#x3c4;&#x3b5;&#x3c2; &#x1f51;&#x3bc;&#x1fd6;&#x3bd; &#x1f01;&#x3bc;&#x3b1;&#x3c1;&#x3c4;&#x1f71;&#x3bd;&#x3b5;&#x3b9;&#x3bd;. &#x1f10;&#x3b3;&#x1f7c; &#x3b4;&#x1f73;, &#x1f45;&#x3c4;&#x3b9; &#x3bc;&#x1f73;&#x3bd;
+  &#x3c0;&#x3bf;&#x3c4;&#x1fbf; &#x1f10;&#x3be;&#x1fc6;&#x3bd; &#x3c4;&#x1fc7; &#x3c0;&#x1f79;&#x3bb;&#x3b5;&#x3b9; &#x3ba;&#x3b1;&#x1f76; &#x3c4;&#x1f70; &#x3b1;&#x1f51;&#x3c4;&#x1fc6;&#x3c2; &#x1f14;&#x3c7;&#x3b5;&#x3b9;&#x3bd; &#x1f00;&#x3c3;&#x3c6;&#x3b1;&#x3bb;&#x1ff6;&#x3c2; &#x3ba;&#x3b1;&#x1f76; &#x3a6;&#x1f77;&#x3bb;&#x3b9;&#x3c0;&#x3c0;&#x3bf;&#x3bd;
+  &#x3c4;&#x3b9;&#x3bc;&#x3c9;&#x3c1;&#x1f75;&#x3c3;&#x3b1;&#x3c3;&#x3b8;&#x3b1;&#x3b9;, &#x3ba;&#x3b1;&#x1f76; &#x3bc;&#x1f71;&#x3bb;&#x1fbf; &#x1f00;&#x3ba;&#x3c1;&#x3b9;&#x3b2;&#x1ff6;&#x3c2; &#x3bf;&#x1f36;&#x3b4;&#x3b1;&#x387; &#x1f10;&#x3c0;&#x1fbf; &#x1f10;&#x3bc;&#x3bf;&#x1fe6; &#x3b3;&#x1f71;&#x3c1;, &#x3bf;&#x1f50; &#x3c0;&#x1f71;&#x3bb;&#x3b1;&#x3b9;
+  &#x3b3;&#x1f73;&#x3b3;&#x3bf;&#x3bd;&#x3b5;&#x3bd; &#x3c4;&#x3b1;&#x1fe6;&#x3c4;&#x1fbf; &#x1f00;&#x3bc;&#x3c6;&#x1f79;&#x3c4;&#x3b5;&#x3c1;&#x3b1;&#x387; &#x3bd;&#x1fe6;&#x3bd; &#x3bc;&#x1f73;&#x3bd;&#x3c4;&#x3bf;&#x3b9; &#x3c0;&#x1f73;&#x3c0;&#x3b5;&#x3b9;&#x3c3;&#x3bc;&#x3b1;&#x3b9; &#x3c4;&#x3bf;&#x1fe6;&#x3b8;&#x1fbf; &#x1f31;&#x3ba;&#x3b1;&#x3bd;&#x1f78;&#x3bd;
+  &#x3c0;&#x3c1;&#x3bf;&#x3bb;&#x3b1;&#x3b2;&#x3b5;&#x1fd6;&#x3bd; &#x1f21;&#x3bc;&#x1fd6;&#x3bd; &#x3b5;&#x1f36;&#x3bd;&#x3b1;&#x3b9; &#x3c4;&#x1f74;&#x3bd; &#x3c0;&#x3c1;&#x1f7d;&#x3c4;&#x3b7;&#x3bd;, &#x1f45;&#x3c0;&#x3c9;&#x3c2; &#x3c4;&#x3bf;&#x1f7a;&#x3c2; &#x3c3;&#x3c5;&#x3bc;&#x3bc;&#x1f71;&#x3c7;&#x3bf;&#x3c5;&#x3c2;
+  &#x3c3;&#x1f7d;&#x3c3;&#x3bf;&#x3bc;&#x3b5;&#x3bd;. &#x1f10;&#x1f70;&#x3bd; &#x3b3;&#x1f70;&#x3c1; &#x3c4;&#x3bf;&#x1fe6;&#x3c4;&#x3bf; &#x3b2;&#x3b5;&#x3b2;&#x3b1;&#x1f77;&#x3c9;&#x3c2; &#x1f51;&#x3c0;&#x1f71;&#x3c1;&#x3be;&#x1fc3;, &#x3c4;&#x1f79;&#x3c4;&#x3b5; &#x3ba;&#x3b1;&#x1f76; &#x3c0;&#x3b5;&#x3c1;&#x1f76; &#x3c4;&#x3bf;&#x1fe6;
+  &#x3c4;&#x1f77;&#x3bd;&#x3b1; &#x3c4;&#x3b9;&#x3bc;&#x3c9;&#x3c1;&#x1f75;&#x3c3;&#x3b5;&#x3c4;&#x3b1;&#x1f77; &#x3c4;&#x3b9;&#x3c2; &#x3ba;&#x3b1;&#x1f76; &#x1f43;&#x3bd; &#x3c4;&#x3c1;&#x1f79;&#x3c0;&#x3bf;&#x3bd; &#x1f10;&#x3be;&#x1f73;&#x3c3;&#x3c4;&#x3b1;&#x3b9; &#x3c3;&#x3ba;&#x3bf;&#x3c0;&#x3b5;&#x1fd6;&#x3bd;&#x387; &#x3c0;&#x3c1;&#x1f76;&#x3bd; &#x3b4;&#x1f72;
+  &#x3c4;&#x1f74;&#x3bd; &#x1f00;&#x3c1;&#x3c7;&#x1f74;&#x3bd; &#x1f40;&#x3c1;&#x3b8;&#x1ff6;&#x3c2; &#x1f51;&#x3c0;&#x3bf;&#x3b8;&#x1f73;&#x3c3;&#x3b8;&#x3b1;&#x3b9;, &#x3bc;&#x1f71;&#x3c4;&#x3b1;&#x3b9;&#x3bf;&#x3bd; &#x1f21;&#x3b3;&#x3bf;&#x1fe6;&#x3bc;&#x3b1;&#x3b9; &#x3c0;&#x3b5;&#x3c1;&#x1f76; &#x3c4;&#x1fc6;&#x3c2;
+  &#x3c4;&#x3b5;&#x3bb;&#x3b5;&#x3c5;&#x3c4;&#x1fc6;&#x3c2; &#x1f41;&#x3bd;&#x3c4;&#x3b9;&#x3bd;&#x3bf;&#x1fe6;&#x3bd; &#x3c0;&#x3bf;&#x3b9;&#x3b5;&#x1fd6;&#x3c3;&#x3b8;&#x3b1;&#x3b9; &#x3bb;&#x1f79;&#x3b3;&#x3bf;&#x3bd;.
+
+  &#x394;&#x3b7;&#x3bc;&#x3bf;&#x3c3;&#x3b8;&#x1f73;&#x3bd;&#x3bf;&#x3c5;&#x3c2;, &#x393;&#x1ffd; &#x1fbf;&#x39f;&#x3bb;&#x3c5;&#x3bd;&#x3b8;&#x3b9;&#x3b1;&#x3ba;&#x1f78;&#x3c2;
+
+Georgian:
+
+  From a Unicode conference invitation:
+
+  &#x10d2;&#x10d7;&#x10ee;&#x10dd;&#x10d5;&#x10d7; &#x10d0;&#x10ee;&#x10da;&#x10d0;&#x10d5;&#x10d4; &#x10d2;&#x10d0;&#x10d8;&#x10d0;&#x10e0;&#x10dd;&#x10d7; &#x10e0;&#x10d4;&#x10d2;&#x10d8;&#x10e1;&#x10e2;&#x10e0;&#x10d0;&#x10ea;&#x10d8;&#x10d0; Unicode-&#x10d8;&#x10e1; &#x10db;&#x10d4;&#x10d0;&#x10d7;&#x10d4; &#x10e1;&#x10d0;&#x10d4;&#x10e0;&#x10d7;&#x10d0;&#x10e8;&#x10dd;&#x10e0;&#x10d8;&#x10e1;&#x10dd;
+  &#x10d9;&#x10dd;&#x10dc;&#x10e4;&#x10d4;&#x10e0;&#x10d4;&#x10dc;&#x10ea;&#x10d8;&#x10d0;&#x10d6;&#x10d4; &#x10d3;&#x10d0;&#x10e1;&#x10d0;&#x10e1;&#x10ec;&#x10e0;&#x10d4;&#x10d1;&#x10d0;&#x10d3;, &#x10e0;&#x10dd;&#x10db;&#x10d4;&#x10da;&#x10d8;&#x10ea; &#x10d2;&#x10d0;&#x10d8;&#x10db;&#x10d0;&#x10e0;&#x10d7;&#x10d4;&#x10d1;&#x10d0; 10-12 &#x10db;&#x10d0;&#x10e0;&#x10e2;&#x10e1;,
+  &#x10e5;. &#x10db;&#x10d0;&#x10d8;&#x10dc;&#x10ea;&#x10e8;&#x10d8;, &#x10d2;&#x10d4;&#x10e0;&#x10db;&#x10d0;&#x10dc;&#x10d8;&#x10d0;&#x10e8;&#x10d8;. &#x10d9;&#x10dd;&#x10dc;&#x10e4;&#x10d4;&#x10e0;&#x10d4;&#x10dc;&#x10ea;&#x10d8;&#x10d0; &#x10e8;&#x10d4;&#x10f0;&#x10d9;&#x10e0;&#x10d4;&#x10d1;&#x10e1; &#x10d4;&#x10e0;&#x10d7;&#x10d0;&#x10d3; &#x10db;&#x10e1;&#x10dd;&#x10e4;&#x10da;&#x10d8;&#x10dd;&#x10e1;
+  &#x10d4;&#x10e5;&#x10e1;&#x10de;&#x10d4;&#x10e0;&#x10e2;&#x10d4;&#x10d1;&#x10e1; &#x10d8;&#x10e1;&#x10d4;&#x10d7; &#x10d3;&#x10d0;&#x10e0;&#x10d2;&#x10d4;&#x10d1;&#x10e8;&#x10d8; &#x10e0;&#x10dd;&#x10d2;&#x10dd;&#x10e0;&#x10d8;&#x10ea;&#x10d0;&#x10d0; &#x10d8;&#x10dc;&#x10e2;&#x10d4;&#x10e0;&#x10dc;&#x10d4;&#x10e2;&#x10d8; &#x10d3;&#x10d0; Unicode-&#x10d8;,
+  &#x10d8;&#x10dc;&#x10e2;&#x10d4;&#x10e0;&#x10dc;&#x10d0;&#x10ea;&#x10d8;&#x10dd;&#x10dc;&#x10d0;&#x10da;&#x10d8;&#x10d6;&#x10d0;&#x10ea;&#x10d8;&#x10d0; &#x10d3;&#x10d0; &#x10da;&#x10dd;&#x10d9;&#x10d0;&#x10da;&#x10d8;&#x10d6;&#x10d0;&#x10ea;&#x10d8;&#x10d0;, Unicode-&#x10d8;&#x10e1; &#x10d2;&#x10d0;&#x10db;&#x10dd;&#x10e7;&#x10d4;&#x10dc;&#x10d4;&#x10d1;&#x10d0;
+  &#x10dd;&#x10de;&#x10d4;&#x10e0;&#x10d0;&#x10ea;&#x10d8;&#x10e3;&#x10da; &#x10e1;&#x10d8;&#x10e1;&#x10e2;&#x10d4;&#x10db;&#x10d4;&#x10d1;&#x10e1;&#x10d0;, &#x10d3;&#x10d0; &#x10d2;&#x10d0;&#x10db;&#x10dd;&#x10e7;&#x10d4;&#x10dc;&#x10d4;&#x10d1;&#x10d8;&#x10d7; &#x10de;&#x10e0;&#x10dd;&#x10d2;&#x10e0;&#x10d0;&#x10db;&#x10d4;&#x10d1;&#x10e8;&#x10d8;, &#x10e8;&#x10e0;&#x10d8;&#x10e4;&#x10e2;&#x10d4;&#x10d1;&#x10e8;&#x10d8;,
+  &#x10e2;&#x10d4;&#x10e5;&#x10e1;&#x10e2;&#x10d4;&#x10d1;&#x10d8;&#x10e1; &#x10d3;&#x10d0;&#x10db;&#x10e3;&#x10e8;&#x10d0;&#x10d5;&#x10d4;&#x10d1;&#x10d0;&#x10e1;&#x10d0; &#x10d3;&#x10d0; &#x10db;&#x10e0;&#x10d0;&#x10d5;&#x10d0;&#x10da;&#x10d4;&#x10dc;&#x10dd;&#x10d5;&#x10d0;&#x10dc; &#x10d9;&#x10dd;&#x10db;&#x10de;&#x10d8;&#x10e3;&#x10e2;&#x10d4;&#x10e0;&#x10e3;&#x10da; &#x10e1;&#x10d8;&#x10e1;&#x10e2;&#x10d4;&#x10db;&#x10d4;&#x10d1;&#x10e8;&#x10d8;.
+
+Russian:
+
+  From a Unicode conference invitation:
+
+  &#x417;&#x430;&#x440;&#x435;&#x433;&#x438;&#x441;&#x442;&#x440;&#x438;&#x440;&#x443;&#x439;&#x442;&#x435;&#x441;&#x44c; &#x441;&#x435;&#x439;&#x447;&#x430;&#x441; &#x43d;&#x430; &#x414;&#x435;&#x441;&#x44f;&#x442;&#x443;&#x44e; &#x41c;&#x435;&#x436;&#x434;&#x443;&#x43d;&#x430;&#x440;&#x43e;&#x434;&#x43d;&#x443;&#x44e; &#x41a;&#x43e;&#x43d;&#x444;&#x435;&#x440;&#x435;&#x43d;&#x446;&#x438;&#x44e; &#x43f;&#x43e;
+  Unicode, &#x43a;&#x43e;&#x442;&#x43e;&#x440;&#x430;&#x44f; &#x441;&#x43e;&#x441;&#x442;&#x43e;&#x438;&#x442;&#x441;&#x44f; 10-12 &#x43c;&#x430;&#x440;&#x442;&#x430; 1997 &#x433;&#x43e;&#x434;&#x430; &#x432; &#x41c;&#x430;&#x439;&#x43d;&#x446;&#x435; &#x432; &#x413;&#x435;&#x440;&#x43c;&#x430;&#x43d;&#x438;&#x438;.
+  &#x41a;&#x43e;&#x43d;&#x444;&#x435;&#x440;&#x435;&#x43d;&#x446;&#x438;&#x44f; &#x441;&#x43e;&#x431;&#x435;&#x440;&#x435;&#x442; &#x448;&#x438;&#x440;&#x43e;&#x43a;&#x438;&#x439; &#x43a;&#x440;&#x443;&#x433; &#x44d;&#x43a;&#x441;&#x43f;&#x435;&#x440;&#x442;&#x43e;&#x432; &#x43f;&#x43e;  &#x432;&#x43e;&#x43f;&#x440;&#x43e;&#x441;&#x430;&#x43c; &#x433;&#x43b;&#x43e;&#x431;&#x430;&#x43b;&#x44c;&#x43d;&#x43e;&#x433;&#x43e;
+  &#x418;&#x43d;&#x442;&#x435;&#x440;&#x43d;&#x435;&#x442;&#x430; &#x438; Unicode, &#x43b;&#x43e;&#x43a;&#x430;&#x43b;&#x438;&#x437;&#x430;&#x446;&#x438;&#x438; &#x438; &#x438;&#x43d;&#x442;&#x435;&#x440;&#x43d;&#x430;&#x446;&#x438;&#x43e;&#x43d;&#x430;&#x43b;&#x438;&#x437;&#x430;&#x446;&#x438;&#x438;, &#x432;&#x43e;&#x43f;&#x43b;&#x43e;&#x449;&#x435;&#x43d;&#x438;&#x44e; &#x438;
+  &#x43f;&#x440;&#x438;&#x43c;&#x435;&#x43d;&#x435;&#x43d;&#x438;&#x44e; Unicode &#x432; &#x440;&#x430;&#x437;&#x43b;&#x438;&#x447;&#x43d;&#x44b;&#x445; &#x43e;&#x43f;&#x435;&#x440;&#x430;&#x446;&#x438;&#x43e;&#x43d;&#x43d;&#x44b;&#x445; &#x441;&#x438;&#x441;&#x442;&#x435;&#x43c;&#x430;&#x445; &#x438; &#x43f;&#x440;&#x43e;&#x433;&#x440;&#x430;&#x43c;&#x43c;&#x43d;&#x44b;&#x445;
+  &#x43f;&#x440;&#x438;&#x43b;&#x43e;&#x436;&#x435;&#x43d;&#x438;&#x44f;&#x445;, &#x448;&#x440;&#x438;&#x444;&#x442;&#x430;&#x445;, &#x432;&#x435;&#x440;&#x441;&#x442;&#x43a;&#x435; &#x438; &#x43c;&#x43d;&#x43e;&#x433;&#x43e;&#x44f;&#x437;&#x44b;&#x447;&#x43d;&#x44b;&#x445; &#x43a;&#x43e;&#x43c;&#x43f;&#x44c;&#x44e;&#x442;&#x435;&#x440;&#x43d;&#x44b;&#x445; &#x441;&#x438;&#x441;&#x442;&#x435;&#x43c;&#x430;&#x445;.
+
+Thai (UCS Level 2):
+
+  Excerpt from a poetry on The Romance of The Three Kingdoms (a Chinese
+  classic 'San Gua'):
+
+  [----------------------------|------------------------]
+    &#xe4f; &#xe41;&#xe1c;&#xe48;&#xe19;&#xe14;&#xe34;&#xe19;&#xe2e;&#xe31;&#xe48;&#xe19;&#xe40;&#xe2a;&#xe37;&#xe48;&#xe2d;&#xe21;&#xe42;&#xe17;&#xe23;&#xe21;&#xe41;&#xe2a;&#xe19;&#xe2a;&#xe31;&#xe07;&#xe40;&#xe27;&#xe0a;  &#xe1e;&#xe23;&#xe30;&#xe1b;&#xe01;&#xe40;&#xe01;&#xe28;&#xe01;&#xe2d;&#xe07;&#xe1a;&#xe39;&#xe4a;&#xe01;&#xe39;&#xe49;&#xe02;&#xe36;&#xe49;&#xe19;&#xe43;&#xe2b;&#xe21;&#xe48;
+  &#xe2a;&#xe34;&#xe1a;&#xe2a;&#xe2d;&#xe07;&#xe01;&#xe29;&#xe31;&#xe15;&#xe23;&#xe34;&#xe22;&#xe4c;&#xe01;&#xe48;&#xe2d;&#xe19;&#xe2b;&#xe19;&#xe49;&#xe32;&#xe41;&#xe25;&#xe16;&#xe31;&#xe14;&#xe44;&#xe1b;       &#xe2a;&#xe2d;&#xe07;&#xe2d;&#xe07;&#xe04;&#xe4c;&#xe44;&#xe0b;&#xe23;&#xe49;&#xe42;&#xe07;&#xe48;&#xe40;&#xe02;&#xe25;&#xe32;&#xe40;&#xe1a;&#xe32;&#xe1b;&#xe31;&#xe0d;&#xe0d;&#xe32;
+    &#xe17;&#xe23;&#xe07;&#xe19;&#xe31;&#xe1a;&#xe16;&#xe37;&#xe2d;&#xe02;&#xe31;&#xe19;&#xe17;&#xe35;&#xe40;&#xe1b;&#xe47;&#xe19;&#xe17;&#xe35;&#xe48;&#xe1e;&#xe36;&#xe48;&#xe07;           &#xe1a;&#xe49;&#xe32;&#xe19;&#xe40;&#xe21;&#xe37;&#xe2d;&#xe07;&#xe08;&#xe36;&#xe07;&#xe27;&#xe34;&#xe1b;&#xe23;&#xe34;&#xe15;&#xe40;&#xe1b;&#xe47;&#xe19;&#xe19;&#xe31;&#xe01;&#xe2b;&#xe19;&#xe32;
+  &#xe42;&#xe2e;&#xe08;&#xe34;&#xe4b;&#xe19;&#xe40;&#xe23;&#xe35;&#xe22;&#xe01;&#xe17;&#xe31;&#xe1e;&#xe17;&#xe31;&#xe48;&#xe27;&#xe2b;&#xe31;&#xe27;&#xe40;&#xe21;&#xe37;&#xe2d;&#xe07;&#xe21;&#xe32;         &#xe2b;&#xe21;&#xe32;&#xe22;&#xe08;&#xe30;&#xe06;&#xe48;&#xe32;&#xe21;&#xe14;&#xe0a;&#xe31;&#xe48;&#xe27;&#xe15;&#xe31;&#xe27;&#xe2a;&#xe33;&#xe04;&#xe31;&#xe0d;
+    &#xe40;&#xe2b;&#xe21;&#xe37;&#xe2d;&#xe19;&#xe02;&#xe31;&#xe1a;&#xe44;&#xe2a;&#xe44;&#xe25;&#xe48;&#xe40;&#xe2a;&#xe37;&#xe2d;&#xe08;&#xe32;&#xe01;&#xe40;&#xe04;&#xe2b;&#xe32;      &#xe23;&#xe31;&#xe1a;&#xe2b;&#xe21;&#xe32;&#xe1b;&#xe48;&#xe32;&#xe40;&#xe02;&#xe49;&#xe32;&#xe21;&#xe32;&#xe40;&#xe25;&#xe22;&#xe2d;&#xe32;&#xe2a;&#xe31;&#xe0d;
+  &#xe1d;&#xe48;&#xe32;&#xe22;&#xe2d;&#xe49;&#xe2d;&#xe07;&#xe2d;&#xe38;&#xe49;&#xe19;&#xe22;&#xe38;&#xe41;&#xe22;&#xe01;&#xe43;&#xe2b;&#xe49;&#xe41;&#xe15;&#xe01;&#xe01;&#xe31;&#xe19;          &#xe43;&#xe0a;&#xe49;&#xe2a;&#xe32;&#xe27;&#xe19;&#xe31;&#xe49;&#xe19;&#xe40;&#xe1b;&#xe47;&#xe19;&#xe0a;&#xe19;&#xe27;&#xe19;&#xe0a;&#xe37;&#xe48;&#xe19;&#xe0a;&#xe27;&#xe19;&#xe43;&#xe08;
+    &#xe1e;&#xe25;&#xe31;&#xe19;&#xe25;&#xe34;&#xe09;&#xe38;&#xe22;&#xe01;&#xe38;&#xe22;&#xe01;&#xe35;&#xe01;&#xe25;&#xe31;&#xe1a;&#xe01;&#xe48;&#xe2d;&#xe40;&#xe2b;&#xe15;&#xe38;          &#xe0a;&#xe48;&#xe32;&#xe07;&#xe2d;&#xe32;&#xe40;&#xe1e;&#xe28;&#xe08;&#xe23;&#xe34;&#xe07;&#xe2b;&#xe19;&#xe32;&#xe1f;&#xe49;&#xe32;&#xe23;&#xe49;&#xe2d;&#xe07;&#xe44;&#xe2b;&#xe49;
+  &#xe15;&#xe49;&#xe2d;&#xe07;&#xe23;&#xe1a;&#xe23;&#xe32;&#xe06;&#xe48;&#xe32;&#xe1f;&#xe31;&#xe19;&#xe08;&#xe19;&#xe1a;&#xe23;&#xe23;&#xe25;&#xe31;&#xe22;           &#xe24;&#xe45;&#xe2b;&#xe32;&#xe43;&#xe04;&#xe23;&#xe04;&#xe49;&#xe33;&#xe0a;&#xe39;&#xe01;&#xe39;&#xe49;&#xe1a;&#xe23;&#xe23;&#xe25;&#xe31;&#xe07;&#xe01;&#xe4c; &#xe2f;
+
+  (The above is a two-column text. If combining characters are handled
+  correctly, the lines of the second column should be aligned with the
+  | character above.)
+
+Ethiopian:
+
+  Proverbs in the Amharic language:
+
+  &#x1230;&#x121b;&#x12ed; &#x12a0;&#x12ed;&#x1273;&#x1228;&#x1235; &#x1295;&#x1309;&#x1225; &#x12a0;&#x12ed;&#x12a8;&#x1230;&#x1235;&#x1362;
+  &#x1265;&#x120b; &#x12ab;&#x1208;&#x129d; &#x12a5;&#x1295;&#x12f0;&#x12a0;&#x1263;&#x1274; &#x1260;&#x1246;&#x1218;&#x1320;&#x129d;&#x1362;
+  &#x130c;&#x1325; &#x12eb;&#x1208;&#x1264;&#x1271; &#x1241;&#x121d;&#x1325;&#x1293; &#x1290;&#x12cd;&#x1362;
+  &#x12f0;&#x1200; &#x1260;&#x1215;&#x120d;&#x1219; &#x1245;&#x1264; &#x1263;&#x12ed;&#x1320;&#x1323; &#x1295;&#x1323;&#x1275; &#x1260;&#x1308;&#x12f0;&#x1208;&#x12cd;&#x1362;
+  &#x12e8;&#x12a0;&#x134d; &#x12c8;&#x1208;&#x121d;&#x1273; &#x1260;&#x1245;&#x1264; &#x12a0;&#x12ed;&#x1273;&#x123d;&#x121d;&#x1362;
+  &#x12a0;&#x12ed;&#x1325; &#x1260;&#x1260;&#x120b; &#x12f3;&#x12cb; &#x1270;&#x1218;&#x1273;&#x1362;
+  &#x1232;&#x1270;&#x1228;&#x1309;&#x1219; &#x12ed;&#x12f0;&#x1228;&#x130d;&#x1219;&#x1362;
+  &#x1240;&#x1235; &#x1260;&#x1240;&#x1235;&#x1365; &#x12d5;&#x1295;&#x1241;&#x120b;&#x120d; &#x1260;&#x12a5;&#x130d;&#x1229; &#x12ed;&#x1204;&#x12f3;&#x120d;&#x1362;
+  &#x12f5;&#x122d; &#x1262;&#x12eb;&#x1265;&#x122d; &#x12a0;&#x1295;&#x1260;&#x1233; &#x12eb;&#x1235;&#x122d;&#x1362;
+  &#x1230;&#x12cd; &#x12a5;&#x1295;&#x12f0;&#x1264;&#x1271; &#x12a5;&#x1295;&#x1305; &#x12a5;&#x1295;&#x12f0; &#x1309;&#x1228;&#x1264;&#x1271; &#x12a0;&#x12ed;&#x1270;&#x12f3;&#x12f0;&#x122d;&#x121d;&#x1362;
+  &#x12a5;&#x130d;&#x12dc;&#x122d; &#x12e8;&#x12a8;&#x1348;&#x1270;&#x12cd;&#x1295; &#x1309;&#x122e;&#x122e; &#x1233;&#x12ed;&#x12d8;&#x130b;&#x12cd; &#x12a0;&#x12ed;&#x12f5;&#x122d;&#x121d;&#x1362;
+  &#x12e8;&#x130e;&#x1228;&#x1264;&#x1275; &#x120c;&#x1263;&#x1365; &#x1262;&#x12eb;&#x12e9;&#x1275; &#x12ed;&#x1235;&#x1245; &#x1263;&#x12eb;&#x12e9;&#x1275; &#x12eb;&#x1320;&#x120d;&#x1245;&#x1362;
+  &#x1225;&#x122b; &#x12a8;&#x1218;&#x134d;&#x1273;&#x1275; &#x120d;&#x1304;&#x1295; &#x120b;&#x134b;&#x1273;&#x1275;&#x1362;
+  &#x12d3;&#x1263;&#x12ed; &#x121b;&#x12f0;&#x122a;&#x12eb; &#x12e8;&#x1208;&#x12cd;&#x1365; &#x130d;&#x1295;&#x12f5; &#x12ed;&#x12de; &#x12ed;&#x12de;&#x122b;&#x120d;&#x1362;
+  &#x12e8;&#x12a5;&#x1235;&#x120b;&#x121d; &#x12a0;&#x1308;&#x1229; &#x1218;&#x12ab; &#x12e8;&#x12a0;&#x121e;&#x122b; &#x12a0;&#x1308;&#x1229; &#x12cb;&#x122d;&#x12ab;&#x1362;
+  &#x1270;&#x1295;&#x130b;&#x120e; &#x1262;&#x1270;&#x1349; &#x1270;&#x1218;&#x120d;&#x1236; &#x1263;&#x1349;&#x1362;
+  &#x12c8;&#x12f3;&#x1305;&#x1205; &#x121b;&#x122d; &#x1262;&#x1206;&#x1295; &#x1328;&#x122d;&#x1235;&#x1205; &#x12a0;&#x1275;&#x120b;&#x1230;&#x12cd;&#x1362;
+  &#x12a5;&#x130d;&#x122d;&#x1205;&#x1295; &#x1260;&#x134d;&#x122b;&#x123d;&#x1205; &#x120d;&#x12ad; &#x12d8;&#x122d;&#x130b;&#x1362;
+
+Runes:
+
+  &#x16bb;&#x16d6; &#x16b3;&#x16b9;&#x16ab;&#x16a6; &#x16a6;&#x16ab;&#x16cf; &#x16bb;&#x16d6; &#x16d2;&#x16a2;&#x16de;&#x16d6; &#x16a9;&#x16be; &#x16a6;&#x16ab;&#x16d7; &#x16da;&#x16aa;&#x16be;&#x16de;&#x16d6; &#x16be;&#x16a9;&#x16b1;&#x16a6;&#x16b9;&#x16d6;&#x16aa;&#x16b1;&#x16de;&#x16a2;&#x16d7; &#x16b9;&#x16c1;&#x16a6; &#x16a6;&#x16aa; &#x16b9;&#x16d6;&#x16e5;&#x16ab;
+
+  (Old English, which transcribed into Latin reads 'He cwaeth that he
+  bude thaem lande northweardum with tha Westsae.' and means 'He said
+  that he lived in the northern land near the Western Sea.')
+
+Braille:
+
+  &#x284c;&#x2801;&#x2827;&#x2811; &#x283c;&#x2801;&#x2812;  &#x284d;&#x281c;&#x2807;&#x2811;&#x2839;&#x2830;&#x280e; &#x2863;&#x2815;&#x280c;
+
+  &#x284d;&#x281c;&#x2807;&#x2811;&#x2839; &#x283a;&#x2801;&#x280e; &#x2819;&#x2811;&#x2801;&#x2819;&#x2812; &#x281e;&#x2815; &#x2803;&#x2811;&#x281b;&#x2814; &#x283a;&#x280a;&#x2839;&#x2832; &#x2879;&#x283b;&#x2811; &#x280a;&#x280e; &#x281d;&#x2815; &#x2819;&#x2833;&#x2803;&#x281e;
+  &#x2831;&#x2801;&#x281e;&#x2811;&#x2827;&#x283b; &#x2801;&#x2803;&#x2833;&#x281e; &#x2839;&#x2801;&#x281e;&#x2832; &#x2879;&#x2811; &#x2817;&#x2811;&#x281b;&#x280a;&#x280c;&#x283b; &#x2815;&#x280b; &#x2819;&#x280a;&#x280e; &#x2803;&#x2825;&#x2817;&#x280a;&#x2801;&#x2807; &#x283a;&#x2801;&#x280e;
+  &#x280e;&#x280a;&#x281b;&#x281d;&#x282b; &#x2803;&#x2839; &#x2839;&#x2811; &#x280a;&#x2807;&#x283b;&#x281b;&#x2839;&#x280d;&#x2801;&#x281d;&#x2802; &#x2839;&#x2811; &#x280a;&#x2807;&#x283b;&#x2805;&#x2802; &#x2839;&#x2811; &#x2825;&#x281d;&#x2819;&#x283b;&#x281e;&#x2801;&#x2805;&#x283b;&#x2802;
+  &#x2801;&#x281d;&#x2819; &#x2839;&#x2811; &#x2821;&#x280a;&#x2811;&#x280b; &#x280d;&#x2833;&#x2817;&#x281d;&#x283b;&#x2832; &#x284e;&#x280a;&#x2817;&#x2815;&#x2815;&#x281b;&#x2811; &#x280e;&#x280a;&#x281b;&#x281d;&#x282b; &#x280a;&#x281e;&#x2832; &#x2841;&#x281d;&#x2819;
+  &#x284e;&#x280a;&#x2817;&#x2815;&#x2815;&#x281b;&#x2811;&#x2830;&#x280e; &#x281d;&#x2801;&#x280d;&#x2811; &#x283a;&#x2801;&#x280e; &#x281b;&#x2815;&#x2815;&#x2819; &#x2825;&#x280f;&#x2815;&#x281d; &#x2830;&#x2861;&#x2801;&#x281d;&#x281b;&#x2811;&#x2802; &#x280b;&#x2815;&#x2817; &#x2801;&#x281d;&#x2839;&#x2839;&#x2814;&#x281b; &#x2819;&#x2811; 
+  &#x2821;&#x2815;&#x280e;&#x2811; &#x281e;&#x2815; &#x280f;&#x2825;&#x281e; &#x2819;&#x280a;&#x280e; &#x2819;&#x2801;&#x281d;&#x2819; &#x281e;&#x2815;&#x2832;
+
+  &#x2855;&#x2807;&#x2819; &#x284d;&#x281c;&#x2807;&#x2811;&#x2839; &#x283a;&#x2801;&#x280e; &#x2801;&#x280e; &#x2819;&#x2811;&#x2801;&#x2819; &#x2801;&#x280e; &#x2801; &#x2819;&#x2815;&#x2815;&#x2817;&#x2824;&#x281d;&#x2801;&#x280a;&#x2807;&#x2832;
+
+  &#x284d;&#x2814;&#x2819;&#x2816; &#x284a; &#x2819;&#x2815;&#x281d;&#x2830;&#x281e; &#x280d;&#x2811;&#x2801;&#x281d; &#x281e;&#x2815; &#x280e;&#x2801;&#x2839; &#x2839;&#x2801;&#x281e; &#x284a; &#x2805;&#x281d;&#x282a;&#x2802; &#x2815;&#x280b; &#x280d;&#x2839;
+  &#x282a;&#x281d; &#x2805;&#x281d;&#x282a;&#x2807;&#x282b;&#x281b;&#x2811;&#x2802; &#x2831;&#x2801;&#x281e; &#x2839;&#x283b;&#x2811; &#x280a;&#x280e; &#x280f;&#x281c;&#x281e;&#x280a;&#x280a;&#x2825;&#x2807;&#x281c;&#x2807;&#x2839; &#x2819;&#x2811;&#x2801;&#x2819; &#x2801;&#x2803;&#x2833;&#x281e;
+  &#x2801; &#x2819;&#x2815;&#x2815;&#x2817;&#x2824;&#x281d;&#x2801;&#x280a;&#x2807;&#x2832; &#x284a; &#x280d;&#x280a;&#x2823;&#x281e; &#x2819;&#x2801;&#x2827;&#x2811; &#x2803;&#x2811;&#x2832; &#x2814;&#x280a;&#x2807;&#x2814;&#x282b;&#x2802; &#x280d;&#x2839;&#x280e;&#x2811;&#x2807;&#x280b;&#x2802; &#x281e;&#x2815;
+  &#x2817;&#x2811;&#x281b;&#x281c;&#x2819; &#x2801; &#x280a;&#x2815;&#x280b;&#x280b;&#x2814;&#x2824;&#x281d;&#x2801;&#x280a;&#x2807; &#x2801;&#x280e; &#x2839;&#x2811; &#x2819;&#x2811;&#x2801;&#x2819;&#x2811;&#x280c; &#x280f;&#x280a;&#x2811;&#x280a;&#x2811; &#x2815;&#x280b; &#x280a;&#x2817;&#x2815;&#x281d;&#x280d;&#x2815;&#x281d;&#x281b;&#x283b;&#x2839; 
+  &#x2814; &#x2839;&#x2811; &#x281e;&#x2817;&#x2801;&#x2819;&#x2811;&#x2832; &#x2843;&#x2825;&#x281e; &#x2839;&#x2811; &#x283a;&#x280a;&#x280e;&#x2819;&#x2815;&#x280d; &#x2815;&#x280b; &#x2833;&#x2817; &#x2801;&#x281d;&#x280a;&#x2811;&#x280c;&#x2815;&#x2817;&#x280e; 
+  &#x280a;&#x280e; &#x2814; &#x2839;&#x2811; &#x280e;&#x280a;&#x280d;&#x280a;&#x2807;&#x2811;&#x2806; &#x2801;&#x281d;&#x2819; &#x280d;&#x2839; &#x2825;&#x281d;&#x2819;&#x2801;&#x2807;&#x2807;&#x282a;&#x282b; &#x2819;&#x2801;&#x281d;&#x2819;&#x280e;
+  &#x2829;&#x2801;&#x2807;&#x2807; &#x281d;&#x2815;&#x281e; &#x2819;&#x280a;&#x280c;&#x2825;&#x2817;&#x2803; &#x280a;&#x281e;&#x2802; &#x2815;&#x2817; &#x2839;&#x2811; &#x284a;&#x2833;&#x281d;&#x281e;&#x2817;&#x2839;&#x2830;&#x280e; &#x2819;&#x2815;&#x281d;&#x2811; &#x280b;&#x2815;&#x2817;&#x2832; &#x2879;&#x2833;
+  &#x283a;&#x280a;&#x2807;&#x2807; &#x2839;&#x283b;&#x2811;&#x280b;&#x2815;&#x2817;&#x2811; &#x280f;&#x283b;&#x280d;&#x280a;&#x281e; &#x280d;&#x2811; &#x281e;&#x2815; &#x2817;&#x2811;&#x280f;&#x2811;&#x2801;&#x281e;&#x2802; &#x2811;&#x280d;&#x280f;&#x2819;&#x2801;&#x281e;&#x280a;&#x280a;&#x2801;&#x2807;&#x2807;&#x2839;&#x2802; &#x2839;&#x2801;&#x281e;
+  &#x284d;&#x281c;&#x2807;&#x2811;&#x2839; &#x283a;&#x2801;&#x280e; &#x2801;&#x280e; &#x2819;&#x2811;&#x2801;&#x2819; &#x2801;&#x280e; &#x2801; &#x2819;&#x2815;&#x2815;&#x2817;&#x2824;&#x281d;&#x2801;&#x280a;&#x2807;&#x2832;
+
+  (The first couple of paragraphs of "A Christmas Carol" by Dickens)
+
+Compact font selection example text:
+
+  ABCDEFGHIJKLMNOPQRSTUVWXYZ /0123456789
+  abcdefghijklmnopqrstuvwxyz &#xa3;&#xa9;&#xb5;&#xc0;&#xc6;&#xd6;&#xde;&#xdf;&#xe9;&#xf6;&#xff;
+  &#x2013;&#x2014;&#x2018;&#x201c;&#x201d;&#x201e;&#x2020;&#x2022;&#x2026;&#x2030;&#x2122;&#x153;&#x160;&#x178;&#x17e;&#x20ac; &#x391;&#x392;&#x393;&#x394;&#x3a9;&#x3b1;&#x3b2;&#x3b3;&#x3b4;&#x3c9; &#x410;&#x411;&#x412;&#x413;&#x414;&#x430;&#x431;&#x432;&#x433;&#x434;
+  &#x2200;&#x2202;&#x2208;&#x211d;&#x2227;&#x222a;&#x2261;&#x221e; &#x2191;&#x2197;&#x21a8;&#x21bb;&#x21e3; &#x2510;&#x253c;&#x2554;&#x2558;&#x2591;&#x25ba;&#x263a;&#x2640; &#xfb01;&#xfffd;&#x2440;&#x2082;&#x1f20;&#x1e02;&#x4e5;&#x1e84;&#x250;&#x2d0;&#x234e;&#x5d0;&#x531;&#x10d0;
+
+Greetings in various languages:
+
+  Hello world, &#x39a;&#x3b1;&#x3bb;&#x3b7;&#x3bc;&#x1f73;&#x3c1;&#x3b1; &#x3ba;&#x1f79;&#x3c3;&#x3bc;&#x3b5;, &#x30b3;&#x30f3;&#x30cb;&#x30c1;&#x30cf;
+
+Box drawing alignment tests:                                          &#x2588;
+                                                                      &#x2589;
+  &#x2554;&#x2550;&#x2550;&#x2566;&#x2550;&#x2550;&#x2557;  &#x250c;&#x2500;&#x2500;&#x252c;&#x2500;&#x2500;&#x2510;  &#x256d;&#x2500;&#x2500;&#x252c;&#x2500;&#x2500;&#x256e;  &#x256d;&#x2500;&#x2500;&#x252c;&#x2500;&#x2500;&#x256e;  &#x250f;&#x2501;&#x2501;&#x2533;&#x2501;&#x2501;&#x2513;  &#x250e;&#x2512;&#x250f;&#x2511;   &#x2577;  &#x257b; &#x250f;&#x252f;&#x2513; &#x250c;&#x2530;&#x2510;    &#x258a; &#x2571;&#x2572;&#x2571;&#x2572;&#x2573;&#x2573;&#x2573;
+  &#x2551;&#x250c;&#x2500;&#x2568;&#x2500;&#x2510;&#x2551;  &#x2502;&#x2554;&#x2550;&#x2567;&#x2550;&#x2557;&#x2502;  &#x2502;&#x2552;&#x2550;&#x256a;&#x2550;&#x2555;&#x2502;  &#x2502;&#x2553;&#x2500;&#x2541;&#x2500;&#x2556;&#x2502;  &#x2503;&#x250c;&#x2500;&#x2542;&#x2500;&#x2510;&#x2503;  &#x2517;&#x2543;&#x2544;&#x2519;  &#x2576;&#x253c;&#x2574;&#x257a;&#x254b;&#x2578;&#x2520;&#x253c;&#x2528; &#x251d;&#x254b;&#x2525;    &#x258b; &#x2572;&#x2571;&#x2572;&#x2571;&#x2573;&#x2573;&#x2573;
+  &#x2551;&#x2502;&#x2572; &#x2571;&#x2502;&#x2551;  &#x2502;&#x2551;   &#x2551;&#x2502;  &#x2502;&#x2502; &#x2502; &#x2502;&#x2502;  &#x2502;&#x2551; &#x2503; &#x2551;&#x2502;  &#x2503;&#x2502; &#x257f; &#x2502;&#x2503;  &#x250d;&#x2545;&#x2546;&#x2513;   &#x2575;  &#x2579; &#x2517;&#x2537;&#x251b; &#x2514;&#x2538;&#x2518;    &#x258c; &#x2571;&#x2572;&#x2571;&#x2572;&#x2573;&#x2573;&#x2573;
+  &#x2560;&#x2561; &#x2573; &#x255e;&#x2563;  &#x251c;&#x2562;   &#x255f;&#x2524;  &#x251c;&#x253c;&#x2500;&#x253c;&#x2500;&#x253c;&#x2524;  &#x251c;&#x256b;&#x2500;&#x2542;&#x2500;&#x256b;&#x2524;  &#x2523;&#x253f;&#x257e;&#x253c;&#x257c;&#x253f;&#x252b;  &#x2515;&#x251b;&#x2516;&#x251a;     &#x250c;&#x2504;&#x2504;&#x2510; &#x254e; &#x250f;&#x2505;&#x2505;&#x2513; &#x250b; &#x258d; &#x2572;&#x2571;&#x2572;&#x2571;&#x2573;&#x2573;&#x2573;
+  &#x2551;&#x2502;&#x2571; &#x2572;&#x2502;&#x2551;  &#x2502;&#x2551;   &#x2551;&#x2502;  &#x2502;&#x2502; &#x2502; &#x2502;&#x2502;  &#x2502;&#x2551; &#x2503; &#x2551;&#x2502;  &#x2503;&#x2502; &#x257d; &#x2502;&#x2503;  &#x2591;&#x2591;&#x2592;&#x2592;&#x2593;&#x2593;&#x2588;&#x2588; &#x250a;  &#x2506; &#x254e; &#x254f;  &#x2507; &#x250b; &#x258e;
+  &#x2551;&#x2514;&#x2500;&#x2565;&#x2500;&#x2518;&#x2551;  &#x2502;&#x255a;&#x2550;&#x2564;&#x2550;&#x255d;&#x2502;  &#x2502;&#x2558;&#x2550;&#x256a;&#x2550;&#x255b;&#x2502;  &#x2502;&#x2559;&#x2500;&#x2540;&#x2500;&#x255c;&#x2502;  &#x2503;&#x2514;&#x2500;&#x2542;&#x2500;&#x2518;&#x2503;  &#x2591;&#x2591;&#x2592;&#x2592;&#x2593;&#x2593;&#x2588;&#x2588; &#x250a;  &#x2506; &#x254e; &#x254f;  &#x2507; &#x250b; &#x258f;
+  &#x255a;&#x2550;&#x2550;&#x2569;&#x2550;&#x2550;&#x255d;  &#x2514;&#x2500;&#x2500;&#x2534;&#x2500;&#x2500;&#x2518;  &#x2570;&#x2500;&#x2500;&#x2534;&#x2500;&#x2500;&#x256f;  &#x2570;&#x2500;&#x2500;&#x2534;&#x2500;&#x2500;&#x256f;  &#x2517;&#x2501;&#x2501;&#x253b;&#x2501;&#x2501;&#x251b;           &#x2514;&#x254c;&#x254c;&#x2518; &#x254e; &#x2517;&#x254d;&#x254d;&#x251b; &#x250b;  &#x2581;&#x2582;&#x2583;&#x2584;&#x2585;&#x2586;&#x2587;&#x2588;
+
+</pre>
+</BODY>
+</HTML>
diff --git a/userdefs.h b/userdefs.h
new file mode 100644
index 00000000..5da2f2db
--- /dev/null
+++ b/userdefs.h
@@ -0,0 +1,1830 @@
+/*
+ * $LynxId: userdefs.h,v 1.269 2012/02/20 02:08:17 tom Exp $
+ *
+ * Lynx - Hypertext navigation system
+ *
+ *   (c) Copyright 1992, 1993, 1994 University of Kansas
+ *	 1995, 1996: GNU General Public License
+ *
+ *   Copyrights 1996-2007 Lynx Developers Group
+ *   Note: GNU General Public License is not a copyright.
+ */
+
+/*******************************************************************
+ * There are four sections to this document:
+ *  Section 1.  Things you MUST verify.  Unix platforms use a configure
+ *		script to provide sensible default values.  If your site
+ *		has special requirements, that may not be sufficient.
+ *		For non-Unix platforms (e.g., VMS), there is no
+ *		configure script, so the defaults here are more
+ *		critical.
+ *	Section 1a)  VMS specific things
+ *	Section 1b)  non-VMS specific things
+ *	Section 1c)  ALL Platforms
+ *
+ *  Section 2.  Things you should probably check!
+ *
+ *  Section 3.  Things you should only change after you have a good
+ *              understanding of the program!
+ *
+ *  Section 4.  Things you MUST check only if you plan to use Lynx in
+ *              an anonymous account (allow public access to Lynx)!
+ *
+ */
+
+#ifndef USERDEFS_H
+#define USERDEFS_H
+
+/*******************************************************************
+ * Insure definition of NOT_ASCII, etc. precedes use below.
+ */
+#ifndef HTUTILS_H
+#include <HTUtils.h>
+#endif
+
+#ifdef HAVE_CONFIG_H
+#include <lynx_cfg.h>
+#endif
+
+/*******************************************************************
+ * Things you must change
+ *  Section 1.
+ */
+
+/*******************************************************************
+ * Things you must change  -  VMS specific
+ *  Section 1a).
+ */
+#ifdef VMS
+/**************************
+ * TEMP_SPACE is where Lynx temporary cache files will be placed.
+ * Temporary files are removed automatically as long as nothing
+ * goes terribly wrong :)  If you include "$USER" in the definition
+ * (e.g., "device:[dir.$USER]"), Lynx will replace the "$USER" with
+ * the username of the account which invoked the Lynx image.  Such
+ * directories should already exist, and have protections/ACLs set
+ * so that only the appropriate user(s) will have read/write access.
+ * On VMS, "sys$scratch:" defaults to "sys$login:" if it has not been
+ * defined externally, or you can use "sys$login:" explicitly here.
+ * If the path has SHELL syntax and includes a tilde (e.g, "~/lynxtmp"),
+ * Lynx will replace the tilde with the full path for the user's home
+ * and convert the result to VMS syntax.
+ * The definition here can be overridden at run time by defining a
+ * "LYNX_TEMP_SPACE" VMS logical.
+ */
+#define TEMP_SPACE "sys$scratch:"
+
+/**************************
+ * LYNX_CFG_FILE is the location and name of the default lynx
+ * global configuration file.  It is sought and processed at
+ * startup of Lynx, followed by a seek and processing of a
+ * personal RC file (.lynxrc in the user's HOME directory,
+ * created if the user saves values in the 'o'ptions menu).
+ * You also can define the location and name of the global
+ * configuration file via a VMS logical, "LYNX_CFG", which
+ * will override the "LYNX_CFG_FILE" definition here.  SYS$LOGIN:
+ * can be used as the device in either or both definitions if
+ * you want lynx.cfg treated as a personal configuration file.
+ * You also can use Unix syntax with a '~' for a subdirectory
+ * of the login directory, (e.g., ~/lynx/lynx.cfg).
+ * The -cfg command line switch will override these definitions.
+ * You can pass the compilation default via build.com or descrip.mms.
+ *
+ * Note that some implementations of telnet allow passing of
+ * environment variables, which might be used by unscrupulous
+ * people to modify the environment in anonymous accounts.  When
+ * making Lynx and Web access publicly available via anonymous
+ * accounts intended to run Lynx captively, be sure the wrapper
+ * uses the -cfg switch and specifies the startfile, rather than
+ * relying on the LYNX_CFG, LYNX_CFG_FILE, or WWW_HOME variables.
+ *
+ * Note that any SUFFIX or VIEWER mappings in the configuration
+ * file will be overridden by any suffix or viewer mappings
+ * that are established as defaults in src/HTInit.c.  You can
+ * override the src/HTInit.c defaults via the mime.types and
+ * mailcap files (see the examples in the samples directory).
+ */
+#ifndef LYNX_CFG_FILE
+#define LYNX_CFG_FILE "Lynx_Dir:lynx.cfg"
+#endif /* LYNX_CFG_FILE */
+
+/**************************
+ * The EXTENSION_MAP file allows you to map file suffixes to
+ * mime types.
+ * The file locations defined here can be overridden in lynx.cfg.
+ * Mappings in these global and personal files override any SUFFIX
+ * definitions in lynx.cfg and built-in defaults from src/HTInit.c.
+ */
+#define GLOBAL_EXTENSION_MAP "Lynx_Dir:mime.types"
+#define PERSONAL_EXTENSION_MAP "mime.types"
+
+/**************************
+ * The MAILCAP file allows you to map file MIME types to
+ * external viewers.
+ * The file locations defined here can be overridden in lynx.cfg.
+ * Mappings in these global and personal files override any VIEWER
+ * definitions in lynx.cfg and built-in defaults from src/HTInit.c.
+ */
+#define GLOBAL_MAILCAP "Lynx_Dir:mailcap"
+#define PERSONAL_MAILCAP ".mailcap"
+
+/**************************
+ * XLOADIMAGE_COMMAND will be used as a default in src/HTInit.c
+ * for viewing image content types when the DECW$DISPLAY logical
+ * is set.  Make it the foreign command for your system's X image
+ * viewer (commonly, "xv").  It can be anything that will handle GIF,
+ * TIFF and other popular image formats.  Freeware ports of xv for
+ * VMS are available in the ftp://ftp.wku.edu/vms/unsupported and
+ * http://www.openvms.digital.com/cd/XV310A/ subdirectories.  You
+ * must also have a "%s" for the filename.  The default defined
+ * here can be overridden in lynx.cfg, or via the global or personal
+ * mailcap files.
+ * Make this NULL if you don't have such a viewer or don't want to
+ * use any default viewers for image types.
+ */
+#define XLOADIMAGE_COMMAND "xv %s"
+
+/**************************
+ * SYSTEM_MAIL must be defined here to your mail sending command,
+ * and SYSTEM_MAIL_FLAGS to appropriate qualifiers.  They can be
+ * changed in lynx.cfg.
+ *
+ * The mail command will be spawned as a subprocess of lynx
+ * and used to send the email, with headers specified in a
+ * temporary file for PMDF.  If you define SYSTEM_MAIL to the
+ * "generic" MAIL utility for VMS, headers cannot be specified
+ * via a header file (and thus may not be included), and the
+ * subject line will be specified by use of the /subject="SUBJECT"
+ * qualifier.
+ *
+ * If your mailer uses another syntax, some hacking of the
+ * mailform(), mailmsg() and reply_by_mail() functions in
+ * LYMail.c, and printfile() function in LYPrint.c, may be
+ * required.
+ */
+#define SYSTEM_MAIL "PMDF SEND"
+#define SYSTEM_MAIL_FLAGS "/headers"
+/* #define SYSTEM_MAIL "MAIL"   */
+/* #define SYSTEM_MAIL_FLAGS "" */
+
+/*************************
+ * Below is the argument for an sprintf command that will add
+ * "IN%""ADDRESS""" to the Internet mail address given by the user.
+ * It is structured for PMDF's IN%"INTERNET_ADDRESS" scheme.  The %s
+ * is replaced with the address given by the user.  If you are using
+ * a different Internet mail transport, change the IN appropriately
+ * (e.g., to SMTP, MX, or WINS), here or in lynx.cfg.
+ */
+#define MAIL_ADRS "\"IN%%\"\"%s\"\"\""
+
+/*********************************
+ * On VMS, CSwing (an XTree emulation for VTxxx terminals) is intended for
+ * use as the Directory/File Manager (sources, objects, or executables are
+ * available from ftp://narnia.memst.edu/).  CSWING_PATH should be defined
+ * here or in lynx.cfg to your foreign command for CSwing, with any
+ * regulatory switches you want included.  If not defined, or defined as
+ * a zero-length string ("") or "none" (case-insensitive), the support
+ * will be disabled.  It will also be disabled if the -nobrowse or
+ * -selective switches are used, or if the file_url restriction is set.
+ *
+ * When enabled, the DIRED_MENU command (normally 'f' or 'F') will invoke
+ * CSwing, normally with the current default directory as an argument to
+ * position the user on that node of the directory tree.  However, if the
+ * current document is a local directory listing, or a local file and not
+ * one of the temporary menu or list files, the associated directory will
+ * be passed as an argument, to position the user on that node of the tree.
+ */
+/* #define CSWING_PATH "swing" */
+
+/*********************************
+ * If USE_FIXED_RECORDS is set to TRUE here and/or in lynx.cfg, Lynx will
+ * convert 'd'ownloaded binary files to FIXED 512 record format before saving
+ * them to disk or acting on a DOWNLOADER option.  If set to FALSE, the
+ * headers of such files will indicate that they are Stream_LF with Implied
+ * Carriage Control, which is incorrect, and can cause downloading software
+ * to get confused and unhappy.  If you do set it FALSE, you can use the
+ * FIXED512.COM command file, which is included in this distribution, to do
+ * the conversion externally.
+ */
+#define USE_FIXED_RECORDS	TRUE	/* convert binaries to FIXED 512 */
+
+/********************************
+ * If NO_ANONYMOUS_EMAIL is defined, Lynx will not offer to insert X-From
+ * and X_Personal_Name lines in the body of email messages.  On VMS, the
+ * actual From and Personal Name (if defined for the account) headers always
+ * are those of the account running the Lynx image.  If the account is not
+ * the one to which the recipient should reply, you can indicate the alternate
+ * address and personal name via the X-From and X_Personal_Name entries, but
+ * the recipient must explicitly send the reply to the X_From address, rather
+ * than using the VMS REPLY command (which will use the actual From address).
+ *
+ * This symbol constant might be defined on Unix for security reasons that
+ * don't apply on VMS.  There is no security reason for defining this on VMS,
+ * but if you have no anonymous accounts (i.e., the From always will point to
+ * the actual user's email address, you can define it to avoid the bother of
+ * X-From and X_Personal_Name offers.
+ */
+/*#define NO_ANONYMOUS_EMAIL TRUE */
+
+/**************************
+ * LYNX_LSS_FILE is the location and name of the default lynx
+ * character style sheet file.  It is sought and processed at
+ * startup of Lynx only if experimental character style code has
+ * been compiled in, otherwise it will be ignored.  Note that use
+ * of the character style option is _experimental_ AND _unsupported_.
+ * There is no documentation other than a sample lynx.lss file in
+ * the samples subdirectory.  This code probably won't even work on
+ * VMS.  You can define the location and name of this file via an
+ * environment variable, "lynx_lss", which will override the definition
+ * here.  You can use '~' to refer to the user's home directory.  The
+ * -lss command line switch will override these definitions.
+ */
+#ifndef LYNX_LSS_FILE
+#define LYNX_LSS_FILE "Lynx_Dir:lynx.lss"
+#endif /* LYNX_LSS_FILE */
+
+/*
+ * FTP_FORMAT uses the same codes as LIST_FORMAT, but applies to files shown
+ * in an ftp listing.
+ */
+#define FTP_FORMAT "%d  %-16.16t %a  %K"
+
+/*******************************************************************
+ * Things you must change  -  non-VMS specific
+ *  Section 1b).
+ */
+#else /* non-VMS: UNIX etc. */
+
+/**************************
+ * 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
+ * global configuration file.  It is sought and processed at
+ * startup of Lynx, followed by a seek and processing of a
+ * personal RC file (.lynxrc in the user's HOME directory,
+ * created if the user saves values in the 'o'ptions menu).
+ * You also can define the location and name of the global
+ * configuration file via an environment variable, "LYNX_CFG",
+ * which will override the "LYNX_CFG_FILE" definition here.
+ * You can use '~' in either or both definitions if you want
+ * lynx.cfg treated as a personal configuration file.  The
+ * -cfg command line switch will override these definitions.
+ * You can pass the compilation default via the Makefile.
+ *
+ * If you are building Lynx using the configure script, you should specify
+ * the default location of the configuration file via that script, since it
+ * also generates the makefile and install-cfg rules.
+ *
+ * Note that many implementations of telnetd allow passing of
+ * environment variables, which might be used by unscrupulous
+ * people to modify the environment in anonymous accounts.  When
+ * making Lynx and Web access publicly available via anonymous
+ * accounts intended to run Lynx captively, be sure the wrapper
+ * uses the -cfg switch and specifies the startfile, rather than
+ * relying on the LYNX_CFG, LYNX_CFG_FILE, or WWW_HOME variables.
+ *
+ * Note that any SUFFIX or VIEWER mappings in the configuration
+ * file will be overridden by any suffix or viewer mappings
+ * that are established as defaults in src/HTInit.c.  You can
+ * override the src/HTInit.c defaults via the mime.types and
+ * mailcap files (see the examples in the samples directory).
+ */
+#ifndef HAVE_CONFIG_H
+#ifndef LYNX_CFG_FILE
+#ifdef DOSPATH
+#define LYNX_CFG_FILE "./lynx.cfg"
+#else
+#define LYNX_CFG_FILE "/usr/local/lib/lynx.cfg"
+#endif /* DOSPATH */
+#endif /* LYNX_CFG_FILE */
+#endif /* HAVE_CONFIG_H */
+
+#ifndef MIME_LIBDIR
+#define MIME_LIBDIR "/etc/"
+#endif
+
+/**************************
+ * The EXTENSION_MAP file allows you to map file suffixes to
+ * mime types.
+ * The file locations defined here can be overridden in lynx.cfg.
+ * Mappings in these global and personal files override any SUFFIX
+ * definitions in lynx.cfg and built-in defaults from src/HTInit.c.
+ */
+#define GLOBAL_EXTENSION_MAP MIME_LIBDIR "mime.types"
+#define PERSONAL_EXTENSION_MAP "~/.mime.types"
+
+/**************************
+ * The MAILCAP file allows you to map file MIME types to
+ * external viewers.
+ * The file locations defined here can be overridden in lynx.cfg.
+ * Mappings in these global and personal files override any VIEWER
+ * definitions in lynx.cfg and built-in defaults from src/HTInit.c.
+ */
+#define GLOBAL_MAILCAP MIME_LIBDIR "mailcap"
+#define PERSONAL_MAILCAP "~/.mailcap"
+
+/**************************
+ * XLOADIMAGE_COMMAND will be used as a default in src/HTInit.c for
+ * viewing image content types when the DISPLAY environment variable
+ * is set.  Make it the full path and name of the xli (also known as
+ * xloadimage or xview) command, or other image viewer.  It can be
+ * anything that will handle GIF, TIFF and other popular image formats
+ * (xli does).  The freeware distribution of xli is available in the
+ * ftp://ftp.x.org/contrib/ subdirectory.  The shareware, xv, also is
+ * suitable.  You must also have a "%s" for the filename; "&" for
+ * background is optional.  The default defined here can be overridden
+ * in lynx.cfg, or via the global or personal mailcap files.
+ * Make this NULL if you don't have such a viewer or don't want to
+ * use any default viewers for image types.  Note that open is used as
+ * the default for NeXT, instead of the XLOADIMAGE_COMMAND definition.
+ */
+#define XLOADIMAGE_COMMAND "xli %s &"
+
+/**************************
+ * For UNIX systems, SYSTEM_MAIL and SYSTEM_MAIL_FLAGS are set by the
+ * configure-script.
+ */
+
+/**************************
+ * A place to put temporary files, it is almost always in "/tmp/"
+ * for UNIX systems.  If you include "$USER" in the definition
+ * (e.g., "/tmp/$USER"), Lynx will replace the "$USER" with the
+ * username of the account which invoked the Lynx image.  Such
+ * directories should already exist, and have protections/ACLs set
+ * so that only the appropriate user(s) will have read/write access.
+ * If the path includes a tilde (e.g, "~" or "~/lynxtmp"), Lynx will
+ * replace the tilde with the full path for the user's home.
+ * The definition here can be overridden at run time by setting a
+ * "LYNX_TEMP_SPACE" environment variable, or (if that is not set)
+ * the "TMPDIR" (unix), or "TEMP" or "TMP" (Windows,DOS,OS/2)
+ * variable.
+ */
+#define TEMP_SPACE "/tmp/"
+
+/********************************
+ * Comment this line out to disable code that implements command logging
+ * and scripting.
+ */
+#define USE_CMD_LOGGING 1
+
+/********************************
+ * Comment this line out to disable code that randomizes the names given to
+ * temporary files.
+ */
+#define USE_RAND_TEMPNAME 1
+
+/********************************
+ * Comment this line out to let the user enter his/her email address
+ * when sending a message.  There should be no need to do this unless
+ * your mailer agent does not put in the From: field for you.  (If your
+ * mailer agent does not automatically put in the From: field, you should
+ * upgrade, because anonymous mail makes it far too easy for a user to
+ * spoof someone else's email address.)
+ */
+/*#define NO_ANONYMOUS_EMAIL TRUE */
+
+/********************************
+ * LIST_FORMAT defines the display for local files when LONG_LIST
+ * is defined in the Makefile.  The default set here can be changed
+ * in lynx.cfg.
+ *
+ * The percent items in the list are interpreted as follows:
+ *
+ *	%p	Unix-style permission bits
+ *	%l	link count
+ *	%o	owner of file
+ *	%g	group of file
+ *	%d	date of last modification
+ *	%a	anchor pointing to file or directory
+ *	%A	as above but don't show symbolic links
+ *	%t	type of file (description derived from MIME type)
+ *	%T	MIME type as known by Lynx (from mime.types or default)
+ *	%k	size of file in Kilobytes
+ *	%K	as above but omit size for directories
+ *	%s	size of file in bytes
+ *
+ * Anything between the percent and the letter is passed on to sprintf.
+ * A double percent yields a literal percent on output.  Other characters
+ * are passed through literally.
+ *
+ * If you want only the filename:  "    %a"
+ *
+ * If you want a brief output:     "    %4K %-12.12d %a"
+ *
+ * For the Unix "ls -l" format:    "    %p %4l %-8.8o %-8.8g %7s %-12.12d %a"
+ */
+#ifdef DOSPATH
+#define LIST_FORMAT "    %4K %-12.12d %a"
+#else
+#define LIST_FORMAT "    %p %4l %-8.8o %-8.8g %7s %-12.12d %a"
+#endif
+
+/*
+ * FTP_FORMAT uses the same codes as LIST_FORMAT, but applies to files shown
+ * in an ftp listing.
+ */
+#define FTP_FORMAT "%d  %-16.16t %a  %K"
+
+/*
+ *  If NO_FORCED_CORE_DUMP is set to TRUE, Lynx will not force
+ *  core dumps via abort() calls on fatal errors or assert()
+ *  calls to check potentially fatal errors.  The default defined
+ *  here can be changed in lynx.cfg, and the compilation or
+ *  configuration default can be toggled via the -core command
+ *  line switch.
+ */
+#define NO_FORCED_CORE_DUMP	FALSE
+
+/**************************
+ * LYNX_LSS_FILE is the location and name of the default lynx
+ * character style sheet file.  It is sought and processed at
+ * startup of Lynx only if experimental character style code
+ * has been compiled in, otherwise it will be ignored.  Note
+ * that use of the character style option is _experimental_ AND
+ * _unsupported_.  There is no documentation other than a sample
+ * lynx.lss file in the samples subdirectory.  You also can
+ * define the location and name of this file via environment
+ * variables "LYNX_LSS" or "lynx_lss" which will override the
+ * "LYNX_LSS_FILE" definition here.  You can use '~' in either or
+ * both definitions to refer to the user's home directory.  The
+ * -lss command line switch will override these definitions.
+ */
+#ifndef LYNX_LSS_FILE
+#define LYNX_LSS_FILE "/usr/local/lib/lynx.lss"
+#endif /* LYNX_LSS_FILE */
+
+#endif /* VMS OR UNIX */
+
+/*************************************************************
+ *  Section 1c)   Every platform must change or verify these
+ *
+ */
+
+/*****************************
+ * STARTFILE is the default starting URL if none is specified
+ *   on the command line or via a WWW_HOME environment variable;
+ *   Lynx will refuse to start without a starting URL of some kind.
+ * STARTFILE can be remote, e.g., http://www.w3.org/default.html ,
+ *                or local, e.g., file://localhost/PATH_TO/FILENAME ,
+ *           where PATH_TO is replaced with the complete path to FILENAME
+ *           using Unix shell syntax and including the device on VMS.
+ *
+ * Normally we expect you will connect to a remote site, e.g., the Lynx starting
+ * site:
+ */
+#define STARTFILE "http://lynx.isc.org/"
+/*
+ * As an alternative, you may want to use a local URL.  A good choice for this
+ * is the user's home directory:
+ *#define STARTFILE "file://localhost/~/"
+ *
+ * Your choice of STARTFILE should reflect your site's needs, and be a URL that
+ * you can connect to reliably.  Otherwise users will become confused and think
+ * that they cannot run Lynx.
+ */
+
+/*****************************
+ * HELPFILE must be defined as a URL and must have a
+ * complete path if local:
+ * file://localhost/PATH_TO/lynx_help/lynx_help_main.html
+ *   Replace PATH_TO with the path to the lynx_help subdirectory
+ *   for this distribution (use SHELL syntax including the device
+ *   on VMS systems).
+ * The default HELPFILE is:
+ * http://lynx.isc.org/release/lynx2-8-7/lynx_help/lynx_help_main.html
+ *   This should be changed here or in lynx.cfg to the local path.
+ * The definition here can be overridden at run time by defining a
+ * "LYNX_HELPFILE" environment variable.
+ */
+#define HELPFILE "http://lynx.isc.org/release/lynx2-8-7/lynx_help/lynx_help_main.html"
+/* #define HELPFILE "file://localhost/PATH_TO/lynx_help/lynx_help_main.html" */
+
+/*****************************
+ * DEFAULT_INDEX_FILE is the default file retrieved when the
+ * user presses the 'I' key when viewing any document.
+ * An index to your CWIS can be placed here or a document containing
+ * pointers to lots of interesting places on the web.
+ */
+#define DEFAULT_INDEX_FILE "http://scout.wisc.edu/"
+
+/*****************************
+ * If USE_TRACE_LOG is set FALSE, then when TRACE mode is invoked the
+ * syserr messages will not be directed to a log file named Lynx.trace
+ * in the account's HOME directory.  The default defined here can be
+ * toggled via the -tlog command line switch.  Also, it is set FALSE
+ * automatically when Lynx is executed in an anonymous or validation
+ * account (if indicated via the -anonymous or -validate command line
+ * switches, or via the check for the ANONYMOUS_USER, defined below).
+ * When FALSE, the TRACE_LOG command (normally ';') cannot be used to
+ * examine the Lynx Trace Log during the current session.  If left
+ * TRUE, but you wish to use command line piping of stderr to a file
+ * you specify, include the -tlog toggle on the command line.  Note
+ * that once TRACE mode is turned on during a session and stderr is
+ * directed to the log, all stderr messages will continue going to
+ * the log, even if TRACE mode is turned off via the TOGGLE_TRACE
+ * (Control-T) command.
+ */
+#define USE_TRACE_LOG	TRUE
+
+/*******************************
+ * If GOTOBUFFER is set to TRUE here or in lynx.cfg the last entered
+ * goto URL, if any, will be offered as a default for reuse or editing
+ * when the 'g'oto command is entered.  All previously used goto URLs
+ * can be accessed for reuse or editing via a circular buffer invoked
+ * with the Up-Arrow or Down-Arrow keys after entering the 'g'oto
+ * command, whether or not a default is offered.
+ */
+#define GOTOBUFFER	  FALSE
+
+/*****************************
+ * If FTP_PASSIVE is set to TRUE here or in lynx.cfg, ftp transfers will
+ * be done in passive mode.
+ * Note: if passive transfers fail, lynx falls back to active mode, and
+ * vice versa if active transfers fail at first.
+ */
+#define FTP_PASSIVE	  TRUE
+
+/*****************************
+ * JUMPFILE is the default local file checked for shortcut URLs when
+ * the user presses the 'J' (JUMP) key.  The user will be prompted for
+ * a shortcut entry (analogously to 'g'oto), and can enter one
+ * or use '?' for a list of the shortcuts with associated links to
+ * their actual URLs.  See the sample jumps files in the samples
+ * subdirectory.  Make sure your jumps file includes a '?' shortcut
+ * for a file://localhost URL to itself:
+ *
+ * <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 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
+ * prompts can be set for them, in lynx.cfg, but at least one default
+ * jumps file and associated prompt should be established before adding
+ * others.
+ *
+ * On VMS, use Unix SHELL syntax (including a lead slash) to define it.
+ *
+ * Do not include "file://localhost" in the definition.
+ */
+/* #define JUMPFILE "/Lynx_Dir/jumps.html" */
+
+/*******************************
+ * If JUMPBUFFER is set to TRUE here or in lynx.cfg the last entered
+ * jump shortcut, if any, will be offered as a default for reuse or
+ * editing when the JUMP command is entered.  All previously used
+ * shortcuts can be accessed for reuse or editing via a circular buffer
+ * invoked with the Up-Arrow or Down-Arrow keys after entering the JUMP
+ * command, whether or not a default is offered.  If you have multiple
+ * jumps files and corresponding key mappings, each will have its own
+ * circular buffer.
+ */
+#define JUMPBUFFER	  FALSE
+
+/********************************
+ * If PERMIT_GOTO_FROM_JUMP is defined, then a : or / in a jump target
+ * will be treated as a full or partial URL (to be resolved versus the
+ * startfile), and will be handled analogously to a 'g'oto command.
+ * Such "random URLs" will be entered in the circular buffer for goto
+ * URLs, not the buffer for jump targets (shortcuts).  If the target
+ * is the single character ':', it will be treated equivalently to an
+ * Up-Arrow or Down-Arrow following a 'g'oto command, for accessing the
+ * circular buffer of goto URLs.
+ */
+/* #define PERMIT_GOTO_FROM_JUMP */
+
+/*****************************
+ * If LYNX_HOST_NAME is defined here and/or in lynx.cfg, it will be
+ * treated as an alias for the local host name in checks for URLs on
+ * the local host (e.g., when the -localhost switch is set), and this
+ * host name, "localhost", and HTHostName (the fully qualified domain
+ * name of the system on which Lynx is running) will all be passed as
+ * local.  A different definition in lynx.cfg will override this one.
+ */
+/* #define LYNX_HOST_NAME "www.cc.ukans.edu" */
+
+/*********************
+ * LOCAL_DOMAIN is used for a tail match with the ut_host element of
+ * the utmp or utmpx structure on systems with utmp capabilities, to
+ * determine if a user is local to your campus or organization when
+ * handling -restrictions=inside_foo or outside_foo settings for ftp,
+ * news, telnet/tn3270 and rlogin URLs.  An "inside" user is assumed
+ * if your system does not have utmp capabilities.  CHANGE THIS here
+ * or in lynx.cfg.
+ */
+#define LOCAL_DOMAIN "ukans.edu"
+
+/********************************
+* The DEFAULT_CACHE_SIZE specifies the number of WWW documents to be
+* cached in memory at one time.
+*
+* This so-called cache size (actually, number) may be modified in lynx.cfg
+* and or with the command line argument -cache=NUMBER  The minimum allowed
+* value is 2, for the current document and at least one to fetch, and there
+* is no absolute maximum number of cached documents.  On Unix, and VMS not
+* compiled with VAXC, whenever the number is exceeded the least recently
+* displayed document will be removed from memory.
+*
+* On VMS compiled with VAXC, the DEFAULT_VIRTUAL_MEMORY_SIZE specifies the
+* amount (bytes) of virtual memory that can be allocated and not yet be freed
+* before previous documents are removed from memory.  If the values for both
+* the DEFAULT_CACHE_SIZE and DEFAULT_VIRTUAL_MEMORY_SIZE are exceeded, then
+* least recently displayed documents will be freed until one or the other
+* value is no longer exceeded.  The value can be modified in lynx.cfg.
+*
+* The Unix and VMS but not VAXC implementations use the C library malloc's
+* and calloc's for memory allocation, and procedures for taking the actual
+* amount of cache into account still need to be developed.  They use only
+* the DEFAULT_CACHE_SIZE value, and that specifies the absolute maximum
+* number of documents to cache (rather than the maximum number only if
+* DEFAULT_VIRTUAL_MEMORY_SIZE has been exceeded, as with VAXC/VAX).
+*/
+#define DEFAULT_CACHE_SIZE 10
+
+#if defined(VMS) && defined(VAXC) && !defined(__DECC)
+#define DEFAULT_VIRTUAL_MEMORY_SIZE 512000
+#endif /* VMS && VAXC && !__DECC */
+
+/********************************
+ * If ALWAYS_RESUBMIT_POSTS is set TRUE, Lynx always will resubmit forms
+ * with method POST, dumping any cache from a previous submission of the
+ * form, including when the document returned by that form is sought with
+ * the PREV_DOC command or via the history list.  Lynx always resubmits
+ * forms with method POST when a submit button or a submitting text input
+ * is activated, but normally retrieves the previously returned document
+ * if it had links which you activated, and then go back with the PREV_DOC
+ * command or via the history list.
+ *
+ * The default defined here can be changed in lynx.cfg, and can be toggled
+ * via the -resubmit_posts command line switch.
+ */
+#define ALWAYS_RESUBMIT_POSTS FALSE
+
+/********************************
+ * CHARACTER_SET defines the default character set, i.e., that assumed
+ * to be installed on the user's terminal.  It determines which characters
+ * or strings will be used to represent 8-bit character entities within
+ * HTML.  New character sets may be defined as explained in the README
+ * files of the src/chrtrans directory in the Lynx source code distribution.
+ * For Asian (CJK) character sets, it also determines how Kanji code will
+ * be handled.  The default defined here can be changed in lynx.cfg, and
+ * via the 'o'ptions menu.  The 'o'ptions menu setting will be stored in
+ * the user's RC file whenever those settings are saved, and thereafter
+ * will be used as the default.  Also see lynx.cfg for information about
+ * the -raw switch and LYK_RAW_TOGGLE command.
+ *
+ * Since Lynx now supports a wide range of platforms it may be useful
+ * to note that cpXXX codepages used by IBM PC compatible computers,
+ * and windows-xxxx used by native MS-Windows apps.
+ *
+ *  Recognized character sets include:
+ *
+ *     string for 'O'ptions Menu          MIME name
+ *     ===========================        =========
+ *     7 bit approximations (US-ASCII)    us-ascii
+ *     Western (ISO-8859-1)               iso-8859-1
+ *     Western (cp850)                    cp850
+ *     Western (windows-1252)             windows-1252
+ *     IBM PC US codepage (cp437)         cp437
+ *     DEC Multinational                  dec-mcs
+ *     Macintosh (8 bit)                  macintosh
+ *     NeXT character set                 next
+ *     HP Roman8                          hp-roman8
+ *     Chinese                            euc-cn
+ *     Japanese (EUC-JP)                  euc-jp
+ *     Japanese (Shift_JIS)               shift_jis
+ *     Korean                             euc-kr
+ *     Taipei (Big5)                      big5
+ *     Vietnamese (VISCII)                viscii
+ *     Eastern European (ISO-8859-2)      iso-8859-2
+ *     Eastern European (cp852)           cp852
+ *     Eastern European (windows-1250)    windows-1250
+ *     Latin 3 (ISO-8859-3)               iso-8859-3
+ *     Latin 4 (ISO-8859-4)               iso-8859-4
+ *     Baltic Rim (cp775)                 cp775
+ *     Baltic Rim (windows-1257)          windows-1257
+ *     Cyrillic (ISO-8859-5)              iso-8859-5
+ *     Cyrillic (cp866)                   cp866
+ *     Cyrillic (windows-1251)            windows-1251
+ *     Cyrillic (KOI8-R)                  koi8-r
+ *     Arabic (ISO-8859-6)                iso-8859-6
+ *     Arabic (cp864)                     cp864
+ *     Arabic (windows-1256)              windows-1256
+ *     Greek (ISO-8859-7)                 iso-8859-7
+ *     Greek (cp737)                      cp737
+ *     Greek2 (cp869)                     cp869
+ *     Greek (windows-1253)               windows-1253
+ *     Hebrew (ISO-8859-8)                iso-8859-8
+ *     Hebrew (cp862)                     cp862
+ *     Hebrew (windows-1255)              windows-1255
+ *     Turkish (ISO-8859-9)               iso-8859-9
+ *     ISO-8859-10                        iso-8859-10
+ *     Ukrainian Cyrillic (cp866u)        cp866u
+ *     Ukrainian Cyrillic (KOI8-U)        koi8-u
+ *     UNICODE (UTF-8)                    utf-8
+ *     RFC 1345 w/o Intro                 mnemonic+ascii+0
+ *     RFC 1345 Mnemonic                  mnemonic
+ *     Transparent                        x-transparent
+ */
+#define CHARACTER_SET "iso-8859-1"
+
+/*****************************
+ * PREFERRED_LANGUAGE is the language in MIME notation (e.g., "en",
+ * "fr") which will be indicated by Lynx in its Accept-Language headers
+ * as the preferred language.  If available, the document will be
+ * transmitted in that language.  This definition can be overridden via
+ * lynx.cfg.  Users also can change it via the 'o'ptions menu and save
+ * that preference in their RC file.  This may be a comma-separated list
+ * of languages in decreasing preference.
+ */
+#define PREFERRED_LANGUAGE "en"
+
+/*****************************
+ * PREFERRED_CHARSET specifies the character set in MIME notation (e.g.,
+ * "ISO-8859-2", "ISO-8859-5") which Lynx will indicate you prefer in
+ * requests to http servers using an Accept-Charsets header.
+ * This definition can be overridden via lynx.cfg.  Users also can change it
+ * via the 'o'ptions menu and save that preference in their RC file.
+ * The value should NOT include "ISO-8859-1" or "US-ASCII", since those
+ * values are always assumed by default.
+ * If a file in that character set is available, the server will send it.
+ * If no Accept-Charset header is present, the default is that any
+ * character set is acceptable.  If an Accept-Charset header is present,
+ * and if the server cannot send a response which is acceptable
+ * according to the Accept-Charset header, then the server SHOULD send
+ * an error response with the 406 (not acceptable) status code, though
+ * the sending of an unacceptable response is also allowed. (RFC2068)
+ */
+#define PREFERRED_CHARSET ""
+
+/*****************************
+* If MULTI_BOOKMARK_SUPPORT is set to MBM_STANDARD or MBM_ADVANCED, and
+* BLOCK_MULTI_BOOKMARKS (see below) is FALSE, and sub-bookmarks exist, all
+* bookmark operations will first prompt the user to select an active
+* sub-bookmark file or the default bookmark file.  MBM_OFF is the default so
+* that one (the default) bookmark file will be available initially.  The
+* default set here can be overridden in lynx.cfg.  The user can turn on
+* multiple bookmark 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 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
+* STANDARD.  No prompting or menu display occurs if only one (the startup
+* default) bookmark file has been defined (define additional ones via the
+* 'o'ptions menu).  The startup default, however set, can be overridden on the
+* command line via the -restrictions=multibook or the -anonymous or -validate
+* switches.
+*/
+#ifndef MULTI_BOOKMARK_SUPPORT
+#define MULTI_BOOKMARK_SUPPORT MBM_OFF
+#endif /* MULTI_BOOKMARK_SUPPORT */
+
+/*****************************
+* If BLOCK_MULTI_BOOKMARKS is set TRUE, multiple bookmark support will
+* be forced off, and cannot be toggled on via the 'o'ptions menu.  This
+* compilation setting can be overridden via lynx.cfg.
+*/
+#ifndef BLOCK_MULTI_BOOKMARKS
+#define BLOCK_MULTI_BOOKMARKS FALSE
+#endif /* BLOCK_MULTI_BOOKMARKS */
+
+/********************************
+ * URL_DOMAIN_PREFIXES and URL_DOMAIN_SUFFIXES are strings which will be
+ * prepended (together with a scheme://) and appended to the first element
+ * of command line or 'g'oto arguments which are not complete URLs and
+ * cannot be opened as a local file (file://localhost/string).  Both
+ * can be comma-separated lists.  Each prefix must end with a dot, each
+ * suffix must begin with a dot, and either may contain other dots (e.g.,
+ * .co.jp).  The default lists are defined here, and can be changed
+ * in lynx.cfg.  Each prefix will be used with each suffix, in order,
+ * until a valid Internet host is created, based on a successful DNS
+ * lookup (e.g., foo will be tested as www.foo.com and then www.foo.edu
+ * etc.).  The first element can include a :port and/or /path which will
+ * be restored with the expanded host (e.g., wfbr:8002/dir/lynx will
+ * become http://www.wfbr.edu:8002/dir/lynx).  The prefixes will not be
+ * used if the first element ends in a dot (or has a dot before the
+ * :port or /path), and similarly the suffixes will not be used if the
+ * the first element begins with a dot (e.g., .nyu.edu will become
+ * http://www.nyu.edu without testing www.nyu.com).  Lynx will try to
+ * guess the scheme based on the first field of the expanded host name,
+ * and use "http://" as the default (e.g., gopher.wfbr.edu or gopher.wfbr.
+ * will be made gopher://gopher.wfbr.edu).
+ */
+#define URL_DOMAIN_PREFIXES "www."
+#define URL_DOMAIN_SUFFIXES ".com,.edu,.net,.org"
+
+/********************************
+ * If LIST_NEWS_NUMBERS is set TRUE, Lynx will use an ordered list
+ * and include the numbers of articles in news listings, instead of
+ * using an unordered list.
+ *
+ * The default defined here can be changed in lynx.cfg.
+ */
+#define LIST_NEWS_NUMBERS FALSE
+
+/********************************
+ * If LIST_NEWS_DATES is set TRUE, Lynx will include the dates of
+ * articles in news listings.  The dates always are included in the
+ * articles, themselves.
+ *
+ * The default defined here can be changed in lynx.cfg.
+ */
+#define LIST_NEWS_DATES FALSE
+
+/*************************
+ * Set NEWS_POSTING to FALSE if you do not want to support posting to
+ * news groups via Lynx.  If left TRUE, Lynx will use its news gateway to
+ * post new messages or followups to news groups, using the URL schemes
+ * described in the "Supported URL" section of the online 'h'elp.  The
+ * posts will be attempted via the nntp server specified in the URL, or
+ * if none was specified, via the NNTPSERVER configuration or environment
+ * variable.  Links with these URLs for posting or sending followups are
+ * created by the news gateway when reading group listings or articles
+ * from nntp servers if the server indicates that it permits posting.
+ * The setting here can be changed in lynx.cfg.
+ */
+#define NEWS_POSTING TRUE
+
+/*************************
+ * Define LYNX_SIG_FILE to the name of a file containing a signature which
+ * can be appended to email messages and news postings or followups.  The
+ * user will be prompted whether to append it.  It is sought in the home
+ * directory.  If it is in a subdirectory, begin it with a dot-slash
+ * (e.g., ./lynx/.lynxsig).  The definition here can be changed in lynx.cfg.
+ */
+#define LYNX_SIG_FILE ".lynxsig"
+
+/********************************
+ * BIBP_GLOBAL_SERVER is the default global server for bibp: links, used
+ * when a local bibhost or document-specified citehost is unavailable.
+ */
+#define BIBP_GLOBAL_SERVER "http://usin.org/"
+
+/********************************
+ * If USE_SELECT_POPUPS is set FALSE, Lynx will present a vertical list
+ * of radio buttons for the OPTIONs in SELECT blocks which lack the
+ * MULTIPLE attribute, instead of using a popup menu.  Note that if
+ * the MULTIPLE attribute is present in the SELECT start tag, Lynx
+ * always will create a vertical list of checkboxes for the OPTIONs.
+ *
+ * The default defined here can be changed in lynx.cfg.  It can be
+ * set and saved via the 'o'ptions menu to override the compilation
+ * and configuration defaults, and the default always can be toggled
+ * via the -popup command line switch.
+ */
+#define USE_SELECT_POPUPS TRUE
+
+/********************************
+ * 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.
+ *
+ * The default defined here can be changed in lynx.cfg.
+ */
+#define COLLAPSE_BR_TAGS TRUE
+
+/********************************
+ * If SET_COOKIES is set FALSE, Lynx will ignore Set-Cookie headers
+ * in http server replies.
+ *
+ * The default defined here can be changed in lynx.cfg, and can be toggled
+ * via the -cookies command line switch.
+ */
+#define SET_COOKIES TRUE
+
+/********************************
+ * If SEND_USERAGENT is set FALSE, Lynx will not send a user-agent string.
+ * You can override this in the 'O'ptions menu.
+ */
+#define SEND_USERAGENT TRUE
+
+/*******************************
+ * If ACCEPT_ALL_COOKIES is set TRUE, and SET_COOKIES is TRUE, Lynx will
+ * accept all cookies.
+ *
+ * The default defined here can be changed in lynx.cfg, and .lynxrc, or
+ * toggled via the -accept_all_cookies command line switch.
+ */
+#define ACCEPT_ALL_COOKIES FALSE
+
+/****************************************************************
+ *   Section 2.   Things that you probably want to change or review
+ *
+ */
+
+/*****************************
+ * The following three definitions set the number of seconds for
+ * 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 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
+ * report a serious problem and should be paused long enough to read
+ * whenever they appear (typically unexpectedly).  The default values
+ * defined here can be modified via lynx.cfg, should longer pauses be
+ * desired for braille-based access to Lynx.
+ */
+#define INFOSECS 1
+#define MESSAGESECS 2
+#define ALERTSECS 3
+
+#define DEBUGSECS 0
+#define REPLAYSECS 0
+
+/******************************
+ * SHOW_COLOR controls whether the program displays in color by default.
+ */
+#ifdef COLOR_CURSES
+#define SHOW_COLOR TRUE
+#else
+#define SHOW_COLOR FALSE
+#endif
+
+/******************************
+ * SHOW_CURSOR controls whether or not the cursor is hidden or appears
+ * over the current link, or current option in select popup windows.
+ * Showing the cursor is handy if you are a sighted user with a poor
+ * terminal that can't do bold and reverse video at the same time or
+ * at all.  It also can be useful to blind users, as an alternative
+ * or supplement to setting LINKS_AND_FIELDS_ARE_NUMBERED or
+ * LINKS_ARE_NUMBERED.
+ *
+ * The default defined here can be changed in lynx.cfg.  It can be
+ * set and saved via the 'o'ptions menu to override the compilation
+ * and configuration defaults, and the default always can be toggled
+ * via the -show_cursor command line switch.
+ */
+#define SHOW_CURSOR FALSE
+
+/******************************
+* UNDERLINE_LINKS controls whether links are underlined by default, or shown
+* in bold.  Normally this default is set from the configure script.
+*/
+#ifndef HAVE_CONFIG_H
+#define UNDERLINE_LINKS FALSE
+#endif
+
+/******************************
+* VERBOSE_IMAGES controls whether or not Lynx replaces the [LINK], [INLINE]
+* and [IMAGE] comments (for images without ALT) with filenames of these
+* images.  This is extremely useful because now we can determine immediately
+* what images are just decorations (button.gif, line.gif) and what images are
+* important.
+*
+* The default defined here can be changed in lynx.cfg.
+*/
+#define VERBOSE_IMAGES TRUE
+
+/******************************
+ * BOXVERT and BOXHORI control the layout of popup menus.  Set to 0 if your
+ * curses supports line-drawing characters, set to '*' or any other character
+ * to not use line-drawing (e.g., '|' for vertical and '-' for horizontal).
+ */
+#ifndef HAVE_CONFIG_H
+#ifdef DOSPATH
+#define BOXVERT 0
+#define BOXHORI 0
+#else
+#define BOXVERT '|'
+/* #define BOXVERT 0 */
+#define BOXHORI '-'
+/* #define BOXHORI 0 */
+#endif /* DOSPATH */
+#endif /* !HAVE_CONFIG_H */
+
+/******************************
+ * LY_UMLAUT controls the 7-bit expansion of characters with dieresis or
+ * umlaut.  If defined, a digraph is displayed, e.g., auml --> ae
+ * Otherwise, a single character is displayed,  e.g., auml --> a
+ * Note that this is currently not supported with the chartrans code,
+ * or rather it doesn't have an effect if translations for a display
+ * character set are taken from one of the *.tbl files in src/chrtrans.
+ * One would have to modify the corresponding *.tbl file to change the
+ # 7-bit replacements for these characters.
+ */
+#define LY_UMLAUT
+
+/*******************************
+ * Execution links/scripts configuration.
+ *
+ * Execution links and scripts allow you to run
+ * local programs by activating links within Lynx.
+ *
+ * An execution link is of the form:
+ *
+ *     lynxexec:<COMMAND>
+ * or:
+ *     lynxexec://<COMMAND>
+ * or:
+ *     lynxprog:<COMMAND>
+ * or:
+ *     lynxprog://<COMMAND>
+ *
+ * where <COMMAND> is a command that Lynx will run when the link is
+ * activated.  The double-slash should be included if the command begins
+ * with an '@', as for executing VMS command files.  Otherwise, the double-
+ * slash can be omitted.
+ * Use lynxexec for commands or scripts that generate a screen output which
+ * should be held via a prompt to press <return> before returning to Lynx
+ * for display of the current document.
+ * Use lynxprog for programs such as mail which do not require a pause before
+ * Lynx restores the display of the current document.
+ *
+ * Execution scripts take the form of a standard
+ * URL.  Extension mapping or MIME typing is used
+ * to decide if the file is a script and should be
+ * executed.  The current extensions are:
+ * .csh, .ksh, and .sh on UNIX systems and .com on
+ * VMS systems.  Any time a file of this type is
+ * accessed Lynx will look at the user's options
+ * settings to decide if the script can be executed.
+ * Current options include: Only exec files that
+ * reside on the local machine and are referenced
+ * with a "file://localhost" URL, All execution
+ * off, and all execution on.
+ *
+ * The following definitions will add execution
+ * capabilities to Lynx.  You may define none, one
+ * or both.
+ *
+ * I strongly recommend that you define neither one
+ * of these since execution links/scripts can represent
+ * very serious security risk to your system and its
+ * users.  If you do define these I suggest that
+ * you only allow users to execute files/scripts
+ * that reside on your local machine.
+ *
+ * YOU HAVE BEEN WARNED!
+ *
+ * Note: if you are enabling execution scripts you should
+ * also see src/HTInit.c to verify/change the execution
+ * script extensions and/or commands.
+ */
+/* #define EXEC_LINKS  */
+/* #define EXEC_SCRIPTS  */
+
+#if defined(EXEC_LINKS) || defined(EXEC_SCRIPTS)
+
+/**********
+ * if ENABLE_OPTS_CHANGE_EXEC is defined, the user will be able to change
+ * the execution status within the Options Menu.
+ */
+/* #define ENABLE_OPTS_CHANGE_EXEC */
+
+/**********
+ * if NEVER_ALLOW_REMOTE_EXEC is defined,
+ * local execution of scripts or lynxexec & lynxprog URLs will be implemented
+ * only from HTML files that were accessed via a "file://localhost/" URL
+ * and the Options Menu for "Local executions links" will allow toggling
+ * only between "ALWAYS OFF" and "FOR LOCAL FILES ONLY".
+ */
+/* #define NEVER_ALLOW_REMOTE_EXEC */
+
+/*****************************
+ * These are for executable shell scripts and links.
+ * Set to FALSE unless you really know what you're
+ * doing.
+ *
+ * This only applies if you are compiling with EXEC_LINKS or
+ * EXEC_SCRIPTS defined.
+ *
+ * The first two settings:
+ * LOCAL_EXECUTION_LINKS_ALWAYS_ON
+ * LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE
+ * specify the DEFAULT settings of the users execution link
+ * options (they can also be overridden in lynx.cfg), 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 command line option:
+ *    -restrictions=exec_frozen
+ *
+ * LOCAL_EXECUTION_LINKS_ALWAYS_ON will be FALSE
+ * if NEVER_ALLOW_REMOTE_EXEC has been defined.
+ *
+ * if LOCAL_EXECUTION_LINKS_ALWAYS_OFF_FOR_ANONYMOUS is true,
+ * all execution links will be disabled when the -anonymous
+ * command-line option is used.  Anonymous users are not allowed
+ * to change the execution options from within the Lynx Options Menu,
+ * so you might be able to use this option to enable execution links
+ * and set LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE to TRUE
+ * to give anonymous execution-link capability without compromising
+ * your system (see comments about TRUSTED_EXEC rules in lynx.cfg ).
+ */
+
+#define LOCAL_EXECUTION_LINKS_ALWAYS_ON          FALSE
+#define LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE  FALSE
+#define LOCAL_EXECUTION_LINKS_ALWAYS_OFF_FOR_ANONYMOUS FALSE
+
+#endif /*  defined(EXEC_LINKS) || defined(EXEC_SCRIPTS) */
+
+/**********
+ * *** This is for those -- e.g. DOS users -- who do not have configure;
+ * *** others should use the configure switch --enable-lynxcgi-links .
+ *
+ * UNIX:
+ * =====
+ * CGI script support.  Defining LYNXCGI_LINKS allows you to use the
+ *
+ *   lynxcgi:path
+ *
+ * URL which allows lynx to access a cgi script directly without the need for
+ * a http daemon.  Redirection is not supported but just about everything
+ * else is.  If the path is not an executable file then the URL is
+ * rewritten as file://localhost and passed to the file loader.  This means
+ * that if your http:html files are currently set up to use relative
+ * addressing, you should be able to fire up your main page with lynxcgi:path
+ * and everything should work as if you were talking to the http daemon.
+ *
+ * Note that TRUSTED_LYNXCGI directives must be defined in your lynx.cfg file
+ * if you wish to place restrictions on source documents and/or paths for
+ * lynxcgi links.
+ *
+ * The cgi scripts are called with a fork()/execve() sequence so you don't
+ * have to worry about people trying to abuse the code. :-)
+ *
+ *     George Lindholm (George.Lindholm@ubc.ca)
+ *
+ * VMS:
+ * ====
+ * The lynxcgi scheme, if enabled, yields an informational message regardless
+ * of the path, and use of the freeware OSU DECthreads server as a local
+ * script server is recommended instead of lynxcgi URLs.  Uncomment the
+ * following line to define LYNXCGI_LINKS, and when running Lynx, enter
+ * lynxcgi:advice  as a G)oto URL for more information and links to the
+ * OSU server distribution.
+ */
+#ifndef HAVE_CONFIG_H
+/* #define LYNXCGI_LINKS */
+#endif
+
+/*********************************
+ *  MAIL_SYSTEM_ERROR_LOGGING will send a message to the owner of
+ *  the information if there is one, every time
+ *  that a document cannot be accessed!
+ *  This is just the default, it can be changed in lynx.cfg, and error
+ *  logging can be turned off with the -nolog command line option.
+ *
+ *  NOTE: This can generate A LOT of mail, be warned.
+ */
+#define MAIL_SYSTEM_ERROR_LOGGING   FALSE	/*mail a message for every error? */
+
+/*********************************
+ *  If a document cannot be accessed, and MAIL_SYSTEM_ERROR_LOGGING
+ *  is on and would send a message to the owner of the information,
+ *  but no owner is known, then the message will be sent to ALERTMAIL
+ *  instead - if it is defined as a non-empty email address.
+ *
+ *  NOTE: This can generate A REAL LOT of mail, be warned!!!
+ */
+/* #define ALERTMAIL "webmaster@localhost" */ /*error recipient if no owner */
+
+/*********************************
+ * 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 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.
+ * This is just the default, it can be changed in lynx.cfg.  The checks and
+ * status line reports will not be performed if Lynx has been invoked with
+ * the -restrictions=mail switch.
+ *
+ *  VMS USERS !!!
+ * New mail is normally broadcast as it arrives, via "unsolicited screen
+ * broadcasts", which can be "wiped" from the Lynx display via the Ctrl-W
+ * command.  You may prefer to disable the broadcasts and use CHECKMAIL
+ * instead (e.g., in a public account which will be used by people who
+ * are ignorant about VMS).
+ */
+#define CHECKMAIL	FALSE	/* report unread and new mail messages */
+
+/*********************************
+ * Vi or Emacs movement keys.  These are defaults,
+ * which can be changed in lynx.cfg , the Options Menu or .lynxrc .
+ */
+#define VI_KEYS_ALWAYS_ON	FALSE	/* familiar h j k l */
+#define EMACS_KEYS_ALWAYS_ON	FALSE	/* familiar ^N ^P ^F ^B */
+
+/*********************************
+ * DEFAULT_KEYPAD_MODE may be set to NUMBERS_AS_ARROWS
+ *                                or LINKS_ARE_NUMBERED
+ *                                or LINKS_AND_FIELDS_ARE_NUMBERED
+ * to specify whether numbers (e.g. [10]) appear before all links,
+ * allowing immediate access by entering the number on the keyboard,
+ * or numbers on the numeric key-pad work like arrows;
+ * the 3rd option causes form fields also to be preceded by numbers.
+ * The first two options (but not the last) can be changed in lynx.cfg
+ * and all three can be changed via the Options Menu.
+ */
+#define DEFAULT_KEYPAD_MODE	NUMBERS_AS_ARROWS
+
+/********************************
+ * The default search.
+ * This is a default that can be overridden in lynx.cfg or by the user!
+ */
+#define CASE_SENSITIVE_ALWAYS_ON    FALSE	/* case sensitive user search */
+
+/********************************
+ * If NO_DOT_FILES is set TRUE here or in lynx.cfg, the user will not be
+ * allowed to specify files beginning with a dot in reply to output filename
+ * prompts, and files beginning with a dot (e.g., file://localhost/foo/.lynxrc)
+ * will not be included in the directory browser's listings.  The setting here
+ * will be overridden by the setting in lynx.cfg.  If FALSE, you can force it
+ * to be treated as TRUE via -restrictions=dotfiles (or -anonymous, which sets
+ * this and most other restrictions).
+ *
+ * If it is FALSE at startup of Lynx, the user can regulate it via the
+ * 'o'ptions menu, and may save the preference in the RC file.
+ */
+#define NO_DOT_FILES    TRUE	/* disallow access to dot files */
+
+/********************************
+ * If MAKE_LINKS_FOR_ALL_IMAGES is TRUE, all images will be given links
+ * which can be ACTIVATEd.  For inlines, the ALT or pseudo-ALT ("[INLINE]")
+ * strings will be links for the resolved SRC rather than just text.  For
+ * ISMAP or other graphic links, the ALT or pseudo-ALT ("[ISMAP]" or "[LINK]")
+ * strings will have '-' and a link labeled "[IMAGE]" for the resolved SRC
+ * appended. See also VERBOSE_IMAGES flag.
+ *
+ * The default defined here can be changed in lynx.cfg, and the user can
+ * use LYK_IMAGE_TOGGLE to toggle the feature on or off at run time.
+ *
+ * The default also can be toggled via an "-image_links" command line switch.
+ */
+#define MAKE_LINKS_FOR_ALL_IMAGES	FALSE	/* inlines cast to links */
+
+/********************************
+ * If MAKE_PSEUDO_ALTS_FOR_INLINES is FALSE, inline images which do not
+ * specify an ALT string will not have "[INLINE]" inserted as a pseudo-ALT,
+ * i.e., they'll be treated as having ALT="".  If MAKE_LINKS_FOR_ALL_IMAGES
+ * is defined or toggled to TRUE, however, the pseudo-ALTs will be created
+ * for inlines, so that they can be used as links to the SRCs.
+ * See also VERBOSE_IMAGES flag.
+ *
+ * The default defined here can be changed in lynx.cfg, and the user can
+ * use LYK_INLINE_TOGGLE to toggle the feature on or off at run time.
+ *
+ * The default also can be toggled via a "-pseudo_inlines" command line
+ * switch.
+ */
+#define MAKE_PSEUDO_ALTS_FOR_INLINES	TRUE	/* Use "[INLINE]" pseudo-ALTs */
+
+/********************************
+ * If SUBSTITUTE_UNDERSCORES is TRUE, the _underline_ format will be used
+ * for emphasis tags in dumps.
+ *
+ * The default defined here can be changed in lynx.cfg, and the user can
+ * toggle the default via a "-underscore" command line switch.
+ */
+#define SUBSTITUTE_UNDERSCORES	FALSE	/* Use _underline_ format in dumps */
+
+/********************************
+ * If QUIT_DEFAULT_YES is defined as TRUE then when the QUIT command
+ * is entered, any response other than n or N will confirm.  Define it
+ * as FALSE if you prefer the more conservative action of requiring an
+ * explicit Y or y to confirm.  The default defined here can be changed
+ * in lynx.cfg.
+ */
+#define QUIT_DEFAULT_YES	TRUE
+
+/********************************
+ * If TEXT_SUBMIT_CONFIRM_WANTED is defined (to anything), the user will be
+ * prompted for confirmation before Lynx submits a form with only one input
+ * field (of type text) to the server, after the user has pressed <return>
+ * or <enter> on the field.  Since the is no other way such as a "submit"
+ * button to submit, normally the form gets submitted automatically in this
+ * case, but some users may find this surprising and expect <return> to just
+ * move to the next link as for other text entry fields.
+ */
+/* #define TEXT_SUBMIT_CONFIRM_WANTED */
+
+/********************************
+ * If TEXTFIELDS_MAY_NEED_ACTIVATION is defined (to anything),
+ * the option TEXTFIELDS_NEED_ACTIVATION in lynx.cfg or the command
+ * line option -tna can be used to require explicit activation
+ * before text input fields can be changed with the built-in line
+ * editor.
+ */
+
+#define TEXTFIELDS_MAY_NEED_ACTIVATION
+
+/********************************
+ * The following three definitions control some aspects of extended
+ * textarea handling.  TEXTAREA_EXPAND_SIZE is the number of new empty
+ * lines that get appended at the end of a textarea by a GROWTEXTAREA
+ * key.  If TEXTAREA_AUTOGROW is defined (to anything), <return> or
+ * <enter> in the last line of a textarea automatically extends the
+ * area by adding a new line.  If TEXTAREA_AUTOEXTEDIT is defined (to
+ * anything), a key mapped to DWIMEDIT will invoke the external editor
+ * like EDITTEXTAREA when used in a text input field.  Comment those
+ * last two definitions out to disable the corresponding behavior.
+ * See under KEYMAP in lynx.cfg for mapping keys to GROWTEXTAREA or
+ * DWIMEDIT actions.
+ */
+#define TEXTAREA_EXPAND_SIZE  5
+#define TEXTAREA_AUTOGROW
+#define TEXTAREA_AUTOEXTEDIT
+
+/********************************
+ * If BUILTIN_SUFFIX_MAPS is defined (to anything), default mappings
+ * for file extensions (aka suffixes) will be compiled in (see
+ * src/HTInit.c).  By removing the definition, the default mappings
+ * are suppressed except for a few very basic ones for text/html.
+ * See GLOBAL_EXTENSION_MAP, PERSONAL_EXTENSION_MAP above and SUFFIX,
+ * SUFFIX_ORDER in lynx.cfg for other ways to map file extensions.
+ */
+
+#define BUILTIN_SUFFIX_MAPS
+
+/********************************
+ * These definitions specify files created or used in conjunction
+ * with traversals.  See CRAWL.ANNOUNCE for more information.
+ */
+#define TRAVERSE_FILE "traverse.dat"
+#define TRAVERSE_FOUND_FILE "traverse2.dat"
+#define TRAVERSE_REJECT_FILE "reject.dat"
+#define TRAVERSE_ERRORS "traverse.errors"
+
+/****************************************************************
+ * The LYMessages_en.h header defines default, English strings
+ * 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.
+ */
+#ifndef LYMESSAGES_EN_H
+#include <LYMessages_en.h>
+#endif /* !LYMESSAGES_EN_H */
+
+/****************************************************************
+ * DEFAULT_VISITED_LINKS may be set to one or more of
+ *					VISITED_LINKS_AS_FIRST_V
+ *					VISITED_LINKS_AS_TREE
+ *					VISITED_LINKS_AS_LATEST
+ *					VISITED_LINKS_REVERSE
+ * to change the organization of the Visited Links page.
+ *
+ * (Not all combinations are meaningful; see src/LYrcFile.c for a list
+ * in the visited_links_tbl table).
+ */
+#define DEFAULT_VISITED_LINKS (VISITED_LINKS_AS_LATEST | VISITED_LINKS_REVERSE)
+
+/****************************************************************
+ * If USE_CACHEJAR is set to TRUE the user will be able to view,
+ * access and delete cached documents in current lynx session.
+ */
+#ifndef USE_CACHEJAR
+/* #define USE_CACHEJAR TRUE */
+#endif
+
+/****************************************************************
+ * If USE_SESSIONS is set to TRUE the user will be able to save,
+ * resume and in general manipulate with lynx sessions.
+ */
+#ifndef USE_SESSIONS
+/* #define USE_SESSIONS TRUE */
+#endif
+
+#define MAX_SESSIONS	10000
+
+/*
+ * If USE_SESSIONS is TRUE you may tune it fine how it will work:
+ */
+#define GOTOURL_IN_SESSION	/* Allow to save goto url */
+#define GOTOURL_OUT_SESSION	/* Allow to restore goto url */
+#define HISTORY_IN_SESSION	/* Allow to save history */
+#define HISTORY_OUT_SESSION	/* Allow to restore history */
+#define SEARCH_IN_SESSION	/* Allow to save search string */
+#define SEARCH_OUT_SESSION	/* Allow to restore search string */
+#define VLINK_IN_SESSION	/* Allow to save visited link */
+#define VLINK_OUT_SESSION	/* Allow to restore visited link */
+
+/****************************************************************
+ * The STATUSBUFSIZE defines how many entries will be stored in
+ * cyclic buffer of statusline messages. This is specially useful
+ * for users who use lynx on a terminal with more than 40 lines.
+ */
+/* #define STATUSBUFSIZE 90 */
+
+/****************************************************************
+ * If USE_PROGRESSBAR is TRUE the user will be able to set
+ * download progress as odometer(thermometer) display, ie:
+ *
+ * 80% IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
+ *
+ */
+/* #define USE_PROGRESSBAR TRUE */
+
+/****************************************************************
+ *   Section 3.   Things that you should not change until you
+ *  		  have a good knowledge of the program
+ */
+
+#define LYNX_NAME "Lynx"
+/* The strange-looking comments on the next line tell PRCS to replace
+ * the version definition with the Project Version on checkout.  Just
+ * ignore it. - kw */
+/* $Format: "#define LYNX_VERSION \"$ProjectVersion$\""$ */
+#define LYNX_VERSION "2.8.8dev.11"
+#define LYNX_WWW_HOME "http://lynx.isc.org/"
+#define LYNX_WWW_DIST "http://lynx.isc.org/current/"
+/* $Format: "#define LYNX_DATE \"$ProjectDate$\""$ */
+#define LYNX_DATE "Sun, 19 Feb 2012 18:13:57 -0800"
+#define LYNX_DATE_OFF 5		/* truncate the automatically-generated date */
+#define LYNX_DATE_LEN 11	/* truncate the automatically-generated date */
+
+#ifdef UNICODE
+#define W32_STRING(s) L##s
+#else
+#define W32_STRING(s) s
+#endif
+
+#define LYNX_SUBKEY W32_STRING("Software\\Lynx")
+
+#define LINESIZE 1024		/* max length of line to read from file */
+#define MAXLINKS 1024		/* max links on one screen */
+
+#ifndef SEARCH_GOAL_LINE
+#define SEARCH_GOAL_LINE 4	/* try to position search target there */
+#endif
+
+#define MAXCHARSETS 60		/* max character sets supported */
+#define TRST_MAXROWSPAN 200	/* max rowspan accepted by TRST code */
+#define TRST_MAXCOLSPAN 200	/* max colspan and COL/COLGROUP span accepted */
+#define MAX_TABLE_ROWS  200	/* max rows for tables */
+#define MAX_TABLE_COLS  200	/* max cols for tables */
+#define SAVE_TIME_NOT_SPACE	/* minimize number of some malloc calls */
+
+/* Win32 may support more, but old win16 helper apps may not. */
+#if defined(__DJGPP__) || defined(_WINDOWS)
+#define FNAMES_8_3
+#endif
+
+#ifdef FNAMES_8_3
+#define HTML_SUFFIX ".htm"
+#else
+#define HTML_SUFFIX ".html"
+#endif
+
+#ifndef FNAME_LYNXRC
+#ifdef FNAMES_8_3
+#define FNAME_LYNXRC "lynx.rc"
+#else
+#define FNAME_LYNXRC ".lynxrc"
+#endif /* FNAMES_8_3 */
+#endif
+
+#ifndef FNAME_LYNX_COOKIES
+#ifdef FNAMES_8_3
+#define FNAME_LYNX_COOKIES "cookies"
+#else
+#define FNAME_LYNX_COOKIES ".lynx_cookies"
+#endif /* FNAMES_8_3 */
+#endif
+
+#ifndef FNAME_LYNX_TRACE
+#ifdef FNAMES_8_3
+#define FNAME_LYNX_TRACE "LY-TRACE.LOG"
+#else
+#define FNAME_LYNX_TRACE "Lynx.trace"
+#endif /* FNAMES_8_3 */
+#endif
+
+#ifndef BLAT_MAIL
+#define BLAT_MAIL "blat"
+#endif
+
+#ifndef ALTBLAT_MAIL
+#define ALTBLAT_MAIL "blatj"
+#endif
+
+#define BIN_SUFFIX  ".bin"
+#define TEXT_SUFFIX ".txt"
+
+#ifdef VMS
+/*
+**  Use the VMS port of gzip for uncompressing both .Z and .gz files.
+*/
+#define UNCOMPRESS_PATH "gzip -d"
+#define COPY_PATH	"copy/nolog/noconf"
+#define GZIP_PATH       "gzip"
+#define BZIP2_PATH      "bzip2"
+#define TELNET_PATH     "telnet"
+#define TN3270_PATH     "tn3270"
+#define RLOGIN_PATH     "rlogin"
+
+#else
+
+#ifdef DOSPATH
+
+/*
+ * Define this to setup feature that uses directory of lynx.exe to locate
+ * associated configuration files.
+#define USE_PROGRAM_DIR 1
+ */
+
+#ifdef _WINDOWS
+
+#ifndef USE_BLAT_MAILER
+#define USE_BLAT_MAILER 1
+#endif
+
+#else
+/* have to define something... */
+#undef SYSTEM_MAIL
+#define SYSTEM_MAIL             "sendmail"
+#define SYSTEM_MAIL_FLAGS       "-t -oi"
+#endif /* _WINDOWS */
+
+/*
+**  The following executables may be used at run time.  Unless you change
+**  the definitions to include the full directories, they will be sought
+**  from your PATH at run-time; they should be available as "cp.exe",
+**  "mv.exe" and so on.  To get those programs look for GNU-port stuff
+**  elsewhere.
+**  Currently, if compiled with -DUSE_ZLIB and without -DDIRED_SUPPORT
+**  (default), the following from the list below are required:
+**  MV_PATH   (mv.exe) - for bookmark handling (DEL_BOOKMARK command)
+**  UNCOMPRESS_PATH    - for automatic decompression of files in Unix
+**                       compress format
+**  TELNET_PATH, TN3270_PATH, RLOGIN_PATH - for access to "telnet:",
+**                                         "tn3270:", and "rlogin:" URLs.
+**  If they are not defined right, the corresponding operations may fail
+**  in unexpected and obscure ways!
+**
+**    WINDOWS/DOS
+**    ===========
+*/
+#ifndef HAVE_CONFIG_H
+#define COMPRESS_PATH   "compress"
+#define UNCOMPRESS_PATH "uncompress"
+#define UUDECODE_PATH   "uudecode"
+#define ZCAT_PATH       "zcat"
+#define GZIP_PATH       "gzip"
+#define BZIP2_PATH      "bzip2"
+#define MV_PATH         "mv"
+#define INSTALL_PATH    "install"
+#define TAR_PATH        "tar"
+#define ZIP_PATH        "zip"
+#define UNZIP_PATH      "unzip"
+#define RM_PATH         "rm"
+#define TELNET_PATH     "telnet"
+#define TN3270_PATH     "tn3270"
+#define RLOGIN_PATH     "rlogin"
+
+/* see src/LYLocal.c for these */
+#define TAR_UP_OPTIONS	 "-cf"
+#define TAR_DOWN_OPTIONS "-xf"
+#define TAR_PIPE_OPTIONS "-"
+#define TAR_FILE_OPTIONS ""
+
+/*
+ * These are not used:
+ * #define COPY_PATH       "cp"
+ * #define CHMOD_PATH      "chmod"
+ * #define MKDIR_PATH      "mkdir"
+ * #define TOUCH_PATH      "touch"
+ */
+#endif /* HAVE_CONFIG_H */
+
+#else /* Unix */
+	/* 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).
+	 */
+#endif /* DOSPATH */
+#endif /* VMS */
+
+/*****************************
+ * I have not ported multibyte support for EBCDIC.  In fact, some multibyte
+ * code in LYLowerCase() crashes on EBCDIC strings.  -- gil
+ */
+#if       ! defined(NOT_ASCII)
+/*****************************
+ * SUPPORT_MULTIBYTE_EDIT provides better support of CJK characters to
+ * Lynx's Line Editor.  JIS X0201 Kana is partially supported.  The
+ * reason why I didn't support it fully is I think supporting it is not
+ * required so much and I don't have an environment to test it. - TH
+ */
+#define SUPPORT_MULTIBYTE_EDIT
+#endif /* ! defined(NOT_ASCII) */
+
+/*****************************
+ * SUPPORT_CHDIR provides CD command (bound to 'C' by default).  It allows
+ * changing directory to arbitrary location (if OS allows them).  If dired is
+ * enabled, user will be able to visit any directory and view any file allowed
+ * according to file permissions or ACLs.
+ */
+#define SUPPORT_CHDIR
+
+/*****************************
+ * MARK_HIDDEN_LINKS controls whether hidden links are shown with the title
+ * set by the HIDDEN_LINK_MARKER string in lynx.cfg
+ */
+#define MARK_HIDDEN_LINKS
+
+/*****************************
+ * USE_TH_JP_AUTO_DETECT and KANJI_CODE_OVERRIDE are the macros
+ * for Japanese. - TH
+ */
+/*****************************
+ * USE_TH_JP_AUTO_DETECT enables a new Japanese charset detection routine.
+ * With the old detection strategy, Lynx always thought a document was
+ * written in mixture of three kanji codes (JIS, EUC and SJIS).  The new
+ * strategy is for Lynx to first assume the document is written in one code
+ * or JIS + one other kanji code (JIS, EUC, SJIS, EUC+JIS and SJIS+JIS).
+ * The first assumption is usually correct, but if the assumption is wrong,
+ * Lynx falls back to the old assumption of the three kanji codes mixed.
+ */
+#define USE_TH_JP_AUTO_DETECT
+
+/*****************************
+ * Uncomment the following line to enable the kanji code override routine.
+ * The code can be changed by pressing ^L.  More precisely, this allows
+ * the user to override the assumption about the kanji code for the document
+ * which Lynx has made on the basis of a META tag and HTTP response.
+ */
+/*#define KANJI_CODE_OVERRIDE */
+
+/**************************
+ * SSL_CERT_FILE contains valid SSL CA certificates.  Set this to a string
+ * to provide a runtime default value.
+ */
+#define SSL_CERT_FILE NULL
+
+/****************************************************************
+ *  Section 4.  Things you MUST check only if you plan to use Lynx
+ *              in an anonymous account (allow public access to Lynx).
+ *              This section may be skipped by those people building
+ *              Lynx for private use only.
+ *
+ */
+
+/*****************************
+ * Enter the name of your anonymous account if you have one
+ * as ANONYMOUS_USER.  UNIX systems will use a cuserid
+ * or get_login call to determine if the current user is
+ * the ANONYMOUS_USER.  VMS systems will use getenv("USER").
+ *
+ * You may use the "-anonymous" option for multiple accounts,
+ * or for precautionary reasons in the anonymous account, as well.
+ *
+ * Specify privileges for the anonymous account below.
+ *
+ * It is very important to have this correctly defined or include
+ * the "-anonymous" command line option for invocation of Lynx
+ * in an anonymous account!  If you do not you will be putting
+ * yourself at GREAT security risk!
+ */
+#define ANONYMOUS_USER ""
+
+/*******************************
+ * In the following four pairs of defines,
+ * INSIDE_DOMAIN means users connecting from inside your local domain,
+ * OUTSIDE_DOMAIN means users connecting from outside your local domain.
+ *
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to telnet back out
+ */
+#define CAN_ANONYMOUS_INSIDE_DOMAIN_TELNET	TRUE
+#define CAN_ANONYMOUS_OUTSIDE_DOMAIN_TELNET	FALSE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to use ftp
+ */
+#define CAN_ANONYMOUS_INSIDE_DOMAIN_FTP		TRUE
+#define CAN_ANONYMOUS_OUTSIDE_DOMAIN_FTP	FALSE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to use rlogin
+ */
+#define CAN_ANONYMOUS_INSIDE_DOMAIN_RLOGIN	TRUE
+#define CAN_ANONYMOUS_OUTSIDE_DOMAIN_RLOGIN	FALSE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to read news OR post news articles.
+ * These flags apply to "news", "nntp", "newspost", and "newsreply"
+ * URLs, but not to "snews", "snewspost", or "snewsreply"
+ * in case they are supported.
+ */
+#define CAN_ANONYMOUS_INSIDE_DOMAIN_READ_NEWS	TRUE
+#define CAN_ANONYMOUS_OUTSIDE_DOMAIN_READ_NEWS	FALSE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to goto random URLs. (The 'g' command)
+ */
+#define CAN_ANONYMOUS_GOTO		TRUE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to goto particular URLs.
+ */
+#define CAN_ANONYMOUS_GOTO_BIBP		TRUE	/* BIBP maps to HTTP */
+#define CAN_ANONYMOUS_GOTO_CSO		FALSE
+#define CAN_ANONYMOUS_GOTO_FILE		FALSE
+#define CAN_ANONYMOUS_GOTO_FINGER	TRUE
+#define CAN_ANONYMOUS_GOTO_FTP		FALSE
+#define CAN_ANONYMOUS_GOTO_GOPHER	FALSE
+#define CAN_ANONYMOUS_GOTO_HTTP		TRUE
+#define CAN_ANONYMOUS_GOTO_HTTPS	FALSE
+#define CAN_ANONYMOUS_GOTO_LYNXCGI	FALSE
+#define CAN_ANONYMOUS_GOTO_LYNXEXEC	FALSE
+#define CAN_ANONYMOUS_GOTO_LYNXPROG	FALSE
+#define CAN_ANONYMOUS_GOTO_MAILTO	TRUE
+#define CAN_ANONYMOUS_GOTO_NEWS		FALSE
+#define CAN_ANONYMOUS_GOTO_NNTP		FALSE
+#define CAN_ANONYMOUS_GOTO_RLOGIN	FALSE
+#define CAN_ANONYMOUS_GOTO_SNEWS	FALSE
+#define CAN_ANONYMOUS_GOTO_TELNET	FALSE
+#define CAN_ANONYMOUS_GOTO_TN3270	FALSE
+#define CAN_ANONYMOUS_GOTO_WAIS		TRUE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to specify a port in 'g'oto commands
+ * for telnet URLs.
+ */
+#define CAN_ANONYMOUS_GOTO_TELNET_PORT	FALSE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to jump to URLs (The 'J' command)
+ * via the shortcut entries in your JUMPFILE.
+ */
+#define CAN_ANONYMOUS_JUMP	FALSE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to mail
+ */
+#define CAN_ANONYMOUS_MAIL	TRUE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to print
+ */
+#define CAN_ANONYMOUS_PRINT	FALSE
+
+/*******************************
+ * set to FALSE if users with anonymous restrictions should
+ * not be able to view configuration file (lynx.cfg) info
+ * via special LYNXCFG: links.  (This does not control access
+ * to lynx.cfg as a normal file, e.g., through a "file:" URL,
+ * if other restrictions allow that.)
+ */
+#define CAN_ANONYMOUS_VIEW_LYNXCFG_INFO			FALSE
+
+/*******************************
+ * set to FALSE if users with anonymous restrictions should
+ * not be able to view extended configuration file (lynx.cfg)
+ * info @@@ or perform special config info functions (reloading
+ * at run-time) via special LYNXCFG: links @@@.  This only applies
+ * if the lynxcfg_info" restriction controlled by the previous
+ * item is not in effect and if Lynx has been compiled without
+ * NO_CONFIG_INFO defined (--disable-config-info wasn't used
+ * if Lynx was built with the autoconf configure script).
+ * The extended info may include details on configuration file
+ * names and location and links for reading the files, as well
+ * as information on nesting of included configuration files.
+ */
+#define CAN_ANONYMOUS_VIEW_LYNXCFG_EXTENDED_INFO	FALSE
+
+/*******************************
+ * set to FALSE if users with anonymous restrictions should
+ * not be able to view information on compile time configuration
+ * via special LYNXCOMPILEOPTS: links.  This only applies
+ * if the autoconf configure script was used to build Lynx
+ * AND --disable-config-info wasn't used, otherwise this
+ * special URL scheme isn't recognized anyway.
+ */
+#define CAN_ANONYMOUS_VIEW_COMPILEOPTS_INFO		FALSE
+
+/*******************************
+ * set to FALSE if you don't want users of your anonymous
+ * account to be able to 'g'oto special URLs for showing
+ * configuration info (LYNXCFG: and LYNXCOMPILEOPTS:) if
+ * they are otherwise allowed.
+ */
+#define CAN_ANONYMOUS_GOTO_CONFIGINFO		FALSE
+
+/*****************************
+ * Be sure you have read about and set defines above in Sections
+ * 1, 2 and 3 that could  affect Lynx in an anonymous account,
+ * especially LOCAL_EXECUTION_LINKS_ALWAYS_OFF_FOR_ANONYMOUS.
+ *
+ * This ends the section specific to anonymous accounts.
+ */
+
+#endif /* USERDEFS_H */